:root{color-scheme:dark;--ink:#f7f3f1;--muted:#b4adbc;--deep:#111019;--card:#1e1b2a;--card2:#252034;--line:#3b3549;--orange:#f7ad72;--orange2:#ffcf9b;--violet:#9b85f1;--green:#85dcb3;--red:#ef989c;--radius:22px}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:#111019;color:var(--ink);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--orange2)}.wrap{width:min(1100px,calc(100% - 36px));margin:auto}.ambient{position:fixed;pointer-events:none;filter:blur(90px);opacity:.19;z-index:-1;border-radius:50%;}.ambient-one{width:430px;height:430px;background:#8b59e3;top:-180px;left:-140px}.ambient-two{width:360px;height:360px;background:#f47860;right:-160px;top:300px}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);font-size:25px;font-weight:850;letter-spacing:-1.2px}.brand-icon{width:40px;height:40px;display:grid;place-items:center;background:linear-gradient(135deg,var(--orange),#f5d3ad);border-radius:13px;color:#271524;font-size:26px;transform:rotate(-7deg)}.brand-period{color:var(--orange)}.pilot-badge{font-size:10px;letter-spacing:1.3px;font-weight:850;color:#d1c4ce;background:#292335;border:1px solid #42384e;border-radius:30px;padding:8px 12px;white-space:nowrap}.pilot-dot{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;margin-right:5px;box-shadow:0 0 0 4px #85dcb31b}.footer{display:flex;justify-content:space-between;gap:20px;align-items:center;color:#8d8798;font-size:12px;margin-top:65px;padding:28px 0 34px;border-top:1px solid #37303e}.footer div{display:flex;gap:18px}.footer a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(38px,6vw,65px);line-height:1.08;letter-spacing:-2px;margin-bottom:22px;font-weight:850}h2{font-size:clamp(24px,4vw,36px);letter-spacing:-1px;line-height:1.15;margin:0 0 10px}h3{font-size:19px;margin:0 0 9px}p{color:var(--muted)}.accent{color:var(--orange)}.eyebrow{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:2.1px;color:var(--orange);margin-bottom:14px}.hero{padding:48px 0 38px;display:grid;grid-template-columns:1.12fr .88fr;gap:55px;align-items:center}.hero p{font-size:18px;max-width:530px}.hero-graphic{min-height:320px;display:grid;place-items:center;position:relative}.orb{border-radius:38%;width:260px;height:260px;background:radial-gradient(circle at 30% 30%,#ffddbb,#ef9878 47%,#a562e3 86%);transform:rotate(18deg);box-shadow:0 0 130px #ea7f7277;position:absolute}.hero-game{position:relative;transform:rotate(-7deg);width:260px;background:#241b2e;box-shadow:0 25px 65px #09070b80;border:1px solid #63566d;border-radius:20px;padding:22px;text-align:left}.hero-game .mini-label{color:var(--orange);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.hero-game h3{font-size:24px;line-height:1.19;margin:12px 0 36px}.hero-game .fun-card{background:#efe7e1;color:#35283f;padding:20px 15px;border-radius:13px;font-size:17px;font-weight:800;line-height:1.25}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.feature{border:1px solid var(--line);border-radius:18px;padding:17px;background:#211c2ab8}.feature-icon{font-size:23px;margin-bottom:12px}.feature h3{font-size:16px}.feature p{font-size:13px;margin-bottom:0}.panel{background:linear-gradient(140deg,#211b2c,#1a1724);border:1px solid var(--line);border-radius:var(--radius);padding:26px;box-shadow:0 15px 60px #0002}.auth-panel{max-width:550px;margin:50px auto 25px}.seg-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#15131d;padding:5px;border-radius:14px;margin-bottom:24px}.seg-tabs button{background:transparent;border:0;color:var(--muted);padding:11px;border-radius:10px;font-weight:750}.seg-tabs button.active{background:#383043;color:var(--ink)}.label{display:block;font-size:13px;font-weight:750;margin:14px 0 6px}.field{width:100%;background:#16131f;border:1px solid #4e455a;border-radius:12px;color:#f6f0ef;padding:13px 14px;outline:none}.field:focus{border-color:var(--orange);box-shadow:0 0 0 3px #f7ad7228}.field::placeholder{color:#7e798a}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkline{display:flex;gap:11px;align-items:flex-start;margin:14px 0;font-size:13px;color:#d8d2df;cursor:pointer}.checkline input{width:17px;height:17px;accent-color:var(--orange);margin-top:3px;flex-shrink:0}.checkline a{font-weight:700}.optin{background:#30283c;border:1px solid #55465e;border-radius:15px;padding:15px;margin:17px 0}.optin h4{margin:0 0 7px;color:#ffe4c6;font-size:14px}.optin .checkline{margin:0}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;background:var(--orange);color:#211424;font-weight:850;padding:13px 19px;min-height:48px;white-space:nowrap;text-decoration:none;transition:transform .13s,filter .13s}.btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.07)}.btn.secondary{color:#f5eefa;background:#393044;border:1px solid #5b4b65}.btn.ghost{color:#d7ccdb;background:transparent;border:1px solid var(--line)}.btn.small{min-height:36px;padding:8px 12px;font-size:13px}.btn.wide{width:100%}.btn.red{background:#442632;color:#ffb6bc}.small-muted{font-size:12px;color:#a99eb1}.tiny{font-size:11px;color:var(--muted)}.notice{font-size:13px;padding:13px 15px;border:1px solid #6b5664;background:#352b38;color:#f7d6ce;border-radius:12px}.notice.ok{border-color:#3c695e;background:#1b3736;color:#b4ebd4}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.home-welcome{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:21px 0 27px}.home-welcome h1{font-size:clamp(32px,5vw,47px);margin:0}.home-welcome .small-muted{margin:5px 0}.games-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:36px 0}.game-tile{min-height:160px;border:1px solid #514558;border-radius:18px;background:linear-gradient(125deg,#2e2540,#24202e);padding:20px}.game-tile:nth-child(2){background:linear-gradient(135deg,#3b2a3f,#231d2d)}.game-tile:nth-child(3){opacity:.55}.game-tile b{font-size:20px;display:block;margin-top:17px}.game-tile .tiny{margin-top:5px;display:block}.room-card{background:#171421;border:1px solid var(--line);padding:16px;border-radius:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0}.room-code{font-weight:850;letter-spacing:2px;font-size:17px}.room-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin:24px 0}.room-head h1{font-size:clamp(32px,5vw,50px);margin:0}.room-info{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pill{padding:7px 11px;border:1px solid #51465a;background:#2e2739;border-radius:99px;font-size:12px;color:#f1deed;font-weight:700}.pill.ready{background:#23372f;border-color:#3b6651;color:#adf0c3}.app-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.game-panel{min-height:430px}.members{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.member{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid #4c4258;background:#2c2637;border-radius:12px;font-size:13px}.avatar{display:grid;place-items:center;width:25px;height:25px;background:linear-gradient(145deg,#f1b08b,#a682d0);color:#201629;border-radius:50%;font-size:11px;font-weight:850}.section-label{color:#c7b8ce;font-size:12px;font-weight:850;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:12px}.situation{padding:25px;background:linear-gradient(140deg,#ecdac9,#efbca0);color:#342238;border-radius:18px;margin:16px 0 22px;box-shadow:inset 0 -2px 0 #bd987f}.situation .section-label{color:#77504e}.situation h2{color:#322235;line-height:1.3;font-size:clamp(22px,3vw,31px)}.hand{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.play-card{min-height:108px;background:#ebe4df;color:#32293a;border:2px solid transparent;padding:17px;border-radius:15px;text-align:left;display:flex;flex-direction:column;justify-content:space-between;font-weight:760;font-size:15px;line-height:1.38}.play-card:hover{border-color:#ffc797;transform:translateY(-1px)}.play-card.selected{border-color:#ffad68;box-shadow:0 0 0 3px #ffb87344}.play-card small{color:#776b76;font-size:10px}.cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.progressbar{background:#302938;height:9px;overflow:hidden;border-radius:20px;margin:15px 0}.progressbar div{height:100%;background:linear-gradient(90deg,#e69b7a,#b894f4);border-radius:20px;transition:width .25s}.entry{background:#2a2335;border:1px solid #52455d;padding:17px;border-radius:15px;margin:10px 0}.entry.mine{border-color:#e8b481}.entry .entry-top{display:flex;justify-content:space-between;align-items:start;gap:10px}.entry strong{font-size:16px;display:block;margin:3px 0 6px}.entry.winner{border-color:#efc278;box-shadow:0 0 0 2px #bf875a55}.entry-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.comment{border-left:2px solid #604c70;margin:9px 0 4px;padding-left:10px;color:#cac0d1;font-size:12px}.comment b{color:var(--orange2)}.comment-add{display:flex;gap:7px;margin-top:10px}.comment-add input{flex:1;min-width:0;padding:9px 10px;font-size:12px}.count{text-align:center;margin:21px 0;font-size:13px;color:var(--muted)}.chaos{background:linear-gradient(145deg,#573c57,#32253e);border:1px solid #a77b88;border-radius:18px;padding:25px;margin:20px 0}.chaos h2{line-height:1.37;font-size:24px}.chaos .section-label{color:#f3d1ca}.empty{padding:35px 15px;text-align:center;color:var(--muted);border:1px dashed #51435d;border-radius:14px;margin:15px 0}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:50;background:#e9c6a7;color:#261528;padding:14px 20px;border-radius:12px;box-shadow:0 20px 55px #0008;font-size:14px;font-weight:700;max-width:min(94vw,500px)}.toast[hidden]{display:none}.loading{display:grid;place-items:center;min-height:370px}.spinner{border:3px solid #514360;border-top-color:var(--orange);border-radius:100%;width:35px;height:35px;animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.side-note{margin-top:16px;font-size:12px;color:#b6a9ba}.moderation{margin-top:15px;border-top:1px solid #46384d;padding-top:15px}.moderation summary{cursor:pointer;font-weight:750;font-size:13px}.subtitle{color:#c4b8c8;font-size:14px}.disclosure{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.disclosure summary{font-weight:700;font-size:13px;cursor:pointer}.disclosure .field{margin:9px 0}.chip-link{border:1px solid #58475e;background:#30273c;color:#dfd4e5;border-radius:7px;padding:4px 8px;font-size:11px}.disclaimer{margin-top:24px;padding:13px 15px;background:#201d2b;border:1px solid #383043;border-radius:13px;color:#aba3b0;font-size:12px}.stack{display:flex;flex-direction:column;gap:12px}.hide{display:none!important}.pill-outline{display:inline-flex;border:1px solid #755b68;border-radius:8px;padding:5px 8px;font-size:12px;color:#f3d5be}.error-msg{color:#ffb1b3;font-size:12px;margin-top:10px}
@media(max-width:780px){.hero{grid-template-columns:1fr;padding:20px 0}.hero-graphic{min-height:245px}.orb{height:210px;width:210px}.hero-game{width:240px}.features,.games-preview{grid-template-columns:1fr 1fr}.app-layout{grid-template-columns:1fr}.room-head{flex-direction:column}.home-welcome{align-items:start;flex-direction:column}.topbar{height:76px}.brand{font-size:23px}}
@media(max-width:500px){.wrap{width:calc(100% - 26px)}.panel{padding:18px}.field-row{grid-template-columns:1fr;gap:0}.features,.games-preview{grid-template-columns:1fr}.hand{grid-template-columns:1fr 1fr}.play-card{padding:12px;min-height:130px;font-size:13px}.topbar .pilot-badge{font-size:9px;letter-spacing:.35px;padding:7px}.auth-panel{margin-top:10px}.chaos{padding:18px}.chaos h2{font-size:19px}.situation{padding:18px}}

/* v0.2: opt-in self-service numbered table rooms */
.table-select{font-size:19px;font-weight:800;min-height:54px;cursor:pointer}
.table-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.table-heading h2{margin:0}
.table-list{max-height:350px;overflow:auto;display:flex;flex-direction:column;gap:9px;margin-top:18px}
.table-tile{border:1px solid #52445d;border-radius:15px;background:#181521;padding:10px;display:flex;align-items:center;gap:11px}
.table-num{background:#edaa86;color:#2d1a30;border-radius:11px;font-size:21px;font-weight:850;min-width:48px;height:48px;display:grid;place-items:center}
.table-detail{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.table-detail .tiny{font-size:11px;line-height:1.35}
@media(max-width:500px){.table-tile{gap:8px;padding:9px}.table-num{min-width:40px;height:42px;font-size:18px}.table-tile .btn{padding:7px 9px}}

/* v0.3: server-synchronised game clock */
.round-timer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 18px;background:linear-gradient(125deg,#362342,#251b34);border:1px solid #765073;border-radius:14px;margin-bottom:16px}
.round-timer span{font-size:12px;font-weight:900;letter-spacing:1.1px;color:#f0bedb}
.round-timer strong{font-size:30px;line-height:1;font-variant-numeric:tabular-nums;color:#fff6dd}
.round-timer.urgent{background:#492333;border-color:#d8757d}
.round-timer.urgent strong{color:#ffb7b7}

/* v0.4: Owner-only control and privacy dashboard */
.admin-app{padding-top:25px;padding-bottom:54px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:14px 0 25px}.admin-heading h1{font-size:clamp(30px,5vw,48px);margin:3px 0}.admin-control{border-color:#6a5267}.admin-control-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.admin-control h2{font-size:clamp(26px,4vw,39px);margin:7px 0 9px}.admin-control p{color:var(--muted);margin:5px 0 19px}.admin-status{font-size:12px;font-weight:900;padding:11px 14px;border-radius:999px;white-space:nowrap;letter-spacing:.8px}.admin-status.live{background:#193b31;color:#94ebbd;border:1px solid #356e56}.admin-status.locked{background:#46242e;color:#ffb6c0;border:1px solid #875162}.admin-row{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.admin-row .field{max-width:300px}.admin-row label{width:100%;margin-bottom:-6px}.admin-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.admin-stat{border:1px solid #55415c;border-radius:18px;background:#24202f;padding:21px;min-height:130px}.admin-stat span,.admin-stat small{display:block;color:var(--muted);font-size:12px}.admin-stat strong{display:block;font-size:clamp(25px,3vw,38px);margin:11px 0 6px;font-variant-numeric:tabular-nums}.admin-users{margin-top:22px}.admin-users-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;flex-wrap:wrap}.admin-users-head h2{font-size:26px;margin:5px 0 8px}.admin-export{display:flex;gap:10px;flex-wrap:wrap}.admin-toolbar{display:flex;gap:10px;margin:19px 0 10px}.admin-toolbar input{flex:1;min-width:120px}.admin-toolbar select{max-width:180px}.admin-table-wrap{overflow:auto;border:1px solid #4a3c53;border-radius:13px;margin-top:10px}.admin-table{width:100%;border-collapse:collapse;min-width:570px;font-size:13px}.admin-table th,.admin-table td{text-align:left;padding:12px 14px;border-bottom:1px solid #45384f}.admin-table th{background:#31263b;color:#ebdfef}.admin-table tr:last-child td{border:0}.admin-tag{padding:4px 9px;border-radius:8px;font-size:11px;font-weight:850}.admin-tag.yes{background:#193c32;color:#9ce8bd}.admin-tag.no{background:#45303c;color:#dbb6c8}.closed-event{padding:26px;text-align:center;background:#352735;border:1px solid #75546c;border-radius:17px}.closed-event h2{margin:7px 0 11px}
@media(max-width:740px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-control-head{flex-direction:column}.admin-toolbar{flex-wrap:wrap}.admin-toolbar select{max-width:none}.admin-users-head{flex-direction:column}.admin-row .field{max-width:none}.admin-row .btn{width:100%}}
@media(max-width:440px){.admin-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.admin-stat{padding:12px;min-height:116px}.admin-stat strong{font-size:26px}.admin-heading{flex-direction:column;align-items:flex-start}}


/* v0.5: end-of-session Instagram invitation and owner-managed page */
.exit-overlay{position:fixed;inset:0;z-index:3000;background:#090911d9;backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto}
.exit-dialog{max-width:440px;width:100%;padding:34px 25px;text-align:center;border:1px solid #7b597c;box-shadow:0 25px 100px #0009}
.exit-dialog h2{font-size:clamp(30px,5vw,38px);margin:0 0 16px}
.exit-dialog p{line-height:1.55;margin:0 0 24px}
.exit-emoji{font-size:44px;display:block;margin-bottom:14px}
.exit-dialog .btn{display:block;text-align:center;text-decoration:none;margin-top:11px}
.exit-dialog .exit-follow{background:linear-gradient(125deg,#ef9b78,#e87ab2);color:#241323}
.exit-dialog .exit-coming{border:1px solid #5a4960;border-radius:14px;padding:16px;color:#e6d7e7;background:#332839;margin:16px 0}
.exit-dialog .exit-note{margin:14px 0 0;font-size:12px;color:var(--muted)}
.admin-social{margin:22px 0}.admin-social h2{font-size:27px}.admin-social .admin-row{margin:17px 0 7px}.admin-social .admin-row input{max-width:460px;flex:1}
@media(max-width:540px){.exit-dialog{padding:28px 18px}.admin-social .admin-row input{max-width:none;width:100%}.admin-social .admin-row button{width:100%}}

/* Realignite venue enquiries, independently accessible from the games */
.top-link{font-size:0.9rem;font-weight:700;color:#efd7be;text-decoration:none;margin-left:auto;margin-right:14px}
.venue-landing{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,0.95fr);gap:42px;align-items:start;padding-top:70px;padding-bottom:90px}
.venue-hero h1{font-size:clamp(2.4rem,5vw,5rem);line-height:1.06;letter-spacing:-0.055em;max-width:700px}
.venue-hero p{max-width:560px}
.venue-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.venue-badges span{padding:10px 12px;border:1px solid rgba(255,255,255,.15);border-radius:30px;color:#f6e8e3;font-weight:650;font-size:0.83rem}
.venue-form-panel{padding:32px}
.venue-form{display:grid;gap:9px}
.venue-form .label:not(:first-child){margin-top:10px}
.venue-form .checkline{margin:20px 0 12px;line-height:1.45}
.venue-form textarea.field{min-height:106px;resize:vertical}
.venue-form .field{max-width:100%}
.venue-form .btn{margin-top:8px}
.venue-form-panel h2{font-size:1.6rem;margin:8px 0}
.venue-form-panel a{color:#ffc49e}
.visually-hidden{position:absolute!important;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}
@media(max-width:770px){.venue-landing{grid-template-columns:1fr;padding-top:20px;gap:20px}.venue-form-panel{padding:23px}.top-link{font-size:.78rem;margin-right:0}}

/* Realignite owner-only aggregate game popularity */
.game-popularity-track {height:5px;border-radius:5px;background:rgba(128,128,128,.22);margin-top:9px;width:min(100%,160px);overflow:hidden;}
.game-popularity-track>span {height:100%;display:block;background:#fa9a80;border-radius:5px;}

/* v1.5: deliberately lightweight, accessible social interactions */
.pending-approval {max-width:550px;margin:6vh auto;text-align:center}
.join-requests,.host-visibility{padding:1rem;margin:1rem 0;border:1px solid var(--line,#555);border-radius:16px;background:rgba(255,255,255,.035)}
.request-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:.65rem 0}
.request-row strong{margin-right:auto}
.join-requests .btn,.host-visibility .btn{min-height:44px}
.who-voters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0}
.who-voters .btn{min-height:54px;white-space:normal}
.who-result{display:flex;justify-content:space-between;gap:1rem;padding:1rem;margin:.6rem 0;border-radius:14px;background:rgba(255,255,255,.06)}
.who-winner{border:1px solid #fbbf80;background:rgba(251,191,128,.11)}
.finish-hero{text-align:center;padding:1.5rem 1rem;margin:.3rem auto 1.2rem;border-radius:18px;border:1px solid rgba(251,191,128,.35);background:radial-gradient(circle at 50% 0%,rgba(248,147,115,.14),transparent 65%)}
.finish-hero h2{font-size:clamp(1.5rem,5vw,2.5rem);margin:.7rem 0}
.finish-star{font-size:4rem;color:#ffaf88;animation:ri-star .65s ease-out both}
.finish-leaderboard{list-style:none;padding:0;margin:1rem 0}
.finish-leaderboard li{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;margin:.45rem 0;border-radius:12px;background:rgba(255,255,255,.05)}
.feedback-buttons{display:flex;gap:.5rem;flex-wrap:wrap}
.feedback-buttons button{flex:1 1 90px;min-height:44px}
@keyframes ri-star{from{transform:scale(.7) rotate(-15deg);opacity:.2}to{transform:scale(1) rotate(0);opacity:1}}
@media (prefers-reduced-motion:reduce){.finish-star{animation:none}}
@media(max-width:380px){.who-voters{grid-template-columns:1fr}}

/* v1.6: lightweight face-to-face discussion in Who Would? */
.who-discussion{margin:1rem 0 1.4rem;padding:1rem;border:1px solid rgba(241,139,152,.42);border-radius:16px;background:rgba(241,139,152,.07)}
.who-discussion h3{font-size:1.3rem;line-height:1.2;margin:.55rem 0 .75rem}
.who-discussion p{line-height:1.55}
.who-ballots{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.45rem;margin:1rem 0}
.who-ballot{display:flex;align-items:center;gap:.6rem;padding:.7rem .8rem;background:rgba(255,255,255,.06);border-radius:10px;font-size:.92rem;overflow-wrap:anywhere}
.who-ballot strong{max-width:38%;overflow-wrap:anywhere}
.who-ballot-arrow{opacity:.65}

/* Escape Together — mobile-first evidence folder. No third-party UI or images. */
.escape-mystery{display:grid;gap:16px;min-width:0}
.escape-mystery h2{font-size:clamp(1.5rem,6vw,2.2rem);margin:0}
.escape-mystery .escape-story{line-height:1.65;font-size:1rem;margin:0}
.escape-chapters{display:flex;gap:8px;align-items:center}
.escape-step{display:grid;place-items:center;flex:1;min-height:34px;border-radius:9px;background:rgba(255,255,255,.07);color:#bcc0cf;font-weight:800}
.escape-step.active{background:rgba(247,120,113,.21);color:#fff;outline:1px solid rgba(247,120,113,.5)}
.escape-divider{font-size:.75rem;letter-spacing:.07em;font-weight:800;opacity:.75}
.escape-clue{border-radius:15px;padding:18px;background:linear-gradient(115deg,rgba(238,221,191,.12),rgba(238,221,191,.04));border:1px solid rgba(238,221,191,.28)}
.escape-clue h3{font-size:1.17rem;margin:7px 0}
.escape-clue p{line-height:1.6;margin:0}
.escape-talk,.escape-hints,.escape-solve{padding:18px;border-radius:15px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.13)}
.escape-talk p,.escape-hints p,.escape-solve p{line-height:1.5}
.escape-talk small{opacity:.75}
.escape-solve h3{margin:8px 0}
#escape-answer-form{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
#escape-answer-form .field{flex:1;min-width:135px}
.escape-code{text-transform:uppercase;letter-spacing:.18em;text-align:center;font-size:1.25rem;font-weight:800}
.escape-hints button{margin-top:8px}
.escape-finish{display:grid;gap:12px;text-align:center}
@media(max-width:420px){#escape-answer-form>.btn{width:100%}}

/* Realignite v1.9: accessible mobile-first deck selector. */
.card-categories{margin:24px 0;padding:18px;border:1px solid #6b5f7b;border-radius:16px;background:#231f31}
.card-categories-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.card-category{font:inherit;text-align:left;cursor:pointer;border:2px solid #685b78;border-radius:12px;background:#1b1927;color:#fff;min-height:90px;padding:13px;display:flex;flex-direction:column;gap:6px}
.card-category strong{font-size:1rem}.card-category small{color:#c5bcce;line-height:1.35}.card-category.selected{border-color:#ff967b;background:#49303d}.card-category:disabled{opacity:.78;cursor:default}
.card-category:focus-visible{outline:3px solid #ffc48a;outline-offset:2px}
@media (max-width:500px){.card-categories-grid{grid-template-columns:1fr}}
