:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#17263b;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.side{background:#102238;color:#fff;padding:24px 16px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;margin-bottom:30px}.logo{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#12b8c4,#2876df);display:grid;place-items:center;font-weight:800}.brand small{display:block;color:#9db0c6;margin-top:3px}.nav button{display:flex;width:100%;border:0;background:transparent;color:#b9c8d8;padding:11px 12px;border-radius:9px;margin:3px 0;text-align:left;cursor:pointer}.nav button.active,.nav button:hover{background:#1d3856;color:#fff}.side-note{position:absolute;bottom:22px;left:18px;right:18px;background:#17304d;border:1px solid #284866;border-radius:12px;padding:12px;font-size:12px;color:#b9c8d8}.main{padding:28px 34px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.top h1{font-size:24px;margin:0}.top p{margin:5px 0 0;color:#697a90}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:650;cursor:pointer;background:#167fa5;color:#fff}.btn.secondary{background:#fff;color:#29405e;border:1px solid #d8e0e9}.btn.danger{background:#fff;color:#b13b3b;border:1px solid #efcaca}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(4,1fr);margin-bottom:18px}.card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;box-shadow:0 3px 14px #1d355710}.kpi label,.muted{font-size:12px;color:#718096}.kpi strong{display:block;font-size:25px;margin:7px 0}.delta{font-size:12px;color:#15906b}.two{grid-template-columns:1.35fr 1fr}.three{grid-template-columns:repeat(3,1fr)}h2{font-size:17px;margin:0 0 15px}h3{font-size:14px;margin:15px 0 8px}.bar-row{display:grid;grid-template-columns:110px 1fr 72px;gap:10px;align-items:center;margin:11px 0;font-size:12px}.bar{height:9px;background:#e8eef5;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,#16a6ba,#2876df);border-radius:99px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;color:#718096;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:9px;border-bottom:1px solid #e6ebf1}.table td{padding:10px 9px;border-bottom:1px solid #edf1f5}.pill{display:inline-block;border-radius:99px;padding:4px 8px;font-size:11px;font-weight:700;background:#e8f7f3;color:#087e61}.pill.warn{background:#fff4df;color:#9b6500}.pill.blue{background:#e8f2ff;color:#1f69b3}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.field label{display:block;font-size:11px;color:#66788e;margin-bottom:5px}.field input,.field select{width:100%;border:1px solid #d9e1ea;border-radius:8px;padding:9px;background:#fff}.section-head{display:flex;justify-content:space-between;align-items:center;margin:22px 0 8px}.input-cell{width:85px;border:1px solid #dfe5ec;border-radius:6px;padding:6px}.summary{background:#102c49;color:#fff}.summary .line{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #ffffff1c}.summary .total{font-size:20px;font-weight:800;padding-top:14px}.confidence{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;border:7px solid #24b6bc;font-weight:800;font-size:16px}.drop{border:2px dashed #b8c7d8;border-radius:14px;padding:30px;text-align:center;background:#f8fbff}.drop input{display:none}.drop label{cursor:pointer}.notice{background:#eaf7f8;color:#13646b;padding:11px 13px;border-radius:9px;font-size:12px;margin:12px 0}.risk{background:#fff7e8;color:#805b18}.actions{display:flex;gap:8px}.right{text-align:right}.empty{text-align:center;padding:45px;color:#718096}.page{display:none}.page.active{display:block}@media(max-width:950px){.shell{grid-template-columns:1fr}.side{height:auto;position:relative}.side-note{display:none}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap}.kpis,.three,.two,.form-grid{grid-template-columns:1fr}.main{padding:20px}.table{display:block;overflow:auto}}@media print{.side,.top .actions,.no-print{display:none!important}.shell{display:block}.main{padding:0}.card{box-shadow:none}.page{display:none!important}#quote.active{display:block!important}}:root .auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#102238,#167fa5)}.auth-card{width:100%;max-width:420px;background:#fff;padding:32px;border-radius:16px;box-shadow:0 16px 50px #0003}.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.auth-logo{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:#167fa5;color:#fff;font-weight:800}.auth-brand h2{margin:4px 0}.eyebrow{color:#697a90;font-size:13px}.auth-form{display:grid;gap:18px}.auth-form label{display:grid;gap:8px}.auth-form input{width:100%;padding:12px;border:1px solid #b9c8d8;border-radius:8px}.auth-form input:focus-visible{outline:3px solid #167fa566}.auth-meta{font-size:13px;color:#697a90}.auth-error{color:#a32222;min-height:20px}.auth-btn:disabled{opacity:.65;cursor:wait}.header-actions,.user-chip{display:flex;align-items:center;gap:10px}.avatar{background:#e8f2ff;color:#1f69b3;padding:8px;border-radius:50%}.password-field{display:grid;gap:8px}.password-control{display:flex;gap:8px;align-items:center}.password-control input{min-width:0;flex:1}.password-control button{flex:none;min-width:70px}.password-help{margin-top:16px;font-size:13px;line-height:1.6}.password-help summary{cursor:pointer;color:#167fa5;font-weight:650}.password-help li{margin-bottom:10px}.password-help ol{padding-left:20px}.password-help code{overflow-wrap:anywhere;background:#f4f7fb;padding:2px 4px;border-radius:4px}
