*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--gt-bg:#07090d;--gt-surface:#111620;--gt-surface-2:#182030;--gt-text:#f4f7fb;--gt-muted:#9aa7b8;--gt-border:#ffffff1f;--gt-accent:#35d6ff;--gt-accent-2:#9cff3a;--gt-danger:#f35;--gt-warning:#ffd33d;--gt-radius:18px}html{-webkit-text-size-adjust:100%}body{background:var(--gt-bg);color:var(--gt-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}#app{flex-direction:column;min-height:100vh;display:flex}:focus-visible{outline:2px solid var(--gt-accent);outline-offset:2px}button{font-family:inherit}::selection{color:var(--gt-text);background:#35d6ff4d}.stage{overscroll-behavior:none}.app-header[data-v-2be629a2]{z-index:100;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--gt-border);background:#07090de0;padding:10px 20px;position:sticky;top:0}.header-inner[data-v-2be629a2]{justify-content:space-between;align-items:center;max-width:800px;margin:0 auto;display:flex}.logo-link[data-v-2be629a2]{align-items:center;text-decoration:none;display:flex}.logo-link[data-v-2be629a2]:hover{opacity:.8}.logo-link[data-v-2be629a2]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:4px;border-radius:4px}.logo[data-v-2be629a2]{align-items:center;gap:10px;display:flex}.logo-icon[data-v-2be629a2]{font-size:22px}.logo-text[data-v-2be629a2]{color:var(--gt-text);letter-spacing:.02em;font-size:18px;font-weight:700}.logo-sub[data-v-2be629a2]{color:var(--gt-accent);font-weight:600}.header-top-btn[data-v-2be629a2]{color:var(--gt-muted);border:1px solid var(--gt-border);cursor:pointer;background:0 0;border-radius:8px;align-items:center;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.header-top-btn[data-v-2be629a2]:hover{border-color:var(--gt-accent);color:var(--gt-accent);background:#35d6ff0f}.header-top-btn[data-v-2be629a2]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:2px}.header-top-btn-mobile[data-v-2be629a2]{width:100%;color:var(--gt-muted);border:1px solid var(--gt-border);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;margin-top:8px;padding:10px 0;font-family:inherit;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:none}.header-top-btn-mobile[data-v-2be629a2]:hover{border-color:var(--gt-accent);color:var(--gt-accent);background:#35d6ff0f}@media (width<=720px){.header-top-btn[data-v-2be629a2]{display:none}.header-top-btn-mobile[data-v-2be629a2]{display:flex}}.mode-selector[data-v-05d633d9]{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=720px){.mode-selector[data-v-05d633d9]{grid-template-columns:1fr}}.mode-btn[data-v-05d633d9]{border:1px solid var(--gt-border);border-radius:var(--gt-radius);background:var(--gt-surface);color:var(--gt-muted);cursor:pointer;flex-direction:column;align-items:center;gap:4px;min-height:48px;padding:14px 12px;font-family:inherit;transition:all .2s;display:flex}.mode-btn[data-v-05d633d9]:hover{border-color:var(--gt-accent);color:var(--gt-text)}.mode-btn.active[data-v-05d633d9]{border-color:var(--gt-accent-2);color:var(--gt-accent-2);background:#9cff3a14}.mode-label[data-v-05d633d9]{font-size:14px;font-weight:700}.mode-desc[data-v-05d633d9]{opacity:.8;text-align:center;font-size:11px}.stage[data-v-67d961af]{border-radius:var(--gt-radius);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior:none;outline:none;width:100%;min-height:420px;display:block;position:relative;overflow:hidden}@media (width<=720px){.stage[data-v-67d961af]{min-height:360px}}.stage[data-v-67d961af]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:-2px}.progress-dots[data-v-daa18f9c]{flex-direction:column;align-items:center;gap:8px;padding:12px 0;display:flex}.progress-label[data-v-daa18f9c]{color:var(--gt-muted);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:13px;font-weight:700}.dots-row[data-v-daa18f9c]{gap:10px;display:flex}.dot[data-v-daa18f9c]{background:var(--gt-surface-2);border-radius:3px;width:36px;height:6px;transition:background .2s;overflow:hidden}.dot--done[data-v-daa18f9c]{background:var(--gt-accent)}.dot--current[data-v-daa18f9c]{background:var(--gt-accent-2)}.dot--future[data-v-daa18f9c]{background:var(--gt-surface-2);opacity:.35}.trial-list[data-v-ef229167]{margin-top:16px}.trial-heading[data-v-ef229167]{color:var(--gt-muted);letter-spacing:.04em;margin-bottom:8px;font-size:12px;font-weight:600}.trial-items[data-v-ef229167]{flex-wrap:wrap;gap:8px;display:flex}.trial-item[data-v-ef229167]{background:var(--gt-surface-2);color:var(--gt-muted);border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;display:flex}.trial--valid[data-v-ef229167]{color:var(--gt-text)}.trial-index[data-v-ef229167]{color:var(--gt-accent);font-weight:700}.trial-ms[data-v-ef229167]{font-variant-numeric:tabular-nums;font-weight:600}.trial-invalid[data-v-ef229167]{color:var(--gt-danger);font-size:10px;font-weight:600}.trial-correct[data-v-ef229167]{color:var(--gt-accent-2);font-size:10px;font-weight:600}.trial-false-alarm[data-v-ef229167]{color:var(--gt-warning);font-size:10px;font-weight:600}.trial-miss[data-v-ef229167]{color:var(--gt-danger);font-size:10px;font-weight:600}.result-panel[data-v-eac66cd9]{flex-direction:column;gap:18px;display:flex}.rank-section[data-v-eac66cd9]{text-align:center;background:var(--gt-surface);border-radius:var(--gt-radius);border:1px solid var(--gt-border);padding:24px}.rank-badge-large[data-v-eac66cd9]{color:var(--gt-accent-2);letter-spacing:.04em;background:#9cff3a14;border:1px solid #9cff3a33;border-radius:12px;justify-content:center;align-items:center;padding:12px 28px;font-size:40px;font-weight:900;display:inline-flex}.rank-label[data-v-eac66cd9]{color:var(--gt-text);margin-top:12px;font-size:20px;font-weight:700}.rank-desc[data-v-eac66cd9]{color:var(--gt-muted);margin-top:4px;font-size:14px}.primary-ms[data-v-eac66cd9]{text-align:center;background:var(--gt-surface);border-radius:var(--gt-radius);border:1px solid #35d6ff33;padding:16px}.primary-value[data-v-eac66cd9]{color:var(--gt-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:48px;font-weight:900}.primary-unit[data-v-eac66cd9]{color:var(--gt-muted);margin-left:2px;font-size:22px;font-weight:600}.primary-label[data-v-eac66cd9]{color:var(--gt-muted);margin-top:2px;font-size:12px;display:block}.stats-grid[data-v-eac66cd9]{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}@media (width<=720px){.stats-grid[data-v-eac66cd9]{grid-template-columns:repeat(2,1fr)}}.stat-card[data-v-eac66cd9]{background:var(--gt-surface);border:1px solid var(--gt-border);border-radius:var(--gt-radius);text-align:center;padding:14px}.stat-num[data-v-eac66cd9]{color:var(--gt-text);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.stat-unit[data-v-eac66cd9]{color:var(--gt-muted);margin-left:2px;font-size:13px;font-weight:600}.stat-label[data-v-eac66cd9]{color:var(--gt-muted);margin-top:4px;font-size:11px;font-weight:500}.stat-card--accent[data-v-eac66cd9]{background:#35d6ff0a;border-color:#35d6ff33}.penalty-note[data-v-eac66cd9]{color:var(--gt-warning);margin-top:4px;font-size:11px;font-weight:600;display:block}.anomaly-warning[data-v-eac66cd9]{color:var(--gt-danger);text-align:center;background:#ff33551a;border:1px solid #f353;border-radius:12px;padding:12px 16px;font-size:13px}.fps-comment[data-v-eac66cd9]{border-radius:var(--gt-radius);background:#35d6ff0d;border:1px solid #35d6ff1f;padding:16px 18px}.comment-title[data-v-eac66cd9]{color:var(--gt-accent);letter-spacing:.03em;margin-bottom:6px;font-size:12px;font-weight:700}.comment-text[data-v-eac66cd9]{color:var(--gt-text);margin:0;font-size:13px;line-height:1.7}.advice-box[data-v-eac66cd9]{background:var(--gt-surface);border-radius:var(--gt-radius);border:1px solid var(--gt-border);padding:16px 18px}.advice-text[data-v-eac66cd9]{color:var(--gt-text);margin:0;font-size:14px;line-height:1.6}.result-actions[data-v-eac66cd9]{flex-direction:column;gap:10px;display:flex}.btn[data-v-eac66cd9]{cursor:pointer;border:none;border-radius:12px;min-height:48px;padding:0 24px;font-family:inherit;font-size:15px;font-weight:700;transition:all .2s}.btn[data-v-eac66cd9]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:2px}.btn--primary[data-v-eac66cd9]{background:var(--gt-accent);color:#07090d}.btn--primary[data-v-eac66cd9]:hover{background:#5ee0ff}.btn--copy[data-v-eac66cd9]{color:var(--gt-accent);border:1px solid var(--gt-accent);background:0 0}.btn--copy[data-v-eac66cd9]:hover{background:#35d6ff1a}.btn--top[data-v-eac66cd9]{color:var(--gt-muted);border:1px solid var(--gt-border);background:0 0;justify-content:center;align-items:center;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.btn--top[data-v-eac66cd9]:hover{border-color:var(--gt-accent);color:var(--gt-accent);background:#35d6ff0a}.rank-badge[data-v-b9775ae5]{letter-spacing:.04em;white-space:nowrap;border-radius:6px;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.rank-badge--gt-s\+[data-v-b9775ae5]{color:#07090d;background:linear-gradient(135deg,gold,#ff8c00)}.rank-badge--gt-s[data-v-b9775ae5]{color:#07090d;background:linear-gradient(135deg,#00d4ff,#06f)}.rank-badge--gt-a\+[data-v-b9775ae5]{color:#07090d;background:linear-gradient(135deg,#00e676,#00bcd4)}.rank-badge--gt-a[data-v-b9775ae5]{color:#07090d;background:linear-gradient(135deg,#76ff03,#00e676)}.rank-badge--gt-b\+[data-v-b9775ae5]{color:var(--gt-accent);background:#35d6ff26}.rank-badge--gt-b[data-v-b9775ae5]{color:var(--gt-accent-2);background:#9cff3a1f}.rank-badge--gt-c[data-v-b9775ae5]{color:var(--gt-warning);background:#ffd33d1f}.rank-badge--gt-d[data-v-b9775ae5]{color:var(--gt-danger);background:#ff33551f}.rank-badge--gt-e[data-v-b9775ae5]{color:var(--gt-muted);background:#ffffff0f}.history[data-v-6f62e265]{margin-top:24px}.history-header[data-v-6f62e265]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.history-title[data-v-6f62e265]{color:var(--gt-text);margin:0;font-size:14px;font-weight:700}.history-clear[data-v-6f62e265]{color:var(--gt-danger);cursor:pointer;background:0 0;border:1px solid #ff33554d;border-radius:8px;padding:6px 14px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.history-clear[data-v-6f62e265]:hover{background:#ff33551a}.history-table-wrap[data-v-6f62e265]{-webkit-overflow-scrolling:touch;overflow-x:auto}.history-table[data-v-6f62e265]{border-collapse:collapse;width:100%;min-width:480px;font-size:13px}.history-table th[data-v-6f62e265]{text-align:left;color:var(--gt-muted);letter-spacing:.04em;border-bottom:1px solid var(--gt-border);white-space:nowrap;padding:8px 10px;font-size:11px;font-weight:600}.history-table td[data-v-6f62e265]{color:var(--gt-text);white-space:nowrap;border-bottom:1px solid #ffffff0a;padding:10px}.td-date[data-v-6f62e265]{color:var(--gt-muted);font-variant-numeric:tabular-nums}.td-num[data-v-6f62e265]{font-variant-numeric:tabular-nums;font-weight:600}.env-notice[data-v-79bed130]{border-radius:var(--gt-radius);background:#35d6ff0a;border:1px solid #35d6ff1f;margin-top:20px;padding:16px 18px}.env-title[data-v-79bed130]{color:var(--gt-accent);letter-spacing:.04em;margin:0 0 8px;font-size:12px;font-weight:700}.env-text[data-v-79bed130]{color:var(--gt-muted);margin:0 0 6px;font-size:12px;line-height:1.7}.env-text[data-v-79bed130]:last-child{margin-bottom:0}.gt-cta[data-v-5c9acb2d]{text-align:center;border-radius:var(--gt-radius);background:linear-gradient(135deg,#35d6ff0f,#9cff3a0a);border:1px solid #35d6ff1f;margin-top:20px;padding:24px}.cta-heading[data-v-5c9acb2d]{color:var(--gt-text);margin:0 0 8px;font-size:14px;font-weight:700}.cta-text[data-v-5c9acb2d]{color:var(--gt-muted);margin:0 0 14px;font-size:13px;line-height:1.7}.cta-btn[data-v-5c9acb2d]{background:var(--gt-accent);color:#07090d;border-radius:12px;align-items:center;min-height:48px;padding:0 28px;font-family:inherit;font-size:15px;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.cta-btn[data-v-5c9acb2d]:hover{background:#5ee0ff}.cta-btn[data-v-5c9acb2d]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:2px}.rank-guide[data-v-188fc2d0]{background:var(--gt-surface);border:1px solid var(--gt-border);border-radius:var(--gt-radius);padding:20px}.rank-guide--compact[data-v-188fc2d0]{padding:14px;font-size:13px}.rg-header[data-v-188fc2d0]{margin-bottom:14px}.rg-title[data-v-188fc2d0]{color:var(--gt-text);margin:0;font-size:15px;font-weight:700}.rank-guide--compact .rg-title[data-v-188fc2d0]{font-size:13px}.rg-sub[data-v-188fc2d0]{color:var(--gt-muted);margin:6px 0 0;font-size:12px;line-height:1.6}.rg-table[data-v-188fc2d0]{border-collapse:collapse;width:100%;font-size:12px}.rg-table th[data-v-188fc2d0]{text-align:left;border-bottom:1px solid var(--gt-border);color:var(--gt-muted);white-space:nowrap;padding:6px 8px;font-weight:600}.rg-table td[data-v-188fc2d0]{color:var(--gt-text);border-bottom:1px solid #ffffff0a;padding:5px 8px}.th-rank[data-v-188fc2d0]{width:56px}.th-label[data-v-188fc2d0]{width:auto}.th-mode[data-v-188fc2d0]{text-align:center;width:80px;font-size:11px}.th-mode--active[data-v-188fc2d0]{color:var(--gt-accent-2)}.tr--current[data-v-188fc2d0]{outline-offset:-1px;background:#35d6ff14;outline:1px solid #35d6ff33}.td-rank[data-v-188fc2d0]{padding:3px 8px!important}.td-label[data-v-188fc2d0]{color:var(--gt-muted);white-space:nowrap;font-size:12px}.td-ms[data-v-188fc2d0]{text-align:center;font-variant-numeric:tabular-nums;color:var(--gt-text);font-size:11px;font-weight:600}.td-ms--active[data-v-188fc2d0]{color:var(--gt-accent-2)}.rg-list[data-v-188fc2d0]{flex-direction:column;gap:4px;display:flex}.rg-row[data-v-188fc2d0]{border-radius:8px;align-items:center;gap:10px;padding:6px 10px;display:flex}.rg-row--current[data-v-188fc2d0]{background:#35d6ff14;outline:1px solid #35d6ff33}.rank-guide--compact .rg-row[data-v-188fc2d0]{gap:8px;padding:4px 8px}.rg-rank-cell[data-v-188fc2d0]{flex-shrink:0;width:36px}.rg-ms-cell[data-v-188fc2d0]{width:90px;color:var(--gt-text);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:600}.rank-guide--compact .rg-ms-cell[data-v-188fc2d0]{width:75px;font-size:12px}.rg-label-cell[data-v-188fc2d0]{color:var(--gt-muted);flex:1;font-size:13px}.rank-guide--compact .rg-label-cell[data-v-188fc2d0]{font-size:12px}.rg-current-mark[data-v-188fc2d0]{color:var(--gt-accent);white-space:nowrap;background:#35d6ff1a;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700}.rg-footer[data-v-188fc2d0]{flex-direction:column;gap:8px;margin-top:14px;display:flex}.rg-note[data-v-188fc2d0]{color:var(--gt-muted);margin:0;font-size:12px;line-height:1.6}.rg-note--fps[data-v-188fc2d0]{color:#c8e6a0;background:#9cff3a0a;border:1px solid #9cff3a14;border-radius:8px;padding:10px 12px}@media (width<=600px){.rg-table[data-v-188fc2d0]{font-size:11px}.rg-table th[data-v-188fc2d0],.rg-table td[data-v-188fc2d0]{padding:4px 6px}.th-mode[data-v-188fc2d0]{width:60px;font-size:10px}.td-ms[data-v-188fc2d0]{font-size:10px}}.stats-graph[data-v-a8909041]{background:var(--gt-surface);border:1px solid var(--gt-border);border-radius:var(--gt-radius);margin-top:24px;padding:16px}.graph-title[data-v-a8909041]{color:var(--gt-text);margin:0 0 12px;font-size:14px;font-weight:700}.graph-svg[data-v-a8909041]{width:100%;height:auto;display:block}.main-content[data-v-2e2c1bd5]{flex:1;width:100%;max-width:800px;margin:0 auto;padding:24px 20px 48px}.interruption-banner[data-v-2e2c1bd5]{color:var(--gt-warning);text-align:center;background:#ffd33d1a;border:1px solid #ffd33d33;border-radius:12px;margin-bottom:18px;padding:14px 18px;font-size:14px;font-weight:600}.start-card[data-v-2e2c1bd5]{flex-direction:column;gap:18px;display:flex}.start-title[data-v-2e2c1bd5]{color:var(--gt-text);text-align:center;letter-spacing:-.02em;font-size:28px;font-weight:800}@media (width<=720px){.start-title[data-v-2e2c1bd5]{font-size:22px}}.start-subtitle[data-v-2e2c1bd5]{text-align:center;color:var(--gt-accent);font-size:14px;font-weight:600}.desc-block[data-v-2e2c1bd5]{background:var(--gt-surface);border:1px solid var(--gt-border);border-radius:14px;padding:14px 18px}.desc-block p[data-v-2e2c1bd5]{color:var(--gt-muted);margin:0;font-size:13px;line-height:1.7}.desc-block--accent[data-v-2e2c1bd5]{background:#9cff3a0a;border-color:#9cff3a1f}.desc-block--accent p[data-v-2e2c1bd5]{color:#d0e8b0}.desc-block--small[data-v-2e2c1bd5]{background:0 0;border-color:#ffd33d1a;padding:10px 14px}.desc-block--small p[data-v-2e2c1bd5]{color:#7a8899;font-size:12px}.desc-block--guide-prefix[data-v-2e2c1bd5]{background:#35d6ff08;border-color:#35d6ff14}.desc-block--guide-prefix p[data-v-2e2c1bd5]{color:#b0c4d8;font-size:13px}.btn-start[data-v-2e2c1bd5]{background:var(--gt-accent-2);color:#07090d;cursor:pointer;letter-spacing:.02em;border:none;border-radius:14px;width:100%;min-height:56px;font-family:inherit;font-size:17px;font-weight:800;transition:background .15s}.btn-start[data-v-2e2c1bd5]:hover{background:#baff6e}.btn-start[data-v-2e2c1bd5]:focus-visible{outline:2px solid var(--gt-accent);outline-offset:2px}.game-card[data-v-2e2c1bd5],.result-card[data-v-2e2c1bd5]{flex-direction:column;display:flex}
