:root{--bg:#f4f7fb;--panel:#fff;--ink:#172033;--muted:#6f7a8f;--line:#e3e9f1;--brand:#0f2f5f;--brand2:#173f7a;--accent:#d6a62e;--danger:#b93838;--success:#1f8a5b;--warning:#9f6a12;--shadow:0 18px 48px rgba(23,32,51,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid #dbe2ec;background:#fff;border-radius:12px;padding:12px 13px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#86a3cc;box-shadow:0 0 0 4px rgba(23,63,122,.08)}textarea{min-height:90px;resize:vertical}.hidden{display:none!important}
.btn{border:0;border-radius:12px;padding:12px 17px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}.btn-primary{background:var(--brand);color:#fff}.btn-secondary{background:#eef3f9;color:var(--brand)}.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn-success{background:#eaf7f1;color:#1f7b55;border:1px solid #cfeadc}.btn-danger{background:#fff0f0;color:var(--danger);border:1px solid #f2cccc}.btn-full{width:100%}
.flash-wrap{display:grid;gap:8px;margin-bottom:16px}.flash{padding:12px 14px;border-radius:12px;font-size:13px;font-weight:700}.flash.error{background:#fff1f1;border:1px solid #f0caca;color:#963939}.flash.success{background:#ebf8f1;border:1px solid #cdebdc;color:#236d4f}.flash.info{background:#eef4fb;border:1px solid #d8e5f4;color:#365f8f}
.login{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr;background:#fff}.login-hero{padding:56px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#0b2549,#173f7a);color:#fff;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;right:-180px;top:-160px;border:1px solid rgba(255,255,255,.15);box-shadow:0 0 0 65px rgba(255,255,255,.03),0 0 0 130px rgba(255,255,255,.02)}.brand{display:flex;align-items:center;gap:12px;position:relative;z-index:1}.brand-mark{width:46px;height:50px;border-radius:13px;background:linear-gradient(180deg,#edcb64,#ba8614);display:grid;place-items:center;font-weight:900;color:#0f2f5f}.brand-title{font-size:22px;font-weight:900}.brand-sub{font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}.hero-copy{position:relative;z-index:1;max-width:620px}.hero-copy h1{font-size:clamp(42px,5vw,70px);line-height:1;margin:0 0 20px;letter-spacing:-.045em}.hero-copy p{font-size:19px;line-height:1.6;color:rgba(255,255,255,.78);max-width:560px}.login-panel{display:flex;align-items:center;justify-content:center;padding:42px}.login-card{width:min(440px,100%)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);font-weight:900}.login-card h2{font-size:36px;margin:8px 0}.login-card>p{color:var(--muted);line-height:1.55;margin:0 0 25px}
.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:#0c274d;color:#fff;padding:24px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.sidebar .brand{padding:0 7px 22px;border-bottom:1px solid rgba(255,255,255,.09)}.nav{display:grid;gap:7px;margin-top:24px}.nav a{padding:12px;border-radius:11px;font-weight:700;color:rgba(255,255,255,.72);display:flex;gap:9px}.nav a:hover,.nav a.active{background:rgba(255,255,255,.09);color:#fff}.side-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.09);padding-top:16px}.user-mini{padding:9px}.user-mini strong{display:block;font-size:13px}.user-mini span{display:block;font-size:11px;color:rgba(255,255,255,.56);margin-top:3px}.main{min-width:0}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.topbar strong{display:block}.topbar small{color:var(--muted)}.top-actions{display:flex;gap:9px;align-items:center}.badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:#eef3f8;color:#5a667a;font-size:11px;font-weight:900}.content{padding:28px;max-width:1500px;margin:0 auto}.welcome{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.welcome h1{font-size:32px;margin:0 0 5px;letter-spacing:-.035em}.welcome p{margin:0;color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 10px 30px rgba(23,32,51,.03)}.stat small{color:var(--muted);font-weight:700}.stat strong{display:block;font-size:30px;margin:7px 0 2px}.stat span{font-size:11px;color:#8a94a6}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 34px rgba(23,32,51,.04);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:19px 21px;border-bottom:1px solid var(--line)}.panel-head h3{margin:0;font-size:16px}.panel-head span{font-size:12px;color:var(--muted)}table{width:100%;border-collapse:collapse}th,td{padding:14px 17px;text-align:left;border-bottom:1px solid #edf1f6;font-size:13px}th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7a8598;background:#fbfcfe}.status{display:inline-flex;padding:6px 8px;border-radius:999px;font-size:10px;font-weight:900}.status.pending{background:#fff4df;color:#8e6316}.status.ok{background:#eaf7f1;color:#1f7b55}.status.neutral{background:#eef3f8;color:#596779}
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 34px rgba(23,32,51,.04);overflow:hidden}.section{padding:22px 24px;border-bottom:1px solid var(--line)}.section:last-child{border-bottom:0}.section h2{margin:0 0 4px;font-size:20px}.section>p{margin:0 0 18px;color:var(--muted);font-size:13px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.span-2{grid-column:span 2}.field{display:grid;gap:7px}.field label{font-size:12px;font-weight:900;color:#3f4a5f}.hint{font-size:11px;color:#8791a3}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice{border:1px solid #dce4ee;background:#fff;border-radius:12px;padding:10px 13px;font-size:12px;font-weight:800;color:#536076;cursor:pointer}.choice.active{border-color:#819fc8;background:#eef4fb;color:var(--brand)}.info-box{padding:13px 14px;border-radius:12px;background:#f7f9fc;border:1px solid #e7ecf3;color:#5f6b7f;font-size:12px;line-height:1.55}.info-box.warn{background:#fff7e8;border-color:#f2dfb5;color:#8c641e}.info-box.success{background:#eef8f3;border-color:#d6eee2;color:#2a7252}.price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.price{border:1px solid var(--line);border-radius:13px;padding:13px;background:#fbfcfe}.price small{display:block;color:#8893a5;font-size:10px;text-transform:uppercase}.price strong{display:block;font-size:20px;margin-top:4px}.form-actions{padding:18px 24px;background:#fcfdff;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0}
.detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;box-shadow:0 10px 28px rgba(23,32,51,.035)}.card h3{margin:0 0 14px}.kv{display:grid;grid-template-columns:180px 1fr;gap:9px 14px;font-size:13px}.kv div:nth-child(odd){color:#7c8799;font-weight:700}.money-hero{font-size:34px;color:var(--brand);font-weight:900}.audit{display:grid;gap:10px}.audit-item{padding-left:15px;border-left:2px solid #dce5ef}.audit-item strong{font-size:12px}.audit-item span{display:block;font-size:11px;color:#7c8799;margin-top:3px}.docs-placeholder{border:1px dashed #b8c4d3;border-radius:14px;padding:18px;text-align:center;color:#708096;background:#fafcff}
@media(max-width:1050px){.stats{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.price-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.shell{grid-template-columns:78px 1fr}.sidebar .brand-title,.sidebar .brand-sub,.nav span,.user-mini span,.user-mini strong{display:none}.content{padding:18px}.grid{grid-template-columns:1fr}.span-2{grid-column:span 1}}@media(max-width:640px){.login{grid-template-columns:1fr}.login-hero{display:none}.login-panel{min-height:100vh;padding:24px}.shell{display:block}.sidebar{display:none}.topbar{padding:0 14px}.content{padding:13px}.stats{grid-template-columns:1fr 1fr;gap:9px}.stat{padding:13px}.welcome{align-items:flex-start;flex-direction:column}.welcome h1{font-size:27px}.price-grid{grid-template-columns:1fr 1fr}.panel{overflow:auto}.panel table{min-width:720px}.section{padding:18px}.form-actions{padding:13px}}
@media print{.sidebar,.topbar,.no-print,.form-actions{display:none!important}.shell{display:block}.content{padding:0}.card,.panel{box-shadow:none}.detail-grid{grid-template-columns:1fr}.docs-placeholder{display:none}}

.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.check{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:11px;padding:10px 12px;font-size:12px;font-weight:750;background:#fbfcfe}.check input{width:auto;margin:0}.version-list{display:grid;gap:9px;margin-top:14px}.version{border:1px solid var(--line);border-radius:12px;padding:11px;display:flex;align-items:center;justify-content:space-between;gap:10px}.version strong{display:block;font-size:12px}.version span{display:block;font-size:10px;color:var(--muted);margin-top:3px}.version-actions{display:flex;gap:6px}.version-actions .btn{padding:8px 10px;font-size:11px}@media(max-width:640px){.check-grid{grid-template-columns:1fr}.version{align-items:flex-start;flex-direction:column}}

/* ===== POLIMIL V0.4 visual refresh ===== */
.access-note{font-size:10px;line-height:1.55;color:#93a8c7;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);padding:10px 12px;border-radius:12px;margin-bottom:12px}.access-note strong{color:#fff}
.login-body{background:#07172f}.login-v2{min-height:100vh}.login-v2 .login-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 30%,#1d4c87 0,#12396b 28%,#0b2a54 58%,#071c3b 100%)}
.login-orbit{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%;pointer-events:none}.orbit-a{width:620px;height:620px;right:-160px;top:-120px;box-shadow:0 0 80px rgba(60,130,220,.12) inset}.orbit-b{width:420px;height:420px;right:70px;top:70px;border-color:rgba(238,190,62,.2)}.login-glow{position:absolute;width:360px;height:360px;right:80px;bottom:-120px;border-radius:50%;background:rgba(235,184,44,.12);filter:blur(80px)}
.login-brand{position:relative;z-index:2}.hero-copy-v2{position:relative;z-index:2;max-width:720px}.hero-copy-v2 h1{font-size:clamp(42px,5vw,76px);line-height:.98;letter-spacing:-.045em;margin:14px 0 24px;color:#fff}.hero-copy-v2 h1 span{color:#f2c44c}.hero-copy-v2 p{max-width:600px;font-size:18px;line-height:1.7;color:#c4d3e9}.gold{color:#f2c44c!important}.login-feature-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.login-feature-row span{font-size:11px;font-weight:800;letter-spacing:.03em;color:#d9e5f6;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 11px;background:rgba(255,255,255,.05);backdrop-filter:blur(10px)}.hero-seal{position:absolute;right:44px;bottom:38px;z-index:2;text-align:right;color:#fff;opacity:.45}.hero-seal span{display:block;font-weight:900;letter-spacing:.18em}.hero-seal small{font-size:10px;text-transform:uppercase;letter-spacing:.14em}
.login-card-v2{max-width:470px;padding:42px;border:1px solid #e7ebf2;box-shadow:0 30px 80px rgba(8,29,60,.12);border-radius:24px}.login-mini-logo{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;margin-bottom:22px;background:linear-gradient(135deg,#f5d263,#dba821);color:#0f3263;font-weight:950;box-shadow:0 10px 30px rgba(219,168,33,.28)}.login-card-v2 h2{font-size:38px;letter-spacing:-.04em}.login-field input{height:54px;background:#fbfcff}.login-button{height:54px;margin-top:8px;border-radius:13px;box-shadow:0 12px 28px rgba(15,55,105,.22)}.login-button span{font-size:18px}.login-help{text-align:center;color:#8491a5;font-size:11px;margin-top:18px}

/* Wizard */
.wizard-intro{border-radius:20px;padding:22px;background:linear-gradient(135deg,#0d315f,#153f77);color:#fff;box-shadow:0 18px 45px rgba(13,49,95,.18);margin-bottom:16px;position:relative;overflow:hidden}.wizard-intro:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:1px solid rgba(255,255,255,.12);right:-80px;top:-110px}.wizard-intro h2{margin:0 0 6px;font-size:22px}.wizard-intro p{margin:0;color:#c9d8eb;font-size:12px}.flow-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;position:relative;z-index:2}.flow-card{appearance:none;text-align:left;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);color:#fff;border-radius:16px;padding:16px;cursor:pointer;transition:.2s ease;min-height:118px}.flow-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.1)}.flow-card.active{background:#fff;color:#0d315f;border-color:#f2c44c;box-shadow:0 12px 30px rgba(0,0,0,.15)}.flow-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(242,196,76,.18);color:#f2c44c;font-size:17px;margin-bottom:10px}.flow-card.active .flow-icon{background:#fff4cf;color:#b78400}.flow-card strong{display:block;font-size:13px}.flow-card span{display:block;font-size:10px;line-height:1.5;margin-top:5px;opacity:.72}
.wizard-progress{display:flex;gap:7px;align-items:center;margin:14px 0 18px;overflow:auto;padding-bottom:2px}.wizard-dot{white-space:nowrap;font-size:10px;font-weight:800;color:#8b96a7;background:#eef2f7;border-radius:999px;padding:7px 10px}.wizard-dot.current{background:#0e376b;color:#fff}.wizard-dot.done{background:#eaf7ee;color:#207844}
.wizard-step{border:1px solid #e1e7f0;border-radius:17px;background:#fff;margin-bottom:12px;overflow:hidden;box-shadow:0 8px 24px rgba(19,46,80,.045);transition:.2s ease}.wizard-step.hidden-step{display:none}.wizard-step.is-open{border-color:#bfd0e6;box-shadow:0 14px 38px rgba(16,55,104,.08)}.step-head{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;background:#fff}.step-number{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#edf3fa;color:#123d72;font-weight:950;font-size:12px}.wizard-step.is-complete .step-number{background:#e8f6ed;color:#227341}.wizard-step.is-complete .step-number:after{content:"✓"}.wizard-step.is-complete .step-number span{display:none}.step-title{flex:1}.step-title strong{display:block;font-size:14px;color:#172337}.step-title small{display:block;color:#8994a5;font-size:10px;margin-top:2px}.step-chevron{font-size:18px;color:#9aa6b7;transition:.2s}.wizard-step.is-open .step-chevron{transform:rotate(180deg);color:#163f72}.step-body{display:none;border-top:1px solid #eef1f5;padding:20px}.wizard-step.is-open .step-body{display:block;animation:fadeStep .2s ease}@keyframes fadeStep{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.step-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:15px;border-top:1px solid #edf1f5}.step-next{min-width:145px}.full-only.hidden-mode,.reserve-only.hidden-mode{display:none!important}.solo-note{display:none}.solo-mode .solo-note{display:block}.mode-summary{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;background:#fff6d9;color:#805d00;font-size:10px;font-weight:850;margin-top:12px}
@media(max-width:760px){.flow-cards{grid-template-columns:1fr}.login-v2{display:block}.login-v2 .login-hero{min-height:48vh;padding:28px}.hero-copy-v2 h1{font-size:42px}.login-feature-row{display:none}.login-card-v2{padding:28px 22px;border-radius:0;box-shadow:none}.wizard-intro{padding:18px}.step-body{padding:16px}}
.wizard-form:not(.flow-selected) .wizard-progress,.wizard-form:not(.flow-selected) .wizard-step{display:none}
