.room-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.connection{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--muted);font-size:16px}.connection-dot{width:10px;height:10px;border-radius:50%;background:var(--muted)}.connection-online .connection-dot{background:var(--success)}.connection-connecting .connection-dot{background:var(--gold);animation:connection-blink 1.2s ease-in-out infinite}.connection-offline .connection-dot{background:var(--danger)}.toast{position:sticky;bottom:var(--safe-bottom);z-index:10;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--danger);border-radius:var(--radius-m);color:var(--danger);background:var(--danger-soft);box-shadow:var(--shadow-card)}.toast p{flex:1}@keyframes connection-blink{50%{opacity:.35}}.screen.room-game{gap:var(--space-4)}.game{display:grid;gap:var(--space-4)}.turn-title{font:600 26px/1 var(--font-title);letter-spacing:0}.turn-away{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--danger);font-size:16px}.turn-card{gap:var(--space-4)}.turn-clock{flex:none;padding:6px 10px;border-radius:14px;background:#b6862529;color:var(--chocolate);font:500 16px/1 var(--font-text);font-variant-numeric:tabular-nums}.turn-clock.is-low{background:var(--danger-soft);color:var(--danger)}.turn-confirm{grid-column:1 / -1;text-align:center}.autopilot{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--gold-soft);border-radius:var(--radius-m);background:var(--paper)}.dice-news{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:var(--space-4)}.dice{width:64px;height:auto}.dice-idle{opacity:.35}.dice-hole{display:block;box-sizing:border-box;aspect-ratio:245 / 256;border:1.5px dashed var(--marble-deep);border-radius:12px}.dice-in{animation:dice-in .35s ease-out both}@keyframes dice-in{0%{opacity:0;transform:scale(.8)}}.dice-text{display:grid;gap:var(--space-1);min-width:0}.dice-lines{display:grid;gap:var(--space-1);color:var(--chocolate);font-weight:600}.turn-subtitle{color:var(--muted);font-size:16px;line-height:1.45}.turn-actions{display:grid;gap:var(--space-3)}.board{display:grid;gap:var(--space-2);margin:0}.board:focus-visible{outline:none}.board-frame{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:4 / 5;border:1px solid var(--line);border-radius:var(--radius-l);background:var(--marble);box-shadow:var(--shadow-card)}.board-return{position:absolute;right:calc(var(--safe-right) - 4px);bottom:calc(var(--hud-bottom, 0px) + var(--space-3));z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4) 0 var(--space-3);border:1px solid var(--paper);border-radius:22px;background:var(--paper-glass);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--chocolate);font:500 16px/1 var(--font-text);cursor:pointer;transition:opacity .18s,visibility .18s}.board-return .icon{width:18px;height:18px}.board-return.is-up .icon{transform:rotate(180deg)}.board-frame:has(.level-rail) .board-return{visibility:hidden;opacity:0}.my-score{display:flex;width:100%;min-height:var(--tap);align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-m);color:var(--text);background:var(--paper-glass);font:inherit;text-align:left;cursor:pointer}.my-score:hover{border-color:var(--bronze)}.my-score-all{flex:1;font-weight:600}.score-values{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.score-value{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--chocolate);font-weight:600}.score-value img{width:24px;height:24px;object-fit:contain}.score-skip{color:var(--danger);font-size:16px}.score-rows{display:grid;margin:0;padding:0;list-style:none}.score-row{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-2);border-top:1px solid var(--line)}.score-row:first-child{border-top:0}.score-row[data-current]{border-radius:var(--radius-s);background:var(--marble)}.score-row .score-values{grid-column:2}.score-who{min-width:0}.score-name{display:flex;align-items:center;gap:var(--space-2)}.score-name>.icon-button{margin-left:auto}.score-name>span:first-child{overflow:hidden;color:var(--chocolate);font-weight:600;text-overflow:ellipsis;white-space:nowrap}.step-card-head{display:grid;gap:var(--space-1)}.label-resource{color:var(--success)}.label-penalty{color:var(--danger)}.label-obstacle{color:var(--bronze)}.game .toast{position:static;box-shadow:none}.level-toast-region{position:fixed;top:var(--safe-top);left:50%;z-index:20;width:min(calc(100% - var(--safe-left) - var(--safe-right)),var(--content-width));transform:translate(-50%);pointer-events:none}.level-toast{display:grid;gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--gold-soft);border-radius:var(--radius-m);color:var(--chocolate);background:var(--paper);box-shadow:var(--shadow-card);font:600 17px/1.4 var(--font-text);text-align:left;cursor:pointer;pointer-events:auto;animation:toast-in .24s ease-out}.stage-overlay{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:0;color:var(--text);background:var(--bg);overflow-y:auto;overscroll-behavior:contain}.stage-overlay[open]{animation:level-in .28s ease-out}.stage-overlay-panel{display:grid;grid-template-rows:auto 1fr auto;gap:var(--space-5);width:100%;max-width:calc(var(--content-width) + var(--safe-left) + var(--safe-right));min-height:100%;margin:0 auto;padding:var(--safe-top) var(--safe-right) 0 var(--safe-left)}.stage-overlay-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--space-3)}.stage-overlay-heading{display:grid;gap:var(--space-1)}.stage-overlay-heading h2{font-size:clamp(30px,8vw,38px)}.stage-overlay-heading h2:focus{outline:none}.stage-overlay-who{color:var(--bronze);font-style:italic}.stage-overlay-collapse{display:inline-flex;min-height:44px;align-items:center;gap:var(--space-1);padding:8px 12px 8px 8px;border:1px solid var(--line);border-radius:12px;color:var(--chocolate);background:var(--paper);font:600 16px/1.2 var(--font-text);cursor:pointer;touch-action:manipulation}.stage-overlay-body{display:grid;align-content:start;gap:var(--space-5)}.stage-overlay-footer{position:sticky;bottom:0;display:grid;gap:var(--space-3);max-height:calc(var(--host-height, 100dvh) * .5);margin-inline:calc(var(--safe-left) * -1) calc(var(--safe-right) * -1);padding:var(--space-4) var(--safe-right) var(--safe-bottom) var(--safe-left);overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--line);background:var(--paper);box-shadow:0 -10px 24px #3b241814}.stage-news{display:grid;gap:var(--space-1);font-size:16px}.stage-note{color:var(--chocolate);font-weight:600}.stage-waiting{color:var(--muted);font-size:16px}.turn-actions-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.turn-actions-grid .button{padding-inline:var(--space-2)}.card-flip{position:relative;justify-self:center;width:100%;aspect-ratio:600 / 1031;perspective:1400px}.card-flip-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.card-flip[data-open] .card-flip-inner{transform:rotateY(180deg)}.card-flip-face{position:absolute;inset:0;width:100%;height:100%;border-radius:var(--radius-m);box-shadow:var(--shadow-card);object-fit:cover;-webkit-backface-visibility:hidden;backface-visibility:hidden}.card-flip-front{transform:rotateY(180deg)}.gate-lead{color:var(--chocolate);font-size:19px;line-height:1.5}.gate-text{display:grid;gap:var(--space-3)}.gate-text h3{font-size:28px}.gate-text-large{font-size:19px;line-height:1.6}.gate-text-large h3{font-size:32px}.gate-roll{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:var(--space-2) var(--space-4)}.gate-roll>.gate-text{display:contents}.gate-roll .dice{grid-row:span 2}.gate-roll .blocks{grid-column:1 / -1;margin-top:var(--space-2)}.gate-details{padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper)}.gate-details summary{padding:10px 0;color:var(--chocolate);font-weight:600;cursor:pointer}.gate-details[open]{padding-bottom:var(--space-4)}.gate-details[open] summary{margin-bottom:var(--space-2)}.gate-rule{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-m)}.gate-rule h3{font-size:24px}.gate-rule-body{border-color:var(--gold-soft);background:var(--paper);box-shadow:var(--shadow-card)}.gate-questions{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px dashed var(--bronze);border-radius:var(--radius-m);background:var(--paper)}.gate-questions h3{font-size:24px}.gate-questions ol{display:grid;gap:var(--space-2);margin:0;padding-left:1.4em}.power-grid{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.power-card{display:grid;align-content:start;gap:var(--space-1);width:100%;height:100%;padding:var(--space-4);border:1px solid var(--line);border-radius:var(--radius-m);color:var(--text);background:var(--paper);box-shadow:var(--shadow-card);font:inherit;text-align:left;cursor:pointer;touch-action:manipulation;transition:border-color .16s ease}.power-step{color:var(--bronze);font-size:16px}.power-title{color:var(--chocolate);font:600 24px/1.15 var(--font-title)}.power-essence{color:var(--muted);font-size:16px;line-height:1.45}.power-artifact{display:grid;gap:var(--space-3);padding:var(--space-5) var(--space-4);border:1px solid var(--gold-soft);border-radius:var(--radius-l);background:var(--paper);box-shadow:var(--shadow-card)}.power-artifact h3{font-size:32px}.leap-score{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2);margin:0}.leap-score>div{display:grid;align-content:start;justify-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-1);border:1px solid var(--line);border-radius:var(--radius-m);background:var(--paper);text-align:center}.leap-score dt{display:grid;justify-items:center;gap:2px;color:var(--muted);font-size:16px}.leap-score dt img{width:28px;height:28px;object-fit:contain}.leap-score dd{margin:0;color:var(--chocolate);font:600 32px/1.1 var(--font-title);font-variant-numeric:lining-nums}@media(hover:hover){.power-card:hover,.stage-overlay-collapse:hover{border-color:var(--bronze)}}@media(min-width:600px){.power-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@keyframes level-in{0%{opacity:0}}@keyframes toast-in{0%{opacity:0;transform:translateY(-12px)}}@media(min-width:1024px){.room-game{max-width:calc(var(--game-width) + var(--safe-left) + var(--safe-right))}}.journey-list{display:grid;margin:0;padding:0;list-style:none}.journey-list li{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--line)}.journey-list li[aria-current]{background:var(--marble);border-radius:var(--radius-s)}.journey-list li>span>.caption{display:block}.journey-list li>.caption{max-width:7ch;text-align:right}.journey-number{color:var(--bronze);font:600 28px/1 var(--font-title);font-variant-numeric:lining-nums;text-align:center}.card-view{justify-self:center;min-width:0;width:min(100%,230px)}.card-view-large{width:min(100%,360px,35dvh)}.card-enlarge{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:var(--space-2);width:100%;padding:0;border:0;border-radius:var(--radius-m);background:transparent;color:var(--bronze);cursor:zoom-in;touch-action:manipulation}.card-enlarge:disabled{cursor:wait}.card-enlarge .card-flip{display:block;width:100%}.card-enlarge-label{display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;font-size:16px}.card-full-image{width:auto;max-width:100%;max-height:calc(var(--host-height, 100dvh) - 180px);height:auto;object-fit:contain;justify-self:center}.move-scene,.shadow-scene{display:grid;align-items:start;gap:var(--space-5)}.move-scene .card-view{width:104px}.move-scene .gate-text{grid-row:1}.move-scene .card-view{justify-self:start}.move-scene .card-enlarge-label{font-size:16px;gap:var(--space-1)}.move-scene .card-enlarge-label .icon{width:16px;height:16px}@media(min-width:720px){.stage-overlay-wide .stage-overlay-panel{max-width:1000px;padding-inline:var(--space-6)}.stage-overlay-wide .stage-overlay-head{padding-block:var(--space-4);border-bottom:1px solid var(--line)}.move-scene,.shadow-scene{grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr);gap:var(--space-7);align-items:center;padding-block:var(--space-5)}.move-scene .card-view{grid-column:1;grid-row:1;width:min(100%,230px);justify-self:center}.move-scene .gate-text{grid-column:2;grid-row:1}.stage-overlay-footer{margin-inline:0;padding-inline:0;background:var(--bg);box-shadow:none}}@media(max-width:719px){.stage-overlay-body{padding-bottom:28px}.move-scene{grid-template-columns:minmax(0,1fr) 88px;grid-template-rows:auto 1fr auto;gap:var(--space-3) var(--space-4)}.move-scene .card-view{width:88px}.move-scene .gate-text{display:contents}.move-scene .gate-text>.caption{grid-column:1;grid-row:1;align-self:start}.move-scene .gate-text>h3{grid-column:1;grid-row:2;align-self:start;font-size:30px}.move-scene .card-view{grid-column:2;grid-row:1 / 3}.move-scene .gate-text>.blocks{grid-column:1 / -1;font-size:18px}}.power-essence{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}.power-card{box-shadow:none}@media(min-width:900px){.power-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}html:has(.room-table),html:has(.room-table) body{overflow:hidden;overscroll-behavior:none}.screen.room-table{position:fixed;inset:0;display:block;max-width:none;height:var(--host-height, 100dvh);min-height:0;margin:0;padding:0;overflow:hidden}.game-table{display:block;gap:0;height:100%}.game-stage{position:relative;height:100%;overflow:hidden;isolation:isolate;touch-action:none}.game-stage>.board{position:absolute;inset:0;display:block}.game-stage .board .board-frame{height:100%;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;-webkit-mask-image:none;mask-image:none}.hud-top,.hud-bottom{position:absolute;right:0;left:0;z-index:2;display:grid;gap:var(--space-2)}.hud-top,.hud-bottom,.hud-top-row,.hud-row{pointer-events:none}.hud-top>:not(.hud-top-row),.hud-bottom>:not(.hud-row),.hud-top-row>*,.hud-row>*{pointer-events:auto}.hud-top{top:0;justify-items:start;padding:var(--safe-top) var(--safe-right) 0 var(--safe-left)}.hud-bottom{bottom:0;padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left)}.hud-top-row,.hud-row{display:flex;justify-content:space-between;gap:var(--space-2);width:100%}.hud-top-row{align-items:flex-start}.hud-row{align-items:flex-end}.hud-top .turn-news,.hud-stack,.hud-stack>.owner-urgent{display:contents}.turn-plate,.hud-top .dice-news.is-compact:not(.visually-hidden),.hud-chip,.hud-top .table-menu,.hud-row .my-score,.table-reaction .icon-button,.step-strip,.turn-fab .turn-confirm{border:1px solid var(--paper);background:var(--paper-glass);box-shadow:0 10px 28px #3b241824;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.turn-plate{display:grid;flex:0 1 auto;gap:5px;min-width:200px;padding:9px 12px 10px 16px;border-radius:22px}.turn-plate-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.hud-top .table-menu{width:48px;height:48px;border-radius:24px}.dice-news.is-compact{display:flex;align-items:center;gap:var(--space-2);max-width:min(300px,100%);padding:5px 14px;border-radius:18px;font:500 16px/1.25 var(--font-text);text-wrap:pretty}.dice-news.is-compact .dice{flex:none;width:30px;margin-left:-8px}.dice-news.is-compact .dice-text{gap:0}.dice-news.is-compact .dice-result,.dice-news.is-compact .dice-lines{margin:0;color:var(--chocolate);font:inherit}.hud-chip{padding:6px 12px;border-radius:18px;color:var(--chocolate)}.hud-row .my-score{width:auto;padding:11px 14px;border-radius:24px;font:600 18px/1 var(--font-text)}.hud-row .score-value img{width:22px;height:22px}.hud-row>.turn-fab,.hud-row>.table-reopen,.hud-row>.table-reaction{margin-left:auto}.turn-fab{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.turn-fab .button,.hud-row .table-reopen{gap:10px;padding:0 22px;font:500 19px/1 var(--font-text);box-shadow:0 10px 22px #3b241852}.turn-fab .button{min-height:60px;border-radius:30px}.hud-row .table-reopen{min-height:56px;border-radius:28px}.turn-fab .button-secondary,.hud-row .table-reopen.button-secondary{border-color:var(--paper);background:var(--paper-glass);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.turn-fab-dice{width:40px;height:auto;margin-left:-12px}.turn-fab-hole{box-sizing:border-box;width:36px;height:36px;margin-left:-8px;border:1.5px dashed rgba(251,246,238,.55);border-radius:10px}.turn-fab .turn-confirm{max-width:300px;padding:var(--space-2) var(--space-3);border-radius:14px;color:var(--chocolate);text-align:right}.table-reaction .icon-button{width:56px;height:56px;border-radius:28px}.table-panel{padding:var(--space-3);border-radius:22px;background:var(--paper);box-shadow:var(--shadow-card)}.hud-bottom .autopilot,.hud-bottom .toast,.hud-bottom .claims{box-shadow:var(--shadow-card)}.hud-bottom .claims{padding:var(--space-4)}.step-strip{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:56px;padding:10px 16px 12px;border-radius:22px;color:var(--chocolate);font:600 24px/1.1 var(--font-title);text-align:left;cursor:pointer;touch-action:none}.step-strip-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-strip .icon{flex:none;width:20px;height:20px}.step-sheet{display:flex;flex-direction:column;max-height:min(calc(var(--host-height, 100dvh) * .6),calc(var(--host-height, 100dvh) - 160px));margin:0 calc(-1 * var(--safe-right)) calc(-1 * var(--safe-bottom)) calc(-1 * var(--safe-left));padding:0 max(22px,var(--safe-right)) max(22px,var(--safe-bottom)) max(22px,var(--safe-left));border-radius:26px 26px 0 0;background:var(--paper);box-shadow:0 -12px 32px #3b24182e}.step-sheet-handle{display:grid;flex:none;place-items:center;min-height:42px;padding:0;border:0;background:transparent;cursor:pointer;touch-action:none}.step-sheet-handle:before{content:"";width:40px;height:5px;border-radius:3px;background:var(--line)}.step-sheet-title{flex:none;margin:2px 0 var(--space-2);font:600 34px/1.05 var(--font-title)}.step-sheet-text{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;font:400 17px/1.5 var(--font-text)}.step-sheet-more{flex:none;align-self:flex-start;min-height:42px;padding:0;border:0;color:var(--bronze);background:transparent;font:500 16px/1.2 var(--font-text);cursor:pointer}.step-sheet .turn-actions{flex:none;margin-top:var(--space-2)}.step-sheet .turn-actions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step-sheet .button{min-height:56px;border-radius:18px;font-size:19px}.game-stage>.level-toast-region{position:absolute;top:calc(var(--hud-top, 0px) + var(--space-2))}.game-menu .sheet-header h2{display:grid;gap:2px}.game-menu-code{color:var(--text);font:600 34px/1.05 var(--font-title);letter-spacing:.12em;font-variant-numeric:lining-nums}.connection-tail{margin-left:-4px}.menu-group{display:grid;gap:var(--space-2)}.menu-group-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px var(--space-3);padding:0 4px}.menu-group-head .caption{margin:0;color:var(--bronze);font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.08em;text-transform:uppercase}.menu-group-head p{margin:0;color:var(--muted);font-size:16px}.menu-card{display:grid;overflow:hidden;border:1px solid var(--ivory-line);border-radius:var(--radius-m);background:var(--ivory)}.menu-card>*+*{background:linear-gradient(var(--ivory-line),var(--ivory-line)) 58px 0 / calc(100% - 58px) 1px no-repeat}.menu-item{display:flex;align-items:center;gap:14px;width:100%;min-height:56px;padding:var(--space-2) var(--space-4);border:0;color:var(--text);background-color:transparent;font:17px/1.3 var(--font-text);text-align:left;text-decoration:none;cursor:pointer;touch-action:manipulation}div.menu-item{cursor:default}.menu-card :focus-visible{outline-offset:-3px}@media(hover:hover){:is(button,a).menu-item:hover:not(:disabled){background-color:var(--medal-deep)}.is-danger .menu-item:hover:not(:disabled){background-color:var(--danger-soft)}}.menu-icon{display:grid;flex:none;width:28px;place-items:center;color:var(--bronze)}.menu-icon .icon{width:20px;height:20px}.menu-label{display:grid;flex:1;min-width:0}.menu-label small{color:var(--muted);font-size:16px;font-weight:400;line-height:1.35;text-wrap:balance}.menu-value{display:inline-flex;flex:none;align-items:center;gap:6px;color:var(--muted);font-size:16px;white-space:nowrap}.menu-value .score-value img{width:20px;height:20px}.menu-item>.icon{width:18px;height:18px;flex:none;color:var(--muted);opacity:.7}.menu-item .segmented{flex:none}.menu-item .segmented-item{min-width:88px;padding:var(--space-2) var(--space-3);font:500 16px/1 var(--font-text)}.is-danger .menu-card{border-color:#9a332440}.is-danger :is(.menu-item,.menu-icon){color:var(--danger)}.menu-card>.menu-paused{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:10px;padding:14px;border:1px solid var(--medal-edge);border-radius:14px;background:linear-gradient(180deg,var(--medal-deep),var(--hall-ivory-card));font-size:17px;line-height:1.3;animation:menu-paused-in .3s ease-out both}@keyframes menu-paused-in{0%{opacity:0;transform:translateY(4px)}}.menu-paused .menu-icon{width:36px;height:36px;border:1.5px solid var(--gold-soft);border-radius:50%;color:var(--chocolate);background:var(--ivory)}.menu-paused .menu-icon .icon{width:16px;height:16px;stroke-width:3}.menu-paused .menu-label{font-weight:600}.menu-paused .button{flex-basis:100%;min-height:52px;font-size:17px}.menu-paused .button .icon{width:16px;height:16px;fill:currentColor}.menu-group>.caption{margin:0;padding:0 4px;line-height:1.45;text-wrap:balance}.segmented-wide .segmented-item{min-height:48px}.menu-seat{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);min-height:64px;padding:var(--space-2) var(--space-3) var(--space-2) 14px}.menu-seat img{width:32px;height:32px;object-fit:contain}.menu-seat .menu-label{flex:1 1 120px;font-weight:600}.menu-seat-acts{display:flex;gap:var(--space-2);margin-left:auto}.menu-seat .button{min-height:44px;padding:0 var(--space-3);border-radius:12px;font-size:16px}.menu-seat .is-danger{border-color:#9a332459;color:var(--danger)}.owner-menu{display:grid;gap:var(--space-2)}.owner-menu-tools{display:flex;flex-wrap:wrap;gap:10px}.owner-menu-tools .button{min-height:48px;font-size:17px}.sheet-back{margin-left:-10px}.sheet-back+h2{flex:1;text-wrap:balance}@media(max-width:480px){.sheet-header .sheet-back+h2{font-size:26px}}.sheet-back .icon{transform:scaleX(-1)}.game-menu .game-menu-leave{min-height:48px;gap:10px;border-radius:12px;color:var(--danger);font:500 17px/1.2 var(--font-text);text-decoration:none}.game-menu-leave .icon{width:18px;height:18px}@media(hover:hover){.game-menu .game-menu-leave:hover:not(:disabled){background:var(--danger-soft)}}@media(min-width:1024px){.game-table{display:grid;grid-template-columns:minmax(0,1fr) 420px;grid-template-rows:minmax(0,1fr)}.game-stage .hud-top{padding:max(24px,var(--safe-top)) 24px 0 max(24px,var(--safe-left))}.game-side{display:flex;flex-direction:column;gap:18px;min-height:0;padding:max(22px,var(--safe-top)) max(24px,var(--safe-right)) max(22px,var(--safe-bottom)) 24px;overflow-y:auto;overscroll-behavior:contain;border-left:1px solid var(--line);background:var(--paper)}.game-side-head,.turn-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.game-side-room{display:grid;gap:2px}.game-side .card{gap:var(--space-3);padding:18px 20px 20px;border-radius:22px;box-shadow:0 8px 24px #3b24180f}.game-side .card h2{font:600 26px/1 var(--font-title)}.score-card .score-rows{font:500 17px/1 var(--font-text)}}:root{--bg: #f4eee3;--paper: #fbf6ee;--paper-glass: #fbf6eee8;--text: #4d3122;--chocolate: #4d3122;--muted: #7d6755;--line: #d9c5b1;--surface-reading: linear-gradient(125deg, #fbf6eef5, #fbf6eef2), url(/assets/bg/marble.webp) center / cover;--surface-room: linear-gradient(180deg, #fbf6eef2 0%, #fbf6eee3 25%, #fbf6eeb5 65%, #fbf6eeda 100%), url(/assets/bg/marble.webp) center / cover;--motion-room: cubic-bezier(.23,1,.32,1)}body{background:var(--surface-room);background-attachment:fixed}body:before{display:none}.screen{gap:28px}.card{background:var(--surface-reading);border-color:#d5bb9b3d;box-shadow:none;border-radius:16px;padding:28px}.card>h2{font-weight:500;font-size:32px}.button{font-weight:500;min-height:52px;border-radius:14px;transition:background-color .16s ease,transform .16s var(--motion-room)}.button-primary{background:linear-gradient(115deg,#6b5645,#4d3122);box-shadow:0 5px 18px #4d312212}.button-primary:hover:not(:disabled){background:#4d3122}.button-secondary{border-color:#c9a05a80;background:#fbf6eef0}.button-quiet{background:transparent;box-shadow:none;color:#6b5645}.input{min-height:54px;border-color:#c9a05a99;background:#fbf6ee}.input[aria-invalid=true]{border-color:var(--danger)}.field-label{font-size:16px;font-weight:500}.caption{font-size:16px}.sheet-panel{background:var(--surface-reading);border-radius:22px 22px 0 0}.sheet-header{padding:24px;border-bottom:1px solid #d5bb9b50}.sheet-header h2{font-weight:500;font-size:34px}.sheet-body{padding:24px}.sheet-body .blocks{line-height:1.8}.sheet-close,.icon-button{background:#fbf6ee;border-color:#d5bb9b60}.sheet::backdrop,.stage-overlay::backdrop{background:#2a1c1470}.room-game{max-width:1440px}.board-frame{border:0;box-shadow:none;border-radius:0;background:transparent;-webkit-mask-image:linear-gradient(to bottom,transparent,black 24px,black calc(100% - 24px),transparent);mask-image:linear-gradient(to bottom,transparent,black 24px,black calc(100% - 24px),transparent)}.dice-news{align-items:center}.dice-result{font-family:var(--font-title);font-size:34px;line-height:1.1;font-weight:500;color:var(--chocolate);margin-bottom:8px}.dice{width:76px}.step-card-head h2{font-size:32px;font-weight:500}.stage-overlay{background:var(--surface-room);background-attachment:fixed}.stage-overlay-panel{padding-top:max(32px,var(--safe-top));gap:30px}.stage-overlay-head{padding-bottom:24px;border-bottom:1px solid #c9a05a55}.stage-overlay-heading h2{font-size:48px;font-weight:500}.stage-overlay-who{font-style:normal;font-size:16px}.stage-overlay-collapse{font-weight:400;background:#fbf6eee6}.gate-text .blocks,.gate-questions{line-height:1.8}.gate-text{padding:24px;background:#fbf6eedb;border-radius:16px}.gate-text h3{font-weight:500;font-size:34px}.gate-rule{background:#fbf6eee0;border-color:#d5bb9b55}.gate-questions{background:#fbf6eeed;padding:28px;border-radius:16px}.gate-questions li+li{margin-top:16px}.card-view{filter:drop-shadow(0 12px 15px #4d312220)}.power-card{background:#fbf6eedd;border:1px solid #c9a05a55;padding:24px;border-radius:16px;min-height:180px}.power-card:hover{background:#fbf6ee;border-color:#8a5a2b}.power-title{font-weight:500;font-size:28px}.power-step,.power-essence{color:var(--muted);font-size:16px}@media(min-width:900px){.sheet-panel{border-radius:22px;margin:24px auto;max-height:calc(100dvh - 48px)}.stage-overlay-wide .stage-overlay-panel{max-width:1120px}}@media(max-width:899px){.screen{padding-inline:max(20px,env(safe-area-inset-left));gap:24px}.card{padding:22px}.stage-overlay-heading h2{font-size:34px}.stage-overlay-head{gap:12px}.stage-overlay-collapse{font-size:16px;padding:8px}.stage-overlay-panel{gap:24px}.gate-text{padding:18px}.move-scene .gate-text{padding:0;background:transparent}.sheet-header,.sheet-body{padding:20px}}@media(prefers-reduced-motion:reduce){.button{transition:none}}:root[data-surface=hall],.level-intro{color-scheme:dark;background:var(--hall-deep);scrollbar-color:var(--hall-edge) var(--hall-deep);--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .74), rgba(16, 10, 6, .9) 94%, var(--hall-deep));--hall-primary: linear-gradient(180deg, var(--hall-button) 0%, #3b2418 55%, #2a1c14 100%);--hall-chocolate: linear-gradient(180deg, var(--chocolate-hover), var(--hall-glass));--hall-champagne: linear-gradient(180deg, var(--hall-ink), var(--hall-champ));--hall-line: rgba(220, 188, 133, .3);--hall-field: rgba(16, 10, 6, .5)}:root[data-veil=welcome]{--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .66) 0%, rgba(16, 10, 6, .22) 36%, rgba(16, 10, 6, .5) 56%, var(--hall-deep) 100%)}:root[data-veil=menu],:root[data-veil=room]{--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .6) 0%, rgba(16, 10, 6, .25) 28%, rgba(16, 10, 6, .5) 55%, rgba(23, 15, 9, .92) 85%, var(--hall-deep) 100%);--hall-layer: 860px}:root[data-veil=dim]{--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .72) 0%, rgba(16, 10, 6, .62) 45%, rgba(16, 10, 6, .93) 92%, var(--hall-deep) 100%)}[data-surface=hall] body{color:var(--hall-ink);background:transparent}[data-surface=hall] body,.level-intro{font-size:16px;line-height:1.5;font-variant-numeric:lining-nums;-webkit-font-smoothing:auto}[data-surface=hall] body:before{display:block;position:absolute;inset:0 0 auto;height:var(--hall-layer, max(var(--host-height, 100lvh), 600px));opacity:1;background:var(--hall-side, none),var(--hall-veil),url(/assets/bg/hall.webp) var(--hall-focus, 28% 50%) / cover no-repeat}[data-surface=hall] ::selection{color:var(--hall-deep);background:var(--hall-gold)}[data-surface=hall] :focus-visible{outline-color:var(--hall-amber)}[data-surface=hall] input{caret-color:var(--hall-amber)}[data-surface=hall] :is(h1,h2,h3){color:var(--hall-ink);font-weight:500;font-variant-numeric:lining-nums;line-height:1.05;letter-spacing:normal}[data-surface=hall] a{color:var(--hall-link)}[data-surface=hall] a:hover{color:var(--hall-link-hover)}[data-surface=hall] .caption{color:var(--hall-muted);font-size:13px;line-height:1.45}[data-surface=hall] .caption.kicker{color:var(--hall-gold);font-family:var(--font-text);font-size:13px;font-weight:400;line-height:1.4;letter-spacing:.18em;text-transform:uppercase;text-wrap:balance}[data-surface=hall] .screen{gap:24px;padding-top:max(20px,var(--safe-top));padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right))}.screen-back .icon{transform:scaleX(-1)}[data-surface=hall] .connection{color:var(--hall-muted)}[data-surface=hall] .button{min-height:56px;padding:8px 20px;border-radius:16px;font-size:18px;font-weight:600;text-decoration:none;transition:filter .16s ease,background-color .16s ease,transform .12s ease}[data-surface=hall] .button-primary{border-color:var(--hall-edge);color:var(--hall-label);background:var(--hall-primary);box-shadow:inset 0 1px #ffe2b447,0 10px 26px #100a0680,0 0 22px #c4956542}[data-surface=hall] .button-secondary{border-color:#f3e6d3b3;color:var(--hall-ivory-ink);background:var(--hall-champagne);box-shadow:inset 0 1px #fbf6eeb3,0 10px 24px #100a0661}.button-ghost{border-color:var(--marble-deep);color:var(--hall-ivory-ink);background:#fbf6eebf}[data-surface=hall] .button-ghost{border-color:#dcbc858c;color:var(--hall-ink);background:#f3e6d30f}[data-surface=hall] .button-danger{border-color:var(--hall-danger);color:var(--paper);background:var(--danger);box-shadow:inset 0 1px #f6e3dc40,0 8px 20px #9a332447}[data-surface=hall] .button-quiet{min-height:44px;padding:8px 6px;border:0;color:var(--hall-link);background:transparent;box-shadow:none;font-size:16px;font-weight:400;line-height:1.5;text-decoration:underline;text-decoration-color:#ecd3a573;text-underline-offset:4px}@media(hover:hover){[data-surface=hall] :is(.button-primary,.button-secondary,.button-danger):hover:not(:disabled){filter:brightness(1.07)}[data-surface=hall] .button-primary:hover:not(:disabled){background:var(--hall-primary)}[data-surface=hall] .button-secondary:hover:not(:disabled){background:var(--hall-champagne)}[data-surface=hall] .button-ghost:hover:not(:disabled){background:#f3e6d31f}[data-surface=hall] .button-quiet:hover:not(:disabled){color:var(--hall-link-hover)}}.button-text{display:grid;justify-items:center;gap:1px}[data-surface=hall] .button .caption{color:var(--hall-sub);font-weight:400;line-height:1.35}[data-surface=hall] .button-secondary .caption{color:var(--hall-ivory-sub)}[data-surface=hall] .icon-button{border-color:#dcbc8573;border-radius:50%;color:var(--hall-ink);background:#2e1d128c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-surface=hall] .icon-button:hover:not(:disabled){border-color:var(--hall-amber)}[data-surface=hall] .field-label{color:var(--hall-ink);font-size:16px;font-weight:400}[data-surface=hall] :is(.input,.select){min-height:52px;padding:0 16px;border-color:#dcbc8580;border-radius:14px;color:var(--hall-ink);background-color:var(--hall-field);font-size:17px}[data-surface=hall] .select{padding-right:44px;background-repeat:no-repeat;background-position:right 14px center;background-size:18px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dcbc85' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}[data-surface=hall] .input::placeholder{color:#c8b193cc}[data-surface=hall] :is(.input,.select):focus-visible{border-color:var(--hall-amber)}[data-surface=hall] .input[aria-invalid=true]{border-color:var(--hall-danger);box-shadow:0 0 0 3px #f4a58c2e}[data-surface=hall] .form-error{color:var(--hall-danger)}[data-surface=hall] .card{gap:14px;padding:20px;border:1px solid var(--hall-line);border-radius:24px;background:linear-gradient(180deg,#2e1d12c2,#170f09d6);box-shadow:0 24px 60px #100a0680,inset 0 1px #ffe2b41a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}[data-surface=hall] .card>h2{font-size:30px}[data-surface=hall] .ivory{border:1px solid rgba(251,246,238,.85);color:var(--hall-ivory-ink);background:linear-gradient(180deg,var(--paper),var(--bg));box-shadow:0 22px 50px #100a0673;-webkit-backdrop-filter:none;backdrop-filter:none}[data-surface=hall] .notice{border-color:#dcbc8573;color:var(--hall-ink);background:#2e1d12d1}[data-surface=hall] .notice-close{color:var(--hall-muted)}[data-surface=hall] .ornament{width:min(170px,60%);gap:10px;color:var(--gold-soft)}[data-surface=hall] .ornament:before{background:linear-gradient(90deg,rgba(201,160,90,0),currentColor);opacity:1}[data-surface=hall] .ornament:after{background:linear-gradient(90deg,currentColor,rgba(201,160,90,0));opacity:1}[data-surface=hall] .ornament span{background:var(--hall-amber);box-shadow:0 0 10px #e8c792bf}[data-surface=hall] .divider{color:var(--hall-muted)}[data-surface=hall] .divider:before,[data-surface=hall] .divider:after{background:var(--hall-line)}[data-surface=hall] .room-code{color:var(--hall-ink);font-family:var(--font-title)}[data-surface=hall] .sheet{border-radius:26px 26px 0 0;color:var(--hall-ivory-body);background:transparent;box-shadow:0 -12px 40px #100a0673}[data-surface=hall] .sheet::backdrop{background:#100a06cc}[data-surface=hall] .sheet[data-nested]::backdrop{background:transparent}[data-surface=hall] .sheet-panel{border-radius:inherit;background:linear-gradient(180deg,var(--paper),var(--bg))}@media(max-width:899px){[data-surface=hall] .sheet-panel{max-height:calc(var(--host-height, 100dvh) - var(--safe-top) - 28px)}}[data-surface=hall] .sheet-panel:before{content:"";flex:none;align-self:center;width:44px;height:5px;margin-top:10px;border-radius:3px;background:var(--line)}[data-surface=hall] .sheet-header{padding:10px 18px 4px 24px;border-bottom:0}[data-surface=hall] .sheet-header h2{font-size:28px;line-height:1.1}[data-surface=hall] .sheet-body{padding:12px 24px calc(var(--safe-bottom) + 24px)}[data-surface=hall] .sheet-body :where(p,.blocks){line-height:1.55}[data-surface=hall] .sheet-close{width:44px;height:44px;border:1px solid var(--marble-deep);color:var(--chocolate);background:#fbf6eee6}[data-surface=hall] :is(.sheet,.ivory) :is(h1,h2,h3){color:var(--hall-ivory-ink)}[data-surface=hall] :is(.sheet,.ivory) .caption{color:var(--hall-ivory-muted)}[data-surface=hall] :is(.sheet,.ivory) .caption.kicker,[data-surface=hall] :is(.sheet,.ivory) a{color:var(--bronze)}[data-surface=hall] :is(.sheet,.ivory) .button-danger{border-color:var(--hall-danger-edge)}[data-surface=hall] :is(.sheet,.ivory) .button-primary{border-color:var(--hall-edge);color:var(--hall-label);background:var(--hall-chocolate);box-shadow:inset 0 1px #ffe2b438,0 8px 20px #3b241847}[data-surface=hall] :is(.sheet,.ivory) :is(.button-secondary,.button-ghost){border-color:var(--marble-deep);color:var(--hall-ivory-ink);background:#fbf6eebf;box-shadow:none}[data-surface=hall] :is(.sheet,.ivory) .button-quiet{color:var(--bronze);text-decoration-color:#8a5a2b73}[data-surface=hall] :is(.sheet,.ivory) .button .caption{color:var(--hall-ivory-muted)}[data-surface=hall] :is(.sheet,.ivory) .button-primary .caption{color:var(--hall-sub)}[data-surface=hall] :is(.sheet,.ivory) .icon-button{border-color:var(--marble-deep);color:var(--chocolate);background:#fbf6eee6;-webkit-backdrop-filter:none;backdrop-filter:none}[data-surface=hall] :is(.sheet,.ivory) .field-label{color:var(--hall-ivory-ink)}[data-surface=hall] :is(.sheet,.ivory) :is(.input,.select){border-color:var(--marble-deep);color:var(--hall-ivory-ink);background-color:var(--paper)}[data-surface=hall] :is(.sheet,.ivory) .input::placeholder{color:var(--placeholder)}[data-surface=hall] :is(.sheet,.ivory) .form-error{color:var(--danger)}[data-surface=hall] :is(.sheet,.ivory) .room-code{color:var(--hall-ivory-ink)}[data-surface=hall] :is(.sheet,.ivory) :focus-visible{outline-color:var(--bronze)}[data-surface=hall] :is(.sheet,.ivory) input{caret-color:var(--bronze)}.screen.entry{display:flex;flex-direction:column;gap:16px;padding-top:max(60px,var(--safe-top));padding-bottom:calc(var(--safe-bottom) + 10px)}.screen.entry-menu{padding-top:max(56px,var(--safe-top))}.screen.entry-invite{padding-top:max(52px,var(--safe-top));padding-bottom:calc(var(--safe-bottom) + 1px)}.entry-mark{display:none}.entry-brand{display:flex;flex-direction:column;align-items:center;text-align:center}.entry-emblem{width:44px;height:auto}.entry-brand h1{margin-top:16px;font-size:50px}:is(.entry-brand h1,.status-brand){text-shadow:0 2px 24px rgba(16,10,6,.55)}[data-surface=hall] .entry-tagline{margin-top:10px;color:var(--hall-ink-2);font-size:17px;line-height:1.55;text-wrap:balance}.hero-signature{width:176px;height:auto;margin-top:4px}.entry-lead{display:none}.entry-brand .ornament{margin-top:8px}.entry-portal{width:138px;height:auto;margin-top:16px;filter:drop-shadow(0 0 26px rgba(255,226,180,.45))}.entry-portal~h1{margin-top:14px;font-size:40px}.entry-room{display:flex;align-items:center;gap:12px;margin-top:14px;padding:8px 20px;border:1px solid rgba(220,188,133,.5);border-radius:999px;background:var(--hall-field)}.entry-room .room-code{font-size:26px;line-height:1.5;letter-spacing:.14em}.entry-menu .entry-brand{margin-bottom:clamp(32px,18dvh,152px)}.entry-menu .entry-emblem{width:40px}.entry-menu .entry-brand h1{margin-top:14px;font-size:46px}[data-surface=hall] .entry-menu .entry-tagline{max-width:15em;font-size:16px}.entry-menu .entry-brand .ornament{margin-top:16px}.entry-welcome .entry-form{margin-top:auto}[data-surface=hall] .entry-form{gap:16px;padding:22px 20px 20px}.entry-form-head{display:grid;gap:6px}.entry-form h2{font-size:30px;line-height:1.1}.entry-form-lead{color:var(--hall-lead);line-height:1.55}.entry-form>.entry-form-lead{color:var(--hall-ink);font-size:17px}[data-surface=hall] .entry-invite .entry-form{gap:14px;padding-top:20px}.entry .greeting{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:12px}.entry .greeting p{font-size:17px}[data-surface=hall] .entry-start{gap:12px}.entry-start>.kicker{text-align:center}.entry-start .button,.room-closed-actions .button-wide{min-height:64px}.entry-start .divider{margin-top:6px}.code-input{letter-spacing:.08em}[data-surface=hall] .code-row .button{min-height:52px;padding:0 18px;font-size:16px}.entry .room-list{display:grid;gap:10px;margin-top:44px}.entry .room-list h2{margin:0 0 2px 4px}.entry .room-list ul{gap:10px}[data-surface=hall] .room-row{grid-template-columns:48px minmax(0,1fr) auto;gap:14px;padding:14px 16px;border-color:#dcbc8547;border-radius:18px;color:var(--hall-ink);background:#1e130cb8}.room-medal{display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(220,188,133,.45);border-radius:50%;background:radial-gradient(circle at 50% 35%,#ffe2b429,#ffe2b400 70%)}.room-medal img{width:auto;height:36px;filter:drop-shadow(0 4px 8px rgba(16,10,6,.3))}.room-medal-empty{width:18px;height:26px;border:1px dashed rgba(220,188,133,.45);border-radius:7px}[data-surface=hall] .room-row:hover:not(:disabled){border-color:var(--hall-amber)}[data-surface=hall] .room-row .icon{color:var(--hall-gold)}.room-row-text{display:grid;gap:3px}.room-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}.room-row-phase{display:inline-flex;align-items:center;gap:6px}.room-row-phase:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}[data-surface=hall] .room-row-phase[data-phase=playing]{color:var(--hall-live)}[data-surface=hall] .room-row-phase[data-phase=lobby]{color:var(--hall-amber)}[data-surface=hall] .room-row-meta.caption{font-size:14px}.entry-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;margin-top:2px}:is(.entry-links,.greeting)>.button-quiet{margin-block:-10px}.caption.entry-footnote{display:flex;align-items:center;justify-content:center;gap:8px}.entry-footnote .icon{width:18px;height:18px}.entry :is(.entry-demo-note,.install-app-button),.entry-welcome .entry-footnote{display:none}.entry-menu .entry-links{margin-top:20px}.entry-menu .entry-links>:is(.entry-demo,.entry-demo-note,.install-app-button){display:flex;flex-basis:100%;order:-1}.entry-menu :is(.entry-demo,.install-app-button){min-height:52px;font-size:16px}.entry-menu .entry-demo-note{text-align:center}.entry-menu .install-app-button{margin:8px 0 24px}@media(max-width:1023px){[data-surface=hall] .entry-start{padding:0;border:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.entry-start>.kicker{display:none}}:is(.solo-head,.lobby-welcome){display:grid;gap:8px}[data-surface=hall] :is(.solo,.room-claim){gap:16px;padding-inline:max(20px,var(--safe-left)) max(20px,var(--safe-right))}[data-surface=hall] :is(.public-rooms-screen,.room-claim){gap:14px}[data-surface=hall] .public-empty{gap:18px;padding-inline:max(24px,var(--safe-left)) max(24px,var(--safe-right))}[data-surface=hall] .solo>.card{gap:12px;padding:18px 16px}:is(.solo-head,.lobby-welcome) h1{font-size:clamp(34px,10.8vw,42px);text-wrap:balance}.lobby-welcome h1{font-size:clamp(34px,10.3vw,40px)}[data-surface=hall] :is(.solo-head,.lobby-welcome) h1+p{color:var(--hall-lead);font-size:16px;line-height:1.55}.chip-hint{color:var(--hall-ink-2);font:italic 20px/1.3 var(--font-title);font-variant-numeric:lining-nums}.chip-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}.chip-button{display:grid;width:100%;place-items:center;padding:8px 0;border:1px solid rgba(220,188,133,.18);border-radius:14px;background:#f3e6d30d;cursor:pointer;touch-action:manipulation;transition:border-color .16s ease}.chip-button img{width:auto;max-width:100%;height:62px;object-fit:contain}@media(hover:hover){.chip-button:not([aria-disabled=true]):hover{border-color:var(--hall-amber)}}.chip-button[aria-disabled=true]{cursor:default}.chip-mine .chip-button{border:1.5px solid var(--hall-amber);background:radial-gradient(circle at 50% 40%,#e8c7924d,#e8c7920f 70%);box-shadow:0 0 18px #e8c79259}.chip-taken .chip-button{border-style:dashed;border-color:#dcbc854d;background:none;opacity:.42}.chip-detail{color:var(--hall-ink-2);font-size:16px}.chip-detail strong{color:var(--hall-ink);font:600 24px/1.5 var(--font-title)}.tuning{display:grid;gap:4px;margin:0;padding-left:14px;border-left:2px solid var(--gold-soft)}.tuning blockquote{margin:0;font:italic 20px/1.3 var(--font-title);font-variant-numeric:lining-nums}.stepper{display:flex;align-items:center;gap:14px}.stepper output{min-width:24px;font:600 36px/1 var(--font-title);font-variant-numeric:lining-nums;text-align:center}.program-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}[data-surface=hall] .field-label.caption{color:var(--hall-muted);font-size:13px}[data-surface=hall] :is(.sheet,.ivory) .field-label.caption{color:var(--hall-ivory-muted)}[data-surface=hall] .program-fields .select{padding:0 34px 0 14px;background-position:right 10px center;font-size:16px}.public-empty,.room-claim{display:flex;flex-direction:column}.room-claim>.button{margin-top:auto}[data-surface=hall] .room-claim{padding-bottom:calc(var(--safe-bottom) + 8px)}[data-surface=hall] :is(.public-empty,.status.room-closed){padding-bottom:calc(var(--safe-bottom) + 12px)}[data-surface=hall] .status{padding-bottom:calc(var(--safe-bottom) + 16px)}[data-surface=hall] .status-boot{padding-bottom:calc(var(--safe-bottom) + 4px)}.public-empty .status-title{font-size:30px}.public-empty .status-text{color:var(--hall-lead)}:is(.public-empty-actions,.room-closed-actions){display:grid;gap:12px}.public-empty .status-stone{width:150px;opacity:1;filter:drop-shadow(0 0 30px rgba(232,199,146,.35))}.public-rooms{display:grid;gap:16px;margin:0;padding:0;list-style:none}[data-surface=hall] .public-room{grid-template-columns:minmax(0,1fr);gap:12px;padding:16px}[data-surface=hall] .public-room .button{min-height:48px;font-size:16px}.public-room-top{display:flex;align-items:center;gap:12px}.public-room-avatar{display:grid;flex:none;width:44px;height:44px;place-items:center;border:1px solid rgba(255,226,180,.7);border-radius:50%;color:var(--hall-ivory-ink);background:var(--hall-champagne);font:600 24px/1 var(--font-title);font-variant-numeric:lining-nums}.public-room-host{display:grid;flex:1;min-width:0}.public-room-host strong{overflow:hidden;font-size:17px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.caption.public-room-count{display:flex;flex:none;align-items:center;gap:6px;color:var(--hall-gold);font-size:14px}.public-room-count .icon{width:18px;height:18px}.caption.public-room-facts{display:flex;flex-wrap:wrap;gap:8px;color:var(--hall-ink-2);font-size:14px}.public-room-facts span{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid rgba(220,188,133,.35);border-radius:999px}.public-room-facts .icon{width:16px;height:16px}.public-room-seats{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.public-room-seats img{width:auto;height:34px;filter:drop-shadow(0 4px 8px rgba(16,10,6,.3))}.public-seat-free,.public-seat-taken{width:22px;height:30px;border:1px dashed rgba(220,188,133,.35);border-radius:8px}.public-seat-taken{border-style:solid;background:#dcbc851f}.seat-list{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}.seat-list legend{margin-bottom:12px;padding:0}.seat-row{display:grid;grid-template-columns:30px minmax(0,1fr) 26px;align-items:center;gap:14px;padding:10px 14px;border:1px solid rgba(220,188,133,.28);border-radius:16px;background:#2e1d12b8;cursor:pointer}.seat-row:has(:checked){border-color:var(--hall-amber);box-shadow:0 0 18px #e8c79233}.seat-row .table-who{display:grid}.seat-row .table-name{color:var(--hall-ink);font-size:17px}.seat-row .table-meta{color:var(--hall-muted)}.seat-row input{width:26px;height:26px;margin:0;border:1.5px solid var(--hall-gold);border-radius:50%;appearance:none;cursor:pointer}.seat-row input:checked{border-color:var(--hall-amber);background:var(--hall-amber) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232a1c14' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E") center / 16px no-repeat}.claim-chip{display:grid;width:136px;height:136px;margin:21px 0 10px;place-items:center;border:1px solid rgba(220,188,133,.6);border-radius:50%;background:radial-gradient(circle at 50% 40%,#e8c79247,#e8c7920a 70%);box-shadow:0 0 40px #e8c79247;outline:1px dashed rgba(220,188,133,.55);outline-offset:19px}.claim-chip img{width:auto;height:96px}[data-surface=hall] .update-banner{bottom:calc(var(--safe-bottom) + 8px);gap:14px 10px;padding:16px;border-color:#dcbc8599;border-radius:24px;background:linear-gradient(180deg,var(--hall-glass),var(--hall-deep));box-shadow:0 24px 60px #100a0680}.update-banner p{display:flex;align-items:center;gap:12px;flex-basis:100%;font-size:17px;font-weight:600}[data-surface=hall] .update-banner p .icon{width:44px;height:44px;padding:10px;border:1px solid rgba(220,188,133,.55);border-radius:50%;color:var(--hall-amber);background:radial-gradient(circle at 50% 40%,#e8c79240,#e8c79200 70%)}.update-banner .button{flex:1;min-height:44px;font-size:16px}.install-sheet{gap:14px;margin-top:-8px}.install-tile{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid var(--hall-ivory-card-edge);border-radius:18px;background:linear-gradient(180deg,var(--hall-ivory-card),var(--hall-ivory-card-deep));font:600 28px/1.1 var(--font-title);font-variant-numeric:lining-nums}.install-tile img{width:76px;height:76px;padding:14px;border:1px solid var(--hall-edge);border-radius:20px;background:var(--hall-chocolate, var(--chocolate));box-shadow:0 10px 24px #3b24184d;object-fit:contain}.install-step{display:flex;align-items:flex-start;gap:14px;padding-top:14px;border-top:1px solid var(--marble)}.install-step>div{display:grid;gap:4px}.install-step-icon{display:grid;flex:none;place-items:center;width:40px;height:40px;border:1px solid var(--marble-deep);border-radius:50%;color:var(--hall-ivory-tag);background:var(--paper)}.install-step-icon .icon{width:20px;height:20px}.install-sheet h3{font:600 17px/1.5 var(--font-text)}[data-surface=hall] .rename-confirm{gap:14px;margin-top:-2px}[data-surface=hall] .rename-confirm .button-secondary{min-height:52px;font-size:16px}[data-surface=hall] .author-photo{width:220px;height:290px;border:1px solid var(--gold-soft);border-radius:110px 110px 20px 20px;box-shadow:0 0 0 6px #c9a05a24,0 18px 40px #3b241847;object-fit:cover;object-position:50% 18%}[data-surface=hall] .about-sheet .sheet-header h2{font-size:32px;line-height:1.05}.about,.about-section{display:grid;gap:14px}.about{margin-top:-6px}.about-section+.about-section{margin-top:4px}.about-section>h3{line-height:1.05}:is(.about-hero,.author-letter){border:1px solid var(--hall-ivory-card-edge);border-radius:18px;background:linear-gradient(180deg,var(--hall-ivory-card),var(--hall-ivory-card-deep))}.about-hero{display:flex;align-items:center;gap:14px;padding:12px 16px}.about-hero img{flex:none;width:66px;height:auto}[data-surface=hall] .about-hero p{color:var(--chocolate);font:italic 400 22px/1.15 var(--font-title);font-variant-numeric:lining-nums}.about-levels{display:grid;gap:14px;margin:0;padding:0;list-style:none}.about-levels li{display:flex;align-items:flex-start;gap:14px}.about-levels li>div{display:grid;gap:2px}.about-level-mark{display:grid;flex:none;place-items:center;width:40px;height:40px;border:1px solid var(--gold-soft);border-radius:50%;color:var(--hall-medal-ink);background:radial-gradient(circle at 50% 30%,var(--hall-medal),var(--hall-medal-deep));font:600 21px/1 var(--font-title);font-variant-numeric:lining-nums}.about-levels strong{color:var(--hall-ivory-ink);font-size:17px;font-weight:600;line-height:1.3}[data-surface=hall] .about-levels .caption{color:var(--bronze);line-height:1.5;letter-spacing:.08em;text-transform:uppercase}[data-surface=hall] .about-levels p{margin-top:2px;line-height:1.5}.author-about{justify-items:center;gap:12px;margin-top:-8px;text-align:center}[data-surface=hall] .author-about .author-signature{width:196px;margin:4px auto 0}.author-about>h3{font-size:32px;font-weight:500;line-height:1.05}[data-surface=hall] .author-about>.caption.kicker{letter-spacing:.12em;text-wrap:balance}[data-surface=hall] .author-about>.ornament{width:160px;margin:4px 0}.author-about>:is(.blocks,.author-letter){justify-self:stretch;text-align:left}.author-letter{display:grid;gap:10px;margin:6px 0 0;padding:18px 20px}[data-surface=hall] .author-letter>.caption.kicker{color:var(--hall-ivory-tag)}[data-surface=hall] .author-letter .author-quote{color:var(--chocolate);font:italic 400 23px/1.22 var(--font-title)}[data-surface=hall] .author-letter .author-sign{color:var(--hall-ivory-ink);font:italic 500 20px/1.2 var(--font-title);text-align:right}.status{display:flex;flex-direction:column;gap:24px}.status-body{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.status-logo{width:72px;height:auto}:is(.status-logo,.entry-emblem,.entry-mark img,.results-emblem){filter:drop-shadow(0 0 14px rgba(232,199,146,.65))}.status-stone{width:120px;height:auto;opacity:.92;filter:drop-shadow(0 0 24px rgba(232,199,146,.3))}.status-title{max-width:320px;font-size:40px;text-wrap:balance}.status .status-stone~.status-title{font-size:38px}.status-brand{margin-top:6px;font-size:48px;text-shadow:0 2px 24px rgba(16,10,6,.55)}.status-text{max-width:300px;color:var(--hall-ink-2);font-size:16px;line-height:1.55}.status-body>.caption:not(.kicker){max-width:300px}.room-claim .status-text{max-width:320px}.room-closed-portal{width:150px;height:auto;opacity:.8;filter:saturate(.7) drop-shadow(0 0 20px rgba(255,226,180,.25))}.room-closed .kicker{margin-top:6px}.room-closed .status-title{font-size:42px}.room-closed-actions>.button-quiet{justify-self:center;margin:-4px 0 -10px}[data-surface=hall] :is(.status-signature,.hero-signature){filter:brightness(0) invert(.9) sepia(.45) saturate(1.3)}.status-signature{width:170px;height:auto;margin-top:-8px}.status-progress{width:180px;height:2px;margin-top:22px;overflow:hidden;border-radius:2px;background:#dcbc8538}.status-progress:after{content:"";display:block;width:62%;height:100%;background:linear-gradient(90deg,var(--bronze),var(--hall-amber));box-shadow:0 0 10px #e8c792cc;animation:status-drift 1.4s ease-in-out infinite alternate}@keyframes status-drift{0%{transform:translate(-100%)}to{transform:translate(165%)}}@media(prefers-reduced-motion:reduce){.status-progress:after{animation:none;transform:translate(35%)}}@media(min-width:900px){[data-surface=hall] .sheet{border-radius:26px}[data-surface=hall] .sheet-panel:before{display:none}[data-surface=hall] .sheet-header{padding-top:18px}}@media(min-width:1024px){:root[data-surface=hall]{--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .8), rgba(16, 10, 6, .86));--hall-focus: center 45%;--hall-layer: auto}:root[data-veil=welcome],:root[data-veil=menu]{--hall-side: linear-gradient(90deg, rgba(16, 10, 6, .86) 0%, rgba(16, 10, 6, .55) 34%, rgba(16, 10, 6, .22) 56%, rgba(16, 10, 6, .62) 100%);--hall-veil: linear-gradient(180deg, rgba(16, 10, 6, .3) 0%, rgba(16, 10, 6, 0) 30%, rgba(16, 10, 6, .55) 100%)}[data-surface=hall] body:before{position:fixed;inset:0}[data-surface=hall] .screen{padding-top:max(40px,var(--safe-top))}.screen.entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);grid-template-rows:auto auto 1fr auto auto 1fr;grid-template-areas:"mark links" "notice notice" ". form" "brand form" "foot form" ". form";gap:0 48px;max-width:1240px;padding:max(36px,var(--safe-top)) 40px 44px}.screen.entry-menu{grid-template-rows:auto auto 1fr auto auto auto auto 1fr;grid-template-areas:"mark greet" "notice notice" ". start" "brand start" "rooms start" "links start" "foot start" ". start"}.entry-mark{display:flex;grid-area:mark;align-items:center;gap:12px;color:var(--hall-ink);font:600 24px/1 var(--font-title);font-variant-numeric:lining-nums;letter-spacing:.02em}.entry-mark img{width:30px;height:auto}.entry .notice{grid-area:notice;margin-top:24px}.entry-brand{grid-area:brand;align-items:flex-start;text-align:left}[data-surface=hall] .caption.entry-tagline{order:-1;max-width:none;margin:0;color:var(--hall-gold);font-size:13px;letter-spacing:.18em;text-transform:uppercase}.entry-emblem{display:none}.entry .entry-brand h1{margin-top:18px;font-size:clamp(54px,6.6vw,96px);line-height:.95;text-shadow:0 4px 40px rgba(16,10,6,.5)}.entry-menu .entry-brand h1{font-size:clamp(50px,6.2vw,88px)}.entry .entry-portal~h1{font-size:clamp(44px,4.6vw,64px)}.hero-signature{width:250px;margin-top:16px}.entry-lead{display:block;max-width:460px;margin-top:16px;color:var(--hall-ink-2);font-size:20px}[data-surface=hall] .entry-brand .ornament{width:200px;margin:28px 0 0}.entry-menu .entry-brand{margin-bottom:0}.entry-menu .entry-brand .ornament{margin-top:22px}.entry-welcome .entry-form{margin-top:0}.entry-form{grid-area:form}[data-surface=hall] :is(.entry-form,.entry-start){align-self:center;gap:18px;padding:30px 28px 28px}.entry-start{grid-area:start}.entry-form h2{font-size:34px}.entry-start .button{min-height:68px}.entry .greeting{grid-area:greet;justify-content:flex-end;gap:14px}.entry .room-list{grid-area:rooms;margin-top:56px}.entry .room-list ul{display:flex;flex-wrap:wrap;gap:12px}.entry .room-list li{flex:1 1 260px;max-width:310px}.entry-links{grid-area:links;justify-content:flex-end;align-self:center;gap:12px 16px;margin:0 -6px}.entry-welcome .entry-links{justify-self:end;width:max-content}.entry-menu .entry-links{justify-content:flex-start;margin-top:26px}.entry .entry-links>:is(.entry-demo,.install-app-button){display:inline-flex;flex-basis:auto;order:0;width:auto;min-height:44px;margin:0;padding:8px 6px;border:0;color:var(--hall-amber);background:none;box-shadow:none;font-size:16px;font-weight:400;text-decoration:underline;text-decoration-color:#e8c79273;text-underline-offset:4px}.entry-menu .entry-links>.entry-demo{order:-1}.entry .entry-links>.install-app-button{order:1}.entry-links .install-app-button .icon,.entry .entry-links>.entry-demo-note{display:none}.entry .entry-footnote{display:flex;grid-area:foot;justify-content:flex-start;margin-top:24px;font-size:16px}.entry-menu .entry-footnote{margin-top:14px}.status{justify-content:center}.status-body{flex:none}}.room-back .icon{transform:scaleX(-1)}[data-surface=hall] .room-back{width:44px;min-height:44px;padding:0;border-radius:50%}.room-back-text,.room-head-code{display:none}[data-surface=hall] .room-call{min-height:44px;padding:0 16px;font-size:16px}[data-surface=hall] .connection-float{position:fixed;top:calc(max(20px,var(--safe-top)) + 56px);left:50%;z-index:15;padding:8px 16px;border:1px solid rgba(220,188,133,.45);border-radius:999px;color:var(--hall-ink);background:#2e1d12f0;box-shadow:0 10px 26px #100a0680;white-space:nowrap;transform:translate(-50%);animation:connection-float-in .2s ease-out 1.2s both}@keyframes connection-float-in{0%{opacity:0;translate:0 -6px}}[data-surface=hall] .screen.room-lobby{gap:14px;padding-inline:max(16px,var(--safe-left)) max(16px,var(--safe-right));padding-bottom:0}.lobby-welcome{padding:4px 8px 0}[data-surface=hall] .claims{gap:10px;padding:18px;border-color:#e8c792b3;box-shadow:0 0 32px #e8c79229,0 24px 60px #100a0680,inset 0 1px #ffe2b41f}[data-surface=hall] .claim-who{font-size:17px}[data-surface=hall] .claim-request+.claim-request{padding-top:14px;border-top-color:var(--hall-line)}[data-surface=hall] .claim-actions .button{min-height:44px;font-size:16px}[data-surface=hall] :is(.lobby-invite,.lobby-call,.chip-picker.ivory){gap:12px}.invite-ticket{display:grid;width:min(300px,100%);aspect-ratio:900 / 328;margin:2px auto;padding-right:15%;place-items:center;color:var(--chocolate);background:url(/assets/decor/plaque.webp) center / contain no-repeat;font:600 38px/1 var(--font-title);font-variant-numeric:lining-nums;letter-spacing:.16em;text-indent:.16em}.invite-actions,.call-actions{display:flex;gap:10px}[data-surface=hall] .invite-actions .button{flex:1;min-height:52px;font-size:16px}.invite-actions .icon-button{width:52px;height:52px}.call-line{display:flex;align-items:center;gap:12px}.call-badge{display:grid;flex:none;width:44px;height:44px;place-items:center;border:1px solid var(--marble-deep);border-radius:50%;color:var(--bronze);background:var(--paper)}.call-what{display:grid;min-width:0}.call-what strong{font-size:17px;font-weight:600}[data-surface=hall] .call-what .caption{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}[data-surface=hall] .call-actions .button{min-height:48px;font-size:16px}.call-actions .button-primary{flex:1}[data-surface=hall] .ivory :is(.chip-hint,.chip-detail){color:var(--chocolate-hover)}[data-surface=hall] .ivory .chip-detail strong{color:var(--hall-ivory-ink)}.ivory .chip-button{border-color:var(--line);background:var(--paper)}@media(hover:hover){.ivory .chip-button:not([aria-disabled=true]):hover{border-color:var(--gold-soft)}}.ivory .chip-mine .chip-button{border-color:var(--gold-soft);background:radial-gradient(circle at 50% 40%,var(--paper),var(--marble) 75%);box-shadow:0 0 0 3px #c9a05a2e,0 6px 16px #8a5a2b40}.ivory .chip-taken .chip-button{border-color:var(--marble-deep);background:none}[data-surface=hall] :is(.sheet,.ivory) .select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a5a2b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}[data-surface=hall] .ivory .segmented{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--marble)}[data-surface=hall] .ivory .segmented-item{flex:1;min-width:0;min-height:40px;padding:0 8px;border:0;border-radius:10px;color:var(--chocolate-hover);font-size:16px;font-weight:400}[data-surface=hall] .ivory .segmented-item[aria-pressed=true]{color:var(--hall-label);background:var(--hall-chocolate);box-shadow:0 4px 10px #3b241840}@media(hover:hover){[data-surface=hall] .ivory .segmented-item:not([aria-pressed=true],:disabled):hover{background:#fbf6eebf}}[data-surface=hall] .lobby-table{gap:8px}.lobby-table-head{display:flex;align-items:baseline;gap:12px}[data-surface=hall] .caption.lobby-count{margin-left:auto;color:var(--bronze);font-size:14px}.lobby-table-head .icon-button{align-self:center}[data-surface=hall] .lobby-table-head .icon-button{width:36px;height:36px}.lobby-seats{display:grid;margin:0;padding:0;list-style:none}.lobby-seat{display:grid;gap:10px;padding:12px 0;border-top:1px solid var(--marble)}.lobby-seat-main{display:flex;align-items:center;gap:12px}.lobby-seat .chip-thumb{width:40px;height:50px}.lobby-seat .table-who{flex:1}.lobby-seat-name{display:flex;align-items:center;gap:6px}.lobby-seat .table-name{min-width:0;color:var(--hall-ivory-ink);font-size:17px}[data-surface=hall] .caption.tag{flex:none;padding:4px 8px;border:1px solid var(--marble-deep);border-radius:999px;color:var(--hall-ivory-tag);background:var(--paper);line-height:1}[data-surface=hall] .lobby-seat .caption.table-meta{font-size:14px}[data-surface=hall] .lobby-seat .icon-button{width:36px;height:36px}.lobby-seat-controls{display:flex;align-items:center;gap:8px;padding-left:52px}.lobby-seat-controls .segmented{flex:1}[data-surface=hall] .lobby-seat-controls .segmented-item{min-height:34px}.seat-up .icon{transform:scaleY(-1)}[data-surface=hall] .lobby-add-bot{min-height:48px;margin-top:4px;font-size:16px}[data-surface=hall] .lobby-meeting{gap:18px}[data-surface=hall] .lobby-meeting-read{gap:8px}.meeting-line{font:600 24px/1.2 var(--font-title);font-variant-numeric:lining-nums}[data-surface=hall] .lobby-name{gap:10px}[data-surface=hall] .lobby-name .button{justify-self:start;min-height:48px;font-size:16px}.lobby-dock{position:sticky;bottom:0;z-index:10;display:grid;gap:10px;margin-inline:calc(-1*max(16px,var(--safe-left))) calc(-1*max(16px,var(--safe-right)));padding:28px max(16px,var(--safe-right)) max(20px,calc(var(--safe-bottom) + 8px)) max(16px,var(--safe-left));background:linear-gradient(180deg,rgba(23,15,9,0),var(--hall-deep) 24px)}html:has(.lobby-dock){scroll-padding-bottom:150px}.room-lobby:has(.lobby-name input:focus) .lobby-dock{visibility:hidden}.lobby-start{display:grid;gap:10px;text-align:center}.lobby-waiting{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(220,188,133,.35);border-radius:18px;color:var(--hall-ink);background:#2e1d12d9;font-size:16px;line-height:1.45}.lobby-waiting:before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--hall-amber);box-shadow:0 0 0 6px #e8c7922e,0 0 14px #e8c792cc}@media(min-width:1024px){[data-surface=hall] .screen.room-lobby{gap:24px;max-width:1240px;padding:max(28px,var(--safe-top)) 40px 40px}[data-surface=hall] .room-back{width:auto;padding:0 18px 0 12px;border-radius:999px;font-size:16px}.room-back-text{display:inline}.room-lobby .room-header{display:grid;grid-template-columns:1fr auto 1fr}.room-lobby .room-back{justify-self:start}.room-head-code{display:flex;grid-column:2;align-items:baseline;gap:14px;color:var(--hall-ink);font:600 30px/1 var(--font-title);font-variant-numeric:lining-nums;letter-spacing:.16em}.room-call{grid-column:3;justify-self:end}.room-lobby .lobby-welcome{max-width:760px;gap:10px;padding:0}.lobby-welcome .kicker{display:none}.room-lobby .lobby-welcome h1{font-size:56px}[data-surface=hall] .room-lobby .lobby-welcome h1+p{font-size:17px}.lobby-columns{display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px}.lobby-side{display:grid;flex:1 1 360px;gap:20px;max-width:420px}[data-surface=hall] .lobby-board{flex:999 1 560px;gap:16px;padding:24px}[data-surface=hall] .lobby-board>.card{padding:0;border:0;border-radius:0;background:none;box-shadow:none}[data-surface=hall] .lobby-board>.lobby-table{gap:16px}.lobby-board .lobby-seats{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.lobby-board .lobby-seat{gap:12px;padding:14px;border:1px solid var(--marble);border-radius:18px;background:var(--paper)}.lobby-board .lobby-seat-controls{padding-left:0}.lobby-board .lobby-seat-free{display:flex;align-items:center;justify-content:space-between;min-height:116px;border:1px dashed var(--marble-deep);color:var(--hall-ivory-muted);background:none}[data-surface=hall] .lobby-seat-free .button{min-height:40px;padding:0 14px;font-size:16px}.lobby-board .chip-picker{margin-top:6px}.lobby-board .chip-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr))}.lobby-board .chip-button img{height:54px}.lobby-board-foot{padding-top:16px;border-top:1px solid var(--marble)}.lobby-board-foot .lobby-start{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left}[data-surface=hall] .lobby-board-foot .caption{font-size:16px}.lobby-board-foot .button{width:auto;min-width:260px}.lobby-board-foot .lobby-waiting{padding:0;border:0;color:var(--hall-ivory-ink);background:none}.lobby-board-foot .lobby-waiting:before{background:var(--gold);box-shadow:0 0 0 6px #b6862526}}.level-intro{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:0;color:var(--hall-ink);background:linear-gradient(180deg,#100a06d1,#100a06e6),url(/assets/bg/hall.webp) 28% 50% / cover no-repeat,var(--hall-deep);overflow-y:auto;overscroll-behavior:contain}.level-intro[open]{animation:level-in .42s ease-out}.level-intro::backdrop{background:#170f09}.level-intro-panel{display:flex;flex-direction:column;align-items:center;width:100%;max-width:560px;min-height:100%;margin:0 auto;padding:calc(var(--safe-top) + 28px) max(24px,var(--safe-right)) 0 max(24px,var(--safe-left));text-align:center}.level-intro-copy{display:contents}.level-intro-kicker{order:-1}.level-intro-art{flex:none;width:auto;max-width:100%;height:min(334px,calc(var(--host-height, 100dvh) * .4));aspect-ratio:900 / 1272;margin-top:16px;border:1px solid var(--hall-gold);border-radius:20px;object-fit:cover;box-shadow:0 0 0 6px #dcbc851f,0 0 46px #e8c79238,0 22px 50px #100a0680}.level-intro-copy h2{margin-top:22px;font-size:38px;text-wrap:balance}.level-intro-copy>.blocks{margin-top:12px;color:var(--hall-ink-2);font-size:16px;line-height:1.55}.level-intro-more{width:100%;margin-top:10px}:is(.level-intro-more,.results-counting-more)>summary{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:6px 4px;color:var(--hall-link);font-size:16px;text-decoration:underline;text-underline-offset:4px}:is(.level-intro-more,.result-decoding,.results-counting,.results-counting-more)>summary{list-style:none;cursor:pointer}:is(.level-intro-more,.result-decoding,.results-counting,.results-counting-more)>summary::-webkit-details-marker{display:none}:is(.level-intro-more,.results-counting-more)>summary:hover{color:var(--hall-link-hover)}:is(.level-intro-more,.result-decoding,.results-counting,.results-counting-more)>summary .icon{flex:none;width:18px;height:18px;transition:transform .16s ease}:is(.level-intro-more,.result-decoding,.results-counting,.results-counting-more)[open]>summary .icon{transform:rotate(180deg)}.level-intro-more>.blocks{margin-top:8px;color:var(--hall-ink-2);font-size:16px;line-height:1.6;text-align:left}:is(.level-intro,.game-results) .blocks li::marker{color:var(--hall-gold)}.level-intro-footer{position:sticky;bottom:0;width:100%;margin-top:auto;padding:24px 0 calc(var(--safe-bottom) + 12px);border-image:linear-gradient(180deg,rgba(16,10,6,0),var(--hall-shade) 24px) fill 0 / 0 / 0 100vw}@media(min-width:1024px){.level-intro-panel{display:grid;grid-template-columns:auto minmax(0,520px);align-items:center;align-content:center;justify-content:center;column-gap:64px;max-width:none;padding:48px max(48px,var(--safe-right)) 48px max(48px,var(--safe-left));text-align:left}.level-intro-art{position:sticky;top:48px;align-self:start;height:min(640px,calc(var(--host-height, 100dvh) - 96px));margin:0}.level-intro-copy{display:flex;flex-direction:column;align-items:flex-start}.level-intro-copy h2{margin-top:16px;font-size:52px}.level-intro-footer{position:static;max-width:360px;margin-top:32px;padding:0;border-image:none}}[data-surface=hall] .screen.room-game{gap:14px;padding-inline:max(16px,var(--safe-left)) max(16px,var(--safe-right))}.game-results{width:100%;max-width:560px;margin-inline:auto;gap:14px}.results-head{display:flex;flex-direction:column;align-items:center;padding:0 12px;text-align:center}.results-emblem{width:40px;height:auto;margin-bottom:14px}.results-head h1{margin-top:8px;font-size:48px;text-shadow:0 2px 24px rgba(16,10,6,.55)}.results-head[data-final] h1{font-size:54px}.results-head .ornament{margin-top:14px}.results-lead{max-width:300px;margin-top:14px;color:var(--hall-ink-2);font-size:16px;line-height:1.55}.results-wait{padding:14px 18px;border:1px solid var(--hall-line);border-radius:18px;color:var(--hall-ink-2);background:#2e1d12b8;font-size:16px;line-height:1.55;text-align:center}[data-surface=hall] .next-meeting{padding:22px 20px}.results-owner{grid-template-columns:1fr auto;align-items:center;padding:0 4px}.results-owner>*{grid-column:1 / -1}.results-owner>:first-child{grid-column:1}.results-owner .owner-menu-tools{grid-area:1 / 2}[data-surface=hall] .result-mine{gap:10px;padding:18px;border-color:#e8c792a6;box-shadow:0 0 0 1px #e8c7921f,0 0 34px #e8c7922e,0 24px 60px #100a0673}.result-head{display:flex;align-items:center;gap:14px}.result-chip{display:flex;flex:none;align-items:center;justify-content:center;width:70px;height:84px;border-radius:18px;background:radial-gradient(circle at 50% 40%,#e8c7924d,#e8c79200 70%)}.game-results .chip-thumb{flex:none;width:auto;height:46px;filter:drop-shadow(0 4px 8px rgba(16,10,6,.3))}.result-chip .chip-thumb{height:76px}.result-who{display:grid;flex:1;gap:4px;min-width:0}.result-name{display:flex;align-items:center;gap:8px;color:var(--hall-ink);font-size:17px;font-weight:600;line-height:1.2}.result-name>:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-mine .result-name{font:600 30px/1.1 var(--font-title);font-variant-numeric:lining-nums}[data-surface=hall] .result-name .caption.tag{border-color:#dcbc8580;color:var(--hall-amber);background:none;font:400 13px/1.4 var(--font-text)}[data-surface=hall] .result-mine .caption.result-meta{font-size:14px}.result-stats{display:flex;margin:0;padding:14px 0 4px}.result-stats>div{display:flex;flex:1;flex-direction:column;align-items:center}.result-stats>div+div{border-left:1px solid;border-image:linear-gradient(180deg,#dcbc8500,#dcbc8580,#dcbc8500) 1}[data-surface=hall] .result-stats .caption.kicker{order:1;margin-top:4px;letter-spacing:.14em}.result-stats dd{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0;color:var(--hall-ink);font:600 42px/1 var(--font-title);font-variant-numeric:lining-nums}.result-stats img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(232,199,146,.35))}.result-stats dd .icon{width:28px;height:34px;color:var(--hall-amber)}.result-stats-mini{gap:12px;padding:0}.result-stats-mini>div{flex:none}.result-stats-mini>div+div{border:0}.result-stats-mini dd{flex-direction:row;font:400 16px/1.3 var(--font-text);font-variant-numeric:lining-nums}.result-stats-mini img{width:18px;height:18px}.result-stats-mini dd .icon{width:16px;height:18px;color:inherit}.result-stats-mini>:last-child dd{color:var(--hall-gold)}.result-decoding{margin-top:2px;border-top:1px solid rgba(220,188,133,.25)}:is(.result-decoding,.results-counting)>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;color:var(--hall-ink)}.result-decoding>summary{padding-top:10px}:is(.result-decoding,.results-counting) .blocks{margin-top:12px;color:var(--hall-ink-2);font-size:16px;line-height:1.6}.result-tagline{margin-top:12px;color:var(--hall-amber);font:italic 500 22px/1.25 var(--font-title);font-variant-numeric:lining-nums}.results-others,.results-others ul{display:grid;gap:10px}.results-others h2{margin:10px 4px 0}.results-others ul,.results-teams ul{margin:0;padding:0;list-style:none}[data-surface=hall] .result-other{display:flex;align-items:center;gap:12px;padding:12px 14px;border-color:#dcbc8538;border-radius:18px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}[data-surface=hall] .results-teams{gap:12px;padding:18px}.results-teams ul{display:flex;gap:10px}.results-teams li{display:grid;flex:1;gap:2px;padding:12px 14px;border:1px solid rgba(220,188,133,.25);border-radius:16px;background:#fbf6ee0a}.results-teams li[data-lead]{border-color:#e8c792b3;background:#e8c7921a}[data-surface=hall] .results-teams li>.caption{font-size:14px}.results-team-index{display:flex;align-items:baseline;gap:6px;color:var(--hall-ink);font:600 32px/1.1 var(--font-title);font-variant-numeric:lining-nums}[data-surface=hall] .results-team-index .caption,[data-surface=hall] .caption.results-winner{color:var(--hall-gold);font:400 13px/1.4 var(--font-text);font-variant-numeric:lining-nums}[data-surface=hall] .results-counting{gap:0;padding:4px 18px}.results-counting[open]{padding-bottom:18px}.results-counting>summary{min-height:52px;font-size:17px;font-weight:600}.results-counting>.blocks{margin-top:0}.results-counting-more{margin-top:10px}.blocks li.block-token-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;align-items:start;margin-left:-1.25em;list-style:none}.block-token{width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(232,199,146,.35))}.block-token-item strong{display:block;color:var(--hall-ink);font-weight:600}.blocks h3 .icon{margin-right:8px;color:var(--hall-gold);vertical-align:-3px}.results-foot{margin-top:6px;text-align:center}[data-surface=hall] .game-results>.invite-status{color:var(--hall-live)}[data-surface=hall] .results-text{min-height:240px;padding:14px 16px;resize:vertical;font:16px/1.5 var(--font-text);font-variant-numeric:lining-nums}
