.rps-panel{position:fixed;left:50%;bottom:calc(var(--edge-bottom) + 54px);transform:translate(-50%);z-index:16777281;pointer-events:auto;width:min(272px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));padding:8px 10px 12px;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);overflow:hidden;animation:rps-in var(--t-med) var(--ease-out)}@keyframes rps-in{0%{opacity:0;transform:translate(-50%,12px) scale(.96)}}.rps-head{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}.rps-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rps-title b{color:var(--text)}.rps-title .npc-chip{margin-left:4px}.rps-round{font-size:11px}.rps-x{width:24px;height:24px;padding:0;display:inline-grid;place-items:center;border-radius:var(--r-pill);background:var(--glass-light);border:0;color:var(--text)}.rps-x:hover{background:var(--glass-hover)}.rps-hands{display:flex;justify-content:center;gap:10px;margin-top:8px}.rps-hand{position:relative;width:64px;height:64px;padding:0;display:grid;place-items:center;border-radius:var(--r-md);background:var(--glass-light);border:1px solid var(--glass-border);color:var(--text);transition:transform var(--t-fast) var(--ease-out),background var(--t-fast),opacity var(--t-med)}.rps-hand:hover:not(:disabled){transform:translateY(-3px) scale(1.06);background:var(--glass-hover)}.rps-hand:active:not(:disabled){transform:scale(.95)}.rps-hand:focus-visible{box-shadow:var(--focus-ring)}.rps-hand.on{background:var(--accent-soft);border-color:var(--accent);box-shadow:var(--accent-glow);opacity:1}.rps-hand.off{opacity:.35}.rps-hand:disabled{cursor:default}.rps-emoji{font-size:34px;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}.rps-hand kbd{position:absolute;right:4px;bottom:3px;font:700 10px var(--font-ui);color:var(--text-dim)}.rps-hand[data-tip]:hover:after,.rps-x[data-tip]:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:3px 8px;border-radius:var(--r-sm);background:var(--glass-strong);color:var(--text);font:600 11px var(--font-ui);white-space:nowrap;pointer-events:none}.rps-x{position:relative}.rps-status{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:8px;font-size:12px;color:var(--text-dim)}.rps-status.ok{color:var(--ok)}.rps-keys{margin-top:2px;text-align:center;font-size:10px}.rps-count{padding:18px 0 14px;text-align:center;font:900 28px var(--font-ui);color:var(--gold);text-shadow:0 2px 10px rgba(255,209,102,.35);animation:rps-beat .6s var(--ease-out)}@keyframes rps-beat{0%{transform:scale(1.5);opacity:0}}.rps-result{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;animation:rps-beat .4s var(--ease-out)}.rps-vs{display:flex;align-items:center;gap:10px}.rps-vs small{color:var(--text-dim);font-weight:800}.rps-result b{font-size:18px}.rps-result.win b{color:var(--gold)}.rps-result.lose b{color:var(--text-dim)}.rps-actions{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px}.rps-actions button{display:inline-flex;align-items:center;gap:6px}.rps-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--accent);transform-origin:left;transition:transform .1s linear}.rps-prompt-hands{font-size:18px;letter-spacing:-2px}.rps-sign{position:relative;display:grid;place-items:center;width:64px;height:64px;pointer-events:none;animation:rps-pop .5s var(--ease-out) both}.rps-sign .rps-sign-hand{font-size:46px;line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.45))}.rps-sign:before{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--glass);border:2px solid var(--glass-border);z-index:-1}.rps-sign.win:before{background:radial-gradient(circle,#ffd1668c,#ff7a4540);border-color:var(--gold);box-shadow:0 0 22px #ffd166b3}.rps-sign.lose{animation:rps-pop .5s var(--ease-out) both,rps-wilt .6s .7s ease-in forwards}.rps-sign-tag{position:absolute;top:100%;margin-top:2px;padding:1px 8px;border-radius:var(--r-pill);font:900 11px var(--font-ui);white-space:nowrap;background:var(--glass-strong);color:var(--text)}.rps-sign.win .rps-sign-tag{background:var(--gold);color:var(--ink)}.rps-star{position:absolute;left:50%;top:50%;font-size:14px;animation:rps-burst .9s .15s ease-out both}@keyframes rps-pop{0%{transform:translateY(14px) scale(.2) rotate(-25deg);opacity:0}60%{transform:translateY(-4px) scale(1.25) rotate(8deg);opacity:1}to{transform:none}}@keyframes rps-wilt{to{transform:translateY(6px) scale(.8) rotate(-12deg);opacity:.6}}@keyframes rps-burst{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(1.1) rotate(160deg);opacity:0}}.chat-log .line.system.rps{color:var(--gold);font-weight:700}@media(max-height:460px){.rps-panel{bottom:calc(var(--edge-bottom) + 48px);width:min(216px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));padding:6px 8px 9px}.rps-hands{gap:6px;margin-top:6px}.rps-hand{width:50px;height:50px}.rps-result b{font-size:15px}.rps-actions{margin-top:5px;gap:4px}.rps-actions button{padding:4px 12px;font-size:12px}.rps-emoji{font-size:28px}.rps-count{padding:10px 0 8px;font-size:24px}}.rps-panel.turn-warn .rps-bar{background:#ffb547}.rps-panel.turn-low .rps-bar{background:var(--danger);height:4px}.rps-panel.turn-low .rps-hand:not(:disabled){animation:turn-beat .5s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.rps-panel.turn-low .rps-hand:not(:disabled){animation:none}}.top .act-bag{width:auto;flex-direction:row;padding:0 9px;gap:4px;display:inline-flex;align-items:center;font-size:12px;font-weight:800}.top .act-bag.full{box-shadow:0 0 0 2px var(--accent) inset,var(--accent-glow)}.act-tracker,.act-tracker-toggle{position:absolute;left:var(--safe);top:calc(var(--safe) + 44px);pointer-events:auto}.act-tracker{width:230px;padding:8px 11px;font-size:13px;display:flex;flex-direction:column;gap:3px}.act-tracker-head,.act-sort-head{display:flex;justify-content:space-between;align-items:center}.act-mini{padding:2px 4px;background:var(--glass-light);box-shadow:none;display:inline-flex}.act-track{display:flex;justify-content:space-between;align-items:center;gap:8px;cursor:pointer;color:var(--text)}.act-track span{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3}.act-track i{font-style:normal;font-weight:800;color:var(--text)}.act-track.done i{color:#7ee08a}.act-track.done span{color:var(--text)}.act-track-claim{flex:none;display:inline-flex;align-items:center;gap:3px;padding:1px 8px;border-radius:var(--r-pill);background:#2f9e57;color:#fff;font:900 11px/1.5 var(--font-ui);pointer-events:auto;animation:act-claim-pop .35s cubic-bezier(.2,1.6,.4,1) both,act-claim-glow 1.6s ease-out .35s infinite}@keyframes act-claim-pop{0%{transform:scale(.4);opacity:0}}@keyframes act-claim-glow{0%{box-shadow:0 0 #3fbf6ab3}to{box-shadow:0 0 0 9px #3fbf6a00}}.act-guest{font-size:10px;color:var(--accent-hi);font-weight:700}.act-toasts{position:absolute;top:calc(var(--safe) + 44px);z-index:3;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none;z-index:31}.act-toast{padding:5px 12px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font-size:12px;font-weight:700;animation:act-in .25s ease}.act-toast.gain{border-color:#7ee08a99}.act-toast.level{border-color:var(--accent)}@keyframes act-in{0%{opacity:0;transform:translateY(-6px)}}.act-sort,.act-board{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:auto;padding:8px 10px;font-size:12px}.act-sort{width:min(340px,calc(100% - 2 * var(--safe)));display:flex;flex-direction:column;gap:6px}.act-sort-row{display:grid;grid-template-columns:1fr 90px 1fr;gap:6px;align-items:stretch}.act-bin,.act-item{border-radius:var(--r-sm);background:var(--glass-light);border:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;text-align:center}.act-bin{cursor:pointer}.act-bin:hover{background:var(--glass-hover)}.act-bin.recycle{color:#8fd3ff}.act-bin.general{color:#d9d9d9}.act-item{cursor:grab;background:var(--accent-soft)}.act-sort-trail{display:flex;gap:3px;min-height:6px;flex-wrap:wrap}.act-sort-trail span{width:10px;height:6px;border-radius:3px}.act-sort-trail .ok{background:#7ee08a}.act-sort-trail .bad{background:#ff6b6b}.act-dim{color:var(--text-dim);font-size:10px}.act-board{z-index:3;width:min(400px,calc(100% - 2 * var(--safe)));top:calc(var(--hud-bottom, 52px) + 6px);transform:translate(-50%);max-height:calc(100% - var(--hud-bottom, 52px) - 6px - var(--board-room, calc(var(--safe) + 20px)));display:flex;flex-direction:column}.act-board-body{overflow-y:auto;padding-right:6px;display:flex;flex-direction:column;gap:4px}.act-board h4{margin:4px 0 0;font-size:11px;color:var(--text-dim);text-transform:uppercase}.act-quest{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:center}.act-quest small{color:var(--text-dim);white-space:nowrap}.act-bar{height:4px;border-radius:2px;background:var(--glass-light);margin-top:2px}.act-bar i{display:block;height:100%;border-radius:2px;background:var(--accent)}.act-claim{padding:3px 8px;font-size:11px;white-space:nowrap}.act-claim:disabled{filter:grayscale(1);opacity:.5;cursor:default}.act-earn{display:flex;justify-content:space-between}.act-earn i{font-style:normal;font-weight:800}.act-node{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(255,236,140,.6);box-shadow:0 0 6px #ffec8c73;animation:act-pulse 2.4s ease-in-out infinite;pointer-events:none}@keyframes act-pulse{50%{transform:scale(.7);opacity:.55}}.act-claim.ghost{background:var(--glass-light);box-shadow:0 0 0 1px var(--glass-border) inset}.act-quest-where{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:2px}.act-quest-where small{color:var(--text-dim);font-size:10.5px;min-width:0;white-space:normal;overflow-wrap:anywhere}.act-quest-where .act-mini{height:20px;min-width:20px;padding:0 5px;display:inline-flex;align-items:center;gap:3px;font-size:10px}.act-go{color:var(--accent-hi)}.act-treasure-head{display:flex;align-items:center;gap:5px;color:var(--gold)!important}.act-treasure-reward{margin-left:auto;color:var(--text);font-weight:700;text-transform:none;white-space:nowrap}.act-treasure-count{padding:0 7px;border-radius:var(--r-pill);background:#ffd16624;color:var(--gold);font-weight:800}.act-treasure{grid-template-columns:minmax(0,1fr) auto}.act-treasure.done>div{opacity:.55}.act-treasure-found{display:inline-flex;align-items:center;gap:3px;color:var(--ok)!important;font-weight:700}.act-treasure-here{font-size:14px}.badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;max-height:min(56vh,460px);overflow-y:auto;padding-right:4px}.badge-tile{display:flex;gap:8px;align-items:flex-start;padding:8px;border-radius:12px;background:var(--glass-light);box-shadow:inset 0 0 0 1px var(--glass-border)}.badge-tile.tier-0 .badge-icon{filter:grayscale(1);opacity:.45}.badge-tile.tier-3{box-shadow:inset 0 0 0 1px #ffd16699,0 0 12px #ffd16626}.badge-icon{flex:none;width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#00000040;font-size:20px}.badge-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.badge-body b{font-size:12.5px;line-height:1.2}.badge-body small{color:var(--text-dim);font-size:10.5px;line-height:1.3}.badge-medals{display:flex;gap:4px}.badge-medals i{width:10px;height:10px;border-radius:50%;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff26}.badge-medals i.on.m1{background:#cd7f32}.badge-medals i.on.m2{background:#c0c7d1}.badge-medals i.on.m3{background:#ffc23d;box-shadow:0 0 6px #ffc23dcc}@media(max-aspect-ratio:3 / 4){.act-toasts{top:40%;width:calc(100% - 2 * var(--safe))}}@media(min-width:761px){body:has(.act-board) .act-toasts{left:auto;right:var(--safe);top:calc(var(--safe) + 72px);transform:none;align-items:flex-end}}@media(max-height:480px){.act-toasts{left:auto;right:var(--safe);top:calc(var(--safe) + 72px);transform:none;align-items:flex-end}}.act-treasure-steps{display:flex;flex-wrap:wrap;gap:5px}.act-treasure-steps span{padding:3px 9px;border-radius:var(--r-pill);background:#ffd1661f;color:var(--text);font:700 11.5px/1.3 var(--font-ui);white-space:nowrap}.act-riddles{display:grid;gap:5px}.act-riddle{display:flex;align-items:center;gap:9px;padding:7px 9px;border-radius:var(--r-sm);background:var(--glass-light);border:1px solid rgba(255,209,102,.22)}.act-riddle-n{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ffd16633;color:var(--gold);font:900 12px/1 var(--font-ui)}.act-riddle-text{font-size:12.5px;line-height:1.35;color:var(--text)}@media(max-height:480px){.act-riddle{padding:4px 8px}.act-riddle-n{width:22px;height:22px}.act-riddles{gap:4px}}.act-riddle.done{border-color:#3fbf6a66}.act-riddle.done .act-riddle-n{background:#2f9e57;color:#fff}.act-riddle.done .act-riddle-text{color:var(--text-dim)}@media(max-height:480px),(max-width:760px){body:has(.act-board,.friends,.local-map,.guide-dir,.shop-wrap,[role=dialog]:not(.idock):not(.guide-card),.mp-panel:not(.mp-hidden)) .act-tracker,body:has(.act-board,.friends,.local-map,.guide-dir,.shop-wrap,[role=dialog]:not(.idock):not(.guide-card),.mp-panel:not(.mp-hidden)) .act-tracker-toggle{display:none}}.eco-beds{display:grid;grid-template-columns:1fr 1fr;gap:6px}.eco-bed{position:relative;display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;align-items:center;column-gap:7px;min-width:0;min-height:48px;padding:6px 9px;border-radius:var(--r-md);background:linear-gradient(180deg,#8c623c6b,#68462a6b);box-shadow:0 0 0 1px #ffffff1a inset;color:var(--text);text-align:left;text-shadow:none;font-size:11px;font-weight:600}.eco-bed:disabled{opacity:1;cursor:default;transform:none}.eco-bed.empty{background:#ffffff0a;box-shadow:0 0 0 1.5px #ffffff24 inset}.eco-bed.empty:not(:disabled):hover{background:#3ccf7d1f;box-shadow:0 0 0 1.5px var(--ok) inset;filter:none}.eco-bed.ripe{box-shadow:0 0 0 1.5px var(--gold) inset,0 0 12px #ffd25a59}.eco-bed-icon{grid-row:span 2;font-size:21px;line-height:1;text-align:center}.eco-bed-icon.dim{font-size:14px;opacity:.6}.eco-bed-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800}.eco-bed-time{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim);font-variant-numeric:tabular-nums;padding-right:14px}.eco-bed-time.ok{color:var(--ok);font-weight:800}.eco-drop{position:absolute;right:7px;bottom:7px;color:var(--text-dim);opacity:.55}.eco-drop.wet{color:#6cc6ff;opacity:1}.eco-seeds{--mp-cols: 5}.eco-seeds small{display:inline-flex;align-items:center;gap:2px}.eco-coin{color:var(--gold)}.eco-basket{display:flex;flex-direction:column;gap:6px}.eco-foot{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-height:28px}.eco-link{padding:2px 4px;background:none;box-shadow:none;color:var(--text-dim);font-size:11px;font-weight:700;text-decoration:underline;text-shadow:none}.eco-link:hover{color:#ff9b9e;filter:none}.eco-price{display:inline-flex;align-items:center;gap:3px;color:var(--gold)!important;font-weight:700;font-variant-numeric:tabular-nums}.eco-value{display:inline-flex;align-items:center;gap:3px;margin-left:2px;padding:1px 8px;border-radius:var(--r-pill);background:#00000024;font-weight:900}.eco-inline{vertical-align:-2px}.eco-rep-n{min-width:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--ok);color:#10301a;text-align:center;font-variant-numeric:tabular-nums}.eco-plot-label{padding:2px 8px;border-radius:var(--r-pill);background:var(--glass-strong);color:var(--text);font-size:11px;font-weight:700;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis;pointer-events:none;-webkit-user-select:none;user-select:none}.eco-plot-label.mine{box-shadow:0 0 0 1.5px var(--ok) inset}.eco-plot-label.free{color:var(--text-dim);font-weight:600}.eco-rep-pop{color:#fff;font-size:16px;font-weight:900;text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none;-webkit-user-select:none;user-select:none;animation:eco-pop .9s var(--ease-out) forwards}@keyframes eco-pop{0%{transform:translateY(6px) scale(.8);opacity:0}30%{opacity:1}to{transform:translateY(-14px) scale(1);opacity:0}}@media(max-height:460px){.eco-bed{min-height:38px;padding:3px 7px}.eco-bed-icon{font-size:17px}}@media(min-width:761px){.mp-panel.mp-dock.eco-panel{left:auto;right:var(--safe);bottom:calc(var(--safe) + 64px);transform:none;animation-name:mp-in-side}}.market-row{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap}.market-row.start{justify-content:flex-start;flex-wrap:nowrap}.market-list .market-icon{width:26px;padding:0;display:inline-grid;place-items:center;background:var(--glass-hover);color:var(--text)}.market-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-variant-numeric:tabular-nums}.market-confirm{display:flex;flex-direction:column;align-items:center;margin-top:8px}.market-grid{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:4px;max-height:150px;overflow-y:auto}.market-grid button{position:relative;width:100%;padding:4px;display:grid;place-items:center;border-radius:var(--r-md);background:var(--glass-light);border:1px solid transparent}.market-grid button:hover{border-color:var(--accent)}.market-count{position:absolute;right:3px;bottom:2px;font:700 10px/1 var(--font-ui);color:var(--text);text-shadow:0 1px 2px rgba(0,0,0,.6)}.market-add-name{min-width:0;display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-dim)}.market-add-name b{color:var(--text);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.market-price{margin-top:8px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim)}.market-price input{width:76px;height:28px;padding:0 8px;border-radius:var(--r-md);border:1px solid var(--glass-border);background:var(--glass-light);color:var(--text);font:700 13px/1 var(--font-ui);font-variant-numeric:tabular-nums}.market-price small{display:inline-flex;align-items:center;font-size:11px}.market-slider{width:100%;margin:6px 0 0;accent-color:var(--accent)}.market-mystery{margin-top:8px}.market-said{margin:8px 2px 0;padding:6px 10px;border-radius:var(--r-md);background:var(--glass-light);font:italic 600 12px/1.35 var(--font-ui);color:var(--text);text-align:center}.market-said.good{color:var(--gold)}.market-said.bad{color:var(--danger, #e5484d)}@media(max-height:460px){.market-grid{max-height:96px}}.market-sign{pointer-events:none;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;max-width:150px;padding:3px 9px 4px;border-radius:var(--r-md);background:#281630d1;border:1px solid rgba(255,200,120,.7);box-shadow:0 0 12px #ffaa5073;color:#ffe7b8;font:700 11px/1.2 var(--font-ui);white-space:nowrap;-webkit-user-select:none;user-select:none}.market-sign b{max-width:132px;overflow:hidden;text-overflow:ellipsis}.market-sign span{font-weight:600;font-size:10px;opacity:.85}.market-sign.free{background:#1e1e2899;border-color:#ffffff4d;box-shadow:none;color:#e9e9f2}.market-sign.mine{border-color:var(--accent)}.market-effect{display:block;font-size:10.5px;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-section-label{display:block;margin:4px 2px 2px;font-size:11px;opacity:.75}.fish-cast{bottom:calc(var(--hint-bottom) + 48px)!important}.fish-bite{position:absolute;left:50%;top:30%;z-index:2;transform:translate(-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:28px;font-weight:900;color:#1b1300;background:var(--gold, #fbbf24);box-shadow:0 0 16px var(--gold, #fbbf24);animation:fish-bite .35s ease-in-out infinite alternate;pointer-events:none}@keyframes fish-bite{to{transform:translate(-50%) scale(1.15)}}.fish-reel{position:absolute;left:50%;bottom:calc(var(--hint-bottom) + 48px);transform:translate(-50%);width:min(260px,calc(100% - 2 * var(--safe)));padding:6px 8px;display:flex;flex-direction:column;gap:4px;font-size:11px;pointer-events:none}.fish-reel-label{display:flex;gap:4px;align-items:center;font-weight:800}.fish-reel-track{position:relative;height:16px;border-radius:var(--r-pill, 99px);background:var(--glass-light);overflow:hidden}.fish-reel-zone{position:absolute;top:0;bottom:0;background:#4ade808c;border-radius:var(--r-pill, 99px)}.fish-reel-marker{position:absolute;top:1px;transform:translate(-50%);color:#fff;filter:drop-shadow(0 0 2px #000)}.fish-reel-bars{display:grid;grid-template-columns:auto 2fr auto 1fr;align-items:center;gap:4px 6px}.fish-reel-bars small{color:var(--text-dim);font-size:10px;font-weight:800}.fish-reel-ends{display:flex;justify-content:space-between;align-items:center;color:var(--text-dim);font-size:10px;font-weight:800}.fish-beginner{margin-left:auto;white-space:nowrap;padding:0 5px;border-radius:99px;background:#4ade8040;color:#4ade80;font-size:10px}.fish-reel-fill,.fish-reel-tension{height:5px;border-radius:3px;background:var(--glass-light);overflow:hidden}.fish-reel-fill div,.fish-reel-tension div{height:100%;width:0}.fish-reel-fill div{background:linear-gradient(90deg,var(--accent-lo, #3b82f6),var(--accent-hi, #60a5fa))}.fish-reel-tension div{background:linear-gradient(90deg,#f59e0b,#ef4444)}.fish-card{position:absolute;left:50%;top:calc(var(--safe) + 52px);transform:translate(-50%);display:flex;gap:8px;align-items:center;padding:6px 12px;border:1.5px solid;font-size:12px;pointer-events:none;animation:fish-card-in .25s ease-out}.fish-card div{display:flex;flex-direction:column}.fish-first{color:var(--gold, #fbbf24);font-weight:800}@keyframes fish-card-in{0%{opacity:0;transform:translate(-50%,-6px)}}.fish-panel{width:min(280px,calc(100% - 2 * var(--safe)));gap:6px}.fish-panel.wide{width:min(460px,calc(100% - 2 * var(--safe)))}.fish-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.fish-row button{padding:3px 10px;font-size:11px}.fish-list{display:flex;flex-direction:column;gap:2px;max-height:120px;overflow-y:auto}.fish-book-link{align-self:flex-start;gap:4px;font-size:11px}.fish-book{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;overflow-y:auto}.fish-page{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1px;padding:4px 2px;border-radius:6px;border:1px solid;background:var(--glass-light);font-size:10px}.fish-page.unknown .fish-sil{filter:drop-shadow(0 0 1px rgba(255,255,255,.5));opacity:.8}.fish-page.unknown{border-color:var(--glass-border)!important}.fish-book-btn{position:absolute;right:var(--safe);top:calc(var(--hud-bottom, 52px) + 6px);width:30px;height:30px;padding:0;display:grid;place-items:center;pointer-events:auto}.fish-spot{width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(140,220,255,.55);animation:fish-ripple 2.2s ease-out infinite}.fish-spot.busy{border-color:#8cdcff33;animation:none}@keyframes fish-ripple{0%{transform:scale(.6);opacity:.9}to{transform:scale(1.8);opacity:0}}.fish-sign{padding:2px 6px;border-radius:99px;background:var(--glass);color:#8cdcff;display:inline-flex}.fish-touch{display:none}@media(hover:none)and (pointer:coarse){.fish-touch{display:grid}.fish-touch.bite .interact-btn{animation:fish-touch-bite .5s ease-in-out infinite alternate}}@keyframes fish-touch-bite{to{transform:scale(1.1);filter:brightness(1.15)}}.fish-panel button .mp-key{margin:0 0 0 5px;font-size:9.5px}.fish-callout{position:absolute;z-index:2;transform:translate(-50%,-100%);max-width:min(240px,70vw);padding:5px 10px;border-radius:10px;background:var(--glass-strong);border:1.5px solid;display:flex;flex-direction:column;align-items:center;gap:1px;text-align:center;pointer-events:none;animation:fish-callout 2.6s ease-out forwards}.fish-callout b{font-size:15px;font-weight:900}.fish-callout small{font-size:11px;font-weight:700;color:var(--text-dim);line-height:1.25}.fish-callout.fail{border-color:#f87171}.fish-callout.fail b{color:#fca5a5}.fish-callout.good{border-color:#4ade80}.fish-callout.good b{color:#86efac}@keyframes fish-callout{0%{opacity:0;margin-top:10px;scale:.8}8%{opacity:1;margin-top:0;scale:1.08}14%{scale:1}80%{opacity:1}to{opacity:0;margin-top:-16px}}.fish-xp{color:#93c5fd;font-weight:800}.fish-reel-hold{display:inline-flex;align-items:center;gap:4px}@media(hover:none)and (pointer:coarse){.interact-hint.tap-row:has(.fish-touch){right:var(--safe);bottom:var(--jump-bottom)}}.job-panel{position:fixed;right:var(--edge-right);top:calc(var(--edge-top) + 78px);width:236px;max-height:calc(100% - 2 * var(--safe) - 150px);overflow:auto;padding:8px 10px;border-radius:12px;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font-size:11px;line-height:1.35;z-index:20}.job-panel p{margin:4px 0 6px;opacity:.85}.job-panel-head{display:flex;align-items:center;gap:6px;font-size:13px}.job-panel-row{display:flex;justify-content:space-between;gap:6px;font-weight:700}.job-unlock{margin-top:4px;color:var(--accent-hi);font-weight:700}.job-btn{width:100%;margin-top:6px;padding:5px 8px;font-size:12px}.job-lv{margin-left:auto;padding:1px 7px;border-radius:var(--r-pill);background:var(--glass-light);font-weight:800;font-size:10px;white-space:nowrap}.job-strip .job-lv{margin-left:0}.job-strip{position:fixed;right:var(--edge-right);top:calc(var(--edge-top) + 78px);max-width:min(360px,calc(100% - 2 * var(--safe)));display:flex;align-items:center;gap:6px;padding:4px 4px 4px 8px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font-size:11px;font-weight:700;z-index:20}.job-task{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.job-item{display:inline-grid;place-items:center;color:var(--accent-hi)}.job-timer{display:inline-flex;align-items:center;gap:2px;font-variant-numeric:tabular-nums}.job-timer.late{color:#ff9a7a}.job-meta{opacity:.75;white-space:nowrap}.job-strip .job-out{width:24px;height:24px;flex:none}.job-act{display:grid}.job-hint{position:fixed;left:50%;bottom:132px;transform:translate(-50%);padding:6px 14px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--accent);color:var(--text);font-size:13px;font-weight:700;pointer-events:none}.job-pointer{position:fixed;transform:translate(-50%,-50%);align-items:center;gap:3px;padding:4px 7px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--accent);color:var(--accent-hi);font-size:10px;font-weight:800;pointer-events:none;z-index:15}.job-pointer svg{transform:rotate(var(--turn, 0rad))}.job-pin,.job-held,.job-order{display:grid;place-items:center;border-radius:50%;color:#fff;border:2px solid rgba(255,255,255,.85);box-shadow:0 2px 6px #00000059}.job-pin{width:26px;height:26px;background:var(--glass-strong);animation:job-bob 1.6s ease-in-out infinite}.job-pin.target{background:var(--accent);width:30px;height:30px}.job-held{width:22px;height:22px;background:#121826cc}.job-order{width:28px;height:28px;background:conic-gradient(var(--accent) calc(var(--left, 1) * 360deg),rgba(18,24,38,.85) 0)}.job-order{position:relative}.job-order-no{position:absolute;top:-7px;right:-9px;min-width:15px;height:15px;padding:0 3px;border-radius:8px;background:#fff;color:#1a2233;font:800 10px/15px system-ui,sans-serif;text-align:center}.job-order:not(.mine){opacity:.7}.job-order.late{background:conic-gradient(#ff7a5a calc(var(--left, 1) * 360deg),#121826d9 0)}@keyframes job-bob{50%{transform:translateY(-4px)}}@media(max-width:760px){.job-hint{bottom:96px;font-size:12px;padding:4px 10px}}.job-pin.sign{width:18px;height:18px;border-width:1px;border-color:#ffffff73;background:#12182699;box-shadow:none;animation:none;opacity:.8}.job-hint.quiet{border-color:var(--glass-border)}body:has(.interact-hint) .job-hint{bottom:calc(var(--hint-bottom) + 36px)}.btn-icon.job-open.on{color:var(--accent-hi);box-shadow:0 0 0 1px var(--accent) inset}.job-screen-wrap{position:fixed;inset:0;display:grid;place-items:center;padding:var(--safe-pad);background:#080c1459;z-index:40;animation:job-fade .2s ease}.job-screen{width:min(620px,100%);max-height:100%;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:14px;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);animation:job-rise .25s ease}.job-screen-head{display:flex;align-items:center;gap:8px}.job-screen-head>div{flex:1;display:flex;flex-direction:column}.job-screen-head b{font-size:15px}.job-screen-head small{font-size:10px;opacity:.7}.job-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:auto;min-height:0}.job-card{display:flex;flex-direction:column;border-radius:12px;background:var(--glass-light);border:1px solid var(--glass-border);overflow:hidden;transition:transform .15s ease,border-color .15s ease,background .15s ease;animation:job-rise .3s ease both}.job-card:hover{transform:translateY(-2px);background:var(--glass-hover);border-color:#ffffff47}.job-card.active{border-color:var(--accent)}.job-card-art{position:relative;height:44px;display:grid;place-items:center;color:var(--accent-hi);background:radial-gradient(circle at 50% 120%,rgba(255,140,80,.35),transparent 70%)}.job-badge{position:absolute;top:6px;right:6px;padding:1px 7px;border-radius:var(--r-pill);background:var(--accent);color:#fff;font-size:9px;font-weight:800}.job-card-body{display:flex;flex-direction:column;gap:5px;padding:6px 9px 9px;font-size:10px;line-height:1.35}.job-card-head{display:flex;align-items:center;gap:6px}.job-card-head b{font-size:13px}.job-card-body p{margin:0;opacity:.8}.job-facts{display:flex;flex-direction:column;gap:2px;font-weight:700}.job-facts span{display:flex;align-items:center;gap:4px}.job-bars{display:flex;flex-direction:column;gap:3px}.job-bar{position:relative;height:14px;border-radius:var(--r-pill);background:#0000004d;overflow:hidden}.job-bar i{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,var(--accent),var(--accent-hi));transition:width .4s ease}.job-bar.pay i{background:linear-gradient(90deg,#3fae5a,#7ee08a)}.job-bar span{position:relative;display:block;text-align:center;font-size:9px;font-weight:800;line-height:14px}.job-summary{font-weight:700;color:var(--accent-hi)}.job-cta{margin-top:2px;padding:5px 8px;font-size:11px;justify-content:center}.job-cta.end{background:#ff6e5ad9}.job-cta.go{background:var(--glass-light)}.job-cta-note{text-align:center;opacity:.7;font-weight:700}@keyframes job-rise{0%{opacity:0;transform:translateY(10px) scale(.98)}}@keyframes job-fade{0%{opacity:0}}@media(max-height:420px){.job-card-body p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}.job-pin.take{background:var(--accent);position:relative}.job-pin-label{position:absolute;top:100%;margin-top:4px;white-space:nowrap;padding:2px 8px;border-radius:var(--r-pill);background:var(--glass-strong);font:800 11px/16px system-ui,sans-serif}.job-order.mine{width:34px;height:34px;box-shadow:0 0 0 3px var(--accent),0 2px 8px #0006;animation:job-bob 1.2s ease-in-out infinite}.job-travel{position:fixed;right:var(--edge-right);top:calc(var(--edge-top) + 118px);display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-pill);font-size:12px;font-weight:800;pointer-events:auto;animation:job-travel-pulse 1.8s ease-in-out infinite}@keyframes job-travel-pulse{50%{box-shadow:0 0 0 6px var(--accent-soft)}}@media(prefers-reduced-motion:reduce){.job-travel{animation:none}}.job-sign{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:var(--r-pill);background:var(--glass-strong);border:1.5px solid var(--accent);color:var(--text);font:800 13px/1.2 var(--font-ui);white-space:nowrap;box-shadow:0 3px 10px #00000059;animation:job-bob 1.8s ease-in-out infinite}.job-sign svg{color:var(--accent-hi)}.job-sign.near,.job-sign.hot{background:var(--accent);border-color:#fff}.job-sign.near svg,.job-sign.hot svg{color:#fff}.job-sign.dim{opacity:.75;border-color:var(--glass-border);animation:none}.job-sign .keycap{margin:0 0 0 2px}.job-seat{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#ffffffe6;color:#1a2233;font:900 12px/1 var(--font-ui);box-shadow:0 2px 6px #00000059}.job-seat.dim{opacity:.45}.job-order.mine .job-order-no{min-width:20px;height:20px;top:-10px;right:-12px;border-radius:10px;background:#ffd166;font-size:12px;line-height:20px}.job-pop{padding:3px 10px;border-radius:var(--r-pill);background:var(--glass-strong);color:var(--text);font:900 13px/1.2 var(--font-ui);white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.5);animation:job-pop 1.6s cubic-bezier(.2,.9,.3,1) forwards}.job-pop.big{font-size:17px;padding:4px 12px}.job-pop.gain{background:linear-gradient(#ffd166,#f4a52c);color:#3a2300;text-shadow:none}.job-pop.miss{background:#e5484d;color:#fff;white-space:normal;width:max-content;max-width:220px;text-align:center}@keyframes job-pop{0%{opacity:0;transform:translateY(8px) scale(.6)}12%{opacity:1;transform:translateY(0) scale(1.12)}22%{transform:translateY(-2px) scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-20px) scale(.96)}}.job-pop-wrap{position:relative;transition:transform .12s ease-out}.job-pop-wrap[data-edge=left]:before,.job-pop-wrap[data-edge=right]:after{content:"";position:absolute;top:50%;border:6px solid transparent;transform:translateY(-50%)}.job-pop-wrap[data-edge=left]:before{right:100%;border-right-color:#ffd166}.job-pop-wrap[data-edge=right]:after{left:100%;border-left-color:#ffd166}@media(prefers-reduced-motion:reduce){.job-pop{animation-timing-function:linear}.job-sign{animation:none}}.job-result{position:fixed;right:var(--edge-right);bottom:76px;width:min(340px,calc(100% - 2 * var(--safe)));display:flex;flex-direction:column;gap:6px;padding:9px 11px;border-radius:14px;background:var(--glass-strong);border:1px solid var(--accent);color:var(--text);font-size:12px;z-index:25;animation:job-rise .3s ease}.job-result-head{display:flex;align-items:center;gap:6px;font-size:14px}.job-result-head svg{color:var(--accent-hi)}.job-result-head .job-lv{margin-left:auto}.job-result-stats{display:flex;flex-wrap:wrap;gap:5px}.job-result-stats span{display:inline-flex;align-items:center;gap:3px;padding:2px 9px;border-radius:var(--r-pill);background:var(--glass-light);font-weight:800}.job-result-stats .good{color:#7ee08a}.job-result-stats .bad{color:#ff8a7a}.job-result-stats .gold{color:#ffd166}.job-result-tip{margin:0;padding:6px 8px;border-radius:8px;background:#ffd1661f;border-left:3px solid #ffd166;line-height:1.35}.job-result-actions{display:flex;justify-content:flex-end;gap:6px}.job-result-actions button{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;font-size:12px}button.job-hint.tap{min-height:52px;padding:10px 22px;font-size:15px;border-radius:26px}@media(max-width:760px){.job-result{right:50%;transform:translate(50%);bottom:216px;font-size:11px}}@media(max-height:420px){.job-result{top:calc(var(--edge-top) + 92px);bottom:auto;left:var(--edge-left);right:auto;transform:none;width:min(320px,calc(100% - 2 * var(--safe)));font-size:11px}}@media(pointer:coarse)and (orientation:landscape){button.job-hint.tap{left:auto;right:calc(var(--edge-right) + 96px);bottom:64px;transform:none}}@media(max-width:620px){.job-strip{max-width:calc(100% - 2 * var(--safe) - 52px)}}@media(pointer:coarse)and (orientation:portrait){.job-hint,button.job-hint.tap{left:auto;right:calc(var(--edge-right) + 72px);bottom:var(--job-clear-bottom, 216px);transform:none;max-width:calc(100% - 2 * var(--safe) - 84px);white-space:normal}}.juice-bubble{position:relative;display:inline-flex;align-items:center;padding:4px 9px;border-radius:var(--r-pill);background:#121826d9;border:2px solid transparent;background-image:linear-gradient(#121826e6,#121826e6),conic-gradient(var(--accent) calc(var(--left, 1) * 360deg),rgba(255,255,255,.15) 0);background-origin:border-box;background-clip:padding-box,border-box;font-size:15px;line-height:1;box-shadow:0 2px 8px #00000059}.juice-bubble.mine{background-image:linear-gradient(#121826e6,#121826e6),conic-gradient(#ffd166 calc(var(--left, 1) * 360deg),#ffffff26 0);font-size:19px;animation:job-bob 1.2s ease-in-out infinite}.juice-bubble.taken{opacity:.55}.juice-bubble.late{background-image:linear-gradient(#121826e6,#121826e6),conic-gradient(#ff7a5a calc(var(--left, 1) * 360deg),#ffffff26 0)}.juice-bubble-no{position:absolute;top:-9px;right:-9px;min-width:18px;height:18px;border-radius:9px;background:#fff;color:#1a2233;font:900 11px/18px var(--font-ui);text-align:center}.juice-bubble.mine .juice-bubble-no{background:#ffd166}.mv-strip{position:fixed;top:calc(var(--edge-top) + 58px);left:50%;translate:-50% 0;z-index:16777270;display:flex;flex-direction:column;gap:5px;width:min(360px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));padding:7px 10px 8px;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);font-size:12px;pointer-events:none}.mv-strip-head{display:flex;align-items:center;gap:6px}.mv-strip-head small{margin-left:auto;opacity:.7}.mv-clock{display:inline-flex;align-items:center;gap:3px;font-variant-numeric:tabular-nums;font-weight:700}.mv-clock.over{color:#fca5a5}.mv-check{display:flex;flex-wrap:wrap;gap:4px;margin:0;padding:0;list-style:none}.mv-check li{position:relative;display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#ffffff14;font-size:15px;opacity:.55}.mv-check li.now{opacity:1;outline:2px solid #f59e0b}.mv-check li.done{opacity:1;background:#4ade8038}.mv-check li svg{position:absolute;right:-3px;bottom:-3px;padding:1px;border-radius:50%;background:#16a34a;color:#fff}.mv-now{display:flex;align-items:center;gap:6px}.mv-now small{font-variant-numeric:tabular-nums}.mv-cond-bar{display:inline-block;width:46px;height:6px;border-radius:3px;background:#00000059;overflow:hidden}.mv-cond-bar.wide{flex:1;width:auto;min-width:60px}.mv-cond-bar i{display:block;height:100%;border-radius:inherit;transition:width .25s}.mv-level{position:relative;height:12px;border-radius:6px;background:linear-gradient(90deg,#f87171 0 12%,#4ade80 35% 65%,#f87171 88% 100%);opacity:.85}.mv-level-mid{position:absolute;left:50%;top:1px;bottom:1px;width:2px;translate:-50% 0;background:#00000073}.mv-level-bubble{position:absolute;top:50%;width:14px;height:14px;translate:-50% -50%;border-radius:50%;background:#f8fafc;box-shadow:0 1px 3px #00000080;transition:left .12s linear}.mv-level.danger .mv-level-bubble{background:#fecaca;animation:mv-shake .18s infinite alternate}@keyframes mv-shake{to{translate:-50% -42%}}.mv-steps{position:fixed;top:calc(var(--edge-top) + 150px);left:50%;translate:-50% 0;z-index:16777270;display:flex;flex-direction:column;gap:3px;width:min(360px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));margin:0;padding:0;list-style:none;pointer-events:none;font-size:12px}.mv-steps li{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:8px;background:var(--glass);color:var(--text);opacity:.6}.mv-steps li b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ffffff26;font-size:11px}.mv-steps li.now{opacity:1;outline:2px solid #f59e0b}.mv-steps li.done{text-decoration:line-through}@media(max-height:520px){.mv-strip{top:calc(var(--edge-top) + 50px);width:min(300px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));gap:3px;padding:5px 8px 6px;font-size:11px}.mv-check li{width:20px;height:20px;font-size:12px}.mv-level{height:9px}.mv-level-bubble{width:11px;height:11px}.mv-steps{top:auto;bottom:calc(var(--hint-bottom) + 44px);width:min(300px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)))}.mv-steps li:not(.now){display:none}}.mv-calls{position:fixed;right:var(--edge-right);bottom:calc(var(--hint-bottom) + 122px);z-index:16777270;display:flex;flex-direction:column;gap:6px}.mv-call-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;border:1px solid var(--glass-border);background:var(--glass-strong);color:var(--text);font-size:11px;font-weight:800;touch-action:manipulation}.touch-lift{flex-direction:column;gap:0}.touch-lift small{font-size:9px;font-weight:800;line-height:1}.mv-stars{display:flex;justify-content:center;gap:6px;color:#ffffff40}.mv-stars .on{color:#fbbf24;filter:drop-shadow(0 2px 6px rgb(251 191 36 / .5));animation:mv-star .5s backwards}.mv-stars .on:nth-child(2){animation-delay:.15s}.mv-stars .on:nth-child(3){animation-delay:.3s}@keyframes mv-star{0%{scale:.2;opacity:0}}.mv-time{display:flex;justify-content:center;align-items:center;gap:4px;opacity:.8}.mv-load .mp-li{gap:8px}.mv-missing{opacity:.6}.mv-chip-stat{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;background:#ffffff14;font-weight:700}.mv-chip-stat.gold{color:#fcd34d}.mv-blooper{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:linear-gradient(135deg,#7c3aed47,#ec489933);border:1px solid rgb(236 72 153 / .45);animation:mv-blooper .6s .4s backwards}.mv-blooper svg{flex:none;margin-top:1px;color:#f9a8d4}.mv-blooper b{display:block;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:#f9a8d4}.mv-blooper p{margin:2px 0 0;font-size:13px;font-weight:700}@keyframes mv-blooper{0%{opacity:0;translate:0 8px}}.mv-highlights{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.mv-highlights li{padding:6px 8px;border-radius:8px;background:#f59e0b24;border-left:3px solid #f59e0b}.mv-highlights li:before{content:"✨ "}.mv-chip{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;color:#0f172a;font:800 11px/1 system-ui,sans-serif;box-shadow:0 1px 3px #00000080}.mv-cond{display:flex;flex-direction:column;align-items:center;gap:2px;font:700 12px/1 system-ui,sans-serif;white-space:nowrap}.mv-cond-face{font-size:18px;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .5))}.mv-wedged{padding:3px 8px;border-radius:6px;background:#dc2626;color:#fff;font-weight:900;letter-spacing:.02em;animation:mv-blink .5s infinite alternate}@keyframes mv-blink{to{background:#f97316;scale:1.06}}.mv-pop{padding:3px 9px;border-radius:999px;background:#0f172acc;color:#fff;font:900 14px/1.1 system-ui,sans-serif;white-space:nowrap;animation:mv-pop 1.5s ease-out forwards}.mv-pop-perfect,.mv-pop-delivered,.mv-pop-upright{background:#16a34a}.mv-pop-wedged,.mv-pop-tip,.mv-pop-broken,.mv-pop-drop{background:#dc2626}.mv-pop-spin,.mv-pop-fold,.mv-pop-bonk{background:#7c3aed}@keyframes mv-pop{0%{translate:0 10px;scale:.6;opacity:0}15%{translate:0 0;scale:1.1;opacity:1}75%{opacity:1}to{translate:0 -40px;opacity:0}}.mv-call{padding:4px 10px;border-radius:12px;border:3px solid #fff;background:#fff;color:#0f172a;font:900 13px/1 system-ui,sans-serif;white-space:nowrap;animation:mv-call 2.4s ease-out forwards}@keyframes mv-call{0%{scale:.4;opacity:0}10%{scale:1.15;opacity:1}20%{scale:1}85%{opacity:1}to{opacity:0}}body:has(.mv-strip) .act-toasts{top:calc(var(--safe) + 176px)}@media(max-height:520px){body:has(.mv-strip) .act-toasts{top:calc(var(--safe) + 140px)}}.mv-next{padding:7px 10px;border-radius:10px;background:#38bdf824;border:1px solid rgb(56 189 248 / .45);font-size:12px}.mv-next b{display:block;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#7dd3fc}.mv-next p{margin:2px 0 0}.touch-jump.touch-lift{width:84px;height:84px;background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo));color:#fff}:root:has(.touch-lift) .interact-hint.tap-row{bottom:calc(var(--hint-bottom) + 48px + 84px + 12px)}:root:has(.touch-lift) .interact-tap:first-child{min-height:42px;padding:0 16px;font-size:13px;background:var(--glass-strong);color:var(--text)}:root:has(.touch-lift) .mv-calls{bottom:calc(var(--hint-bottom) + 48px + 84px + 12px + 42px + 10px)}@media(max-height:480px){:root:has(.touch-lift) .interact-hint.tap-row{right:calc(var(--safe) + 84px + 12px);bottom:calc(var(--hint-bottom) + 48px + 20px)}:root:has(.touch-lift) .mv-calls{bottom:calc(var(--hint-bottom) + 48px + 84px + 10px)}}@media(max-width:600px){:root:has(.mv-strip) .act-tracker{display:none}}:root:has(.mv-strip.carrying) .crosshair,:root:has(.mv-pop) .crosshair{display:none}.mv-res-main,.mv-res-side{display:contents}@media(max-height:520px){.mv-results.mp-panel{width:min(600px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)))!important}.mv-results .mp-body{display:grid;grid-template-columns:1fr 1fr;column-gap:12px;align-items:start}.mv-res-main,.mv-res-side{display:flex;flex-direction:column;gap:6px}.mv-results .mv-highlights{display:none}.mv-results .mv-stars svg{width:22px;height:22px}}.tg-picker{position:absolute;left:50%;top:calc(var(--hud-bottom, 52px) + 6px);bottom:max(var(--safe),var(--job-clear-bottom, 0px));height:fit-content;margin-block:auto;transform:translate(-50%);width:min(880px,calc(100% - 2 * var(--safe)));max-height:calc(100% - var(--hud-bottom, 52px) - 6px - max(var(--safe),var(--job-clear-bottom, 0px)));overflow:auto;display:flex;flex-direction:column;gap:12px;padding:14px 16px;pointer-events:auto;color:var(--text);animation:tg-pop .22s var(--ease-out)}@keyframes tg-pop{0%{transform:translate(-50%,4%) scale(.94);opacity:0}}.tg-picker header,.tg-picker footer{display:flex;align-items:flex-start;gap:10px}.tg-picker footer{align-items:center}.tg-picker h2{margin:0 0 2px;font-size:18px;font-weight:900}.tg-x{margin-left:auto}.tg-picker button{min-height:38px;padding:8px 16px;font-size:14px;pointer-events:auto}.tg-cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.tg-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:12px 14px;border-radius:var(--r-md);background:linear-gradient(135deg,#ff8a4c38,#ffd16614);border:1px solid rgba(255,170,110,.45)}.tg-card.active{border-color:#3ccf7db3}.tg-icon{display:grid;place-items:center;width:112px;height:96px;border-radius:var(--r-md);background:#ff8a4c;border:4px solid #2b2730;box-shadow:0 4px #2b2730}.tg-info{display:grid;gap:4px;min-width:0}.tg-info b{font-size:17px;font-weight:900}.tg-info p{margin:0;font-size:12.5px;color:var(--text-dim);line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tg-meta,.tg-live{display:flex;gap:5px;align-items:center;font-size:12px;color:var(--text-dim)}.tg-live{color:var(--ok);font-weight:800}.tg-live i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px #3ccf7d40}.tg-actions{display:flex;gap:8px;margin-top:4px;flex-wrap:wrap}.tg-play{font-weight:900;padding-inline:22px!important}.tg-card{grid-template-columns:auto 1fr;grid-template-rows:auto auto 1fr auto;column-gap:12px;row-gap:4px;align-items:center}.tg-info{display:contents}.tg-card .tg-icon{grid-row:1 / span 2}.tg-info b{grid-column:2;align-self:end}.tg-meta,.tg-live{grid-column:2;align-self:start}.tg-info p,.tg-actions{grid-column:1 / -1}.tg-info p{align-self:start}.tg-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,196px),1fr))}.tg-card .tg-icon{width:84px;height:70px}.tg-card .tg-icon svg{width:72px;height:58px}@media(max-height:420px){.tg-picker{padding:10px 12px;gap:8px}.tg-picker h2{font-size:16px}.tg-card{padding:10px 12px}.tg-card .tg-icon{width:64px;height:54px;border-width:3px;box-shadow:0 3px #2b2730}.tg-card .tg-icon svg{width:56px;height:44px}.tg-info p{-webkit-line-clamp:2}}@media(max-width:620px),(max-height:480px){.tg-picker{gap:10px;padding:12px 14px}.tg-info p{display:none}.tg-card{padding:8px 10px;row-gap:2px;grid-template-rows:auto auto}.tg-card .tg-icon{width:56px;height:46px;border-width:3px;box-shadow:0 3px #2b2730}.tg-card .tg-icon svg{width:48px;height:38px}.tg-actions{margin-top:0}.tg-meta{align-items:flex-start}.tg-meta svg{flex:none;margin-top:2px}}@media(max-width:620px){.tg-card{grid-template-columns:auto 1fr auto}.tg-actions{grid-column:3;grid-row:1 / span 2}}@media(max-height:480px){.tg-picker header .ok-dim{display:none}.tg-card{grid-template-rows:auto auto auto}.tg-actions{grid-column:1 / -1}.tg-picker button{min-height:34px;padding:6px 14px}}.tg-leave{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:60;width:min(420px,calc(100% - 2 * var(--safe)));display:flex;flex-direction:column;gap:10px;padding:16px 18px;pointer-events:auto;color:var(--text);animation:tg-pop .18s var(--ease-out)}.tg-leave header{display:flex;align-items:center;gap:10px}.tg-leave h2{margin:0;font-size:18px;font-weight:900}.tg-leave p{margin:0;font-size:14px;line-height:1.4}.tg-leave footer{display:flex;justify-content:flex-end;gap:8px}.tg-leave button{min-height:40px;padding:8px 18px;font-size:14px;display:inline-flex;align-items:center;gap:6px}.tg-leave button.danger{background:#e5483d;color:#fff;border:0}.turn-banner{position:absolute;top:30%;left:50%;z-index:7;display:flex;align-items:center;gap:8px;padding:8px 18px 8px 14px;border-radius:var(--r-pill);background:linear-gradient(180deg,#ffd166f5,#ffaa3cf5);color:#3a2a00;font:900 18px/1 var(--font-ui);letter-spacing:.01em;white-space:nowrap;box-shadow:0 8px 26px #0006,0 0 0 3px #ffd16659;pointer-events:none;transform:translate(-50%);animation:turn-banner 1.9s var(--ease-out) both}.turn-banner-dot{width:9px;height:9px;border-radius:50%;background:#3a2a00;box-shadow:0 0 0 3px #3a2a002e}@keyframes turn-banner{0%{opacity:0;transform:translate(-50%,-10px) scale(.86)}14%{opacity:1;transform:translate(-50%) scale(1.04)}22%{transform:translate(-50%) scale(1)}80%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-6px) scale(.98)}}@media(max-height:460px){.turn-banner{top:24%;padding:6px 14px 6px 11px;font-size:15px}}.turn-thinking{display:inline-flex;gap:2px;align-items:center;margin-left:4px;vertical-align:middle}.turn-thinking i{width:4px;height:4px;border-radius:50%;background:var(--accent-hi);animation:turn-dot 1s ease-in-out infinite}.turn-thinking i:nth-child(2){animation-delay:.15s}.turn-thinking i:nth-child(3){animation-delay:.3s}@keyframes turn-dot{0%,60%,to{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}@keyframes turn-glow{50%{box-shadow:0 0 0 3px var(--gold),0 0 30px #ffd166bf,inset 0 1px #ffffff40}}@keyframes turn-shake{0%,to{transform:translate(0)}20%{transform:translate(-1.5px)}40%{transform:translate(1.5px)}60%{transform:translate(-1px)}80%{transform:translate(1px)}}@keyframes turn-beat{50%{transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){.turn-banner{animation:turn-banner-fade 1.9s linear both}.turn-thinking i{animation:none;opacity:.8}}@keyframes turn-banner-fade{0%{opacity:0}10%,85%{opacity:1}to{opacity:0}}.ch-root{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:8px 10px;box-sizing:border-box;pointer-events:none;z-index:30;font-family:var(--font-ui);color:var(--text)}.ch-root>*{pointer-events:auto}.ch-root>.ch-backdrop{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 40% 50%,#12101873,#121018b8);backdrop-filter:blur(6px) saturate(.8);-webkit-backdrop-filter:blur(6px) saturate(.8);pointer-events:none}.ch-stage{height:min(calc(100vh - 16px),calc(100vw - 250px));aspect-ratio:1;display:grid;place-items:center}.ch-board{position:relative;width:100%;height:100%;border-radius:var(--r-md);background:#6b3f22;padding:2.2%;box-sizing:border-box;box-shadow:var(--shadow-md),0 0 0 3px #2b2730,inset 0 0 0 2px #ffdcaa59}.ch-board.ch-chess4{background:#2b27308c;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}.ch-board svg{width:100%;height:100%;display:block;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;border-radius:6px}.ch-l{fill:#f6e0b8}.ch-d{fill:#c78a54}.ch-chess4 .ch-l{fill:#efe3cf}.ch-chess4 .ch-d{fill:#b9a184}.ch-coord text{font:900 22px var(--font-ui);pointer-events:none}.ch-coord .on-l{fill:#c78a54}.ch-coord .on-d{fill:#f6e0b8}.ch-last{fill:#ffd1668c}.ch-sel{fill:#ff7a458c}.ch-pre{fill:#4f9bff80}.ch-dot{fill:#2b273052;pointer-events:none}.ch-dot.cap{fill:none;stroke:#2b273059;stroke-width:10}.ch-piece{transition:transform .18s cubic-bezier(.3,.8,.3,1);pointer-events:none}.ch-piece.drag{transition:none;filter:drop-shadow(0 10px 8px rgba(0,0,0,.35))}.ch-promo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;background:#1218268c;border-radius:var(--r-md)}.ch-promo button{background:var(--glass-strong);border:1px solid var(--glass-border);border-radius:var(--r-md);padding:6px;cursor:pointer}.ch-promo button:hover{background:var(--accent-soft);border-color:var(--accent)}.ch-promo-x{color:var(--text);font-size:22px;width:40px}.ch-side{width:230px;max-height:calc(100vh - 16px);display:flex;flex-direction:column;gap:6px;padding:8px;box-sizing:border-box;overflow:hidden}.ch-head{display:flex;align-items:center;gap:6px}.ch-title{font-weight:900;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ch-turn{flex:1;white-space:nowrap;font-size:11px;color:var(--text-dim);text-align:right}.ch-turn.mine{color:var(--gold);font-weight:800}.ch-players{display:flex;flex-direction:column;gap:4px}.ch-player{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;padding:5px 7px;border-radius:var(--r-sm);background:var(--glass-light);border:1px solid transparent;font-size:12px}.ch-player.turn{border-color:var(--accent);background:var(--accent-soft)}.ch-player.out{opacity:.5}.ch-swatch{width:12px;height:12px;border-radius:4px;border:2px solid #2b2730}.ch-name{flex:1;min-width:0;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ch-name em{font-style:normal;color:var(--text-dim);font-weight:600}.ch-team,.ch-pts{font-size:10px;padding:1px 6px;border-radius:var(--r-pill);background:#ffffff1f}.ch-pts{color:var(--gold);font-weight:800}.ch-taken{display:flex;align-items:center;width:100%;order:9}.ch-taken svg{margin-right:-3px}.ch-taken b{margin-left:6px;font-size:11px;color:var(--text-dim)}.ch-clock{font-variant-numeric:tabular-nums;font-weight:900;font-size:14px;padding:1px 7px;border-radius:7px;background:#0000004d;color:var(--text-dim)}.ch-clock.run{background:#f4f7fb;color:var(--ink)}.ch-clock.low{color:#fff;background:var(--danger)}.ch-clock.low.run{animation:ch-pulse 1s ease-in-out infinite}@keyframes ch-pulse{50%{box-shadow:0 0 0 4px #ff5a5f59}}.ch-moves{flex:1;min-height:0;display:flex;flex-direction:column}.ch-moves-head{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:800;padding:3px 6px;justify-content:flex-start}.ch-list{margin:0;padding:0 4px;list-style:none;overflow-y:auto;font-size:12px;font-variant-numeric:tabular-nums}.ch-list li{display:flex;gap:6px;padding:1px 0}.ch-no{color:var(--text-dim);width:22px}.ch-san{min-width:40px;font-weight:700}.ch-actions{display:flex;gap:4px;justify-content:flex-end}.ch-ask{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:11px;padding:5px;border-radius:var(--r-sm);background:#ffd16626}.ch-ask button{padding:3px 8px;font-size:11px}.ch-result{position:fixed;left:50%;top:8px;transform:translate(-50%);min-width:220px;padding:8px 16px 12px;text-align:center;z-index:31;pointer-events:auto}.ch-result h2{margin:4px 0;font-size:18px;display:flex;gap:6px;align-items:center;justify-content:center;color:var(--gold)}.ch-result-x{position:absolute;right:6px;top:6px}.ch-reason{margin:0 0 8px;color:var(--text-dim)}.ch-standings{text-align:left;margin:0 0 10px;padding-left:20px;font-weight:800}.ch-standings b{float:right}.ch-result-actions{display:flex;gap:8px;justify-content:center}.cs-lobby{--mh: clamp(212px, min(calc(100vh - var(--hud-bottom, 52px) - 160px), 44vw), 340px);--mw: calc(var(--mh) * 1.3);--cw: clamp(84px, calc(var(--mh) * .36), 118px);position:fixed;left:50%;top:calc(var(--hud-bottom, 52px) + 6px);bottom:max(calc(var(--safe-bottom) + var(--safe)),var(--job-clear-bottom, 0px));height:fit-content;margin-block:auto;transform:translate(-50%);z-index:30;width:min(860px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));max-height:calc(100vh - var(--hud-bottom, 52px) - 6px - max(calc(var(--safe-bottom) + var(--safe)),var(--job-clear-bottom, 0px)));box-sizing:border-box;display:flex;flex-direction:column;gap:10px;padding:12px 14px;font-family:var(--font-ui);color:var(--text);pointer-events:auto}.cs-lobby header,.cs-lobby footer{display:flex;align-items:center;gap:8px;min-width:0}.cs-lobby header>button{flex:none}.cs-lobby header b{font-size:17px;font-weight:900;white-space:nowrap}.cs-lobby footer{flex-wrap:wrap}.cs-lobby footer button{min-height:38px;padding:8px 14px;font-size:14px;display:inline-flex;align-items:center;gap:6px}.cs-lobby footer .ch-error{flex:1 1 100%;order:-1}.cs-start{font-weight:900;padding-inline:20px!important}.cs-start:disabled{opacity:.5;cursor:not-allowed}.cs-grow{flex:1}.cs-dim{white-space:nowrap;display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);font-size:12px}.cs-chip{padding:3px 10px;border-radius:var(--r-pill);background:var(--glass-light);border:1px solid var(--glass-border);font-size:12px;font-weight:800;white-space:nowrap}.cs-body{display:grid;grid-template-columns:var(--mw) minmax(0,1fr);gap:16px;min-height:0;overflow:hidden}.cs-side{display:grid;gap:12px;align-content:start;min-width:0;min-height:0;max-height:var(--mh);overflow:auto;padding-right:4px;padding-bottom:18px;mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent)}.cs-side section{display:grid;gap:6px;min-width:0}.cs-side h3{margin:0;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.cs-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:8px}.cs-mode{display:flex;align-items:center;gap:8px;min-height:56px;padding:6px 10px!important;text-align:left;border-radius:var(--r-md);background:var(--glass-light)!important;border:2px solid var(--glass-border)!important;box-shadow:none!important;color:var(--text)!important;min-width:0}.cs-mode svg{flex:none;width:40px;height:32px}.cs-mode span{display:grid;min-width:0}.cs-mode b{font-size:13.5px;font-weight:900;line-height:1.15}.cs-mode small{font-size:11px;line-height:1.2;color:var(--text-dim)}.cs-mode.on{border-color:var(--accent)!important;background:var(--accent-soft)!important}.cs-mode:disabled:not(.on){opacity:.55}.cs-colours{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:6px}.cs-colour{position:relative;display:grid;justify-items:center;align-content:center;gap:2px;min-height:52px;min-width:0;padding:4px!important;border-radius:var(--r-md);background:var(--glass-light)!important;border:2px solid var(--glass-border)!important;box-shadow:none!important;color:var(--text)!important;font-size:12px;font-weight:800}.cs-colour i{width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.75);box-shadow:0 1px 4px #0006}.cs-colour span,.cs-colour small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cs-colour small{font-size:10px;color:var(--text-dim);font-weight:700}.cs-colour.on{border-color:var(--accent)!important;background:var(--accent-soft)!important}.cs-colour.taken{opacity:.55}.cs-colour:disabled{cursor:not-allowed}.cs-seg{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:4px}.cs-seg button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:32px;padding:4px 10px!important;font-size:12px!important;white-space:nowrap;background:var(--glass-light)!important;border:1px solid var(--glass-border)!important;box-shadow:none!important;color:var(--text)!important;border-radius:var(--r-pill)}.cs-seg button.on{background:var(--accent-soft)!important;border-color:var(--accent)!important}.cs-seg button:disabled:not(.on){opacity:.55}.cs-custom{display:flex;align-items:center;gap:6px;font-size:12px}.cs-custom input{width:58px;min-height:30px}.cs-map{position:relative;width:var(--mw);height:var(--mh);-webkit-user-select:none;user-select:none}.cs-felt{position:absolute;inset:29% 31%;display:grid;place-items:center;border-radius:18%;background:radial-gradient(circle at 40% 35%,#a3734a,#7a512f 75%);border:6px solid #5a3a22;box-shadow:0 6px 18px #0006,inset 0 0 0 2px #00000040}.cs-felt svg{width:52%;height:auto;opacity:.9}.cs-chair{position:absolute;box-sizing:border-box;width:var(--cw);min-height:72px;padding:6px;display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;border-radius:var(--r-md);background:var(--glass-strong);border:2px solid var(--ring, var(--glass-border));box-shadow:var(--shadow-sm);font-size:12px}.cs-chair.at-bottom{left:50%;bottom:0;transform:translate(-50%)}.cs-chair.at-top{left:50%;top:0;transform:translate(-50%)}.cs-chair.at-left{left:0;top:50%;transform:translateY(-50%)}.cs-chair.at-right{right:0;top:50%;transform:translateY(-50%)}.cs-chair.at-top.filled,.cs-chair.at-bottom.filled{width:calc(var(--cw) * 1.85);min-height:0;grid-template-columns:auto minmax(0,1fr) auto;justify-items:start;align-items:center;text-align:left;column-gap:8px}.cs-chair.at-top.filled .cs-avatar,.cs-chair.at-bottom.filled .cs-avatar{grid-row:1 / span 2}.cs-chair.at-top.filled>b,.cs-chair.at-bottom.filled>b{grid-column:2 / span 2;grid-row:1}.cs-chair.at-top.filled>small,.cs-chair.at-bottom.filled>small{grid-column:2;grid-row:2}.cs-chair.at-top.filled>.cs-chair-acts,.cs-chair.at-bottom.filled>.cs-chair-acts{grid-column:3;grid-row:2;flex-wrap:nowrap}.cs-chair.at-top.filled>.cs-menu,.cs-chair.at-bottom.filled>.cs-menu{grid-column:1 / -1;justify-self:center}.cs-chair b{max-width:100%;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px}.cs-chair small{color:var(--text-dim);font-size:10.5px}.cs-chair.empty{background:#12182680;border-style:dashed}.cs-chair.off{opacity:.45;min-height:44px;background:#12182666;border-style:dotted}.cs-chair.mine{box-shadow:0 0 0 2px var(--accent),var(--shadow-sm)}.cs-chair-acts{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:4px}.cs-chair-acts .btn-icon{width:34px;height:34px;padding:0;display:grid;place-items:center}.cs-chair-acts .cs-x{width:24px;height:24px}.cs-addbot{color:#cfc4ff!important}.cs-avatar{position:relative;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:15px;color:#fff;background:hsl(var(--h, 20) 60% 45%);border:2px solid var(--ring, rgba(255, 255, 255, .7))}.cs-crown{position:absolute;top:-10px;left:50%;transform:translate(-50%);color:var(--gold);fill:var(--gold)}.cs-ready{position:absolute;right:-4px;bottom:-3px;padding:1px;border-radius:50%;background:var(--ok);color:#fff}.cs-badge{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:1px 8px!important;border-radius:var(--r-pill);background:#0000004d!important;border:1px solid var(--glass-border)!important;box-shadow:none!important;color:var(--text)!important;font-size:11px!important;font-weight:800;white-space:nowrap}.cs-badge i{width:11px;height:11px;border-radius:50%;border:1px solid rgba(255,255,255,.7)}.cs-badge.auto{color:var(--text-dim)!important}.cs-badge:disabled{opacity:1;cursor:default}.cs-menu{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.cs-dot{width:26px;height:26px;padding:0!important;border-radius:50%;border:2px solid rgba(255,255,255,.6)!important;box-shadow:var(--shadow-sm)!important}.cs-dot.on{border-color:var(--gold)!important;box-shadow:var(--focus-ring)!important}.cs-dot.rnd{display:grid;place-items:center;background:var(--glass-light)!important;color:var(--text)!important}.cs-lvl{min-height:26px;padding:2px 8px!important;font-size:11px!important}.cs-lvl.x{background:var(--glass-light)!important;box-shadow:none!important}@media(max-height:460px){.cs-lobby{padding:8px 12px;gap:6px}.cs-lobby footer button{min-height:34px;padding:5px 12px}.cs-side{gap:8px}.cs-mode{min-height:46px}.cs-colour{min-height:42px}.cs-chair{min-height:62px;padding:4px}.cs-avatar{width:26px;height:26px;font-size:13px}}@media(max-width:620px){.cs-lobby{--mh: clamp(212px, 62vw, 280px)}.cs-body{grid-template-columns:minmax(0,1fr);overflow:auto;flex:1 1 auto}.cs-map{margin:0 auto;max-width:100%}.cs-side{max-height:none;overflow:visible;padding-right:0}}@media(min-width:621px)and (min-height:601px){.cs-seg{display:flex;flex-wrap:wrap}.cs-seg button{flex:1 1 30%;min-width:0}.cs-colours{display:flex;flex-wrap:wrap}.cs-colour{flex:1 1 0;min-width:64px;min-height:46px}.cs-body{flex:0 1 auto;grid-template-rows:minmax(0,1fr)}.cs-side{max-height:none}.cs-map{align-self:center}}html:has(.cs-lobby) .hud.okey-on .chat{top:auto;bottom:var(--safe);width:min(360px,calc(100% - 2 * var(--safe)))}@media(max-height:600px)and (orientation:landscape),(max-width:620px){.cs-lobby{padding:6px 12px;gap:6px;--cs-chip-h: 34px;--cs-chip-btn: 28px;--cs-chip-gap: 4px;--cs-row-h: 30px}.cs-lobby header b{font-size:15px}.cs-lobby header .btn-icon{width:28px;height:28px;min-height:0;padding:0;display:grid;place-items:center}.cs-lobby footer button{min-height:30px;padding:3px 12px;font-size:13px}.cs-body{gap:10px;flex:1 1 auto;overflow:hidden}.cs-map{width:auto;height:auto;max-width:none;margin:0;display:grid;gap:var(--cs-chip-gap);align-content:start;min-width:0}.cs-felt{display:none}.cs-map .cs-chair,.cs-map .cs-chair.at-top,.cs-map .cs-chair.filled{position:static;transform:none;width:auto;height:var(--cs-chip-h);min-height:0;padding:0 6px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;justify-items:start;align-items:center;align-content:center;column-gap:8px;row-gap:0;text-align:left}.cs-map .cs-chair.at-bottom{order:0}.cs-map .cs-chair.at-right{order:1}.cs-map .cs-chair.at-top{order:2}.cs-map .cs-chair.at-left{order:3}.cs-map .cs-chair.off{display:none}.cs-map .cs-chair .cs-avatar{width:24px;height:24px;font-size:12px;grid-column:1;grid-row:1 / span 2}.cs-map .cs-chair.filled>b{grid-column:2;grid-row:1;line-height:1.15}.cs-map .cs-chair.filled>small{grid-column:2;grid-row:2;line-height:1.15}.cs-map .cs-chair.filled>b:nth-last-child(2){grid-row:1 / span 2}.cs-map .cs-chair.filled>.cs-chair-acts,.cs-map .cs-chair.empty>.cs-chair-acts{grid-column:3;grid-row:1 / span 2;flex-wrap:nowrap;justify-self:end}.cs-map .cs-chair.empty>small{grid-column:1 / span 2;grid-row:1 / span 2}.cs-map .cs-chair>.cs-menu{grid-column:1 / -1;grid-row:1 / span 2;justify-self:center;flex-wrap:nowrap}.cs-map .cs-chair-acts .btn-icon{width:var(--cs-chip-btn);height:var(--cs-chip-btn);min-height:0}.cs-map .cs-dot{width:var(--cs-chip-btn);height:var(--cs-chip-btn)}.cs-map .cs-lvl{min-height:var(--cs-chip-btn);padding-block:0!important}.cs-badge{min-height:22px}.cs-crown{top:-6px;width:11px;height:11px}.cs-side{max-height:none;overflow:auto;gap:var(--cs-chip-gap);padding-right:0;padding-bottom:12px;min-height:0;mask-image:linear-gradient(to bottom,#000 calc(100% - 12px),transparent);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 12px),transparent)}.cs-side section{gap:3px}.cs-modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.cs-mode{min-height:var(--cs-row-h);padding:2px 8px!important;gap:6px;justify-content:center}.cs-mode svg{width:22px;height:18px}.cs-mode small{display:none}.cs-mode b{font-size:12px;white-space:nowrap}.cs-colours{grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:4px}.cs-colour{min-height:var(--cs-row-h);display:flex;align-items:center;justify-content:center;gap:5px;padding:2px 6px!important}.cs-colour i,.cs-colour>svg{flex:none;width:14px;height:14px}.cs-colour small{display:none}.cs-seg{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}.cs-seg button{min-height:var(--cs-row-h);padding:2px 6px!important;font-size:11.5px!important}}@media(max-width:620px)and (orientation:portrait){.cs-body{display:flex;flex-direction:column}.cs-map{flex:none}.cs-side{flex:1 1 auto}.cs-seg,.cs-colours{display:flex;flex-wrap:wrap}.cs-seg button,.cs-colour{flex:1 1 30%;min-width:0}.cs-side{grid-template-columns:repeat(2,auto);column-gap:8px}.cs-side section{grid-column:1 / -1}.cs-side section.cs-half{grid-column:auto}.cs-half .cs-seg svg{display:none}.cs-half .cs-seg button{min-width:max-content}.cs-lobby header .cs-chip{display:none}}@media(max-height:600px)and (orientation:landscape){.cs-body{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(0,1.7fr)}.cs-lobby{--cs-chip-h: 28px;--cs-chip-btn: 22px;--cs-row-h: 28px}.cs-map{overflow:auto}.cs-map .cs-chair .cs-avatar{width:22px;height:22px;font-size:11px}.cs-map .cs-chair.filled>b{font-size:12px;line-height:1.05}.cs-map .cs-chair.filled>small{font-size:10px;line-height:1.05}.cs-side{padding-bottom:8px;mask-image:linear-gradient(to bottom,#000 calc(100% - 8px),transparent);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 8px),transparent)}.cs-badge{min-height:20px}.cs-side{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}.cs-side section{grid-column:1 / -1;grid-template-columns:64px minmax(0,1fr);align-items:center;column-gap:6px}.cs-side section.cs-half{grid-column:auto}.cs-side section>:not(h3){grid-column:2}.cs-side h3{white-space:normal;line-height:1.1;font-size:10px}.cs-colours{display:flex;flex-wrap:wrap}.cs-colour{flex:1 1 auto;padding:2px 6px!important;gap:4px}}@media(max-width:760px){.ch-side{width:236px}.ch-stage{height:min(calc(100vh - 16px),calc(100vw - 260px))}.ch-pts{padding:1px 4px;font-size:9px}}.ch-root.compact{justify-content:flex-end;align-items:flex-end}.ch-root.compact .ch-side{max-height:60vh}@media(min-width:1100px){.ch-side{width:290px;gap:8px;padding:12px}.ch-stage{height:min(calc(100vh - 24px),calc(100vw - 330px))}.ch-player{font-size:14px;padding:8px 10px}.ch-clock{font-size:18px}.ch-list{font-size:14px}}.ch-error{flex:1;font-size:12px;font-weight:800;color:var(--danger)}.ch-result-icon svg{width:56px;height:45px}.ch-view{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;font-size:12px;font-weight:900;margin-right:auto}.ch-player.me.turn{border-color:var(--gold);background:#ffd16629;box-shadow:0 0 0 1px var(--gold),0 0 14px #ffd16659}.ch-root.myturn .ch-turn.mine{animation:turn-beat 1.6s ease-in-out infinite;display:inline-block}.ch-root.turn-warn .ch-player.me .ch-clock.run:not(.low){background:#ffb547;color:#3a2a00}.ch-root.turn-low .ch-player.me .ch-clock.run{animation:ch-pulse .5s ease-in-out infinite,turn-shake .45s ease-in-out 1}.ch-root .turn-banner{z-index:30}@media(prefers-reduced-motion:reduce){.ch-root.myturn .ch-turn.mine,.ch-root.turn-low .ch-player.me .ch-clock.run{animation:none}}.acct-overlay{position:fixed;inset:0;z-index:16777285;display:flex;align-items:center;justify-content:center;padding:calc(var(--safe) + var(--safe-top)) calc(var(--safe) + var(--safe-right)) calc(var(--safe) + var(--safe-bottom)) calc(var(--safe) + var(--safe-left));background:radial-gradient(ellipse at center,#12182659,#121826b3);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:auto;overflow-y:auto;animation:acct-fade var(--t-med) ease;user-select:text;-webkit-user-select:text}@keyframes acct-fade{0%{opacity:0}}.acct-card{position:relative;width:min(380px,100%);margin:auto;padding:26px 24px 18px;display:flex;flex-direction:column;align-items:center;gap:12px;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);text-align:center;animation:pop .35s var(--ease-out)}.acct-card h2{margin:0;font-size:22px;font-weight:900;line-height:1.2}.acct-lead{margin:0;color:var(--text-dim);font-size:15px;line-height:1.4;text-wrap:balance}.acct-logo .loading-logo{margin-bottom:4px}.acct-close{position:absolute;top:10px;right:10px;width:max(var(--tap),40px);height:max(var(--tap),40px);padding:0;display:grid;place-items:center;border-radius:var(--r-pill)}.acct-providers{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:6px}.acct-google{min-height:44px;display:flex;justify-content:center;color-scheme:light}.acct-google-wait{width:260px;height:44px;border-radius:var(--r-pill);background:var(--glass-light);animation:acct-pulse 1.2s ease-in-out infinite}@keyframes acct-pulse{50%{opacity:.5}}.acct-status,.acct-error{margin:0;display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:700}.acct-error{color:#ffb3b5}.acct-spin{animation:acct-spin .8s linear infinite}@keyframes acct-spin{to{transform:rotate(360deg)}}.acct-or{width:100%;display:flex;align-items:center;gap:10px;color:var(--text-dim);font-size:13px;font-weight:700}.acct-or:before,.acct-or:after{content:"";flex:1;height:1px;background:var(--glass-border)}.acct-guest{width:min(320px,100%);min-height:44px;border-radius:var(--r-pill);font-size:15px}.acct-note{margin:-4px 0 0;color:var(--text-dim);font-size:13px}.acct-legal{margin:6px 0 0;color:var(--text-dim);font-size:12px;line-height:1.45}.acct-legal a{color:var(--text);font-weight:700;text-decoration:underline;text-underline-offset:2px}.acct-fake{width:100%;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px;border:1px dashed rgba(255,209,102,.6);border-radius:var(--r-md)}.acct-fake-tag{color:var(--gold);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.acct-field{width:100%}.acct-field input,.acct-handle input{width:100%;font:inherit;font-size:17px;font-weight:700;color:var(--ink);background:#fff;border:0;border-radius:var(--r-sm);padding:10px 12px;user-select:text;-webkit-user-select:text}.acct-gbtn{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;border-radius:var(--r-pill);background:#fff;color:#1f1f1f;text-shadow:none;box-shadow:0 0 0 1px #747775 inset;font-weight:700}.acct-pick{gap:10px}.acct-handle{width:100%;display:flex;align-items:center;gap:2px;margin-top:6px;padding:0 10px 0 12px;border-radius:var(--r-md);background:#fff;color:#5b6573;box-shadow:0 0 0 2px transparent;transition:box-shadow var(--t-fast) ease}.acct-handle:focus-within{box-shadow:var(--focus-ring)}.acct-handle.good{box-shadow:0 0 0 2px var(--ok)}.acct-handle.bad{box-shadow:0 0 0 2px var(--danger)}.acct-handle input{flex:1;min-width:0;padding:12px 4px;background:transparent;outline:none;box-shadow:none!important}.acct-handle-mark{width:22px;display:grid;place-items:center}.acct-handle.good .acct-handle-mark{color:#1f9d58}.acct-handle.bad .acct-handle-mark{color:#d93a3f}.acct-handle-status{margin:0;min-height:20px;width:100%;text-align:left;font-size:14px;font-weight:800;color:var(--text-dim)}.acct-handle-status.available,.acct-handle-status.current{color:#7ee2a8}.acct-handle-status.problem{color:#ffb3b5}.acct-suggest{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;color:var(--text-dim)}.acct-chip{padding:6px 12px;min-height:34px;border-radius:var(--r-pill);font-size:14px}.acct-rules{margin:0;width:100%;text-align:left;font-size:12px;color:var(--text-dim)}.acct-primary{width:100%;min-height:48px;margin-top:4px;border-radius:var(--r-pill);font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.acct-primary:disabled{filter:grayscale(.6) brightness(.8);cursor:default}.acct-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.acct-row .set-label{min-width:0;overflow-wrap:anywhere}.acct-signout{display:inline-flex;align-items:center;gap:6px}.acct-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(max-height:480px){.acct-card{padding:16px 18px 12px;gap:8px}.acct-logo{display:none}.acct-card h2{font-size:19px}.acct-card:not(.acct-pick) .acct-lead,.acct-note{display:none}.acct-providers{margin-top:0}.acct-fake{flex-direction:row;flex-wrap:wrap;justify-content:center;padding:8px}.acct-fake-tag{width:100%}.acct-fake .acct-field{flex:1;width:auto;min-width:160px}.acct-guest{min-height:40px}}.acct-row .set-label small,.acct-redeem .set-label small{display:block;margin-top:2px;font-size:12px;font-weight:600;opacity:.72}.acct-linked{display:block}.acct-linked>svg{vertical-align:-2px;margin-right:4px;color:#6ee7a0}.acct-link{display:flex;flex-direction:column;gap:8px;margin-top:4px;padding:12px;border-radius:var(--r-sm);background:#ffffff0f;border:1px solid rgba(255,255,255,.1);user-select:text;-webkit-user-select:text}.acct-link-title{font-size:12px;font-weight:800;opacity:.8}.acct-link-code{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.acct-link-code>span{font:900 28px/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;user-select:all;-webkit-user-select:all}.acct-link-code.expired>span{opacity:.35;text-decoration:line-through}.acct-link-copy{display:inline-flex;align-items:center;gap:6px}.acct-link-steps{margin:0;font-size:13.5px;font-weight:600;line-height:1.35}.acct-link-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:12.5px;font-weight:700;opacity:.85}.acct-link-wait{display:inline-flex;align-items:center;gap:6px}.acct-link-done{flex-direction:row;align-items:center;font-weight:800;color:#6ee7a0}.acct-redeem{display:flex;flex-direction:column;gap:8px;font-weight:600}.acct-redeem-form{display:flex;gap:8px}.acct-redeem-form input{flex:1;min-width:0;font:800 17px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:#fff;border:0;border-radius:var(--r-sm);padding:9px 12px;user-select:text;-webkit-user-select:text}.acct-redeem-form button{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.acct-redeem-msg{font-size:13px;font-weight:700;line-height:1.35}.acct-redeem-msg>svg{vertical-align:-3px}.acct-redeem-msg.ok{color:#6ee7a0}.acct-redeem-msg.bad{color:#ffb4a0}.chat:not(.collapsed) input{padding-right:40px}.chat-collapse{position:absolute;right:5px;bottom:5px;width:28px;height:28px;padding:0;display:inline-grid;place-items:center;border:0;border-radius:var(--r-pill);background:transparent;box-shadow:none;text-shadow:none;color:var(--text-dim);pointer-events:auto}.chat-collapse:hover,.chat-collapse:focus-visible{background:var(--glass-hover);color:var(--text);filter:none}.chat-collapse svg{width:15px;height:15px}.chat.collapsed{width:auto;align-items:flex-start}.chat-pill{pointer-events:auto;position:relative;display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 14px 0 12px;border:1px solid var(--glass-border);border-radius:var(--r-pill);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);text-shadow:none;font:inherit;font-weight:700;animation:pop var(--t-med) var(--ease-out);transform-origin:0 100%}.chat-pill:hover{background:var(--glass-hover);filter:none}.chat-pill svg{width:17px;height:17px}.chat-unread{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--accent);color:#fff;font-size:11px;font-weight:800;line-height:20px;text-align:center;animation:pop var(--t-med) var(--ease-out)}.chat-collapse[data-tip]:after,.chat-pill[data-tip]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);padding:4px 9px;border-radius:8px;background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font:700 12px/1.2 var(--font-ui);white-space:nowrap;pointer-events:none;opacity:0;transform:translateY(3px);transition:opacity var(--t-fast) ease,transform var(--t-fast) ease}.chat-collapse[data-tip]:after{right:-5px}.chat-pill[data-tip]:after{left:0}.chat-collapse[data-tip]:hover:after,.chat-collapse[data-tip]:focus-visible:after,.chat-pill[data-tip]:hover:after,.chat-pill[data-tip]:focus-visible:after{opacity:1;transform:none}@media(max-height:480px),(max-width:760px){.chat:not(.collapsed) input{padding-right:34px}.chat-collapse{right:3px;bottom:3px;width:24px;height:24px}.chat-collapse svg{width:13px;height:13px}.chat-pill{height:32px;padding:0 11px 0 9px;gap:5px}.chat-pill svg{width:15px;height:15px}.chat-unread{min-width:18px;height:18px;line-height:18px;font-size:10px}}@media(max-width:1200px),(max-height:480px){:root:has(.idock) .chat-log{margin-bottom:70px}:root:has(.idock) .chat:not(.collapsed) .notice{order:-1}:root:has(.idock) .chat:not(.collapsed)>.notice:first-child{margin-bottom:70px}}@media(prefers-reduced-motion:reduce){.chat-pill,.chat-unread{animation:none}}.pair-actions{display:flex;flex-direction:column;gap:4px;margin-top:8px;width:100%}.pair-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text, #fff);opacity:.7}.pair-buttons{display:flex;gap:4px;flex-wrap:wrap}.pair-btn:disabled{opacity:.4;cursor:default}.emote-panel .pair-actions{grid-column:1 / -1;flex-basis:100%}.pair-prompt{position:absolute;top:calc(var(--safe, 12px) + 44px);right:var(--safe, 12px);z-index:16777281;pointer-events:auto;width:min(280px,calc(100vw - 2 * var(--safe, 12px)));padding:10px 12px 12px;border-radius:var(--r-md, 12px);background:var(--glass-strong, rgba(20, 22, 30, .82));border:1px solid var(--glass-border, rgba(255, 255, 255, .14));backdrop-filter:var(--blur, blur(12px));-webkit-backdrop-filter:var(--blur, blur(12px));box-shadow:var(--shadow-md, 0 6px 24px rgba(0, 0, 0, .35));color:var(--text, #fff);overflow:hidden;animation:pair-in .18s ease-out}.pair-prompt-text{display:flex;align-items:center;gap:8px;font-size:13px;line-height:1.3}.pair-prompt-actions{display:flex;gap:6px;margin-top:8px}.pair-prompt-actions .pair-block{margin-left:auto;opacity:.75}.pair-prompt-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left;background:var(--accent, #6cf);transition:transform .25s linear}@keyframes pair-in{0%{opacity:0;transform:translateY(-6px)}}@media(max-height:480px){.pair-prompt{top:calc(var(--safe, 8px) + 36px);padding:8px 10px 10px;font-size:12px}.pair-prompt-actions button{padding:4px 9px;font-size:12px}.pair-actions{margin-top:6px}}.pf-list{display:flex;flex-direction:column;gap:2px}.pf-row{display:flex;align-items:center;gap:8px;padding:4px 6px;margin:0 -6px;border-radius:var(--r-sm);transition:background-color var(--t-fast) ease}.pf-row:hover{background:var(--glass-light)}.pf-row.offline .pf-who,.pf-row.offline .pf-avatar{opacity:.6}.pf-avatar{position:relative;flex-shrink:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-hi);font-weight:800;font-size:13px;box-shadow:0 0 0 1px var(--glass-border) inset}.pf-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.pf-dot{position:absolute;right:-1px;bottom:-1px;width:9px;height:9px;border-radius:50%;background:#7c8592;border:2px solid var(--glass-strong);box-sizing:content-box}.pf-dot.on{background:var(--ok)}.pf-who{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.2}.pf-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700}.pf-sub{color:var(--text-dim);font-size:11px}.pf-state{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:var(--r-pill);background:var(--glass-light);color:var(--text-dim);font-size:11px;font-weight:700;white-space:nowrap;flex-shrink:0}.pf-state.accepted{color:var(--ok);background:#3ccf7d29}.pf-state.declined,.pf-state.failed{color:var(--danger);background:#ff5a5f24}.pf-invite{flex-shrink:0}.pf-invite:disabled{opacity:.45;cursor:default}.pf-note{display:flex;flex-direction:column;align-items:flex-start;gap:8px;color:var(--text-dim);font-size:13px;line-height:1.35}.pf-note button,.friends-empty button{display:inline-flex;align-items:center;gap:6px}.pf-loading{align-items:center;font-size:18px;letter-spacing:2px;animation:pf-pulse 1s ease-in-out infinite alternate}@keyframes pf-pulse{0%{opacity:.35}to{opacity:1}}.pf-privacy{color:var(--text-dim);font-size:11px;line-height:1.3}.invite-pop-friends{display:flex;flex-direction:column;gap:6px;max-height:min(220px,45vh);overflow-y:auto;padding-bottom:6px;border-bottom:1px solid var(--glass-border)}.invite-pop-friends .pf-row{margin:0}.invite-pop-sub{color:var(--text-dim);font-size:12px;font-weight:700}.invite-prompt{position:absolute;top:calc(var(--safe) + 44px);left:50%;transform:translate(-50%);z-index:16777281;pointer-events:auto;width:min(300px,calc(100vw - 2 * var(--safe)));padding:10px 12px 12px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);overflow:hidden;animation:invite-in var(--t-med) var(--ease-out)}.invite-prompt-text{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.3}.invite-prompt-text>svg{flex-shrink:0;color:var(--accent-hi)}.invite-prompt-text span{display:flex;flex-direction:column;gap:2px;min-width:0;font-weight:700}.invite-prompt-text small{display:flex;align-items:center;gap:3px;color:var(--text-dim);font-size:11px;font-weight:600}.invite-prompt-text em{font-style:normal}.invite-prompt-actions{display:flex;gap:6px;margin-top:8px}.invite-prompt-actions button{flex:1;padding:6px 10px}.invite-prompt-actions button.ghost{background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}.invite-prompt-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;transform-origin:left;background:var(--accent);transition:transform .25s linear}@keyframes invite-in{0%{opacity:0;transform:translate(-50%,-6px)}}.ad-coins{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:var(--r-pill);background:#ffd16629;color:var(--gold);box-shadow:0 0 0 1px #ffd16659 inset;font-size:12px;font-weight:800;white-space:nowrap;text-shadow:none}.ad-coins:hover:not(:disabled){background:#ffd16642}.ad-coins:disabled{opacity:.6;cursor:default}@media(max-height:480px),(max-width:760px){.invite-prompt{top:calc(var(--safe) + 36px);padding:8px 10px 10px}.invite-prompt-actions button{padding:4px 9px;font-size:12px}.pf-avatar{width:24px;height:24px;font-size:12px}.invite-pop-friends{max-height:min(150px,38vh)}}.pf-refresh{align-self:flex-end;width:26px;height:26px;margin-bottom:2px}.friends .pf-refresh{display:none}.touch-stick{position:fixed;translate:-50% -50%;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,#ffffff14,#ffffff2e);border:2px solid rgba(255,255,255,.45);box-shadow:var(--shadow-sm);pointer-events:none;z-index:2;animation:touch-stick-in .12s var(--ease-out)}.touch-knob{width:46px;height:46px;border-radius:50%;background:linear-gradient(180deg,var(--accent-hi),var(--accent) 60%,var(--accent-lo));box-shadow:var(--accent-glow);border:2px solid rgba(255,255,255,.7)}@keyframes touch-stick-in{0%{opacity:0;scale:.7}}body:has(.emote-panel,[role=dialog]:not(.guide-card):not(.idock)) .touch-jump,body:has(.emote-panel,[role=dialog]:not(.guide-card):not(.idock)) .interact-hint.tap-row{display:none}.touch-jump{position:absolute;right:var(--safe);bottom:var(--jump-bottom);width:var(--jump-size);height:var(--jump-size);padding:0;display:grid;place-items:center;border-radius:50%;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);text-shadow:none}.touch-jump:active{scale:.92;background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo))}.keycap{display:inline-block;min-width:1.5em;padding:0 5px;margin:0 2px;border-radius:5px;background:linear-gradient(#fdfdfd,#d9dee6);color:var(--ink);font:900 11px/1.55 var(--font-ui);text-align:center;box-shadow:0 2px #8a94a3,0 0 0 1px #00000040;vertical-align:1px}.guide-card,.guide-dir{position:absolute;left:50%;top:calc(var(--safe) + 44px);transform:translate(-50%);z-index:30;pointer-events:auto;padding:8px 10px;font-size:12px;display:flex;flex-direction:column;gap:6px;animation:hint-in var(--t-med) var(--ease-out)}.guide-card{top:calc(var(--safe) + 76px);width:min(300px,calc(100% - 2 * var(--safe)));border:1px solid var(--accent)}@media(max-height:480px){.guide-card{left:var(--safe);top:calc(var(--safe) + 44px);transform:none;width:min(250px,calc(100% - 2 * var(--safe)));padding:6px 8px;gap:4px;font-size:11px}.guide-card .guide-step{min-height:0}.guide-card .guide-icon{width:30px;height:30px;font-size:17px}}@media(max-aspect-ratio:3 / 4){.guide-card{top:calc(var(--safe) + 44px);width:calc(100% - 2 * var(--safe));font-size:11.5px}}.guide-dir{gap:5px;width:min(400px,calc(100% - 2 * var(--safe)));max-height:calc(100% - 2 * var(--safe) - 52px);overflow-y:auto}.guide-head{display:flex;align-items:center;gap:6px}.guide-head b{flex:1;font-size:13px}.guide-count{color:var(--text-dim);font-size:11px;font-weight:800}.guide-step{display:flex;align-items:center;gap:10px;min-height:44px;animation:hint-in var(--t-med) var(--ease-out)}.guide-step p{margin:0;font-weight:700;line-height:1.45}.guide-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:var(--r-sm);background:var(--accent-soft);font-size:22px}.guide-icon.sm{width:28px;height:28px;font-size:16px}.guide-dots{display:flex;justify-content:center;gap:4px}.guide-dots i{width:6px;height:6px;border-radius:50%;background:var(--glass-light)}.guide-dots i.on{background:var(--accent)}.guide-actions{display:flex;justify-content:space-between;gap:6px}.guide-actions button{padding:4px 10px;font-size:12px}.guide-never{color:var(--text-dim);background:none;box-shadow:none}.guide-row{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:var(--r-sm);background:var(--glass-light)}.guide-row b{font-size:13px}.guide-row>div:nth-child(2) small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guide-row>div:nth-child(2){flex:1;display:flex;flex-direction:column;min-width:0}.guide-row small{color:var(--text-dim);font-size:11px}.guide-row .guide-where{color:var(--gold)}.guide-row-btns{display:flex;gap:4px;align-items:center}.guide-go{padding:5px 10px!important;font-size:12px;font-weight:800;color:#fff;background:var(--accent)!important;white-space:nowrap}.guide-here{color:var(--ok)!important;font-weight:800;white-space:nowrap}.guide-dir-btn{gap:3px;font-size:11px;font-weight:800}.guide-help{margin-left:auto;margin-right:4px}.guide-way{position:fixed;z-index:5;transform:translate(-50%,-50%);align-items:center;gap:3px;padding:3px 7px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--gold);color:var(--gold);font:800 11px/1.2 var(--font-ui);pointer-events:none;white-space:nowrap}.guide-way svg{transform:rotate(var(--turn, 0rad))}.guide-way.inside{opacity:.85}.guide-way.inside svg{transform:rotate(135deg)}.interact-hint .keycap{font-size:11px}.fish-reel-label .keycap{font-size:10px}.tap-glyph{display:inline-flex;align-items:center;justify-content:center;height:18px;margin:0 2px;vertical-align:-4px;color:#fff}.tap-glyph.act{min-width:30px;padding:0 7px;border-radius:var(--r-pill);background:var(--accent);box-shadow:var(--shadow-sm)}.tap-glyph.round{width:18px;border-radius:50%;background:var(--glass-strong);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm)}.tap-glyph.round.rod{background:var(--accent);box-shadow:var(--shadow-sm)}.guide-card.working:not(.docked){left:auto;right:var(--safe);top:calc(var(--hud-bottom, 44px) + 8px);transform:none;width:min(380px,calc(100% - 2 * var(--safe)))}.guide-card.compact,.guide-card.working{flex-direction:row;align-items:center;gap:8px;height:44px;padding:4px 6px 4px 8px}.guide-card.compact .guide-head,.guide-card.compact .guide-actions,.guide-card.working .guide-head,.guide-card.working .guide-actions{display:contents}.guide-card.compact .guide-head b,.guide-card.compact .guide-dots,.guide-card.working .guide-head b,.guide-card.working .guide-dots{display:none}.guide-card.compact .guide-step,.guide-card.working .guide-step{order:1;flex:1;min-width:0;min-height:0;gap:8px}.guide-card.compact .guide-step p,.guide-card.working .guide-step p{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.3}.guide-card.compact .guide-icon,.guide-card.working .guide-icon{width:30px;height:30px;font-size:17px}.guide-card.compact .guide-count,.guide-card.working .guide-count{order:2}.guide-card.compact .guide-never,.guide-card.working .guide-never{order:3;padding:2px 4px!important;font-size:10.5px!important;font-weight:700;text-decoration:underline;white-space:nowrap}.guide-card.compact .guide-next,.guide-card.working .guide-next{order:4;white-space:nowrap}.guide-card.compact .guide-head .act-mini,.guide-card.working .guide-head .act-mini{order:5}body:has(.wardrobe,.shop-wrap,.atlas,.settings) .guide-card{display:none}:root:has(.guide-card.bottom) .act-board{--board-room: calc(var(--guide-dock, 0px) + 6px)}:root:has(.guide-card.compact) .act-board-hint{display:none}.mp-panel .tropic-orders{max-height:150px;overflow-y:auto}.mp-panel .tropic-fruits{flex:none;font-size:15px;letter-spacing:1px}.tropic-tag{flex:none;font-size:11px;white-space:nowrap}.mp-panel .tropic-blender{display:grid;grid-template-columns:repeat(3,44px) 1fr;align-items:center;justify-items:start;gap:6px}.mp-panel .tropic-blender .mp-tile{width:44px;font-size:22px}.mp-panel .tropic-blender .mp-icon{justify-self:end}.tropic-ride{position:absolute;left:50%;top:calc(var(--hud-bottom, 52px) + 8px);transform:translate(-50%);width:min(300px,calc(100% - 2 * var(--safe) - 220px));min-width:220px;display:flex;flex-direction:column;gap:5px;padding:8px 12px;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);font-size:11px;pointer-events:none}.tropic-ride-top{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tropic-score{font-weight:700;color:var(--text-dim)}.tropic-score b{color:var(--text);font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}.tropic-trick{margin-left:auto;display:inline-flex;align-items:center;gap:3px;color:var(--gold);font-weight:800;white-space:nowrap}.tropic-gauge{position:relative;height:20px;border-radius:var(--r-pill);background:linear-gradient(90deg,#38bdf840,#0ea5e91a 50%,#38bdf840);box-shadow:0 0 0 1px var(--glass-border) inset;overflow:hidden}.tropic-gauge-pocket{position:absolute;top:0;bottom:0;background:#3ccf7d80;border-radius:var(--r-pill)}.tropic-gauge-me{position:absolute;top:0;transform:translate(-50%);font-size:15px;line-height:20px;transition:left .1s linear;filter:drop-shadow(0 0 2px #000)}.tropic-pocket{color:var(--text-dim);font-size:10.5px;font-weight:700;text-align:center}.tropic-pocket.in{color:var(--ok);font-weight:900}.tropic-bars{display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:center;gap:4px 6px}.tropic-bars small{color:var(--text-dim);font-size:10px;font-weight:800}.tropic-keys{color:var(--text-dim);font-size:10px;text-align:center;text-wrap:balance}@media(hover:none)and (pointer:coarse){.tropic-keys{display:none}}.tropic-pad{position:absolute;bottom:calc(var(--hint-bottom) + 40px);display:flex;gap:8px}.tropic-pad.left{left:var(--safe)}.tropic-pad.right{right:var(--safe)}.tropic-padbtn{width:48px;height:48px;padding:0;border-radius:var(--r-pill);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);text-shadow:none;touch-action:none}.tropic-padbtn.ready{background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo));box-shadow:var(--accent-glow)}.tropic-pad{align-items:flex-end}.tropic-pad.left{flex-direction:column;align-items:center;gap:3px}.tropic-padrow{display:flex;gap:8px}.tropic-padcol{display:flex;flex-direction:column;align-items:center;gap:3px}.tropic-padlabel{padding:1px 6px;border-radius:var(--r-pill);background:#0a0e188c;color:var(--text);font:800 10px/1.3 var(--font-ui);white-space:nowrap;pointer-events:none}.tropic-padcol.small .tropic-padbtn{width:38px;height:38px;opacity:.85}.tropic-padbtn:active{transform:scale(.88);filter:brightness(1.35)}.tropic-padbtn.hit{animation:tropic-hit .4s ease-out}.tropic-padbtn.no{animation:tropic-no .3s ease-in-out}@keyframes tropic-hit{0%{transform:scale(.86);filter:brightness(1.5);box-shadow:0 0 #ffffffb3,var(--shadow-sm)}to{transform:scale(1);filter:none;box-shadow:0 0 0 14px #fff0,var(--shadow-sm)}}@keyframes tropic-no{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.tropic-result.wiped{border-color:#38bdf8}.tropic-best{color:var(--gold);font-weight:900}.tropic-coins{display:inline-flex;align-items:center;gap:3px;color:var(--gold);font-weight:800}@media(max-width:560px){.tropic-ride{width:calc(100% - 2 * var(--safe));min-width:0}.tropic-padbtn{width:44px;height:44px}}@media(max-height:460px){.mp-panel .tropic-orders{max-height:84px}.mp-panel .tropic-blender{grid-template-columns:repeat(3,36px) 1fr}.mp-panel .tropic-blender .mp-tile{width:36px;min-height:32px;font-size:18px}.tropic-pad{bottom:calc(var(--safe) + 56px)}}@media(prefers-reduced-motion:reduce){.tropic-gauge-me{transition:none}.tropic-padbtn.hit,.tropic-padbtn.no{animation:none}}@media(min-width:761px){.mp-panel.mp-dock.juice-panel{left:auto;right:var(--safe);bottom:calc(var(--safe) + 64px);transform:none;animation-name:mp-in-side}}.mp-panel .tropic-blender .mp-tile.slot.wrong{box-shadow:0 0 0 2px #e5484d inset;background:#e5484d47;animation:juice-shake .35s ease}@keyframes juice-shake{25%{transform:translate(-3px)}75%{transform:translate(3px)}}.mp-panel .tropic-blender .mp-tile.slot.wrong{position:relative}.mp-panel .tropic-blender .mp-tile.slot.wrong:after{content:"✕";position:absolute;top:-6px;right:-6px;width:16px;height:16px;border-radius:50%;background:#e5484d;color:#fff;font:900 10px/16px var(--font-ui);text-align:center}body:has(.tropic-ride,.tropic-result) .guide-card{display:none}@media(max-width:760px){body:has(.tropic-ride,.tropic-result) .act-tracker,body:has(.tropic-ride,.tropic-result) .act-tracker-toggle{display:none}}@media(max-width:560px){.tropic-paddle{max-width:calc(100vw - 2 * var(--safe) - 160px);text-align:center}}.harbour-time{display:flex;align-items:center;gap:7px;min-width:0;flex-wrap:wrap;padding:7px 10px;border-radius:var(--r-md);background:var(--glass-light);font-size:12.5px}.harbour-time.open{background:#3ccf7d24;box-shadow:0 0 0 1px #3ccf7d73 inset}.harbour-time.closing{background:#ffd1661f}.harbour-when{margin-left:auto;display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums}.harbour-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--text-dim)}.harbour-time.open .harbour-dot{background:var(--ok);box-shadow:0 0 6px var(--ok);animation:harbour-blink 1.2s ease-in-out infinite alternate}.harbour-time.closing .harbour-dot{background:var(--gold)}@keyframes harbour-blink{to{opacity:.45}}.harbour-aboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.harbour-aboard .mp-li{min-height:30px;color:var(--mp-tint)}.harbour-aboard .mp-li-main b{color:var(--text);font-size:12px}.harbour-ride .harbour-time{justify-content:center}@media(prefers-reduced-motion:reduce){.harbour-time.open .harbour-dot{animation:none}}.wardrobe-backdrop{position:fixed;inset:0;z-index:16777290;display:flex;align-items:center;justify-content:center;padding:var(--safe-pad);background:#080c1866;pointer-events:auto;font-family:var(--font-ui)}.wardrobe{display:flex;gap:var(--sp-3);width:min(980px,100%);height:min(620px,100%);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--glass-strong);overflow:hidden}.wardrobe button{font:inherit;box-shadow:none}.wardrobe .btn-ghost{box-shadow:0 0 0 1px var(--glass-border) inset;font-weight:700}.wardrobe .btn-ghost.on{background:var(--accent);box-shadow:var(--accent-glow)}.wardrobe button:disabled{opacity:.45;cursor:default;filter:none;transform:none}.wardrobe-left{flex:0 0 32%;min-width:0;display:flex;flex-direction:column;gap:var(--sp-2)}.wardrobe-preview{position:relative;flex:1;min-height:0;border-radius:var(--r-md);background:radial-gradient(circle at 50% 75%,#ffffff38,#ffffff0a 70%);box-shadow:0 0 0 1px var(--glass-border) inset;cursor:grab;touch-action:none}.wardrobe-preview:active{cursor:grabbing}.wardrobe .wardrobe-reset{position:absolute;right:var(--sp-2);bottom:var(--sp-2);width:30px;height:30px}.wardrobe-row{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.wardrobe-sep{width:1px;height:22px;margin:0 4px;background:var(--glass-border)}.wardrobe-right{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--sp-2)}.wardrobe-head{display:flex;align-items:center;gap:10px}.wardrobe-head strong{font-size:17px;font-weight:800;margin-right:auto}.wardrobe-coins{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--r-pill);background:var(--glass-light);color:var(--gold);font-weight:800}.wardrobe-coins small{font-weight:700;color:var(--ok)}.wardrobe-tabs{display:flex;align-items:center;gap:5px;overflow-x:auto;flex-shrink:0;padding:2px;scrollbar-width:none}.wardrobe-tabs .btn-icon{flex-shrink:0}.wardrobe-tab-name{margin-left:6px;white-space:nowrap;font-weight:800;color:var(--text-dim)}.wardrobe-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));grid-auto-rows:min-content;gap:6px;padding:2px;scrollbar-width:thin}.wardrobe .wardrobe-tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 6px 7px;border-radius:var(--r-sm);background:var(--glass-light);color:var(--text);text-shadow:none;font-weight:600;box-shadow:0 0 0 1px var(--glass-border) inset}.wardrobe .wardrobe-tile:hover{background:var(--glass-hover)}.wardrobe .wardrobe-tile.on{background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.wardrobe-tile img{width:100%;max-width:96px;aspect-ratio:1;object-fit:contain;pointer-events:none}.wardrobe-tile .name{max-width:100%;font-size:11px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.wardrobe-tile.text-only .name{white-space:normal;font-size:13px;color:var(--text);padding:10px 0 4px}.wardrobe-tile .badge{display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:var(--r-pill);background:#ffffff1a;font-size:11px;font-weight:800;color:var(--text-dim)}.wardrobe-tile .badge.paid{background:#ffd16629;color:var(--gold)}.wardrobe-tile .badge.tier-standard{background:#78c88c29;color:#8fe0a4}.wardrobe-tile .badge.tier-premium{background:#64a0ff2e;color:#9cc2ff;box-shadow:inset 0 0 0 1px #64a0ff73}.wardrobe-tile .badge.tier-rare{background:#be78ff33;color:#d4a8ff;box-shadow:inset 0 0 0 1px #be78ff8c}.wardrobe-tile .badge.tier-legendary{background:linear-gradient(90deg,#ffaa3c4d,#ff5a784d);color:#ffc46b;box-shadow:inset 0 0 0 1px #ffaa3cb3}.wardrobe-tile.on .badge{background:var(--accent);color:#fff}.wardrobe-tile .remove{position:absolute;top:4px;right:4px;display:grid;place-items:center;width:18px;height:18px;border-radius:var(--r-pill);background:var(--glass-strong);color:var(--text)}.wardrobe-foot{display:flex;align-items:center;gap:10px;flex-shrink:0}.wardrobe-cart{flex:1;min-width:0;font-size:13px;color:var(--text-dim)}.wardrobe-cart.error{color:var(--danger)}.wardrobe .wardrobe-buy,.wardrobe-guest>button{display:inline-flex;align-items:center;gap:6px;box-shadow:var(--accent-glow)}.wardrobe-buy .price{display:inline-flex;align-items:center;gap:3px;margin-left:2px;padding:1px 8px;border-radius:var(--r-pill);background:#0003;color:var(--gold)}.wardrobe-guest{flex:1;display:flex;flex-direction:column;gap:10px}.wardrobe-guest p{margin:0}.wardrobe-guest .hint{font-size:13px;color:var(--text-dim)}.wardrobe-guest>button{align-self:flex-start}.wardrobe-guest .wardrobe-foot{margin-top:auto}.wardrobe-button-coins{display:inline-flex;align-items:center;gap:3px;margin-left:6px;color:var(--gold);font-weight:800}@media(max-height:460px){.wardrobe{padding:var(--sp-2);gap:var(--sp-2)}.wardrobe-left,.wardrobe-right{gap:6px}.wardrobe .btn-icon{width:30px;height:30px}.wardrobe-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:5px}.wardrobe-tile img{max-width:64px}.wardrobe .wardrobe-buy{padding:6px 12px}}.wardrobe-colors{display:flex;align-items:center;gap:6px;flex-shrink:0;min-height:34px;padding:3px 4px 3px 10px;border-radius:var(--r-pill);background:var(--glass-light);box-shadow:0 0 0 1px var(--glass-border) inset}.wardrobe-colors-icon{display:grid;color:var(--text-dim)}.wardrobe-chips,.wardrobe-sliders{flex:1;min-width:0;display:flex;align-items:center;gap:5px;overflow-x:auto;padding:4px 2px;scrollbar-width:none}.wardrobe .wardrobe-chip{flex-shrink:0;display:grid;place-items:center;width:22px;height:22px;padding:0;border-radius:var(--r-pill);color:#ffffffe6;box-shadow:0 0 0 1px #ffffff40 inset,var(--shadow-sm);transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) ease}.wardrobe .wardrobe-chip:hover{transform:translateY(-2px) scale(1.12);filter:none}.wardrobe .wardrobe-chip.on{box-shadow:0 0 0 2px var(--glass-strong),0 0 0 4px var(--gold)}.wardrobe .wardrobe-pipette{flex-shrink:0;width:28px;height:28px}.wardrobe-slider{flex:1;min-width:50px;height:10px;border-radius:var(--r-pill);appearance:none;-webkit-appearance:none;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);cursor:pointer}.wardrobe-slider.sat{background:linear-gradient(90deg,hsl(var(--h) 0% 50%),hsl(var(--h) 100% 50%))}.wardrobe-slider.light{background:linear-gradient(90deg,#000,hsl(var(--h) 80% 50%),#fff)}.wardrobe-slider::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm)}.wardrobe-slider::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:#fff}.wardrobe .wardrobe-tile.selected{box-shadow:0 0 0 2px var(--gold) inset}@media(max-height:460px){.wardrobe-colors{min-height:30px;padding:1px 3px 1px 8px}.wardrobe .wardrobe-chip{width:20px;height:20px}}.wardrobe-tile .recolor{position:absolute;top:4px;left:4px;display:grid;place-items:center;width:18px;height:18px;border-radius:var(--r-pill);background:var(--glass-strong);color:var(--gold)}.wardrobe-colors.fixed{opacity:.75}.wardrobe-colors-note{flex:1;font-size:12px;font-weight:700;color:var(--text-dim)}.wardrobe-subhead{grid-column:1 / -1;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin:2px 2px 4px}.wardrobe-types{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;padding:2px;margin-bottom:8px;flex-shrink:0}.wardrobe .wardrobe-type{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 4px 6px;border-radius:var(--r-sm);background:var(--glass-light);color:var(--text);text-shadow:none;font-weight:700;box-shadow:0 0 0 1px var(--glass-border) inset}.wardrobe .wardrobe-type:hover:not(:disabled){background:var(--glass-hover)}.wardrobe .wardrobe-type.on{background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent) inset}.wardrobe .wardrobe-type:disabled{opacity:.45;cursor:not-allowed}.wardrobe-type img{width:100%;max-width:64px;aspect-ratio:1;object-fit:contain;pointer-events:none}.wardrobe-type .name{font-size:11px;line-height:1.2}.wardrobe-type small{font-size:9px;color:var(--text-dim)}.attn-tip{position:fixed;top:0;left:0;z-index:16777290;display:inline-flex;align-items:center;gap:var(--sp-2);max-width:min(280px,calc(100vw - 2 * var(--sp-2)));padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);background:var(--glass-strong);box-shadow:var(--shadow-sm),0 0 0 1px var(--glass-border) inset;backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);font:700 13px/1.3 var(--font-ui);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--t-fast) ease-out,visibility 0s linear var(--t-fast)}.attn-tip[data-on]{opacity:1;visibility:visible;transition:opacity var(--t-fast) ease-out}.attn-tip-key{min-width:20px;padding:0 var(--sp-1);border-radius:6px;background:var(--glass-light);box-shadow:0 0 0 1px var(--glass-border) inset;color:var(--text-dim);font:800 11px/18px var(--font-ui);text-align:center}@media(prefers-reduced-motion:reduce){.attn-tip,.attn-tip[data-on]{transition:none}}.atlas{--atlas-ink: #17405a;--atlas-gap: var(--sp-3);--atlas-pad: var(--sp-4);--atlas-panel-w: clamp(260px, 32%, 360px);--atlas-art-h: 120px;--atlas-fade: 32px;--atlas-thumb: 76px;--atlas-go-h: max(var(--tap), 44px);position:fixed;inset:0;z-index:16777290;pointer-events:auto;background:#182c4273;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:atlas-fade var(--t-med) ease-out}.atlas-board{position:absolute;inset:var(--edge-top) var(--edge-right) var(--edge-bottom) var(--edge-left);max-width:1180px;max-height:min(960px,100% - var(--edge-top) - var(--edge-bottom));height:fit-content;margin:auto;display:flex;flex-direction:column;gap:var(--atlas-gap);padding:var(--atlas-pad);overflow:hidden;border-radius:28px;outline:none;border:3px solid #fff7e6;box-shadow:0 12px 40px #0a1e3259,inset 0 0 60px #ffffff59;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.5),transparent 40%),radial-gradient(circle at 80% 78%,rgba(255,255,255,.3),transparent 25%),radial-gradient(rgba(255,255,255,.35) 1.2px,transparent 1.6px) 0 0 / 18px 18px,radial-gradient(ellipse at center,#b9e6ef,#8fd0e2 65%,#6db7d0);color:var(--atlas-ink);animation:atlas-rise .28s var(--ease-out)}.atlas-head{flex:none;display:flex;align-items:center;gap:var(--sp-2);min-height:var(--tap)}.atlas-head-icon{flex:none}.atlas-head-text{flex:1;min-width:0;display:flex;align-items:baseline;gap:var(--sp-2);white-space:nowrap}.atlas-head-text b{font-size:20px;font-weight:900;letter-spacing:.01em}.atlas-head-text b,.atlas-sub,.atlas-panel-name b{text-box:trim-both cap alphabetic}.atlas-sub{font-weight:700;opacity:.75}.atlas button.atlas-code-open,.atlas-code{flex:none;height:var(--tap);border-radius:var(--r-pill);background:var(--glass);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text)}.atlas button.atlas-code-open{padding:0 16px 0 14px;text-shadow:none}.atlas button.atlas-code-open:hover{background:var(--glass-strong);filter:none}.atlas-code{display:flex;align-items:center;width:188px;padding-left:14px}.atlas-code-hash{flex:none;color:var(--text-dim)}.atlas-code input{flex:1;min-width:0;height:100%;padding:0 8px;border:0;background:none;color:var(--text);font:inherit;font-weight:800;letter-spacing:.12em;text-transform:uppercase;-webkit-user-select:text;user-select:text;outline:none}.atlas-code input:focus-visible{box-shadow:none}.atlas-code:focus-within{box-shadow:0 0 0 1px var(--glass-border) inset,var(--focus-ring)}.atlas-code input::placeholder{color:var(--text-dim);font-weight:700;letter-spacing:.02em;text-transform:none}.atlas-code .btn-icon,.atlas .btn-icon.atlas-x{flex:none;width:var(--tap);height:var(--tap)}.atlas .btn-icon.atlas-x{background:var(--glass-strong);color:var(--text);text-shadow:none;box-shadow:var(--shadow-sm)}.atlas .atlas-code .btn-icon:disabled{background:none;color:var(--text-dim);text-shadow:none;box-shadow:none;cursor:default;transform:none;filter:none}.atlas-board:not(.code-open) .atlas-code,.atlas-board.code-open .atlas-code-open{display:none}.atlas-body{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) var(--atlas-panel-w);gap:var(--atlas-gap)}.atlas-sea{container-type:inline-size;min-height:0;margin:-6px;padding:6px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.atlas-sea.more,.atlas-sea.above{--fade-top: 0px;--fade-bottom: 0px;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),transparent);mask-image:linear-gradient(to bottom,transparent,#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),transparent)}.atlas-sea.more{--fade-bottom: var(--atlas-fade)}.atlas-sea.above{--fade-top: var(--atlas-fade)}.atlas-sea::-webkit-scrollbar{display:none}.atlas-grid{--atlas-cols: 3;min-height:100%;display:grid;grid-template-columns:repeat(var(--atlas-cols),minmax(0,1fr));gap:var(--atlas-gap)}@container (min-width: 460px){.atlas-grid{--atlas-cols: 4}}@container (min-width: 900px){.atlas-grid{--atlas-cols: 6}}.atlas button.atlas-island{position:relative;display:grid;grid-template-rows:auto 1fr;justify-items:center;align-items:center;gap:2px;min-width:0;padding:6px 6px 8px;border-radius:var(--r-md);background:#ffffff4d;box-shadow:0 0 0 1px #fff9 inset;color:var(--atlas-ink);text-shadow:none;transition:background var(--t-fast) ease,box-shadow var(--t-fast) ease,transform var(--t-fast) ease;animation:atlas-pop .4s var(--ease-out) backwards;animation-delay:calc(var(--i) * 30ms + 60ms)}.atlas button.atlas-island:hover{background:#ffffff80;filter:none}.atlas button.atlas-island:focus-visible{box-shadow:var(--focus-ring)}.atlas button.atlas-island.on{background:#ffffff9e;box-shadow:0 0 0 3px var(--accent) inset,var(--shadow-md)}.atlas-art{position:relative;display:block;width:100%}.atlas-art img{display:block;width:100%;max-height:var(--atlas-art-h);aspect-ratio:3 / 2;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(16,60,80,.3));transition:transform var(--t-med) var(--ease-out)}.atlas-art img,.atlas-panel-art{transform:scale(var(--art-scale, 1))}.atlas-panel-art{transform-origin:50% 100%}.atlas-island:hover .atlas-art img{transform:scale(calc(var(--art-scale, 1) * 1.05))}.atlas-label{display:contents}.atlas-name{max-width:100%;font-size:13px;font-weight:800;line-height:1.2;text-align:center;overflow-wrap:break-word}.atlas-art .atlas-count{position:absolute;right:0;bottom:0;background:#fffaf0;box-shadow:0 2px 6px #103c5040}.atlas button.atlas-island.wide{grid-column:1 / -1;grid-template-columns:var(--atlas-thumb) minmax(0,1fr);grid-template-rows:none;justify-items:start;column-gap:var(--sp-3);padding:6px var(--sp-3)}.atlas-island.wide .atlas-art img{max-height:56px;opacity:.9;filter:saturate(.6) drop-shadow(0 5px 5px rgba(16,60,80,.3))}.atlas-island.wide .atlas-name{text-box:trim-both cap alphabetic}.atlas-island.wide .atlas-label{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-1);min-width:0;text-align:left}.atlas-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.atlas-island.wide .atlas-name{text-align:left}.atlas-tile-blurb{font-size:12px;font-weight:700;opacity:.75}@container (min-width: 460px){.atlas button.atlas-island.wide{grid-column:auto;grid-template-columns:none;grid-template-rows:auto 1fr;justify-items:center;padding:6px 6px 8px}.atlas-island.wide .atlas-art img{max-height:calc(var(--atlas-art-h) - 12px);margin-top:12px}.atlas-island.wide .atlas-label,.atlas-island.wide .atlas-name-row{display:contents}.atlas-island.wide .atlas-name{text-align:center}.atlas-island.wide .atlas-tile-blurb{display:none}.atlas-island.wide .atlas-tag{position:absolute;top:8px;right:8px;box-shadow:0 2px 6px #103c5040}}@container (max-width: 459px){.atlas-island:not(.wide) .atlas-name{align-self:start}}.atlas-count{display:inline-flex;align-items:center;gap:4px;height:20px;padding:0 8px;border-radius:var(--r-pill);background:#17405a1a;font-size:12px;font-weight:800;line-height:1;white-space:nowrap}.atlas-count.live{background:#2f9e5b29;color:#1f7a45}.atlas-count.live:before{content:"";width:6px;height:6px;border-radius:50%;background:#2f9e5b;animation:atlas-pulse 1.6s ease-in-out infinite}.atlas-tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--r-pill);background:var(--atlas-ink);color:#fff;font-size:11px;font-weight:800;line-height:1;white-space:nowrap}.atlas-tag.building{background:#b8741a}.atlas-tag.start{background:#2f9e57}.atlas-art .atlas-tag{position:absolute;top:0;left:50%;translate:-50% 0;max-width:100%;box-shadow:0 2px 6px #103c5040}.atlas-art .atlas-tag.start{animation:atlas-start 1.4s ease-in-out infinite}.atlas-panel{min-height:0;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);animation:atlas-in var(--t-med) ease-out}.atlas-panel-art{flex:none;display:block;width:100%;max-height:24vh;aspect-ratio:3 / 2;object-fit:contain;filter:drop-shadow(0 6px 8px rgba(0,0,0,.4))}.atlas-panel-title{flex:none;display:flex;flex-direction:column;gap:var(--sp-1);min-width:0}.atlas-panel-name{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.atlas-panel-name b{margin-right:2px;font-size:20px;font-weight:900;line-height:1.2}.atlas-panel .atlas-count{background:var(--glass-light);color:var(--text)}.atlas-panel .atlas-count.live{background:#3ccf7d2e;color:var(--ok)}.atlas-panel .atlas-count.live:before{background:var(--ok)}.atlas-panel .atlas-tag.here{background:var(--gold);color:var(--ink)}.atlas-blurb{margin:0;text-wrap:pretty;font-weight:700;color:var(--text-dim)}.atlas-panel-body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3);margin:0 -4px;padding:0 4px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.atlas-panel-body::-webkit-scrollbar{display:none}.atlas-story{flex:1 1 0;min-height:0;overflow:hidden}.atlas-desc{margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--lines, none);line-clamp:var(--lines, none);overflow:hidden;text-wrap:pretty;font-size:13px;line-height:1.45;color:var(--text-dim)}.atlas-desc.none{visibility:hidden}.atlas-rooms{display:flex;flex-direction:column;gap:6px}.atlas-empty{text-wrap:pretty;font-size:13px;font-weight:400;color:var(--text-dim)}.atlas button.atlas-room{flex:none;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--sp-2);min-height:var(--tap);padding:0 12px;border-radius:var(--r-sm);background:var(--glass-light);box-shadow:0 0 0 1px var(--glass-border) inset;color:var(--text);text-shadow:none;text-align:left;white-space:nowrap}.atlas button.atlas-room:hover:not(:disabled){background:var(--glass-hover);filter:none}.atlas button.atlas-room:disabled{cursor:default;transform:none}.atlas button.atlas-room:disabled:not(.mine){opacity:.5}.atlas-room-count{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);font-size:12px}.atlas-room-here{color:var(--gold);font-size:12px}.atlas-private{flex:none;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-weight:700}.atlas-actions{flex:none;display:flex;flex-direction:column-reverse;gap:var(--sp-2)}.atlas-actions button{height:var(--atlas-go-h);padding:0 16px;border-radius:var(--r-pill);white-space:nowrap}.atlas-actions button.ghost{flex:none;background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}.atlas-actions button.ghost:hover{background:var(--glass-hover);filter:none}.atlas-actions button.atlas-go{flex:none;min-width:0;font-size:16px;font-weight:900}.atlas-actions button.atlas-go:disabled{background:var(--glass-light);color:var(--gold);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset;cursor:default;transform:none;filter:none}.atlas-go.pulse{animation:atlas-go-pulse 1.6s ease-out infinite}@media(max-width:600px){.atlas{--atlas-pad: var(--sp-3)}.atlas-sub{display:none}.atlas-head-text b{font-size:18px}.atlas-board.code-open .atlas-head-text{display:none}.atlas-board.code-open .atlas-code{flex:1;width:auto}}@media(min-width:1200px){.atlas{--atlas-art-h: 84px}}@media(max-width:370px){.atlas-head-icon{display:none}}@media(max-height:480px){.atlas{--atlas-pad: var(--sp-3);--atlas-gap: var(--sp-2);--atlas-art-h: 50px;--atlas-fade: 20px}.atlas-panel{gap:var(--sp-2)}.atlas-panel-art{display:none}.atlas-panel-name b{font-size:17px}.atlas-blurb,.atlas-desc{font-size:12px}.atlas-panel-body{gap:var(--sp-2)}}@media(max-aspect-ratio:3 / 4){.atlas-body{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.atlas-panel{display:grid;grid-template-columns:var(--atlas-thumb) minmax(0,1fr);align-items:start;column-gap:var(--sp-3);row-gap:var(--sp-3);animation-name:atlas-up}.atlas-panel-art{grid-column:1;grid-row:1 / span 2;margin:0;max-height:none}.atlas-panel-title{grid-column:2;grid-row:1}.atlas-panel-body{grid-column:2;grid-row:2;overflow:visible;padding-bottom:0;-webkit-mask-image:none;mask-image:none}.atlas-private,.atlas-actions{grid-column:1 / -1}.atlas-actions{flex-direction:row}.atlas-actions button.ghost{height:var(--atlas-go-h)}.atlas-actions button.atlas-go{flex:1}.atlas-story{display:none}.atlas-rooms{flex-direction:row;margin:-2px -4px;padding:2px 4px;overflow-x:auto;scrollbar-width:none}.atlas-panel-name b{font-size:18px}}@keyframes atlas-fade{0%{opacity:0}}@keyframes atlas-rise{0%{opacity:0;transform:translateY(14px) scale(.97)}}@keyframes atlas-pop{0%{opacity:0;transform:translateY(10px) scale(.92)}}@keyframes atlas-in{0%{opacity:0;transform:translate(12px)}}@keyframes atlas-up{0%{opacity:0;transform:translateY(12px)}}@keyframes atlas-pulse{50%{opacity:.35}}@keyframes atlas-start{50%{scale:1.08}}@keyframes atlas-go-pulse{0%{box-shadow:0 0 #ff8c46b3}to{box-shadow:0 0 0 14px #ff8c4600}}@media(prefers-reduced-motion:reduce){.atlas,.atlas-board,.atlas-panel,.atlas-count.live:before,.atlas-tag,.atlas-go.pulse,.atlas button.atlas-island{animation:none}}.idock{position:fixed;left:50%;bottom:var(--edge-bottom);transform:translate(-50%);z-index:16777280;pointer-events:auto;display:flex;align-items:center;gap:10px;padding:5px 6px 5px 12px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);animation:idock-in var(--t-med) var(--ease-out);max-width:calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe))}@keyframes idock-in{0%{opacity:0;transform:translate(-50%,10px)}}.idock-who{display:flex;align-items:center;gap:6px;min-width:0;font-size:13px;white-space:nowrap}.idock-who b{overflow:hidden;text-overflow:ellipsis;max-width:120px}.idock-sub{color:var(--text-dim);font-size:11px}.idock-who.has-credit{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;column-gap:6px;row-gap:1px}.idock-credit{grid-column:1 / -1;color:var(--text-dim);font-size:10.5px;font-style:italic;line-height:1.15}.idock-actions{display:flex;align-items:center;gap:4px}.idock-act{position:relative;width:34px;height:34px;padding:0;display:inline-grid;place-items:center;border-radius:var(--r-pill);background:var(--glass-light);border:1px solid transparent;color:var(--text);box-shadow:none}.idock-act:hover:not(:disabled){background:var(--glass-hover)}.idock-act.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-hi)}.idock-act:disabled{opacity:.4}.idock-close{background:transparent;width:30px;height:30px}.idock-sep{width:1px;height:20px;background:var(--glass-border);margin:0 2px}.idock-act[data-tip]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);padding:4px 8px;border-radius:var(--r-sm);background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font-size:11px;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--t-fast, .12s),transform var(--t-fast, .12s)}.idock-act[data-tip]:hover:after,.idock-act[data-tip]:focus-visible:after{opacity:1;transform:translate(-50%)}.idock-pop{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);font-size:12px}.idock-far{color:var(--accent-hi);font-size:11px;font-weight:700}.idock-pop{width:max-content;max-width:min(360px,calc(100vw - 2 * var(--safe)));padding:8px;display:flex;flex-direction:column;gap:6px}.idock-pop-title{font-size:11px}.idock-list{display:flex;flex-wrap:wrap;gap:4px;max-height:96px;overflow-y:auto}.idock-list button{font-size:11px;padding:4px 8px;display:inline-flex;gap:4px;align-items:center}.idock-count{color:var(--text-dim)}@media(max-width:1200px),(max-height:480px){.idock{left:auto;right:var(--edge-right);bottom:calc(var(--edge-bottom) + 58px);transform:none;animation-name:idock-in-side;padding:4px 4px 4px 10px;gap:6px}.idock-sub{display:none}.idock-act{width:30px;height:30px}.idock-pop{left:auto;right:0;transform:none}}@keyframes idock-in-side{0%{opacity:0;transform:translateY(10px)}}.idock-act.danger:hover:not(:disabled){background:#ff50502e;color:#ff9b9b}.idock-act.ok{background:#3ccf7d2e;color:#8ff0b8}.idock-sub.ok{color:var(--ok)}.idock-row{display:flex;gap:4px}.idock .npc-chip{font-size:10px}.idock-friend{color:var(--ok);flex:none}.idock-act.on[data-tip]:after{display:none}.idock-act[data-label][data-tip]:after,.idock:has(.idock-said) .idock-act[data-tip]:after{display:none}@media(max-height:480px),(max-width:760px){:root:has(.idock){--hint-bottom: calc(var(--safe) + 108px)}}@media(max-width:599px){.idock{bottom:calc(var(--edge-bottom) + 88px)}:root:has(.idock){--hint-bottom: calc(var(--safe) + 138px)}}.idock-badges{display:inline-flex;gap:3px}.idock-badge{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-size:11px;background:#00000040;box-shadow:inset 0 0 0 1.5px var(--ring, #cd7f32)}.idock-badge.t2{--ring: #c0c7d1}.idock-badge.t3{--ring: #ffc23d}.idock-lux{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:var(--r-pill);background:linear-gradient(180deg,#ffe58a,#e9ad22);color:#3d2400;font:900 11px/1 var(--font-ui);white-space:nowrap}.idock-outfit{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:var(--r-pill);background:#ffffff1f;font:900 11px/1 var(--font-ui);white-space:nowrap}.idock-act[data-label]{width:auto;min-width:50px;height:46px;padding:4px 7px 3px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:var(--r-md)}.idock-act[data-label]:before{content:attr(data-label);order:2;font:800 10px/1 var(--font-ui);white-space:nowrap;color:var(--text-dim)}.idock-act[data-label]:hover:not(:disabled):before,.idock-act[data-label].on:before{color:var(--text)}.idock:has(.idock-act[data-label]){border-radius:var(--r-md);padding:6px 8px 6px 12px;flex-wrap:wrap;justify-content:center}@media(min-width:601px){.idock:has(.idock-said){display:grid;grid-template-columns:auto auto;justify-content:center;align-items:center;row-gap:2px}.idock:has(.idock-said) .idock-said{grid-column:1 / -1}}@media(min-width:1201px)and (min-height:481px){.idock-said{max-width:max(300px,calc(100vw - 2 * var(--safe) - 848px))}}.idock-said{flex-basis:100%;padding:2px 4px 4px;font-size:13px;line-height:1.35;color:var(--text);white-space:normal;animation:idock-said .25s var(--ease-out)}.idock-said b{color:var(--accent-hi)}@keyframes idock-said{0%{opacity:0;transform:translateY(4px)}}@media(max-width:600px){.idock:has(.idock-act[data-label]) .idock-who{flex-basis:100%;justify-content:center}.idock:has(.idock-act[data-label]) .idock-actions{flex-wrap:wrap;justify-content:center;gap:3px}.idock:has(.idock-act[data-label]){padding:6px}.idock-act[data-label]{min-width:46px;height:42px;padding:3px 4px 2px}.idock-act[data-label]:before{font-size:9.5px}.idock:has(.idock-act[data-label]) .idock-close{position:absolute;top:4px;right:4px}.idock:has(.idock-act[data-label]) .idock-sep{display:none}}.nametag.npc{display:inline-flex;align-items:center;gap:4px;background:#1e5c60c7;border-color:#96dcd773;color:#e6fbf8}.npc-icon{width:11px;height:11px;opacity:.85}.npc-chip{padding:0 5px;border-radius:6px;background:#96dcd740;border:1px solid rgba(150,220,215,.5);color:#bff3ec;font-size:9px;font-weight:700;letter-spacing:.06em;line-height:14px}.chat-log .line.npc b{color:#8fe3da}.chat-log .line.npc{font-style:italic;color:var(--text-dim)}.camp-bar{position:relative;height:18px;border-radius:var(--r-pill);background:linear-gradient(90deg,#ffffffd9,#f3dcb0);overflow:hidden;box-shadow:inset 0 1px 3px #00000059,0 0 0 1px var(--glass-border)}.camp-zone{position:absolute;top:0;bottom:0}.camp-zone.golden{background:var(--gold);box-shadow:0 0 10px var(--gold)}.camp-zone.toasty{background:#d9822b}.camp-zone.burnt{background:linear-gradient(90deg,#5a3519,#1c140f)}.camp-marker{position:absolute;top:-2px;bottom:-2px;width:4px;margin-left:-2px;border-radius:2px;background:#fff;box-shadow:0 0 0 1.5px var(--ink),0 0 8px #fff}.camp-result{font-weight:800}.camp-result.golden{color:var(--gold)}.camp-result.toasty{color:#f0a35a}.camp-result.raw{color:var(--text)}.camp-result.burnt{color:#ff8a8d}.camp-dot{width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 1px #ffffff59}.camp-dot.golden{background:var(--gold)}.camp-dot.toasty{background:#d9822b}.camp-dot.raw{background:#f6efe2}.camp-dot.burnt{background:#2a1d14}.camp-lit{background:#ffd16629}.camp-miss{color:#ff9b9e;font-weight:800}.camp-sky{display:block;width:100%;max-height:calc(100vh - 200px);border-radius:var(--r-md);background:radial-gradient(ellipse at 50% 120%,#2a3a6e,#0b1026 70%);box-shadow:0 0 0 1px var(--glass-border) inset;cursor:pointer}.sky-star{fill:#fff7d6;filter:drop-shadow(0 0 .8px #fff);transition:r var(--t-fast)}.sky-star.dim{fill:#ffffff8c}.sky-star.miss{fill:var(--danger)}.sky-star.found{fill:var(--gold);filter:drop-shadow(0 0 1.5px var(--gold))}.sky-line{stroke:#ffd166cc;stroke-width:.45;stroke-linecap:round}.camp-foot{min-height:28px}.camp-pages{display:grid;grid-template-columns:1fr 1fr;gap:6px}.camp-page{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;align-items:center;column-gap:8px;row-gap:4px;padding:7px 10px;border-radius:var(--r-md);background:var(--glass-light);min-width:0}.camp-page.full{background:#3ccf7d29;box-shadow:0 0 0 1px #3ccf7d80 inset}.camp-page-icon{grid-row:span 2;font-size:22px;line-height:1}.camp-page-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800;font-size:12px}.camp-page-n{font-weight:700;font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums}.camp-page-bar{grid-column:2 / span 2}.camp-fab{position:fixed;right:var(--edge-right);bottom:calc(var(--edge-bottom) + 56px);z-index:16777280;width:38px;height:38px;background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm)}.camp-fab[data-tip]:after{top:auto;bottom:calc(100% + 6px)}.bubble.campfire{background:linear-gradient(180deg,#fff3dc,#ffe2b8);color:#4a2a10;box-shadow:0 0 0 1.5px #ff963cbf,0 0 16px #ff8c32a6}@media(max-height:480px){.camp-bar{height:14px}}@media(max-width:480px){.camp-pages{grid-template-columns:1fr}}@media(max-width:599px)and (min-height:481px){.camp-fab{bottom:calc(var(--edge-bottom) + 96px)}}.camp-fire-status{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.camp-evening{display:flex;flex-direction:column;gap:3px;font-size:12px}.camp-evening small{color:var(--text-dim)}.fair-chip{position:fixed;left:50%;bottom:calc(var(--edge-bottom) + 58px);transform:translate(-50%);z-index:16777280;pointer-events:auto;display:inline-flex;align-items:center;gap:7px;max-width:calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe));padding:7px 14px;border-radius:var(--r-pill);background:var(--accent);border:1px solid var(--glass-border);box-shadow:var(--shadow-md),0 0 18px var(--accent-glow);color:var(--ink);font:700 13px/1.2 var(--font-ui);white-space:nowrap;animation:fair-pop var(--t-med) var(--ease-out)}.fair-chip span{overflow:hidden;text-overflow:ellipsis}.fair-chip:hover{background:var(--accent-hi)}@keyframes fair-pop{0%{opacity:0;transform:translate(-50%,10px) scale(.94)}}.fair-panel{position:fixed;left:50%;bottom:calc(var(--edge-bottom) + 54px);transform:translate(-50%);z-index:16777281;pointer-events:auto;width:min(300px,calc((100vw - var(--safe-left) - var(--safe-right)) - 2 * var(--safe)));max-height:calc((100vh - var(--safe-top) - var(--safe-bottom)) - 2 * var(--safe) - 98px);overflow-y:auto;padding:8px 10px 10px;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);animation:fair-pop var(--t-med) var(--ease-out)}.fair-head{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim)}.fair-title{flex:1;min-width:0;display:inline-flex;align-items:center;gap:6px;overflow:hidden;white-space:nowrap}.fair-title b{color:var(--text);font-size:13px;overflow:hidden;text-overflow:ellipsis}.fair-tickets{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--r-pill);background:var(--glass-light);color:var(--gold);font-variant-numeric:tabular-nums}.fair-tickets b{color:var(--text)}.fair-x{width:24px;height:24px;padding:0;display:inline-grid;place-items:center;border-radius:var(--r-pill);background:var(--glass-light);border:0;color:var(--text)}.fair-x:hover{background:var(--glass-hover)}.fair-game{position:relative;margin-top:8px;height:92px;border-radius:var(--r-md);background:linear-gradient(180deg,#ffd1661f,#e5484d1a);border:1px solid var(--glass-border);overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none}.fair-line{margin:8px 2px 0;font-size:12px;line-height:1.35;color:var(--text-dim);text-align:center;overflow-wrap:anywhere}.fair-line.good{color:var(--gold);font-weight:700}.fair-note{margin:4px 2px 0;font-size:11px;line-height:1.3;color:var(--text-dim);text-align:center;opacity:.85}.fair-go{margin:8px auto 0;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:34px;border-radius:var(--r-pill);background:var(--accent);border:0;color:var(--ink);font:700 14px/1 var(--font-ui)}.fair-go:hover:not(:disabled){background:var(--accent-hi)}.fair-go:disabled{opacity:.5}.rings,.ducks,.strength{display:grid;place-items:center}.fair-prize-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.fair-prize-list li{display:flex;align-items:center;gap:8px;padding:4px 6px;border-radius:var(--r-md);background:var(--glass-light);font-size:12px}.fair-prize-list img{width:28px;height:28px;object-fit:contain}.fair-prize-list .name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fair-prize-list .cost{display:inline-flex;align-items:center;gap:3px;color:var(--gold);font-variant-numeric:tabular-nums}.fair-prize-list button{height:26px;padding:0 12px;border-radius:var(--r-pill);background:var(--accent);border:0;color:var(--ink);font:700 12px/1 var(--font-ui)}.fair-prize-list button:disabled{background:var(--glass-hover);color:var(--text-dim)}@media(max-height:460px){.fair-panel{bottom:calc(var(--edge-bottom) + 48px);max-height:calc((100vh - var(--safe-top) - var(--safe-bottom)) - 2 * var(--safe) - 86px);padding:6px 8px 8px}.fair-game{height:74px}.fair-go{height:30px;margin-top:6px}.fair-line{margin-top:5px}}@media(max-width:560px)and (min-height:561px){.fair-panel{bottom:calc(var(--edge-bottom) + 112px);max-height:calc((100vh - var(--safe-top) - var(--safe-bottom)) - 2 * var(--safe) - 180px)}.fair-chip{bottom:calc(var(--edge-bottom) + 116px)}}.fair-mp .fair-game{margin-top:0}.fair-mp .fair-line-mp{min-height:2.8em;display:grid;place-items:center}.fair-cost{display:inline-flex;align-items:center;gap:3px;color:var(--gold)!important;font-weight:700;font-variant-numeric:tabular-nums}.mp-li.fair-short .mp-li-icon{opacity:.7}.moles{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px;border-radius:var(--r-md);background:radial-gradient(120% 90% at 50% 0%,#6fbf5a,#3f8f3a 70%,#2f6e2c);box-shadow:0 0 0 1px #00000040 inset;user-select:none;-webkit-user-select:none}.mole-hole{position:relative;height:56px;padding:0;border:0;border-radius:var(--r-sm);background:transparent;overflow:hidden;cursor:pointer;box-shadow:none;touch-action:manipulation}.mole-hole:disabled{cursor:default}.mole-pit{position:absolute;left:12%;right:12%;bottom:6px;height:18px;border-radius:50%;background:radial-gradient(closest-side,#1c120b,#3a2616 70%,#5a3b20);box-shadow:0 2px #ffffff26}.mole{position:absolute;left:50%;bottom:12px;width:38px;height:40px;border-radius:46% 46% 30% 30%;background:radial-gradient(70% 60% at 40% 30%,#b98559,#7d5232 70%);box-shadow:0 -2px #ffffff2e inset;transition:transform 60ms linear;clip-path:inset(0 0 22% 0)}.mole-hole.gold .mole{background:radial-gradient(70% 60% at 40% 30%,#fff1b0,#f2bf3c 60%,#c88a16);box-shadow:0 0 14px #ffd166e6}.mole-eye{position:absolute;top:12px;width:6px;height:7px;border-radius:50%;background:#1b1310}.mole-eye.l{left:10px}.mole-eye.r{right:10px}.mole-nose{position:absolute;left:50%;top:20px;width:9px;height:7px;margin-left:-4.5px;border-radius:50%;background:#ff8fa3}.mole.bonked .mole-eye{height:2px;top:15px}.mole-bonk,.mole-dust{position:absolute;left:50%;top:4px;transform:translate(-50%);pointer-events:none;animation:mole-pop .45s ease-out forwards}.mole-bonk{padding:1px 7px;border-radius:var(--r-pill);background:var(--gold);color:var(--ink);font:900 12px/1.4 var(--font-ui);box-shadow:0 0 12px #ffd166cc}.mole-dust{width:26px;height:12px;top:auto;bottom:10px;border-radius:50%;background:#d6be96b3;filter:blur(2px)}@keyframes mole-pop{0%{opacity:1;transform:translate(-50%,4px) scale(.8)}to{opacity:0;transform:translate(-50%,-10px) scale(1.15)}}.mole-key{position:absolute;right:4px;top:3px;padding:0 4px;border-radius:4px;background:#00000059;color:#fffc;font:800 9px/14px var(--font-ui)}.moles-ready{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font:800 13px var(--font-ui);text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none}@media(hover:none){.mole-key{display:none}}@media(max-height:460px){.mole-hole{height:44px}.mole{width:30px;height:32px}.mole-eye{top:9px}.mole-nose{top:15px}}.darts{user-select:none;-webkit-user-select:none;cursor:crosshair}.darts-wall{display:block;width:100%;height:auto}.darts-board{fill:#3b2a52;stroke:#ffffff1f;stroke-width:.4}.balloon-string{fill:none;stroke:#ffffff73;stroke-width:.35}.balloon.star ellipse:first-of-type{stroke:var(--gold);stroke-width:.7}.balloon-star{fill:#fff;font-size:5px;font-weight:900}.dart-aim circle{fill:#ffffff14;stroke:#fff;stroke-width:.6}.dart-aim line{stroke:#fff;stroke-width:.6;stroke-linecap:round}.dart-miss{fill:#fff;opacity:.8}@media(prefers-reduced-motion:reduce){.mole-bonk,.mole-dust{animation:none}}.fair-game.fair-moles,.fair-game.fair-darts,.fair-game.fair-wheel,.fair-game.fair-rings,.fair-game.fair-ducks,.fair-game.fair-hammer{height:auto;overflow:visible}.moles-keys{min-height:38px;display:grid;place-items:center;font-weight:700}.wheel{--wheel-size: min(196px, 32vh);position:relative;display:grid;place-items:center;padding:2px 0 4px;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation}.wheel-svg{width:var(--wheel-size);height:auto;display:block;overflow:visible;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35))}.wheel-rim{fill:#2a1f3d;stroke:#ffd36b;stroke-width:1.4}.wheel-bulb{fill:#6b5a35;transition:fill 90ms linear}.wheel-bulb.on{fill:#fff4c2;filter:drop-shadow(0 0 1.6px #ffe58a)}.wheel-slice path{stroke:#ffffffd9;stroke-width:.6}.wheel-slice.win path{stroke:#fff;stroke-width:1.6;filter:brightness(1.25) drop-shadow(0 0 3px rgba(255,255,255,.9))}.wheel-label{fill:#fff;font:900 9px/1 var(--font-ui);text-anchor:middle;dominant-baseline:middle;paint-order:stroke;stroke:#00000059;stroke-width:1.4px}.wheel-label.blank{fill:#ffffff8c;font-size:8px}.wheel-hub{fill:#ffd36b;stroke:#8a5b12;stroke-width:1}.wheel-pointer{fill:#ff5d73;stroke:#fff;stroke-width:1.2;stroke-linejoin:round;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.5))}.wheel-star{position:absolute;left:50%;top:calc(2px + var(--wheel-size) * .526);translate:-50% -50%;color:#8a5b12;display:grid;pointer-events:none}.wheel-pop{position:absolute;left:50%;top:40%;translate:-50% -50%;padding:2px 12px;border-radius:var(--r-pill);background:linear-gradient(180deg,#ffe08f,var(--gold) 55%,#f0b43b);color:#3b2600;font:900 18px/1.3 var(--font-ui);box-shadow:0 4px 14px #00000059;pointer-events:none;animation:wheel-pop .7s var(--ease-out) both}.wheel-pop.jackpot{font-size:24px;animation:wheel-pop .7s var(--ease-out) both,wheel-glow .9s ease-in-out .7s infinite alternate}@keyframes wheel-pop{0%{opacity:0;scale:.4}60%{scale:1.15}}@keyframes wheel-glow{to{box-shadow:0 0 22px 6px #ffd36bbf}}@media(prefers-reduced-motion:reduce){.wheel-pop,.wheel-pop.jackpot{animation:none}}.rings-scene{width:min(100%,calc(32vh / .56));margin:0 auto;height:auto;display:block;border-radius:10px;box-shadow:inset 0 0 0 1px #ffffff14}.rings-bulb{fill:#6b5a35}.rings-bulb.on{fill:#fff1b8;filter:drop-shadow(0 0 1px #ffe58a)}.rings-band{fill:#ffffff0f;stroke:#ffffff2e;stroke-width:.3;stroke-dasharray:1 1}.rings-band.hot{fill:#4fd18b2e;stroke:#4fd18bcc}.bottle-glass{opacity:.88;stroke:#00000059;stroke-width:.35}.bottle-lip{fill:#d8dde6}.bottle-shine{fill:#ffffff73}.bottle-label{fill:#f5ead2;opacity:.9}.bottle.ringed .bottle-glass{filter:brightness(1.2) drop-shadow(0 0 2px rgba(255,211,107,.9))}.bottle-sparkle{fill:#fff4c2}.rings-shelf{fill:#b07a45}.rings-shelf-front{fill:#7a4f2a}.rings-ring{fill:none;stroke:#ffc23d;stroke-width:1.1}.rings-ring.on{stroke:#ffd36b;filter:drop-shadow(0 0 1.2px rgba(255,211,107,.9))}.rings-ring.live{stroke-width:1.3}.rings-guide{stroke:#ffffff40;stroke-width:.35;stroke-dasharray:1.2 1.2}.rings-aim.hot .rings-ring{stroke:#4fd18b;filter:drop-shadow(0 0 1.5px rgba(79,209,139,.9))}.rings-aim.hot .rings-guide{stroke:#4fd18bb3}.gallery{width:min(100%,64vh);margin:0 auto;height:auto;display:block;border-radius:10px;box-shadow:inset 0 0 0 1px #ffffff14}.awning.red{fill:#e5484d}.awning.cream{fill:#f8ecd4}.gallery-band{fill:#ffffff0d}.gallery-band.hot{fill:#4fd18b29}.duck-body{fill:#ffd23f;stroke:#c79a0a;stroke-width:.35}.duck-beak{fill:#ff8a3d}.duck-eye{fill:#1b1b1b}.duck-target{fill:#fff}.duck-target-in{fill:#e5484d}.gallery-duck.down .duck-body{fill:#c9a640}.duck-pop{fill:#ffd36b;font:900 5px/1 var(--font-ui);text-anchor:middle;paint-order:stroke;stroke:#00000080;stroke-width:.8px}.gallery-wave.back{fill:#2b6cb0}.gallery-wave.front{fill:#3b82c4;stroke:#ffffff80;stroke-width:.4}.gallery-sight circle,.gallery-sight line{fill:none;stroke:#ffffffbf;stroke-width:.6}.gallery-sight.hot circle,.gallery-sight.hot line{stroke:#4fd18b;filter:drop-shadow(0 0 1px rgba(79,209,139,.9))}.gallery-flash{fill:#fff4c28c}.tester-scene{width:min(100%,calc(32vh / .56));height:auto;margin:0 auto;display:block;border-radius:10px;box-shadow:inset 0 0 0 1px #ffffff14}.tester-frame{fill:#00000059;stroke:#fff3;stroke-width:.4}.tester-line{stroke:#fff;stroke-width:.6;stroke-dasharray:1 .8}.tester-tick{stroke:#fff6;stroke-width:.4}.tester-mark{fill:#fff9;font:800 3.4px/1 var(--font-ui);text-anchor:end;dominant-baseline:middle}.tester-rail{fill:#f8ecd4}.tester-stripe{fill:#e5484d}.tester-bell{fill:#ffc23d;stroke:#8a5b12;stroke-width:.4;transform-box:view-box}.tester-bell.ringing{animation:tester-ding .16s ease-in-out infinite alternate}@keyframes tester-ding{0%{rotate:-14deg}to{rotate:14deg}}.tester-ring-wave{fill:none;stroke:#ffd36b;stroke-width:.6}.tester-puck{fill:#ffd36b;stroke:#8a5b12;stroke-width:.4;filter:drop-shadow(0 0 1px rgba(255,211,107,.9))}.tester-pad{fill:#8a5b12}.tester-handle{fill:#b07a45}.tester-head{fill:#9aa3b5;stroke:#4b5263;stroke-width:.4}.tester-score{fill:#fff;font:900 9px/1 var(--font-ui);text-anchor:middle;paint-order:stroke;stroke:#0006;stroke-width:1px}.tester-score.bell{fill:#ffd36b}@media(prefers-reduced-motion:reduce){.tester-bell.ringing{animation:none}}.fair-record{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:-2px;color:var(--gold);font-size:11.5px;font-weight:700}.fair-mp .fair-game{position:relative}.fair-callout{position:absolute;z-index:3;display:grid;justify-items:center;gap:1px;transform:translate(-50%,-50%);pointer-events:none;white-space:nowrap;animation:fair-callout 1.1s cubic-bezier(.2,.9,.3,1.2) forwards}.fair-callout b{padding:2px 9px;border-radius:var(--r-pill);font:900 15px/1.2 var(--font-ui);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.45);box-shadow:0 3px 10px #00000059}.fair-callout small{padding:1px 7px;border-radius:var(--r-pill);background:#0a0c18d1;color:#fff;font:700 11px/1.3 var(--font-ui)}.fair-callout.hit b{background:var(--ok)}.fair-callout.gold b{background:linear-gradient(180deg,#ffe08a,#ffb300);color:#3a2400;text-shadow:none;font-size:17px}.fair-callout.miss b{background:var(--danger)}.fair-callout.info b{background:#0a0c18d1}@keyframes fair-callout{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}14%{opacity:1;transform:translate(-50%,-50%) scale(1.12)}24%{transform:translate(-50%,-50%) scale(1)}75%{opacity:1;transform:translate(-50%,-62%) scale(1)}to{opacity:0;transform:translate(-50%,-80%) scale(.96)}}.fair-callout.miss{animation-name:fair-callout-miss}@keyframes fair-callout-miss{0%{opacity:0;transform:translate(-50%,-50%) scale(1.25)}12%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-42%)}to{opacity:0;transform:translate(-50%,-30%)}}.fair-result{display:grid;gap:6px;margin-top:8px;padding:8px 10px;border-radius:var(--r-md);background:#ffffff0d;border:1px solid var(--glass-border);animation:fair-result-in .26s ease-out}.fair-result.win{background:linear-gradient(180deg,#ffd16629,#ffd1660a);border-color:#ffd16673}.fair-result-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.fair-result-head b{display:inline-flex;align-items:center;gap:5px;font:900 17px/1.1 var(--font-ui)}.fair-result.win .fair-result-head b{color:var(--gold)}.fair-result.none .fair-result-head b{color:var(--text-dim, #c9cbe0)}.fair-result-head span{font:700 12px var(--font-ui);color:var(--text-dim, #c9cbe0);font-variant-numeric:tabular-nums}.fair-ladder{display:flex;gap:4px}.fair-ladder span{flex:1;display:grid;justify-items:center;padding:3px 2px;border-radius:var(--r-sm);background:#ffffff0a;border:1px solid transparent;font:700 10.5px/1.2 var(--font-ui);color:var(--text-dim, #c9cbe0);white-space:nowrap}.fair-ladder em{display:inline-flex;align-items:center;gap:2px;font-style:normal;font-weight:900}.fair-ladder span.on{background:#ffd16633;color:var(--gold)}.fair-ladder span.next{border-color:#ffd1668c;border-style:dashed;color:#fff}.fair-tip{margin:0;font:600 12px/1.35 var(--font-ui);color:#fff}.fair-tip:before{content:"💡 "}.fair-tip.guest:before{content:"🎟️ "}@keyframes fair-result-in{0%{opacity:0;transform:translateY(6px) scale(.97)}}.fair-flight{position:fixed;z-index:16777290;display:grid;place-items:center;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:linear-gradient(180deg,#ffe08a,#ffb300);color:#3a2400;box-shadow:0 2px 8px #0006;pointer-events:none;opacity:0;animation:fair-flight .65s cubic-bezier(.5,0,.6,1) forwards}@keyframes fair-flight{0%{opacity:0;transform:translate(0) scale(.5)}15%{opacity:1;transform:translate(calc(var(--dx) * .05),-26px) scale(1.15)}90%{opacity:1;transform:translate(var(--dx),var(--dy)) scale(.8)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.5)}}.mp-btn.fair-waiting{position:relative;overflow:hidden}.fair-wait{position:absolute;inset:0 auto 0 0;width:100%;background:#ffffff38;transform-origin:left;animation:fair-wait linear forwards;pointer-events:none}@keyframes fair-wait{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media(prefers-reduced-motion:reduce){.fair-callout,.fair-result{animation-duration:1ms}.fair-callout{animation:none;transform:translate(-50%,-50%)}}.fair-tickets-chip{display:inline-flex}.fair-result.none .fair-result-head b{font-size:15px}.mp-panel.fair-booth{--mp-w: 320px;left:auto;right:var(--edge-right);top:calc(var(--edge-top) + 52px);bottom:auto;transform:none;max-height:calc((100vh - var(--safe-top) - var(--safe-bottom)) - var(--safe) - 52px - var(--safe) - 64px);animation-name:mp-in-side}.fair-booth .mp-body{padding-bottom:0}.fair-act{position:sticky;bottom:0;z-index:4;margin:0 -4px;padding:6px 4px 0;background:linear-gradient(180deg,#12182600,#121826f5 8px)}.fair-go-btn{min-height:46px;font-size:15px;font-weight:800}.fair-go-btn.live{box-shadow:0 0 0 2px #ffffff26,0 6px 16px #ff7a4559}.fair-go-btn:active:not(:disabled){transform:scale(.97)}.fair-hint{color:#fff!important;font:800 13px/1.3 var(--font-ui)}.fair-count{position:absolute;z-index:3;top:6px;right:6px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;font:900 17px/1 var(--font-ui);box-shadow:0 2px 8px #0006;pointer-events:none;animation:fair-count 1s ease-out}@keyframes fair-count{0%{transform:scale(1.5);opacity:0}20%{transform:scale(1);opacity:1}}@media(max-height:520px)and (orientation:landscape){.mp-panel.fair-booth{--mp-w: 300px;top:calc(var(--edge-top) + 44px);max-height:calc((100vh - var(--safe-top) - var(--safe-bottom)) - var(--safe) - 44px - var(--safe));padding:6px 8px 8px;gap:4px}.fair-booth .mp-sub,.fair-booth .fair-record{display:none}.fair-booth .fair-line-mp{min-height:0;margin:0}.fair-booth .rings-scene,.fair-booth .gallery,.fair-booth .tester-scene,.fair-booth .darts-wall{display:block;max-height:26vh;margin:0 auto}.fair-booth .fair-result{gap:4px;padding:6px 8px}.fair-go-btn{min-height:44px}}@media(orientation:portrait)and (max-width:599px){.mp-panel.fair-booth{left:var(--edge-left);right:var(--edge-right);width:auto;top:auto;bottom:var(--edge-bottom);max-height:56vh}.fair-go-btn{min-height:54px;font-size:17px}}@media(prefers-reduced-motion:reduce){.fair-count{animation:none}}.mp-panel.fair-booth.slim{--mp-w: 250px;top:auto;bottom:calc(var(--edge-bottom) + 60px)}.fair-strip-row{display:flex;align-items:center;justify-content:center;gap:10px;min-height:30px}.fair-dots{display:inline-flex;gap:6px}.fair-dots i{width:14px;height:14px;border-radius:50%;background:linear-gradient(180deg,#ffe08a,#ffb300);box-shadow:0 0 0 2px #ffffff2e;transition:transform .16s ease-out,opacity .16s}.fair-dots i.used{opacity:.22;transform:scale(.75)}.fair-timebar{flex:1;height:10px;min-width:120px;border-radius:var(--r-pill);background:#ffffff24;overflow:hidden}.fair-timebar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffb300,#ffe08a);transform-origin:left center}.shroom-key{display:inline-block;min-width:16px;padding:0 4px;border-radius:5px;background:#140e08c7;color:#fff;font:800 12px/16px var(--font-ui);text-align:center;box-shadow:0 1px #ffffff40 inset}.fair-count.inline{position:static;width:26px;height:26px;font-size:15px}.fair-callout.world{position:relative;transform:none;animation-name:fair-callout-world}.fair-callout.world.miss{animation-name:fair-callout-world}.fair-callout.world b{font-size:18px}@keyframes fair-callout-world{0%{opacity:0;transform:translateY(10px) scale(.6)}14%{opacity:1;transform:translateY(0) scale(1.12)}24%{transform:scale(1)}75%{opacity:1;transform:translateY(-14px)}to{opacity:0;transform:translateY(-26px)}}@media(max-height:520px)and (orientation:landscape){.mp-panel.fair-booth.slim{--mp-w: 250px;top:auto;bottom:var(--edge-bottom)}}.tower-mark{display:inline-block;padding:1px 6px;border-radius:var(--r-pill);background:#121826d1;color:#fff;font:800 11px/1.3 var(--font-ui);white-space:nowrap}.tower-mark.bell{background:linear-gradient(180deg,#ffe08a,#ffb300);color:#3a2400}.tower-sign{display:inline-block;padding:6px 12px;border-radius:6px;background:linear-gradient(180deg,#e8413c,#b8231f);border:3px solid #f2c12e;color:#fff7d6;font:900 22px/1.05 var(--font-ui);letter-spacing:.04em;text-align:center;white-space:normal;width:150px;text-shadow:0 2px 0 rgba(0,0,0,.35)}.tower-sign.plaque{width:110px;padding:3px 6px;border-width:2px;font-size:13px}.mp-btn.block.fair-waiting:disabled{opacity:1;filter:none;background:#ff7a4547;color:#fff;cursor:progress}.mp-btn.fair-waiting .fair-wait{background:linear-gradient(90deg,#ff7a45,#ffb547);opacity:.85}.mp-btn.fair-waiting>:not(.fair-wait){position:relative;z-index:1}@media(max-width:599px),(max-height:520px){.fair-callout.world b{font-size:26px;padding:3px 12px}.fair-callout.world small{font-size:14px}}.dart-star-badge{display:inline-block;padding:1px 7px;border-radius:var(--r-pill);background:linear-gradient(180deg,#ffe08a,#ffb300);color:#3a2400;font:900 14px/1.3 var(--font-ui);box-shadow:0 0 0 2px #ffffffb3,0 0 14px 4px #ffc23dbf;animation:dart-star .9s ease-in-out infinite;white-space:nowrap}@keyframes dart-star{50%{transform:scale(1.18);box-shadow:0 0 0 2px #fff,0 0 22px 8px #ffc23df2}}@media(max-width:599px),(max-height:520px){.dart-star-badge{font-size:17px}}@media(prefers-reduced-motion:reduce){.dart-star-badge{animation:none}}.car-speedo{position:absolute;right:calc(var(--safe) + 6px);bottom:calc(var(--hint-bottom) + 64px);min-width:168px;padding:10px 14px;border-radius:var(--r-lg, 16px);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);pointer-events:none;font-variant-numeric:tabular-nums}.car-speed{display:flex;align-items:baseline;gap:6px}.car-speed b{font-size:40px;line-height:1;font-weight:800;letter-spacing:-1px}.car-speed span{font-size:12px;font-weight:700;color:var(--text-dim);text-transform:uppercase}.car-bar{height:5px;margin:7px 0 6px;border-radius:3px;background:#ffffff1f;overflow:hidden}.car-bar span{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--ok, #3ccf7d),var(--gold, #ffd166) 70%,#ff6b5a);transition:width 80ms linear}.car-who{display:flex;flex-direction:column;gap:1px;font-size:11.5px}.car-model{font-weight:700}.car-people{color:var(--text-dim);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.car-race{position:absolute;top:calc(var(--safe) + 64px);left:50%;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 16px 9px;border-radius:var(--r-lg, 16px);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);pointer-events:none;font-variant-numeric:tabular-nums;max-width:calc(100vw - 32px)}.car-race.done{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:8px}.car-race-top{display:flex;align-items:center;gap:7px;font-size:13px;flex-wrap:wrap;justify-content:center}.car-chip{padding:2px 8px;border-radius:999px;background:var(--glass-light);font-size:11.5px;font-weight:700}.car-time{font-size:30px;font-weight:800;letter-spacing:-.5px}.car-race.done .car-time{font-size:20px}.car-sub{font-size:11.5px;color:var(--text-dim);margin:0}.car-board-btn{position:absolute;right:calc(var(--safe) + 6px);top:50%;translate:0 -50%;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;pointer-events:auto;background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);font-size:12.5px;font-weight:700}.car-board{position:absolute;right:calc(var(--safe) + 6px);top:50%;translate:0 -50%;width:min(280px,calc(100vw - 32px));max-height:60vh;overflow:auto;padding:10px 14px 12px;border-radius:var(--r-lg, 16px);pointer-events:auto;background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-md, var(--shadow-sm));color:var(--text)}.car-board header{display:flex;align-items:center;gap:7px}.car-x{margin-left:auto;padding:4px;border-radius:50%;background:transparent;color:var(--text-dim)}.car-board h4{margin:10px 0 4px;font-size:13px}.car-board h4 small{color:var(--text-dim);font-weight:600}.car-board ol{margin:0;padding-left:22px;font-size:12.5px;font-variant-numeric:tabular-nums}.car-board li{padding:2px 0}.car-board li span{display:inline-block;width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.car-board li b{float:right}.car-touch button{position:absolute;display:grid;place-items:center;padding:0;border-radius:50%;pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text)}.car-touch button:active{scale:.92;background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo))}.car-touch-boost{right:calc(var(--safe) + 8px);bottom:calc(var(--hint-bottom) + 40px);width:76px;height:76px}.car-touch-brake{right:calc(var(--safe) + 96px);bottom:calc(var(--hint-bottom) + 24px);width:64px;height:64px}.car-touch-horn{right:calc(var(--safe) + 64px);bottom:calc(var(--hint-bottom) + 128px);width:48px;height:48px}.car-touch-exit{right:calc(var(--safe) + 8px);bottom:calc(var(--hint-bottom) + 128px);width:48px;height:48px}@media(hover:none)and (pointer:coarse){.car-speedo{bottom:auto;top:calc(var(--safe) + 64px);right:calc(var(--safe) + 6px);min-width:120px;padding:7px 10px}.car-speed b{font-size:28px}.car-bar{margin-bottom:0}.car-who{display:none}.car-race{top:calc(var(--safe) + 8px)}}.car-bodies{list-style:none;margin:6px 0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:min(56vh,520px);overflow-y:auto}.car-body{flex-shrink:0;border-radius:var(--r-md, 10px);background:var(--glass-light);overflow:hidden}.car-body.mine{box-shadow:0 0 0 1px #3ccf7d73 inset}.car-body.open .car-body-row img{visibility:hidden}.car-body.open{background:#ffd1661a;box-shadow:0 0 0 1px #ffd16673 inset}.car-body-row{display:grid;grid-template-columns:112px 1fr auto;align-items:center;gap:10px;width:100%;padding:4px 10px 4px 4px;background:transparent;color:var(--text);text-align:left;border-radius:0;border:0;box-shadow:none;background-image:none}.car-body-row img{width:112px;height:67px;object-fit:contain}.car-body-name{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:13.5px}.car-body-name small{display:inline-flex;align-items:center;gap:4px;color:var(--text-dim);font-size:11.5px}.car-chip.ok{background:#3ccf7d2e;color:var(--ok, #3ccf7d)}.car-price{display:inline-flex;align-items:center;gap:3px;font-weight:800;color:var(--gold, #ffd166);font-variant-numeric:tabular-nums}.car-body-detail{display:flex;flex-direction:column;gap:6px;padding:0 10px 10px}.car-body-big{width:100%;height:auto;aspect-ratio:5 / 3;object-fit:contain}.car-stat{display:grid;grid-template-columns:150px 1fr 56px;align-items:center;gap:8px;font-size:12px}.car-stat-label{display:inline-flex;align-items:center;gap:5px;color:var(--text-dim)}.car-stat-value{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.car-stat-value.wide{grid-column:2 / span 2;text-align:left}.car-mods-head{display:flex;align-items:center;gap:10px}.car-mods-head img{width:140px;height:84px;object-fit:contain}.car-mods-head div{display:flex;flex-direction:column;gap:2px}.car-mods-head small{color:var(--text-dim);font-size:11.5px}.car-mods .mp-callout{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.car-mods-body{max-height:min(42vh,380px);overflow-y:auto;margin:6px 0}.car-mod-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.car-mod-grid.wheels{grid-template-columns:repeat(4,1fr)}.car-mod{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;border-radius:var(--r-md, 10px);background:var(--glass-light);color:var(--text);box-shadow:none;font-size:11.5px;min-width:0}.car-mod img{width:100%;height:52px;object-fit:contain}.car-mod.picked{box-shadow:0 0 0 2px var(--accent) inset;background:#ff8c501f}.car-mod-label{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.car-mod-price{color:var(--gold, #ffd166);font-weight:800;font-variant-numeric:tabular-nums}.car-mod-price.have{color:var(--ok, #3ccf7d)}.car-mod-rows{display:flex;flex-direction:column;gap:6px}.car-mod-row{display:grid;grid-template-columns:110px repeat(3,1fr);align-items:stretch;gap:6px}.car-mod-name{align-self:center;font-size:12px;color:var(--text-dim)}.car-mod-row .car-mod{flex-direction:column}.car-mods-foot{justify-content:space-between}@media(min-width:1201px)and (min-height:481px){.mp-dock.car-mods{left:auto;right:var(--safe);bottom:calc(var(--safe) + 54px);transform:none}}.car-perf{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;padding:6px 8px;border-radius:var(--r-md, 10px);background:var(--glass-light);font-size:11.5px}.car-perf-row{display:flex;align-items:baseline;gap:6px}.car-perf-row span{color:var(--text-dim);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.car-perf-row b{font-variant-numeric:tabular-nums}.car-perf-row em{font-style:normal;font-size:10px}.car-perf-row em.up{color:var(--ok, #3ccf7d)}.car-perf-row em.down{color:#ff6b5a}.car-mod-row.four{grid-template-columns:100px repeat(4,1fr)}.car-lights{position:absolute;top:calc(var(--safe) + 150px);left:50%;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 18px 9px;border-radius:var(--r-lg, 16px);background:#0e1016db;box-shadow:0 0 0 1px #ffffff14 inset,var(--shadow-sm);color:#fff;pointer-events:none;font-size:13px}.car-lamps{display:flex;gap:10px}.car-lamps span{width:30px;height:30px;border-radius:50%;background:#2a2d35;box-shadow:0 0 0 2px #0b0c10 inset;transition:background .08s,box-shadow .08s}.car-lamps span.red{background:#ff3b3b;box-shadow:0 0 18px 4px #ff3b3b8c}.car-lamps span.green{background:#3bff7a;box-shadow:0 0 22px 6px #3bff7a99}.car-lights.go b{font-size:22px;letter-spacing:1px;color:#3bff7a}.car-finish{position:absolute;top:calc(var(--safe) + 120px);left:50%;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 22px 12px;border-radius:var(--r-lg, 16px);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);pointer-events:none;font-variant-numeric:tabular-nums;max-width:calc(100vw - 32px);animation:car-finish-pop .45s cubic-bezier(.2,1.6,.4,1) both}.car-finish-flags{font-size:22px;letter-spacing:6px;animation:car-finish-wave .9s ease-in-out infinite alternate}.car-finish-title{font-size:20px;font-weight:800}.car-finish-chips{display:flex;gap:6px;min-height:4px}.car-chip.gold{background:#ffc40040}@keyframes car-finish-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes car-finish-wave{0%{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-3px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.car-finish,.car-finish-flags{animation:none}}.car-lights.jumped .car-lamps span{animation:car-jumped .3s steps(2,jump-none) infinite}@keyframes car-jumped{50%{opacity:.25}}.car-chip.tick{animation:car-tick .35s ease-out}@keyframes car-tick{40%{scale:1.18}}.car-finish-tip{max-width:300px;margin-top:4px;font-size:12.5px;font-weight:700;text-align:center;color:var(--text-dim)}.car-missed{display:flex;align-items:center;gap:6px;margin-top:3px;padding:3px 10px;border-radius:999px;background:#ff5a3ce6;color:#fff;font-size:12.5px;font-weight:800}.car-trip{position:absolute;top:calc(var(--safe) + 64px);left:50%;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:7px 12px 8px;border-radius:var(--r-lg, 16px);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px var(--glass-border) inset,var(--shadow-sm);color:var(--text);font-size:13px;font-variant-numeric:tabular-nums;max-width:calc(100vw - 32px)}.car-trip.low{top:calc(var(--safe) + 150px)}.car-trip-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:center}.car-trip-way{display:inline-flex;align-items:center;gap:3px;font-weight:800}.car-trip-x{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:var(--glass-light);color:var(--text);cursor:pointer}.car-trip-who{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:0;padding:0;list-style:none}.car-trip-who li{padding:1px 7px;border-radius:999px;background:var(--glass-light);font-size:11.5px;font-weight:700}.car-trip-who li.in{background:#3bc86e4d}.car-trip-who li.dim{opacity:.55}.car-trip-names{font-size:13px;font-weight:700}@media(max-width:600px){.car-trip{font-size:12px;padding:6px 10px}.car-trip-x{width:32px;height:32px}}.car-tent img{width:56px;height:56px;flex:none}.car-tent-actions{display:flex;gap:6px;flex:none}.car-tent-up{justify-content:space-between;gap:8px;font-size:13px}.tent-tag{padding:2px 8px;border-radius:999px;background:#14181eb3;color:#fff;font:700 12px/1.4 system-ui,sans-serif;white-space:nowrap}@media(hover:none)and (pointer:coarse)and (max-width:600px){.car-race,.car-trip{top:calc(var(--safe) + 128px)}.car-trip.low{top:calc(var(--safe) + 240px)}:root:has(.car-touch) .chat-log{max-height:22px}.car-touch-brake{bottom:calc(var(--hint-bottom) + 60px)}.car-touch-boost{bottom:calc(var(--hint-bottom) + 76px)}.car-touch-exit,.car-touch-horn{bottom:calc(var(--hint-bottom) + 164px)}:root:has(.car-touch) .mp-prompts,:root:has(.car-touch):has(.mp-dock:not(.mp-hidden)) .mp-prompts{top:calc(var(--safe) + 128px);bottom:auto}:root:has(.car-touch):has(.car-trip) .mp-prompts{top:calc(var(--safe) + 226px)}:root:has(.car-touch):has(.car-race) .mp-prompts{top:calc(var(--safe) + 240px)}:root:has(.car-touch):has(.car-finish) .mp-prompts{top:calc(var(--safe) + 366px)}:root:has(.car-touch):has(.car-lights) .mp-prompts{top:calc(var(--safe) + 260px)}:root:has(.car-touch):has(.car-race):has(.car-trip) .mp-prompts{top:calc(var(--safe) + 338px)}}.race-sign{padding:6px 14px;border-radius:8px;border:2px solid #fff;background:linear-gradient(135deg,#1b1f27,#2c3340);color:#fff;font:800 22px/1.2 system-ui,sans-serif;letter-spacing:.02em;white-space:nowrap;box-shadow:0 3px 10px #00000059}.ok-lobby.lb{--mh: clamp(196px, min( calc(100vh - 176px) , 46vw), 360px);--mw: calc(var(--mh) * 1.22);--cw: clamp(84px, calc(var(--mh) * .4), 128px);width:min(900px,calc(100% - 2 * var(--safe)));max-height:calc(100% - 2 * var(--safe) - 40px);gap:10px;padding:12px 14px}.ok-lobby.lb header b{font-size:17px;font-weight:900}.ok-lobby.lb footer button{min-height:38px;padding:8px 14px;font-size:14px}.lb-start{font-weight:900;padding-inline:20px!important}.lb-body{display:grid;grid-template-columns:var(--mw) minmax(0,1fr);gap:16px;min-height:0;overflow:hidden}.lb-side{display:grid;gap:10px;align-content:start;overflow:auto;min-height:0;max-height:var(--mh);padding-right:4px}.lb-side .ok-presets{gap:6px}.lb-side .ok-preset{min-height:44px;padding:6px 10px!important}.lb-side .ok-preset b{font-size:13px}.lb-side .ok-adv{gap:6px}.lb-side .ok-adv-toggle{min-height:32px;font-size:12px!important}.lb-side .ok-check{min-height:32px}.lb-map{position:relative;width:var(--mw);height:var(--mh);touch-action:none;-webkit-user-select:none;user-select:none}.lb-felt{position:absolute;inset:24% 28%;border-radius:22%;background:radial-gradient(circle at 40% 35%,#3f8f5c,#2a6b44 70%);border:6px solid #8a5a34;box-shadow:0 6px 18px #0006,inset 0 0 0 2px #00000040;display:grid;place-items:center;color:#ffffff8c;font-weight:900;font-size:13px}.lb-felt>*{grid-area:1 / 1}.lb-dir{width:60%;height:60%;opacity:.35;transform:scaleX(-1)}.lb-felt.cw .lb-dir{transform:none}.lb-chair{position:absolute;width:var(--cw);min-height:70px;padding:6px;display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;border-radius:var(--r-md);background:var(--glass-strong);border:2px solid var(--glass-border);box-shadow:var(--shadow-sm);font-size:12px;pointer-events:auto;transition:transform .15s,border-color .15s,opacity .15s}.lb-chair.bottom{left:50%;bottom:0;transform:translate(-50%)}.lb-chair.top{left:50%;top:0;transform:translate(-50%)}.lb-chair.left{left:0;top:50%;transform:translateY(-50%)}.lb-chair.right{right:0;top:50%;transform:translateY(-50%)}.lb-chair b{max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px}.lb-chair small{color:var(--text-dim);font-size:10.5px}.lb-chair.empty{background:#12182680;border-style:dashed}.lb-chair.mine{border-color:var(--accent)}.lb-chair.ready{border-color:#3ccf7dcc}.lb-chair.team0{box-shadow:0 0 0 3px #4dabf78c,var(--shadow-sm)}.lb-chair.team1{box-shadow:0 0 0 3px #ff922b99,var(--shadow-sm)}.lb-chair.drag{cursor:grab}.lb-chair.picked{border-color:var(--gold)}.lb-chair.over{border-color:var(--gold);background:#ffd16633}.lb-chair.lifted{opacity:.45}.lb-avatar{position:relative;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:16px;color:#fff;background:hsl(var(--h, 20) 60% 45%);border:2px solid rgba(255,255,255,.7)}.lb-crown{position:absolute;top:-10px;left:50%;transform:translate(-50%);color:var(--gold);fill:var(--gold)}.lb-ready{position:absolute;right:-4px;bottom:-3px;padding:1px;border-radius:50%;background:var(--ok);color:#fff}.lb-bot-acts,.lb-levels,.lb-empty-acts{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.lb-chair .ok-lvl{min-height:26px;padding:2px 8px!important;font-size:11px!important}.lb-empty-acts .btn-icon{width:36px;height:36px;padding:0;display:grid;place-items:center}.lb-addbot{color:#cfc4ff!important}.lb-act{min-height:28px;padding:2px 8px!important;font-size:11px!important}.lb-ghost{position:fixed;z-index:50;transform:translate(-50%,-120%);padding:6px 12px;border-radius:var(--r-pill);background:var(--accent);color:#fff;font-weight:900;font-size:13px;pointer-events:none;box-shadow:var(--shadow-md)}.lb-hint{position:absolute;left:0;bottom:-2px;max-width:calc((var(--mw) - var(--cw)) / 2 - 6px);font-size:10.5px;line-height:1.25}.lb-swap{position:absolute;z-index:3;top:48px;left:14px;right:14px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);overflow:hidden;display:flex;gap:8px;align-items:center;padding:8px 12px;border-radius:var(--r-md);background:#3c3014eb;border:1px solid var(--gold);font-weight:800;font-size:13px;animation:ok-pop2 .2s var(--ease-out)}.lb-swap button{min-height:36px;pointer-events:auto}.lb-swap-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--gold);transform-origin:left;animation:lb-shrink linear forwards}@keyframes lb-shrink{to{transform:scaleX(0)}}@media(max-width:600px){.lb-body{grid-template-columns:1fr;overflow:auto}.lb-map{margin:0 auto}.lb-side{max-height:none;overflow:visible}}@media(max-height:420px){.ok-lobby.lb{padding:8px 12px;gap:6px}.ok-lobby.lb footer button{min-height:36px;padding:6px 12px}.lb-chair{min-height:64px;padding:4px}.lb-avatar{width:28px;height:28px;font-size:14px}}.lb-chair.top.filled,.lb-chair.bottom.filled{width:calc(var(--cw) * 1.75);min-height:0;grid-template-columns:auto minmax(0,1fr);justify-items:start;text-align:left;column-gap:8px}.lb-chair.top.filled .lb-avatar,.lb-chair.bottom.filled .lb-avatar{grid-row:1 / span 3}.lb-chair.top.filled>:not(.lb-avatar),.lb-chair.bottom.filled>:not(.lb-avatar){grid-column:2}.lb-chair.top.filled>b,.lb-chair.bottom.filled>b{grid-row:1}.lb-chair.top .lb-bot-acts,.lb-chair.bottom .lb-bot-acts{flex-wrap:nowrap;justify-content:start}.lb-chair.left .lb-bot-acts,.lb-chair.right .lb-bot-acts{flex-direction:column;align-items:center}.lb-hint{pointer-events:none}@media(max-height:420px){.lb-hint{display:none}}.lb-hint{display:none}.lb-chair.top.filled>.lb-bot-acts,.lb-chair.bottom.filled>.lb-bot-acts,.lb-chair.top.filled>small,.lb-chair.bottom.filled>small{grid-row:2}.lb-chair.top.filled>b,.lb-chair.bottom.filled>b{max-width:100%;min-width:0}.lb-chair.top{display:grid;right:auto;gap:2px;align-items:normal;justify-content:normal;flex-wrap:wrap}.ok-scoring{display:grid;gap:4px;margin-top:4px;padding-top:4px;border-top:1px solid var(--glass-border)}.ok-row-info{font-style:normal;color:var(--text-dim);cursor:help}.ok-sb-back{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:var(--safe, 8px);background:#06080e8c;pointer-events:auto}.ok-sb{width:min(720px,100%);max-height:100%;display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:#101420f7;box-shadow:0 16px 40px #0009;overflow:hidden;color:var(--text)}.ok-sb>header,.ok-sb>footer{display:flex;align-items:center;gap:8px;flex:none}.ok-sb>header b{font-size:16px}.ok-sb>footer:empty{display:none}.ok-sb button{padding:6px 12px;font-size:13px}.ok-sb .btn-icon{padding:0;width:30px;height:30px}.ok-sb-result{margin:0;font-size:12px;font-weight:700;color:var(--gold, #ffd166)}.ok-sb-body{overflow:auto;min-height:0;display:grid;gap:6px;align-content:start;overscroll-behavior:contain}.ok-sb-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;font-variant-numeric:tabular-nums}.ok-sb-table th,.ok-sb-table td{padding:3px 5px;text-align:right;border-bottom:1px solid var(--glass-border);overflow:hidden}.ok-sb-table thead th{position:sticky;top:0;background:#101420fa;z-index:1}.ok-sb-table thead th span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ok-sb-table th:first-child,.ok-sb-table td:first-child{width:58px;text-align:left;color:var(--text-dim);white-space:nowrap}.ok-sb-table td b{display:block;font-weight:800}.ok-sb-table td small{display:block;font-size:10px;color:var(--text-dim)}.ok-sb-table td.win b{color:var(--ok)}.ok-sb-table td.neg b{color:#ffb3b5}.ok-sb-table tbody tr{cursor:pointer}.ok-sb-table tbody tr:hover,.ok-sb-table tbody tr:focus-visible{background:#ffffff0d;outline:none}.ok-sb-table tbody tr.sel{background:#7c5cff2e}.ok-sb-table tbody tr.live th{color:var(--gold, #ffd166)}.ok-sb-table tfoot td,.ok-sb-table tfoot th{font-weight:900;font-size:13px;border-bottom:0}.ok-sb-table .lead{color:var(--ok)}.ok-sb-table td.lead{background:#3ccf7d1f}.ok-sb-crown{margin-right:3px;font-size:11px}.ok-sb-table tfoot td b{display:inline}.ok-sb-table .team0{color:#8cc6ff}.ok-sb-table .team1{color:#ff9dbb}.ok-sb-table .teamcol{background:#ffffff08}.ok-sb-hint{font-size:10px}.ok-sb-details>b{display:block;font-size:12px;margin-bottom:4px}.ok-sb-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}.ok-sb-card{padding:5px 7px;border-radius:var(--r-sm);background:#ffffff0a;border:1px solid var(--glass-border);min-width:0}.ok-sb-card.win{border-color:var(--ok)}.ok-sb-card.team0{border-left:3px solid #8cc6ff}.ok-sb-card.team1{border-left:3px solid #ff9dbb}.ok-sb-card header{display:flex;gap:6px;justify-content:space-between;font-size:12px;font-weight:800}.ok-sb-card header span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.ok-sb-card header b{font-variant-numeric:tabular-nums}.ok-sb-card ul{list-style:none;margin:3px 0 0;padding:0;display:grid;gap:2px}.ok-sb-card li{display:flex;gap:6px;justify-content:space-between;font-size:11px;line-height:1.3}.ok-sb-card li em{font-style:normal;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.ok-sb-card li.pen em{color:#ffb3b5}.ok-sb-card li.pen span{color:#ffd0d1}.ok-sb-card li.bonus em,.ok-sb-card li.win em{color:var(--ok)}@media(max-height:520px){.ok-sb{padding:6px 10px;gap:4px}.ok-sb>header b{font-size:14px}.ok-sb .btn-icon{width:26px;height:26px}.ok-sb button{padding:4px 10px}.ok-sb-table th,.ok-sb-table td{padding:2px 4px}.ok-sb-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-aspect-ratio:3/4){.ok-sb-back{padding:6px}.ok-sb{width:100%;padding:8px}.ok-sb-table{font-size:11px}.ok-sb-table th:first-child,.ok-sb-table td:first-child{width:54px}.ok-sb-table tfoot th{font-size:11px}.ok-sb-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.ok-sb-table tbody tr.void th,.ok-sb-table tbody tr.void td b{color:var(--text-dim);text-decoration:line-through;text-decoration-thickness:1px}.ok-hud{--pen-amber: #ffb547;--pen-red: var(--danger, #ff5a5f)}.ok-pen-confirm{border-color:var(--pen-amber);max-width:min(440px,calc(100% - var(--safe) * 2))}.ok-pen-confirm-head{display:flex;gap:10px;align-items:flex-start;line-height:1.35}.ok-pen-confirm>div{flex-wrap:wrap}.ok-pen-confirm small{font-weight:600}.ok-pen-pts{flex:none;padding:2px 8px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--pen-amber) 22%,transparent);color:var(--pen-amber);font-weight:900;font-variant-numeric:tabular-nums;white-space:nowrap}.ok-pen-alert{position:absolute;left:50%;top:calc(var(--safe) + 100px);transform:translate(-50%);z-index:7;width:max-content;max-width:min(460px,calc(100% - var(--safe) * 2));display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border-radius:var(--r-sm);background:#280c10f5;border:1px solid var(--pen-red);box-shadow:0 10px 30px #00000080,0 0 18px #ff5a5f59;color:#ffe3e4;font-size:13px;font-weight:700;line-height:1.3;pointer-events:auto;animation:ok-pen-in .32s var(--ease-out, ease-out)}.ok-pen-alert .ok-pen-pts{background:#ff5a5f40;color:#ffb3b5;font-size:15px}.ok-pen-alert .btn-icon{flex:none;width:26px;height:26px}@keyframes ok-pen-in{0%{opacity:0;transform:translate(-50%,-8px) scale(.94)}60%{transform:translate(-50%) scale(1.02)}}.ok-above-rack{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translate(-50%);width:max-content;max-width:min(560px,100%);display:grid;gap:4px;justify-items:center;pointer-events:none;z-index:4}.ok-taken-banner,.ok-sel-why{padding:4px 12px;border-radius:var(--r-sm);background:#101420f0;border:1px solid var(--pen-amber);color:#ffe2b0;font-size:12px;font-weight:700;line-height:1.3;text-align:center}.ok-sel-why{border-color:var(--glass-border);color:var(--text);font-weight:600}.ok-taken-banner.low{border-color:var(--pen-red);color:#ffd0d1;box-shadow:0 0 14px #ff5a5f73;animation:ok-pen-pulse 1s ease-in-out infinite}@keyframes ok-pen-pulse{50%{box-shadow:0 0 4px #ff5a5f33}}.ok-pen-marker{position:relative;display:inline-flex;margin-left:4px;vertical-align:middle}.ok-pen-marker>button{display:inline-flex;align-items:center;gap:2px;padding:0 5px!important;min-height:0;height:16px;border-radius:var(--r-pill);background:#ff5a5f47!important;color:#ffd0d1!important;font-size:10px!important;font-weight:900;line-height:1;box-shadow:none;font-variant-numeric:tabular-nums}.ok-pen-marker.mine{margin:0 auto 2px}.ok-pen-marker.mine>button{height:20px;font-size:11px!important}.ok-pen-list{position:absolute;top:calc(100% + 4px);left:0;z-index:8;width:max-content;max-width:min(300px,70vw);display:grid;gap:3px;padding:6px 8px;background:#101420f7;border:1px solid var(--pen-red);font-size:11px;font-weight:600;line-height:1.3;white-space:normal;pointer-events:auto}.ok-pen-list em{font-style:normal;font-weight:900;color:#ffb3b5}.ok-opp.right .ok-pen-list{left:auto;right:0}.ok-pen-marker.mine .ok-pen-list{top:auto;bottom:calc(100% + 4px);left:auto;right:0}.ok-mydiscard.costly{border-color:var(--pen-amber)!important;background:#ffb5472e!important}.ok-mydiscard.costly.over{background:#ffb54752!important}.ok-pen-cost{position:absolute;top:-9px;left:50%;transform:translate(-50%);padding:0 6px;border-radius:var(--r-pill);background:var(--pen-amber);color:#2b1d00;font-size:10px;font-weight:900;white-space:nowrap;pointer-events:none}.ok-flag.risk.okey{inset:-3px -2px auto auto;margin:0;width:9px;height:9px;z-index:3;box-shadow:0 0 0 2px #2b1d00d9}.ok-act-wrap .ok-act:disabled{pointer-events:none}.ok-act-wrap{cursor:help}@media(max-height:520px){.ok-pen-alert{top:calc(var(--safe) + 64px);font-size:12px;padding:5px 6px 5px 10px}.ok-taken-banner,.ok-sel-why{font-size:11px;padding:3px 8px}.ok-above-rack{max-width:min(520px,100%)}}@media(max-aspect-ratio:3/4){.ok-pen-alert{top:calc(var(--safe) + 150px)}.ok-above-rack{max-width:100%}}@media(prefers-reduced-motion:reduce){.ok-pen-alert,.ok-taken-banner.low{animation:none}}html[data-ok-layout^=portrait] .hud.okey-on,html[data-ok-layout^=portrait] .ok-hud{--ok-felt-min: 200px;--ok-btn: 36px;--ok-bottom-fixed: calc(var(--ok-btn) * 2 + 26px + 9px * var(--ok-rack-rows, 2));--tw: max(17px, min(40px, calc((var(--ok-vw, 100vw) - 2 * var(--safe) - 14px - 2px * var(--ok-rack-cols, 15)) / var(--ok-rack-cols, 15)), calc((var(--ok-vh, 100vh) - 2 * var(--safe) - 154px - var(--ok-felt-min) - var(--ok-bottom-fixed)) / (1.36 * var(--ok-rack-rows, 2)))));--th: calc(var(--tw) * 1.36);--ok-bottom-h: calc(var(--ok-bottom-fixed) + var(--th) * var(--ok-rack-rows, 2))}html[data-ok-layout=portrait-tablet] .hud.okey-on,html[data-ok-layout=portrait-tablet] .ok-hud{--ok-btn: 44px;--tw: max(17px, min(56px, calc((var(--ok-vw, 100vw) - 2 * var(--safe) - 14px - 2px * var(--ok-rack-cols, 15)) / var(--ok-rack-cols, 15))))}html[data-ok-layout^=portrait] .ok-game .ok-bottom{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"acts" "rack" "sorts";gap:var(--ok-gap);align-items:end;justify-content:stretch}html[data-ok-layout^=portrait] .ok-game .ok-bottom>.ok-rack{grid-area:rack;justify-self:center;max-width:100%}html[data-ok-layout^=portrait] .ok-game .ok-bottom>.ok-side{display:contents}html[data-ok-layout^=portrait] .ok-game .ok-side>.ok-actions{grid-area:acts;display:flex;flex-wrap:nowrap}html[data-ok-layout^=portrait] .ok-game .ok-side .ok-act-wrap{flex:1 1 0;min-width:0}html[data-ok-layout^=portrait] .ok-game .ok-side>.ok-pen-marker{grid-area:acts;justify-self:end;align-self:start}html[data-ok-layout^=portrait] .ok-game .ok-bottom>.ok-sorts{grid-area:sorts;width:auto;display:flex;gap:var(--ok-gap);align-items:stretch}html[data-ok-layout^=portrait] .ok-game .ok-sorts .ok-counter{flex:none}html[data-ok-layout^=portrait] .ok-game .ok-sorts .ok-sort{flex:1 1 0}.ok-game .ok-act .ok-act-short{display:none}html:is([data-ok-layout=portrait-phone],[data-ok-layout=land-phone]) .ok-game .ok-act .ok-act-full{display:none}html:is([data-ok-layout=portrait-phone],[data-ok-layout=land-phone]) .ok-game .ok-act .ok-act-short{display:inline}html[data-ok-layout^=portrait] .ok-game .ok-sorts .ok-sort-row{flex:1 1 auto}html[data-ok-layout^=portrait] .ok-game .ok-sorts .ok-sort-row>.ok-sort.more{flex:none}html[data-ok-layout^=portrait] .ok-game .ok-hint{display:none}html[data-ok-layout^=portrait] .ok-game .ok-above-rack{max-width:100%}html[data-ok-layout^=portrait] .hud.okey-on .chat{bottom:calc(var(--safe) + var(--ok-bottom-h) + 6px)}html[data-ok-layout^=portrait] .hud.okey-on .chat-log{max-height:34px}html[data-ok-layout^=portrait] .ok-hud .ok-game .ok-felt{top:calc(var(--safe) + 128px);bottom:calc(var(--safe) + var(--ok-bottom-h) + 26px)}html[data-ok-layout^=portrait] .ok-hud .ok-game.compact .ok-centre{bottom:calc(var(--safe) + var(--ok-bottom-h) + 26px)}html[data-ok-layout^=portrait] .ok-game .ok-opps{inset:auto;top:calc(var(--safe) + 56px);left:var(--safe);right:var(--safe);transform:none;display:flex;gap:var(--ok-gap);align-items:flex-start}html[data-ok-layout=portrait-tablet] .ok-game .ok-opps{justify-content:center}html[data-ok-layout^=portrait] .ok-game .ok-opp{position:static;transform:none;flex:0 1 var(--ok-plate-w);min-width:0;max-width:none;flex-direction:column;align-items:stretch;justify-content:flex-start}html[data-ok-layout=portrait-phone] .ok-game .ok-opp{flex:1 1 0}html[data-ok-layout^=portrait] .ok-game .ok-opp.left{order:0}html[data-ok-layout^=portrait] .ok-game .ok-opp.top{order:1}html[data-ok-layout^=portrait] .ok-game .ok-opp.right{order:2}html[data-ok-layout^=portrait] .ok-game .ok-felt .ok-zone.top,html[data-ok-layout^=portrait] .ok-game .ok-felt .ok-zone.bottom{padding-left:calc(var(--ok-slot-w) + 8px);padding-right:calc(var(--ok-slot-w) + 8px);min-height:max(var(--ok-zone-min, 0px),calc(var(--ok-slot-h) + 2px))}.ok-game{--ok-tile-rack: var(--tw, 34px);--ok-tile-meld: min(var(--mw, 26px), var(--ok-tile-rack));--ok-tile-meld-min: 22px;--ok-tile-pile: calc(var(--ok-slot-h) * .52 / 1.36);--ok-tile-centre: calc(var(--ok-tile-rack) * .66);--ok-slot-w: 64px;--ok-slot-h: 50px;--ok-gap: 4px;--ok-felt-cols: minmax(0, 1fr) minmax(0, 2.2fr) minmax(0, 1fr);--ok-radius: 10px;--ok-plate-w: 128px;--ok-btn-h: 30px;--ok-fs-1: 11px;--ok-fs-2: 13px;--ok-avatar: 26px;--ok-plate-h: 50px;--ok-plate-pad: 3px 6px;--ok-badge-h: 13px;--ok-badge-fs: 9px;--ok-badge-pad: 3px;--ok-kbd: inline-block;--ok-sort-icon: inline-block;--ok-rack-h: calc((var(--th, 46px) + 9px) * var(--ok-rack-rows, 2) + 8px);--pile-w: var(--ok-slot-w);--pile-h: var(--ok-slot-h)}.ok-game[data-layout=wide]{--ok-tile-meld-min: 26px;--ok-slot-w: 76px;--ok-slot-h: 60px;--ok-gap: 6px;--ok-plate-w: 128px;--ok-btn-h: 30px;--ok-sorts-w: 150px;--ok-avatar: 30px;--ok-plate-h: 54px}.ok-game[data-layout=land-phone]{--ok-tile-meld-min: 18px;--ok-slot-w: 50px;--ok-slot-h: 44px;--ok-felt-cols: minmax(calc(var(--ok-slot-w) + 64px), 1fr) minmax(176px, 1.6fr) minmax(calc(var(--ok-slot-w) + 64px), 1fr);--ok-gap: 4px;--ok-plate-w: 110px;--ok-tile-centre: 16px;--ok-btn-h: 28px;--ok-fs-1: 10px;--ok-fs-2: 12px;--ok-plate-h: 56px;--ok-plate-pad: 3px 5px;--ok-col-w: 120px;--ok-col-gap: 6px;--ok-band: 26px;--ok-felt-h: calc(var(--ok-vh, 100vh) - 2 * var(--safe) - var(--ok-plate-h) - var(--ok-col-gap) - var(--ok-rack-h) - var(--ok-band));--ok-centre-max: calc(var(--ok-felt-h) * 2.6);--ok-grid-inset: max(var(--safe), calc((100% - var(--ok-centre-max)) / 2 - var(--ok-col-w) - var(--ok-col-gap)));--ok-rack-tw: clamp(24px, calc(var(--ok-vw, 100vw) * .033), 34px);--tw: var(--ok-rack-tw);--th: calc(var(--tw) * 1.36);--ok-sort-icon: none;--ok-sorts-w: var(--ok-col-w);--ok-bar-l: 140px;--ok-bar-r: 232px}.ok-game[data-layout=portrait-phone]{--ok-slot-w: 64px;--ok-slot-h: 50px;--ok-gap: 4px;--ok-plate-w: 115px;--ok-tile-centre: 16px;--ok-btn-h: 36px;--ok-plate-h: 62px;--ok-plate-pad: 4px 6px;--ok-kbd: none;--ok-sort-icon: none}.ok-game[data-layout=portrait-tablet]{--ok-tile-meld-min: 30px;--ok-slot-w: 76px;--ok-slot-h: 60px;--ok-gap: 6px;--ok-plate-w: 200px;--ok-btn-h: 44px;--ok-avatar: 30px;--ok-plate-h: 62px;--ok-plate-pad: 4px 8px;--ok-kbd: none}.ok-tile.ts-rack{--w: var(--ok-tile-rack)}.ok-tile.ts-meld{--w: min(var(--mw, 26px), var(--ok-tile-rack))}.ok-tile.ts-pile{--w: var(--ok-tile-pile)}.ok-tile.ts-centre{--w: var(--ok-tile-centre)}.ok-pileslot{--seat-c: rgba(255, 255, 255, .25);position:relative;width:100%;height:100%;box-sizing:border-box;display:grid;place-items:center;overflow:hidden;border:2px solid var(--seat-c);border-radius:var(--ok-radius);background:#0a0e188c;pointer-events:auto;transition:box-shadow var(--t-fast, .12s),border-color var(--t-fast, .12s)}.ok-pileslot[data-seat="0"]{--seat-c: #ffb547}.ok-pileslot[data-seat="1"]{--seat-c: #4aa3ff}.ok-pileslot[data-seat="2"]{--seat-c: #3ccf7d}.ok-pileslot[data-seat="3"]{--seat-c: #ff6b9a}.ok-pileslot[data-state=mine]{--seat-c: #ffb547}.ok-pileslot[data-state=takeable]{cursor:pointer;box-shadow:0 0 0 2px var(--ok),0 0 12px #3ccf7d99;animation:ok-breathe 1.4s ease-in-out infinite}.ok-pileslot[data-over]{box-shadow:0 0 0 2px #ffb547,0 0 12px #ffb54799}.ok-pileslot[data-fresh]{animation:ok-pileslot-fresh .9s ease-out 2}@keyframes ok-pileslot-fresh{40%{box-shadow:0 0 0 3px var(--seat-c),0 0 14px var(--seat-c)}}.ok-pileslot-face{display:grid;place-items:center}.ok-pileslot-label+.ok-pileslot-face{margin-top:calc(var(--ok-fs-1) + 2px)}.ok-pileslot-label{position:absolute;top:2px;left:0;right:0;text-align:center;font-size:var(--ok-fs-1);font-weight:800;line-height:1.1;color:var(--ok);white-space:nowrap}.ok-pileslot-empty{display:block;width:calc(var(--ok-tile-pile) * .8);height:calc(var(--ok-tile-pile) * 1.1);border:1.5px dashed rgba(255,255,255,.28);border-radius:4px}.ok-pileslot-hint{padding-inline:4px;font-size:var(--ok-fs-1);color:#ffffffbf}.ok-pileslot-count{position:absolute;top:2px;right:3px;font-style:normal;font-size:var(--ok-fs-1);font-weight:800;color:#fffc}.ok-pileslot .ok-tile{cursor:inherit}.ok-game .ok-act,.ok-game .ok-sort{height:var(--ok-btn-h);font-size:var(--ok-fs-2)!important;min-width:0;white-space:nowrap}.ok-game .ok-act span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ok-game .ok-act kbd{display:var(--ok-kbd, inline-block)}.ok-game .ok-sort svg{display:var(--ok-sort-icon, inline-block)}.ok-game .ok-act.ghost,.ok-game .ok-sort.ghost{background:#101420d1}.ok-game .ok-actions{align-content:start;gap:var(--ok-gap)}.ok-game .ok-counter{min-height:var(--ok-btn-h);box-sizing:border-box;align-content:center;padding:2px 6px}.ok-game .ok-counter b{font-size:var(--ok-fs-2)}.ok-game .ok-counter small{font-size:var(--ok-fs-1);line-height:1.15}.ok-game .ok-plate{display:grid;grid-template-columns:var(--ok-avatar) minmax(0,1fr);grid-template-rows:auto var(--ok-badge-h);column-gap:5px;row-gap:2px;align-content:center;align-items:center;height:var(--ok-plate-h);min-height:0;box-sizing:border-box;padding:var(--ok-plate-pad)}.ok-game .ok-plate .ok-avatar{grid-row:1;grid-column:1;width:var(--ok-avatar);height:var(--ok-avatar)}.ok-game .ok-plate .ok-opp-info{grid-row:1;grid-column:2;font-size:var(--ok-fs-1);line-height:1.15;min-width:0}.ok-game .ok-plate .ok-opp-info b{font-size:var(--ok-fs-2)}.ok-game .ok-plate .ok-opp-badges{grid-row:2;grid-column:1 / -1;display:flex;flex-wrap:nowrap;align-items:center;gap:3px;height:var(--ok-badge-h);min-width:0}.ok-game .ok-plate .ok-opp-badges .ok-badge{flex:none;margin:0;padding:0 var(--ok-badge-pad);font-size:var(--ok-badge-fs);line-height:var(--ok-badge-h)}.ok-game .ok-plate .ok-opp-badges .ok-badge.open{display:inline-flex;align-items:center;gap:1px}.ok-game .ok-plate .ok-opp-badges .ok-badge.open svg{flex:none}.ok-felt .ok-zone{--ok-zone-align: center}.ok-felt .ok-zone.left{--ok-zone-align: flex-start}.ok-felt .ok-zone.right{--ok-zone-align: flex-end}.ok-felt .ok-zone .ok-zone-melds{justify-content:var(--ok-zone-align)}.ok-felt .ok-zone .ok-meld{flex-wrap:nowrap}.ok-game .ok-sorts{position:relative}html[data-ok-layout=land-phone] .ok-game .ok-bottom>.ok-sorts,html[data-ok-layout=wide] .ok-game .ok-bottom>.ok-sorts{width:var(--ok-sorts-w)}.ok-game .ok-sort-row{display:flex;gap:var(--ok-gap);min-width:0}.ok-game .ok-sort-row>.ok-sort.smart{flex:1 1 auto}.ok-game .ok-sort-row>.ok-sort.more{flex:none;width:var(--ok-btn-h);padding:0!important}.ok-game .ok-sort-row>.ok-sort.more svg{display:inline-block}.ok-game .ok-sort-pop{position:absolute;bottom:calc(100% + var(--ok-gap));right:0;z-index:4;display:grid;gap:var(--ok-gap);padding:var(--ok-gap);min-width:100%;width:max-content}.hud.okey-on,.ok-hud{--tw: clamp(26px, calc(var(--ok-vw, 100vw) * .039), 46px);--th: calc(var(--tw) * 1.36)}.ok-hud{position:absolute;inset:0;pointer-events:none;color:var(--text)}.ok-hud button,.ok-offer button{pointer-events:auto}.ok-dim{color:var(--text-dim);font-size:12px}.ok-grow{flex:1}.ok-badge{display:inline-block;margin-left:4px;padding:0 6px;border-radius:var(--r-pill);background:#3ccf7d40;color:#bff5d6;font-size:10px;font-style:normal;font-weight:800}.ok-badge.warn{background:#ff5a5f4d;color:#ffd0d1}.hud.okey-on .hud-tools,.hud.okey-on .controls-tip,.hud.okey-on .touch-tip,.hud.okey-on .interact-hint,.hud.okey-on .room-chip,.hud.okey-on .emotes-wrap,.hud.okey-on .hud-online,.hud.okey-on .act-tracker,.hud.okey-on .act-tracker-toggle,.hud.okey-on .guide-way{display:none!important}.hud.okey-on .chat{top:auto;width:168px;bottom:calc(var(--safe) + 168px)}.hud.okey-on .chat-log{max-height:72px;font-size:12px}.ok-tile{--w: var(--tw, 34px);position:relative;width:var(--w);height:calc(var(--w) * 1.36);border-radius:calc(var(--w) * .16);background:linear-gradient(180deg,#fffaf0,#f4ead2 70%,#e3d5b2);box-shadow:0 2px #c9b88f,0 3px 6px #00000059,inset 0 1px #fff;display:grid;place-items:center;font-weight:900;font-size:calc(var(--w) * .66);font-variant-numeric:tabular-nums;line-height:1;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;pointer-events:auto;transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast);flex:none}.ok-tile .n{margin-top:-16%;letter-spacing:-.02em}.ok-tile .n.two{font-size:.9em;letter-spacing:-.1em;margin-left:-.1em}.ok-tile .bar{position:absolute;bottom:17%;width:36%;height:max(2px,6%);border-radius:99px;background:currentColor}.ok-tile.c0{color:#d3202a}.ok-tile.c1{color:#d18700}.ok-tile.c2{color:#1458c8}.ok-tile.c3{color:#16181c}.ok-tile.c-1{color:#24804a}.ok-clover{width:74%;margin-top:-6%;fill:currentColor;stroke:currentColor}.ok-tile.wild{box-shadow:0 2px #c9a23f,0 0 0 2px var(--gold),0 3px 10px #ffd16699}.ok-tile .star{position:absolute;top:1px;right:2px;font-size:calc(var(--w) * .3);color:#e0a106}.ok-tile.sel{transform:translateY(-6px);box-shadow:0 2px #c9b88f,0 0 0 2px var(--accent),0 6px 14px #ff7a458c}.ok-tile.dim{opacity:.45}.ok-tile:hover{transform:translateY(-2px)}.ok-tile.sel:hover{transform:translateY(-6px)}.ok-tile:not(.ts-rack){font-size:calc(var(--w) * .64);cursor:default}.ok-tile:not(.ts-rack):hover{transform:none}.ok-ghost{position:fixed;left:0;top:0;z-index:1000;pointer-events:none}.ok-ghost>.ok-tile{transform:translate(-50%,-60%) rotate(-5deg) scale(1.08);box-shadow:0 2px #c9b88f,0 10px 18px #00000073;transition:none}.ok-tile.ok-back{background:linear-gradient(180deg,#f4ead2,#d8c79f)}.ok-menu{position:absolute;top:var(--safe);right:var(--safe);display:flex;gap:6px;align-items:center;pointer-events:auto;z-index:3}.ok-menu .btn-icon{width:30px;height:30px}.ok-chip{padding:4px 10px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);font-size:12px;font-weight:800}.ok-menu-more{position:absolute;top:38px;right:0;display:flex;gap:6px;padding:6px}.ok-menu-more+.ok-menu-pop{top:80px}.ok-menu-pop{position:absolute;top:38px;right:0;width:260px;padding:10px;display:grid;gap:8px;font-size:12px}.ok-check{display:flex;gap:6px;align-items:center;font-size:12px;font-weight:700;pointer-events:auto;cursor:pointer}.ok-offer{position:absolute;left:50%;bottom:calc(var(--safe) + 56px);transform:translate(-50%);padding:10px 14px;display:grid;gap:4px;justify-items:center;pointer-events:auto;animation:ok-pop var(--t-med) var(--ease-out)}.ok-offer-actions{display:flex;gap:6px}@keyframes ok-pop{0%{transform:translate(-50%) scale(.9);opacity:0}}.ok-lobby,.ok-score-board{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(660px,calc(100% - 2 * var(--safe)));max-height:calc(100% - 2 * var(--safe) - 40px);margin-top:18px;display:flex;flex-direction:column;gap:8px;padding:10px 12px;pointer-events:auto}.ok-lobby header,.ok-score-board header,.ok-lobby footer,.ok-score-board footer{display:flex;gap:8px;align-items:center}.ok-lobby footer,.ok-score-board footer{flex-wrap:wrap}.ok-lobby header b,.ok-score-board header b{font-size:16px}.ok-lobby button,.ok-score-board button{padding:6px 12px;font-size:13px}.ok-lobby-body{display:grid;grid-template-columns:200px 1fr;gap:10px;overflow:auto;min-height:0}.ok-lobby-left{display:grid;gap:8px;align-content:start}.ok-seats{display:grid;grid-template-columns:1fr 1fr;gap:6px}.ok-seat{position:relative;min-height:54px;padding:6px 6px 6px 22px;border-radius:var(--r-sm);background:var(--glass-light);border:1px solid var(--glass-border);display:grid;align-content:center;font-size:12px}.ok-seat b{display:flex;gap:3px;align-items:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ok-seat small{color:var(--text-dim);font-size:10px}.ok-seat.ready{border-color:#3ccf7db3;background:#3ccf7d24}.ok-seat.mine{box-shadow:0 0 0 2px var(--accent) inset}.ok-seat.team0{border-left:4px solid #4aa3ff}.ok-seat.team1{border-left:4px solid #ff6b9a}.ok-seat-n{position:absolute;left:6px;top:6px;font-weight:900;color:var(--gold)}.ok-crown{color:var(--gold);flex:none}.ok-sit{padding:4px 8px!important;font-size:11px!important}.ok-settings{display:grid;gap:4px;align-content:start}.ok-presets{display:grid;grid-template-columns:1fr 1fr;gap:4px}.ok-preset{display:grid;gap:1px;text-align:left;padding:5px 8px!important;border-radius:10px;background:#00000040;box-shadow:inset 0 0 0 1px #ffffff14;color:var(--text)}.ok-preset b{font-size:12px}.ok-preset small{font-size:10px;font-weight:600;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ok-preset.on{background:#ffd16629;box-shadow:inset 0 0 0 2px var(--gold)}.ok-preset:disabled{cursor:default;filter:none;opacity:.55}.ok-preset.on:disabled{opacity:1}.ok-adv-toggle{justify-self:start;padding:2px 6px!important;font-size:11px!important;box-shadow:none}.ok-adv{display:grid;gap:4px}.ok-row{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.ok-row>span:first-child{width:104px;flex:none;color:var(--text-dim)}.ok-seg button,.ok-timer-ctl button{padding:3px 8px!important;font-size:11px!important;border-radius:var(--r-pill);box-shadow:none}.ok-seg button:disabled,.ok-timer-ctl :disabled{cursor:default;filter:none;opacity:.85}.ok-seg button.ghost:disabled{opacity:.5}.ok-timer-ctl{display:flex;gap:6px;align-items:center;pointer-events:auto}.ok-timer-ctl input{width:110px;accent-color:var(--accent)}.ok-score-board table{width:100%;border-collapse:collapse;font-size:12px}.ok-score-board th,.ok-score-board td{padding:3px 6px;text-align:right;border-bottom:1px solid var(--glass-border)}.ok-score-board th:first-child,.ok-score-board td:first-child{text-align:left;color:var(--text-dim)}.ok-score-board td.win{color:var(--ok);font-weight:900}.ok-score-board td.neg{color:#ffb3b5}.ok-score-board tr.total td{font-weight:900;font-size:13px}.ok-score-board th.team0{color:#8cc6ff}.ok-score-board th.team1{color:#ff9dbb}.ok-game{position:absolute;inset:0}.ok-opps{position:absolute;top:calc(var(--safe) + 38px);left:var(--safe);right:var(--safe);display:flex;justify-content:space-between;gap:6px}.ok-opp{position:relative;display:flex;gap:6px;align-items:center;padding:4px 6px;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);transition:box-shadow var(--t-med);min-width:0}.ok-opp.turn{box-shadow:0 0 0 2px var(--accent),0 0 18px #ff7a4599}.ok-opp.team0{border-color:#4aa3ff}.ok-opp.team1{border-color:#ff6b9a}.ok-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));flex:none}.ok-opp-info{display:grid;font-size:11px;line-height:1.2;min-width:0}.ok-opp-info b{font-size:12px;max-width:96px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ok-score{color:var(--gold);font-weight:900}.ok-arrow{position:absolute;bottom:-14px;left:50%;font-size:12px;color:var(--gold);transform:translate(-50%) rotate(90deg)}.ok-discard{pointer-events:auto;border-radius:6px;padding:2px}.ok-discard.can{cursor:pointer;box-shadow:0 0 0 2px var(--ok);animation:ok-breathe 1.4s ease-in-out infinite}.ok-discard.can .ok-tile{cursor:grab}@keyframes ok-breathe{50%{box-shadow:0 0 0 2px var(--ok),0 0 12px #3ccf7db3}}.ok-slot-empty.sm{width:calc(var(--tw) * .66);height:calc(var(--tw) * .9);border-radius:5px;border:1px dashed var(--glass-border)}.ok-timer{position:relative;width:30px;height:30px;flex:none}.ok-timer svg{width:100%;height:100%;transform:rotate(-90deg)}.ok-timer circle{fill:none;stroke-width:4}.ok-timer .track{stroke:#ffffff26}.ok-timer .bar{stroke:var(--ok);stroke-linecap:round;transition:stroke-dasharray .25s linear}.ok-timer b{position:absolute;inset:0;display:grid;place-items:center;font-size:11px}.ok-centre{position:absolute;top:calc(var(--safe) + 92px);right:var(--safe);display:flex;gap:8px;align-items:center;padding:4px 10px;border-radius:var(--r-md);background:#1218268c;border:1px solid var(--glass-border)}.ok-mini{display:grid;justify-items:center;font-size:9px;color:var(--text-dim)}.ok-pile{display:grid;justify-items:center;padding:4px 8px;background:var(--glass-light);box-shadow:0 0 0 1px var(--glass-border) inset}.ok-pile.can{background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));animation:ok-breathe 1.4s ease-in-out infinite;cursor:grab}.ok-pile:disabled{cursor:default;filter:none}.ok-yourturn{font-weight:900;color:var(--gold);font-size:13px}.ok-turnof{font-size:12px;color:var(--text-dim)}.ok-melds{position:absolute;top:calc(var(--safe) + 150px);bottom:calc(var(--safe) + var(--th) * 2 + 36px);left:calc(var(--safe) + 176px);right:calc(var(--safe) + 8px);overflow-y:auto;display:grid;align-content:start;gap:4px;pointer-events:auto;scrollbar-width:thin}.ok-melds.empty{pointer-events:none}.ok-meld-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ok-meld-owner{font-size:10px;font-weight:800;color:var(--text-dim);width:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ok-meld-row.mine .ok-meld-owner{color:var(--gold)}.ok-meld{display:flex;gap:1px;padding:2px;border-radius:6px;background:#12182680}.ok-meld.over{box-shadow:0 0 0 2px var(--ok)}.ok-bottom{position:absolute;left:var(--safe);right:var(--safe);bottom:var(--safe);display:flex;gap:6px;align-items:flex-end;justify-content:center}.ok-rack{padding:4px 6px 6px;border-radius:12px;background:linear-gradient(180deg,#b0703a,#8a4f22);box-shadow:0 6px 18px #00000073,inset 0 1px #ffffff40;display:grid;gap:3px;pointer-events:auto}.ok-rack-row{display:flex;gap:1px;padding-bottom:3px;border-bottom:3px solid rgba(0,0,0,.25)}.ok-slot{position:relative;width:var(--tw);height:var(--th);border-radius:5px}.ok-slot.over{background:#ffd16659}.ok-flag{position:absolute;left:50%;bottom:-4px;width:6px;height:6px;margin-left:-3px;border-radius:50%;pointer-events:none}.ok-flag.lay{background:var(--ok)}.ok-flag.must{background:var(--danger)}.ok-sorts,.ok-side{display:grid;gap:4px;pointer-events:auto;width:104px;flex:none}.ok-counter{display:grid;justify-items:center;padding:2px 6px;border-radius:var(--r-sm);background:var(--glass);border:1px solid var(--glass-border);line-height:1.1}.ok-counter b{font-size:15px}.ok-counter b.ok{color:var(--ok)}.ok-counter small{font-size:9px;color:var(--text-dim)}.ok-sort{height:22px;padding:0 6px!important;font-size:11px!important;justify-content:center}.ok-actions{display:grid;gap:3px}.ok-act-wrap{display:block}.ok-act{width:100%;height:22px;padding:0 6px!important;font-size:10.5px!important;gap:4px;justify-content:flex-start}.ok-act span{flex:1;text-align:left}.ok-act kbd{font:inherit;font-size:9px;padding:0 4px;border-radius:4px;background:#00000040}.ok-act:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.6)}.ok-mydiscard{height:calc(var(--th) + 4px);border-radius:var(--r-sm);border:2px dashed rgba(255,255,255,.35);display:grid;place-items:center;font-size:11px;color:var(--text-dim);background:#12182673}.ok-mydiscard.over{border-color:var(--accent);background:var(--accent-soft)}.ok-hint{position:absolute;bottom:2px;left:50%;transform:translate(-50%);font-size:9px;color:#ffffffb3;text-shadow:0 1px 2px rgba(0,0,0,.6);white-space:nowrap}.ok-game.compact .ok-opps{top:calc(var(--safe) + 38px)}.ok-spec{position:absolute;left:calc(var(--safe) + 176px);right:var(--safe);bottom:var(--safe);display:grid;gap:4px;justify-items:start}.ok-spec-rack{padding:4px 6px;border-radius:var(--r-sm);background:var(--glass)}.ok-spec-rack small{font-size:10px;color:var(--gold)}.ok-spec-rack div{display:flex;flex-wrap:wrap;gap:1px}.ok-toasts{position:absolute;top:calc(var(--ok-toast-top, 40vh) - var(--safe-top));left:0;right:0;display:grid;gap:4px;justify-items:center;pointer-events:none;z-index:5}.ok-toast:not(:last-child){display:none}.ok-game .turn-banner.ok-band{position:fixed;top:var(--ok-toast-top, 30%);padding:2px 12px 2px 10px;font-size:13px;line-height:18px;z-index:8}.ok-game .turn-banner.ok-band .turn-banner-dot{width:7px;height:7px}.ok-toast{max-width:min(460px,88vw);box-sizing:border-box;text-align:center;line-height:18px;padding:2px 12px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font-weight:800;font-size:13px;animation:ok-pop2 var(--t-med) var(--ease-out)}.ok-toast{border-radius:var(--r-sm)}.ok-toast.bad{border-color:var(--danger);color:#ffd0d1}@keyframes ok-pop2{0%{transform:scale(.85);opacity:0}}@media(max-height:420px){.ok-lobby-body{grid-template-columns:180px 1fr}.ok-row>span:first-child{width:92px}}.ok-hud button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.5)}.ok-seat.picked{box-shadow:0 0 0 2px var(--gold) inset}.ok-swap{position:absolute;right:4px;top:4px;width:20px;height:20px;padding:0!important;display:grid;place-items:center;border-radius:var(--r-pill)}.ok-meld{position:relative}.ok-swapokey{position:absolute;top:-9px;right:-4px;display:inline-flex;align-items:center;gap:2px;padding:1px 6px!important;font-size:10px!important;border-radius:var(--r-pill);background:var(--gold);color:#3a2a00;box-shadow:0 2px 6px #0006;z-index:2}.ok-game.myturn .ok-rack{box-shadow:0 0 0 2px var(--gold),0 0 22px #ffd1668c,inset 0 1px #ffffff40;transition:box-shadow var(--t-med)}.ok-discard{position:relative}.ok-discard-history{display:none;position:absolute;top:calc(100% + 6px);right:0;z-index:6;width:max-content;max-width:220px;flex-wrap:wrap;gap:2px;padding:4px;border-radius:var(--r-sm);background:var(--glass-strong);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm);pointer-events:none}.ok-discard:hover .ok-discard-history{display:flex}.ok-opp:first-child .ok-discard-history{right:auto;left:0}.ok-seat.bot{background:#7c5cff24;border-color:#7c5cff8c}.ok-bot-ic{color:#b7a6ff;flex:none}.ok-empty-acts{display:grid;gap:3px}.ok-empty-acts .ok-sit{white-space:nowrap;justify-content:flex-start;padding:2px 6px!important;font-size:10.5px!important}.ok-addbot{color:#cfc4ff!important}.ok-levels{display:flex;flex-wrap:wrap;gap:2px;margin-top:2px}.ok-lvl{padding:1px 5px!important;font-size:9.5px!important;font-weight:800;font-style:normal;border-radius:var(--r-pill);background:#0000004d;color:var(--text-dim);box-shadow:none;line-height:1.5}.ok-lvl.on.easy{background:#3ccf7d4d;color:#c9ffe0}.ok-lvl.on.normal{background:#ffd1664d;color:#fff1c9}.ok-lvl.on.hard{background:#ff5c5c52;color:#ffd6d6}.ok-levels.add .ok-lvl.easy{color:#8ff0b9}.ok-levels.add .ok-lvl.normal{color:#ffd166}.ok-levels.add .ok-lvl.hard{color:#ff8b8b}.ok-lvl.x{display:inline-flex;align-items:center}.ok-take{margin-left:4px;padding:0 5px!important;font-size:9.5px!important}.ok-adv-bar{display:flex;align-items:center;gap:4px}.ok-mini{display:inline-flex;align-items:center;gap:3px;padding:2px 6px!important;font-size:10.5px!important}.ok-chip.off{font-size:10px;font-weight:800;padding:1px 6px;border-radius:var(--r-pill);background:#7c5cff40;color:#ddd5ff;white-space:nowrap}.ok-adv-hint{margin:-2px 0 2px 112px;font-size:10px;line-height:1.25;color:var(--text-dim)}.ok-avatar.bot{background:#7c5cff73;color:#fff}.ok-seats{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ok-seat{min-width:0}.ok-seat .ok-levels .ok-lvl{padding:1px 4px!important;font-size:9px!important}.ok-levels{flex-wrap:nowrap;align-items:center}.ok-lvl{width:auto!important;white-space:nowrap}.ok-seat b{padding-right:18px}.ok-empty-acts .ok-sit{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis}.ok-seat .ok-swap{width:16px;height:16px;right:2px;top:2px;opacity:.75}.ok-timer.warn .bar{stroke:#ffb547}.ok-timer.warn b{color:var(--gold)}.ok-timer.low .bar{stroke:var(--danger)}.ok-timer.low b{color:#ffd0d1}.ok-game.myturn .ok-rack{animation:turn-glow 1.8s ease-in-out infinite}.ok-game.myturn .ok-centre .ok-timer{filter:drop-shadow(0 0 6px rgba(255,209,102,.6))}.ok-game.turn-warn .ok-centre .ok-timer{animation:turn-beat 1s ease-in-out infinite}.ok-game.turn-low .ok-centre .ok-timer{animation-duration:.5s;filter:drop-shadow(0 0 7px rgba(255,90,95,.8))}.ok-game.turn-low .ok-rack{box-shadow:0 0 0 2px var(--danger),0 0 24px #ff5a5f8c,inset 0 1px #ffffff40;animation:turn-shake .45s ease-in-out 1}.ok-opp .ok-plate{transition:box-shadow var(--t-med),transform var(--t-med)}.ok-opp.turn .ok-plate{transform:translateY(-1px) scale(1.03)}@media(prefers-reduced-motion:reduce){.ok-game.myturn .ok-rack,.ok-game.turn-warn .ok-centre .ok-timer,.ok-game.turn-low .ok-rack{animation:none}.ok-opp.turn .ok-plate{transform:none}}.hud.okey-on .guide-card{position:fixed!important;inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;width:min(420px,calc(100vw - 32px))!important;max-height:calc(100vh - 32px);overflow:auto;z-index:60;box-shadow:0 0 0 100vmax #0608108c,0 12px 32px #00000080}html[data-ok-layout] .nametag,html[data-ok-layout] .market-sign,html[data-ok-layout] .shop-sign,html[data-ok-layout] .fish-sign,html[data-ok-layout] .race-sign,html[data-ok-layout] .tower-sign,html[data-ok-layout] .rps-sign,html[data-ok-layout] .rps-sign-tag,html[data-ok-layout] .lux-tagwrap,html[data-ok-layout] .look-hint{display:none!important}.ok-felt{position:absolute;top:calc(var(--safe) + 92px);bottom:calc(var(--safe) + var(--th) * 2 + 40px);left:calc(var(--safe) + 112px);right:calc(var(--safe) + 112px);margin-inline:auto;max-width:1040px;display:grid;grid-template-areas:". top ." "left mid right" ". bottom .";grid-template-columns:minmax(0,1fr) minmax(0,2.4fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:4px 8px;padding:6px 10px;border-radius:22px;background:radial-gradient(ellipse at 50% 45%,#2e7d50db,#164a2ee6 75%),#1d5a3a;border:3px solid #8a4f22;box-shadow:0 10px 28px #0006,inset 0 0 26px #00000059;pointer-events:auto;--tw: clamp(26px, calc(var(--ok-vw, 100vw) * .034), 44px)}.ok-zone{min-width:0;min-height:0;display:grid;align-content:start;gap:2px;overflow:auto;scrollbar-width:thin}.ok-zone.top{grid-area:top;justify-items:center}.ok-zone.bottom{grid-area:bottom;justify-items:center;align-content:end}.ok-zone.left{grid-area:left;justify-items:start;align-content:center}.ok-zone.right{grid-area:right;justify-items:end;align-content:center}.ok-zone-name{font-size:10px;font-weight:800;color:#fff9;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ok-zone.turn .ok-zone-name{color:var(--gold)}.ok-zone.bottom .ok-zone-name{order:2}.ok-zone.empty .ok-zone-melds{display:none}.ok-zone-melds{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.ok-zone.left .ok-zone-melds{justify-content:flex-start}.ok-zone.right .ok-zone-melds{justify-content:flex-end}.ok-felt .ok-meld{background:#00000038;padding:3px;gap:1px}.ok-felt-mid{grid-area:mid;display:grid;place-items:center;align-content:center;gap:4px;min-height:0}.ok-felt .ok-centre{position:static;background:#0003;border-color:#ffffff1a}.ok-game.compact .ok-centre{top:calc(var(--safe) + 92px)}.ok-rack-row{gap:2px}.ok-rack{padding:5px 8px 6px}.ok-sorts,.ok-side{width:92px}.ok-act,.ok-sort{height:24px}.ok-act.ok-glow{background:linear-gradient(180deg,var(--gold),#e0a93a);color:#3a2a00;animation:ok-breathe 1.4s ease-in-out infinite}.ok-assists{position:absolute;top:38px;right:0;width:280px;max-height:calc(100vh - var(--safe) * 2 - 48px);overflow-y:auto;padding:10px 12px;display:grid;gap:8px;font-size:12px;z-index:4}.ok-assists header{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.ok-assist-row{display:flex;justify-content:space-between;align-items:center;gap:10px;cursor:pointer}.ok-assist-row.col{display:grid;gap:4px;cursor:default}.ok-assist-row span{display:grid;font-weight:700}.ok-assist-row small{font-weight:400;font-size:10px;color:var(--text-dim)}.ok-switch{appearance:none;width:34px;height:20px;flex:none;border-radius:var(--r-pill);background:var(--glass-light);border:1px solid var(--glass-border);position:relative;cursor:pointer;pointer-events:auto;transition:background var(--t-fast)}.ok-switch:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform var(--t-fast)}.ok-switch:checked{background:var(--ok)}.ok-switch:checked:after{transform:translate(14px)}.ok-seg{display:flex;gap:2px;padding:2px;border-radius:var(--r-pill);background:#00000040}.ok-seg button{flex:1;height:26px;padding:0 6px!important;font-size:11px!important;border-radius:var(--r-pill);justify-content:center}.ok-seg button.ghost{background:transparent;box-shadow:none}.ok-confirm{position:absolute;left:50%;top:calc(var(--safe) + 100px);transform:translate(-50%);max-width:min(420px,calc(100% - var(--safe) * 2));padding:10px 14px;display:grid;gap:8px;font-size:13px;font-weight:700;border-color:var(--danger);background:#101420f5;box-shadow:0 10px 30px #0000008c;pointer-events:auto;z-index:6;animation:ok-pop2 var(--t-med) var(--ease-out)}.ok-confirm.good{border-color:var(--ok)}.ok-confirm>div{display:flex;justify-content:flex-end;gap:8px}.ok-confirm button{min-height:32px}.ok-confirm button.danger{background:var(--danger)}html[data-ok-layout=wide] .ok-felt{top:calc(var(--safe) + 110px);bottom:calc(var(--safe) + max(var(--th) * 2 + 52px,240px));left:calc(var(--safe) + 132px);right:calc(var(--safe) + 132px)}html[data-ok-layout=wide] .ok-sorts,html[data-ok-layout=wide] .ok-side{width:120px}html[data-ok-layout=wide] .ok-zone-name{font-size:12px}html[data-ok-layout=land-phone] .ok-hint{display:none}.ok-opp.s0,.ok-mydiscard{--seat-c: #ffb547}.ok-opp.s1{--seat-c: #4aa3ff}.ok-opp.s2{--seat-c: #3ccf7d}.ok-opp.s3{--seat-c: #ff6b9a}.ok-opp.team0{--seat-c: #4aa3ff}.ok-opp.team1{--seat-c: #ff6b9a}.ok-game .ok-opps{position:absolute;inset:0;display:block;pointer-events:none}.ok-game .ok-opp{position:absolute;display:flex;gap:4px;align-items:center;padding:0;background:none;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:2}.ok-opp.top{top:calc(var(--safe) + 36px);left:50%;transform:translate(-50%);flex-direction:row-reverse;max-width:min(300px,calc(100% - 2 * var(--safe) - 240px))}.ok-opp.left,.ok-opp.right{top:calc(var(--safe) + 84px);width:100px;flex-direction:column;align-items:stretch}.ok-opp.left{left:var(--safe)}.ok-opp.right{right:var(--safe);flex-direction:column-reverse}.ok-opp.bottom{bottom:var(--safe);left:var(--safe)}.ok-plate{display:flex;gap:5px;align-items:center;min-width:0;padding:4px 6px;border-radius:var(--r-md);background:#101420c7;border:1px solid var(--glass-border);border-left:3px solid var(--seat-c);box-shadow:var(--shadow-sm);pointer-events:auto;transition:box-shadow var(--t-med)}.ok-opp.turn .ok-plate{box-shadow:0 0 0 2px var(--accent),0 0 16px #ff7a4599}.ok-plate .ok-avatar{position:relative;width:26px;height:26px;font-size:12px;box-shadow:0 0 0 2px var(--seat-c)}.ok-plate .ok-avatar .ok-timer{position:absolute;inset:-5px;width:auto;height:auto}.ok-plate .ok-avatar .ok-timer b{display:none}.ok-plate .ok-opp-info{display:grid;min-width:0;font-size:10px;line-height:1.25}.ok-plate .ok-opp-info b{font-size:11.5px;max-width:100%;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ok-opp-badges{display:flex;flex-wrap:wrap;gap:2px}.ok-opp-badges .ok-badge{margin:0;padding:0 4px;font-size:9px;font-style:normal;white-space:nowrap}.ok-badge.bot{background:#7c5cff4d;color:#ddd5ff}.ok-game .ok-discard{position:relative;display:grid;justify-items:center;gap:1px;padding:2px 5px 3px;border-radius:var(--r-sm);background:#101420b3;border:1px solid color-mix(in srgb,var(--seat-c) 70%,transparent);pointer-events:auto;cursor:pointer;--tw: 22px;flex:none}.ok-opp.left .ok-discard,.ok-opp.right .ok-discard{justify-self:center;align-self:center}.ok-pile-tag{max-width:84px;font-size:9px;font-weight:800;color:var(--seat-c);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ok-discard.can .ok-pile-tag{color:var(--ok)}.ok-discard.takeable{border-style:dashed}.ok-pile-n{position:absolute;top:12px;right:-6px;min-width:14px;padding:0 3px;border-radius:var(--r-pill);background:var(--seat-c);color:#10141f;font-size:9px;font-weight:900;font-style:normal;text-align:center}.ok-discard.fresh .ok-tile,.ok-mydiscard.fresh .ok-tile{animation:ok-fresh 1.6s ease-out 2}@keyframes ok-fresh{0%{box-shadow:0 0 0 3px var(--gold),0 0 14px #ffd166e6;transform:translateY(-6px) scale(1.15)}40%{transform:none}to{box-shadow:0 0 0 0 transparent}}.ok-thrown{position:absolute;left:50%;bottom:100%;padding:1px 7px;border-radius:var(--r-pill);background:var(--seat-c);color:#10141f;font-size:10px;font-weight:900;white-space:nowrap;pointer-events:none;z-index:8;animation:ok-float 3.2s ease-out forwards}@keyframes ok-float{0%{opacity:0;transform:translate(-50%,8px)}12%{opacity:1;transform:translate(-50%,-2px)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-10px)}}.ok-game .ok-discard-history{display:none;position:absolute;z-index:9;width:max-content;max-width:200px;padding:5px 6px;gap:3px;border-radius:var(--r-sm);background:#101420f5;border:1px solid var(--seat-c);pointer-events:none}.ok-discard-history small{font-size:10px;font-weight:700;line-height:1.3;white-space:normal}.ok-discard-history>div{display:flex;flex-wrap:wrap;gap:1px}.ok-game .ok-discard:hover .ok-discard-history,.ok-game .ok-discard.open .ok-discard-history{display:grid}.ok-discard.left .ok-discard-history{left:calc(100% + 6px);top:0}.ok-discard.right .ok-discard-history{right:calc(100% + 6px);top:0;left:auto}.ok-discard.top .ok-discard-history{top:calc(100% + 6px);right:0;left:auto}.ok-discard.bottom .ok-discard-history{bottom:calc(100% + 6px);left:0;top:auto}.ok-mydiscard{position:relative;border-color:color-mix(in srgb,var(--seat-c) 60%,transparent)}.ok-game .ok-felt{top:calc(var(--safe) + 84px)}.ok-game .ok-zone.left,.ok-game .ok-zone.right,.ok-game .ok-zone.top{min-height:var(--ok-zone-min, 0px)}.ok-game.compact .ok-centre{position:absolute;top:calc(var(--safe) + 90px);left:50%;right:auto;transform:translate(-50%);z-index:2}html[data-ok-layout=wide] .ok-opp.left,html[data-ok-layout=wide] .ok-opp.right{top:calc(var(--safe) + 104px);width:var(--ok-plate-w)}html[data-ok-layout=wide] .ok-game .ok-opp.top{top:calc(var(--safe) + 44px);width:var(--ok-plate-w);max-width:none}html[data-ok-layout=wide] .ok-game .ok-felt{top:calc(var(--safe) + 104px);left:calc(var(--safe) + 140px);right:calc(var(--safe) + 140px)}html[data-ok-layout=land-phone] .ok-opp.left,html[data-ok-layout=land-phone] .ok-opp.right{top:calc(var(--safe) + 74px)}html[data-ok-layout=land-phone] .ok-opp.top{top:var(--safe);align-items:flex-start}html[data-ok-layout=land-phone] .ok-felt .ok-mini small,html[data-ok-layout=land-phone] .ok-felt .ok-yourturn,html[data-ok-layout=land-phone] .ok-felt .ok-turnof{display:none}.ok-pile-n{top:-6px;right:-6px}.ok-felt .ok-zone.empty .ok-zone-name{display:none}.ok-felt .ok-felt-mid{position:relative;z-index:1}.ok-act span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ok-opp.top{width:max-content;justify-content:center}.ok-pile-n{top:auto;bottom:-4px;right:-7px}.ok-game .ok-felt{grid-template-rows:minmax(0,auto) minmax(46px,1fr) minmax(0,auto)}.ok-felt .ok-centre{flex-wrap:nowrap}.ok-game.compact .ok-opps{top:0}.ok-discard.left .ok-thrown,.ok-discard.right .ok-thrown{bottom:auto;top:50%;animation-name:ok-float-side}.ok-discard.left .ok-thrown{left:calc(100% + 4px)}.ok-discard.right .ok-thrown{left:auto;right:calc(100% + 4px)}.ok-discard.top .ok-thrown{bottom:auto;top:calc(100% + 4px)}@keyframes ok-float-side{0%{opacity:0;transform:translateY(-50%) scale(.8)}12%{opacity:1;transform:translateY(-50%)}80%{opacity:1}to{opacity:0;transform:translateY(-50%)}}.ok-game .ok-zone.left,.ok-game .ok-zone.right{align-content:safe center}.ok-felt .ok-zone.top{position:static;display:grid;right:auto;gap:2px;align-items:normal;justify-content:normal}.ok-game .ok-opp.top{right:auto;align-items:flex-start;flex-wrap:nowrap;gap:4px}.ok-felt .ok-meld{transition:opacity var(--t-fast, .12s),box-shadow var(--t-fast, .12s)}.ok-felt .ok-meld.fit{box-shadow:0 0 0 2px var(--ok),0 0 12px #50dc8c73}.ok-felt .ok-meld.nofit{opacity:.45}.ok-felt .ok-meld.nofit.over{opacity:.8;box-shadow:0 0 0 2px var(--danger)}.ok-flag.risk{background:var(--gold)}.ok-drag-why{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;max-width:min(420px,86%);padding:6px 12px;border-radius:var(--r-sm);background:var(--glass-strong);border:1px solid var(--danger);color:#ffd0d1;font-size:12px;font-weight:700;text-align:center;pointer-events:none}.ok-counter.opened small{max-width:70px;text-align:center}.ok-game .ok-felt{grid-template-areas:"left top right" "left mid right" "left bottom right";grid-template-columns:var(--ok-felt-cols);grid-template-rows:minmax(auto,1fr) auto minmax(auto,1fr);gap:4px 6px}.ok-game .ok-zone,.ok-game .ok-zone.left,.ok-game .ok-zone.right,.ok-game .ok-zone.top,.ok-game .ok-zone.bottom{display:flex;flex-direction:column;min-height:var(--ok-zone-min, 0px);overflow:hidden;gap:1px;border-radius:10px;padding:2px 3px;background:#00000014;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--zone-c, #fff) 22%,transparent)}.ok-game .ok-zone.bottom{flex-direction:column-reverse}.ok-felt .ok-zone.s0{--zone-c: #ffb547}.ok-felt .ok-zone.s1{--zone-c: #4aa3ff}.ok-felt .ok-zone.s2{--zone-c: #3ccf7d}.ok-felt .ok-zone.s3{--zone-c: #ff6b9a}.ok-game .ok-zone.empty{background:transparent}.ok-game .ok-zone .ok-zone-name{flex:none;height:13px;line-height:13px;font-size:10px;color:color-mix(in srgb,var(--zone-c, #fff) 70%,#fff)}.ok-game .ok-zone.turn .ok-zone-name{color:var(--gold)}.ok-game .ok-zone.empty .ok-zone-name{display:block;opacity:.45}.ok-game .ok-zone .ok-zone-melds,.ok-game .ok-zone.empty .ok-zone-melds{display:flex;flex:1 1 0;min-height:0;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:5px;overflow:hidden}.ok-game .ok-zone.bottom .ok-zone-melds{align-content:flex-end;justify-content:center}.ok-game .ok-zone.top .ok-zone-melds{justify-content:center}.ok-game .ok-zone.left .ok-zone-melds{justify-content:flex-start;align-content:center}.ok-game .ok-zone.right .ok-zone-melds{justify-content:flex-end;align-content:center}.ok-game .ok-zone.left{align-items:flex-start}.ok-game .ok-zone.right{align-items:flex-end}.ok-game .ok-zone .ok-zone-melds{align-self:stretch}.ok-felt .ok-zone .ok-meld{box-sizing:border-box;flex-wrap:nowrap;flex:none;padding:3px;gap:1px;min-width:22px;min-height:22px}.ok-felt .ok-zone .ok-tile.ts-meld{font-size:calc(var(--w) * .7);box-shadow:0 1px #c9b88f,0 2px 3px #0000004d}.ok-felt .ok-zone.tiny .ok-tile.ts-meld{font-size:calc(var(--w) * .78);border-radius:2px}.ok-felt .ok-zone.tiny .ok-tile .n{margin-top:-10%}.ok-felt .ok-zone.tiny .ok-tile .star{display:none}.ok-felt .ok-zone.tiny .ok-tile .bar{bottom:10%;width:60%;height:2px}.ok-felt .ok-zone.tiny .ok-tile.wild{box-shadow:0 0 0 1.5px var(--gold)}.ok-game .ok-felt-mid{grid-area:mid}.ok-game .ok-zone.tight .ok-zone-melds{gap:3px}.ok-felt .ok-zone.tight .ok-meld{padding:2px;min-width:16px;min-height:16px}.ok-felt .ok-zone.tiny .ok-swapokey{top:-6px;right:-3px;padding:0 3px!important;font-size:8px!important}.ok-felt .ok-zone.tiny .ok-swapokey svg{display:none}html[data-ok-layout=land-phone] .ok-game .ok-zone .ok-zone-name,html[data-ok-layout=land-phone] .ok-game .ok-zone.empty .ok-zone-name{display:none}html[data-ok-layout=land-phone] .ok-game .ok-felt{padding:4px 6px;gap:3px 4px}html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-centre{padding:1px 6px;gap:6px}html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-centre .ok-pile{padding-block:0}html[data-ok-layout=land-phone] .ok-game .ok-felt-mid>.ok-dim{display:none}html[data-ok-layout=land-phone] .ok-game .ok-zone{padding:2px}html[data-ok-layout^=portrait] .ok-game .ok-felt{left:var(--safe);right:var(--safe);grid-template-areas:"top top" "left right" "mid mid" "bottom bottom";grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(auto,var(--ok-fr-top, 1fr)) minmax(auto,var(--ok-fr-side, 1.2fr)) auto minmax(auto,var(--ok-fr-bottom, 1fr));padding:4px 6px}html[data-ok-layout^=portrait] .ok-game .ok-zone.left .ok-zone-melds,html[data-ok-layout^=portrait] .ok-game .ok-zone.right .ok-zone-melds{align-content:flex-start}html[data-ok-layout^=portrait] .ok-game .ok-zone .ok-zone-name,html[data-ok-layout^=portrait] .ok-game .ok-zone.empty .ok-zone-name{display:none}html[data-ok-layout^=portrait] .ok-game .ok-felt .ok-centre{padding:1px 6px;gap:6px}html[data-ok-layout^=portrait] .ok-game .ok-felt .ok-centre .ok-pile{padding-block:0}html[data-ok-layout^=portrait] .ok-felt .ok-mini small,html[data-ok-layout^=portrait] .ok-felt .ok-yourturn,html[data-ok-layout^=portrait] .ok-felt .ok-turnof,html[data-ok-layout^=portrait] .ok-game .ok-felt-mid>.ok-dim{display:none}html[data-ok-layout^=portrait] .ok-game .ok-zone{padding:2px}html[data-ok-layout=land-phone] .ok-game .ok-felt{top:calc(var(--safe) + var(--ok-plate-h) + 6px);left:calc(var(--safe) + 148px);right:calc(var(--safe) + 148px);bottom:calc(var(--safe) + var(--th) * 2 + 50px)}html:not([data-ok-layout^=portrait]) .ok-game .ok-opp.top{gap:18px}html:not([data-ok-layout^=portrait]) .ok-game .ok-opp.right{flex-direction:column}html[data-ok-layout=wide] .ok-game .ok-felt{top:calc(var(--safe) + 112px)}.ok-felt>.ok-corner{position:absolute;width:var(--ok-slot-w);height:var(--ok-slot-h);z-index:2;display:grid}.ok-felt>.ok-corner.tl{top:6px;left:6px}.ok-felt>.ok-corner.tr{top:6px;right:6px}.ok-felt>.ok-corner.bl{bottom:6px;left:6px}.ok-felt>.ok-corner.br{bottom:6px;right:6px}html:not([data-ok-layout^=portrait]) .ok-game .ok-felt .ok-zone.left,html:not([data-ok-layout^=portrait]) .ok-game .ok-felt .ok-zone.right{padding-top:calc(var(--pile-h) + 6px);padding-bottom:calc(var(--pile-h) + 6px)}html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-zone.left,html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-zone.right{padding-top:2px;padding-bottom:2px}html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-zone.left{padding-left:calc(var(--pile-w) + 6px)}html[data-ok-layout=land-phone] .ok-game .ok-felt .ok-zone.right{padding-right:calc(var(--pile-w) + 6px)}html[data-ok-layout=wide] .ok-game .ok-felt{max-height:560px}html[data-ok-layout] .hud.okey-on .chat.collapsed{top:var(--safe);bottom:auto;left:calc(var(--safe) + 60px);width:max-content}html[data-ok-layout=wide] .ok-game .ok-bottom{align-items:stretch}html[data-ok-layout=wide] .ok-game .ok-bottom>.ok-side{align-content:space-between}html[data-ok-layout=wide] .ok-game .ok-bottom>.ok-sorts{align-content:start}html[data-ok-layout=wide] .ok-game .ok-bottom>.ok-side>.ok-actions{display:grid;align-content:start;height:100%}html[data-ok-layout=land-phone] .ok-game .ok-bottom{left:var(--ok-grid-inset);right:var(--ok-grid-inset);gap:var(--ok-col-gap);align-items:flex-start;justify-content:stretch}html[data-ok-layout=land-phone] .ok-game .ok-bottom>.ok-sorts,html[data-ok-layout=land-phone] .ok-game .ok-bottom>.ok-side{width:var(--ok-col-w);align-content:start}html[data-ok-layout=land-phone] .ok-game .ok-bottom>.ok-rack{flex:1 1 0;min-width:0;container-type:inline-size}html[data-ok-layout=land-phone] .ok-game .ok-rack-row{--tw: min(var(--ok-rack-tw), calc((100cqw - 2px * (var(--ok-rack-cols, 15) - 1)) / var(--ok-rack-cols, 15)));--th: calc(var(--tw) * 1.36);--ok-tile-rack: var(--tw)}html[data-ok-layout=land-phone] .ok-game .ok-bottom>.ok-side>.ok-actions{display:grid;align-content:start}html[data-ok-layout=land-phone] .ok-game .ok-felt{top:calc(var(--safe) + var(--ok-plate-h) + var(--ok-col-gap));left:calc(var(--ok-grid-inset) + var(--ok-col-w) + var(--ok-col-gap));right:calc(var(--ok-grid-inset) + var(--ok-col-w) + var(--ok-col-gap));max-width:none;bottom:calc(var(--safe) + var(--ok-rack-h) + var(--ok-band))}html[data-ok-layout=land-phone] .ok-game .ok-opps{inset:auto;top:var(--safe);left:calc(var(--ok-grid-inset) + var(--ok-col-w) + var(--ok-col-gap));right:calc(var(--ok-grid-inset) + var(--ok-col-w) + var(--ok-col-gap));transform:none;display:grid;grid-template-columns:var(--ok-felt-cols);column-gap:4px;padding-inline:6px;align-items:start}html[data-ok-layout=land-phone] .ok-game .ok-opp,html[data-ok-layout=land-phone] .ok-game .ok-opp.top{position:static;transform:none;justify-self:center;width:min(100%,var(--ok-plate-w));min-width:0;max-width:none;flex-direction:column;align-items:stretch}html[data-ok-layout=land-phone] .ok-game .ok-opp.left{grid-column:1;grid-row:1}html[data-ok-layout=land-phone] .ok-game .ok-opp.top{grid-column:2;grid-row:1}html[data-ok-layout=land-phone] .ok-game .ok-opp.right{grid-column:3;grid-row:1}html[data-ok-layout=land-phone] .ok-menu>.ok-chip{display:none}.ok-menu-more>.ok-chip{display:none}html[data-ok-layout=land-phone] .ok-menu-more>.ok-chip{display:inline-flex;align-items:center}*{box-sizing:border-box}:root{--hint-bottom: 132px;--safe: 16px;--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--tap: 36px;--jump-size: 64px;--label-gap: 6px;--jump-bottom: calc(var(--hint-bottom) + 48px);--chat-top: calc(var(--safe) + var(--chat-h, 0px));--tap-sm: 24px;--emotes-w: 402px;--edge-top: calc(var(--safe) + var(--safe-top));--edge-right: calc(var(--safe) + var(--safe-right));--edge-bottom: calc(var(--safe) + var(--safe-bottom));--edge-left: calc(var(--safe) + var(--safe-left));--safe-pad: calc(var(--safe) + var(--safe-top)) calc(var(--safe) + var(--safe-right)) calc(var(--safe) + var(--safe-bottom)) calc(var(--safe) + var(--safe-left))}@media(max-height:480px),(max-width:760px){:root{--emotes-w: 302px}}@media(pointer:coarse){.act-mini,.act-claim{position:relative}.chat-collapse:after,.act-mini:after,.act-claim:after{content:"";position:absolute;inset:calc((var(--tap) - var(--tap-sm)) / -2 - 2px)}.guide-card .guide-actions button,.guide-card .guide-never,.guide-card .guide-next{position:relative}.guide-card .guide-actions button:after,.guide-card .guide-never:after,.guide-card .guide-next:after{content:"";position:absolute;inset:calc((var(--tap) - 18px) / -2) -3px}}@media(max-height:480px),(max-width:760px){:root{--tap: 30px}}@media(pointer:coarse){:root{--tap: 40px}}:root{--font-ui: "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--accent: #ff7a45;--accent-hi: #ff9466;--accent-lo: #e8602c;--accent-soft: rgba(255, 122, 69, .2);--accent-glow: 0 4px 14px rgba(255, 122, 69, .45);--gold: #ffd166;--ok: #3ccf7d;--danger: #ff5a5f;--ink: #1d2733;--text: #f4f7fb;--text-dim: rgba(244, 247, 251, .66);--glass: rgba(18, 24, 38, .72);--glass-strong: rgba(18, 24, 38, .86);--glass-light: rgba(255, 255, 255, .1);--glass-hover: rgba(255, 255, 255, .16);--glass-border: rgba(255, 255, 255, .14);--blur: blur(14px) saturate(1.4);--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-pill: 999px;--shadow-sm: 0 2px 8px rgba(8, 12, 24, .22);--shadow-md: 0 8px 24px rgba(8, 12, 24, .32), 0 1px 0 rgba(255, 255, 255, .06) inset;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-6: 24px;--ease-out: cubic-bezier(.2, .9, .3, 1.2);--t-fast: .12s;--t-med: .22s;--focus-ring: 0 0 0 3px rgba(255, 209, 102, .85)}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden;background:#bfe3f2;font:14px/1.35 var(--font-ui);color:#1d2733;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}canvas{display:block;touch-action:none}.hud{position:fixed;inset:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left);z-index:16777280;pointer-events:none}.top{position:absolute;top:var(--safe);left:var(--safe);right:var(--safe);display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.pill{padding:6px 12px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);font-weight:700;box-shadow:var(--shadow-sm)}button{pointer-events:auto;font:inherit;font-weight:600;padding:8px 14px;border:0;border-radius:var(--r-sm);background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo));color:#fff;font-weight:800;text-shadow:0 1px 0 rgba(0,0,0,.18);cursor:pointer;box-shadow:var(--accent-glow),0 -2px #0000001f inset;transition:transform var(--t-fast) ease,filter var(--t-fast) ease,background-color var(--t-fast) ease}button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px) scale(.97)}button:focus-visible,input:focus-visible{outline:none;box-shadow:var(--focus-ring)}button.ghost,.btn-ghost{background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}button.ghost:hover,.btn-ghost:hover{background:var(--glass-hover);filter:none}.btn-icon{width:34px;height:34px;padding:0;display:inline-grid;place-items:center;border-radius:var(--r-pill)}button:has(>svg){display:inline-flex;align-items:center;justify-content:center;gap:6px}button>svg{flex-shrink:0;pointer-events:none}.top .btn-icon,.room-info .btn-icon{width:var(--tap);height:var(--tap);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);text-shadow:none;box-shadow:var(--shadow-sm)}.top .btn-icon:hover,.room-info .btn-icon:hover{background:var(--glass-strong);border-color:#ffffff4d;filter:none;transform:translateY(-1px)}.top .btn-icon[aria-expanded=true],.room-info .btn-icon[aria-expanded=true]{background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));border-color:transparent;box-shadow:var(--accent-glow)}.top .btn-icon.signin{background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo));border-color:transparent;box-shadow:var(--accent-glow)}.friends .btn-icon,.player-card .btn-icon,.invite-pop .btn-icon,.settings .btn-icon{width:30px;height:30px;padding:0;border-radius:var(--r-pill)}.panel{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--r-md);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text)}.chat{position:absolute;left:var(--safe);bottom:var(--safe);--chat-w: min(400px, calc(100% - 2 * var(--safe)));width:var(--chat-w);display:flex;flex-direction:column;gap:6px}@media(min-width:1201px)and (min-height:481px){.chat{--chat-w: min(400px, calc(50% - 230px) )}}.chat-log{max-height:clamp(120px,32vh,300px);overflow-y:auto;padding:8px 10px;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);text-shadow:0 1px 1px rgba(0,0,0,.4);scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;pointer-events:auto;user-select:text;-webkit-user-select:text}.chat-log:empty{display:none}.chat-log .line{overflow-wrap:anywhere}.chat-log .line{animation:line-in var(--t-med) ease-out}.chat-log .line b{color:#9fd8ff;font-weight:800}.chat-log .line.mine b{color:var(--gold)}@keyframes line-in{0%{opacity:0;transform:translateY(4px)}}.chat input{pointer-events:auto;width:100%;padding:9px 12px;border:1px solid var(--glass-border);border-radius:var(--r-pill);background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);box-shadow:var(--shadow-sm);font:inherit;font-weight:600;outline:none;transition:border-color var(--t-fast) ease,box-shadow var(--t-fast) ease;user-select:text;-webkit-user-select:text}.chat input::placeholder{color:var(--text-dim)}.chat input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft),var(--shadow-sm)}.notice{align-self:flex-start;padding:5px 12px;border-radius:var(--r-pill);background:linear-gradient(180deg,#ffe08a,var(--gold));color:#5a4100;font-weight:700;box-shadow:var(--shadow-sm);animation:pop var(--t-med) var(--ease-out)}.overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(ellipse at center,#1218268c,#121826cc);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--text);text-align:center;font-size:18px;font-weight:800;padding:var(--safe);pointer-events:auto}.overhead{display:flex;flex-direction:column;align-items:center;gap:4px;transform:translateY(-50%);white-space:nowrap}.nametag{padding:2px 9px;border-radius:var(--r-pill);background:#121826a8;border:1px solid rgba(255,255,255,.16);color:#fff;font-family:var(--font-ui);font-size:12px;font-weight:800;letter-spacing:.01em;text-shadow:0 1px 1px rgba(0,0,0,.5);box-shadow:0 2px 6px #0003}.nametag.npc{transition:opacity var(--attn-ms) var(--attn-ease),visibility 0s linear 0s}.nametag.npc.far{opacity:0;visibility:hidden;transition:opacity var(--attn-ms) var(--attn-ease),visibility 0s linear var(--attn-ms)}.nametag.me{background:linear-gradient(180deg,var(--accent-hi),var(--accent));border-color:#ffffff59}.nametag .guest{font-weight:400;opacity:.8}.bubble{position:relative;width:max-content;max-width:220px;padding:6px 11px;border-radius:var(--r-md);background:#fff;color:var(--ink);font-family:var(--font-ui);font-size:13px;font-weight:700;line-height:1.3;box-shadow:0 3px 10px #080c1840,0 0 0 1px #1d27330f;white-space:normal;text-align:center;overflow-wrap:break-word;animation:pop var(--t-med) var(--ease-out);transform-origin:50% 100%}.bubble:after{content:"";position:absolute;left:clamp(12px,calc(50% + var(--tail-dx, 0px)),calc(100% - 12px));bottom:-6px;margin-left:-6px;border:6px solid transparent;border-bottom:0;border-top-color:#fff}@keyframes pop{0%{transform:scale(.6);opacity:0}}.emotes-wrap{position:absolute;right:var(--safe);bottom:var(--safe);display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:calc(100% - 2 * var(--safe))}.emote-panel{display:grid;grid-template-columns:repeat(6,38px);gap:6px;padding:8px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);pointer-events:auto;transform-origin:100% 100%;animation:pop var(--t-med) var(--ease-out)}.emotes{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;padding:6px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);pointer-events:auto}.emote{width:38px;height:38px;padding:0;font-size:22px;line-height:38px;background:transparent;box-shadow:none;text-shadow:none;border-radius:var(--r-pill)}.emote:hover{background:var(--glass-hover);filter:none;transform:scale(1.15)}.emote.busy{opacity:.4;filter:grayscale(1)}.emote.busy:hover{filter:grayscale(1);transform:none}.bubble.emoji{padding:2px 8px;font-size:28px;line-height:1.2}.emote.more{font-size:20px;font-weight:800;color:var(--text-dim)}.emote.more.open{background:var(--accent-soft);color:var(--accent-hi)}@media(max-width:880px){.emotes-wrap{bottom:calc(var(--safe) + 50px)}.chat-log{max-height:clamp(110px,28vh,220px);margin-bottom:52px}.chat:not(.collapsed) .notice{order:-1}.chat:not(.collapsed)>.notice:first-child{margin-bottom:52px}}.bubble.typing{display:flex;gap:4px;padding:8px 10px}.bubble.typing span{width:6px;height:6px;border-radius:50%;background:#8a8f98;animation:typing-dot 1s infinite ease-in-out}.bubble.typing span:nth-child(2){animation-delay:.15s}.bubble.typing span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.loading{position:fixed;inset:0;z-index:16777300;display:grid;place-items:center;background:radial-gradient(circle at 20% 15%,rgba(255,122,69,.35),transparent 45%),radial-gradient(circle at 85% 90%,rgba(80,170,255,.35),transparent 50%),linear-gradient(160deg,#1b2440,#2a2f5a 55%,#3b2a4f);color:var(--text);opacity:1;transition-property:opacity;transition-timing-function:ease;pointer-events:auto}.loading.hidden{opacity:0;pointer-events:none}.loading.hidden .loading-card{opacity:0;transform:scale(.96);transition:opacity .12s ease,transform .12s ease}.loading-card{width:min(320px,calc(100% - 2 * var(--safe)));padding:18px 22px 20px;border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);text-align:center;animation:pop .35s var(--ease-out)}.loading-logo{position:relative;display:inline-flex;gap:5px;padding:10px 14px;margin-bottom:6px;border-radius:16px;background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));box-shadow:var(--accent-glow);animation:loading-float 2.4s ease-in-out infinite}.loading-logo:after{content:"";position:absolute;left:14px;bottom:-7px;border:7px solid transparent;border-bottom:0;border-left-width:0;border-top-color:var(--accent-lo)}.loading-logo span{width:8px;height:8px;border-radius:50%;background:#fff;animation:typing-dot 1s infinite ease-in-out}.loading-logo span:nth-child(2){animation-delay:.15s}.loading-logo span:nth-child(3){animation-delay:.3s}@keyframes loading-float{50%{transform:translateY(-4px) rotate(-3deg)}}.loading-title{font-size:28px;font-weight:900;letter-spacing:-.02em;background:linear-gradient(180deg,#fff,#ffd9c7);-webkit-background-clip:text;background-clip:text;color:transparent}.loading-label{display:flex;justify-content:center;gap:8px;margin:4px 0 12px;color:var(--text-dim);font-weight:700}.loading-pct{color:var(--gold);font-variant-numeric:tabular-nums}.loading-bar{height:10px;padding:2px;border-radius:var(--r-pill);background:#ffffff1a;box-shadow:0 1px 2px #0000004d inset;overflow:hidden}.loading-bar span{display:block;height:100%;width:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent-lo),var(--accent),var(--gold));box-shadow:0 0 10px #ff965ab3;transform:scaleX(0);transform-origin:left center;transition:transform .2s ease-out}.loading-bar.busy span{width:35%;animation:loading-sweep 1s ease-in-out infinite alternate}@keyframes loading-sweep{0%{transform:translate(-20%)}to{transform:translate(210%)}}.lobby-wrap{position:absolute;top:calc(var(--safe) + 44px);right:var(--safe);display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:calc(100% - 2 * var(--safe))}.room-info{display:flex;gap:8px;align-items:center}.interact-hint{position:absolute;left:50%;bottom:var(--hint-bottom);transform:translate(-50%);padding:6px 14px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);font:800 13px/1.3 var(--font-ui);animation:hint-in var(--t-med) var(--ease-out);pointer-events:none;white-space:nowrap;z-index:5}.interact-hint.anchored{bottom:auto;transform:translate(-50%,calc(-100% - 6px));border-color:#ff8a4cb3;box-shadow:var(--shadow-sm),0 0 0 1px #ff8a4c40;animation:hint-pop .14s var(--ease-out)}.interact-hint.anchored:after{content:"";position:absolute;left:50%;top:100%;translate:-50% 0;border:6px solid transparent;border-top-color:#ff8a4cb3}@keyframes hint-pop{0%{opacity:0;scale:.85}to{opacity:1;scale:1}}@media(max-height:480px),(max-width:760px){html,body,#root{font-size:13px}.top{top:var(--safe);left:var(--safe);right:var(--safe);gap:6px}.top .pill{min-width:0;max-width:60vw;padding:4px 10px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top .btn-icon,.room-info .btn-icon{width:var(--tap);height:var(--tap)}.top .btn-icon svg,.room-info .btn-icon svg{width:15px;height:15px}.top .actions{flex-shrink:0;gap:6px!important}.top button:not(.btn-icon),.room-info button:not(.btn-icon){padding:5px 10px;font-size:12px;border-radius:var(--r-pill)}.chat{left:var(--safe);bottom:var(--safe);--chat-w: min(360px, calc(100% - 2 * var(--safe)));gap:4px}.chat-log{max-height:clamp(84px,30vh,200px);padding:5px 8px;border-radius:10px;font-size:12px}.chat input{padding:6px 12px}.notice{padding:3px 8px;font-size:12px}.emotes-wrap{right:var(--safe);bottom:calc(var(--safe) + 42px);gap:6px;max-width:calc(100% - 2 * var(--safe))}.chat-log{margin-bottom:44px}.chat:not(.collapsed)>.notice:first-child{margin-bottom:44px}.emotes{gap:3px;padding:3px}.emote{width:30px;height:30px;font-size:18px;line-height:30px}.emote.more{font-size:16px}.emote-panel{grid-template-columns:repeat(8,30px);gap:4px;padding:6px;max-height:calc(100vh - 110px);overflow-y:auto}:root{--hint-bottom: 96px}.interact-hint{padding:4px 10px;font-size:12px}.lobby-wrap{top:calc(var(--safe) + 32px);right:var(--safe);gap:6px;max-width:calc(100% - 2 * var(--safe))}.room-info{gap:6px}.room-info .pill{padding:4px 10px;font-size:12px;white-space:nowrap}.friends{width:min(300px,calc(100vw - 2 * var(--safe)));max-height:calc(100vh - 130px);overflow-y:auto;padding:10px;gap:8px}.friends button{padding:4px 9px;font-size:12px}.player-card{max-width:min(240px,calc(100vw - 2 * var(--safe)));max-height:calc(100vh - 2 * var(--safe));overflow-y:auto;padding:8px 10px;font-size:12px}.player-card button{padding:4px 9px;font-size:12px}.invite-pop{width:min(280px,calc(100vw - 2 * var(--safe)));max-height:calc(100vh - 60px);overflow-y:auto;padding:10px;font-size:12px}.invite-pop button{padding:4px 9px;font-size:12px}.overlay{font-size:15px}.loading-card{padding:14px 16px}.loading-title{font-size:20px}.overhead{gap:3px}.nametag{padding:1px 7px;font-size:11px}.bubble{max-width:170px;padding:4px 9px;border-radius:12px;font-size:12px}.bubble.emoji{padding:1px 6px;font-size:22px}.bubble.typing{padding:6px 8px}}@media(max-height:480px)and (min-width:600px),(min-width:600px)and (max-width:880px){.emotes-wrap{bottom:var(--safe)}.chat{--chat-w: clamp(180px, calc(100% - var(--emotes-w) - 3 * var(--safe)), 360px)}.chat-log{margin-bottom:0}.chat:not(.collapsed) .notice{order:0}.chat:not(.collapsed)>.notice:first-child{margin-bottom:0}:root{--hint-bottom: calc(var(--safe) + 48px)}}.invite-pop{position:fixed;z-index:16777280;pointer-events:auto;width:min(300px,calc(100vw - 2 * var(--safe)));padding:12px 14px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);animation:panel-in var(--t-med) var(--ease-out);font-size:14px;font-weight:400;text-align:left;display:flex;flex-direction:column;gap:8px}.invite-pop-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.invite-pop .invite-pop-close{width:26px;height:26px;padding:0;border-radius:var(--r-pill);background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}.invite-pop-row{display:flex;gap:6px}.invite-pop-row input{flex:1;min-width:0;padding:6px 10px;border:1px solid var(--glass-border);border-radius:var(--r-sm);font:inherit;font-size:13px;background:#00000040;color:var(--text);-webkit-user-select:text;user-select:text}.invite-pop .invite-pop-row button{padding:6px 10px;white-space:nowrap}.invite-pop .invite-pop-row button:disabled{opacity:.5;cursor:default}.invite-pop-hint,.invite-pop-error{margin:0;font-size:12px;line-height:1.35;color:var(--text-dim)}.invite-pop-error{color:var(--danger)}.friends-button{position:relative}.friends-button .badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-pill);background:var(--danger);border:2px solid #fff;color:#fff;font-size:11px;font-weight:900;line-height:14px;animation:pop var(--t-med) var(--ease-out)}.friends-wrap{position:absolute;top:calc(var(--safe) + 44px);right:var(--safe);max-width:calc(100% - 2 * var(--safe))}.friends,.player-card{position:relative;z-index:16777280;pointer-events:auto;padding:12px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);animation:panel-in var(--t-med) var(--ease-out);display:flex;flex-direction:column;gap:10px}.friends{width:min(340px,calc(100vw - 2 * var(--safe)));max-height:calc(100vh - 220px);overflow-y:auto}.friends-head,.player-card-head,.friend-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.friends-section{display:flex;flex-direction:column;gap:6px}.friends button,.player-card button{padding:6px 10px}.friends button.ghost,.player-card button.ghost{background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}.friends .muted,.player-card .muted,.friends-empty,.friend-where{color:var(--text-dim)}.friends-empty{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.friend-row.offline .friend-name{opacity:.6}.friend-name{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-where{margin-left:auto;font-size:12px;white-space:nowrap}.friend-row{padding:4px 6px;margin:0 -6px;border-radius:var(--r-sm);transition:background-color var(--t-fast) ease}.friend-row:hover{background:var(--glass-light)}.friend-where.here{color:var(--ok)}.friend-actions{display:flex;gap:4px;flex-shrink:0}.dot{width:8px;height:8px;border-radius:50%;background:#ffffff40;flex-shrink:0}.dot.on{background:var(--ok);box-shadow:0 0 0 3px #3ccf7d40}.player-card{position:absolute;top:calc(var(--safe) + 44px);left:50%;transform:translate(-50%);width:min(260px,calc(100vw - 2 * var(--safe)));animation-name:card-in}.player-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.friend-badge{color:var(--ok);font-weight:600}.hide-nametags .nametag,.hide-bubbles .bubble{display:none}.hud:has(>.main-menu){inset:0}.hud.okey-on .hud-fullscreen{display:none}.main-menu{position:absolute;inset:0;--menu-w: 380px;--menu-gap: 20px;--menu-stack: 10px;--menu-play-h: 60px;--menu-btn-h: max(var(--tap), 48px);display:flex;padding:var(--safe-pad);background:linear-gradient(90deg,rgba(10,16,30,.78) 0%,rgba(10,16,30,.5) 30%,rgba(10,16,30,.12) 52%,transparent 66%),radial-gradient(ellipse 120% 100% at 75% 50%,transparent 50%,rgba(8,12,24,.45) 100%);font-family:var(--font-ui);color:var(--text);animation:menu-fade .3s ease-out}@keyframes menu-fade{0%{opacity:0}}.menu-layout{width:min(var(--menu-w),100%);min-height:0;margin:auto 0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "actions" "news";gap:var(--menu-gap);pointer-events:none}.menu-brand{grid-area:brand;display:flex;flex-direction:column;gap:var(--sp-2);animation:pop .45s var(--ease-out) backwards}.menu-logo{display:flex;align-items:center;gap:var(--sp-3)}.menu-logo .loading-logo{margin:0;flex-shrink:0;transform-origin:left center}.menu-wordmark{margin:0;font-size:clamp(40px,min(8vh,12.5vw),64px);font-weight:900;line-height:1.05;letter-spacing:-.03em;background:linear-gradient(180deg,#fff 0%,#ffe2b8 40%,var(--accent-hi) 75%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 rgba(120,40,10,.6)) drop-shadow(0 6px 14px rgba(0,0,0,.55))}.menu-tagline{margin:0;font-size:15px;font-weight:700;line-height:1.3;color:var(--text);text-shadow:0 1px 2px rgba(0,0,0,.7),0 2px 10px rgba(0,0,0,.5)}.menu-actions{grid-area:actions;display:flex;flex-direction:column;gap:var(--menu-stack);min-width:0}.menu-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--menu-stack)}.menu-actions button{pointer-events:auto;min-width:0;border-radius:var(--r-md);animation:panel-in .35s var(--ease-out) backwards;transition:transform var(--t-fast) var(--ease-out),box-shadow var(--t-fast) ease,background var(--t-fast) ease,filter var(--t-fast) ease}.menu-actions .menu-play{min-height:var(--menu-play-h);margin-bottom:4px;gap:10px;font-size:24px;font-weight:900;letter-spacing:.01em;box-shadow:0 4px #b9461d,0 10px 24px #ff7a4573}.menu-actions .menu-play:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px #b9461d,0 4px 12px #ff7a4566}.menu-actions .menu-ghost{min-height:var(--menu-btn-h);gap:var(--sp-2);padding:6px 12px;font-size:16px;background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);text-shadow:none;box-shadow:var(--shadow-sm);animation-delay:.05s}.menu-actions .menu-ghost:hover{background:#1e2638eb;border-color:#ffffff4d;filter:none}.menu-actions .menu-ghost:active{transform:translateY(1px) scale(.98)}.menu-actions button:disabled{opacity:.55;cursor:default;filter:none}.menu-player{min-height:var(--menu-btn-h);display:flex;align-items:center;gap:var(--sp-2);padding:0 0 0 var(--sp-3);overflow:hidden;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);pointer-events:auto;animation:panel-in .35s var(--ease-out) .1s backwards}.menu-player .dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;background:var(--text-dim)}.menu-player .dot.on{background:var(--ok);box-shadow:0 0 0 3px #3ccf7d40}.menu-player-name{flex:1;min-width:0;font-size:14px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.menu-actions .menu-player .signin{flex-shrink:0;align-self:stretch;min-height:var(--menu-btn-h);padding:0 var(--sp-4);border-radius:0;border-left:1px solid var(--glass-border);background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:none;font-size:15px;animation:none}.menu-actions .menu-player .signin>svg{color:var(--accent-hi)}.menu-actions .menu-player .signin:hover{background:var(--glass-hover);filter:none}.menu-news{grid-area:news;min-width:0;padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);animation:pop .45s var(--ease-out) .15s backwards}.menu-news h2{margin:0;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.menu-news ul{margin:var(--sp-2) 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--sp-3);font-size:15px;line-height:1.3}.menu-news li{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:var(--sp-2);text-wrap:balance}.menu-news-mark{margin-top:2px;color:var(--accent-hi)}@media(min-width:1100px)and (min-height:700px){.main-menu{padding-left:calc(var(--safe-left) + 64px)}}@media(max-aspect-ratio:1/1){.main-menu{--menu-w: 440px;--menu-gap: 16px;padding-top:calc(var(--safe) + var(--safe-top) + var(--sp-3));padding-bottom:calc(var(--safe) + var(--safe-bottom) + var(--sp-3));background:linear-gradient(180deg,rgba(10,16,30,.7) 0%,rgba(10,16,30,.2) 24%,transparent 40%,transparent 50%,rgba(10,16,30,.35) 66%,rgba(10,16,30,.75) 100%)}.menu-layout{margin:0;height:100%;grid-template-rows:auto 1fr auto auto;grid-template-areas:"brand" "." "news" "actions"}}@media(max-aspect-ratio:1/1)and (max-width:520px){.main-menu{--menu-play-h: 56px;--menu-stack: 8px}.menu-layout{width:100%}.menu-tagline,.menu-news ul{font-size:14px}.menu-news-mark{margin-top:1px}}@media(max-aspect-ratio:1/1)and (max-height:700px){.menu-news{display:none}}@media(min-aspect-ratio:1/1)and (max-height:600px){.main-menu{--menu-gap: 14px;--menu-stack: 8px;--menu-play-h: 52px;--menu-btn-h: max(var(--tap), 44px)}.menu-layout{width:min(760px,100%);grid-template-columns:minmax(0,330px) minmax(0,1fr);grid-template-areas:"brand news" "actions news";column-gap:var(--sp-4);align-items:end}.menu-wordmark{font-size:clamp(36px,11vh,52px)}.menu-news ul{font-size:14px}.menu-news-mark{margin-top:1px}.menu-news{align-self:stretch;display:flex;flex-direction:column;justify-content:center}}@media(min-aspect-ratio:1/1)and (max-height:600px)and (max-width:720px){.menu-layout{width:min(330px,100%);grid-template-columns:minmax(0,1fr);grid-template-areas:"brand" "actions"}.menu-news{display:none}}@media(min-aspect-ratio:1/1)and (max-height:400px){.main-menu{--menu-play-h: 46px;--menu-btn-h: max(var(--tap), 40px)}.menu-actions .menu-play{font-size:20px}.menu-tagline{font-size:13px}}.top>.pill{margin-right:auto}.game-menu{position:relative;flex-shrink:0}.top .game-menu-button{width:34px;height:34px;padding:0;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);color:var(--text);text-shadow:none;font-size:16px;line-height:32px;box-shadow:var(--shadow-sm)}.top .game-menu-button:hover{background:var(--glass-strong);filter:none}.game-menu-list{position:absolute;top:calc(100% + var(--sp-2));left:0;z-index:16777280;display:grid;grid-template-columns:minmax(0,1fr);width:max-content;min-width:220px;max-width:calc(100vw - var(--safe-left) - var(--safe-right) - 2 * var(--safe));padding:6px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);pointer-events:auto;transform-origin:top left;animation:panel-in var(--t-med) var(--ease-out)}:root:has(.game-menu-list) .act-tracker,:root:has(.game-menu-list) .interact-hint{visibility:hidden}.game-menu-group{min-width:0;display:flex;flex-direction:column;gap:2px}.game-menu-group+.game-menu-group{margin-top:6px;padding-top:6px;border-top:1px solid var(--glass-border)}.top .game-menu-list{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 3 * var(--safe) - var(--tap) - 2 * var(--sp-2) - var(--chat-h, 0px));overflow-y:auto;overscroll-behavior:contain}@media(pointer:coarse){.top .game-menu-list{scrollbar-width:none}.top .game-menu-list::-webkit-scrollbar{display:none}}.top .game-menu-list button{min-height:max(var(--tap),40px);justify-content:flex-start;gap:var(--sp-3);padding:0 var(--sp-3);border-radius:var(--r-sm);text-align:left;background:transparent;color:var(--text);text-shadow:none;font-size:14px;font-weight:700;box-shadow:none}.top .game-menu-list button>svg{color:var(--text-dim)}.game-menu-label{flex:1;min-width:0;white-space:nowrap}.game-menu-value{flex-shrink:0;font-weight:700;color:var(--text-dim);white-space:nowrap}.top .game-menu-list .game-menu-muted>svg{color:var(--gold)}.top .game-menu-list .game-menu-leave>svg{color:var(--danger)}.top .game-menu-list .game-menu-leave:hover{background:#ff5a5f29}.top .game-menu-list .game-menu-leave:hover>svg{color:var(--danger)}.top .game-menu-list button:hover{background:var(--accent-soft);filter:none}.top .game-menu-list button:hover>svg{color:var(--accent-hi)}.top .game-menu-list button kbd{min-width:22px;padding:0 6px;border-radius:6px;background:var(--glass-light);border:1px solid var(--glass-border);font:800 11px/18px var(--font-ui);text-align:center;color:var(--text-dim)}@media(pointer:coarse){.top .game-menu-list button kbd{display:none}}.top .game-menu-list .game-menu-more{position:sticky;bottom:-6px;min-height:32px;justify-content:center;margin:0 -6px -6px;padding:10px 0 4px;border-radius:0 0 var(--r-md) var(--r-md);background:linear-gradient(to bottom,transparent,var(--glass-strong) 45%);color:var(--accent);animation:menu-more 1.2s ease-in-out infinite}@keyframes menu-more{50%{padding-top:14px;padding-bottom:0}}@media(max-height:480px)and (min-aspect-ratio:1/1){.game-menu-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,auto);grid-auto-flow:column;gap:2px 6px}.game-menu-group{display:contents}.top .game-menu-list .game-menu-leave{position:relative;overflow:visible}.top .game-menu-list .game-menu-leave:before{content:"";position:absolute;left:var(--sp-2);right:var(--sp-2);top:-2px;height:1px;background:var(--glass-border)}.top .game-menu-list .game-menu-more{grid-column:1 / -1}}.settings-backdrop{position:fixed;inset:0;z-index:16777290;display:grid;place-items:center;padding:var(--safe-pad);background:#080c188c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);pointer-events:auto;animation:menu-fade .15s ease-out}.settings{--set-tap: max(var(--tap), 40px);--set-row: 44px;--set-ctl: 200px;--set-pad: var(--sp-4);width:min(680px,100%);height:auto;max-height:100%;min-height:0;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"head head" "rail body" "foot foot";overflow:hidden;border-radius:var(--r-lg);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);color:var(--text);animation:pop .3s var(--ease-out)}.settings-main{display:contents}.settings-head{grid-area:head;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-3) var(--sp-2) var(--set-pad);font-size:20px;font-weight:900}.settings .settings-head .btn-icon{width:var(--set-tap);height:var(--set-tap)}.set-rail{grid-area:rail;width:168px;display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-1) var(--sp-2) var(--sp-3) var(--set-pad)}.set-rail button{min-height:var(--set-tap);display:flex;align-items:center;justify-content:flex-start;gap:var(--sp-3);padding:0 var(--sp-3);border-radius:var(--r-sm);font-size:14px;font-weight:800;text-align:left;background:transparent;color:var(--text-dim);text-shadow:none;box-shadow:none}.set-rail button svg{flex-shrink:0}.set-rail button span{min-width:0;white-space:nowrap}.set-rail button:hover{color:var(--text);background:var(--glass-light);filter:none}.set-rail button.on{color:var(--accent-hi);background:var(--accent-soft);box-shadow:3px 0 0 var(--accent) inset}.set-rail button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.settings-body{grid-area:body;min-width:0;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3);margin-right:6px;padding:var(--sp-1) var(--sp-2) var(--sp-3) var(--sp-2);scrollbar-gutter:stable;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.28) transparent}.settings-body::-webkit-scrollbar{width:6px}.settings-body::-webkit-scrollbar-track{background:transparent}.settings-body::-webkit-scrollbar-thumb{border-radius:var(--r-pill);background:#ffffff47}.settings-foot{grid-area:foot;display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--set-pad);border-top:1px solid var(--glass-border);background:#0000001f}.settings-foot button{height:var(--set-tap);min-height:0;padding:0 var(--sp-4);border-radius:var(--r-pill);font-size:14px;white-space:nowrap}.settings-done{min-width:112px;box-shadow:0 2px 8px #ff7a4559}.set-section{flex-shrink:0;display:flex;flex-direction:column;padding:var(--sp-3) var(--sp-4) var(--sp-2);border-radius:var(--r-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.08)}.set-group{margin-bottom:var(--sp-2);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.set-section>.set-group:not(:first-child){margin-top:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid rgba(255,255,255,.08)}.set-row{min-height:var(--set-row);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--sp-3);padding:2px 0;font-size:15px;font-weight:700;cursor:pointer}.set-row+.set-row{border-top:1px solid rgba(255,255,255,.06)}.set-label{min-width:0;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;line-height:1.25}.set-control{width:var(--set-ctl);display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.set-value{flex-shrink:0;width:46px;padding-top:2px;line-height:1;text-align:right;font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--text-dim)}.settings button.ghost,.settings .set-row>button{min-height:var(--set-tap);padding:0 var(--sp-4);border-radius:var(--r-pill)}.settings .set-row>button{background:var(--glass-light);color:var(--text);text-shadow:none;box-shadow:0 0 0 1px var(--glass-border) inset}.settings .set-row>button:hover{background:var(--glass-hover);filter:none}.settings .snd-track-btns .btn-icon{width:var(--set-tap);height:var(--set-tap);padding:0}.set-field{display:flex;flex-direction:column;gap:var(--sp-2);padding-bottom:var(--sp-2)}.set-choice{container:set-choice / inline-size;width:100%;display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:2px;padding:3px;border-radius:var(--r-md);background:#00000047;box-shadow:0 0 0 1px var(--glass-border) inset}.set-choice button{min-width:0;min-height:var(--set-tap);padding:4px 8px;border-radius:calc(var(--r-md) - 3px);font-size:14px;font-weight:800;line-height:1.15;white-space:nowrap;background:transparent;color:var(--text-dim);text-shadow:none;box-shadow:none}.set-choice-short{display:none}@container set-choice (max-width: 340px){.set-choice button{font-size:12px;padding:4px}.set-choice button:has(.set-choice-short) .set-choice-long{display:none}.set-choice-short{display:inline}}.set-choice button:hover{color:var(--text);background:var(--glass-light);filter:none}.set-choice button.on{background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));color:#fff;box-shadow:var(--accent-glow)}.set-field .set-hint,.set-section>.set-hint{padding:0;line-height:1.45;text-wrap:pretty}.set-row.is-off .set-control{opacity:.45;filter:grayscale(1)}.set-hint-inline{font-weight:600;color:var(--text-dim)}.set-switch{appearance:none;-webkit-appearance:none;position:relative;justify-self:end;flex-shrink:0;width:46px;height:28px;margin:0;border-radius:var(--r-pill);background:#ffffff42;box-shadow:0 0 0 1px #ffffff57 inset;cursor:pointer;transition:background var(--t-med) ease}.set-switch:before{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #00000059;transition:transform var(--t-med) var(--ease-out)}.set-switch:checked{background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));box-shadow:var(--accent-glow)}.set-switch:checked:before{transform:translate(18px)}.set-range{-webkit-appearance:none;appearance:none;flex:1;min-width:0;height:var(--set-tap);margin:0;background:transparent;accent-color:var(--accent);cursor:pointer}.set-range::-webkit-slider-runnable-track{height:6px;border-radius:var(--r-pill);background:#ffffff2e}.set-range::-moz-range-track{height:6px;border-radius:var(--r-pill);background:#ffffff2e}.set-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:linear-gradient(180deg,var(--accent-hi),var(--accent-lo));border:2px solid #fff;box-shadow:var(--accent-glow)}.set-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid #fff}.settings-reset{display:inline-flex;align-items:center;gap:6px}@media(max-height:480px),(max-width:600px){.settings-body{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 2 * var(--sp-6)),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 2 * var(--sp-6)),transparent);padding-bottom:calc(2 * var(--sp-6))}}@media(pointer:coarse){.settings-body{margin:0 calc(var(--set-pad) - var(--sp-2)) 0 0;scrollbar-width:none}.settings-body::-webkit-scrollbar{display:none}}@media(max-height:480px){.settings{height:100%;--set-row: 40px;--set-pad: var(--sp-3);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"head head" "rail body" "foot body"}.settings-head{padding:var(--sp-2) var(--sp-2) var(--sp-1) var(--set-pad);font-size:17px}.set-rail{width:auto;min-width:184px;padding-right:var(--sp-3)}.settings-foot{flex-direction:column;align-items:stretch;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3) var(--sp-3) var(--set-pad);border-top:0;background:none}.settings-foot button{padding:0 var(--sp-3)}.settings-done{min-width:0}.settings-body{padding-left:0}.set-section{padding:var(--sp-2) var(--sp-3) var(--sp-1)}.set-row{font-size:14px}}@media(max-width:600px)and (min-height:481px){.settings{width:100%;height:100%;--set-ctl: clamp(132px, 44vw, 180px);--set-pad: var(--sp-3);grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "rail" "body" "foot";grid-template-rows:auto auto minmax(0,1fr) auto}.set-rail{width:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--sp-1);padding:0 var(--set-pad) var(--sp-3)}.set-rail button{position:relative}.set-rail button.on{box-shadow:none}.set-rail button.on:after{content:"";position:absolute;left:var(--sp-3);right:var(--sp-3);bottom:0;height:3px;border-radius:2px;background:var(--accent)}.set-rail button{min-height:54px;flex-direction:column;justify-content:center;gap:3px;padding:4px 2px;font-size:12px;text-align:center}.set-rail button span{max-width:100%;overflow-wrap:anywhere;white-space:normal;line-height:1.1}.settings-body{margin:0;padding:0 var(--set-pad) calc(2 * var(--sp-6))}.set-section{padding:var(--sp-3) var(--sp-3) var(--sp-2)}}@media(max-width:380px)and (min-height:481px){.settings{--set-ctl: 132px}.set-row{font-size:14px}.set-choice button{font-size:13px}}@keyframes panel-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}}@keyframes card-in{0%{opacity:0;transform:translate(-50%,-6px) scale(.97)}}@keyframes hint-in{0%{opacity:0;transform:translate(-50%,6px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.gm-tag{display:inline-block;margin-right:.35em;padding:0 .35em;border-radius:3px;background:linear-gradient(#fff1a8,#f7c234 55%,#c98a00);box-shadow:0 0 0 1px #462d00d9,0 0 6px #ffc428cc;color:#2a1a00;font-size:.8em;font-weight:800;letter-spacing:.06em;line-height:1.35;text-shadow:0 1px 0 rgba(255,255,255,.45);vertical-align:.08em}.nametag.gm{border:1px solid rgba(255,206,64,.8);background:linear-gradient(#221804eb,#0c0902eb);color:#ffd84a;box-shadow:0 0 8px #ffbe2880;text-shadow:0 0 4px rgba(255,186,30,.65),0 1px 1px #000;font-weight:700}.chat-log .gm-name{color:#ffd84a;text-shadow:0 0 4px rgba(255,186,30,.6),0 1px 1px #000}.chat-log .line.system{white-space:pre-line;font-size:.92em}.chat-log .line.system.info{color:#bfe6ff}.chat-log .line.system.warn{color:#ffb9a6}.chat-log .line.system.announce{color:#ffe58a;font-weight:600}.gm-banner{position:absolute;z-index:30;top:calc(var(--safe, 16px) + 44px);left:50%;width:max-content;max-width:min(520px,calc(100% - 2 * var(--safe, 16px)));transform:translate(-50%);padding:8px 16px 10px;border:1px solid rgba(255,206,64,.85);border-radius:10px;background:linear-gradient(#221804f0,#0c0902f0);box-shadow:0 0 14px #ffbe2873,0 4px 14px #00000059;color:#fff4cc;text-align:center;animation:gm-banner-in .3s ease-out;overflow-wrap:anywhere}.gm-banner-head{margin-bottom:2px;color:#ffd84a;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.gm-banner-from{margin-left:.3em;text-transform:none;letter-spacing:normal}.gm-banner-text{font-size:15px;font-weight:600}@keyframes gm-banner-in{0%{opacity:0;transform:translate(-50%,-8px)}}@media(max-height:480px){.gm-banner{top:calc(var(--safe, 16px) + 36px);padding:5px 12px 7px}.gm-banner-text{font-size:13px}}.cam-picker{position:relative}.cam-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:16777280;display:flex;flex-direction:column;gap:2px;min-width:170px;padding:6px;border-radius:var(--r-md);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-md);pointer-events:auto;transform-origin:top right;animation:panel-in var(--t-med) var(--ease-out)}.top .cam-menu button{justify-content:flex-start;gap:10px;padding:7px 12px;border-radius:var(--r-sm);text-align:left;background:transparent;color:var(--text);text-shadow:none;font-weight:700;box-shadow:none}.top .cam-menu button:hover{background:var(--accent-soft);filter:none}.top .cam-menu button.on{color:var(--accent-hi)}.cam-help,.set-hint{padding:4px 12px 2px;font-size:12px;color:var(--text-dim)}.cam-fps .overhead:has(.nametag.me){display:none}.crosshair{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);box-shadow:0 0 0 1px #080c1873,inset 0 0 0 1px #080c1859;pointer-events:none;transition:transform .12s ease,border-color .12s ease}.crosshair:after{content:"";position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #080c188c}.crosshair.shoulder{opacity:.75;transform:scale(.85)}.crosshair.on{border-color:var(--accent-hi);transform:scale(1.2)}.crosshair.on:after{background:var(--accent-hi)}.hud:has(.controls-tip) .look-hint{display:none}body:has(.idock) .look-hint{display:none}.look-hint{position:absolute;left:50%;bottom:calc(var(--hint-bottom) - 46px);transform:translate(-50%);padding:3px 10px;border-radius:var(--r-pill);background:var(--glass);color:var(--text-dim);font-size:12px;white-space:nowrap;pointer-events:none}.shot-meter{position:fixed;left:50%;bottom:170px;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);font-size:12px;font-weight:700;pointer-events:none;z-index:5}.shot-meter-bar{position:relative;width:160px;height:10px;border-radius:var(--r-pill);background:var(--glass-light);overflow:hidden}.shot-meter-sweet{position:absolute;top:0;bottom:0;background:var(--gold);opacity:.55}.shot-meter-fill{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--accent-lo),var(--accent-hi));box-shadow:var(--accent-glow)}.shot-meter-fill.perfect{background:linear-gradient(90deg,var(--accent),var(--gold));box-shadow:0 0 10px var(--gold)}.shot-whoosh,.shot-pop{position:fixed;left:50%;top:34%;transform:translate(-50%);font-size:22px;font-weight:800;letter-spacing:.02em;color:var(--gold);text-shadow:0 2px 10px rgba(8,12,24,.6);white-space:nowrap;pointer-events:none;z-index:6;animation:shot-whoosh .9s ease-out forwards}.shot-pop{top:24%;color:var(--text);padding:4px 14px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--gold);font-size:16px;animation:shot-pop 1.4s ease-out forwards}@keyframes shot-whoosh{0%{opacity:0;transform:translate(-80%) skew(-18deg);filter:blur(3px)}25%{opacity:1;transform:translate(-50%) skew(-8deg);filter:blur(0)}75%{opacity:1;transform:translate(-45%,-6px) skew(0)}to{opacity:0;transform:translate(-20%,-10px) skew(10deg);filter:blur(2px)}}@keyframes shot-pop{0%{opacity:0;transform:translate(-50%,8px) scale(.7)}15%{opacity:1;transform:translate(-50%) scale(1.12)}25%{transform:translate(-50%) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-12px) scale(1)}}@media(max-height:480px){.shot-meter{bottom:calc(var(--edge-bottom) + 78px);padding:3px 8px;font-size:11px}.shot-meter-bar{width:120px}.shot-whoosh{font-size:18px}}@media(prefers-reduced-motion:reduce){.shot-whoosh,.shot-pop{animation-duration:.01s;animation-delay:.9s}}.snd-track b{font-weight:700}.snd-track-btns{display:flex;gap:6px;flex-shrink:0}.snd-track-btns .btn-icon{width:30px;height:30px}.top{align-items:center;flex-wrap:nowrap;container:hud-top / inline-size}@container hud-top (max-width: 470px){.top>.hud-left{flex:0 0 auto;align-self:flex-start}.top>.hud-tools{flex:1 1 0;flex-wrap:wrap;justify-content:flex-end;row-gap:8px}}@container hud-top (max-width: 600px){.room-chip .hud-chip-text,.room-chip>svg:last-child{display:none}.room-chip{flex-shrink:0}}@media(max-height:480px),(max-width:760px){:root:has(.wardrobe,.shop-wrap) .hud>.top{visibility:hidden}}.hud-left,.hud-tools{display:flex;align-items:center;--attn-gap: 8px;gap:var(--attn-gap);min-width:0}.hud-left{flex:1 1 auto}.hud-tools{flex:0 0 auto}.top .game-menu-button{width:var(--tap);height:var(--tap)}.hud-chip{height:var(--tap);display:inline-flex;align-items:center;gap:6px;padding:0 12px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);text-shadow:none;font-size:13px;font-weight:800;white-space:nowrap;flex-shrink:0}button.hud-chip{pointer-events:auto}button.hud-chip:hover{background:var(--glass-strong);border-color:#ffffff4d;filter:none;transform:translateY(-1px)}button.hud-chip[aria-expanded=true]{box-shadow:0 0 0 2px var(--accent),var(--accent-glow)}.room-chip{min-width:var(--tap);flex-shrink:1;max-width:240px}.room-chip .hud-chip-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.room-chip>svg{flex-shrink:0}.room-chip>svg:last-child{opacity:.7}.hud-online{padding:0 10px;gap:4px;pointer-events:auto}.hud-online svg{color:var(--ok)}.wallet-chip{padding:0 10px 0 11px}.wallet-chip .wardrobe-button-coins{margin-left:2px;padding-left:7px;border-left:1px solid var(--glass-border)}.top .hud-tools .btn-icon{position:relative;flex-shrink:0}.top .btn-icon[aria-expanded=true],.top .game-menu-button[aria-expanded=true]{background:var(--glass-strong);border-color:transparent;box-shadow:0 0 0 2px var(--accent),var(--accent-glow)}.top .hud-tools .act-bag{width:36px;padding:0;display:inline-grid;place-items:center}.hud-badge,.top .friends-button .badge{position:absolute;top:-5px;right:-7px;min-width:18px;height:16px;padding:0 4px;border-radius:var(--r-pill);background:var(--accent);border:1.5px solid #fff;color:#fff;font-size:9.5px;font-weight:900;line-height:13px;text-align:center;pointer-events:none}.top .friends-button .badge,.act-bag.full .hud-badge{background:var(--danger)}.controls-tip{position:fixed;left:50%;bottom:calc(var(--edge-bottom) + 52px);transform:translate(-50%);max-width:calc(100% - 2 * var(--safe));display:flex;align-items:center;gap:16px;padding:11px 20px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:var(--shadow-sm);color:var(--text);font:800 13px/1.3 var(--font-ui);white-space:nowrap;pointer-events:none;animation:controls-tip-in .35s cubic-bezier(.2,1.4,.4,1) both}.controls-tip .ct-group{display:inline-flex;align-items:center;gap:5px;color:var(--text-dim)}.controls-tip .ct-group b{color:var(--text);font-size:15px}.controls-tip .ct-wasd{display:grid;grid-template-columns:repeat(3,22px);grid-template-rows:auto auto;gap:3px}.controls-tip .ct-wasd .keycap{min-width:0;width:22px;margin:0;padding:0;animation:ct-key 1.6s ease-in-out infinite}.controls-tip .ct-wasd .keycap:nth-child(1){grid-area:1 / 2}.controls-tip .ct-wasd .keycap:nth-child(2){grid-area:2 / 1}.controls-tip .ct-wasd .keycap:nth-child(3){grid-area:2 / 2}.controls-tip .ct-wasd .keycap:nth-child(4){grid-area:2 / 3}.controls-tip .ct-wasd .keycap:nth-child(2){animation-delay:.4s}.controls-tip .ct-wasd .keycap:nth-child(3){animation-delay:.8s}.controls-tip .ct-wasd .keycap:nth-child(4){animation-delay:1.2s}.controls-tip.learned{background:#2f9e57;border-color:#ffffff59;animation:ct-learned 1.3s ease forwards}.controls-tip .ct-done{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:15px}@keyframes controls-tip-in{0%{opacity:0;transform:translate(-50%,10px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}@keyframes ct-key{0%,70%,to{transform:translateY(0);box-shadow:0 2px #8a94a3,0 0 0 1px #00000040}15%{transform:translateY(1px);box-shadow:0 1px #8a94a3,0 0 0 1px #00000040;filter:brightness(.92)}}@keyframes ct-learned{0%{transform:translate(-50%) scale(1)}15%{transform:translate(-50%) scale(1.12)}30%,75%{transform:translate(-50%) scale(1);opacity:1}to{transform:translate(-50%) translateY(8px);opacity:0}}@media(max-width:760px){.controls-tip{gap:10px;padding:7px 12px;font-size:12px}.controls-tip .ct-group:nth-child(n+3){display:none}}@media(max-height:480px){.controls-tip.learned{bottom:auto;top:calc(var(--edge-top) + 46px)}}.touch-tip{position:absolute;inset:0;pointer-events:none;z-index:1}.touch-tip-zone{position:absolute;display:grid;justify-items:center;gap:8px;color:#fff;font:900 14px/1.2 var(--font-ui);text-shadow:0 1px 3px rgba(0,0,0,.6);animation:controls-tip-fade .4s ease both}.touch-tip-zone.walk{left:var(--safe);bottom:calc(max(var(--hint-bottom),var(--chat-top)) + 8px)}.touch-tip-zone.walk b{order:1}.touch-tip-zone.look{right:calc(var(--safe) + var(--jump-size) + 16px);bottom:calc(var(--hint-bottom) + 8px)}.touch-tip-zone.look b{order:1}@media(max-aspect-ratio:3 / 4){.touch-tip-zone.look{right:var(--safe);bottom:calc(var(--jump-bottom) + var(--jump-size) + 6px + 6px + 26px + 12px)}}.touch-tip-zone b{white-space:nowrap;padding:4px 10px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border)}.touch-tip-ghost{position:relative;width:84px;height:84px;border-radius:50%;border:2px dashed rgba(255,255,255,.75);background:#ffffff1f}.touch-tip-ghost span{position:absolute;left:50%;top:50%;width:34px;height:34px;margin:-17px 0 0 -17px;border-radius:50%;background:#ffffffd9;box-shadow:0 2px 8px #00000059;animation:touch-tip-stick 2.4s ease-in-out infinite}.touch-tip-ghost.swipe{border:none;background:none;width:120px;height:34px}.touch-tip-ghost.swipe span{width:26px;height:26px;margin:-13px 0 0 -13px;animation:touch-tip-swipe 1.8s ease-in-out infinite}.touch-tip-jump{position:absolute;right:calc(var(--safe) - 6px);bottom:calc(var(--jump-bottom) - 6px);width:calc(var(--jump-size) + 12px);height:calc(var(--jump-size) + 12px)}.touch-tip-jump:before{content:"";position:absolute;inset:0;border-radius:50%;border:3px solid rgba(255,255,255,.9);animation:touch-tip-pulse 1.6s ease-out infinite}.touch-tip-jump b{position:absolute;left:50%;bottom:calc(100% + 6px);translate:-50% 0;padding:3px 9px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);color:#fff;font:900 12px/1.2 var(--font-ui);white-space:nowrap}@keyframes controls-tip-fade{0%{opacity:0}to{opacity:1}}@keyframes touch-tip-stick{0%,to{transform:translate(0)}25%{transform:translateY(-24px)}50%{transform:translate(22px,-6px)}75%{transform:translate(-22px,4px)}}@keyframes touch-tip-swipe{0%{transform:translate(-24px);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translate(24px);opacity:0}}@keyframes touch-tip-pulse{0%{transform:scale(.9);opacity:1}to{transform:scale(1.25);opacity:0}}@media(max-height:480px),(max-width:760px){.hud-left,.hud-tools{--attn-gap: 6px}.hud-chip,.top .game-menu-button{height:var(--tap)}.top .game-menu-button{width:var(--tap)}.hud-chip{padding:0 9px;font-size:12px;gap:5px}.top .hud-tools .act-bag{width:var(--tap)}.room-chip{max-width:180px}.friends-wrap{top:calc(var(--safe) + 38px)}}@media(max-width:480px){.top{gap:4px!important}.hud-left,.top .actions.hud-tools{--attn-gap: 4px;gap:var(--attn-gap)!important}.hud-online{display:none}.hud-chip{padding:0 8px}.room-chip{flex-shrink:0}.room-chip .hud-chip-text,.room-chip>svg:last-child{display:none}}.swim-ring{position:relative;width:60px;height:60px;pointer-events:none}.swim-ring[data-on=false]{display:none}.swim-ring span{position:absolute;inset:0;border:2px solid rgba(255,255,255,.75);border-radius:50%;animation:swim-ripple 2.4s ease-out infinite}.swim-ring span+span{animation-delay:1.2s}.swim-ring[data-moving=true] span{animation-duration:1.2s}.swim-ring[data-moving=true] span+span{animation-delay:.6s}@keyframes swim-ripple{0%{transform:scale(.35);opacity:.9}to{transform:scale(1);opacity:0}}@media(hover:none)and (pointer:coarse){button kbd{display:none!important}}.interact-hint.tap-row{left:auto;right:var(--safe);bottom:calc(var(--jump-bottom) + var(--jump-size) + 12px);transform:none;display:flex;flex-direction:column-reverse;align-items:flex-end;gap:8px;padding:0;background:none;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none;white-space:nowrap;animation:tap-in .16s var(--ease-out)}.interact-hint.tap-row>span{padding:3px 10px;border-radius:var(--r-pill);background:var(--glass-strong);font-size:12px}.interact-tap{min-height:46px;padding:0 18px;border-radius:var(--r-pill);font:900 14px/1.2 var(--font-ui);box-shadow:var(--shadow-sm);pointer-events:auto}.interact-tap:first-child{min-height:56px;padding:0 24px;font-size:16px}.interact-tap:active{scale:.93}@keyframes tap-in{0%{opacity:0;translate:12px 0}}@media(max-height:480px){.interact-hint.tap-row{right:calc(var(--safe) + var(--jump-size) + 12px);bottom:calc(var(--jump-bottom) + 4px);flex-direction:row-reverse;align-items:center}}.treasure-chip{position:absolute;top:calc(var(--safe) + 46px);left:var(--safe);max-width:min(340px,calc(100% - 2 * var(--safe) - 60px));display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:14px;background:var(--glass-strong);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);box-shadow:0 0 0 1px #ffd16673 inset,var(--shadow-sm);color:var(--text);font:700 12px/1.25 var(--font-ui);text-shadow:none;pointer-events:auto;animation:hint-in var(--t-med) var(--ease-out)}.treasure-chip svg{flex:none;color:var(--gold)}.treasure-warmth{flex:none;padding:1px 7px;border-radius:var(--r-pill);background:#78aaff2e;font-size:11px;white-space:nowrap}.treasure-chip.w1 .treasure-warmth{background:#ffc23d33}.treasure-chip.w2 .treasure-warmth{background:#ff5d7340;animation:treasure-hot .8s ease-in-out infinite alternate}@keyframes treasure-hot{to{scale:1.08}}@media(prefers-reduced-motion:reduce){.treasure-chip.w2 .treasure-warmth{animation:none}}.treasure-chip span{min-width:0;overflow:hidden;text-align:left;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.daily-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.daily-list li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;background:var(--glass-light);font-size:13px;line-height:1.3}.daily-list li svg{flex:none;color:var(--gold)}.daily-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.photo-shot{display:block;width:100%;max-height:min(52vh,calc(100vh - 232px));object-fit:contain;border-radius:10px;background:#000}.photo-panel .mp-btn{text-decoration:none;display:inline-flex;align-items:center;gap:6px}.local-map-place.cluster circle{fill:#17405a;stroke:#fff}.local-map-place.cluster text{fill:#fff;font-weight:800;font-size:12px}.local-map-zoom{display:inline-flex;gap:2px;padding:2px;border-radius:999px;background:#ffffff1f}.local-map-zoom button{height:24px;padding:0 10px;border-radius:999px;background:none;box-shadow:none;color:inherit;font-size:11.5px;font-weight:700}.local-map-zoom button.on{background:#ffffffe6;color:#17405a}.local-map-box{position:relative;margin:0 auto;border-radius:14px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--glass-border)}.local-map-box canvas{display:block}.local-map-marks{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.local-map-place{cursor:pointer}.local-map-place circle{fill:#111827c7;stroke:#ffffffd9;stroke-width:1.5}.local-map-place.on circle{fill:var(--accent)}.local-map-place text,.local-map-chest text{font-size:12px;text-anchor:middle;pointer-events:none}.local-map-label{font:800 11px/1 var(--font-ui)!important;fill:#fff;paint-order:stroke;stroke:#000000bf;stroke-width:3px}.local-map-chest circle{fill:#ffc23d2e;stroke:#ffc23d;stroke-width:2;stroke-dasharray:5 4}.local-map-me circle{fill:#fff;stroke:var(--accent);stroke-width:3}.local-map-me path{fill:var(--accent)}.local-map-others circle{fill:#7dd3fc;stroke:#0f172acc;stroke-width:1.5}.daily-list li.daily-streak{background:#ff783c29;font-weight:800}.daily-list li.daily-streak svg{color:#ff7a45}.chat-log .line.system.lux{color:#ffd84a;font-weight:700;text-shadow:0 0 6px rgba(255,190,40,.45),0 1px 1px rgba(0,0,0,.6)}.keys-card dl{display:grid;gap:3px;margin:0 0 6px}.keys-row{display:grid;grid-template-columns:118px minmax(0,1fr);align-items:center;gap:8px;font-size:12.5px}.keys-row dt{white-space:nowrap}.keys-row dd{margin:0;color:var(--text-dim, rgba(255, 255, 255, .8))}.overhead,.crew-flag-label{transition:opacity .18s ease}.overhead.under-hud,.crew-flag-label.under-hud{opacity:0}@media(pointer:coarse){.emote{position:relative}.emote:after{content:"";position:absolute;inset:-5px}}.coin-layer{position:fixed;inset:0;pointer-events:none;z-index:30}.coin-fly{position:absolute;left:-9px;top:-9px;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b0,#ffc23d 45%,#c98a12);box-shadow:0 0 0 1.5px #a86f0c inset,0 2px 6px #00000059}.coin-delta{position:absolute;padding:2px 8px;border-radius:var(--r-pill);font:900 14px/1.2 var(--font-ui);white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.5)}.coin-delta.up{color:#ffe08a;background:#281e0599}.coin-delta.down{color:#ffb1a6;background:#3c0a0a99}:root:has(.act-board,.friends,.shop-wrap,.wardrobe,.mp-center) .coin-delta{display:none}.wallet-chip.coin-up{animation:chip-up .45s cubic-bezier(.2,1.6,.4,1)}.wallet-chip.coin-down{animation:chip-down .4s ease}@keyframes chip-up{35%{scale:1.18;box-shadow:0 0 0 4px #ffd16673}}@keyframes chip-down{25%{translate:-3px 0}50%{translate:3px 0}75%{translate:-2px 0}}.photo-flash{position:fixed;inset:0;z-index:60;background:#fff;pointer-events:none;animation:photo-flash .45s ease-out forwards}@keyframes photo-flash{0%{opacity:.95}to{opacity:0}}.photo-panel .photo-shot{animation:photo-print .5s cubic-bezier(.2,1.4,.4,1) .1s both}@keyframes photo-print{0%{opacity:0;scale:.85;rotate:-3deg}}@media(pointer:coarse){.chat-log{touch-action:none}}body:has(.idock) .controls-tip{display:none}.overhead{transition:opacity .2s ease}.overhead.flip .bubble:after{top:-6px;bottom:auto;border:6px solid transparent;border-top:0;border-bottom-color:#fff}.overhead.occluded,.overhead.offscreen{opacity:0}body:has([role=dialog]:not(.idock),.panel:not(.act-tracker):not([style*="display: none"]),.friends,.local-map) .touch-tip,body:has([role=dialog]:not(.idock),.panel:not(.act-tracker):not([style*="display: none"]),.friends,.local-map) .controls-tip{display:none}.local-map-legend{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-height:96px;overflow-y:auto}.local-map-legend button{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 7px;border-radius:var(--r-pill);background:var(--glass-light);border:1px solid var(--glass-border);box-shadow:none;color:var(--text);font:700 12px/1.2 var(--font-ui)}.local-map-legend button span{font-size:14px}.friends-share b{color:var(--text);font-size:14px}.friends-share span{color:var(--text);line-height:1.4}.friends-code{display:flex;align-items:center;gap:8px}.friends-code code{padding:4px 10px;border-radius:var(--r-sm);background:var(--glass-light);color:var(--gold);font:900 15px/1.3 var(--font-ui);letter-spacing:.08em}.friends-code button{display:inline-flex;align-items:center;gap:5px;padding:5px 12px}.friends-share small{color:var(--text-dim);font-size:11px}.pair-why{color:var(--text-dim);font-weight:600;text-transform:none;letter-spacing:0}.door-wait{width:34px;height:34px;border-radius:50%;background:#1a13108c;display:grid;place-items:center;box-shadow:0 0 18px #ffbe6e99}.door-wait span{width:20px;height:20px;border:3px solid rgba(255,214,150,.35);border-top-color:#ffd28a;border-radius:50%;animation:door-spin .8s linear infinite}@keyframes door-spin{to{transform:rotate(360deg)}}.door-dark .guide-way{display:none!important}.home-tip{position:absolute;top:calc(var(--tap) + 12px);left:0;z-index:30;width:min(280px,100%);padding:10px 12px;border-radius:14px;border:1px solid var(--accent);background:#101420f0;color:var(--text);font-family:var(--font-ui);pointer-events:auto}.home-tip-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-tip ol{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:6px;font-size:14px;font-weight:700}.home-tip li{display:flex;align-items:center;gap:8px}.home-tip li svg{flex:none}.top{--attn-slide-y: -8px}.attn-slot.attn-room{flex:0 1 auto}.attn-room[data-attn=compact] .room-chip .hud-chip-text,.attn-room[data-attn=compact] .room-chip>svg:last-child{display:none}.interact-btn{position:relative;display:inline-grid;place-items:center;padding:0;border-radius:50%;color:#fff;background:linear-gradient(180deg,var(--accent-hi),var(--accent) 55%,var(--accent-lo));border:2px solid rgba(255,255,255,.85);box-shadow:var(--shadow-sm),var(--accent-glow);pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;animation:interact-pulse .42s var(--ease-out)}.interact-btn.main{width:var(--jump-size);height:var(--jump-size)}.interact-btn.minor{width:calc(var(--jump-size) - 14px);height:calc(var(--jump-size) - 14px);background:var(--glass-strong);border-color:var(--glass-border);box-shadow:var(--shadow-sm);animation-name:tap-in}.interact-btn.main .interact-btn-icon{width:calc(var(--jump-size) * .44);height:calc(var(--jump-size) * .44)}.interact-btn.minor .interact-btn-icon{width:calc(var(--jump-size) * .36);height:calc(var(--jump-size) * .36)}.interact-btn:active{scale:.92}.interact-btn-caption{position:absolute;top:50%;right:calc(100% + 8px);translate:0 -50%;padding:3px 9px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border);color:var(--text);font:800 12px/1.2 var(--font-ui);white-space:nowrap;pointer-events:none}@media(max-height:480px){.tap-row .interact-btn-caption,.interact-cluster .interact-btn-caption{top:auto;right:auto;bottom:calc(100% + 6px);left:50%;translate:-50% 0}}@keyframes interact-pulse{0%{opacity:0;scale:.6}60%{opacity:1;scale:1.08;box-shadow:var(--shadow-sm),0 0 0 8px #ff8a4c59}to{scale:1}}.tap-row .interact-btn-caption{width:max-content;max-width:8.5em;white-space:normal;text-align:right}@media(max-height:480px){.tap-row .interact-btn-caption{text-align:center}.interact-hint.tap-row{gap:16px}.interact-hint.tap-row:is(:has(>.interact-btn~.interact-btn),:has(>.interact-btn~.action-cluster-item),:has(>.action-cluster-item~.interact-btn),:has(>.action-cluster-item~.action-cluster-item)) .interact-btn-caption{max-width:calc(var(--jump-size) + 8px)}}.interact-btn-caption:first-letter{text-transform:uppercase}@media(hover:none)and (pointer:coarse)and (max-width:480px){.mp-prompts{left:calc(45vw + 60px);right:var(--safe);transform:none;justify-content:flex-end;bottom:calc(var(--jump-bottom) + 2 * var(--jump-size) + 24px);width:auto;max-width:none}.mp-prompts .mp-prompt-label{white-space:normal;text-align:left;line-height:1.15}}.hud:has(.act-tracker-toggle:not([data-attn=hidden])) .treasure-chip{left:calc(var(--safe) + var(--tap) + 8px);max-width:min(340px,calc(100% - 2 * var(--safe) - var(--tap) - 68px))}.action-cluster:empty{display:none}.action-cluster-item{display:flex;flex-direction:inherit;align-items:inherit;gap:inherit}.interact-hint.tap-row>.interact-note{padding:3px 10px;border-radius:var(--r-pill);background:var(--glass-strong);font-size:12px}.interact-hint.chips{display:inline-flex;align-items:center;gap:6px;padding:0;background:none;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.interact-hint.chips.anchored:after{display:none}.interact-btn.chip{width:auto;height:34px;padding:0 10px 0 4px;display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);border-width:1.5px}.interact-btn.chip .interact-btn-icon{width:18px;height:18px}.interact-btn.chip kbd{min-width:24px;height:24px;padding:0 5px;display:inline-grid;place-items:center;border-radius:999px;background:#ffffffeb;color:var(--accent-lo);font:900 12px/1 var(--font-ui)}.interact-btn.chip .interact-btn-caption{position:static;translate:none;padding:0;background:none;border:none;color:#fff;font-size:13px}.interact-hint.chips>.interact-note{padding:4px 10px;border-radius:var(--r-pill);background:var(--glass-strong);border:1px solid var(--glass-border)}.chat.receded .chat-log{max-height:none;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:0;background:none;border:none;backdrop-filter:none;-webkit-backdrop-filter:none}.chat.receded{width:fit-content;max-width:var(--chat-w)}.chat.receded .chat-log>.line:not(:nth-last-child(-n+3)){display:none}.chat.receded .chat-log .line{max-width:100%;padding:3px 9px;border-radius:12px;background:var(--glass-strong);border:1px solid var(--glass-border)}.chat .chat-log{transition:max-height var(--attn-ms) var(--attn-ease)}.chat.receded>.chat-pill{align-self:flex-start}@media(max-width:760px),(max-height:480px){.chat-log{align-self:flex-start;max-width:calc(100% - var(--jump-size) - 12px);display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:0;background:none;border:none;backdrop-filter:none;-webkit-backdrop-filter:none}.chat-log .line{max-width:100%;padding:3px 9px;border-radius:12px;background:var(--glass-strong);border:1px solid var(--glass-border)}}@media(max-width:760px),(max-height:480px){.chat.receded{max-width:calc(var(--chat-w) - var(--jump-size) - 12px)}.chat.receded .chat-log{max-width:100%}}.shop-sign,.fish-sign,.market-sign,.tower-sign,.race-sign,.tent-tag,.job-sign,.job-order,.job-seat,.eco-plot-label,.guide-way{transition:opacity var(--attn-ms) var(--attn-ease),visibility 0s linear 0s}.attn-off,.edge-off,.under-hud{opacity:0!important;visibility:hidden;pointer-events:none!important;transition:opacity var(--attn-ms) var(--attn-ease),visibility 0s linear var(--attn-ms)!important}.emotes[data-attn=compact]>.emote:not(.more){display:none}.emotes[data-attn]{--attn-slide-y: 8px}
