/* CONTROL CENTER · MODULARIZATION PHASE 9
   Module: Client Master
   Scope: importer, update KPIs/history, table and responsive styles
   Persistent stylesheet loaded from <head>
   No assets, no Supabase, no JavaScript
   Release candidate: 2026.09.17.25
*/

.client-master-modal { max-width: min(1180px, calc(100vw - 40px)); }
        .client-master-import-panel { border:1px solid var(--border); border-radius:18px; padding:16px; background:#fff; margin-top:14px; }
        .client-master-import-note { font-size:12px; color:var(--text-muted); font-weight:800; line-height:1.45; margin-top:8px; }
        .client-update-dropzone { border:1.5px dashed var(--border); border-radius:20px; padding:24px; background:#f8fafc; text-align:center; }
        .client-update-dropzone strong { display:block; color:var(--navy); font-size:18px; margin-bottom:6px; }
        .client-update-file-input { position:absolute; inline-size:1px; block-size:1px; opacity:0; pointer-events:none; }
        .client-update-file-button { display:inline-flex; align-items:center; justify-content:center; border-radius:14px; padding:12px 18px; background:var(--accent); color:#fff; font-size:12px; font-weight:900; letter-spacing:.04em; cursor:pointer; }
        .client-update-file-name { margin-top:10px; color:var(--text-muted); font-size:13px; font-weight:800; }
        .client-update-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(120px,1fr)); gap:12px; margin:16px 0; }
        .client-update-kpi { border:1px solid var(--border); border-radius:16px; padding:14px; background:#fff; }
        .client-update-kpi span { display:block; color:var(--text-muted); font-size:11px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
        .client-update-kpi strong { display:block; color:var(--navy); font-size:26px; margin-top:4px; }
        .client-update-kpi.new { border-color:#bbf7d0; background:#f0fdf4; }
        .client-update-kpi.updated { border-color:#bfdbfe; background:#eff6ff; }
        .client-update-kpi.unchanged { border-color:#e2e8f0; background:#f8fafc; }
        .client-update-kpi.review { border-color:#fde68a; background:#fffbeb; }
        .client-update-history { display:grid; gap:10px; margin-top:14px; }
        .client-update-history-item { border:1px solid var(--border); border-radius:14px; padding:12px; background:#fff; display:flex; gap:12px; align-items:center; justify-content:space-between; }
        .client-update-history-item strong { color:var(--navy); }
        .client-update-status { display:inline-flex; align-items:center; border-radius:999px; padding:4px 9px; background:#eef2ff; color:#1d4ed8; font-size:11px; font-weight:900; }

@media (max-width: 860px) { .client-update-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .client-update-history-item { align-items:flex-start; flex-direction:column; } }

@media (max-width: 520px) { .client-update-kpi-grid { grid-template-columns:1fr; } }

.client-master-table-wrap { overflow:auto; max-height:360px; border:1px solid var(--border); border-radius:16px; background:#fff; margin-top:12px; }
        .client-master-table { width:100%; border-collapse:collapse; font-size:12px; min-width:860px; }
        .client-master-table th, .client-master-table td { padding:10px; border-bottom:1px solid var(--bg); vertical-align:top; }
        .client-master-table th { background:#f8fafc; color:var(--text-muted); text-transform:uppercase; font-size:10px; font-weight:900; position:sticky; top:0; z-index:1; }
        .client-master-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:14px 0; }
