:root{
  --bg:#f3f7fa;--panel:#fff;--ink:#0f2940;--muted:#617487;--line:#dbe6ed;
  --brand:#0577a8;--brand-2:#10a37f;--nav:#fff;--green:#08785e;--amber:#a45c00;--red:#b52e35;
  --shadow:0 12px 34px rgba(15,41,64,.08)
}
*{box-sizing:border-box}
body{font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
button,.buttonlink,input,select,textarea{font:inherit}
button,.buttonlink{border-radius:9px;min-height:40px}
button:focus-visible,.buttonlink:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(5,119,168,.24);outline-offset:2px}
.primary{background:linear-gradient(135deg,var(--brand),#0699b8);color:#fff;border-color:transparent;box-shadow:0 8px 20px rgba(5,119,168,.18)}
.login{background:#eef5f8;display:grid;place-items:center;padding:clamp(18px,4vw,54px)}
.login-layout{width:min(1120px,100%);min-height:650px;display:grid;grid-template-columns:1.1fr .9fr;background:#fff;border:1px solid #d8e5ec;border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(15,41,64,.16)}
.login-intro{position:relative;padding:clamp(38px,7vw,88px);display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(145deg,#06324c 0%,#075b73 55%,#0f997c 130%);overflow:hidden}
.login-intro:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.14);border-radius:50%;right:-270px;bottom:-260px;box-shadow:0 0 0 70px rgba(255,255,255,.05),0 0 0 140px rgba(255,255,255,.035)}
.group-mark{display:flex;align-items:center;gap:14px;font-size:.78rem;font-weight:800;letter-spacing:.14em;margin-bottom:54px;position:relative;z-index:1}
.login-intro h1{font-size:clamp(2.7rem,5vw,4.8rem);line-height:.98;letter-spacing:-.055em;margin:0 0 28px;position:relative;z-index:1}
.login-intro h1 em{font-style:normal;color:#7be2c0}
.login-intro>p{max-width:540px;font-size:1.08rem;color:#d2e7ec;position:relative;z-index:1}
.product-family{display:flex;flex-wrap:wrap;gap:8px;margin-top:42px;position:relative;z-index:1}.product-family span,.product-family strong{padding:8px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:.75rem}.product-family strong{background:#fff;color:#075b73;border-color:#fff}
.auth-panel{display:grid;place-items:center;padding:clamp(26px,5vw,64px)}
.login-card{width:min(430px,100%);padding:0;background:transparent;border-radius:0;box-shadow:none}
.login-card h2{font-size:1.9rem;letter-spacing:-.03em;margin:7px 0}.login-card p{margin:0 0 26px}
.login-card label{font-size:.78rem;letter-spacing:.04em;color:#42576b;margin:14px 0}.login-card input{font-size:1rem;padding:13px 14px;border-radius:10px;background:#fbfdfe}.login-card button.primary{padding:13px;width:100%;font-size:1rem;margin-top:10px}.eyebrow{font-size:.72rem;font-weight:900;letter-spacing:.14em;color:var(--brand)}
.text-button{width:100%;border:0;background:transparent;color:var(--brand);box-shadow:none;margin-top:8px}.form-error{display:block;color:var(--red);min-height:22px;margin-top:10px}
.radar{background:rgba(255,255,255,.08);border-color:#83e4c5}.radar:before,.radar:after{border-color:rgba(131,228,197,.68)}
.shell{grid-template-columns:286px minmax(0,1fr)}
.shell>aside{background:#fff;color:var(--ink);padding:18px 14px;border-right:1px solid var(--line);box-shadow:8px 0 28px rgba(15,41,64,.035)}
.brand{border-bottom:1px solid var(--line);padding:5px 8px 18px}.brand .radar{background:#e9f8f3;border-color:#0f9f7f}.brand b{color:#0b3852;font-size:.86rem}.brand small{font-size:.72rem;color:#718498}
.secure{font-size:.65rem;color:#08785e;background:#eaf8f3;border:1px solid #c9eadf;padding:8px 10px;text-align:left}.secure span{display:inline-block;width:7px;height:7px;background:#10a37f;border-radius:50%;margin-right:6px}
.navtitle{font-size:.64rem;color:#94a3b0;padding:17px 11px 5px}.navbtn{color:#43586b;font-size:.87rem;padding:9px 11px;border-radius:9px}.navbtn:hover{background:#eef6f8;color:#075b73}.navbtn.active{background:#e6f3f7;color:#046589;font-weight:800;box-shadow:inset 3px 0 #0f9f7f}
.group-links{border-top:1px solid var(--line);display:grid;gap:5px;padding:14px 10px;color:#6d8193;font-size:.72rem}.group-links small{font-size:.62rem;font-weight:900;letter-spacing:.12em;color:#9aa9b5}.group-links span{padding:3px 0}
.user{border-top:1px solid var(--line);padding:14px 8px;display:flex;align-items:center;justify-content:space-between;gap:8px}.user b{color:#17364d}.user small{font-size:.7rem;color:#748698}.user button{padding:6px;color:#597084;min-height:32px}
main{min-width:0}header{height:84px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);padding:0 32px}header small{font-size:.66rem;color:#6f8394}header h1{font-size:1.55rem;color:#12364f;letter-spacing:-.02em}
#content{padding:28px 32px 58px}.pagehead{align-items:center;margin-bottom:20px}.pagehead h2{font-size:1.55rem;letter-spacing:-.025em}.pagehead p{font-size:.88rem;color:#687b8d;max-width:720px}
.metric,.card,.buildermain,.summary{border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.metric{padding:18px;border-top:3px solid #d8eaf0}.metric small{font-size:.67rem}.metric strong{font-size:1.65rem;color:#0c3f5a}.metric span{font-size:.75rem;color:#748698}
.card h3{font-size:1rem}.cardhead{padding:16px 18px}.cardbody{padding:18px}.table th{font-size:.66rem;padding:11px 12px;background:#f6f9fb;color:#697e90}.table td{font-size:.82rem;padding:12px}.status{font-size:.7rem;padding:4px 8px}.info{font-size:.82rem;padding:12px;background:#f1f8fa}.field label{font-size:.7rem}.field input,.field select,.field textarea{font-size:.9rem;padding:11px}.modal{border-radius:18px;box-shadow:0 28px 90px rgba(8,28,43,.28)}
.readiness{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center;background:linear-gradient(135deg,#073d58,#08718b);color:#fff;border-radius:18px;padding:26px 30px;box-shadow:var(--shadow)}.readiness small{font-size:.66rem;letter-spacing:.12em;font-weight:900;color:#bfe4e7}.readiness strong{display:block;font-size:2.6rem}.readiness p{margin:0;color:#d2e8ec}.progress{height:12px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden}.progress span{display:block;height:100%;background:#71ddb7;border-radius:inherit}
.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.check-card{display:flex;gap:12px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:13px}.check-card>span{font-size:1.6rem;color:#9cadb9}.check-card.done>span{color:#10a37f}.check-card b,.check-card small{display:block}.check-card small{font-size:.72rem;color:#7a8c9b;margin-top:2px}
.action-grid,.help-grid,.control-grid,.group-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.action-card{padding:20px}.action-card>small,.control-card small,.group-product small{font-size:.66rem;letter-spacing:.12em;font-weight:900;color:var(--brand)}.action-card h3,.group-product h3{font-size:1.2rem;margin:8px 0}.action-card p,.group-product p,.fine{font-size:.82rem;color:#667b8d}.action-card.accent{background:linear-gradient(145deg,#edf9f5,#fff);border-color:#cbe9df}.button-stack{display:flex;flex-wrap:wrap;gap:8px}.buttonlink{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.buttonlink.primary{border:0}
.control-card,.group-product{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow)}.control-card b,.control-card span{display:block}.control-card b{font-size:1.08rem;margin:8px 0}.control-card span{font-size:.78rem;color:#728597}.control-card.warn{border-top:3px solid #e49a34}.group-product{border-top:4px solid #0b7897}.group-product.active{border-top-color:#10a37f;background:#f4fbf8}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.fine{margin-top:14px}
@media(max-width:1050px){.shell{grid-template-columns:238px minmax(0,1fr)}.action-grid,.help-grid,.control-grid,.group-product-grid,.check-grid{grid-template-columns:repeat(2,1fr)}.login-layout{grid-template-columns:1fr}.login-intro{min-height:320px}.login-intro h1{font-size:3rem}.product-family{margin-top:20px}.group-mark{margin-bottom:28px}}
@media(max-width:800px){.shell{grid-template-columns:1fr}.shell>aside{position:relative;max-height:none}.group-links{display:none}header{padding:0 18px}#content{padding:22px 16px 44px}.readiness{grid-template-columns:1fr}.action-grid,.help-grid,.control-grid,.group-product-grid,.check-grid{grid-template-columns:1fr}.login-intro{padding:36px}.login-intro h1{font-size:2.6rem}.auth-panel{padding:34px 24px}}
@media(max-width:550px){header small{display:none}.login{padding:0}.login-layout{border:0;border-radius:0;min-height:100vh}.login-intro{min-height:260px}.product-family{display:none}.pagehead>div:last-child{width:100%}.pagehead .primary,.pagehead .buttonlink{width:100%}.table td{font-size:.78rem}.scan-card form{padding:12px}}

/* Radar group operating interface */
:root{
  --paper:#fbfbf7;--cream:#f4f3ed;--ink:#091614;--ink-soft:#31413d;--muted:#64726e;
  --line:#d8ddd6;--navy:#0a1d1b;--navy-2:#102a27;--acid:#d6ff4b;--acid-soft:#ecffc0;
  --success:#137454;--watch:#9a6811;--danger:#9f3d39;--bg:var(--paper);--panel:#fff;
  --brand:#173f38;--brand-2:#d6ff4b;--nav:var(--navy);--green:var(--success);--amber:var(--watch);--red:var(--danger);
  --shadow:0 10px 28px rgba(9,22,20,.055)
}
body{font-size:16px;background:var(--paper);color:var(--ink)}
button,.buttonlink{border-color:var(--line);border-radius:7px;background:#fff;color:var(--ink);box-shadow:none}
button:hover,.buttonlink:hover{border-color:#a9b4ad;background:#f8faf5}
button:focus-visible,.buttonlink:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:rgba(214,255,75,.72)}
.primary{background:var(--acid);color:var(--ink);border:1px solid var(--acid);box-shadow:none}
.primary:hover{background:#c8f137;border-color:#c8f137}
.shell{grid-template-columns:276px minmax(0,1fr)}
.shell>aside{background:var(--navy);color:#fff;border-right:0;box-shadow:none;padding:18px 14px}
.brand{border-color:#ffffff1f}.brand .radar{background:#163c36;border-color:var(--acid)}.brand b{color:#fff}.brand small{color:#9cb0aa}
.secure{color:var(--acid);background:#d6ff4b12;border-color:#d6ff4b32;border-radius:5px}.secure span{background:var(--acid)}
.navtitle{color:#6f8580}.navbtn{color:#b7c6c2;border-radius:6px;font-size:.86rem}.navbtn:hover{background:#ffffff0d;color:#fff}.navbtn.active{background:var(--acid);color:var(--ink);box-shadow:none;font-weight:800}
.group-links{border-color:#ffffff1f;color:#91a69f}.group-links small{color:#657c76}.group-links strong{color:var(--acid);font-size:.72rem;padding-top:2px}
.user{border-color:#ffffff1f}.user b{color:#fff}.user small,.user button{color:#91a69f}.user button:hover{background:#ffffff0d;color:#fff}
header{height:82px;background:rgba(251,251,247,.95);border-color:var(--line);padding:0 30px}header h1{color:var(--ink);font-size:1.5rem}header small{color:#61716c;letter-spacing:.13em}
#content{max-width:1760px;padding:28px 32px 64px}.pagehead h2{color:var(--ink);font-size:1.7rem}.pagehead p{color:var(--muted);font-size:.91rem}
.metric,.card,.buildermain,.summary,.control-card,.group-product,.report-card,.kpi-card{border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);background:#fff}
.metric{border-top:1px solid var(--line)}.metric strong{color:var(--ink)}
.table th{background:var(--cream);color:#586762;font-size:.69rem}.table td{font-size:.86rem}.table tbody tr:hover{background:#fbfcf8}
.status{border-radius:4px;background:#eef1ed}.status.green{background:#e6f4ee;color:var(--success)}.status.amber{background:#fff3dc;color:var(--watch)}.status.red{background:#fbecea;color:var(--danger)}
.info{background:#f5f8f5;border-color:var(--line);color:var(--ink-soft);border-radius:6px}
.modal{border-radius:10px}.detail,.rule,.readiness,.check-card{border-radius:7px}
.login{background:var(--paper)}.login-layout{border-radius:12px;border-color:var(--line)}.login-intro{background:linear-gradient(145deg,var(--navy) 0%,var(--navy-2) 100%)}.login-intro h1 em{color:var(--acid)}.product-family strong{background:var(--acid);border-color:var(--acid);color:var(--ink)}.eyebrow{color:var(--success)}
.menu-toggle{display:none;min-height:36px;background:var(--navy);color:#fff;border-color:var(--navy)}
.radar-hero{background:linear-gradient(125deg,var(--navy),var(--navy-2));color:#fff;border-radius:9px;padding:30px;border:1px solid #183a34;box-shadow:var(--shadow)}
.radar-hero small,.planner-banner small,.section-head small,.kpi-card small,.control-summary small{font-size:.69rem;font-weight:850;letter-spacing:.13em;color:#6c7b76}
.radar-hero small{color:var(--acid)}.radar-hero h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.04;letter-spacing:-.045em;margin:9px 0 12px;max-width:780px}.radar-hero p{color:#bfd0cb;max-width:760px;margin:0}
.dashboard-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:28px;align-items:end}
.hero-position{border-left:1px solid #ffffff2d;padding-left:26px}.hero-position span,.hero-position small{display:block;color:#a8bab5}.hero-position strong{display:block;color:var(--acid);font-size:2.3rem;margin:5px 0}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.kpi-card{padding:18px;display:flex;flex-direction:column;min-height:152px}.kpi-card strong{font-size:1.72rem;margin:8px 0 1px}.kpi-card span{font-size:.78rem;color:var(--muted)}.kpi-card button{margin-top:auto;align-self:flex-start;padding:7px 0;border:0;background:transparent;color:var(--success)}
.dashboard-grid,.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-card{min-width:0;overflow:hidden}.report-card.span2{grid-column:span 2}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 18px;border-bottom:1px solid var(--line)}.section-head h3{margin:4px 0 0;font-size:1.05rem}.section-head>span.fine{margin:0}
.exception-list{display:grid}.exception-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto 18px;gap:12px;align-items:center;border:0;border-bottom:1px solid #edf0ec;border-radius:0;padding:13px 18px;text-align:left}.exception-row:last-child{border-bottom:0}.exception-row strong{font-size:1rem}.exception-row i{font-style:normal;color:var(--muted)}
.capacity-dial{margin:20px 18px 8px;padding:18px;background:var(--cream);border-left:5px solid var(--success)}.capacity-dial.watch{border-color:#dfa13d}.capacity-dial.critical{border-color:var(--danger)}.capacity-dial strong,.capacity-dial span{display:block}.capacity-dial strong{font-size:2.2rem}.capacity-dial span{font-size:.78rem;color:var(--muted)}
.load-track{height:9px;background:#e9ede7;margin:14px 18px;border-radius:999px;overflow:hidden}.load-track span{display:block;height:100%;background:var(--acid);border-right:1px solid #91a22b}.mini-stats,.production-split{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.mini-stats div,.production-split div{padding:13px 16px;border-right:1px solid var(--line)}.mini-stats div:last-child,.production-split div:last-child{border:0}.mini-stats b,.mini-stats span,.production-split strong,.production-split span{display:block}.mini-stats span,.production-split span{font-size:.72rem;color:var(--muted)}
.report-lines{display:grid;padding:8px 18px}.report-lines div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #edf0ec}.report-lines span{color:var(--muted)}.report-card>button{margin:4px 18px 18px}
.control-summary{display:grid;grid-template-columns:repeat(4,1fr);background:var(--navy);color:#fff;border-radius:8px;overflow:hidden;margin-bottom:14px}.control-summary>div{padding:20px;border-right:1px solid #ffffff24}.control-summary>div:last-child{border:0}.control-summary small{color:var(--acid)}.control-summary strong,.control-summary span{display:block}.control-summary strong{font-size:1.6rem;margin:7px 0}.control-summary span{font-size:.75rem;color:#b7c8c3}
.management-grid .report-card{padding-bottom:8px}.age-row{display:grid;grid-template-columns:150px minmax(100px,1fr) 105px;gap:10px;align-items:center;padding:9px 18px}.age-row>span{font-size:.78rem;color:var(--muted)}.age-row>div{height:8px;background:#edf0ec;border-radius:999px;overflow:hidden}.age-row i{display:block;height:100%;background:var(--success)}.age-row b{text-align:right;font-size:.82rem}.production-split{grid-template-columns:repeat(4,1fr);border-top:0}.production-split strong{font-size:1.25rem}.report-item{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid #edf0ec}.report-item b,.report-item span{display:block}.report-item span{font-size:.74rem;color:var(--muted);margin-top:2px}
.planner-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--navy);color:#fff;border-radius:8px;padding:24px 28px}.planner-banner small{color:var(--acid)}.planner-banner h3{font-size:1.5rem;margin:7px 0}.planner-banner p{margin:0;color:#b9cac5}.planner-score{text-align:right}.planner-score strong,.planner-score span{display:block}.planner-score strong{font-size:2.5rem;color:var(--acid)}.planner-score span{font-size:.75rem;color:#b9cac5}.planner-score.critical strong{color:#ff948b}.planner-score.watch strong{color:#ffd37c}.planner-table td{white-space:nowrap}.planner-table td:nth-child(2){white-space:normal;min-width:190px}.late-row{box-shadow:inset 4px 0 var(--danger)}.time-history{display:grid;border:1px solid var(--line);border-radius:6px}.time-history>div{padding:10px 12px;border-bottom:1px solid var(--line)}.time-history>div:last-child{border-bottom:0}.time-history b,.time-history span{display:block}.time-history span{font-size:.75rem;color:var(--muted)}
.readiness{background:var(--navy)}.progress span{background:var(--acid)}
@media(max-width:1180px){.kpi-grid,.control-summary{grid-template-columns:repeat(2,1fr)}.control-summary>div:nth-child(2){border-right:0}.control-summary>div:nth-child(-n+2){border-bottom:1px solid #ffffff24}}
@media(max-width:800px){
  .shell{grid-template-columns:1fr}.shell>aside{position:fixed;inset:0 auto 0 0;width:min(310px,88vw);z-index:80;transform:translateX(-105%);transition:transform .2s ease;overflow:auto}.shell.nav-open>aside{transform:translateX(0)}.shell.nav-open:after{content:"";position:fixed;inset:0;background:#09161499;z-index:70}.menu-toggle{display:block}header{display:grid;grid-template-columns:auto 1fr auto;gap:12px;height:74px}.dashboard-hero{grid-template-columns:1fr}.hero-position{border-left:0;border-top:1px solid #ffffff2d;padding:18px 0 0}.kpi-grid,.dashboard-grid,.management-grid,.control-summary{grid-template-columns:1fr}.report-card.span2{grid-column:auto}.control-summary>div{border-right:0;border-bottom:1px solid #ffffff24!important}.production-split{grid-template-columns:repeat(2,1fr)}.planner-banner{align-items:flex-start}.planner-score{text-align:left}.exception-row{grid-template-columns:72px minmax(0,1fr) auto}.exception-row i{display:none}
}
@media(max-width:550px){
  header{padding:0 12px}header h1{font-size:1.08rem}#newQuote{font-size:.75rem;padding:7px}.radar-hero{padding:22px}.radar-hero h2{font-size:2rem}.kpi-grid{grid-template-columns:1fr 1fr}.kpi-card{min-height:138px;padding:14px}.kpi-card strong{font-size:1.35rem}.control-summary{grid-template-columns:1fr}.planner-banner{display:grid}.planner-score strong{font-size:2rem}.age-row{grid-template-columns:1fr 80px}.age-row>div{grid-row:2;grid-column:1/-1}.exception-row{grid-template-columns:70px 1fr}.exception-row strong{grid-column:2}.formgrid{grid-template-columns:1fr}.span2,.span4{grid-column:auto}.modal-back{align-items:end;padding:0}.modal{width:100%;max-height:94vh;border-radius:12px 12px 0 0}.modalhead,.modalbody,.modalfoot{padding-left:14px;padding-right:14px}.kpi-card button{font-size:.75rem}
}
