:root {
      --bg:#f7f8fa; --side:#fff; --card:#fff; --ink:#101828; --muted:#667085;
      --line:#d9dee7; --soft:#eef4ff; --brand:#2563eb; --brand-d:#1d4ed8;
      --green:#0f9d58; --shadow:0 14px 34px rgba(16,24,40,.06);
    }
    * { box-sizing:border-box; }
    body { margin:0; background:var(--bg); color:var(--ink); font-family:Segoe UI, system-ui, -apple-system, sans-serif; font-size:14px; }
    button, input, select { font:inherit; }
    .hidden { display:none !important; }

    .login-page { min-height:100vh; display:grid; place-items:center; padding:24px; background:linear-gradient(135deg,#edf6ff,#f7fff4 58%,#fff9e8); }
    .login-card { width:min(420px,100%); background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:var(--shadow); padding:28px; }
    .brand { margin-bottom:24px; display:flex; align-items:center; }
    .brand-logo { display:block; width:154px; max-width:100%; height:auto; object-fit:contain; }
    .login-card h1 { margin:0 0 6px; font-size:26px; letter-spacing:0; }
    .login-card p { margin:0 0 20px; color:var(--muted); }
    label { display:block; font-size:12px; font-weight:600; color:#344054; margin-bottom:6px; }
    input, select { width:100%; border:1px solid var(--line); border-radius:7px; padding:9px 10px; background:#fff; }
    input[type="checkbox"] { width:16px; height:16px; padding:0; flex:0 0 16px; }
    input:focus, select:focus { outline:none; border-color:var(--brand); box-shadow:0 0 0 3px rgba(37,99,235,.12); }
    input.manual-required, select.manual-required { background:#fff1f1; border-color:#f3b4b4; }
    input.manual-required.filled, select.manual-required.filled { background:#eefaf0; border-color:#9fd5a8; }
    .with-button.equal-field { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
    .monthly-values { display:grid; grid-template-columns:repeat(12,minmax(64px,1fr)); gap:7px; }
    .monthly-values input { min-width:0; text-align:right; padding:8px 7px; font-variant-numeric:tabular-nums; }
    .monthly-values .month-input-wrap { display:grid; gap:4px; border:1px solid #e6ebf2; border-radius:8px; padding:6px; background:#fbfcff; }
    .monthly-values .month-input-wrap span { font-size:11px; color:#667085; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .monthly-values .month-input-wrap.start-month { border-color:#d6b44a; background:#fff8dd; box-shadow:0 0 0 2px rgba(214,180,74,.13); }
    .field { margin-bottom:14px; }
    .login-error { min-height:19px; color:#b42318; font-weight:600; font-size:13px; margin:4px 0 12px; }

    .app { min-height:100vh; display:grid; grid-template-columns:190px 1fr; }
    .sidebar { background:var(--side); border-right:1px solid var(--line); }
    .logo-line { height:47px; border-bottom:1px solid var(--line); display:flex; align-items:center; padding:0 12px; }
    .logo-line img { display:block; width:118px; max-width:100%; max-height:34px; height:auto; object-fit:contain; }
    .nav { padding:14px 8px 18px; display:grid; gap:7px; }
    .nav button { display:flex; align-items:center; gap:11px; width:100%; border:0; border-radius:7px; background:transparent; color:#111827; padding:10px 12px; text-align:left; cursor:pointer; }
    .nav [data-view].active { background:#eaf2ff; font-weight:600; }
    .nav svg { width:15px; height:15px; stroke:#111827; stroke-width:1.8; fill:none; }
    .nav-main { margin-bottom:2px; }
    .nav-section { --nav-accent:#8fb2ff; --nav-bg:#fbfcff; --nav-active:#eaf2ff; border:1px solid transparent; border-radius:10px; position:relative; overflow:hidden; }
    .nav-section.visible { background:linear-gradient(135deg,var(--nav-bg),#fff 72%); border-color:#e4eaf3; padding:4px; box-shadow:inset 3px 0 0 var(--nav-accent); }
    .nav-section.contracts { --nav-accent:#6b9dff; --nav-bg:#f4f8ff; --nav-active:#eaf2ff; }
    .nav-section.monthly { --nav-accent:#78c6a7; --nav-bg:#f5fcf8; --nav-active:#eaf8f1; }
    .nav-section.admin { --nav-accent:#b7a6f6; --nav-bg:#faf7ff; --nav-active:#f1edff; }
    .nav-section.spv { --nav-accent:#1f9d8f; --nav-bg:#f0fffb; --nav-active:#dcfbf5; }
    .nav-section.other { --nav-accent:#f3c86a; --nav-bg:#fffaf0; --nav-active:#fff4d8; }
    .nav-section-toggle { justify-content:flex-start; color:#344054; font-size:11px; font-weight:750; letter-spacing:.045em; text-transform:uppercase; padding:8px 9px !important; }
    .nav-section-toggle .toggle-left { display:flex; align-items:center; gap:8px; min-width:0; }
    .nav-section-toggle .chev { display:none; }
    .nav-section-toggle svg { stroke:var(--nav-accent); }
    .nav-section-items { display:grid; gap:3px; padding:1px 0 3px; }
    .nav-section.collapsed .nav-section-items { display:none; }
    .nav-section [data-view] { padding:9px 9px; }
    .nav-section [data-view].active { background:var(--nav-active); box-shadow:inset 3px 0 0 var(--nav-accent); }
    .nav-section.hidden { display:none; }
    .topbar { height:47px; border-bottom:1px solid var(--line); background:#fff; display:flex; justify-content:flex-end; align-items:center; padding:0 18px; gap:10px; }
    .main { min-width:0; }
    .content { width:100%; max-width:none; margin:0; padding:18px 24px 56px; }
    .panel { background:var(--card); border:1px solid var(--line); border-radius:7px; }
    .hero { padding:20px; display:flex; justify-content:space-between; gap:24px; align-items:center; margin-bottom:18px; }
    .eyebrow { display:inline-flex; align-items:center; border-radius:999px; background:#eaf2ff; color:var(--brand); font-size:11px; font-weight:600; padding:3px 10px; text-transform:uppercase; }
    h1 { margin:8px 0 4px; font-size:28px; line-height:1.1; letter-spacing:0; }
    h2 { margin:0; font-size:24px; letter-spacing:0; }
    .muted { color:var(--muted); }
    .month { width:145px; }
    .stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
    .stat { padding:12px 15px; min-height:62px; display:flex; gap:11px; align-items:center; box-shadow:0 8px 22px rgba(16,24,40,.035); }
    .stat .ico { width:30px; height:30px; border-radius:8px; background:linear-gradient(135deg,#eaf2ff,#f7fbff); display:grid; place-items:center; color:var(--brand); font-weight:600; font-size:12px; flex:0 0 auto; box-shadow:inset 0 0 0 1px rgba(37,99,235,.06); }
    .stat > div:not(.ico) { min-width:0; display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
    .stat .label { font-size:12px; color:var(--muted); }
    .stat .label::after { content:":"; }
    .stat .value { font-size:17px; font-weight:500; margin-top:0; color:#111827; white-space:nowrap; }
    .stat .sub { color:var(--muted); font-size:12px; margin-top:2px; min-width:0; }
    .stat.sold-risk { background:linear-gradient(135deg,#fff1f1,#fff9f7); border-color:#f2b8b8; box-shadow:0 10px 26px rgba(153,27,27,.10); }
    .stat.sold-risk .ico { background:#b42318; color:#fff; box-shadow:none; }
    .stat.sold-risk .label { color:#7f1d1d; }
    .stat.sold-risk .value { color:#991b1b; font-weight:700; font-size:20px; }
    .stat.sold-risk .sub { color:#7f1d1d; }
    .dashboard-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:14px; align-items:stretch; }
    .dash-card { padding:18px 20px; min-height:100%; box-shadow:0 12px 28px rgba(16,24,40,.045); }
    .dash-card.c3 { grid-column:span 3; }
    .dash-card.c4 { grid-column:span 4; }
    .dash-card.c5 { grid-column:span 5; }
    .dash-card.c6 { grid-column:span 6; }
    .dash-card.c7 { grid-column:span 7; }
    .dash-card.c12 { grid-column:span 12; }
    .dash-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:14px; }
    .dash-head h2 { font-size:19px; font-weight:600; }
    .dash-head .hint { color:var(--muted); font-size:12px; margin-top:3px; }
    .dash-layout { display:grid; grid-template-columns:minmax(300px,380px) minmax(320px,1fr); gap:26px; align-items:center; min-height:310px; }
    .dash-search-panel { padding:15px 18px; margin-bottom:14px; border-color:#b9cdf7; background:linear-gradient(135deg,#f4f8ff,#ffffff 62%,#fff8e8); box-shadow:0 14px 32px rgba(37,99,235,.075); }
    .dash-search-row { display:grid; grid-template-columns:minmax(320px, 1fr) auto; gap:10px; align-items:end; }
    .dash-search-row label { color:#1747b8; font-size:13px; }
    .dash-search-row input { height:46px; border-color:#adc5f5; background:#fff; font-size:15px; box-shadow:0 8px 18px rgba(37,99,235,.06); }
    .dash-search-results { display:grid; gap:7px; margin-top:12px; }
    .dash-search-item { display:grid; grid-template-columns:minmax(220px,1fr) 140px 140px 120px auto; gap:12px; align-items:center; padding:10px 12px; border:1px solid #cbd8ef; border-radius:7px; background:rgba(255,255,255,.92); font-size:12px; text-align:left; cursor:pointer; box-shadow:0 6px 15px rgba(16,24,40,.035); }
    .dash-search-item:hover { border-color:#7aa7ff; background:#f8fbff; transform:translateY(-1px); }
    .dash-search-item.active { border-color:#2563eb; background:#eff6ff; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
    .dash-search-item strong { font-size:13px; font-weight:500; }
    .dash-search-item .muted { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .smart-search-panel { padding:14px 16px; border-color:#bfd2f7; background:linear-gradient(135deg,#f7fbff,#ffffff 64%,#fff8e8); box-shadow:0 14px 34px rgba(37,99,235,.08); }
    .smart-search-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:7px; }
    .smart-search-head label { margin:0; color:#1747b8; font-size:12px; font-weight:650; }
    .search-count { color:#4b5d78; font-size:12px; font-weight:600; }
    .smart-search-box { position:relative; display:flex; align-items:center; }
    .smart-search-box input { height:46px; padding:10px 78px 10px 42px; border-color:#9fbbf2; background:#fff; font-size:14px; box-shadow:0 8px 18px rgba(37,99,235,.07); transition:border-color .16s ease, box-shadow .16s ease, background .16s ease; }
    .smart-search-box input:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.13), 0 12px 26px rgba(37,99,235,.12); }
    .search-icon { position:absolute; left:13px; width:18px; height:18px; color:#5274b8; pointer-events:none; }
    .search-icon svg { width:18px; height:18px; stroke:currentColor; stroke-width:2; fill:none; }
    .search-clear { position:absolute; right:41px; width:26px; height:26px; border:0; border-radius:999px; background:#eef4ff; color:#315399; display:grid; place-items:center; cursor:pointer; font-weight:700; line-height:1; }
    .search-clear:hover { background:#dbeafe; color:#1d4ed8; }
    .search-kbd { position:absolute; right:10px; min-width:24px; height:24px; border:1px solid #d6deea; border-bottom-color:#bdc8da; border-radius:6px; color:#667085; background:#f8fafc; display:grid; place-items:center; font-size:12px; font-weight:700; }
    .search-filter-chips { display:flex; gap:7px; align-items:center; flex-wrap:wrap; margin-top:10px; }
    .search-chip { border:1px solid #d7e2f2; background:#fff; color:#344054; border-radius:999px; padding:6px 10px; cursor:pointer; font-size:12px; font-weight:600; }
    .search-chip:hover { border-color:#93b4f4; background:#f8fbff; }
    .search-chip.active { border-color:#2563eb; color:#1d4ed8; background:#eaf2ff; box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .search-empty { padding:10px 2px; color:#667085; font-size:13px; }
    mark.search-hit { background:#fff2a8; color:inherit; border-radius:3px; padding:0 2px; box-shadow:0 0 0 1px rgba(245,158,11,.16); }
    .dashboard-filter-bar { display:flex; align-items:center; justify-content:space-between; gap:10px; margin:-4px 0 14px; }
    .dashboard-filter-chips { display:flex; gap:8px; align-items:center; flex-wrap:wrap; min-height:32px; }
    .dashboard-filter-chip { display:inline-flex; align-items:center; gap:8px; border:1px solid #b9cdf7; background:#eef6ff; color:#1747b8; border-radius:999px; padding:7px 11px; font-size:12px; font-weight:650; box-shadow:0 8px 18px rgba(37,99,235,.08); }
    .dashboard-filter-chip button { border:0; background:#dbeafe; color:#1d4ed8; border-radius:999px; width:20px; height:20px; display:grid; place-items:center; cursor:pointer; font-weight:800; line-height:1; }
    .dashboard-reset { border:1px solid #d7e2f2; background:#fff; color:#344054; border-radius:7px; padding:7px 10px; cursor:pointer; font-weight:650; }
    .dashboard-reset:hover { border-color:#93b4f4; color:#1747b8; background:#f8fbff; }
    .dashboard-clickable { cursor:pointer; }
    .dashboard-clickable:hover { transform:translateY(-1px); border-color:#8fb2ff; box-shadow:0 12px 26px rgba(37,99,235,.11); }
    .stat.dashboard-clickable { transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; }
    .stat.count-flash .value { animation:countFlash .42s ease; }
    @keyframes countFlash { from { color:#1d4ed8; transform:translateY(-2px); } to { color:inherit; transform:translateY(0); } }
    .dashboard-tooltip { position:fixed; z-index:120; max-width:300px; pointer-events:none; padding:10px 11px; border-radius:8px; border:1px solid rgba(148,163,184,.42); background:rgba(15,23,42,.95); color:#fff; box-shadow:0 18px 42px rgba(15,23,42,.24); font-size:12px; line-height:1.45; opacity:0; transform:translateY(4px); transition:opacity .12s ease, transform .12s ease; }
    .dashboard-tooltip.show { opacity:1; transform:translateY(0); }
    .dashboard-tooltip strong { display:block; margin-bottom:3px; font-size:13px; }
    .drill-overlay { position:fixed; inset:0; z-index:70; background:rgba(15,23,42,.28); display:flex; justify-content:flex-end; padding:18px; }
    .drill-panel { width:min(760px,100%); height:100%; overflow:auto; background:#fff; border:1px solid #d7deea; border-radius:10px; box-shadow:0 24px 70px rgba(16,24,40,.24); padding:18px; }
    .drill-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; padding-bottom:14px; border-bottom:1px solid #e8ebf0; margin-bottom:14px; }
    .drill-head h2 { font-size:24px; margin:5px 0 4px; }
    .drill-actions { display:flex; gap:8px; align-items:center; }
    .drill-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
    .drill-summary .stat { min-height:58px; padding:10px 12px; }
    .drill-table th, .drill-table td { font-size:12px; padding:9px 8px; }
    .drill-table tbody tr { cursor:pointer; }
    .drill-table tbody tr:hover { background:#f8fbff; }
    .pie3d { --pie:conic-gradient(#dbeafe 0 360deg); --pie-tilt:rotateX(0deg) rotateZ(0deg); width:min(330px,100%); aspect-ratio:1; border-radius:50%; background:var(--pie); box-shadow:0 20px 34px rgba(16,24,40,.10), inset 0 0 0 1px rgba(255,255,255,.9); position:relative; margin:4px auto; cursor:pointer; transform:var(--pie-tilt) scale(1); transform-origin:center; transition:transform .24s ease, box-shadow .24s ease, filter .24s ease; }
    .pie3d::before { content:""; position:absolute; inset:25%; border-radius:50%; background:linear-gradient(180deg,#fff,#f8fafc); box-shadow:inset 0 4px 12px rgba(16,24,40,.07), 0 0 0 1px rgba(16,24,40,.04); }
    .pie3d::after { content:""; position:absolute; inset:-9px; border-radius:50%; border:1px solid rgba(37,99,235,.08); transition:inset .24s ease, border-color .24s ease, box-shadow .24s ease; }
    .pie3d:hover, .pie3d.is-hovered { transform:var(--pie-tilt) scale(1.035); box-shadow:0 26px 46px rgba(16,24,40,.16), 0 0 0 6px rgba(37,99,235,.055), inset 0 0 0 1px rgba(255,255,255,.95); filter:saturate(1.07); }
    .pie3d:hover::after, .pie3d.is-hovered::after { inset:-13px; border-color:rgba(37,99,235,.18); box-shadow:0 16px 34px rgba(37,99,235,.10); }
    .pie3d:hover .pie-center, .pie3d.is-hovered .pie-center { transform:scale(1.035); }
    .pie-center { position:absolute; inset:27%; border-radius:50%; display:grid; place-items:center; color:#111827; text-align:center; line-height:1.12; z-index:1; padding:8px; }
    .pie-center { transition:transform .24s ease; }
    .pie-center strong { display:block; font-size:22px; font-weight:700; font-variant-numeric:tabular-nums; }
    .pie-center span { display:block; margin-top:4px; color:var(--muted); font-size:12px; font-weight:600; }
    .chart-legend { display:grid; gap:9px; align-content:center; }
    .legend-row { display:grid; grid-template-columns:13px minmax(130px,1fr) auto auto; align-items:center; gap:10px; padding:10px 11px; border:1px solid #e5eaf3; border-radius:7px; background:#fff; font-size:12px; color:#344054; box-shadow:0 5px 14px rgba(16,24,40,.025); cursor:pointer; transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease; }
    .legend-row:hover, .legend-row.active { transform:translateX(4px); border-color:#8fb2ff; background:linear-gradient(135deg,#f8fbff,#fff); box-shadow:0 12px 24px rgba(37,99,235,.10); }
    .legend-dot { width:13px; height:13px; border-radius:4px; background:var(--c,#dbeafe); transition:transform .18s ease, box-shadow .18s ease; }
    .legend-row:hover .legend-dot, .legend-row.active .legend-dot { transform:scale(1.28); box-shadow:0 0 0 4px color-mix(in srgb, var(--c,#8ab3ff) 20%, transparent); }
    .legend-row strong { font-weight:500; color:#111827; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .legend-value { font-variant-numeric:tabular-nums; color:#1d2939; }
    .legend-pct { min-width:54px; text-align:right; color:var(--muted); font-variant-numeric:tabular-nums; }
    @media (prefers-reduced-motion: reduce) {
      .pie3d, .pie3d::after, .pie-center, .legend-row, .legend-dot { transition:none; }
      .pie3d:hover, .pie3d.is-hovered, .legend-row:hover, .legend-row.active { transform:none; }
    }
    .trend-bars { min-height:276px; padding:2px 2px 0; }
    .trend-legend { display:flex; justify-content:flex-end; gap:14px; align-items:center; color:#475467; font-size:12px; margin-bottom:8px; }
    .trend-legend span { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; }
    .trend-legend i { width:12px; height:8px; border-radius:999px; display:inline-block; }
    .trend-legend .rev { background:linear-gradient(90deg,#377de8,#a9c8fa); }
    .trend-legend .supp { background:linear-gradient(90deg,#dc3f4f,#f7a5ad); }
    .trend-legend .clients { background:#47b881; }
    .trend-chart { position:relative; height:244px; }
    .trend-columns { position:relative; z-index:1; display:grid; grid-template-columns:repeat(12,minmax(66px,1fr)); gap:8px; align-items:end; height:100%; padding-top:8px; min-width:920px; }
    .trend-month-group { display:flex; min-width:0; height:100%; flex-direction:column; justify-content:flex-end; gap:5px; text-align:center; border-radius:10px; padding:0 2px 2px; }
    .trend-month-group.current { background:linear-gradient(180deg,rgba(255,247,210,.1),rgba(255,247,210,.5)); }
    .trend-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px; align-items:end; height:calc(100% - 18px); }
    .trend-series-bar { display:flex; min-width:0; height:100%; flex-direction:column; justify-content:flex-end; gap:4px; }
    .trend-value { font-size:10px; color:#344054; font-weight:700; white-space:nowrap; }
    .trend-fill { min-height:3px; border-radius:7px 7px 3px 3px; }
    .trend-series-bar.fees .trend-fill { background:linear-gradient(180deg,#377de8,#c7dbfc); box-shadow:inset 0 -12px 18px rgba(37,99,235,.13),0 6px 12px rgba(37,99,235,.08); }
    .trend-series-bar.supplementals .trend-fill { background:linear-gradient(180deg,#dc3f4f,#ffd5d9); box-shadow:inset 0 -12px 18px rgba(190,24,45,.12),0 6px 12px rgba(190,24,45,.08); }
    .trend-month-group.current .trend-series-bar.fees .trend-fill { background:linear-gradient(180deg,#f2c037,#fff1a8); box-shadow:0 7px 15px rgba(191,132,12,.18); }
    .trend-month-group.current .trend-series-bar.supplementals .trend-fill { background:linear-gradient(180deg,#f28a24,#ffd3a1); box-shadow:0 7px 15px rgba(194,90,8,.2); }
    .trend-count { font-size:9px; font-weight:700; font-variant-numeric:tabular-nums; white-space:nowrap; }
    .trend-series-bar.fees .trend-count { color:#245fad; }
    .trend-series-bar.supplementals .trend-count { color:#b42335; }
    .trend-month-group.current .trend-series-bar.fees .trend-count { color:#8a6400; }
    .trend-month-group.current .trend-series-bar.supplementals .trend-count { color:#a24400; }
    .trend-label { font-size:11px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .trend-client-line { position:absolute; inset:18px 0 30px; width:100%; height:calc(100% - 48px); z-index:3; pointer-events:none; overflow:visible; }
    .trend-client-line polyline { fill:none; stroke:#47b881; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; filter:drop-shadow(0 5px 7px rgba(37,99,66,.18)); }
    .trend-dots { position:absolute; inset:18px 0 30px; z-index:4; pointer-events:none; }
    .trend-client-dot { position:absolute; transform:translate(-50%,-50%); width:24px; height:18px; border-radius:999px; background:#eaf8ef; border:1px solid #69c59a; color:#176a46; display:grid; place-items:center; box-shadow:0 5px 12px rgba(32,125,88,.16); }
    .trend-client-dot span { font-size:10px; font-weight:700; line-height:1; }
    .trend-client-dot.current { background:#1f9d64; color:#fff; border-color:#1f9d64; }
    .decision-list { display:grid; gap:9px; }
    .decision-list.decision-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .decision-item { display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; padding:10px 11px; border:1px solid #edf0f4; border-radius:7px; background:#fff; }
    .decision-item .name { color:#344054; font-size:13px; }
    .decision-item .val { font-weight:600; font-variant-numeric:tabular-nums; }
    .decision-item.warn { background:#fff8e6; border-color:#f1d89c; }
    .decision-item.danger { background:#fff1f1; border-color:#efc0c0; }
    .source-grid { display:grid; grid-template-columns:minmax(360px,1fr) minmax(360px,1fr); gap:18px; align-items:start; }
    .supp-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:12px; }
    .supp-pill { border:1px solid #e7edf6; border-radius:9px; background:linear-gradient(135deg,#f8fbff,#fff); padding:10px 11px; }
    .supp-pill span { display:block; color:var(--muted); font-size:11px; margin-bottom:4px; }
    .supp-pill strong { font-size:16px; font-variant-numeric:tabular-nums; }
    .source-box h3 { margin:0 0 4px; font-size:15px; font-weight:600; }
    .source-box .hint { margin-bottom:10px; }
    .source-head-tools { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
    .source-range-tabs { display:flex; gap:7px; flex-wrap:wrap; }
    .source-range-btn { border:1px solid #d7e2f2; border-radius:999px; background:#fff; color:#344054; padding:7px 10px; font-size:12px; font-weight:750; cursor:pointer; }
    .source-range-btn.active { border-color:#2563eb; background:#eaf2ff; color:#1747b8; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .source-bars { display:grid; gap:9px; }
    .source-bar-row { display:grid; grid-template-columns:minmax(150px,1fr) 88px 64px; gap:10px; align-items:center; padding:9px 10px; border:1px solid #e5eaf3; border-radius:7px; background:#fff; }
    .source-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#1d2939; }
    .source-track { height:8px; border-radius:999px; background:#edf1f7; overflow:hidden; grid-column:1 / -1; }
    .source-track span { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#8ab3ff,#9fd8b5); }
    .mini-table th, .mini-table td { padding:9px 8px; font-size:12px; }
    .mini-table .right { text-align:right; }
    .share-cell { min-width:120px; }
    .share-track { height:7px; border-radius:99px; background:#edf0f4; overflow:hidden; margin-top:5px; }
    .share-track span { display:block; height:100%; border-radius:99px; background:#8ab3ff; }
    .table-card { padding:18px; }
    .section-title { display:flex; align-items:center; gap:10px; margin-bottom:18px; }
    table { width:100%; border-collapse:collapse; }
    th, td { text-align:left; padding:12px 8px; border-bottom:1px solid #e8ebf0; }
    th { font-size:12px; color:#111827; }
    .empty-module { min-height:360px; display:grid; place-items:center; color:var(--muted); }
    .client-toolbar { display:flex; align-items:end; justify-content:space-between; gap:14px; margin-bottom:14px; }
    .client-toolbar .filters { display:flex; gap:12px; align-items:end; flex-wrap:wrap; width:100%; }
    .client-toolbar.client-toolbar-main { align-items:stretch; }
    .client-toolbar.client-toolbar-main .filters { display:grid; grid-template-columns:1fr; gap:12px; }
    .client-toolbar select { width:180px; }
    .client-period-row { display:grid; grid-template-columns:auto minmax(520px,1fr); align-items:end; gap:12px; }
    .client-search { min-width:360px; flex:1 1 520px; padding:12px 14px; border:1px solid #84aef8; border-radius:9px; background:linear-gradient(135deg,#edf5ff,#fff 58%,#fff6dc); box-shadow:0 16px 34px rgba(37,99,235,.13); }
    .client-search label { color:#1747b8; font-size:13px; font-weight:600; }
    .client-search input { height:48px; background:#fff; border-color:#7ea6f8; font-size:15px; box-shadow:0 8px 18px rgba(37,99,235,.09); }
    .client-search.smart-search-panel { padding:14px 16px; border-color:#bfd2f7; background:linear-gradient(135deg,#f7fbff,#ffffff 64%,#fff8e8); }
    .client-search.smart-search-panel label { margin:0; color:#1747b8; font-size:12px; font-weight:650; }
    .client-search.smart-search-panel .smart-search-box input { height:46px; padding:10px 78px 10px 42px; border-color:#9fbbf2; font-size:14px; box-shadow:0 8px 18px rgba(37,99,235,.07); }
    .month-nav { display:flex; align-items:center; gap:8px; }
    .month-nav .month-chip { min-width:130px; text-align:center; font-weight:500; color:#1d2939; }
    .period-tabs { display:flex; gap:6px; flex-wrap:wrap; }
    .year-tab, .month-tab { border:1px solid var(--line); border-radius:7px; background:#fff; color:#1d2939; cursor:pointer; font-weight:500; }
    .year-tab { min-width:72px; padding:9px 14px; }
    .month-tab { min-width:58px; padding:8px 9px; font-size:12.5px; }
    .year-tab.active, .month-tab.active { border-color:var(--brand); box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .month-tab.past { background:#eef6ff; }
    .month-tab.work { background:#fff3c4; border-color:#ead27d; }
    .month-tab.current { background:#e8f7ec; border-color:#b8daba; color:#174a2b; }
    .month-tab.future { background:#f3f0ff; }
    .month-filter { min-width:min(100%, 720px); }
    .client-toolbar-main .month-filter { padding:10px 12px; border:1px solid #e1e8f3; border-radius:9px; background:#fff; box-shadow:0 9px 22px rgba(16,24,40,.04); }
    .portfolio-tabs { display:grid; grid-template-columns:repeat(auto-fit,minmax(142px,1fr)); gap:8px; margin-bottom:12px; }
    .flow-tabs-card { margin:12px 0 14px; padding:14px 16px 10px; background:linear-gradient(180deg,#fffefa,#fff); border-color:#ead9ad; }
    .flow-tabs-card .portfolio-tabs { margin-bottom:0; }
    .portfolio-tab { position:relative; border:1px solid color-mix(in srgb, var(--colab-color,#7ea6f8) 34%, #d6e0ed); border-radius:10px; min-height:58px; padding:15px 12px 9px; text-align:left; background:linear-gradient(135deg, color-mix(in srgb, var(--colab-color,#7ea6f8) 14%, #fff), #fff 74%); cursor:pointer; box-shadow:0 8px 18px rgba(16,24,40,.035); transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease, background .14s ease; }
    .portfolio-tab::before { content:""; position:absolute; left:9px; right:9px; top:6px; height:4px; border-radius:999px; background:var(--colab-color,#7ea6f8); }
    .portfolio-tab .tab-name { display:block; font-size:13px; font-weight:750; margin-bottom:4px; color:#111827; line-height:1.15; }
    .portfolio-tab span { color:#667085; font-size:11px; line-height:1.25; }
    .portfolio-tab:hover { transform:translateY(-1px); box-shadow:0 10px 24px rgba(16,24,40,.10); }
    .portfolio-tab.active {
      background:linear-gradient(105deg, #fff3b8 0%, #ffd76f 54%, #f6bf4f 100%);
      border-color:#e3ad32;
      box-shadow:0 12px 26px rgba(194,132,19,.18);
    }
    .portfolio-tab.active::after { content:"\2713"; position:absolute; top:12px; right:11px; width:23px; height:23px; display:grid; place-items:center; border:1px solid #22c55e; border-radius:50%; background:#dcfce7; color:#15803d; font-size:15px; font-weight:900; line-height:1; box-shadow:0 3px 8px rgba(21,128,61,.18); }
    .portfolio-tab.active .tab-name { color:#172033; padding-right:30px; }
    .portfolio-tab.active span { color:#6b4d0f; }
    .portfolio-tab.c0 { --colab-color:#7ea6f8; }
    .portfolio-tab.c1 { --colab-color:#8fd8b0; }
    .portfolio-tab.c2 { --colab-color:#f5c85b; }
    .portfolio-tab.c3 { --colab-color:#b8a7f6; }
    .portfolio-tab.c4 { --colab-color:#f0a3ad; }
    .client-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:12px; }
    .client-summary .stat { min-height:56px; padding:10px 14px; }
    .import-panel { margin:8px 0 12px; border:1px solid #bfdbfe; background:linear-gradient(135deg,#f8fbff,#fffdf4); border-radius:7px; padding:10px 12px; display:grid; grid-template-columns:minmax(210px, 1fr) auto; gap:12px; align-items:end; }
    .import-panel h3 { margin:0 0 3px; font-size:15px; }
    .import-panel .import-form { display:flex; align-items:end; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
    .import-panel input[type="file"] { max-width:280px; border:1px solid var(--line); background:#fff; border-radius:7px; padding:7px; }
    .import-status { color:#526079; font-size:12px; margin-top:4px; min-height:16px; }
    .import-status.ok { color:#166534; }
    .import-status.err { color:#991b1b; }
    .restante-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:16px; }
    .restante-compare { margin-top:14px; border:1px solid #dbe7f7; border-radius:9px; background:linear-gradient(135deg,#f8fbff,#fff); padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:16px; box-shadow:0 10px 24px rgba(16,24,40,.04); }
    .restante-compare strong { display:block; font-size:18px; font-weight:600; margin-top:3px; }
    .restante-compare .delta { border-radius:999px; padding:7px 11px; font-weight:600; font-variant-numeric:tabular-nums; }
    .restante-compare.up .delta { color:#991b1b; background:#fee2e2; }
    .restante-compare.down .delta { color:#166534; background:#dcfce7; }
    .restante-compare.flat .delta { color:#475467; background:#f2f4f7; }
    .restante-colab-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:10px; margin-top:14px; }
    .restante-colab-card { border:1px solid #dde6f2; border-radius:9px; background:#fff; padding:12px 13px; box-shadow:0 8px 20px rgba(16,24,40,.035); }
    .restante-colab-card strong { display:block; font-size:14px; font-weight:600; color:#111827; margin-bottom:7px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .restante-colab-card .big { font-size:20px; color:#991b1b; font-weight:700; font-variant-numeric:tabular-nums; }
    .restante-colab-card .meta { color:#667085; font-size:12px; margin-top:4px; line-height:1.45; }
    .restante-top { margin-top:14px; }
    .client-table-shell { position:relative; }
    .client-table-wrap { overflow:visible; max-height:none; border:1px solid var(--line); border-radius:7px; background:#fff; }
.client-table { min-width:1030px; font-size:11px; line-height:1.2; table-layout:fixed; }

.client-table th,
.client-table td {
  padding-left:5px;
  padding-right:5px;
}
    .client-table th { position:sticky; top:0; z-index:1; background:#f3f5f9; border-bottom:1px solid var(--line); }
    .client-table th, .client-table td { padding:6px 7px; border-right:1px solid #edf0f4; white-space:nowrap; font-weight:400; overflow:hidden; text-overflow:ellipsis; }
    .client-table th.sortable { padding:0; }
    .client-table th.sortable button { width:100%; height:100%; min-height:30px; border:0; background:transparent; padding:6px 7px; text-align:left; cursor:pointer; color:#111827; font-size:12px; display:flex; align-items:center; justify-content:space-between; gap:6px; }
    .client-table th.sortable button:hover { background:#eef4ff; }
    .client-table th.sortable.active button { color:#1747b8; background:#eaf2ff; font-weight:600; }
    .client-table th.sortable.center button { justify-content:center; text-align:center; }
    .client-table th.sortable.right button { justify-content:flex-end; text-align:right; }
    .client-table th.sortable .sort-mark { color:#3f6ee8; font-size:10px; min-width:10px; }
    .client-table .center { text-align:center; }
    .client-table .right { text-align:right; }
    .client-table .firm { background:#fff6d8; }
.client-table .name-cell { width:178px; max-width:178px; }
    .client-table .fiscal-cell { width:160px; max-width:160px; }
    .client-name-wrap { display:flex; align-items:center; gap:6px; min-width:0; }
    .client-name-edit { display:block; flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .client-name-text { display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .stup-badge { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; border-radius:5px; background:#111827; color:#fff; padding:2px 6px; font-size:10px; font-weight:800; letter-spacing:.04em; line-height:1.35; vertical-align:middle; margin-left:6px; }
    .client-fiscal-wrap { display:flex; align-items:center; gap:5px; min-width:0; }
    .client-fiscal-edit { display:block; flex:0 0 auto; min-width:70px; overflow:visible; text-overflow:clip; white-space:nowrap; }
    .anaf-sync-btn { display:inline-flex; align-items:center; justify-content:center; gap:3px; flex:0 0 auto; min-width:42px; height:22px; border:1px solid #b9c7da; border-radius:999px; background:#f8fafc; color:#1d4ed8; cursor:pointer; font-size:9px; font-weight:900; letter-spacing:.03em; line-height:1; padding:2px 6px; transition:opacity .16s ease, transform .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease; }
    .anaf-sync-btn svg { width:12px; height:12px; fill:currentColor; }
    .anaf-sync-btn.pending { opacity:.34; filter:grayscale(.35); }
    .anaf-sync-btn.synced { opacity:1; color:#047857; background:#dcfce7; border-color:#86efac; box-shadow:0 0 0 1px rgba(34,197,94,.14); }
    .anaf-sync-btn.review { opacity:1; color:#b91c1c; background:#fee2e2; border-color:#fca5a5; box-shadow:0 0 0 1px rgba(239,68,68,.16); }
    .anaf-sync-btn:hover { opacity:1; transform:translateY(-1px); box-shadow:0 5px 12px rgba(15,23,42,.12); }
    .anaf-sync-btn.loading { opacity:1; color:#475569; background:#eef2f7; cursor:wait; }
    .anaf-spinner { width:11px; height:11px; border:2px solid #cbd5e1; border-top-color:#1d4ed8; border-radius:999px; animation:spin .75s linear infinite; }
    @keyframes spin { to { transform:rotate(360deg); } }
    .client-open { width:22px; height:22px; border:1px solid #b8cdfa; border-radius:6px; background:#eef4ff; color:#1747b8; cursor:pointer; font-size:12px; font-weight:600; line-height:1; flex:0 0 auto; }
    .client-open:hover { background:#dfeaff; border-color:#7aa7ff; }
    .sold-cell, .invoice-count-cell { background:#fff; color:#344054; font-variant-numeric:tabular-nums; }
    .sold-cell.has-sold { background:#fff1f1; color:#991b1b; }
    .invoice-count-cell.has-sold { background:#fff8e6; color:#7a4b00; }
.client-table .contract-cell {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 54px;
  align-items:center;
  gap:4px;
  min-width:0;
  width:100%;
  min-height:30px;
}
.client-table td.contract-action-td { overflow:hidden; }
.client-table .contract-cell > span,
.client-table .contract-cell .contract-nr-preview {
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.client-table .contract-cell .client-name-fisa-chip {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  justify-self:end;
  box-sizing:border-box;
  width:54px !important;
  min-width:54px !important;
  max-width:54px !important;
  font-size:10px;
  height:24px;
  min-height:24px;
  padding:0 5px;
  font-size:10px;
  line-height:1;
  white-space:nowrap;
}
.client-table th:nth-child(2),
.client-table td:nth-child(2) {
  width:178px !important;
  min-width:178px;
  max-width:178px;
}
.client-table th:nth-child(4),
.client-table td:nth-child(4) {
  width:78px !important;
  min-width:78px;
  max-width:78px;
}
.client-table th:nth-child(5),
.client-table td:nth-child(5),
.client-table th:nth-child(6),
.client-table td:nth-child(6) {
  width:42px !important;
  min-width:42px;
  max-width:42px;
  padding-left:4px;
  padding-right:4px;
}
.client-table th:nth-child(7),
.client-table td:nth-child(7) {
  width:203px !important;
  min-width:203px;
  max-width:203px;
}
.client-table th:nth-child(8),
.client-table td:nth-child(8) { width:78px; }
.client-table th:nth-child(9),
.client-table td:nth-child(9) { width:100px; }
    .contract-actions { display:inline-flex; align-items:center; gap:5px; flex:0 0 auto; }
    .client-actions-menu { position:relative; flex:0 0 auto; }
    .client-actions-menu summary { list-style:none; }
    .client-actions-menu summary::-webkit-details-marker { display:none; }
    .client-actions-trigger { display:inline-flex; align-items:center; justify-content:center; min-width:68px; min-height:26px; padding:5px 10px; border:1px solid #d7dee8; border-radius:7px; background:#f3f6fa; color:#344054; font-size:12px; font-weight:600; cursor:pointer; transition:background .16s ease, border-color .16s ease, box-shadow .16s ease; }
    .client-actions-trigger:hover { background:#edf2f8; border-color:#bdc9d8; }
    .client-actions-menu[open] .client-actions-trigger { background:#eaf1fb; border-color:#8fb2ff; box-shadow:0 0 0 3px rgba(49,94,234,.10); }
    .client-actions-popover { position:absolute; right:0; top:calc(100% + 7px); z-index:45; min-width:190px; padding:7px; border:1px solid #dbe3ef; border-radius:9px; background:#fff; box-shadow:0 18px 42px rgba(15,23,42,.16); display:grid; gap:6px; }
    .client-action-item { width:100%; border:1px solid #e2e8f0; border-radius:7px; background:#f8fafc; color:#243047; padding:8px 10px; text-align:left; font-size:12px; font-weight:600; cursor:pointer; }
    .client-action-item:hover { background:#eef4ff; border-color:#bfd0ff; color:#1747b8; }
    .client-action-item.danger { color:#991b1b; background:#fff5f5; border-color:#f4b8b8; }
    .client-action-item.danger:hover { color:#7f1d1d; background:#fee2e2; border-color:#ef9a9a; }
    .client-action-item.transfer { color:#175cd3; background:#eef4ff; border-color:#bfd0ff; }
    .client-action-item.transfer:hover { background:#dfeaff; border-color:#8fb2ff; }
    .close-inline, .transfer-inline { width:22px; height:22px; padding:0; border-radius:6px; font-size:12px; line-height:1; flex:0 0 auto; }
    .close-inline { width:22px; color:#9f1239; background:#fff7f7; border:1px solid #f3c6c6; }
    .close-inline:hover { background:#ffe8e8; }
    .transfer-inline { color:#175cd3; background:#eef4ff; border:1px solid #bfd0ff; }
    .transfer-inline:hover { background:#e1ebff; }
    .action-overlay { position:fixed; inset:0; z-index:80; background:rgba(15,23,42,.42); display:grid; place-items:center; padding:24px; }
    .action-panel { width:min(720px, 100%); max-height:min(86vh, 760px); overflow:auto; background:#fff; border:1px solid rgba(148,163,184,.6); border-radius:10px; box-shadow:0 28px 70px rgba(15,23,42,.28); }
    .action-head { display:flex; justify-content:space-between; gap:18px; padding:20px 22px 14px; border-bottom:1px solid var(--line); }
    .action-head h2 { margin:4px 0 4px; font-size:24px; }
    .action-body { padding:18px 22px; }
    .action-footer { position:sticky; bottom:0; z-index:2; display:flex; justify-content:flex-end; gap:10px; padding:14px 22px 20px; border-top:1px solid var(--line); background:#fbfcfe; }
    .action-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:16px; }
    .action-summary div { border:1px solid #e4e8ef; border-radius:8px; padding:9px 11px; background:#f8fafc; }
    .action-summary .wide { grid-column:1 / -1; }
    .action-summary span { display:block; color:var(--muted); font-size:11px; margin-bottom:3px; }
    .action-summary strong { display:block; font-size:14px; font-weight:500; color:#111827; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .choice-block { margin-top:14px; }
    .choice-block label { display:block; font-size:12px; color:#475467; margin-bottom:8px; }
    .choice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); gap:8px; }
    .choice-grid.months { grid-template-columns:repeat(auto-fit,minmax(104px,1fr)); }
    .choice-grid.close-months { grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
    .choice-grid.close-months .choice-btn { text-align:center; white-space:nowrap; min-height:46px; font-weight:600; }
    .choice-grid.close-reason-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .choice-btn { border:1px solid #d6dee9; background:#fff; border-radius:8px; padding:10px 12px; min-height:42px; text-align:left; cursor:pointer; color:#111827; }
    .choice-btn:hover { border-color:#8fb2ff; background:#f6f9ff; }
    .choice-btn.active { border-color:#2563eb; background:#eef4ff; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
    .close-reason-btn { min-height:52px; font-weight:700; text-align:center; display:flex; align-items:center; justify-content:center; }
    .close-reason-btn.close-danger { color:#991b1b; border-color:#f0a8a8; background:linear-gradient(135deg,#fff5f5,#fee2e2); }
    .close-reason-btn.close-danger:hover, .close-reason-btn.close-danger.active { color:#fff; border-color:#dc2626; background:linear-gradient(135deg,#ef4444,#b91c1c); box-shadow:0 0 0 3px rgba(220,38,38,.16); }
    .close-reason-btn.close-success { color:#166534; border-color:#9bd7aa; background:linear-gradient(135deg,#f0fdf4,#dcfce7); }
    .close-reason-btn.close-success:hover, .close-reason-btn.close-success.active { color:#064e3b; border-color:#16a34a; background:linear-gradient(135deg,#bbf7d0,#86efac); box-shadow:0 0 0 3px rgba(22,163,74,.14); }
    .close-reason-btn.close-warning { color:#92400e; border-color:#f4c56a; background:linear-gradient(135deg,#fffbeb,#fef3c7); }
    .close-reason-btn.close-warning:hover, .close-reason-btn.close-warning.active { color:#78350f; border-color:#f59e0b; background:linear-gradient(135deg,#fde68a,#fbbf24); box-shadow:0 0 0 3px rgba(245,158,11,.16); }
    .close-reason-btn.close-neutral { color:#334155; border-color:#cbd5e1; background:linear-gradient(135deg,#f8fafc,#e2e8f0); }
    .close-reason-btn.close-neutral:hover, .close-reason-btn.close-neutral.active { color:#0f172a; border-color:#64748b; background:linear-gradient(135deg,#e2e8f0,#cbd5e1); box-shadow:0 0 0 3px rgba(100,116,139,.14); }
    .close-reason-btn.close-soft { color:#3f6212; border-color:#c9e59b; background:linear-gradient(135deg,#f7fee7,#ecfccb); }
    .close-reason-btn.close-soft:hover, .close-reason-btn.close-soft.active { color:#365314; border-color:#84cc16; background:linear-gradient(135deg,#ecfccb,#d9f99d); box-shadow:0 0 0 3px rgba(132,204,22,.14); }
    .choice-btn.danger { border-color:#f4b8b8; background:#fff5f5; color:#9f1239; }
    .choice-btn.danger.active { border-color:#dc2626; background:#fee2e2; box-shadow:0 0 0 3px rgba(220,38,38,.12); }
    .choice-btn.warm { border-color:#efd38a; background:#fff9e8; }
    .choice-btn.warm.active { border-color:#d69e2e; background:#fff1c2; box-shadow:0 0 0 3px rgba(214,158,46,.14); }
    .action-textarea { width:100%; min-height:78px; resize:vertical; border:1px solid var(--line); border-radius:8px; padding:10px 12px; font-family:inherit; font-size:14px; }
    .action-textarea:focus { outline:0; border-color:#8fb2ff; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
    .email-preview-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-bottom:14px; }
    .email-preview-meta div { border:1px solid #e4e8ef; border-radius:8px; padding:9px 11px; background:#f8fafc; min-width:0; }
    .email-preview-meta div.wide { grid-column:1 / -1; }
    .email-preview-meta span { display:block; color:#667085; font-size:11px; margin-bottom:3px; }
    .email-preview-meta strong { display:block; color:#111827; font-weight:600; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .email-preview-frame { border:1px solid #dbe3ef; border-radius:10px; overflow:auto; max-height:440px; background:#f6f8fb; padding:12px; }
    .email-preview-frame > div { margin:0 auto; }
    .email-preview-note { margin:0 0 12px; border:1px solid #bfdbfe; background:#eff6ff; color:#1e3a8a; border-radius:8px; padding:9px 11px; font-size:13px; }
    .email-preview-input { width:100%; border:1px solid var(--line); border-radius:8px; padding:10px 12px; font:inherit; }
    .email-preview-input:focus { outline:0; border-color:#8fb2ff; box-shadow:0 0 0 3px rgba(37,99,235,.12); }
    .btn.danger { background:#dc2626; color:#fff; border-color:#dc2626; }
    .btn.danger:hover { background:#b91c1c; }
    .debt-amount { color:#991b1b; font-weight:700; background:#fff1f2; }
    .client-table .soft-green { background:#e5f2df; }
    .client-table .soft-blue { background:#eaf3fb; }
    .client-table .month-cell { width:76px; text-align:right; white-space:nowrap; }
    .client-table .month-past, .client-table .month-prev, .client-table .month-current, .client-table .month-future, .client-table .month-next, .client-table .month-future-1, .client-table .month-future-2, .client-table .month-future-3 { background:#f6f7f9; color:#111827; font-weight:400; }
    .client-table .month-invoice { background:#fff3c4; color:#111827; font-weight:500; }
    .client-table .month-update { background:#eadcff !important; color:#4c1d95; box-shadow:inset 0 0 0 1px #c4b5fd; }
    .client-table .month-update.inflation-services { background:#f1e9ff !important; color:#5b21b6; }
    .client-table .month-update.inflation-total { background:#c4b5fd !important; color:#2e1065; }
    .client-table .month-requested { background:#ffefef !important; color:#991b1b; box-shadow:inset 0 0 0 1px #f4a6a6; }
    .client-table .month-resolved { background:#dcfce7 !important; color:#166534; box-shadow:inset 0 0 0 1px #86efac; }
    .month-value-wrap { display:flex; align-items:center; justify-content:flex-end; gap:5px; min-width:0; }
    .month-value-edit { min-width:24px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .month-requested .month-value-wrap { position:relative; display:block; min-height:30px; padding-top:13px; text-align:right; }
    .month-requested .month-value-edit { display:block; min-width:0; overflow:visible; text-overflow:clip; }
    .resolve-month-btn { position:absolute; top:-3px; right:0; height:15px; max-width:46px; padding:0 5px; border:1px solid #f4b8b8; border-radius:999px; background:#fff; color:#991b1b; font-size:9px; line-height:13px; cursor:pointer; flex:0 0 auto; }
    .resolve-month-btn:hover { background:#fee2e2; border-color:#ef4444; }
    .month-resolved .resolve-month-btn { display:none; }
    .client-table .alert-date { background:#eadcff; color:#4c1d95; font-weight:500; }
    .client-table .alert-date.inflation-services { background:#f1e9ff; color:#5b21b6; }
    .client-table .alert-date.inflation-total { background:#c4b5fd; color:#2e1065; }
    .update-date-cell { display:grid; grid-template-rows:auto auto; gap:5px; align-items:start; min-width:106px; }
    .update-date-main { display:grid; gap:1px; line-height:1.15; }
    .update-date-main .update-month { font-weight:600; }
    .update-date-action { display:flex; justify-content:flex-start; }
    .update-date-action .update-inline { margin:0; }
    .client-table td.missing-cell { background:#f01818 !important; color:#fff; box-shadow:inset 0 0 0 2px #b40000; font-weight:600; }
    .client-table td.missing-cell::after { content:"Completeaza"; color:#fff; opacity:.9; font-size:11px; }
    .client-table [contenteditable="true"] { outline:0; cursor:text; min-width:40px; }
    .client-table [contenteditable="true"]:focus { box-shadow:inset 0 0 0 2px var(--brand); background:#fff; color:#111827; }
    .client-table [contenteditable="true"].cell-saved { box-shadow:inset 0 0 0 2px #22c55e; background:#ecfdf3 !important; transition:background .2s ease, box-shadow .2s ease; }
    .client-table td.missing-cell:focus::after { content:""; }
    .stat-button { text-align:left; cursor:pointer; }
    .stat-button:hover { border-color:#8fb2ff; box-shadow:0 10px 24px rgba(37,99,235,.08); }
    .stat.quick-filter-active, .stat-button.quick-filter-active { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.14), 0 10px 24px rgba(37,99,235,.08); }
    .client-table tfoot tr.client-totals td { background:#c6ddf0 !important; font-weight:500; }
    .client-table tfoot tr.client-totals td.right { white-space:normal; overflow:visible; text-overflow:clip; line-height:1.18; font-size:11.5px; word-break:normal; }
    .client-table tfoot tr.client-totals:nth-child(even) td { background:#d8e9f6 !important; }
    .client-table tfoot tr.client-totals:nth-child(odd) td { background:#c3dbef !important; }
    .client-table tfoot tr.client-totals:first-child td { border-top:2px solid #91b9d8; }
    .client-table tfoot tr.client-totals:hover td { background:#b8d4ea !important; }
    .supplement-table .client-totals td { background:#bcd8ef !important; font-weight:500; }
    .closed-clients-table { min-width:1180px; }
    .closed-clients-table th, .closed-clients-table td { vertical-align:middle; }
    .closed-clients-table .closed-month { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; background:#f8fafc; }
    .closed-clients-table .closed-month.has-value { background:#eef8f0; color:#166534; font-weight:600; }
    .closed-clients-table .closed-actions { min-width:230px; }
    .closed-action-row { display:flex; gap:7px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
    .transfer-history-note { display:grid; gap:2px; max-width:280px; }
    .transfer-history-note strong { font-size:12px; color:#0f172a; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .transfer-history-note span { font-size:11px; color:#667085; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .supplement-panel { margin-top:14px; padding:18px; box-shadow:0 12px 28px rgba(16,24,40,.045); }
    .supplement-panel.supplement-entry { background:linear-gradient(180deg,#fffaf0,#fffdf7); border-color:#e4c987; border-left:4px solid #e0a93b; box-shadow:0 12px 28px rgba(151,111,36,.09); }
    .supplement-panel.anexa-panel { background:linear-gradient(180deg,#f5fbff,#fff); border-color:#b8d0ef; border-left:4px solid #5f95f2; box-shadow:0 12px 28px rgba(37,99,235,.07); }
    .anexa-summary .stat { background:linear-gradient(180deg,#ffffff,#f7fbff); border-color:#cfe0f7; }
    .anexa-summary .stat.sold-risk {
      background:linear-gradient(105deg,#fff8d9 0%,#ffe08a 58%,#f8c24d 100%);
      color:#172033;
      border-color:#e3ad32;
      box-shadow:0 10px 24px rgba(194,132,19,.14);
    }
    .anexa-summary .stat.sold-risk .ico { background:#16803c; color:#fff; }
    .anexa-summary .stat.sold-risk .label { color:#7a4b00; }
    .anexa-summary .stat.sold-risk .value { color:#15803d; font-weight:700; }
    .anexa-summary .stat.sold-risk .sub { color:#6b4d0f; }
    .anexa-panel .portfolio-tabs { margin-bottom:14px; }
    .anexa-panel .anexa-list table td:nth-child(3),
    .anexa-panel .anexa-list table td:nth-child(4),
    .anexa-panel .anexa-list table td:nth-child(5) { font-weight:600; }
    .supplement-panel.supplement-entry .section-title h2 { color:#2b2f38; }
    .supplement-panel .section-title { justify-content:space-between; align-items:flex-start; padding-bottom:12px; margin-bottom:12px; border-bottom:1px solid rgba(16,24,40,.07); }
    .supplement-panel.supplement-entry .list { display:none; }
    .supplement-panel.anexa-panel .list { background:rgba(255,255,255,.78); border:1px solid #d6e5f8; border-radius:7px; padding:4px 10px 10px; }
    .supp-period-badge { display:flex; flex-direction:column; gap:2px; min-width:230px; padding:10px 14px; border:1px solid #e3ad32; border-radius:10px; background:linear-gradient(105deg,#fff8d9 0%,#ffe08a 58%,#f8c24d 100%); color:#172033; box-shadow:0 10px 24px rgba(194,132,19,.14); }
    .supp-period-badge .mini { font-size:10px; font-weight:800; color:#7a4b00; text-transform:uppercase; letter-spacing:.04em; }
    .supp-period-badge strong { font-size:17px; line-height:1.1; }
    .supp-period-badge span:last-child { font-size:11px; color:#6b4d0f; }
    .supplement-month-box { margin:12px 0 12px; padding:12px; border:1px solid #ead9aa; border-radius:8px; background:#fffef9; }
    .supplement-month-box label { margin-bottom:8px; color:#7a4b00; }
    .supp-month-tabs { gap:7px; }
    .supp-month-tabs .month-tab { min-width:54px; }
    .anexa-header { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; }
    .anexa-title { display:flex; align-items:center; gap:10px; min-width:0; }
    .anexa-title h2 { white-space:nowrap; }
    .anexa-tools { display:flex; align-items:end; gap:10px; flex-wrap:wrap; justify-content:flex-end; padding:10px; border:1px solid #d6e5f8; border-radius:8px; background:rgba(255,255,255,.72); }
    .anexa-control { display:grid; gap:8px; min-width:min(620px, 100%); }
    .anexa-period-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
    .anexa-month-tabs { gap:6px; }
    .anexa-month-tabs .month-tab { min-width:52px; }
    .anexa-tools label { margin:0; font-size:12px; color:#40526b; font-weight:600; }
    .anexa-tools select { min-width:150px; height:36px; background:#fff; }
    .anexa-tools .btn { height:36px; }
    .anexa-list { margin-top:12px; }
    .anexa-list table { min-width:760px; }
    .supplement-form { display:grid; grid-template-columns:1.25fr 1.35fr 1.1fr .65fr auto; gap:10px; align-items:end; margin:12px 0; }
    .percent-choice { display:grid; grid-template-columns:1fr 1fr; gap:6px; }
    .percent-choice label { margin:0; border:1px solid var(--line); border-radius:7px; padding:8px 9px; display:flex; align-items:center; gap:7px; font-weight:500; color:#344054; background:#fff; white-space:nowrap; cursor:pointer; }
    .percent-choice .pct-colab { background:#eef8ee; border-color:#b9d8b9; color:#225d2d; }
    .percent-choice .pct-100 { background:#fff0eb; border-color:#efc5b8; color:#8a3b2b; }
    .percent-choice .pct-100 span { display:inline-grid; line-height:1.05; }
    .percent-choice .pct-100 span::first-line { font-size:11px; }
    .percent-choice label:has(input:checked) { box-shadow:0 0 0 2px rgba(31,97,49,.10); }
    .percent-choice input { width:auto; margin:0; }
    .invoice-notes-input { margin-top:8px; width:100%; min-height:74px; resize:vertical; border:1px solid #d7deea; border-radius:9px; padding:10px 12px; font:inherit; background:#fff; color:#1d2939; }
    .invoice-notes-input:focus { outline:none; border-color:#8fb2ff; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .supplement-table { min-width:760px; }
    .nomenclator-form { display:grid; grid-template-columns:minmax(280px, 1fr) 220px auto; gap:10px; align-items:end; margin-bottom:14px; }
    .offer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:10px; margin:12px 0 18px; }
    .offer-card { border:1px solid #dbe5f2; border-radius:10px; padding:12px; background:linear-gradient(135deg,#fff,#f8fbff); box-shadow:0 8px 18px rgba(16,24,40,.035); display:grid; gap:8px; }
    .offer-card h3 { margin:0; font-size:14px; line-height:1.2; color:#101828; }
    .offer-card .offer-desc { min-height:30px; color:#667085; font-size:12px; line-height:1.3; }
    .offer-card .offer-price { font-size:18px; font-weight:800; color:#0f2f68; line-height:1.2; }
    .offer-card input { height:36px; font-weight:650; background:#fff; }
    .offer-card textarea { min-height:54px; resize:vertical; background:#fff; }
    .offer-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; color:#667085; font-size:12px; }
    .offer-admin-tools { display:flex; gap:8px; align-items:center; justify-content:space-between; }
    .offer-section { margin-bottom:18px; }
    .offer-section-title { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin-bottom:8px; }
    .offer-section-title h2 { margin:0; font-size:18px; }
    .offer-section-title p { margin:3px 0 0; color:#667085; font-size:12px; }
    .readonly-note { display:inline-flex; align-items:center; border:1px solid #dbe7f8; border-radius:999px; padding:6px 10px; background:#f7fbff; color:#315ee8; font-size:12px; font-weight:650; }
    .nomenclator-table { min-width:820px; }
    .nomenclator-table td[contenteditable="true"] { background:#fffdf6; border-radius:5px; outline:0; }
    .nomenclator-table td[contenteditable="true"]:focus { box-shadow:inset 0 0 0 2px var(--brand); background:#fff; }
    .nomenclator-table .price { width:220px; }
    .nomenclator-table .active-cell { width:80px; text-align:center; }
    .nomenclator-table input[type="checkbox"] { width:auto; }
    .recurring-summary { display:grid; grid-template-columns:repeat(4,minmax(180px,1fr)); gap:12px; margin-bottom:14px; }
    .recurring-upcoming { display:grid; grid-template-columns:repeat(2,minmax(280px,1fr)); gap:12px; margin:0 0 14px; }
    .recurring-upcoming-card { display:flex; align-items:center; gap:13px; min-height:88px; padding:14px 16px; border:1px solid #a8c4ff; border-radius:12px; background:linear-gradient(135deg,#f7faff,#edf4ff); box-shadow:0 8px 22px rgba(49,94,234,.07); color:#172033; }
    .recurring-upcoming-card.secondary { border-color:#d7c78f; background:linear-gradient(135deg,#fffdf6,#fff8df); box-shadow:0 8px 22px rgba(180,137,20,.07); }
    .recurring-upcoming-icon { flex:0 0 36px; width:36px; height:36px; display:grid; place-items:center; border-radius:10px; background:#315eea; color:#fff; font-size:14px; font-weight:850; }
    .recurring-upcoming-card.secondary .recurring-upcoming-icon { background:#b78613; }
    .recurring-upcoming-content { min-width:0; flex:1; }
    .recurring-upcoming-label { margin-bottom:3px; color:#5f6f85; font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.04em; }
    .recurring-upcoming-main { display:flex; align-items:baseline; justify-content:space-between; gap:12px; }
    .recurring-upcoming-main strong { color:#10244f; font-size:20px; line-height:1.2; }
    .recurring-upcoming-main span { color:#1f3f80; font-size:15px; font-weight:800; white-space:nowrap; }
    .recurring-upcoming-card.secondary .recurring-upcoming-main strong { color:#6b4c08; }
    .recurring-upcoming-card.secondary .recurring-upcoming-main span { color:#8a630c; }
    .recurring-upcoming-value { margin-top:5px; color:#667085; font-size:11px; font-weight:650; }
    .recurring-detail-row td { background:#f8fbff; padding:0 !important; }
    .recurring-detail { padding:16px; display:grid; gap:14px; border-top:2px solid #dbeafe; }
    .recurring-detail-head,.recurring-detail-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
    .recurring-lines { display:grid; gap:8px; }
    .recurring-line { display:grid; grid-template-columns:minmax(280px,1fr) 100px 110px 140px auto; gap:8px; align-items:center; }
    .recurring-detail-actions label { display:flex; align-items:center; gap:8px; font-size:12px; font-weight:700; color:#40526b; }
    .recurring-detail-actions input[type="date"] { width:150px; }
    .recurring-filter-bar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
    .recurring-filter-buttons { display:flex; gap:8px; flex-wrap:wrap; }
    .recurring-search { width:min(460px,100%); }
    .recurring-status { display:inline-flex; align-items:center; justify-content:center; min-width:64px; padding:5px 9px; border-radius:999px; font-size:12px; font-weight:800; }
    .recurring-status.active { color:#166534; background:#dcfce7; border:1px solid #86efac; }
    .recurring-status.stopped { color:#991b1b; background:#fee2e2; border:1px solid #fca5a5; }
    @media (max-width:900px) { .recurring-summary { grid-template-columns:1fr 1fr; } .recurring-upcoming { grid-template-columns:1fr; } .recurring-line { grid-template-columns:1fr 1fr; } .recurring-line input:first-child { grid-column:1/-1; } }
    .offer-workspace { display:grid; gap:14px; }
    .offer-hero { border:1px solid #d8e5f6; border-radius:18px; padding:18px; background:
      radial-gradient(circle at 8% 0%, rgba(37,99,235,.12), transparent 28%),
      radial-gradient(circle at 94% 6%, rgba(245,158,11,.14), transparent 26%),
      linear-gradient(135deg,#ffffff,#f8fbff 58%,#fff8eb); box-shadow:0 18px 44px rgba(15,23,42,.06); }
    .offer-hero h2 { margin:0; font-size:24px; letter-spacing:-.35px; }
    .offer-hero p { margin:6px 0 0; color:#667085; max-width:940px; }
    .offer-stage-strip { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
    .offer-stage-pill { border:1px solid #dbe6f4; border-radius:999px; background:#fff; color:#344054; padding:7px 11px; font-size:12px; font-weight:800; }
    .offer-stage-pill.active { border-color:#2563eb; background:#eaf2ff; color:#1747b8; }
    .offer-package-panel { overflow:visible; }
    .offer-package-tabs { display:flex; flex-wrap:wrap; gap:8px; }
    .offer-package-tab { border:1px solid #dbe6f4; border-radius:999px; background:#fff; color:#344054; padding:8px 12px; font-size:12px; font-weight:850; cursor:pointer; }
    .offer-package-tab.active { border-color:#2563eb; color:#1747b8; background:#eaf2ff; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .offer-package-grid { display:grid; grid-template-columns:repeat(3,minmax(220px,1fr)); gap:12px; }
    .offer-package-card { --package-accent:#2563eb; position:relative; border:1px solid #dbe5f2; border-top:5px solid var(--package-accent); border-radius:16px; padding:13px; background:linear-gradient(180deg,#fff,#fbfdff); box-shadow:0 12px 28px rgba(16,24,40,.05); display:grid; gap:10px; overflow:hidden; }
    .offer-package-card.selected { border-color:var(--package-accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--package-accent) 18%, transparent), 0 16px 34px rgba(16,24,40,.10); }
    .offer-package-card.tone-quiet { --package-accent:#94a3b8; }
    .offer-package-card.tone-green { --package-accent:#10b981; }
    .offer-package-card.tone-blue { --package-accent:#3b82f6; }
    .offer-package-card.tone-amber { --package-accent:#f59e0b; }
    .offer-package-card.tone-orange { --package-accent:#f97316; }
    .offer-package-card.tone-purple { --package-accent:#7c3aed; }
    .offer-package-ribbon { position:absolute; top:12px; right:-34px; transform:rotate(35deg); background:#f59e0b; color:#fff; font-size:10px; font-weight:900; letter-spacing:.04em; padding:5px 36px; box-shadow:0 8px 18px rgba(245,158,11,.22); }
    .offer-package-card-head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:start; }
    .offer-package-card h4 { margin:4px 0 4px; font-size:16px; line-height:1.15; color:#101828; }
    .offer-package-card p { margin:0; color:#667085; font-size:12px; line-height:1.35; }
    .offer-package-range { display:inline-flex; width:max-content; border-radius:999px; background:color-mix(in srgb, var(--package-accent) 13%, #fff); color:color-mix(in srgb, var(--package-accent) 80%, #172033); padding:4px 8px; font-size:10.5px; font-weight:900; }
    .offer-package-price { min-width:88px; text-align:right; color:#0f172a; }
    .offer-package-price strong { display:block; font-size:20px; line-height:1.05; color:var(--package-accent); }
    .offer-package-price span { display:block; margin-top:3px; color:#667085; font-size:11px; font-weight:700; }
    .offer-package-card ul { margin:0; padding:0; list-style:none; display:grid; gap:6px; color:#475467; font-size:12px; }
    .offer-package-card li { position:relative; padding-left:16px; }
    .offer-package-card li::before { content:""; position:absolute; left:1px; top:.55em; width:7px; height:7px; border-radius:999px; background:var(--package-accent); box-shadow:0 0 0 3px color-mix(in srgb, var(--package-accent) 14%, transparent); }
    .offer-package-note { border:1px dashed #cbd8ef; border-radius:12px; padding:10px 12px; background:#f8fbff; color:#52637a; font-size:12px; line-height:1.45; }
    .offer-main-grid { display:grid; grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr) minmax(340px,.9fr); gap:14px; align-items:start; }
    .offer-panel { border:1px solid #dbe5f2; border-radius:16px; background:#fff; box-shadow:0 14px 32px rgba(16,24,40,.045); overflow:hidden; }
    .offer-panel-head { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; padding:14px 16px; border-bottom:1px solid #edf2f7; background:#fbfdff; }
    .offer-panel-head h3 { margin:0; font-size:17px; }
    .offer-panel-head p { margin:4px 0 0; color:#667085; font-size:12px; line-height:1.35; }
    .offer-panel-body { padding:14px 16px; display:grid; gap:12px; }
    .offer-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .offer-form-grid .wide { grid-column:1 / -1; }
    .offer-form-grid label, .offer-field label { display:block; margin-bottom:5px; color:#344054; font-size:12px; font-weight:800; }
    .offer-form-grid input, .offer-form-grid select, .offer-form-grid textarea, .offer-field input, .offer-field select, .offer-field textarea { width:100%; border:1px solid #d8e0eb; border-radius:10px; padding:10px 11px; font:inherit; background:#fff; }
    .offer-form-grid textarea { min-height:84px; resize:vertical; }
    .offer-input-action { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; }
    .offer-input-action .btn { min-height:40px; white-space:nowrap; }
    .offer-anaf-status { grid-column:1 / -1; border:1px solid #dbe7f8; border-radius:10px; padding:8px 10px; background:#f8fbff; color:#52637a; font-size:12px; line-height:1.4; }
    .offer-anaf-status.ok { border-color:#b8e2c6; background:#effaf3; color:#17643a; }
    .offer-anaf-status.warn { border-color:#f6d29a; background:#fff8e8; color:#92400e; }
    .offer-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .offer-check { display:flex; align-items:center; gap:8px; border:1px solid #e4eaf3; border-radius:10px; padding:9px 10px; background:#fbfdff; color:#344054; font-size:12px; font-weight:700; }
    .offer-check input { width:auto; }
    .offer-price-box { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
    .offer-price-box .offer-field { border:1px solid #e6edf7; border-radius:12px; padding:10px; background:#f8fbff; }
    .offer-price-box input { font-size:18px; font-weight:750; color:#0f172a; }
    .offer-extra-row { display:grid; grid-template-columns:minmax(0,1fr) 110px auto; gap:8px; align-items:end; }
    .offer-extra-list { display:grid; gap:7px; }
    .offer-extra-item { display:flex; justify-content:space-between; align-items:center; gap:8px; border:1px solid #e5eaf3; border-radius:999px; padding:7px 9px 7px 12px; background:#fff; font-size:12px; }
    .offer-extra-item button { border:0; background:#fee2e2; color:#991b1b; border-radius:999px; padding:3px 7px; cursor:pointer; font-weight:800; }
    .offer-preview { border:1px solid #dbe5f2; border-radius:14px; background:linear-gradient(180deg,#fff,#fbfdff); padding:14px; min-height:320px; }
    .offer-preview h4 { margin:0 0 8px; font-size:18px; }
    .offer-preview .price { color:#1747b8; font-size:24px; font-weight:850; margin:8px 0; }
    .offer-preview dl { display:grid; grid-template-columns:120px 1fr; gap:6px 10px; margin:12px 0; font-size:12px; }
    .offer-preview dt { color:#667085; }
    .offer-preview dd { margin:0; font-weight:700; color:#1f2937; }
    .offer-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
    .offer-actions .wide { grid-column:1 / -1; }
    .offer-pipeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
    .offer-pipe-col { border:1px solid #dbe5f2; border-radius:14px; background:#fff; min-height:150px; overflow:hidden; }
    .offer-pipe-head { padding:10px 12px; background:#f8fafc; border-bottom:1px solid #edf2f7; display:flex; justify-content:space-between; gap:8px; font-weight:850; }
    .offer-pipe-body { display:grid; gap:8px; padding:10px; }
    .offer-pipe-card { border:1px solid #e5eaf3; border-radius:12px; padding:10px; background:#fff; box-shadow:0 8px 18px rgba(16,24,40,.035); display:grid; gap:7px; }
    .offer-pipe-card strong { font-size:13px; }
    .offer-pipe-card small { color:#667085; line-height:1.35; }
    .offer-pipe-actions { display:flex; flex-wrap:wrap; gap:6px; }
    .offer-pipe-actions button { border:1px solid #d7e2f2; background:#fff; border-radius:999px; padding:4px 7px; font-size:10.5px; font-weight:800; cursor:pointer; }
    .offer-pipe-empty { color:#98a2b3; font-size:12px; padding:10px; }
    @media(max-width:1300px){ .offer-main-grid { grid-template-columns:1fr; } .offer-pipeline { grid-template-columns:repeat(2,minmax(0,1fr)); } .offer-package-grid { grid-template-columns:repeat(2,minmax(220px,1fr)); } }
    @media(max-width:900px){ .offer-package-grid { grid-template-columns:1fr; } }
    @media(max-width:760px){ .offer-form-grid, .offer-price-box, .offer-check-grid, .offer-pipeline, .offer-actions { grid-template-columns:1fr; } .offer-extra-row { grid-template-columns:1fr; } .offer-actions .wide { grid-column:auto; } }
    .colab-admin-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; max-width:1500px; margin:0 auto 12px; }
    .colab-admin-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; max-width:1500px; margin:0 auto; }
    .colab-admin-card .body { padding:14px 16px; }
    .agent-toolbar { display:flex; align-items:end; justify-content:space-between; gap:12px; margin-bottom:14px; flex-wrap:wrap; }
    .agent-run-box { display:flex; align-items:end; gap:10px; flex-wrap:wrap; }
    .agent-run-box .field { margin:0; width:150px; }
    .agent-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:12px; margin-bottom:14px; }
    .agent-tabs { display:flex; gap:8px; flex-wrap:wrap; margin:0 0 14px; }
    .agent-tab { border:1px solid #d7e2f2; border-radius:999px; background:#fff; color:#344054; padding:9px 13px; font-weight:750; cursor:pointer; }
    .agent-tab.active { border-color:#2563eb; background:#eaf2ff; color:#1747b8; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .agent-card { border:1px solid #dbe6f4; border-radius:10px; padding:14px; background:linear-gradient(135deg,#fff,#f8fbff); box-shadow:0 10px 24px rgba(16,24,40,.045); }
    .agent-card strong { display:block; font-size:15px; margin-bottom:4px; }
    .agent-card span { display:inline-flex; border-radius:999px; background:#eef4ff; color:#1747b8; padding:3px 8px; font-size:11px; font-weight:700; margin-bottom:8px; }
    .agent-card p { margin:0; color:#667085; font-size:12.5px; line-height:1.45; }
    .agent-visual-grid { display:grid; grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr); gap:14px; margin-bottom:14px; }
    .agent-radar { min-height:220px; border:1px solid #dbe6f4; border-radius:12px; background:radial-gradient(circle at center,#eaf2ff 0 18%,transparent 19%), radial-gradient(circle at center,transparent 0 42%,rgba(37,99,235,.08) 43% 44%,transparent 45%), linear-gradient(135deg,#fff,#f8fbff); display:grid; place-items:center; position:relative; overflow:hidden; }
    .agent-radar::before { content:""; position:absolute; width:72%; aspect-ratio:1; border-radius:50%; border:1px dashed rgba(37,99,235,.28); animation:agentRadar 4s linear infinite; }
    .agent-radar::after { content:""; position:absolute; width:58%; aspect-ratio:1; border-radius:50%; background:conic-gradient(from 270deg, rgba(37,99,235,.18), transparent 38%); animation:agentRadar 3s linear infinite; }
    .agent-radar strong { position:relative; z-index:1; display:block; font-size:34px; }
    .agent-radar span { position:relative; z-index:1; color:#667085; font-weight:700; }
    @keyframes agentRadar { to { transform:rotate(360deg); } }
    .agent-schedule { border:1px solid #dbe6f4; border-radius:12px; padding:14px; background:#fff; }
    .agent-schedule-head { display:flex; justify-content:space-between; gap:12px; margin-bottom:10px; }
    .agent-slots { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:8px; }
    .agent-slot { border:1px solid #e2e8f0; border-radius:9px; padding:10px 8px; background:linear-gradient(180deg,#fff,#f8fbff); min-height:86px; }
    .agent-slot strong { display:block; color:#172033; font-size:13px; }
    .agent-slot span { display:block; color:#667085; font-size:11.5px; margin-top:5px; }
    .agent-slot .bar { height:7px; border-radius:99px; background:#edf2f7; overflow:hidden; margin-top:9px; }
    .agent-slot .bar i { display:block; height:100%; border-radius:99px; background:linear-gradient(90deg,#7aa7ff,#78c6a7); }
    .agent-findings-table td { vertical-align:top; }
    .agent-diff-list { display:grid; gap:6px; margin-top:7px; }
    .agent-diff-row { display:grid; grid-template-columns:110px minmax(170px,1fr) minmax(210px,1.2fr); gap:8px; align-items:stretch; border:1px solid #e3e9f2; border-radius:8px; background:#fbfdff; padding:7px; }
    .agent-diff-field { font-weight:800; color:#0f172a; }
    .agent-diff-row span { display:block; font-size:10px; color:#64748b; text-transform:uppercase; letter-spacing:.04em; margin-bottom:2px; }
    .agent-diff-row strong { display:block; font-size:12px; color:#1f2937; line-height:1.3; white-space:normal; }
    .agent-diff-row > div:nth-child(3) { background:#ecfdf5; border-radius:6px; padding:5px 6px; }
    .agent-diff-row > div:nth-child(2) { background:#fff7ed; border-radius:6px; padding:5px 6px; }
    .agent-severity { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:11px; font-weight:800; }
    .agent-severity.critic { background:#fee2e2; color:#991b1b; }
    .agent-severity.warning { background:#fff2c7; color:#92400e; }
    .agent-severity.info { background:#eaf2ff; color:#1747b8; }
    .agent-status { display:inline-flex; border-radius:999px; padding:4px 9px; font-size:11px; font-weight:800; background:#f1f5f9; color:#475467; }
    .agent-status.noua { background:#eaf2ff; color:#1747b8; }
    .agent-status.aplicata { background:#dcfce7; color:#166534; }
    .agent-status.ignorata { background:#f1f5f9; color:#475467; }
    .agent-actions { display:flex; gap:6px; flex-wrap:wrap; }
    .colab-stat-btn { text-align:left; border:1px solid #d9e2ef; border-radius:9px; padding:12px; background:#fff; min-height:86px; cursor:pointer; box-shadow:0 12px 24px rgba(16,24,40,.035); transition:.14s ease; }
    .colab-stat-btn:hover { transform:translateY(-1px); box-shadow:0 12px 26px rgba(16,24,40,.09); }
    .colab-stat-btn.active { border-color:#315ee8; box-shadow:0 0 0 3px rgba(49,94,232,.12), 0 12px 26px rgba(16,24,40,.09); }
    .colab-stat-btn span { display:block; color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.35px; font-weight:700; }
    .colab-stat-btn strong { display:block; margin-top:8px; font-size:22px; line-height:1; color:#101828; }
    .colab-stat-btn small { display:block; margin-top:7px; color:#667085; line-height:1.25; }
    .colab-kpi.c0 { background:linear-gradient(135deg,#eef6ff,#fff); }
    .colab-kpi.c1 { background:linear-gradient(135deg,#effaf4,#fff); }
    .colab-kpi.c2 { background:linear-gradient(135deg,#fff8df,#fff); }
    .colab-kpi.c3 { background:linear-gradient(135deg,#f3f0ff,#fff); }
    .colab-filter-panel { max-width:1500px; margin:0 auto 14px; background:linear-gradient(135deg,#ffffff,#f7fbff 58%,#fffaf0); border-color:#d8e5f6; }
    .colab-filter-head { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; padding:14px 16px 6px; }
    .colab-quick-filters { display:grid; gap:10px; padding:8px 14px 14px; }
    .colab-chip-group { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
    .colab-filter-chip { position:relative; border:1px solid color-mix(in srgb, var(--colab-color,#7ea6f8) 34%, #d6e0ed); background:linear-gradient(135deg, color-mix(in srgb, var(--colab-color,#7ea6f8) 12%, #fff), #fff 78%); border-radius:10px; min-height:42px; padding:13px 11px 8px; min-width:72px; text-align:left; cursor:pointer; color:#0f172a; transition:.14s ease; box-shadow:0 8px 18px rgba(16,24,40,.035); }
    .colab-filter-chip::before { content:""; position:absolute; left:9px; right:9px; top:6px; height:4px; border-radius:999px; background:var(--colab-color,#7ea6f8); }
    .colab-filter-chip span { display:block; font-weight:750; font-size:12.5px; }
    #criticalNotificationColabTabs { display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:10px; align-items:stretch; }
    #criticalNotificationColabTabs .portfolio-tab { min-height:78px; width:100%; }
    .colab-filter-chip small { display:block; color:#667085; font-size:11px; margin-top:3px; }
    .colab-filter-chip:hover { transform:translateY(-1px); box-shadow:0 10px 22px rgba(16,24,40,.10); }
    .colab-filter-chip.active { background:#101828; color:#fff; border-color:#101828; box-shadow:0 10px 24px rgba(16,24,40,.16); }
    .colab-filter-chip.active small { color:rgba(255,255,255,.72); }
    .colab-chip-names .colab-filter-chip { min-width:118px; }
    .access-log-card { grid-column:1 / -1; }
    .access-log-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
    .access-log-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
    .access-stat { border:1px solid var(--line); border-radius:8px; padding:12px; display:flex; gap:10px; align-items:center; background:#fff; }
    .access-stat .ico { width:34px; height:34px; border-radius:8px; display:grid; place-items:center; background:#eef4ff; color:#315ee8; font-weight:700; }
    .access-stat .label { font-size:12px; color:#475467; }
    .access-stat .value { font-size:20px; line-height:1.1; font-weight:700; color:#101828; }
    .access-stat .sub { font-size:11.5px; color:#667085; margin-top:2px; }
    .access-stat.active { background:#eef8f0; border-color:#b7dec1; }
    .access-stat.warn { background:#fff3f0; border-color:#f2b8ad; }
    .access-stat.ok { background:#eef8ff; border-color:#c5daf8; }
    .access-stat.info { background:#f5f0ff; border-color:#ded2ff; }
    .access-log-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:14px; align-items:start; }
    .access-log-section { border:1px solid var(--line); border-radius:8px; background:#fff; overflow:hidden; }
    .access-log-section.wide { grid-column:1 / -1; }
    .access-log-section h3 { margin:0; padding:12px 14px; font-size:15px; border-bottom:1px solid var(--line); background:#f8fafc; }
    .access-log-section .list { padding:0 12px 12px; }
    .access-log-table { min-width:760px; }
    .access-log-table th, .access-log-table td { vertical-align:middle; }
    .access-badge { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:12px; white-space:nowrap; background:#eef4ff; color:#1d4ed8; }
    .access-badge.active { background:#e8f7ec; color:#166534; }
    .access-badge.closed { background:#f2f4f7; color:#344054; }
    .access-badge.idle { background:#fff3c4; color:#7a4b00; }
    .access-badge.danger { background:#ffe8e8; color:#9f1239; }
    .tiny { font-size:11.5px; line-height:1.3; }
    .colab-form { display:grid; grid-template-columns:minmax(180px,1fr) minmax(210px,1fr) minmax(150px,.75fr) minmax(260px,1.35fr) 100px auto; gap:10px; align-items:center; }
    .colab-form input { height:40px; }
    .colab-table { min-width:1240px; table-layout:fixed; }
    .colab-table th:nth-child(1), .colab-table td:nth-child(1) { width:17%; }
    .colab-table th:nth-child(2), .colab-table td:nth-child(2) { width:19%; }
    .colab-table th:nth-child(3), .colab-table td:nth-child(3) { width:13%; }
    .colab-table th:nth-child(4), .colab-table td:nth-child(4) { width:29%; }
    .colab-table th:nth-child(5), .colab-table td:nth-child(5) { width:9%; }
    .colab-table th:nth-child(6), .colab-table td:nth-child(6) { width:13%; }
    .colab-table td { vertical-align:middle; }
    .colab-table .inline-input { width:100%; min-width:0; height:36px; }
    .colab-table .manual-required.filled { border-color:#86d39a; background:#eefaf1; }
    .row-actions { display:flex; gap:7px; align-items:center; flex-wrap:wrap; }
    .user-form-grid { display:grid; grid-template-columns:minmax(150px,1fr) minmax(220px,1.15fr) minmax(300px,1.45fr) minmax(150px,.8fr) minmax(200px,1fr) auto; gap:10px; align-items:end; margin-bottom:14px; }
    .user-form-grid .field { margin:0; }
    .user-form-grid .btn { height:38px; white-space:nowrap; }
    .password-line { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:7px; align-items:center; }
    .password-line .btn { padding-left:10px; padding-right:10px; }
    .field-note { color:#667085; font-size:11.5px; margin-top:5px; line-height:1.35; }
    .field-note.ok { color:#067647; }
    .task-list { min-width:980px; }
    .task-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin:24px 0 12px; }
    .task-section-head h2 { margin:3px 0 2px; font-size:20px; }
    .task-partner-cards { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
    .task-partner-card { min-width:42px; height:42px; padding:0 10px; border:1px solid color-mix(in srgb,var(--partner-color) 38%,#cbd5e1); border-radius:10px; background:color-mix(in srgb,var(--partner-color) 12%,white); color:#243047; font-size:11px; font-weight:800; line-height:1.1; box-shadow:none; }
    .task-partner-card.is-active { background:var(--partner-color); color:white; border-color:var(--partner-color); box-shadow:0 6px 15px color-mix(in srgb,var(--partner-color) 28%,transparent); }
    .fee-notice-heading { margin-top:34px; }
    #feeNoticeReset { background:var(--brand); border:1px solid var(--brand-d); color:#fff; font-weight:700; box-shadow:0 6px 16px rgba(49,94,234,.18); transition:background .16s ease,transform .16s ease,box-shadow .16s ease; }
    #feeNoticeReset:hover { background:var(--brand-d); color:#fff; transform:translateY(-1px); box-shadow:0 8px 18px rgba(49,94,234,.24); }
    .fee-next-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
    .fee-next-button::after { content:"\2192"; font-size:18px; line-height:1; transition:transform .16s ease; }
    .fee-next-button:hover::after { transform:translateX(3px); }
    .fee-notice-shell { border:1px solid #dbe4ef; border-radius:18px; background:linear-gradient(145deg,#fbfdff 0%,#f5f8fc 100%); overflow:hidden; box-shadow:0 12px 32px rgba(33,49,77,.08); }
    .fee-notice-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid #dbe4ef; background:white; }
    .fee-notice-step { display:flex; align-items:center; justify-content:center; gap:8px; padding:14px 10px; color:#8590a4; font-size:12px; }
    .fee-notice-step span { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#e9eef5; font-weight:800; }
    .fee-notice-step.is-active,.fee-notice-step.is-complete { color:#17365f; }
    .fee-notice-step.is-active { background:#edf7f5; }
    .fee-notice-step.is-active span,.fee-notice-step.is-complete span { background:#0f766e; color:white; }
    .fee-notice-stage { padding:22px; }
    .fee-notice-stage-head,.fee-notice-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; }
    .fee-notice-stage-head h3,.fee-notice-fees h3,.fee-notice-confirm h3 { margin:0 0 4px; }
    .fee-notice-search { margin:18px 0 12px; }
    .fee-notice-search label,.fee-form-field label { display:block; margin-bottom:6px; color:#566277; font-size:12px; font-weight:700; }
    .fee-notice-search input,.fee-form-field input,.fee-form-field select { width:100%; }
    .fee-notice-client-list { display:grid; gap:8px; max-height:420px; overflow:auto; padding-right:3px; }
    .fee-notice-client { display:grid; grid-template-columns:minmax(220px,1.5fr) minmax(110px,.65fr) minmax(120px,.8fr) minmax(180px,1fr) minmax(135px,.75fr) auto; align-items:center; gap:12px; padding:12px 14px; border:1px solid #dce4ed; border-radius:12px; background:white; }
    .fee-notice-client:hover { border-color:#9fc6c2; box-shadow:0 5px 16px rgba(15,118,110,.09); }
    .fee-notice-client strong,.fee-notice-client span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .fee-notice-client .fee-client-fee { color:#0f766e; text-align:right; }
    .fee-notice-empty { padding:28px; border:1px dashed #cbd5e1; border-radius:12px; text-align:center; color:#718096; background:white; }
    .fee-notice-selected-client { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:12px; padding:14px 16px; margin-bottom:20px; border:1px solid #b9ddd8; border-radius:14px; background:linear-gradient(135deg,#eaf8f5,#f8fffd); }
    .fee-notice-selected-client span,.fee-notice-preview-meta span { display:block; margin-bottom:3px; color:#68758b; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
    .fee-notice-data-group + .fee-notice-data-group { margin-top:20px; padding-top:18px; border-top:1px dashed #cbd5e1; }
    .fee-notice-data-title { margin-bottom:14px; }
    .fee-notice-data-title h3 { margin:3px 0 0; color:#172033; font-size:16px; }
    .fee-notice-form-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
    .fee-span-2 { grid-column:span 2; }
    .fee-notice-fees { margin-top:24px; padding:18px; border-radius:14px; background:#fff8e8; border:1px solid #f0d9a8; }
    .fee-notice-fees>div:first-child { margin-bottom:14px; }
    .fee-notice-total { display:flex; flex-direction:column; justify-content:center; padding:9px 14px; border-radius:10px; background:#17365f; color:white; }
    .fee-notice-total span { font-size:11px; opacity:.8; }
    .fee-notice-total strong { margin-top:2px; font-size:20px; }
    .fee-notice-actions { margin-top:22px; padding-top:18px; border-top:1px solid #dbe4ef; }
    .fee-notice-preview-meta { display:grid; grid-template-columns:1fr 1fr 2fr; gap:12px; margin-bottom:16px; }
    .fee-notice-preview-meta>div { padding:11px 13px; border-radius:10px; background:#eef3f8; }
    .fee-notice-preview-content { max-height:620px; overflow:auto; padding:24px; border:1px solid #dbe4ef; border-radius:12px; background:white; }
    .fee-notice-confirm { max-width:720px; margin:8px auto; padding:24px; border:1px solid #b9ddd8; border-radius:14px; background:white; text-align:center; }
    .fee-notice-check { display:flex; align-items:center; justify-content:center; gap:8px; margin-top:18px; font-weight:700; }
    .fee-notice-check input { width:18px; height:18px; }
    @media(max-width:1100px) { .fee-notice-client { grid-template-columns:minmax(180px,1.4fr) 100px 110px minmax(150px,1fr) 120px auto; } .fee-notice-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .fee-notice-indicator-grid .fee-span-2 { grid-column:span 1; } }
    @media(max-width:760px) { .task-section-head,.fee-notice-stage-head,.fee-notice-actions { align-items:stretch; flex-direction:column; } .task-partner-cards { justify-content:flex-start; } .fee-notice-step strong { display:none; } .fee-notice-client { grid-template-columns:1fr auto; } .fee-notice-client>span { display:none; } .fee-notice-selected-client,.fee-notice-preview-meta { grid-template-columns:1fr 1fr; } .fee-notice-form-grid { grid-template-columns:1fr; } .fee-span-2 { grid-column:span 1; } }
    .task-badge { display:inline-flex; border-radius:999px; padding:3px 9px; font-size:12px; background:#eef4ff; color:#1d4ed8; }
    .task-badge.due { background:#fff3c4; color:#7a4b00; }
    .task-badge.overdue { background:#ffd6d6; color:#7a271a; }
    .inflation-chip { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:12px; white-space:nowrap; border:1px solid transparent; }
    .inflation-chip.inflation-services { background:#f1e9ff; color:#5b21b6; border-color:#d8c7ff; }
    .inflation-chip.inflation-total { background:#c4b5fd; color:#2e1065; border-color:#a78bfa; }
    .contract-status { display:inline-flex; align-items:center; border-radius:999px; padding:3px 8px; font-size:12px; font-weight:500; white-space:nowrap; }
    .contract-status.active { background:#e8f7ec; color:#166534; }
    .contract-status.canceled { background:#ffe8e8; color:#9f1239; }
    .source-badge { display:inline-flex; align-items:center; width:max-content; margin-top:4px; border:1px solid #f2b8b8; border-radius:999px; padding:2px 7px; background:#fff1f1; color:#991b1b; font-size:11px; font-weight:700; white-space:nowrap; }
    .contract-list-tools { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:10px 12px; border-bottom:1px solid #e7ebf2; background:#fbfcff; }
    .contract-filter-group { display:flex; gap:7px; flex-wrap:wrap; align-items:center; }
    .contract-filter-btn { border:1px solid #d6deeb; background:#fff; color:#344054; border-radius:9px; padding:7px 11px; font-size:12px; font-weight:700; cursor:pointer; }
    .contract-filter-btn:hover { background:#f4f7fb; }
    .contract-filter-btn.active { border-color:#315eea; color:#1d4ed8; background:#eef4ff; box-shadow:0 0 0 2px rgba(49,94,234,.09); }
    .contract-filter-btn.ctb.active { border-color:#4d7cff; background:#eef4ff; color:#1747b8; }
    .contract-filter-btn.stup.active { border-color:#ef8f8f; background:#fff1f1; color:#b42318; }
    .contract-filter-btn.closed.active { border-color:#f0c46f; background:#fff8dd; color:#92400e; }
    .contract-list-more { display:flex; justify-content:center; padding:12px; border-top:1px solid #e7ebf2; background:#fbfcff; }
    .contract-list-more.hidden { display:none; }
    .contract-options { display:grid; grid-template-columns:repeat(2,78px); gap:5px; align-items:center; justify-content:end; min-width:0; }
    .contract-options .btn.mini { width:78px; height:34px; min-height:34px; display:flex; align-items:center; justify-content:center; padding:0 6px; border-radius:8px; font-size:10.5px; line-height:1.05; text-align:center; white-space:normal; overflow:hidden; }
    .contract-options .btn.primary { background:#eef4ff; color:#1d4ed8; border-color:#9db8ff; box-shadow:none; }
    .contract-options .btn.primary:hover { background:#dfeaff; }
    .contract-options .btn.sign { background:#fff7d6; color:#92400e; border-color:#f0c46f; box-shadow:none; }
    .contract-options .btn.success { background:#ecfdf3; color:#166534; border-color:#9bd7aa; box-shadow:none; }
    .contract-options .btn.success:hover { background:#dcfce7; border-color:#16a34a; }
    .contract-options .muted { align-self:center; font-size:12px; }
    .contract-nr-preview { border:0; background:transparent; padding:1px 2px; font:inherit; font-weight:700; cursor:pointer; text-decoration:none; border-radius:6px; }
    .contract-nr-preview:hover { filter:brightness(.9); background:#eef4ff; }
    .contract-pdf-preview { height:min(86vh, 980px); min-height:680px; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#f8fafc; }
    .contract-pdf-preview iframe { width:100%; height:100%; border:0; display:block; background:#fff; }
    .action-panel:has(.contract-pdf-preview) { width:min(1480px, calc(100vw - 28px)); max-height:calc(100vh - 28px); }
    .action-panel:has(.contract-pdf-preview) .action-body { padding:14px 18px; }
    .sign-status { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:12px; white-space:nowrap; font-weight:600; }
    .sign-status.trimis { background:#eaf2ff; color:#1747b8; }
    .sign-status.deschis { background:#fff3c4; color:#7a4b00; }
    .sign-status.semnat { background:#e8f7ec; color:#166534; }
    .sign-status.expirat { background:#ffe8e8; color:#9f1239; }
    .sign-dashboard { display:grid; grid-template-columns:repeat(5,minmax(140px,1fr)); gap:10px; margin-bottom:14px; }
    .sign-table { width:100%; table-layout:fixed; font-size:13px; }
    .sign-table th, .sign-table td { padding:9px 10px; overflow:hidden; text-overflow:ellipsis; vertical-align:middle; }
    .sign-flow-table th, .sign-flow-table td { padding:7px 7px; font-size:12px; }
    .sign-flow-table th:nth-child(1), .sign-flow-table td:nth-child(1) { width:7%; }
    .sign-flow-table th:nth-child(2), .sign-flow-table td:nth-child(2) { width:8%; }
    .sign-flow-table th:nth-child(3), .sign-flow-table td:nth-child(3) { width:12%; }
    .sign-flow-table th:nth-child(4), .sign-flow-table td:nth-child(4) { width:10%; }
    .sign-flow-table th:nth-child(5), .sign-flow-table td:nth-child(5) { width:9%; }
    .sign-flow-table th:nth-child(6), .sign-flow-table td:nth-child(6) { width:6%; }
    .sign-flow-table th:nth-child(7), .sign-flow-table td:nth-child(7),
    .sign-flow-table th:nth-child(8), .sign-flow-table td:nth-child(8) { width:8%; }
    .sign-flow-table th:nth-child(9), .sign-flow-table td:nth-child(9) { width:7%; }
    .sign-flow-table th:nth-child(10), .sign-flow-table td:nth-child(10) { width:9%; }
    .sign-flow-table th:nth-child(11), .sign-flow-table td:nth-child(11) { width:16%; }
    .sign-flow-table td:nth-child(7), .sign-flow-table td:nth-child(8) { white-space:normal; line-height:1.3; }
    .sign-flow-table td:last-child { overflow:visible; white-space:normal; }
    .sign-flow-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px; align-items:stretch; }
    .sign-flow-table td:last-child .sign-flow-actions .btn { display:flex; align-items:center; justify-content:center; width:100%; min-width:0; min-height:30px; padding:5px 6px; margin:0; font-size:11px; line-height:1.1; white-space:nowrap; text-align:center; text-decoration:none; }
    .sign-flow-actions .sign-whatsapp { background:#dcfce7; border-color:#86efac; color:#166534; }
    .sign-flow-actions .sign-whatsapp:hover { background:#bbf7d0; border-color:#4ade80; color:#14532d; }
    .sign-link-cell { display:block; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#315eea; font-size:12px; }
    .sign-hash-cell { font-family:ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace; font-size:11px; color:#475467; }
    .signrequest-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:12px; margin-bottom:14px; }
    .signrequest-form { display:grid; grid-template-columns:120px minmax(220px,1fr) minmax(220px,1fr) auto auto; gap:10px; align-items:end; }
    .signrequest-form .field { margin:0; }
    .signrequest-form .full-row { grid-column:1 / -1; }
    .signrequest-form .inline-checkbox { display:flex; align-items:center; justify-content:flex-start; gap:10px; white-space:nowrap; }
    .signrequest-form .template-toggle { border:1px solid #d7e2f2; border-radius:8px; background:#f8fbff; padding:10px 12px; }
    .signrequest-note { border:1px solid #d7e2f2; border-radius:9px; background:linear-gradient(135deg,#f8fbff,#fffdf4); padding:12px; color:#52637a; font-size:12px; line-height:1.45; }
    .archive-actions { display:flex; gap:6px; flex-wrap:wrap; }
    @media (max-width: 1100px) { .signrequest-grid, .signrequest-form { grid-template-columns:1fr; } }
    .roadmap-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:14px; }
    .roadmap-tools { display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; padding:14px; margin-bottom:14px; background:linear-gradient(135deg,#ffffff,#f8fbff 62%,#fff8e6); border-color:#c7d8ff; }
    .roadmap-filters { display:flex; gap:8px; flex-wrap:wrap; }
    .roadmap-filter { border:1px solid #d7e2f2; background:#fff; color:#344054; border-radius:999px; padding:7px 11px; font-weight:650; cursor:pointer; }
    .roadmap-filter.active { border-color:#2563eb; background:#eaf2ff; color:#1d4ed8; box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .roadmap-table { width:100%; border-collapse:collapse; font-size:13px; }
    .roadmap-table th, .roadmap-table td { padding:11px 10px; border-bottom:1px solid #e7ebf2; text-align:left; vertical-align:top; }
    .roadmap-table th { background:#f6f8fb; color:#344054; font-size:12px; text-transform:uppercase; letter-spacing:.02em; }
    .roadmap-task-title { font-weight:750; color:#101828; }
    .roadmap-task-meta { display:flex; gap:6px; flex-wrap:wrap; margin-top:6px; }
    .roadmap-pill { display:inline-flex; align-items:center; border-radius:999px; padding:4px 8px; font-size:11px; font-weight:700; white-space:nowrap; }
    .roadmap-pill.p0 { background:#fee2e2; color:#991b1b; }
    .roadmap-pill.p1 { background:#fff3c4; color:#92400e; }
    .roadmap-pill.p2 { background:#eaf2ff; color:#1d4ed8; }
    .roadmap-pill.status-pending { background:#f1f5f9; color:#475569; }
    .roadmap-pill.status-started { background:#dcfce7; color:#166534; }
    .roadmap-pill.status-paused { background:#fff7d6; color:#92400e; }
    .roadmap-note { min-width:190px; width:100%; border:1px solid #dbe3ef; border-radius:8px; padding:8px 9px; resize:vertical; min-height:40px; font-size:12px; }
    .roadmap-start { white-space:nowrap; }
    .roadmap-calendar { display:grid; grid-template-columns:180px repeat(8,minmax(72px,1fr)); gap:0; overflow:auto; border:1px solid #dbe3ef; border-radius:10px; background:#fff; }
    .roadmap-cal-head, .roadmap-cal-name, .roadmap-cal-cell { padding:9px 10px; border-bottom:1px solid #e8eef6; border-right:1px solid #e8eef6; min-height:42px; font-size:12px; }
    .roadmap-cal-head { background:#f6f8fb; font-weight:750; color:#344054; position:sticky; top:0; z-index:1; }
    .roadmap-cal-name { font-weight:700; background:#fbfcff; color:#101828; }
    .roadmap-cal-cell { background:#fff; }
    .roadmap-bar { height:18px; border-radius:999px; background:linear-gradient(90deg,#7ea6f8,#8fd8b0); box-shadow:0 5px 12px rgba(37,99,235,.12); }
    .roadmap-bar.hot { background:linear-gradient(90deg,#ef4444,#f59e0b); }
    .roadmap-bar.admin { background:linear-gradient(90deg,#b8a7f6,#7ea6f8); }
    .contract-edit-notice { margin:10px 0 12px; border:1px solid #f0c46f; background:linear-gradient(135deg,#fff7d6,#fffdf4 58%,#ffffff); border-radius:9px; padding:10px 12px; display:flex; justify-content:space-between; align-items:center; gap:12px; box-shadow:0 10px 24px rgba(217,151,31,.10); }
    .contract-edit-notice.hidden { display:none; }
    .contract-edit-notice span { display:block; color:#92400e; font-size:11px; text-transform:uppercase; letter-spacing:.35px; font-weight:700; }
    .contract-edit-notice strong { display:block; color:#111827; font-size:16px; margin-top:2px; }
    .contract-edit-notice small { display:block; color:#667085; margin-top:2px; }
    .update-inline { display:block; margin-top:5px; border:1px solid #efc0c0; background:#fff8f8; color:#991b1b; border-radius:6px; padding:3px 6px; font-size:11px; font-weight:600; cursor:pointer; }
    .update-inline:hover { background:#ffe8e8; }
    .flow-badge { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:12px; font-weight:500; white-space:nowrap; }
    .flow-badge.de_validat { background:#fff3c4; color:#7a4b00; }
    .flow-badge.validat { background:#e8f7ec; color:#166534; }
    .flow-badge.de_facturat { background:#eaf2ff; color:#1747b8; }
    .flow-badge.facturat { background:#eefaf8; color:#0f766e; }
    .flow-badge.respins { background:#ffe8e8; color:#9f1239; }
    .flow-badge.stergere_solicitata { background:#fff1e6; color:#9a3412; }
    .flow-badge.in_asteptare { background:#fff3c4; color:#7a4b00; }
    .flow-badge.lipsa_factura { background:#ffe2e2; color:#991b1b; }
    .flow-badge.subfacturat { background:#fff3c4; color:#7a4b00; }
    .flow-badge.suprafacturat { background:#eaf2ff; color:#1747b8; }
    .flow-badge.in_plus_raport { background:#f3f0ff; color:#5b21b6; }
    .diff-negative { color:#991b1b; font-weight:600; }
    .diff-positive { color:#1747b8; font-weight:600; }
    .flow-actions { display:flex; gap:6px; flex-wrap:wrap; }
    .supp-actions { display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
    .client-detail-overlay { position:fixed; inset:0; z-index:50; background:rgba(15,23,42,.34); display:flex; justify-content:flex-end; padding:0; }
    .client-detail-panel { width:min(100%,100%); height:100%; overflow:auto; background:#f3f6fb; border:0; box-shadow:0 24px 70px rgba(16,24,40,.24); padding:0 32px 34px; color:#111827; font-weight:400; }
    .client-detail-panel strong, .client-detail-panel b { font-weight:500; }
    .client-detail-head { position:sticky; top:0; z-index:8; display:flex; align-items:flex-start; justify-content:space-between; gap:22px; padding:18px 0 16px; border-bottom:1px solid #dfe6f0; margin:0 -32px 24px; background:rgba(255,255,255,.96); backdrop-filter:blur(12px); box-shadow:0 10px 26px rgba(15,23,42,.06); }
    .client-detail-head-main { min-width:260px; padding-left:32px; flex:1 1 auto; }
    .client-detail-head-side { display:flex; align-items:flex-start; justify-content:flex-end; gap:10px; max-width:none; padding-right:32px; flex:0 0 auto; }
    .client-detail-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:nowrap; }
    .client-detail-actions-top { display:none; }
    .client-detail-actions-inline { flex:1 0 100%; justify-content:flex-start; margin-top:4px; }
    .client-detail-actions .future-action { border-style:dashed; color:#667085; background:#f8fafc; }
    .client-detail-head h2 { display:flex; align-items:center; flex-wrap:wrap; gap:10px; font-size:24px; font-weight:600; line-height:1.15; margin:5px 0 8px; letter-spacing:-.015em; }
    .client-detail-head .eyebrow { color:#2563eb; font-weight:600; letter-spacing:.04em; }
    .client-detail-head .btn.mini { width:132px; min-height:42px; padding:0 10px; border-radius:10px; font-size:12px; font-weight:600; box-shadow:0 7px 18px rgba(15,23,42,.07); display:inline-flex; align-items:center; justify-content:center; text-align:center; white-space:nowrap; }
    .client-detail-meta { display:flex; align-items:center; gap:8px; flex-wrap:wrap; color:#667085; font-size:13px; }
    .client-meta-chip { display:inline-flex; align-items:center; gap:6px; border:1px solid #e3e9f4; border-radius:8px; background:#f8fafc; padding:5px 9px; line-height:1; }
    .client-meta-chip strong { color:#475467; font-weight:500; }
    .client-copy-btn { width:27px; height:27px; display:inline-grid; place-items:center; border:1px solid #d8e2ef; background:#f6f8fc; color:#64748b; border-radius:7px; padding:0; cursor:pointer; }
    .client-copy-btn svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    .client-copy-btn:hover { border-color:#9db8ff; color:#1d4ed8; background:#eef4ff; }
    .client-detail-badge { display:inline-flex; align-items:center; gap:6px; border:1px solid #dde5f0; border-radius:999px; padding:6px 10px; font-size:12px; font-weight:500; white-space:nowrap; }
    .client-detail-badge.red { background:#fff1f2; color:#dc2626; border-color:#fecaca; animation:clientPulse 1.8s ease-in-out infinite; }
    .client-detail-badge.gray { background:#f1f5f9; color:#64748b; border-color:#e2e8f0; }
    .client-detail-badge.amber { background:#fffbeb; color:#b45309; border-color:#fcd34d; }
    .client-detail-badge.green { background:#ecfdf3; color:#047857; border-color:#86efac; }
    .client-detail-dot { width:8px; height:8px; border-radius:999px; background:currentColor; }
    @keyframes clientPulse { 0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.20)} 50%{box-shadow:0 0 0 6px rgba(220,38,38,0)} }
    .client-action-primary { background:#2563eb; color:#fff; border-color:#2563eb; box-shadow:0 9px 22px rgba(37,99,235,.22); }
    .client-action-primary:hover { background:#1d4ed8; border-color:#1d4ed8; }
    .client-action-icon { display:inline-grid; place-items:center; width:17px; height:17px; margin-right:7px; border-radius:999px; border:1px solid rgba(255,255,255,.58); font-size:11px; line-height:1; transform:translateY(-1px); }
    .client-more-caret { display:inline-block; margin-left:5px; color:#64748b; font-size:11px; font-weight:500; transform:translateY(-1px); }
    .client-more-menu { position:relative; }
    .client-more-menu summary { list-style:none; }
    .client-more-menu summary::-webkit-details-marker { display:none; }
    .client-more-menu[open] summary { background:#eef4ff; border-color:#9db8ff; }
    .client-more-list { position:absolute; right:0; top:calc(100% + 8px); z-index:10; min-width:220px; padding:8px; border:1px solid #dbe3ef; border-radius:12px; background:#fff; box-shadow:0 18px 42px rgba(15,23,42,.16); display:grid; gap:6px; }
    .client-more-list .client-action-item { border-radius:9px; padding:10px 12px; font-size:13px; font-weight:500; }
    .client-more-list .danger { color:#991b1b; background:#fff5f5; border-color:#fecaca; }
    .client-detail-close-x { flex:0 0 42px; width:42px; height:42px; border:1px solid #cbd5e1; background:#fff; color:#334155; border-radius:12px; font-size:24px; line-height:1; padding:0; cursor:pointer; box-shadow:0 8px 18px rgba(15,23,42,.08); display:grid; place-items:center; }
    .client-detail-close-x:hover { color:#111827; border-color:#94a3b8; background:#f8fafc; box-shadow:0 10px 22px rgba(15,23,42,.12); }
    .client-detail-alerts { display:grid; gap:10px; margin:0 auto 18px; max-width:1500px; }
    .client-alert { display:flex; align-items:center; justify-content:space-between; gap:16px; border:1px solid #e5e7eb; border-radius:14px; padding:15px 18px; background:#fff; font-size:14px; box-shadow:0 8px 20px rgba(15,23,42,.04); }
    .client-alert::before { content:"!"; flex:0 0 auto; display:inline-grid; place-items:center; width:24px; height:24px; border-radius:999px; border:2px solid currentColor; font-weight:600; font-size:14px; }
    .client-alert > div { flex:1 1 auto; }
    .client-alert strong { font-weight:500; }
    .client-alert.danger { color:#991b1b; background:#fff1f2; border-color:#fecaca; }
    .client-alert.warning { color:#b45309; background:#fffbeb; border-color:#fde68a; }
    .client-alert a, .client-alert button { border:0; background:transparent; color:inherit; text-decoration:underline; font-weight:500; cursor:pointer; white-space:nowrap; }
    .client-detail-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; max-width:1500px; margin:0 auto 20px; }
    .client-kpi { position:relative; overflow:hidden; border:1px solid #e1e8f2; border-radius:14px; background:#fff; padding:18px 20px; min-height:118px; box-shadow:0 12px 26px rgba(15,23,42,.08); }
    .client-kpi::before { content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:#dbeafe; }
    .client-kpi.danger::before { background:#ef4444; }
    .client-kpi.warning::before { background:#f59e0b; }
    .client-kpi.primary::before { background:#2563eb; }
    .client-kpi span { display:block; color:#94a3b8; font-size:11px; font-weight:500; letter-spacing:.05em; text-transform:uppercase; }
    .client-kpi strong { display:block; margin-top:10px; font-size:26px; font-weight:500; line-height:1; color:#0f172a; letter-spacing:-.02em; }
    .client-kpi.danger strong { color:#dc2626; }
    .client-kpi small { display:block; margin-top:10px; color:#64748b; font-size:13px; line-height:1.25; }
    .client-detail-tabs { position:sticky; top:83px; z-index:7; max-width:1500px; margin:0 auto 20px; display:flex; gap:24px; align-items:center; border-bottom:1px solid #dfe6f0; background:#f3f6fb; padding:0 0 10px; }
    .client-detail-tab { border:0; background:transparent; color:#667085; padding:10px 0 8px; font-size:14px; font-weight:500; cursor:pointer; border-bottom:3px solid transparent; }
    .client-detail-tab.active { color:#2563eb; border-bottom-color:#2563eb; }
    .client-tab-count { display:inline-flex; align-items:center; justify-content:center; min-width:19px; height:19px; margin-left:5px; border-radius:999px; background:#f1f5f9; color:#64748b; font-size:11px; font-weight:500; }
    .client-tab-count.red { background:#fee2e2; color:#dc2626; border:1px solid #fecaca; }
    .client-detail-pane { max-width:1500px; margin:0 auto; }
    .client-detail-pane.hidden { display:none; }
    .client-detail-info { display:grid; grid-template-columns:1fr; gap:18px; margin:0; }
    .client-section-card { border:1px solid #e1e8f2; border-radius:14px; background:#fff; box-shadow:0 10px 24px rgba(15,23,42,.06); overflow:hidden; }
    .client-section-card h3 { margin:0; padding:18px 22px; font-size:18px; font-weight:600; border-bottom:1px solid #e8eef6; }
    .client-info-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; padding:18px 22px 8px; }
    .client-info-item { min-width:0; padding:12px 18px 16px 0; border-bottom:1px dashed #e4eaf2; }
    .client-info-item span { display:block; color:#94a3b8; font-size:11px; font-weight:500; letter-spacing:.05em; text-transform:uppercase; margin-bottom:7px; }
    .client-info-item strong { display:inline-flex; align-items:center; gap:7px; color:#111827; font-size:14px; font-weight:500; line-height:1.35; max-width:100%; word-break:break-word; }
    .client-info-item em, .client-empty-value { color:#94a3b8; font-style:italic; font-weight:500; }
    .client-detail-grid { display:grid; grid-template-columns:1fr; gap:18px; }
    .client-detail-card { padding:0; overflow:hidden; }
    .client-detail-card h3 { margin:0; padding:18px 22px; font-size:18px; font-weight:600; border-bottom:1px solid #e8eef6; }
    .client-detail-card table { min-width:720px; }
    .client-detail-card th, .client-detail-card td { font-size:13px; padding:12px 16px; }
    .client-detail-card th { color:#94a3b8; font-size:11px; text-transform:uppercase; letter-spacing:.05em; font-weight:500; background:#f8fafc; }
    .client-detail-card td { color:#1f2937; }
    .client-invoice-row .row-actions { opacity:0; transition:.14s ease; display:inline-flex; gap:6px; margin-left:8px; }
    .client-invoice-row:hover .row-actions { opacity:1; }
    .client-delay-badge { display:inline-flex; align-items:center; border-radius:999px; padding:4px 8px; font-size:11px; font-weight:500; white-space:nowrap; }
    .client-delay-badge.low { background:#fef3c7; color:#92400e; }
    .client-delay-badge.medium { background:#fed7aa; color:#9a3412; }
    .client-delay-badge.high { background:#fee2e2; color:#991b1b; }
    .client-name-open { border:0; background:transparent; color:#0f172a; font:inherit; font-weight:inherit; padding:0; margin:0; text-align:left; cursor:pointer; }
    .client-name-open:hover { color:#1747b8; text-decoration:underline; }
    .client-name-fisa-chip { border:1px solid #cbd5e1; background:#f8fafc; color:#1747b8; border-radius:999px; font-size:10px; font-weight:800; padding:2px 7px; cursor:pointer; }
    .client-name-fisa-chip:hover { background:#eaf2ff; border-color:#9db8f6; }
    .client-vector-section { margin-bottom:14px; }
    .client-email-audit { margin-bottom:14px; }
    .client-email-audit-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
    .client-email-audit-head p { margin:4px 0 0; color:var(--muted); font-size:12px; }
    .client-email-mini-stats { display:flex; gap:7px; flex-wrap:wrap; }
    .client-email-mini-stats span { border:1px solid #e5eaf3; background:#f8fafc; color:#344054; border-radius:999px; padding:5px 9px; font-size:11px; font-weight:700; }
    .client-email-table { width:100%; min-width:760px; }
    .client-email-table th, .client-email-table td { font-size:12px; padding:9px 8px; }
    .client-email-subject { max-width:300px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .client-vector-head { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:10px; }
    .client-vector-head p { margin:4px 0 0; color:var(--muted); font-size:12px; }
    .client-vector-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
    .client-vector-item { border:1px solid #e5eaf3; border-radius:7px; padding:9px 10px; background:#fafcff; min-width:0; }
    .client-vector-item.wide { grid-column:span 2; }
    .client-vector-item.full { grid-column:1 / -1; }
    .client-vector-item span { display:block; color:var(--muted); font-size:11px; margin-bottom:4px; }
    .client-vector-item strong { display:block; color:#111827; font-size:13px; font-weight:650; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .client-vector-item.full strong { white-space:normal; line-height:1.35; }
    .client-vector-empty { border:1px dashed #cbd5e1; background:#f8fafc; color:#667085; border-radius:9px; padding:14px; }
    .client-empty-action { margin-top:10px; }
    @media (max-width: 1100px) {
      .client-detail-panel { padding:0 18px 28px; }
      .client-detail-head { margin:0 -18px 18px; padding:14px 0; }
      .client-detail-head-main { padding-left:18px; }
      .client-detail-head-side { padding-right:18px; }
      .client-detail-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .client-info-grid, .client-vector-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .client-detail-tabs { top:72px; overflow:auto; gap:18px; }
    }
    @media (max-width: 720px) {
      .client-detail-head { flex-direction:column; }
      .client-detail-head-side { justify-content:flex-start; padding-left:18px; }
      .client-detail-stats, .client-info-grid, .client-vector-grid { grid-template-columns:1fr; }
      .client-alert { align-items:flex-start; }
      .client-alert button { align-self:flex-end; }
    }
    .empty-cell { text-align:center; color:var(--muted); padding:20px !important; }

    .module-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:14px; }
    .top { display:flex; gap:18px; flex-wrap:wrap; align-items:end; padding:12px 16px; margin-bottom:14px; }
    .contract-top { padding:12px; background:linear-gradient(135deg,#f8fbff,#ffffff); border-color:#cfd9ea; box-shadow:0 10px 26px rgba(16,24,40,.04); }
    .push-setup { display:grid; grid-template-columns:minmax(250px,310px) minmax(0,1fr); gap:12px; align-items:stretch; width:100%; }
    .contract-select-card { border:1px solid #d8e0ec; border-radius:9px; background:#fff; padding:12px; min-width:0; box-shadow:0 8px 18px rgba(16,24,40,.035); }
    .contract-select-card > label { color:#344054; margin-bottom:9px; }
    .contract-select-card.series-card { background:linear-gradient(135deg,#f9fbff,#fff); }
    .contract-select-card.colab-card { background:linear-gradient(135deg,#fff,#f8fbff); }
    .type-line { display:grid; grid-template-columns:1fr; gap:10px; }
    .next-number { display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap; min-height:42px; padding:8px 10px; border:1px solid #cfd9ea; border-radius:8px; background:#f8fbff; }
    .next-number .next-label { color:var(--muted); font-size:11px; white-space:nowrap; }
    .contract-date-control { display:flex; align-items:center; gap:6px; margin-left:auto; }
    .contract-date-control input { width:142px; min-height:32px; border:1px solid #cbd5e1; border-radius:8px; background:#fff; padding:5px 8px; color:#1e40af; font:inherit; font-weight:700; outline:none; }
    .contract-date-control input:focus { border-color:#7aa7ff; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .choice-row { display:flex; flex-wrap:wrap; gap:8px; }
    .colab-choice-row { flex-wrap:wrap; overflow:visible; padding-bottom:0; align-content:flex-start; }
    .colab-choice-row .choice-btn { flex:0 1 auto; }
    .choice-btn { border:1px solid var(--line); background:#fff; border-radius:8px; padding:9px 13px; cursor:pointer; font-weight:500; white-space:nowrap; transition:background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
    .choice-btn:hover { transform:translateY(-1px); }
    .choice-btn.active { border-color:var(--brand); background:#eaf2ff; color:#1747b8; box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .choice-btn.series-ctb { color:#1747b8; border-color:#b8cdfa; background:#eef4ff; }
    .choice-btn.series-ctb.active { border-color:#2563eb; background:#e0ecff; color:#123f9f; }
    .choice-btn.series-stup { color:#991b1b; border-color:#f2b8b8; background:#fff1f1; }
    .choice-btn.series-stup.active { border-color:#dc2626; background:#ffe2e2; color:#7f1d1d; box-shadow:0 0 0 2px rgba(220,38,38,.11); }
    .choice-btn.c0 { background:#eef6ff; }
    .choice-btn.c1 { background:#effaf4; }
    .choice-btn.c2 { background:#fff8df; }
    .choice-btn.c3 { background:#f3f0ff; }
    .choice-btn.c4 { background:#fff0f3; }
    .choice-btn.c5 { background:#eefaf8; }
    .choice-btn[data-colab-choice], .choice-btn.colab-choice { position:relative; padding-top:15px; border-color:color-mix(in srgb, var(--colab-color,#7ea6f8) 34%, #d6e0ed); background:linear-gradient(135deg, color-mix(in srgb, var(--colab-color,#7ea6f8) 12%, #fff), #fff 78%); font-weight:700; }
    .choice-btn[data-colab-choice]::before, .choice-btn.colab-choice::before { content:""; position:absolute; left:8px; right:8px; top:6px; height:4px; border-radius:999px; background:var(--colab-color,#7ea6f8); }
    .choice-btn[data-colab-choice].active, .choice-btn.colab-choice.active { background:#101828; border-color:#101828; color:#fff; box-shadow:0 8px 20px rgba(16,24,40,.16); }
    .choice-btn[data-colab-choice].active, .choice-btn.colab-choice.active { padding-right:38px; }
    .choice-btn[data-colab-choice].active::after, .choice-btn.colab-choice.active::after { content:"\2713"; position:absolute; top:50%; right:10px; width:20px; height:20px; display:grid; place-items:center; transform:translateY(-50%); border-radius:50%; background:#dcfce7; color:#15803d; font-size:13px; font-weight:900; line-height:1; }
    .push-btn { min-width:110px; }
    .push-status { color:var(--muted); font-size:12px; min-width:150px; }
    .push-status.ok { color:#067647; }
    @media (max-width:1180px) {
      .push-setup { grid-template-columns:1fr; }
      .monthly-values { grid-template-columns:repeat(6,minmax(0,1fr)); }
    }
.contract-wizard-shell { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:12px; align-items:start; padding:12px; border:1px solid #c9d7ea; border-radius:16px; background:linear-gradient(135deg,#f8fbff 0%,#ffffff 48%,#fff7f7 100%); box-shadow:0 14px 34px rgba(16,24,40,.08); }
    .contract-steps { padding:10px; display:grid; gap:7px; }
    .contract-step-tab { display:grid; grid-template-columns:26px minmax(0,1fr); gap:9px; align-items:center; border:1px solid transparent; border-radius:8px; background:transparent; color:var(--ink); padding:9px; text-align:left; font:inherit; cursor:pointer; }
    .contract-step-tab:hover { background:#f8fafc; border-color:#eef2f7; }
    .contract-step-tab.active { background:#edf4ff; border-color:#c9dcff; }
    .contract-step-tab.done .dot { background:#078848; border-color:#078848; color:#fff; }
    .contract-step-tab .dot { width:26px; height:26px; border-radius:50%; display:grid; place-items:center; border:1px solid #cdd6e3; color:#667085; background:#fff; font-size:12px; font-weight:600; }
    .contract-step-title { display:block; font-weight:610; font-size:13px; }
    .contract-step-sub { display:block; color:#667085; font-size:11.5px; margin-top:2px; }
    .contract-wizard-main { min-height:560px; }
    .contract-pane { display:none; }
    .contract-pane.active { display:block; }
    .contract-pane-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:14px 16px 11px; border-bottom:1px solid #eef2f7; }
    .contract-pane-head h2 { margin:0; font-size:17px; font-weight:620; letter-spacing:0; }
    .contract-pane-head p { margin:4px 0 0; color:#667085; font-size:12.5px; }
    .contract-pane-body { padding:14px 16px 16px; }
    .contract-field-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 14px; }
    .contract-contact-row { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 14px; }
    .contract-field-grid.contract-compact-grid { gap:10px 12px; }
    .contract-field-grid.contract-compact-grid .contract-field input { min-height:36px; }
    .contract-field { min-width:0; }
    .contract-wizard-main input[required],
    .contract-wizard-main select[required],
    .contract-wizard-main textarea[required] { background:#fff8f8; border-color:#fecaca; }
    .contract-wizard-main input[required]:invalid,
    .contract-wizard-main select[required]:invalid,
    .contract-wizard-main textarea[required]:invalid { background:#fff1f2; border-color:#fca5a5; }
    .contract-wizard-main input[required]:focus:invalid,
    .contract-wizard-main select[required]:focus:invalid,
    .contract-wizard-main textarea[required]:focus:invalid { box-shadow:0 0 0 3px rgba(248,113,113,.16); }
    .contract-field.wide { grid-column:1 / -1; }
    .contract-field label, .contract-field-label { display:block; color:#344054; font-size:12px; font-weight:600; margin-bottom:5px; }
    .contract-field input, .contract-field select, .contract-field textarea { width:100%; min-height:38px; border:1px solid #cbd5e1; border-radius:7px; background:#fff; padding:8px 10px; color:var(--ink); font:inherit; outline:none; }
    .contract-field textarea { min-height:76px; resize:vertical; line-height:1.45; }
    .contract-field input:focus, .contract-field select:focus, .contract-field textarea:focus { border-color:#7aa7ff; box-shadow:0 0 0 3px rgba(37,99,235,.10); }
    .contract-field-note { display:block; margin-top:5px; color:#667085; font-size:11.5px; }
    @media (max-width:900px) { .contract-contact-row { grid-template-columns:1fr; } }
    .source-tag-cloud { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:12px; }
    .source-tag { border:1px solid transparent; border-radius:999px; padding:9px 13px; background:#f8fafc; color:#1f2937; font:inherit; font-size:12.5px; font-weight:750; cursor:pointer; box-shadow:0 7px 16px rgba(16,24,40,.055); transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease; }
    .source-tag:hover { transform:translateY(-1px); box-shadow:0 10px 20px rgba(16,24,40,.08); }
    .source-tag.active { border-color:#111827; box-shadow:0 0 0 2px rgba(17,24,39,.08), 0 10px 22px rgba(16,24,40,.10); }
    .source-tag.c-stup { background:#fff1e7; color:#9a3412; }
    .source-tag.c-ing { background:#fff4e5; color:#c2410c; }
    .source-tag.c-consultanta { background:#eaf2ff; color:#1747b8; }
    .source-tag.c-client { background:#ecfdf3; color:#067647; }
    .source-tag.c-networking { background:#f3e8ff; color:#7e22ce; }
    .source-tag.c-marketing { background:#fff7d6; color:#92400e; }
    .source-tag.c-sedii { background:#eefaf8; color:#0f766e; }
    .source-tag.c-onrc { background:#f1f5f9; color:#334155; }
    .source-tag.c-custom { background:#f8fafc; color:#475467; }
    .source-hidden-input { display:none !important; }
    .source-tag.source-badge { display:inline-flex; align-items:center; width:max-content; max-width:100%; padding:5px 10px; font-size:11px; line-height:1.15; box-shadow:none; cursor:default; white-space:normal; }
    .source-tag.source-badge:hover { transform:none; box-shadow:none; }
    .contract-input-action { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
    .contract-anaf-note { grid-column:1 / -1; border:1px solid #bbf7d0; background:#edf9f2; color:#166534; border-radius:8px; padding:10px 12px; font-size:12.5px; }
    .contract-section-label { grid-column:1 / -1; margin-top:4px; padding-top:12px; border-top:1px solid #eef2f7; color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.28px; font-weight:620; }
    .contract-structure { display:grid; gap:12px; }
    .contract-step-contract-basics { margin-bottom:14px; padding-bottom:14px; border-bottom:1px solid #eef2f7; }
    .contract-step-contract-basics > .contract-field.contract-structure { grid-template-columns:112px minmax(260px,1fr); align-items:stretch; column-gap:12px; }
    .contract-step-contract-basics > .contract-field.contract-structure #seriesChoices { align-self:stretch; }
    .contract-step-contract-basics > .contract-field.contract-structure #seriesChoices .choice-btn { width:100%; min-height:64px; display:flex; align-items:center; justify-content:center; border-radius:12px; padding:0 16px; font-size:18px; font-weight:760; letter-spacing:.2px; }
    .contract-step-contract-basics > .contract-field.contract-structure .next-number { min-height:64px; border-radius:12px; padding:12px 16px; }
    .contract-wizard-nav { display:flex; justify-content:space-between; gap:10px; padding:12px 16px; border-top:1px solid #eef2f7; background:#fbfdff; border-radius:0 0 8px 8px; }
    .contract-wizard-nav .btn.sign { border-color:#bbf7d0; background:#ecfdf3; color:#067647; font-weight:700; }
    .contract-wizard-nav .btn.preview { border-color:#86efac; background:#dcfce7; color:#166534; font-weight:800; }
    .contract-wizard-nav .btn.preview:hover { background:#bbf7d0; }
    .btn.sign.sent, .contract-wizard-nav .btn.sign.sent, .contract-options .btn.sign.sent { border-color:#86efac; background:#dcfce7; color:#166534; }
    .btn.sign.pending, .contract-options .btn.sign.pending { border-color:#fed7aa; background:#fff7ed; color:#9a3412; }
    .contract-wizard-nav .btn:disabled { opacity:.55; cursor:not-allowed; transform:none; }
    .contract-nav-side { display:flex; gap:8px; flex-wrap:wrap; }
    .contract-preview { position:sticky; top:62px; display:grid; gap:10px; }
    .contract-preview .box { box-shadow:0 8px 22px rgba(16,24,40,.045); }
    .contract-calc-note { margin-top:10px; border:1px solid #bfdbfe; background:#eff6ff; color:#1e3a8a; border-radius:8px; padding:10px; line-height:1.45; font-size:12px; }
    #view-contracte .panel.list { overflow:hidden; }
    #view-contracte table { width:100%; border-collapse:separate; border-spacing:0; }
    #view-contracte table th { padding:8px 9px; background:#f1f5f9; font-size:11.5px; }
    #view-contracte table td { padding:7px 9px; vertical-align:middle; }
    #view-contracte .contracts-generated-table { table-layout:fixed; min-width:0; }
    #view-contracte .contracts-generated-table th,
    #view-contracte .contracts-generated-table td { overflow:hidden; }
    #view-contracte .contracts-generated-table th { white-space:nowrap; }
    #view-contracte .contracts-generated-table td { font-size:12.5px; line-height:1.28; }
    #view-contracte .contracts-generated-table td:nth-child(2),
    #view-contracte .contracts-generated-table td:nth-child(3),
    #view-contracte .contracts-generated-table td:nth-child(5) { overflow-wrap:anywhere; }
    #view-contracte .contracts-generated-table td:nth-child(4) .source-tag { max-width:100%; padding:5px 8px; font-size:10.5px; line-height:1.15; white-space:normal; }
    #view-contracte .contracts-generated-table td:nth-child(9) { font-size:11.5px; }
    #view-contracte .contracts-generated-table td:nth-child(10) { text-align:center; }
    #view-contracte table tbody tr:nth-child(odd) { background:#f8fafc; }
    #view-contracte table tbody tr:nth-child(even) { background:#fff; }
    #view-contracte table tbody tr:hover { background:#eef6ff; }
@media (max-width:1280px) {
  .contract-wizard-shell { grid-template-columns:1fr; }
  .contract-steps { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .contract-preview { position:static; grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .contract-step-contract-basics > .contract-field.contract-structure { grid-template-columns:1fr; }
}
    .nr { font-size:20px; color:var(--brand); font-weight:700; letter-spacing:.2px; white-space:nowrap; }
    .nr.nr-ctb, .nrcell.series-ctb { color:#1747b8; }
    .nr.nr-stup, .nrcell.series-stup { color:#b42318; }
    .grid { display:grid; grid-template-columns:1.05fr .95fr; gap:18px; align-items:start; }
    .contract-grid { grid-template-columns:minmax(0,1fr) minmax(340px,420px); gap:14px; align-items:start; }
    .ttl { padding:11px 16px; border-bottom:1px solid var(--line); font-weight:700; }
    .body { padding:6px 16px 16px; }
    table.form td { padding:6px 0; border-bottom:1px solid #eef0f4; vertical-align:middle; }
    .form td:first-child { color:var(--muted); width:42%; padding-right:12px; }
    .contract-form-panel { border-color:#cfd9ea; box-shadow:0 12px 28px rgba(16,24,40,.045); }
    .contract-form-panel .ttl { background:linear-gradient(135deg,#f8fbff,#fff); }
    .contract-form-panel .body { padding:12px 16px 16px; }
    .contract-form-intro { color:#667085; font-size:12.5px; margin:0 0 10px; }
    .compact-form, .compact-form tbody { display:block; width:100%; }
    .compact-form tbody { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:16px; }
    .compact-form tr { display:grid; grid-template-columns:150px minmax(0,1fr); gap:10px; align-items:start; min-height:46px; border-bottom:1px solid #eef0f4; padding:8px 0; }
    .compact-form td { border-bottom:0 !important; min-width:0; }
    .compact-form td:first-child { width:auto; padding-right:0; font-size:12.5px; }
    .compact-form input, .compact-form select { padding:9px 10px; min-height:38px; }
    .compact-form .with-button { grid-template-columns:minmax(0,1fr) auto; }
    .compact-form .form-section-row { grid-column:1 / -1; grid-template-columns:1fr; min-height:0; border-bottom:0; padding:16px 0 7px; }
    .compact-form .form-section-row:first-child { padding-top:2px; }
    .compact-form .form-section-row td { padding:0; }
    .form-section-title { font-size:14px; font-weight:700; color:#111827; }
    .form-section-sub { color:#667085; font-size:12px; margin-top:2px; }
    .compact-form .full-row, .compact-form .monthly-row { grid-column:1 / -1; }
    .compact-form .monthly-row { grid-template-columns:150px minmax(0,1fr); align-items:start; }
    .compact-form .salary-row { grid-template-columns:150px minmax(220px,360px); }
    .field-label { display:block; color:#344054; font-size:12.5px; font-weight:600; margin:0 0 3px; }
    .req { color:#b42318; font-weight:700; }
    .field-hint { display:block; color:#667085; font-size:11.5px; line-height:1.35; }
    .field-error { margin-top:5px; color:#b42318; font-size:11.5px; font-weight:600; }
    input.field-invalid, select.field-invalid { border-color:#ef4444 !important; background:#fff1f1 !important; box-shadow:0 0 0 3px rgba(239,68,68,.10); }
    .monthly-helper { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:8px; color:#667085; font-size:12px; }
    .monthly-helper strong { color:#344054; }
    .two { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
    .with-button { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:center; }
    .actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; padding-top:14px; border-top:1px solid #eef0f4; }
    .btn { border:0; border-radius:7px; padding:10px 14px; font-weight:600; cursor:pointer; }
    .btn.loading { opacity:.78; cursor:progress; }
    .primary { background:var(--brand); color:#fff; }
    .primary:hover { background:var(--brand-d); }
    .ghost { background:#fff; border:1px solid var(--line); color:var(--ink); }
    .danger { background:#fff1f1; border:1px solid #f2b8b8; color:#991b1b; }
    .danger:hover { background:#ffe5e5; border-color:#e99a9a; }
    .btn.reminder { background:#dcfce7; border:1px solid #86efac; color:#166534; }
    .btn.reminder:hover { background:#bbf7d0; }
    .btn.reminder.sent { background:#fee2e2; border-color:#fca5a5; color:#991b1b; }
    .btn.reminder.sent:hover { background:#fecaca; }
    .mini { padding:7px 10px; font-size:12.5px; }
    .preview { display:grid; gap:12px; position:sticky; top:62px; }
    .preview .box { box-shadow:0 12px 26px rgba(16,24,40,.045); }
    .box { border:1px solid var(--line); border-radius:8px; overflow:hidden; background:#fff; }
    .box h3 { margin:0; padding:10px 12px; background:#f3f5f9; color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.4px; }
    .pv td { padding:8px 12px; border-top:1px solid #eef0f4; }
    .pv td:first-child { width:44%; color:var(--muted); }
    .pv td:last-child { word-break:break-word; }
    @media (min-width:1281px) {
      .contract-grid { grid-template-columns:minmax(0,1fr) minmax(270px,330px); gap:12px; }
      .contract-form-panel .ttl { padding:8px 12px; }
      .contract-form-panel .body { padding:8px 12px 10px; }
      .contract-form-intro { display:none; }
      .compact-form tbody { grid-template-columns:repeat(4,minmax(0,1fr)); column-gap:10px; }
      .compact-form tr { grid-template-columns:1fr; gap:4px; min-height:0; padding:5px 0; }
      .compact-form .full-row { grid-column:span 2; }
      .compact-form .form-section-row { padding:8px 0 3px; }
      .compact-form .form-section-title { font-size:12px; text-transform:uppercase; letter-spacing:.25px; }
      .compact-form .form-section-sub { display:none; }
      .compact-form td:first-child { font-size:11.5px; }
      .compact-form input, .compact-form select { min-height:30px; padding:6px 8px; font-size:12.5px; }
      .compact-form .with-button { grid-template-columns:minmax(0,1fr) auto; gap:5px; }
      .compact-form .monthly-row { grid-column:1 / -1; grid-template-columns:1fr; padding-top:4px; }
      .compact-form .salary-row { grid-column:span 1; grid-template-columns:1fr; }
      .field-label { font-size:11.5px; margin-bottom:2px; }
      .field-hint { font-size:10.5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
      .monthly-helper { margin-bottom:5px; font-size:11px; }
      .monthly-values { grid-template-columns:repeat(12,minmax(54px,1fr)); gap:5px; }
      .monthly-values input { min-height:28px; padding:5px; font-size:12px; }
      .monthly-values .month-input-wrap { gap:3px; border-radius:6px; padding:4px; }
      .monthly-values .month-input-wrap span { font-size:10.5px; }
      .actions { margin-top:8px; padding-top:8px; gap:8px; }
      .btn { padding:8px 12px; }
      .mini { padding:6px 8px; font-size:11.5px; }
      .preview { top:54px; gap:8px; }
      .box h3 { padding:8px 10px; font-size:11px; }
      .pv td { padding:6px 10px; font-size:12px; }
    }
    mark { background:#fff2b8; padding:0 3px; border-radius:3px; }
    .list { margin-top:18px; overflow:auto; }
    .ltab { min-width:900px; }
    .ltab th { color:var(--muted); font-size:11.5px; text-transform:uppercase; letter-spacing:.35px; }
    .nrcell { color:var(--brand); font-weight:800; }
    .history-panel { margin-top:14px; }
    .history-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 16px; border-bottom:1px solid var(--line); }
    .history-head h2 { font-size:18px; font-weight:600; }
    .history-head select { width:120px; }
    .history-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; padding:14px 16px 6px; }
    .history-chart { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:8px; align-items:stretch; min-height:205px; padding:10px 16px 8px; }
    .history-month-card { min-width:0; display:grid; grid-template-rows:auto 1fr auto; gap:6px; border:1px solid #e5eaf3; border-radius:8px; padding:8px 7px; background:linear-gradient(180deg,#fff,#fafcff); box-shadow:0 8px 18px rgba(16,24,40,.035); }
    .history-month-card.peak { border-color:#75c99c; box-shadow:0 0 0 3px rgba(22,163,74,.11), 0 10px 24px rgba(22,163,74,.08); }
    .history-month-card.low { border-color:#f0bf8a; background:linear-gradient(180deg,#fffaf3,#fff); }
    .history-month-top { display:flex; align-items:flex-start; justify-content:space-between; gap:4px; min-height:34px; }
    .history-month-top strong { font-size:12px; font-weight:600; color:#111827; }
    .history-month-top span { color:var(--muted); font-size:10.5px; text-align:right; line-height:1.25; }
    .history-bars { height:112px; display:flex; justify-content:center; align-items:flex-end; gap:7px; padding:2px 0 0; }
    .history-bar { width:24px; min-height:4px; border-radius:8px 8px 3px 3px; box-shadow:inset 0 1px 0 rgba(255,255,255,.45); }
    .history-bar.prev { background:linear-gradient(180deg,#7aa7ff,#d9e7ff); }
    .history-bar.current { background:linear-gradient(180deg,var(--history-top,#65bf91),var(--history-bottom,#dff5e8)); }
    .history-month-foot { display:grid; gap:3px; font-size:10.5px; color:#667085; }
    .history-month-foot div { display:flex; justify-content:space-between; gap:4px; }
    .history-legend { display:flex; gap:12px; align-items:center; padding:0 16px 10px; color:#667085; font-size:12px; flex-wrap:wrap; }
    .history-legend span { display:inline-flex; align-items:center; gap:6px; }
    .history-dot { width:10px; height:10px; border-radius:3px; display:inline-block; }
    .history-dot.prev { background:#8ab3ff; }
    .history-dot.current { background:#76c99e; }
    .history-dot.low { background:#f4c27a; }
    .history-table .heat-cell { border-radius:5px; font-variant-numeric:tabular-nums; }
    .history-table .delta-up { color:#067647; font-weight:600; }
    .history-table .delta-down { color:#b42318; font-weight:600; }
    .history-table .delta-flat { color:#667085; }
    .history-table-wrap { padding:0 16px 16px; overflow:auto; }
    .history-table { min-width:880px; font-size:12px; }
    .history-table th, .history-table td { padding:8px 7px; }
    .history-table .right { text-align:right; }
    .toast { position:fixed; left:50%; bottom:24px; transform:translateX(-50%); background:#111827; color:#fff; padding:11px 18px; border-radius:9px; opacity:0; transition:.2s; pointer-events:none; z-index:5; }
    .toast.show { opacity:1; }
    .toast.err { background:#b3261e; }
    .email-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(340px,.8fr); gap:14px; align-items:start; }
    .email-status { display:grid; gap:10px; }
    .email-status-card { border:1px solid #d7e2f2; border-radius:8px; padding:14px; background:#fff; box-shadow:0 10px 22px rgba(16,24,40,.035); }
    .email-status-card.ready { border-color:#8fd2a6; background:#f1fbf4; }
    .email-status-card.warn { border-color:#f0c36f; background:#fff9e8; }
    .email-status-card strong { display:block; font-size:18px; margin-bottom:4px; }
    .email-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
    .email-form-grid .wide { grid-column:1 / -1; }
    .email-form-grid .check { display:flex; align-items:center; gap:8px; border:1px solid #d7e2f2; border-radius:8px; padding:10px 12px; background:#f8fbff; color:#344054; font-size:13px; }
    .email-form-grid .check input { width:16px; height:16px; }
    .email-accounts { display:grid; gap:12px; }
    .email-account-card { border:1px solid #d7e2f2; border-radius:10px; padding:12px; background:linear-gradient(180deg,#fff,#f8fbff); }
    .email-account-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:10px; }
    .email-account-head strong { display:block; color:#101828; font-size:15px; }
    .email-account-head span { display:block; color:#667085; font-size:12px; margin-top:2px; }
    .email-actions { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-top:14px; }
    .email-help { color:#667085; font-size:12px; line-height:1.55; }
    .email-log-panel { margin-top:14px; }
    .email-log-head { display:flex; justify-content:space-between; align-items:center; gap:10px; }
    .email-log-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:12px; }
    .email-log-stat { border:1px solid #dbe6f4; background:linear-gradient(180deg,#fff,#f8fbff); border-radius:8px; padding:10px 12px; box-shadow:0 8px 18px rgba(16,24,40,.035); min-height:76px; }
    .email-log-stat span { display:block; color:#667085; font-size:11.5px; }
    .email-log-stat strong { display:block; margin-top:5px; font-size:18px; color:#101828; }
    .email-log-stat small { display:block; margin-top:4px; color:#667085; line-height:1.25; }
    .email-type-filters { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px; }
    .email-type-filter { border:1px solid #d9e5f6; background:#fff; color:#344054; border-radius:999px; padding:8px 12px; font:inherit; font-size:12px; font-weight:700; cursor:pointer; transition:.14s ease; }
    .email-type-filter:hover { transform:translateY(-1px); border-color:#9db7e8; background:#f8fbff; }
    .email-type-filter.active { border-color:#2563eb; background:#eaf2ff; color:#1747b8; box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .email-type-badge { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:11px; font-weight:800; white-space:nowrap; }
    .email-type-badge.contract_semnare, .email-type-badge.contract { color:#1747b8; background:#eaf2ff; }
    .email-type-badge.notificare_plata, .email-type-badge.plata { color:#92400e; background:#fff7d6; }
    .email-type-badge.inchidere_contract, .email-type-badge.inchidere { color:#9f1239; background:#ffe8e8; }
    .email-type-badge.test_smtp, .email-type-badge.test { color:#0f766e; background:#eefaf8; }
    .email-type-badge.generic { color:#475467; background:#f1f5f9; }
    .email-log-table-wrap { overflow:auto; }
    .email-log-table { width:100%; border-collapse:collapse; font-size:12.5px; min-width:980px; }
    .email-log-table th, .email-log-table td { padding:10px 9px; border-bottom:1px solid #e7edf5; vertical-align:middle; text-align:left; }
    .email-log-table th { background:#f8fafc; color:#475467; font-size:11px; text-transform:uppercase; letter-spacing:.25px; }
    .email-log-table tr:hover td { background:#fbfdff; }
    .email-badge { display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:4px 9px; font-weight:700; font-size:11px; }
    .email-badge.sent { color:#067647; background:#dcfae6; }
    .email-badge.delivered { color:#067647; background:#dcfae6; }
    .email-badge.opened { color:#155e75; background:#cffafe; }
    .email-badge.clicked { color:#92400e; background:#fff7d6; }
    .email-badge.failed { color:#b42318; background:#fee4e2; }
    .email-badge.pending { color:#92400e; background:#fef3c7; }
    .integration-stack { display:grid; gap:14px; }
    .integration-card { overflow:hidden; }
    .integration-toggle { width:100%; border:0; background:transparent; padding:0; display:flex; align-items:center; justify-content:space-between; gap:12px; text-align:left; cursor:pointer; font:inherit; color:inherit; }
    .integration-toggle strong { display:block; font-size:16px; color:#111827; }
    .integration-toggle span { display:block; margin-top:3px; color:#667085; font-size:13px; line-height:1.35; }
    .integration-toggle .chev { width:28px; height:28px; border:1px solid #dbe6f4; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; color:#475467; background:#f8fbff; flex:0 0 auto; }
    .integration-body { display:none; padding-top:14px; border-top:1px solid #edf2f7; margin-top:14px; }
    .integration-card.open .integration-body { display:block; }
    .integration-card.open .chev { transform:rotate(180deg); }
    .email-error { color:#b42318; display:block; max-width:340px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
    .credit-page { display:grid; gap:16px; max-width:1680px; margin:0 auto; }
    .credit-hero { overflow:hidden; position:relative; border-color:#d8e5f6; background:
      radial-gradient(circle at 9% 12%, rgba(65,105,225,.16), transparent 26%),
      radial-gradient(circle at 88% 18%, rgba(22,163,74,.12), transparent 30%),
      linear-gradient(135deg,#ffffff,#f7fbff 55%,#fffaf0);
    }
    .credit-hero h1 { font-size:28px; letter-spacing:-.5px; }
    .credit-hero-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:16px; }
    .credit-hero-metric { border:1px solid rgba(47,78,145,.12); background:rgba(255,255,255,.72); border-radius:10px; padding:10px 12px; box-shadow:0 10px 24px rgba(16,24,40,.04); }
    .credit-hero-metric span { display:block; color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.35px; }
    .credit-hero-metric strong { display:block; margin-top:3px; font-size:18px; letter-spacing:-.2px; }
    .credit-shell { display:grid; gap:16px; }
    .credit-toolbar { display:grid; gap:12px; padding:14px; border-color:#c9d7ec; box-shadow:0 16px 36px rgba(16,24,40,.045); }
    .credit-toolbar-top { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; }
    .credit-chip-row { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
    .credit-import-box { display:grid; grid-template-columns:minmax(260px,1fr) minmax(420px,1.1fr); gap:12px; align-items:end; border:1px solid #d9e5f6; background:linear-gradient(135deg,#fbfdff,#fffaf0); border-radius:11px; padding:12px; }
    .credit-import-form { display:grid; grid-template-columns:minmax(180px,1fr) minmax(240px,1.3fr) auto; gap:9px; align-items:end; }
    .credit-import-form select, .credit-import-form input[type=file] { width:100%; min-height:38px; border:1px solid #d6e0ed; border-radius:8px; background:#fff; padding:8px 10px; font:inherit; }
    .credit-import-message { grid-column:1 / -1; border-radius:8px; padding:9px 10px; font-size:12.5px; }
    .credit-import-message.success { color:#067647; background:#ecfdf3; border:1px solid #abefc6; }
    .credit-import-message.error { color:#b42318; background:#fff1f0; border:1px solid #fecdca; }
    .credit-filter-chip, .credit-quick-chip { border:1px solid #d6e0ed; background:#fff; border-radius:10px; min-height:38px; padding:8px 11px; font-weight:650; cursor:pointer; color:#0f172a; transition:.14s ease; }
    .credit-filter-chip { position:relative; padding-top:13px; min-width:64px; }
    .credit-filter-chip::before { content:""; position:absolute; left:9px; right:9px; top:6px; height:4px; border-radius:999px; background:var(--credit-color,#7ea6f8); }
    .credit-filter-chip.active { background:#101828; color:#fff; border-color:#101828; box-shadow:0 10px 24px rgba(16,24,40,.16); }
    .credit-quick-chip.active { border-color:#3863f6; box-shadow:0 0 0 3px rgba(56,99,246,.10); color:#1d4ed8; }
    .credit-filter-chip:hover, .credit-quick-chip:hover { transform:translateY(-1px); box-shadow:0 8px 20px rgba(16,24,40,.10); }
    .credit-kpi-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
    .credit-kpi { background:linear-gradient(180deg,#fff,#fbfdff); border:1px solid #d9e2ef; border-radius:11px; padding:13px 14px; min-height:86px; box-shadow:0 12px 24px rgba(16,24,40,.035); }
    .credit-kpi.dark { background:linear-gradient(135deg,#111827,#263a5f); color:#fff; border-color:#111827; }
    .credit-kpi.green { background:linear-gradient(135deg,#0f6b48,#1fb777); color:#fff; border-color:#0f6b48; }
    .credit-kpi.amber { background:linear-gradient(135deg,#8a5a00,#f2b84a); color:#fff; border-color:#b87913; }
    .credit-kpi span { display:block; color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.35px; font-weight:650; }
    .credit-kpi.dark span, .credit-kpi.green span, .credit-kpi.amber span { color:rgba(255,255,255,.75); }
    .credit-kpi strong { display:block; margin-top:12px; font-size:22px; letter-spacing:-.45px; line-height:1; }
    .credit-kpi small { display:block; margin-top:7px; color:#667085; line-height:1.25; }
    .credit-kpi.dark small, .credit-kpi.green small, .credit-kpi.amber small { color:rgba(255,255,255,.78); }
    .credit-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(390px,.65fr); gap:16px; align-items:stretch; }
    .credit-grid-secondary { grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr); }
    .credit-card { border:1px solid #d9e2ef; background:#fff; border-radius:12px; box-shadow:0 16px 34px rgba(16,24,40,.045); overflow:hidden; min-width:0; }
    .credit-card-head { padding:14px 16px; border-bottom:1px solid #edf1f7; display:flex; justify-content:space-between; align-items:flex-start; gap:10px; background:linear-gradient(180deg,#fff,#fbfdff); }
    .credit-card-head h2 { margin:0; font-size:18px; }
    .credit-card-head p { margin:3px 0 0; color:#667085; font-size:12.5px; }
    .credit-card-body { padding:14px 16px; }
    .credit-donut-wrap { display:grid; grid-template-columns:minmax(220px,310px) minmax(0,1fr); gap:20px; align-items:center; min-height:270px; }
    .credit-donut { width:min(100%,260px); aspect-ratio:1; border-radius:50%; display:grid; place-items:center; justify-self:center; box-shadow:inset 0 0 0 1px rgba(16,24,40,.08), 0 18px 34px rgba(16,24,40,.08); transition:transform .18s ease; }
    .credit-donut:hover { transform:scale(1.015) rotate(-1deg); }
    .credit-donut-center { width:118px; aspect-ratio:1; border-radius:50%; background:#fff; display:grid; place-items:center; text-align:center; box-shadow:inset 0 0 0 1px #e8eef7; }
    .credit-donut-center strong { font-size:18px; line-height:1.05; }
    .credit-donut-center span { display:block; margin-top:4px; font-size:11px; color:#667085; }
    .credit-legend { display:grid; gap:8px; align-content:center; }
    .credit-legend-row { display:grid; grid-template-columns:auto 1fr auto auto; gap:9px; align-items:center; border:1px solid #edf1f7; border-radius:8px; padding:8px 9px; transition:.14s ease; }
    .credit-legend-row:hover { transform:translateX(3px); border-color:#cfdcf0; background:#fbfdff; }
    .credit-dot { width:11px; height:11px; border-radius:4px; background:var(--credit-color,#7ea6f8); }
    .credit-legend-row strong { font-size:12.5px; }
    .credit-legend-row span { color:#667085; font-size:12px; }
    .credit-timeline { display:grid; gap:8px; max-height:520px; overflow:auto; padding-right:10px; }
    .credit-event { display:grid; grid-template-columns:72px minmax(0,1fr) auto; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid #edf1f7; }
    .credit-event > div:nth-child(2) { min-width:0; }
    .credit-event > div:nth-child(2) strong, .credit-event > div:nth-child(2) span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:100%; }
    .credit-event:last-child { border-bottom:0; }
    .credit-date-pill { border:1px solid #d9e2ef; border-radius:9px; padding:7px 8px; text-align:center; background:#f8fbff; }
    .credit-date-pill strong { display:block; font-size:18px; line-height:1; }
    .credit-date-pill span { display:block; color:#667085; font-size:10.5px; margin-top:3px; text-transform:uppercase; }
    .credit-code { display:inline-flex; align-items:center; justify-content:center; min-width:46px; border-radius:8px; padding:4px 8px; color:#fff; background:var(--credit-color,#476cff); font-weight:800; font-size:11px; }
    .credit-progress { height:8px; border-radius:999px; background:#eef2f7; overflow:hidden; }
    .credit-progress i { display:block; height:100%; width:var(--w,0%); background:linear-gradient(90deg,var(--credit-color,#476cff),#9cc0ff); border-radius:inherit; }
    .credit-loans { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
    .credit-loan-card { border:1px solid #dbe4f0; border-left:5px solid var(--credit-color,#476cff); border-radius:9px; padding:12px; background:#fff; transition:.16s ease; }
    .credit-loan-card:hover { transform:translateY(-2px); box-shadow:0 12px 26px rgba(16,24,40,.10); }
    .credit-loan-title { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; }
    .credit-loan-title h3 { margin:0; font-size:14px; }
    .credit-loan-title span { color:#667085; font-size:11.5px; }
    .credit-mini-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; }
    .credit-mini { background:#f8fbff; border:1px solid #edf1f7; border-radius:8px; padding:8px; }
    .credit-mini span { display:block; color:#667085; font-size:10.5px; text-transform:uppercase; letter-spacing:.25px; }
    .credit-mini strong { display:block; margin-top:3px; font-size:13px; }
    .credit-bars { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:8px; align-items:end; min-height:210px; }
    .credit-month-bar { min-width:0; display:grid; gap:6px; align-content:end; text-align:center; }
    .credit-month-bar .bar { display:grid; align-content:end; height:160px; border-radius:10px 10px 5px 5px; background:linear-gradient(180deg,#f8fbff,#eef4ff); overflow:hidden; }
    .credit-month-bar .principal { background:linear-gradient(180deg,#7aa6ff,#c9dcff); height:var(--p,0%); }
    .credit-month-bar .interest { background:linear-gradient(180deg,#f6c85f,#ffe9ac); height:var(--i,0%); }
    .credit-month-bar strong { font-size:11px; }
    .credit-month-bar span { font-size:10.5px; color:#667085; }
    .credit-simulator { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
    .credit-control-box { border:1px solid #e1e8f3; background:#fbfdff; border-radius:10px; padding:13px; display:grid; gap:12px; }
    .credit-range-line { display:grid; grid-template-columns:1fr 120px; gap:12px; align-items:center; }
    .credit-range-line input[type=range] { width:100%; accent-color:#3863f6; }
    .credit-range-value { text-align:right; font-size:20px; font-weight:800; }
    .credit-result-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .credit-result { border:1px solid #d9e2ef; border-radius:9px; padding:10px; background:#fff; }
    .credit-result.good { background:#f0fbf4; border-color:#b8e6c7; }
    .credit-result span { display:block; color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.25px; }
    .credit-result strong { display:block; margin-top:5px; font-size:18px; }
    .credit-table { width:100%; border-collapse:collapse; table-layout:fixed; font-size:12.5px; }
    .credit-table th, .credit-table td { padding:9px 8px; border-bottom:1px solid #edf1f7; vertical-align:middle; }
    .credit-table th { color:#667085; font-size:11px; text-transform:uppercase; letter-spacing:.3px; text-align:left; background:#f8fafc; }
    .credit-table td.right, .credit-table th.right { text-align:right; }
    .credit-table tr:hover td { background:#fbfdff; }
    .credit-note { color:#667085; font-size:12px; line-height:1.45; }
    @media (max-width:1320px) {
      .credit-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
      .credit-grid, .credit-grid-secondary, .credit-simulator { grid-template-columns:1fr; }
      .credit-loans { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .credit-import-box, .credit-import-form { grid-template-columns:1fr; }
    }
    @media (max-width:1280px) {
      .contract-grid { grid-template-columns:1fr; }
      .preview { position:static; grid-template-columns:1fr 1fr; }
    }
    @media (max-width:980px) {
      .app { grid-template-columns:1fr; }
      .sidebar { position:static; border-right:0; border-bottom:1px solid var(--line); }
      .nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .nav-section.visible { padding:3px; }
      .nav-section-toggle { grid-column:1 / -1; }
      .stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .dash-card.c3, .dash-card.c4, .dash-card.c5, .dash-card.c6, .dash-card.c7 { grid-column:span 12; }
      .dash-layout { grid-template-columns:1fr; }
      .source-grid { grid-template-columns:1fr; }
      .dash-search-row, .dash-search-item { grid-template-columns:1fr; }
      .client-period-row { grid-template-columns:1fr; }
      .client-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .restante-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .supplement-form { grid-template-columns:1fr; }
      .grid { grid-template-columns:1fr; }
      .colab-admin-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .access-log-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .access-log-grid { grid-template-columns:1fr; }
      .colab-form, .user-form-grid { grid-template-columns:1fr; }
      .compact-form tbody { grid-template-columns:1fr; }
      .preview { grid-template-columns:1fr; }
      .monthly-values { grid-template-columns:repeat(3,minmax(0,1fr)); }
      .monthly-helper { align-items:flex-start; flex-direction:column; }
      .history-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .email-grid, .email-form-grid { grid-template-columns:1fr; }
      .email-form-grid .wide { grid-column:auto; }
      .email-log-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .roadmap-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .credit-hero-metrics, .credit-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .credit-donut-wrap { grid-template-columns:1fr; justify-items:center; min-height:0; }
      .credit-loans { grid-template-columns:1fr; }
      .credit-result-grid { grid-template-columns:1fr; }
      .credit-bars { grid-template-columns:repeat(6,minmax(0,1fr)); }
      .credit-table { table-layout:auto; font-size:11.5px; }
    }
      .spv-hero { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:18px; align-items:stretch; margin-bottom:18px; }
    .spv-panel { border:1px solid var(--line); border-radius:18px; background:#fff; padding:18px; box-shadow:0 18px 45px rgba(15,23,42,.05); }
    .spv-panel.soft { background:linear-gradient(135deg,#f0fffb,#fffef6); border-color:#bdeee6; }
    .spv-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:14px 0; }
    .spv-stat-card { border:1px solid var(--line); border-radius:14px; padding:14px; background:#fff; }
    .spv-stat-card span, .spv-capability-card small, .spv-signature-card small { color:#64748b; display:block; }
    .spv-stat-card strong { display:block; margin-top:6px; font-size:24px; color:#071224; }
    .spv-form { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
    .spv-form label { display:flex; flex-direction:column; gap:6px; font-weight:700; color:#334155; }
    .spv-form input, .spv-form select, .spv-form textarea { border:1px solid var(--line); border-radius:12px; padding:11px 12px; font:inherit; background:#fff; }
    .spv-form textarea { min-height:74px; resize:vertical; }
    .spv-form .wide { grid-column:span 2; }
    .spv-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:12px; }
    .spv-actions button, .spv-signature-actions button { border:1px solid var(--line); border-radius:12px; padding:10px 14px; font-weight:700; background:#fff; cursor:pointer; }
    .spv-actions .primary { background:#0f766e; color:#fff; border-color:#0f766e; }
    .spv-actions .connect, .spv-signature-actions .connect { background:#2563eb; color:#fff; border-color:#2563eb; }
    .spv-actions button:disabled { background:#eef2f7; color:#64748b; border-color:#d7dee8; cursor:not-allowed; box-shadow:none; }
    .spv-actions .disabled { background:#f1f5f9; color:#64748b; cursor:not-allowed; }
    .spv-token-note { grid-column:1 / -1; border:1px solid #bdeee6; background:#f0fffb; color:#0f513f; border-radius:14px; padding:10px 12px; font-weight:700; }
    .spv-connect-panel p { color:#475569; margin:6px 0 0; line-height:1.5; }
    .spv-connect-status { margin-top:14px; border:1px solid #bfdbfe; background:#eff6ff; color:#1e3a8a; border-radius:14px; padding:12px 14px; font-weight:600; line-height:1.45; }
    .spv-connect-status.ok { border-color:#86efac; background:#f0fdf4; color:#166534; }
    .spv-connect-status.warn { border-color:#fde68a; background:#fffbeb; color:#92400e; }
    .spv-connect-status.pending, .spv-connect-status.error { border-color:#dbe3ef; background:#f8fafc; color:#475569; }
    .spv-policy { display:grid; gap:8px; color:#0f513f; font-weight:700; }
    .spv-list { display:grid; gap:12px; }
    .spv-signature-card { border:1px solid var(--line); border-radius:16px; padding:14px; display:grid; grid-template-columns:minmax(0,1.3fr) minmax(220px,.8fr) auto; gap:14px; align-items:center; background:#fff; }
    .spv-signature-card.conectat { border-color:#86efac; background:#f0fdf4; }
    .spv-signature-card.eroare { border-color:#fecaca; background:#fff1f2; }
    .spv-signature-meta { display:flex; flex-wrap:wrap; gap:8px; color:#475569; }
    .spv-pill { display:inline-flex; align-items:center; border-radius:999px; padding:5px 10px; background:#e2e8f0; color:#334155; font-weight:800; font-size:12px; }
    .spv-pill.conectat, .spv-pill.activ { background:#dcfce7; color:#166534; }
    .spv-pill.pregatit { background:#dbeafe; color:#1d4ed8; }
    .spv-pill.eroare, .spv-pill.revocat { background:#fee2e2; color:#991b1b; }
    .spv-pill.token { background:#fef3c7; color:#92400e; }
    .spv-signature-actions { display:flex; gap:8px; justify-content:flex-end; }
    .spv-signature-actions .danger { color:#b91c1c; }
    .spv-note { grid-column:1 / -1; margin:0; color:#475569; }
    .spv-capabilities { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
    .spv-capability-card { border:1px solid var(--line); border-radius:16px; padding:14px; background:#fff; display:grid; gap:7px; }
    .spv-empty { border:1px dashed var(--line); border-radius:16px; padding:18px; color:#64748b; background:#f8fafc; }
    @media (max-width: 1100px) { .spv-hero, .spv-grid, .spv-capabilities, .spv-signature-card { grid-template-columns:1fr; } .spv-form { grid-template-columns:1fr 1fr; } }
    @media (max-width: 720px) { .spv-form, .spv-form .wide { grid-template-columns:1fr; grid-column:span 1; } }
    .client-work-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.client-work-actions .btn{min-height:36px}.client-work-title-badges{display:inline-flex;gap:8px;flex-wrap:wrap;margin-left:12px;vertical-align:middle}.client-work-meta{gap:8px;flex-wrap:wrap}.client-work-alert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:12px 0}.client-work-alert{border:1px solid #dbe5f4;border-radius:14px;padding:12px 14px;background:#fff;display:flex;flex-direction:column;gap:4px}.client-work-alert strong{font-size:14px}.client-work-alert span{color:#667085;font-size:13px}.client-work-alert.danger{background:#fff1f1;border-color:#fecaca;color:#991b1b}.client-work-alert.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.client-work-alert.info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.client-work-alert.ok{background:#ecfdf5;border-color:#bbf7d0;color:#047857}.client-work-kpi{background:#fff;border:1px solid #dbe5f4;border-radius:14px;padding:12px 14px;box-shadow:0 8px 20px rgba(15,23,42,.05);display:flex;flex-direction:column;gap:3px}.client-work-kpi span{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#8a96aa;font-weight:900}.client-work-kpi strong{font-size:22px;color:#111827}.client-work-kpi small{color:#667085}.client-work-kpi.danger{border-left:4px solid #ef4444}.client-work-kpi.warning{border-left:4px solid #f59e0b}.client-work-kpi.primary{border-left:4px solid #2563eb}.client-workbench{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:10px}.client-work-card{background:#fff;border:1px solid #dbe5f4;border-radius:16px;box-shadow:0 8px 20px rgba(15,23,42,.05);overflow:hidden}.client-work-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #edf2f7;background:#fbfdff}.client-work-card-head h3{margin:0;font-size:16px}.client-work-card-head span{color:#8a96aa;font-size:12px;font-weight:900;text-transform:uppercase}.client-work-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px}.client-compare-table{width:100%;border-collapse:collapse;font-size:13px}.client-compare-table th,.client-compare-table td{padding:9px 12px;border-bottom:1px solid #edf2f7;text-align:left;vertical-align:top}.client-compare-table th{background:#f8fafc;color:#667085;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.client-compare-table tr.needs-review td{background:#fff7ed}.client-compare-table .right{text-align:right}@media(max-width:1100px){.client-workbench{grid-template-columns:1fr}.client-work-actions{justify-content:flex-start}.client-work-info-grid{grid-template-columns:1fr}}
      .client-detail-panel .btn{font-weight:650}.client-detail-panel .client-action-primary{font-weight:700}.client-detail-title{font-weight:760}.client-detail-title .client-badge,.client-work-title-badges .client-badge{font-weight:650}.client-meta-chip{font-weight:500}.client-meta-chip strong{font-weight:650}.client-work-actions .btn{font-size:14px;padding:9px 13px;box-shadow:0 8px 18px rgba(15,23,42,.06)}.client-work-actions .btn.danger{font-weight:700}.client-work-kpi span,.client-work-card-head span,.client-compare-table th{font-weight:700}.client-work-kpi strong{font-size:20px;font-weight:720}.client-work-alert strong,.client-work-card-head h3{font-weight:720}.client-work-info-grid strong,.client-compare-table strong{font-weight:650}.client-compare-table td{font-weight:400}.client-compare-table .flow-badge{font-weight:650}.client-empty-value{color:#98a2b3;font-style:italic;font-weight:400}.client-detail-panel em.client-empty-value{font-style:italic!important;font-weight:400!important;color:#98a2b3!important}.client-work-meta{width:100%;align-items:flex-start}.client-detail-actions-inline{width:100%;flex:0 0 100%;align-self:stretch;justify-content:flex-start!important;margin-top:10px}.client-detail-actions-inline .btn.mini{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.client-detail-actions-inline .btn.mini:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(15,23,42,.13);border-color:#9db8ff;background:#f8fbff}.client-detail-actions-inline .client-action-primary:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff;box-shadow:0 14px 28px rgba(37,99,235,.24)}.client-detail-actions-inline .btn.danger:hover{background:#dc2626;border-color:#dc2626;color:#fff;box-shadow:0 14px 28px rgba(220,38,38,.22)}
      .client-work-card-editor{grid-column:1 / -1}.client-work-card-editor .client-work-card-head{padding:8px 12px}.client-work-card-editor .client-work-card-head h3{font-size:14px}.client-work-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px 9px;padding:9px 12px}.client-work-field{display:grid;gap:3px;min-width:0;color:#667085;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.client-work-field.wide{grid-column:auto}.client-work-field input,.client-work-field textarea{width:100%;height:32px;box-sizing:border-box;border:1px solid #d6deea;border-radius:7px;padding:6px 8px;font:inherit;font-size:12px;font-weight:500;text-transform:none;letter-spacing:0;color:#111827;background:#fff;resize:none}.client-work-field input:focus,.client-work-field textarea:focus{outline:none;border-color:#6e9cff;box-shadow:0 0 0 2px rgba(37,99,235,.10)}.client-work-save-row{display:flex;justify-content:flex-end;padding:0 12px 9px}.client-work-save{min-width:150px;min-height:34px;padding:6px 12px!important;background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}.client-work-save:hover{background:#15803d!important;border-color:#15803d!important}.client-detail-close-x{width:44px!important;height:44px!important;border:1px solid #fca5a5!important;border-radius:12px!important;background:#fee2e2!important;color:#b91c1c!important;font-size:25px!important;font-weight:800!important;box-shadow:0 8px 20px rgba(185,28,28,.14)!important;cursor:pointer}.client-detail-close-x:hover{background:#fecaca!important;border-color:#ef4444!important;color:#991b1b!important}@media(max-width:900px){.client-work-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.client-work-form-grid{grid-template-columns:1fr}.client-work-save{width:100%}}

.client-suspend-action {
      background: #facc15 !important;
      border-color: #eab308 !important;
      color: #713f12 !important;
      font-weight: 800;
    }
    .client-suspend-action:hover {
      background: #eab308 !important;
      border-color: #ca8a04 !important;
    }
    /* Servicii suplimentare: tabel compact, lizibil, tip Excel. */
    table:has(#suppFlowBody) {
      width: 100%;
      min-width: 1180px !important;
      height: auto !important;
      align-self: start;
      table-layout: fixed;
      border-collapse: collapse;
      font-size: 10px;
    }
    .list:has(#suppFlowBody) {
      align-content: start;
      width: 100%;
      max-height: none !important;
      overflow-x: auto !important;
      overflow-y: visible !important;
    }
    #suppFlowBody {
      height: auto !important;
    }
    #suppFlowBody tr {
      height: auto !important;
      min-height: 0 !important;
    }
    table:has(#suppFlowBody) thead th {
      padding: 5px 6px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      font-size: 10px;
      line-height: 1.15;
      background: #eef2f6;
      border-bottom: 1px solid #cbd5e1;
    }
    #suppFlowBody tr:nth-child(odd) > td {
      background: #ffffff;
    }
    #suppFlowBody tr:nth-child(even) > td {
      background: #f2f4f7;
    }
    #suppFlowBody tr:hover > td {
      background: #e8f1ff;
    }
    #suppFlowBody td {
      padding: 4px 6px !important;
      height: 26px !important;
      min-height: 0 !important;
      vertical-align: middle;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      font-size: 10px;
      line-height: 1.2;
      border-bottom: 1px solid #dde3ea;
    }
    #suppFlowBody td * {
      font-size: inherit;
      line-height: inherit;
    }
    #suppFlowBody td br {
      display: none;
    }
    #suppFlowBody td:nth-child(1),
    #suppFlowBody td:nth-child(2),
    #suppFlowBody td:nth-child(3),
    #suppFlowBody td:nth-child(4),
    #suppFlowBody td:nth-child(6),
    #suppFlowBody td:nth-child(7),
    #suppFlowBody td:nth-child(8),
    #suppFlowBody td:nth-child(10) {
      white-space: nowrap;
    }
    #suppFlowBody td:nth-child(5) {
      min-width: 0;
      max-width: none;
    }
    #suppFlowBody td:nth-child(9) {
      min-width: 0;
      max-width: none;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    table:has(#suppFlowBody) th:nth-child(1) { width: 8%; }
    table:has(#suppFlowBody) th:nth-child(2) { width: 5%; }
    table:has(#suppFlowBody) th:nth-child(3) { width: 7%; }
    table:has(#suppFlowBody) th:nth-child(4) { width: 11%; }
    table:has(#suppFlowBody) th:nth-child(5) { width: 18%; }
    table:has(#suppFlowBody) th:nth-child(6) { width: 6%; }
    table:has(#suppFlowBody) th:nth-child(7) { width: 7%; }
    table:has(#suppFlowBody) th:nth-child(8) { width: 8%; }
    table:has(#suppFlowBody) th:nth-child(9) { width: 10%; }
    table:has(#suppFlowBody) th:nth-child(10) { width: 20%; }
    #suppFlowBody td:nth-child(5) > * {
      white-space: nowrap;
      margin-top: 0;
      margin-bottom: 0;
    }
    #suppFlowBody td:nth-child(5) > * + * {
      margin-top: 4px !important;
      padding-top: 4px !important;
      border-top: 1px solid #d7dde5;
    }
    #suppFlowBody .flow-badge,
    #suppFlowBody .btn {
      min-height: 24px;
      padding: 3px 7px;
      white-space: nowrap;
    }
    #suppFlowBody td:last-child {
      white-space: normal;
      overflow: visible;
      line-height: 1;
    }
    #suppFlowBody td:last-child .supp-flow-action-grid {
      display: grid !important;
      grid-template-columns: repeat(2, minmax(82px, 1fr));
      gap: 5px;
      width: 100%;
      align-items: stretch;
      justify-content: stretch;
      white-space: normal;
    }
    #suppFlowBody td:last-child .btn {
      display: inline-flex !important;
      width: 100% !important;
      min-width: 0;
      max-width: none !important;
      height: auto;
      min-height: 28px;
      margin: 0;
      padding: 4px 6px !important;
      box-sizing: border-box;
      align-items: center;
      justify-content: center;
      text-align: center;
      vertical-align: middle;
      overflow: visible;
      text-overflow: clip;
      font-size: 10px !important;
      line-height: 1.15 !important;
      border-radius: 5px;
    }
    @media (max-width: 900px) {
      table:has(#suppFlowBody) {
        min-width: 0;
        font-size: 9px;
      }
      #suppFlowBody td,
      table:has(#suppFlowBody) thead th {
        padding: 5px 6px;
        font-size: 10px;
      }
    }

#view-actualizari .updates-period-strip {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin: 14px 0 16px;
  padding: 16px 18px;
  border: 1px solid #ccd9f1;
  border-radius: 14px;
  background: linear-gradient(135deg, #f7faff 0%, #eef4ff 100%);
}
#view-actualizari .updates-strip-label {
  display: block;
  margin-bottom: 9px;
  color: #53627a;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
#view-actualizari .updates-period-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
#view-actualizari .updates-period-btn {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid #b9c8e5;
  border-radius: 999px;
  background: #fff;
  color: #21324f;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
#view-actualizari .updates-period-btn strong {
  display: grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  border-radius: 999px;
  background: #eaf0fb;
  color: #315aab;
  font-size: 11px;
}
#view-actualizari .updates-period-btn.active {
  border-color: #3563d8;
  background: #3563d8;
  color: #fff;
  box-shadow: 0 8px 18px rgba(53, 99, 216, .2);
}
#view-actualizari .updates-period-btn.active strong {
  background: #fff;
  color: #234cae;
}
#view-actualizari .updates-copy-board {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0 18px;
}
#view-actualizari .updates-copy-card {
  min-width: 0;
  padding: 15px 16px;
  border: 1px solid #d3dded;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(31, 55, 93, .06);
}
#view-actualizari .updates-copy-total { border-top: 4px solid #4f75d8; }
#view-actualizari .updates-copy-services { border-top: 4px solid #d8a33c; }
#view-actualizari .updates-copy-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
#view-actualizari .updates-copy-head span,
#view-actualizari .updates-copy-head strong { display: block; }
#view-actualizari .updates-copy-head span {
  color: #6b7890;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
#view-actualizari .updates-copy-head strong {
  margin-top: 2px;
  color: #14233e;
  font-size: 16px;
}
#view-actualizari .updates-copy-button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 7px 11px;
  border: 1px solid #b8c8e6;
  border-radius: 9px;
  background: #f7faff;
  color: #2850ad;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}
#view-actualizari .updates-copy-button:hover { background: #eaf1ff; }
#view-actualizari .updates-copy-button svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
#view-actualizari .updates-template-text {
  color: #46536b;
  font-size: 12px;
  line-height: 1.5;
}
#view-actualizari .updates-template-text b { color: #162b52; }
@media (max-width: 900px) {
  #view-actualizari .updates-period-strip {
    align-items: flex-start;
    flex-direction: column;
  }
  #view-actualizari .updates-copy-board {
    grid-template-columns: minmax(0, 1fr);
  }
}
