@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/zen-kaku-gothic-new-japanese-400-normal-CQIKlIYt.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-japanese-400-normal-B3DNVpWR.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/zen-kaku-gothic-new-japanese-700-normal-cK9DHEuw.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-japanese-700-normal-CFB9h1Q4.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/zen-kaku-gothic-new-japanese-900-normal-1g7WkMq8.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-japanese-900-normal-CiBe0GPb.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/zen-kaku-gothic-new-latin-400-normal-BEdayliK.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-400-normal-CPSmNJAU.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/zen-kaku-gothic-new-latin-700-normal-Dgv0FPyh.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-700-normal-zPVyND5l.woff)format("woff")}@font-face{font-family:Zen Kaku Gothic New;font-style:normal;font-display:swap;font-weight:900;src:url(/assets/zen-kaku-gothic-new-latin-900-normal-Br6kKb4x.woff2)format("woff2"),url(/assets/zen-kaku-gothic-new-latin-900-normal-3FroWknk.woff)format("woff")}:root{--shell-max:1080px;--gutter:clamp(10px, 3.6vw, 24px);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--bg-panel:#07141dd1;--bg-soft:#ffffff0d;--line-soft:#ffffff1a;--line-strong:#ffffff29;--text-main:#f5ffe2;--text-soft:#f5ffe2c7;--text-muted:#f5ffe294;--accent-lime:#d8ff3f;--accent-cyan:#49d7ff;--ok:#8bff6c;--warn:#ffce56;--danger:#ff6d6d}*{box-sizing:border-box}body{color:var(--text-main);margin:0}img{display:block}.app-shell{min-height:100vh;padding:12px var(--gutter) calc(20px + var(--safe-bottom));position:relative;overflow-x:clip}.app-shell.has-tab-bar{padding-bottom:calc(94px + var(--safe-bottom))}.ambient{filter:blur(56px);opacity:.32;pointer-events:none;border-radius:999px;width:38vw;height:38vw;position:fixed}.ambient-left{background:#49d7ff38;top:1rem;left:-14vw}.ambient-right{background:#ff6d4538;bottom:15vh;right:-10vw}.app-header,.screen-shell,.tab-bar,.picker-sheet{z-index:1;width:min(var(--shell-max), 100%);margin-inline:auto;position:relative}.app-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.header-copy h1,.panel h2,.panel h3,.metric-card strong,.score-ring strong,.focused-weapon-card h3{margin:0}.header-chip-group,.hero-actions,.result-actions,.mode-switch,.practice-toolbar,.summary-line,.action-bar-buttons,.practice-filter-badges{flex-wrap:wrap;gap:8px;display:flex}.screen-shell,.stack,.weapon-list,.review-list,.review-placement-list,.danger-stack,.slot-stack{flex-direction:column;gap:14px;display:flex}.panel{background:var(--bg-panel);border:1px solid var(--line-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:22px;padding:14px;box-shadow:0 22px 52px #00000038}.panel-heading,.practice-topbar,.focused-weapon-head,.focused-weapon-title,.focused-weapon-meta,.thumb-panel-head,.feedback-header,.review-card-header,.review-weapon-head,.slot-label-row,.picker-sheet-head,.setting-row-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin:0 0 4px;font-size:.72rem}.eyebrow.accent{color:var(--accent-lime)}.panel-note,.hero-text,.review-perfect,.compact-weapon-card p,.weapon-insight-card span,.action-bar-copy span,.focused-review-note{color:var(--text-soft);margin:0;line-height:1.5}.header-chip,.info-badge,.timer-badge,.focused-weapon-status,.weapon-thumb-marker,.weapon-thumb-focus,.slot-answer-state{border:1px solid var(--line-soft);background:#07141dbd;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:.76rem;display:inline-flex}.timer-badge{color:#f5ffb7;background:#d8ff3f24;min-width:66px;font-weight:800}.timer-badge.is-danger{color:#ffd4d4;background:#ff6d6d24;border-color:#ff6d6d70}.metric-card,.info-item,.weapon-insight-card,.compact-weapon-card,.review-card,.review-placement-card,.review-option,.placement-slot,.focused-weapon-card,.action-bar,.feedback-panel,.setting-row{border:1px solid var(--line-soft);background:var(--bg-soft);border-radius:18px}.metric-card,.info-item,.compact-weapon-card,.review-card,.review-placement-card,.review-option,.setting-row{padding:14px}.metric-card{flex-direction:column;gap:4px;display:flex}.metric-card span,.info-item span,.review-option span{color:var(--text-muted);font-size:.78rem}.metric-card small{color:var(--text-muted);font-size:.76rem}.metric-card strong{font-size:clamp(1.15rem,4vw,1.5rem)}.hero-metrics,.feedback-grid,.info-grid,.review-option-grid,.compact-weapon-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.home-start-panel{gap:14px}.practice-filter-panel{flex-direction:column;gap:12px;display:flex}.filter-select-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.filter-field{color:var(--text-soft);flex-direction:column;gap:6px;font-size:.85rem;display:flex}.filter-field span{color:var(--text-muted);font-size:.78rem}.filter-select{border:1px solid var(--line-soft);width:100%;min-height:46px;color:var(--text-main);background:#ffffff0f;border-radius:14px;padding:0 12px}.filter-summary-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-empty-note{color:#ffd7d7}.home-mini-stats .metric-card small{min-height:1.2em}.weapon-list{gap:10px}.weapon-insight-card,.compact-weapon-card,.review-weapon-head,.review-option div,.slot-button,.slot-correct-answer,.focused-weapon-title{align-items:center;gap:10px;display:flex}.weapon-insight-card{padding:12px 14px}.weapon-insight-card img,.compact-weapon-card img,.review-weapon-head img,.focused-weapon-icon{object-fit:contain;flex-shrink:0;width:40px;height:40px}.compact-weapon-grid{grid-template-columns:1fr}.mode-button,.primary-button,.secondary-button,.danger-button,.text-button,.tab-button,.slot-button,.slot-clear-button,.picker-option{border:0;border-radius:16px;transition:transform .14s,background .14s,border-color .14s,opacity .14s}.primary-button,.secondary-button,.danger-button,.text-button,.tab-button,.mode-button{padding:12px 14px}.primary-button{background:linear-gradient(135deg, var(--accent-lime), var(--ok));color:#0d1800;font-weight:900}.secondary-button,.mode-button,.tab-button,.slot-button,.picker-option{border:1px solid var(--line-soft);color:inherit;background:#ffffff0f}.danger-button{color:#ffd7d7;background:#ff6d6d29}.text-button,.slot-clear-button{color:var(--text-soft);background:0 0}.mode-button.is-active,.tab-button.is-active,.picker-option.is-active{color:#f5ffb7;background:#d8ff3f1f;border-color:#d8ff3f73}.primary-button:hover,.secondary-button:hover,.danger-button:hover,.text-button:hover,.tab-button:hover,.mode-button:hover,.slot-button:hover,.picker-option:hover{transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.text-button:disabled,.mode-button:disabled,.tab-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.danger-wide-button{width:100%}.progress-rail{background:#ffffff0f;border-radius:999px;height:8px;overflow:hidden}.progress-rail span{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-lime));height:100%;display:block}.practice-panel{gap:12px}.practice-topbar{align-items:center}.practice-copy{flex-direction:column;gap:4px;display:flex}.practice-filter-badges{margin-top:2px}.thumb-panel{flex-direction:column;gap:8px;display:flex}.weapon-thumb-rail{gap:8px}.weapon-thumb-rail.is-grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.weapon-thumb-rail.is-scrollable{scroll-snap-type:x proximity;padding-bottom:4px;display:flex;overflow-x:auto}.weapon-thumb{border:1px solid var(--line-soft);min-height:88px;color:inherit;background:#ffffff0a;border-radius:18px;flex-direction:column;justify-content:space-between;align-items:center;gap:8px;padding:8px;display:flex}.weapon-thumb-rail.is-scrollable .weapon-thumb{scroll-snap-align:start;flex:0 0 78px}.weapon-thumb-top{justify-content:space-between;align-items:center;gap:6px;width:100%;display:flex}.weapon-thumb img{object-fit:contain;width:34px;height:34px}.weapon-thumb-order{background:#49d7ff26;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding-inline:6px;font-size:.72rem;font-weight:900;display:inline-flex}.weapon-thumb-marker{padding:4px 8px;font-size:.68rem;font-weight:800}.weapon-thumb-marker.is-empty{color:var(--text-soft)}.weapon-thumb-marker.is-partial{color:#ffe5a8;border-color:#ffce5661}.weapon-thumb-marker.is-complete,.weapon-thumb-marker.is-perfect{color:#d7ffcc;border-color:#8bff6c66}.weapon-thumb-marker.is-miss{color:#ffd7d7;border-color:#ff6d6d6b}.weapon-thumb-focus{visibility:hidden;min-height:24px;padding:4px 8px;font-size:.68rem}.weapon-thumb-focus.is-visible{visibility:visible;color:#baf1ff;border-color:#49d7ff7a}.weapon-thumb.is-empty{border-color:#ffffff14}.weapon-thumb.is-partial{border-color:#ffce564d}.weapon-thumb.is-complete,.weapon-thumb.is-perfect{border-color:#8bff6c57}.weapon-thumb.is-miss{border-color:#ff6d6d5c}.weapon-thumb.is-active{border-color:#49d7ff9e;box-shadow:0 0 0 2px #49d7ff29}.focused-weapon-card{flex-direction:column;gap:12px;padding:14px;display:flex}.focused-weapon-card.is-perfect{border-color:#8bff6c66}.focused-weapon-card.is-partial{border-color:#ffce5666}.focused-weapon-card.is-miss{border-color:#ff6d6d6b}.focused-weapon-title{flex:auto;min-width:0}.focused-weapon-meta{flex-wrap:wrap;justify-content:flex-end}.focused-weapon-status.is-perfect{color:#d7ffcc;border-color:#8bff6c6b}.focused-weapon-status.is-partial{color:#ffe6b5;border-color:#ffce566b}.focused-weapon-status.is-miss{color:#ffd7d7;border-color:#ff6d6d6b}.order-badge{background:#49d7ff26;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:900;display:inline-flex}.placement-slot{padding:12px}.placement-slot.is-armed{border-color:#49d7ff8c}.placement-slot.is-correct{border-color:#8bff6c6b}.placement-slot.is-wrong{border-color:#ff6d6d6b}.slot-button{text-align:left;justify-content:flex-start;width:100%;min-height:76px;padding:14px}.slot-button img,.slot-correct-answer img,.review-option img,.picker-option img{object-fit:contain;flex-shrink:0;width:28px;height:28px}.slot-button:disabled{opacity:1}.slot-placeholder{color:var(--text-muted)}.slot-answer-state{width:fit-content;margin-top:8px;padding:5px 10px}.slot-answer-state.is-correct{color:#d7ffcc;border-color:#8bff6c6b}.slot-correct-answer{color:var(--text-soft);margin-top:8px}.slot-correct-answer span{color:var(--text-muted);font-size:.8rem}.picker-sheet-scrim{z-index:5;background:#02080c9e;border:0;position:fixed;inset:0}.picker-sheet{z-index:6;padding:14px 14px calc(14px + var(--safe-bottom));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#07141dfa;border:1px solid #d8ff3f2e;border-radius:22px 22px 0 0;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -24px 54px #00000057}.picker-option-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:min(54vh,420px);padding-right:2px;display:grid;overflow-y:auto}.picker-option{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:96px;padding:10px 8px;display:flex}.picker-option span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.74rem;line-height:1.25;display:-webkit-box;overflow:hidden}.action-bar-shell.inline-action-bar{margin-top:2px}.sticky-review-cta-shell{top:calc(8px + var(--safe-top));z-index:3;margin-top:2px;position:sticky}.sticky-review-cta{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07141df5;border:1px solid #d8ff3f47;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex;box-shadow:0 20px 40px #00000042}.sticky-review-copy{flex-direction:column;gap:4px;display:flex}.sticky-review-copy strong{font-size:.96rem}.sticky-review-copy span{color:var(--text-soft);font-size:.8rem;line-height:1.45}.sticky-review-cta .primary-button{flex-shrink:0}.action-bar{flex-direction:column;gap:12px;padding:14px;display:flex}.action-bar-copy{flex-direction:column;gap:4px;display:flex}.action-bar-copy strong{font-size:.95rem}.action-bar-buttons{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.action-bar .primary-button,.action-bar .secondary-button{width:100%}.feedback-panel{flex-direction:column;gap:12px;padding:14px;display:flex}.feedback-panel.is-perfect{background:#8bff6c14}.feedback-grid dt{color:var(--text-muted);margin-bottom:4px;font-size:.78rem}.feedback-grid dd{margin:0;font-weight:800}.result-score{align-items:center;gap:14px;display:flex}.score-ring{background:radial-gradient(circle,#d8ff3f2e,#49d7ff14);border:1px solid #d8ff3f42;border-radius:999px;place-items:center;width:96px;height:96px;display:grid}.score-ring span{color:var(--text-soft)}.review-card-header{margin-bottom:12px}.review-card-header span,.review-weapon-head span{color:var(--text-soft);font-size:.82rem}.review-option.is-strong{border-color:#d8ff3f3d}.setting-row{flex-direction:column;gap:12px;display:flex}.tab-bar{left:50%;bottom:calc(10px + var(--safe-bottom));grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid;position:fixed;transform:translate(-50%)}.tab-bar .tab-button{min-width:0}@media (width<=720px){.app-header,.practice-topbar,.focused-weapon-head,.picker-sheet-head,.panel-heading{flex-direction:column;align-items:stretch}.header-chip-group,.practice-toolbar,.mode-switch,.hero-actions,.result-actions{width:100%}.header-chip-group>*,.practice-toolbar>*,.mode-switch>*,.hero-actions>*,.result-actions>*{flex:auto}.focused-weapon-meta{justify-content:space-between}.sticky-review-cta{flex-direction:column;align-items:stretch}.sticky-review-cta .primary-button{width:100%}.filter-select-grid{grid-template-columns:1fr}}@media (width>=760px){.hero-metrics,.info-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-weapon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.picker-option-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=980px){.compact-weapon-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=430px){.app-shell{padding-inline:10px}.panel{border-radius:20px;padding:13px}.hero-metrics,.feedback-grid,.review-option-grid,.info-grid{grid-template-columns:1fr}.result-score{align-items:flex-start}.weapon-thumb-rail.is-scrollable .weapon-thumb{flex-basis:74px}}*,:before,:after{box-sizing:border-box}:root{color:#f5ffe2;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#49d7ff2e,#0000 30%),radial-gradient(circle at 100% 0,#ff735833,#0000 26%),linear-gradient(#07161d 0%,#0b1f28 48%,#07161d 100%);font-family:Zen Kaku Gothic New,Hiragino Sans,Yu Gothic,sans-serif}html{min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}#root{min-height:100vh}
