/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}.flex{display:flex}.grid{display:grid}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.flex-wrap{flex-wrap:wrap}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,visibility,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}:root{--color-bg-base:#0f172a;--color-bg-elevated:#1e293b;--color-bg-glass:#1e293b99;--color-border:#94a3b826;--color-border-strong:#94a3b840;--color-text-primary:#f1f5f9;--color-text-secondary:#94a3b8;--color-accent:#818cf8;--color-accent-hover:#6366f1;--color-accent-gradient:linear-gradient(135deg,#6366f1,#06b6d4);--color-success:#34d399;--color-error:#f87171;--color-warning:#fbbf24;--color-grid-cell:#334155;--color-grid-cell-hover:#475569;--shadow-card:0 4px 24px #0000004d;--shadow-glow:0 0 20px #6366f140;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--blur-glass:12px;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-smooth:.3s cubic-bezier(.4,0,.2,1);color-scheme:dark;font-family:system-ui,-apple-system,sans-serif}@media (prefers-color-scheme:light){:root{--color-bg-base:#f8fafc;--color-bg-elevated:#fff;--color-bg-glass:#ffffffb3;--color-border:#0000000f;--color-border-strong:#0000001f;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-grid-cell:#fff;--color-grid-cell-hover:#f1f5f9;--shadow-card:0 4px 24px #0000000f;--shadow-glow:0 0 20px #6366f126;color-scheme:light}}@layer base{*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(ellipse 60% 50% at 50% -20%,#6366f11f,transparent)fixed,var(--color-bg-base);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:var(--color-accent);text-decoration:none}a:hover{color:var(--color-accent-hover)}input,select,textarea{background:var(--color-bg-elevated);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.9375rem}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #6366f126}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2rem}label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem;font-size:.8125rem;font-weight:600;display:block}}@layer utilities{.glass-panel{background:var(--color-bg-glass);-webkit-backdrop-filter:blur(var(--blur-glass));border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.btn-primary{background:var(--color-accent-gradient);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.5rem;font-size:.9375rem;font-weight:600;display:inline-flex}.btn-primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 4px 16px #6366f166}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn-ghost{color:var(--color-text-secondary);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:.625rem 1.5rem;font-size:.9375rem;font-weight:500}.btn-ghost:hover{border-color:var(--color-accent);color:var(--color-accent)}.gradient-text{background:var(--color-accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.input-modern{background:var(--color-bg-elevated);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;width:100%;padding:.75rem 1rem;font-family:inherit;font-size:.9375rem}.input-modern:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #6366f126}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #34d39966}50%{box-shadow:0 0 0 8px #34d39900}}@keyframes scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.animate-fade-in-up{animation:.4s ease-out fade-in-up}.animate-fade-in{animation:.3s ease-out fade-in}.animate-shake{animation:.3s ease-out shake}.animate-scale-in{animation:.3s ease-out scale-in}.page-fade-enter-active,.page-fade-leave-active{transition:opacity .25s}.page-fade-enter-from,.page-fade-leave-to{opacity:0}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border-strong);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}.navbar[data-v-5b26a52a]{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:.75rem 2rem;background:var(--color-bg-glass);backdrop-filter:blur(var(--blur-glass));-webkit-backdrop-filter:blur(var(--blur-glass));border-bottom:1px solid var(--color-border);box-shadow:0 1px 12px #00000026}.brand-link[data-v-5b26a52a]{display:flex;align-items:center;gap:.5rem;text-decoration:none}.brand-icon[data-v-5b26a52a]{font-size:1.4rem;color:var(--color-accent)}.brand-text[data-v-5b26a52a]{font-size:1.25rem;font-weight:700}.nav-links[data-v-5b26a52a]{display:flex;list-style:none;gap:.25rem;margin:0;padding:0}.nav-links a[data-v-5b26a52a]{display:block;padding:.5rem 1rem;border-radius:var(--radius-full);color:var(--color-text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition-fast)}.nav-links a[data-v-5b26a52a]:hover{color:var(--color-text-primary);background:#6366f11a}.nav-links a.active-link[data-v-5b26a52a]{color:var(--color-accent);background:#6366f11f}.nav-auth[data-v-5b26a52a]{display:flex;align-items:center;gap:.75rem}.user-profile[data-v-5b26a52a]{display:flex;align-items:center;gap:.5rem}.username[data-v-5b26a52a]{color:var(--color-text-primary);font-size:.875rem;font-weight:500}.avatar[data-v-5b26a52a]{width:34px;height:34px;border-radius:50%;background:var(--color-accent-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;border:2px solid rgba(99,102,241,.3)}.btn-logout[data-v-5b26a52a]{padding:.4rem 1rem;background:transparent;color:var(--color-error);border:1px solid rgba(248,113,113,.3);border-radius:var(--radius-sm);cursor:pointer;font-size:.8125rem;font-weight:500;transition:all var(--transition-fast)}.btn-logout[data-v-5b26a52a]:hover{background:#f871711a;border-color:var(--color-error)}.auth-link[data-v-5b26a52a]{padding:.4rem 1rem;border-radius:var(--radius-sm);color:var(--color-text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;transition:all var(--transition-fast)}.auth-link[data-v-5b26a52a]:hover{color:var(--color-text-primary)}.auth-link-primary[data-v-5b26a52a]{background:var(--color-accent-gradient);color:#fff}.auth-link-primary[data-v-5b26a52a]:hover{color:#fff;opacity:.9}.menu-toggle[data-v-5b26a52a]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.menu-toggle span[data-v-5b26a52a]{display:block;width:22px;height:2px;background:var(--color-text-primary);border-radius:2px;transition:all var(--transition-smooth)}.menu-toggle span.open[data-v-5b26a52a]{transform:rotate(45deg) translate(5px,5px);box-shadow:none}@media (max-width: 768px){.navbar[data-v-5b26a52a]{flex-wrap:wrap;padding:.75rem 1rem}.menu-toggle[data-v-5b26a52a]{display:flex}.nav-links[data-v-5b26a52a],.nav-auth[data-v-5b26a52a]{display:none;width:100%;flex-direction:column;padding:.75rem 0}.nav-links.nav-open[data-v-5b26a52a],.nav-auth.nav-open[data-v-5b26a52a]{display:flex}.nav-links a[data-v-5b26a52a]{padding:.6rem 1rem;border-radius:var(--radius-sm)}.nav-auth[data-v-5b26a52a]{border-top:1px solid var(--color-border);padding-top:.75rem}}#app-container{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;width:100%}.training-grid[data-v-929e7b86]{display:flex;flex-direction:column;align-items:center;gap:24px}.grid-wrapper[data-v-929e7b86]{position:relative;padding:12px}.grid-container[data-v-929e7b86]{display:grid;gap:6px}.overlay[data-v-929e7b86]{position:absolute;inset:0;background:#0f172aa6;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);z-index:10}.overlay-text[data-v-929e7b86]{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;text-align:center;padding:2rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.overlay-text strong[data-v-929e7b86]{color:var(--color-accent);font-size:1.5rem}.grid-cell[data-v-929e7b86]{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--color-grid-cell);color:var(--color-text-primary);border:2px solid transparent;font-size:22px;font-weight:700;border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:0 2px 8px #0003;transition:all var(--transition-fast)}.grid-cell[data-v-929e7b86]:hover{background:var(--color-grid-cell-hover);border-color:var(--color-accent);transform:scale(1.06);box-shadow:0 4px 16px #6366f14d;z-index:1}.grid-cell.cell-correct[data-v-929e7b86]{background:var(--color-success);color:#fff;border-color:var(--color-success);transform:scale(.92);box-shadow:0 0 16px #34d39966}.grid-cell.cell-error[data-v-929e7b86]{background:var(--color-error);color:#fff;border-color:var(--color-error);box-shadow:0 0 12px #f8717166}.controls[data-v-929e7b86]{display:flex;gap:12px}.stats[data-v-929e7b86]{display:flex;align-items:center;gap:20px}.stat-item[data-v-929e7b86]{display:flex;align-items:baseline;gap:6px}.stat-label[data-v-929e7b86]{font-size:.8125rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value[data-v-929e7b86]{font-size:2rem;font-weight:700;font-family:Cascadia Code,JetBrains Mono,Fira Code,monospace}.timer[data-v-929e7b86]{color:var(--color-accent)}.error-count[data-v-929e7b86]{color:var(--color-error)}.stat-unit[data-v-929e7b86]{font-size:.8125rem;color:var(--color-text-secondary)}.stat-divider[data-v-929e7b86]{width:1px;height:36px;background:var(--color-border)}.completion-card[data-v-929e7b86]{padding:28px 40px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 0 30px #34d39933;border-color:#34d3994d}.completion-icon[data-v-929e7b86]{font-size:2.5rem}.completion-title[data-v-929e7b86]{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.completion-time[data-v-929e7b86]{font-size:2.5rem;font-weight:800;font-family:Cascadia Code,JetBrains Mono,Fira Code,monospace;background:linear-gradient(135deg,#34d399,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.completion-perfect[data-v-929e7b86]{font-size:.9375rem;color:var(--color-success);font-weight:600}.home-container[data-v-e1a755e3]{display:flex;flex-direction:column;align-items:center;padding:2rem 1rem 3rem}.game-header[data-v-e1a755e3]{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:8px}.game-controls[data-v-e1a755e3]{display:flex;align-items:center;gap:.75rem;margin-bottom:8px}.control-label[data-v-e1a755e3]{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0}.size-select[data-v-e1a755e3]{width:auto;min-width:110px;padding:.5rem 2rem .5rem .75rem;background:var(--color-bg-elevated);border:2px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:1rem;font-weight:600;cursor:pointer;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center}.size-select[data-v-e1a755e3]:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #6366f126}.hint-box[data-v-e1a755e3]{margin-bottom:12px;padding:10px 24px;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);color:var(--color-warning);border-radius:var(--radius-sm);font-size:1rem;font-weight:600;text-align:center;display:flex;align-items:center;gap:8px}.hint-icon[data-v-e1a755e3]{font-size:1.1rem}
