@font-face{font-family:Fredoka;src:url(/fonts/fredoka-latin.woff2) format("woff2");font-weight:300 700;font-display:block}:root{--ink: #2a1f1a;--paper: #fdf3e1;--team0: #3fa86b;--team1: #9a55c4;--accent: #ffd34d;--azulejo: #16346b;--azulejo-line: #2f5fb3;--stamp-red: #a8321e;--stamp-teal: #1d7a70;--stamp-mustard: #e3a83b;--line: #d9c9a8;--tile-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cg fill='none' stroke='%23ffffff0d' stroke-width='2'%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Cpath d='M24 5q7 9 0 12q-7-3 0-12zM24 43q7-9 0-12q-7 3 0 12zM5 24q9 7 12 0q-3-7-12 0zM43 24q-9 7-12 0q3-7 12 0z'/%3E%3Cpath d='M0 7a7 7 0 0 0 7-7M41 0a7 7 0 0 0 7 7M48 41a7 7 0 0 0-7 7M7 48a7 7 0 0 0-7-7'/%3E%3C/g%3E%3C/svg%3E");--tile-menu: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cg fill='none' stroke='%232f5fb3' stroke-width='2'%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Cpath d='M24 5q7 9 0 12q-7-3 0-12zM24 43q7-9 0-12q-7 3 0 12zM5 24q9 7 12 0q-3-7-12 0zM43 24q-9 7-12 0q3-7 12 0z'/%3E%3Cpath d='M0 7a7 7 0 0 0 7-7M41 0a7 7 0 0 0 7 7M48 41a7 7 0 0 0-7 7M7 48a7 7 0 0 0-7-7'/%3E%3C/g%3E%3C/svg%3E")}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ink) var(--tile-dark);color:var(--paper);font-family:Fredoka,system-ui,sans-serif;overscroll-behavior:none}#app{display:flex;flex-direction:column;height:100dvh;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));gap:8px}.hud{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.team{display:grid;grid-template-columns:1fr auto;gap:2px 8px;align-items:center}.team.right{text-align:right}.team-name{grid-column:1 / -1;font-weight:700;font-size:.95rem}.team[data-team="0"] .team-name,.team-a h3,.turn[data-team="0"] #turn-name,.team-tint[data-team="0"]{color:#8fe0ad}.team[data-team="1"] .team-name,.team-b h3,.turn[data-team="1"] #turn-name,.team-tint[data-team="1"]{color:#d4a6f0}.card .team-tint[data-team="0"]{color:#2c7d4d}.card .team-tint[data-team="1"]{color:#7d3fa8}.bar{height:12px;border-radius:6px;background:#4a3a32;overflow:hidden}.bar i{display:block;height:100%;width:100%;transition:width .3s}.team[data-team="0"] .bar i{background:var(--team0)}.team[data-team="1"] .bar i{background:var(--team1)}.team.right .bar{transform:scaleX(-1)}.turn{display:flex;flex-direction:column;align-items:center;padding:4px 16px;border-radius:12px;border:3px solid transparent;background:#3a2c25}.turn[data-team="0"]{border-color:var(--team0)}.turn[data-team="1"]{border-color:var(--team1)}#turn-name{font-size:.85rem}#timer{font-weight:700;color:var(--accent)}#game{flex:1;min-height:0;border-radius:14px;overflow:hidden;touch-action:none}.controls{display:flex;align-items:center;gap:10px}#message{flex:1;margin:0;text-align:center;font-size:1rem;min-height:1.3em}.weapons{display:flex;gap:8px}.jump{min-width:52px;min-height:52px;border:0;border-radius:14px;background:#4a3a32;color:var(--paper);font-size:1.5rem;cursor:pointer;touch-action:manipulation}.jump:active{background:var(--accent);color:var(--ink)}.bag{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:76px;min-height:52px;padding:4px 10px;border:2px solid var(--accent);border-radius:14px;background:#3a2c25;color:var(--paper);font:inherit;cursor:pointer}.bag span{font-size:1.4rem;line-height:1}.bag small{font-size:.7rem;white-space:nowrap}.bag b,.bag-slot b{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--accent);color:var(--ink);font-size:.75rem;line-height:20px;text-align:center}.bag[aria-expanded=true]{background:#4a3a32}.actives{display:flex;gap:8px}.actives[hidden]{display:none}.bag.active{border:2px solid #6b5a4e;border-radius:14px}.bag.active.ready{border-color:var(--accent)}.bag.active:disabled{cursor:default;color:var(--paper)}.bag-panel{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:84px;z-index:15;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 120px);overflow-y:auto;padding:12px 14px;border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 14px 40px #00000073}.bag-panel[hidden]{display:none}.bag-tabs{display:flex;flex-wrap:wrap;gap:4px;margin:0 0 10px}.bag-tabs button{flex:none;padding:6px 10px;border:2px solid #e6d8bf;border-radius:999px;background:#fffaf0;color:var(--ink);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap}.bag-tabs button[aria-selected=true]{border-color:var(--ink);background:var(--accent)}.bag-slot[hidden]{display:none}.bag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;margin-bottom:8px}.bag-slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:64px;padding:6px 4px;border:2px solid #e6d8bf;border-radius:12px;background:#fffaf0;color:var(--ink);font:inherit;cursor:pointer}.bag-slot span{font-size:1.5rem;line-height:1.1}.ico{display:block;width:1.2em;height:1.2em;margin:auto;fill:currentColor}.corner-btn .ico{color:var(--paper)}.arma{display:block;width:1.5em;height:1.5em;object-fit:contain}.bag-slot .arma{margin:0 auto}.chip span{display:inline-block;vertical-align:-.25em}.chip .arma{width:1.2em;height:1.2em}.bag-slot small{font-size:.72rem;text-align:center;line-height:1.15}.bag-slot[aria-pressed=true]{border-color:var(--ink);background:var(--accent)}.bag-slot:disabled{opacity:.4;cursor:not-allowed}.bag-slot b{background:var(--ink);color:var(--paper)}.bag-help{margin:2px 0 0;font-size:.82rem;color:#6b5a4e}.help{margin:0;text-align:center;font-size:.8rem;opacity:.7}.result{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#2a1f1a99}.result[hidden]{display:none}.result-stats{width:100%;margin:4px 0 14px;border-collapse:collapse;font-variant-numeric:tabular-nums}.result-stats[hidden],#restart[hidden],#again[hidden]{display:none}.result-stats th,.result-stats td{padding:4px 8px;text-align:right}.result-stats th:first-child,.result-stats td:first-child{text-align:left;font-weight:600}.result-stats th{opacity:.7;font-weight:500}.card{background:var(--paper);color:var(--ink);padding:24px 32px;border-radius:18px;text-align:center}.card h2{margin:0 0 16px}#restart,#again{font:inherit;font-weight:700;padding:10px 22px;border:0;border-radius:12px;background:var(--accent);color:var(--ink);cursor:pointer}@media(max-width:700px),(max-height:480px){.help,.bag small{display:none}.bag{min-width:52px}#message{font-size:.85rem}}.card-actions{display:flex;gap:10px;justify-content:center}.card-actions .secondary{background:#e6d8bf}.options .quit{display:none;width:100%;margin:8px 0 0;background:#e6d8bf}body.playing .options .quit{display:block}#to-menu{font:inherit;font-weight:700;padding:10px 22px;border:0;border-radius:12px;color:var(--ink);cursor:pointer}.menu{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow-y:auto;padding:16px;background:radial-gradient(circle at 50% 32%,#16346b26,#16346beb 62%),var(--tile-menu) var(--azulejo);z-index:10}.menu[hidden],.menu-card[hidden]{display:none!important}.menu-card{display:flex;flex-direction:column;align-items:center;gap:12px;width:min(360px,100%);text-align:center}.menu-logo{width:min(300px,70vw,42dvh);height:auto;filter:drop-shadow(0 8px 18px rgb(0 0 0 / .45))}.tagline{margin:0 0 6px;font-size:1.1rem;color:var(--accent)}.menu-card>button,.join button{width:100%;min-height:52px;border:0;border-radius:14px;font:inherit;font-size:1.1rem;font-weight:700;cursor:pointer}#play-local{background:var(--accent);color:var(--ink)}.bot-row{display:grid;grid-template-columns:auto repeat(3,1fr);gap:6px;align-items:center;width:100%}.bot-row span{font-weight:700;padding-right:4px;white-space:nowrap}.bot-row button{min-height:48px;border:0;border-radius:12px;background:#e6d8bf;color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.join{display:flex;gap:8px;width:100%}.join input{flex:1;min-width:0;min-height:52px;border:2px solid #6b5a4e;border-radius:14px;background:#3a2c25;color:var(--paper);font:inherit;font-size:1.1rem;text-align:center;letter-spacing:.2em;text-transform:uppercase}.join button{width:auto;padding:0 16px;background:var(--team1);color:#fff}#menu-msg{margin:0;min-height:1.3em;color:#ffb3a1}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}@media(max-height:480px){.menu-card{width:min(640px,100%);display:grid;grid-template-columns:auto 1fr;column-gap:20px}.menu-logo{grid-row:span 7;width:min(240px,60dvh)}}.mute{position:fixed;top:max(6px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:20;width:40px;height:40px;border:0;border-radius:50%;background:#3a2c25;font-size:1.1rem;cursor:pointer}.hud{padding-right:44px}.setup{width:100%;background:#3a2c25;border-radius:14px;padding:8px 12px;text-align:left}.setup summary{cursor:pointer;font-weight:700;padding:4px 0}.setup label{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:8px}.setup select{min-height:40px;min-width:0;max-width:60%;border:2px solid #6b5a4e;border-radius:10px;background:var(--paper);color:var(--ink);font:inherit}@media(max-height:480px)and (orientation:landscape){#app{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;grid-template-rows:auto 1fr 1fr;grid-template-areas:"hud hud hud" "wl game wpn" "wr game wpn";gap:4px 6px;padding:max(4px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) 4px max(6px,env(safe-area-inset-left))}.hud{grid-area:hud;gap:6px;padding-right:40px}.team-name{font-size:.7rem}.bar{height:8px}.turn{flex-direction:row;gap:8px;padding:2px 10px;border-width:2px}#turn-name{font-size:.75rem}#game{grid-area:game}.controls{display:contents}.weapons{grid-area:wpn;flex-direction:column;justify-content:center}.jump{width:64px;min-height:52px}.bag{min-width:0;width:64px;min-height:64px}.actives{flex-direction:column}.bag.active{min-height:52px}.bag-panel{bottom:12px;right:calc(max(6px,env(safe-area-inset-right)) + 76px);max-height:calc(100dvh - 68px)}#message{grid-column:2;grid-row:2;align-self:start;justify-self:center;z-index:2;margin-top:6px;padding:2px 10px;border-radius:10px;max-width:90%;background:#2a1f1ab3;font-size:.8rem;pointer-events:none}.mute{width:32px;height:32px;top:max(4px,env(safe-area-inset-top))}}.rotate{display:none}@media(orientation:portrait)and (pointer:coarse){body.playing .rotate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-content:center;text-align:center;gap:8px;background:var(--ink);color:var(--paper);font-size:1.1rem}.rotate span{font-size:3rem}}button{touch-action:manipulation}.coach{position:fixed;left:50%;bottom:96px;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:12px;width:min(560px,calc(100vw - 32px));padding:10px 14px;border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:0 8px 24px #00000059}.coach[hidden]{display:none}.coach p{flex:1;margin:0;font-weight:500}#coach-step{font-weight:700;color:#9a55c4;white-space:nowrap}#coach-skip{border:0;background:none;color:#6b5a4e;font:inherit;text-decoration:underline;cursor:pointer;min-height:40px}.menu-card>.menu-link{background:none;color:var(--paper);min-height:40px;text-decoration:underline;font-weight:500}@media(max-height:480px)and (orientation:landscape){.coach{bottom:10px;padding:6px 12px;font-size:.85rem}}.options-btn{position:fixed;top:max(6px,env(safe-area-inset-top));right:calc(max(8px,env(safe-area-inset-right)) + 46px);z-index:20;width:40px;height:40px;border:0;border-radius:50%;background:#3a2c25;font-size:1.1rem;cursor:pointer}.fs-btn{right:calc(max(8px,env(safe-area-inset-right)) + 92px);color:var(--paper)}.hud{padding-right:138px}.options{border:0;border-radius:18px;padding:20px 24px;width:min(440px,calc(100vw - 32px));background:var(--paper);color:var(--ink);font-family:Fredoka,system-ui,sans-serif}.options::backdrop{background:#2a1f1a99}.options h2{margin:0 0 12px}.options label{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0}.options fieldset{border:2px solid #e6d8bf;border-radius:12px;margin:12px 0}.options fieldset label{justify-content:flex-start}.options input[type=range]{flex:1;max-width:55%}.options .opt-hint{display:block;margin:-4px 0 8px;opacity:.7}.options select{min-height:40px;border-radius:10px;font:inherit}.options form>button{width:100%;min-height:48px;margin-top:8px;border:0;border-radius:12px;background:var(--accent);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}@media(max-height:480px)and (orientation:landscape){.options-btn{width:32px;height:32px;right:calc(max(6px,env(safe-area-inset-right)) + 38px);top:max(4px,env(safe-area-inset-top))}.fs-btn{right:calc(max(6px,env(safe-area-inset-right)) + 76px)}.hud{padding-right:114px}.options{padding:12px 16px;max-height:calc(100dvh - 16px)}.options label{margin:6px 0}}.menu-stats{margin:0;font-size:.85rem;opacity:.7}.team{grid-template-columns:1fr auto}.pips{grid-column:1 / -1;display:flex;gap:4px}.team.right .pips{justify-content:flex-end}.pips i{width:26px;height:5px;border-radius:3px;background:linear-gradient(90deg,var(--paper) var(--hp),#4a3a32 var(--hp))}.pips i.out{background:#e5533d;opacity:.5}.pips i.unknown{background:#9a958b}#game{box-shadow:0 0 0 3px #3a2c25,0 10px 30px #00000073}.menu-card{padding:20px 22px 18px;border-radius:22px;background:#2a1f1adb;box-shadow:0 0 0 4px var(--azulejo-line),0 24px 60px #00000073}@media(max-height:480px)and (orientation:landscape){.pips{display:none}.menu-card{padding:12px 16px}}@media(min-height:481px){body.playing #app{display:block;padding:0}body.playing #game{position:fixed;top:0;right:0;bottom:0;left:0;border-radius:0;box-shadow:none}body.playing .hud,body.playing .controls,body.playing .help{position:fixed;left:var(--field-left, 0);width:var(--field-width, 100%);z-index:10;pointer-events:none;text-shadow:0 1px 3px rgb(0 0 0 / .6)}body.playing .hud{top:var(--field-top, 0);padding:8px 150px 18px 14px;background:linear-gradient(rgb(28 22 20 / .7),transparent)}body.playing .controls{bottom:calc(var(--field-bottom, 0px) + 18px);padding:18px 14px 0;background:linear-gradient(transparent,#1c16148c)}body.playing .controls button{pointer-events:auto}body.playing .help{bottom:var(--field-bottom, 0);padding:2px 14px;background:#1c16148c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.playing .mute,body.playing .options-btn{top:calc(var(--field-top, 0px) + 8px)}body.playing .mute{right:calc(var(--field-right, 0px) + 8px)}body.playing .options-btn{right:calc(var(--field-right, 0px) + 54px)}body.playing .fs-btn{right:calc(var(--field-right, 0px) + 100px)}}.banner{position:fixed;left:var(--field-left, 0);width:var(--field-width, 100%);top:calc(var(--field-top, 0px) + var(--field-height, 100dvh) * .17);z-index:9;padding:8px 0;text-align:center;font-size:clamp(1.1rem,2.4vw,1.9rem);font-weight:700;color:#fff;text-shadow:0 2px 0 var(--ink),0 0 6px var(--ink);pointer-events:none;opacity:0;overflow:hidden}.banner[data-team="0"]{background:#3fa86bd9}.banner[data-team="1"]{background:#9a55c4d9}.banner.show{animation:banner 1.2s both}@keyframes banner{0%{opacity:1;clip-path:inset(0 100% 0 0)}22%,76%{opacity:1;clip-path:inset(0 0 0 0)}to{opacity:1;clip-path:inset(0 0 0 100%)}}body.playing #game:after{content:"";position:fixed;left:var(--field-left, 0);top:var(--field-top, 0);width:var(--field-width, 100%);height:var(--field-height, 100%);background:radial-gradient(ellipse at center,transparent 58%,rgb(42 31 26 / .38) 100%);pointer-events:none}.online-card{display:flex!important;width:min(420px,100%);text-align:left;align-items:stretch}.online-card[hidden]{display:none!important}.view-title{margin:0;text-align:center;font-size:1.5rem;color:var(--accent)}.view-sub{margin:-4px 0 0;text-align:center;font-size:.9rem;opacity:.8}.view-msg{margin:0;min-height:1.3em;text-align:center;color:#ffb3a1}.online-card .field{display:grid;gap:4px;font-weight:600;font-size:.9rem}.online-card input:not([type=radio],[type=checkbox]),.online-card select,.online-card textarea{min-height:44px;min-width:0;width:100%;border:2px solid #6b5a4e;border-radius:12px;background:#3a2c25;color:var(--paper);font:inherit;padding:0 10px}.online-card textarea{padding:8px 10px;resize:vertical}.sound-list{display:grid;gap:6px;max-height:60vh;overflow-y:auto}.sound-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;border-radius:12px;background:#ffffff0f}.sound-row>div{flex:1 1 12em;min-width:0;display:grid}.sound-row small{opacity:.75}.sound-row button:not(.menu-link),.sound-row .file-btn{min-height:40px;padding:8px 12px;border:0;border-radius:10px;font:inherit;font-weight:600;background:#4a3a32;color:var(--paper);cursor:pointer}.sound-row button:disabled{opacity:.4;cursor:default}.sound-row .menu-link{min-height:40px}.report-item{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:#ffffff0f}.report-item p{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left}.report-item small{overflow-wrap:anywhere;opacity:.8}.report-item button{justify-self:end}.online-card .join input{letter-spacing:.2em}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.seg{display:flex;flex-wrap:wrap;gap:6px;border:0;margin:0;padding:0}.seg legend{font-weight:600;font-size:.9rem;margin-bottom:4px}.seg label{flex:1 1 40%;display:flex;gap:6px;align-items:center;justify-content:center;min-height:42px;border-radius:12px;background:#3a2c25;border:2px solid #6b5a4e;font-weight:600;cursor:pointer}.seg label:has(input:checked){background:var(--paper);color:var(--ink);border-color:var(--paper)}.seg input{accent-color:var(--ink)}.seg small{flex-basis:100%;font-size:.8rem;opacity:.8}.online-card>button:not(.menu-link){width:100%;min-height:50px;border:0;border-radius:14px;font:inherit;font-size:1.05rem;font-weight:700;cursor:pointer}.online-card>button:disabled{opacity:.45;cursor:not-allowed}.gold{background:var(--accent);color:var(--ink)}.green{background:var(--team0);color:#fff}.purple{background:var(--team1);color:#fff}#play-online{background:var(--team0);color:#fff}.server-list{display:grid;gap:8px;max-height:40dvh;overflow-y:auto}.server{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;background:#3a2c25;border-radius:12px;padding:8px 10px}.server strong{overflow-wrap:anywhere}.server small{opacity:.8}.server button{grid-row:1 / span 2;grid-column:2;min-height:40px;border:0;border-radius:10px;padding:0 12px;background:var(--team0);color:#fff;font:inherit;font-weight:700;cursor:pointer}.server button:disabled{background:#5a4639;opacity:.7;cursor:not-allowed}.pill{display:inline-block;font-size:.72rem;font-weight:700;padding:1px 8px;border-radius:999px;margin-left:6px;vertical-align:2px;background:var(--accent);color:var(--ink)}.pill.playing{background:#e5533d;color:#fff}.empty-list{text-align:center;opacity:.75;font-size:.9rem;margin:4px 0}.share-code{text-align:center;font-size:2.4rem;font-weight:700;letter-spacing:.18em;background:#3a2c25;border-radius:14px;padding:10px 0}.share-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.share-grid a,.share-grid button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;border:0;border-radius:12px;color:#fff;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.wa{background:#25a35a}.dc{background:#5865f2}.tg{background:#2a9fd6}.sms{background:#7a6a5c}.link-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.link-row input{font-size:.8rem!important}.link-row button{border:0;border-radius:12px;padding:0 12px;background:var(--paper);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.lobby-meta{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;font-size:.82rem}.lobby-meta span{background:#3a2c25;border-radius:999px;padding:3px 10px}.teams{display:grid;grid-template-columns:1fr 1fr;gap:8px}.room-team{border-radius:14px;padding:8px;display:grid;gap:6px;align-content:start;min-height:130px}.room-team h3{margin:0;font-size:.9rem}.team-a{background:#3fa86b2e;border:2px solid var(--team0)}.team-b{background:#9a55c42e;border:2px solid var(--team1)}.team-list,.team-wait{display:grid;gap:6px}.team-wait:empty{display:none}.player{display:flex;align-items:center;gap:6px;background:#3a2c25;border-radius:10px;padding:5px 8px;font-size:.9rem}.player span{flex:1;min-width:0;overflow-wrap:anywhere}.player.offline span{opacity:.5}.player.me span{font-weight:700}.loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:grid;place-items:center;overflow-y:auto;padding:16px;background:#1c1410eb;color:var(--paper)}.loading[hidden],body:not(.playing) .loading{display:none}.load-row{flex-wrap:wrap}.load-row small{opacity:.85}.load-row .bar{flex-basis:100%}.load-row .bar i{background:var(--accent)}.load-row em{flex-basis:100%;font-size:.8rem;opacity:.75;overflow-wrap:anywhere}.player button{border:0;border-radius:8px;min-width:30px;height:28px;background:var(--paper);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.slot-free{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.82rem;opacity:.65;padding:5px 8px;border:2px dashed #6b5a4e;border-radius:10px}.slot-free:has(button){opacity:1}.slot-free button{flex:none;white-space:nowrap;border:0;border-radius:8px;padding:4px 8px;background:var(--paper);color:var(--ink);font:inherit;font-weight:700;cursor:pointer}.lobby-actions{display:flex;justify-content:center;gap:16px}.online-card .menu-link,.account-row .menu-link{background:none;border:0;color:var(--paper);text-decoration:underline;font:inherit;cursor:pointer;min-height:36px}.account-row{display:flex;gap:.6rem;justify-content:center;align-items:center;flex-wrap:wrap;font-weight:600;margin:-.2rem 0 .4rem}.ranking-card{max-width:560px}.rank-tabs{display:flex;gap:6px;margin:0 0 10px}.rank-tabs button{flex:1;padding:8px 10px;border-radius:999px;font:inherit;font-weight:600;opacity:.6}.rank-tabs button[aria-selected=true]{opacity:1;outline:2px solid var(--accent)}.rank-list{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow-y:auto}.rank-row{display:grid;grid-template-columns:2.2em 1fr auto auto 34px;gap:10px;align-items:center;padding:8px 10px;border-radius:12px;background:#ffffff0f}.rank-row.me{outline:2px solid var(--accent)}.rank-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row .pos{font-weight:700;color:var(--accent);text-align:center}.rank-plus{width:34px;height:34px;border:0;border-radius:10px;font:inherit;font-size:1.2rem;font-weight:700;cursor:pointer}.rank-more{padding:6px 12px 12px}.rank-facts{display:grid;grid-template-columns:1fr auto 1fr auto;gap:4px 12px;font-size:.95rem}.rank-facts b{text-align:right}.rank-more h4{margin:10px 0 6px;font-size:.95rem}.rank-uses{display:flex;flex-wrap:wrap;gap:6px}.rank-uses .chip{padding:3px 9px;border-radius:999px;background:#ffffff1a;font-size:.85rem}@media(max-width:420px){.rank-facts{grid-template-columns:1fr auto}}.taunt-preview{display:flex;flex-direction:column;align-items:center;gap:4px;margin:4px 0 10px}.taunt-preview .bubble{position:relative;margin:0;max-width:90%;padding:8px 12px;border-radius:12px;background:#fff;color:#2a1f1a;font-weight:700;text-align:center}.taunt-preview .bubble:after{content:"";position:absolute;left:50%;bottom:-8px;border:8px solid transparent;border-top-color:#fff;border-bottom:0;transform:translate(-50%)}.taunt-pigeon{font-weight:700}.audio-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.audio-row button,.audio-row .file-btn{padding:8px 12px;border:0;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;background:#f4efe6;color:#2a1f1a}.audio-row button:disabled{opacity:.45;cursor:default}.menu-card.admin-card{width:min(720px,calc(100vw - 32px));max-width:none}.adm-table{display:grid;gap:4px;max-height:40vh;overflow-y:auto;font-size:.85rem}.adm-row{display:grid;grid-template-columns:minmax(7em,1fr) 1.8em repeat(5,4.4em);gap:6px;align-items:center;padding:4px 6px;border-radius:8px;background:#ffffff0d}.adm-row.head{background:none;font-weight:700;opacity:.8;position:sticky;top:0;background:var(--card, #2a1f1a)}.adm-row.off{opacity:.5}.adm-row input[type=number]{width:100%;padding:4px;border-radius:6px;border:1px solid rgba(255,255,255,.2);background:#00000040;color:inherit;font:inherit}.adm-row input[type=checkbox]{width:1.2em;height:1.2em}@media(max-width:560px){.adm-row{grid-template-columns:minmax(6em,1fr) 1.8em repeat(5,3.2em);font-size:.78rem}}.ko-banner{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;z-index:50;pointer-events:none;font:900 clamp(5rem,22vw,14rem)/1 "Fredoka",system-ui,sans-serif;letter-spacing:.05em;color:#ffd23f;-webkit-text-stroke:6px #7a0d0d;text-shadow:0 0 0 #000,6px 8px 0 #2a0606,0 0 40px rgb(255 60 30 / .8);animation:ko-slam 1.9s ease-out forwards}@keyframes ko-slam{0%{transform:scale(4) rotate(-8deg);opacity:0}12%{transform:scale(.9) rotate(2deg);opacity:1}18%{transform:scale(1.08) rotate(-1deg)}24%,80%{transform:scale(1) rotate(0);opacity:1}to{transform:scale(1.3);opacity:0}}.turn .clock{font-size:.8em;opacity:.85}.login-card{width:min(400px,100%);align-items:stretch;text-align:left;gap:18px;padding:26px 26px 20px;background:var(--paper);color:var(--ink);border-radius:6px;box-shadow:0 0 0 4px var(--azulejo-line),0 24px 60px #00000073}.login-head{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.stamp{position:relative;width:78px;transform:rotate(-4deg);filter:drop-shadow(0 2px 2px rgb(42 31 26 / .3))}.stamp img{display:block;width:100%;height:auto}.stamp .postmark{position:absolute;top:-4px;left:-2px;width:92px;height:92px;fill:none;stroke:#b0362d;stroke-width:2.2;opacity:0;pointer-events:none}.login-card.sent .postmark{opacity:.8;animation:postmark .35s ease-out}@keyframes postmark{0%{transform:scale(1.6);opacity:0}to{transform:scale(1);opacity:.8}}@media(prefers-reduced-motion:reduce){.login-card.sent .postmark{animation:none}}.login-title{margin:0;font:700 2.1rem/1 Fredoka,system-ui,sans-serif;color:var(--stamp-red)}.login-lede{margin:6px 0 0;font-size:.98rem;line-height:1.4}.login-ask{display:grid;gap:8px}.login-field{font-weight:600;font-size:.92rem}.login-card input{width:100%;min-height:48px;padding:0 14px;border:2px solid #cdbf9f;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:1.05rem}.login-card input:focus-visible{outline:3px solid var(--stamp-teal);outline-offset:1px;border-color:var(--stamp-teal)}.login-card .login-send{min-height:50px;margin-top:4px;border:0;border-radius:12px;font:inherit;font-size:1.05rem;font-weight:700;cursor:pointer;background:var(--stamp-red);color:var(--paper);box-shadow:0 3px #6e1f12}.login-card .login-send:disabled{opacity:.6;cursor:wait}.login-card .login-send:focus-visible,.login-card .menu-link:focus-visible{outline:3px solid var(--stamp-teal);outline-offset:2px}.login-sent{display:grid;gap:6px}.login-sent[hidden],.login-ask[hidden]{display:none}.login-sent-title{margin:0;font:700 1.3rem/1.2 Fredoka,system-ui,sans-serif;color:var(--stamp-red)}.login-sent p{margin:0;line-height:1.45}.login-note{font-size:.88rem;opacity:.75}.login-card .menu-link{min-height:36px;padding:0;border:0;background:none;color:var(--stamp-teal);font:inherit;font-weight:600;text-decoration:underline;cursor:pointer;justify-self:start}.login-card .login-msg:empty{display:none}.login-card .login-msg{margin:0;color:#a3322a}.login-card>.login-back{align-self:flex-start;width:auto}.map-form{display:grid;gap:8px}.map-form>button{width:100%;min-height:50px;border:0;border-radius:14px;font:inherit;font-size:1.05rem;font-weight:700;cursor:pointer}.maps-head{margin:8px 0 0;font-size:1rem}.map-row{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;padding:8px 10px;border-radius:12px;background:#ffffff0f}.map-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-row small{opacity:.75}.map-row .acts{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.map-row .acts button{padding:6px 10px;border:0;border-radius:9px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;background:#f4efe6;color:#2a1f1a}.map-row .acts button.no{background:#c94a3d;color:#fff}.map-row .ask{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;font-size:.85rem}.online-card .danger{background:#c94a3d;color:#fff;margin-top:10px}.online-card .email-join input{text-transform:none;letter-spacing:normal;font-size:1rem}.menu-home{width:min(380px,100%);gap:10px;padding:18px 22px 16px}.menu-home .menu-logo{width:min(250px,62vw,36dvh);margin-top:4px}.menu-home .tagline{margin:-2px 0 2px;font-weight:600}.menu-home .account-row{margin:0 0 4px}.menu-home .menu-link{min-height:36px;padding:0;border:0;background:none;color:var(--paper);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.menu-home>button{border-radius:10px}.menu-home #play-local{background:var(--stamp-red);color:var(--paper);box-shadow:0 3px #6e1f12}.menu-home #play-online{background:var(--stamp-teal);color:var(--paper);box-shadow:0 3px #0f4a44}.menu-home>button:active{transform:translateY(2px);box-shadow:none}.menu-home .bot-row span{font-weight:600}.menu-home .bot-row button{min-height:44px;border:2px solid var(--stamp-mustard);border-radius:10px;background:#fbe7bd;color:var(--ink)}.menu-home .bot-row button:hover{background:var(--stamp-mustard)}.menu-home .setup{background:none;border:2px dashed #6b5a4e;border-radius:10px}.menu-home .setup select{border-color:var(--line);background:#fff}.menu-home .home-links{display:flex;gap:22px;justify-content:center}.menu-home #menu-msg:empty{display:none}.menu-home .menu-stats{opacity:.65}@media(max-height:480px){.menu-home{width:min(640px,100%)}.menu-home .menu-logo{grid-row:span 9;width:min(220px,50dvh)}}.stick,.fire,.touch-only{display:none}@media(pointer:coarse){.fire,.touch-only{display:block}body[data-sticks=touch] .stick:not(.active),body[data-sticks=hidden] .stick{opacity:0}body.playing .stick{display:block}.stick{position:fixed;z-index:11;bottom:calc(var(--field-bottom, 0px) + 14px);width:116px;height:116px;border-radius:50%;touch-action:none;pointer-events:auto;-webkit-tap-highlight-color:transparent;border:10px solid rgb(255 211 77 / .1);background:#ffd34d0d;box-shadow:0 0 15px #00000080 inset,0 0 5px #0003;transition:opacity .15s,border-color .3s,background .3s}.stick.active{border-color:#ffd34d33;background:#ffd34d1a}.stick i{position:absolute;top:calc(50% - 32px);left:calc(50% - 32px);width:64px;height:64px;border-radius:50%;background:#ffd34d40;box-shadow:0 0 5px #000000b3 inset;transition:transform .1s,background .3s;will-change:transform}.stick.active i{background:#ffd34d59;transition:background .3s}#stick-move{left:calc(var(--field-left, 0px) + 14px)}#stick-aim{right:calc(var(--field-right, 0px) + 14px)}}@media(pointer:coarse)and (max-height:480px)and (orientation:landscape){#app{grid-template-columns:0 minmax(0,1fr) 64px}}@media(pointer:coarse)and (min-height:481px){.stick{bottom:calc(var(--field-bottom, 0px) + 90px)}}label.check{display:flex;align-items:center;justify-content:flex-start;gap:10px;text-align:left;cursor:pointer;font-weight:600;font-size:.9rem}label.check input{flex:none;width:20px;height:20px;min-height:0;margin:0;padding:0;accent-color:var(--accent)}
