.privacy-screen[data-v-cc42b433]{gap:var(--space-4, 1rem)}.privacy-hero h1[data-v-cc42b433]{margin-top:var(--space-2, .5rem)}.privacy-meta[data-v-cc42b433]{font-size:.8rem;opacity:.6;margin-bottom:var(--space-3, .75rem)}.privacy-section-title[data-v-cc42b433]{font-size:1rem;font-weight:700;margin-bottom:var(--space-2, .5rem)}.privacy-subsection-title[data-v-cc42b433]{font-size:.9rem;font-weight:600;margin-top:var(--space-3, .75rem);margin-bottom:var(--space-1, .25rem)}.panel p[data-v-cc42b433]{margin-bottom:var(--space-2, .5rem);line-height:1.6}.panel p[data-v-cc42b433]:last-child{margin-bottom:0}.panel a[data-v-cc42b433]{color:inherit;text-decoration:underline}.terms-screen[data-v-dd6d1ab4]{gap:var(--space-4, 1rem)}.terms-hero h1[data-v-dd6d1ab4]{margin-top:var(--space-2, .5rem)}.terms-meta[data-v-dd6d1ab4]{font-size:.8rem;opacity:.6;margin-bottom:var(--space-3, .75rem)}.terms-section-title[data-v-dd6d1ab4]{font-size:1rem;font-weight:700;margin-bottom:var(--space-2, .5rem)}.panel p[data-v-dd6d1ab4]{margin-bottom:var(--space-2, .5rem);line-height:1.6}.panel p[data-v-dd6d1ab4]:last-child{margin-bottom:0}.panel a[data-v-dd6d1ab4]{color:inherit;text-decoration:underline}:root{--font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--color-text: #f5f7fb;--color-text-muted: rgba(245, 247, 251, .82);--color-text-soft: rgba(245, 247, 251, .78);--color-bg-base: #0f172a;--color-bg-deep: #111827;--color-surface: rgba(255, 255, 255, .05);--color-surface-strong: rgba(255, 255, 255, .08);--color-surface-soft: rgba(255, 255, 255, .06);--color-border: rgba(255, 255, 255, .12);--color-border-strong: rgba(255, 255, 255, .18);--color-border-soft: rgba(255, 255, 255, .1);--color-button-primary-bg: #f5f7fb;--color-button-primary-text: #111827;--color-button-secondary-bg: rgba(255, 255, 255, .06);--color-button-secondary-text: #f5f7fb;--shadow-panel: 0 8px 24px rgba(0, 0, 0, .12);--shadow-card: 0 16px 40px rgba(0, 0, 0, .25);--radius-sm: 12px;--radius-md: 14px;--radius-lg: 16px;--radius-xl: 18px;--radius-2xl: 24px;--radius-pill: 999px;--space-2xs: 4px;--space-xs: 8px;--space-sm: 10px;--space-md: 12px;--space-lg: 14px;--space-xl: 16px;--space-2xl: 18px;--space-3xl: 20px;--space-4xl: 24px;--screen-padding-x: 14px;--screen-padding-top: 16px;--screen-padding-bottom: 28px;--button-height-md: 44px;--button-height-lg: 52px;--move-button-height: 64px;--home-card-max-width: 420px;--home-card-padding: 14px;--home-section-gap: 8px;--home-stack-gap: 8px;--home-button-min-height: 40px;--home-mode-button-min-height: 40px;--game-sidebar-width: 300px}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{min-height:100vh;font-family:var(--font-family);color:var(--color-text);background:var(--color-bg-base)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed}h1,h2,h3,p{word-break:break-word}.app-shell{position:relative;min-height:100vh;isolation:isolate}.app-shell:before,.app-shell:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.app-shell:before{z-index:-2;background:radial-gradient(circle at top,rgba(78,110,255,.32),transparent 28%),radial-gradient(circle at 20% 20%,rgba(0,200,255,.12),transparent 22%),linear-gradient(180deg,#0b1220,#111827 55%,#0f172a)}.app-shell:after{z-index:-1;background-image:linear-gradient(180deg,#040a149e,#070f1c85 38%,#08101dbd),radial-gradient(circle at center,transparent 42%,rgba(10,15,30,.44) 76%,rgba(10,15,30,.72) 100%),url(/assets/game-bg-D6JNZ840.png);background-repeat:no-repeat,no-repeat,no-repeat;background-position:center center,center center,center center;background-size:100% 100%,100% 100%,100% 100%}.screen{min-height:100vh;padding:var(--screen-padding-top) var(--screen-padding-x) var(--screen-padding-bottom)}.fallback-screen{display:flex;align-items:center;justify-content:center}.fallback-panel{width:100%;max-width:420px;text-align:center}.fallback-panel h1{margin-top:0;margin-bottom:var(--space-md)}.fallback-panel p{margin-top:0;margin-bottom:var(--space-xl);color:var(--color-text-muted)}.panel{border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-lg);background:var(--color-surface);box-shadow:var(--shadow-panel)}.section-label{margin:0 0 var(--space-xs);font-size:12px;text-transform:uppercase;letter-spacing:.08em;opacity:.76}.eyebrow{margin:0 0 var(--space-xs);font-size:12px;letter-spacing:.16em;text-transform:uppercase;opacity:.8}.inline-button{margin-top:var(--space-md)}.primary-button,.secondary-button,.mode-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--button-height-lg);padding:0 var(--space-xl);border-radius:var(--radius-md);border:1px solid transparent;transition:transform .2s ease,opacity .2s ease,border-color .2s ease,background-color .2s ease,color .2s ease}.primary-button{background:var(--color-button-primary-bg);color:var(--color-button-primary-text);font-weight:700}.secondary-button{background:var(--color-button-secondary-bg);color:var(--color-button-secondary-text);border-color:var(--color-border)}.secondary-button:disabled{opacity:.5}.full-width-button{width:100%}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid rgba(160,220,255,.98);outline-offset:2px;box-shadow:0 0 0 2px #08101de6}.home-screen{display:flex;align-items:center;justify-content:center}.hero-card{width:100%;max-width:var(--home-card-max-width);padding:var(--home-card-padding);border-radius:var(--radius-2xl);background:var(--color-surface-strong);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow-card)}.hero-card h1{margin:0 0 var(--space-sm);font-size:28px;line-height:1.1}.subtitle{margin:0 0 var(--space-md);color:var(--color-text-muted)}.player-name-field{display:grid;gap:4px;margin-bottom:6px}.player-name-label{margin:0;font-size:10px;letter-spacing:.06em;text-transform:uppercase;opacity:.7}.player-name-input{width:100%;min-height:30px;padding:0 var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-soft);color:var(--color-text)}.player-name-input::placeholder{color:var(--color-text-soft)}.button-stack{display:grid;gap:var(--home-stack-gap)}.home-primary-actions{display:grid;gap:var(--home-section-gap);margin-bottom:var(--home-section-gap);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.12);background:#ffffff0a}.home-helper-text{margin:0;font-size:12px;line-height:1.5;color:var(--color-text-soft)}.home-helper-text--accent{color:#c4ebff}.home-secondary-toggle{width:100%;min-height:34px;margin-bottom:var(--home-section-gap);padding:0 12px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--color-text-muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.home-secondary-sections{display:grid;gap:var(--home-section-gap)}.home-collapsible-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:28px;margin-bottom:var(--space-xs)}.home-collapsible-header .section-label{margin-bottom:0}.home-panel-toggle{min-height:28px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:var(--color-text-soft);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.home-screen .primary-button,.home-screen .secondary-button{min-height:var(--home-button-min-height)}.home-screen .mode-button{min-height:var(--home-mode-button-min-height)}.mode-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xs);margin-bottom:var(--space-sm)}.mode-button{min-height:var(--button-height-md);border-radius:10px;border:1px solid rgba(255,255,255,.2);background:var(--color-surface-soft);color:var(--color-text)}.mode-button.active{background:var(--color-button-primary-bg);color:var(--color-button-primary-text);font-weight:700}.daily-challenge-panel{display:grid;gap:var(--home-section-gap);margin:0;padding:var(--space-md);min-width:0;border-radius:var(--radius-lg);border:1px solid rgba(140,220,255,.24);background:linear-gradient(180deg,#4b91ff24,#ffffff0a),var(--color-surface);box-shadow:0 14px 28px #060e1e3d}.daily-challenge-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-sm)}.daily-challenge-header>div{min-width:0}.daily-challenge-header h2{margin:0;font-size:18px;line-height:1.15;overflow-wrap:anywhere}.daily-challenge-actions{display:grid;gap:6px;justify-items:end;flex-shrink:0}.daily-toggle-button{min-height:30px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.14);background:#ffffff0a;color:var(--color-text-muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.daily-challenge-body{display:grid;gap:8px;padding-top:2px}.daily-challenge-copy{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45;overflow-wrap:anywhere}.daily-challenge-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.daily-challenge-meta span,.daily-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;min-width:0;border-radius:var(--radius-pill);border:1px solid rgba(255,255,255,.12);background:#ffffff12;font-size:11px;letter-spacing:.05em;text-transform:uppercase;text-align:center;overflow-wrap:anywhere}.daily-status-pill{flex-shrink:0}.daily-status-pill.is-ready{color:#dbeafe}.daily-status-pill.is-active{color:#93c5fd}.daily-status-pill.is-won{color:#86efac}.daily-status-pill.is-claimed{color:#a5f3fc}.daily-status-pill.is-lost{color:#fca5a5}.mission-panel{margin:0;padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.mission-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--home-section-gap)}.mission-card{display:grid;gap:var(--home-stack-gap);padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.1);background:#ffffff0a}.mission-card.is-completed{border-color:#86efac4d;background:#86efac0d}.mission-card.is-claimed{border-color:#ffffff0f;opacity:.6}.mission-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-width:0}.mission-card-label{flex:1;min-width:0;font-size:13px;line-height:1.3;overflow-wrap:anywhere}.mission-badge{display:inline-flex;align-items:center;flex-shrink:0;min-height:22px;padding:0 8px;border-radius:var(--radius-pill);border:1px solid transparent;font-size:10px;letter-spacing:.05em;text-transform:uppercase}.mission-badge.is-completed{border-color:#86efac66;color:#86efac}.mission-badge.is-claimed{border-color:#a5f3fc4d;color:#a5f3fc}.mission-progress-track{height:5px;border-radius:3px;background:#ffffff1a;overflow:hidden}.mission-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#60a5fa,#a78bfa);transition:width .3s ease}.mission-card.is-completed .mission-progress-fill{background:linear-gradient(90deg,#4ade80,#86efac)}.mission-progress-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.mission-progress-text{font-size:11px;color:var(--color-text-muted);letter-spacing:.03em}.mission-claim-button{min-height:26px;padding:0 10px;border-radius:var(--radius-pill);border:1px solid rgba(134,239,172,.4);background:#86efac1f;color:#86efac;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.lang-switch{margin:var(--home-section-gap) 0 0;display:flex;justify-content:center}.lang-switch-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:36px;min-width:140px;padding:0 var(--space-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-button-secondary-bg);color:var(--color-text);-webkit-text-fill-color:var(--color-text)}.lang-switch-select:hover,.lang-switch-select:focus,.lang-switch-select:active{color:var(--color-text);-webkit-text-fill-color:var(--color-text)}.lang-switch-select option{color:#0f172a;background:#f5f7fb}.stats-panel{margin:0;padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface)}.stats-empty{margin:var(--space-xs) 0 0;font-size:13px;color:var(--color-text-soft)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px 2px;margin-bottom:6px}.stats-cell{display:flex;flex-direction:column;align-items:center;gap:2px}.stats-value{font-size:15px;font-weight:700;line-height:1}.stats-value--win{color:#4ade80}.stats-value--lose{color:#f87171}.stats-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;opacity:.76}.stats-reset-button{display:block;width:100%;min-height:30px;padding:0 var(--space-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:transparent;color:var(--color-text-soft);font-size:12px;letter-spacing:.04em;text-transform:uppercase;transition:opacity .2s ease}.stats-reset-button:hover{opacity:.75}.leaderboard-panel,.project-info-panel{margin:0;padding:var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface);display:grid;gap:var(--space-sm)}.project-info-list{margin:0 0 var(--space-sm);padding-left:18px;display:grid;gap:var(--space-xs);color:var(--color-text-muted);font-size:13px;line-height:1.4}.project-contact-text{margin:0 0 var(--space-xs);color:var(--color-text-soft);font-size:12px}.project-contact-link{width:100%}.project-github-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.project-github-link-badge{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:999px;border:1px solid rgba(255,255,255,.24);background:#ffffff14;color:var(--color-text);font-size:10px;font-weight:700;letter-spacing:.03em}.leaderboard-columns{display:grid;grid-template-columns:1fr;gap:var(--space-sm)}.leaderboard-column{display:grid;gap:6px}.leaderboard-heading{margin:0;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-soft)}.leaderboard-empty{margin:0;font-size:12px;color:var(--color-text-soft)}.leaderboard-list{margin:0;padding:0;list-style:none;display:grid;gap:6px}.leaderboard-item{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--radius-md);border:1px solid var(--color-border-soft);background:#ffffff08}.leaderboard-rank{font-weight:700;font-size:12px;text-align:center;color:var(--color-text-soft)}.leaderboard-main{min-width:0}.leaderboard-name,.leaderboard-meta{margin:0}.leaderboard-name{font-size:13px;line-height:1.2;color:var(--color-text)}.leaderboard-meta{font-size:11px;color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.06em}.leaderboard-score{font-size:13px;font-weight:700;color:#86efac}@media(min-width:760px){.leaderboard-columns{grid-template-columns:1fr 1fr}}.placeholder-screen{display:flex;align-items:center;justify-content:center}.placeholder-screen .panel{width:100%;max-width:480px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-md);flex-wrap:wrap}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-xs);flex-wrap:wrap}.topbar-link{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:96px;min-height:var(--button-height-md);padding:0 var(--space-md);border-radius:var(--radius-md);background:var(--color-button-secondary-bg);border:1px solid var(--color-border-soft);text-align:center}.topbar-icon-button{width:42px;min-height:42px;border-radius:var(--radius-md);border:1px solid var(--color-border-soft);background:var(--color-button-secondary-bg);color:var(--color-text);display:inline-grid;place-items:center;font-size:18px}.topbar-icon-image{width:20px;height:20px;object-fit:contain}.game-screen{display:flex;flex-direction:column;gap:var(--space-lg)}.game-layout{display:grid;grid-template-columns:1fr;gap:var(--space-lg);align-items:start}.game-main-column,.game-side-column,.game-summary-row{display:grid;gap:var(--space-lg)}.opponent-badge{display:grid;gap:var(--space-2xs)}.opponent-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.opponent-round{font-size:13px;opacity:.78}.opponent-name{margin:0;font-size:24px;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.opponent-subtitle{margin:0;opacity:.75}.opponent-intro{margin:2px 0 0;font-size:13px;line-height:1.35;color:var(--color-text-muted)}.scoreboard{display:grid;gap:var(--space-sm)}.score-survival-line{margin:0;font-size:13px;font-weight:600;color:#c4ebff}.score-survival-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs);margin:0}.score-survival-chip{display:inline-flex;align-items:center;justify-content:center;min-height:24px;max-width:100%;padding:0 8px;border-radius:var(--radius-pill);border:1px solid rgba(196,235,255,.28);background:#5bb1ff24;color:#d9f2ff;font-size:11px;line-height:1.2;white-space:normal;word-break:break-word}.score-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-xs)}.score-target{font-size:13px;opacity:.78}.score-main{display:flex;align-items:center;justify-content:center;gap:var(--space-lg)}.score-item{display:grid;justify-items:center;gap:var(--space-2xs)}.score-label{font-size:13px;opacity:.75}.score-value{font-size:28px}.score-divider{font-size:28px;font-weight:700;opacity:.8}.game-board{display:grid;gap:var(--space-2xl);min-height:300px}.countdown-placeholder,.countdown-display{display:grid;justify-items:center;gap:var(--space-xs);padding:var(--space-xs) 0}.countdown-display.is-urgent .countdown-number{animation:countdown-urgent-pulse .4s ease-in-out infinite alternate}.countdown-number{font-size:clamp(56px,16vw,84px);font-weight:800;line-height:1}.countdown-label{margin:0;font-size:18px;opacity:.84}.result-state{display:grid;gap:var(--space-xl)}.result-text{margin:0;text-align:center;font-size:22px;font-weight:700}.result-text.is-win{color:#8ef2b0}.result-text.is-lose{color:#ff9e9e}.result-text.is-draw{color:#d8def3}.result-explanation{margin:0;text-align:center;opacity:.85}.result-cards{display:grid;grid-template-columns:1fr;gap:var(--space-md);align-items:center}.result-cards-versus{justify-self:center;font-weight:800;letter-spacing:.08em;opacity:.72}.pentagon-card{width:100%}.pentagon-card-shape{position:relative;display:grid;place-items:center;min-height:168px;padding:var(--space-xl) var(--space-lg);clip-path:polygon(50% 0%,100% 36%,82% 100%,18% 100%,0% 36%);border:1px solid rgba(255,255,255,.16);background:var(--color-surface-soft)}.pentagon-card.is-player .pentagon-card-shape{background:linear-gradient(180deg,#ffffff1f,#ffffff0a)}.pentagon-card.is-ai .pentagon-card-shape{background:linear-gradient(180deg,#ffffff14,#ffffff05)}.pentagon-card-content{display:grid;justify-items:center;gap:6px;text-align:center}.pentagon-card-owner{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.08em;opacity:.72}.pentagon-card-icon{width:52px;height:52px;font-size:40px;line-height:1;display:inline-grid;place-items:center}.pentagon-card-title{margin:0;font-size:20px;line-height:1.2}.move-selector{display:grid;gap:var(--space-md)}.move-selector-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.move-selector-status{font-size:12px;opacity:.78}.move-list{display:grid;gap:var(--space-sm);list-style:none;margin:0;padding:0}.move-list-item{margin:0;padding:0}.move-button{width:100%;min-height:var(--move-button-height);padding:0 var(--space-xl);display:grid;grid-template-columns:30px 1fr;align-items:center;gap:var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-button-secondary-bg);color:var(--color-text);text-align:left;touch-action:manipulation}.move-button-icon{width:24px;height:24px;font-size:24px;line-height:1;display:inline-grid;place-items:center}.move-button-text{font-size:16px;font-weight:600}.move-button.active{background:var(--color-button-primary-bg);color:var(--color-button-primary-text);font-weight:700;animation:move-select-pop .2s ease-out}.move-button.locked{border-color:#ffffff4d}.move-button:disabled,.move-button.disabled{opacity:.62}.resume-failed-notice{font-size:13px;color:var(--color-text-soft)}.resume-failed-notice p{margin:0}.daily-game-status-panel{display:grid;gap:4px}.daily-game-status-label{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-soft)}.daily-game-status-text{margin:0;font-size:14px;font-weight:700}.daily-game-status-meta{margin:0;font-size:12px;color:var(--color-text-soft)}.match-status-panel{display:grid;gap:var(--space-md)}.match-status-text{margin:0;text-align:center;font-weight:700;font-size:20px}.match-status-hint{margin:0;text-align:center;color:var(--color-text-muted);line-height:1.55;max-width:56ch;justify-self:center}.match-preview-grid{display:grid;gap:var(--space-sm)}.match-preview-card{display:grid;gap:6px;padding:var(--space-md);border-radius:var(--radius-lg);background:#ffffff0a;border:1px solid var(--color-border-soft)}.match-preview-label{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-soft)}.match-preview-value{margin:0;font-weight:700;line-height:1.45}.share-result-card{display:grid;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-lg);background:#ffffff08;border:1px solid var(--color-border-soft)}.result-secondary-actions,.result-secondary-body{display:grid;gap:var(--space-sm)}.result-more-button{min-height:40px}.share-result-preview{margin:0;padding:var(--space-sm);border-radius:var(--radius-md);background:#050f1e59;border:1px solid rgba(255,255,255,.08);color:var(--color-text-muted);line-height:1.45;white-space:pre-line}.share-feedback{margin:0;text-align:center;color:var(--color-text-soft);font-size:12px}.win-streak-highlight{margin:0;text-align:center;font-weight:700;color:#facc15;animation:streak-glow 1s ease-in-out infinite alternate}.result-state.is-reveal .result-cards{animation:reveal-rise .22s ease-out}.result-state.is-win .result-cards,.result-state.is-lose .result-cards,.result-state.is-draw .result-cards{animation:settle-soft .22s ease-out}@keyframes move-select-pop{0%{transform:scale(1)}45%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes countdown-urgent-pulse{0%{transform:scale(1);opacity:.9}to{transform:scale(1.06);opacity:1}}@keyframes reveal-rise{0%{opacity:.75;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes settle-soft{0%{transform:scale(.99);opacity:.88}to{transform:scale(1);opacity:1}}@keyframes streak-glow{0%{text-shadow:0 0 0 rgba(250,204,21,.2);transform:translateY(0)}to{text-shadow:0 0 10px rgba(250,204,21,.45);transform:translateY(-1px)}}.rules-screen{display:grid;gap:var(--space-lg)}.rules-hero,.rules-summary,.rules-moves,.rules-matchups{display:grid;gap:var(--space-md)}.rules-intro{margin:0;opacity:.84}.rules-section-title{margin:0;font-size:20px}.rules-bullet-list{margin:0;padding-left:20px;display:grid;gap:var(--space-xs)}.rules-move-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.rules-move-card,.rules-matchup-card{border-radius:var(--radius-lg);padding:var(--space-lg)}.rules-move-card{min-height:112px;background:var(--color-surface);border:1px solid var(--color-border-soft);display:grid;justify-items:center;gap:var(--space-xs);text-align:center}.rules-move-icon{width:40px;height:40px;display:grid;place-items:center;font-size:36px;line-height:1}.rules-move-name{margin:0;font-size:18px}.rules-matchup-list{display:grid;gap:var(--space-sm)}.rules-matchup-card{background:#ffffff0a;border:1px solid var(--color-border-soft);display:grid;gap:var(--space-sm)}.rules-matchup-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap}.rules-matchup-badge{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 var(--space-sm);border-radius:var(--radius-pill);background:#ffffff14;font-size:14px}.rules-matchup-badge.is-loser{opacity:.78}.rules-matchup-arrow{opacity:.7;font-weight:700}.rules-matchup-text{margin:0;opacity:.9}.bracket-screen{display:grid;gap:var(--space-lg)}.bracket-summary{display:grid;gap:var(--space-sm)}.bracket-summary h1{margin:0}.bracket-summary-text{margin:0;opacity:.82}.tournament-bracket{display:grid;gap:var(--space-lg)}.bracket-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.bracket-count{font-size:13px;opacity:.78}.bracket-list{display:grid;gap:var(--space-sm)}.bracket-node{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--radius-lg);padding:var(--space-lg);border:1px solid var(--color-border);background:#ffffff0a;display:grid;gap:var(--space-xs);will-change:transform,opacity;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .24s ease,border-color .26s ease,background-color .26s ease,box-shadow .26s ease,filter .26s ease}.bracket-node:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;pointer-events:none;z-index:0;opacity:0;transform:scale(.96);background:radial-gradient(circle at 50% 38%,#a0dcff47,#a0dcff1f 34%,#a0dcff00 74%);transition:opacity .3s ease,transform .3s ease}.bracket-node>*{position:relative;z-index:1}.bracket-node-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.bracket-node-index{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.bracket-node-status{font-size:12px;opacity:.8}.bracket-node-name{margin:0;font-size:20px;line-height:1.2;overflow-wrap:anywhere;word-break:break-word}.bracket-node.is-current{border-color:#aae0ff80;background:#91daff24;box-shadow:0 10px 28px #3fa3dc38;transform:translateY(-2px)}.bracket-node.is-current:after{opacity:.45;transform:scale(1);animation:bracket-node-current-glow 2.6s ease-in-out infinite}.bracket-node.is-current .bracket-node-status{opacity:1}.bracket-node.is-defeated{opacity:.72;transform:scale(.992);filter:saturate(.76)}.bracket-node.is-lost{border-color:#ffffff14;opacity:.52;transform:scale(.986);filter:saturate(.58) grayscale(.12)}.bracket-node.is-pending{opacity:.88}.bracket-node.is-just-current{animation:bracket-node-reveal .5s cubic-bezier(.19,1,.22,1)}@keyframes bracket-node-reveal{0%{transform:translateY(5px) scale(.988);opacity:.86}to{transform:translateY(-2px) scale(1);opacity:1}}@keyframes bracket-node-current-glow{0%,to{opacity:.34}50%{opacity:.5}}.pentagon-card.is-hidden .pentagon-card-shape{opacity:.7;transform:scale(.98)}.pentagon-card.is-revealed .pentagon-card-shape{opacity:1;transform:scale(1)}.match-status-panel,.rules-matchup-card,.rules-move-card,.bracket-node,.pentagon-card-shape,.move-button,.topbar-link,.primary-button,.secondary-button,.mode-button{transition:transform .2s ease,opacity .2s ease,border-color .2s ease,background-color .2s ease,color .2s ease}.move-button-icon-image,.pentagon-card-icon-image,.rules-move-icon-image,.rules-matchup-icon-image{display:block;width:100%;height:100%;object-fit:contain}.rules-matchup-icon{width:18px;height:18px;display:inline-grid;place-items:center;flex:0 0 auto}@media(max-width:767px){:root{--home-card-max-width: 420px;--home-card-padding: 14px;--home-section-gap: 8px;--home-stack-gap: 8px;--home-button-min-height: 40px;--home-mode-button-min-height: 40px}.screen{padding-top:calc(var(--screen-padding-top) + max(env(safe-area-inset-top,0px),12px))}.home-screen{align-items:flex-start}.hero-card h1{font-size:clamp(24px,7vw,28px)}.subtitle{margin-bottom:var(--home-section-gap)}.player-name-field{margin-bottom:var(--space-xs)}.player-name-input{min-height:28px;font-size:13px}.daily-challenge-header{flex-direction:column;align-items:stretch}.daily-challenge-actions{grid-template-columns:1fr;justify-items:stretch}.daily-status-pill,.daily-toggle-button{width:100%}.daily-challenge-meta{grid-template-columns:1fr}.game-screen{gap:var(--space-md)}.game-screen .topbar{padding:var(--space-xs);gap:6px}.game-screen .topbar-actions{gap:6px}.game-screen .topbar-link{min-width:0;min-height:36px;padding:0 10px;font-size:12px}.game-screen .topbar-icon-button{width:36px;min-height:36px}.game-layout,.game-main-column,.game-side-column{gap:10px}.game-summary-row{grid-template-columns:minmax(0,1.15fr) minmax(112px,.85fr);gap:10px;align-items:stretch}.game-screen .opponent-badge,.game-screen .scoreboard,.game-screen .game-board,.game-screen .move-selector,.game-screen .match-status-panel,.game-screen .resume-failed-notice{padding:var(--space-md)}.opponent-badge{gap:2px}.opponent-top{gap:var(--space-xs);margin-bottom:2px}.opponent-round,.opponent-subtitle,.opponent-intro,.score-target,.score-label,.move-selector-status{font-size:11px}.opponent-name{font-size:18px;line-height:1.15}.scoreboard{gap:6px}.score-header{gap:var(--space-xs);margin-bottom:0}.score-header .section-label{margin-bottom:0;word-break:normal;overflow-wrap:normal}.score-target{text-align:right}.score-main{gap:var(--space-md)}.score-value,.score-divider{font-size:24px}.game-board{gap:12px;min-height:170px}.countdown-placeholder,.countdown-display{gap:4px;padding:0}.countdown-number{font-size:clamp(34px,11vw,50px)}.countdown-label{font-size:13px}.result-state{gap:12px}.result-cards{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px}.result-cards-versus{font-size:10px;align-self:center}.pentagon-card-shape{min-height:108px;padding:12px 8px}.pentagon-card-content{gap:4px}.pentagon-card-owner{font-size:10px}.pentagon-card-icon{width:34px;height:34px;font-size:28px}.pentagon-card-title{font-size:14px;line-height:1.15}.result-text{font-size:18px}.result-explanation{font-size:13px}.move-selector{gap:8px}.move-selector-header{align-items:baseline;gap:var(--space-xs)}.move-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.move-button{min-height:62px;padding:8px 4px 6px;grid-template-columns:1fr;justify-items:center;gap:4px;text-align:center;border-radius:14px}.move-button-icon{width:22px;height:22px;font-size:22px}.move-button-text{font-size:9px;line-height:1.15;font-weight:700}.match-status-text{font-size:14px}}@media(min-width:768px){:root{--screen-padding-x: 20px;--screen-padding-top: 24px;--screen-padding-bottom: 36px;--home-card-max-width: 540px;--home-card-padding: 16px;--home-section-gap: 10px;--home-stack-gap: 8px;--home-button-min-height: 42px;--home-mode-button-min-height: 42px}.game-screen{gap:var(--space-md)}.game-screen .topbar{padding:var(--space-sm) var(--space-md)}.game-layout,.game-main-column,.game-side-column,.game-summary-row{gap:12px}.game-screen .opponent-badge,.game-screen .scoreboard,.game-screen .game-board,.game-screen .move-selector,.game-screen .match-status-panel,.game-screen .resume-failed-notice{padding:var(--space-md)}.topbar{align-items:center}.game-summary-row{grid-template-columns:1fr}.opponent-name{font-size:22px}.scoreboard{gap:var(--space-xs)}.score-header{margin-bottom:0}.score-value,.score-divider{font-size:26px}.game-board{gap:var(--space-xl);min-height:268px}.countdown-number{font-size:clamp(50px,9vw,74px)}.countdown-label{font-size:16px}.result-state{gap:14px}.pentagon-card-shape{min-height:154px;padding:14px var(--space-md)}.pentagon-card-icon{width:48px;height:48px;font-size:36px}.pentagon-card-title{font-size:18px}.move-selector{gap:var(--space-sm)}.move-list{gap:8px}.move-button{min-height:58px;padding:0 var(--space-lg)}.move-button-text{font-size:15px}.match-status-panel{gap:var(--space-sm)}.result-cards{grid-template-columns:1fr auto 1fr;gap:var(--space-lg)}.pentagon-card-icon{width:64px;height:64px;font-size:48px}.rules-move-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.hero-card h1{font-size:30px}}@media(max-width:359px){:root{--home-card-max-width: 100%;--home-card-padding: 12px;--home-section-gap: 8px;--home-stack-gap: 8px;--home-button-min-height: 38px;--home-mode-button-min-height: 38px}}@media(min-width:480px)and (max-width:767px){:root{--home-card-max-width: 460px;--home-card-padding: 14px;--home-section-gap: 8px;--home-stack-gap: 8px;--home-button-min-height: 40px;--home-mode-button-min-height: 40px}}@media(min-width:1024px){:root{--home-card-max-width: 560px;--home-card-padding: 18px;--home-section-gap: 12px;--home-stack-gap: 10px;--home-button-min-height: 44px;--home-mode-button-min-height: 44px}.home-screen{align-items:flex-start}}@media(min-width:768px)and (max-height:920px){.daily-challenge-panel{gap:6px;padding:9px}.daily-challenge-header h2{font-size:16px}.daily-challenge-copy{font-size:12px;line-height:1.35}}@media(min-width:768px)and (max-width:1023px){.game-screen{padding-top:calc(var(--screen-padding-top) + max(env(safe-area-inset-top,0px),12px))}}@media(min-width:900px){:root{--screen-padding-x: 24px;--screen-padding-top: 28px;--screen-padding-bottom: 40px}.game-layout{grid-template-columns:minmax(0,1fr) var(--game-sidebar-width);gap:14px}.game-main-column,.game-side-column{gap:14px}}@media(hover:hover)and (pointer:fine){.move-button:hover:not(:disabled),.primary-button:hover,.secondary-button:hover,.mode-button:hover,.topbar-link:hover,.bracket-node.is-current:hover{transform:translateY(-1px)}}@media(prefers-reduced-motion:reduce){.bracket-node,.bracket-node:after,.bracket-node.is-just-current,.bracket-node.is-current:after,.tutorial-dot,.tutorial-progress-fill,.tutorial-step-enter-active,.tutorial-step-leave-active,.win-streak-highlight{animation:none!important;transition-duration:.01ms!important}.bracket-node.is-current,.bracket-node.is-defeated,.bracket-node.is-lost{transform:none}}.tutorial-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--space-md);background:#060e1ed1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.tutorial-card{display:grid;gap:var(--space-md);width:100%;max-width:380px;padding:var(--space-lg);border-radius:var(--radius-lg);border:1px solid rgba(140,220,255,.2);background:linear-gradient(180deg,#4b91ff29,#ffffff0a),var(--color-surface);box-shadow:0 24px 48px #060e1e80}.tutorial-dots{display:flex;gap:6px;justify-content:center}.tutorial-dot{width:8px;height:8px;border-radius:50%;background:#fff3;transition:background .2s,transform .2s}.tutorial-dot.is-active{background:#60a5fa;transform:scale(1.25)}.tutorial-dot.is-done{background:#60a5fa73}.tutorial-progress{height:6px;border-radius:var(--radius-pill);background:#ffffff1f;overflow:hidden}.tutorial-progress-fill{height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,#60a5fa,#a5f3fc);transition:width .25s ease}.tutorial-step-content{display:grid;gap:10px;min-height:110px}.tutorial-step-number{margin:0;font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted)}.tutorial-step-title{margin:0;font-size:22px;line-height:1.2}.tutorial-step-body{margin:0;font-size:14px;line-height:1.55;color:var(--color-text-muted)}.tutorial-actions{display:grid;gap:8px}.tutorial-skip-button{opacity:.7}.tutorial-step-enter-active,.tutorial-step-leave-active{transition:opacity .18s ease,transform .18s ease}.tutorial-step-enter-from{opacity:0;transform:translate(14px)}.tutorial-step-leave-to{opacity:0;transform:translate(-14px)}
