/* Only the selected Codex edition changes. Other editions keep their shell. */
html[data-style="codex"]{--bg:#0b0b0b;--bar:#0b0b0b;--void:#0b0b0b;--panel:#111515;--panel2:#191c1b;--panel3:#242827;--line:#343837;--line2:#292d2c;--ring:#292d2c;--t1:#fafaf8;--t2:#bfc2bf;--t3:#aaafab;--gold:#ff5934;--gold2:#ff5934;--onGold:#0b0b0b;--goldWash:#2c1710;--red:#ff8067;--redFill:#b52c1e;--redWash:#2b1510;--disp:'Bricolage Grotesque',Arial,sans-serif;--mono:'IBM Plex Mono',monospace;--rad:0px;--rad2:0px;--radb:0px;--radt:0px;--band:env(safe-area-inset-top,0px);--chan:64px;--tabs:64px;--home:env(safe-area-inset-bottom,0px);--W:100%;--H:100dvh;color-scheme:dark}
html[data-style="codex"] body{overflow:hidden}
html[data-style="codex"] #app{max-width:none;height:100dvh;box-shadow:none;overflow:clip}
html[data-style="codex"] .scroll{scrollbar-width:thin;scrollbar-color:#343837 transparent}
html[data-style="codex"] .scroll::-webkit-scrollbar{width:6px}
html[data-style="codex"] .scroll::-webkit-scrollbar-thumb{background:#343837}
html[data-style="codex"] #view>.scroll:not(.cx){padding:24px max(16px,calc((100% - 880px)/2)) 40px}
html[data-style="codex"] .sheet{max-width:620px;left:50%;right:auto;width:100%;transform:translate(-50%,105%)}
html[data-style="codex"] .sheet.on{transform:translate(-50%,0)}
html[data-style="codex"] button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.cx-wrap{max-width:1240px;margin:auto;padding:28px 24px 36px}
.cx-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}
.cx h1{font-size:38px;line-height:1.06;letter-spacing:-.04em;margin:8px 0 12px}
.cx-heading p,.cx-position p{margin:0;color:var(--t2);font-size:15px;line-height:1.5}
.cx-kicker,.cx-panel header span{font:11px var(--mono);color:var(--t3);letter-spacing:.05em}
.cx-dashboard{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:20px;align-items:start}
.cx-main,.cx-side{display:flex;flex-direction:column;gap:20px;min-width:0}
.cx-panel{background:var(--panel);border:1px solid var(--line2);padding:20px;min-width:0}
.cx-panel header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:4px}
.cx-panel h2{font:11px var(--mono);text-transform:uppercase;color:var(--t2);margin:0}
.cx-button{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:48px;border:0;padding:14px 18px;background:var(--gold);color:var(--onGold);font:12px var(--mono);text-transform:uppercase;cursor:pointer}
.cx-button svg,.cx-row>svg{width:16px;height:16px;flex:none}
.cx-heading>.cx-button{min-width:170px}
.cx-panel>.cx-button{width:100%;margin-top:14px}
.cx-button.quiet{background:transparent;color:var(--t1);border:1px solid var(--line)}
.cx-row{width:100%;background:none;color:var(--t1);border:0;border-bottom:1px solid var(--line2);display:flex;gap:12px;align-items:center;text-align:left;padding:16px 0;cursor:pointer}
.cx-row>span:not(.av){flex:1;min-width:0}
.cx-row b{font-size:16px;font-weight:600;display:block}
.cx-row small,.cx-standing small{display:block;color:var(--t3);font:11px var(--mono);line-height:1.55;margin-top:4px}
.cx-row strong{font:16px var(--mono);white-space:nowrap}
.cx-standing{position:relative;width:100%;border:0;border-bottom:1px solid var(--line2);background:none;color:var(--t1);display:grid;grid-template-columns:26px 1fr auto;gap:12px;align-items:center;text-align:left;padding:18px 4px 22px;cursor:pointer}
.cx-standing.you{background:var(--panel2);border-left:3px solid var(--gold);padding-left:10px}
.cx-rank{font:12px var(--mono);color:var(--t3)}
.cx-person{min-width:0}.cx-person b{font-size:17px;font-weight:600}
.cx-standing>strong{font:20px var(--mono);text-align:right}
.cx-track{position:absolute;bottom:8px;left:42px;right:4px;height:3px;background:var(--line2)}
.cx-track i{display:block;height:3px;background:#5a605c}.cx-standing.you .cx-track i{background:var(--gold)}
.cx-position{background:var(--panel2);padding:22px;border:1px solid var(--line)}
.cx-place{display:flex;gap:16px;align-items:center;font:76px/1.2 var(--mono);letter-spacing:-.06em;color:var(--gold);margin:8px 0}
.cx-place>span{font:700 20px var(--disp);color:var(--t1);letter-spacing:0}
.cx-place small{display:block;font:11px/1.5 var(--mono);color:var(--t3);margin-top:6px}
.cx-position>.cx-button{margin-top:18px;width:100%}
.cx-doors{display:flex;flex-direction:column}.cx-door{background:none;border:0;border-bottom:1px solid var(--line2);color:var(--t1);font:14px var(--disp);text-align:left;padding:16px 0;cursor:pointer}
.cx-empty{font-size:15px;line-height:1.6;color:var(--t2);margin:18px 0}
.cx-wrap>.cx-roster{margin-top:20px}
@media(min-width:900px){.cx-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px}.cx-roster>header{grid-column:1/-1}}
.cx-summary{display:grid;grid-template-columns:repeat(3,1fr);background:var(--panel);border:1px solid var(--line);margin-bottom:20px}
.cx-summary>div{padding:20px;border-right:1px solid var(--line)}.cx-summary>div:last-child{border:0}
.cx-summary strong{display:block;font:28px var(--mono)}.cx-summary small{display:block;font:11px var(--mono);color:var(--t3);margin-top:8px}
@media(min-width:900px){
 html[data-style="codex"]{--chan:72px;--tabs:0px;--home:0px}
 html[data-style="codex"] #chan{right:50%;padding-left:max(24px,calc(50vw - 596px));padding-right:16px}
 html[data-style="codex"] #tabs{top:calc(var(--band) + var(--demo));bottom:auto;left:50%;right:max(24px,calc((100% - 1192px)/2));height:72px;border-top:0;border-bottom:1px solid var(--line2)}
 html[data-style="codex"] .tab{flex-direction:row;gap:8px}
 html[data-style="codex"] .tab span{font:12px var(--mono)}
 html[data-style="codex"] .tab i{top:auto;bottom:14px;left:35%;right:35%;height:2px}
 html[data-style="codex"] .tab svg{display:none}
}
@media(max-width:899px){
 .cx-dashboard{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
 .cx-main,.cx-side{display:contents}
 .cx-position{order:-3}.cx-board{order:-2}.cx-roster{order:2}
 .cx-wrap{padding:22px 18px 28px}.cx-place{font-size:48px}
 .cx-position .cx-button{min-height:40px;padding:10px 12px}
}
@media(max-width:560px){
 .cx-wrap{padding:20px 14px 28px}.cx-heading{display:block}.cx h1{font-size:30px}
 .cx-heading>.cx-button{width:100%;margin-top:18px}
 .cx-panel{padding:16px}.cx-position{padding:18px}
 .cx-standing{grid-template-columns:22px 1fr auto;gap:8px}.cx-standing>strong{font-size:17px}
 .cx-panel header span{font-size:9px}.cx-summary>div{padding:16px}
 html[data-style="codex"] #view>.scroll:not(.cx){padding:16px 0 28px}
}
