/* AECC site styles: sign-in and the developer views, written against the AECC theme tokens. The front door is below, lifted from the approved page. */
[data-site="aecc"][data-look="customer"] body, [data-site="aecc"] { background: var(--bg); }
.signin-page { padding: 64px 0 40px; }
.signin-card { max-width: 440px; margin: 0 auto; padding: 32px 34px; }
.signin-kick { font-size: 11px; letter-spacing: .24em; text-transform: uppercase; color: var(--metal); margin-bottom: 8px; }
.signin-card h1 { font: 500 26px/1.2 var(--font-display); margin-bottom: 12px; color: var(--deep); }
.signin-note { margin-bottom: 22px; }
.signin-form .btn { width: 100%; margin-top: 6px; }
.signin-back { display: inline-block; margin-top: 14px; font-size: 13px; }
[data-site="aecc"] .signin-card { color: var(--ink); }
/* Invited access (Session 23): the request page, one column on every width; the sign-in page's link to it. */
.access-card { max-width: 520px; margin: 28px auto 40px; padding: 28px 30px; color: var(--ink); }
/* Scoped under .fd: the front door's own `.fd h1` and `.fd h2` (ivory, for its dark band) come later in this file. */
.fd .access-card h1 { margin: 0 0 12px; font: 500 26px/1.2 var(--font-display); color: var(--deep); }
.access-form { margin-top: 18px; }
.access-form .field textarea { padding: 11px 13px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); color: var(--ink); font: inherit; resize: vertical; }
.access-form .btn { width: 100%; margin-top: 6px; }
.access-privacy { margin-top: 14px; }
.signin-ask { margin-top: 16px; font-size: 13px; }
.signin-google { margin-top: 14px; }
.signin-google .btn { width: 100%; }
/* The operator page (invited access B4): requests and people as one column of items on every width. */
.access-admin { max-width: 720px; }
.fd .acc-h { margin: 22px 0 8px; font: 600 15px var(--sans); color: var(--deep); }
.acc-item { padding: 12px 0; border-top: 1px solid var(--line); }
.acc-top { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.acc-meta { color: var(--muted); font-size: 12.5px; overflow-wrap: anywhere; }
.acc-reason { margin: 6px 0; font-size: 14px; overflow-wrap: anywhere; }
.acc-pill { padding: 1px 8px; border: 1px solid var(--line); border-radius: 999px; font-size: 11.5px; white-space: nowrap; }
.acc-pill.pending { border-color: var(--metal); color: var(--metal); }
.acc-pill.approved, .acc-pill.on { border-color: var(--green, #1d6b4f); color: var(--green, #1d6b4f); }
.acc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.btn-quiet { background: none; color: var(--ink); border: 1px solid var(--line); }
@media (max-width: 1023px) { .fd-cards { grid-template-columns: 1fr; } .fd-hero h1 { font-size: 40px; } }

/* developer view (not a product page) */
.dev { padding: 24px 0 48px; color: var(--ink); display: grid; gap: 16px; }
.dev-actions { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin-top: 12px; }
.dev-steps { display: grid; gap: 8px; }
.dev-step { padding: 10px 14px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); display: grid; gap: 4px; }
.dev-step.working { color: var(--muted); display: flex; gap: 10px; align-items: center; }
.dev-gate { border-color: var(--human); }
.dev-options { display: flex; gap: 10px; flex-wrap: wrap; }
.dev-table { width: 100%; border-collapse: collapse; font-size: 14px; margin-top: 12px; }
.dev-table th, .dev-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid var(--line); }

/* AECC front door (FS 2.1), lifted from the approved design
   docs/next/design/approved/aecc-landing.html and scoped under .fd. The card
   accents follow the packs (bank blue, telco maroon; decision 17, leftover L1).
   Tokens come from sites/aecc/theme.css. */
.fd { color: var(--ivory); font-family: var(--sans); font-size: 15px; line-height: 1.5; }
.fd * { box-sizing: border-box; }
.fd a { color: inherit; }
.fd button { font: inherit; cursor: pointer; }
.fd .navr button.signin { background: none; opacity: 1; padding: 10px 22px; border: 1px solid var(--gold); color: var(--gold); letter-spacing: .04em; }
.fd .navr button.signin:hover { background: var(--gold); color: var(--navy); }
.fd .navr .who { color: var(--mute); font-size: 13px; }
.fd .honesty { border-top: 0; padding-top: 0; margin-top: 0; color: #7d889b; }
.fd .honesty b { color: var(--mute); }
.fd .honesty a { color: var(--gold); }
.fd .error-line { max-width: 1240px; margin: 12px auto; }
.fd .w{max-width:1240px;margin:0 auto;padding:0 48px}
.fd .nav{border-bottom:1px solid var(--line)}
.fd .nav .w{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}
.fd .logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.fd .mono{display:grid;place-items:center;width:46px;height:46px;border:1.5px solid var(--gold);color:var(--gold);font:600 15px var(--serif);letter-spacing:.06em}
.fd .logo b{display:block;font:600 17px var(--serif)}
.fd .ed{display:inline-block;margin-left:8px;padding:2px 8px;border:1px solid var(--gold);color:var(--gold);font:600 10px var(--sans);letter-spacing:.18em;text-transform:uppercase;vertical-align:3px}
.fd .logo small{display:block;color:var(--mute);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.fd .navr{display:flex;align-items:center;gap:32px;font-size:14px;letter-spacing:.04em}
.fd .navr a{text-decoration:none;opacity:.85}
.fd .navr a:hover{opacity:1;text-decoration:underline}
.fd .navr a.signin{opacity:1;padding:10px 22px;border:1px solid var(--gold);color:var(--gold)}
.fd .navr a.signin:hover{background:var(--gold);color:var(--navy);text-decoration:none}
.fd .hero{display:grid;grid-template-columns:minmax(0,1fr) 540px;gap:64px;align-items:center;padding-top:84px;padding-bottom:92px}
.fd .kick{display:flex;align-items:center;gap:14px;margin:0 0 26px;color:var(--gold);font-size:12px;letter-spacing:.28em;text-transform:uppercase}
.fd .kick::before{content:"";width:36px;height:1px;background:var(--gold)}
.fd h1{margin:0 0 28px;font:400 68px/1.04 var(--serif);letter-spacing:-.01em;color:var(--ivory)}
.fd h1 em, .fd h2 em{color:var(--gold-soft);font-style:italic}
.fd .lede{max-width:31em;margin:0 0 38px;color:#c8cfdb;font-size:19px;line-height:1.55}
.fd .cta{display:flex;flex-wrap:wrap;align-items:center;gap:26px}
.fd .b1{display:inline-block;padding:16px 28px;background:var(--gold);color:var(--navy);font-weight:700;letter-spacing:.02em;text-decoration:none}
.fd .b1:hover{background:var(--gold-soft)}
.fd .b2{padding-bottom:3px;border-bottom:1px solid var(--gold);text-decoration:none}
.fd .b2:hover{color:var(--gold-soft)}
.fd .hnote{margin:26px 0 0;color:var(--mute);font-size:13px}
.fd .stack{position:relative;height:548px}
.fd .stack::before{content:"";position:absolute;left:186px;top:326px;width:354px;height:232px;border:1px solid var(--gold);z-index:0}
.fd .v{position:absolute;width:372px;box-shadow:0 30px 60px rgba(0,0,0,.45);overflow:hidden}
.fd .v .vh{display:flex;justify-content:space-between;align-items:center;height:38px;padding:0 16px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}
.fd .v .vb{padding:14px 18px 16px}
.fd .step-tag{display:inline-flex;align-items:center;gap:7px}
.fd .step-tag i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;font:600 10.5px var(--sans);font-style:normal;letter-spacing:0}
.fd .va{left:0;top:0;z-index:1;background:#fbfaf7;color:#14213d}
.fd .va .vh{background:#133a78;color:#e6d3ad;border-bottom:2px solid #b8893b}
.fd .va .vh b{font:600 13px var(--serif);letter-spacing:.04em;text-transform:none;display:flex;align-items:center;gap:8px}
.fd .va .vh b span{display:grid;place-items:center;width:20px;height:20px;border:1px solid #b8893b;color:#e6d3ad;font-size:11px}
.fd .va .step-tag i{background:#b8893b;color:#133a78}
.fd .va h4{margin:0 0 2px;font:600 17px var(--serif);color:#133a78}
.fd .va p{margin:0 0 10px;color:#5b6b82;font-size:12.5px}
.fd .chips{display:flex;gap:6px;flex-wrap:wrap}
.fd .chips span{padding:3px 9px;border:1px solid #c9d8ee;background:#eaf1fb;color:#1f4e9c;font-size:11.5px}
.fd .vb2{left:84px;top:134px;z-index:2;background:#ffffff;color:var(--ink)}
.fd .vb2 .vh{background:#eaf1fb;color:#133a78;border-bottom:1px solid #c9d8ee;border-top:3px solid #1f4e9c}
.fd .vb2 .vh b{font:600 12.5px var(--sans);letter-spacing:.06em;text-transform:none}
.fd .vb2 .step-tag i{background:#133a78;color:#e6d3ad}
.fd .rows{margin:0;padding:0;list-style:none;font-size:12.5px}
.fd .rows li{display:flex;gap:9px;align-items:baseline;padding:4px 0}
.fd .rows li i{font-style:normal;color:#2f8f6b;font-weight:700;width:12px}
.fd .rows li.w8 i{color:#b8893b}
.fd .rows small{color:var(--mute-ink)}
.fd .appr{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:9px;border-top:1px dashed #e0d9ca;font-size:12px;color:var(--mute-ink)}
.fd .appr span b{color:var(--ink)}
.fd .appr em{font-style:normal;display:flex;gap:6px}
.fd .appr em u{text-decoration:none;padding:4px 10px;font-weight:600;font-size:11.5px}
.fd .appr em u.ok{background:#1f4e9c;color:#fbfaf7}
.fd .appr em u.no{border:1px solid #c9c2b2;color:var(--ink)}
.fd .vc{left:168px;top:312px;z-index:3;background:var(--navy2);color:var(--ivory);border:1px solid var(--line)}
.fd .vc .vh{border-bottom:1px solid var(--line);color:var(--gold)}
.fd .vc .vh b{font:600 12.5px var(--serif);letter-spacing:.04em;text-transform:none;color:var(--ivory)}
.fd .vc .step-tag i{background:var(--gold);color:var(--navy)}
.fd .vc .id{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:9px}
.fd .vc .id b{font:400 16px var(--serif)}
.fd .vc .id span{font-size:11.5px;color:var(--gold-soft);border:1px solid #5a4a2a;padding:2px 8px}
.fd .trail{margin:0;padding:0;list-style:none;font:11.5px/1.75 var(--mono);color:#b9c2d3}
.fd .trail li{display:grid;grid-template-columns:64px 128px 1fr;gap:6px}
.fd .trail li b{font-weight:400;color:var(--gold-soft)}
.fd .trail li.p b{color:#e8c27a}
.fd .vc .vf{display:flex;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid var(--line);font-size:11px;color:var(--mute)}
.fd .band{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fd .band .w{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.fd .proof{padding:34px 24px 34px 36px;border-left:1px solid var(--line)}
.fd .proof:first-child{padding-left:0;border-left:0}
.fd .proof b{display:block;margin-bottom:6px;color:var(--gold-soft);font:400 26px var(--serif)}
.fd .proof span{color:var(--mute);font-size:14.5px}
.fd .three{padding:96px 0 100px}
.fd .sh{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:56px}
.fd .k2{margin:0 0 14px;color:var(--gold);font-size:12px;letter-spacing:.28em;text-transform:uppercase}
.fd .sh h2{margin:0;font:400 46px/1.1 var(--serif)}
.fd .sh p{max-width:29em;margin:0;color:var(--mute);font-size:15.5px}
.fd .ways{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}
.fd .ways::before{content:"";position:absolute;left:0;right:0;top:27px;height:1px;background:var(--gold)}
.fd .ways li{position:relative;display:flex;flex-direction:column;padding-right:56px}
.fd .ways .where{margin-top:auto}
.fd .n{display:grid;place-items:center;width:55px;height:55px;margin-bottom:26px;border:1px solid var(--gold);border-radius:50%;background:var(--navy);color:var(--gold);font:400 22px var(--serif)}
.fd .ways li.p .n{background:var(--gold);color:var(--navy)}
.fd .ways h3{margin:0 0 10px;font:400 26px/1.2 var(--serif);color:var(--ivory)}
.fd .ways p{margin:0 0 20px;color:#b7c0cf;font-size:15px}
.fd .where{display:flex;align-items:center;gap:10px;padding-top:14px;border-top:1px solid var(--line);color:var(--mute);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.fd .dots{display:flex;gap:4px}
.fd .dots i{width:10px;height:10px;border-radius:50%}
.fd .ivory{padding:96px 0 84px;background:var(--ivory);color:var(--ink)}
.fd .ivory .k2{color:var(--gold-ink)}
.fd .ivory .sh h2{color:var(--ink)}
.fd .ivory .sh h2 em{color:var(--gold-ink)}
.fd .ivory .sh p{color:var(--mute-ink)}
.fd .ent{margin-bottom:28px;background:var(--paper);border:1px solid var(--rule);box-shadow:0 18px 40px -28px rgba(24,32,46,.35)}
.fd .eh{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:36px;align-items:center;padding:20px 34px;background:var(--d);color:#f3efe6}
.fd .eh::after{content:"";position:absolute;left:0;right:0;bottom:-3px;height:3px;background:linear-gradient(90deg,var(--m),var(--m2) 60%,var(--m))}
.fd .bm{display:flex;align-items:center;gap:15px}
.fd .bm i{display:grid;place-items:center;width:46px;height:46px;flex:none;font-style:normal;border:1px solid var(--m);color:var(--m)}
.fd .bm small{display:block;margin-bottom:2px;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--m)}
.fd .bm b{display:block;font:500 23px/1.15 var(--serif);color:#fbf7ef;letter-spacing:.01em}
.fd .etag{margin:0;max-width:30em;padding-left:30px;border-left:1px solid rgba(255,255,255,.16);font-size:13.5px;line-height:1.5;color:rgba(243,239,230,.72)}
.fd .er{display:flex;align-items:center;gap:26px}
.fd .lane{text-align:right}
.fd .lane span{display:block;margin-bottom:3px;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--m)}
.fd .lane b{font-size:13.5px;font-weight:600;color:#f3efe6;letter-spacing:.01em}
.fd .lane small{display:block;margin-top:1px;font-size:12px;color:rgba(243,239,230,.65)}
.fd .walk{display:inline-flex;align-items:center;gap:12px;padding:11px 18px;border:1px solid var(--m);color:var(--m);font-size:13px;font-weight:600;letter-spacing:.06em;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.fd .walk:hover{background:var(--m);color:var(--d)}
.fd .cbody{padding:30px 34px 26px}
.fd .ctop{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:6px}
.fd .ctop h3{margin:0;font:600 28px/1.15 var(--serif);color:var(--ink)}
.fd .ctop h3 small{display:block;margin-bottom:6px;font:600 11px var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--pi)}
.fd .status{white-space:nowrap;color:var(--green);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.fd .status::before{content:"● "}
.fd .sum{margin:0 0 20px;max-width:58em;color:#3d4554;font-size:15px}
.fd .strip{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr) 30px minmax(0,1fr);align-items:stretch;margin-bottom:18px}
.fd .st{display:flex;flex-direction:column;padding:14px 16px 13px;border:1px solid var(--pl);background:var(--pt);text-decoration:none;color:var(--ink);transition:border-color .15s, transform .15s}
.fd .st:hover{border-color:var(--ma);transform:translateY(-2px)}
.fd .st .r{display:flex;align-items:center;gap:8px;margin-bottom:7px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--pi)}
.fd .st .r i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--d);color:var(--m);font:600 11px var(--sans);font-style:normal;letter-spacing:0}
.fd .st b{display:block;margin-bottom:4px;font:600 16.5px/1.25 var(--serif)}
.fd .st p{margin:0 0 12px;color:#4b5363;font-size:13px;line-height:1.45}
.fd .st .go{margin-top:auto;font-size:13px;font-weight:700;color:var(--pi)}
.fd .st .go::after{content:" →"}
.fd .st.cc{background:var(--navy2);border-color:var(--navy2);color:var(--ivory)}
.fd .st.cc .r{color:var(--gold)}
.fd .st.cc .r i{background:var(--gold);color:var(--navy)}
.fd .st.cc p{color:#b7c0cf}
.fd .st.cc .go{color:var(--gold-soft)}
.fd .st.cc:hover{border-color:var(--gold)}
.fd .arr{display:grid;place-items:center;color:var(--ma);font-size:17px}
.fd .see{display:flex;align-items:baseline;gap:14px;padding-top:14px;border-top:1px solid var(--rule);font-size:14px;color:#3d4554}
.fd .see b{flex:none;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mute-ink)}
.fd .mb{--d:#133a78;--p:#1f4e9c;--m:#b8893b;--m2:#e6d3ad;--ma:#9a7430;--pi:#1f4e9c;--pt:#eaf1fb;--pl:#c9d8ee}
.fd .mb .bm i{font:500 22px var(--serif)}
.fd .st2{--d:#5a1426;--p:#7b1e35;--m:#c9a052;--m2:#e2c78a;--ma:#a87a30;--pi:#7b1e35;--pt:#f7ecef;--pl:#ead2d9}
.fd .st2 .bm i{border-radius:12px;font:600 21px var(--sans);letter-spacing:.02em}
.fd .sw{--d:#0b4645;--p:#0f5f5c;--m:#c9a86a;--m2:#e6d3a8;--ma:#a8884a;--pi:#0f5f5c;--pt:#f4ede2;--pl:#e3d6bf}
.fd .sw .bm i{border-radius:50%;font:500 15px var(--serif);letter-spacing:.06em}
.fd .next{display:flex;align-items:center;flex-wrap:wrap;gap:10px 30px;margin-top:34px;color:var(--mute-ink);font-size:14px}
.fd .next .k{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-ink);font-weight:600}
.fd .next b{color:var(--ink);font:600 15px var(--serif)}
.fd .ccb{padding:92px 0}
.fd .ccb .w{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:72px;align-items:center}
.fd .ccb h2{margin:0 0 22px;font:400 46px/1.1 var(--serif)}
.fd .ccb p.l{margin:0 0 32px;max-width:28em;color:#c8cfdb;font-size:18px}
.fd .ccl{margin:30px 0 0;padding:0;list-style:none;color:var(--mute);font-size:14px;display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;max-width:36em}
.fd .ccl li{position:relative;padding-left:16px}
.fd .ccl li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:1px;background:var(--gold)}
.fd .pickw{position:relative}
.fd .pickw::before{content:"";position:absolute;inset:14px -14px -14px 14px;border:1px solid var(--gold)}
.fd .pick{position:relative;background:var(--navy2);border:1px solid var(--line)}
.fd .pick .ph{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line)}
.fd .pick .ph b{font:400 20px var(--serif)}
.fd .pick .ph span{color:var(--mute);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.fd .pick a{display:grid;grid-template-columns:14px minmax(0,1fr) auto 18px;gap:14px;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line);text-decoration:none}
.fd .pick a:last-of-type{border-bottom:0}
.fd .pick a:hover{background:#182844}
.fd .pick a i{width:13px;height:13px;border-radius:50%}
.fd .pick a b{display:block;font:400 18px var(--serif)}
.fd .pick a small{color:var(--mute);font-size:12.5px}
.fd .pick a em{font-style:normal;color:var(--gold-soft);font-size:12px;letter-spacing:.06em}
.fd .pick a u{text-decoration:none;color:var(--gold)}
.fd .pick .pf{padding:12px 24px;border-top:1px solid var(--line);color:var(--mute);font-size:12px}
.fd .foot{padding:34px 0 46px;border-top:1px solid var(--line);color:#7d889b;font-size:12px}
.fd .foot .w{display:grid;grid-template-columns:260px minmax(0,1fr);gap:48px}
.fd .foot .pub{color:var(--mute);font-size:12px;line-height:1.6}
.fd .foot .pub a{display:inline-block;margin-top:4px;color:var(--gold);font-size:13.5px;font-weight:600;letter-spacing:.04em;text-decoration:none}
.fd .foot .pub a:hover{text-decoration:underline}
.fd .foot ul{margin:0;padding:0;list-style:none;columns:2;column-gap:44px}
.fd .foot li{margin:0 0 7px;break-inside:avoid;line-height:1.55}

/* The tablet fold (768 to 1023 px). Written AFTER the laptop rules it folds: an
   earlier copy sat above them and lost to them by order, so the hero kept its
   540 px column and squeezed the text on any narrow screen. */
@media (max-width: 1023px) { .fd .hero, .fd .band .w, .fd .ways, .fd .strip, .fd .ccb .w, .fd .foot .w { grid-template-columns: 1fr; } .fd .stack { display: none; } .fd h1 { font-size: 40px; } .fd .w { padding: 0 16px; } .fd .arr { display: none; } .fd .eh { grid-template-columns: 1fr; } .fd .navr { gap: 18px; } .fd .cotabs button { gap: 10px; padding: 12px 14px; } }

/* ---- Command Center (FS 6), lifted from the approved designs
   docs/next/design/approved/cc-home.html (scoped .cch) and
   command-center.html (scoped .cce). Tokens come from the workspace block of
   sites/aecc/theme.css. Layout is the approved HTML's; change the approved
   pages first. ---- */
.cch, .cce { color: var(--ink); font-family: var(--sans); font-size: 14px; line-height: 1.5; }
.cch *, .cch *:before, .cch *:after, .cce *, .cce *:before, .cce *:after { box-sizing: border-box; }
.cch [hidden], .cce [hidden] { display: none !important; }
.cch .num, .cce .num { font-variant-numeric: tabular-nums; }
.cch button, .cce button { font: inherit; cursor: pointer; }
.cch h1, .cch h2, .cch h3, .cce h1, .cce h2, .cce h3 { margin: 0; }
.cch .w, .cce .w { max-width: 1240px; margin: 0 auto; padding: 0 28px; }
.cch .error-line, .cce .error-line { margin: 10px auto; max-width: 1184px; }
.cce .top .sw a.off { opacity: .45; pointer-events: none; }
.cce .runs tr[data-run] { cursor: pointer; }
.cce .paused { font-size: 12px; color: var(--muted); }
.cce .raw { background: #fbfaf7; border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; font: 11.5px/1.5 var(--mono); white-space: pre-wrap; max-height: 280px; overflow: auto; margin-top: 6px; }
.cch a{color:inherit}
.cch .top{background:var(--navy);color:var(--ivory)}
.cch .top .w{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}
.cch .logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.cch .mono{display:grid;place-items:center;width:46px;height:46px;border:1.5px solid var(--gold);color:var(--gold);font:600 15px var(--serif);letter-spacing:.06em}
.cch .logo b{display:block;font:600 17px var(--serif)}
.cch .logo small{display:block;color:var(--mute);font-size:11px;letter-spacing:.22em;text-transform:uppercase}
.cch .who{display:flex;align-items:center;gap:22px;font-size:13.5px}
.cch .who .d{color:var(--mute)}
.cch .who .p{display:flex;align-items:center;gap:10px}
.cch .who .p b{display:block;font-weight:600;font-size:13.5px}
.cch .who .p small{display:block;color:var(--mute);font-size:11.5px}
.cch .who .av{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--navy);font:600 12px var(--sans)}
.cch .who a.out{color:var(--gold-soft);text-decoration:none;font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:2px}
.cch .band{background:var(--navy2);color:var(--ivory);border-top:1px solid var(--line);border-bottom:3px solid var(--gold)}
.cch .band .w{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:end;padding:44px 48px 40px}
.cch .kick{display:flex;align-items:center;gap:14px;margin:0 0 16px;color:var(--gold);font-size:11.5px;letter-spacing:.28em;text-transform:uppercase}
.cch .kick::before{content:"";width:32px;height:1px;background:var(--gold)}
.cch h1{margin:0 0 14px;font:400 44px/1.08 var(--serif);letter-spacing:-.01em}
.cch h1 em{font-style:italic;color:var(--gold-soft)}
.cch .lede{max-width:40em;margin:0;color:#c8cfdb;font-size:16.5px;line-height:1.55}
.cch .three{margin:0;padding:0;list-style:none;border-left:1px solid var(--gold);padding-left:18px;color:#c8cfdb;font-size:13.5px;line-height:1.55}
.cch .three li{margin:0 0 8px}
.cch .three li b{color:var(--ivory);font-weight:600}
.cch .three li:last-child{margin:0}
.cch .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:40px 0 24px}
.cch .tile{position:relative;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--rule);border-top:4px solid var(--acc);box-shadow:0 1px 0 rgba(0,0,0,.02)}
.cch .tile.mb{--acc:var(--mb);--accd:var(--mb-d);--acct:var(--mb-t)}
.cch .tile.st{--acc:var(--st);--accd:var(--st-d);--acct:var(--st-t)}
.cch .tile.sw{--acc:var(--sw);--accd:var(--sw-d);--acct:var(--sw-t)}
.cch .th{display:flex;align-items:center;gap:14px;padding:22px 24px 16px;border-bottom:1px solid var(--rule-2)}
.cch .th .m{display:grid;place-items:center;width:44px;height:44px;background:var(--accd);color:#fff;font:600 15px var(--serif);letter-spacing:.04em}
.cch .th h2{margin:0;font:600 21px var(--serif);color:var(--ink)}
.cch .th small{display:block;color:var(--mute-ink);font-size:12.5px;margin-top:2px}
.cch .kp{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:6px 24px 4px}
.cch .k{padding:12px 0;border-bottom:1px solid var(--rule-2)}
.cch .k:nth-child(odd){padding-right:14px;border-right:1px solid var(--rule-2)}
.cch .k:nth-child(even){padding-left:14px}
.cch .k:nth-last-child(-n+2){border-bottom:0}
.cch .k .l{display:block;color:var(--mute-ink);font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.cch .k .v{display:block;font:500 26px/1.1 var(--serif);color:var(--ink);margin-top:4px}
.cch .k .s{display:block;color:var(--mute-ink);font-size:12.5px;margin-top:3px}
.cch .spend{padding:14px 24px 6px}
.cch .spend .l{display:flex;justify-content:space-between;color:var(--mute-ink);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.cch .spend .l b{color:var(--ink);font:600 13px var(--sans);letter-spacing:0;text-transform:none}
.cch .spend .l b span{color:var(--mute-ink);font-weight:400}
.cch .meter{height:6px;background:var(--rule-2);margin:8px 0 6px;position:relative}
.cch .meter i{position:absolute;left:0;top:0;bottom:0;background:var(--acc);min-width:3px}
.cch .spend .s{color:var(--mute-ink);font-size:12.5px}
.cch .story{margin:10px 24px 0;padding:14px 16px;background:var(--acct);border-left:3px solid var(--acc);font-size:13.5px;line-height:1.5}
.cch .story b{font-weight:600}
.cch .story .st{display:inline-block;margin-top:6px;padding:2px 9px;border:1px solid var(--green);color:var(--green);font-size:11.5px;letter-spacing:.04em}
.cch .seed{margin:10px 24px 0;color:var(--mute-ink);font-size:12.5px}
.cch .seed i{display:inline-block;padding:1px 7px;border:1px dashed var(--rule);font-style:normal;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute-ink);margin-right:6px}
.cch .open{display:flex;justify-content:space-between;align-items:center;margin:auto 24px 22px;padding:14px 18px;background:var(--accd);color:#fff;text-decoration:none;font-weight:600;font-size:14.5px}
.cch .seed{margin-bottom:18px}
.cch .open:hover{background:var(--acc)}
.cch .open span{font-size:18px}
.cch .row2{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;margin:0 0 24px}
.cch .all{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;background:var(--navy);color:var(--ivory);border-top:4px solid var(--gold)}
.cch .all h3{margin:0 0 4px;font:600 21px var(--serif)}
.cch .all p{margin:0;color:var(--mute);font-size:13.5px}
.cch .all .fig{display:flex;gap:34px;flex:none}
.cch .all .fig div{text-align:right}
.cch .all .fig b{display:block;font:500 24px/1.1 var(--serif);color:var(--ivory)}
.cch .all .fig small{color:var(--mute);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.cch .all a{display:inline-block;padding:12px 20px;border:1px solid var(--gold);color:var(--gold);text-decoration:none;font-weight:600;white-space:nowrap}
.cch .all a:hover{background:var(--gold);color:var(--navy)}
.cch .next{padding:24px 28px;background:var(--card);border:1px dashed var(--rule);color:var(--mute-ink)}
.cch .next h3{margin:0 0 6px;font:600 19px var(--serif);color:var(--ink)}
.cch .next p{margin:0;font-size:13.5px}
.cch .next i{display:inline-block;margin-top:10px;padding:2px 9px;border:1px solid var(--rule);font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.cch .strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;padding:22px 28px;margin:0 0 48px;background:var(--card);border:1px solid var(--rule)}
.cch .strip .l{display:block;color:var(--mute-ink);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.cch .strip .v{display:block;font:500 20px/1.2 var(--serif);margin-top:4px}
.cch .strip .v small{font:400 13px var(--sans);color:var(--mute-ink);margin-left:6px}
.cch .strip .s{display:block;color:var(--mute-ink);font-size:12.5px;margin-top:3px}
.cch .strip .meter i{background:var(--gold)}
.cch footer{border-top:1px solid var(--rule);padding:26px 0 40px;color:var(--mute-ink);font-size:12px;line-height:1.6}
.cch footer p{margin:0 0 6px}
.cch footer .pub{display:flex;justify-content:space-between;color:var(--ink);font-size:12.5px;margin-bottom:12px}
.cce a{color:inherit}
.cce .top{background:var(--navy);color:var(--ivory)}
.cce .top .w{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:20px}
.cce .logo{display:flex;align-items:center;gap:14px;text-decoration:none;flex:none}
.cce .mono{display:grid;place-items:center;width:42px;height:42px;border:1.5px solid var(--gold);color:var(--gold);font:600 14px var(--serif);letter-spacing:.06em}
.cce .logo b{display:block;font:600 16px var(--serif);white-space:nowrap}
.cce .logo small{display:block;color:var(--mute);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}
.cce .sw{display:flex;align-items:center;gap:6px;flex:none}
.cce .sw a{padding:8px 13px;border:1px solid var(--line);color:var(--mute);text-decoration:none;font-size:12.5px;letter-spacing:.02em;white-space:nowrap}
.cce .sw a:hover{color:var(--ivory)}
.cce .sw a.on{border-color:var(--gold);color:var(--gold-soft)}
.cce .who{display:flex;align-items:center;gap:18px;font-size:13px;flex:none;white-space:nowrap}
.cce .who .d{color:var(--mute)}
.cce .who .live{display:inline-flex;align-items:center;gap:7px;color:var(--gold-soft);font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.cce .who .live i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(29,107,79,.25)}
.cce .who .p{display:flex;align-items:center;gap:10px}
.cce .who .p b{display:block;font-weight:600;font-size:13px}
.cce .who .p small{display:block;color:var(--mute);font-size:11px}
.cce .who .av{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--gold);color:var(--navy);font:600 11.5px var(--sans)}
.cce .band{background:var(--navy2);color:var(--ivory);border-top:1px solid var(--line);border-bottom:3px solid var(--gold)}
.cce .band .w{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:48px;align-items:end;padding:34px 48px 30px}
.cce .kick{display:flex;align-items:center;gap:12px;margin:0 0 12px;color:var(--gold);font-size:11px;letter-spacing:.26em;text-transform:uppercase}
.cce .kick::before{content:"";width:28px;height:1px;background:var(--gold)}
.cce .kick .cm{display:grid;place-items:center;width:22px;height:22px;background:var(--acc);color:#fff;font:600 10px var(--serif);letter-spacing:.04em}
.cce h1{margin:0 0 10px;font:400 38px/1.1 var(--serif);letter-spacing:-.01em}
.cce h1 em{font-style:italic;color:var(--gold-soft)}
.cce .lede{max-width:40em;margin:0;color:#c8cfdb;font-size:15px;line-height:1.55}
.cce .meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin:14px 0 0;color:var(--mute);font-size:12.5px}
.cce .meta b{color:var(--ivory);font-weight:600}
.cce .three{margin:0;padding:0;list-style:none;border-left:1px solid var(--gold);padding-left:18px;color:#c8cfdb;font-size:13px;line-height:1.5}
.cce .three li{margin:0 0 7px}
.cce .three li b{color:var(--ivory);font-weight:600}
.cce .three li:last-child{margin:0}
.cce .kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin:28px 0 24px}
.cce .kpi{background:var(--card);border:1px solid var(--rule);padding:16px 18px 14px}
.cce .kpi .l{display:block;color:var(--mute-ink);font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.cce .kpi .v{display:block;font:500 30px/1.05 var(--serif);margin-top:8px}
.cce .kpi .v small{display:block;font:400 12.5px var(--sans);color:var(--mute-ink);margin:4px 0 0}
.cce .kpi .s{display:block;color:var(--mute-ink);font-size:12px;margin-top:6px;line-height:1.4}
.cce .kpi.attn{border-top:3px solid var(--acc)}
.cce .meter{height:6px;background:var(--rule-2);margin:10px 0 6px;position:relative}
.cce .meter i{position:absolute;left:0;top:0;bottom:0;background:var(--acc);min-width:3px}
.cce .cols{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start;margin-bottom:48px}
.cce .card{background:var(--card);border:1px solid var(--rule)}
.cce .card h2{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:0;padding:16px 20px 12px;font:600 18px var(--serif);border-bottom:1px solid var(--rule-2)}
.cce .card h2 small{color:var(--mute-ink);font:400 12.5px var(--sans)}
.cce .card + .card{margin-top:24px}
/* The right column's three tabs (FS 6.2, Srini 10 Nov 2026), from the round 25 mock
   command-center.html: one bar, counts under the labels, the active tab in the
   company's dark accent, sticky while the runs table scrolls. */
.cce[data-co="mithras"]{--acc:var(--mb);--accd:var(--mb-d);--acct:var(--mb-t)}
.cce[data-co="singa"]{--acc:var(--st);--accd:var(--st-d);--acct:var(--st-t)}
.cce[data-co="straitsworks"]{--acc:var(--sw);--accd:var(--sw-d);--acct:var(--sw-t)}
.cce[data-co="all"]{--acc:var(--gold-ink);--accd:var(--navy2);--acct:var(--gold-t)}
.cce .stabs{position:sticky;top:12px;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;margin-bottom:14px;background:var(--card);border:1px solid var(--rule);border-radius:12px}
.cce .stabs button{padding:10px 6px 9px;border:0;border-radius:9px;background:none;color:var(--mute-ink);font:600 13.5px var(--sans);cursor:pointer;line-height:1.2}
.cce .stabs button em{display:block;font-style:normal;font:500 11.5px var(--sans);margin-top:2px;opacity:.85}
.cce .stabs button.on{background:var(--accd);color:var(--card)}
.cce .stabs button:focus-visible{outline:2px solid var(--acc);outline-offset:1px}
.cce .tpan{margin-top:0}
.cce table{width:100%;border-collapse:collapse;font-size:12.5px;table-layout:fixed}
.cce th{text-align:left;padding:10px 12px;color:var(--mute-ink);font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--rule-2)}
.cce td{padding:11px 12px;border-bottom:1px solid var(--rule-2);vertical-align:top;line-height:1.45}
.cce tr:last-child td{border-bottom:0}
.cce tr.story td{background:var(--acct)}
.cce tr.story td:first-child{box-shadow:inset 3px 0 0 var(--acc)}
.cce tr.seed td{color:var(--mute-ink)}
.cce tr.grp{cursor:pointer}
.cce tr.grp td:first-child::before{content:"\25B8";display:inline-block;margin-right:5px;color:var(--mute-ink);transition:transform .15s}
.cce tr.grp.open td:first-child::before{transform:rotate(90deg)}
.cce tr.child td{background:var(--paper);color:var(--mute-ink);font-size:12px;padding-top:7px;padding-bottom:7px}
.cce tr.child td:nth-child(2){padding-left:28px}
.cce td .kind{display:block;font-weight:600}
.cce td .id{display:block;font:11px var(--mono);color:var(--mute-ink);margin-top:2px}
.cce .co{display:inline-block;padding:1px 7px;margin:0 6px 3px 0;font:600 10.5px/1.6 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:#fff;vertical-align:middle}
.cce .co.mb{background:var(--mb)}
.cce .co.st{background:var(--st)}
.cce .co.sw{background:var(--sw)}
.cce .pill{display:inline-block;padding:2px 8px;border:1px solid var(--rule);font-size:11.5px;white-space:nowrap}
.cce .pill.done{border-color:var(--green);color:var(--green)}
.cce .pill.wait{border-color:var(--gold-ink);color:var(--gold-ink)}
.cce .pill.stop{border-color:#a33a3a;color:#a33a3a}
.cce .pill.seed{border-style:dashed;color:var(--mute-ink)}
.cce .route{display:flex;align-items:center;gap:7px;white-space:nowrap}
.cce td .sub{display:block;color:var(--mute-ink);font-size:11.5px;margin-top:2px;padding-left:16px}
.cce .route i{width:9px;height:9px;border-radius:50%;flex:none}
.cce .route.live i{background:var(--gold)}
.cce .route.live2 i{background:#5b8dd6}
.cce .route.fallback i{border:2px dashed var(--gold);width:7px;height:7px}
.cce .route.rules i{background:var(--mute)}
.cce .route.free i{border:2px solid var(--green);width:7px;height:7px}
.cce .note{color:var(--mute-ink)}
.cce .tfoot{padding:10px 20px;color:var(--mute-ink);font-size:12px;border-top:1px solid var(--rule-2)}
.cce .drill .facts{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-bottom:1px solid var(--rule-2)}
.cce .drill .facts div{padding:14px 18px;border-right:1px solid var(--rule-2)}
.cce .drill .facts div:last-child{border-right:0}
.cce .drill .facts span{display:block;color:var(--mute-ink);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.cce .drill .facts b{display:block;font-weight:600;font-size:13.5px;margin-top:4px;line-height:1.35}
.cce .drill .sum{margin:0;padding:14px 20px;background:var(--acct);border-bottom:1px solid var(--rule-2);font-size:13.5px;line-height:1.55}
.cce .steps{margin:0;padding:6px 0;list-style:none}
.cce .step{display:grid;grid-template-columns:62px 92px minmax(0,1fr) 300px;gap:14px;padding:10px 20px;border-bottom:1px solid var(--rule-2);align-items:start}
.cce .step:last-child{border-bottom:0}
.cce .step time{color:var(--mute-ink);font:12px var(--mono);padding-top:3px}
.cce .badge{display:inline-flex;align-items:center;justify-content:center;height:22px;padding:0 9px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--rule);color:var(--mute-ink);white-space:nowrap}
.cce .badge.rule{border-color:var(--rule);color:var(--mute-ink)}
.cce .badge.ai{border-color:var(--gold-ink);color:var(--gold-ink);background:var(--gold-t)}
.cce .badge.guard{border-color:var(--navy2);color:var(--navy2)}
.cce .badge.person{border-color:var(--green);background:var(--green);color:#fff}
.cce .step .nm{font-weight:600;font-size:13.5px}
.cce .step .d{color:var(--mute-ink);font-size:13px;margin-top:2px;line-height:1.5}
.cce .step.person{background:var(--green-t)}
.cce .step.person .nm{color:var(--green)}
.cce .step.person .d{color:var(--ink)}
.cce .call{font-size:12px;color:var(--mute-ink);line-height:1.5}
.cce .call b{display:block;color:var(--ink);font-weight:600;font-size:12.5px}
.cce .call .cid{font:11px var(--mono);color:var(--mute-ink)}
.cce .call .fb{display:block;color:var(--gold-ink);margin-top:2px}
.cce details.ans{margin-top:6px}
.cce details.ans summary{cursor:pointer;color:var(--acc);font-weight:600;font-size:12px;list-style:none}
.cce details.ans summary::before{content:"\25B8";display:inline-block;margin-right:6px;transition:transform .15s}
.cce details.ans[open] summary::before{transform:rotate(90deg)}
.cce details.ans pre{margin:8px 0 0;padding:10px 12px;background:var(--paper);border:1px solid var(--rule-2);font:11.5px/1.5 var(--mono);color:var(--ink);white-space:pre-wrap;word-break:break-word}
.cce .step .dur{display:block;color:var(--mute-ink);font-size:12px}
.cce .after{border-top:1px solid var(--rule-2)}
.cce .after > div{padding:16px 20px}
.cce .after > div + div{border-top:1px solid var(--rule-2)}
.cce .after h3{margin:0 0 10px;font:600 15px var(--serif)}
.cce .why{margin:0;padding:0;list-style:none;font-size:13px;line-height:1.55;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cce .why li{margin:0;padding-left:14px;position:relative}
.cce .why li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;background:var(--gold)}
.cce .why b{font-weight:600}
.cce .audit{margin:0;padding:0;list-style:none;font:11.5px/1.65 var(--mono);color:var(--mute-ink);columns:2;column-gap:32px}
.cce .audit li{display:block;padding:3px 0;border-bottom:1px dashed var(--rule-2);break-inside:avoid}
.cce .audit li > span:first-child{display:inline-block;width:62px}
.cce .audit li b{display:inline-block;min-width:140px;margin-right:8px}
.cce .audit li:last-child{border-bottom:0}
.cce .audit li b{color:var(--ink);font-weight:500}
.cce .audit li .who{color:var(--green)}
.cce .dec{margin:0;padding:0;list-style:none}
.cce .dec li{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:12px 20px;border-bottom:1px solid var(--rule-2)}
.cce .dec li:last-child{border-bottom:0}
.cce .dec time{color:var(--mute-ink);font:12px var(--mono);padding-top:3px}
.cce .dec b{display:block;color:var(--green);font-weight:600;font-size:13.5px}
.cce .dec .what{font-size:13px;margin-top:2px}
.cce .dec .r{color:var(--mute-ink);font-size:12.5px;margin-top:3px;line-height:1.45}
.cce .gr{margin:0;padding:0;list-style:none}
.cce .gr li{display:grid;grid-template-columns:1fr 74px;gap:10px;padding:11px 20px;border-bottom:1px solid var(--rule-2)}
.cce .gr li:last-child{border-bottom:0}
.cce .gr b{display:block;font-weight:600;font-size:13px}
.cce .gr .ds{color:var(--mute-ink);font-size:12.5px;line-height:1.45;margin-top:2px}
.cce .gr .act{display:inline-block;margin-top:5px;padding:1px 7px;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--rule);color:var(--mute-ink)}
.cce .gr .act.applied{border-color:var(--green);color:var(--green)}
.cce .gr .act.routed{border-color:var(--gold-ink);color:var(--gold-ink)}
.cce .gr .act.stopped{border-color:#a33a3a;color:#a33a3a}
.cce .gr .n{text-align:right;font:500 24px/1 var(--serif)}
.cce .gr .n small{display:block;color:var(--mute-ink);font:11px var(--sans);margin-top:3px;white-space:nowrap}
.cce .quiet{padding:12px 20px 16px;border-top:1px solid var(--rule-2);color:var(--mute-ink);font-size:12px}
.cce .quiet b{display:block;color:var(--ink);font-size:12.5px;margin-bottom:6px}
.cce .quiet span{display:inline-block;padding:2px 8px;margin:0 6px 6px 0;border:1px solid var(--rule-2);background:var(--paper)}
.cce .lanes{padding:6px 20px 8px}
.cce .lane{padding:12px 0;border-bottom:1px solid var(--rule-2)}
.cce .lane:last-child{border-bottom:0}
.cce .lane .h{display:flex;justify-content:space-between;align-items:baseline}
.cce .lane .h b{font-weight:600;font-size:13.5px}
.cce .lane .h span{font:500 15px var(--serif)}
.cce .hops{margin:8px 0 0;padding:0;list-style:none;font-size:12.5px}
.cce .hops li{display:flex;justify-content:space-between;gap:10px;padding:4px 0;color:var(--mute-ink)}
.cce .hops li b{color:var(--ink);font-weight:500}
.cce .hops li i{font-style:normal;color:var(--mute-ink);font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin-right:6px}
.cce .lane .ln{color:var(--mute-ink);font-size:12px;margin-top:6px;line-height:1.45}
.cce .caps{padding:14px 20px 16px;border-top:1px solid var(--rule-2);font-size:12.5px}
.cce .caps .c{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:baseline;margin-bottom:6px}
.cce .caps .c b{font-weight:500}
.cce .caps .c span{color:var(--mute-ink)}
.cce .caps .meter{margin:4px 0 10px}
.cce .caps p{margin:6px 0 0;color:var(--mute-ink);line-height:1.45}
.cce footer{border-top:1px solid var(--rule);padding:24px 0 40px;color:var(--mute-ink);font-size:12px;line-height:1.6}
.cce footer p{margin:0 0 6px}
.cce footer .pub{display:flex;justify-content:space-between;color:var(--ink);font-size:12.5px;margin-bottom:12px}

/* The Switchboard (#/switchboard), Srini's menu between the three companies and
   the three views (10 Nov 2026). It wears the front door's header and footer;
   the grid sits on the cream section. Tokens from sites/aecc/theme.css; the
   company accents are the packs' own, as on the front door's cards. */
.fd .navr a.on { color: var(--gold); }
.fd .sb-body { background: var(--ivory); color: var(--ink); padding: 44px 0 60px; }
.fd .sb-title { font: 500 30px/1.15 var(--font-display); color: var(--deep); margin: 0 0 24px; display: flex; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.fd .sb-title small { font: 400 15px/1.4 var(--sans); color: var(--muted); }
.fd .sb-scroll { overflow: auto; }
.fd .sb-grid { width: 100%; border-collapse: separate; border-spacing: 0 10px; min-width: 760px; }
.fd .sb-grid thead th { text-align: left; padding: 0 14px 6px; font-weight: 400; vertical-align: bottom; }
.fd .sb-grid thead th .n { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; border: 1px solid var(--gold); color: var(--gold-ink); font-size: 12px; margin-right: 8px; }
.fd .sb-grid thead th b { font: 500 15px var(--font-display); color: var(--deep); }
.fd .sb-grid thead th small { display: block; color: var(--muted); font-size: 12px; margin-top: 2px; }
.fd .sb-grid tbody th { text-align: left; padding: 16px 14px; background: var(--paper); border: 1px solid var(--mute); border-right: 0; border-radius: var(--radius) 0 0 var(--radius); vertical-align: middle; width: 26%; }
.fd .sb-grid tbody th .dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--p, var(--gold)); margin-right: 10px; vertical-align: middle; }
.fd .sb-grid tbody th b { font: 500 17px var(--font-display); color: var(--deep); }
.fd .sb-grid tbody th small { display: block; color: var(--muted); font-size: 13px; margin: 2px 0 0 20px; }
.fd .sb-grid tbody th em { display: block; font-style: normal; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-ink); margin: 6px 0 0 20px; }
.fd .sb-grid tbody td { padding: 8px; background: var(--paper); border-top: 1px solid var(--mute); border-bottom: 1px solid var(--mute); vertical-align: middle; }
.fd .sb-grid tbody td:last-child { border-right: 1px solid var(--mute); border-radius: 0 var(--radius) var(--radius) 0; }
.fd .sb-grid .door { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 56px; padding: 10px 14px; border: 1px solid var(--mute); border-radius: var(--radius); text-decoration: none; background: var(--card); color: var(--ink); font-size: 14px; }
.fd .sb-grid .door u { text-decoration: none; color: var(--gold-ink); font-size: 16px; }
.fd .sb-grid .door:hover { border-color: var(--p, var(--gold)); }
.fd .sb-grid .door.cc { background: var(--navy); color: var(--ivory); border-color: var(--navy); }
.fd .sb-grid .door.cc u { color: var(--gold); }
.fd .sb-span { display: flex; gap: 8px; }
.fd .sb-span .door { flex: 1; }
.fd .sb-grid .mithras { --p: var(--mb); }
.fd .sb-grid .singa { --p: var(--st); }
.fd .sb-grid .straitsworks { --p: var(--sw); }
.fd .sb-grid .all { --p: var(--gold); }
@media (max-width: 1023px) { .fd .sb-title { font-size: 26px; } .fd .sb-body { padding: 28px 0 40px; } }

/* ---- The cases as company tabs (Srini, 10 Nov 2026, on the laptop: "the three
   cases stacked on top of one another still feels off"; option A of the two
   renders he was shown, with the tabs made prominent on his second note). One
   card shows at a time; each tab wears its company's colour, monogram, name and
   case, so the three are identifiable before any tap. ---- */
.fd .cotabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 26px; }
.fd .cotabs button { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border: 1px solid var(--rule); border-radius: 12px; background: var(--card); color: var(--ink); text-align: left; cursor: pointer; transition: border-color .15s, background .15s; }
.fd .cotabs button .dot { display: none; }
.fd .cotabs button .mono { display: grid; place-items: center; flex: none; width: 42px; height: 42px; border: 1.5px solid var(--acc); color: var(--acc); font: 600 15px var(--serif); font-style: normal; letter-spacing: .04em; }
.fd .cotabs button b.full { display: block; font: 600 18px/1.15 var(--serif); color: var(--acc); }
.fd .cotabs button b.short { display: none; }
.fd .cotabs button small { display: block; margin-top: 3px; font: 400 13px var(--sans); color: var(--mute-ink); }
.fd .cotabs button:hover, .fd .cotabs button:focus-visible { border-color: var(--acc); }
.fd .cotabs button.on { background: var(--accd); border-color: var(--accd); color: var(--card); }
.fd .cotabs button.on .mono { border-color: var(--accm); color: var(--accm); }
.fd .cotabs button.on b.full { color: var(--card); }
.fd .cotabs button.on small { color: var(--card); opacity: .8; }
.fd .cotabs button[data-co="mithras"] { --acc: var(--mb); --accd: var(--mb-d); --accm: #b8893b; }
.fd .cotabs button[data-co="singa"] { --acc: var(--st); --accd: var(--st-d); --accm: #c9a052; }
.fd .cotabs button[data-co="straitsworks"] { --acc: var(--sw); --accd: var(--sw-d); --accm: #c9a86a; }
.fd .ent { display: none; margin-bottom: 0; }
.fd[data-co="mithras"] .ent[data-ent="mithras"], .fd[data-co="singa"] .ent[data-ent="singa"], .fd[data-co="straitsworks"] .ent[data-ent="straitsworks"] { display: block; }

/* ---- Phone layouts (round 26, BUILD-PLAN B5). The parts below exist in the
   markup on every width and show on the phone only; the laptop hides them here.
   The breakpoint is PHONE_MAX_WIDTH in core/phone.js; tools/test_phone_layout.js
   fails a media query that drifts from it. ---- */
.fd .logo b .short, .fd .sw-dots, .fd .ptabs, .fd .steptabs, .fd .sb-grid .door small, .fd .sb-grid .door .s,
.signin-top, .signin-from, .signin-links, .signin-trial { display: none; }
.cch .cotabs, .cce .top .back, .cce .cptabs, .cce .back-runs { display: none; }

@media (max-width: 767px) {
  /* The front door and the Switchboard: header (aecc-landing-phone.html .top) */
  .fd .nav { position: sticky; top: 0; z-index: 30; background: var(--navy); }
  .fd .nav .w { min-height: 56px; padding: 0 14px; gap: 8px; }
  .fd .logo { gap: 9px; min-width: 0; }
  .fd .mono { width: 32px; height: 32px; font-size: 11.5px; }
  .fd .logo b { font-size: 14.5px; line-height: 1.1; white-space: nowrap; }
  .fd .logo b .full { display: none; }
  .fd .logo b .short { display: inline; }
  .fd .ed { margin-left: 6px; padding: 1px 5px; font-size: 8px; letter-spacing: .16em; vertical-align: 2px; }
  .fd .logo small { font-size: 9px; letter-spacing: .2em; white-space: nowrap; }
  .fd .navr { gap: 6px; flex: none; }
  .fd .navr a.lnk, .fd .navr .who { display: none; }
  .fd .navr a.swb { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid var(--gold); border-radius: 4px; color: var(--gold-soft); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; opacity: 1; text-decoration: none; }
  .fd .navr a.swb.on { background: var(--gold); color: var(--navy); }
  .fd .sw-dots { display: block; width: 4px; height: 4px; margin: 0 5px 5px 0; background: currentColor; box-shadow: 5px 0 0 currentColor, 0 5px 0 currentColor, 5px 5px 0 currentColor; }
  .fd .navr a.signin, .fd .navr button.signin { padding: 7px 10px; border: 1px solid var(--line); border-radius: 4px; color: var(--ivory); font-size: 11.5px; font-weight: 600; letter-spacing: 0; }
  .fd .error-line { margin: 8px 14px; }

  /* hero */
  .fd .hero { display: block; padding: 22px 16px 18px; }
  .fd .kick { gap: 10px; margin: 0 0 12px; font-size: 10.5px; letter-spacing: .24em; }
  .fd .kick::before { width: 22px; }
  .fd h1 { margin: 0 0 12px; font-size: 34px; line-height: 1.08; }
  .fd .lede { margin: 0 0 16px; font-size: 14px; line-height: 1.5; }
  .fd .cta { display: block; }
  .fd .cta .b1 { display: block; padding: 13px; border-radius: 4px; text-align: center; font-size: 14.5px; }
  .fd .cta .b2 { display: block; margin-top: 12px; padding: 0; border: 0; text-align: center; color: var(--gold-soft); font-size: 13.5px; text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 4px; }
  .fd .hnote { margin: 14px 0 0; text-align: center; font-size: 11.5px; }

  /* the proof band keeps its three columns */
  .fd .band .w { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; }
  .fd .proof { padding: 12px 10px; border-left: 1px solid var(--line); }
  .fd .proof:first-child { padding-left: 10px; border-left: 0; }
  .fd .proof b { margin-bottom: 2px; font-size: 14px; }
  .fd .proof span { display: block; font-size: 10.5px; line-height: 1.35; }

  /* the three sections as tabs (rule 2) */
  .fd .ptabs { position: sticky; top: 56px; z-index: 28; display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 6px; background: var(--navy); border-bottom: 1px solid var(--line); }
  .fd .ptabs button { padding: 12px 2px 11px; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; background: none; color: var(--mute); font-size: 12.5px; font-weight: 600; }
  .fd .ptabs button.on { color: var(--gold-soft); border-bottom-color: var(--gold); }
  .fd [data-panel] { display: none; }
  .fd[data-tab="cases"] [data-panel="cases"], .fd[data-tab="how"] [data-panel="how"], .fd[data-tab="cc"] [data-panel="cc"] { display: block; }

  /* the cases: one company at a time behind three company tabs */
  .fd .ivory { padding: 14px 12px 4px; }
  .fd .ivory .w { padding: 0; }
  .fd .sh { display: block; margin-bottom: 12px; }
  .fd .k2 { margin: 0 0 4px; font-size: 10.5px; letter-spacing: .24em; }
  .fd .sh h2 { margin-bottom: 4px; font-size: 24px; line-height: 1.15; }
  .fd .sh p { font-size: 12.5px; }
  .fd .cotabs { grid-template-columns: repeat(3, 1fr); gap: 4px; margin: 0 0 12px; padding: 4px; background: var(--card); border: 1px solid var(--rule); border-radius: 12px; }
  .fd .cotabs button { justify-content: center; gap: 6px; padding: 9px 2px; border: 0; border-radius: 9px; background: none; color: var(--mute-ink); font-size: 12.5px; font-weight: 600; white-space: nowrap; }
  .fd .cotabs button .dot { display: block; width: 8px; height: 8px; border-radius: 50%; background: var(--acc); }
  .fd .cotabs button .mono, .fd .cotabs button b.full, .fd .cotabs button small { display: none; }
  .fd .cotabs button b.short { display: inline; font: inherit; color: inherit; }
  .fd .cotabs button.on { background: var(--acc); border-color: var(--acc); color: var(--card); }
  .fd .cotabs button.on .dot { background: var(--card); }
  .fd .ent { margin-bottom: 12px; border-radius: 12px; overflow: hidden; box-shadow: none; }
  .fd .eh { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-bottom: 3px solid var(--m); }
  .fd .eh::after { display: none; }
  .fd .bm { gap: 10px; min-width: 0; }
  .fd .bm i, .fd .mb .bm i, .fd .st2 .bm i, .fd .sw .bm i { width: 36px; height: 36px; font-size: 15px; }
  .fd .bm small { margin-bottom: 0; font-size: 9.5px; letter-spacing: .22em; }
  .fd .bm b { font-size: 18px; line-height: 1.1; }
  .fd .etag, .fd .walk, .fd .lane span, .fd .lane small { display: none; }
  .fd .er { margin-left: auto; gap: 0; }
  .fd .lane b { display: block; max-width: 12em; color: var(--m); font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; text-align: right; }
  .fd .cbody { padding: 12px 14px; }
  .fd .ctop { gap: 10px; margin-bottom: 0; }
  .fd .ctop h3 { font-size: 19px; }
  .fd .ctop h3 small { margin-bottom: 2px; font-size: 9.5px; letter-spacing: .2em; }
  .fd .status { font-size: 10px; }
  .fd .sum { margin: 6px 0 10px; font-size: 13px; }
  /* the three steps as tabs inside the card (Srini, 10 Nov 2026); one card shows at a time */
  .fd .steptabs { display: grid; grid-template-columns: auto auto auto; gap: 4px; margin: 0 0 8px; padding: 3px; background: var(--card); border: 1px solid var(--pl); border-radius: 10px; }
  .fd .steptabs button { display: flex; align-items: center; justify-content: center; gap: 5px; min-width: 0; padding: 7px 4px; border: 0; border-radius: 8px; background: none; color: var(--mute-ink); font-size: 11px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .fd .steptabs button i { display: grid; place-items: center; flex: none; width: 16px; height: 16px; border-radius: 50%; border: 1px solid currentColor; font-size: 9px; font-style: normal; }
  .fd .steptabs button.on { background: var(--d); color: var(--m); }
  .fd .steptabs button.on i { background: var(--m); border-color: var(--m); color: var(--d); }
  .fd .steptabs button[data-step="2"].on { background: var(--navy2); color: var(--gold); }
  .fd .steptabs button[data-step="2"].on i { background: var(--gold); border-color: var(--gold); color: var(--navy); }
  .fd .strip { display: grid; grid-template-columns: 1fr; gap: 6px; margin-bottom: 0; }
  .fd .strip .st { display: none; }
  .fd .ent[data-step="0"] .st[data-step="0"], .fd .ent[data-step="1"] .st[data-step="1"], .fd .ent[data-step="2"] .st[data-step="2"] { display: grid; }
  .fd .arr { display: none; }
  .fd .st { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 2px 10px; align-items: center; padding: 9px 11px; border-radius: 9px; }
  .fd .st:hover { transform: none; }
  .fd .st .r { grid-row: 1 / 4; display: grid; place-items: center; width: 22px; height: 22px; margin: 0; border-radius: 50%; background: var(--d); color: var(--m); }
  .fd .st .r i { width: auto; height: auto; background: none; color: inherit; font-size: 11px; }
  .fd .st .r span { display: none; }
  .fd .st b { margin: 0; font-size: 13.5px; }
  .fd .st p { margin: 0; font-size: 11.5px; line-height: 1.35; }
  .fd .st .go { margin: 2px 0 0; font-size: 12px; }
  .fd .st.cc .r { background: var(--gold); color: var(--navy); }
  .fd .see { display: block; margin-top: 10px; padding-top: 9px; font-size: 12px; }
  .fd .see b { display: block; margin-bottom: 2px; font-size: 9.5px; }
  .fd .next { gap: 4px 14px; margin-top: 0; padding: 4px 2px 10px; font-size: 12px; }
  .fd .next .k { width: 100%; font-size: 9.5px; letter-spacing: .22em; }
  .fd .next b { font-size: 13px; }

  /* how to read a case */
  .fd .three { padding: 16px 16px 6px; }
  .fd .three .w { padding: 0; }
  .fd .ways { display: block; }
  .fd .ways::before { display: none; }
  .fd .ways li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 4px 12px; padding: 14px 0; border-top: 1px solid var(--line); }
  .fd .ways .n { grid-row: 1 / 4; width: 40px; height: 40px; margin: 0; font-size: 17px; }
  .fd .ways h3 { margin: 0; font-size: 18px; line-height: 1.2; }
  .fd .ways p { margin: 0; font-size: 13px; }
  .fd .ways .where { margin-top: 4px; padding-top: 0; border-top: 0; gap: 8px; font-size: 10px; }
  .fd .dots i { width: 8px; height: 8px; }

  /* the Command Center section */
  .fd .ccb { padding: 16px 16px 10px; }
  .fd .ccb .w { display: block; padding: 0; }
  .fd .ccb h2 { margin: 0 0 8px; font-size: 24px; line-height: 1.15; }
  .fd .ccb p.l { margin: 0 0 12px; font-size: 13.5px; }
  .fd .ccb .b1 { display: block; padding: 13px; border-radius: 4px; text-align: center; font-size: 14.5px; }
  .fd .ccl { max-width: none; margin: 14px 0 0; gap: 6px 14px; font-size: 12.5px; }
  .fd .ccl li { padding-left: 12px; }
  .fd .ccl li::before { top: 9px; width: 6px; }
  .fd .pickw { margin-top: 14px; }
  .fd .pickw::before { display: none; }
  .fd .pick { border-radius: 10px; overflow: hidden; }
  .fd .pick .ph { padding: 12px 14px; }
  .fd .pick .ph b { font-size: 16px; }
  .fd .pick .ph span { font-size: 10px; letter-spacing: .16em; }
  .fd .pick a { grid-template-columns: 12px minmax(0, 1fr) auto 14px; gap: 10px; padding: 12px 14px; }
  .fd .pick a i { width: 11px; height: 11px; }
  .fd .pick a b { font-size: 15px; }
  .fd .pick a small { font-size: 11.5px; }
  .fd .pick a em { font-size: 10.5px; }
  .fd .pick .pf { padding: 9px 14px; font-size: 11px; }

  /* footer */
  .fd .foot { padding: 14px 16px 18px; font-size: 10.5px; line-height: 1.5; }
  .fd .foot .w { display: block; padding: 0; }
  .fd .foot .pub { margin-bottom: 8px; }
  .fd .foot ul { columns: 1; }
  .fd .foot li { margin: 0 0 5px; }

  /* The Switchboard (demo-switchboard-phone.html): the grid becomes one card per
     company, three doors in a row, the view legend above. */
  .fd .sb-body { padding: 12px 0 16px; }
  .fd .sb-body .w { padding: 0 12px; }
  .fd .sb-title { display: block; margin: 0 0 8px; font-size: 22px; line-height: 1.15; }
  .fd .sb-title small { display: block; margin-top: 3px; font-size: 13px; }
  .fd .sb-scroll { overflow: visible; }
  .fd .sb-grid { display: block; min-width: 0; border-spacing: 0; }
  .fd .sb-grid thead { display: block; }
  .fd .sb-grid thead tr { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; padding: 0 0 4px; }
  .fd .sb-grid thead th { display: grid; grid-template-columns: 15px minmax(0, 1fr); gap: 0 5px; align-items: center; padding: 0; color: var(--mute-ink); font-size: 10.5px; line-height: 1.25; }
  .fd .sb-grid thead th:first-child { display: none; }
  .fd .sb-grid thead th .n { grid-row: 1 / 3; width: 15px; height: 15px; margin: 0; font-size: 9px; }
  .fd .sb-grid thead th b { font: 600 10.5px var(--sans); color: var(--ink); }
  .fd .sb-grid thead th small { margin: 0; font-size: 10.5px; }
  .fd .sb-grid tbody { display: block; }
  .fd .sb-grid tbody tr { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; margin: 7px 0 0; padding: 9px 10px; background: var(--card); border: 1px solid var(--rule); border-radius: 12px; }
  .fd .sb-grid tbody th { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; width: auto; padding: 0 2px 7px; background: none; border: 0; border-radius: 0; }
  .fd .sb-grid tbody th .dot { width: 9px; height: 9px; margin: 0; align-self: center; }
  .fd .sb-grid tbody th b { font-size: 17px; white-space: nowrap; }
  .fd .sb-grid tbody th small { flex: 1 1 auto; min-width: 0; margin: 0; font-size: 12px; font-weight: 600; }
  .fd .sb-grid tbody th em { margin: 0 0 0 auto; font-size: 9.5px; letter-spacing: .1em; white-space: nowrap; }
  .fd .sb-grid tbody td { display: block; padding: 0; background: none; border: 0; border-radius: 0; }
  .fd .sb-grid tbody td[colspan] { grid-column: 1 / -1; }
  .fd .sb-span { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
  .fd .sb-grid .door { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: auto 1fr; gap: 4px; align-items: end; min-height: 54px; padding: 7px 8px 6px; border-radius: 9px; font-size: 12px; font-weight: 600; line-height: 1.2; }
  .fd .sb-grid .door small { grid-column: 1 / -1; display: flex; align-items: center; align-self: start; gap: 4px; color: var(--mute-ink); font-size: 9.5px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
  .fd .sb-grid .door small i { display: grid; place-items: center; width: 13px; height: 13px; border: 1px solid currentColor; border-radius: 50%; font: 600 8px var(--sans); font-style: normal; }
  .fd .sb-grid .door .l { display: none; }
  .fd .sb-grid .door .s { display: block; }
  .fd .sb-grid .door u { font-size: 14px; color: var(--p, var(--gold-ink)); }
  .fd .sb-grid .door.cc small { color: var(--gold-soft); }
  .fd .sb-grid .door.cc u { color: var(--gold); }

  /* Sign-in (signin-phone.html): the desk's brand bar, one card with the desk's
     accent on top, the demo account under the button, links, the trial note. */
  .signin-page { padding: 0 0 8px; }
  [data-site="aecc"] .signin-page { min-height: 100vh; background: var(--ivory); }
  .signin-main { padding: 0 16px; }
  .signin-top { display: flex; align-items: center; justify-content: space-between; height: 52px; padding: 0 14px; background: var(--deep); color: var(--paper); }
  [data-site="aecc"] .signin-top { background: var(--navy2); color: var(--ivory); }
  .signin-top .brand { display: flex; align-items: center; gap: 9px; min-width: 0; text-decoration: none; }
  .signin-top .m { display: grid; place-items: center; width: 30px; height: 30px; flex: none; border: 1.5px solid currentColor; border-radius: 50%; font: 600 12px var(--font-display); opacity: .9; }
  [data-site="aecc"] .signin-top .m { border-radius: 0; color: var(--gold); opacity: 1; }
  .signin-top b { display: block; font: 600 15px/1.1 var(--font-display); white-space: nowrap; }
  .signin-top small { display: block; font-size: 9.5px; letter-spacing: .16em; text-transform: uppercase; opacity: .75; white-space: nowrap; }
  .signin-top .back { font-size: 12.5px; opacity: .85; text-decoration: none; }
  .signin-card { display: flex; flex-direction: column; max-width: none; margin: 22px 0 0; padding: 18px 16px 16px; border: 1px solid var(--rule, var(--line)); border-top: 4px solid var(--brand); border-radius: 14px; background: var(--paper); }
  .signin-card h1 { margin-bottom: 4px; font-size: 21px; line-height: 1.2; color: var(--ink); }
  .signin-from { display: block; margin: 0 0 16px; color: var(--muted); font-size: 12.5px; }
  .signin-form .field { gap: 5px; margin-bottom: 12px; }
  .signin-form .field label { color: var(--muted); font-size: 12px; }
  .signin-form .field input { height: 46px; padding: 0 12px; border-width: 1.5px; border-radius: 10px; font-size: 15px; }
  .signin-form .btn { height: 48px; margin-top: 2px; border: 0; border-radius: 12px; font-size: 15px; font-weight: 700; }
  [data-site="aecc"] .signin-form .btn { background: var(--navy2); color: var(--gold-soft); }
  .signin-form .error-line { border-radius: 10px; }
  .signin-form .signin-back { display: none; }
  .signin-note { order: 1; margin: 14px 0 0; padding: 11px 12px; border: 1px solid var(--rule, var(--line)); border-radius: 10px; background: var(--tint); color: var(--ink); font-size: 12.5px; line-height: 1.45; }
  .signin-links { display: flex; justify-content: space-between; gap: 12px; margin: 14px 2px 0; font-size: 12.5px; }
  .signin-links a { color: var(--brand); font-weight: 600; text-decoration: none; }
  [data-site="aecc"] .signin-links a { color: var(--gold-ink); }
  .signin-trial { display: block; margin: 14px 0 0; padding: 12px 14px; border: 1px dashed var(--rule, var(--line)); border-radius: 12px; color: var(--muted); font-size: 12px; line-height: 1.45; }
  .signin-trial b { color: var(--ink); }
  .signin-page .honesty { margin-top: 16px; padding: 0 0 8px; border-top: 0; font-size: 10.5px; line-height: 1.45; }
}

/* ---- The Command Center on the phone (round 26, cc-home-phone.html and
   command-center-phone.html; Srini: "a Tab like beautifully laid arrangement,
   instead of scrolling down too long"). The chooser: one company at a time
   behind four tabs, then the caps. A company's page: the header with the company
   chips scrolling sideways, the band, then five tabs (Overview, Decisions, Runs,
   Guardrails, Cost), one panel at a time; tables fold to rows; a run opens on its
   own with a way back to the runs. The breakpoint is PHONE_MAX_WIDTH in
   core/phone.js. ---- */
@media (max-width: 767px) {
  .cch, .cce { font-size: 14px; }
  .cch .w, .cce .w { padding: 0 12px; }
  /* the chooser */
  .cch .top .w { min-height: 52px; gap: 10px; }
  .cch .mono, .cce .mono { width: 34px; height: 34px; font-size: 12.5px; }
  .cch .logo, .cce .logo { gap: 10px; min-width: 0; }
  .cch .logo b, .cce .logo b { font-size: 15px; white-space: nowrap; }
  .cch .logo small, .cce .logo small { font-size: 9px; letter-spacing: .16em; }
  .cch .who { gap: 10px; }
  .cch .who .d, .cch .who .p > span:last-child { display: none; }
  .cch .who .av, .cce .who .av { width: 30px; height: 30px; font-size: 11px; }
  .cch .band .w { display: block; padding: 18px 12px 16px; }
  .cch .kick, .cch .band .three { display: none; }
  .cch h1 { margin: 0 0 8px; font-size: 27px; }
  .cch .lede { font-size: 14px; }
  .cch .cotabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin: 14px 0 12px; padding: 4px; background: var(--card); border: 1px solid var(--rule); border-radius: 14px; }
  .cch .cotabs button { padding: 9px 4px; background: none; border: 0; border-radius: 10px; color: var(--mute-ink); font-size: 12.5px; font-weight: 600; line-height: 1.2; }
  .cch .cotabs button.on { background: var(--navy2); color: var(--ivory); }
  .cch .tiles { display: block; margin: 0 0 12px; }
  .cch .row2 { display: block; margin: 0 0 12px; }
  .cch [data-panel] { display: none; }
  .cch[data-co="mithras"] [data-panel="mithras"], .cch[data-co="singa"] [data-panel="singa"], .cch[data-co="straitsworks"] [data-panel="straitsworks"] { display: flex; }
  .cch[data-co="all"] .all[data-panel="all"] { display: flex; }
  .cch[data-co="all"] .next[data-panel="all"] { display: block; }
  .cch .tile { border-radius: 14px; overflow: hidden; }
  .cch .th { padding: 16px 16px 12px; }
  .cch .kp { padding: 4px 16px; }
  .cch .k .v { font-size: 24px; }
  .cch .spend { padding: 12px 16px 4px; }
  .cch .story, .cch .seed { margin-left: 16px; margin-right: 16px; }
  .cch .open { margin: 12px 16px 16px; border-radius: 12px; }
  .cch .all { flex-direction: column; align-items: stretch; gap: 14px; padding: 18px 16px; border-radius: 14px; }
  .cch .all .fig { justify-content: space-between; gap: 10px; }
  .cch .all .fig div { text-align: left; }
  .cch .all a { text-align: center; }
  .cch .next { margin-top: 12px; padding: 16px; border-radius: 14px; }
  .cch .strip { grid-template-columns: minmax(0, 1fr); gap: 14px; margin: 0 0 20px; padding: 14px 16px; border-radius: 14px; }
  .cch footer, .cce footer { padding: 14px 0 24px; font-size: 10.5px; }
  .cch footer .pub, .cce footer .pub { flex-direction: column; gap: 2px; }
  /* a company's page: the header, the chips, the band */
  .cce { display: flex; flex-direction: column; align-items: stretch; }
  .cce .top .w { flex-wrap: wrap; min-height: 0; gap: 8px 10px; padding-top: 10px; padding-bottom: 10px; }
  .cce .top .back { display: block; color: var(--ivory); text-decoration: none; font-size: 28px; line-height: 1; padding: 0 2px 3px 0; }
  .cce .who { gap: 10px; margin-left: auto; }
  .cce .who .p > span:last-child { display: none; }
  .cce .who .live { gap: 0; font-size: 0; }
  .cce .who .live .paused { margin-left: 6px; font-size: 11px; letter-spacing: 0; text-transform: none; }
  .cce .sw { order: 3; flex: 1 1 100%; min-width: 0; overflow-x: auto; margin: 0 -12px; padding: 0 12px 2px; scrollbar-width: none; }
  .cce .sw::-webkit-scrollbar { display: none; }
  .cce .sw a { flex: none; padding: 7px 12px; border-radius: 999px; font-size: 12.5px; }
  .cce .band .w { display: block; padding: 16px 12px 14px; }
  .cce h1 { margin: 0; font-size: 25px; }
  .cce .kick { margin-bottom: 8px; font-size: 10px; letter-spacing: .2em; }
  .cce .lede, .cce .meta { display: none; }
  /* the five tabs, sticky under the rail */
  .cce .cptabs { position: sticky; top: 30px; z-index: 20; display: flex; gap: 2px; overflow-x: auto; padding: 0 8px; background: var(--paper); border-bottom: 1px solid var(--rule); scrollbar-width: none; }
  .cce .cptabs::-webkit-scrollbar { display: none; }
  .cce .cptabs button { flex: 1 0 auto; margin-bottom: -1px; padding: 12px 10px 11px; background: none; border: 0; border-bottom: 2px solid transparent; color: var(--mute-ink); font-size: 13.5px; font-weight: 600; }
  .cce .cptabs button.on { color: var(--ink); border-bottom-color: var(--acc); }
  .cce main.w { width: 100%; }
  .cce .stabs { display: none; }
  /* one panel at a time: Overview is the three lines and the figures */
  .cce .band .three { display: none; }
  .cce[data-ptab="overview"] .band .three { display: block; margin-top: 12px; font-size: 13.5px; }
  .cce .kpis { display: none; }
  .cce[data-ptab="overview"] .kpis { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 10px; margin: 12px 0; }
  .cce[data-ptab="overview"] .cols { display: none; }
  .cce .cols { display: block; margin: 12px 0 20px; }
  .cce .cols > [data-panel] { display: none; }
  .cce[data-ptab="runs"] .cols > [data-panel="runs"], .cce[data-ptab="decisions"] .cols > [data-panel="side"], .cce[data-ptab="guardrails"] .cols > [data-panel="side"], .cce[data-ptab="cost"] .cols > [data-panel="side"] { display: block; }
  .cce .kpi { padding: 12px 12px 10px; border-radius: 12px; }
  .cce .kpi .l { white-space: normal; font-size: 10.5px; }
  .cce .kpi .v { font-size: 24px; }
  .cce .card { border-radius: 14px; overflow: hidden; }
  .cce .card + .card { margin-top: 12px; }
  .cce .card h2 { flex-wrap: wrap; padding: 14px 14px 10px; font-size: 16px; }
  /* tables fold to rows */
  .cce table, .cce tbody, .cce tr, .cce td { display: block; width: auto; }
  .cce thead, .cce colgroup { display: none; }
  .cce tr { padding: 10px 14px; border-bottom: 1px solid var(--rule-2); }
  .cce tr:last-child { border-bottom: 0; }
  .cce td { padding: 2px 0; border: 0; overflow-wrap: anywhere; }
  .cce tr.story td:first-child { box-shadow: none; }
  .cce tr.story { background: var(--acct); box-shadow: inset 3px 0 0 var(--acc); }
  .cce .route { white-space: normal; }
  .cce td .sub { padding-left: 0; }
  .cce .tfoot { padding: 10px 14px; }
  /* a run on its own, with the way back */
  .cce[data-run] .cols > [data-panel="runs"] > .card:not(.drill), .cce:not([data-run]) .cols .drill { display: none; }
  .cce .back-runs { display: block; padding: 12px 14px 0; color: var(--mute-ink); font-size: 13px; font-weight: 600; text-decoration: none; }
  .cce .drill .facts { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .cce .drill .facts div { padding: 10px 14px; border-bottom: 1px solid var(--rule-2); overflow-wrap: anywhere; }
  .cce .drill .sum { padding: 12px 14px; }
  .cce .step { grid-template-columns: 58px minmax(0, 1fr); gap: 4px 10px; padding: 10px 14px; }
  .cce .step time { grid-row: 1 / span 3; }
  .cce .step > div, .cce .step > .badge { grid-column: 2; justify-self: start; }
  .cce .call, .cce .call .cid, .cce .step .d { overflow-wrap: anywhere; }
  .cce .call pre { white-space: pre-wrap; overflow-wrap: anywhere; }
  .cce .after > div { padding: 14px; }
  .cce .why { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .cce .audit { columns: 1; }
  .cce .audit li { overflow-wrap: anywhere; }
  .cce .audit li b { min-width: 0; }
  /* the right column's lists */
  .cce .dec li, .cce .gr li { padding: 11px 14px; }
  .cce .dec li > div, .cce .gr li > div { min-width: 0; overflow-wrap: anywhere; }
  .cce .lanes { padding: 4px 14px 8px; }
  .cce .caps, .cce .quiet { padding: 12px 14px; }
}
