*{box-sizing:border-box}html,body{margin:0;overflow-x:hidden;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#050606;color:#e5e7eb}.account-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;max-width:640px;margin:12px auto 0;padding:10px 16px;border:1px solid #374151;border-radius:8px;background:#1f2937;font-size:13px}.account-bar-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.account-bar-avatar-fallback{display:flex;align-items:center;justify-content:center;background:#374151;color:#e5e7eb;font-weight:700;font-size:13px}.account-bar-link{padding:4px 10px;font-size:12px;background:transparent;border:1px solid #4b5563;border-radius:6px;color:#4ade80;cursor:pointer}.account-bar-link:hover{background:#374151}.account-bar-upgrade-badge{padding:4px 10px;font-size:12px;font-weight:600;background:transparent;border:1px solid #d4af37;border-radius:6px;color:#d4af37;cursor:pointer}.account-bar-upgrade-badge:hover{background:#d4af3726}.account-bar-unread-dot,.tournament-unread-dot{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:#ef4444;vertical-align:middle}.account-bar-name{font-weight:600;color:#e5e7eb}.account-bar-rank{color:#d4af37;font-weight:600}.account-bar-stats{color:#9ca3af;flex:1}.account-bar-logout{padding:4px 10px;font-size:12px;background:transparent;border:1px solid #4b5563;border-radius:6px;color:#e5e7eb;cursor:pointer}.account-bar-logout:hover{background:#374151}.account-bar:has(+.app-grid){max-width:none;margin:8px 10px 0}.lobby{max-width:640px;margin:0 auto 20px;padding:12px 24px 24px}.lobby-hero-subtitle{font-weight:300}.lobby-hero-wrap{position:relative;margin:0 -24px;height:700px;overflow:hidden}.lobby-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 0%}.lobby-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0e1666}.lobby-hero-content{position:absolute;top:0;right:0;bottom:0;left:0;padding:24px 24px 28px}.lobby-hero-welcome{position:absolute;left:50%;top:72%;transform:translate(-50%);width:min(420px,78%);height:auto}.lobby-footer-placeholder{height:72px}.lobby-hero-logo-overlay{display:block;width:min(128px,27%);height:auto;margin-bottom:12px}.lobby-hero-hamburger{position:absolute;top:24px;right:24px}.lobby-hero-hamburger .hamburger-menu-trigger{padding:10px 14px;font-size:22px;background:#111827a6;border-color:#ffffff40}.lobby-hero-hamburger .hamburger-menu-trigger:hover{background:#111827d9}@media (max-width: 640px){.lobby-hero-wrap{margin:0 -16px;height:450px}.lobby-hero-content{padding:16px 16px 24px}.lobby-hero-welcome{width:min(300px,82%)}.lobby-hero-logo-overlay{width:min(96px,32%)}.lobby-hero-hamburger{top:14px;right:14px}}.lobby-content-section{background:#050606;padding-top:8px}.lobby-top-nav{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:8px;margin-bottom:20px}.lobby-topleft-menu{display:flex;justify-content:flex-start;margin-bottom:12px}.hub-topbar{display:flex;align-items:center;margin-bottom:12px}.hub-bottombar{display:flex;align-items:center;margin-top:20px}.hub-back-button{background:none;border:none;color:#4ade80;font-size:14px;font-weight:600;padding:4px 0;cursor:pointer}.hub-back-button:hover{text-decoration:underline}.hub-cards{display:flex;flex-direction:column;gap:14px;margin:20px 0}.hub-card{display:flex;align-items:center;gap:16px;width:100%;padding:18px 20px;border:2px solid #22c55e;border-radius:12px;background:#1f2937;color:inherit;font:inherit;text-align:left;cursor:pointer}.hub-card:hover{background:#4ade8014}.hub-card-body{display:flex;flex-direction:column;gap:4px}.hub-card-title{font-size:18px;font-weight:700}.hub-card-desc{font-size:13px;color:#9ca3af}.hub-card-link-button{display:inline-block;text-decoration:none;text-align:center}.hamburger-menu{position:relative}.hamburger-menu-trigger{position:relative;padding:6px 12px;font-size:18px;line-height:1;background:transparent;border:1px solid #4b5563;border-radius:6px;color:#e5e7eb;cursor:pointer}.hamburger-menu-trigger:hover{background:#374151}.hamburger-menu-badge{position:absolute;top:2px;right:4px;width:8px;height:8px;border-radius:50%;background:#ef4444}.hamburger-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:20;display:flex;flex-direction:column;min-width:200px;padding:6px;border:1px solid #374151;border-radius:8px;background:#1f2937;box-shadow:0 8px 24px #00000059}.hamburger-menu-item{display:block;padding:8px 10px;border:none;border-radius:6px;background:none;color:#e5e7eb;font-size:13px;text-align:left;text-decoration:none;cursor:pointer}.hamburger-menu-item:hover{background:#374151}.lobby input:not([type=checkbox]){padding:8px;margin-right:8px;width:220px}.lobby-cards{display:grid;grid-template-columns:1fr;gap:20px;margin:24px 0}.lobby-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px;border:2px solid #22c55e;border-radius:12px;background:#1f2937}.lobby-card h2{margin:0;font-size:20px}.lobby-card input:not([type=checkbox]){width:100%;margin-right:0}.lobby-card-section{display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;margin-top:6px;padding-top:20px;border-top:1px solid #374151}.lobby-card-secondary-action{background:none;border:none;color:#9ca3af;text-decoration:underline;padding:0;font-size:.85rem}.lobby-card-secondary-action:hover{color:#d1d5db}.lobby-options-toggle{align-self:flex-start;display:inline-flex;align-items:flex-start;gap:8px;text-align:left;background:#4ade8014;border:1px solid #4b5563;border-radius:8px;color:#d1d5db;font-size:.85rem;font-weight:600;padding:6px 14px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.lobby-options-toggle:hover,.lobby-options-toggle:focus-visible{background:#4ade802e;border-color:#4ade80;color:#fff}.lobby-options-toggle-icon{display:inline-block;color:#4ade80;transition:transform .15s ease}.lobby-options-toggle-icon-open{transform:rotate(90deg)}.lobby-options-toggle-detail{font-weight:400;color:#9ca3af}.quick-play-button{background:#16a34a;border-color:#16a34a;color:#f0fdf4;font-weight:600;padding:8px 20px}.quick-play-button:hover:not(:disabled){background:#22c55e}.app-grid{display:grid;gap:12px;padding:10px;grid-template-columns:1fr;grid-template-areas:"roomturn" "board" "actions" "selected" "feedback" "deploy" "log"}.app-header{grid-area:header;font-size:13px;font-weight:600;color:#e5e7eb;padding:4px 2px}.panel-room-turn{grid-area:roomturn}.panel-board{grid-area:board;min-width:0}.panel-actions{grid-area:actions}.panel-feedback{grid-area:feedback}.panel-selected{grid-area:selected}.panel-deploy{grid-area:deploy}.panel-log{grid-area:log}.panel-room-turn,.panel-actions,.panel-feedback,.panel-selected,.panel-deploy,.panel-log{display:flex;flex-direction:column;gap:12px;min-width:0}@media (min-width: 700px) and (orientation: landscape) and (max-width: 1024px){.app-grid{grid-template-columns:minmax(0,1fr) 280px;grid-template-areas:"board     roomturn" "board     actions" "board     selected" "deploy    feedback" "deploy    log"}.app-header{display:none}}@media (min-width: 1025px){.app-grid{gap:16px;padding:16px;grid-template-columns:1fr 340px;grid-template-areas:"board     roomturn" "board     actions" "board     selected" "deploy    feedback" "deploy    log"}.app-header{display:none}.panel-actions .turn-controls{background:transparent;padding:0;margin-top:-4px}}.board{width:min(100%,calc(100vw - 20px));max-width:760px;margin:0 auto;aspect-ratio:1 / 1;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;touch-action:manipulation;user-select:none;-webkit-user-select:none}.board-grid{display:grid;grid-template-columns:repeat(12,minmax(18px,1fr));grid-template-rows:minmax(13px,4.5%) repeat(12,minmax(18px,1fr));width:100%;height:100%;min-width:251px;min-height:251px;gap:.5px;background:#1f2937;padding:2px;border-radius:6px}.col-head{display:flex;align-items:center;justify-content:center;font-size:clamp(7px,1.8vw,12px);color:#9ca3af}.row-number-overlay{position:absolute;top:1px;left:1px;font-size:clamp(6px,1.5vw,10px);line-height:1;color:#9ca3af;background:#0f172abf;border-radius:2px;padding:1px 2px;pointer-events:none;z-index:5}.cell{position:relative;background:#0f172a;border:.5px solid #1f2937;min-height:0;min-width:0;padding:1px;cursor:pointer;font-size:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.cell:hover{background:#1e293b}.cell.loading-zone{background:transparent}.loading-zone-frame{pointer-events:none;border-radius:4px;background-repeat:no-repeat,repeat;background-position:center,0 0;background-size:calc(100% - 8px) calc(100% - 8px),auto;background-image:linear-gradient(#0f172a,#0f172a),repeating-linear-gradient(45deg,#47536633 0,#47536633 4px,#0f172a 4px,#0f172a 8px)}.loading-zone-label{display:flex;align-items:center;justify-content:center;pointer-events:none;color:#475366;font-family:Stardos Stencil,Arial Black,sans-serif;font-weight:700;font-size:clamp(6px,2.2vw,12px);letter-spacing:.08em;text-align:center;white-space:nowrap}.cell.airstrip{outline:1px dashed #38bdf8;outline-offset:-2px}.cell.legal-move{background:#14532d55;box-shadow:inset 0 0 0 2px #22c55e}.cell.legal-target{box-shadow:inset 0 0 0 2px #ef4444}.cell.preview-target{box-shadow:inset 0 0 0 2px #fb923c;outline:2px dashed #fb923c;outline-offset:-4px}.cell.selected{box-shadow:inset 0 0 0 2px #facc15}.cell.deploy-removable{box-shadow:inset 0 0 0 2px #f87171}@keyframes combat-flash-white{0%,to{box-shadow:inset 0 0 0 3px #fff;background:#fff3}50%{box-shadow:inset 0 0 0 3px #fffa;background:transparent}}@keyframes combat-flash-red{0%,to{box-shadow:inset 0 0 0 3px #ef4444;background:#ef444455}50%{box-shadow:inset 0 0 0 3px #ef4444aa;background:transparent}}@keyframes combat-flash-amber{0%,to{box-shadow:inset 0 0 0 3px #f59e0b;background:#f59e0b55}50%{box-shadow:inset 0 0 0 3px #f59e0baa;background:transparent}}@keyframes combat-flash-grey{0%,to{box-shadow:inset 0 0 0 3px #9ca3af;background:#9ca3af44}50%{box-shadow:inset 0 0 0 3px #9ca3afaa;background:transparent}}@keyframes combat-flash-blue{0%,to{box-shadow:inset 0 0 0 3px #3b82f6;background:#3b82f655}50%{box-shadow:inset 0 0 0 3px #3b82f6aa;background:transparent}}@keyframes combat-flash-purple{0%,to{box-shadow:inset 0 0 0 3px #a855f7;background:#a855f755}50%{box-shadow:inset 0 0 0 3px #a855f7aa;background:transparent}}.cell.move-highlight{background:#1a2338}@keyframes ammo-pulse{0%,to{transform:scale(1);font-weight:400}50%{transform:scale(1.35);font-weight:800}}.cell.combat-attacker{animation:combat-flash-white .4s ease-in-out 3;z-index:1}.cell.combat-destroyed{animation:combat-flash-red .4s ease-in-out 3;z-index:1}.cell.combat-secured{animation:combat-flash-amber .4s ease-in-out 3;z-index:1}.cell.combat-no-effect{animation:combat-flash-grey .4s ease-in-out 3;z-index:1}.cell.combat-pending{animation:combat-flash-purple .4s ease-in-out 3;z-index:1}.cell.combat-protector{animation:combat-flash-blue .4s ease-in-out 3;z-index:1}.cell-ammo.ammo-changed{display:inline-block;animation:ammo-pulse .4s ease-in-out 3}.muzzle-flash{position:relative;pointer-events:none;z-index:6}.muzzle-flash:before{content:"";position:absolute;top:50%;left:50%;width:60%;height:60%;border-radius:50%;background:radial-gradient(circle,#fff9c4 0%,#fde047 35%,#f59e0b 60%,transparent 75%);animation:muzzle-flash-pop .28s ease-out forwards}@keyframes muzzle-flash-pop{0%{transform:translate(-50%,-50%) scale(0);opacity:1}40%{transform:translate(-50%,-50%) scale(1.3);opacity:1}to{transform:translate(-50%,-50%) scale(1.6);opacity:0}}.move-arrow-anchor{position:relative;pointer-events:none;z-index:4;opacity:1;transition:opacity .4s ease}.move-arrow-anchor.move-arrow-faded{opacity:0}.move-arrow-line{position:absolute;top:50%;left:50%;height:4px;background:#e5e7eb;border-radius:2px;opacity:.9;transform-origin:0 50%}.move-arrow-line.move-arrow-head:after{content:"";position:absolute;right:-2px;top:50%;width:0;height:0;border-style:solid;border-width:6px 0 6px 11px;border-color:transparent transparent transparent #e5e7eb;transform:translateY(-50%)}.move-arrow-anchor.move-arrow-fire .move-arrow-line{background:#ef4444}.move-arrow-anchor.move-arrow-fire .move-arrow-line.move-arrow-head:after{border-color:transparent transparent transparent #ef4444}.tracer-anchor{position:relative;pointer-events:none;z-index:6}.tracer-line{position:absolute;top:50%;left:50%;height:2px;transform-origin:0 50%;opacity:0;animation:tracer-fade .3s ease-out forwards;animation-delay:.05s}.tracer-rapidFire{background:linear-gradient(90deg,#f4f4f5,#d4d4d8 45%,transparent 95%);box-shadow:0 0 4px 1px #d4d4d899}.tracer-highExplosive{background:linear-gradient(90deg,#fecaca,#ef4444 45%,transparent 95%);box-shadow:0 0 4px 1px #ef444499}@keyframes tracer-fade{0%{opacity:0}25%{opacity:1}to{opacity:0}}.explosion{position:relative;pointer-events:none;z-index:6}.explosion:before,.explosion:after{content:"";position:absolute;top:50%;left:50%;border-radius:50%;animation-delay:.15s}.explosion:before{width:90%;height:90%;background:radial-gradient(circle,#fff7ed 0%,#fb923c 30%,#ef4444 55%,transparent 75%);animation:explosion-burst .5s ease-out forwards}.explosion:after{width:100%;height:100%;border:3px solid #fca5a5;animation:explosion-ring .5s ease-out forwards}@keyframes explosion-burst{0%{transform:translate(-50%,-50%) scale(0);opacity:1}50%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1.1);opacity:0}}@keyframes explosion-ring{0%{transform:translate(-50%,-50%) scale(.3);opacity:.9}to{transform:translate(-50%,-50%) scale(1.8);opacity:0}}.explosion-debris{position:absolute;top:50%;left:50%;width:8%;height:8%;border-radius:50%;background:#fb923c;transform:translate(-50%,-50%);opacity:0;animation:explosion-debris-fly .5s ease-out forwards;animation-delay:.15s}@keyframes explosion-debris-fly{0%{transform:translate(-50%,-50%);opacity:1}to{transform:translate(calc(-50% + var(--debris-dx)),calc(-50% + var(--debris-dy)));opacity:0}}.board-token{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;width:95%;height:95%;border-radius:18%;background:#34495e;border:.5px solid #bbf7d0;color:#fff;box-sizing:border-box;padding:8%;font-size:clamp(6px,2.6vw,13px);font-weight:700;letter-spacing:.02em;text-align:center;overflow:hidden}.board-token.destroyed{opacity:.35;text-decoration:line-through}.board-token{width:100%;height:100%;border-radius:0;border:none}.board-token.owner-player1{background:#000;color:#fff;border:1px solid #ffffff}.board-token.owner-player2{background:#fff;color:#000}.board-token-hq{font-size:clamp(8px,3.4vw,17px);font-weight:800;letter-spacing:normal}.board-token-line{display:block;font-size:clamp(8px,3.4vw,17px);font-weight:800;color:#d32f2f}.board-token.tree-token{gap:0;background:#052e16;padding:0}.tree-icon{width:100%;height:100%;flex-shrink:0}.cell-unit-circle{display:flex;flex-direction:column;width:96%;height:96%;border-radius:18%;overflow:hidden}.cell-unit-circle.token-above-move-arrow{position:relative;z-index:5}.cell-unit-circle.owner-player1{background:#000;border:1px solid #ffffff;color:#fff}.cell-unit-circle.owner-player2{background:#fff;border:1px solid #000000;color:#000}.cell-unit-circle.air-unit{border-color:#3b82f6}.cell-unit-circle.owner-player2.air-unit{border-width:2px}.cell-unit-circle.air-unit .cell-unit-abbr{color:#3b82f6;font-weight:900}.cell-unit-abbr{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;font-size:clamp(5px,2.1vw,9px);font-weight:800}.cell-unit-abbr-large{font-size:clamp(6.5px,2.7vw,11.5px)}.cell-unit-abbr-small{font-size:clamp(4px,1.5vw,6.5px)}.cell-ghost-unit{display:flex;align-items:center;justify-content:center;width:96%;height:96%;border-radius:18%;border:1px dashed currentColor;opacity:.6}.cell-ghost-unit.owner-player1{color:#fff}.cell-ghost-unit.owner-player2{color:#000;background:#fff5}.animated-unit{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;pointer-events:none;z-index:20;transition-property:transform;transition-timing-function:ease-in-out;will-change:transform}@keyframes animated-unit-pulse{0%,to{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.8);transform:scale(1.25)}}.animated-unit-pulsing{animation:animated-unit-pulse .2s ease-in-out}.cell-ammo{order:-1;align-self:flex-end;flex:0 0 auto;padding:2% 6% 0 0;font-size:clamp(6px,2.3vw,10px);font-weight:800;line-height:1}.board-legend{font-size:12px;color:#9ca3af;margin-top:8px}.panel-room-turn section,.panel-actions section,.panel-selected section,.panel-log section{background:#1f2937;border-radius:8px;padding:12px}.panel-room-turn section.turn-card-green{background:#14532d}.panel-room-turn section.turn-card-yellow{background:#7a6800}.panel-room-turn section.turn-card-red{background:#7f1d1d}.cell.suggestion-highlight{box-shadow:inset 0 0 0 3px #eab308;animation:suggestion-pulse 1.4s ease-in-out infinite}@keyframes suggestion-pulse{0%,to{box-shadow:inset 0 0 0 3px #eab308}50%{box-shadow:inset 0 0 0 3px #fde047}}.cell.guided-highlight{outline:3px solid #fb923c;outline-offset:-3px}.cell.candidate-tag-0{outline:3px solid #22d3ee;outline-offset:-3px}.cell.candidate-tag-1{outline:3px solid #ec4899;outline-offset:-3px}.cell.candidate-tag-2{outline:3px solid #a855f7;outline-offset:-3px}.cell.candidate-tag-3{outline:3px solid #fbbf24;outline-offset:-3px}.cell.callout-yellow{outline:3px solid #eab308;outline-offset:-3px}.cell.callout-blue{outline:3px solid #3b82f6;outline-offset:-3px}.cell.callout-red{outline:3px solid #ef4444;outline-offset:-3px}.cell.callout-red-fill{background:#7f1d1d55}.cell.suggestion-highlight-target{box-shadow:inset 0 0 0 3px #dc2626;animation:suggestion-pulse-target 1.4s ease-in-out infinite}@keyframes suggestion-pulse-target{0%,to{box-shadow:inset 0 0 0 3px #dc2626}50%{box-shadow:inset 0 0 0 3px #fca5a5}}.suggestion-prompt{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:500;width:min(92vw,420px);background:#422006;border:1px solid #eab308;border-radius:8px;padding:16px;box-shadow:0 10px 30px #00000080;animation:pid-pop-in .25s ease-out}.suggestion-prompt h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;color:#fde68a}.suggestion-prompt-action{margin:0 0 8px;font-weight:600}.suggestion-prompt-principle{margin:0 0 12px;color:#d6cfc2;font-size:13px;line-height:1.4}.ask-sky-queen-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:8px;padding:10px 14px;background:#422006;border:1px solid #eab308;border-radius:8px;color:#fde68a;font-weight:600;cursor:pointer}.ask-sky-queen-button:hover{background:#57320a}.ask-sky-queen-button-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;border:2px solid #eab308;flex-shrink:0}.sky-queen-prompt-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.sky-queen-prompt-header h3{margin:0}.sky-queen-prompt-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #eab308;flex-shrink:0}.panel-room-turn h3,.panel-selected h3,.panel-log summary{margin:0 0 8px;font-size:13px;text-transform:uppercase;color:#9ca3af}.panel-log summary{cursor:pointer;list-style:none}.panel-log summary::-webkit-details-marker{display:none}.panel-log summary:before{content:"▸ ";display:inline-block;transition:transform .15s ease}.panel-log details[open] summary:before{transform:rotate(90deg)}.turn-controls{background:#1f2937;border-radius:8px;padding:12px}.invite-row{display:flex;gap:4px;margin:6px 0}.invite-row input{flex:1;min-width:0}.watch-row input{border-style:dashed}.invite-friend-row{flex-wrap:wrap}.invite-friend-row select{flex:1;min-width:0}.invite-friend-row .hint,.invite-friend-row .error-box{flex-basis:100%;margin:0}.spectator-count-hint{margin:-2px 0 6px}.spectator-badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;color:#4ade80;border:1px solid #4b5563;border-radius:6px}.spectator-page .mobile-resign-btn{display:none}.hint{color:#9ca3af;font-size:12px}.link-button{background:none;border:none;padding:0;margin:0;color:#22c55e;font-size:inherit;font-family:inherit;text-decoration:underline;cursor:pointer}.link-button:hover{color:#4ade80}.preview-target-hint{color:#fb923c}.preview-target-hint-intro{padding:6px 10px;background:#fb923c1f;border:1px solid #fb923c;border-radius:6px;font-weight:600}.unit-detail{color:#9ca3af;font-size:12px;line-height:1.4;margin:8px 0 0}.button-row{display:flex;gap:8px;margin-top:8px}button{cursor:pointer;border:1px solid #374151;background:#374151;color:#e5e7eb;padding:6px 10px;border-radius:4px}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){background:#4b5563}.resign-button{border-color:#7f1d1d;color:#fecaca}.resign-button:hover:not(:disabled){background:#7f1d1d}.error-box{background:#7f1d1d;color:#fecaca;padding:8px;border-radius:6px}.message-box{background:#14532d;color:#bbf7d0;padding:8px;border-radius:6px}.winner-banner{font-size:18px;font-weight:700;color:#facc15}.action-log{max-height:240px;overflow-y:auto;font-size:12px;display:flex;flex-direction:column-reverse;gap:4px}.log-line{border-bottom:1px solid #374151;padding-bottom:4px}.deploy-hint{margin-top:8px}@keyframes pid-pop-in{0%{opacity:0;transform:translate(-50%,-12px)}to{opacity:1;transform:translate(-50%)}}.pid-prompt{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:500;width:min(92vw,420px);background:#422006;border:1px solid #eab308;border-radius:8px;padding:16px;box-shadow:0 10px 30px #00000080;animation:pid-pop-in .25s ease-out}.protection-decision-prompt{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:500;width:min(92vw,420px);background:#2e1065;border:1px solid #a855f7;border-radius:8px;padding:16px;box-shadow:0 10px 30px #00000080;animation:pid-pop-in .25s ease-out}.protection-decision-prompt-header{margin:0 0 14px;font-size:18px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;color:#fff}.protection-decision-target-row,.protection-decision-candidate-row{display:flex;align-items:center;gap:10px;font-weight:700;color:#fff;font-size:14px}.protection-decision-target-row{margin-bottom:2px}.protection-decision-col-pos{flex:0 0 34px}.protection-decision-col-label{flex:1 1 auto}.protection-decision-col-ammo{flex:0 0 20px;text-align:right}.protection-decision-status{margin:0 0 14px;font-size:14px;font-weight:700;color:#fff}.protection-decision-section-header{margin:0 0 10px;font-size:13px;font-weight:700;color:#e9d5ff}.protection-decision-candidate-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.protection-decision-candidate-row{gap:10px}.protection-decision-engage{margin-left:auto;background:#a855f7;border:none;border-radius:6px;color:#fff;font-weight:700;text-transform:uppercase;font-size:13px;padding:8px 18px}.protection-decision-tag-swatch{display:inline-block;width:12px;height:12px;border-radius:50%;flex:0 0 12px}.protection-decision-tag-swatch.candidate-tag-0,.protection-decision-engage.candidate-tag-0{background:#22d3ee}.protection-decision-engage.candidate-tag-0{color:#062a30}.protection-decision-tag-swatch.candidate-tag-1,.protection-decision-engage.candidate-tag-1{background:#ec4899}.protection-decision-engage.candidate-tag-1{color:#fff}.protection-decision-tag-swatch.candidate-tag-2,.protection-decision-engage.candidate-tag-2{background:#a855f7}.protection-decision-engage.candidate-tag-2{color:#fff}.protection-decision-tag-swatch.candidate-tag-3,.protection-decision-engage.candidate-tag-3{background:#fbbf24}.protection-decision-engage.candidate-tag-3{color:#451a03}.protection-decision-hold-fire{display:block;width:100%;background:#a855f7;border:none;border-radius:6px;color:#fff;font-weight:700;text-transform:uppercase;font-size:13px;padding:10px;margin-bottom:12px}.protection-decision-prompt-timer{margin:0;font-size:11px;color:#c4b5fd;line-height:1.4}.protection-decision-waiting-note{padding:10px 12px;font-size:13px;color:#d6cfc2;background:#2e1065;border-radius:8px;text-align:center}.big-clock,.mobile-deploy-btn,.mobile-resign-btn{display:none}@media (max-width: 768px){button{min-height:44px;padding:10px 14px;font-size:14px;touch-action:manipulation}input,select,textarea{font-size:16px;min-height:40px}.button-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button-row button{width:100%}.action-log{max-height:220px}.lobby{margin:0 auto 24px;padding:12px 16px 16px}.lobby input:not([type=checkbox]){width:100%;margin-right:0;margin-bottom:8px}.vs-ai-picker input[type=checkbox]{width:auto;flex-shrink:0;margin:0}.app-header{display:none}.game-page{display:flex;flex-direction:column}.game-page>.account-bar,.game-page>.top-controls-row{order:10}.game-page>.app-grid{order:1}.panel-room-turn{flex-direction:row;background:#1f2937;border-radius:8px;padding:12px;gap:0}.panel-room-turn section{background:transparent;border-radius:0;padding:0;flex:1;min-width:0}.panel-room-turn section:first-child{border-right:1px solid #374151;padding-right:12px;margin-right:12px}.room-turn-clock{display:none}.panel-heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.big-clock{display:block;background:#fff;color:#111827;font-size:15px;font-weight:500;line-height:1;padding:4px 8px;border-radius:6px;font-variant-numeric:tabular-nums}.big-clock-low{color:#b91c1c}@keyframes big-clock-flash{0%,49%{background:#fff;color:#b91c1c}50%,to{background:#fecaca;color:#7f1d1d}}.big-clock-flash{animation:big-clock-flash .6s steps(1,start) infinite}.desktop-deploy-btn,.desktop-resign-btn{display:none}.mobile-deploy-btn,.mobile-resign-btn{display:inline-block}.mobile-resign-btn{width:auto;min-height:0;padding:6px 12px;font-size:13px}}@media (max-width: 420px){.app-grid{gap:8px;padding:6px}.action-log{max-height:200px}button{padding:10px 8px;font-size:13px}}.auth-panel-wrapper{display:flex;flex-direction:column;align-items:center}.back-to-play-button{margin-top:24px}.foundation-redeem-intro{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:480px;margin:48px auto;gap:12px;padding:0 16px}.auth-panel{width:min(440px,calc(100% - 32px));margin:64px auto;padding:32px;background:linear-gradient(180deg,#121a26fa,#090e16fa);border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 24px 70px #00000073}.auth-brand{text-align:center;margin-bottom:28px}.auth-logo{display:block;width:min(300px,86%);height:auto;margin:0 auto 14px}.auth-brand p{margin:0;color:#aeb8c6;font-size:14px;line-height:1.5}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:24px;padding:5px;background:#ffffff0d;border-radius:10px}.auth-tabs button{border:0;background:transparent;color:#9ca8b8;border-radius:7px;font-weight:700}.auth-tabs button.active{background:#fff;color:#111827}.auth-panel form{display:grid;gap:18px}.auth-panel label{display:grid;gap:7px;color:#dbe3ec;font-size:13px;font-weight:700}.auth-panel input{width:100%;box-sizing:border-box;padding:12px 13px;color:#fff;background:#0c131d;border:1px solid #344152;border-radius:9px;outline:none}.honeypot-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.auth-panel input:focus{border-color:#e6392f;box-shadow:0 0 0 3px #e6392f2e}.auth-panel form>button{width:100%;margin-top:4px;padding:13px 18px;border:0;border-radius:9px;background:#e6392f;color:#fff;font-weight:800;letter-spacing:.02em;cursor:pointer}.auth-panel form>button:hover:not(:disabled){background:#f04439}.auth-panel form>button:disabled{opacity:.65;cursor:wait}.auth-panel .error-box{margin-top:18px}.plan-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.plan-option{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px;background:#0c131d;border:1px solid #344152;border-radius:9px;color:#dbe3ec;cursor:pointer}.plan-option-selected{border-color:#e6392f;box-shadow:0 0 0 2px #e6392f40}.plan-option-title{font-size:13px;font-weight:700}.plan-option-price{font-size:12px;color:#9ca8b8;font-weight:400}.plan-picker-hint{display:block;margin-top:6px;font-weight:400}@media (max-width: 520px){.auth-panel{margin:28px auto;padding:24px 18px;border-radius:14px}.auth-logo{width:min(260px,90%)}}.profile-page{max-width:640px;margin:24px auto 60px;padding:0 24px}.profile-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.profile-logo{height:32px;width:auto}.profile-header h1{font-size:20px;margin:0;font-family:Stardos Stencil,Arial Black,sans-serif;letter-spacing:.03em}.profile-summary{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid #374151;border-radius:8px;margin-bottom:24px}.profile-avatar{width:64px;height:64px;flex-shrink:0}.profile-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.profile-avatar-fallback{width:100%;height:100%;border-radius:50%;background:#374151;color:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700}.profile-username{font-weight:600;font-size:16px;margin-bottom:4px}.premium-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;color:#422006;background:#fbbf24;vertical-align:middle}.founding-badge{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;color:#fff7ed;background:#b45309;vertical-align:middle}.profile-rank{font-weight:600;font-size:14px;color:#d4af37;margin-bottom:4px}.rank-stars{color:#d4af37;letter-spacing:1px}.rank-progress{margin-top:12px;max-width:320px}.rank-progress-track{position:relative;height:10px;border-radius:6px;background:#374151;overflow:visible}.rank-progress-fill{position:absolute;top:0;right:0;bottom:0;left:0;width:0;border-radius:6px;background:linear-gradient(90deg,#b8860b,#d4af37);transition:width .3s ease}.rank-progress-marker{position:absolute;top:-17px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;pointer-events:none}.rank-progress-marker:after{content:"▾";font-size:11px;line-height:1;color:#d4af37}.rank-progress-marker-value{font-size:11px;font-weight:600;color:#d4af37;white-space:nowrap}.rank-progress-endpoints{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;margin-top:2px}.rank-progress-caption{margin-top:4px;margin-bottom:0}.rank-progress-compact{display:inline-flex;vertical-align:middle;margin-left:8px}.rank-progress-compact .rank-progress-track{width:70px;height:6px;border-radius:4px}.profile-form{padding:16px;border:1px solid #374151;border-radius:8px;margin-bottom:24px}.profile-form h2,.profile-history h2{font-size:15px;margin:0 0 12px}.profile-form label{display:block;margin-bottom:12px;font-size:13px;color:#9ca3af}.profile-form input,.profile-form textarea{display:block;width:100%;margin-top:4px;padding:8px;background:#111827;border:1px solid #374151;border-radius:6px;color:#e5e7eb;font-family:inherit;font-size:14px}.profile-form textarea{resize:vertical}.profile-form .error-box,.profile-form .message-box{margin-top:12px}.profile-history{padding:16px;border:1px solid #374151;border-radius:8px}.profile-history-pagination{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px}.profile-history-upsell{display:flex;align-items:center;gap:12px;margin-top:12px;flex-wrap:wrap}.profile-stats,.profile-current-games,.profile-settings{padding:16px;border:1px solid #374151;border-radius:8px;margin-bottom:24px}.profile-stats h2,.profile-current-games h2,.profile-settings h2{font-size:15px;margin:0 0 12px}.profile-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.profile-stat{text-align:center;padding:10px 8px;background:#111827;border:1px solid #374151;border-radius:6px}.profile-stat-value{font-size:20px;font-weight:800;color:#e5e7eb}.profile-stat-label{font-size:12px;color:#9ca3af;margin-top:2px}.current-game-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.current-game-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#111827;border:1px solid #374151;border-radius:6px}.current-game-row.current-game-my-turn{border-color:#22c55e;background:#14231a}.current-game-row.current-game-pending{opacity:.65;cursor:pointer}.current-game-row.current-game-pending:hover{opacity:.85}.tournament-activity-card{width:100%;grid-column:1 / -1;margin:0 0 24px}.tournament-activity-card h2{display:flex;align-items:center;gap:8px}.tournament-activity-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef4444;color:#fff;font-size:12px;font-weight:700;line-height:20px}.tournament-activity-lane{width:100%}.tournament-activity-lane+.tournament-activity-lane{margin-top:14px}.tournament-activity-lane-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#9ca3af;margin-bottom:6px}.current-game-opponent{font-weight:600;font-size:14px;color:#e5e7eb}.current-game-row-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.remind-button{font-size:12px;padding:4px 8px;border-color:#4b5563;color:#9ca3af}.remind-button:hover:not(:disabled){color:#e5e7eb}.current-game-row-column{display:flex;flex-direction:column;gap:8px}.current-game-row-column .current-game-row{width:100%}.community-chat-messages{height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:#111827;border:1px solid #374151;border-radius:6px;margin-bottom:10px}.community-chat-message{font-size:13px}.community-chat-message-author{font-weight:700;color:#e5e7eb;margin-right:6px}.community-chat-message-time{font-size:11px;margin-left:6px}.community-chat-message-text{color:#d1d5db;word-break:break-word}.community-chat-message-actions{display:flex;gap:8px;margin-top:2px}.community-chat-message-actions button{background:none;border:none;padding:0;font-size:.75rem;color:#6b7280;cursor:pointer;text-decoration:underline}.community-chat-message-actions button:hover{color:#9ca3af}.community-chat-message-actions button:disabled{cursor:default;text-decoration:none}.community-chat-muted-list{padding:4px 0;font-size:.8rem}.tournament-chat-announcement{background:#facc1514;border-left:3px solid #facc15;padding:6px 8px;border-radius:0 4px 4px 0}.tournament-chat-announcement-badge{display:block;font-size:11px;font-weight:700;color:#facc15;margin-bottom:2px}.profile-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid #374151}.profile-tab-button{position:relative;background:none;border:none;padding:10px 16px;font-size:14px;font-weight:600;color:#9ca3af;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.profile-tab-button:hover{color:#e5e7eb}.profile-tab-active{color:#e5e7eb;border-bottom-color:#16a34a}.profile-tab-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ef4444;margin-left:6px;vertical-align:middle}@media (max-width: 640px){.profile-page{padding:0 16px}.profile-tabs{gap:0}.profile-tab-button{flex:1;padding:10px 4px;font-size:12px;text-align:center}}.profile-account-delete{margin-top:24px;padding-top:16px;border-top:1px solid #374151}.profile-messages-empty{padding:24px 16px;text-align:center;color:#9ca3af;font-size:14px}.profile-delete-account-button{background:#7f1d1d;color:#fecaca;border:1px solid #991b1b}.profile-delete-account-button:hover{background:#991b1b}.profile-delete-confirm-form{display:flex;flex-direction:column;gap:12px}.profile-delete-confirm-actions{display:flex;gap:8px}.community-chat-unmute{background:none;border:none;padding:0;color:#6b7280;text-decoration:underline;cursor:pointer;font-size:inherit}.community-chat-form{display:flex;gap:8px}.community-chat-form input{flex:1;padding:8px;background:#111827;border:1px solid #374151;border-radius:6px;color:#e5e7eb;font-family:inherit;font-size:14px}.current-game-async-badge{margin-left:8px;padding:1px 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:#a855f7;border:1px solid #a855f7;border-radius:4px;vertical-align:middle}.profile-settings-toggles{display:flex;flex-wrap:wrap;gap:8px}.profile-premium-plans{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.lobby-legal-footer{margin-top:32px;padding-top:16px;text-align:center;font-size:.8rem;color:#9ca3af}.lobby-legal-footer a{color:#9ca3af;text-decoration:underline}.lobby-legal-footer a:hover{color:#e5e7eb}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.history-table{width:100%;border-collapse:collapse;font-size:13px}.history-table th,.history-table td{white-space:nowrap}.history-table th,.history-table td{text-align:left;padding:6px 8px;border-bottom:1px solid #374151}.history-table th{color:#9ca3af;font-weight:600}.avatar-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.avatar-option{width:44px;height:44px;padding:2px;border-radius:50%;border:2px solid transparent;background:transparent;cursor:pointer;line-height:0}.avatar-option img{width:100%;height:100%;border-radius:50%;display:block}.avatar-option:hover{border-color:#4b5563}.avatar-option-selected{border-color:#22c55e}.avatar-option-text{display:flex;align-items:center;justify-content:center;line-height:1;font-size:13px;font-weight:700;background:#1f2937}.time-limit-picker{display:flex;flex-direction:column;gap:4px;margin:8px 0;max-width:220px}.vs-ai-picker{display:flex;align-items:center;gap:8px;margin:8px 0;font-size:14px}.ai-thinking{color:#9ca3af;font-style:italic;animation:ai-thinking-pulse 1.4s ease-in-out infinite}@keyframes ai-thinking-pulse{0%,to{opacity:.5}50%{opacity:1}}.time-limit-picker select{background:#111827;color:#e5e7eb;border:1px solid #374151;border-radius:4px;padding:6px}.difficulty-picker{display:flex;flex-direction:column;gap:4px;margin:8px 0}.difficulty-picker-label{font-size:14px}.difficulty-picker-options{display:flex;flex-wrap:wrap;gap:6px}.difficulty-option-wrap{position:relative;display:inline-flex}.difficulty-option{padding:6px 10px;font-size:13px;background:#111827;border:1px solid #374151;border-radius:6px;color:#e5e7eb;cursor:pointer}.difficulty-option:hover{border-color:#4b5563}.difficulty-option-selected{border-color:#22c55e;background:#14532d55}.difficulty-option-tier{display:block;font-size:10px;letter-spacing:.04em;text-transform:uppercase;opacity:.7;line-height:1.3}.difficulty-option-name{display:block;font-weight:600;line-height:1.3}.difficulty-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);width:max-content;max-width:min(240px,calc(100vw - 24px));background:#16a34a;color:#fff;font-size:13px;font-weight:400;line-height:1.4;text-align:left;padding:8px 12px;border-radius:6px;box-shadow:0 4px 12px #00000059;visibility:hidden;opacity:0;z-index:20;transition:opacity .15s ease,visibility 0s linear .15s}.difficulty-tooltip:before{content:"";position:absolute;left:0;right:0;bottom:-8px;height:8px}.difficulty-option-wrap:hover .difficulty-tooltip,.difficulty-option-wrap:focus-within .difficulty-tooltip{visibility:visible;opacity:1;transition:opacity .1s ease}.difficulty-option-wrap:nth-child(odd) .difficulty-tooltip{left:0;transform:none}.difficulty-option-wrap:nth-child(2n) .difficulty-tooltip{left:auto;right:0;transform:none}.difficulty-tooltip-sales{max-width:min(300px,calc(100vw - 24px))}@media (max-width: 640px){.difficulty-tooltip-sales{max-width:min(220px,calc(100vw - 24px))}}.difficulty-tooltip-sales p{margin:0 0 8px}.difficulty-tooltip-sales p:last-of-type{margin-bottom:0}.difficulty-tooltip-heading{font-size:15px;font-weight:700}.difficulty-tooltip-error{color:#fef08a;font-weight:600}.difficulty-tooltip-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.difficulty-tooltip-actions button{background:#fff;color:#16a34a;border:none;border-radius:6px;padding:6px 10px;font-size:13px;font-weight:700;cursor:pointer}.difficulty-tooltip-actions button:hover{background:#f0fdf4}.difficulty-tooltip-actions button:disabled{opacity:.6;cursor:default}.match-clocks{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid #374151}.clock{font-size:13px;color:#9ca3af}.clock-low{color:#fca5a5}@keyframes turn-clock-flash{0%,49%{color:#ef4444}50%,to{color:#7f1d1d}}.clock-flash{font-weight:700;animation:turn-clock-flash .6s steps(1,start) infinite}.score-summary{background:#111827;border:1px solid #374151;border-radius:6px;padding:8px 10px;margin-bottom:8px}.score-row{display:flex;justify-content:space-between;font-size:13px;margin-top:2px}.promotion-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.promotion-modal{width:min(420px,100%);text-align:center;padding:32px 24px;background:linear-gradient(180deg,#1e1a0efa,#090e16fa);border:1px solid #d4af37;border-radius:18px;box-shadow:0 24px 70px #0000008c}.promotion-insignia{font-size:48px;line-height:1;margin-bottom:12px}.promotion-modal h2{margin:0 0 12px;color:#d4af37}.promotion-text{margin:0 0 24px;color:#e5e7eb}.promotion-continue{background:#d4af37;border-color:#d4af37;color:#1f2937;font-weight:600;padding:8px 24px}.promotion-continue:hover{background:#e9c767}.top-controls-row{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:8px}.how-to-play-trigger,.effects-toggle-trigger{display:inline-block;margin:0;padding:4px 10px;font-size:12px;background:transparent;border:1px solid #4b5563;border-radius:6px;color:#4ade80;cursor:pointer}.how-to-play-trigger:hover,.effects-toggle-trigger:hover{background:#374151}.effects-toggle-trigger.effects-off{color:#6b7280}.how-to-play-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.how-to-play-modal{width:min(640px,100%);max-height:85vh;overflow-y:auto;text-align:left;padding:24px 28px;background:linear-gradient(180deg,#121a26fa,#090e16fa);border:1px solid rgba(255,255,255,.1);border-radius:18px;box-shadow:0 24px 70px #00000073;color:#e5e7eb}.how-to-play-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.how-to-play-header h2{margin:0}.how-to-play-close{background:transparent;border:1px solid #4b5563;border-radius:6px;color:#e5e7eb;padding:2px 10px;cursor:pointer}.how-to-play-close:hover{background:#374151}.how-to-play-modal h3{margin:20px 0 6px;color:#4ade80}.how-to-play-modal p{margin:0;line-height:1.5;color:#d1d5db}.premium-gated{opacity:.5;cursor:pointer}.premium-upsell-actions{display:flex;gap:10px;margin-top:16px;align-items:center;flex-wrap:wrap}.premium-perks-list{margin:8px 0;padding-left:20px;color:#d1d5db;font-size:13px;line-height:1.6}.tutorial-page{display:flex;flex-wrap:wrap;gap:24px;max-width:1100px;margin:24px auto;padding:0 16px;align-items:flex-start;justify-content:center}.tutorial-board-area{flex:0 1 auto}.tutorial-caption-panel{flex:1 1 280px;max-width:360px;min-width:260px;padding:20px;background:#1f2937;border:1px solid #374151;border-radius:8px;position:relative}.tutorial-exit{position:absolute;top:12px;right:12px;font-size:12px}.tutorial-progress{font-size:12px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;padding-right:140px}.tutorial-caption-panel h2{margin:0 0 12px}.tutorial-nav{display:flex;gap:8px;margin-top:20px}.assisted-game-welcome{max-width:640px;margin:24px auto;padding:0 16px;text-align:center}.assisted-game-welcome h1{margin:8px 0 4px;letter-spacing:.04em}.assisted-game-welcome-list{text-align:left;max-width:420px;margin:8px auto;color:#d1d5db;font-size:14px;line-height:1.6}.assisted-game-welcome-objective{font-weight:700;letter-spacing:.03em;margin:16px 0 4px}.assisted-game-welcome-ready{font-weight:700;color:#facc15;margin:16px 0 0}.assisted-game-welcome .tutorial-nav{justify-content:center}.assisted-game-welcome-accent{color:#4ade80}.assisted-game-welcome-subhead{font-weight:700;color:#e5e7eb}.assisted-game-hero{max-width:480px;margin:24px auto;padding:0 16px;text-align:center}.assisted-game-hero-image{width:100%;max-width:360px;border-radius:12px;border:1px solid #374151;display:block;margin:0 auto}.assisted-game-hero-caption{margin-top:16px}.assisted-game-hero-caption h1{margin:0 0 4px;letter-spacing:.04em}.assisted-game-hero-question{font-weight:700;color:#4ade80;font-size:1.1rem;margin:0 0 16px}.assisted-game-hero .tutorial-nav{justify-content:center}.assisted-game-guided-hint{color:#eab308;font-weight:600}.sandbox-controls{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.sandbox-placing-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px}.sandbox-tray h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:#9ca3af;margin:16px 0 8px}.sandbox-tray-row{display:flex;flex-wrap:wrap;gap:6px}.sandbox-tray-piece{font-size:12px;padding:6px 10px}.sandbox-tray-piece.active{background:#22c55e;border-color:#22c55e;color:#0f172a}.bracket-view-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.bracket-view-toggle button{padding:4px 10px;font-size:12px}.bracket-list-round{margin-bottom:20px}.bracket-list-round h3{font-size:13px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;margin:0 0 8px}.bracket-list-match{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#111827;border:1px solid #374151;border-radius:6px;margin-bottom:8px}.bracket-list-players{display:flex;align-items:center;gap:8px;font-size:14px;color:#e5e7eb;flex-wrap:wrap}.bracket-winner{font-weight:700;color:#22c55e}.bracket-tree{display:flex;gap:28px;overflow-x:auto;padding-bottom:8px}.bracket-round{display:flex;flex-direction:column;justify-content:space-around;gap:16px;min-width:160px;flex-shrink:0}.bracket-round-title{font-size:12px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;text-align:center;margin-bottom:4px}.bracket-match{border:1px solid #374151;border-radius:6px;overflow:hidden;background:#111827}.bracket-match-side{padding:8px 10px;font-size:13px;color:#e5e7eb;border-bottom:1px solid #374151}.bracket-match-side:last-child{border-bottom:none}.bracket-match-side.bracket-winner{background:#14231a}.bracket-match-play{display:block;width:100%;padding:4px 0;font-size:12px;border-top:1px solid #374151;border-radius:0}.bracket-match-empty{min-height:54px;opacity:.35}.bracket-section-title{font-size:13px;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;margin:20px 0 10px}.bracket-tree-wrap{overflow-x:auto;padding-bottom:8px}.bracket-mirror{display:flex;align-items:center;justify-content:center;gap:28px;min-width:max-content;padding:16px 8px}.bracket-mirror-single{flex-direction:column;align-items:center}.bracket-mirror-half{display:flex;align-items:center}.bracket-mirror-half-right{flex-direction:row-reverse}.bracket-mirror-final{display:flex;flex-direction:column;align-items:center;min-width:170px}.bracket-mirror-node{display:flex;align-items:center}.bracket-mirror-node-reversed{flex-direction:row-reverse}.bracket-mirror-children{display:flex;flex-direction:column;gap:18px;border-right:2px solid #374151;padding-right:18px;margin-right:18px}.bracket-mirror-node-reversed>.bracket-mirror-children{border-right:none;border-left:2px solid #374151;padding-right:0;padding-left:18px;margin-right:0;margin-left:18px}.bracket-mirror-node-match{min-width:170px}.standings-table{width:100%;border-collapse:collapse;font-size:13px}.standings-table th,.standings-table td{padding:6px 10px;text-align:left;border-bottom:1px solid #374151;color:#e5e7eb}.standings-table th{color:#9ca3af;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.standings-table th:not(:first-child):not(:nth-child(2)),.standings-table td:not(:first-child):not(:nth-child(2)){text-align:center}.standings-table tr.standings-champion td{background:#14231a;font-weight:700}
