:root{--color-bg: #07131b;--color-surface: rgb(10, 26, 34, .88);--color-border: rgb(135, 190, 199, .26);--color-border-glow: rgb(135, 190, 199, .42);--color-needle: #9bdce6;--color-needle-glow: rgb(128, 201, 213, .28);--color-needle-light: #e4fbff;--color-awn: #e2b35c;--color-awn-glow: rgb(226, 179, 92, .26);--color-awn-light: #ffedb1;--color-text: #edf5f3;--color-text-muted: #9eb3b5;--color-danger: #e98179;--color-gold: #e6bd70}body{background:linear-gradient(160deg,#07131b,#0b2028 52%,#101b22);font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:var(--color-text)}.na-icon-btn:hover{background:rgba(255,255,255,.14);border-color:rgba(56,189,248,.4)}.na-stage-label{font-size:13.5px;font-weight:800;color:var(--color-needle);letter-spacing:.05em;white-space:nowrap}.na-mode-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted)}.na-hud-box{background:rgba(8,24,31,.9);border:1px solid var(--color-border);box-shadow:inset 0 1px rgba(255,255,255,.05)}.na-score-val{font-size:19px;font-weight:900;font-variant-numeric:tabular-nums;color:#fff;min-width:3ch;text-align:right;letter-spacing:.5px}.na-combo-val{font-size:11.5px;font-weight:800;color:var(--color-awn);font-variant-numeric:tabular-nums}@layer pages{.na-stage{position:relative;aspect-ratio:var(--frame-ratio);background:#02040b;border-radius:18px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.58),0 0 0 1px rgba(143,196,202,.08);border:1.5px solid rgb(143,196,202,.22)}}.na-stage[data-art-state=loading]:after{content:"";position:absolute;right:14px;bottom:14px;width:14px;height:14px;box-sizing:border-box;border:1px solid rgb(224,251,255,.22);border-top-color:rgba(224,251,255,.82);border-radius:50%;background:rgba(4,15,21,.72);pointer-events:none;z-index:8;animation:na-art-loading-spin .8s linear infinite}@keyframes na-art-loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.na-stage[data-art-state=loading]:after{animation-duration:1.6s}}@media(orientation:landscape)and (max-height:640px){@layer pages{.na-stage{height:min(640px,calc(100vh - 72px));width:auto;max-width:100%}}}@layer pages{#na-canvas{display:block;width:100%;height:100%;touch-action:none}}.na-in-hud{position:absolute;top:10px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;z-index:5}.na-lives-wrap{display:flex;gap:4px;align-items:center}.na-heart{width:22px;height:22px;transition:transform .2s,opacity .2s}.na-life-icon{display:block;width:100%;height:100%}.na-heart.lost{opacity:.25;filter:grayscale(1);transform:scale(.85)}.na-ult-bar-wrap{display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.55);border:1px solid rgb(255,255,255,.15);border-radius:99px;padding:3px 8px 3px 6px}.na-ult-label{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:800;color:var(--color-awn);letter-spacing:.5px}.na-lotus-icon,.na-stance-icon,.btn-icon-img{display:block;object-fit:contain}.na-lotus-icon{width:18px;height:18px}.na-stance-icon{width:20px;height:20px}.btn-icon-img{width:22px;height:22px;margin-bottom:2px}.na-ult-bar-track{width:65px;height:6px;background:rgba(255,255,255,.12);border-radius:99px;overflow:hidden}.na-ult-bar-fill{width:0%;height:100%;background:linear-gradient(90deg,#80c9d5,#d5a653,#f7e19c);border-radius:99px;transition:width .15s ease-out}.na-ult-bar-fill.ready{animation:ultGlow .8s infinite alternate}@keyframes ultGlow{0%{box-shadow:0 0 2px #d5a653}to{box-shadow:0 0 8px #f7e19c}}.na-stance-chip{display:flex;align-items:center;gap:4px;padding:3px 8px;border-radius:99px;font-size:11px;font-weight:800;letter-spacing:.5px;border:1px solid;pointer-events:auto;cursor:pointer;backdrop-filter:blur(4px);transition:background .15s,transform .1s}.na-stance-chip:active{transform:scale(.92)}.na-stance-chip.needle{background:rgba(87,160,174,.17);border-color:var(--color-needle);color:var(--color-needle-light);box-shadow:inset 0 1px rgba(255,255,255,.08)}.na-stance-chip.awn{background:rgba(170,123,48,.18);border-color:var(--color-awn);color:var(--color-awn-light);box-shadow:inset 0 1px rgba(255,255,255,.08)}.na-touch-controls{position:absolute;bottom:14px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none;z-index:6}@media(hover:hover)and (pointer:fine){.na-touch-controls{display:none}}.na-touch-btn{pointer-events:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;width:62px;height:62px;border-radius:50%;background:rgba(8,25,32,.88);border:1.5px solid rgb(255,255,255,.2);color:#fff;font-family:inherit;font-size:10.5px;font-weight:800;box-shadow:0 6px 16px rgba(0,0,0,.45);backdrop-filter:blur(6px);cursor:pointer;touch-action:manipulation;transition:transform .08s,background .15s,border-color .15s}.na-touch-btn:active{transform:scale(.92)}.na-touch-btn--dash{border-color:var(--color-needle);box-shadow:inset 0 1px rgba(255,255,255,.08);background:rgba(74,145,159,.24)}.na-touch-btn--stance{border-color:var(--color-awn);box-shadow:inset 0 1px rgba(255,255,255,.08);background:rgba(167,122,53,.24)}.na-touch-btn--ult{width:54px;height:54px;border-color:#a855f7;opacity:.45;pointer-events:none;transition:opacity .2s,box-shadow .2s,transform .1s}.na-touch-btn--ult.active{opacity:1;pointer-events:auto;border-color:#fef08a;box-shadow:0 0 12px rgba(254,240,138,.32);background:rgba(167,122,53,.34);animation:ultPulse 1s infinite alternate}@keyframes ultPulse{0%{transform:scale(1)}to{transform:scale(1.08)}}.na-overlay{background:rgba(5,16,22,.78);text-align:center;transition:opacity .2s ease}.na-overlay::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:2px}.na-badge{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:2px;padding:4px 12px;border-radius:99px;background:rgba(82,145,153,.12);border:1px solid rgb(143,196,202,.35);color:var(--color-needle);margin-bottom:8px;display:inline-block}.na-title{font-size:32px;font-weight:900;color:#fff;letter-spacing:.5px;margin-bottom:4px}.na-subtitle{font-size:13px;color:var(--color-text-muted);letter-spacing:1px;margin-bottom:14px}.na-hero-art{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px;animation:heroFloat 3s ease-in-out infinite alternate}.na-hero-art img{width:56px;height:56px;object-fit:contain}@keyframes heroFloat{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.na-hero-divider{font-size:18px;color:var(--color-gold);font-weight:900}.na-howto-box{background:rgba(255,255,255,.04);border:1px solid rgb(255,255,255,.08);border-radius:12px;padding:10px 14px;font-size:12px;line-height:1.6;color:#cbd5e1;margin-bottom:16px;text-align:left}.na-howto-box b{color:var(--color-awn-light)}.na-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-bottom:14px}.na-mode-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px 10px;border-radius:14px;background:rgba(11,31,38,.82);border:1px solid rgb(143,196,202,.18);color:#fff;cursor:pointer;font-family:inherit;font-weight:700;font-size:13.5px;transition:all .15s ease}.na-mode-btn .mode-icon{font-size:22px}.na-mode-btn .mode-sub{font-size:10.5px;color:var(--color-text-muted);font-weight:400}.na-mode-btn:hover{background:rgba(76,139,148,.18);border-color:rgba(143,196,202,.42);transform:translateY(-2px)}.na-mode-btn:active{transform:scale(.97)}.na-mode-btn.highlight{background:rgba(102,127,99,.22);border-color:rgba(226,179,92,.45)}.na-mode-btn:disabled,.na-btn:disabled{cursor:wait;opacity:.52;transform:none}.na-level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;width:100%;margin:10px 0 16px}.na-level-chip{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px;background:rgba(255,255,255,.05);border:1px solid rgb(255,255,255,.1);border-radius:10px;color:var(--color-text);font-weight:800;font-size:13px;cursor:pointer;transition:all .12s}.na-level-chip.locked{opacity:.35;cursor:not-allowed;border-color:transparent}.na-level-chip.unlocked:hover{background:rgba(56,189,248,.2);border-color:var(--color-needle);transform:scale(1.05)}.na-level-stars{font-size:9px;margin-top:2px;color:#fbbf24}.na-duel-panel{width:100%;background:rgba(255,255,255,.04);border:1px solid rgb(255,255,255,.1);border-radius:14px;padding:14px;margin-bottom:16px;text-align:left}.na-duel-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.na-duel-label{font-size:12.5px;font-weight:700;color:var(--color-text-muted)}.na-diff-options{display:flex;gap:6px}.na-diff-btn{padding:4px 10px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgb(255,255,255,.12);color:#cbd5e1;font-size:11.5px;font-weight:700;cursor:pointer;transition:all .12s}.na-diff-btn.active{background:var(--color-needle);border-color:var(--color-needle-light);color:#030712}.na-card{width:100%;max-width:380px;background:rgba(10,27,34,.96);border:1.5px solid rgb(143,196,202,.28);border-radius:18px;padding:22px 18px;margin:auto 0;box-shadow:0 16px 36px rgba(0,0,0,.6)}.na-card-title{font-size:26px;font-weight:900;margin-bottom:4px}.na-card-title.victory{color:#fef08a;text-shadow:0 0 10px rgb(254,240,138,.28)}.na-card-title.defeat{color:#f87171;text-shadow:0 0 10px rgb(248,113,113,.28)}.na-card-stars{font-size:22px;margin-bottom:12px;letter-spacing:4px}.na-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;text-align:left}.na-stat-cell{background:rgba(255,255,255,.04);border-radius:10px;padding:8px 10px}.na-stat-label{font-size:10.5px;color:var(--color-text-muted);margin-bottom:2px}.na-stat-value{font-size:17px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}.na-btn-row{display:flex;gap:10px;justify-content:center;width:100%}.na-btn{flex:1;padding:10px 14px;border-radius:12px;font-size:13.5px;font-weight:800;cursor:pointer;border:1px solid rgb(255,255,255,.15);background:rgba(255,255,255,.08);color:#fff;font-family:inherit;transition:all .12s}.na-btn:hover{background:rgba(255,255,255,.16);transform:translateY(-1px)}.na-btn:active{transform:scale(.97)}.na-btn--primary{background:#3f7f89;border-color:#9bdce6;box-shadow:inset 0 1px rgba(255,255,255,.16)}.na-btn--primary:hover{background:#4f929b}.na-btn--ghost{background:transparent;border-color:rgba(255,255,255,.2)}.na-name-row{display:flex;align-items:center;gap:8px;margin:12px 0 16px;width:100%}.na-name-input{flex:1;background:rgba(0,0,0,.4);border:1px solid rgb(255,255,255,.15);border-radius:10px;padding:8px 12px;color:#fff;font-family:inherit;font-size:13px;outline:none;transition:border-color .15s}.na-name-input:focus{border-color:var(--color-needle)}.na-footer-bar{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px;width:100%}.na-lang-btn{font-size:12px}.na-toast{top:55px;background:rgba(11,19,43,.9);border:1px solid var(--color-needle);box-shadow:0 8px 20px rgba(0,0,0,.28);padding:6px 16px;font-size:12px;font-weight:800;color:#fff;transition:opacity .2s,transform .2s}@media(min-width:1024px){.na-side-title{color:var(--color-needle)}.na-side-text b{color:#fef08a}.na-side-row{border-bottom:1px dashed rgb(255,255,255,.08)}.na-side-row:last-child{border-bottom:none}.na-side-row b{color:#fff;font-variant-numeric:tabular-nums}}@media(max-width:480px){.na-stage-label{font-size:12px}.na-score-val{font-size:16px}.na-title{font-size:26px}.na-mode-btn{font-size:12.5px;padding:10px 6px}.na-mode-btn .mode-icon{font-size:18px}.na-touch-btn{width:56px;height:56px;font-size:9.5px}.btn-icon-img{width:19px;height:19px}}@media(prefers-reduced-motion:reduce){@layer accessibility{.na-hero-art,.na-toast,.na-card,.na-ult-bar-fill{animation:none!important}.na-btn,.na-icon-btn,.na-touch-btn{transition:none!important}}}.na-joy{position:absolute;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;border:1.5px solid rgb(56,189,248,.45);background:rgba(15,23,42,.35);pointer-events:none;z-index:30}.na-joy-knob{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:rgba(56,189,248,.55);border:1.5px solid rgb(255,255,255,.5);transition:left .05s linear,top .05s linear}.na-joy.hidden{display:none}.na-shell{--frame-max-wide: 960px;--frame-stage: 480px;--frame-side: 320px;--frame-side-gap: 14px;--frame-ratio: .75;--frame-stage-h: 960px;--frame-shell-max: calc(var(--stage-w) + var(--frame-main-gap) + var(--frame-side) + 24px);--frame-stage-cap: min(var(--stage-w), calc(100% - var(--frame-main-gap) - var(--frame-side)))}
