        :root{
            --bg: #ffffff;
            --card: #f1f1f1;
            --text: #1f2937;
            --muted: #6b7280;
            --line: #e5e7eb;
            --brand: #0f4e7d;
            --brand2:#2563eb;
            --success:#16a34a;
            --warn:#f59e0b;
            --danger:#ef4444;
            --radius: 20px;
        }

        *{ box-sizing:border-box; }

        h1 {
            font-size: 38px;
        }

        body{
            margin:0;
            font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
            background: var(--bg);
            color: var(--text);
        }

        a{ color: inherit; text-decoration: none; }
        a:hover{ text-decoration: underline; }

        .wrap{
        }

        /* Header */
        .topbar{
            display:flex;
            gap:14px;
            align-items:center;
            justify-content:space-between;
            padding: 14px 16px;
            background: var(--card);
            border: 0px solid var(--line);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
        }
        .brand{
            display:flex;
            align-items:center;
            gap:12px;
            min-width: 0;
        }
        .brand h1{
            font-size: 18px;
            margin:0;
            line-height: 1.2;
            white-space: nowrap;
            overflow:hidden;
            text-overflow: ellipsis;
        }
        .brand p{
            margin:2px 0 0 0;
            color: var(--muted);
            font-size: 18px;
            white-space: nowrap;
            overflow:hidden;
            text-overflow: ellipsis;
        }

        .top-actions{
            display:flex;
            align-items:center;
            gap:10px;
            flex: 0 0 auto;
        }

        .chip{
            font-size: 12px;
            padding: 7px 10px;
            border-radius: 999px;
            border: 0px solid var(--line);
            background: #fff;
            color: var(--muted);
            white-space: nowrap;
        }
        .chip strong{ color: var(--text); }

        .btn{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:8px;
            padding: 10px 12px;
            border-radius: 12px;
            border:0px solid var(--line);
            background:#fff;
            cursor:pointer;
            font-weight: 600;
            font-size: 14px;
        }
        .btn.primary{
            border-color: transparent;
            background: var(--brand);
            color: #fff;
        }
        .btn.primary:hover{ filter: brightness(0.95); }
        .btn:hover{ background:#f9fafb; text-decoration: none; }
        .btn.primary:hover{ background: #0d446d; }

        /* Layout */
        .grid{
            margin-top: 16px;
            display:grid;
            grid-template-columns: 1.2fr .8fr;
            gap: 16px;
            align-items: start;
        }

        .card{
            background: var(--card);
            border: 0px solid var(--line);
            border-radius: var(--radius);
            box-shadow: var(--shadow);
            overflow:hidden;
        }
        .card .hd{
            padding: 16px 16px 10px;
            display:flex;
            align-items:flex-start;
            justify-content:space-between;
            gap:12px;
        }
        .card .hd h2{
            margin:0;
            font-size: 16px;
            letter-spacing: .2px;
        }
        .card .hd p{
            margin:6px 0 0 0;
            color: var(--muted);
            font-size: 13px;
            line-height: 1.3;
        }
        .card .bd{
            padding: 0 16px 16px;
        }

        .kpis{
            display:grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 10px;
            margin-top: 10px;
        }
        .kpi {
            position:relative;
            background:#fff;
            border:1px solid #e6eefb;
            border-radius:8px;
            padding:12px 12px 12px 12px;
            min-width:120px;
            box-shadow:0 4px 10px rgba(12,34,63,0.04);
        }
        .kpi .label{
            font-size: 12px;
            color: var(--muted);
            margin-bottom: 6px;
        }
        .kpi .value{
            font-size: 18px;
            font-weight: 800;
        }
        /* icon container top-right */
        .kpi .icon {
            position:absolute;
            top:8px;
            right:8px;
            width:40px;
            height:40px;
            display:inline-grid;
            place-items:center;
            color:var(--brand);
            opacity:0.95;
        }
        /* optional small background for icon */
        .kpi .icon .quote {
            width:100%;
            height:100%;
            border-radius:4px;
            display:grid;
            place-items:center;
            border-color: rgba(37,99,235,.25); background: rgba(37,99,235,.08); color: var(--brand2);
        }
        .kpi .icon .order {
            width:100%;
            height:100%;
            border-radius:4px;
            display:grid;
            place-items:center;
            border-color: rgba(22,163,74,.25); background: rgba(22,163,74,.08); color: var(--success);
        }
        .kpi .icon .cancel {
            width:100%;
            height:100%;
            border-radius:4px;
            display:grid;
            place-items:center;
            border-color: rgba(245,158,11,.25); background: rgba(245,158,11,.10); color: #9a6700;
        }
        .kpi .icon svg { width:20px; height:20px; fill:currentColor; }


        /* Lists */
        .list{
            display:flex;
            flex-direction: column;
            gap: 10px;
            margin-top: 10px;
        }
        .item{
            display:flex;
            gap: 12px;
            justify-content: space-between;
            align-items:flex-start;
            padding: 12px;
            border: 0px solid var(--line);
            background:#fff;
            border-radius: 14px;
        }
        .item:hover{ background: #fafafa; }
        .item-main{
            min-width:0;
        }
        .item-title{
            margin:0;
            font-weight: 700;
            font-size: 14px;
            line-height: 1.25;
        }
        .item-sub{
            margin:6px 0 0 0;
            color: var(--muted);
            font-size: 13px;
            line-height: 1.3;
        }
        .item-meta{
            text-align:right;
            flex:0 0 auto;
            display:flex;
            flex-direction:column;
            gap: 6px;
            align-items:flex-end;
        }
        .badge{
            font-size: 12px;
            font-weight: 700;
            padding: 6px 10px;
            border-radius: 999px;
            border: 1px solid var(--line);
            background: #fff;
            white-space: nowrap;
        }
        .badge.success{ border-color: rgba(22,163,74,.25); background: rgba(22,163,74,.08); color: var(--success); }
        .badge.warn{ border-color: rgba(245,158,11,.25); background: rgba(245,158,11,.10); color: #9a6700; }
        .badge.info{ border-color: rgba(37,99,235,.25); background: rgba(37,99,235,.08); color: var(--brand2); }
        .badge.danger{ border-color: rgba(239,68,68,.25); background: rgba(239,68,68,.08); color: var(--danger); }

        .amount{
            padding-top:10px;
            font-size: 14px;
            white-space: nowrap;
            line-height: 120%;
        }

        .actions-grid{
            display:grid;
            grid-template-columns: repeat(1, 1fr);
            gap: 10px;
            margin-top: 10px;
        }
        .action-tile{
            border: 1px solid var(--line);
            border-radius: 16px;
            padding: 14px;
            background:#fff;
            display:flex;
            flex-direction:column;
            gap:8px;
            min-height: 110px;
            justify-content: space-between;
        }
        .action-tile:hover{ background:#fafafa; text-decoration:none; }
        .action-top{
            display:flex;
            align-items:flex-start;
            justify-content: space-between;
            gap: 10px;
        }
        .icon{
            width:34px;
            height:34px;
            border-radius: 12px;
            display:grid;
            place-items:center;
            font-weight: 900;
            color: #fff;
            flex: 0 0 auto;
        }
        .icon.blue{ background: linear-gradient(135deg, #2563eb, #60a5fa); }
        .icon.green{ background: linear-gradient(135deg, #16a34a, #86efac); }
        .icon.orange{ background: linear-gradient(135deg, #f59e0b, #fbbf24); }
        .icon.gray{ background: linear-gradient(135deg, #64748b, #cbd5e1); }

        .action-title{
            margin:0;
            font-size: 14px;
            font-weight: 800;
            line-height: 1.2;
        }
        .action-desc{
            margin:0;
            color: var(--muted);
            font-size: 13px;
            line-height: 1.3;
        }

        .footer-links{
            display:flex;
            gap: 10px;
            flex-wrap: wrap;
            margin-top: 10px;
        }

        /* Responsive */
        @media (max-width: 980px){
            .grid{ grid-template-columns: 1fr; }
            .search{ min-width: 0; width: 100%; }
            .topbar{ flex-direction: column; align-items: stretch; }
            .top-actions{ justify-content: space-between; flex-wrap: wrap; }
            .kpis{ grid-template-columns: 1fr; }
        }
        @media (max-width: 520px){
            .actions-grid{ grid-template-columns: 1fr; }
            .chip{ display:none; }
        }



    /* Main offer card */
    .offer {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), var(--card));
        border-radius: var(--radius);
        padding: 18px;
        box-shadow: 0 4px 14px rgba(12, 34, 63, 0.06);
        border: 1px solid var(--border);
    }

    .offer-head {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 12px;
    }

    .offer-head h1 {
        margin: 0;
        font-size: 18px;
        letter-spacing: 0.1px;
    }

    .offer-head .meta {
        color: var(--muted);
        font-size: 14px;
    }

    .positions {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .position {
        display: flex;
        gap: 12px;
        align-items: center;
        background: linear-gradient(180deg, rgba(250, 252, 255, 0.9), #fff);
        border-radius: 8px;
        padding: 12px;
        border: 1px solid var(--border);
    }

    .position .thumb {
        flex: 0 0 84px;
        height: 84px;
        border-radius: 8px;
        overflow: hidden;
        background: #f0f4ff;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .position .thumb img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    .pos-main {
        flex: 1;
        min-width: 0;
    }

    .pos-title {
        display: flex;
        justify-content: space-between;
        align-items: start;
        gap: 10px;
    }

    .pos-title h3 {
        margin: 0;
        font-size: 15px;
        line-height: 1.1;
    }

    .pos-title .price {
        font-weight: 600;
        color: var(--accent);
        white-space: nowrap;
        margin-left: 8px;
    }

    .pos-desc {
        color: var(--muted);
        font-size: 13px;
        margin-top: 6px;
    }

    .pos-meta {
        display: flex;
        gap: 8px;
        align-items: center;
        margin-left: 12px;
        flex-direction: column;
        width: 120px;
    }

    .qty {
        background: #f3f7ff;
        color: #123;
        padding: 6px 10px;
        border-radius: 6px;
        font-weight: 600;
        text-align: center;
        min-width: 64px;
    }

    .net {
        color: var(--muted);
        font-size: 13px;
        margin-top: 6px;
    }

    /* Summary / right column */
    .side {
        background: var(--card);
        border-radius: var(--radius);
        padding: 16px;
        border: 1px solid var(--border);
        box-shadow: 0 6px 18px rgba(11, 40, 90, 0.04);
        height: fit-content;
    }

    .payments {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .payments h2 {
        margin: 0 0 6px 0;
        font-size: 15px;
    }

    .payment-item {
        background: #fbfeff;
        border-radius: 8px;
        padding: 10px;
        border: 1px dashed rgba(11, 110, 255, 0.08);
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 10px;
    }

    .payment-item .label {
        color: var(--muted);
        font-size: 13px;
    }

    .payment-item .amount {
        font-weight: 700;
        color: #0b6efd;
    }

    .tracking {
        margin-top: 14px;
    }

    .tracking label {
        display: block;
        font-size: 13px;
        color: var(--muted);
        margin-bottom: 6px;
    }

    .tracking .input {
        display: flex;
        gap: 8px;
    }

    .tracking input {
        flex: 1;
        padding: 10px 12px;
        border-radius: 8px;
        border: 1px solid var(--border);
        background: #fff;
        font-size: 14px;
    }

    .tracking button {
        padding: 10px 12px;
        border-radius: 8px;
        border: 0;
        background: var(--accent);
        color: #fff;
        font-weight: 600;
        cursor: pointer;
    }

    .total {
        margin-top: 16px;
        border-top: 1px solid var(--border);
        padding-top: 12px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .total .label {
        color: var(--muted);
    }

    .total .value {
        font-weight: 800;
        color: #0b1724;
        font-size: 18px;
    }



    .summary{
        display:flex;
        justify-content:flex-end;
        padding:0px;
        background:#fff;
        font-size:14px;
        border-radius:14px;
    }
    .summary-box{
        width:min(420px, 100%);
        border:0px solid var(--line);
        border-radius:12px;
        padding:14px 14px 10px;
    }
    .summary-line{
        display:flex;
        justify-content:space-between;
        gap:12px;
        color:var(--text);
    }

