:root{--ink: #17142a;--ink-2: #221e3d;--ink-3: #2e2950;--ink-4: #3b3566;--line: rgba(255, 255, 255, .14);--text: #fbf7ec;--muted: #c9c3dd;--sun: #ffc21a;--sun-deep: #f28c00;--leaf: #2fb35a;--sky: #7cc6ff;--berry: #ff6b8a;--danger: #ff5a5a;--scrim: rgba(13, 11, 26, .6);--font-display: "Luckiest Guy", "Arial Black", Impact, sans-serif;--font-body: Lexend, "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;--r-sm: 10px;--r-md: 16px;--r-lg: 22px;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);color-scheme:dark}[hidden]{display:none!important}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--ink);color:var(--text);font:16px/1.5 var(--font-body);overflow:hidden;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}#scene{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none;outline:none}#labels{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}#ui>*{pointer-events:auto}.hud{pointer-events:none!important;position:fixed;top:0;right:0;bottom:0;left:0}.hud>*{pointer-events:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}h1,h2,h3{text-wrap:balance;margin:0}button{font-family:inherit}code{background:var(--ink-3);padding:1px 6px;border-radius:6px}.btn{font:600 1rem/1.2 var(--font-body);color:var(--text);background:var(--ink-3);border:2px solid var(--line);border-radius:var(--r-md);min-height:48px;padding:0 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s,background .15s,border-color .15s}.btn:hover{background:var(--ink-4);border-color:#ffffff47}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--sun);color:var(--ink);border-color:#ffd866;box-shadow:0 4px 0 var(--sun-deep)}.btn-primary:hover{background:#ffcd3d;border-color:#ffe08a}.btn-primary:active{box-shadow:0 2px 0 var(--sun-deep);transform:translateY(2px)}.btn-green{background:var(--leaf);border-color:#5fd685;color:#fff}.btn-danger{background:transparent;border-color:var(--danger);color:#ffb3b3}.btn-big{min-height:58px;font-size:1.12rem;width:100%}.btn-huge{min-height:72px;font-size:1.5rem;width:100%;font-family:var(--font-display);letter-spacing:.5px;font-weight:400}.btn-small{min-height:40px;padding:0 12px;font-size:.92rem;border-radius:12px}.btn-google{background:#fff;color:#1f1f1f;border-color:#fff}.btn-google:hover{background:#f1f1f1}.link-btn{background:none;border:0;color:var(--sky);font:500 .95rem var(--font-body);cursor:pointer;padding:8px;text-decoration:underline;text-underline-offset:3px}.link-btn.inline{padding:0;font-size:inherit}.round-btn{width:44px;height:44px;border-radius:50%;border:2px solid var(--line);background:#17142ad1;color:var(--text);font-size:1.2rem;cursor:pointer;display:grid;place-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.round-btn:hover{background:var(--ink-3)}:is(.btn,.round-btn,.tb,.tab,.link-btn,.item,input,select,.card-btn):focus-visible{outline:3px solid var(--sky);outline-offset:2px}.field{display:grid;gap:6px;font-weight:600;font-size:.95rem}.field small{font-weight:400;color:var(--muted)}input,select,textarea{font:1rem var(--font-body);color:var(--text);background:var(--ink);border:2px solid var(--line);border-radius:12px;min-height:48px;padding:10px 14px;width:100%}input:focus,select:focus{border-color:var(--sky);outline:none}.check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}.check input{width:22px;height:22px;min-height:0;margin-top:2px;flex:none;accent-color:var(--sun)}.error{color:#ffb3b3;margin:0;min-height:1.2em;font-size:.95rem}.note{background:var(--ink-3);border-radius:12px;padding:10px 12px;font-size:.92rem;color:var(--muted);margin:0}.note.warn{border-left:4px solid var(--sun);color:var(--text)}.note.small{font-size:.82rem;padding:8px 10px}.lead{color:var(--muted);margin:0}.title{font:400 2.2rem/1.1 var(--font-display);letter-spacing:.5px;color:var(--sun)}.title-sm{font:400 1.5rem/1.1 var(--font-display);letter-spacing:.5px;color:var(--sun)}.h2{font-size:1.1rem;margin-bottom:10px}.card{background:var(--ink-2);border:2px solid var(--line);border-radius:var(--r-lg);padding:18px}.form{display:grid;gap:14px}.sep{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.85rem;margin:14px 0 10px}.sep:before,.sep:after{content:"";flex:1;height:1px;background:var(--line)}.tabs{display:flex;gap:6px;background:var(--ink);padding:4px;border-radius:14px;margin-bottom:14px}.tab{flex:1;min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:600 .95rem var(--font-body);cursor:pointer}.tab[aria-selected=true]{background:var(--ink-3);color:var(--text)}.coin-pill{background:var(--ink);border:2px solid var(--sun);color:var(--sun);border-radius:999px;padding:4px 12px;font-weight:700}.screen{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;display:grid;place-items:center;padding:calc(16px + var(--safe-t)) 16px calc(16px + var(--safe-b))}.screen-solid{background:radial-gradient(1200px 600px at 50% -10%,#3b2f7a 0%,var(--ink) 60%)}.auth-wrap{width:min(440px,100%);display:grid;gap:14px;justify-items:center}.auth-wrap .card{width:100%}.logo{width:min(300px,70vw);height:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.4))}.logo-small{width:min(190px,46vw)}.loading{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:10px;background:var(--ink);z-index:50}.loading p{color:var(--muted)}#home{background:linear-gradient(180deg,#17142a40,#17142abf)}.home-card{width:min(440px,100%);display:grid;gap:14px;justify-items:center;text-align:center;background:#17142ac7;border:2px solid var(--line);border-radius:28px;padding:22px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.home-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.creator{display:block;padding:0;background:transparent;overflow:hidden}.creator-top{position:absolute;top:calc(10px + var(--safe-t));left:16px;right:16px;display:flex;justify-content:space-between;align-items:center;gap:10px;pointer-events:none}.creator-top>*{pointer-events:auto}.creator-stage{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hint-drag{position:absolute;left:0;right:0;top:60px;text-align:center;color:var(--muted);font-size:.85rem;margin:0}.creator-panel{position:absolute;right:16px;top:calc(60px + var(--safe-t));bottom:calc(16px + var(--safe-b));width:min(440px,46vw);display:grid;grid-template-rows:auto auto 1fr auto;gap:10px;padding:14px;background:#221e3df0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.cat-groups{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.cat-groups .tab{flex:none;padding:0 14px;background:var(--ink)}.cat-list{display:flex;gap:6px;flex-wrap:wrap}.cat-list button{border:2px solid var(--line);background:var(--ink);color:var(--muted);border-radius:999px;padding:6px 12px;font:600 .85rem var(--font-body);cursor:pointer}.cat-list button[aria-pressed=true]{border-color:var(--sun);color:var(--text)}.items{overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;align-content:start;padding:2px}.item{position:relative;display:grid;gap:4px;justify-items:center;padding:10px 6px 8px;border-radius:14px;border:2px solid var(--line);background:var(--ink);color:var(--text);cursor:pointer;font:500 .82rem/1.2 var(--font-body);text-align:center;min-height:92px}.item[aria-selected=true]{border-color:var(--sun);box-shadow:0 0 0 2px var(--sun) inset}.item .sw{width:38px;height:38px;border-radius:50%;border:2px solid rgba(255,255,255,.4);display:grid;place-items:center;font-size:1.3rem}.item .price{font-size:.75rem;font-weight:700;color:var(--sun)}.item .price.free{color:#8be0a4}.item .price.owned{color:var(--sky)}.item .tag{position:absolute;top:4px;right:4px;font-size:.65rem;background:#b3202a;color:#fff;border-radius:6px;padding:1px 5px}.creator-actions{display:flex;gap:10px}.creator-actions .btn{flex:1}.topbar{position:absolute;top:calc(8px + var(--safe-t));left:calc(8px + var(--safe-l));right:calc(8px + var(--safe-r));display:flex;gap:6px;align-items:center}.tb{position:relative;display:inline-flex;align-items:center;gap:6px;height:46px;padding:0 12px;border-radius:14px;border:2px solid var(--line);background:#17142ad6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);font:600 .92rem var(--font-body);cursor:pointer;white-space:nowrap}.tb:hover{background:var(--ink-3)}.tb .ico{font-size:1.15rem}.tb-me{padding-left:4px;max-width:40vw}.tb-me span{overflow:hidden;text-overflow:ellipsis}.mini-face{width:36px;height:36px;border-radius:10px;background:var(--ink-3);flex:none}.tb-menu{margin-left:auto;font-size:1.2rem}.badge{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--berry);color:#fff;font:700 .72rem/20px var(--font-body);font-style:normal;text-align:center;border:2px solid var(--ink)}.place-chip{position:absolute;top:calc(62px + var(--safe-t));left:50%;transform:translate(-50%);background:#17142ab3;border-radius:999px;padding:4px 14px;font-weight:600;font-size:.9rem;pointer-events:none!important;white-space:nowrap}.side-btns{position:absolute;right:calc(10px + var(--safe-r));top:calc(70px + var(--safe-t));display:grid;gap:8px}.prompt{position:absolute;left:50%;bottom:calc(140px + var(--safe-b));transform:translate(-50%);background:var(--sun);color:var(--ink);border:0;border-radius:999px;padding:12px 22px;font:700 1.05rem var(--font-body);box-shadow:0 6px 0 var(--sun-deep),0 10px 30px #00000059;cursor:pointer;max-width:calc(100% - 32px)}.joy{display:none;position:absolute;left:calc(18px + var(--safe-l));bottom:calc(86px + var(--safe-b));width:130px;height:130px}.joy-base{position:absolute;left:50%;top:50%;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;background:#17142a73;border:2px solid rgba(255,255,255,.35)}.joy-knob{position:absolute;left:50%;top:50%;width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;background:#ffffffd9;box-shadow:0 2px 8px #0006}@media (pointer: coarse){.joy{display:block}}.chatbar{position:absolute;left:calc(8px + var(--safe-l));right:calc(8px + var(--safe-r));bottom:calc(8px + var(--safe-b));display:flex;gap:6px;align-items:center;max-width:720px;margin:0 auto;background:#17142ad6;border:2px solid var(--line);border-radius:16px;padding:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chatbar input{border:0;background:transparent;min-height:40px;padding:6px 8px;flex:1;min-width:0}.chat-to{display:flex;align-items:center;gap:4px;background:var(--ink-3);border-radius:10px;padding:4px 4px 4px 10px;font-size:.85rem;font-weight:600;white-space:nowrap;max-width:40%;overflow:hidden}.chat-to.whisper{background:#4a2a6a}.chat-to button{border:0;background:none;color:var(--muted);cursor:pointer;font-size:.9rem}.chat-whisper{border:2px solid var(--line);background:transparent;border-radius:10px;height:40px;width:40px;cursor:pointer;font-size:1.1rem}.chat-whisper[aria-pressed=true]{background:#4a2a6a;border-color:#b58ae0}.mention-list{position:absolute;left:6px;bottom:100%;margin:0 0 6px;padding:6px;list-style:none;background:var(--ink-2);border:2px solid var(--line);border-radius:12px;min-width:200px;max-height:220px;overflow:auto}.mention-list li button{width:100%;text-align:left;border:0;background:none;color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer;font:500 .95rem var(--font-body)}.mention-list li button:hover,.mention-list li button:focus{background:var(--ink-3)}.chatlog{position:absolute;left:calc(8px + var(--safe-l));bottom:calc(70px + var(--safe-b));width:min(420px,calc(100% - 80px));display:grid;gap:4px;pointer-events:none!important}.chatlog p{margin:0;background:#17142aa8;border-radius:10px;padding:4px 10px;font-size:.88rem;animation:fadeOut 12s forwards;overflow-wrap:anywhere}.chatlog p b{color:var(--sun)}.chatlog p.whisper{background:#4a2a6acc}.chatlog p.to-me{border-left:3px solid var(--sun)}.chatlog p.sys{color:var(--muted);font-style:italic}@keyframes fadeOut{0%,80%{opacity:1}to{opacity:0}}@media (pointer: coarse){.chatlog{left:calc(160px + var(--safe-l));width:auto;right:10px}}.nametag{position:absolute;left:0;top:0;pointer-events:auto;border:0;background:#17142ab8;color:#fff;font:600 .8rem var(--font-body);padding:3px 9px;border-radius:999px;white-space:nowrap;cursor:pointer;will-change:transform}.nametag:disabled{cursor:default;opacity:.85}.bubble{position:absolute;left:0;top:0;max-width:240px;background:#fff;color:var(--ink);padding:7px 12px;border-radius:16px;font:500 .88rem/1.3 var(--font-body);box-shadow:0 4px 14px #00000040;will-change:transform;overflow-wrap:anywhere}.bubble:after{content:"";position:absolute;left:50%;bottom:-7px;margin-left:-7px;border:7px solid transparent;border-bottom:0;border-top-color:#fff}.bubble.whisper{background:#e9dcff;font-style:italic}.bubble.whisper:after{border-top-color:#e9dcff}.panel{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;justify-content:flex-end;z-index:20}.panel-card{width:min(440px,100%);height:100%;background:var(--ink-2);border-left:2px solid var(--line);display:grid;grid-template-rows:auto 1fr;padding-top:var(--safe-t);padding-bottom:var(--safe-b);animation:slideIn .18s ease-out}@keyframes slideIn{0%{transform:translate(30px)}}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:2px solid var(--line)}.panel-head h2{font:400 1.4rem var(--font-display);color:var(--sun);letter-spacing:.5px}.panel-body{overflow-y:auto;padding:16px;display:grid;gap:14px;align-content:start}.list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.row{display:flex;align-items:center;gap:10px;background:var(--ink);border:2px solid var(--line);border-radius:14px;padding:10px 12px}.row .grow{flex:1;min-width:0}.row .name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .sub{font-size:.82rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.row.clickable{cursor:pointer}.row.clickable:hover{border-color:#ffffff4d}.dot{width:10px;height:10px;border-radius:50%;background:#666;flex:none}.dot.on{background:#4be07a;box-shadow:0 0 8px #4be07a}.unread{background:var(--berry);color:#fff;border-radius:999px;padding:0 7px;font-size:.75rem;font-weight:700}.empty{color:var(--muted);text-align:center;padding:16px;margin:0}.seg{display:flex;gap:6px;background:var(--ink);padding:4px;border-radius:12px}.seg button{flex:1;border:0;background:none;color:var(--muted);border-radius:9px;min-height:38px;font:600 .88rem var(--font-body);cursor:pointer}.seg button[aria-pressed=true]{background:var(--ink-3);color:var(--text)}.place-card{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center}.place-card .emoji{font-size:1.8rem;width:48px;height:48px;display:grid;place-items:center;background:var(--ink-3);border-radius:12px}.ledger li{display:flex;justify-content:space-between;gap:10px;font-size:.9rem;border-bottom:1px solid var(--line);padding:8px 0}.ledger .plus{color:#8be0a4;font-weight:700}.ledger .minus{color:#ffb3b3;font-weight:700}.big-coins{font:400 2.6rem var(--font-display);color:var(--sun);text-align:center}.currencies{display:grid;grid-template-columns:1fr 1fr;gap:8px}.currency{background:var(--ink);border:2px dashed var(--line);border-radius:14px;padding:10px;text-align:center;font-size:.85rem;color:var(--muted)}.pm-thread{display:grid;grid-template-rows:auto 1fr auto;height:100%;gap:10px}.pm-msgs{overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:4px;min-height:200px;max-height:calc(100vh - 260px)}.pm-msg{max-width:80%;padding:8px 12px;border-radius:14px;background:var(--ink);align-self:flex-start;overflow-wrap:anywhere}.pm-msg.me{align-self:flex-end;background:var(--ink-4)}.pm-msg time{display:block;font-size:.7rem;color:var(--muted)}.pm-form{display:flex;gap:6px}.profile-head{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center}.profile-head canvas{width:96px;height:96px;border-radius:18px;background:var(--ink-3)}.profile-name{font:400 1.6rem var(--font-display);color:var(--text);letter-spacing:.5px;overflow-wrap:anywhere}.facts{display:flex;flex-wrap:wrap;gap:6px}.fact{background:var(--ink);border-radius:999px;padding:4px 10px;font-size:.85rem}.grid-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:16px;z-index:30}.modal-card{width:min(460px,100%);max-height:90vh;overflow:auto;background:var(--ink-2);border:2px solid var(--line);border-radius:var(--r-lg);padding:20px;display:grid;gap:12px}.modal-card h3{font:400 1.5rem var(--font-display);color:var(--sun);letter-spacing:.5px}.modal-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.modal-actions .btn{flex:1 1 auto}.notes{position:fixed;top:calc(64px + var(--safe-t));right:calc(10px + var(--safe-r));width:min(360px,calc(100% - 20px));display:grid;gap:8px;z-index:25;pointer-events:none}.note-pop{pointer-events:auto;background:var(--ink-2);border:2px solid var(--sun);border-radius:16px;padding:12px 14px;box-shadow:0 10px 30px #0006;display:grid;gap:8px;animation:pop .2s ease-out}.note-pop .nt{font-weight:700}.note-pop .ns{font-size:.88rem;color:var(--muted)}.note-pop .ns.warn{color:#ffcf6b}.note-pop .na{display:flex;gap:6px}.note-pop .na .btn{flex:1}@keyframes pop{0%{transform:translateY(-8px) scale(.97)}}#toast{position:fixed;left:50%;bottom:calc(90px + var(--safe-b));transform:translate(-50%) translateY(20px);background:var(--ink);border:2px solid var(--sun);border-radius:14px;padding:10px 16px;opacity:0;transition:.2s;pointer-events:none;z-index:40;max-width:calc(100% - 32px);text-align:center}#toast.show{opacity:1;transform:translate(-50%)}.lobby{display:block;padding:calc(12px + var(--safe-t)) 16px calc(16px + var(--safe-b))}.lobby-top{display:flex;align-items:center;gap:12px;max-width:1100px;margin:0 auto 14px}.lobby-top h1{flex:1}.lobby-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:14px;align-items:start}.lobby-actions{display:grid;gap:10px}.code-form{display:flex;gap:6px}.code-form input{text-transform:uppercase;letter-spacing:2px}.people{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.people li{background:var(--ink);border-radius:999px;padding:4px 12px;font-size:.88rem}.table-row .seats{display:flex;gap:3px}.table-row .seat{width:12px;height:12px;border-radius:50%;background:var(--ink-4)}.table-row .seat.full{background:var(--leaf)}.stake{font-weight:700;color:var(--sun);white-space:nowrap}.stake.free{color:#8be0a4}.opts{display:grid;gap:12px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:2px solid var(--line);background:var(--ink);color:var(--text);border-radius:999px;min-height:40px;padding:0 14px;font:600 .92rem var(--font-body);cursor:pointer}.chip[aria-pressed=true]{border-color:var(--sun);background:#3a3010}.prize-table{width:100%;border-collapse:collapse;font-size:.92rem}.prize-table td,.prize-table th{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left}.prize-table .plus{color:#8be0a4;font-weight:700}.prize-table .minus{color:#ffb3b3;font-weight:700}.table-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:grid;place-items:center;padding:16px;z-index:22}.to-card{width:min(480px,100%);display:grid;gap:12px;max-height:90vh;overflow:auto}.to-actions{display:flex;gap:8px;flex-wrap:wrap}.to-actions .btn{flex:1}.waitbar{height:10px;background:var(--ink);border-radius:999px;overflow:hidden}.waitbar i{display:block;height:100%;background:var(--sun);transition:width .5s linear}.res-row{display:grid;grid-template-columns:34px 1fr auto auto;gap:8px;align-items:center;padding:8px 10px;border-radius:12px;background:var(--ink)}.res-row.me{outline:2px solid var(--sun)}.res-place{font:400 1.3rem var(--font-display);color:var(--sun);text-align:center}.res-delta.plus{color:#8be0a4;font-weight:700}.res-delta.minus{color:#ffb3b3;font-weight:700}.carte{display:grid;grid-template-rows:auto 1fr auto;padding:calc(10px + var(--safe-t)) 10px calc(10px + var(--safe-b));background:radial-gradient(ellipse at 50% 40%,#1f6b4a,#134430 55%,#0c2a1f);place-items:stretch}.carte-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.carte-info{display:flex;gap:12px;font-weight:700;background:#0000004d;padding:6px 14px;border-radius:999px}.carte-table{position:relative;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;gap:8px;min-height:0}.opponents{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding-top:6px}.opp{position:relative;min-width:96px;background:#00000047;border:2px solid transparent;border-radius:14px;padding:6px 10px;text-align:center;font-size:.85rem}.opp.turn{border-color:var(--sun);box-shadow:0 0 16px #ffc21a80}.opp.out{opacity:.55}.opp .on{font-weight:700;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.opp .oc{display:flex;justify-content:center;gap:2px;margin-top:4px}.opp .mini{width:10px;height:15px;border-radius:3px;background:linear-gradient(135deg,#3b2f7a,#ff5a8a);border:1px solid rgba(255,255,255,.5)}.opp .react{position:absolute;top:-14px;right:-6px;font-size:1.5rem;animation:pop .2s}.opp.target-pick{cursor:pointer;border-color:var(--sky)}.pile{display:flex;align-items:center;justify-content:center;gap:18px;position:relative}.card-back,.pcard{width:74px;height:108px;border-radius:12px;flex:none}.card-back{border:3px solid #fff;background:repeating-linear-gradient(45deg,#3b2f7a 0,#3b2f7a 8px,#2e2557 8px,#2e2557 16px);color:#fff;font-weight:700;cursor:pointer;display:grid;place-items:end center;padding-bottom:6px;box-shadow:0 6px 14px #00000059}.card-back:disabled{cursor:default;opacity:.7}.discard{position:relative;width:74px;height:108px}.color-dot{width:26px;height:26px;border-radius:50%;border:3px solid #fff}.dir{font-size:1.6rem;opacity:.7;transition:transform .3s}.dir.rev{transform:scaleX(-1)}.pcard{position:relative;border:3px solid #fff;color:#fff;display:grid;place-items:center;font:400 1.9rem var(--font-display);text-shadow:0 2px 0 rgba(0,0,0,.35);box-shadow:0 4px 10px #00000059;padding:4px;text-align:center;line-height:1}.pcard small{position:absolute;left:6px;top:4px;font:700 .8rem var(--font-body);text-shadow:none}.pcard .cl{font:700 .62rem/1.1 var(--font-body);text-shadow:none;position:absolute;bottom:5px;left:3px;right:3px}.pcard.R{background:#d8343f}.pcard.G{background:#e8b417;color:#2b2010;text-shadow:none}.pcard.V{background:#2b9a4f}.pcard.B{background:#2f6bd0}.pcard.W{background:conic-gradient(#d8343f 0,#d8343f 25%,#e8b417 0,#e8b417 50%,#2b9a4f 0,#2b9a4f 75%,#2f6bd0 0)}.pcard.W .inner{background:#17142a;border-radius:10px;padding:6px 4px;font-size:1.3rem}.turn-msg{margin:0;font-weight:700;text-align:center;background:#0000004d;padding:6px 14px;border-radius:999px;min-height:1.5em}.carte-log{position:absolute;left:0;bottom:0;max-width:46%;display:grid;gap:3px;font-size:.78rem;color:#dfeee6;pointer-events:none}.carte-log p{margin:0;background:#00000047;border-radius:8px;padding:2px 8px}.my-area{display:grid;gap:8px}.my-actions{display:flex;justify-content:center;gap:10px}.btn-bastarda{background:#ff5a8a;color:#fff;border-color:#ffa0bb;box-shadow:0 4px #a8233c;font-family:var(--font-display);font-weight:400;font-size:1.2rem;letter-spacing:.5px}.btn-bastarda.ready{animation:pulse .8s infinite}@keyframes pulse{50%{transform:scale(1.08)}}.hand{display:flex;justify-content:center;gap:0;overflow-x:auto;padding:14px 10px 6px;scrollbar-width:thin}.hand .pcard{margin:0 -10px;cursor:pointer;transition:transform .12s}.hand .pcard:hover,.hand .pcard:focus-visible{transform:translateY(-14px);z-index:2}.hand .pcard.ok{box-shadow:0 0 0 3px var(--sun),0 4px 10px #00000059}.hand .pcard.no{filter:brightness(.6) saturate(.7)}.hand.wait .pcard{cursor:default}.reactions{position:absolute;right:10px;bottom:calc(160px + var(--safe-b));display:grid;gap:4px}.reactions button{width:40px;height:40px;border-radius:50%;border:0;background:#0000004d;font-size:1.2rem;cursor:pointer}.color-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px}.color-pick button{min-height:64px;border-radius:14px;border:3px solid #fff;font:700 1rem var(--font-body);color:#fff;cursor:pointer}.rules-cards{display:grid;gap:10px}.rules-cards .rc{display:grid;grid-template-columns:60px 1fr;gap:12px;align-items:center}.rules-cards .pcard{width:56px;height:80px;font-size:1.3rem}.race-top{position:absolute;top:calc(8px + var(--safe-t));left:10px;right:10px;display:flex;justify-content:space-between;align-items:center}.race-stats{display:flex;gap:12px;background:#17142acc;border-radius:999px;padding:6px 16px;font-weight:700;font-variant-numeric:tabular-nums}.countdown{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font:400 clamp(4rem,18vw,10rem) var(--font-display);color:var(--sun);text-shadow:0 6px 0 var(--sun-deep),0 10px 40px rgba(0,0,0,.5);pointer-events:none!important}.countdown:empty{display:none}.progress{position:absolute;left:50%;transform:translate(-50%);top:calc(64px + var(--safe-t));width:min(420px,70vw);height:12px;background:#17142ab3;border-radius:999px;pointer-events:none!important}.progress-bar{height:100%;width:0;background:var(--sun);border-radius:999px}.progress-dots i{position:absolute;top:-4px;width:20px;height:20px;margin-left:-10px;border-radius:50%;border:2px solid #fff;font-size:.55rem;color:#fff;display:grid;place-items:center;font-style:normal;font-weight:700}.jump-btn{display:none;position:absolute;right:calc(24px + var(--safe-r));bottom:calc(40px + var(--safe-b));width:84px;height:84px;font-size:2rem}.race-joy{bottom:calc(30px + var(--safe-b))}@media (pointer: coarse){.jump-btn{display:grid}}@media (max-width: 760px){.tb-txt{display:none}.tb{padding:0 10px;height:44px}.tb-me span{display:none}.creator-panel{left:8px;right:8px;width:auto;top:auto;height:52vh;bottom:calc(8px + var(--safe-b))}.hint-drag{top:52px}.lobby-grid{grid-template-columns:1fr}.card-back,.pcard,.discard{width:60px;height:88px}.pcard{font-size:1.5rem}.title{font-size:1.8rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
