:root{--bg:#07111f;--panel:#0c1828;--panel2:#101f33;--line:#223652;--text:#f6f8fc;--muted:#94a6be;--blue:#3485ff;--red:#ff4b57;--green:#35d59a;--amber:#ffb84a;--shadow:0 24px 80px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0,#102746 0,transparent 28%),linear-gradient(180deg,#07111f,#08111d 55%,#060c15);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,select{font:inherit}.bg-orb{position:fixed;width:420px;height:420px;border-radius:50%;filter:blur(100px);opacity:.16;pointer-events:none}.orb-a{background:#2f7fff;left:-180px;top:120px}.orb-b{background:#ff3d6f;right:-220px;top:420px}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px max(22px,calc((100vw - 1180px)/2));background:rgba(5,13,24,.84);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.06)}.brand{display:flex;gap:12px;align-items:center;color:#fff;text-decoration:none}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;font-weight:900;letter-spacing:-1px;background:linear-gradient(145deg,#2e80ff 0 50%,#ed3044 50%);box-shadow:0 10px 28px rgba(30,105,255,.25)}.brand strong{display:block;letter-spacing:.18em;font-size:15px}.brand small{display:block;color:#8192ab;letter-spacing:.24em;font-size:9px;margin-top:3px}.header-actions{display:flex;align-items:center;gap:12px}.lang-switch{display:flex;background:#0b1727;border:1px solid #223451;border-radius:12px;padding:3px}.lang-switch button,.segmented button{border:0;color:#8fa3be;background:transparent;cursor:pointer}.lang-switch button{padding:8px 10px;border-radius:9px;font-weight:800;font-size:12px}.lang-switch button.active{background:#eef4ff;color:#0b1727}.ghost{border:1px solid #29405f;background:#0b1727;color:#d9e5f4;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}.small{font-size:13px}.app-shell{max-width:1180px;margin:0 auto;padding:70px 22px 80px}.hero{max-width:760px;margin:0 auto 44px;text-align:center}.eyebrow{display:inline-block;color:#7fb1ff;font-size:12px;letter-spacing:.2em;font-weight:900}.hero h1{font-size:clamp(40px,6vw,76px);line-height:.96;letter-spacing:-.055em;margin:18px 0 20px}.hero p{font-size:18px;line-height:1.6;color:#9cafc5;max-width:680px;margin:0 auto}.hero-badges{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:24px}.hero-badges span{border:1px solid #263b59;background:#0b1727;color:#aebed1;padding:8px 11px;border-radius:999px;font-size:12px}.builder-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(330px,.75fr);gap:24px;align-items:start}.builder-card,.preview-card,.center-card{background:linear-gradient(180deg,rgba(15,31,51,.96),rgba(9,20,34,.96));border:1px solid #203551;border-radius:28px;box-shadow:var(--shadow)}.builder-card{padding:30px}.preview-card{padding:26px;position:relative}.preview-sticky{position:sticky;top:100px}.section-heading{display:flex;gap:14px;align-items:flex-start;margin:8px 0 16px;padding-top:18px}.section-heading>span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#112743;color:#7db0ff;font-size:11px;font-weight:900}.section-heading h2{margin:0;font-size:20px}.section-heading p{margin:5px 0 0;color:#8094ad;font-size:13px}.city-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.city-card,.style-card{position:relative;border:1px solid #263b58;background:#0b1727;color:#fff;border-radius:18px;padding:16px;text-align:left;cursor:pointer;transition:.18s transform,.18s border-color,.18s background}.city-card:hover,.style-card:hover{transform:translateY(-2px);border-color:#43658f}.city-card.active,.style-card.active{border-color:#5f9eff;background:linear-gradient(180deg,#102849,#0d1d32);box-shadow:0 0 0 2px rgba(65,136,255,.12)}.city-card strong,.style-card strong{display:block;font-size:16px}.city-card small,.style-card small{display:block;color:#8397b1;margin-top:6px;line-height:1.35}.city-card .country{position:absolute;right:14px;top:14px;color:#5f7693;font-size:10px;font-weight:900;letter-spacing:.14em}.style-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.style-card .icon{font-size:20px;margin-bottom:16px;display:block}.field-row{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:12px}.field-row label{display:flex;flex-direction:column;gap:8px;color:#9eb0c8;font-size:12px;font-weight:800}.field-row input,.field-row select{width:100%;border:1px solid #29415f;background:#081422;color:#fff;border-radius:14px;padding:14px}.segmented{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;background:#081422;border:1px solid #263b58;padding:5px;border-radius:15px}.segmented button{padding:12px;border-radius:11px;font-weight:800}.segmented button.active{background:#edf4ff;color:#0a1523}.hidden{display:none!important}.create-btn{margin-top:24px;width:100%}.primary{display:flex;align-items:center;justify-content:center;gap:18px;border:0;border-radius:16px;padding:17px 20px;background:linear-gradient(135deg,#347dff,#5a58ff);color:#fff;font-weight:900;letter-spacing:.06em;cursor:pointer;box-shadow:0 18px 40px rgba(52,125,255,.22)}.privacy-note{font-size:11px;color:#71849e;text-align:center;margin:13px 0 0}.preview-card h2{font-size:34px;margin:10px 0 2px;letter-spacing:-.035em}.preview-card>div>p{color:#9fb0c5;margin-top:5px}.preview-hero{display:grid;grid-template-columns:auto 1fr 1px auto 1fr;align-items:end;gap:8px;margin:28px 0 24px}.preview-hero strong{font-size:44px;line-height:1}.preview-hero span{font-size:12px;color:#7288a3;padding-bottom:5px}.divider{height:42px;background:#253c59;margin:0 10px}.plan-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.plan-stat{border:1px solid #203550;background:#091523;border-radius:15px;padding:14px}.plan-stat small{display:block;color:#7188a5;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.plan-stat strong{display:block;font-size:20px;margin-top:4px}.plan-note{display:flex;gap:10px;background:rgba(53,213,154,.08);border:1px solid rgba(53,213,154,.28);padding:14px;border-radius:16px;margin-top:16px;color:#a8d9c8}.plan-note p{margin:0;font-size:12px;line-height:1.45}.center-view{max-width:760px;margin:60px auto}.center-card{padding:30px}.center-card h1{font-size:40px;letter-spacing:-.04em;margin:10px 0}.share-box{display:flex;gap:8px;margin:18px 0}.share-box input{flex:1;min-width:0;border:1px solid #29415f;background:#081422;color:#dce8f8;padding:13px;border-radius:13px}.team-list{display:grid;gap:10px;margin:20px 0}.team-row{border:1px solid #263a55;border-radius:15px;padding:14px;display:flex;justify-content:space-between;align-items:center}.team-row small{color:#8195ae}.join-form{display:grid;gap:12px}.join-form input,.join-form select{border:1px solid #29415f;background:#081422;color:#fff;border-radius:14px;padding:14px}.status-pill{display:inline-block;padding:7px 10px;border-radius:999px;background:#10243a;border:1px solid #29415f;color:#9bb5d3;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}footer{max-width:1180px;margin:0 auto;padding:20px 22px 40px;color:#59708c;font-size:11px;display:flex;justify-content:space-between}
@media(max-width:850px){.builder-grid{grid-template-columns:1fr}.preview-card{order:-1}.preview-sticky{position:static}.preview-card{display:none}.app-shell{padding-top:44px}.hero{text-align:left}.hero-badges{justify-content:flex-start}.hero h1{font-size:48px}.builder-card{padding:20px}.site-header{padding:14px 18px}.ghost.small{display:none}}
@media(max-width:560px){.city-grid,.style-grid{grid-template-columns:1fr}.field-row{grid-template-columns:1fr 1fr}.field-row label:first-child{grid-column:1/-1}.hero h1{font-size:42px}.hero p{font-size:16px}.app-shell{padding-left:14px;padding-right:14px}.builder-card{border-radius:22px}.brand strong{font-size:13px}.brand-mark{width:42px;height:42px}.center-card{padding:20px}.share-box{flex-direction:column}.header-actions{gap:6px}}
.success-actions{display:grid;gap:10px}.link-btn{display:flex;align-items:center;justify-content:center;text-decoration:none}.host-running{margin-top:18px;border-top:1px solid #263b58;padding-top:18px;color:#9eb0c8}.danger{border-color:#6f2d3b;color:#ffc0ca}.game-view{max-width:920px;margin:0 auto}.game-shell{display:grid;gap:18px}.game-hud{position:sticky;top:83px;z-index:12;display:flex;justify-content:space-between;align-items:center;background:rgba(9,21,35,.94);backdrop-filter:blur(18px);border:1px solid #263c59;border-radius:22px;padding:18px 20px;box-shadow:0 16px 45px rgba(0,0,0,.25)}.game-hud h1{margin:4px 0 0;font-size:34px}.game-clock{text-align:right}.game-clock small{display:block;color:#7d90a9;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.game-clock strong{display:block;font-size:25px;font-variant-numeric:tabular-nums}.online-pill{display:inline-block;margin-top:4px;color:#69e0b5;font-size:9px;font-weight:900;letter-spacing:.12em}.online-pill.offline{color:#ff8993}.scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.score-chip{background:#091523;border:1px solid #203550;border-radius:14px;padding:11px 12px;display:grid;gap:2px}.score-chip.mine{border-color:#4a8cff;background:#0d1d34}.score-chip strong{font-size:11px;letter-spacing:.08em}.score-chip span{font-size:18px;font-weight:900}.score-chip small{color:#7086a1}.mission-section{background:linear-gradient(180deg,rgba(15,31,51,.96),rgba(9,20,34,.96));border:1px solid #203551;border-radius:24px;padding:22px}.mission-heading{display:flex;gap:12px;align-items:center;margin-bottom:16px}.mission-heading>span{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#102743;color:#82b3ff;font-size:11px;font-weight:900}.mission-heading h2{margin:0;font-size:22px}.mission-heading p{margin:3px 0 0;color:#70849e;font-size:12px}.mission-grid{display:grid;gap:11px}.mission-card{background:#081422;border:1px solid #213650;border-radius:18px;padding:18px;transition:border-color .18s,opacity .18s}.mission-card.location{border-left:3px solid #f0b84d}.mission-card.final{border-left:3px solid #ba6cff}.mission-card.resolved{opacity:.62}.mission-card.locked{opacity:.65}.mission-top{display:flex;align-items:center;justify-content:space-between}.mission-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#112741;color:#8bb9ff;font-weight:900}.mission-meta{color:#7790ad;font-size:11px;font-weight:800}.mission-card h3{margin:13px 0 7px;font-size:20px}.mission-card p{margin:0;color:#a1b2c6;line-height:1.55;font-size:14px}.mission-actions{display:flex;gap:8px;margin-top:15px;align-items:center}.compact{padding:11px 13px;font-size:11px;letter-spacing:.03em;width:auto}.zone-tag{display:inline-block;margin-top:10px;padding:5px 8px;border:1px solid #263d5a;border-radius:999px;color:#7890ad;text-transform:capitalize}.resolved-label{font-size:12px;color:#8498b0;font-weight:800}.resolved-label.ok{color:#65d9af}.empty-state{color:#6d829d;font-size:13px}.finish-banner,.final-open-banner{padding:14px 16px;border-radius:15px;font-weight:900;letter-spacing:.05em}.finish-banner{background:rgba(53,213,154,.1);border:1px solid rgba(53,213,154,.35);color:#89e7c5}.final-open-banner{background:rgba(186,108,255,.1);border:1px solid rgba(186,108,255,.35);color:#d5abff}
@media(max-width:850px){.game-view{margin-top:-18px}.game-hud{top:75px}.scoreboard{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.game-hud{top:70px;border-radius:17px;padding:14px 15px}.game-hud h1{font-size:28px}.game-clock strong{font-size:22px}.mission-section{padding:16px;border-radius:20px}.mission-card{padding:15px}.mission-card h3{font-size:18px}.score-chip{padding:9px 10px}.score-chip span{font-size:16px}}
.map-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.utility-card{background:linear-gradient(180deg,rgba(15,31,51,.96),rgba(9,20,34,.96));border:1px solid #203551;border-radius:20px;padding:17px;margin-bottom:12px}.utility-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.utility-head h2{margin:5px 0 0;font-size:18px}.utility-head small{color:#7187a2}.active-effect{margin-top:12px;padding:13px;border-radius:14px;background:rgba(255,92,103,.08);border:1px solid rgba(255,92,103,.28);display:grid;gap:7px}.active-effect span{color:#c8d4e4;font-size:13px}.target-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.gps-diag{margin-top:10px;font-size:12px;color:#8197b1}.report-shell{display:grid;gap:18px}.report-hero,.timeline-card,.report-team{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;padding:22px}.report-hero h1{font-size:38px;margin:8px 0 20px}.winner-box{padding:18px;border:1px solid #315681;border-radius:17px;background:#0a1829}.winner-box small{display:block;color:#7890ad;text-transform:uppercase;font-size:10px;letter-spacing:.13em}.winner-box strong{display:block;font-size:24px;margin-top:5px}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-team h2{font-size:31px;margin:8px 0 16px}.report-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px}.report-stats>div{background:#081422;border:1px solid #213650;border-radius:14px;padding:13px}.report-stats small,.report-stats span{display:block;color:#748aa5;font-size:10px}.report-stats strong{display:block;font-size:19px;margin:3px 0}.timeline{display:grid;gap:8px;margin-top:14px}.timeline-row{display:grid;grid-template-columns:54px 1fr;gap:10px;padding:12px 0;border-bottom:1px solid #1c3049}.timeline-row:last-child{border-bottom:0}.timeline-row time{color:#7e93ad;font-weight:800;font-variant-numeric:tabular-nums}.timeline-row strong{display:block;font-size:13px}.timeline-row small{display:block;color:#7187a2;margin-top:3px}@media(max-width:650px){.report-grid{grid-template-columns:1fr}.report-stats{grid-template-columns:1fr 1fr}.utility-head{align-items:flex-start}.target-grid .ghost{flex:1}.report-hero h1{font-size:31px}}

.compact-option-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin:18px 0 9px}.compact-option-heading strong{font-size:13px}.compact-option-heading small{color:#70849e;font-size:11px;text-align:right}.session-actions{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:9px;margin-top:14px}.session-note,.auto-start-note{margin:14px 0;padding:12px 14px;border-radius:14px;background:rgba(52,133,255,.08);border:1px solid rgba(52,133,255,.25);color:#9fc0ee;font-size:12px;line-height:1.45}.progress-strip{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 14px;border:1px solid #1f354f;border-radius:14px;background:#091523;color:#8095af;font-size:12px}.progress-strip strong{color:#cbd8e8}.completion-rule{display:grid;gap:4px;margin-top:13px;padding:11px 12px;background:#0b1b2d;border-left:3px solid #3d8dff;border-radius:10px}.completion-rule small{color:#6f8eb5;font-size:9px;letter-spacing:.14em;font-weight:900}.completion-rule strong{font-size:13px;line-height:1.4;color:#dbe8f7}.bonus-tag{display:inline-block;margin-top:10px;padding:5px 8px;border-radius:999px;background:rgba(255,184,74,.1);border:1px solid rgba(255,184,74,.32);color:#ffc76d;font-size:9px;font-weight:900;letter-spacing:.08em}.final-hidden-note{padding:13px 16px;border-radius:15px;border:1px dashed #3c3150;color:#887c9d;background:rgba(186,108,255,.04);font-size:12px}.session-home>p{color:#91a5be}.builder-card .segmented+ .compact-option-heading{margin-top:20px}
@media(max-width:650px){.session-actions{grid-template-columns:1fr}.compact-option-heading{align-items:flex-start;flex-direction:column;gap:4px}.compact-option-heading small{text-align:left}.hero{margin-bottom:28px}.section-heading{padding-top:10px;margin-top:4px}.builder-card{padding-top:16px}}
.session-report-home{max-width:920px;margin:0 auto;display:grid;gap:18px}.session-report-home>.center-card{max-width:none}.finished-session{background:linear-gradient(180deg,rgba(14,39,53,.98),rgba(9,24,37,.98));border-color:rgba(53,213,154,.34)}.success-note{background:rgba(53,213,154,.08);border-color:rgba(53,213,154,.28);color:#a9e8d1}.finished-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.finished-actions:has(> :only-child){grid-template-columns:1fr}.embedded-report{margin-top:0}.report-empty p{color:#91a5be;line-height:1.5}.center-view:has(.session-report-home){max-width:920px;margin-top:32px}@media(max-width:650px){.finished-actions{grid-template-columns:1fr}.center-view:has(.session-report-home){margin-top:20px}}

/* alpha.3.2.3: active-game navigation */
.hud-right{display:flex;align-items:center;gap:14px}.session-return{white-space:nowrap}.game-hud .session-return{align-self:center}
@media(max-width:560px){.hud-right{gap:8px}.session-return{padding:9px 10px;font-size:10px}.game-clock small{font-size:9px}}

/* alpha.3.3: stability / compact play HUD */
.game-hud{padding:12px 16px;border-radius:18px;top:76px}
.game-hud h1{font-size:27px;margin-top:2px}
.game-clock strong{font-size:22px}
.hud-right{gap:10px}
.session-actions.no-host{grid-template-columns:1.25fr 1fr}
@media(max-width:560px){
  .game-hud{top:67px;padding:9px 11px;border-radius:15px}
  .game-hud h1{font-size:23px}
  .game-clock strong{font-size:19px}
  .game-clock small{font-size:8px}
  .online-pill{font-size:8px}
  .session-return{padding:8px 9px;font-size:9px}
  .session-actions.no-host{grid-template-columns:1fr}
}

/* alpha.3.3: stability / compact play HUD */
.game-hud{padding:12px 16px;border-radius:18px;top:76px}
.game-hud h1{font-size:27px;margin-top:2px}
.game-clock strong{font-size:22px}
.hud-right{gap:10px}
.session-actions.no-host{grid-template-columns:1.25fr 1fr}
@media(max-width:560px){
  .game-hud{top:67px;padding:9px 11px;border-radius:15px}
  .game-hud h1{font-size:23px}
  .game-clock strong{font-size:19px}
  .game-clock small{font-size:8px}
  .online-pill{font-size:8px}
  .session-return{padding:8px 9px;font-size:9px}
  .session-actions.no-host{grid-template-columns:1fr}
}

/* Navigation remains reachable in both waiting and running Host views. */
.lobby-navigation{margin-top:20px;padding-top:18px;border-top:1px solid #263b58}

/* ALPHA 4 — strategic Location map, richer reports and offline affordances */
.location-status{margin:9px 2px 0;color:#7890ad;font-size:12px;line-height:1.45}
.location-view-tabs{display:flex;gap:8px;margin:-2px 0 14px}.location-view-tabs .ghost.active{background:#edf4ff;color:#0a1523;border-color:#edf4ff}
.location-map{position:relative;width:100%;height:clamp(380px,58vh,620px);min-height:380px;border-radius:18px;overflow:hidden;border:1px solid #263d5a;background:#0b1625;z-index:1;contain:layout paint}.location-map .maplibregl-canvas-container,.location-map .maplibregl-canvas{width:100%;height:100%}.location-map .maplibregl-ctrl-top-right{top:8px;right:8px}.location-map .maplibregl-ctrl-group{border-radius:11px;overflow:hidden}.location-map .maplibregl-popup-content{border-radius:14px;padding:12px 13px;box-shadow:0 12px 32px #0004}.location-map .maplibregl-popup-close-button{font-size:20px;padding:3px 7px}.map-loading,.map-error{position:absolute;inset:0;display:grid;place-items:center;color:#91a6c0;font-size:12px;font-weight:800;letter-spacing:.04em}.map-error{color:#ff9a9a}
.map-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;color:#8095ae;font-size:11px;font-weight:800}
.cg-map-popup{min-width:205px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0b1624}.cg-map-popup strong{display:block;font-size:14px;line-height:1.3}.cg-map-popup small{display:block;margin-top:4px;color:#52657b;font-weight:800}.cg-map-popup p{font-size:12px;line-height:1.4;margin:8px 0;color:#33475d}.cg-map-popup span{font-size:12px;font-weight:800}.cg-map-open{width:100%;border:0;border-radius:9px;padding:9px 10px;background:#1769e0;color:#fff;font-weight:900;cursor:pointer}
.complete-task.queued,.skip-task.queued{opacity:.7}
.report-task-list{display:grid;gap:7px;margin-top:14px}.report-task-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#081422;border:1px solid #213650;border-radius:13px;padding:11px 12px}.report-task-row>div{min-width:0}.report-task-row strong{display:block;font-size:12px;line-height:1.35}.report-task-row small{display:block;margin-top:3px;color:#748aa5;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.report-task-row b{white-space:nowrap;font-size:11px;color:#68dcb2}.report-task-row.skipped b{color:#8da0b7}
@media(max-width:650px){.location-view-tabs{display:grid;grid-template-columns:1fr 1fr}.location-map{height:52vh;min-height:340px;max-height:520px}.report-task-row{align-items:flex-start}.report-task-row b{padding-top:2px}}

/* ALPHA 4.1 — finish-location controls */
.segmented-three{grid-template-columns:repeat(3,minmax(0,1fr))}.segmented-three button{font-size:11px;line-height:1.25}.finish-destination{border-left-color:#8d6bff}
@media(max-width:560px){.segmented-three{grid-template-columns:1fr}.segmented-three button{font-size:12px}}
.cg-cluster-count{background:transparent;border:0;box-shadow:none;font-weight:900;font-size:11px;color:#fff}.cg-cluster-count:before{display:none}

/* ALPHA 4.1.1 — MapLibre + OpenFreeMap */
.cg-map-special{width:30px;height:30px;border-radius:50%;border:3px solid #fff;display:grid;place-items:center;padding:0;box-shadow:0 5px 16px #0008;cursor:pointer}.cg-map-finish{background:#ffb020;color:#08111e;font-size:14px}.cg-map-user{background:#1769e0}.cg-map-user span{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px #fff4}.maplibregl-map{font:inherit}.maplibregl-ctrl-attrib{font-size:9px!important}.maplibregl-popup{z-index:8}

/* Critical MapLibre layout fallback: keeps the map usable even if CDN CSS is delayed. */
.maplibregl-map{position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.maplibregl-canvas-container{width:100%;height:100%}.maplibregl-canvas{position:absolute;left:0;top:0}.maplibregl-marker{position:absolute;left:0;top:0;will-change:transform}.maplibregl-popup{position:absolute;left:0;top:0;display:flex;will-change:transform;pointer-events:none}.maplibregl-popup-content{position:relative;background:#fff;color:#0b1624;pointer-events:auto}.maplibregl-popup-close-button{position:absolute;right:0;top:0;border:0;background:transparent;cursor:pointer}.maplibregl-control-container .maplibregl-ctrl-bottom-right{position:absolute;right:0;bottom:0;z-index:2;pointer-events:none}.maplibregl-ctrl-attrib{pointer-events:auto;background:#fffC;color:#334;padding:2px 5px}.maplibregl-ctrl-attrib a{color:inherit}.maplibregl-popup-tip{width:0;height:0;border:8px solid transparent}.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#fff}.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:#fff}.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:#fff}.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#fff}

/* ALPHA 4.1.6 — individual team finish + shared finish window */
.team-finished-card{border-color:rgba(53,213,154,.38);background:linear-gradient(180deg,rgba(13,45,45,.96),rgba(8,27,32,.96))}.team-finished-card h2{font-size:16px;line-height:1.45;color:#c8f5e4}.team-finished-card small{display:block;margin-top:8px;color:#89cdb5}.score-chip.finished-team{border-color:rgba(53,213,154,.42);background:rgba(53,213,154,.08)}.score-chip.finished-team small{color:#67d6ad;font-weight:900;letter-spacing:.04em}

/* ALPHA 4.2.0 — product/share/rules/host UX */
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.hero-actions .primary,.hero-actions .ghost{width:auto;min-width:180px}.how-strip{max-width:1180px;margin:0 auto 28px;padding:18px 0 8px}.how-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:14px}.how-title h2{max-width:650px;margin:0;font-size:clamp(22px,3vw,34px)}.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.how-grid article{background:linear-gradient(180deg,rgba(15,31,51,.94),rgba(9,20,34,.94));border:1px solid #203551;border-radius:18px;padding:16px;display:grid;gap:7px}.how-grid article>b{color:#568fe8;font-size:11px;letter-spacing:.12em}.how-grid article>strong{font-size:15px}.how-grid article>span{color:#8498b1;font-size:12px;line-height:1.45}
.session-home-stack,.join-stack,.lobby-stack{max-width:920px;margin:0 auto;display:grid;gap:16px}.session-home-stack>.center-card,.join-stack>.center-card,.lobby-stack>.center-card{max-width:none}.share-panel{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:18px;align-items:center;background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;padding:22px}.share-code-label{margin-top:14px;color:#7289a5;font-size:9px;font-weight:900;letter-spacing:.16em}.share-code{font-size:clamp(38px,8vw,66px);font-weight:950;letter-spacing:.14em;line-height:1;margin:6px 0 9px}.share-copy p{color:#90a3ba;margin:0 0 14px}.share-actions{display:flex;gap:8px;flex-wrap:wrap}.share-actions button{width:auto}.share-url{margin-top:10px;width:100%;background:#07121f;border:1px solid #213751;color:#7f94ad;border-radius:10px;padding:9px 11px;font-size:10px}.share-qr{background:#fff;border-radius:18px;padding:14px;aspect-ratio:1;display:grid;place-items:center;overflow:hidden}.share-qr svg{width:100%;height:100%;display:block}.share-qr>span{color:#07111f;font-size:25px;font-weight:900;letter-spacing:.08em}
.rules-card{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:20px;padding:0 18px}.rules-card summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 0}.rules-card summary::-webkit-details-marker{display:none}.rules-card summary span:first-child{display:grid;gap:3px}.rules-card summary b{font-size:13px}.rules-card summary small{color:#748aa4;font-size:10px}.rules-list{display:grid;gap:8px;padding:0 0 17px}.rules-list>div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;background:#081522;border:1px solid #1d334e;border-radius:12px;padding:10px 11px}.rules-list>div>b{color:#568fe8;font-size:10px}.rules-list>div>span{color:#c0cede;font-size:12px;line-height:1.45}
.gps-privacy{margin:12px 0 4px;color:#8297b0;font-size:11px;line-height:1.5;padding:10px 12px;border-radius:12px;background:#081522;border:1px solid #1e344e}
.host-dashboard{margin-top:16px;background:#081522;border:1px solid #203651;border-radius:20px;padding:16px}.host-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.host-dashboard-head h2{margin:5px 0 0;font-size:18px}.host-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.host-team-card{background:#0b1a2b;border:1px solid #223a58;border-radius:15px;padding:13px}.host-team-card.finished-team{border-color:rgba(53,213,154,.4)}.host-team-top{display:flex;justify-content:space-between;gap:12px}.host-team-top strong{font-size:14px}.host-team-top small{display:block;margin-top:4px;color:#7890aa;font-size:10px}.host-team-top>b{font-size:18px}.host-progress{height:6px;border-radius:999px;background:#06101c;overflow:hidden;margin:11px 0}.host-progress i{display:block;height:100%;background:linear-gradient(90deg,#347cff,#55d8ba);border-radius:inherit}.host-team-meta{display:grid;gap:4px;color:#91a5bd;font-size:10px}.host-player-names{margin-top:10px;padding-top:9px;border-top:1px solid #1c3048;color:#c1cedd;font-size:11px}.host-running-actions{margin-top:12px}.host-running-actions button{width:100%}
@media(max-width:700px){.how-title{display:block}.how-title .eyebrow{display:block;margin-bottom:6px}.how-grid{grid-template-columns:1fr}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .primary,.hero-actions .ghost{width:100%;min-width:0}.share-panel{grid-template-columns:1fr}.share-qr{width:min(230px,100%);justify-self:center}.host-team-grid{grid-template-columns:1fr}}
.pause-banner{padding:14px 16px;border-radius:15px;font-weight:900;letter-spacing:.04em;background:rgba(255,190,70,.1);border:1px solid rgba(255,190,70,.38);color:#ffd98c}.status-pill.paused{border-color:rgba(255,190,70,.45);color:#ffd98c;background:rgba(255,190,70,.08)}.host-running-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.host-running-actions button{width:100%}.cancelled-session{border-color:#6f2d3b}@media(max-width:640px){.host-running-actions{grid-template-columns:1fr}}

/* ALPHA 4.2.2 — offline/reconnect reliability */
.connection-status{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);z-index:120;max-width:min(92vw,520px);padding:10px 14px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.05em;box-shadow:0 10px 30px rgba(0,0,0,.35);backdrop-filter:blur(12px);pointer-events:none}.connection-status.offline{background:rgba(113,36,48,.95);border:1px solid rgba(255,112,126,.48);color:#ffd6dc}.connection-status.syncing{background:rgba(30,75,132,.96);border:1px solid rgba(92,157,255,.5);color:#dcecff}.connection-status.failed{background:rgba(123,77,22,.96);border:1px solid rgba(255,187,83,.5);color:#ffe0ad}.online-pill.syncing{color:#8ec2ff}.online-pill.failed{color:#ffc66f}.queued-label{color:#9fc7ff!important;border-color:rgba(76,140,255,.25)!important;background:rgba(41,103,205,.08)!important}.mission-card:has(.queued-label){border-color:rgba(72,138,255,.34)}
@media(max-width:560px){.connection-status{bottom:max(12px,env(safe-area-inset-bottom));font-size:10px;padding:9px 12px;max-width:calc(100vw - 24px)}}

/* ALPHA 4.2.3 — mobile UX, report polish, host/map polish */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}.map-stage{position:relative}.map-locate-btn{position:absolute;right:12px;bottom:12px;z-index:7;background:rgba(7,17,31,.92);backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(0,0,0,.28);min-height:40px}.cg-map-user{animation:cg-user-pulse 2.2s ease-out infinite}@keyframes cg-user-pulse{0%,100%{box-shadow:0 5px 16px #0008,0 0 0 0 rgba(36,125,255,.28)}50%{box-shadow:0 5px 16px #0008,0 0 0 10px rgba(36,125,255,0)}}
.host-dashboard-head small{display:block;color:#7289a4;font-size:10px;margin-top:4px}.host-team-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.host-team-state{display:inline-flex;align-items:center;min-height:20px;padding:3px 7px;border-radius:999px;border:1px solid #2b4667;background:#0a1625;color:#94a8c0;font-size:8px;font-weight:900;letter-spacing:.08em}.host-team-state.playing{border-color:rgba(52,133,255,.42);color:#9fc5ff;background:rgba(52,133,255,.08)}.host-team-state.final{border-color:rgba(186,108,255,.42);color:#dab8ff;background:rgba(186,108,255,.08)}.host-team-state.finished{border-color:rgba(53,213,154,.42);color:#9ce9cd;background:rgba(53,213,154,.08)}.host-team-state.waiting{opacity:.72}
.report-summary{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;padding:20px}.report-summary-head,.report-team-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.report-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.report-summary-grid>div,.report-breakdown-grid>div{background:#081422;border:1px solid #213650;border-radius:14px;padding:13px;min-width:0}.report-summary-grid small,.report-summary-grid span,.report-breakdown-grid small,.report-breakdown-grid span{display:block;color:#748aa5;font-size:10px}.report-summary-grid strong,.report-breakdown-grid strong{display:block;font-size:18px;margin:4px 0}.report-team-head h2{margin-bottom:10px}.report-finish-badge{display:inline-flex;align-items:center;border:1px solid rgba(53,213,154,.35);background:rgba(53,213,154,.08);color:#91e6c6;padding:7px 9px;border-radius:999px;font-size:10px;font-weight:900;font-variant-numeric:tabular-nums}.report-stats-four{grid-template-columns:repeat(4,minmax(0,1fr))}.report-breakdown{margin-top:14px}.report-subtitle{display:block;color:#8398b0;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}.report-breakdown-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.report-task-details{margin-top:14px;border-top:1px solid #1d334d;padding-top:12px}.report-task-details>summary{cursor:pointer;color:#abc0d8;font-size:11px;font-weight:900;list-style:none;padding:6px 0}.report-task-details>summary::-webkit-details-marker{display:none}.report-task-details>summary:after{content:'⌄';float:right;color:#6e87a4}.report-task-details[open]>summary:after{transform:rotate(180deg)}.report-timeline{padding:0 22px}.report-timeline>summary{display:flex;justify-content:space-between;align-items:center;gap:14px;cursor:pointer;list-style:none;padding:20px 0}.report-timeline>summary::-webkit-details-marker{display:none}.report-timeline>summary span>strong{display:block;margin-top:5px;font-size:13px}.report-timeline>summary>b{color:#8097b2}.report-timeline[open]>summary>b{transform:rotate(180deg)}.report-timeline .timeline{padding-bottom:14px}
.mission-actions{flex-wrap:wrap}.mission-actions .primary,.mission-actions .ghost{min-height:42px}.share-actions .primary,.share-actions .ghost{min-height:42px}.rules-card summary{min-height:48px}
@media(pointer:coarse){button,.ghost,.primary,.compact,.segmented button,.lang-switch button{min-height:44px}.city-card:hover,.style-card:hover{transform:none}}
@media(max-width:700px){.app-shell{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.site-header{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.report-summary-grid{grid-template-columns:1fr 1fr}.report-summary-grid>div:first-child{grid-column:1/-1}.report-stats-four{grid-template-columns:1fr 1fr}.report-breakdown-grid{grid-template-columns:repeat(3,1fr)}.report-timeline{padding:0 16px}.map-locate-btn{right:9px;bottom:9px}.cg-map-popup{min-width:min(205px,70vw)}}
@media(max-width:560px){.game-view{margin-top:-24px}.game-shell{gap:12px}.game-hud{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;top:64px;padding:10px 11px}.game-hud h1{font-size:22px;line-height:1.05}.hud-right{gap:7px}.game-clock strong{font-size:20px}.session-return{padding:8px 9px;font-size:9px;min-height:38px}.scoreboard{display:flex;overflow-x:auto;gap:7px;padding:1px 0 5px;scroll-snap-type:x proximity;scrollbar-width:none}.scoreboard::-webkit-scrollbar{display:none}.score-chip{flex:0 0:min(43vw,170px);scroll-snap-align:start}.mission-section,.utility-card{padding:14px;border-radius:18px}.mission-heading{margin-bottom:12px}.mission-heading h2{font-size:19px}.mission-card{padding:14px;border-radius:16px}.mission-card h3{font-size:17px;line-height:1.25}.mission-card p{font-size:13px}.mission-actions{display:grid;grid-template-columns:1fr 1fr}.mission-actions>*{width:100%}.mission-actions>.resolved-label{grid-column:1/-1}.mission-actions>a:only-child,.mission-actions>button:only-child{grid-column:1/-1}.location-map{height:58vh;min-height:320px;max-height:560px}.report-hero,.report-summary,.report-team{padding:17px;border-radius:20px}.report-hero h1{font-size:28px}.winner-box strong{font-size:20px}.report-summary-grid{grid-template-columns:1fr}.report-summary-grid>div:first-child{grid-column:auto}.report-stats-four{grid-template-columns:1fr 1fr}.report-breakdown-grid{grid-template-columns:1fr 1fr 1fr}.report-task-row{display:grid;grid-template-columns:minmax(0,1fr) auto}.report-task-row strong{font-size:11px}.timeline-row{grid-template-columns:44px 1fr}.share-panel{padding:17px}.host-dashboard{padding:13px}.host-team-card{padding:12px}.host-team-top>b{font-size:16px}.host-running-actions{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));z-index:9;padding:8px;background:rgba(7,17,31,.92);border:1px solid #1e344e;border-radius:16px;backdrop-filter:blur(14px)}}
@media(max-width:390px){.brand small{display:none}.brand-mark{width:38px;height:38px;border-radius:12px}.lang-switch button{padding:7px 8px}.game-hud{top:60px}.score-chip{flex-basis:46vw}.report-stats-four{grid-template-columns:1fr}.report-breakdown-grid{grid-template-columns:1fr}.mission-actions{grid-template-columns:1fr}.mission-actions>*{grid-column:1/-1}.share-code{font-size:38px}.center-card{padding:17px}}
@media(orientation:landscape) and (max-height:560px){.game-hud{position:relative;top:auto}.site-header{position:relative}.location-map{height:72vh;min-height:280px}.connection-status{bottom:8px}.app-shell{padding-top:28px}.center-view{margin-top:24px}}

/* ALPHA 5.0 — accounts + My Games */
.account-header-btn{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-shell{display:grid;gap:22px}.account-intro,.account-profile-head,.account-games-section,.account-card{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;box-shadow:var(--shadow)}.account-intro{padding:28px}.account-intro h1,.account-profile-head h1{font-size:clamp(32px,5vw,50px);letter-spacing:-.045em;margin:10px 0}.account-intro p,.account-profile-head p,.account-section-head p{color:#91a5bd;line-height:1.55;margin:0}.account-auth-grid,.account-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.account-card{padding:22px;display:grid;gap:13px}.account-card h2{margin:2px 0 8px;font-size:25px}.account-card label{display:grid;gap:7px;color:#a9bad0;font-size:12px;font-weight:800}.account-card input,.account-card select{width:100%;border:1px solid #29415f;background:#081422;color:#fff;border-radius:14px;padding:13px}.account-card small{color:#71849e;font-weight:500}.account-profile-head{padding:24px;display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.account-games-section{padding:22px}.account-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.account-section-head h2{margin:0 0 5px;font-size:24px}.account-games-list{display:grid;gap:10px}.account-game-card{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #233a57;background:#091625;border-radius:17px;padding:15px}.account-game-card h3{margin:8px 0 5px;font-size:18px}.account-game-card p{margin:0;color:#8da1ba;font-size:12px}.account-game-card small{display:block;color:#647a95;margin-top:6px}.account-game-side{display:grid;justify-items:end;gap:9px;min-width:112px}.account-game-side>b{font-size:18px}.account-game-side .primary{padding:10px 14px;min-height:40px}.account-empty{border:1px dashed #29415f;border-radius:16px;padding:28px;text-align:center;color:#7f94ae}.account-settings-grid{align-items:start}
@media(max-width:850px){.account-header-btn{display:inline-flex!important;padding:8px 10px;max-width:120px}.account-auth-grid,.account-settings-grid{grid-template-columns:1fr}.account-profile-head,.account-section-head{flex-direction:column}.account-profile-head .ghost,.account-section-head .ghost{width:100%}}
@media(max-width:560px){.account-header-btn{max-width:82px;font-size:11px}.account-intro,.account-profile-head,.account-games-section,.account-card{padding:17px;border-radius:19px}.account-game-card{align-items:flex-start}.account-game-main{min-width:0}.account-game-side{min-width:88px}.account-game-card h3{font-size:16px}.account-game-card p{line-height:1.4}.account-game-side .primary{font-size:10px;padding:9px}}

/* ALPHA 5.1+ admin entry */
.account-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.account-head-actions a{text-decoration:none}
@media(max-width:850px){.account-head-actions{width:100%}.account-head-actions>*{flex:1;text-align:center}}

/* ALPHA 5.4 Report v2 */
.report-standings,.report-highlights,.report-share-card{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;padding:20px}.report-standing-list{display:grid;gap:8px;margin-top:12px}.report-standing-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;background:#081422;border:1px solid #213650;border-radius:14px;padding:12px 13px}.report-standing-row>b{font-size:14px}.report-standing-row>strong{font-size:14px}.report-standing-row>span{font-weight:900}.report-standing-row>small{color:#7f95ae;font-variant-numeric:tabular-nums}.report-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.report-highlight-grid>div{background:#081422;border:1px solid #213650;border-radius:14px;padding:13px}.report-highlight-grid small,.report-highlight-grid span{display:block;color:#748aa5;font-size:10px}.report-highlight-grid strong{display:block;font-size:20px;margin:4px 0}.report-mini-section{margin-top:14px}.report-pace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.report-pace-grid>div{background:#081422;border:1px solid #213650;border-radius:13px;padding:11px}.report-pace-grid small{display:block;color:#748aa5;font-size:9px}.report-pace-grid strong{display:block;font-size:17px;margin-top:4px}.report-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.report-player-card{display:flex;align-items:center;gap:9px;background:#081422;border:1px solid #213650;border-radius:13px;padding:10px 11px}.report-player-card>span{width:22px;text-align:center}.report-player-card strong,.report-player-card small{display:block}.report-player-card strong{font-size:12px}.report-player-card small{color:#748aa5;font-size:9px;margin-top:3px}.report-route-wrap{margin-top:14px}.report-route-map{height:230px;border:1px solid #213650;border-radius:15px;overflow:hidden;background:#081422}.report-route-expired{margin-top:14px;border:1px dashed #314965;border-radius:13px;padding:11px 12px;color:#7f95ae;font-size:11px}.report-share-card{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.report-share-card h2{margin:5px 0 7px}.report-share-card p{max-width:560px;color:#90a4bc;line-height:1.5;margin:0}.report-share-actions{display:grid;gap:8px;min-width:min(100%,330px)}.result-share-output{display:grid;gap:8px}.result-share-output input{width:100%;background:#07111f;border:1px solid #2a425f;color:#dbe8f5;border-radius:12px;padding:11px 12px}.public-report-actions{display:flex;justify-content:center;padding-bottom:24px}.public-report-home{padding-top:8px}
@media(max-width:700px){.report-standing-row{grid-template-columns:34px minmax(0,1fr) auto}.report-standing-row>small{grid-column:2/-1}.report-highlight-grid{grid-template-columns:1fr 1fr}.report-highlight-grid>div:last-child{grid-column:1/-1}.report-share-card{display:grid}.report-share-actions{min-width:0}.report-route-map{height:200px}}
@media(max-width:480px){.report-player-grid,.report-pace-grid,.report-highlight-grid{grid-template-columns:1fr}.report-highlight-grid>div:last-child{grid-column:auto}.report-route-map{height:180px}.report-standing-row{grid-template-columns:30px minmax(0,1fr) auto;gap:8px}}

/* ALPHA 5.5 — Social / Share + team identity */
.team-theme-blue{--team-accent:#59a8ff}.team-theme-red{--team-accent:#ff6b73}.team-theme-green{--team-accent:#68d391}.team-theme-yellow{--team-accent:#f6c85f}.team-theme-purple{--team-accent:#a78bfa}.team-theme-orange{--team-accent:#fb923c}.team-theme-teal{--team-accent:#2dd4bf}.team-theme-pink{--team-accent:#f472b6}
.team-row.team-theme-blue,.team-row.team-theme-red,.team-row.team-theme-green,.team-row.team-theme-yellow,.team-row.team-theme-purple,.team-row.team-theme-orange,.team-row.team-theme-teal,.team-row.team-theme-pink,
.team-invite-card,.team-identity-card,.selected-team-banner,.host-team-card[class*="team-theme-"],.score-chip[class*="team-theme-"],.report-team[class*="team-theme-"],.report-standing-row[class*="team-theme-"]{border-color:color-mix(in srgb,var(--team-accent) 45%,#203551)}
.team-row-main,.team-identity-mini,.team-identity-preview{display:flex;align-items:center;gap:10px;min-width:0}.team-badge{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--team-accent,#59a8ff) 16%,#081422);border:1px solid color-mix(in srgb,var(--team-accent,#59a8ff) 48%,#203551);font-size:18px}.team-row-main>div{min-width:0}.team-row-main strong,.team-row-main small{display:block}.team-row-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-invite-panel,.team-identity-panel{background:linear-gradient(180deg,rgba(15,31,51,.97),rgba(9,20,34,.97));border:1px solid #203551;border-radius:24px;padding:20px;box-shadow:var(--shadow)}.team-invite-head p{margin:6px 0 0;color:#8da1ba;line-height:1.5}.team-invite-grid,.team-identity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.team-invite-card,.team-identity-card{background:#081422;border:1px solid #213650;border-radius:16px;padding:13px}.team-invite-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.team-invite-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.team-identity-card{display:grid;gap:10px}.team-identity-preview strong{font-size:15px}.team-identity-card label{display:grid;gap:6px;color:#90a4bc;font-size:10px;font-weight:800}.team-identity-card input,.team-identity-card select{width:100%;background:#07111f;border:1px solid #2b425e;color:#fff;border-radius:12px;padding:10px 11px}.team-identity-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.selected-team-banner{display:flex;align-items:center;gap:12px;margin:14px 0;padding:12px 13px;border:1px solid #29415f;border-radius:15px;background:#081422}.selected-team-banner>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--team-accent,#59a8ff) 16%,#07111f);font-size:20px}.selected-team-banner strong,.selected-team-banner small{display:block}.selected-team-banner small{margin-top:3px;color:#8196af}
.score-chip[class*="team-theme-"]{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--team-accent) 22%,transparent)}.report-team[class*="team-theme-"]{box-shadow:inset 3px 0 0 var(--team-accent)}.report-standing-row[class*="team-theme-"]>b{color:var(--team-accent)}.host-team-card[class*="team-theme-"]{box-shadow:inset 3px 0 0 var(--team-accent)}
.public-report-actions{gap:8px;flex-wrap:wrap}
@media(max-width:760px){.team-invite-grid,.team-identity-grid{grid-template-columns:1fr}.team-invite-card{align-items:flex-start}.team-invite-actions{justify-content:flex-start}.team-identity-panel,.team-invite-panel{padding:16px;border-radius:19px}}
@media(max-width:430px){.team-invite-card{display:grid}.team-invite-actions>*{flex:1}.team-identity-fields{grid-template-columns:1fr}.selected-team-banner{align-items:flex-start}}

/* ALPHA 5.6 Core Experience */
.auto-start-toggle{display:flex;align-items:flex-start;gap:10px;margin-top:12px;padding:12px 13px;border:1px solid #263d5a;border-radius:14px;color:#a8bbd2;font-size:12px;line-height:1.4}.auto-start-toggle input{margin-top:2px;accent-color:#4a8cff}.auto-start-note{margin:8px 0 0;color:#748aa5;font-size:11px}.task-hint{display:grid;gap:5px;margin-top:12px;padding:11px 12px;border:1px solid rgba(255,190,70,.3);border-radius:13px;background:rgba(255,190,70,.07)}.task-hint small{color:#ffc86a;font-weight:900}.task-hint strong{font-size:13px;line-height:1.45;color:#f3e3bf}.task-answer-wrap{display:grid;gap:6px;margin-top:12px}.task-answer-wrap span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7890ad;font-weight:900}.task-answer{width:100%;box-sizing:border-box;border:1px solid #2a405d;background:#071321;color:#eaf2ff;border-radius:12px;padding:12px 13px;min-height:44px}.task-answer:focus{outline:2px solid rgba(74,140,255,.3);border-color:#4a8cff}.map-task-sheet{position:absolute;left:10px;right:10px;bottom:10px;z-index:8;background:rgba(7,18,31,.97);border:1px solid #315072;border-radius:18px;padding:14px;box-shadow:0 18px 48px rgba(0,0,0,.42);backdrop-filter:blur(15px);display:grid;gap:12px}.map-task-sheet.hidden{display:none}.map-task-sheet small{display:block;color:#7f96b1;font-weight:900;margin-bottom:4px}.map-task-sheet strong{display:block;font-size:17px}.map-task-sheet p{margin:5px 0 0;color:#9fb2c8;font-size:12px;line-height:1.45}.map-sheet-actions{display:flex;gap:8px}.map-sheet-close{position:absolute;top:8px;right:8px;width:34px;height:34px;border:0;background:transparent;color:#9fb2c8;font-size:24px;line-height:1;cursor:pointer}.game-bottom-nav{display:none}
@media(max-width:700px){
  .game-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
  .game-bottom-nav{position:fixed;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));z-index:50;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;padding:6px;background:rgba(6,16,29,.95);border:1px solid #27415f;border-radius:17px;box-shadow:0 14px 38px rgba(0,0,0,.45);backdrop-filter:blur(16px)}
  .game-bottom-nav button{border:0;background:transparent;color:#91a6bf;min-height:49px;border-radius:12px;display:grid;place-items:center;align-content:center;gap:3px;font-size:17px;font-weight:900}.game-bottom-nav button:active{background:#102743;color:#fff}.game-bottom-nav span{display:block;font-size:8px;letter-spacing:.04em}
  .connection-status{bottom:calc(75px + env(safe-area-inset-bottom))}
  .map-task-sheet{bottom:9px;left:9px;right:9px}.map-sheet-actions>*{flex:1}.map-locate-btn{bottom:9px}
}
@media(max-width:700px){.map-locate-btn{top:9px;bottom:auto}}

/* ALPHA 5.7 — Product UX + feedback */
.hero-product{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:28px;align-items:center;margin-bottom:28px}.hero-demo{display:grid;gap:12px;justify-items:center}.demo-phone{width:min(100%,340px);background:linear-gradient(180deg,#0b1b2e,#07111f);border:1px solid #294766;border-radius:28px;padding:14px;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:rotate(1.5deg)}.demo-phone-top{display:flex;justify-content:space-between;align-items:center;color:#91a9c4;font-size:11px;margin-bottom:10px}.demo-phone-top b{color:#fff}.demo-mini-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:10px}.demo-mini-tabs span{padding:7px;border-radius:999px;background:#0c2035;color:#728ba7;text-align:center;font-size:9px;font-weight:900}.demo-mini-tabs .active{background:#1b4d7d;color:#fff}.demo-mission{border:1px solid #24425f;border-radius:18px;padding:14px;background:#0d2034}.demo-mission small{color:#7f98b3;font-size:9px}.demo-mission strong{display:block;font-size:18px;margin:6px 0}.demo-mission p{font-size:12px;line-height:1.5;color:#9fb1c5;margin:0 0 12px}.demo-mission button{width:100%;border:0;border-radius:12px;padding:11px;background:#edf4ff;color:#07111f;font-weight:900}.demo-score{display:flex;gap:7px;margin-top:10px;overflow:hidden}.demo-score span{white-space:nowrap;padding:7px 9px;background:#091727;border:1px solid #203854;border-radius:999px;font-size:9px}.demo-callout{width:min(100%,340px);display:grid;gap:3px}.demo-callout b{font-size:13px}.demo-callout span{color:#8198b2;font-size:11px;line-height:1.45}
.quick-setup-row{grid-template-columns:1fr 1fr}.quick-recommendation{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:#091827;border:1px solid #203854;border-radius:14px;padding:10px 12px;margin-top:-2px}.quick-recommendation span{font-size:9px;color:#7890aa;font-weight:900;letter-spacing:.08em}.quick-recommendation strong{font-size:11px}.advanced-options{border:1px solid #203854;border-radius:18px;background:#091827;margin:14px 0;overflow:hidden}.advanced-options>summary{list-style:none;cursor:pointer;padding:14px 15px;display:flex;align-items:center;justify-content:space-between;gap:14px}.advanced-options>summary::-webkit-details-marker{display:none}.advanced-options>summary span{display:grid;gap:3px}.advanced-options>summary small{color:#7890aa;font-size:10px}.advanced-options>summary b{color:#86a2c1}.advanced-options[open]>summary b{transform:rotate(180deg)}.advanced-options-body{padding:0 15px 15px;display:grid;gap:12px}.advanced-team-field{display:grid;gap:6px}.advanced-team-field select{width:100%}.advanced-team-field small{color:#7890aa;font-size:10px}
.experience-section,.city-showcase,.faq-section{margin:72px 0}.experience-copy{max-width:720px}.experience-copy h2{font-size:clamp(28px,4vw,44px);line-height:1.05;margin:7px 0 12px}.experience-copy p{color:#8ea3ba;line-height:1.65}.experience-grid,.city-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.experience-grid article,.city-showcase-grid article{border:1px solid #203854;background:linear-gradient(180deg,#0d1e31,#091522);border-radius:18px;padding:18px;display:grid;gap:8px}.experience-grid article>b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#142b47;color:#a9cbef}.experience-grid article span,.city-showcase-grid article span{color:#8298b1;font-size:11px;line-height:1.5}.city-showcase-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.city-showcase-grid strong{font-size:18px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.faq-grid details{border:1px solid #203854;background:#091827;border-radius:16px;padding:14px 16px}.faq-grid summary{cursor:pointer;font-weight:900}.faq-grid p{color:#8ea3ba;font-size:11px;line-height:1.55;margin-bottom:0}.footer-links{display:flex;gap:12px}.footer-links a{color:#7890aa;text-decoration:none}.footer-links a:hover{color:#fff}
.mission-feedback{display:flex;justify-content:flex-end;margin-top:10px;padding-top:9px;border-top:1px solid rgba(36,59,84,.65)}.task-report-link{border:0;background:transparent;color:#738aa5;font-size:9px;font-weight:800;cursor:pointer;padding:4px 0}.task-report-link:hover{color:#d5e6f8}.task-report-card textarea,.task-report-card select,.game-feedback-card textarea{width:100%;border:1px solid #29415f;background:#081422;color:#fff;border-radius:12px;padding:11px}.task-report-card textarea{min-height:100px;resize:vertical}.reported-task-title{display:block;background:#091827;border:1px solid #203854;border-radius:12px;padding:10px 12px;font-size:12px}.info-dialog-card{max-width:520px}.info-dialog-body{color:#a5b8cc;line-height:1.6}.hint-reveal{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;background:#101f32;border:1px solid #2a4564;border-radius:14px;padding:14px;color:#fff}.hint-reveal strong{font-size:14px;line-height:1.55}
.game-feedback-card{background:linear-gradient(180deg,rgba(15,31,51,.98),rgba(9,20,34,.98));border:1px solid #203551;border-radius:24px;padding:20px;display:grid;gap:8px}.game-feedback-card h2{margin:0;font-size:24px}.game-feedback-card>p{margin:0 0 6px;color:#8ca2ba}.game-feedback-card form{display:grid;gap:14px}.game-feedback-card label{display:grid;gap:6px;color:#a7b8cb;font-size:11px;font-weight:800}.rating-row{display:flex;gap:6px}.rating-star{border:1px solid #29415f;background:#081422;color:#526b86;width:44px;height:44px;border-radius:12px;font-size:22px;cursor:pointer}.rating-star.active{color:#ffd16d;border-color:#8e6d28;background:#2a2110}.feedback-tags{display:flex;gap:7px;flex-wrap:wrap}.feedback-tags label{display:block}.feedback-tags input{position:absolute;opacity:0;pointer-events:none}.feedback-tags span{display:inline-flex;padding:8px 10px;border:1px solid #29415f;border-radius:999px;background:#081422;color:#879db5;font-size:10px;cursor:pointer}.feedback-tags input:checked+span{border-color:#4c82c2;background:#12335a;color:#e4f1ff}.game-feedback-card textarea{min-height:110px;resize:vertical}.feedback-saved{color:#78cdaa}.hero-actions .active{box-shadow:0 0 0 2px rgba(109,174,255,.25)}
@media(max-width:980px){.hero-product{grid-template-columns:1fr}.hero-demo{justify-items:start}.demo-phone,.demo-callout{width:min(100%,420px)}.city-showcase-grid{grid-template-columns:1fr 1fr}.experience-grid{grid-template-columns:1fr 1fr}.experience-grid article:last-child{grid-column:1/-1}}
@media(max-width:650px){.hero-product{gap:18px}.hero-demo{justify-items:center}.demo-phone{transform:none}.experience-section,.city-showcase,.faq-section{margin:46px 0}.experience-grid,.city-showcase-grid,.faq-grid{grid-template-columns:1fr}.experience-grid article:last-child{grid-column:auto}.quick-setup-row{grid-template-columns:1fr 1fr}.footer-links{order:3;width:100%;justify-content:center}.mission-feedback{justify-content:flex-start}.game-feedback-card{padding:16px;border-radius:19px}.rating-row{justify-content:space-between}.rating-star{flex:1;max-width:56px}}


/* ALPHA 5.8.1 — shared modal/dialog hotfix */
.join-code-modal{position:fixed;inset:0;z-index:1000;display:none;place-items:center;padding:20px;overflow-y:auto;overscroll-behavior:contain}
.join-code-modal.open{display:grid}
.join-code-backdrop{position:absolute;inset:0;background:rgba(2,8,16,.78);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.join-code-card{position:relative;z-index:1;width:min(100%,500px);max-height:calc(100dvh - 40px);overflow:auto;display:grid;gap:14px;background:linear-gradient(180deg,rgba(15,31,51,.995),rgba(8,18,31,.995));border:1px solid #29425f;border-radius:24px;padding:24px;box-shadow:0 30px 100px rgba(0,0,0,.62)}
.join-code-card h2{margin:0;font-size:clamp(24px,5vw,34px);line-height:1.05;letter-spacing:-.035em}
.join-code-card>p{margin:0;color:#91a6bd;line-height:1.55;font-size:13px}
.join-code-card label{display:grid;gap:7px;color:#a7b8cb;font-size:11px;font-weight:800}
.join-code-card input,.join-code-card select,.join-code-card textarea{width:100%;min-width:0;border:1px solid #29415f;background:#081422;color:#fff;border-radius:13px;padding:13px 14px;outline:none}
.join-code-card input:focus,.join-code-card select:focus,.join-code-card textarea:focus{border-color:#5f9eff;box-shadow:0 0 0 3px rgba(52,133,255,.14)}
.join-code-card input.invalid{border-color:#ff6470;box-shadow:0 0 0 3px rgba(255,75,87,.12)}
.join-code-card .primary{width:100%;margin-top:2px}
.join-code-close{position:absolute;top:14px;right:14px;z-index:2;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #29415f;border-radius:50%;background:#0b1727;color:#aebed1;font-size:22px;line-height:1;cursor:pointer}
.join-code-close:hover{border-color:#496b93;color:#fff;background:#102139}
#joinCodeForm{max-width:460px}
#joinCodeInput{text-transform:uppercase;letter-spacing:.24em;text-align:center;font-size:22px;font-weight:900;font-variant-numeric:tabular-nums}
.task-report-card{max-width:560px}
.info-dialog-card{max-width:520px}
body:has(.join-code-modal.open){overflow:hidden}
@media(max-width:600px){.join-code-modal{padding:10px;align-items:end}.join-code-card{width:100%;max-height:calc(100dvh - 10px);border-radius:22px 22px 14px 14px;padding:20px 16px 16px;gap:12px}.join-code-close{top:11px;right:11px}.join-code-card h2{padding-right:38px}.task-report-card textarea{min-height:92px}}

/* ALPHA 5.7 informational / legal pages */
.legal-shell{width:min(920px,calc(100% - 32px));margin:0 auto;padding:64px 0 96px;display:grid;gap:18px}
.legal-hero,.legal-card,.legal-note{border:1px solid rgba(255,255,255,.09);background:rgba(8,20,36,.82);backdrop-filter:blur(16px);border-radius:22px;padding:26px}
.legal-hero h1{font-size:clamp(2rem,6vw,4rem);line-height:1;margin:.35em 0 .25em}.legal-hero p,.legal-card p{color:var(--muted);line-height:1.65}.legal-card h2{margin:0 0 8px;font-size:1.15rem}.legal-note{font-size:.92rem;color:var(--muted)}
@media(max-width:600px){.legal-shell{width:min(100% - 20px,920px);padding:30px 0 78px}.legal-hero,.legal-card,.legal-note{padding:20px;border-radius:18px}}

/* ALPHA 5.8 — content & story engine */
.advanced-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:4px 0 18px}.advanced-preset-grid label{display:flex;flex-direction:column;gap:7px}.advanced-preset-grid label>span{font-weight:800}.advanced-preset-grid small{color:var(--muted,#78818d);line-height:1.35}.advanced-preset-grid select,.interaction-effect-select select{width:100%;min-height:44px;border:1px solid rgba(127,127,127,.22);border-radius:12px;background:var(--surface,#fff);color:inherit;padding:0 12px;font:inherit}.task-access-line{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.task-access-line span{display:inline-flex;align-items:center;border:1px solid rgba(127,127,127,.2);border-radius:999px;padding:5px 8px;font-size:.76rem;font-weight:750;letter-spacing:.01em}.fun-card-tag{border-style:dashed}.interaction-effect-select{display:flex;flex-direction:column;gap:7px;margin:12px 0}.interaction-effect-select>span{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.story-reveal{display:grid;gap:10px}.story-reveal>span{font-size:.75rem;font-weight:900;letter-spacing:.1em}.story-reveal p{margin:0;line-height:1.6;font-size:1rem}@media(max-width:680px){.advanced-preset-grid{grid-template-columns:1fr}}

/* ALPHA 5.11 — unified PLAYER / HOST gameplay */
.game-mode-tabs{position:sticky;top:8px;z-index:24;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0 18px;padding:5px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(16px)}
.game-mode-tabs button{border:0;border-radius:11px;padding:12px 14px;background:transparent;color:var(--muted);font-weight:900;letter-spacing:.06em;cursor:pointer}.game-mode-tabs button.active{background:var(--text);color:var(--bg)}
.curse-engine{border-color:color-mix(in srgb,#b84cff 38%,var(--line))}.curse-engine h2{margin:.2rem 0}.active-curse{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px;border:1px solid color-mix(in srgb,#ff526b 45%,var(--line));border-radius:16px;background:color-mix(in srgb,#ff526b 8%,var(--panel));margin-top:12px}.active-curse h3{margin:4px 0}.active-curse p{margin:6px 0 8px}.curse-actions{display:flex;gap:8px;flex-wrap:wrap}.curse-hand{margin-top:16px;display:grid;gap:10px}.curse-hand-title{display:flex;align-items:center;justify-content:space-between}.curse-card{padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--panel-2)}.curse-card-head{display:flex;justify-content:space-between;gap:12px}.curse-card p{margin:8px 0;color:var(--muted)}.curse-send-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}.curse-send-row select{min-width:0}
.timed-task-card{border-color:color-mix(in srgb,#ffb347 44%,var(--line))}.timed-flow{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:10px 0;font-size:.72rem;color:var(--muted)}.timed-flow span{padding:4px 7px;border:1px solid var(--line);border-radius:999px}.timed-status{display:inline-flex;flex-direction:column;min-width:128px;padding:8px 11px;border-radius:12px;border:1px solid var(--line)}.timed-status strong{font-size:1.15rem}.timed-status.active{background:color-mix(in srgb,#ffb347 10%,var(--panel))}.timed-status.proof{background:color-mix(in srgb,#5ad68a 10%,var(--panel))}.timed-status.failed{background:color-mix(in srgb,#ff526b 10%,var(--panel))}.paid-veto{border-style:dashed}
.mandatory-panel{border-color:color-mix(in srgb,#ffd65a 38%,var(--line))}.mandatory-list{display:grid;gap:10px;margin-top:12px}.mandatory-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:13px;background:var(--panel-2)}.mandatory-card p{margin:5px 0;color:var(--muted)}.mandatory-card>div:last-child{display:grid;gap:7px;text-align:right}.mandatory-card.completed{opacity:.72}.mandatory-card.failed{border-color:color-mix(in srgb,#ff526b 45%,var(--line))}
.gm-panel{display:grid;gap:14px}.gm-card{border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--panel)}.gm-card h2{margin:0 0 12px}.gm-warning{border-color:color-mix(in srgb,#ffd65a 45%,var(--line));background:color-mix(in srgb,#ffd65a 6%,var(--panel))}.gm-warning p{margin:8px 0 0;color:var(--muted)}.gm-toolbar{display:flex;gap:8px;flex-wrap:wrap}.gm-toolbar button,.gm-row button{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:10px;padding:8px 10px;font-weight:800;cursor:pointer}.gm-toolbar button.active{outline:2px solid #ffd65a}.gm-toolbar .danger,.gm-row .danger{border-color:color-mix(in srgb,#ff526b 50%,var(--line));color:#ff8899}.gm-team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.gm-team-card{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.gm-team-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.gm-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:7px}.gm-row>span:first-child{min-width:40px;font-weight:800}.gm-active-row,.gm-history-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.gm-active-row:last-child,.gm-history-row:last-child{border-bottom:0}.gm-active-row span,.gm-history-row small{display:block;color:var(--muted);margin-top:3px}.gm-history-row.reverted{opacity:.55;text-decoration:line-through}.gm-mandatory-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gm-mandatory-form label{display:grid;gap:5px;color:var(--muted);font-size:.82rem}.gm-mandatory-form .gm-wide{grid-column:span 2}.gm-mandatory-form input,.gm-mandatory-form select,.gm-mandatory-form textarea{width:100%}.gm-mandatory-form textarea{min-height:80px;resize:vertical}
.report-memories{border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--panel)}.report-memory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.report-memory-card{padding:13px;border-radius:14px;border:1px solid var(--line);background:var(--panel-2)}.report-memory-card strong{display:block;font-size:1.05rem;margin-top:4px}
@media(max-width:720px){.game-mode-tabs{top:4px}.active-curse,.mandatory-card,.gm-active-row,.gm-history-row{flex-direction:column}.curse-send-row{grid-template-columns:1fr}.gm-mandatory-form{grid-template-columns:1fr 1fr}.gm-mandatory-form .gm-wide{grid-column:1/-1}.gm-toolbar button{flex:1 1 auto}.gm-team-grid{grid-template-columns:1fr}}

/* 5.11.1 — lobby and gameplay dashboard UX */
.session-home-stack{max-width:1040px}
.session-home-v2{padding:30px;overflow:hidden}
.session-home-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.session-home-top h1{font-size:clamp(42px,7vw,68px);line-height:.96;margin:14px 0 12px;letter-spacing:-.055em}
.session-home-top p{margin:0;color:var(--muted)}
.session-home-top .status-pill{margin-top:4px;white-space:nowrap}
.session-lobby-status,.session-state-banner{margin:24px 0 18px;border:1px solid #2a4770;border-radius:20px;background:linear-gradient(145deg,rgba(37,107,214,.12),rgba(10,25,43,.72));padding:18px}
.session-state-banner.running{border-color:rgba(70,210,156,.28);background:rgba(70,210,156,.07)}
.session-lobby-copy,.session-state-banner>div{display:flex;align-items:center;gap:14px}
.session-state-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:14px;background:rgba(76,143,255,.16);border:1px solid rgba(76,143,255,.3);font-weight:950;color:#9fc5ff}
.session-lobby-copy strong,.session-state-banner strong{display:block;font-size:17px;color:#edf5ff}
.session-lobby-copy small,.session-state-banner small{display:block;margin-top:4px;color:#8ea5bf;line-height:1.45}
.session-lobby-progress{height:7px;border-radius:99px;overflow:hidden;background:#071523;margin:16px 0}
.session-lobby-progress span{height:100%;display:block;background:linear-gradient(90deg,#347dff,#655dff);border-radius:inherit;transition:width .25s ease}
.session-team-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.session-team-chip{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;align-items:center;padding:12px 13px;border:1px solid #213b5c;border-radius:14px;background:rgba(5,18,32,.58)}
.session-team-chip>div{display:flex;align-items:center;gap:7px;min-width:0}.session-team-chip strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-team-chip small{grid-column:1/2;color:#7990ab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-team-chip b{grid-column:2;grid-row:1/3;color:#b8cae1;font-size:12px}
.session-actions-v2{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(180px,1fr) minmax(170px,.85fr) auto;gap:10px;align-items:stretch;margin-top:16px}
.session-actions-v2 button{min-height:58px}.session-main-cta{font-size:14px}.session-host-link{color:#9fb1c8;background:#091624}.session-new-game{padding-inline:15px}
#sessionInvitePanel{scroll-margin-top:100px}

.game-view{max-width:1120px}
.game-overview-dashboard{display:grid;gap:10px;padding:14px;border:1px solid #28415f;border-radius:20px;background:linear-gradient(180deg,rgba(11,28,47,.96),rgba(7,19,33,.96));box-shadow:0 14px 34px rgba(0,0,0,.16)}
.dashboard-team-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.dashboard-team{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:10px 12px;border-radius:13px;border:1px solid #253b58;background:#081522}
.dashboard-team.mine{border-color:#4a8cff;background:#0d1d34;box-shadow:inset 0 0 0 1px rgba(74,140,255,.1)}
.dashboard-team span{font-size:11px;font-weight:900;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-team strong{font-size:17px}.dashboard-team small{grid-column:1/-1;color:#7287a0;font-size:10px}
.dashboard-stat-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}
.dashboard-stat{min-width:0;padding:10px;border-radius:12px;border:1px solid #203651;background:#091624;text-align:center}
.dashboard-stat small{display:block;color:#7289a5;font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-stat strong{display:block;margin-top:5px;font-size:18px;color:#eff6ff;font-variant-numeric:tabular-nums}
.dashboard-foot{display:flex;gap:8px 16px;align-items:center;flex-wrap:wrap;padding:2px 3px;color:#8198b4;font-size:10px}.dashboard-foot span:first-child{color:#c4d4e7;font-weight:800}

.curse-engine .utility-head h2{font-size:22px}.curse-card-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:9px;color:#8095ad;font-size:11px}.curse-send-row{align-items:end}
.curse-target-fixed,.curse-target-select{min-height:57px;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:8px 11px;border:1px solid #29415f;border-radius:12px;background:#071522}
.curse-target-fixed small,.curse-target-select>span{color:#7289a4;font-size:9px;font-weight:900;letter-spacing:.11em}.curse-target-fixed strong{font-size:13px}.curse-target-fixed span{font-size:10px;color:#f0b0bb}.curse-target-fixed.blocked{border-color:#5a3040;background:rgba(130,42,64,.08)}
.curse-target-select select{border:0!important;background:transparent!important;padding:3px 0!important;color:#eef5ff!important;outline:0}
.curse-send-row .send-curse{min-height:57px;white-space:nowrap}.send-curse:disabled{opacity:.43;cursor:not-allowed;box-shadow:none}

@media(max-width:920px){.session-actions-v2{grid-template-columns:1fr 1fr}.session-main-cta{grid-column:1/-1}.dashboard-stat-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:620px){.session-home-v2{padding:18px}.session-home-top{display:block}.session-home-top .status-pill{margin-top:12px}.session-home-top h1{font-size:46px}.session-actions-v2{grid-template-columns:1fr}.session-main-cta{grid-column:auto}.session-actions-v2 button{min-height:52px}.session-team-status{grid-template-columns:1fr}.game-overview-dashboard{padding:10px;border-radius:17px}.dashboard-team-strip{display:flex;overflow-x:auto;scrollbar-width:none}.dashboard-team-strip::-webkit-scrollbar{display:none}.dashboard-team{flex:0 0 44vw;min-width:145px}.dashboard-stat-grid{grid-template-columns:repeat(4,1fr)}.dashboard-stat{padding:8px 5px}.dashboard-stat small{font-size:8px}.dashboard-stat strong{font-size:16px}.dashboard-foot{display:grid;grid-template-columns:1fr;gap:5px}.curse-card{padding:13px}.curse-send-row{grid-template-columns:1fr}.curse-send-row .send-curse{width:100%}}
@media(max-width:380px){.dashboard-stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-team{flex-basis:58vw}}

/* ALPHA 5.11.2 — unified game setup */
.setup-shell{margin:28px 0 52px;background:linear-gradient(180deg,rgba(15,31,51,.98),rgba(8,18,31,.98));border:1px solid #243a58;border-radius:30px;box-shadow:var(--shadow);overflow:hidden;scroll-margin-top:92px}.setup-topbar{padding:26px 28px 20px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid #1e334d;background:linear-gradient(135deg,rgba(51,125,255,.08),transparent 46%)}.setup-topbar h2{font-size:30px;letter-spacing:-.035em;margin:7px 0 5px}.setup-topbar p{margin:0;color:#8da2bc;max-width:700px;line-height:1.5;font-size:13px}.setup-menu{display:flex;gap:6px;padding:5px;background:#071422;border:1px solid #263d5c;border-radius:15px;flex:none}.setup-menu button{border:0;background:transparent;color:#7890ad;border-radius:11px;padding:10px 12px;font-size:10px;font-weight:900;letter-spacing:.08em;cursor:pointer}.setup-menu button.active,.setup-menu button:hover{background:#e9f2ff;color:#081423}.setup-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start}.setup-form{padding:8px 28px 28px}.setup-section{padding:20px 0 28px;border-bottom:1px solid #1c3048;scroll-margin-top:96px}.setup-section:last-child{border-bottom:0;padding-bottom:6px}.setup-subheading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:24px 0 10px}.setup-subheading strong{font-size:15px}.setup-subheading small{max-width:460px;text-align:right;color:#7187a3;font-size:11px;line-height:1.45}.setup-slider-grid{display:grid;grid-template-columns:1fr 1fr .8fr;gap:12px}.range-field,.duration-field{position:relative;display:grid;gap:10px;padding:15px;border:1px solid #263d5a;background:#081523;border-radius:17px;color:#a2b4ca;font-size:11px;font-weight:800}.range-field-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.range-field output{display:grid;place-items:center;min-width:42px;height:34px;padding:0 10px;border-radius:11px;background:#eaf2ff;color:#0a1727;font-size:18px;font-weight:950}.range-field input[type=range]{width:100%;accent-color:#4a83ff;cursor:pointer}.range-scale{display:flex;justify-content:space-between;color:#5f7691;font-size:9px;font-weight:700}.range-auto{justify-self:start;border:1px solid #2a4467;background:#0b1b2e;color:#7f96b3;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:900;cursor:pointer}.range-auto.active{border-color:#347dff;background:rgba(52,125,255,.15);color:#94baff}.duration-field select{width:100%;border:1px solid #29415f;background:#07131f;color:#fff;border-radius:13px;padding:13px}.team-distribution{display:flex;align-items:center;gap:12px;margin-top:12px;padding:11px 13px;border:1px solid #203752;background:#091827;border-radius:15px}.team-distribution>span{color:#7187a2;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.team-distribution>div{display:flex;gap:7px;flex-wrap:wrap}.team-distribution b{display:flex;align-items:center;gap:7px;border:1px solid #29415f;background:#0d1d31;border-radius:999px;padding:6px 9px;color:#dce9f8;font-size:11px}.team-distribution b small{color:#8498b2;font-weight:700}.setup-summary{position:sticky;top:88px;margin:24px 24px 24px 0;padding:22px;border:1px solid #28415f;border-radius:22px;background:linear-gradient(180deg,#0d1f34,#091726);box-shadow:0 18px 50px rgba(0,0,0,.18)}.setup-summary h2{font-size:30px;margin:9px 0 2px;letter-spacing:-.04em}.setup-summary>p{color:#91a5bd;margin:0 0 20px}.setup-summary-numbers{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}.setup-summary-numbers>div{display:grid;grid-template-columns:auto 1fr;align-items:end;gap:7px;border:1px solid #213956;background:#081523;border-radius:15px;padding:13px}.setup-summary-numbers strong{font-size:30px;line-height:.9}.setup-summary-numbers span{color:#7188a4;font-size:10px;padding-bottom:2px}.curse-setup-preview{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;align-items:center;margin-top:12px;padding:13px;border-radius:15px;border:1px solid rgba(158,91,255,.32);background:rgba(113,64,194,.09)}.curse-setup-preview span{grid-row:1/3;color:#a98bda;font-size:10px;font-weight:900;letter-spacing:.06em}.curse-setup-preview strong{font-size:13px}.curse-setup-preview small{color:#7e91aa;font-size:10px}.setup-summary .create-btn{margin-top:18px}.setup-summary .privacy-note{text-align:left}.setup-summary .plan-stats{grid-template-columns:1fr 1fr}.setup-summary .plan-note{margin-top:12px}.setup-shell .advanced-preset-grid{margin-top:4px}.setup-shell .quick-recommendation{margin-top:10px}.setup-shell .section-heading{padding-top:0}.setup-shell .style-card:after{content:'☠';position:absolute;right:14px;bottom:12px;color:#795ba3;font-size:12px;opacity:.68}.setup-shell .style-card.active:after{color:#bda0ff;opacity:1}
@media(max-width:950px){.setup-layout{grid-template-columns:1fr}.setup-summary{position:static;margin:0 22px 24px}.setup-topbar{align-items:flex-start;flex-direction:column}.setup-menu{width:100%;overflow:auto}.setup-menu button{flex:1;min-width:max-content}.setup-slider-grid{grid-template-columns:1fr 1fr}.duration-field{grid-column:1/-1}}
@media(max-width:650px){.setup-shell{margin-left:-2px;margin-right:-2px;border-radius:22px}.setup-topbar{padding:20px 17px 16px}.setup-topbar h2{font-size:25px}.setup-form{padding:4px 17px 18px}.setup-summary{margin:0 12px 14px;padding:17px}.setup-slider-grid{grid-template-columns:1fr}.duration-field{grid-column:auto}.setup-subheading{align-items:flex-start;flex-direction:column;gap:5px}.setup-subheading small{text-align:left}.setup-menu button{padding:9px 10px;font-size:9px}.team-distribution{align-items:flex-start;flex-direction:column}.setup-summary-numbers strong{font-size:25px}.hero-product{margin-bottom:24px}}

/* ALPHA 5.11.3 — separate landing + vertical Create CityGame wizard */
.create-page{max-width:980px;margin:0 auto;padding-top:18px}.create-page-head{max-width:760px;margin:26px 0 28px}.create-page-head h1{font-size:clamp(38px,6vw,68px);line-height:.96;letter-spacing:-.055em;margin:12px 0 14px}.create-page-head p{max-width:680px;color:#8ea3ba;font-size:14px;line-height:1.6;margin:0}.create-back{display:inline-flex;align-items:center;gap:8px;color:#86a4c8;text-decoration:none;font-size:10px;font-weight:950;letter-spacing:.1em;margin-bottom:24px}.create-back:hover{color:#fff}.wizard-form{display:grid;gap:14px}.wizard-step{background:linear-gradient(180deg,rgba(14,30,49,.98),rgba(8,18,31,.98));border:1px solid #243a58;border-radius:24px;padding:24px 26px;box-shadow:0 16px 45px rgba(0,0,0,.11);scroll-margin-top:88px}.wizard-step-head{display:grid;grid-template-columns:50px 1fr;gap:14px;align-items:start;margin-bottom:18px}.wizard-step-head>span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#0a1726;border:1px solid #2a4466;color:#7fb0ff;font-weight:950;font-size:12px}.wizard-step-head h2{font-size:22px;letter-spacing:-.025em;margin:1px 0 5px}.wizard-step-head p{color:#8095ae;margin:0;font-size:11px;line-height:1.5}.wizard-range-field{display:grid;gap:18px;background:#081523;border:1px solid #263d5a;border-radius:19px;padding:20px}.wizard-range-value{display:flex;align-items:center;gap:10px}.wizard-range-value strong{font-size:42px;line-height:.9;letter-spacing:-.045em;color:#f4f8ff}.wizard-range-value>span{color:#7f94ad;font-size:12px;font-weight:800}.wizard-range-value .range-auto{margin-left:auto}.wizard-range-field input[type=range]{width:100%;accent-color:#4a83ff;cursor:pointer;height:8px}.wizard-choice-grid{display:grid;gap:10px}.wizard-choice-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-choice-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.duration-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.wizard-choice-grid>button{position:relative;display:grid;gap:6px;min-height:86px;text-align:left;padding:16px 17px;border-radius:17px;border:1px solid #28415f;background:#081523;color:#dfeaf7;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}.wizard-choice-grid>button:hover{border-color:#4675ad;transform:translateY(-1px)}.wizard-choice-grid>button.active{border-color:#4c86ff;background:linear-gradient(135deg,rgba(54,126,255,.19),rgba(103,83,255,.10));box-shadow:inset 0 0 0 1px rgba(76,134,255,.18)}.wizard-choice-grid>button.active:after{content:'✓';position:absolute;right:13px;top:12px;width:22px;height:22px;border-radius:999px;display:grid;place-items:center;background:#e8f1ff;color:#091625;font-size:11px;font-weight:950}.wizard-choice-grid strong{font-size:14px;padding-right:20px}.wizard-choice-grid small{color:#7890aa;font-size:10px;line-height:1.45}.wizard-choice-grid>button.active small{color:#9db4d0}.wizard-step .city-grid,.wizard-step .style-grid{margin-top:0}.wizard-step .location-status{margin:12px 2px 0}.wizard-step .team-distribution{margin-top:13px}.wizard-step .quick-recommendation{margin:9px 0 0}.wizard-summary{margin:14px 0 54px;padding:28px;border:1px solid #31527b;border-radius:26px;background:linear-gradient(135deg,#102746,#0b192a 60%);box-shadow:0 22px 65px rgba(0,0,0,.23)}.wizard-summary-head h2{font-size:clamp(30px,5vw,48px);margin:9px 0 3px;letter-spacing:-.045em}.wizard-summary-head p{margin:0 0 20px;color:#9aacc0}.wizard-summary .setup-summary-numbers{max-width:520px}.wizard-summary .plan-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:12px}.wizard-summary .curse-setup-preview{max-width:620px}.wizard-summary .plan-note{max-width:680px;margin:14px 0}.wizard-summary .create-btn{width:100%;margin-top:20px;min-height:58px;font-size:15px}.wizard-summary .privacy-note{text-align:center;margin:12px auto 0;max-width:680px}.landing-cta{margin:70px 0;padding:34px;border:1px solid #294461;border-radius:26px;background:linear-gradient(135deg,rgba(50,123,255,.12),rgba(102,78,235,.07));text-align:center}.landing-cta h2{font-size:clamp(28px,4vw,44px);margin:8px auto 20px;max-width:700px;letter-spacing:-.035em}.landing-cta>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.landing-hero{margin-bottom:28px}
@media(max-width:900px){.duration-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wizard-summary .plan-stats{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.create-page{padding-top:4px}.create-page-head{margin:18px 2px 22px}.create-page-head h1{font-size:40px}.wizard-form{gap:10px}.wizard-step{padding:18px 15px;border-radius:20px}.wizard-step-head{grid-template-columns:40px 1fr;gap:10px;margin-bottom:14px}.wizard-step-head>span{width:34px;height:34px;border-radius:11px;font-size:10px}.wizard-step-head h2{font-size:19px}.wizard-choice-grid.two,.wizard-choice-grid.three,.duration-choice-grid{grid-template-columns:1fr}.wizard-choice-grid>button{min-height:72px}.wizard-range-value strong{font-size:34px}.wizard-summary{padding:20px 15px;border-radius:21px;margin-bottom:36px}.wizard-summary .plan-stats{grid-template-columns:1fr 1fr}.landing-cta{margin:46px 0;padding:24px 16px}.landing-cta>div{display:grid}.landing-cta button{width:100%}}

/* ALPHA 5.11.4 — lobby action hierarchy + tactics state UX */
.session-actions-v2{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.session-actions-v2 .session-main-cta{grid-column:1/-1;min-height:68px;font-size:15px}
.session-actions-v2 .session-host-link,.session-actions-v2 .session-new-game,.session-actions-v2 #invitePlayers{min-height:54px}
.tactics-resource-line{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 4px}
.tactics-resource-line span{display:inline-flex;align-items:center;gap:5px;padding:8px 11px;border:1px solid #29415f;border-radius:999px;background:#081522;color:#91a6be;font-size:11px;font-weight:800}
.tactics-resource-line b{color:#f0f6ff;font-size:14px}
.tactics-locked{border-color:#30445d;background:linear-gradient(180deg,rgba(14,30,49,.96),rgba(8,18,31,.96))}
.tactics-state-note{margin-top:14px;padding:14px 16px;border:1px dashed #36506e;border-radius:14px;background:#081624;color:#8fa6bf;font-size:12px;font-weight:850}
@media(max-width:920px){.session-actions-v2{grid-template-columns:1fr 1fr}.session-actions-v2 .session-main-cta{grid-column:1/-1}.session-actions-v2 .session-new-game{grid-column:1/-1}}
@media(max-width:620px){.session-actions-v2{grid-template-columns:1fr}.session-actions-v2 .session-main-cta,.session-actions-v2 .session-new-game{grid-column:auto}.tactics-resource-line{gap:6px}.tactics-resource-line span{padding:7px 9px;font-size:10px}}

/* 5.12.0 Gameplay consolidation */
.game-focus-panel{display:grid;gap:10px;margin:12px 0 14px}.game-focus-head{display:flex;justify-content:space-between;gap:12px;align-items:end;padding:0 2px}.game-focus-head small{color:var(--muted)}
.focus-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,var(--panel),var(--panel-2));box-shadow:0 12px 28px rgba(0,0,0,.14)}.focus-card.timed-focus{border-color:color-mix(in srgb,#ffb347 55%,var(--line))}.focus-card.curse-focus{border-color:color-mix(in srgb,#b84cff 55%,var(--line))}.focus-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--panel-2);font-size:22px}.focus-main h3{margin:3px 0 5px;font-size:20px}.focus-main p{margin:0;color:var(--muted)}.focus-side{display:grid;justify-items:end;gap:9px;min-width:155px}.focus-side>strong{font-size:27px;font-variant-numeric:tabular-nums}.focus-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.focus-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.focus-tags span{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}
.timed-stage-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:7px;margin:11px 0}.timed-stage{display:grid;justify-items:center;gap:4px;min-width:58px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.timed-stage b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;border:1px solid var(--line);background:var(--panel-2);font-size:11px}.timed-stage-track>i{height:2px;background:var(--line);border-radius:999px}.timed-stage.done b{background:#1d6b4d;border-color:#399d73;color:white}.timed-stage.current b{outline:2px solid #ffb347;outline-offset:2px}.timed-stage.failed b{outline-color:#ff526b}.timed-flow-help{margin:8px 0 12px;padding:9px 11px;border-radius:11px;background:rgba(255,179,71,.07);color:var(--muted);font-size:12px}.timed-state-copy{display:grid;gap:2px;min-width:210px;padding:8px 10px;border-left:3px solid #ffb347;color:var(--muted)}.timed-state-copy b{color:var(--text)}.timed-state-copy.success{border-left-color:#5ad68a}.timed-state-copy.failed{border-left-color:#ff526b}
.gm-cockpit{display:grid;gap:14px;border:1px solid #315173;border-radius:22px;padding:18px;background:linear-gradient(180deg,rgba(13,31,52,.98),rgba(8,20,34,.98));box-shadow:0 16px 36px rgba(0,0,0,.18)}.gm-cockpit-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.gm-cockpit-head h2{margin:4px 0;font-size:25px}.gm-cockpit-head p{margin:0;color:var(--muted)}.gm-state-pill{padding:8px 11px;border:1px solid #2c6c55;border-radius:999px;color:#8de0b7;font-weight:900;font-size:11px;letter-spacing:.08em}.gm-state-pill.paused{border-color:#8c6b2f;color:#ffd27a}.gm-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.gm-status-grid>div{padding:11px;border:1px solid var(--line);border-radius:13px;background:var(--panel-2)}.gm-status-grid small{display:block;color:var(--muted);font-size:9px;letter-spacing:.06em}.gm-status-grid strong{display:block;margin-top:4px;font-size:20px}.gm-undo-last{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px;border:1px solid color-mix(in srgb,#7aaeff 38%,var(--line));border-radius:14px;background:rgba(69,122,220,.07)}.gm-undo-last strong,.gm-undo-last small{display:block}.gm-undo-last small{color:var(--muted);margin-top:3px}.gm-primary-controls{display:flex;gap:8px;flex-wrap:wrap}.gm-primary-controls button{min-height:42px}.gm-section-head{display:flex;justify-content:space-between;gap:12px}.gm-team-title small{display:block;color:var(--muted);margin-top:3px}.gm-team-progress,.gm-team-resources{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.gm-team-progress span,.gm-team-resources span{padding:5px 7px;border:1px solid var(--line);border-radius:999px;font-size:11px;color:var(--muted)}.gm-team-progress b,.gm-team-resources b{color:var(--text)}.gm-team-resources .gm-immune{border-color:color-mix(in srgb,#5ad68a 42%,var(--line));color:#8de0b7}.gm-live-state{display:flex;justify-content:space-between;gap:10px;margin-top:10px;padding:9px 10px;border-radius:10px;background:rgba(255,179,71,.07);border:1px solid rgba(255,179,71,.22)}.gm-live-state.proof{background:rgba(90,214,138,.07);border-color:rgba(90,214,138,.22)}.gm-live-state.failed{background:rgba(255,82,107,.06);border-color:rgba(255,82,107,.2)}.gm-live-state span{color:var(--muted)}.gm-team-controls{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.gm-team-controls summary,.gm-history-card summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;font-weight:800;list-style:none}.gm-team-controls summary::-webkit-details-marker,.gm-history-card summary::-webkit-details-marker{display:none}.gm-history-card[open] summary{margin-bottom:12px}
@media(max-width:900px){.gm-status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.focus-card{grid-template-columns:auto 1fr}.focus-side{grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;justify-items:start}.focus-actions{justify-content:flex-start}}
@media(max-width:620px){.game-focus-head{align-items:flex-start;flex-direction:column;gap:3px}.focus-card{grid-template-columns:1fr;padding:14px}.focus-icon{width:38px;height:38px}.focus-side{grid-template-columns:1fr;min-width:0}.focus-side>strong{font-size:24px}.focus-actions,.focus-actions button{width:100%}.timed-stage-track{gap:3px}.timed-stage{min-width:42px;font-size:8px}.timed-stage b{width:22px;height:22px}.gm-cockpit{padding:14px}.gm-cockpit-head{flex-direction:column}.gm-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gm-undo-last{align-items:stretch;flex-direction:column}.gm-undo-last button{width:100%}.gm-primary-controls{display:grid;grid-template-columns:1fr 1fr}.gm-primary-controls .danger{grid-column:1/-1}.gm-live-state{flex-direction:column}}
