:root{--bg:#f4f7fb;--panel:#fff;--ink:#0f1f33;--muted:#667085;--line:#dfe7f1;--brand:#07558c;--brand2:#0b78bd;--ok:#067647;--warn:#b54708;--bad:#b42318;--soft:#eef6ff}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.client-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.client-sidebar{background:#0b1f33;color:white;padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto}.client-brand{display:flex;gap:12px;align-items:center;margin-bottom:24px}.client-logo{width:46px;height:46px;border-radius:14px;background:#0b78bd;display:flex;align-items:center;justify-content:center;font-weight:900}.client-brand span{display:block;color:#bed4ec;font-size:12px;margin-top:3px}.client-sidebar nav{display:grid;gap:6px}.client-sidebar a{display:flex;gap:10px;align-items:center;color:#d7e7f6;text-decoration:none;padding:11px 12px;border-radius:12px;font-weight:700}.client-sidebar a:hover,.client-sidebar a.active{background:#113b5f;color:white}.client-main{padding:26px 34px;max-width:1600px;width:100%;margin:0 auto}.client-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.client-topbar h1{margin:0;font-size:30px}.client-topbar small{color:var(--muted)}.client-user{text-align:right}.client-user a{display:inline-block;margin-left:10px;background:#eaf1f8;color:#0b1f33;text-decoration:none;padding:8px 12px;border-radius:10px;font-weight:800}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 26px rgba(11,31,51,.06)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.grid-2{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.stat{background:white;border:1px solid var(--line);border-radius:16px;padding:18px}.stat strong{font-size:30px;display:block;color:var(--brand)}.stat span{color:var(--muted);font-weight:700}.section-title{font-size:20px;margin:26px 0 12px}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:16px}.table{width:100%;border-collapse:collapse;background:white}.table th{background:#f8fafc;text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#475467}.table th,.table td{padding:13px;border-bottom:1px solid #edf1f6;vertical-align:top}.table tr:last-child td{border-bottom:0}.btn{display:inline-block;border:0;background:var(--brand);color:white;text-decoration:none;padding:10px 14px;border-radius:10px;font-weight:900;cursor:pointer}.btn.secondary{background:#eef2f7;color:#0f1f33}.btn.warn{background:#b54708}.btn.small{padding:7px 10px;font-size:12px}.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:900;background:#eef2f7;color:#344054}.badge.ok{background:#dcfae6;color:#067647}.badge.warn{background:#fef0c7;color:#b54708}.badge.bad{background:#fee4e2;color:#b42318}.alert{border-radius:14px;padding:12px 14px;margin:0 0 14px;font-weight:700}.alert.success{background:#ecfdf3;color:#067647}.alert.error{background:#fef3f2;color:#b42318}.alert.info{background:#eef6ff;color:#07558c}.form{display:grid;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field label{display:block;font-weight:800;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px;background:white;color:#0f1f33}.field textarea{min-height:120px}.empty{padding:22px;border:1px dashed #c8d3df;border-radius:16px;background:#fbfdff;color:#667085}.quick-actions{display:flex;gap:10px;flex-wrap:wrap}.hero-client{background:linear-gradient(135deg,#074a79,#0b78bd);color:white;border-radius:24px;padding:28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.hero-client p{color:#d8ecff}.file-link{font-weight:800;color:#07558c;text-decoration:none}.muted{color:var(--muted)}@media(max-width:1100px){.client-shell{grid-template-columns:1fr}.client-sidebar{position:relative;height:auto}.client-main{padding:20px}.grid,.grid-2,.form-row{grid-template-columns:1fr}.client-topbar{display:block}.client-user{text-align:left;margin-top:12px}.hero-client{display:block}}
