  :root{
    --ink:#1A202C;--ink2:#2D3748;
    --gold:#B8943A;--gold-lt:#FEF9EC;--gold-md:#D4A84B;
    --bg:#F7F8FA;--bg2:#EEF0F5;--bg3:#E2E5ED;
    --white:#FFFFFF;--text:#1A202C;--text2:#4A5568;--muted:#718096;
    --border:#E2E8F0;--green:#059669;--green-lt:#ECFDF5;
    --red:#DC2626;--red-lt:#FEF2F2;--amber:#D97706;--amber-lt:#FFFBEB;
    --blue:#2563EB;--blue-lt:#EFF6FF;--purple:#7C3AED;--purple-lt:#F5F3FF;
    --indigo:#2563EB;--indigo-lt:#EFF6FF;
    --header-h:56px;
    /* Sidebar — LIGHT theme */
    --sb-bg:#FFFFFF;--sb-border:#E2E8F0;--sb-w:220px;--sb-collapsed:56px;
    --sb-active-bg:#EFF6FF;--sb-active-color:#2563EB;--sb-active-border:#2563EB;
    --sb-text:#374151;--sb-text-muted:#9CA3AF;--sb-icon-color:#6B7280;
    --topbar-h:56px;
  }
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
  html{-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;}
  body{font-family:'Inter',system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;}
  .screen{display:none;}.screen.active{display:block;}
  .lw{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px;position:relative;overflow:hidden;}
  .lw::before{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:48px 48px;opacity:0.5;pointer-events:none;}
  .lb{background:var(--white);border-radius:20px;padding:40px 32px;width:100%;max-width:420px;box-shadow:0 8px 40px rgba(24,26,32,0.1);border:1px solid var(--border);position:relative;z-index:1;}
  .login-logo{display:flex;align-items:center;gap:12px;margin-bottom:8px;}
  .ll{font-family:'Inter',sans-serif;font-weight:700;font-size:26px;font-weight:800;color:var(--ink);letter-spacing:-0.5px;}
  .llogo-erp{font-size:14px;color:var(--gold);font-weight:500;letter-spacing:2px;}
  .ltag{font-size:13px;color:var(--muted);margin-bottom:28px;font-weight:300;}
  .lfl{display:block;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:7px;}
  .lfi{width:100%;padding:13px 16px;border-radius:10px;border:1.5px solid var(--border);font-size:15px;color:var(--text);background:var(--white);font-family:'Inter',sans-serif;transition:border-color 0.2s,box-shadow 0.2s;margin-bottom:16px;outline:none;-webkit-appearance:none;}
  .lfi:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,148,58,0.12);}
  .lfi.ef{border-color:var(--red);}
  .lbtn{width:100%;padding:15px;border-radius:10px;border:none;background:var(--ink);color:var(--white);font-size:16px;font-weight:700;font-family:'Inter',sans-serif;font-weight:700;cursor:pointer;transition:all 0.2s;margin-top:8px;letter-spacing:-0.2px;}
  .lbtn:hover{background:#1D4ED8;transform:translateY(-1px);box-shadow:0 8px 20px rgba(37,99,235,0.3);}
  .err-box{background:#FEF2F2;border:1px solid #FECACA;color:var(--red);border-radius:10px;padding:11px 14px;font-size:13px;margin-top:12px;}
  .ok-box{background:var(--green-lt);border:1px solid rgba(26,158,107,0.2);color:var(--green);border-radius:10px;padding:11px 14px;font-size:13px;margin-top:12px;}
  .hidden{display:none!important;}
  .lhint{display:none;}
  .header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(247,246,243,0.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);}
  .hdr-row{display:flex;align-items:center;gap:12px;padding:12px 16px;}
  .hdr-logo{display:flex;align-items:center;gap:8px;cursor:pointer;flex-shrink:0;}
  .hdr-lmark{width:30px;height:30px;background:var(--ink);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .hdr-lname{font-family:'Inter',sans-serif;font-weight:700;font-size:17px;font-weight:800;color:var(--ink);letter-spacing:-0.3px;}
  .hdr-proj{background:var(--bg2);border:1px solid var(--border);border-radius:100px;padding:5px 14px;font-size:12px;font-weight:500;color:var(--text2);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px;}
  .hdr-right{display:flex;align-items:center;gap:10px;margin-left:auto;}
  .bell{position:relative;width:36px;height:36px;border-radius:10px;background:var(--bg2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;flex-shrink:0;transition:background 0.18s;}
  .bell:hover{background:var(--bg3);}
  .bell-dot{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;background:var(--red);border-radius:100px;font-size:10px;font-weight:800;color:white;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--bg);}
  .upill{display:flex;align-items:center;gap:8px;background:var(--bg2);border:1px solid var(--border);border-radius:100px;padding:5px 14px 5px 5px;cursor:pointer;transition:background 0.18s;flex-shrink:0;}
  .upill:hover{background:var(--bg3);}
  .uav{width:28px;height:28px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--white);flex-shrink:0;}
  .uname{font-size:13px;font-weight:600;color:var(--ink);}
  .urole{font-size:10px;color:var(--muted);letter-spacing:0.3px;}
  .tabs{display:flex;overflow-x:auto;padding:0 12px;gap:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
  .tabs::-webkit-scrollbar{display:none;}
  .tab{display:inline-flex;align-items:center;gap:5px;padding:10px 14px;font-size:13px;font-weight:500;color:var(--text2);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;transition:all 0.18s;white-space:nowrap;font-family:'Inter',sans-serif;}
  .tab:hover{color:var(--text);}
  .tab.active{color:var(--gold);border-bottom:2px solid var(--gold);font-weight:600;}
  .notif-panel{position:fixed;top:var(--header-h);right:0;width:min(360px,100vw);max-height:70vh;background:var(--white);border-left:1px solid var(--border);border-bottom:1px solid var(--border);border-radius:0 0 0 16px;box-shadow:-4px 8px 32px rgba(24,26,32,0.1);z-index:99;overflow-y:auto;}
  .np-hdr{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--white);font-family:'Inter',sans-serif;font-weight:700;font-weight:700;}
  .ni{padding:13px 16px;border-bottom:1px solid var(--bg2);display:flex;gap:12px;align-items:flex-start;}
  .ni.unread{background:var(--gold-lt);}
  .ni-dot{width:8px;height:8px;border-radius:50%;margin-top:5px;flex-shrink:0;}
  .ni-title{font-size:13px;font-weight:600;color:var(--text);margin-bottom:3px;}
  .ni-sub{font-size:12px;color:var(--muted);line-height:1.5;}
  .ni-time{font-size:10px;color:var(--muted);margin-top:4px;}
  .content{margin-top:var(--header-h);padding:16px;min-height:calc(100vh - var(--header-h) - 56px);background:var(--bg);}
  .footer{text-align:center;padding:16px;font-size:12px;color:var(--muted);border-top:1px solid var(--border);background:var(--white);font-weight:300;}
  .ph{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px;}
  .pt{font-family:'Inter',sans-serif;font-weight:700;font-size:20px;font-weight:800;color:var(--ink);letter-spacing:-0.3px;}
  .ps{font-size:13px;color:var(--muted);margin-top:3px;font-weight:300;}
  .wb{background:var(--ink);border-radius:16px;padding:20px;margin-bottom:14px;color:var(--white);position:relative;overflow:hidden;}
  .wb::before{content:'';position:absolute;top:-40px;right:-40px;width:180px;height:180px;background:radial-gradient(circle,rgba(184,148,58,0.12) 0%,transparent 70%);}
  .wb-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;position:relative;}
  .wb-av{width:44px;height:44px;border-radius:50%;background:rgba(200,168,90,0.2);border:2px solid rgba(200,168,90,0.4);display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;font-weight:700;font-size:18px;font-weight:800;color:var(--gold-md);flex-shrink:0;}
  .wb-name{font-family:'Inter',sans-serif;font-weight:700;font-size:17px;font-weight:800;color:var(--white);}
  .wb-sub{font-size:12px;color:rgba(255,255,255,0.5);margin-top:2px;font-weight:300;}
  .wb-chips{display:flex;gap:8px;flex-wrap:wrap;position:relative;}
  .wb-chip{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);border-radius:100px;padding:5px 12px;font-size:12px;font-weight:500;color:rgba(255,255,255,0.85);white-space:nowrap;}
  .stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;margin-bottom:14px;}
  .stat{background:var(--white);border-radius:12px;padding:14px 10px;text-align:center;border:1px solid var(--border);cursor:pointer;transition:box-shadow 0.18s,transform 0.18s;}
  .stat:hover{box-shadow:0 4px 16px rgba(24,26,32,0.08);transform:translateY(-1px);}
  .stat:active{transform:scale(0.97);}
  .sv{font-family:'Inter',sans-serif;font-weight:700;font-size:22px;font-weight:800;line-height:1;}
  .sl{font-size:10px;color:var(--muted);margin-top:4px;font-weight:500;letter-spacing:0.3px;}
  .ss{font-size:9px;color:var(--muted);margin-top:1px;}
  .card{background:var(--white);border-radius:16px;padding:16px;margin-bottom:10px;border:1px solid var(--border);transition:box-shadow 0.18s;}
  .card:hover{box-shadow:0 4px 20px rgba(24,26,32,0.06);}
  .acc{border:2px solid var(--gold);background:var(--gold-lt);}
  .fb{background:var(--white);border-radius:16px;padding:20px;margin-bottom:10px;border:1px solid var(--border);}
  .fbt{font-family:'Inter',sans-serif;font-weight:700;font-size:16px;font-weight:800;color:var(--ink);margin-bottom:16px;}
  .sttl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-bottom:12px;}
  input,select,textarea{width:100%;padding:11px 14px;border-radius:10px;border:1.5px solid var(--border);font-size:14px;color:var(--text);background:var(--white);font-family:'Inter',sans-serif;transition:border-color 0.18s,box-shadow 0.18s;outline:none;-webkit-appearance:none;appearance:none;}
  input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,148,58,0.12);}
  textarea{min-height:80px;resize:vertical;line-height:1.6;}
  .f-lbl{display:block;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:6px;}
  .fg{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;}
  .fr{margin-bottom:12px;}
  .fbs{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;}
  .err-inline{background:var(--red-lt);border:1px solid rgba(217,64,64,0.2);color:var(--red);border-radius:8px;padding:10px 13px;font-size:13px;margin-bottom:10px;}
  .btn{padding:10px 18px;border-radius:9px;border:none;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.18s;font-family:'Inter',sans-serif;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
  .btn:active{transform:scale(0.97);}
  .sm{padding:7px 13px;font-size:12px;border-radius:8px;}
  .by{background:var(--ink);color:var(--white);}.by:hover{background:var(--ink2);}
  .bgold{background:var(--gold-md);color:var(--ink);}.bgold:hover{background:var(--gold);}
  .bgh{background:var(--bg2);color:var(--text2);border:1px solid var(--border);}.bgh:hover{background:var(--bg3);}
  .br{background:var(--red-lt);color:var(--red);border:1px solid rgba(217,64,64,0.2);}.br:hover{background:var(--red);color:var(--white);}
  .bg{background:var(--green-lt);color:var(--green);border:1px solid rgba(26,158,107,0.2);}.bg:hover{background:var(--green);color:var(--white);}
  .bb{background:var(--blue-lt);color:var(--blue);border:1px solid rgba(45,107,228,0.2);}.bb:hover{background:var(--blue);color:var(--white);}
  .bp{background:var(--purple-lt);color:var(--purple);border:1px solid rgba(124,58,237,0.2);}.bp:hover{background:var(--purple);color:var(--white);}
  .badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:100px;font-size:11px;font-weight:600;}
  .ur{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--bg2);flex-wrap:wrap;}
  .ur:last-child{border-bottom:none;}
  .wfr{display:flex;align-items:flex-end;gap:6px;overflow-x:auto;padding-bottom:4px;}
  .wfs{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:56px;}
  .wfd{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;border:2px solid;}
  .wfl{font-size:10px;text-align:center;color:var(--muted);font-weight:500;line-height:1.3;}
  .empty{text-align:center;padding:48px 20px;color:var(--muted);}
  .empty-icon{font-size:48px;margin-bottom:16px;opacity:0.5;}
  .empty-title{font-family:'Inter',sans-serif;font-weight:700;font-size:17px;font-weight:700;color:var(--text2);margin-bottom:6px;}
  .empty-sub{font-size:13px;color:var(--muted);font-weight:300;}
  .qc-opt{padding:7px 16px;border-radius:8px;border:1.5px solid var(--border);background:var(--white);font-size:12px;font-weight:600;cursor:pointer;transition:all 0.15s;color:var(--text2);}
  .comment-item{display:flex;gap:10px;margin-bottom:10px;}
  .comment-av{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:var(--white);flex-shrink:0;}
  .comment-body{flex:1;background:var(--bg2);border-radius:0 10px 10px 10px;padding:10px 12px;}
  .comment-meta{font-size:11px;color:var(--muted);margin-bottom:4px;}
  .comment-text{font-size:13px;color:var(--text);line-height:1.5;}
  .link-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--bg2);}
  .card.danger{border-color:rgba(217,64,64,0.3);background:var(--red-lt);}
  .hrow{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:10px;cursor:pointer;margin-bottom:6px;border:1.5px solid var(--border);background:var(--white);transition:all 0.18s;}
  .hrow:hover{border-color:var(--gold);background:var(--gold-lt);}
  @media(max-width:480px){.fg{grid-template-columns:1fr;}.lb{padding:32px 20px;}}
  @keyframes pulse{0%,100%{opacity:0.3;transform:scale(0.8);}50%{opacity:1;transform:scale(1);}}

  /* ── EXCEL-STYLE TABLE ─────────────────────────────── */
  .xl-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:10px;background:var(--white);}

  /* ── SIDEBAR LAYOUT — LIGHT PROFESSIONAL ─────────── */
  .app-shell{display:flex;min-height:100vh;}
  .sidebar{
    width:var(--sb-w);flex-shrink:0;
    background:var(--sb-bg);border-right:1px solid var(--sb-border);
    display:flex;flex-direction:column;height:100vh;
    position:fixed;left:0;top:0;z-index:200;
    transition:width 0.22s cubic-bezier(0.4,0,0.2,1);overflow:hidden;
  }
  .sidebar.collapsed{width:var(--sb-collapsed);}
  .sb-brand{
    display:flex;align-items:center;gap:10px;padding:0 16px;
    height:var(--topbar-h);border-bottom:1px solid var(--sb-border);
    flex-shrink:0;cursor:pointer;
  }
  .sb-mark{
    width:28px;height:28px;border-radius:7px;
    background:var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;
  }
  .sb-name{font-size:15px;font-weight:700;color:var(--ink);white-space:nowrap;flex:1;letter-spacing:-0.2px;}
  .sidebar.collapsed .sb-name{opacity:0;width:0;overflow:hidden;}
  .sb-toggle{
    background:var(--bg2);border:1px solid var(--border);border-radius:6px;
    width:22px;height:22px;color:var(--muted);cursor:pointer;font-size:11px;
    flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all 0.15s;
  }
  .sb-toggle:hover{background:var(--bg3);color:var(--ink);}
  .sidebar.collapsed .sb-toggle{transform:rotate(180deg);}
  .sb-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 0;scrollbar-width:none;}
  .sb-nav::-webkit-scrollbar{display:none;}
  .sb-section{
    font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
    color:var(--sb-text-muted);padding:14px 18px 4px;white-space:nowrap;overflow:hidden;
  }
  .sidebar.collapsed .sb-section{display:none;}
  .nav-item{
    display:flex;align-items:center;gap:10px;padding:8px 12px;
    margin:1px 8px;border-radius:8px;cursor:pointer;border:none;background:none;
    width:calc(100% - 16px);text-align:left;transition:all 0.12s;
    border-left:2px solid transparent;font-family:inherit;
  }
  .nav-item:hover{background:var(--bg2);}
  .nav-item.active{
    background:var(--sb-active-bg);border-left-color:var(--sb-active-color);
  }
  .nav-icon{font-size:15px;width:22px;text-align:center;flex-shrink:0;color:var(--sb-icon-color);}
  .nav-label{font-size:13px;font-weight:500;color:var(--sb-text);white-space:nowrap;}
  .nav-item.active .nav-label{color:var(--sb-active-color);font-weight:600;}
  .nav-item:hover .nav-label{color:var(--ink);}
  .nav-item.active .nav-icon{color:var(--sb-active-color);}
  .sidebar.collapsed .nav-label{opacity:0;width:0;overflow:hidden;}
  .sb-footer{
    border-top:1px solid var(--sb-border);padding:10px;flex-shrink:0;
    background:var(--bg2);
  }
  .sb-user{
    display:flex;align-items:center;gap:10px;padding:8px 8px;border-radius:8px;
    cursor:pointer;transition:background 0.15s;
  }
  .sb-user:hover{background:var(--bg3);}
  .sb-av{
    width:30px;height:30px;border-radius:50%;background:var(--gold);
    display:flex;align-items:center;justify-content:center;
    font-size:12px;font-weight:700;color:#fff;flex-shrink:0;
  }
  .sb-uname{font-size:12px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .sb-urole{font-size:10px;color:var(--muted);}
  .sidebar.collapsed .sb-uname,.sidebar.collapsed .sb-urole{display:none;}
  /* Main area */
  .main-area{
    margin-left:var(--sb-w);flex:1;
    display:flex;flex-direction:column;min-height:100vh;
    transition:margin-left 0.22s cubic-bezier(0.4,0,0.2,1);min-width:0;
  }
  .main-area.collapsed{margin-left:var(--sb-collapsed);}
  /* Topbar */
  .topbar{
    height:var(--topbar-h);background:var(--white);
    border-bottom:1px solid var(--border);
    display:flex;align-items:center;padding:0 20px;gap:12px;
    position:sticky;top:0;z-index:100;flex-shrink:0;
  }
  .topbar-page{font-size:14px;font-weight:700;color:var(--ink);flex:1;}
  .topbar-co{
    background:var(--blue-lt);border:1px solid #BFDBFE;border-radius:6px;
    padding:4px 10px;font-size:11px;font-weight:600;color:var(--blue);
  }
  .content{flex:1;padding:20px 24px;background:var(--bg);overflow-y:auto;}
  /* Hide old tabs */
  .header{display:none!important;}.tabs,.tab{display:none!important;}
  /* Notif panel */
  .notif-panel{
    position:fixed;top:var(--topbar-h);right:0;width:min(380px,100vw);
    max-height:80vh;background:var(--white);border:1px solid var(--border);
    border-top:none;border-radius:0 0 0 12px;
    box-shadow:0 8px 24px rgba(0,0,0,0.08);z-index:150;overflow-y:auto;
  }
  /* Mobile */
  .sb-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:199;display:none;}
  .sb-overlay.on{display:block;}
  .mob-menu{display:none;width:34px;height:34px;border-radius:8px;background:var(--bg2);border:1px solid var(--border);align-items:center;justify-content:center;cursor:pointer;font-size:18px;flex-shrink:0;}
  @media(max-width:768px){
    .sidebar{transform:translateX(-100%);width:var(--sb-w)!important;}
    .sidebar.mob-open{transform:translateX(0);}
    .main-area,.main-area.collapsed{margin-left:0!important;}
    .content{padding:14px;}
    .mob-menu{display:flex;}
  }
  /* Assign chips */
  .assign-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);flex-wrap:wrap;}
  .assign-row:last-child{border-bottom:none;}
  .assign-label{font-size:11px;font-weight:700;color:var(--muted);min-width:90px;flex-shrink:0;}
  .assign-current{flex:1;display:flex;flex-wrap:wrap;gap:4px;min-width:100px;}
  .assign-ctrl{display:flex;gap:6px;align-items:center;flex-shrink:0;}
  .assign-sel{padding:6px 10px;font-size:12px;border-radius:8px;border:1.5px solid var(--border);background:#fff;max-width:160px;}
  .assign-chip{display:inline-flex;align-items:center;gap:4px;background:#EAF3FF;color:#007AFF;font-size:12px;font-weight:600;padding:3px 8px 3px 10px;border-radius:100px;}
  .chip-x{background:none;border:none;color:#007AFF;cursor:pointer;font-size:14px;line-height:1;padding:0 2px;}
  .xl-table{width:100%;border-collapse:collapse;min-width:700px;font-size:13px;}
  .xl-table th{background:#F0F0EC;color:var(--ink);font-weight:700;font-size:11px;letter-spacing:0.5px;text-transform:uppercase;padding:8px 10px;border:1px solid #D8D8D0;text-align:left;white-space:nowrap;position:sticky;top:0;z-index:2;}
  .xl-table td{padding:7px 10px;border:1px solid #E8E8E0;color:var(--text);vertical-align:middle;background:var(--white);}
  .xl-table tr:nth-child(even) td{background:#FAFAF8;}
  .xl-table tr:hover td{background:#F5F5EE;}
  .xl-table .xl-num{text-align:right;font-variant-numeric:tabular-nums;font-family:'DM Sans',monospace;}
  .xl-table .xl-total{background:#F5EDD8!important;font-weight:700;border-top:2px solid var(--gold);}
  .xl-table .xl-total td{background:#F5EDD8!important;font-weight:700;}
  .xl-table input{border:none;background:transparent;width:100%;font-size:13px;padding:2px 4px;outline:none;font-family:'Inter',sans-serif;}
  .xl-table input:focus{background:var(--gold-lt);border-radius:4px;}
  .xl-table select{border:none;background:transparent;font-size:13px;padding:2px;outline:none;}
  .xl-seq{background:#F0F0EC!important;color:var(--muted);font-weight:600;font-size:11px;text-align:center;width:40px;}
  .xl-row-btn{background:none;border:none;cursor:pointer;color:var(--muted);font-size:14px;padding:2px 6px;border-radius:4px;}
  .xl-row-btn:hover{background:var(--red-lt);color:var(--red);}
  .xl-add-row{width:100%;padding:8px;border:2px dashed var(--border);background:var(--bg);border-radius:0 0 10px 10px;font-size:13px;color:var(--muted);cursor:pointer;text-align:center;font-weight:500;transition:all 0.18s;}
  .xl-add-row:hover{border-color:var(--gold);color:var(--gold);background:var(--gold-lt);}
  .xl-summary{background:var(--ink);border-radius:10px;padding:16px 20px;color:var(--white);display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-top:12px;}
  .xl-sum-item{text-align:right;}
  .xl-sum-label{font-size:10px;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:1px;margin-bottom:3px;}
  .xl-sum-value{font-family:'Inter',sans-serif;font-weight:700;font-size:18px;font-weight:800;color:var(--gold-md);}
  .xl-sum-total .xl-sum-value{font-size:22px;color:var(--white);}

  /* ── QUOTE STATUS PILLS ──────────────────────────────── */
  .qs-draft{background:#F3F4F6;color:#6B7280;border:1px solid #E5E7EB;}
  .qs-submitted{background:var(--blue-lt);color:var(--blue);border:1px solid rgba(45,107,228,0.2);}
  .qs-awarded{background:var(--green-lt);color:var(--green);border:1px solid rgba(26,158,107,0.2);}
  .qs-lost{background:var(--red-lt);color:var(--red);border:1px solid rgba(217,64,64,0.2);}
  .qs-variation{background:var(--purple-lt,#F5F3FF);color:#7C3AED;border:1px solid rgba(124,58,237,0.2);}

  /* ── PIPELINE SECTIONS ──────────────────────────────── */
  .pipeline-section{margin-bottom:20px;}
  .pipeline-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:10px 10px 0 0;border:1px solid var(--border);border-bottom:none;}
  .pipeline-header.draft{background:#F9F9F7;}
  .pipeline-header.submitted{background:var(--blue-lt);}
  .pipeline-header.awarded{background:var(--green-lt);}
  .pipeline-title{font-family:'Inter',sans-serif;font-weight:700;font-size:14px;font-weight:800;color:var(--ink);}
  .pipeline-count{font-size:12px;font-weight:700;padding:3px 10px;border-radius:100px;background:var(--white);border:1px solid var(--border);}
  .pipeline-body{border:1px solid var(--border);border-radius:0 0 10px 10px;overflow:hidden;}

  /* ── QUOTE CARD ──────────────────────────────────────── */
  .qcard{padding:14px 16px;border-bottom:1px solid var(--bg2);display:flex;align-items:center;gap:12px;cursor:pointer;transition:background 0.15s;flex-wrap:wrap;}
  .qcard:last-child{border-bottom:none;}
  .qcard:hover{background:var(--bg);}
  .qcard-ref{font-family:'Inter',sans-serif;font-weight:700;font-size:13px;font-weight:800;color:var(--ink);white-space:nowrap;}
  .qcard-name{font-size:13px;color:var(--text2);flex:1;min-width:120px;}
  .qcard-client{font-size:12px;color:var(--muted);}
  .qcard-value{font-family:'Inter',sans-serif;font-weight:700;font-size:14px;font-weight:800;color:var(--ink);white-space:nowrap;}
  .qcard-date{font-size:11px;color:var(--muted);white-space:nowrap;}
