/* Playroom 2.0. Brand tokens and global navigation are intentionally inherited. */
/* One compact surface: live counters and authenticated in-game history. */
.lobby-app .activity .activity-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:.78rem}
.lobby-app .activity #stats-status{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;color:#786981}
.lobby-app .activity #stats-status:before{content:"";width:6px;height:6px;border-radius:50%;background:#a69baa;flex-shrink:0}
.lobby-app .activity #stats-status[data-state=live]:before{background:#278258}
.lobby-app .activity .activity-highlights{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-top:1px solid var(--play-border);margin-top:10px;padding-top:11px}
.lobby-app .activity .stat-leaderboard{min-width:0}
.lobby-app .activity .stat-leaderboard header{display:flex;justify-content:space-between;align-items:center;gap:8px}
.lobby-app .activity .stat-leaderboard h3{font-size:.79rem;margin:0;line-height:1.7}
.lobby-app .activity .stat-leaderboard header span{color:#786981;font-size:.63rem}
.lobby-app .activity ol{list-style:none;padding:0;margin:6px 0 0;min-height:32px}
.lobby-app .activity .stat-rank{display:grid;grid-template-columns:14px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;font-size:.73rem}
.lobby-app .activity .stat-rank-number{color:#8b7a94;font-variant-numeric:tabular-nums;font-size:.65rem}
.lobby-app .activity .stat-person,.lobby-app .activity .stat-map{display:flex;align-items:center;gap:8px;min-width:0;color:var(--play-purple);text-decoration:none}
.lobby-app .activity .stat-person:hover bdi{text-decoration:underline}
.lobby-app .activity bdi{overflow-wrap:anywhere;line-height:1.45}
.lobby-app .activity .stat-person img,.lobby-app .activity .stat-avatar{width:24px;height:24px;border-radius:50%;flex-shrink:0;object-fit:cover}
.lobby-app .activity .stat-avatar{display:grid;place-items:center;background:#f2edf4;color:#6a497c;font-weight:700}
.lobby-app .activity .stat-map img{width:34px;height:24px;border-radius:4px;flex-shrink:0;object-fit:cover}
.lobby-app .activity .stat-rank-time{font-size:.65rem;color:#776682;white-space:nowrap;font-variant-numeric:tabular-nums}
.lobby-app .activity .stat-empty{color:#8b7a94;font-size:.72rem;padding:7px 0;line-height:1.5}
.lobby-app .activity .activity-history{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;border-top:1px solid var(--play-border);margin-top:10px;padding-top:8px;color:#786981;font-size:.65rem}
.lobby-app .activity .activity-history strong{font-weight:600;color:var(--play-purple);margin-inline-start:4px;font-variant-numeric:tabular-nums}
.lobby-app .activity #history-since{margin-inline-start:auto;font-size:.6rem}
.lobby-app .activity #stat-games{direction:ltr;unicode-bidi:isolate;white-space:nowrap}
@media(max-width:600px){.lobby-app .activity .activity-highlights{grid-template-columns:1fr;gap:12px}.lobby-app .activity .stat-leaderboard+.stat-leaderboard{border-top:1px solid var(--play-border);padding-top:10px}.lobby-app .activity .stat-card>div{flex-direction:column;gap:0;text-align:center}.lobby-app .activity .stat-card{padding:4px 5px}.lobby-app .activity .activity-history{gap:6px 12px}.lobby-app .activity #history-since{flex-basis:100%;margin:0}}
.lobby-app{--play-accent:#ffd23f;--play-purple:#281636;--play-border:#e1dbe5;max-width:1280px;padding-top:16px}
.lobby-app .lobby-topline{display:none}
.lobby-app .lobby-hero{grid-template-columns:minmax(0,1fr) 300px;min-height:0;overflow:hidden;border-radius:16px;background:var(--play-purple);border:0}
.lobby-app .hero-copy{padding:16px 20px}
.lobby-app .lobby-hero h1{font-size:clamp(1.5rem,2.2vw,1.8rem);margin:3px 0 7px;line-height:1.45}
.lobby-app .lobby-hero h1 br{display:none}
.lobby-app .lobby-hero h1 em{margin-inline-start:.3em}
.lobby-app .hero-eyebrow{font-size:.72rem;letter-spacing:0}
.lobby-app .hero-copy>p{font-size:.83rem;margin:0;max-width:none;line-height:1.6}
.lobby-app .hero-copy .iran-location{font-size:.7rem;color:#d3c3db;margin-top:4px;padding:0;border:0;border-radius:0;background:transparent;max-width:80ch}
.lobby-app .hero-chips{margin-top:8px;gap:14px;font-size:.73rem}
.lobby-app .hero-chips svg{width:16px;height:16px}
.lobby-app .squad-visual{min-height:0;height:168px;padding:0;align-self:center;overflow:hidden;justify-content:center}
.lobby-app .squad-visual>img{width:300px;height:auto;max-width:none;object-fit:contain;flex-shrink:0;margin:0}
.lobby-app .squad-caption{display:none}
.lobby-app .activity{margin:10px 0 16px;background:#fffdf8;border:1px solid var(--play-border);border-radius:12px;padding:6px 16px}
.lobby-app .activity .section-meta{display:none}
.lobby-app .activity .section-meta>span:last-child{display:none}
.lobby-app .stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.lobby-app .stat-card{padding:4px 12px;background:transparent;border:0;border-radius:0;box-shadow:none;min-width:0}
.lobby-app .stat-card+.stat-card{border-inline-start:1px solid var(--play-border)}
.lobby-app .stat-card>div{display:flex;align-items:center;gap:12px;justify-content:space-between;width:100%}
.lobby-app .stat-card strong{font-size:1.25rem;line-height:1.5;order:1;font-variant-numeric:tabular-nums}
.lobby-app .stat-icon,.lobby-app .stat-card small{display:none}
.lobby-app .stat-label{font-size:.75rem}
.lobby-app .stats-footnote{margin:5px 0 0;font-size:.68rem}
.lobby-app .section-heading h2{font-size:1.35rem;margin:2px 0 4px}
.lobby-app .section-heading p{font-size:.82rem;margin:3px 0;line-height:1.6}
.lobby-app .section-heading .eyebrow{font-size:.65rem;margin:0}
.lobby-app .catalog-tag{font-size:.75rem;padding:7px 10px}
.lobby-app .catalog-tools{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:16px;margin:12px 0 8px}
.lobby-app .map-search{position:relative;display:block;max-width:440px}
.lobby-app .map-search svg{position:absolute;width:18px;height:18px;inset-inline-start:14px;top:14px;color:#766681;pointer-events:none}
.lobby-app .map-search input{box-sizing:border-box;width:100%;min-height:46px;padding:10px 14px;padding-inline-start:42px;border:1px solid #bbb0c3;border-radius:10px;background:#fffdf8;color:var(--play-purple);font:inherit;font-size:.9rem}
.lobby-app .map-search input::placeholder{color:#7b6e83}
.lobby-app .catalog-tools .catalog-filters{margin:0;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.lobby-app .catalog-filters button{min-height:44px;padding:8px 12px;font-size:.78rem}
.lobby-app .catalog-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--muted);margin:0 0 12px}
.lobby-app #catalog-empty{padding:32px 20px;text-align:center;background:#fffdf8;border:1px dashed #baa9c7;border-radius:12px;color:var(--muted);line-height:1.8}
.lobby-app .map-tile{position:relative;min-width:0}
.lobby-app .map-card{height:100%;display:flex;flex-direction:column;position:relative;background:#fffdf8;border-color:var(--play-border);overflow:hidden;border-radius:12px;cursor:pointer}
.lobby-app .map-card .map-photo{aspect-ratio:1.85;margin:0;flex-shrink:0}
.lobby-app .map-title{font-size:1rem;line-height:1.4;inset-inline:14px;bottom:12px;text-shadow:0 1px 8px #000c}
.lobby-app .map-caption{padding:12px 14px;min-height:94px;display:flex;flex-direction:column;align-items:stretch;gap:8px}
.lobby-app .mode-description{font-size:.79rem;line-height:1.7;font-weight:500;display:flex;flex-direction:column;justify-content:space-between;flex:1}
.lobby-app .mode-description small{font-size:.73rem;color:#74657d;margin-top:8px;font-weight:400}
.lobby-app .map-state{position:absolute;inset-inline-end:12px;bottom:11px;font-size:.68rem;color:#695272;display:block}
.lobby-app .map-card:has(input:checked){box-shadow:0 0 0 2px var(--play-accent);border-color:#b4820c}
.lobby-app .map-card:has(input:focus-visible){outline:3px solid #765491;outline-offset:3px}
.lobby-app .map-favourite{position:absolute;top:10px;inset-inline-end:10px;z-index:2;display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:0;background:#21112bd9;border:1px solid #ffffff60;color:#fff;border-radius:10px;cursor:pointer}
.lobby-app .map-favourite svg{width:18px;height:18px;fill:none}
.lobby-app .map-favourite:hover{background:#3c244c}
.lobby-app .map-favourite[aria-pressed=true]{background:var(--play-accent);border-color:#ffdf71;color:#281636}
.lobby-app .map-favourite[aria-pressed=true] svg{fill:currentColor}
.lobby-app .map-check{inset-inline-start:10px;inset-inline-end:auto}
.lobby-app .lobby-columns{max-width:780px}
.lobby-app .lobby-panel,.lobby-app #create-panel{padding:22px 26px;border-color:var(--play-border);box-shadow:0 8px 30px #24142e06}
.lobby-app .panel-heading h2{font-size:1.35rem}
.lobby-app .panel-heading p{font-size:.83rem}
.lobby-app .selection-preview{background:#f4f0e8;border:0;border-radius:12px;padding:12px;margin:18px 0}
.lobby-app .selection-preview img{width:128px;height:82px;border-radius:8px}
.lobby-app .selection-preview strong{font-size:1.1rem}
.lobby-app .field-grid label{font-size:.88rem}
.lobby-app .field-grid select{min-height:46px;font-size:.88rem}
.lobby-app .field-help{font-size:.75rem;margin-bottom:16px}
.lobby-app .rules-picker summary{min-height:54px;padding:10px 14px}
.lobby-app .option-grid{gap:8px}
.lobby-app .option-toggle{background:#fff;padding:10px;border-radius:8px;align-items:start}
.lobby-app .option-toggle input{width:20px;height:20px;flex-shrink:0;accent-color:#65437b;margin-top:2px}
.lobby-app .option-toggle strong{font-size:.81rem}
.lobby-app .option-toggle small{font-size:.72rem;line-height:1.6}
.lobby-app .setup-actions{margin-top:18px;padding-top:16px}
.lobby-app .setup-actions :is(button,.action-link){min-height:46px;font-size:.92rem;padding:10px 20px}
.lobby-app .setup-hint{font-size:.76rem}
.lobby-app .pilot-note{display:none}
.lobby-app .room-preview{height:156px;border-radius:10px;margin:18px 0 12px}
.lobby-app .lobby-progress{font-size:.72rem;margin:16px 0}
.lobby-app .roster{gap:8px;margin:14px 0}
.lobby-app #room-message{font-size:.82rem;line-height:1.9;margin:14px 0}
.lobby-app .lobby-detail{font-size:.83rem}
.lobby-app .connect-box{background:#edf8f1;padding:16px;border:1px solid #a2c7ad;border-radius:10px}
.lobby-app .connect-box code{font-size:.75rem;word-break:break-word;padding:12px;line-height:1.8}
.lobby-app .host-controls{background:#faf7f0;padding:14px 16px;border:1px solid var(--play-border);border-radius:10px}
.lobby-app .host-controls>summary{font-size:.94rem;min-height:44px;display:flex;align-items:center;cursor:pointer}
.lobby-app .control-group{border-top:1px solid var(--play-border);padding-top:14px;margin-top:14px}
.lobby-app .control-group h3{font-size:.82rem;margin:0 0 9px;font-weight:750}
.lobby-app .control-group[hidden]{display:none}
.lobby-app .host-controls .lobby-actions{display:flex;gap:8px;flex-wrap:wrap}
.lobby-app .host-controls .lobby-actions button{min-height:44px;font-size:.8rem;padding:9px 13px}
.lobby-app .fly-controls{margin-top:14px;background:#fffdf8}
.lobby-app .host-rules-editor>summary{font-size:.85rem}
.lobby-app :is(button,a,input,select,summary):focus-visible{outline:3px solid #795297;outline-offset:3px}
.lobby-app button:disabled{cursor:not-allowed}
.lobby-app .launch-track{height:8px;border-radius:20px;background:#e4d9af}
.lobby-app .launch-track>span{border-radius:20px;background:#987412}
.lobby-app .launch-track[data-stage]>span{animation:none;transition:width .35s ease;width:var(--stage-width,12%)}
.lobby-app .launch-heading strong{font-size:.96rem}
.lobby-app .launch-progress p{font-size:.82rem;line-height:1.9}
.lobby-app .public-header h2{font-size:1.2rem}
.lobby-app .public-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:16px}
.lobby-app .public-room{padding:0;overflow:hidden;border:1px solid var(--play-border);border-radius:12px}
.lobby-app .public-room>div:not(.public-room-photo){padding-inline:16px}
.lobby-app .public-room :is(button,.public-join-help){margin-inline:16px}
.lobby-app .public-room button{margin-bottom:16px;min-height:44px}
.lobby-app .lobby-info{margin-top:28px;border-top:1px solid var(--play-border);padding-top:20px}
.lobby-app .lobby-info h3{font-size:.86rem}
.lobby-app .lobby-info p{font-size:.75rem;line-height:1.9}
@media(max-width:1000px){.lobby-app .catalog-tools{grid-template-columns:1fr}.lobby-app .catalog-tools .catalog-filters{justify-content:flex-start}.lobby-app .map-search{max-width:none}.lobby-app .lobby-hero{grid-template-columns:minmax(0,1fr) 220px}.lobby-app .squad-visual>img{width:290px;height:193px}}
@media(max-width:760px){.lobby-app .lobby-hero{grid-template-columns:minmax(0,1fr) 150px}.lobby-app .hero-copy{padding:16px}.lobby-app .squad-visual{height:138px}.lobby-app .squad-visual>img{width:235px;height:157px}.lobby-app .hero-chips{gap:8px;flex-wrap:wrap}.lobby-app .hero-copy>p{font-size:.8rem}.lobby-app .iran-location{display:none}.lobby-app .stat-card{padding:3px 8px}.lobby-app .stat-card>div{display:grid;gap:0}.lobby-app .stat-card strong{order:-1}.lobby-app .stat-label{font-size:.68rem}.lobby-app .stat-card+.stat-card{border-inline-start:1px solid var(--play-border)}.lobby-app .catalog-tools{gap:12px}.lobby-app .catalog-filters button{font-size:.75rem}.lobby-app .map-caption{min-height:100px}}
@media(max-width:480px){.lobby-app{padding:12px 14px 28px}.lobby-app .lobby-hero{grid-template-columns:minmax(0,1fr) 90px;border-radius:12px}.lobby-app .lobby-hero h1{font-size:1.3rem}.lobby-app .lobby-hero h1 em{display:block;margin-inline:0}.lobby-app .squad-visual{height:116px;overflow:hidden}.lobby-app .squad-visual>img{width:200px;height:133px;margin-inline-start:-34px}.lobby-app .hero-eyebrow{font-size:.64rem}.lobby-app .hero-copy{padding:14px 12px}.lobby-app .hero-copy>p{font-size:.72rem}.lobby-app .hero-chips{font-size:.62rem;gap:6px}.lobby-app .hero-chips svg{display:none}.lobby-app .activity{padding:8px 10px;margin-bottom:16px}.lobby-app .stat-label{font-size:.61rem}.lobby-app .stat-card strong{font-size:1.12rem}.lobby-app .stats-footnote{display:none}.lobby-app .section-heading{align-items:center}.lobby-app .section-heading h2{font-size:1.15rem}.lobby-app .catalog-tag{font-size:.65rem;padding:6px 8px}.lobby-app .workshop-catalog .map-grid{grid-template-columns:1fr;gap:14px}.lobby-app .map-card .map-photo{aspect-ratio:2.3}.lobby-app .map-caption{min-height:86px}.lobby-app .map-title{font-size:1.05rem}.lobby-app .lobby-panel,.lobby-app #create-panel{padding:18px}.lobby-app .selection-preview img{width:104px;height:72px}.lobby-app .selection-preview strong{font-size:1rem}.lobby-app .selection-preview{gap:12px}.lobby-app .field-grid{grid-template-columns:1fr}.lobby-app .room-preview{height:132px}.lobby-app .lobby-primary-actions>button{flex:1 1 auto}.lobby-app .host-controls .lobby-actions button{flex:1 1 135px}.lobby-app .connect-box{padding:12px}.lobby-app .catalog-meta{font-size:.69rem}}
@media(prefers-reduced-motion:reduce){.lobby-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(max-width:1000px){.lobby-app .squad-visual>img{width:220px;height:auto}}
@media(max-width:760px){.lobby-app .squad-visual>img{width:150px;height:auto}}
@media(max-width:480px){
  .lobby-app .lobby-hero{grid-template-columns:minmax(0,1fr) 120px}
  .lobby-app .hero-eyebrow,.lobby-app .hero-copy>p{display:none}
  .lobby-app .hero-copy{padding:12px 14px}
  .lobby-app .squad-visual{height:100px}
  .lobby-app .squad-visual>img{width:120px;height:auto;margin:0}
  .lobby-app .hero-chips{font-size:.62rem;line-height:1.5;gap:6px}
}

/* Builder and running lobby: compact app surfaces, not a second landing page. */
.lobby-app:is([data-view=setup],[data-view=room]) :is(.lobby-hero,.activity,.public-section,.lobby-info){display:none}
.lobby-app[data-view=room] .resume-lobby{display:none}
.lobby-app .lobby-columns{max-width:720px;margin:8px auto 28px}
.lobby-app :is(.lobby-panel,#create-panel){padding:20px;border-radius:12px;box-shadow:none}
.lobby-app .panel-heading{margin-bottom:14px}
.lobby-app .panel-heading h2{font-size:1.1rem;line-height:1.5;margin:0}
.lobby-app .panel-heading p{display:none}
.lobby-app #lobby-flow{scroll-margin-top:120px}
.lobby-app .flow-toolbar{margin-bottom:10px}
.lobby-app :is(button,.action-link){min-height:44px;padding:8px 14px;font-size:.85rem;line-height:1.5;border-radius:8px;touch-action:manipulation}
.lobby-app .room-topbar{display:flex;align-items:center;gap:14px;min-width:0;margin-bottom:16px}
.lobby-app .room-topbar .room-preview{width:100px;height:66px;margin:0;border-radius:8px;flex-shrink:0}
.lobby-app .room-preview img{width:100%;height:100%;object-fit:cover}
.lobby-app .room-heading{display:grid;gap:8px;min-width:0;flex:1}
.lobby-app #room-map{font-size:1.05rem;line-height:1.5;overflow-wrap:anywhere;text-align:start}
[dir=rtl] .lobby-app #room-map{text-align:right}
[dir=ltr] .lobby-app #room-map{text-align:left}
.lobby-app .room-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.75rem;color:var(--muted)}
.lobby-app .room-meta>span+span{border-inline-start:1px solid var(--play-border);padding-inline-start:8px}
.lobby-app #room-size{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;font-weight:600}
.lobby-app .room-meta #room-state{font-size:.7rem;padding:3px 8px;border:0;line-height:1.5}
.lobby-app .lobby-progress{margin:12px 0;font-size:.7rem;gap:4px}
.lobby-app .lobby-progress li{padding-top:5px;border-top-width:2px}
.lobby-app .room-options{margin:0 0 12px}
.lobby-app .room-options:empty{display:none}
.lobby-app .roster{padding:0;display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;list-style:none}
.lobby-app .roster li{padding:5px 8px;min-height:34px;border-radius:7px;background:#f5f1e9;border:0;font-size:.78rem;max-width:100%;gap:6px}
.lobby-app .roster img{width:22px;height:22px}
.lobby-app .roster span{font-size:.65rem}
.lobby-app .room-actionbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.lobby-app .lobby-primary-actions{gap:8px;margin:0;flex:1}
.lobby-app .lobby-primary-actions>button,.lobby-app .lobby-primary-actions #leave-button{min-height:44px;font-size:.82rem;padding:8px 12px;flex:0 1 auto}
.lobby-app #leave-button.lobby-remove{background:transparent;border-color:transparent;color:var(--bad)}
.lobby-app #leave-button.lobby-remove:hover:not(:disabled){background:#fff0ed}
.lobby-app .ready-alert{margin:0;gap:6px;font-size:.7rem;max-width:100%}
.lobby-app .ready-alert button{min-height:44px;padding:8px 10px;font-size:.74rem;border-color:transparent;background:transparent}
.lobby-app .ready-alert p{font-size:.7rem;max-width:none}
.lobby-app .connect-box{margin:12px 0 0;padding:12px;background:#f0f8f2;border-radius:8px}
.lobby-app .connection-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.lobby-app .connection-actions #join-game{background:var(--play-purple);min-width:126px}
.lobby-app #live-players{margin-inline-start:auto;font-size:.72rem;font-weight:500;color:var(--good)}
.lobby-app .connection-code{margin-top:6px;font-size:.73rem;color:var(--muted)}
.lobby-app .connection-code summary{min-height:32px;cursor:pointer;align-content:center}
.lobby-app .connect-box code{margin:4px 0 0;padding:8px;font-size:.7rem;background:#fff;line-height:1.7;overflow-wrap:anywhere;word-break:normal}
.lobby-app .host-controls{border:0;border-top:1px solid var(--play-border);border-radius:0;background:transparent;margin:16px 0 0;padding:12px 0 0}
.lobby-app .host-controls>.control-group{border:0;padding:0;margin:0}
.lobby-app .control-group h3{font-size:.78rem;margin:0 0 8px}
.lobby-app .host-controls .lobby-actions{gap:8px}
.lobby-app .host-controls .lobby-actions button{min-height:44px;font-size:.78rem;padding:8px 11px;flex:0 1 auto;width:auto}
.lobby-app .host-rules-editor{margin-top:12px;padding:0;border:1px solid var(--play-border);border-radius:8px;overflow:hidden}
.lobby-app .host-rules-editor>summary{padding:10px 12px;min-height:44px;display:list-item;list-style-position:inside;font-size:.83rem;background:#f9f6ef}
.lobby-app .host-rules-editor form{margin:0;padding:0 12px 12px}
.lobby-app .fly-controls{display:flex;align-items:center;gap:8px;padding:10px 12px;margin:0;border:0;border-bottom:1px solid var(--play-border);border-radius:0;background:#fffdf8}
.lobby-app .fly-controls strong{font-size:.82rem;font-weight:600;flex:1;text-align:right}
html[lang=en] .lobby-app .fly-controls strong{text-align:left}
.lobby-app .fly-controls button{min-height:44px;min-width:90px;gap:8px;background:transparent;border:1px solid #b3a7bb;color:var(--play-purple);font-size:.76rem;padding:6px 10px;direction:ltr}
.lobby-app .fly-controls button::before{content:'';width:32px;height:18px;border-radius:12px;background:radial-gradient(circle at 9px 9px,#fff 0 6px,transparent 6.5px),#786c82;flex-shrink:0}
.lobby-app .fly-controls button[aria-checked=true]::before{background:radial-gradient(circle at 23px 9px,#fff 0 6px,transparent 6.5px),#4f3564}
.lobby-app .fly-controls button[aria-checked=true]{background:#f1eaf6;border-color:#78558e}
.lobby-app .fly-state{font-size:.74rem;padding:0;background:transparent}
.lobby-app .host-rules-editor .option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.lobby-app .option-toggle,.lobby-app .host-rules-editor .option-toggle{padding:8px 0;min-height:44px;align-items:center;gap:8px;border:0;border-bottom:1px solid var(--play-border);border-radius:0;background:transparent;font-size:.8rem}
.lobby-app .option-toggle:has(input:checked){background:transparent}
.lobby-app .option-toggle input{width:18px;height:18px;margin:0}
.lobby-app .option-toggle strong{font-size:.8rem;font-weight:600}
.lobby-app .option-toggle span{gap:0;min-width:0;line-height:1.5}
.lobby-app .friendly-fire-toggle{margin:0}
.lobby-app .match-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;margin-top:12px}
.lobby-app .match-field label{font-size:.75rem;margin-bottom:5px}
.lobby-app .match-field select{font-size:.8rem;min-height:44px}
.lobby-app .fly-help{padding:0;margin-top:8px;border:0;border-radius:0;font-size:.75rem}
.lobby-app .fly-help summary{min-height:44px;display:list-item;list-style-position:inside;align-content:center;font-size:.75rem;color:var(--muted)}
.lobby-app .fly-bind code{font-size:.72rem;padding:6px 8px}
.lobby-app .fly-bind button{font-size:.75rem;padding:8px 10px}
.lobby-app .lobby-status{margin:12px 0;border-radius:8px}
.lobby-app .lobby-status :is(.launch-progress,.server-notice){padding:12px}
.lobby-app .lobby-status .server-notice h3{font-size:.88rem;margin-bottom:6px;line-height:1.5}
.lobby-app .lobby-status :is(.server-notice p,.launch-progress p){font-size:.78rem;margin:0 0 8px;line-height:1.7}
.lobby-app .launch-heading strong{font-size:.88rem}
.lobby-app .launch-heading{margin-bottom:8px}
.lobby-app .launch-elapsed{font-size:.68rem;padding:2px 6px;background:transparent}
.lobby-app .status-footer{padding:6px 12px;gap:8px;flex-direction:row;align-items:center}
.lobby-app .status-times{font-size:.68rem;gap:3px}
.lobby-app .status-footer button{width:auto;font-size:.73rem;padding:8px 10px;border-color:transparent}
.lobby-app .room-feedback{padding:10px 12px;font-size:.8rem;line-height:1.6}
.lobby-app .update-progress{margin:10px 0 0}
.lobby-app .update-progress-meta{font-size:.7rem}
.lobby-app .control-confirm{padding:12px;margin:12px 0 0;position:relative}
.lobby-app .control-confirm p{font-size:.82rem;margin:0 0 10px;line-height:1.7}
.lobby-app .selection-preview{padding:10px;margin:14px 0;gap:12px;border-radius:8px}
.lobby-app .selection-preview img{width:96px;height:60px;border-radius:6px}
.lobby-app .selection-preview strong{font-size:1rem}
.lobby-app .selection-preview small{font-size:.68rem;padding:0;background:transparent;color:var(--muted)}
.lobby-app .field-grid{grid-template-columns:1.4fr 1fr;gap:12px}
.lobby-app .field-grid label{font-size:.8rem;margin-bottom:5px}
.lobby-app .field-grid select{min-height:44px;font-size:.85rem;padding:8px 10px}
.lobby-app .field-help{font-size:.7rem;margin:5px 0 12px}
.lobby-app .rules-picker{margin:0;border-radius:8px}
.lobby-app .rules-picker summary{padding:8px 12px;min-height:44px}
.lobby-app .rules-picker summary strong{font-size:.83rem}
.lobby-app .rules-picker summary small{font-size:.7rem}
.lobby-app .rules-picker .practice-options{padding:0 12px;margin:0}
.lobby-app .rules-picker .option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}
.lobby-app #rules-match-fields{padding:0 12px 12px}
.lobby-app .setup-actions{justify-content:flex-end;padding:0;margin-top:16px;border:0;flex-direction:row}
.lobby-app .setup-actions :is(button,.action-link){width:auto;min-width:120px;min-height:44px;padding:8px 14px;font-size:.85rem}
.lobby-app .section-description,.lobby-app .workshop-note,.lobby-app .lobby-info{display:none}
@media(max-width:480px){
  .lobby-app #lobby-flow{scroll-margin-top:170px}
  .lobby-app :is(.lobby-panel,#create-panel){padding:14px}
  .lobby-app .room-topbar{gap:10px;margin-bottom:12px}
  .lobby-app .room-topbar .room-preview{width:76px;height:56px}
  .lobby-app #room-map{font-size:.94rem}
  .lobby-app .room-meta{gap:6px;font-size:.7rem}
  .lobby-app .room-meta>span+span{padding-inline-start:6px}
  .lobby-app .lobby-primary-actions>button,.lobby-app .lobby-primary-actions #leave-button{font-size:.75rem;padding:8px 9px}
  .lobby-app .ready-alert{width:100%}
  .lobby-app .connection-actions #join-game{flex:1;min-width:0}
  .lobby-app .connection-actions #copy-command{flex:1;font-size:.75rem;padding-inline:8px}
  .lobby-app #live-players{width:100%;margin:0}
  .lobby-app .host-controls .lobby-actions button{font-size:.73rem;padding-inline:10px;flex:1 1 120px}
  .lobby-app .host-rules-editor .option-grid,.lobby-app .rules-picker .option-grid{grid-template-columns:1fr}
  .lobby-app .match-fields{grid-template-columns:1fr 1fr}
  .lobby-app .setup-heading{align-items:center;gap:8px}
  .lobby-app #setup-change-map{padding-inline:8px;font-size:.75rem}
  .lobby-app .selection-preview img{width:76px;height:56px}
  .lobby-app .field-grid{grid-template-columns:1.3fr 1fr;gap:10px}
  .lobby-app .field-grid select{font-size:16px}
  .lobby-app .match-field select{font-size:16px}
  .lobby-app .status-footer{align-items:center;flex-direction:row}
}
