html,body{overscroll-behavior:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0b0b0e;height:100dvh;margin:0;padding:0;font-family:Segoe UI,system-ui,sans-serif;overflow:hidden}#app{touch-action:none;width:100vw;height:100dvh;display:block}.credits{text-align:center;color:#fdf6ff59;pointer-events:none;z-index:5;margin:0;font-size:.7rem;position:fixed;bottom:.4rem;left:0;right:0}.back-link{z-index:30;color:#fdf6ff;background:#180c28b3;border:1px solid #fdf6ff59;border-radius:999px;padding:.4rem .8rem;font:700 .8rem Segoe UI,system-ui,sans-serif;text-decoration:none;position:fixed;top:.75rem;left:.75rem}.back-link:hover{background:#180c28e6}.rotate-warning{z-index:50;text-align:center;color:#fdf6ff;background:#0b0b0e;flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:none;position:fixed;inset:0}.rotate-warning__icon{font-size:3rem;animation:1.6s ease-in-out infinite rotate-warning-spin}.rotate-warning p{max-width:22rem;margin:0;font-size:1rem;font-weight:600}@keyframes rotate-warning-spin{0%,to{transform:rotate(0)}50%{transform:rotate(-90deg)}}@media (orientation:portrait) and (pointer:coarse){.rotate-warning{display:flex}}.screen{z-index:20;opacity:0;pointer-events:none;background:#0b0b0ed1;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .18s;display:flex;position:fixed;inset:0}.screen--visible{opacity:1;pointer-events:auto}.screen__panel{text-align:center;color:#fdf6ff;background:#14141a;border:1px solid #fdf6ff1a;border-radius:1.5rem;flex-direction:column;align-items:center;gap:.9rem;width:min(26rem,100%);max-height:100%;padding:1.75rem 1.5rem;display:flex;overflow-y:auto}.screen--corner{pointer-events:none;background:0 0;align-items:flex-end;padding:0 1rem 1.2rem}.screen--corner .screen__title,.screen--corner .matchmaking-spinner,.screen--corner .matchmaking-countdown,.screen--corner .ad-slot--loading-hero{display:none}.screen--corner .screen__panel{pointer-events:auto;background:#14141af0;width:min(22rem,100%);padding:1rem 1.25rem}.menu-screen{z-index:20;color:#fdf6ff;opacity:0;pointer-events:none;background:linear-gradient(#0c0418f2 0%,#2e0c40e6 30%,#5a1464d6 60%,#0c0418f5 100%),url(/images/fundo.jpeg) 50% 30%/cover no-repeat;flex-direction:column;transition:opacity .18s;display:flex;position:fixed;inset:0}.menu-screen--visible{opacity:1;pointer-events:auto}.menu-screen__scroll{min-height:0;padding:2.5rem 1.5rem calc(2rem + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;align-items:center;display:flex;overflow-y:auto}.menu-screen__header{text-align:center;margin-bottom:1.75rem}.menu-screen__title{margin:0;font-size:2.4rem;font-weight:800}.menu-screen__subtitle{color:#fdf6ff99;margin:.4rem 0 .9rem;font-size:.9rem}.menu-screen__main{flex-direction:column;gap:1.6rem;width:min(30rem,100%);display:flex}.menu-stat-row{justify-content:center;gap:.6rem;margin-top:.6rem;display:flex}.menu-stat-badge{color:#fdf6ff;background:#fdf6ff14;border:1px solid #fdf6ff26;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.85rem;font-weight:800;display:inline-flex}.menu-stat-badge__icon{color:#ffd166;flex-shrink:0;width:16px;height:16px}.menu-stat-badge--coins{color:#ffd166;border-color:#ffd1664d}.menu-cta{text-align:left;color:#0b0b0e;cursor:pointer;background:linear-gradient(135deg,#e93d82,#f5765f);border:none;border-radius:1.25rem;align-items:center;gap:.9rem;width:100%;padding:1rem 1.4rem;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 10px 24px #e93d8259}.menu-cta:hover{transform:scale(1.015);box-shadow:0 14px 30px #e93d8273}.menu-cta__icon{background:#0b0b0e26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;display:flex}.menu-cta__icon svg{width:1.4rem;height:1.4rem}.menu-cta__text{flex-direction:column;gap:.15rem;display:flex}.menu-cta__title{font-size:1.2rem;font-weight:800}.menu-cta__subtitle{color:#0b0b0ea6;font-size:.78rem;font-weight:600}.menu-section{text-align:left;flex-direction:column;gap:.7rem;display:flex}.menu-section__title{text-transform:uppercase;letter-spacing:.07em;color:#fdf6ff73;margin:0;font-size:.75rem;font-weight:800}.menu-mode-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.menu-mode-card{background:#fdf6ff0d;border:1px solid #fdf6ff1f;border-radius:1rem;flex-direction:column;align-items:center;gap:.5rem;padding:.9rem .5rem;display:flex}.menu-mode-card__badge{color:#0b0b0e;border-radius:999px;padding:.25rem .7rem;font-size:.85rem;font-weight:800}.menu-mode-card--blue .menu-mode-card__badge{background:#2f6bff}.menu-mode-card--orange .menu-mode-card__badge{background:#ffa83d}.menu-mode-card--green .menu-mode-card__badge{background:#4ade80}.menu-mode-card__action{color:#fdf6ff;cursor:pointer;background:#fdf6ff14;border:1px solid #fdf6ff2e;border-radius:999px;justify-content:center;align-items:center;gap:.35rem;width:100%;padding:.45rem .4rem;font-size:.72rem;font-weight:700;display:flex}.menu-mode-card__action:hover{background:#fdf6ff29}.menu-mode-card--blue .menu-mode-card__action--primary{color:#0b0b0e;background:#2f6bff;border-color:#0000}.menu-mode-card--orange .menu-mode-card__action--primary{color:#0b0b0e;background:#ffa83d;border-color:#0000}.menu-mode-card--green .menu-mode-card__action--primary{color:#0b0b0e;background:#4ade80;border-color:#0000}.menu-mode-card__icon{flex-shrink:0;width:14px;height:14px}.menu-tile-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.menu-tile{color:#fdf6ff;cursor:pointer;text-align:center;background:#fdf6ff0d;border:1px solid #fdf6ff1f;border-radius:1rem;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .5rem;transition:background .12s,border-color .12s;display:flex}.menu-tile:hover{background:#fdf6ff1a;border-color:#fdf6ff40}.menu-tile__icon{color:#e93d82;width:1.6rem;height:1.6rem}.menu-tile__label{font-size:.72rem;font-weight:700;line-height:1.2}.menu-section--settings{border-top:1px solid #fdf6ff14;gap:.9rem;padding-top:.6rem}.screen__title{margin:0;font-size:1.7rem;font-weight:800}.screen__subtitle{color:#fdf6ff99;margin:0;font-size:.85rem}.screen__stat-row{gap:.6rem;font-size:.85rem;font-weight:700;display:flex}.screen__stat-pill{background:#fdf6ff14;border-radius:999px;padding:.3rem .7rem}.screen__stat-pill--coins{color:#ffd166}.screen__button{color:#0b0b0e;cursor:pointer;background:#e93d82;border:none;border-radius:999px;width:100%;padding:.8rem 1.4rem;font-size:1rem;font-weight:800;transition:transform .12s,background .12s}.screen__button:hover{background:#f25c98;transform:scale(1.03)}.screen__button--secondary{color:#fdf6ff;background:#fdf6ff14;border:1px solid #fdf6ff40}.screen__button--secondary:hover{background:#fdf6ff29}.screen__button--outline{color:#fdf6ff;background:0 0;border:2px solid #e93d82}.screen__button-row{gap:.6rem;width:100%;display:flex}.screen__toggle{color:#fdf6ff;cursor:pointer;background:#fdf6ff14;border:1px solid #fdf6ff33;border-radius:999px;padding:.4rem 1rem;font-size:.8rem;font-weight:700}.screen__toggle:hover{background:#fdf6ff29}.screen__placeholder-note{color:#fdf6ff73;margin:0;font-size:.75rem}.screen__placeholder-note--error{color:#ff6b6b}.screen__placeholder-note--success{color:#4ade80}.screen__placeholder-note--warning{color:#ffb020;margin-bottom:.6rem;font-weight:600}.screen__field{text-align:left;flex-direction:column;gap:.35rem;width:100%;display:flex}.screen__field[hidden]{display:none}.screen__field-label{color:#fdf6ff99;font-size:.75rem}.pill-options{flex-wrap:wrap;gap:.5rem;display:flex}.pill-options__button{color:#fdf6ff;cursor:pointer;background:#fdf6ff0f;border:1px solid #fdf6ff26;border-radius:999px;padding:.5rem 1rem;font:700 .85rem Segoe UI,system-ui,sans-serif;transition:background .12s,border-color .12s}.pill-options__button--selected{color:#0b0b0e;background:#e93d82;border-color:#e93d82}.avatar-preview-wrap{justify-content:center;display:flex}.avatar-preview{background:#e93d82;border:4px solid #d9d9dd;border-radius:50%;width:88px;height:88px}.avatar-swatches{flex-wrap:wrap;gap:.5rem;display:flex}.avatar-swatch{cursor:pointer;border:2px solid #fdf6ff33;border-radius:50%;width:32px;height:32px;padding:0;transition:border-color .12s,transform .12s}.avatar-swatch--selected{border-color:#fdf6ff;transform:scale(1.15)}.avatar-color2-field--hidden{display:none}.screen__field-row{gap:.5rem;width:100%;display:flex}.screen__field-row .screen__button{white-space:nowrap;flex:none;width:auto;padding:.55rem 1.1rem}.screen__input{color:#fdf6ff;background:#fdf6ff0f;border:1px solid #fdf6ff33;border-radius:.6rem;flex:1;min-width:0;padding:.55rem .8rem;font-family:inherit;font-size:.9rem}.screen__input:focus{border-color:#e93d82;outline:none}.screen__input:disabled{opacity:.5}.difficulty-cards{flex-direction:column;gap:.6rem;width:100%;display:flex}.difficulty-card{text-align:left;border:2px solid var(--difficulty-color,#fdf6ff26);color:#fdf6ff;cursor:pointer;background:#fdf6ff0f;border-radius:1rem;flex-direction:column;gap:.15rem;width:100%;padding:.8rem 1rem;transition:transform .12s,background .12s;display:flex}.difficulty-card:hover{background:#fdf6ff1f;transform:scale(1.02)}.difficulty-card__label{color:var(--difficulty-color,#fdf6ff);font-size:1.05rem;font-weight:800}.difficulty-card__desc{color:#fdf6ff99;font-size:.78rem}.matchmaking-spinner{border:4px solid #fdf6ff26;border-top-color:#e93d82;border-radius:999px;width:4.5rem;height:4.5rem;animation:1s linear infinite matchmaking-spin}@keyframes matchmaking-spin{to{transform:rotate(360deg)}}.matchmaking-countdown{color:#fdf6ff8c;font-variant-numeric:tabular-nums;font-size:.85rem}.endgame-score{align-items:baseline;gap:.6rem;font-size:2.2rem;font-weight:800;display:flex}.endgame-score__p1{color:#f0574b}.endgame-score__p2{color:#4b9bf0}.endgame-result{margin:0;font-size:1.1rem;font-weight:800}.endgame-result--win{color:#4ade80}.endgame-result--loss{color:#f0574b}.endgame-result--draw{color:#fdf6ffcc}.endgame-table{flex-direction:column;gap:.4rem;width:100%;display:flex}.endgame-row{border-radius:.7rem;justify-content:space-between;align-items:center;padding:.5rem .8rem;font-size:.85rem;font-weight:700;display:flex}.endgame-row--p1{background:#f0574b38}.endgame-row--p2{background:#4b9bf038}.endgame-row__stats{color:#fdf6ffd9;gap:.8rem;font-weight:600;display:flex}.endgame-stats{flex-direction:column;gap:.5rem;width:100%;display:flex}.endgame-stats__territory{color:#fdf6ffbf;align-items:center;gap:.5rem;font-size:.75rem;font-weight:700;display:flex}.endgame-stats__territory-bar{background:#4b9bf059;border-radius:999px;flex:1;height:.5rem;overflow:hidden}.endgame-stats__territory-fill{background:#f0574bd9;height:100%}.endgame-stats__players{flex-direction:column;gap:.3rem;display:flex}.endgame-stats__player-row{background:#fdf6ff0d;border-radius:.6rem;justify-content:space-between;align-items:center;padding:.4rem .7rem;font-size:.8rem;font-weight:700;display:flex}.endgame-stats__player-row--me{background:#e93d8233}.endgame-stats__player-detail{color:#fdf6ffb3;font-weight:600}.endgame-xp{flex-direction:column;gap:.35rem;width:100%;display:flex}.endgame-xp-bar{background:#fdf6ff14;border-radius:999px;justify-content:space-between;align-items:center;height:1.6rem;padding:0 .7rem;font-size:.72rem;font-weight:800;display:flex;position:relative;overflow:hidden}.endgame-xp-bar__fill{z-index:0;width:0%;transition:width .9s cubic-bezier(.16,1,.3,1);position:absolute;inset:0}.endgame-xp-bar--gain .endgame-xp-bar__fill{background:#e93d82}.endgame-xp-bar--level .endgame-xp-bar__fill{background:#4ade80}.endgame-xp-bar__label{z-index:1;position:relative}.ad-slot{cursor:pointer;object-fit:contain;border-radius:.8rem;max-width:100%;height:auto;display:block}.ad-slot--loading-hero{width:100%;max-width:20rem}.ad-slot--endgame-banner{width:100%}.ad-slot--replay-lower-third{pointer-events:auto;max-width:16rem;position:absolute;bottom:3.4rem;left:50%;transform:translate(-50%)}.replay-overlay{z-index:25;opacity:0;pointer-events:none;transition:opacity .15s;position:fixed;inset:0}.replay-overlay--visible{opacity:1;pointer-events:none}.replay-overlay--visible .replay-overlay__react,.replay-overlay--visible .replay-overlay__bottom-bar{pointer-events:auto}.replay-overlay__label{letter-spacing:.04em;color:#fdf6ff;background:#0b0b0e99;border-radius:999px;align-items:center;gap:.4rem;padding:.3rem .8rem;font-size:.8rem;font-weight:800;display:flex;position:absolute;top:.9rem;left:50%;transform:translate(-50%)}.replay-overlay__dot{background:#f0574b;border-radius:999px;width:8px;height:8px;animation:1s ease-in-out infinite replay-dot-blink}@keyframes replay-dot-blink{50%{opacity:.2}}.replay-overlay__react{color:#0b0b0e;cursor:pointer;background:#4ade80e6;border:none;border-radius:999px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:800;position:absolute;bottom:5.5rem;left:50%;transform:translate(-50%)}.replay-overlay__react:disabled{opacity:.55;cursor:default}.replay-overlay__progress{background:#fdf6ff26;border-radius:999px;height:4px;position:absolute;bottom:4.4rem;left:1.2rem;right:1.2rem;overflow:hidden}.replay-overlay__progress-fill{background:#e93d82;width:0%;height:100%}.replay-overlay__bottom-bar{justify-content:flex-end;gap:.6rem;display:flex;position:absolute;bottom:1.2rem;left:1.2rem;right:1.2rem}.replay-overlay__bottom-bar .screen__button{width:auto}.voice-widget__iframe-host{width:10px;height:10px;position:fixed;top:-9999px;left:-9999px;overflow:hidden}.voice-mic-button{color:#fdf6ff;cursor:pointer;background:#fdf6ff1f;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-size:.9rem;line-height:1;display:flex}.voice-mic-button:disabled{opacity:.5;cursor:default}.voice-mic-button--live{background:#4ade80d9}.match-voice-hud{z-index:25;pointer-events:none;flex-direction:column;gap:.4rem;display:none;position:fixed;top:.9rem;left:.9rem}.match-voice-hud--visible{display:flex}.match-voice-hud__card{pointer-events:auto;background:#0b0b0e99;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .6rem;display:flex}.match-voice-hud__card--you{background:#e93d8240}.match-voice-hud__avatar{color:#0b0b0e;background:linear-gradient(135deg,#e93d82,#f5a524);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font:800 .62rem Segoe UI,system-ui,sans-serif;display:flex}.match-voice-hud__name{color:#fdf6ff;font-size:.76rem;font-weight:700}.match-voice-hud__mic{margin-left:.2rem}.saved-replays-list{flex-direction:column;gap:.5rem;width:100%;max-height:16rem;display:flex;overflow-y:auto}.saved-replay-row{background:#fdf6ff0f;border-radius:.8rem;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .8rem;font-size:.8rem;display:flex}.saved-replay-row__info{text-align:left;flex-direction:column;gap:.15rem;display:flex}.saved-replay-row__score{font-weight:800}.saved-replay-row__date{color:#fdf6ff8c;font-size:.7rem}.saved-replay-row__actions{gap:.4rem;display:flex}.saved-replay-row__actions button{width:auto;padding:.4rem .7rem;font-size:.72rem}.screen__empty-note{color:#fdf6ff8c;margin:0;font-size:.8rem}.tournament-setup-card{cursor:pointer;text-align:left;background:#fdf6ff0d;border:1px solid #fdf6ff26;border-radius:.85rem;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;margin-bottom:.6rem;padding:.9rem 1.1rem;transition:background .12s,border-color .12s,transform .12s;display:flex}.tournament-setup-card:hover{background:#fdf6ff17;border-color:#e93d8280;transform:translateY(-1px)}.tournament-setup-card--solo{background:#e93d821f;border-color:#e93d82}.tournament-setup-card__title{color:#fdf6ff;font-size:1rem;font-weight:800}.tournament-setup-card__desc{color:#fdf6ff8c;font-size:.78rem}.tournament-waiting{max-width:460px}.tournament-waiting__progress{width:100%}.tournament-waiting__dots{flex-wrap:wrap;justify-content:center;gap:.5rem;margin:.5rem 0 1.25rem;display:flex}.tournament-waiting__dot{background:0 0;border:2px solid #fdf6ff4d;border-radius:50%;width:14px;height:14px;transition:background .2s,border-color .2s}.tournament-waiting__dot--filled{background:#e93d82;border-color:#e93d82}.tournament-waiting__section-label{color:#fdf6ff99;text-align:left;width:100%;margin:0 0 .5rem;font-size:.75rem}.tournament-member-cards{flex-direction:column;gap:.5rem;width:100%;margin-bottom:1rem;display:flex}.tournament-member-card{text-align:left;background:#fdf6ff0d;border:1px solid #fdf6ff1f;border-radius:.7rem;align-items:center;gap:.7rem;padding:.6rem .8rem;display:flex}.tournament-member-card--you{background:#e93d821a;border-color:#e93d8280}.tournament-member-card__avatar{color:#0b0b0e;background:linear-gradient(135deg,#e93d82,#f5a524);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font:800 .75rem Segoe UI,system-ui,sans-serif;display:flex}.tournament-member-card__name{color:#fdf6ff;font-size:.88rem;font-weight:700}.tournament-member-card__mic{margin-left:auto}.tournament-member-card--stats{align-items:center}.tournament-member-card__stats{gap:.4rem;margin-top:.3rem;display:flex}.tournament-bracket-main{width:100%;max-width:none;padding:1.5rem .5rem;overflow-x:auto}.bracket{align-items:center;gap:3.5rem;min-width:760px;padding:1rem 0;display:flex}.bracket__round{flex-direction:column;flex:1;align-items:center;gap:1.5rem;display:flex}.bracket__round-title{text-transform:uppercase;letter-spacing:.08em;color:#fdf6ff80;text-align:center;border-bottom:1px solid #fdf6ff1f;width:100%;margin:0;padding-bottom:.4rem;font-size:.72rem;font-weight:800}.bracket__round-matches{flex-direction:column;flex:1;justify-content:space-around;gap:1.75rem;width:100%;display:flex}.bracket__pair{flex-direction:column;justify-content:space-around;gap:1.75rem;display:flex;position:relative}.bracket__round--qf .bracket__pair:after,.bracket__round--sf .bracket__pair:after{content:"";pointer-events:none;border:2px solid #fdf6ff38;border-left:none;border-radius:0 8px 8px 0;width:1.75rem;position:absolute;top:25%;bottom:25%;right:-1.75rem}.bracket__match{background:linear-gradient(160deg,#fdf6ff12,#fdf6ff08);border:1px solid #fdf6ff1f;border-radius:.75rem;min-width:190px;padding:.6rem .8rem;position:relative;box-shadow:0 4px 14px #00000040}.bracket__match--playing{border-color:#4ade80a6;box-shadow:0 0 0 1px #4ade8040,0 4px 14px #00000040}.bracket__match--completed{opacity:.92}.bracket__status-pill{text-transform:uppercase;letter-spacing:.04em;color:#fdf6ff80;background:#fdf6ff14;border-radius:999px;margin-bottom:.4rem;padding:.1rem .5rem;font-size:.62rem;font-weight:800;display:inline-block}.bracket__status-pill--playing{color:#0b0b0e;background:#4ade80}.bracket__status-pill--completed{color:#fdf6ffa6;background:#fdf6ff1a}.bracket__team{color:#fdf6ffb8;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.83rem;font-weight:600;display:flex}.bracket__team-avatar{color:#0b0b0e;background:#fdf6ff59;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font:800 .6rem Segoe UI,system-ui,sans-serif;display:flex}.bracket__team--winner .bracket__team-avatar{background:linear-gradient(135deg,#e93d82,#f5a524)}.bracket__team-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bracket__team--winner{color:#fdf6ff;font-weight:800}.bracket__team--mine .bracket__team-name{color:#e93d82}.bracket__team--tbd{opacity:.5}.bracket__team-score{flex-shrink:0;font-weight:800}.bracket__team-crown{flex-shrink:0;font-size:.75rem}.bracket__trophy{opacity:.25;filter:grayscale();flex-direction:column;align-items:center;gap:.3rem;margin-top:.5rem;transition:opacity .4s,filter .4s;display:flex}.bracket__trophy-icon{font-size:2.75rem}.bracket__trophy-name{color:#fdf6ff;font-size:.8rem;font-weight:800}.bracket__trophy--won{opacity:1;filter:none;animation:.5s bracket-trophy-pop}@keyframes bracket-trophy-pop{0%{transform:scale(.7)}60%{transform:scale(1.15)}to{transform:scale(1)}}.tournament-bracket__back{width:auto;margin:1.5rem auto 0;padding:.6rem 1.5rem;display:block}.bracket__leave-champion{white-space:nowrap;width:auto;margin-top:.4rem;padding:.6rem 1.4rem}
