:root{
  --bg:#0a0d10;--bg2:#101419;--surface:#151a20;--surface2:#1b2128;--paper:#f2efe7;
  --ink:#f3f5f6;--muted:#8f9aa4;--line:#2b333b;--line2:#3a444d;
  --brand:#66d9d4;--brand-dark:#0e3d3a;--gold:#d7b764;--felt:#143630;--felt-dark:#0d2925;
  --danger:#e77c7c;--radius:8px;--shadow:0 22px 55px rgba(0,0,0,.38)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.shell{width:min(1240px,calc(100% - 48px));margin:auto}

/* game-client header */
.topbar{height:68px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;padding:0 max(24px,calc((100vw - 1240px)/2));position:sticky;top:0;z-index:50;background:rgba(10,13,16,.97);backdrop-filter:blur(14px)}
.topbar:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--brand) 0 18%,transparent 18% 100%)}
.wordmark{display:flex;align-items:center;gap:10px}.wordmark-c{display:grid;place-items:center;width:34px;height:34px;border:1px solid #46545f;border-radius:4px;font-size:20px;font-weight:900;color:var(--brand);background:#11171c}.wordmark span:last-child{display:flex;flex-direction:column;line-height:1}.wordmark b{font-size:14px;letter-spacing:.11em}.wordmark small{font-size:8px;letter-spacing:.23em;color:#84909a;margin-top:5px}.main-nav{display:flex;justify-content:center;gap:30px;font-size:13px;font-weight:650;color:#9ea8b1}.main-nav a{position:relative;padding:25px 0 22px}.main-nav a:hover{color:#fff}.main-nav a:first-child{color:#fff}.main-nav a:first-child:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--brand)}
.header-actions{display:flex;align-items:center;gap:8px}.language-picker{display:flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:4px;padding:6px 8px;background:#11161b}.language-picker span{opacity:.65}.language-picker select{background:transparent;color:#fff;border:0;outline:0;font-size:12px}.language-picker option{color:#111}.conndi-link{font-size:12px;padding:8px 10px;border:1px solid var(--line);border-radius:4px;color:#cbd1d6}.conndi-link:hover{border-color:#56636e;background:#151b20}

/* compact cover / launcher instead of marketing hero */
.intro{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:350px;align-items:center;gap:70px;padding-block:52px 42px;border-bottom:1px solid #151b20}.edition-line{display:flex;align-items:center;gap:10px;color:#78848e;font-size:9px;letter-spacing:.19em;font-weight:800}.edition-line i{height:1px;width:35px;background:#46515b}.intro h1{font-size:clamp(43px,5.6vw,72px);letter-spacing:-.052em;line-height:.95;margin:14px 0 0;font-weight:850}.intro h1 span{display:block;color:#b9c1c7;font-weight:300}.lead{font-size:15px;line-height:1.72;color:#98a3ac;max-width:680px;margin:22px 0 0}.intro-actions{display:flex;gap:18px;align-items:center;margin-top:27px}.primary-action,.secondary-action,.restart-btn{border-radius:4px;padding:10px 15px;font-weight:800;transition:background .18s,border-color .18s,transform .18s}.primary-action{border:1px solid var(--brand);background:var(--brand);color:#061615}.primary-action:hover{background:#7ce5e1;transform:translateY(-1px)}.secondary-action{background:#171d22;color:#fff;border:1px solid #39434b}.secondary-action:hover{border-color:#66737e;background:#1b2228}.text-action{border:0;background:transparent;color:#dbe0e4;font-weight:720;padding:9px 0}.text-action:hover{color:var(--brand)}
.intro-showcase{height:270px;position:relative;border-left:1px solid var(--line);padding-left:50px}.cover-caption{position:absolute;left:52px;bottom:2px;display:flex;flex-direction:column;z-index:3}.cover-caption b{font-size:11px;letter-spacing:.16em}.cover-caption span{font-size:8px;letter-spacing:.16em;color:#77838d;margin-top:3px}.stack-card{position:absolute;width:154px;aspect-ratio:5/7;object-fit:cover;border-radius:7px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.18)}.stack-back{background:repeating-linear-gradient(45deg,#15222a 0 5px,#192933 5px 10px);right:132px;top:42px;transform:rotate(-9deg)}.stack-cover{right:72px;top:15px;transform:rotate(-2deg)}.stack-front{right:8px;top:40px;transform:rotate(7deg)}

/* actual app area */
.play-shell{padding:34px 0 70px;background:#0d1115}.play-heading{display:grid;grid-template-columns:1fr auto;align-items:end;gap:30px;margin-bottom:16px}.play-heading .section-label{display:none}.play-heading h2{font-size:22px;letter-spacing:-.025em;margin:0;font-weight:760}.active-deck{text-align:right;border-left:1px solid var(--line);padding-left:20px}.active-deck span,.active-deck small{display:block;color:#77838d;font-size:10px}.active-deck strong{display:block;font-size:13px;margin:2px 0}
.game-config{border:1px solid var(--line);background:#12171c;padding:10px 12px;display:flex;align-items:end;gap:12px;border-radius:6px 6px 0 0;margin:0}.config-block{display:flex;flex-direction:column;gap:6px}.config-label,.difficulty-wrap span{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#75818b;font-weight:800}.segmented{display:flex;background:#0b0f12;border:1px solid #242c32;padding:2px;border-radius:4px}.segment{border:0;background:transparent;color:#8d99a2;padding:7px 12px;border-radius:2px;font-size:12px;font-weight:720}.segment.active{background:#29323a;color:#fff;box-shadow:inset 0 -2px var(--brand)}.difficulty-wrap{margin-left:auto;display:flex;flex-direction:column;gap:6px}.difficulty-wrap select{min-width:108px;border:1px solid var(--line);background:#0f1418;color:#fff;border-radius:4px;padding:7px 9px}.restart-btn{background:#171c21;border:1px solid var(--line2);color:#d9dfe3;padding:8px 12px}
.game-surface{border:1px solid #344047;border-top:0;border-radius:0 0 7px 7px;overflow:hidden;background:#0c1114;margin:0}.table-status{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #24342f;padding:12px 18px;background:#101815}.player-score{display:grid;grid-template-columns:auto auto;justify-content:start;gap:0 8px;align-items:end}.player-score.right{justify-content:end;text-align:right}.player-score span{grid-column:1/-1;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#90a098}.player-score strong{font-size:25px;line-height:1}.player-score small{align-self:end;color:#66766f;font-size:10px}.round-center{text-align:center}.round-center span,.round-center small{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#6d8178;display:block}.round-center strong{font-size:12px;color:#dce6e1}
.felt{min-height:610px;display:grid;grid-template-columns:72px minmax(235px,1fr) 136px minmax(235px,1fr) 72px;align-items:center;gap:18px;padding:36px;background-color:var(--felt);background-image:linear-gradient(rgba(255,255,255,.013) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.013) 1px,transparent 1px);background-size:7px 7px;position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),inset 0 0 100px rgba(0,0,0,.35)}.felt:before{content:"CONNDI WORLD QUARTETT";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-90deg);font-size:10px;letter-spacing:.32em;color:rgba(255,255,255,.055);font-weight:800;white-space:nowrap}.battle-card{display:flex;justify-content:center;position:relative;z-index:2;transition:.3s}.battle-card[data-result="win"] .quartett-card{transform:translateY(-7px);box-shadow:0 0 0 2px var(--brand),0 25px 55px rgba(0,0,0,.42)}.battle-card[data-result="lose"] .quartett-card{filter:saturate(.62) brightness(.78);transform:scale(.975)}.battle-card[data-result="draw"] .quartett-card{box-shadow:0 0 0 2px var(--gold),0 25px 55px rgba(0,0,0,.42)}.battle-center{text-align:center;position:relative;z-index:2}.vs{display:inline-block;font-size:10px;letter-spacing:.22em;color:#82948b;border-block:1px solid rgba(255,255,255,.13);padding:7px 12px}.battle-result{margin-top:20px;min-height:90px;display:flex;flex-direction:column;gap:4px;justify-content:center}.battle-result strong{font-size:15px}.battle-result span,.battle-result small,.battle-result p{font-size:10px;color:#91a098;margin:0}.pile{display:flex;flex-direction:column;align-items:center;gap:9px;color:#8b9a93;font-size:10px;z-index:2}.pile-cards{width:45px;height:63px;position:relative}.pile-cards i{position:absolute;inset:0;border:1px solid #537067;border-radius:4px;background:#10261f}.pile-cards i:nth-child(2){transform:translate(3px,-3px)}.pile-cards i:nth-child(3){transform:translate(6px,-6px)}.rules-hint{margin:0;padding:12px 18px;color:#7f8c86;font-size:10px;border-top:1px solid #283832;background:#0f1714}

/* physical card treatment */
.quartett-card{width:min(286px,100%);aspect-ratio:5/7;background:var(--paper);color:#151b20;border-radius:7px;overflow:hidden;border:1px solid rgba(255,255,255,.48);box-shadow:0 22px 44px rgba(0,0,0,.4);display:flex;flex-direction:column;transition:.3s}.quartett-card.back{background:#0e1b20;display:grid;place-items:center}.quartett-card.back img{width:100%;height:100%;object-fit:cover}.card-head{min-height:31px;background:#151b1f;color:#f8fafb;display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:9px}.group-badge{width:25px;height:21px;display:grid;place-items:center;border:1px solid #61707a;border-radius:2px;font-weight:900}.super-trump{margin-left:auto;color:#14100a;background:var(--gold);border-radius:2px;padding:3px 5px;font-weight:900;font-size:7px;letter-spacing:.09em}.vehicle-art{height:38%;width:100%;object-fit:cover;background:#dfe3e3}.card-title{padding:9px 11px 6px;display:flex;flex-direction:column;border-bottom:1px solid #d6d4cd}.card-title strong{font-size:15px}.card-title small{font-size:8px;color:#6b747a}.stats{padding:0 8px 8px;display:grid;gap:0;flex:1}.stat-row{border:0;border-bottom:1px solid #d8d6ce;background:transparent;display:flex;justify-content:space-between;align-items:center;padding:5px 4px;color:#19212a;text-align:left}.stat-row:last-child{border-bottom:0}.stat-row span{font-size:9px}.stat-row strong{font-size:11px}.stat-row strong small{font-size:7px;color:#66717a}.stat-row.selectable:hover{background:#d8efea;box-shadow:inset 3px 0 var(--brand-dark)}

/* quartet mode */
.quartet-scoreboard{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);background:#101519}.quartet-player{padding:12px 16px;border-right:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:1px 10px}.quartet-player:last-child{border-right:0}.quartet-player.active{background:#17221f;box-shadow:inset 0 -2px var(--brand)}.quartet-player span{font-size:11px}.quartet-player strong{font-size:20px}.quartet-player small{grid-column:1/-1;color:#718078;font-size:9px}.quartet-table{display:grid;grid-template-columns:210px 1fr;min-height:500px;background:#11171a}.quartet-log{padding:22px;border-right:1px solid var(--line);background:#0d1215}.quartet-log>div{margin-top:14px;color:#a0a9ae;font-size:12px}.quartet-hand-wrap{padding:24px}.quartet-turnline{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:18px}.quartet-turnline span{display:block;color:#718078;font-size:9px;text-transform:uppercase;letter-spacing:.13em}.quartet-turnline strong{font-size:17px}.quartet-turnline p{max-width:520px;color:#78858b;font-size:11px;margin:0}.quartet-hand{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hand-group{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#12181c}.hand-group header{display:flex;gap:9px;padding:8px 10px;border-bottom:1px solid var(--line);font-size:10px;color:#bdc5ca}.hand-group header b{color:var(--brand)}.hand-group-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px}.hand-card{border:1px solid #334048;border-radius:4px;aspect-ratio:5/7;background:#131d22;position:relative;overflow:hidden;color:#fff;padding:0}.hand-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}.hand-card>span{position:absolute;left:4px;top:4px;background:#0b0e10d9;padding:2px 4px;border-radius:2px;font-size:8px;font-weight:900}.hand-card.missing{display:grid;place-items:center;border-style:dashed;color:#607078}.hand-card.missing span{background:transparent}.hand-card.missing b{font-size:22px;font-weight:400}.hand-card.requestable:hover{border-color:var(--brand);color:var(--brand);background:#122523}.request-panel{margin-top:16px;border-top:1px solid var(--line);padding-top:14px;display:flex;align-items:center;gap:11px}.request-panel>div:first-child{margin-right:auto}.request-panel span{display:block;color:#758189;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.request-panel strong{font-size:18px}.target-buttons{display:flex;gap:7px}.thinking-state{grid-column:1/-1;min-height:250px;display:grid;place-items:center;color:#829097}.mini-stack{width:68px;height:96px;border:1px solid #46574f;border-radius:5px;background:#10231f;box-shadow:7px 7px 0 #0e1d1a,14px 14px 0 #0a1513}

/* online */
.online-panel{border:1px solid var(--line);border-top:0;border-radius:0 0 7px 7px;padding:26px;background:#101519;display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:0}.online-copy h3{font-size:25px;margin:0 0 8px}.online-copy p:last-child{color:#8f989e;font-size:13px}.online-controls{display:grid;gap:9px;align-content:start}.join-row{display:grid;grid-template-columns:1fr auto;gap:7px}.join-row input{background:#0b0f12;border:1px solid #343e45;border-radius:4px;color:#fff;padding:11px;letter-spacing:.16em;text-transform:uppercase}.room-code{border:1px dashed #506057;background:transparent;color:var(--brand);border-radius:4px;padding:9px}.online-controls small{color:#818c92}.online-game{grid-column:1/-1;display:grid;grid-template-columns:1fr 110px 1fr;align-items:center;border-top:1px solid var(--line);padding-top:23px;text-align:center}.online-vs{color:#77837d}.card-slot{display:flex;justify-content:center;margin-top:12px}

/* lower library feels like a game library, not landing cards */
.content-section{padding-block:66px}.section-label{font-size:9px;font-weight:850;letter-spacing:.19em;color:var(--brand);margin:0 0 9px;text-transform:uppercase}.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:50px;align-items:end}.section-head h2,.publisher-section h2{font-size:31px;letter-spacing:-.035em;margin:0}.section-head>p{color:#7f8a92;margin:0;font-size:13px;line-height:1.65}.deck-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:28px;border:1px solid var(--line);background:var(--line)}.deck-tile{background:#101519;overflow:hidden;border:0;border-radius:0}.deck-tile:hover{background:#131a1f}.deck-cover-wrap{aspect-ratio:16/9;background:#0a0d10;overflow:hidden;border-bottom:1px solid var(--line)}.deck-cover-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.deck-tile:hover .deck-cover-wrap img{transform:scale(1.018)}.deck-tile-body{padding:16px}.deck-tile-body>small{color:#78858d;font-size:8px;text-transform:uppercase;letter-spacing:.13em}.deck-tile h3{margin:4px 0 6px;font-size:18px}.deck-tile p{margin:0;color:#89949a;font-size:11px;min-height:53px}.deck-tags{display:flex;gap:5px;flex-wrap:wrap;margin:13px 0}.deck-tags span{font-size:8px;padding:3px 5px;border:1px solid #303a41;border-radius:2px;color:#7f8d95}.deck-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #252e34;padding-top:11px}.coming-soon{font-size:10px;color:#738087}.collection-section{background:#0d1115;border-block:1px solid var(--line)}.card-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:28px}.gallery-group{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:#101519}.gallery-group>header{padding:9px 11px;display:flex;gap:9px;border-bottom:1px solid var(--line);font-size:10px}.gallery-group>header b{color:var(--brand)}.gallery-group>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.mini-card{border:0;background:#11171b;padding:7px;color:#fff;text-align:left;border-radius:0}.mini-card:hover{background:#182126}.mini-card img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:2px}.mini-card span{display:flex;flex-direction:column;gap:1px;padding:6px 1px 2px;font-size:8px}.mini-card span b{color:var(--brand)}.publisher-section{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.publisher-copy>p:not(.section-label){color:#89949b;max-width:650px;font-size:13px;line-height:1.7}.publisher-flow{border-top:1px solid var(--line)}.publisher-flow>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:15px 0;border-bottom:1px solid var(--line)}.publisher-flow b{color:var(--brand);font-size:10px}.publisher-flow span{display:flex;flex-direction:column}.publisher-flow small{color:#78848b;margin-top:3px;font-size:11px}
.footer{border-top:1px solid var(--line);padding:25px 0;color:#7f8a91;font-size:11px}.footer>.shell{display:flex;justify-content:space-between;gap:25px}.footer div:first-child{display:flex;flex-direction:column}.footer div:first-child b{color:#c9d0d4}.footer div:last-child{display:flex;gap:18px}

dialog{border:1px solid #3c474e;border-radius:7px;background:#0c1114;padding:24px;color:#fff;box-shadow:var(--shadow);max-width:360px}dialog::backdrop{background:rgba(2,4,6,.84)}.dialog-close{position:absolute;right:7px;top:7px;width:29px;height:29px;border-radius:3px;background:#171e23;color:#fff;border:1px solid #354149}.toast{position:fixed;right:20px;bottom:20px;max-width:360px;background:#151c21;border:1px solid #3d4a52;border-radius:5px;padding:11px 14px;transform:translateY(30px);opacity:0;pointer-events:none;transition:.25s;z-index:100}.toast.show{transform:none;opacity:1}.toast[data-tone="error"]{border-color:#7d3b3b}.embed-mode .topbar,.embed-mode .footer{display:none}
.battle-card.collect-left .quartett-card{animation:collectLeft .7s cubic-bezier(.4,0,.2,1) forwards}.battle-card.collect-right .quartett-card{animation:collectRight .7s cubic-bezier(.4,0,.2,1) forwards}@keyframes collectLeft{to{transform:translateX(-78px) scale(.72) rotate(-3deg);opacity:.12}}@keyframes collectRight{to{transform:translateX(78px) scale(.72) rotate(3deg);opacity:.12}}

@media(max-width:1000px){.main-nav{display:none}.intro{grid-template-columns:1fr .72fr;gap:30px}.intro-showcase{transform:scale(.9);transform-origin:right center}.felt{grid-template-columns:42px 1fr 90px 1fr 42px;gap:9px;padding:24px 12px}.quartett-card{width:min(240px,100%)}.quartet-table{grid-template-columns:1fr}.quartet-log{border-right:0;border-bottom:1px solid var(--line)}.deck-grid{grid-template-columns:1fr 1fr}.publisher-section{grid-template-columns:1fr}.game-config{flex-wrap:wrap}.difficulty-wrap{margin-left:0}.card-gallery{grid-template-columns:1fr}}
@media(max-width:760px){.shell{width:min(100% - 22px,1240px)}.topbar{height:62px;padding:0 11px;grid-template-columns:1fr auto}.conndi-link{display:none}.intro{grid-template-columns:1fr;padding-block:34px 28px;min-height:0}.intro-showcase{display:none}.intro h1{font-size:44px}.lead{font-size:14px}.play-shell{padding-top:24px}.play-heading{display:block}.active-deck{text-align:left;border-left:0;border-top:1px solid var(--line);padding:10px 0 0;margin-top:10px}.game-config{display:grid;grid-template-columns:1fr;border-radius:5px 5px 0 0}.segmented{overflow:auto}.segment{flex:1;white-space:nowrap}.difficulty-wrap{width:100%}.difficulty-wrap select{width:100%}.table-status{grid-template-columns:1fr 1fr}.round-center{grid-column:1/-1;grid-row:2;margin-top:7px}.felt{grid-template-columns:1fr 38px 1fr;min-height:450px;padding:20px 8px}.felt:before,.pile{display:none}.battle-card{min-width:0}.quartett-card{width:100%;border-radius:5px}.card-head{padding:4px 5px}.vehicle-art{height:34%}.card-title{padding:6px 7px 4px}.card-title strong{font-size:12px}.stats{padding:0 5px 5px}.stat-row{padding:4px 2px}.stat-row span{font-size:7.5px}.stat-row strong{font-size:9px}.battle-result{margin-top:9px}.quartet-scoreboard{grid-template-columns:1fr}.quartet-player{border-right:0;border-bottom:1px solid var(--line)}.quartet-hand{grid-template-columns:1fr}.quartet-turnline{display:block}.quartet-turnline p{margin-top:7px}.request-panel{align-items:flex-start;flex-direction:column}.target-buttons{flex-wrap:wrap}.deck-grid{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:12px}.gallery-group>div{grid-template-columns:repeat(2,1fr)}.online-panel{grid-template-columns:1fr}.online-game{grid-template-columns:1fr}.publisher-section{gap:35px}.footer>.shell{display:block}.footer div:last-child{margin-top:14px;flex-wrap:wrap}}

/* =========================================================
   V4 — GAME CLIENT / PORTAL LAYOUT
   ========================================================= */
:root{--v4-max:1480px;--v4-panel:#10161a;--v4-panel2:#0d1215;--v4-edge:#263139;--v4-soft:#74818a}
.shell-wide{width:min(var(--v4-max),calc(100% - 40px));margin-inline:auto}
.main-nav a:first-child{color:#9ea8b1}.main-nav a:first-child:after{display:none}.main-nav a.active{color:#fff}.main-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--brand);display:block}
.build-tag{font-size:8px;letter-spacing:.12em;color:#64717a;border:1px solid #28323a;padding:5px 7px;border-radius:3px;white-space:nowrap}.icon-action{width:32px;height:32px;border:1px solid var(--line);background:#11161b;color:#b8c1c7;border-radius:4px;font-size:16px}.icon-action:hover{border-color:#55626c;color:#fff}
.game-client{min-height:calc(100vh - 68px);background:#090d10}.game-hub{padding:22px 0 28px}.game-commandbar{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(650px,1.5fr);gap:18px;align-items:end;margin-bottom:14px}.deck-identity{min-height:68px;display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;border:1px solid var(--v4-edge);background:var(--v4-panel);padding:8px 11px}.deck-identity img{width:58px;height:48px;object-fit:cover;border:1px solid #36434b}.deck-identity span,.deck-identity small{display:block;color:#708089;font-size:8px;text-transform:uppercase;letter-spacing:.11em}.deck-identity strong{display:block;font-size:13px;margin:2px 0}.inline-link{font-size:10px;color:#9aabae;border-bottom:1px solid #3d4c50;padding-bottom:2px;white-space:nowrap}.inline-link:hover{color:var(--brand);border-color:var(--brand)}
.game-commandbar .game-config{margin:0;border-radius:0;border:1px solid var(--v4-edge);min-height:68px;background:var(--v4-panel);padding:9px 10px;align-items:center}.game-commandbar .config-block,.game-commandbar .difficulty-wrap{justify-content:center}.game-commandbar .restart-btn{margin-left:auto}.play-layout{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:14px;align-items:start}.play-main{min-width:0}.game-page .game-surface{border:1px solid #344047;border-radius:4px;margin:0}.game-page .felt{min-height:640px}.game-sidebar{display:grid;gap:10px;position:sticky;top:90px}.side-panel{border:1px solid var(--v4-edge);background:var(--v4-panel);padding:16px}.side-label{font-size:8px;letter-spacing:.16em;color:var(--brand);font-weight:850;margin-bottom:10px}.side-panel h2{font-size:20px;line-height:1.08;letter-spacing:-.025em;margin:0 0 10px}.side-panel>p{font-size:11px;line-height:1.65;color:#839098;margin:0}.status-list{border-top:1px solid #263037;margin-top:15px;padding-top:8px}.status-list>div{display:grid;grid-template-columns:8px 1fr auto;gap:7px;align-items:center;padding:7px 0;font-size:9px;color:#87949c}.status-list b{font-weight:700;color:#aab4b9}.status-dot{width:6px;height:6px;border-radius:50%;background:#58636a}.status-dot.online{background:var(--brand);box-shadow:0 0 0 3px rgba(102,217,212,.08)}.rules-panel details{border-top:1px solid #263037;padding:9px 0}.rules-panel details:last-child{border-bottom:1px solid #263037}.rules-panel summary{font-size:11px;font-weight:750;cursor:pointer;color:#cbd2d6}.rules-panel details p{font-size:10px;line-height:1.55;color:#7f8d94;margin:8px 0 0}.side-links{display:grid;border:1px solid var(--v4-edge);background:var(--v4-panel)}.side-links a{display:grid;grid-template-columns:22px 1fr auto;gap:9px;align-items:center;padding:11px 12px;border-bottom:1px solid #253038}.side-links a:last-child{border-bottom:0}.side-links a>span{color:var(--brand);font-size:14px}.side-links a div{display:flex;flex-direction:column}.side-links b{font-size:10px}.side-links small{font-size:8px;color:#738088;margin-top:1px}.side-links i{font-style:normal;color:#536169}.side-links a:hover{background:#141b1f}.side-links a:hover i{color:var(--brand)}
.game-footer{border-top:1px solid #20292f;background:#090c0e;color:#69767e;font-size:9px}.game-footer>.shell-wide{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:20px}.game-footer nav{display:flex;gap:16px}.game-footer a:hover{color:#c4cdd1}

/* portal pages: deliberately editorial, not a marketing landing template */
.portal-page{background:#0a0e11}.portal-main{min-height:calc(100vh - 114px);padding-block:48px 70px}.page-hero{max-width:940px;border-left:2px solid var(--brand);padding:4px 0 5px 24px;margin-bottom:46px}.page-hero h1{font-size:clamp(38px,5.2vw,70px);line-height:.98;letter-spacing:-.05em;margin:0;max-width:900px}.page-hero>p:not(.section-label){font-size:14px;line-height:1.75;color:#87939a;max-width:760px;margin:19px 0}.page-hero .primary-action{display:inline-block;margin-top:10px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--v4-edge);background:var(--v4-edge);gap:1px}.library-card{background:#101519}.library-card.available{background:#11191b}.library-cover{aspect-ratio:16/10;background:#080b0d;overflow:hidden}.library-cover img{width:100%;height:100%;object-fit:cover}.library-body{padding:18px}.library-body>small{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#66747d}.library-body h2{font-size:19px;margin:4px 0 7px}.library-body p{font-size:11px;line-height:1.6;color:#819097;min-height:70px}.library-tags{display:flex;gap:5px;flex-wrap:wrap;margin:15px 0}.library-tags span{font-size:8px;color:#829097;border:1px solid #2d383f;padding:3px 5px}.library-body footer{border-top:1px solid #283239;padding-top:12px;display:flex;align-items:center;justify-content:space-between}.library-body footer>b{font-size:10px;color:#aab5ba}.library-body .primary-action{font-size:9px;padding:7px 9px}.collection-browser{margin-top:70px;border-top:1px solid var(--v4-edge);padding-top:34px}.section-head-simple{display:grid;grid-template-columns:1fr minmax(300px,520px);gap:50px;align-items:end;margin-bottom:24px}.section-head-simple h2{font-size:28px;margin:0}.section-head-simple p:not(.section-label){font-size:11px;color:#7d898f;margin:0}.section-head-simple small{display:block;color:#5f6e75;margin-top:6px}.page-card-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.page-group{border:1px solid var(--v4-edge);background:#101519}.page-group>header{display:flex;gap:8px;padding:8px 10px;border-bottom:1px solid var(--v4-edge);font-size:9px}.page-group>header b{color:var(--brand)}.page-group>div{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--v4-edge)}.page-mini-card{background:#11171b;padding:6px;min-width:0}.page-mini-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.page-mini-card span{display:flex;flex-direction:column;font-size:7px;padding-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-mini-card span b{color:var(--brand);font-size:8px}.shop-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.store-panel{min-height:330px;border:1px solid var(--v4-edge);background:#101619;padding:25px;display:flex;flex-direction:column}.store-panel .store-icon{width:36px;height:36px;border:1px solid #38504e;display:grid;place-items:center;font-size:10px;color:var(--brand);margin-bottom:38px}.store-panel h2{font-size:29px;letter-spacing:-.035em;margin:0 0 9px}.store-panel>p:not(.section-label){font-size:12px;color:#829098;line-height:1.7}.store-panel footer{margin-top:auto;border-top:1px solid #29333a;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:16px}.store-panel footer b{font-size:10px}.muted-panel{background:#0d1215}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--v4-edge);background:var(--v4-edge);gap:1px}.process-grid article{background:#101519;min-height:250px;padding:22px}.process-grid article>b{color:var(--brand);font-size:10px}.process-grid h2{font-size:17px;margin:48px 0 8px}.process-grid p{font-size:11px;color:#7c8990;line-height:1.65}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.account-panel{border:1px solid var(--v4-edge);background:#101519;min-height:250px;padding:22px}.account-panel>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #344148;color:#75848c}.account-panel.live>span{border-color:#3b6965;color:var(--brand)}.account-panel h2{font-size:18px;margin:55px 0 8px}.account-panel p{font-size:11px;color:#7f8c93;line-height:1.65}

@media(max-width:1180px){.game-commandbar{grid-template-columns:1fr}.play-layout{grid-template-columns:1fr}.game-sidebar{position:static;grid-template-columns:1fr 1fr 1fr}.side-links{align-self:stretch}.game-commandbar .game-config{flex-wrap:wrap}.game-commandbar .restart-btn{margin-left:0}.library-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.build-tag{display:none}.shell-wide{width:min(100% - 20px,var(--v4-max))}.game-hub{padding-top:10px}.game-commandbar{gap:8px}.deck-identity{grid-template-columns:50px 1fr}.deck-identity .inline-link{grid-column:1/-1}.game-commandbar .game-config{display:grid;grid-template-columns:1fr}.game-commandbar .segmented{overflow:auto}.game-commandbar .segment{flex:1;white-space:nowrap}.game-commandbar .difficulty-wrap select{width:100%}.game-sidebar{grid-template-columns:1fr}.game-page .felt{min-height:470px}.library-grid,.shop-split,.account-grid{grid-template-columns:1fr}.section-head-simple{grid-template-columns:1fr;gap:10px}.page-card-gallery{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr}.process-grid article{min-height:180px}.process-grid h2{margin-top:32px}.portal-main{padding-block:30px 50px}.page-hero{margin-bottom:30px;padding-left:16px}.page-hero h1{font-size:41px}.game-footer>.shell-wide{padding:12px 0;display:block}.game-footer nav{margin-top:8px;flex-wrap:wrap}}
@media(max-width:1000px){
  body{padding-bottom:58px}.main-nav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;height:58px;background:#0b0f12;border-top:1px solid #2b333b;justify-content:space-around;gap:0;padding:0 4px}.main-nav a{flex:1;display:grid;place-items:center;padding:0 5px;font-size:10px;text-align:center}.main-nav a.active:after{bottom:auto;top:0}.topbar{grid-template-columns:1fr auto}.game-footer{margin-bottom:-58px;padding-bottom:58px}
}
