:root{--bg:#080e14;--side:#0b1117;--p:#111b24;--p2:#17232d;--line:#2b3943;--text:#f2f2ee;--muted:#a4b0b7;--t:#d7b47e;--green:#91d5ae;--amber:#e4bd7a;--red:#ee8e8e;--blue:#9bbcd2;--sidew:272px}
html{background:var(--bg)}
body{background:radial-gradient(ellipse 65% 35% at 90% 0%,rgba(57,80,95,.16),transparent 70%),var(--bg);color:var(--text);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,select,input{font:inherit}
button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--t);outline-offset:3px}
button{transition:background-color .18s,border-color .18s,color .18s,transform .18s}
button:hover{transform:translateY(-1px)}
.side{padding:28px 17px 22px;background:linear-gradient(180deg,#101820 0%,#0a1117 100%);border-right-color:#33414a}
.brand{margin:0 3px 32px;padding:11px 14px;background:#f5f2ec;border:1px solid #efe9df;border-radius:9px;box-shadow:0 10px 26px rgba(0,0,0,.18)}
.brand img{height:62px}
.label{color:#9cabb3;font-size:11px;letter-spacing:.18em;margin-bottom:5px}
.nav{gap:5px}
.nav button{min-height:46px;padding:12px 13px;border:1px solid transparent;border-radius:8px;color:#b7c1c5;font-size:14px;letter-spacing:.005em}
.nav button span{color:#d1ae7b;font-size:17px;width:27px}
.nav button.active,.nav button:hover{background:#1c2a34;border-color:#3b4b55;box-shadow:inset 2px 0 var(--t);color:#fff}
.nav button b{background:#2a3943;color:#dbc69f;font-size:10px;padding:3px 7px}
.side-note{background:linear-gradient(135deg,#14212a,#0f1820);border-color:#34454e;border-radius:10px;padding:17px;font-size:12px;line-height:1.6}
.side-note b{color:var(--t);font-size:11px}
.top{height:80px;padding:0 38px;border-bottom-color:#31414b;background:rgba(9,15,21,.92)}
.crumb{color:#9eafb8;font-size:13px;letter-spacing:.02em}.crumb b{font-weight:700;color:#eeeae1}
.program{margin-left:23px;padding:10px 13px;background:#17242d;border-color:#3b4d57;color:#e8e8e2;border-radius:7px;font-size:12px}
.demo{border-color:#465660;color:#c2c8c7;font-size:10px;letter-spacing:.15em;padding:7px 10px}
.content{max-width:1550px;padding:35px 38px 66px}.head{margin-bottom:26px;gap:22px}
.eye{color:var(--t);font-size:11px;letter-spacing:.17em;margin-bottom:9px}
h1,h2,h3{color:#f2f1ec}h1{font-size:31px;line-height:1.18;letter-spacing:-.045em}h2{font-size:19px;letter-spacing:-.02em}h3{font-size:15px}
.sub{color:#aab6bc;font-size:14px;line-height:1.55;margin-top:9px}
.btn{padding:11px 16px;border-color:#465760;background:#1a2932;border-radius:7px;font-size:12px;letter-spacing:.015em;white-space:nowrap}
.btn:hover{border-color:#c6a777;background:#233540}.btn.primary{background:var(--t);border-color:#e3c492;color:#19212a;box-shadow:0 8px 24px rgba(0,0,0,.18)}.btn.primary:hover{background:#e7c690}
.card{background:linear-gradient(155deg,rgba(27,40,50,.92),rgba(15,25,33,.97));border-color:#34434c;border-radius:11px;box-shadow:0 12px 28px rgba(0,0,0,.08)}
.brief{background:radial-gradient(circle at 85% 35%,rgba(211,171,112,.13),transparent 38%),linear-gradient(117deg,#20323d 0%,#14222d 62%,#111c25 100%);border:1px solid #65705f;border-radius:12px;padding:26px 30px;margin-bottom:17px;min-height:150px;box-shadow:0 18px 45px rgba(0,0,0,.17)}
.brief h2{font-size:23px;line-height:1.35;margin:11px 0 6px;max-width:760px}.brief h2 em{color:#f1d1a0}.brief p{color:#bcc8cb;font-size:13px;line-height:1.5}
.brief-score{border-left-color:#5a6c70;padding-left:30px;min-width:185px}.brief-score strong{font-size:33px;letter-spacing:-.04em}.brief-score span{font-size:12px;line-height:1.4}
.tag{font-size:10px;letter-spacing:.06em;padding:5px 8px;border-radius:4px;background:#273741;color:#d1dadd}.tag.green{background:#203d35;color:#a7e2bc}.tag.amber{background:#473a28;color:#f1cd91}.tag.red{background:#4a2b2e;color:#f4a4a6}
.kpis{gap:13px;margin-bottom:18px}.kpi{padding:18px 19px;min-height:125px}.kpi span{color:#a6b6bb;font-size:10px;letter-spacing:.12em}.kpi strong{font-size:27px;margin:8px 0 4px;letter-spacing:-.04em}.kpi small{font-size:12px;color:#acbbc0}
.programs{gap:13px}.pcard{padding:18px 19px;min-height:173px;position:relative;overflow:hidden}.pcard::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,#b89561,transparent 82%)}.pcard h3{font-size:20px;letter-spacing:-.025em;margin:16px 0 5px}.pcard p{font-size:12px;line-height:1.5;color:#adbbc0;margin:0 0 15px;min-height:36px}.pcard .eye{font-size:10px;color:#cdb688}
.meter{height:5px;background:#33424c;border-radius:6px}.meter i{background:linear-gradient(90deg,#a98450,#e0c496);border-radius:6px}.meter i.a{background:#e4bd7a}.metric{font-size:11px;color:#abb9bd;margin-top:9px}.metric b{color:#efece3}
.grid{gap:17px;margin-top:18px}.panel{padding:22px}.ph{margin-bottom:17px}.link{color:#e1c08d;font-size:12px}
.decision{padding:14px 0;gap:13px;grid-template-columns:36px 1fr auto;border-bottom-color:#33424a}.decision b{font-size:13px;line-height:1.4}.decision small{font-size:11px;line-height:1.4;display:block;margin-top:3px}.dicon{width:34px;height:34px;background:#253741;color:#e5c391;border:1px solid #3c4b51;border-radius:7px}
.event{margin:15px 0;gap:12px}.event b{font-size:12px}.event p{font-size:11px;line-height:1.45}
.toolbar{gap:9px;margin-bottom:16px;flex-wrap:wrap}.filter{padding:9px 13px;border-color:#394a54;background:#14232c;color:#b4c1c6;border-radius:6px;font-size:12px}.filter.active{background:#cfad79;color:#1a252b;border-color:#cfad79;font-weight:700}
.table th{padding:14px 16px;color:#b2c0c5;font-size:10px}.table td{padding:15px 16px;font-size:12px;border-color:#2b3a43}.initial{background:#263a43;color:#e5c391}
.port{padding:23px}.port .code{color:#ddbd8d;font-size:10px}.port h2{font-size:22px}.port p{font-size:13px;line-height:1.6}.spec{background:#1a2932;padding:12px;border:1px solid #33434b}.spec small{font-size:10px;color:#a8b7bd}.spec b{font-size:12px}.chip{font-size:10px;padding:6px 9px;border-color:#45565d;color:#d0d8d9}
.col{background:#0f1b23;border-color:#36464e;border-radius:10px;padding:14px}.colh{padding-bottom:15px}.item{background:#192832;border-color:#394b54;border-radius:8px;padding:15px;margin-bottom:11px}.item small,.meta{font-size:10px}.item h3{font-size:14px;margin:7px 0 10px}
.ecard{padding:20px;min-height:175px}.ecard h3{font-size:15px}.ecard p{font-size:12px;line-height:1.6}.eicon{background:#263b45;color:#e5c391;border:1px solid #43565d}
.gauge{padding:25px}.checks{padding:22px}.check{font-size:12px;margin:17px 0}.ring{background:conic-gradient(var(--t) 0 78%,#32414b 78%)}.ring:after{background:#172630}
.controls,.results{padding:23px}.controls label{font-size:12px;margin-top:20px}.controls input{accent-color:var(--t)}.result{background:#1a2b35;border:1px solid #34454e;padding:17px}.result span{font-size:10px;color:#b4c0c4}.result strong{font-size:24px}.impact{background:rgba(215,180,126,.07);border-color:rgba(215,180,126,.32);font-size:12px;padding:16px}.impact b{color:#e8c58f!important}
.ava{background:#d7b47e;color:#14212a;border:1px solid #f2d5a5;border-radius:9px;padding:14px 19px;font-size:13px;box-shadow:0 16px 36px rgba(0,0,0,.33)}.ava:hover{background:#e8c58f}
.chat{background:#121f28;border-color:#58666b;border-radius:12px;box-shadow:0 28px 80px rgba(0,0,0,.55)}.chat-head{padding:18px;border-bottom-color:#364750}.orb{background:radial-gradient(circle at 35% 30%,#fff6dc,#b58b56);box-shadow:0 0 0 5px rgba(215,180,126,.1)}.context{background:#192a34;font-size:11px;padding:11px 17px}.messages{padding:17px}.bubble{background:#22333e;font-size:12px;padding:13px 14px;line-height:1.55}.bubble.user{background:#665137;color:#fff7e8}.suggest{padding:11px;gap:8px}.suggest button{background:#1a2b35;border-color:#46585f;color:#e2e5e0;font-size:10px;padding:8px 10px}.compose input{background:#101c25;border-color:#4b5a61;padding:11px}.send{background:#d7b47e;color:#152029}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.programs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.side{transform:translateX(-100%);transition:transform .2s;box-shadow:20px 0 50px rgba(0,0,0,.35)}.side.open{transform:none}.main{margin-left:0}.mobile{display:inline-block;margin-right:10px}.top{padding:0 22px}.content{padding:28px 23px 60px}.head{align-items:flex-start}.brief{grid-template-columns:1fr auto}.portfolio,.evidence{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.side{box-shadow:20px 0 50px rgba(0,0,0,.35)}.top{height:66px;padding:0 16px}.content{padding:22px 15px 80px}.head{gap:14px;margin-bottom:22px}.head .btn{align-self:flex-start}.brief{grid-template-columns:minmax(0,1fr);gap:18px;padding:22px;min-height:0}.brief h2{font-size:20px}.brief-score{border-left:0;border-top:1px solid #5a6c70;padding:14px 0 0;min-width:0}.kpis,.programs,.portfolio,.evidence,.kanban,.result-grid{grid-template-columns:1fr}.kpi{min-height:0}.col{min-height:0}.panel{padding:18px}.chat{bottom:78px}}
.executive-head{align-items:center}.executive-head h1{max-width:800px}.executive-head .sub{max-width:720px}
#command .brief{min-height:0;padding:18px 24px}#command .brief h2{font-size:20px;margin:6px 0 4px}#command .brief-score strong{font-size:29px}.executive-head{margin-bottom:18px}.executive-kpis .kpi{min-height:110px;padding:14px 17px}.executive-kpis .kpi strong{font-size:25px}
.demo-notice{display:flex;gap:12px;align-items:center;border:1px solid #665d4d;background:#2a281f;color:#d9d2bf;border-radius:8px;padding:10px 14px;margin:-8px 0 17px;font-size:12px;line-height:1.45}.demo-notice b{color:#f0ce98;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;font-size:10px}
.executive-grid{grid-template-columns:1.1fr .9fr;margin-top:18px;margin-bottom:22px}.executive-grid .panel{min-width:0}.executive-grid .decision{grid-template-columns:36px minmax(0,1fr) auto}.executive-grid .decision small{font-size:12px}
.funding-row{display:grid;gap:5px;padding:11px 0;border-bottom:1px solid #33424a}.funding-row b{font-size:14px}.funding-row span{font-size:12px;color:#b6c1c4;line-height:1.45}.funding-row em{font-size:10px;font-style:normal;color:#e2bf88;letter-spacing:.08em;font-weight:800}.fine-print{color:#aebbbd;font-size:11px;line-height:1.5;margin:12px 0 0}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;margin:10px 0 13px}.section-heading .eye{margin-bottom:5px}.section-heading h2{font-size:18px}.pcard .metric{margin-top:auto;border-top:1px solid #34434c;padding-top:11px}.pcard .metric b{font-size:11px}.pcard p{min-height:0}.scale-panel{margin-top:20px}.scale-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.scale-steps>div{padding:16px;background:#1a2a34;border:1px solid #3a4d56;border-radius:8px}.scale-steps span{display:block;color:#dcbc8d;font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:8px}.scale-steps b{display:block;font-size:14px}.scale-steps p{color:#b7c3c6;font-size:12px;line-height:1.5;margin:6px 0 0}
.supplier-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-bottom:18px}.supplier-summary .kpi{min-height:0}.supplier-summary strong{font-size:24px}
.evidence-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.milestone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.milestone{padding:22px}.milestone h2{margin:15px 0 7px}.milestone p,.milestone li{font-size:12px;line-height:1.55;color:#b8c3c6}.milestone ul{padding-left:18px;min-height:86px}.milestone .link{padding:0}
@media(max-width:1100px){.executive-grid{grid-template-columns:1fr}.milestone-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.executive-head{align-items:flex-start;margin-bottom:15px}.executive-head h1{font-size:26px}.executive-head .sub{font-size:13px}.demo-notice{display:block;padding:9px 12px;margin-bottom:12px}.demo-notice b{display:block;margin-bottom:4px}#command .brief{padding:16px 18px;margin-bottom:12px}#command .brief h2{font-size:17px;line-height:1.35}#command .brief p,#command .brief-score{display:none}.executive-kpis,.supplier-summary,.evidence-kpis,.milestone-grid,.scale-steps{grid-template-columns:1fr}.executive-kpis .kpi{min-height:0;padding:13px 16px}.executive-grid .decision{grid-template-columns:32px minmax(0,1fr);gap:9px}.executive-grid .decision .tag{grid-column:2;justify-self:start}.section-heading{align-items:flex-start;flex-direction:column}.scale-panel{margin-top:16px}.milestone ul{min-height:0}}
@media(max-width:760px){.executive-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.executive-kpis .kpi:last-child{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Ava decision assistant */
.ava{display:flex;align-items:center;gap:15px;letter-spacing:.01em}.ava span{font-size:16px;font-weight:500}.ava[aria-expanded="true"]{opacity:0;pointer-events:none}.ava:focus-visible,.chat button:focus-visible,.compose input:focus-visible{outline:2px solid #f3d49d;outline-offset:3px}
.chat{width:min(470px,calc(100vw - 32px));height:min(690px,calc(100dvh - 105px));bottom:82px;background:linear-gradient(160deg,#14242e 0%,#0d1922 75%);border:1px solid #607078;border-radius:18px;box-shadow:0 35px 100px #000b,0 0 0 1px #ffffff0b}
.chat-head{min-height:78px;padding:17px 19px;background:linear-gradient(100deg,#1b303a,#15242d);gap:12px;border-bottom:1px solid #43545c}.orb{display:grid;place-items:center;flex:none;width:42px;height:42px;color:#342313;font-size:22px;box-shadow:0 0 0 4px #d7b47e22,0 8px 24px #0006}.chat-identity{min-width:0}.chat-identity b{display:block;font:800 17px Manrope;color:#f7f4eb;line-height:1.2}.chat-identity small{font-size:12px;color:#bac8c9;line-height:1.35;margin-top:3px}.chat-mode{margin-left:auto;white-space:nowrap;border:1px solid #8c704b;color:#e7c796;background:#6c543929;padding:5px 7px;border-radius:5px;font-size:9px;letter-spacing:.12em;font-weight:800}.close{margin-left:2px;width:29px;height:29px;display:grid;place-items:center;flex:none;border-radius:6px;color:#e3e8e7;cursor:pointer}.close:hover{background:#ffffff16}
.context{display:flex;align-items:center;gap:8px;background:#1a2b34;color:#c2cbcb;font-size:11px;line-height:1.35;padding:10px 19px;border-bottom:1px solid #33434a}.context-dot{width:6px;height:6px;flex:none;border-radius:50%;background:#d7b47e}
.messages{padding:20px 18px 24px;scroll-behavior:smooth}.welcome{background:linear-gradient(140deg,#263c46,#1b2c36);border:1px solid #50616a;border-radius:13px;padding:19px 20px;margin:0 0 22px}.welcome-kicker{margin:0 0 8px!important;color:#e2bc7f!important;font-size:10px!important;letter-spacing:.14em;font-weight:800}.welcome h3{font:800 19px Manrope;color:#fff8ec;margin:0 0 8px}.welcome p{color:#d1dddc;font-size:13px;line-height:1.55;margin:0}.bubble.user{max-width:85%;width:max-content;margin:0 0 18px auto;background:#755a39;color:#fffaf1;border:1px solid #a88a5e;border-radius:13px 13px 3px 13px;font-size:13px;line-height:1.5;padding:10px 14px}.answer{background:#172933;border:1px solid #3c535e;border-left:3px solid #d7b47e;border-radius:4px 13px 13px 13px;padding:16px 17px;margin:0 20px 21px 0;box-shadow:0 10px 25px #0002}.answer-kicker{color:#e5bd82;font-size:10px;letter-spacing:.12em;font-weight:800;margin-bottom:8px}.answer h3{font:800 16px Manrope;color:#f9f8f3;line-height:1.35;margin:0 0 8px}.answer p,.answer li{font-size:13px;line-height:1.55;color:#d1dddd}.answer p{margin:0 0 12px}.answer ul{margin:0 0 14px;padding-left:18px}.answer li{padding-left:2px;margin:6px 0}.answer li::marker{color:#d7b47e}.answer-actions{display:flex;flex-wrap:wrap;gap:7px}.answer-actions button{border:1px solid #ba9968;background:#d7b47e15;color:#f0d5aa;border-radius:7px;padding:8px 10px;font-size:11px;font-weight:800;cursor:pointer}.answer-actions button:hover{background:#d7b47e2b}.thinking{font-size:12px;color:#c2d2d3;padding:12px 14px;margin:0 25px 16px 0;background:#172933;border-radius:10px;animation:chatPulse 1s ease-in-out infinite alternate}@keyframes chatPulse{to{opacity:.55}}
.chat-bottom{background:#13222c;border-top:1px solid #3b4f58}.suggest{border-top:0;padding:12px 15px 5px;gap:7px;scrollbar-width:thin}.suggest button{white-space:normal;flex:none;max-width:210px;text-align:left;border-color:#5b6b70;background:#1d303a;color:#e1e9e7;border-radius:7px;padding:9px 11px;font-size:11px;line-height:1.3;cursor:pointer}.suggest button:hover{border-color:#d7b47e;color:#f9dfb2}.compose{padding:10px 15px 5px}.compose input{min-width:0;height:43px;font-size:13px;border-radius:8px;padding:0 13px}.compose input::placeholder{color:#9eafb5}.send{width:43px;min-width:43px;border-radius:8px;font-size:20px;font-weight:800;cursor:pointer}.send:disabled{background:#536067;color:#a3adb0;cursor:not-allowed}.chat-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 16px 12px;color:#91a4ab;font-size:10px}.chat-foot button{background:none;border:0;color:#e6c28e;font-size:11px;font-weight:700;cursor:pointer;padding:3px}
@media(max-width:760px){.ava{right:14px;bottom:14px}.chat{inset:auto 8px 73px;width:auto;height:min(690px,calc(100dvh - 86px));border-radius:15px}.chat-head{padding:13px 14px;min-height:68px}.chat-mode{display:none}.context{padding:8px 14px}.messages{padding:14px}.welcome{padding:15px}.answer{margin-right:4px}.suggest{padding:10px 12px 4px}.compose{padding:8px 12px 4px}.chat-foot{padding:5px 13px 9px}}
@media(max-width:390px){.chat-identity small{font-size:11px}.suggest button{max-width:175px}.chat-foot span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.thinking{animation:none}.messages{scroll-behavior:auto}}
