: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; }
    .release-line { margin:0 12px 12px; padding-top:8px; border-top:1px solid var(--line); color:#667085; font-size:10px; line-height:1.4; overflow-wrap:anywhere; }
    .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.anaf { --nav-accent:#2764d8; --nav-bg:#f2f7ff; --nav-active:#e4efff; }
    .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; }
    .contract-flow-card { overflow:hidden; background:linear-gradient(180deg,#fff 0%,#fbfdff 100%); }
    .contract-flow-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:2px 0 14px; }
    .contract-flow-kpi { position:relative; overflow:hidden; display:grid; grid-template-columns:1fr auto; gap:2px 12px; align-items:center; padding:12px 14px; border:1px solid #e2e8f0; border-radius:12px; background:#fff; box-shadow:0 7px 18px rgba(15,23,42,.045); }
    .contract-flow-kpi::before { content:""; position:absolute; inset:0 auto 0 0; width:4px; background:#94a3b8; }
    .contract-flow-kpi span { color:#475467; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
    .contract-flow-kpi strong { grid-row:1 / span 2; grid-column:2; font-size:25px; line-height:1; font-variant-numeric:tabular-nums; }
    .contract-flow-kpi small { color:#7b8798; font-size:11px; }
    .contract-flow-kpi.generated { background:linear-gradient(135deg,#effcf6,#fff); border-color:#bce9d2; }
    .contract-flow-kpi.generated::before { background:#20a66a; }
    .contract-flow-kpi.generated strong { color:#137a4d; }
    .contract-flow-kpi.closed { background:linear-gradient(135deg,#fff3f2,#fff); border-color:#f5cac6; }
    .contract-flow-kpi.closed::before { background:#e35b54; }
    .contract-flow-kpi.closed strong { color:#b43b36; }
    .contract-flow-kpi.net { background:linear-gradient(135deg,#f4f7fb,#fff); }
    .contract-flow-kpi.net.positive::before { background:#2563eb; }
    .contract-flow-kpi.net.positive strong { color:#1d4ed8; }
    .contract-flow-kpi.net.negative::before { background:#d97706; }
    .contract-flow-kpi.net.negative strong { color:#b45309; }
    .contract-flow-legend { display:flex; justify-content:flex-end; align-items:center; gap:16px; margin:0 2px 8px; color:#526071; font-size:12px; }
    .contract-flow-legend span { display:inline-flex; align-items:center; gap:6px; }
    .contract-flow-legend i { display:inline-block; width:13px; height:9px; border-radius:3px; }
    .contract-flow-legend i.generated { background:linear-gradient(180deg,#1aa76c,#83d9af); }
    .contract-flow-legend i.closed { background:linear-gradient(180deg,#e35b54,#f6aaa5); }
    .contract-flow-legend b { min-width:22px; height:18px; display:grid; place-items:center; border-radius:999px; background:#eef2f7; color:#475467; font-size:10px; }
    .contract-flow-scroll { overflow-x:auto; padding:2px 2px 6px; }
    .contract-flow-chart { display:grid; grid-template-columns:repeat(12,minmax(66px,1fr)); gap:7px; min-width:930px; }
    .contract-flow-month { display:grid; grid-template-rows:88px 30px 88px 22px; min-width:0; padding:8px 4px 4px; border:1px solid transparent; border-radius:12px; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
    .contract-flow-month:hover { transform:translateY(-2px); border-color:#cfddf2; background:#f8fbff; }
    .contract-flow-month.confirmed { border-color:#d8e7fb; background:linear-gradient(180deg,#f8fbff,#fff); box-shadow:inset 0 3px 0 #9fc2f2; }
    .contract-flow-month.current { border-color:#f0cf69; background:linear-gradient(180deg,#fffdf3,#fff8d9); box-shadow:0 9px 20px rgba(180,128,14,.10); }
    .contract-flow-gain,.contract-flow-loss { display:flex; flex-direction:column; align-items:center; min-height:0; font-size:11px; font-weight:800; font-variant-numeric:tabular-nums; }
    .contract-flow-gain { justify-content:flex-end; color:#137a4d; }
    .contract-flow-loss { justify-content:flex-start; color:#b43b36; }
    .contract-flow-gain i,.contract-flow-loss i { display:block; width:28px; min-height:4px; border-radius:7px 7px 2px 2px; }
    .contract-flow-gain i { margin-top:5px; background:linear-gradient(180deg,#1aa76c,#9ce3c0); box-shadow:0 5px 12px rgba(22,163,74,.16); }
    .contract-flow-loss i { margin-bottom:5px; border-radius:2px 2px 7px 7px; background:linear-gradient(180deg,#f7b3ae,#df4e48); box-shadow:0 5px 12px rgba(220,38,38,.13); }
    .contract-flow-baseline { display:grid; place-items:center; position:relative; border-top:1px solid #d7dfeb; border-bottom:1px solid #d7dfeb; background:rgba(248,250,252,.78); }
    .contract-flow-baseline b { min-width:30px; padding:3px 6px; border-radius:999px; font-size:10px; line-height:1.1; font-variant-numeric:tabular-nums; text-align:center; }
    .contract-flow-baseline b.positive { color:#1d4ed8; background:#eaf1ff; }
    .contract-flow-baseline b.negative { color:#b45309; background:#fff1dc; }
    .contract-flow-baseline b.neutral { color:#667085; background:#edf1f6; }
    .contract-flow-label { display:grid; place-items:end center; color:#667085; font-size:11px; text-transform:capitalize; }
    .contract-flow-empty { padding:34px; border:1px dashed #d6deea; border-radius:12px; color:#667085; text-align:center; background:#fbfdff; }
    @media (max-width:760px) {
      .contract-flow-summary { grid-template-columns:1fr; }
      .contract-flow-legend { justify-content:flex-start; flex-wrap:wrap; }
    }
    .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-pagination { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:10px 0 18px; padding:10px 12px; border:1px solid #dbe3ef; border-radius:9px; background:#f8fafc; color:#475569; font-size:12px; }
    .client-pagination.hidden { display:none; }
    .client-pagination-actions { display:flex; align-items:center; gap:10px; }
    .client-pagination-actions button:disabled { opacity:.45; cursor:not-allowed; }
    .client-pagination-label { font-variant-numeric:tabular-nums; color:#1e293b; }
    .client-table-wrap { max-width:100%; overflow-x:auto; overflow-y:visible; max-height:none; border:1px solid var(--line); border-radius:7px; background:#fff; overscroll-behavior-inline:contain; }
.client-table { width:100%; min-width:1200px; 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 { box-sizing:border-box; padding:6px 7px; border-right:1px solid #edf0f4; vertical-align:middle; 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,
.client-table .fiscal-cell { min-width:0; max-width:none; }
    .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; }
    .partner-share-badge { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; min-height:18px; padding:1px 6px; border:1px solid #fecaca; border-radius:999px; background:#fee2e2; color:#b91c1c; font-size:9px; font-weight:900; line-height:1; letter-spacing:.02em; }
    .client-table tfoot .partner-rate-deduction-row td { background:#fff7f7; color:#b91c1c; font-weight:800; }
    .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:4px; min-width:0; }
    .client-fiscal-edit { display:block; flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; 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; }
    .client-payment-notice-link { border:0; background:transparent; color:inherit; padding:2px 0; font:inherit; font-weight:800; text-align:right; cursor:pointer; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:3px; }
    .client-payment-notice-link:hover { color:#b91c1c; text-decoration-style:solid; }
    .client-payment-notice-link:focus-visible { outline:2px solid #2563eb; outline-offset:3px; border-radius:4px; }
    .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-number-stack { display:flex; align-items:center; gap:3px; min-width:0; overflow:hidden; }
.client-table .contract-number-stack .manual-billing-badge { flex:0 0 auto; margin:0; padding:2px 5px; font-size:9px; }
.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(5),
.client-table td:nth-child(5),
.client-table th:nth-child(6),
.client-table td:nth-child(6) {
  padding-left:4px;
  padding-right:4px;
}
.client-table th:nth-child(n+10) button {
  gap:3px;
  padding-left:5px;
  padding-right:5px;
  font-size:11px;
}
    .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:hidden; height:min(440px,55vh); background:#f6f8fb; }
    .email-preview-iframe { display:block; width:100%; height:100%; border:0; background:#fff; }
    .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 { font-weight:750; }
    .debt-amount.debt-positive { color:#991b1b; background:#fff1f2; }
    .debt-amount.debt-zero { color:#166534; background:#ecfdf3; }
    .recovery-row-debt td { border-bottom-color:#fecdd3; }
    .recovery-row-ready td { background:#f0fdf4; border-bottom-color:#bbf7d0; }
    .recovery-row-closed td { background:#f8fafc; color:#64748b; }
    .recovery-status-note { display:block; margin-top:5px; color:#64748b; line-height:1.25; }
    .flow-badge.recovery-ready { background:#dcfce7; color:#166534; border:1px solid #86efac; }
    .flow-badge.recovery-debt { background:#fee2e2; color:#991b1b; border:1px solid #fca5a5; }
    .btn.recovery-summons { background:#fff7ed; border-color:#f59e0b; color:#9a3412; font-weight:700; }
    .btn.recovery-summons:hover { background:#ffedd5; border-color:#d97706; }
    .recovery-filter-grid { width:100%; display:grid; grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(170px,1fr)); gap:10px; margin-top:12px; }
    .recovery-filter-grid label { display:flex; flex-direction:column; gap:5px; color:#475569; font-size:12px; font-weight:700; }
    .recovery-filter-grid input,
    .recovery-filter-grid select { min-height:39px; border:1px solid #cbd5e1; border-radius:9px; background:#fff; color:#0f172a; padding:8px 10px; font:inherit; font-weight:500; }
    .recovery-filter-grid input:focus,
    .recovery-filter-grid select:focus { outline:2px solid #bfdbfe; border-color:#3b82f6; }
    @media (max-width:1100px) { .recovery-filter-grid { grid-template-columns:1fr 1fr; } }
    @media (max-width:700px) { .recovery-filter-grid { grid-template-columns:1fr; } }
    .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-recurring-planned { background:#ecfdf3; color:#166534; box-shadow:inset 0 0 0 1px #86efac; 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; }
    .client-table .month-inflation.inflation-services { background:#f1e9ff !important; color:#5b21b6; box-shadow:inset 0 0 0 1px #d8c7ff; font-weight:600; }
    .client-table .month-inflation.inflation-total { background:#c4b5fd !important; color:#2e1065; box-shadow:inset 0 0 0 1px #a78bfa; font-weight:600; }
    .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:0; max-width:100%; overflow:hidden; }
    .update-date-main { display:grid; min-width:0; gap:1px; line-height:1.15; }
    .update-date-main > span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .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-client-filters { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:14px 0 12px; }
    .closed-client-filter { display:inline-flex; align-items:center; gap:7px; border:1px solid #d7e2f2; background:#fff; color:#344054; border-radius:999px; padding:7px 11px; cursor:pointer; font-size:12px; font-weight:700; transition:.14s ease; }
    .closed-client-filter:hover { border-color:#93b4f4; background:#f8fbff; transform:translateY(-1px); }
    .closed-client-filter.active { border-color:#2563eb; color:#1d4ed8; background:#eaf2ff; box-shadow:0 0 0 2px rgba(37,99,235,.10); }
    .closed-client-filter span { min-width:21px; height:21px; border-radius:999px; background:#eef4ff; color:#1d4ed8; display:grid; place-items:center; font-size:11px; padding:0 6px; }
    .closed-client-filter.active span { background:#2563eb; color:#fff; }
    .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(330px, 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:1430px; }
    .anexa-row-actions { min-width:430px; white-space:nowrap; }
    .anexa-row-actions .btn { min-height:34px; }
    .anexa-row-actions .btn + .btn { margin-left:5px; }
    .anexa-preview-btn {
      background:#2563eb;
      border-color:#2563eb;
      color:#fff;
      box-shadow:0 5px 12px rgba(37,99,235,.16);
    }
    .anexa-preview-btn:hover {
      background:#1d4ed8;
      border-color:#1d4ed8;
      color:#fff;
      box-shadow:0 8px 16px rgba(37,99,235,.22);
    }
    .anexa-download-btn,
    .anexa-generate-excel-btn {
      background:#facc15;
      border-color:#eab308;
      color:#422006;
      font-weight:750;
      box-shadow:0 5px 12px rgba(202,138,4,.17);
    }
    .anexa-download-btn:hover,
    .anexa-generate-excel-btn:hover {
      background:#eab308;
      border-color:#ca8a04;
      color:#2b1603;
      box-shadow:0 8px 16px rgba(202,138,4,.23);
      transform:translateY(-1px);
    }
    .anexa-download-btn:disabled { opacity:.45; cursor:not-allowed; box-shadow:none; transform:none; }
    .anexa-delete-btn {
      background:#dc2626;
      border-color:#dc2626;
      color:#fff;
      font-weight:750;
      box-shadow:0 5px 12px rgba(220,38,38,.17);
    }
    .anexa-delete-btn:hover {
      background:#b91c1c;
      border-color:#b91c1c;
      color:#fff;
      box-shadow:0 8px 16px rgba(220,38,38,.23);
      transform:translateY(-1px);
    }
    .anexa-chart-card { margin-top:14px; border:1px solid #d6e5f8; border-radius:10px; background:linear-gradient(180deg,#fff,#f8fbff); padding:14px 16px 10px; box-shadow:0 8px 20px rgba(37,99,235,.055); }
    .anexa-chart-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:8px; }
    .anexa-chart-head h3 { margin:2px 0 0; font-size:16px; color:#132f4c; }
    .anexa-chart-legend { display:flex; align-items:center; justify-content:flex-end; gap:14px; flex-wrap:wrap; font-size:12px; color:#475569; }
    .anexa-chart-legend span { display:inline-flex; align-items:center; gap:6px; }
    .anexa-chart-legend i { width:11px; height:11px; border-radius:3px; display:inline-block; }
    .anexa-chart-legend i.is-fees { background:#2563eb; }
    .anexa-chart-legend i.is-supplements { background:#f59e0b; }
    .anexa-chart-legend .anexa-chart-note { color:#7b8798; font-size:11px; }
    .anexa-chart { min-height:260px; overflow-x:auto; }
    .anexa-chart svg { display:block; width:100%; min-width:760px; height:270px; }
    .anexa-chart-grid { stroke:#dce5f0; stroke-width:1; }
    .anexa-chart-axis-label { fill:#738198; font-size:11px; }
    .anexa-chart-month { fill:#334155; font-size:12px; font-weight:650; }
    .anexa-chart-bar { transition:opacity .15s ease; }
    .anexa-chart-bar.is-fees { fill:#2563eb; }
    .anexa-chart-bar.is-supplements { fill:#f59e0b; }
    .anexa-chart-trend { fill:none; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; opacity:.9; }
    .anexa-chart-trend.is-fees { stroke:#1d4ed8; }
    .anexa-chart-trend.is-supplements { stroke:#d97706; }
    .anexa-chart .is-empty { opacity:.25; }
    .anexa-chart-empty { min-height:220px; display:grid; place-items:center; color:#718096; text-align:center; padding:20px; }
    .anexa-status-heading,
    .anexa-status-cell { min-width:122px; text-align:center; white-space:nowrap; }
    .anexa-status-cell { vertical-align:middle; }
    .anexa-status-btn {
      width:112px;
      min-height:34px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:5px;
      border:1px solid transparent;
      border-radius:8px;
      padding:7px 10px;
      font:inherit;
      font-size:12px;
      font-weight:750;
      line-height:1.1;
      color:#fff;
      cursor:pointer;
      box-shadow:0 5px 12px rgba(15,23,42,.08);
      transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
    }
    .anexa-status-btn.is-pending { background:#dc2626; border-color:#dc2626; }
    .anexa-status-btn.is-pending:not(:disabled):hover {
      background:#b91c1c;
      border-color:#b91c1c;
      box-shadow:0 8px 16px rgba(220,38,38,.20);
      transform:translateY(-1px);
    }
    .anexa-status-btn.is-complete {
      background:#16a34a;
      border-color:#16a34a;
      box-shadow:0 5px 12px rgba(22,163,74,.16);
    }
    .anexa-status-btn:disabled { opacity:1; cursor:default; }
    .anexa-status-btn.is-readonly { opacity:.58; }
    .anexa-status-btn.is-loading { cursor:wait; }
    .anexa-status-btn:focus-visible {
      outline:3px solid rgba(37,99,235,.25);
      outline-offset:2px;
    }
    .supplement-form { display:grid; grid-template-columns:1.25fr 1.35fr 1.1fr .65fr auto; gap:10px; align-items:end; margin:12px 0; }
    .supplement-nonrecurring { grid-column:1 / -1; margin-top:2px; border:1px solid #d8e2ef; border-radius:9px; background:#f8fbff; overflow:hidden; }
    .supplement-nonrecurring summary { padding:10px 12px; color:#31516f; font-size:12px; font-weight:750; cursor:pointer; list-style-position:inside; user-select:none; }
    .supplement-nonrecurring[open] { border-color:#9cb9dd; background:#f3f8ff; box-shadow:0 0 0 2px rgba(49,94,234,.06); }
    .supplement-nonrecurring[open] summary { border-bottom:1px solid #d8e5f5; color:#183d73; }
    .supplement-nonrecurring-fields { display:grid; grid-template-columns:1fr .75fr 1.3fr 1fr; gap:10px; padding:12px 12px 8px; }
    .supplement-nonrecurring-fields label { color:#344054; font-size:12px; font-weight:700; }
    .supplement-nonrecurring-hint { padding:0 12px 12px; color:#52657c; }
    .supp-client-kind { display:inline-flex; align-items:center; margin-top:5px; padding:2px 7px; border:1px solid #b9cdea; border-radius:999px; background:#eef5ff; color:#31516f; font-size:10px; font-weight:750; }
    .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-automation-guard {
      --guard-accent:#64748b;
      --guard-ink:#334155;
      --guard-soft:#f8fafc;
      --guard-border:#cbd5e1;
      margin-bottom:14px;
      padding:14px 16px;
      border:1px solid var(--guard-border);
      border-left:5px solid var(--guard-accent);
      border-radius:13px;
      background:linear-gradient(135deg,#fff,var(--guard-soft));
      color:var(--guard-ink);
      box-shadow:0 9px 25px rgba(15,23,42,.045);
    }
    .recurring-automation-guard.is-ready { --guard-accent:#059669; --guard-ink:#14532d; --guard-soft:#ecfdf5; --guard-border:#86efac; }
    .recurring-automation-guard.is-warning,
    .recurring-automation-guard.is-loading { --guard-accent:#d97706; --guard-ink:#78350f; --guard-soft:#fffbeb; --guard-border:#fcd34d; }
    .recurring-automation-guard.is-critical { --guard-accent:#dc2626; --guard-ink:#7f1d1d; --guard-soft:#fef2f2; --guard-border:#fca5a5; }
    .recurring-automation-guard-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
    .recurring-automation-guard-heading { display:flex; align-items:flex-start; gap:11px; min-width:0; }
    .recurring-automation-guard-heading strong { display:block; margin-top:1px; color:var(--guard-ink); font-size:15px; line-height:1.25; }
    .recurring-automation-guard-heading > div > div { margin-top:3px; color:#526174; font-size:12px; line-height:1.4; }
    .recurring-automation-guard-icon {
      display:grid;
      flex:0 0 28px;
      width:28px;
      height:28px;
      place-items:center;
      border-radius:50%;
      background:var(--guard-accent);
      color:#fff;
      font-size:15px;
      font-weight:900;
      box-shadow:0 5px 14px color-mix(in srgb,var(--guard-accent) 25%,transparent);
    }
    .recurring-automation-guard-refresh {
      flex:0 0 auto;
      border-color:color-mix(in srgb,var(--guard-accent) 45%,#fff);
      background:#fff;
      color:var(--guard-ink);
      font-weight:800;
    }
    .recurring-automation-guard-refresh:disabled { cursor:wait; opacity:.7; }
    .recurring-automation-guard-loading,
    .recurring-automation-guard-empty { margin-top:12px; padding:10px 12px; border:1px dashed var(--guard-border); border-radius:9px; background:rgba(255,255,255,.72); color:#64748b; font-size:12px; }
    .recurring-automation-guard-meta { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin-top:13px; }
    .recurring-automation-chip {
      display:inline-flex;
      align-items:center;
      gap:4px;
      padding:5px 8px;
      border:1px solid #d8e0eb;
      border-radius:999px;
      background:rgba(255,255,255,.86);
      color:#475569;
      font-size:11px;
      white-space:nowrap;
    }
    .recurring-automation-chip.is-ok { border-color:#a7e8c9; background:#f0fdf7; color:#047857; }
    .recurring-automation-chip.is-bad { border-color:#fecaca; background:#fff1f2; color:#b91c1c; }
    .recurring-automation-chip.is-protected { border-color:#f5d58b; background:#fffbeb; color:#b45309; }
    .recurring-automation-chip.is-repaired { border-color:#bfdbfe; background:#eff6ff; color:#1d4ed8; }
    .recurring-automation-controls { display:grid; grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr); align-items:stretch; gap:10px; margin-top:14px; }
    .recurring-automation-control { display:grid; grid-template-columns:38px minmax(0,1fr) auto; align-items:center; gap:11px; min-width:0; padding:12px; border:1px solid #d7e0eb; border-radius:12px; background:rgba(255,255,255,.92); box-shadow:0 6px 18px rgba(15,23,42,.045); }
    .recurring-automation-control.is-active { border-color:#8dd9b7; background:linear-gradient(135deg,#fff,#edfcf5); }
    .recurring-automation-control.is-locked { border-style:dashed; background:rgba(248,250,252,.8); }
    .recurring-automation-control-step { display:grid; width:36px; height:36px; place-items:center; border-radius:11px; background:#e8eef8; color:#40526b; font-size:14px; font-weight:900; }
    .recurring-automation-control.is-active .recurring-automation-control-step { background:#d9f7e8; color:#087443; }
    .recurring-automation-control-copy { display:grid; gap:2px; min-width:0; }
    .recurring-automation-control-copy > span { color:#7b8798; font-size:9px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
    .recurring-automation-control-copy strong { color:#172033; font-size:13px; }
    .recurring-automation-control-copy small { color:#64748b; font-size:10px; line-height:1.35; }
    .recurring-automation-control-link { display:grid; place-items:center; color:#94a3b8; font-size:19px; font-weight:900; }
    .recurring-automation-control-button { min-width:164px; min-height:38px; border-radius:9px; font-size:11px; font-weight:850; }
    .recurring-automation-control-button.is-start { border-color:#2454d6; background:linear-gradient(135deg,#315eea,#2148bd); color:#fff; box-shadow:0 7px 16px rgba(49,94,234,.2); }
    .recurring-automation-control-button.is-email-start { border-color:#07804b; background:linear-gradient(135deg,#0b9b5d,#077744); color:#fff; box-shadow:0 7px 16px rgba(11,155,93,.18); }
    .recurring-automation-control-button.is-stop { border-color:#efb0b0; background:#fff7f7; color:#a52626; }
    .recurring-automation-control-button:disabled { cursor:not-allowed; opacity:.48; box-shadow:none; }
    .recurring-automation-guard-times { display:flex; align-items:center; gap:8px 18px; flex-wrap:wrap; margin-top:9px; color:#64748b; font-size:10px; }
    .recurring-automation-guard-times strong { color:#334155; }
    .recurring-automation-stale { color:#b45309; font-weight:750; }
    .recurring-automation-batches { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:12px; }
    .recurring-automation-batch {
      min-width:0;
      padding:10px;
      border:1px solid #dbe3ed;
      border-radius:10px;
      background:rgba(255,255,255,.9);
      box-shadow:0 5px 13px rgba(15,23,42,.035);
    }
    .recurring-automation-batch.is-ready { border-color:#b7e4cf; }
    .recurring-automation-batch.is-warning { border-color:#f5d58b; background:#fffdf7; }
    .recurring-automation-batch.is-critical { border-color:#fecaca; background:#fff8f8; }
    .recurring-automation-batch-head { display:flex; align-items:center; justify-content:space-between; gap:7px; margin-bottom:7px; }
    .recurring-automation-batch-index { display:grid; width:20px; height:20px; place-items:center; border-radius:6px; background:#e2e8f0; color:#475569; font-size:10px; font-weight:900; }
    .recurring-automation-batch-state { color:#64748b; font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.035em; }
    .recurring-automation-batch.is-ready .recurring-automation-batch-state { color:#047857; }
    .recurring-automation-batch.is-warning .recurring-automation-batch-state { color:#b45309; }
    .recurring-automation-batch.is-critical .recurring-automation-batch-state { color:#b91c1c; }
    .recurring-automation-batch-date { display:block; color:#172033; font-size:15px; line-height:1.2; }
    .recurring-automation-batch-count { margin-top:4px; color:#475569; font-size:11px; font-weight:750; }
    .recurring-automation-batch-jobs { margin-top:3px; color:#64748b; font-size:9px; line-height:1.35; }
    .recurring-automation-batch-progress { margin-top:5px; color:#475569; font-size:9px; font-weight:700; }
    .recurring-automation-batch-problems { display:flex; gap:4px; flex-wrap:wrap; margin-top:7px; }
    .recurring-automation-batch-problem,
    .recurring-automation-batch-repaired { padding:3px 5px; border-radius:999px; background:#fee2e2; color:#b91c1c; font-size:8px; font-weight:850; }
    .recurring-automation-batch-repaired { background:#dbeafe; color:#1d4ed8; }
    .recurring-automation-affected { margin-top:12px; border:1px solid #f7b6b6; border-radius:10px; background:rgba(255,255,255,.78); overflow:hidden; }
    .recurring-automation-affected summary { padding:9px 11px; color:#991b1b; font-size:11px; font-weight:850; cursor:pointer; }
    .recurring-automation-affected-list { border-top:1px solid #fee2e2; }
    .recurring-automation-affected-row { display:grid; grid-template-columns:minmax(180px,.8fr) minmax(250px,1.7fr) auto; align-items:center; gap:10px; padding:8px 11px; border-bottom:1px solid #f3e4e4; color:#475569; font-size:10px; }
    .recurring-automation-affected-row:last-child { border-bottom:0; }
    .recurring-automation-affected-row > div { display:flex; align-items:center; gap:6px; min-width:0; }
    .recurring-automation-affected-row strong { color:#7f1d1d; overflow-wrap:anywhere; }
    .recurring-automation-repairing { padding:3px 6px; border-radius:999px; background:#dbeafe; color:#1d4ed8; font-weight:800; white-space:nowrap; }
    .recurring-guard-action { white-space:nowrap; }
    .recurring-automation-affected-more { padding:8px 11px; color:#64748b; font-size:10px; font-style:italic; }
    .recurring-summary { display:grid; grid-template-columns:repeat(4,minmax(180px,1fr)); gap:12px; margin-bottom:14px; }
    .recurring-upcoming-section { margin:0 0 14px; padding:16px; border:1px solid #dce5f1; border-radius:16px; background:linear-gradient(145deg,#fff,#f8fbff); box-shadow:0 10px 28px rgba(15,23,42,.045); }
    .recurring-upcoming-head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:13px; }
    .recurring-upcoming-head span { display:block; margin-bottom:3px; color:#315eea; font-size:9px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
    .recurring-upcoming-head h2 { margin:0; color:#172033; font-size:18px; line-height:1.2; }
    .recurring-upcoming-head p { margin:4px 0 0; color:#64748b; font-size:11px; }
    .recurring-upcoming-head .recurring-upcoming-legend { flex:0 0 auto; margin:0; padding:6px 9px; border:1px solid #d8e4f7; border-radius:999px; background:#f2f7ff; color:#47658f; font-size:9px; letter-spacing:.02em; text-transform:none; }
    .recurring-upcoming { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; }
    .recurring-upcoming-card { position:relative; display:flex; align-items:flex-start; gap:11px; min-height:108px; padding:14px; overflow:hidden; border:1px solid #a8c4ff; border-radius:13px; background:linear-gradient(145deg,#fff,#edf4ff); box-shadow:0 8px 22px rgba(49,94,234,.07); color:#172033; }
    .recurring-upcoming-card::before { position:absolute; inset:0 auto 0 0; width:4px; background:#315eea; content:""; }
    .recurring-upcoming-card:first-child { transform:translateY(-2px); border-color:#7099f4; box-shadow:0 12px 26px rgba(49,94,234,.13); }
    .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-card.tertiary { border-color:#9fd8bd; background:linear-gradient(135deg,#f6fffa,#eafaf2); box-shadow:0 8px 22px rgba(16,143,84,.07); }
    .recurring-upcoming-card.quaternary { border-color:#c8b7ed; background:linear-gradient(135deg,#fbf9ff,#f3efff); box-shadow:0 8px 22px rgba(112,74,190,.07); }
    .recurring-upcoming-card.secondary::before { background:#b78613; }
    .recurring-upcoming-card.tertiary::before { background:#128454; }
    .recurring-upcoming-card.quaternary::before { background:#7350b5; }
    .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-card.tertiary .recurring-upcoming-icon { background:#128454; }
    .recurring-upcoming-card.quaternary .recurring-upcoming-icon { background:#7350b5; }
    .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:grid; gap:3px; }
    .recurring-upcoming-main strong { color:#10244f; font-size:19px; line-height:1.2; }
    .recurring-upcoming-main span { color:#1f3f80; font-size:13px; font-weight:800; }
    .recurring-upcoming-card.secondary .recurring-upcoming-main strong { color:#6b4c08; }
    .recurring-upcoming-card.secondary .recurring-upcoming-main span { color:#8a630c; }
    .recurring-upcoming-card.tertiary .recurring-upcoming-main strong { color:#155f43; }
    .recurring-upcoming-card.tertiary .recurring-upcoming-main span { color:#19704f; }
    .recurring-upcoming-card.quaternary .recurring-upcoming-main strong { color:#53398a; }
    .recurring-upcoming-card.quaternary .recurring-upcoming-main span { color:#6446a2; }
    .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-effective-notice { display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 9px;padding:9px 11px;border:1px solid #86efac;border-radius:9px;background:#ecfdf3;color:#166534;font-size:12px; }
    .recurring-effective-notice span { color:#3f5f4b; }
    .recurring-calendar-legend { display:flex;gap:7px;flex-wrap:wrap;margin:0 0 10px;font-size:10px;font-weight:700; }
    .recurring-calendar-legend span { padding:4px 7px;border-radius:999px;border:1px solid transparent; }
    .recurring-calendar-legend .future { background:#ecfdf3;color:#166534;border-color:#86efac; }
    .recurring-calendar-legend .frozen { background:#f1f5f9;color:#64748b;border-color:#cbd5e1; }
    .recurring-calendar-legend .inflation-services { background:#f1e9ff;color:#5b21b6;border-color:#d8c7ff; }
    .recurring-calendar-legend .inflation-total { background:#c4b5fd;color:#2e1065;border-color:#a78bfa; }
    .recurring-month-box { display:grid;gap:3px;padding:5px;border:1px solid #86efac;border-radius:8px;background:#ecfdf3;color:#166534;font-size:10px;white-space:nowrap; }
    .recurring-month-box > span { display:flex;align-items:center;justify-content:space-between;gap:4px; }
    .recurring-month-box input { width:100%;height:32px;padding:5px 8px;border:1px solid #86efac;border-radius:6px;background:#fff; }
    .recurring-month-box.is-frozen { border-color:#cbd5e1;background:#f1f5f9;color:#64748b; }
    .recurring-month-box.is-frozen input { border-color:#d7dee8;background:#e9eef5;color:#64748b;cursor:not-allowed; }
    .recurring-month-lock { padding:1px 4px;border-radius:999px;background:#dbe3ec;color:#526174;font-size:8px;font-weight:800;text-transform:uppercase; }
    .recurring-month-box.recurring-month-inflation.inflation-services { border-color:#d8c7ff;background:#f1e9ff;color:#5b21b6; }
    .recurring-month-box.recurring-month-inflation.inflation-services input { border-color:#cbb7fb; }
    .recurring-month-box.recurring-month-inflation.inflation-total { border-color:#a78bfa;background:#c4b5fd;color:#2e1065; }
    .recurring-month-box.recurring-month-inflation.inflation-total input { border-color:#8b5cf6; }
    .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-action-explain[aria-disabled="true"] { background:#fee2e2 !important; border-color:#fca5a5 !important; color:#991b1b !important; opacity:1; cursor:help; box-shadow:none; }
    .recurring-action-explain[aria-disabled="true"]:hover { transform:none; }
    .recurring-action-explain[aria-disabled="true"]:focus-visible { outline:3px solid rgba(37,99,235,.25); outline-offset:2px; }
    .recurring-contract-prepare { margin-top:14px; padding:14px; border:1px solid #c4b5fd; border-radius:12px; background:#f5f3ff; color:#4c1d95; }
    .recurring-contract-prepare-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; }
    .recurring-contract-prepare-head strong { display:block; color:#4c1d95; }
    .recurring-contract-prepare-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:8px; margin-top:10px; }
    .recurring-contract-prepare-grid span { padding:8px 10px; border:1px solid #ddd6fe; border-radius:9px; background:#fff; color:#5b21b6; font-size:12px; }
    .recurring-contract-prepare-errors { margin:10px 0 0 18px; color:#991b1b; }
    .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-smartbill-work-queue { display:flex; gap:7px; align-items:center; flex-wrap:wrap; padding-right:8px; border-right:1px solid #dbe3ef; }
    .smartbill-work-queue { display:inline-flex; align-items:center; gap:7px; font-weight:750; box-shadow:none; }
    .smartbill-work-queue strong { min-width:26px; padding:2px 7px; border-radius:999px; text-align:center; font-size:11px; background:rgba(255,255,255,.78); }
    .smartbill-work-queue.pending { color:#9a5700; background:#fff7df; border-color:#f4c86a; }
    .smartbill-work-queue.pending.is-selected { color:#fff; background:#c47d08; border-color:#a86400; box-shadow:0 5px 14px rgba(196,125,8,.22); }
    .smartbill-work-queue.activated { color:#087443; background:#ecfdf3; border-color:#86d7ac; }
    .smartbill-work-queue.activated.is-selected { color:#fff; background:#0b8f56; border-color:#087443; box-shadow:0 5px 14px rgba(11,143,86,.2); }
    .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; }
    .recurring-status-stack { display:flex; flex-direction:column; align-items:flex-start; gap:5px; }
    .recurring-mode { display:inline-flex; align-items:center; padding:3px 7px; border-radius:999px; font-size:10px; font-weight:700; line-height:1.2; }
    .recurring-mode.manual { color:#475569; background:#f1f5f9; border:1px solid #cbd5e1; }
    .recurring-mode.automatic { color:#1d4ed8; background:#dbeafe; border:1px solid #93c5fd; }
    .recurring-mode.blocked { color:#92400e; background:#fef3c7; border:1px solid #fcd34d; }
    .recurring-automation-notice { margin:0 0 12px; padding:10px 12px; border:1px solid #fcd34d; border-radius:9px; background:#fffbeb; color:#92400e; font-size:12px; }
    @media (max-width:1250px) {
      .recurring-automation-batches { grid-template-columns:repeat(2,minmax(0,1fr)); }
      .recurring-upcoming { grid-template-columns:repeat(2,minmax(280px,1fr)); }
    }
    @media (max-width:900px) {
      .recurring-automation-guard-head { align-items:stretch; flex-direction:column; }
      .recurring-automation-guard-refresh { align-self:flex-start; }
      .recurring-automation-controls { grid-template-columns:1fr; }
      .recurring-automation-control-link { min-height:12px; transform:rotate(90deg); }
      .recurring-automation-control { grid-template-columns:38px minmax(0,1fr); }
      .recurring-automation-control-button { grid-column:1/-1; width:100%; }
      .recurring-automation-batches { grid-template-columns:1fr; }
      .recurring-automation-affected-row { grid-template-columns:1fr; }
      .recurring-summary { grid-template-columns:1fr 1fr; }
      .recurring-upcoming { grid-template-columns:1fr; }
      .recurring-upcoming-head { align-items:flex-start; flex-direction:column; }
      .recurring-line { grid-template-columns:1fr 1fr; }
      .recurring-line input:first-child { grid-column:1/-1; }
      .recurring-smartbill-work-queue { width:100%;border-right:0;padding-right:0; }
    }
    .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; }
    .offer-hero-compact { display:flex; align-items:center; justify-content:space-between; gap:20px; }
    .offer-flow-note { display:flex; align-items:center; gap:10px; min-width:260px; border:1px solid #cfe0f7; border-radius:14px; padding:11px 13px; background:rgba(255,255,255,.82); }
    .offer-flow-note strong { color:#1747b8; font-size:20px; white-space:nowrap; }
    .offer-flow-note span { color:#52637a; font-size:12px; line-height:1.35; }
    .offer-flow-nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; position:sticky; top:8px; z-index:12; }
    .offer-flow-card { position:relative; min-height:82px; border:1px solid #dbe5f2; border-radius:16px; background:#fff; color:#344054; padding:13px 92px 13px 14px; font:inherit; cursor:pointer; display:grid; grid-template-columns:42px minmax(0,1fr); align-items:center; gap:11px; text-align:left; box-shadow:0 10px 28px rgba(16,24,40,.04); transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease, background .16s ease; }
    .offer-flow-card:hover { transform:translateY(-1px); border-color:#bfd3f2; box-shadow:0 14px 32px rgba(16,24,40,.075); }
    .offer-flow-index { width:42px; height:42px; border-radius:13px; display:grid; place-items:center; background:#eef2f7; color:#52637a; font-size:12px; font-weight:900; }
    .offer-flow-copy { display:grid; gap:4px; min-width:0; }
    .offer-flow-copy strong { color:#172033; font-size:14px; line-height:1.15; }
    .offer-flow-copy small { color:#667085; font-size:11.5px; line-height:1.3; }
    .offer-flow-state { display:none; position:absolute; top:10px; right:10px; border-radius:999px; padding:5px 8px; background:#fff; color:#1747b8; font-size:10px; font-weight:900; box-shadow:0 4px 12px rgba(23,71,184,.12); }
    .offer-flow-card.active { border-color:#2563eb; background:linear-gradient(135deg,#edf4ff,#f7fbff); box-shadow:0 0 0 3px rgba(37,99,235,.12),0 16px 36px rgba(37,99,235,.12); }
    .offer-flow-card.active .offer-flow-index { background:#2563eb; color:#fff; }
    .offer-flow-card.active .offer-flow-copy strong { color:#1747b8; }
    .offer-flow-card.active .offer-flow-state { display:inline-flex; }
    .offer-tools-nav { display:flex; align-items:center; gap:7px; flex-wrap:wrap; border:1px solid #e1e8f1; border-radius:13px; padding:7px 9px; background:#f8fafc; }
    .offer-tools-nav > span { color:#667085; padding:0 6px; font-size:10.5px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
    .offer-tools-nav button { border:1px solid transparent; border-radius:9px; background:transparent; color:#475467; padding:7px 10px; font:inherit; font-size:11.5px; font-weight:750; cursor:pointer; }
    .offer-tools-nav button:hover { border-color:#d5dfec; background:#fff; color:#1f2937; }
    .offer-tools-nav button.active { border-color:#bfd3f2; background:#fff; color:#1747b8; box-shadow:0 4px 12px rgba(16,24,40,.06); }
    .offer-section-panel { display:grid; gap:14px; animation:offerPanelIn .16s ease-out; }
    @keyframes offerPanelIn { from { opacity:.45; transform:translateY(3px); } to { opacity:1; transform:none; } }
    .offer-section-heading { display:flex; align-items:center; gap:12px; border-bottom:1px solid #e7edf5; padding:4px 2px 12px; }
    .offer-section-heading > div { min-width:0; flex:1; }
    .offer-section-heading h2 { margin:0; font-size:20px; color:#101828; }
    .offer-section-heading p { margin:4px 0 0; color:#667085; font-size:12px; }
    .offer-section-number { width:42px; height:38px; border-radius:12px; background:#1747b8; color:#fff; display:grid; place-items:center; font-size:14px; font-weight:900; flex:0 0 auto; }
    .offer-section-number-tool { background:#64748b; }
    .offer-pre-grid { display:grid; grid-template-columns:minmax(380px,.82fr) minmax(480px,1.18fr); gap:14px; align-items:start; }
    .offer-document-request { margin:0; border:1px solid #dbe5f2; border-radius:13px; padding:11px 12px 12px; background:#f8fbff; display:grid; gap:8px; }
    .offer-document-request legend { padding:0 6px; color:#344054; font-size:12px; font-weight:850; }
    .offer-document-request label { display:flex; align-items:flex-start; gap:9px; border:1px solid #e4eaf3; border-radius:10px; padding:9px 10px; background:#fff; color:#344054; font-size:12px; font-weight:700; cursor:pointer; }
    .offer-document-request label:has(input:checked) { border-color:#a9d8b9; background:#effaf3; color:#17643a; }
    .offer-document-request input { width:auto; margin-top:1px; accent-color:#16a34a; }
    .offer-pre-preview { min-height:0; line-height:1.55; }
    .offer-pre-preview .offer-pre-subject { border-bottom:1px solid #e5eaf3; margin:-2px 0 13px; padding:0 0 11px; display:grid; gap:3px; }
    .offer-pre-preview .offer-pre-subject span { color:#667085; font-size:10.5px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
    .offer-pre-preview .offer-pre-subject strong { color:#172033; font-size:14px; }
    .offer-pre-preview p { margin:8px 0; color:#344054; font-size:12.5px; }
    .offer-pre-preview ul { margin:9px 0 11px; padding-left:21px; color:#1f2937; font-size:12.5px; }
    .offer-pre-preview li { margin:5px 0; }
    .offer-standard-grid { display:grid; grid-template-columns:minmax(330px,.72fr) minmax(520px,1.28fr); gap:14px; align-items:start; }
    .offer-pdf-panel { min-width:0; }
    .offer-pdf-preview { background:#e9eef5; padding:10px; min-height:690px; }
    .offer-pdf-preview iframe { display:block; width:100%; height:690px; border:0; border-radius:9px; background:#fff; }
    .offer-choice-summary { border:1px solid #cfe0f7; border-radius:11px; padding:11px 12px; background:#f5f9ff; color:#52637a; font-size:12px; line-height:1.45; }
    .offer-summary-grid { display:grid; grid-template-columns:repeat(5,minmax(120px,1fr)); gap:10px; }
    .offer-summary-card { border:1px solid #dbe5f2; border-radius:13px; background:#fff; padding:13px; display:grid; gap:5px; }
    .offer-summary-card span { color:#667085; font-size:11px; }
    .offer-summary-card strong { color:#101828; font-size:20px; font-weight:650; }
    .offer-type-badge { display:inline-flex; border-radius:999px; padding:4px 8px; font-size:10.5px; line-height:1; border:1px solid #cfe0f7; background:#edf4ff; color:#1747b8; }
    .offer-type-badge.custom { border-color:#c9e7d5; background:#effaf3; color:#17643a; }
    .offer-type-badge.preoffer { border-color:#f4c98a; background:#fff7e7; color:#92400e; }
    .offer-stage-select { min-width:145px; border:1px solid #d8e0eb; border-radius:9px; background:#fff; padding:7px 9px; font:inherit; font-size:12px; }
    .offer-row-actions { display:flex; align-items:center; gap:6px; white-space:nowrap; }
    .offer-empty-row { text-align:center; color:#667085; padding:24px !important; }
    .offer-audit-status { display:inline-flex; border-radius:999px; padding:5px 8px; font-size:10.5px; background:#f2f4f7; color:#475467; }
    .offer-audit-status.delivered { background:#edf4ff; color:#1747b8; }
    .offer-audit-status.active { background:#eaf8ef; color:#17643a; }
    .offer-audit-status.danger { background:#fff0f0; color:#b42318; }
    .offer-attachment-cell { max-width:230px; white-space:normal; color:#52637a; font-size:11px; }
    .offer-modal { position:fixed; inset:0; z-index:1300; background:rgba(15,23,42,.48); padding:5vh 4vw; overflow:auto; display:grid; place-items:start center; }
    .offer-modal.hidden { display:none; }
    .offer-modal-card { width:min(760px,100%); background:#fff; border-radius:18px; box-shadow:0 28px 80px rgba(15,23,42,.28); overflow:hidden; }
    .offer-modal-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:17px 19px; border-bottom:1px solid #e7edf5; background:#fbfdff; }
    .offer-modal-head h3 { margin:0; font-size:18px; }
    .offer-modal-head p { margin:4px 0 0; color:#667085; font-size:12px; }
    .offer-confirm-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding:16px 19px 4px; }
    .offer-confirm-grid > div { border:1px solid #e4eaf3; border-radius:11px; padding:9px 10px; display:grid; gap:3px; min-width:0; }
    .offer-confirm-grid span { color:#667085; font-size:10.5px; }
    .offer-confirm-grid strong { color:#1f2937; font-size:12px; overflow-wrap:anywhere; font-weight:650; }
    .offer-email-message { margin:12px 19px; border:1px solid #dbe5f2; border-radius:13px; padding:14px; background:#f8fbff; color:#344054; font-size:13px; line-height:1.5; }
    .offer-email-message h4 { margin:0 0 8px; }
    .offer-email-message p { margin:6px 0; }
    .offer-modal-actions { display:flex; justify-content:flex-end; gap:8px; padding:4px 19px 18px; }
    .offer-email-text { margin:16px 19px 20px; max-height:60vh; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid #e1e8f1; border-radius:12px; padding:14px; background:#f8fafc; color:#1f2937; font:12px/1.55 Arial,sans-serif; }
    @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:1100px){ .offer-standard-grid, .offer-pre-grid { grid-template-columns:1fr; } .offer-flow-nav { position:static; } }
    @media(max-width:900px){ .offer-package-grid { grid-template-columns:1fr; } .offer-summary-grid { grid-template-columns:repeat(2,minmax(120px,1fr)); } }
    @media(max-width:760px){ .offer-form-grid, .offer-price-box, .offer-check-grid, .offer-pipeline, .offer-actions, .offer-confirm-grid, .offer-flow-nav { grid-template-columns:1fr; } .offer-extra-row { grid-template-columns:1fr; } .offer-actions .wide { grid-column:auto; } .offer-flow-card { padding-right:92px; } .offer-tools-nav { align-items:stretch; } .offer-tools-nav > span { width:100%; } .offer-tools-nav button { flex:1 1 auto; } .offer-hero-compact { align-items:flex-start; flex-direction:column; } .offer-flow-note { min-width:0; width:100%; } .offer-pdf-preview, .offer-pdf-preview iframe { min-height:520px; height:520px; } }
    .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; }
    .contract-change-navigator { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:18px 0 20px; }
    .contract-change-nav-card { position:relative; display:grid; grid-template-columns:38px minmax(0,1fr); grid-template-rows:auto auto; column-gap:11px; align-items:center; min-height:84px; padding:14px; overflow:hidden; border:1px solid #d8e1ef; border-radius:15px; background:#fff; color:#26364e; text-align:left; cursor:pointer; box-shadow:0 8px 22px rgba(34,55,88,.06); transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease; }
    .contract-change-nav-card::after { content:""; position:absolute; inset:auto -24px -34px auto; width:90px; height:90px; border-radius:50%; background:var(--zone-soft); opacity:.9; }
    .contract-change-nav-card:hover { transform:translateY(-3px); border-color:var(--zone-line); box-shadow:0 14px 28px rgba(34,55,88,.11); }
    .contract-change-nav-card>span { grid-row:span 2; display:grid; place-items:center; width:36px; height:36px; border-radius:11px; background:var(--zone); color:#fff; font-size:15px; font-weight:800; }
    .contract-change-nav-card strong { position:relative; z-index:1; font-size:13px; font-weight:700; }
    .contract-change-nav-card small { position:relative; z-index:1; color:#718096; font-size:11px; line-height:1.35; }
    .contract-change-nav-card.is-blue,.contract-change-zone.is-blue { --zone:#4f6fd9; --zone-soft:#e8edff; --zone-line:#aebcf3; }
    .contract-change-nav-card.is-teal,.contract-change-zone.is-teal { --zone:#168b83; --zone-soft:#def6f3; --zone-line:#8fd7cf; }
    .contract-change-nav-card.is-amber,.contract-change-zone.is-amber { --zone:#bf7a16; --zone-soft:#fff0d7; --zone-line:#edc57f; }
    .contract-change-nav-card.is-violet,.contract-change-zone.is-violet { --zone:#7653c6; --zone-soft:#eee8ff; --zone-line:#c2b0ef; }
    .contract-change-zone { scroll-margin-top:18px; margin:18px 0 24px; padding:0 16px 18px; border:1px solid color-mix(in srgb,var(--zone-line) 62%,#dfe6ef); border-radius:18px; background:linear-gradient(145deg,#fff 45%,color-mix(in srgb,var(--zone-soft) 42%,#fff)); box-shadow:0 10px 28px rgba(31,48,78,.055); }
    .contract-change-zone>.task-section-head { margin-top:0; padding:18px 2px 4px 14px; border-left:4px solid var(--zone); }
    .contract-change-zone>.task-section-head .eyebrow { color:var(--zone); }
    .contract-change-filterbar { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
    .contract-change-filter { border:1px solid #cfd9e8; border-radius:9px; padding:7px 11px; background:#fff; color:#44546d; font-size:12px; font-weight:700; cursor:pointer; transition:background .15s,border-color .15s,color .15s; }
    .contract-change-filter:hover { border-color:var(--zone,#6d8fd8); color:#214c9c; }
    .contract-change-filter.is-active { border-color:var(--zone,#4f6fd9); background:color-mix(in srgb,var(--zone,#4f6fd9) 11%,#fff); color:var(--zone,#3157b8); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--zone,#4f6fd9) 14%,transparent); }
    .contract-change-filter span { display:inline-grid; place-items:center; min-width:20px; height:20px; margin-left:4px; padding:0 5px; border-radius:999px; background:#eef2f7; color:#536179; font-size:10px; }
    .contract-change-filter.is-active span { background:#fff; color:inherit; }
    .contract-change-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:12px 12px 2px; }
    .contract-change-search { width:min(390px,100%); min-height:39px; border-color:#a9bdea; background:#fff; box-shadow:0 0 0 3px rgba(79,111,217,.07); }
    .fee-recommendation-policy { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:4px 0 14px; }
    .fee-recommendation-policy>div { display:grid; grid-template-columns:30px 1fr; gap:2px 9px; align-items:center; padding:11px 12px; border:1px solid #ddd5f2; border-radius:12px; background:#fff; }
    .fee-recommendation-policy span { grid-row:span 2; display:grid; place-items:center; width:30px; height:30px; border-radius:9px; background:#7653c6; color:#fff; font-weight:800; }
    .fee-recommendation-policy strong { font-size:12px; font-weight:700; }
    .fee-recommendation-policy small { color:#7b8799; font-size:10.5px; line-height:1.3; }
    .fee-recommendation-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); gap:10px; margin-bottom:12px; }
    .fee-recommendation-stat { display:flex; flex-direction:column; gap:3px; min-height:82px; padding:13px 14px; border:1px solid #ddd5f2; border-radius:13px; background:linear-gradient(145deg,#fff,#f8f5ff); }
    .fee-recommendation-stat span { color:#737f93; font-size:11px; }
    .fee-recommendation-stat strong { color:#30224f; font-size:20px; font-weight:600; }
    .fee-recommendation-stat small { color:#7b8799; font-size:10.5px; }
    .fee-recommendation-note { display:flex; gap:8px; align-items:center; margin:12px; padding:10px 12px; border:1px solid #ead59b; border-radius:10px; background:#fff9e8; color:#795710; font-size:12px; }
    .fee-recommendation-note span { color:#7e6c43; }
    .fee-recommendation-note.is-active { border-color:#c9baf0; background:linear-gradient(135deg,#f8f5ff,#f2f9ff); color:#4b2e85; }
    .fee-recommendation-note.is-active span { color:#665b7c; }
    .fee-recommendation-table { min-width:1380px; }
    .fee-recommendation-table th:nth-child(6),.fee-recommendation-table td:nth-child(6) { width:108px; }
    .fee-recommendation-table th:last-child,.fee-recommendation-table td:last-child { width:150px; }
    .fee-recommendation-empty { padding:26px!important; color:#738096; text-align:center!important; }
    .fee-recommendation-client-meta { display:block; margin-top:4px; color:#7b8799; font-size:10.5px; }
    .fee-current-result,.fee-package-result { display:flex; flex-direction:column; gap:3px; min-width:110px; }
    .fee-package-result { min-width:88px; max-width:108px; gap:1px; }
    .fee-package-result strong { line-height:1.15; }
    .fee-current-result strong,.fee-package-result strong { color:#29364d; font-size:12px; font-weight:650; }
    .fee-current-result small,.fee-package-result small { color:#778397; font-size:10px; }
    .fee-current-result span { width:max-content; padding:3px 7px; border-radius:999px; background:#f2ecff; color:#6246a5; font-size:9.5px; }
    .fee-evaluation { display:inline-flex; width:max-content; max-width:170px; align-items:center; padding:5px 9px; border:1px solid transparent; border-radius:999px; font-size:10.5px; font-weight:650; white-space:nowrap; }
    .fee-evaluation.is-actionable { border-color:#f4abab; background:#fff0f0; color:#b42318; }
    .fee-evaluation.is-aligned { border-color:#9ed9bd; background:#eaf9f1; color:#11623d; }
    .fee-evaluation.is-above { border-color:#a8c8ef; background:#edf6ff; color:#1e5f9d; }
    .fee-evaluation.is-custom { border-color:#e8c474; background:#fff8e7; color:#8b5a00; }
    .fee-evaluation.is-missing,.fee-evaluation.is-pending { border-color:#d6dce6; background:#f5f7fa; color:#69768a; }
    .fee-evaluation-detail { display:block; max-width:190px; margin-top:5px; color:#788497; font-size:9.5px; line-height:1.35; }
    .fee-action-stack { display:grid; gap:5px; width:140px; }
    .fee-action-flow { display:grid; gap:2px; justify-items:start; }
    .fee-action-flow .fee-workflow-badge { padding:3px 7px; font-size:9.5px; }
    .fee-action-flow .fee-workflow-badge+small { max-width:140px; margin-top:0; font-size:8.5px; }
    .fee-recommendation-actions { display:grid; grid-template-columns:1fr; gap:4px; min-width:0; }
    .fee-recommendation-actions .btn { width:100%; min-width:0; padding:5px 7px; white-space:normal; line-height:1.15; }
    .fee-recommendation-head-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
    .fee-recommendation-refresh { display:grid; grid-template-columns:minmax(220px,1fr) minmax(220px,2fr); gap:8px 16px; align-items:center; margin:0 0 14px; padding:13px 15px; border:1px solid #c7b9ed; border-radius:12px; background:linear-gradient(135deg,#f8f5ff,#edf6ff); }
    .fee-recommendation-refresh>div { display:flex; flex-direction:column; gap:3px; }
    .fee-recommendation-refresh span,.fee-recommendation-refresh small { color:#66738a; font-size:11px; }
    .fee-recommendation-refresh progress { width:100%; accent-color:#7653c6; }
    .fee-recommendation-refresh small { grid-column:1/-1; }
    .section-collaborator-tabs { display:flex; align-items:center; gap:7px; margin:0 0 12px; padding:8px; overflow-x:auto; border:1px solid #e1e7f0; border-radius:12px; background:linear-gradient(90deg,#fbfdff,#f7f9fc); scrollbar-width:thin; }
    .section-collaborator-chip { flex:0 0 auto; border:1px solid #d7dfeb; border-radius:999px; padding:7px 11px; background:#fff; color:#536179; font-size:11px; font-weight:600; cursor:pointer; transition:transform .15s,border-color .15s,background .15s; }
    .section-collaborator-chip:hover { transform:translateY(-1px); border-color:var(--zone,#6d8fd8); }
    .section-collaborator-chip.is-active { border-color:var(--zone,#4f6fd9); background:color-mix(in srgb,var(--zone,#4f6fd9) 12%,#fff); color:var(--zone,#3157b8); box-shadow:0 4px 12px color-mix(in srgb,var(--zone,#4f6fd9) 12%,transparent); }
    .fee-recommendation-pipeline { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin:0 0 12px; }
    .fee-pipeline-step { position:relative; display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:8px; align-items:center; min-width:0; padding:11px; border:1px solid #ddd5f2; border-radius:12px; background:linear-gradient(140deg,#fff,#f8f5ff); color:#443660; text-align:left; cursor:pointer; transition:transform .15s,box-shadow .15s,border-color .15s; }
    .fee-pipeline-step:hover { transform:translateY(-2px); box-shadow:0 8px 20px rgba(77,52,125,.1); }
    .fee-pipeline-step.is-active { border-color:#7653c6; box-shadow:inset 0 0 0 1px rgba(118,83,198,.18); }
    .fee-pipeline-step>span { display:grid; place-items:center; width:28px; height:28px; border-radius:9px; background:#eee8fb; color:#6343aa; font-size:11px; }
    .fee-pipeline-step div { display:flex; min-width:0; flex-direction:column-reverse; gap:2px; }
    .fee-pipeline-step strong { overflow:hidden; text-overflow:ellipsis; color:#30224f; font-size:12px; font-weight:600; white-space:nowrap; }
    .fee-pipeline-step small { overflow:hidden; text-overflow:ellipsis; color:#7b8799; font-size:9.5px; white-space:nowrap; }
    .fee-pipeline-step em { display:grid; place-items:center; min-width:27px; height:27px; padding:0 5px; border-radius:999px; background:#7653c6; color:#fff; font-size:11px; font-style:normal; }
    .fee-pipeline-step i { position:absolute; right:-8px; z-index:2; color:#a796cf; font-size:14px; font-style:normal; }
    .fee-recommendation-query-controls { display:flex; align-items:flex-end; justify-content:flex-end; gap:9px; margin-left:auto; }
    .fee-recommendation-collaborator-label { display:grid; gap:4px; color:#657187; font-size:10px; }
    .fee-recommendation-collaborator-label select { min-width:180px; }
    .balance-onboarding-card { width:min(680px,100%); }
    .balance-onboarding-form { padding:17px 19px 0; }
    .balance-onboarding-summary { display:grid; grid-template-columns:2fr 1fr 1fr; gap:9px; margin-bottom:15px; }
    .balance-onboarding-summary>div { display:grid; gap:3px; padding:10px 11px; border:1px solid #e1e7f0; border-radius:11px; background:#f8fafc; }
    .balance-onboarding-summary span { color:#748096; font-size:10px; }
    .balance-onboarding-summary strong { color:#26344a; font-size:12px; font-weight:600; }
    .balance-onboarding-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .balance-onboarding-grid label { display:grid; gap:6px; color:#566277; font-size:11px; font-weight:600; }
    .balance-onboarding-grid input,.balance-onboarding-grid select { width:100%; box-sizing:border-box; }
    .balance-onboarding-span { grid-column:1/-1; }
    .balance-onboarding-confirmation { display:grid; gap:4px; margin-top:15px; padding:12px 13px; border:1px solid #c7b9ed; border-radius:11px; background:#f8f5ff; color:#4b2e85; }
    .balance-onboarding-confirmation strong { font-size:12px; font-weight:600; }
    .balance-onboarding-confirmation span { color:#665b7c; font-size:11px; line-height:1.45; }
    .balance-onboarding-status { margin-top:12px; padding:10px 12px; border-radius:10px; font-size:11px; line-height:1.45; }
    .balance-onboarding-status.is-progress { background:#eef5ff; color:#2456a6; }
    .balance-onboarding-status.is-success { background:#eaf8ef; color:#17643a; }
    .balance-onboarding-status.is-error { background:#fff0f0; color:#b42318; }
    .fee-workflow-badge { display:inline-flex; width:max-content; padding:5px 9px; border:1px solid #cfd8e5; border-radius:999px; background:#f7f9fc; color:#536279; font-size:10.5px; font-weight:700; }
    .fee-workflow-badge+small { display:block; max-width:180px; margin-top:5px; color:#778397; font-size:9.5px; line-height:1.35; }
    .fee-workflow-badge.is-sequence { border-color:#93c5fd; background:#eff6ff; color:#1d4ed8; }
    .fee-workflow-badge.is-cooldown { border-color:#f3c680; background:#fffbeb; color:#92400e; }
    .fee-workflow-badge.is-reanalysis { border-color:#c4b5fd; background:#f5f3ff; color:#6d28d9; }
    .fee-workflow-badge.is-disabled { border-color:#cbd5e1; background:#f1f5f9; color:#64748b; }
    .fee-source-state,.fee-rule-pending { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; font-size:11px; white-space:nowrap; }
    .fee-source-state.is-ready { border:1px solid #92d5ad; background:#e7f8ed; color:#17603a; }
    .fee-source-state.is-missing { border:1px solid #e5b3b3; background:#fff0f0; color:#9b2727; }
    .fee-rule-pending { border:1px solid #d6c7ee; background:#f3effb; color:#63479e; }
    .fee-volume-months { display:grid; grid-template-columns:repeat(4,minmax(80px,1fr)); gap:4px; min-width:360px; }
    .fee-volume-months span { display:flex; flex-direction:column; gap:1px; padding:5px 6px; border-radius:7px; background:#f2f5fa; text-align:center; }
    .fee-volume-months small { color:#7a8799; font-size:9.5px; }
    .fee-volume-months strong { color:#26364e; font-size:12px; font-weight:600; }
    .fee-volume-months em { color:#52627a; font-size:10px; font-style:normal; }
    .fee-volume-months .fee-volume-received { color:#c2414b; }
    .fee-volume-months .fee-volume-sent { color:#16845b; }
    .fee-volume-average { display:block; margin-top:5px; color:#596a82; }
    .fee-history-components { display:flex; flex-direction:column; gap:2px; }
    .fee-history-components small { color:#748197; font-size:9.5px; white-space:nowrap; }
    .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:198px; overflow:auto; padding-right:3px; }
    .contract-list-pagination { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:10px; padding:9px 11px; border:1px solid #dbe3ef; border-radius:10px; background:#f8fafc; color:#64748b; font-size:12px; }
    .contract-list-pagination:empty { display:none; }
    .contract-list-pagination label,.contract-list-pagination-actions { display:flex; align-items:center; gap:8px; }
    .contract-list-pagination select { min-width:68px; padding:6px 24px 6px 8px; border:1px solid #cbd5e1; border-radius:8px; background:#fff; color:#334155; }
    .contract-list-pagination-actions span { min-width:96px; text-align:center; color:#334155; font-variant-numeric:tabular-nums; }
    .contract-list-pagination button:disabled { opacity:.4; cursor:not-allowed; }
    .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-analysis-summary { padding:12px; border:1px solid #c9baf0; border-radius:12px; background:#f8f5ff; }
    .fee-notice-analysis-summary>strong { display:block; margin-bottom:8px; color:#4b2e85; }
    .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:hidden; padding:0; border:1px solid #dbe4ef; border-radius:12px; background:white; }
    .fee-notice-preview-frame { display:block; width:100%; height:560px; border:0; 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:1100px) { .contract-change-navigator,.fee-recommendation-policy,.fee-recommendation-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } .fee-recommendation-pipeline { grid-template-columns:repeat(2,minmax(0,1fr)); } .fee-pipeline-step i { display:none; } }
    @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; } .contract-change-navigator,.fee-recommendation-policy,.fee-recommendation-stats,.fee-recommendation-pipeline { grid-template-columns:1fr; } .contract-change-zone { padding-left:10px; padding-right:10px; } .fee-recommendation-note { align-items:flex-start; flex-direction:column; } .fee-recommendation-query-controls { align-items:stretch; flex-direction:column; margin-left:0; } .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,.balance-onboarding-summary,.balance-onboarding-grid { grid-template-columns:1fr; } .balance-onboarding-span { grid-column:auto; } .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.manual.active { border-color:#9b72eb; background:#f5f0ff; color:#6d28d9; }
    .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; }
    .manual-billing-badge { display:inline-flex; align-items:center; width:max-content; margin:4px 0 0 6px; border:1px solid #c4a7f8; border-radius:999px; padding:2px 7px; background:#f5f0ff; color:#6d28d9; font-size:10.5px; font-weight:750; line-height:1.2; white-space:nowrap; vertical-align:middle; }
    .manual-value-label { display:inline-flex; align-items:center; border-radius:999px; padding:3px 7px; background:#fff7d6; color:#92400e; font-size:11px; font-weight:700; white-space:nowrap; }
    .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; }
    .module-head-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
    .btn.manual-contract-open, .btn.manual-contract-save { border-color:#7c3aed; background:#7c3aed; color:#fff; box-shadow:0 8px 18px rgba(124,58,237,.18); }
    .btn.manual-contract-open:hover, .btn.manual-contract-save:hover { border-color:#6d28d9; background:#6d28d9; }
    .manual-contract-modal { position:fixed; inset:0; z-index:1400; display:grid; place-items:start center; overflow:auto; padding:3vh 3vw; background:rgba(15,23,42,.52); }
    .manual-contract-modal.hidden { display:none; }
    .manual-contract-card { width:min(1080px,100%); border:1px solid #d9d2f4; border-radius:20px; background:#f8fafc; box-shadow:0 30px 90px rgba(15,23,42,.32); overflow:hidden; }
    .manual-contract-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:19px 22px; border-bottom:1px solid #e5e7eb; background:linear-gradient(135deg,#fff 0%,#f5f0ff 100%); }
    .manual-contract-head h2 { margin:4px 0 0; font-size:22px; }
    .manual-contract-head p { margin:5px 0 0; color:#667085; font-size:13px; }
    .manual-contract-form { display:grid; gap:14px; padding:16px 18px 18px; }
    .manual-contract-safety { display:flex; align-items:center; gap:12px; border:1px solid #b7e4c7; border-radius:12px; padding:11px 13px; background:#effaf2; color:#166534; }
    .manual-contract-safety strong { flex:0 0 auto; border-radius:999px; padding:4px 9px; background:#dcfce7; font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
    .manual-contract-safety span { font-size:12.5px; line-height:1.4; }
    .manual-contract-section { border:1px solid #dfe5ee; border-radius:14px; background:#fff; overflow:hidden; }
    .manual-contract-section-title { display:flex; align-items:center; gap:10px; padding:12px 14px; border-bottom:1px solid #edf0f5; background:#fbfcff; }
    .manual-contract-section-title>span { width:28px; height:28px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:#7c3aed; color:#fff; font-size:12px; font-weight:800; }
    .manual-contract-section-title strong { display:block; color:#1f2937; font-size:14px; }
    .manual-contract-section-title small { display:block; margin-top:2px; color:#667085; font-size:11.5px; }
    .manual-contract-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px 13px; padding:14px; }
    .manual-contract-grid label { min-width:0; }
    .manual-contract-grid label.wide { grid-column:1/-1; }
    .manual-contract-grid label>span { display:block; margin-bottom:5px; color:#344054; font-size:11.5px; font-weight:650; }
    .manual-contract-grid label>span b { color:#d92d20; }
    .manual-contract-grid input, .manual-contract-grid select, .manual-contract-grid textarea { width:100%; min-height:39px; border:1px solid #cbd5e1; border-radius:8px; padding:8px 10px; background:#fff; color:#101828; font:inherit; outline:none; }
    .manual-contract-grid textarea { min-height:72px; resize:vertical; }
    .manual-contract-grid input:focus, .manual-contract-grid select:focus, .manual-contract-grid textarea:focus { border-color:#8b5cf6; box-shadow:0 0 0 3px rgba(124,58,237,.10); }
    .manual-contract-grid :is(input,select,textarea)[aria-invalid="true"] { border-color:#f04438; background:#fff5f5; }
    .manual-contract-preflight { margin:0 14px 14px; border:1px solid #d7deea; border-radius:10px; padding:10px 12px; background:#f8fafc; color:#52637a; font-size:12px; line-height:1.4; }
    .manual-contract-preflight.checking { border-color:#a9c5fb; background:#f0f6ff; color:#1d4ed8; }
    .manual-contract-preflight.ok { border-color:#99d6aa; background:#effaf2; color:#166534; }
    .manual-contract-preflight.warn { border-color:#f0c46f; background:#fff9e8; color:#92400e; }
    .manual-contract-preflight.error { border-color:#f3a4ad; background:#fff1f2; color:#9f1239; }
    .manual-contract-upload { margin:14px; min-height:90px; display:grid; place-items:center; align-content:center; gap:5px; border:1.5px dashed #9b72eb; border-radius:12px; background:#faf8ff; color:#5b21b6; cursor:pointer; text-align:center; }
    .manual-contract-upload:hover { border-color:#7c3aed; background:#f5f0ff; }
    .manual-contract-upload input { position:absolute; width:1px; height:1px; overflow:hidden; opacity:0; pointer-events:none; }
    .manual-contract-upload strong { font-size:13px; }
    .manual-contract-upload span { color:#667085; font-size:11.5px; }
    .manual-existing-archive { margin:0 14px 12px; border:1px solid #b7e4c7; border-radius:10px; padding:9px 11px; background:#effaf2; color:#166534; font-size:12px; }
    .manual-existing-archive.hidden { display:none; }
    .manual-contract-confirm { display:flex; align-items:flex-start; gap:9px; margin:9px 14px; color:#344054; font-size:12px; line-height:1.4; cursor:pointer; }
    .manual-contract-confirm.hidden { display:none; }
    .manual-contract-confirm input { width:17px; height:17px; margin-top:0; flex:0 0 auto; accent-color:#7c3aed; }
    .manual-contract-footer { position:sticky; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid #e0e5ed; border-radius:12px; padding:11px 13px; background:rgba(255,255,255,.96); box-shadow:0 -8px 24px rgba(15,23,42,.06); backdrop-filter:blur(8px); }
    .manual-contract-footer>span { color:#667085; font-size:11.5px; }
    .manual-contract-footer>div { display:flex; gap:8px; }
    @media(max-width:760px) {
      .manual-contract-modal { padding:0; place-items:start stretch; }
      .manual-contract-card { min-height:100vh; border:0; border-radius:0; }
      .manual-contract-head { padding:15px; }
      .manual-contract-form { padding:12px; }
      .manual-contract-grid { grid-template-columns:1fr; padding:12px; }
      .manual-contract-grid label.wide { grid-column:auto; }
      .manual-contract-safety, .manual-contract-footer { align-items:stretch; flex-direction:column; }
      .manual-contract-footer>div { width:100%; }
      .manual-contract-footer .btn { flex:1; }
    }
    .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-flow-actions .sign-manual { background:#eef4ff; border-color:#bfd0ff; color:#244fbf; }
    .sign-flow-actions .sign-manual:hover { background:#dfe9ff; border-color:#91adff; color:#1e40af; }
    .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; } }
    .manual-signature-overlay { position:fixed; inset:0; z-index:110; display:grid; place-items:center; padding:24px; background:rgba(15,23,42,.48); backdrop-filter:blur(3px); }
    .manual-signature-overlay.hidden { display:none; }
    .manual-signature-panel { width:min(590px,100%); max-height:calc(100vh - 48px); overflow:auto; border:1px solid rgba(214,224,239,.9); border-radius:20px; background:#fff; color:#243047; box-shadow:0 28px 80px rgba(15,23,42,.28); outline:none; }
    .manual-signature-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px 24px 18px; border-bottom:1px solid #e7ebf2; }
    .manual-signature-head h2 { margin:5px 0 4px; font-size:22px; font-weight:600; letter-spacing:-.015em; }
    .manual-signature-head p { margin:0; color:#718096; font-size:13px; }
    .manual-signature-body { display:grid; gap:14px; padding:22px 24px; }
    .manual-signature-contract { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 13px; border:1px solid #dce5f2; border-radius:11px; background:#f8faff; color:#52637a; font-size:13px; }
    .manual-signature-contract span:last-child { color:#244fbf; font-weight:600; }
    .manual-signature-dropzone { width:100%; min-height:190px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; padding:24px; border:1.5px dashed #9db5df; border-radius:16px; background:linear-gradient(145deg,#f7faff,#fff); color:#52637a; cursor:pointer; transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease; }
    .manual-signature-dropzone:hover, .manual-signature-dropzone.dragging { border-color:#3f6fe5; background:#eef4ff; transform:translateY(-2px); box-shadow:0 14px 34px rgba(63,111,229,.13); }
    .manual-signature-dropzone.selected { border-color:#4fb987; background:#effaf5; }
    .manual-signature-dropzone strong { color:#243047; font-size:16px; font-weight:600; }
    .manual-signature-dropzone span { font-size:13px; }
    .manual-signature-dropzone small { margin-top:5px; color:#8290a5; font-size:11px; }
    .manual-signature-drop-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; background:#e7efff; color:#315eea; font-size:25px!important; line-height:1; }
    .manual-signature-file { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:11px 13px; border:1px solid #bde5d1; border-radius:11px; background:#effaf5; color:#166534; font-size:12px; }
    .manual-signature-file.hidden { display:none; }
    .manual-signature-file strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600; }
    .manual-signature-note { padding:11px 13px; border:1px solid #e0e6ef; border-radius:11px; background:#fafbfc; color:#667085; font-size:12px; line-height:1.5; }
    .manual-signature-note strong { color:#166534; font-weight:600; }
    .manual-signature-footer { display:flex; justify-content:flex-end; gap:9px; padding:16px 24px 20px; border-top:1px solid #e7ebf2; background:#fbfcfe; }
    @media (max-width: 640px) {
      .manual-signature-overlay { padding:10px; }
      .manual-signature-head, .manual-signature-body { padding-left:17px; padding-right:17px; }
      .manual-signature-footer { padding-left:17px; padding-right:17px; }
      .manual-signature-footer .btn { flex:1 1 0; }
    }
    .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 { position:relative; 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:#9fc0ff; box-shadow:inset 3px 0 0 #2563eb; }
    .contract-step-tab.active::after { content:"\2192"; position:absolute; right:11px; color:#2563eb; font-size:17px; font-weight:800; }
    .contract-step-tab.done .dot { background:#078848; border-color:#078848; color:#fff; font-size:0; }
    .contract-step-tab.done .dot::after { content:"\2713"; font-size:13px; font-weight:900; }
    .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); }
    #f_luna, #f_an { border:2px solid #8bb3ff; background:#eef4ff; color:#1747b8; font-weight:750; box-shadow:0 5px 12px rgba(37,99,235,.08); }
    #f_luna:hover, #f_an:hover { border-color:#5f93f5; background:#e5efff; }
    #f_luna:focus, #f_an:focus { border-color:#2563eb; background:#fff; box-shadow:0 0 0 3px rgba(37,99,235,.14); }
    #contractOfferPresets [data-contract-offer="stup_1_free"] { border-color:#f3b45b; background:#fff5e6; color:#9a4d00; box-shadow:0 5px 12px rgba(234,88,12,.08); }
    #contractOfferPresets [data-contract-offer="stup_1_free"]:hover { border-color:#ea8a19; background:#ffedd5; }
    #contractOfferPresets [data-contract-offer="stup_1_free"].primary { border-color:#ea580c; background:#ea580c; color:#fff; box-shadow:0 7px 16px rgba(234,88,12,.22); }
    #contractOfferPresets [data-contract-offer="stup_3_free"] { border-color:#c4a7f8; background:#f5f0ff; color:#6d28d9; box-shadow:0 5px 12px rgba(109,40,217,.08); }
    #contractOfferPresets [data-contract-offer="stup_3_free"]:hover { border-color:#9b72eb; background:#ede4ff; }
    #contractOfferPresets [data-contract-offer="stup_3_free"].primary { border-color:#7c3aed; background:#7c3aed; color:#fff; box-shadow:0 7px 16px rgba(124,58,237,.22); }
    #contractOfferPresets [data-contract-offer="onrc_6_advance"] { border-color:#7ccfc3; background:#eafaf7; color:#0f766e; box-shadow:0 5px 12px rgba(15,118,110,.08); }
    #contractOfferPresets [data-contract-offer="onrc_6_advance"]:hover { border-color:#42afa1; background:#d9f5f0; }
    #contractOfferPresets [data-contract-offer="onrc_6_advance"].primary { border-color:#0f766e; background:#0f766e; color:#fff; box-shadow:0 7px 16px rgba(15,118,110,.22); }
    .contract-wizard-main .contract-field input.manual-required:not(.filled),
    .contract-wizard-main .contract-field select.manual-required:not(.filled),
    .contract-wizard-main .contract-field textarea.manual-required:not(.filled) { background:#fff1f2; border-color:#f3a4ad; box-shadow:inset 3px 0 0 #fb7185; }
    .contract-wizard-main .contract-field input.manual-required:not(.filled):focus,
    .contract-wizard-main .contract-field select.manual-required:not(.filled):focus,
    .contract-wizard-main .contract-field textarea.manual-required:not(.filled):focus { border-color:#e85d70; box-shadow:inset 3px 0 0 #e11d48, 0 0 0 3px rgba(225,29,72,.12); }
    .contract-wizard-main .contract-field input.manual-required.filled,
    .contract-wizard-main .contract-field select.manual-required.filled,
    .contract-wizard-main .contract-field textarea.manual-required.filled { background:#eefaf0; border-color:#9fd5a8; box-shadow:inset 3px 0 0 #4fb66a; }
    .contract-wizard-main .req { color:#d92d20; font-size:13px; font-weight:900; }
    .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:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:12px; margin:8px 0 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-cloud .source-tag { position:relative; display:grid; place-items:center; aspect-ratio:1 / 1; min-width:0; border-width:2px; border-radius:16px; padding:18px 12px; font-size:14px; line-height:1.25; text-align:center; font-weight:780; }
    .source-tag-cloud .source-tag:hover { transform:translateY(-3px); box-shadow:0 12px 24px rgba(16,24,40,.11); }
    .source-tag-cloud .source-tag.active { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.14), 0 14px 28px rgba(16,24,40,.13); transform:translateY(-2px); }
    .source-tag-cloud .source-tag.active::after { content:"\2713"; position:absolute; top:9px; right:9px; width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:#2563eb; color:#fff; box-shadow:0 4px 10px rgba(37,99,235,.25); font-size:14px; font-weight:900; }
    .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 { position:sticky; bottom:0; z-index:4; display:flex; justify-content:space-between; gap:10px; padding:12px 16px; border-top:1px solid #dbe5f1; background:rgba(251,253,255,.96); backdrop-filter:blur(8px); border-radius:0 0 8px 8px; box-shadow:0 -8px 20px rgba(16,24,40,.045); }
    .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; align-items:center; gap:8px; flex-wrap:wrap; }
    .contract-nav-side:last-child { margin-left:auto; }
    #contractWizardPrev, #contractWizardNext, #genBtn { min-width:138px; min-height:40px; font-weight:750; }
    #contractWizardPrev { border-color:#dc2626; background:#dc2626; color:#fff; box-shadow:0 5px 12px rgba(220,38,38,.18); }
    #contractWizardPrev:hover { border-color:#b91c1c; background:#b91c1c; color:#fff; }
    #contractWizardPrev::before { content:"\2190"; display:inline-block; margin-right:8px; font-size:17px; line-height:1; transition:transform .14s ease; }
    #contractWizardNext::after, #genBtn::after { content:"\2192"; display:inline-block; margin-left:8px; font-size:17px; line-height:1; transition:transform .14s ease; }
    #contractWizardPrev:hover::before { transform:translateX(-3px); }
    #contractWizardNext:hover::after, #genBtn:hover::after { transform:translateX(3px); }
    #clearBtn, #demoBtn { color:#475467; background:#fff; }
    .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:1040px) {
  .source-tag-cloud { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .contract-step-contract-basics > .contract-field.contract-structure { grid-template-columns:1fr; }
  .source-tag-cloud { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contract-wizard-nav { align-items:stretch; }
  .contract-wizard-nav, .contract-nav-side { flex-direction:column; }
  .contract-nav-side:last-child { margin-left:0; }
  .contract-wizard-nav .btn { width:100%; }
}
    .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:1505; }
    .toast.show { opacity:1; }
    .toast.err { background:#b3261e; }
    .toast.warn { background:#a16207; }
    .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); }
    .integration-anaf-layout { display:grid; gap:14px; }
    .integration-anaf-layout .spv-panel { box-shadow:none; }
    .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; }
      .supplement-nonrecurring { grid-column:auto; }
      .supplement-nonrecurring-fields { 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)); }
      .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; } }

    #view-spv, #view-spv button, #view-spv input, #view-spv select { font-family:inherit; }
    #view-spv { font-weight:400; }
    #view-spv h1 { font-weight:600; }
    .balance-health { display:flex; align-items:center; justify-content:space-between; gap:18px; border:1px solid #bbf7d0; background:linear-gradient(135deg,#f0fdf4,#ecfeff); border-radius:18px; padding:16px 18px; margin-bottom:16px; font-weight:400; }
    .balance-health.warning { border-color:#fde68a; background:linear-gradient(135deg,#fffbeb,#fff7ed); }
    .balance-health.error { border-color:#fecaca; background:#fff1f2; }
    .balance-health > div:first-child { display:grid; gap:3px; }
    .balance-health strong { color:#0f172a; font-size:16px; font-weight:600; }
    .balance-health span { color:#475569; font-size:13px; }
    .balance-health-checks { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:7px; }
    .balance-health-checks span { border-radius:999px; padding:5px 9px; font-weight:600; font-size:11px; text-transform:uppercase; letter-spacing:.03em; }
    .balance-health-checks .pass { color:#166534; background:#dcfce7; }
    .balance-health-checks .fail { color:#991b1b; background:#fee2e2; }
    .balance-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
    .balance-stat { border:1px solid var(--line); background:#fff; border-radius:17px; padding:16px; box-shadow:0 12px 28px rgba(15,23,42,.04); }
    .balance-stat span,.balance-stat small { display:block; color:#64748b; }
    .balance-stat strong { display:block; color:#071224; font-size:28px; line-height:1.1; margin:7px 0 4px; font-weight:600; }
    .balance-tabs { display:flex; gap:7px; flex-wrap:wrap; padding:7px; border:1px solid var(--line); border-radius:16px 16px 0 0; background:#f8fafc; }
    .balance-tabs button { border:0; background:transparent; color:#475569; border-radius:11px; padding:9px 13px; font-weight:500; cursor:pointer; }
    .balance-tabs button span { display:inline-grid; place-items:center; min-width:21px; height:21px; margin-left:5px; border-radius:999px; background:#e2e8f0; font-size:11px; }
    .balance-tabs button.active { color:#fff; background:#0f766e; box-shadow:0 7px 18px rgba(15,118,110,.2); }
    .balance-tabs button.active span { background:rgba(255,255,255,.18); }
    .balance-content { min-height:360px; border:1px solid var(--line); border-top:0; border-radius:0 0 18px 18px; background:#fff; padding:18px; box-shadow:0 20px 48px rgba(15,23,42,.05); }
    .balance-content strong { font-weight:500; }
    .balance-loading,.balance-empty { border:1px dashed #cbd5e1; border-radius:15px; padding:24px; color:#64748b; text-align:center; background:#f8fafc; }
    .balance-errors { display:grid; gap:6px; margin-bottom:14px; }
    .balance-errors span { border:1px solid #fecaca; border-radius:10px; padding:8px 11px; background:#fff1f2; color:#9f1239; font-size:13px; }
    .balance-toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px; }
    .balance-search { display:grid; gap:5px; min-width:320px; color:#475569; font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; }
    .balance-search input,.balance-create-client select,.balance-create-workspace input,.balance-create-workspace select,.balance-delegate-box select { border:1px solid #cbd5e1; border-radius:11px; background:#fff; padding:10px 11px; color:#0f172a; font:inherit; text-transform:none; letter-spacing:normal; }
    .balance-toolbar-note { max-width:580px; color:#64748b; font-size:13px; line-height:1.45; }
    .balance-table-wrap { overflow:auto; border:1px solid var(--line); border-radius:14px; }
    .balance-table { width:100%; border-collapse:collapse; min-width:880px; }
    .balance-table th { padding:10px 12px; background:#f8fafc; color:#475569; font-size:11px; font-weight:600; text-align:left; text-transform:uppercase; letter-spacing:.045em; border-bottom:1px solid var(--line); }
    .balance-table td { padding:11px 12px; vertical-align:middle; border-bottom:1px solid #edf2f7; color:#334155; font-size:13px; }
    .balance-table tr:last-child td { border-bottom:0; }
    .balance-table tr.selected td { background:#f0fdfa; }
    .balance-client-name { display:grid; gap:3px; min-width:190px; }
    .balance-table td strong { font-weight:500; }
    .balance-client-name small,.balance-table-sub { display:block; margin-top:3px; color:#64748b; font-size:11px; }
    .balance-row-actions { display:flex; gap:6px; flex-wrap:wrap; }
    .balance-badge { display:inline-flex; align-items:center; gap:6px; white-space:nowrap; border-radius:999px; padding:6px 9px; background:#f1f5f9; color:#475569; font-weight:600; font-size:11px; }
    .balance-badge i { width:7px; height:7px; border-radius:50%; background:#94a3b8; }
    .balance-badge.ok { background:#dcfce7; color:#166534; }.balance-badge.ok i{background:#22c55e}
    .balance-badge.conectat { background:#dbeafe; color:#1e40af; }.balance-badge.conectat i{background:#3b82f6}
    .balance-badge.sincronizare { background:#fef3c7; color:#92400e; }.balance-badge.sincronizare i{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.18)}
    .balance-badge.atentie { background:#fee2e2; color:#991b1b; }.balance-badge.atentie i{background:#ef4444}
    .balance-badge.match-identified { background:#ecfdf3; color:#166534; }.balance-badge.match-identified i{background:#22c55e}
    .balance-badge.match-multiple { background:#fff7ed; color:#9a3412; }.balance-badge.match-multiple i{background:#f97316}
    .balance-badge.match-ignored { background:#f1f5f9; color:#64748b; }.balance-badge.match-ignored i{background:#94a3b8}
    .balance-badge.match-attention { background:#fee2e2; color:#991b1b; }.balance-badge.match-attention i{background:#ef4444}
    .balance-badge.match-unknown { background:#f8fafc; color:#64748b; }.balance-badge.match-unknown i{background:#cbd5e1}
    .balance-badge.compact { padding:4px 7px; font-size:10px; }
    .client-name-fisa-chip + .balance-badge { margin-left:5px; vertical-align:middle; }
.client-balance-action-icon{display:inline-grid;place-items:center;flex:0 0 24px;width:24px;height:24px;padding:1px!important;border:1px solid #cbd5e1;border-radius:7px;background:#f1f5f9;color:#64748b;box-shadow:0 4px 10px rgba(15,23,42,.08);cursor:pointer;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.client-balance-action-icon img{display:block;width:20px;height:20px;object-fit:cover;border-radius:4px;transition:filter .16s ease,opacity .16s ease}.client-balance-action-icon.connected{border-color:#86efac;background:#dcfce7;color:#15803d}.client-balance-action-icon.connected img{filter:none;opacity:1}.client-balance-action-icon.attention{border-color:#fbbf24;background:#fffbeb;color:#b45309}.client-balance-action-icon.attention img{filter:grayscale(.72) sepia(.2);opacity:.78}.client-balance-action-icon.disconnected{border-color:#cbd5e1;background:#f1f5f9;color:#94a3b8}.client-balance-action-icon.disconnected img{filter:grayscale(1);opacity:.62}.client-balance-action-icon:hover{transform:translateY(-1px);box-shadow:0 8px 16px rgba(15,23,42,.14)}
.client-detail-actions-inline .anaf-sync-btn{min-width:116px;height:36px;padding:7px 13px;font-size:12px;letter-spacing:0;border-radius:8px}.client-detail-actions-inline .anaf-sync-btn svg{width:15px;height:15px}.client-detail-actions-inline .client-balance-action-icon.expanded{display:inline-flex;flex:0 0 auto;width:auto;min-width:150px;height:36px;gap:8px;padding:6px 13px!important;border-radius:8px;font-size:12px;font-weight:650;line-height:1;white-space:nowrap}.client-detail-actions-inline .client-balance-action-icon.expanded img{width:22px;height:22px}.client-detail-actions-inline .client-balance-action-icon.expanded::after{content:"in-balanta.ro"}
    .balance-cui-plan { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 18px; padding:16px 18px; border:1px solid #99f6e4; border-radius:16px; background:linear-gradient(145deg,#f0fdfa,#fff); }
    .balance-cui-plan h3 { margin:3px 0 4px; font-size:18px; }.balance-cui-plan p{margin:0;color:#52657a;line-height:1.45}.balance-cui-plan.expanded{display:block}.balance-cui-plan.loading{justify-content:center;min-height:90px}
    .balance-cui-plan-head,.balance-cui-plan-actions { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.balance-cui-plan-actions{align-items:center;margin-top:14px}.balance-cui-plan-actions>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
    .balance-cui-plan-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin:14px 0; }.balance-cui-plan-summary span{display:block;padding:10px 12px;border:1px solid #ccfbf1;border-radius:12px;background:#fff;color:#52657a}.balance-cui-plan-summary strong{display:block;color:#0f766e;font-size:20px}
    .balance-cui-plan-table input { width:17px; height:17px; accent-color:#0f766e; }.balance-cui-plan-table th:first-child,.balance-cui-plan-table td:first-child{width:34px;text-align:center}
    .balance-cui-excluded { margin-top:12px; color:#52657a; }.balance-cui-excluded summary{cursor:pointer;font-weight:600}.balance-cui-excluded ul{display:grid;gap:6px;margin:9px 0 0;padding-left:20px}.balance-cui-excluded li span{display:block;font-size:12px}
    .balance-client-work { margin-top:18px; padding:18px; border:1px solid #99f6e4; border-radius:16px; background:linear-gradient(145deg,#f0fdfa,#fff); scroll-margin-top:18px; }
    .balance-client-work-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
    .balance-client-work-head h3 { margin:4px 0; font-size:20px; font-weight:600; }.balance-client-work-head p{margin:0;color:#64748b}
    .balance-candidate { border:1px solid var(--line); border-radius:14px; background:#fff; padding:13px; margin-top:10px; }
    .balance-match-cell { display:grid; gap:4px; min-width:120px; }.balance-match-cell small { color:#64748b; font-size:10px; line-height:1.25; }
    .balance-match-complete { border-radius:999px; padding:5px 8px; background:#ecfdf3; color:#166534; font-size:11px; font-weight:650; white-space:nowrap; }
    .balance-candidate-head,.balance-workspace-title { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
    .balance-candidate-head > div,.balance-workspace-title > div { display:grid; gap:3px; }.balance-candidate-head small,.balance-workspace-title small{color:#64748b}
    .balance-candidate-head strong,.balance-workspace-title strong { font-weight:600; }
    .balance-candidate-head > span,.balance-workspace-title > span { border-radius:999px; padding:5px 8px; background:#ecfeff; color:#155e75; font-size:11px; font-weight:500; }
    .balance-id-lines { display:flex; flex-wrap:wrap; gap:6px; margin:9px 0; }
    .balance-id-lines code,.balance-table code { display:inline-block; max-width:100%; overflow:hidden; text-overflow:ellipsis; border:1px solid #e2e8f0; background:#f8fafc; color:#475569; border-radius:7px; padding:4px 6px; font-size:10px; }
    .balance-candidate-context { display:flex; align-items:center; justify-content:space-between; gap:10px; border-top:1px solid #edf2f7; padding-top:9px; margin-top:9px; }
    .balance-candidate-context.direct { color:#92400e; }.balance-candidate-context small{color:#64748b}
    .balance-candidate-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.balance-ignored-label{border-radius:999px;padding:5px 8px;background:#f1f5f9;color:#64748b;font-size:11px;font-weight:650}
    .balance-saved-link { border:1px solid #86efac; border-radius:13px; padding:11px; background:#f0fdf4; }.balance-saved-link.stale{border-color:#fca5a5;background:#fff1f2}
    .balance-status-strip { display:flex; flex-wrap:wrap; gap:8px; margin:11px 0; }.balance-status-strip span{border-radius:9px;background:#ecfeff;padding:7px 9px;color:#155e75;font-size:12px}.balance-status-strip.stale span{background:#fff7ed;color:#9a3412}
    .balance-create-client { display:flex; align-items:flex-end; gap:10px; flex-wrap:wrap; border-top:1px dashed #99f6e4; margin-top:14px; padding-top:14px; }
    .balance-create-client label { display:grid; gap:5px; min-width:300px; color:#475569; font-size:12px; font-weight:600; }
    .balance-workspace-layout { display:grid; grid-template-columns:minmax(300px,.78fr) minmax(420px,1.22fr); gap:16px; align-items:start; }
    .balance-create-workspace { display:grid; gap:11px; border:1px solid #99f6e4; border-radius:15px; padding:16px; background:#f0fdfa; position:sticky; top:14px; }
    .balance-create-workspace h3{margin:4px 0;font-weight:600}.balance-create-workspace p{margin:0;color:#64748b;line-height:1.45}
    .balance-create-workspace label { display:grid; gap:5px; color:#334155; font-size:12px; font-weight:600; }
    .balance-owner-fields { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
    .balance-workspace-list,.balance-signature-list { display:grid; gap:11px; }
    .balance-workspace-card,.balance-signature-card { border:1px solid var(--line); border-radius:15px; padding:14px; background:#fff; }
    .balance-owner { display:grid; gap:2px; margin:10px 0; color:#334155; }.balance-owner small{color:#64748b}
    .balance-policy-note { display:flex; align-items:flex-start; gap:10px; border:1px solid #bae6fd; border-radius:13px; padding:12px; background:#f0f9ff; color:#075985; margin-bottom:14px; }.balance-policy-note strong{font-weight:600}.balance-policy-note span{line-height:1.45}
    .balance-signature-card { display:grid; grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) minmax(250px,.8fr); gap:15px; align-items:center; }
    .balance-signature-card h3{margin:5px 0;font-weight:600}.balance-signature-card p{margin:0;color:#64748b}.balance-signature-status{display:inline-flex;border-radius:999px;padding:5px 8px;background:#dcfce7;color:#166534;font-weight:600;font-size:11px}
    .balance-signature-card.expiringSoon .balance-signature-status{background:#fef3c7;color:#92400e}
    .balance-signature-details { display:grid; gap:10px; }
    .balance-signature-dates { display:grid; gap:5px; color:#64748b; font-size:12px; }.balance-date-value{color:#334155;font-weight:500}
    .balance-allowed-companies { display:grid; gap:6px; color:#475569; font-size:12px; }.balance-allowed-companies>span{font-weight:600;color:#334155}.balance-allowed-companies small{color:#64748b;line-height:1.4}
    .balance-allowed-company-list { display:grid; gap:5px; max-height:150px; overflow:auto; padding-right:3px; }
    .balance-allowed-company-list>div { display:grid; grid-template-columns:minmax(72px,auto) 1fr; align-items:center; gap:7px; border:1px solid #e2e8f0; border-radius:8px; padding:6px 7px; background:#f8fafc; }
    .balance-allowed-company-list code { color:#334155; font-size:11px; font-weight:500; }.balance-allowed-company-list span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b}
    .balance-delegate-box { display:grid; gap:8px; }
    .balance-company-rule { display:block; border-radius:8px; padding:7px 8px; }.balance-company-rule.unrestricted{background:#dcfce7;color:#166534!important}.balance-company-rule.blocked{background:#fee2e2;color:#991b1b!important}.balance-company-rule.unknown{background:#f1f5f9;color:#475569!important}
    .balance-active-delegations { margin:0 0 16px; padding:14px; border:1px solid #c7d2fe; border-radius:15px; background:#f8faff; }.balance-delegation-empty{margin-bottom:16px}
    .balance-section-title { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:12px; }.balance-section-title h3{margin:3px 0;font-size:19px;font-weight:650}.balance-section-title p{margin:0;color:#64748b}.balance-section-title>span{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#e0e7ff;color:#3730a3;font-weight:700}
    .balance-invoice-toolbar { display:grid; grid-template-columns:minmax(250px,1.4fr) repeat(3,minmax(140px,.7fr)) auto; gap:9px; align-items:end; margin-bottom:14px; }.balance-invoice-toolbar label{display:grid;gap:5px;color:#475569;font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.04em}.balance-invoice-toolbar select,.balance-invoice-toolbar input{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:10px;color:#0f172a;font:inherit;text-transform:none;letter-spacing:normal}
    .balance-invoice-table{min-width:1060px}.balance-invoice-direction,.balance-validation{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:650}.balance-invoice-direction.received{background:#dbeafe;color:#1d4ed8}.balance-invoice-direction.sent{background:#dcfce7;color:#166534}.balance-invoice-direction.unknown{background:#f1f5f9;color:#475569}.balance-validation.ok{background:#dcfce7;color:#166534}.balance-validation.warning{background:#fef3c7;color:#92400e}
    .balance-invoice-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;color:#64748b;font-size:12px}.balance-invoice-detail{margin-top:16px;padding:16px;border:1px solid #a5b4fc;border-radius:15px;background:linear-gradient(145deg,#eef2ff,#fff);scroll-margin-top:16px}.balance-invoice-parties{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px}.balance-invoice-parties>div{display:grid;gap:3px;border:1px solid #dbeafe;border-radius:11px;padding:11px;background:#fff}.balance-invoice-parties small,.balance-invoice-parties span{color:#64748b}.balance-invoice-parties strong{color:#0f172a;font-weight:650}.balance-invoice-lines{min-width:720px}.balance-occurrences{display:grid;gap:7px;margin-top:12px}.balance-occurrences>span{font-weight:650;color:#334155}.balance-occurrences>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,.8fr) minmax(180px,1.2fr);gap:8px;align-items:center;border:1px solid #e2e8f0;border-radius:9px;padding:8px;background:#fff;color:#475569}.balance-occurrences code{overflow:hidden;text-overflow:ellipsis}
    .balance-operation-state { display:inline-flex; border-radius:999px; padding:5px 8px; font-size:11px; font-weight:600; background:#e2e8f0; color:#334155; }
    .balance-operation-state.succeeded{background:#dcfce7;color:#166534}.balance-operation-state.failed{background:#fee2e2;color:#991b1b}.balance-operation-state.pending{background:#fef3c7;color:#92400e}.balance-operation-state.unknown{background:#ffedd5;color:#9a3412}
    .balance-error-text{color:#b91c1c}.balance-client-card{border-color:#bae6fd!important;background:linear-gradient(145deg,#f0f9ff,#fff)!important}
    .balance-client-mini-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:10px 0; }.balance-client-mini-grid span{display:grid;gap:3px;border:1px solid #e2e8f0;border-radius:9px;padding:8px;background:#fff}.balance-client-mini-grid small{color:#64748b}.balance-client-mini-grid strong{color:#0f172a;overflow:hidden;text-overflow:ellipsis;font-weight:500}
    @media (max-width:1100px){.balance-summary{grid-template-columns:1fr 1fr}.balance-workspace-layout{grid-template-columns:1fr}.balance-create-workspace{position:static}.balance-signature-card{grid-template-columns:1fr 1fr}.balance-delegate-box{grid-column:1/-1}.balance-invoice-toolbar{grid-template-columns:1fr 1fr}.balance-invoice-toolbar label:first-child{grid-column:1/-1}}
    @media (max-width:720px){.balance-health,.balance-toolbar,.balance-client-work-head,.balance-section-title,.balance-invoice-pagination,.balance-cui-plan,.balance-cui-plan-head,.balance-cui-plan-actions{align-items:stretch;flex-direction:column}.balance-summary,.balance-cui-plan-summary{grid-template-columns:1fr}.balance-search{min-width:0;width:100%}.balance-owner-fields,.balance-signature-card,.balance-client-mini-grid,.balance-invoice-toolbar,.balance-invoice-parties{grid-template-columns:1fr}.balance-invoice-toolbar label:first-child{grid-column:auto}.balance-content{padding:12px}.balance-create-client label{min-width:0;width:100%}.balance-occurrences>div{grid-template-columns:1fr}}
    .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-detail-head .btn.mini.client-recurring-action {
      width: auto;
      min-width: 205px;
      padding: 0 18px;
      border: 1px solid #15803d;
      background: #16a34a;
      color: #fff;
      box-shadow: 0 9px 22px rgba(22,163,74,.24);
      overflow: visible;
    }
    .client-detail-actions-inline .btn.mini.client-recurring-action:hover {
      border-color: #166534;
      background: #15803d;
      color: #fff;
      box-shadow: 0 14px 28px rgba(22,163,74,.28);
    }
    .client-detail-head .btn.mini.client-payment-action {
      width: auto;
      min-width: 160px;
      padding: 0 18px;
      border: 1px solid #9f1239;
      background: #be123c;
      color: #fff;
      font-weight: 700;
      box-shadow: 0 9px 22px rgba(190,18,60,.22);
    }
    .client-detail-actions-inline .btn.mini.client-payment-action:hover {
      border-color: #881337;
      background: #9f1239;
      color: #fff;
      box-shadow: 0 14px 28px rgba(159,18,57,.27);
    }

.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;
    }
    .client-detail-head .btn.mini.client-onrc-suspend-action {
      width: auto;
      min-width: 190px;
      padding: 0 18px;
      border: 2px solid #7c3aed;
      background: linear-gradient(135deg, #f5f3ff, #ede9fe);
      color: #5b21b6;
      font-weight: 800;
      letter-spacing: .01em;
      box-shadow: 0 8px 20px rgba(109,40,217,.16), inset 0 0 0 1px rgba(255,255,255,.72);
    }
    .client-detail-actions-inline .btn.mini.client-onrc-suspend-action:hover {
      border-color: #6d28d9;
      background: linear-gradient(135deg, #ede9fe, #ddd6fe);
      color: #4c1d95;
      box-shadow: 0 13px 27px rgba(109,40,217,.24);
    }
    /* 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 .supp-percent-badge {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 16px;
      margin-left: 4px;
      padding: 1px 5px;
      border: 1px solid transparent;
      border-radius: 999px;
      font-size: 9px;
      font-weight: 900;
      line-height: 1;
      letter-spacing: .02em;
      vertical-align: middle;
      white-space: nowrap;
      box-sizing: border-box;
    }
    #suppFlowBody .supp-percent-badge.is-collaborator { border-color:#86efac; background:#dcfce7; color:#166534; }
    #suppFlowBody .supp-percent-badge.is-full { border-color:#fca5a5; background:#fee2e2; color:#b91c1c; }
    #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-inflation-save {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  gap: 5px;
  min-width: 220px;
}
#view-actualizari .updates-inflation-save .btn {
  min-height: 38px;
  padding-inline: 18px;
}
#view-actualizari .updates-inflation-save small {
  font-size: 11px;
}
#view-actualizari #updatesInflationTotal[readonly],
#view-actualizari #updatesInflationServices[readonly] {
  background: #f1f5f9;
  color: #334155;
  cursor: not-allowed;
}
#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);
  }
}

/* Creare controlata a unui abonament din Fisa clientului. */
.action-panel:has(.recurring-create-draft){width:min(1320px,calc(100vw - 32px));max-height:calc(100vh - 32px)}
.action-panel:has(.recurring-create-draft) .action-body{padding:16px 20px;background:#f8fafc}
.recurring-create-draft{display:grid;gap:14px}
.recurring-create-note{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e40af}
.recurring-create-note.manual{border-color:#fcd34d;background:#fffbeb;color:#92400e}
.recurring-create-note strong{white-space:nowrap}
.recurring-create-note span{font-size:13px;line-height:1.45}
.recurring-create-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;border:1px solid #dbe5f4;border-radius:14px;background:#fff}
.recurring-create-summary label{display:grid;gap:5px;min-width:0}
.recurring-create-summary label>span,.recurring-create-options label>span:first-child{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#667085}
.recurring-create-summary strong{min-height:38px;display:flex;align-items:center;padding:9px 10px;border:1px solid #edf2f7;border-radius:9px;background:#f8fafc;overflow-wrap:anywhere}
.recurring-create-summary input,.recurring-create-summary select,.recurring-create-options input{width:100%;min-height:38px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:9px;padding:8px 10px;background:#fff;color:#111827}
.recurring-create-summary input:focus,.recurring-create-summary select:focus,.recurring-create-options input:focus,.recurring-create-month input:focus,.recurring-create-line input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.12)}
.recurring-create-period{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center;padding:11px 14px;border:1px solid #a7f3d0;border-radius:12px;background:#ecfdf5}
.recurring-create-period>span{font-size:12px;font-weight:750;color:#047857}
.recurring-create-period>strong{font-size:18px;color:#065f46}
.recurring-create-period>small{grid-column:1 / -1;color:#64748b}
.recurring-create-calendar{padding:14px;border:1px solid #dbe5f4;border-radius:14px;background:#fff}
.recurring-create-calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.recurring-create-calendar-head>div:first-child{display:grid;gap:3px}
.recurring-create-calendar-head span,.recurring-create-lines-head span{font-size:12px;color:#667085}
.recurring-create-year-tabs{display:flex;gap:6px;flex-wrap:wrap}
.recurring-create-month-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:8px}
.recurring-create-month{display:grid;gap:5px;padding:8px;border:1px solid #86efac;border-radius:10px;background:#f0fdf4}
.recurring-create-month span{font-size:11px;font-weight:750;color:#166534;text-transform:capitalize}
.recurring-create-month input{width:100%;min-height:34px;box-sizing:border-box;border:1px solid #86efac;border-radius:7px;padding:7px 8px;background:#fff}
.recurring-create-lines-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.recurring-create-lines-head>div{display:grid;gap:2px}
.recurring-create-lines{display:grid;gap:8px}
.recurring-create-line{display:grid;grid-template-columns:minmax(280px,1fr) 110px 110px 150px auto;gap:8px;align-items:center;padding:10px;border:1px solid #dbe5f4;border-radius:12px;background:#fff}
.recurring-create-line input{width:100%;min-height:38px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;padding:8px 9px}
.recurring-create-options{display:grid;grid-template-columns:minmax(220px,320px) minmax(320px,1fr);gap:12px}
.recurring-create-options>label{display:grid;gap:5px;padding:12px;border:1px solid #dbe5f4;border-radius:12px;background:#fff}
.recurring-create-options small{color:#667085}
.recurring-create-options .recurring-create-active{display:flex;align-items:center;gap:12px;border-color:#86efac;background:#f0fdf4}
.recurring-create-active>input{width:20px;height:20px;min-height:0;flex:0 0 auto}
.recurring-create-active>span{display:grid;gap:3px}
.recurring-create-active>span strong{color:#166534}
@media(max-width:1050px){.recurring-create-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.recurring-create-month-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.recurring-create-line{grid-template-columns:1fr 100px 100px 130px auto}}
@media(max-width:720px){.action-panel:has(.recurring-create-draft){width:100%;max-height:calc(100vh - 16px)}.recurring-create-summary,.recurring-create-options{grid-template-columns:1fr}.recurring-create-month-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}.recurring-create-calendar-head{display:grid}.recurring-create-line{grid-template-columns:1fr 1fr}.recurring-create-line input:first-child{grid-column:1 / -1}.recurring-create-line .btn{grid-column:1 / -1}.recurring-create-note{display:grid}}

/* Imobile */
:root {
  --estate-ink: #17242f;
  --estate-muted: #6b7884;
  --estate-line: #dce3e8;
  --estate-green: #1f7a61;
  --estate-green-soft: #e8f5ef;
  --estate-sand: #f2c76e;
  --estate-blue: #3976d9;
  --estate-bg: #f4f7f8;
}
#view-imobile {
  min-height: 100%;
  color: var(--estate-ink);
}
.estate-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  overflow: hidden;
  margin-bottom: 16px;
  padding: 27px 30px;
  border: 1px solid #cfded7;
  border-radius: 18px;
  background:
    radial-gradient(circle at 85% 20%, rgba(242, 199, 110, .4), transparent 24%),
    linear-gradient(125deg, #edf8f3 0%, #f8fbf9 54%, #fff8e9 100%);
}
.estate-hero::after {
  content: "";
  position: absolute;
  right: -30px;
  bottom: -70px;
  width: 250px;
  height: 170px;
  border: 30px solid rgba(31, 122, 97, .07);
  border-radius: 50%;
  transform: rotate(-15deg);
}
.estate-hero-copy,
.estate-add-button { position: relative; z-index: 1; }
.estate-hero h1 {
  margin: 5px 0 4px;
  color: #12251f;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1;
  letter-spacing: -.03em;
}
.estate-hero p { margin: 0; color: var(--estate-muted); font-size: 14px; }
.estate-eyebrow {
  color: var(--estate-green);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.estate-add-button {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 9px 16px;
  border: 0;
  border-radius: 11px;
  background: var(--estate-green);
  box-shadow: 0 9px 22px rgba(31, 122, 97, .2);
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.estate-add-button span { font-size: 22px; font-weight: 400; line-height: 1; }
.estate-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.estate-kpi {
  position: relative;
  display: grid;
  gap: 5px;
  overflow: hidden;
  min-height: 113px;
  padding: 16px;
  border: 1px solid var(--estate-line);
  border-radius: 14px;
  background: #fff;
}
.estate-kpi::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 48px;
  height: 4px;
  border-radius: 0 0 0 4px;
  background: #7b94a7;
}
.estate-kpi.market::after { background: var(--estate-blue); }
.estate-kpi.gain::after { background: var(--estate-green); }
.estate-kpi.rent::after { background: var(--estate-sand); }
.estate-kpi.debt::after { background: #d8735d; }
.estate-kpi > span { color: var(--estate-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.estate-kpi > strong { align-self: end; font-size: clamp(19px, 2vw, 26px); letter-spacing: -.025em; }
.estate-kpi > small { color: var(--estate-muted); font-size: 11px; }
.estate-overview-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(250px, .75fr) minmax(300px, 1fr);
  gap: 12px;
  margin-bottom: 16px;
}
.estate-panel {
  min-width: 0;
  padding: 18px;
  border: 1px solid var(--estate-line);
  border-radius: 15px;
  background: #fff;
}
.estate-panel-title,
.estate-form-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 15px;
}
.estate-panel-title div,
.estate-form-section-title div { display: grid; gap: 3px; }
.estate-panel-title strong,
.estate-form-section-title strong { font-size: 14px; }
.estate-panel-title span,
.estate-form-section-title span { color: var(--estate-muted); font-size: 11px; }
.estate-type-chart { display: grid; gap: 11px; }
.estate-type-row {
  display: grid;
  grid-template-columns: 30px minmax(100px, .75fr) minmax(90px, 1fr) 76px;
  align-items: center;
  gap: 9px;
}
.estate-type-icon {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border-radius: 8px;
  background: var(--estate-green-soft);
  color: var(--estate-green);
}
.estate-type-icon svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.estate-type-name { display: grid; min-width: 0; }
.estate-type-name strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.estate-type-name small { color: var(--estate-muted); font-size: 10px; }
.estate-type-bar { height: 7px; overflow: hidden; border-radius: 10px; background: #edf1f3; }
.estate-type-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--estate-green), #60ad8d); }
.estate-type-value { font-size: 11px; text-align: right; }
.estate-ring-wrap { display: grid; place-items: center; gap: 15px; }
.estate-ring {
  display: grid;
  width: 142px;
  height: 142px;
  padding: 17px;
  place-items: center;
  border-radius: 50%;
}
.estate-ring > div {
  display: grid;
  width: 100%;
  height: 100%;
  place-content: center;
  border-radius: 50%;
  background: #fff;
  text-align: center;
}
.estate-ring strong { font-size: 25px; }
.estate-ring span { color: var(--estate-muted); font-size: 10px; text-transform: uppercase; }
.estate-status-legend { display: grid; width: 100%; grid-template-columns: 1fr 1fr; gap: 7px 10px; }
.estate-status-legend span { display: grid; grid-template-columns: 7px 20px 1fr; align-items: center; gap: 4px; color: var(--estate-muted); font-size: 9px; }
.estate-status-legend i { width: 7px; height: 7px; border-radius: 50%; }
.estate-status-legend b { color: var(--estate-ink); font-size: 10px; }
.estate-alert-count {
  display: grid;
  min-width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 20px;
  background: #fff0dc;
  color: #9b5b10 !important;
  font-weight: 800;
}
.estate-alert-list {
  display: grid;
  gap: 7px;
  max-height: 235px;
  overflow: auto;
  padding-right: 3px;
}
.estate-alert {
  display: grid;
  grid-template-columns: 8px 1fr auto;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 9px;
  border: 1px solid #e6eaed;
  border-radius: 9px;
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.estate-alert-dot { width: 7px; height: 7px; border-radius: 50%; background: #8794a1; }
.estate-alert.soon .estate-alert-dot { background: #e8a12b; }
.estate-alert.late .estate-alert-dot { background: #cf4e4e; }
.estate-alert > span:nth-child(2) { display: grid; min-width: 0; }
.estate-alert strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.estate-alert small { color: var(--estate-muted); font-size: 9px; }
.estate-alert > b { color: var(--estate-muted); font-size: 9px; white-space: nowrap; }
.estate-projects {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-bottom: 12px;
}
.estate-project-card {
  display: grid;
  gap: 3px;
  padding: 13px 15px;
  border: 1px solid var(--estate-line);
  border-radius: 12px;
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.estate-project-card:hover,
.estate-project-card.active { border-color: #63a98e; background: #f0f8f4; }
.estate-project-card span { color: var(--estate-green); font-size: 10px; font-weight: 800; text-transform: uppercase; }
.estate-project-card strong { font-size: 16px; }
.estate-project-card small { color: var(--estate-muted); font-size: 10px; }
.estate-toolbar {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(140px, .35fr)) auto;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid var(--estate-line);
  border-radius: 13px;
  background: #fff;
}
.estate-search { position: relative; }
.estate-search svg {
  position: absolute;
  top: 50%;
  left: 11px;
  width: 17px;
  height: 17px;
  transform: translateY(-50%);
  fill: none;
  stroke: #82909c;
  stroke-width: 1.8;
}
.estate-toolbar input,
.estate-toolbar select {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid #d4dde3;
  border-radius: 9px;
  background: #fbfcfd;
  color: var(--estate-ink);
  font: inherit;
  font-size: 12px;
}
.estate-search input { padding-left: 36px; }
.estate-result-count { color: var(--estate-muted); font-size: 11px; white-space: nowrap; }
.estate-card-grid { display: grid; gap: 8px; }
.estate-card {
  display: grid;
  grid-template-columns: 48px minmax(230px, 1fr) minmax(330px, .9fr) 18px;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 13px 15px;
  border: 1px solid var(--estate-line);
  border-radius: 13px;
  background: #fff;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.estate-card:hover {
  z-index: 1;
  border-color: #9fc8b7;
  box-shadow: 0 9px 24px rgba(28, 53, 44, .08);
  transform: translateY(-1px);
}
.estate-card-icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border-radius: 12px;
  background: #e9f5f0;
  color: var(--estate-green);
}
.estate-card-icon svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.estate-card-main { display: grid; min-width: 0; gap: 3px; }
.estate-card-main > strong { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.estate-card-topline { display: flex; align-items: center; gap: 7px; }
.estate-status {
  padding: 3px 7px;
  border-radius: 20px;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.estate-status.rented { background: #e3f5ed; color: #167154; }
.estate-status.free { background: #fff1d9; color: #9b620f; }
.estate-status.own { background: #e8f0ff; color: #2f63b7; }
.estate-status.pending { background: #edf0f3; color: #65717d; }
.estate-status.sold { background: #f3e8e8; color: #8d4a4a; }
.estate-card-number { color: var(--estate-muted); font-size: 9px; }
.estate-address { overflow: hidden; color: #4e5d69; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.estate-card-project { color: var(--estate-muted); font-size: 9px; }
.estate-card-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.estate-card-metrics > span { display: grid; gap: 2px; padding-left: 11px; border-left: 1px solid #e5eaed; }
.estate-card-metrics small { color: var(--estate-muted); font-size: 9px; }
.estate-card-metrics strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.estate-card-chevron { color: #92a0aa; font-size: 26px; }
.estate-empty,
.estate-loading {
  padding: 48px 20px;
  border: 1px dashed #ccd6dc;
  border-radius: 14px;
  background: #fafcfc;
  color: var(--estate-muted);
  text-align: center;
}
.estate-empty-small { padding: 24px 8px; color: var(--estate-muted); font-size: 11px; text-align: center; }
body.estate-drawer-open { overflow: hidden; }
.estate-drawer { position: fixed; z-index: 1400; inset: 0; display: flex; justify-content: flex-end; }
.estate-drawer-backdrop { position: absolute; inset: 0; border: 0; background: rgba(17, 31, 39, .42); backdrop-filter: blur(3px); cursor: default; }
.estate-drawer-panel {
  position: relative;
  display: flex;
  width: min(820px, 94vw);
  height: 100%;
  flex-direction: column;
  overflow: hidden;
  background: var(--estate-bg);
  box-shadow: -20px 0 60px rgba(14, 30, 40, .2);
  animation: estateDrawerIn .22s ease-out;
}
@keyframes estateDrawerIn { from { transform: translateX(35px); opacity: .6; } to { transform: translateX(0); opacity: 1; } }
.estate-drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 19px 22px;
  border-bottom: 1px solid var(--estate-line);
  background: #fff;
}
.estate-drawer-header h2 { margin: 4px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: 25px; }
.estate-close-button {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border: 1px solid var(--estate-line);
  border-radius: 50%;
  background: #fff;
  color: #54636f;
  font-size: 24px;
  cursor: pointer;
}
#estateForm { display: flex; min-height: 0; flex: 1; flex-direction: column; }
.estate-form-sections { display: grid; gap: 11px; overflow: auto; padding: 15px 18px 7px; }
.estate-form-section {
  padding: 16px;
  border: 1px solid var(--estate-line);
  border-radius: 13px;
  background: #fff;
}
.estate-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.estate-field { display: grid; gap: 5px; min-width: 0; }
.estate-field-wide { grid-column: 1 / -1; }
.estate-field > span { color: #667480; font-size: 10px; font-weight: 800; text-transform: uppercase; }
.estate-field input,
.estate-field select,
.estate-field textarea {
  width: 100%;
  min-height: 39px;
  padding: 8px 10px;
  border: 1px solid #ced8de;
  border-radius: 8px;
  background: #fbfcfc;
  color: var(--estate-ink);
  font: inherit;
  font-size: 12px;
}
.estate-field textarea { min-height: 66px; resize: vertical; }
.estate-documents-section { margin: 4px 18px 12px; }
.estate-upload-row { display: flex; align-items: center; gap: 8px; }
.estate-upload-row input {
  min-width: 0;
  flex: 1;
  padding: 7px;
  border: 1px dashed #bfcbd2;
  border-radius: 8px;
  background: #fafcfc;
  font-size: 11px;
}
.estate-document-list { display: grid; gap: 7px; margin-top: 10px; }
.estate-document {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 7px;
  padding: 7px 8px;
  border: 1px solid #e0e6e9;
  border-radius: 8px;
}
.estate-document a { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 8px; min-width: 0; color: inherit; text-decoration: none; }
.estate-document a > span { display: grid; height: 28px; place-items: center; border-radius: 6px; background: #eef4f1; color: var(--estate-green); font-size: 8px; font-weight: 900; }
.estate-document a strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.estate-document a small { color: var(--estate-muted); font-size: 9px; }
.estate-document > button { border: 0; background: transparent; color: #a55757; font-size: 18px; cursor: pointer; }
.estate-document-empty { padding: 13px; border-radius: 8px; background: #f5f8f8; color: var(--estate-muted); font-size: 10px; text-align: center; }
.estate-form-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding: 13px 18px;
  border-top: 1px solid var(--estate-line);
  background: #fff;
}
.estate-form-footer > span { color: var(--estate-muted); font-size: 10px; }
.estate-form-footer > div { display: flex; gap: 7px; }
@media (max-width: 1280px) {
  .estate-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .estate-overview-grid { grid-template-columns: 1.2fr .8fr; }
  .estate-alert-panel { grid-column: 1 / -1; }
  .estate-projects { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .estate-overview-grid { grid-template-columns: 1fr; }
  .estate-alert-panel { grid-column: auto; }
  .estate-toolbar { grid-template-columns: 1fr 1fr; }
  .estate-search { grid-column: 1 / -1; }
  .estate-card { grid-template-columns: 44px 1fr 18px; }
  .estate-card-metrics { grid-column: 2 / 3; }
}
@media (max-width: 620px) {
  .estate-hero { align-items: flex-start; flex-direction: column; padding: 20px; }
  .estate-kpis { grid-template-columns: 1fr 1fr; }
  .estate-overview-grid { grid-template-columns: 1fr; }
  .estate-projects { grid-template-columns: 1fr; }
  .estate-toolbar { grid-template-columns: 1fr; }
  .estate-search { grid-column: auto; }
  .estate-result-count { padding: 5px; }
  .estate-card { grid-template-columns: 42px 1fr 14px; padding: 12px; }
  .estate-card-metrics { grid-column: 1 / -1; }
  .estate-form-grid { grid-template-columns: 1fr; }
  .estate-field-wide { grid-column: auto; }
  .estate-drawer-panel { width: 100%; }
  .estate-form-footer { align-items: stretch; flex-direction: column; }
  .estate-form-footer > div { justify-content: flex-end; }
}

/* Stare vizuală unitară pentru câmpurile de date din toată aplicația.
   Căutările și controalele de navigare sunt excluse în runtime. */
:root {
  --ji-field-empty-bg: #fff2f2;
  --ji-field-empty-border: #edb2b2;
  --ji-field-filled-bg: #eff9f1;
  --ji-field-filled-border: #a8d2af;
}
input[data-ji-field-state="empty"],
select[data-ji-field-state="empty"],
textarea[data-ji-field-state="empty"] {
  background-color: var(--ji-field-empty-bg) !important;
  border-color: var(--ji-field-empty-border) !important;
}
input[data-ji-field-state="filled"],
select[data-ji-field-state="filled"],
textarea[data-ji-field-state="filled"] {
  background-color: var(--ji-field-filled-bg) !important;
  border-color: var(--ji-field-filled-border) !important;
}
input[data-ji-field-state]:focus,
select[data-ji-field-state]:focus,
textarea[data-ji-field-state]:focus {
  border-color: var(--brand) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
}
input[data-ji-field-state]:disabled,
select[data-ji-field-state]:disabled,
textarea[data-ji-field-state]:disabled,
input[data-ji-field-state][readonly],
textarea[data-ji-field-state][readonly] {
  background-color: #f3f5f8 !important;
  border-color: var(--line) !important;
}

/* Modul separat pentru penalitatile clientilor. */
.penalty-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.penalty-module-card .section-title { align-items: flex-start; gap: 16px; }
.penalty-table th:nth-child(1) { min-width: 165px; }
.penalty-table th:nth-child(2) { min-width: 190px; }
.penalty-table th:nth-child(5) { min-width: 130px; }
.penalty-table th:nth-child(6) { min-width: 170px; }
.penalty-table th:last-child { min-width: 185px; }
.client-penalty-action { background: #7c3aed; border-color: #7c3aed; color: #fff; }
.client-penalty-action:hover { background: #6d28d9; border-color: #6d28d9; }
.penalty-editor-list { margin-top: 14px; max-height: 48vh; overflow: auto; border: 1px solid var(--line); border-radius: 12px; }
.penalty-editor-table { min-width: 850px; }
.penalty-editor-table th,
.penalty-editor-table td { vertical-align: middle; }
.penalty-editor-table tfoot td { position: sticky; bottom: 0; background: #f8fafc; border-top: 1px solid var(--line); }
.penalty-final-input { width: 120px; min-width: 120px; text-align: right; font-weight: 750; }
.penalty-warning { border-left-color: #7c3aed; background: #f5f3ff; color: #5b21b6; }

@media (max-width: 980px) {
  .penalty-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .penalty-summary { grid-template-columns: 1fr; }
}

/* Continutul lat ramane derulabil in propriul panou pe ecrane mici. */
@media (max-width: 980px) {
  .sidebar { max-height:58vh; overflow:auto; }
  .nav-section-toggle .chev { display:inline-flex; margin-left:auto; }
  .client-table-wrap { max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
  .trend-bars { max-width:100%; overflow-x:auto; overscroll-behavior-inline:contain; }
  .trend-bars > * { min-width:720px; }
}

@media (max-width: 620px) {
  .content { padding:12px 10px 40px; overflow-x:hidden; }
  .nav { grid-template-columns:1fr; padding:9px 7px 12px; }
  .topbar { padding:0 10px; }
  .hero { align-items:flex-start; flex-direction:column; padding:15px; }
  .stats, .client-summary, .restante-stats, .colab-admin-stats, .access-log-stats, .history-stats, .email-log-stats { grid-template-columns:1fr; }
  .email-preview-meta { grid-template-columns:1fr; }
  .email-preview-meta div.wide { grid-column:auto; }
  .action-modal { width:calc(100vw - 16px); max-height:calc(100vh - 16px); }
}

.gss-company-identification{margin:15px 22px;padding:18px;border:1px solid #cbdced;border-radius:12px;background:#f7faff}
.gss-identification-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}
.gss-identification-heading h3{margin:0 0 8px;font-size:16px;color:#244c74}
.gss-identification-heading p{margin:0;font-size:13px}
.gss-identification-heading .gss-sub{display:block;margin-top:5px}
.gss-company-identification .gss-client-anaf-row{margin-top:14px}
.gss-company-identification .gss-field>span{font-size:12px}
.gss-company-identification [role=status]:not(:empty){margin-top:12px}
.gss-identification-preview{margin-top:14px;padding:14px;border:1px solid #dce6f0;border-radius:10px;background:#fff}
.gss-identification-preview h4{margin:0 0 12px;font-size:14px}
.gss-identification-preview .gss-check{display:flex;align-items:flex-start;gap:8px;margin:14px 0;font-size:13px;line-height:1.5}
.gss-identification-preview .gss-check strong{display:contents}
.gss-identification-preview .gss-table{width:100%;min-width:0;table-layout:fixed}
.gss-identification-preview .gss-table th,.gss-identification-preview .gss-table td{white-space:normal;overflow-wrap:anywhere}
.gss-identification-preview .gss-table th:first-child{width:23%}
@media(max-width:620px){.gss-company-identification{margin:12px 14px;padding:14px}.gss-identification-heading{align-items:flex-start;flex-direction:column}.gss-company-identification .gss-client-anaf-row{grid-template-columns:minmax(0,1fr)}.gss-company-identification .gss-actions{flex-wrap:wrap}.gss-identification-preview{padding:10px}}
/* RisCo / ONRC office snapshots — manual, paid and cached by CUI. */
.gss-risco-batch{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:14px 16px;border:1px solid #bfd4ff;border-radius:12px;background:#f3f7ff;color:#18345f}.gss-risco-batch>div{display:grid;gap:3px;min-width:0}.gss-risco-batch span,.gss-risco-detail span,.gss-risco-cost span{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#55719d}.gss-risco-batch small{color:#60718b}.gss-risco-batch.complete{border-color:#bddfc8;background:#f1faf4;color:#185a31}
.gss-risco-line{display:grid;grid-template-columns:auto 1fr;gap:1px 6px;margin-top:6px;padding:5px 7px;border-radius:7px;background:#f1f4f8;color:#526174;max-width:310px}.gss-risco-line span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.gss-risco-line strong{font-size:11px}.gss-risco-line small{grid-column:1/-1;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.gss-risco-line.matched{background:#e9f7ee;color:#176236}.gss-risco-line.different,.gss-risco-line.error{background:#fff0f1;color:#a42432}.gss-risco-line.pending{background:#eef4ff;color:#2858a7}.gss-risco-alert{margin-top:5px;padding:5px 7px;border-left:3px solid #dc3545;border-radius:4px;background:#fff4f4;color:#9d1f2a;font-size:10px;font-weight:700;line-height:1.35}.gss-risco-discrepancy-row>td{background-image:linear-gradient(90deg,rgba(220,53,69,.035),transparent 52%)}
.gss-risco-confirm{display:grid;gap:16px}.gss-risco-confirm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gss-risco-confirm-grid>div,.gss-risco-cost{display:grid;gap:4px;padding:12px;border:1px solid #dbe5f5;border-radius:10px;background:#f8faff}.gss-risco-confirm-grid span{font-size:11px;color:#66758d}.gss-risco-confirm-grid strong{font-size:22px;color:#153b75}.gss-risco-cost{border-color:#f1cf86;background:#fff9eb}.gss-risco-cost strong{font-size:22px;color:#8c5a00}.gss-risco-warning{padding:10px 12px;border:1px solid #f0b5bb;border-radius:9px;background:#fff3f4;color:#982332;font-weight:700}.gss-risco-progress{display:grid;gap:3px;padding:10px 12px;border-radius:9px;background:#edf4ff;color:#244e8d}.gss-risco-progress span{font-size:12px}
.gss-risco-detail{display:grid;gap:12px;margin:12px 0;padding:14px 16px;border:1px solid #d8e1ee;border-radius:12px;background:#f8fafc}.gss-risco-detail-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.gss-risco-detail-head>div{display:grid;gap:3px;min-width:0}.gss-risco-detail-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:720px}.gss-risco-detail.matched{border-color:#b9dfc5;background:#f2faf5}.gss-risco-detail.different,.gss-risco-detail.error{border-color:#efbec3;background:#fff5f5}.gss-risco-detail.pending{border-color:#bfd4ff;background:#f3f7ff}.gss-risco-detail-dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.gss-risco-detail-dates>div{display:grid;gap:2px;padding:8px 10px;border-radius:8px;background:rgba(255,255,255,.72)}.gss-risco-detail-dates span{font-size:10px;color:#65748a}.gss-risco-detail-dates strong{font-size:13px}.gss-risco-expiry-different{color:#b42331!important}
@media(max-width:900px){.gss-risco-batch,.gss-risco-detail-head{align-items:stretch;flex-direction:column}.gss-risco-confirm-grid,.gss-risco-detail-dates{grid-template-columns:repeat(2,minmax(0,1fr))}}
