: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}}.header-actions,.user-chip{display:flex;align-items:center;gap:10px}.avatar{background:#e8f2ff;color:#1f69b3;padding:8px;border-radius:50%}.auth-shell{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:1.1fr 1fr;background:#fafbf9}.auth-story{position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100svh;padding:46px 8%;background:#102c31;color:#f5f8f5}.auth-story:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 60%,#28747655,transparent 65%)}.auth-brand{position:relative;display:flex;align-items:center;gap:13px}.auth-logo{width:44px;height:44px;display:grid;place-items:center;border:1px solid #7aaaa866;border-radius:13px;color:#b4e5d1;font-size:18px;font-weight:750}.auth-brand strong{display:block;font-size:19px;letter-spacing:-.5px}.auth-brand span{display:block;margin-top:5px;font-size:9px;letter-spacing:2.1px;color:#aac2c1}.auth-intro{position:relative;margin-top:82px;z-index:1}.auth-kicker{font-size:10px;letter-spacing:2px;font-weight:700;color:#438074}.auth-intro .auth-kicker{color:#acd6c4}.auth-intro h1{font-size:clamp(34px,3.5vw,56px);font-weight:500;line-height:1.14;letter-spacing:-2px;margin:22px 0}.auth-intro em{font-style:normal;color:#b2dfc8}.auth-intro p{max-width:350px;font-size:15px;line-height:1.8;color:#b4c9c7;margin:0}.auth-visual{position:relative;width:min(100%,390px);height:285px;align-self:center;margin:25px 0;flex:1;min-height:240px;background-image:radial-gradient(#9ac7bd22 1px,transparent 1px);background-size:22px 22px}.auth-orbit{position:absolute;left:50%;top:50%;border:1px solid #95c3b72b;border-radius:50%;transform:translate(-50%,-50%)}.orbit-one{width:230px;height:230px}.orbit-two{width:180px;height:180px;border-style:dashed}.orbit-three{width:290px;height:290px}.orbit-one:after{content:"";position:absolute;left:30px;top:24px;width:8px;height:8px;background:#b2dfc8;border-radius:50%;box-shadow:0 0 0 6px #b2dfc811}.auth-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:120px;height:120px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid #719d9266;border-radius:28px;background:linear-gradient(145deg,#35635b,#183c3e);box-shadow:0 20px 50px #031b2255}.auth-core span{font-size:38px;letter-spacing:-3px;color:#dcf5e4}.auth-core small{font-size:7px;letter-spacing:2px;margin-top:7px;color:#b1d0c9}.auth-coordinate{position:absolute;font-size:8px;letter-spacing:1.4px;color:#9dbcb4}.coordinate-top{top:14%;left:0}.coordinate-bottom{bottom:12%;right:0}.auth-story-footer{position:relative;display:flex;justify-content:space-between;gap:20px;padding-top:20px;border-top:1px solid #9ac7bd26;font-size:10px;letter-spacing:.5px;color:#adc5bd}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:48px 44px;min-width:0}.auth-panel-label{font-size:9px;letter-spacing:1.8px;color:#687d78;display:flex;align-items:center;gap:8px}.auth-dot{width:6px;height:6px;border-radius:50%;background:#548575}.auth-card{width:100%;max-width:370px;margin:64px 0;background:transparent}.auth-heading{margin-bottom:34px}.auth-heading h2{font-size:37px;line-height:1.15;font-weight:550;letter-spacing:-1.5px;margin:15px 0;color:#1c3532}.auth-heading p{font-size:14px;line-height:1.6;color:#65766e;margin:0}.auth-form{display:grid;gap:20px}.auth-form label{display:grid;gap:9px;font-size:12px;color:#334b45;font-weight:600}.auth-form input{width:100%;min-height:50px;padding:13px 15px;border:1px solid #c6d1c8;border-radius:10px;background:#fff;color:#1c3532;transition:border-color .15s,box-shadow .15s}.auth-form input::placeholder{color:#6b7b72;font-weight:400;font-size:13px}.auth-shell :is(input,button,summary):focus-visible{outline:3px solid #79b6a4;outline-offset:3px}.auth-form input:focus{border-color:#498575;box-shadow:0 0 0 3px #49857512}.password-field{display:grid;gap:9px}.password-control{position:relative}.password-control input{padding-right:76px}.password-control .btn.secondary{position:absolute;right:7px;top:7px;height:36px;min-width:58px;padding:5px 8px;border:0;background:#f1f5f1;font-size:11px;color:#487565}.auth-shell .auth-btn{min-height:51px;border-radius:10px;background:#244e43;font-size:14px;box-shadow:0 4px 10px #244e4315;transition:background .15s,transform .15s}.auth-shell .auth-btn:hover:not(:disabled){background:#163f34;transform:translateY(-1px)}.auth-shell button:disabled{opacity:.6;cursor:wait}.auth-error,.auth-feedback{font-size:12px;line-height:1.6;overflow-wrap:anywhere}.auth-error{color:#a13e35}.auth-error:empty,.auth-feedback:empty{display:none}.auth-feedback{color:#42645a}.password-help{margin-top:21px;font-size:12px;line-height:1.6;border-bottom:1px solid #e2e8e1;padding-bottom:24px}.password-help summary{cursor:pointer;color:#356953;font-weight:650;list-style:none;width:fit-content;padding:5px 0}.password-help summary::-webkit-details-marker{display:none}.password-help summary:after{content:" +";margin-left:5px}.password-help[open] summary:after{content:" −"}.password-help p{color:#65766e;margin:14px 0}.password-help .auth-form{gap:14px}.password-help .btn.secondary{min-height:46px;background:#e9f0e9;border-color:#d3e1d4;color:#244e43}.auth-access-note{text-align:center;color:#65766e;font-size:10px;margin-top:22px}.auth-footer{font-size:10px;color:#65766e;letter-spacing:.3px}.auth-footer span{padding:0 9px}.auth-back{border:0;background:transparent;color:#356953;font-size:12px;cursor:pointer;padding:14px 0;margin-top:14px}@media(min-width:1450px){.auth-story{padding-left:12%;padding-right:12%}.auth-panel{padding-left:70px;padding-right:70px}}@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.auth-story{min-height:0;padding:25px 28px}.auth-intro,.auth-visual,.auth-story-footer{display:none}.auth-brand strong{font-size:17px}.auth-panel{padding:30px 24px;min-height:calc(100svh - 94px)}.auth-card{max-width:400px;margin:40px 0}.auth-heading h2{font-size:34px}.auth-panel-label{font-size:8px}.auth-heading{margin-bottom:28px}}@media(prefers-reduced-motion:reduce){.auth-shell *{transition:none!important}}
