:root{--bg:#f4f5f7;--ink:#1a202b;--muted:#7a818c;--green:#16233a;--green-dark:#0e1522;--accent:#2f80ff;--line:#e3e6eb;--card:#fff;--focus:#2f80ff;--warn-bg:#fff0e0;--warn-ink:#8a5716;--err-bg:#fdecea;--err-ink:#a3322a}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);margin:0;font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip{z-index:50;background:#fff;border-radius:8px;padding:8px 12px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}aside{background:var(--green-dark);color:#fff;z-index:10;flex-direction:column;width:245px;padding:30px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{letter-spacing:-1.5px;color:#fff;padding:0 12px;font-size:29px;font-weight:700;text-decoration:none}.brand span{color:#2f80ff}.subtitle{letter-spacing:6px;color:#a7b2c6;margin:5px 12px 42px;font-size:11px;font-weight:600}.nav{color:#b4bfd1;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;width:100%;margin:3px 0;padding:13px 14px;text-decoration:none;display:flex}.nav .icon{text-align:center;width:16px}.nav.active,.nav:hover{color:#fff;background:#1f2b40}.asidebottom{color:#a7b2c6;border-top:1px solid #26324a;margin-top:auto;padding:15px 10px 0;font-size:12px}.asidebottom b{color:#fff;font-weight:600}.signout{color:#cdd5e2;background:0 0;border:1px solid #26324a;border-radius:8px;margin-top:10px;padding:7px 10px;font-size:12px}.signout:hover{background:#1f2b40}main{max-width:1650px;margin-left:245px;padding:35px 48px}.top{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.top-actions{flex-wrap:wrap;gap:10px;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:2px;color:#868d98;font-size:10px;font-weight:700}h1{letter-spacing:-1.2px;margin:8px 0;font-size:34px}h2{letter-spacing:-.4px;margin:0 0 6px;font-size:20px}h3{letter-spacing:-.2px;margin:26px 0 10px;font-size:15px}p{color:#767d89}.lede{color:#868d98}.btn{border:1px solid var(--line);color:#1b2a44;white-space:nowrap;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:12px 17px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{border-color:#cbd3df}.btn.primary{background:var(--green);color:#fff;border-color:var(--green)}.btn.primary:hover{background:#0e1829}.btn.small{border-radius:8px;padding:7px 11px;font-size:12px}.btn.danger{color:var(--err-ink)}.btn:disabled{opacity:.55;cursor:progress}.linkbtn{color:#24508f;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.grid{grid-template-columns:repeat(6,1fr);gap:15px;margin-bottom:28px;display:grid}.metric,.panel{border:1px solid var(--line);background:#fff;border-radius:15px;padding:22px}.metric{text-decoration:none;transition:border-color .15s;display:block}.metric:hover{border-color:#c3cfe2}.metric small{color:#8a909b}.metric strong{letter-spacing:-1px;margin-top:12px;font-size:32px;display:block}.metric em{color:#5a6b86;margin-top:8px;font-size:11px;font-style:normal;display:block}.metric.alert strong{color:#a66c1e}.panel+.panel{margin-top:18px}.panel-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.toolbar{align-items:center;gap:10px;margin-bottom:16px;display:flex}.search{border:1px solid var(--line);background:#fff;border-radius:9px;flex:1;min-width:0;padding:13px 15px}.pills{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.pill{color:#57606d;background:#fff;border:1px solid #e1e5eb;border-radius:50px;padding:9px 14px;font-size:13px;text-decoration:none}.pill:hover{border-color:#c6d2e4}.pill.selected{color:#1f4a8f;background:#e5eefc;border-color:#b7cdf2}.pill .count{opacity:.7;margin-left:4px;font-size:11px}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-align:left;letter-spacing:1.2px;color:#999ea7;text-transform:uppercase;border-bottom:1px solid var(--line);padding:16px 12px;font-size:10px;font-weight:700}td{vertical-align:top;border-bottom:1px solid #eff1f4;padding:19px 12px}tr.rowlink{cursor:pointer}tr.rowlink:hover{background:#f9fafb}.rowtitle{font-weight:700;text-decoration:none}.rowtitle:hover{text-decoration:underline}.arrow{color:#8a919c;font-size:20px;text-decoration:none}.compact td{padding:11px 10px}.compact th{padding:10px}.num{text-align:right;white-space:nowrap}.muted{color:#868d99;margin-top:4px;font-size:12px}.badge{color:#536072;white-space:nowrap;background:#edf0f4;border-radius:30px;padding:7px 10px;font-size:11px;display:inline-block}.badge.ready{color:#28673e;background:#e2f0e5}.badge.delayed{background:var(--warn-bg);color:#a66c1e}.badge.quoted{color:#6659a3;background:#e9e8f6}.badge.progress{color:#3b5f86;background:#e6eef6}.badge.failed{background:var(--err-bg);color:var(--err-ink)}.flag{color:var(--warn-ink);background:var(--warn-bg);border-radius:6px;margin:5px 4px 0 0;padding:3px 7px;font-size:11px;display:inline-block}.empty{text-align:center;color:#8a909b;padding:35px}.attention{margin:0;padding:0;list-style:none}.attention li{border-bottom:1px solid #eff1f4;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.attention li:last-child{border-bottom:0}.attention a{text-decoration:none}.modalbg{z-index:20;background:#0a1220a3;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:20px;width:min(860px,100%);max-height:92vh;padding:30px;overflow:auto;box-shadow:0 30px 100px #0a122038}.modalhead{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px;display:flex}.x{color:#767d89;background:0 0;border:0;border-radius:8px;padding:4px 8px;font-size:25px;line-height:1;text-decoration:none}.x:hover{background:#f0f2f5}.pagecard{border:1px solid var(--line);background:#fff;border-radius:20px;max-width:900px;padding:30px}.fields{grid-template-columns:1fr 1fr;gap:15px;display:grid}.fields.three{grid-template-columns:repeat(3,1fr)}.field{color:#5f6672;flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}.field.wide{grid-column:1/-1}.field .hint{color:#8a909b;font-weight:400}.field .err{color:var(--err-ink);font-weight:600}.field.invalid input,.field.invalid select,.field.invalid textarea{background:snow;border-color:#e2a39d}input,select,textarea{outline-color:var(--focus);background:#fff;border:1px solid #dde2e9;border-radius:9px;width:100%;padding:12px}input[type=checkbox]{width:auto}input[readonly]{color:#5d6470;background:#f6f7f9}textarea{resize:vertical;min-height:75px}.check{color:#3a414c;align-items:flex-start;gap:9px;font-size:13px;font-weight:500;display:flex}.check input{margin-top:3px}.actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.actions.left{justify-content:flex-start}.inline-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.inline-form .field{flex:140px}details.section{border:1px solid var(--line);border-radius:12px;margin-top:14px;padding:0 16px}details.section>summary{cursor:pointer;justify-content:space-between;padding:14px 0;font-weight:700;list-style:none;display:flex}details.section>summary::-webkit-details-marker{display:none}details.section>summary:after{content:"+";color:#868d99;font-weight:400}details.section[open]>summary:after{content:"–"}details.section[open]{padding-bottom:16px}.detailgrid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.detailgrid.three{grid-template-columns:repeat(3,1fr)}.detailbox{background:#f6f7f9;border-radius:12px;padding:16px}.detailbox small{color:#89909b}.detailbox b{white-space:pre-line;margin-top:7px;display:block}.timeline{border-left:2px solid #c9d4e6;margin:14px 0 20px 7px;padding-left:20px;list-style:none}.timeline li{margin-bottom:14px;position:relative}.timeline li:before{content:"";background:#2f80ff;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:6px;left:-26px}.timeline li.system:before{background:#c8ced8}.timeline li.customer:before{background:#8d82c7}.timeline .when{color:#868d99;font-size:12px}.notice{color:#24508f;background:#eaf1fc;border-radius:10px;margin:14px 0;padding:13px 15px;font-size:12px}.notice.warn{background:var(--warn-bg);color:var(--warn-ink)}.notice.error{background:var(--err-bg);color:var(--err-ink)}.notice b{margin-bottom:2px;display:block}.copybox{align-items:center;gap:8px;margin-top:10px;display:flex}.copybox input{font-size:12px}.settingsrow{border-bottom:1px solid #e8ebef;justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.settingsrow:last-child{border-bottom:0}.split{grid-template-columns:1fr 1fr;align-items:start;gap:18px;display:grid}.preview-frame{background:#f4f5f7;border:1px solid #e3e7ec;border-radius:12px;width:100%;height:760px;margin-top:14px}.kv{grid-template-columns:140px 1fr;gap:6px 14px;font-size:13px;display:grid}.kv dt{color:#868d99}.kv dd{margin:0}.authwrap{background:var(--green-dark);place-items:center;min-height:100vh;padding:20px;display:grid}.authcard{background:#fff;border-radius:20px;width:min(420px,100%);padding:34px;box-shadow:0 30px 100px #0006}.authcard .brand{color:var(--ink);padding:0}.authcard .brand span{color:#2f80ff}.public{max-width:680px;margin:0 auto;padding:24px 16px 60px}.public-head{color:#fff;text-align:center;letter-spacing:3px;border-radius:16px 16px 0 0;padding:30px 20px;font-size:22px;font-weight:600}.public-body{background:#fff;border:1px solid #e3e7ec;border-top:0;border-radius:0 0 16px 16px;padding:28px}.steps{gap:8px;margin:18px 0;padding:0;list-style:none;display:grid}.steps li{color:#99a0aa;align-items:center;gap:10px;display:flex}.steps li:before{content:"";border:2px solid #cbd3df;border-radius:50%;flex:none;width:12px;height:12px}.steps li.done{color:var(--ink)}.steps li.done:before{background:#2f80ff;border-color:#2f80ff}.steps li.current{color:var(--ink);font-weight:700}.steps li.current:before{background:var(--green);border-color:var(--green)}.footnote{text-align:center;color:#99a0aa;margin-top:18px;font-size:12px}@media (max-width:1300px){.grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:950px){aside{width:70px;padding:20px 7px}.brand{padding:0 6px;font-size:19px}.subtitle,.navtext,.asidebottom .who,.asidebottom .org{display:none}.asidebottom{border:0;padding:10px 0 0}.signout{width:100%;padding:7px 4px;font-size:10px}main{margin-left:70px;padding:20px}.grid{grid-template-columns:repeat(2,1fr)}.nav{justify-content:center;padding:13px 0}.fields,.fields.three,.split,.detailgrid.three{grid-template-columns:1fr}.field.wide{grid-column:auto}}@media (max-width:620px){main{padding:14px}h1{font-size:27px}.grid{gap:8px}.metric{padding:14px}.metric strong{font-size:25px}.top{flex-direction:column;align-items:flex-start;gap:12px}.toolbar{flex-wrap:wrap}.panel{padding:12px}.tablewrap table{min-width:710px}.modalbg{align-items:stretch;padding:0}.modal{border-radius:0;max-height:100vh;padding:20px}.detailgrid{grid-template-columns:1fr}.public-body{padding:20px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.fields .check.wide{grid-column:1/-1}.check.invalid{color:var(--err-ink)}.stepper{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 24px;padding:0;list-style:none;display:flex}.stepper li{flex:auto;align-items:center;display:flex}.stepper li:not(:last-child):after{content:"";background:var(--line);flex:1;min-width:12px;height:1px;margin:0 8px}.stepper button{color:#868d98;background:0 0;border:0;align-items:center;gap:8px;padding:4px;display:flex}.stepper button:disabled{cursor:not-allowed}.stepper .num{background:#fff;border:1px solid #d5dbe3;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.stepper .current .num{background:var(--green);border-color:var(--green);color:#fff}.stepper .done .num{color:#1f4a8f;background:#e5eefc;border-color:#b7cdf2}.stepper .current .lbl{color:var(--ink);font-weight:700}.fitting-body{grid-template-columns:1fr 300px;align-items:start;gap:18px;display:grid}.fitting-main{border:1px solid var(--line);background:#fff;border-radius:15px;min-width:0;padding:24px}.fitting-main h2{margin:0}.cardgrid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-top:16px;display:grid}.cardgrid.six{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.pick{text-align:center;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:13px;flex-direction:column;align-items:center;gap:6px;padding:16px 12px;display:flex;position:relative}.pick:hover{border-color:#c3cfe2}.pick.selected{border-color:var(--green);box-shadow:0 0 0 1px var(--green);background:#f7faff}.pick.selected:after{content:"✓";background:var(--green);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:12px;display:grid;position:absolute;top:8px;right:8px}.pick.small{padding:10px 8px;font-size:12px}.pick .wordmark{letter-spacing:-.5px;text-transform:uppercase;font-size:22px;font-weight:800}.pick .muted{margin-top:0}.buildsummary{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px;position:sticky;top:20px}.buildsummary h3{margin-top:0}.buildsummary ul{margin:0;padding:0;list-style:none}.buildsummary li{border-bottom:1px solid #eff1f4;justify-content:space-between;gap:10px;padding:9px 0;font-size:13px;display:flex}.buildsummary li small{color:#868d99;font-size:11px;display:block}.buildsummary .total{justify-content:space-between;padding-top:12px;font-size:16px;display:flex}@media (max-width:1100px){.fitting-body{grid-template-columns:1fr}.buildsummary{position:static}}@media (max-width:620px){.stepper .lbl{display:none}.fitting-main{padding:16px}.cardgrid{grid-template-columns:repeat(2,1fr)}}.top-actions{align-items:center}.bellwrap{position:relative}.bell{border:1px solid var(--line);color:#1b2a44;background:#fff;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:relative}.bell .dot{color:#fff;background:#b4532a;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;font-weight:700;display:grid;position:absolute;top:-3px;right:-3px}.bellmenu{border:1px solid var(--line);z-index:15;background:#fff;border-radius:14px;width:min(360px,88vw);padding:14px;position:absolute;top:52px;right:0;box-shadow:0 20px 60px #0a122026}.bellmenu ul{max-height:60vh;margin:8px 0 0;padding:0;list-style:none;overflow:auto}.bellmenu li a{border-radius:9px;gap:2px;padding:10px;font-size:13px;text-decoration:none;display:grid}.bellmenu li a:hover{background:#f4f6f9}.bellmenu li.unread a{background:#edf3fd}.bellmenu li span{color:#4a515d}.bellmenu li small{color:#868d99}.asidebottom .avatar{color:#fff;vertical-align:middle;background:#1f2b40;border-radius:50%;place-items:center;width:34px;height:34px;margin-right:8px;font-size:12px;font-weight:700;display:inline-grid}.public.branded{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.public.branded h1,.public.branded h3{font-family:var(--brand-heading);font-weight:600}.public.branded .btn{border-radius:var(--brand-radius)}.public.branded .public-head{border-radius:0;padding:12px 20px}.public.branded .public-bar{height:8px}.public.branded .public-body{border-radius:0}.public.branded .steps li.current:before{background:var(--green);border-color:var(--green)}
