:root{--color-primary: #C14949;--color-primary-light: #D66060;--color-primary-dark: #9A3636;--color-accent: #AF4141;--color-success: #10b981;--color-success-light: #34d399;--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-error: #ef4444;--color-error-light: #f87171;--color-bg-deep: #0f172a;--color-bg-base: #1e293b;--color-bg-elevated: #334155;--color-bg-surface: #475569;--color-text-primary: #e5e7eb;--color-text-secondary: #9ca3af;--color-text-muted: #6b7280;--color-border: rgba(75, 85, 99, .5);--color-border-light: rgba(75, 85, 99, .3);--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent) 100%);--gradient-bg: linear-gradient(135deg, var(--color-bg-deep) 0%, var(--color-bg-base) 50%, var(--color-bg-deep) 100%);--hover-overlay: linear-gradient(rgba(255, 255, 255, .15), rgba(255, 255, 255, .15));--hover-overlay-subtle: rgba(255, 255, 255, .08);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 2px 4px rgba(0, 0, 0, .2);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .3);--shadow-glow-primary: 0 0 20px rgba(102, 126, 234, .3);--shadow-glow-success: 0 0 20px rgba(16, 185, 129, .3);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--color-text-primary);background:var(--gradient-bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#app{width:100%;min-height:100vh;padding:0}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);margin:0}a{font-weight:500;color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--color-primary-light)}button{font-family:inherit;transition:all var(--transition-base)}button:hover:not(:disabled){filter:brightness(1.08)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg-base)}::-webkit-scrollbar-thumb{background:var(--color-bg-surface);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}::selection{background:#667eea4d;color:#fff}.debug-panel.svelte-pmsc4d{position:fixed;top:80px;right:20px;width:320px;background:linear-gradient(135deg,#1f2937f2,#111827f2);border:2px solid rgba(102,126,234,.5);border-radius:12px;padding:1rem;box-shadow:0 8px 32px #00000080;z-index:1000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:svelte-pmsc4d-slide-in .2s ease-out}@keyframes svelte-pmsc4d-slide-in{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.debug-header.svelte-pmsc4d{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(102,126,234,.3)}h3.svelte-pmsc4d{margin:0;font-size:1rem;color:#e5e7eb}.close-btn.svelte-pmsc4d{background:transparent;border:none;color:#9ca3af;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.close-btn.svelte-pmsc4d:hover{color:#ef4444}.debug-section.svelte-pmsc4d{margin-bottom:1rem}h4.svelte-pmsc4d{margin:0 0 .5rem;font-size:.85rem;color:#667eea;text-transform:uppercase;letter-spacing:.05em}.debug-row.svelte-pmsc4d{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.label.svelte-pmsc4d{color:#9ca3af;font-size:.8rem;min-width:80px}.value.svelte-pmsc4d{color:#6b7280;font-size:.9rem;font-weight:600;font-family:Courier New,monospace;transition:all .2s}.value.active.svelte-pmsc4d{color:#10b981;text-shadow:0 0 8px rgba(16,185,129,.4)}.mini-bar.svelte-pmsc4d{flex:1;height:4px;background:#374151;border-radius:2px;overflow:hidden}.fill.svelte-pmsc4d{height:100%;transition:width .1s ease-out}.clarity-fill.svelte-pmsc4d{background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981)}.volume-fill.svelte-pmsc4d{background:linear-gradient(90deg,#374151,#667eea,#8b5cf6)}.param-control.svelte-pmsc4d{margin-bottom:1rem}.param-header.svelte-pmsc4d{display:flex;justify-content:space-between;margin-bottom:.25rem}.param-label.svelte-pmsc4d{color:#9ca3af;font-size:.8rem;font-weight:500}.param-value.svelte-pmsc4d{color:#e5e7eb;font-family:Courier New,monospace;font-weight:600;font-size:.8rem}.param-note.svelte-pmsc4d{display:block;font-size:.7rem;color:#6b7280;font-style:italic;margin-top:.25rem}input[type=range].svelte-pmsc4d{width:100%;height:4px;background:#374151;border-radius:2px;outline:none;-webkit-appearance:none}input[type=range].svelte-pmsc4d::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:#667eea;border-radius:50%;cursor:pointer;transition:background .2s}input[type=range].svelte-pmsc4d::-webkit-slider-thumb:hover{background:#8a9cff}input[type=range].svelte-pmsc4d::-moz-range-thumb{width:14px;height:14px;background:#667eea;border-radius:50%;cursor:pointer;border:none;transition:background .2s}input[type=range].svelte-pmsc4d::-moz-range-thumb:hover{background:#8a9cff}.debug-footer.svelte-pmsc4d{text-align:center;padding-top:.75rem;border-top:1px solid rgba(102,126,234,.3)}.debug-footer.svelte-pmsc4d a:where(.svelte-pmsc4d){color:#667eea;text-decoration:none;font-size:.85rem;transition:color .2s}.debug-footer.svelte-pmsc4d a:where(.svelte-pmsc4d):hover{color:#8a9cff}.modal-backdrop.svelte-1bxxaoh{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-md);animation:svelte-1bxxaoh-fadeIn .2s ease-out}@keyframes svelte-1bxxaoh-fadeIn{0%{opacity:0}to{opacity:1}}.modal-content.svelte-1bxxaoh{background:linear-gradient(135deg,#1f2937f2,#111827fa);border-radius:var(--radius-lg);box-shadow:0 25px 50px -12px #00000080;border:1px solid rgba(255,255,255,.1);max-height:90vh;overflow-y:auto;animation:svelte-1bxxaoh-slideUp .3s ease-out}@keyframes svelte-1bxxaoh-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-sm.svelte-1bxxaoh{width:100%;max-width:400px;padding:var(--space-lg)}.modal-md.svelte-1bxxaoh{width:100%;max-width:560px;padding:var(--space-xl)}.modal-lg.svelte-1bxxaoh{width:100%;max-width:720px;padding:var(--space-xl)}@media(max-width:640px){.modal-content.svelte-1bxxaoh{padding:var(--space-lg);margin:var(--space-sm)}}.tuner.svelte-14q1214{padding:var(--space-lg);text-align:center}h3.svelte-14q1214{margin:0 0 var(--space-lg) 0;color:var(--color-text-primary);font-size:1.25rem}.mic-prompt.svelte-14q1214{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl)}.enable-mic-btn.svelte-14q1214{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);background:var(--gradient-primary);border:none;border-radius:var(--radius-md);color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.enable-mic-btn.svelte-14q1214:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.enable-mic-btn.svelte-14q1214:disabled{opacity:.6;cursor:not-allowed}.hint.svelte-14q1214{color:var(--color-text-muted);font-size:.85rem;margin:0}.error-message.svelte-14q1214{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:#ef4444;font-size:.85rem;max-width:400px}.tuner-display.svelte-14q1214{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);padding:var(--space-lg) 0}.note-display.svelte-14q1214{display:flex;align-items:baseline;gap:4px;transition:color .2s ease}.note-display.svelte-14q1214 .note-name:where(.svelte-14q1214){font-size:5rem;font-weight:700;color:var(--color-text-primary);line-height:1}.note-display.svelte-14q1214 .note-octave:where(.svelte-14q1214){font-size:2rem;color:var(--color-text-secondary)}.note-display.in-tune.svelte-14q1214 .note-name:where(.svelte-14q1214){color:#22c55e}.note-display.close.svelte-14q1214 .note-name:where(.svelte-14q1214){color:#fbbf24}.note-display.muted.svelte-14q1214 .note-name:where(.svelte-14q1214){color:var(--color-text-muted);opacity:.4}.note-display.muted.svelte-14q1214 .note-octave:where(.svelte-14q1214){opacity:.4}.meter.svelte-14q1214{width:100%;max-width:300px}.meter-track.svelte-14q1214{position:relative;height:12px;background:var(--color-bg-base);border-radius:6px;overflow:visible}.meter-center.svelte-14q1214{position:absolute;left:50%;top:-4px;bottom:-4px;width:2px;background:#fff6;transform:translate(-50%)}.idle-pulse-left.svelte-14q1214,.idle-pulse-right.svelte-14q1214{position:absolute;top:50%;width:4px;height:150%;transform:translateY(-50%);border-radius:2px;opacity:0}.idle-pulse-left.svelte-14q1214{left:50%;background:linear-gradient(to left,#22c55e,#fbbf24);animation:svelte-14q1214-pulse-left 1.8s ease-out infinite}.idle-pulse-right.svelte-14q1214{left:50%;background:linear-gradient(to right,#22c55e,#fbbf24);animation:svelte-14q1214-pulse-right 1.8s ease-out infinite}@keyframes svelte-14q1214-pulse-left{0%{opacity:.7;transform:translateY(-50%) translate(0);width:4px}to{opacity:0;transform:translateY(-50%) translate(-150px);width:10px}}@keyframes svelte-14q1214-pulse-right{0%{opacity:.7;transform:translateY(-50%) translate(0);width:4px}to{opacity:0;transform:translateY(-50%) translate(150px);width:10px}}.meter-needle.svelte-14q1214{position:absolute;left:50%;top:-2px;width:6px;height:16px;background:#fbbf24;border-radius:3px;margin-left:-3px;transition:transform .1s ease-out,background .2s ease}.meter-needle.in-tune.svelte-14q1214{background:#22c55e}.meter-needle.close.svelte-14q1214{background:#fbbf24}.meter-needle.hidden.svelte-14q1214{opacity:0}.meter.muted.svelte-14q1214{opacity:.4}.meter.muted.svelte-14q1214 .meter-labels:where(.svelte-14q1214) .cents:where(.svelte-14q1214){color:var(--color-text-muted)}.meter-labels.svelte-14q1214{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-sm);font-size:.8rem}.meter-labels.svelte-14q1214 .flat:where(.svelte-14q1214),.meter-labels.svelte-14q1214 .sharp:where(.svelte-14q1214){color:var(--color-text-muted)}.meter-labels.svelte-14q1214 .cents:where(.svelte-14q1214){font-family:monospace;color:#fbbf24;font-weight:500}.meter-labels.svelte-14q1214 .cents.in-tune:where(.svelte-14q1214){color:#22c55e}.meter-labels.svelte-14q1214 .cents.close:where(.svelte-14q1214){color:#fbbf24}.frequency.svelte-14q1214{font-family:monospace;color:var(--color-text-secondary);font-size:.9rem}.frequency.muted.svelte-14q1214{opacity:.4}.standard-tuning.svelte-14q1214{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.tuning-label.svelte-14q1214{color:var(--color-text-muted);font-size:.8rem;margin:0 0 var(--space-sm) 0}.tuning-notes.svelte-14q1214{display:flex;justify-content:center;gap:var(--space-md)}.tuning-note.svelte-14q1214{padding:var(--space-xs) var(--space-sm);background:var(--color-bg-base);border-radius:var(--radius-sm);font-family:monospace;font-size:.9rem;color:var(--color-text-secondary)}.options-section.svelte-14q1214{margin-top:var(--space-lg);border-top:1px solid var(--color-border);padding-top:var(--space-md)}.options-toggle.svelte-14q1214{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.85rem;cursor:pointer;transition:all var(--transition-base)}.options-toggle.svelte-14q1214:hover{background:var(--color-bg-base);color:var(--color-text-primary)}.options-content.svelte-14q1214{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-bg-base);border-radius:var(--radius-md)}.option-row.svelte-14q1214{margin-bottom:var(--space-md)}.option-row.svelte-14q1214:last-of-type{margin-bottom:var(--space-lg)}.option-header.svelte-14q1214{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)}.option-header.svelte-14q1214 label:where(.svelte-14q1214){font-size:.85rem;color:var(--color-text-primary);font-weight:500}.option-value.svelte-14q1214{font-family:monospace;font-size:.85rem;color:var(--color-text-secondary);background:var(--color-bg-card);padding:2px 8px;border-radius:var(--radius-sm)}.level-bar-container.svelte-14q1214{position:relative;width:100%;height:8px;background:transparent;border-radius:4px;margin-bottom:8px}.level-track.svelte-14q1214{position:absolute;inset:0;background:#1e293bcc;border:1px solid rgba(71,85,105,.5);border-radius:4px}.level-fill.svelte-14q1214{position:absolute;top:0;left:0;height:100%;border-radius:4px;transition:width .08s ease-out;z-index:1}.level-fill.clarity-fill.svelte-14q1214{background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e)}.level-fill.clarity-fill.above-threshold.svelte-14q1214{background:#22c55e}.level-fill.volume-fill.svelte-14q1214{background:linear-gradient(90deg,#374151,#667eea,#8b5cf6)}.level-fill.volume-fill.above-threshold.svelte-14q1214{background:#8b5cf6}.level-fill.consecutive-fill.svelte-14q1214{background:linear-gradient(90deg,#374151,#3b82f6,#22c55e)}.level-fill.consecutive-fill.above-threshold.svelte-14q1214{background:#22c55e}.level-slider.svelte-14q1214{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:4px;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none;margin:0;z-index:2}.level-slider.svelte-14q1214::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:4px;height:18px;background:#fffffff2;border-radius:2px;cursor:pointer;box-shadow:0 0 6px #0006;border:none}.level-slider.svelte-14q1214::-webkit-slider-thumb:hover{background:#fff;box-shadow:0 0 8px #ffffff80}.level-slider.svelte-14q1214::-moz-range-thumb{width:4px;height:18px;background:#fffffff2;border:none;border-radius:2px;cursor:pointer;box-shadow:0 0 6px #0006}.level-slider.svelte-14q1214::-moz-range-thumb:hover{background:#fff;box-shadow:0 0 8px #ffffff80}.level-slider.svelte-14q1214::-moz-range-track{background:transparent;border:none}.option-hint.svelte-14q1214{margin:var(--space-xs) 0 0 0;font-size:.75rem;color:var(--color-text-muted)}.reset-btn.svelte-14q1214{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);width:100%;padding:var(--space-sm) var(--space-md);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.8rem;cursor:pointer;transition:all var(--transition-base)}.reset-btn.svelte-14q1214:hover{background:var(--color-bg-card);color:var(--color-text-primary)}form.svelte-k90za2{display:flex;flex-direction:column;gap:1rem}.form-group.svelte-k90za2{display:flex;flex-direction:column;gap:.375rem;text-align:left}label.svelte-k90za2{font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #d1d5db)}input.svelte-k90za2{padding:.75rem 1rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;transition:border-color .2s,box-shadow .2s}input.svelte-k90za2::placeholder{color:#6b7280}input.svelte-k90za2:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 3px #60a5fa1a}input.svelte-k90za2:disabled{opacity:.6;cursor:not-allowed}.error-message.svelte-k90za2{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:.75rem 1rem;border-radius:var(--radius-md, 8px);font-size:.875rem;text-align:left}.submit-btn.svelte-k90za2{padding:.75rem 1.5rem;background:var(--color-primary, #3b82f6);border:none;border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.submit-btn.svelte-k90za2:hover:not(:disabled){background:var(--color-primary-hover, #2563eb)}.submit-btn.svelte-k90za2:active:not(:disabled){transform:scale(.98)}.submit-btn.svelte-k90za2:disabled{opacity:.6;cursor:not-allowed}form.svelte-17rytwt{display:flex;flex-direction:column;gap:1rem}.form-group.svelte-17rytwt{display:flex;flex-direction:column;gap:.375rem;text-align:left}label.svelte-17rytwt{font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #d1d5db)}input.svelte-17rytwt{padding:.75rem 1rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;transition:border-color .2s,box-shadow .2s}input.svelte-17rytwt::placeholder{color:#6b7280}input.svelte-17rytwt:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 3px #60a5fa1a}input.svelte-17rytwt:disabled{opacity:.6;cursor:not-allowed}.error-message.svelte-17rytwt{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:.75rem 1rem;border-radius:var(--radius-md, 8px);font-size:.875rem;text-align:left}.submit-btn.svelte-17rytwt{padding:.75rem 1.5rem;background:var(--color-primary, #3b82f6);border:none;border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.submit-btn.svelte-17rytwt:hover:not(:disabled){background:var(--color-primary-hover, #2563eb)}.submit-btn.svelte-17rytwt:active:not(:disabled){transform:scale(.98)}.submit-btn.svelte-17rytwt:disabled{opacity:.6;cursor:not-allowed}form.svelte-1dyzpel{display:flex;flex-direction:column;gap:1rem}.form-group.svelte-1dyzpel{display:flex;flex-direction:column;gap:.375rem;text-align:left}label.svelte-1dyzpel{font-size:.875rem;font-weight:500;color:var(--color-text-secondary, #d1d5db)}input.svelte-1dyzpel{padding:.75rem 1rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;transition:border-color .2s,box-shadow .2s}input.svelte-1dyzpel::placeholder{color:#6b7280}input.svelte-1dyzpel:focus{outline:none;border-color:var(--color-primary, #60a5fa);box-shadow:0 0 0 3px #60a5fa1a}input.svelte-1dyzpel:disabled{opacity:.6;cursor:not-allowed}.error-message.svelte-1dyzpel{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;padding:.75rem 1rem;border-radius:var(--radius-md, 8px);font-size:.875rem;text-align:left}.submit-btn.svelte-1dyzpel{padding:.75rem 1.5rem;background:var(--color-primary, #3b82f6);border:none;border-radius:var(--radius-md, 8px);color:#fff;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.submit-btn.svelte-1dyzpel:hover:not(:disabled){background:var(--color-primary-hover, #2563eb)}.submit-btn.svelte-1dyzpel:active:not(:disabled){transform:scale(.98)}.submit-btn.svelte-1dyzpel:disabled{opacity:.6;cursor:not-allowed}.social-buttons.svelte-2i746f{display:flex;flex-direction:column;gap:.75rem}.social-btn.svelte-2i746f{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--radius-md, 8px);font-size:.9375rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s,opacity .2s}.social-btn.svelte-2i746f:active:not(:disabled){transform:scale(.98)}.social-btn.svelte-2i746f:disabled{opacity:.6;cursor:not-allowed}.social-btn.google.svelte-2i746f{background:#fff;border:1px solid #e5e7eb;color:#374151}.social-btn.google.svelte-2i746f:hover:not(:disabled){background:#f9fafb}.social-btn.apple.svelte-2i746f{background:#000;border:1px solid #374151;color:#fff}.social-btn.apple.svelte-2i746f:hover:not(:disabled){background:#1f2937}.social-btn.svelte-2i746f svg:where(.svelte-2i746f){flex-shrink:0}.auth-modal.svelte-mrmq8q{text-align:center}h2.svelte-mrmq8q{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#fff}.subtitle.svelte-mrmq8q{margin:0 0 1.5rem;color:var(--color-text-secondary, #9ca3af);font-size:.875rem}.success-message.svelte-mrmq8q{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#4ade80;padding:.75rem 1rem;border-radius:var(--radius-md, 8px);margin-bottom:1rem;font-size:.875rem}.divider.svelte-mrmq8q{display:flex;align-items:center;margin:1.25rem 0;color:var(--color-text-secondary, #6b7280);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.divider.svelte-mrmq8q:before,.divider.svelte-mrmq8q:after{content:"";flex:1;height:1px;background:#ffffff1a}.divider.svelte-mrmq8q span:where(.svelte-mrmq8q){padding:0 .75rem}.auth-links.svelte-mrmq8q{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.auth-links.svelte-mrmq8q button:where(.svelte-mrmq8q){background:none;border:none;color:var(--color-primary, #60a5fa);font-size:.875rem;cursor:pointer;padding:0}.auth-links.svelte-mrmq8q button:where(.svelte-mrmq8q):hover{text-decoration:underline}.user-menu.svelte-15on1sr{position:relative}.user-btn.svelte-15on1sr{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md, 8px);color:#fff;cursor:pointer;transition:background .2s}.user-btn.svelte-15on1sr:hover{background:#ffffff1a}.avatar.svelte-15on1sr{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--color-primary, #3b82f6);border-radius:50%;font-size:.875rem;font-weight:600}.chevron.svelte-15on1sr{transition:transform .2s}.chevron.open.svelte-15on1sr{transform:rotate(180deg)}.dropdown.svelte-15on1sr{position:absolute;top:calc(100% + .5rem);right:0;min-width:200px;background:linear-gradient(135deg,#1f2937fa,#111827fa);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md, 8px);box-shadow:0 10px 25px -5px #00000080;overflow:hidden;animation:svelte-15on1sr-fadeIn .15s ease-out;z-index:100}@keyframes svelte-15on1sr-fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-info.svelte-15on1sr{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.125rem}.name.svelte-15on1sr{font-weight:500;color:#fff;font-size:.875rem}.email.svelte-15on1sr{font-size:.75rem;color:var(--color-text-secondary, #9ca3af);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.divider.svelte-15on1sr{height:1px;background:#ffffff1a}.dropdown-item.svelte-15on1sr{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;background:none;border:none;color:var(--color-text-secondary, #d1d5db);font-size:.875rem;cursor:pointer;transition:background .15s,color .15s;text-align:left}.dropdown-item.svelte-15on1sr:hover{background:#ffffff0d;color:#fff}.overlay.svelte-pa1xus{position:fixed;inset:0;background:#0f172ae6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;animation:svelte-pa1xus-fadeIn .2s ease-out}.modal.svelte-pa1xus{background:#1e293bf2;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:400px;width:90%;position:relative;animation:svelte-pa1xus-slideUp .25s ease-out}.close-btn.svelte-pa1xus{position:absolute;top:var(--space-md);right:var(--space-md);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-base)}.close-btn.svelte-pa1xus:hover{color:var(--color-text-primary);background:#ffffff1a}.title.svelte-pa1xus{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);text-align:center;margin-bottom:var(--space-lg)}.stats-grid.svelte-pa1xus{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-bottom:var(--space-md)}.stat-item.svelte-pa1xus{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);padding:var(--space-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--color-text-secondary)}.stat-content.svelte-pa1xus{display:flex;flex-direction:column;align-items:center}.stat-value.svelte-pa1xus{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.stat-label.svelte-pa1xus{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.notes-row.svelte-pa1xus{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-bottom:var(--space-lg);padding-bottom:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.08)}.notes-value.svelte-pa1xus{font-size:1rem;color:var(--color-text-secondary)}.streak-badge.svelte-pa1xus{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#fb923c26;border:1px solid rgba(251,146,60,.3);border-radius:999px;color:#fb923c;font-size:.9rem;font-weight:600}.comparison-section.svelte-pa1xus{margin-bottom:var(--space-lg)}.section-label.svelte-pa1xus{display:block;font-size:.8rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-sm)}.comparison-grid.svelte-pa1xus{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.comparison-item.svelte-pa1xus{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:var(--space-sm) var(--space-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9rem}.comparison-item.positive.svelte-pa1xus{color:var(--color-success);background:#10b9811a;border-color:#10b98133}.comparison-item.negative.svelte-pa1xus{color:var(--color-error);background:#ef44441a;border-color:#ef444433}.comparison-label.svelte-pa1xus{width:100%;font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase}.achievements-section.svelte-pa1xus{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-lg)}.achievement.svelte-pa1xus{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:.9rem}.achievement.new.svelte-pa1xus{background:#fbbf241a;border-color:#fbbf244d;color:#fbbf24}.achievement-label.svelte-pa1xus{flex:1}.achievement-value.svelte-pa1xus{font-weight:600;color:var(--color-text-primary)}.achievement.new.svelte-pa1xus .achievement-value:where(.svelte-pa1xus){color:#fbbf24}.actions.svelte-pa1xus{display:flex;gap:var(--space-sm);justify-content:center}.btn.svelte-pa1xus{display:inline-flex;align-items:center;gap:6px;padding:var(--space-sm) var(--space-lg);border-radius:999px;border:1px solid rgba(255,255,255,.12);font-weight:600;cursor:pointer;transition:all var(--transition-base);font-size:.95rem}.btn.primary.svelte-pa1xus{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:0 6px 16px #c05a3059}.btn.primary.svelte-pa1xus:hover{background:var(--hover-overlay),var(--gradient-primary)}.btn.secondary.svelte-pa1xus{background:#ffffff0d;color:var(--color-text-primary)}.btn.secondary.svelte-pa1xus:hover{background:#ffffff1a;border-color:#fff3}.account-cta.svelte-pa1xus{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-md);background:#3b82f61a;border:1px solid rgba(59,130,246,.25);border-radius:var(--radius-md);margin-bottom:var(--space-lg);text-align:center;color:var(--color-text-secondary);font-size:.9rem}.account-cta.svelte-pa1xus svg{color:#3b82f6}.cta-btn.svelte-pa1xus{padding:var(--space-xs) var(--space-md);background:#3b82f6;border:none;border-radius:var(--radius-md);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-base)}.cta-btn.svelte-pa1xus:hover{background:#2563eb}@keyframes svelte-pa1xus-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes svelte-pa1xus-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.modal.svelte-pa1xus{padding:var(--space-lg)}.stats-grid.svelte-pa1xus{gap:var(--space-sm)}.stat-item.svelte-pa1xus{padding:var(--space-sm)}.stat-value.svelte-pa1xus{font-size:1.1rem}.actions.svelte-pa1xus{flex-direction:column}.btn.svelte-pa1xus{width:100%;justify-content:center}}main.svelte-1325jhu{width:100%;min-height:100vh;padding:var(--space-lg) var(--space-md)}.container.svelte-1325jhu{max-width:1400px;margin:0 auto}header.svelte-1325jhu{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border)}.header-left.svelte-1325jhu{display:flex;align-items:center;gap:var(--space-md)}.logo-link.svelte-1325jhu{display:flex;align-items:center;text-decoration:none}.logo.svelte-1325jhu{height:32px;width:auto}.tagline.svelte-1325jhu{font-size:.9rem;color:var(--color-text-secondary);margin:0;padding-left:var(--space-md);border-left:1px solid var(--color-border)}.header-right.svelte-1325jhu{display:flex;align-items:center;gap:var(--space-sm)}.header-actions.svelte-1325jhu{display:flex;align-items:center;gap:var(--space-sm);margin-right:var(--space-sm)}.action-buttons.svelte-1325jhu{display:flex;align-items:center;gap:var(--space-sm)}.info-btn.svelte-1325jhu{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base)}.info-btn.svelte-1325jhu:hover{border-color:var(--color-primary);color:var(--color-primary);background:#667eea1a}.info-btn.svelte-1325jhu:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base)}.header-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#667eea1a}.header-btn.active{border-color:var(--color-primary);color:var(--color-primary);background:#667eea26}.sign-in-btn.svelte-1325jhu{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:var(--color-primary, #3b82f6);border:none;border-radius:var(--radius-md);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.sign-in-btn.svelte-1325jhu:hover{background:var(--color-primary-hover, #2563eb)}.sign-in-btn.svelte-1325jhu:active{transform:scale(.98)}.auth-loading.svelte-1325jhu{width:24px;height:24px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--color-primary);border-radius:50%;animation:svelte-1325jhu-spin .8s linear infinite}@keyframes svelte-1325jhu-spin{to{transform:rotate(360deg)}}.alert.svelte-1325jhu{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg)}.alert-error.svelte-1325jhu{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--color-error-light)}.alert.svelte-1325jhu strong:where(.svelte-1325jhu){display:block;margin-bottom:var(--space-sm)}.alert.svelte-1325jhu p:where(.svelte-1325jhu){margin:var(--space-xs) 0}footer.svelte-1325jhu{text-align:center;margin-top:var(--space-xl);padding-top:var(--space-md)}.footer-links.svelte-1325jhu{display:flex;justify-content:center;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.footer-links.svelte-1325jhu a:where(.svelte-1325jhu){color:var(--color-text-muted);text-decoration:none;font-size:.8rem;transition:color var(--transition-base)}.footer-links.svelte-1325jhu a:where(.svelte-1325jhu):hover{color:var(--color-text-secondary)}.footer-links.svelte-1325jhu .separator:where(.svelte-1325jhu){color:var(--color-text-muted);font-size:.75rem}.version.svelte-1325jhu{color:var(--color-text-muted);font-size:.75rem;margin:0}.intro-content.svelte-1325jhu{text-align:center;padding:var(--space-md)}.intro-logo.svelte-1325jhu{height:48px;margin-bottom:var(--space-sm)}.intro-subtitle.svelte-1325jhu{color:var(--color-text-secondary);margin-bottom:var(--space-xl);font-size:1.1rem;text-align:left}.intro-steps.svelte-1325jhu{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-xl);text-align:left}.intro-step.svelte-1325jhu{display:flex;align-items:flex-start;gap:var(--space-md)}.step-number.svelte-1325jhu{width:32px;height:32px;border-radius:50%;background:var(--gradient-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.step-content.svelte-1325jhu{display:flex;flex-direction:column;gap:2px}.step-content.svelte-1325jhu strong:where(.svelte-1325jhu){color:var(--color-text-primary);font-size:1rem}.step-content.svelte-1325jhu span:where(.svelte-1325jhu){color:var(--color-text-secondary);font-size:.9rem}.intro-modes.svelte-1325jhu{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);margin-bottom:var(--space-xl)}.mode-card.svelte-1325jhu{padding:var(--space-md);background:var(--color-bg-elevated);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;text-align:left}.mode-header.svelte-1325jhu{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-primary)}.mode-card.svelte-1325jhu strong:where(.svelte-1325jhu){color:var(--color-text-primary);font-size:.95rem}.mode-card.svelte-1325jhu span:where(.svelte-1325jhu){color:var(--color-text-secondary);font-size:.8rem}.btn-get-started.svelte-1325jhu{background:var(--gradient-primary);color:#fff;border:none;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.btn-get-started.svelte-1325jhu:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);filter:brightness(1.1)}@media(max-width:768px){header.svelte-1325jhu{flex-wrap:wrap;gap:var(--space-sm)}.tagline.svelte-1325jhu{display:none}.logo.svelte-1325jhu{height:28px}.header-right.svelte-1325jhu .header-actions:where(.svelte-1325jhu){margin-right:0;width:100%;justify-content:flex-end;flex-wrap:wrap}.intro-modes.svelte-1325jhu{grid-template-columns:1fr}}.fretboard-container.svelte-ea3903{position:relative;display:flex;justify-content:center;align-items:center;padding:1.5rem;background:#0f172a66;border-radius:16px;border:1px solid rgba(148,163,184,.1)}.string-toggle.svelte-ea3903{transition:opacity .15s ease}.string-toggle.svelte-ea3903:hover:not(.disabled) rect:where(.svelte-ea3903){opacity:.7;stroke:#9ca3af}.string-toggle.svelte-ea3903:not(.selected):hover:not(.disabled) rect:where(.svelte-ea3903){opacity:.5;stroke:#6b7280}.string-toggle.disabled.svelte-ea3903{opacity:.4}.string-toggle.svelte-ea3903:focus{outline:none}.string-toggle.svelte-ea3903:focus-visible rect:where(.svelte-ea3903){stroke:#9ca3af}svg.svelte-ea3903{max-width:100%;height:auto;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.target-string-glow.svelte-ea3903{filter:drop-shadow(0 0 6px #38bdf8) drop-shadow(0 0 12px #0ea5e9)}.target-label-glow.svelte-ea3903{filter:drop-shadow(0 0 4px #38bdf8) drop-shadow(0 0 8px #0ea5e9)}.open-string-preview.svelte-ea3903{animation:svelte-ea3903-preview-pulse 1.2s ease-in-out infinite;filter:drop-shadow(0 0 4px #3b82f6) drop-shadow(0 0 8px #2563eb)}.open-string-circle.svelte-ea3903{animation:svelte-ea3903-open-string-circle-pulse 1.2s ease-out;transform-origin:center;transform-box:fill-box}@keyframes svelte-ea3903-open-string-circle-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.1)}to{opacity:.8;transform:scale(1)}}@keyframes svelte-ea3903-preview-pulse{0%,to{opacity:1}50%{opacity:.7}}.preview-position.svelte-ea3903{animation:svelte-ea3903-preview-pulse 1.2s ease-in-out infinite}.clicked-idle-position.svelte-ea3903{animation:svelte-ea3903-clicked-idle-pulse 1.2s ease-in-out infinite}@keyframes svelte-ea3903-clicked-idle-pulse{0%,to{opacity:.9}50%{opacity:.6}}.open-string-clicked-idle.svelte-ea3903{filter:drop-shadow(0 0 8px #8b5cf6)}.pulse.svelte-ea3903{animation:svelte-ea3903-pulse 1.5s ease-in-out infinite}@keyframes svelte-ea3903-pulse{0%,to{opacity:.4}50%{opacity:.8}}.active-note.svelte-ea3903{animation:svelte-ea3903-active-pulse 1s ease-in-out infinite}@keyframes svelte-ea3903-active-pulse{0%,to{opacity:1}50%{opacity:.85}}.hit-animation.svelte-ea3903{animation:svelte-ea3903-hit-burst 1.2s ease-out;transform-origin:center;transform-box:fill-box}@keyframes svelte-ea3903-hit-burst{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.8}to{transform:scale(1);opacity:1}}.miss-animation.svelte-ea3903{animation:svelte-ea3903-miss-shake .8s ease-out}@keyframes svelte-ea3903-miss-shake{0%,to{transform:translate(0);opacity:1}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}.clickable-position.svelte-ea3903{transition:all .15s ease;cursor:pointer;outline:none}.clickable-position.svelte-ea3903:focus-visible{stroke:#667eeacc;stroke-width:2}.clickable-position.svelte-ea3903:hover{fill:#667eea26;stroke:#667eea99;stroke-width:2}.game-info-bar.svelte-et6md{padding:var(--space-lg);background:unset;background-color:unset;background-image:none;border-style:solid;border-width:1px;border-color:#343e4e;border-radius:var(--radius-lg);margin-bottom:var(--space-md);min-height:140px}.info-grid.svelte-et6md{display:grid;grid-template-columns:1.1fr 1.2fr .9fr;gap:var(--space-md);align-items:stretch}.info-card.svelte-et6md{background:#0f172abf;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-md);padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md)}.session-card.svelte-et6md{gap:var(--space-sm)}.card-header.svelte-et6md{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.eyebrow.svelte-et6md{font-size:.8rem;letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-secondary)}.session-controls.svelte-et6md{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;flex-direction:column;align-items:flex-start}.mode-toggle-block.svelte-et6md{display:flex;flex-direction:column;gap:var(--space-xs)}.mode-toggle-row.svelte-et6md{display:flex;align-items:center;gap:var(--space-sm)}.mic-status-wrap.svelte-et6md{position:relative;display:inline-flex;align-items:center}.mic-tooltip.svelte-et6md{position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%);width:max-content;max-width:min(300px,70vw);padding:8px 10px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#0f172af2;color:var(--color-text-primary);font-size:.85rem;line-height:1.25;white-space:normal;overflow-wrap:anywhere;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--transition-base),visibility var(--transition-base);z-index:5}.mic-tooltip.svelte-et6md:before{content:"";position:absolute;top:50%;right:100%;transform:translateY(-50%);border-width:6px;border-style:solid;border-color:transparent rgba(15,23,42,.95) transparent transparent}.mic-status-wrap.svelte-et6md:hover .mic-tooltip:where(.svelte-et6md),.mic-status-wrap.svelte-et6md:focus-within .mic-tooltip:where(.svelte-et6md){opacity:1;visibility:visible}.sub-label.svelte-et6md{color:var(--color-text-secondary);font-size:.9rem}.mic-status-btn.svelte-et6md{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base);flex:0 0 auto}.mic-status-btn.enabled.svelte-et6md{color:var(--color-success);border-color:#10b98159;background:#10b98114}.mic-status-btn.disabled.svelte-et6md{color:var(--color-warning-light);border-color:#fbbf2459;background:#fbbf2414}.mic-status-btn.svelte-et6md:hover:not(:disabled){border-color:#ffffff40;background:#ffffff14;color:var(--color-text-primary)}.mic-status-btn.svelte-et6md:disabled{opacity:.6;cursor:not-allowed}.mode-toggle.svelte-et6md{display:inline-flex;gap:0;background:#ffffff0a;border-radius:999px;padding:4px;border:1px solid rgba(255,255,255,.08)}.mode-toggle.disabled.svelte-et6md{opacity:.6}.mode-btn.svelte-et6md{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-lg);background:transparent;border:none;border-radius:999px;color:var(--color-text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);min-width:110px;justify-content:center}.mode-btn.svelte-et6md:hover:not(:disabled):not(.active){color:var(--color-text-primary);background:var(--hover-overlay-subtle)}.mode-btn.active.svelte-et6md{background:var(--gradient-primary);color:#fff;box-shadow:0 6px 16px #c05a3059}.mode-btn.active.svelte-et6md:hover:not(:disabled){background:var(--hover-overlay),var(--gradient-primary)}.mode-btn.svelte-et6md:disabled{cursor:not-allowed}.target-card.svelte-et6md{background:radial-gradient(circle at 50% 40%,#667eea00,#121a2ecc);border:1px solid rgba(102,126,234,.35);border-image:none;border-radius:var(--radius-lg);padding:var(--space-md);display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:var(--space-sm);text-align:center;min-height:160px}.target-note-display.svelte-et6md{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:var(--space-xs)}.note-large.svelte-et6md{font-size:6.5rem;font-weight:700;color:var(--color-primary);font-family:Courier New,monospace;line-height:1;margin:0}.octave-large.svelte-et6md{opacity:.5;font-size:3.5rem}.target-controls.svelte-et6md{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;justify-content:center}.inline-controls.svelte-et6md{display:inline-flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.pill-btn.svelte-et6md{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:var(--color-text-primary);font-weight:600;cursor:pointer;transition:all var(--transition-base)}.pill-btn.primary.svelte-et6md{background:var(--gradient-primary);color:#fff;border-color:transparent}.pill-btn.danger.svelte-et6md{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:0 6px 16px #c05a3059}.pill-btn.danger.svelte-et6md:hover:not(:disabled){background:var(--hover-overlay),var(--gradient-primary)}.pill-btn.ghost.svelte-et6md:hover{border-color:#ffffff40;background:#ffffff14}.pill-btn.svelte-et6md:disabled{opacity:.6;cursor:not-allowed}.scale-controls.svelte-et6md{display:flex;align-items:center;gap:var(--space-sm)}.scale-controls.disabled.svelte-et6md{opacity:.6}.inline-select.svelte-et6md{padding:var(--space-sm) var(--space-md);background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:.9rem;cursor:pointer;transition:all var(--transition-base)}.inline-select.svelte-et6md:hover:not(:disabled){border-color:var(--color-primary)}.inline-select.svelte-et6md:disabled{cursor:not-allowed}.inline-select.chromatic-disabled.svelte-et6md{opacity:.4;background:var(--color-bg-elevated)}.scale-select.svelte-et6md{min-width:160px}.toggle-row.svelte-et6md{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-row.disabled.svelte-et6md{opacity:.6;cursor:not-allowed}.toggle-row.svelte-et6md input[type=checkbox]:where(.svelte-et6md){width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}.toggle-row.disabled.svelte-et6md input[type=checkbox]:where(.svelte-et6md){cursor:not-allowed}.toggle-label.svelte-et6md{font-size:.9rem;color:var(--color-text-secondary)}.ready-message.svelte-et6md{display:flex;flex-direction:column;align-items:center;flex:1;width:100%;justify-content:space-between}.scale-info-wrapper.svelte-et6md{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:var(--space-xs)}.scale-info.svelte-et6md{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.scale-preview.svelte-et6md{font-size:1.4rem;font-weight:700;color:var(--color-primary)}.scale-notes.svelte-et6md{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center}.scale-note.svelte-et6md{font-family:Courier New,monospace;font-size:1.35rem;font-weight:700;color:var(--color-text-primary)}.note-separator.svelte-et6md{color:var(--color-text-muted);font-size:.9rem}.stats-card.svelte-et6md{gap:var(--space-sm)}.stats-pills.svelte-et6md{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.stat-pill.svelte-et6md{display:inline-flex;align-items:center;gap:var(--space-sm);padding:8px 10px;border-radius:var(--radius-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);min-width:90px}.stat-pill.streak-pill.svelte-et6md{color:#fb923c}.stat-pill.hits-pill.svelte-et6md{color:var(--color-success)}.stat-pill.misses-pill.svelte-et6md{color:var(--color-error)}.stat-pill.time-pill.svelte-et6md{color:var(--color-primary)}.pill-text.svelte-et6md{display:flex;flex-direction:column;line-height:1.2}.pill-value.svelte-et6md{font-weight:700;color:var(--color-text-primary);font-size:1.1rem}.pill-label.svelte-et6md{color:var(--color-text-secondary);font-size:.85rem}.fretboard-section.svelte-et6md{margin-bottom:var(--space-md)}.pause-overlay.svelte-et6md{position:fixed;inset:0;background:#0f172ae6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer;animation:svelte-et6md-fadeIn .2s ease-out}.pause-content.svelte-et6md{text-align:center;color:#fff}.pause-icon.svelte-et6md{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;opacity:.8;color:var(--color-primary)}.pause-content.svelte-et6md h2:where(.svelte-et6md){font-size:2rem;font-weight:600;margin-bottom:.5rem;color:#f1f5f9}.pause-content.svelte-et6md p:where(.svelte-et6md){font-size:1rem;color:#94a3b8}@keyframes svelte-et6md-fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.game-info-bar.svelte-et6md{padding:var(--space-sm) var(--space-md);min-height:auto}.info-grid.svelte-et6md{grid-template-columns:1fr}.card-header.svelte-et6md{align-items:flex-start;flex-direction:column}.session-controls.svelte-et6md{flex-direction:column;align-items:stretch}.scale-controls.svelte-et6md{justify-content:center}.target-card.svelte-et6md{min-height:140px}.note-large.svelte-et6md{font-size:4.5rem}.octave-large.svelte-et6md{font-size:2.5rem}.stats-pills.svelte-et6md{width:100%}}.fretboard.svelte-1oe210l{flex:1;background:var(--color-surface);border-radius:8px;padding:.5rem;display:flex;flex-direction:column}.fretboard-wrapper.svelte-1oe210l{flex:1;display:flex;flex-direction:column;position:relative}.fret-dots.svelte-1oe210l{display:grid;grid-template-columns:40px 4px 1fr .944fr .891fr .841fr .794fr .749fr .707fr .667fr .63fr .594fr .561fr .53fr;gap:2px;height:12px;margin-bottom:4px}.fret-dot-cell.svelte-1oe210l{display:flex;align-items:center;justify-content:center;gap:3px}.dot.svelte-1oe210l{width:5px;height:5px;background:#ffffff59;border-radius:50%}.fretboard-grid.svelte-1oe210l{flex:1;display:grid;grid-template-columns:40px 4px 1fr .944fr .891fr .841fr .794fr .749fr .707fr .667fr .63fr .594fr .561fr .53fr;grid-template-rows:repeat(6,1fr);gap:6px}.nut.svelte-1oe210l{grid-column:2;grid-row:1 / -1;background:#ffffff80;border-radius:1px}.fret.svelte-1oe210l{background:#ffffff0f;border-radius:2px;border:none;padding:0;cursor:default;transition:background .15s ease,box-shadow .15s ease;min-width:40px;min-height:44px;display:flex;align-items:center;justify-content:center;color:#ffffffe6}.fret.open-string.svelte-1oe210l{background:#ffffff08;border:1.5px solid var(--color-elevated);border-radius:4px;display:flex;align-items:center;justify-content:center}.string-name.svelte-1oe210l{font-size:.85rem;font-weight:600;color:#ffffffb3}.string-name.target.svelte-1oe210l{color:#7dd3fc;font-weight:700}.fret.clickable.svelte-1oe210l{cursor:pointer}@media(hover:hover)and (pointer:fine){.fret.clickable.svelte-1oe210l:hover{background:#667eea26}}.fret.clickable.svelte-1oe210l:active{background:#667eea40}.fret.target-row.svelte-1oe210l{background:#38bdf859}.note-label.svelte-1oe210l{font-size:.8rem;font-weight:700;color:#ffffffe6;text-transform:uppercase;letter-spacing:.02em}.fret.detected-wrong.svelte-1oe210l{background:#f97316;box-shadow:0 0 12px #f9731699}.fret.hit.svelte-1oe210l{background:var(--color-success);box-shadow:0 0 12px #10b98199;animation:svelte-1oe210l-hit-pulse 1.2s ease-out}@keyframes svelte-1oe210l-hit-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.fret.miss-first.svelte-1oe210l{background:#f97316;box-shadow:0 0 12px #f9731699;animation:svelte-1oe210l-miss-shake .5s ease-out}.fret.miss-second.svelte-1oe210l{background:#dc2626;box-shadow:0 0 12px #dc262699;animation:svelte-1oe210l-miss-shake .5s ease-out}@keyframes svelte-1oe210l-miss-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-2px)}40%,80%{transform:translate(2px)}}.fret.correct-outline.svelte-1oe210l{box-shadow:inset 0 0 0 3px var(--color-success)}.fret-numbers.svelte-1oe210l{display:grid;grid-template-columns:40px 4px 1fr .944fr .891fr .841fr .794fr .749fr .707fr .667fr .63fr .594fr .561fr .53fr;gap:2px;margin-top:4px;height:16px}.fret-number.svelte-1oe210l{text-align:center;font-size:.7rem;color:#fff6;font-weight:500}.fret-number.open.svelte-1oe210l{color:#ffffffe6}.fret-number.marker.svelte-1oe210l{color:#ffffffe6;font-weight:600}@media(max-height:520px){.fretboard.svelte-1oe210l{padding:.3rem}.fret-dots.svelte-1oe210l{height:10px;margin-bottom:2px}.fretboard-grid.svelte-1oe210l{gap:4px}.fret.svelte-1oe210l{min-height:36px;min-width:36px}.string-name.svelte-1oe210l{font-size:.75rem}.fret-numbers.svelte-1oe210l{margin-top:2px;height:12px}.fret-number.svelte-1oe210l{font-size:.6rem}}.mobile-header.svelte-olbu9h{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md);background:#0f172ab3;border-bottom:1px solid rgba(255,255,255,.08)}.logo.svelte-olbu9h{height:28px}.menu-btn.svelte-olbu9h{width:44px;height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--color-text-primary);display:inline-flex;align-items:center;justify-content:center}.menu-panel.svelte-olbu9h{position:absolute;top:60px;right:var(--space-md);background:#0f172af2;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-md);display:flex;flex-direction:column;min-width:180px;box-shadow:var(--shadow-lg);z-index:20}.menu-item.svelte-olbu9h{padding:16px 18px;background:transparent;border:none;color:var(--color-text-primary);text-align:left;font-weight:600;font-size:1rem;display:inline-flex;align-items:center;gap:10px}.menu-item.svelte-olbu9h+.menu-item:where(.svelte-olbu9h){border-top:1px solid rgba(255,255,255,.08)}.menu-icon.svelte-olbu9h{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--color-primary-light)}.setup-root.svelte-xj2721{height:100%;display:flex;flex-direction:column;gap:var(--space-md);padding:0;overflow-y:auto;-webkit-overflow-scrolling:touch;min-height:0}.setup-header.svelte-xj2721{padding:0 var(--space-md);text-align:center}.setup-title.svelte-xj2721{font-size:1.4rem;font-weight:700;color:var(--color-text-primary)}.setup-subtitle.svelte-xj2721{font-size:.9rem;color:var(--color-text-secondary)}.setup-section.svelte-xj2721{display:flex;flex-direction:column;gap:var(--space-xs);padding:0 var(--space-md)}.session-section.svelte-xj2721{gap:var(--space-md);padding:0 var(--space-md)}.view-section.svelte-xj2721,.options-section.svelte-xj2721,.string-section.svelte-xj2721,.volume-section.svelte-xj2721{margin-top:var(--space-md);padding:0 var(--space-md)}.volume-row.svelte-xj2721{display:flex;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary)}.volume-slider.svelte-xj2721{flex:1;height:6px;border-radius:3px;background:#ffffff1a;appearance:none;-webkit-appearance:none}.volume-slider.svelte-xj2721::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer}.volume-slider.svelte-xj2721::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none}.volume-value.svelte-xj2721{min-width:40px;text-align:right;font-size:.9rem;font-weight:600}.section-title.svelte-xj2721{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.section-title.compact.svelte-xj2721{margin-top:var(--space-xs)}.section-subtitle.svelte-xj2721{font-size:.85rem;color:var(--color-text-secondary)}.section-subtitle.muted.svelte-xj2721{color:var(--color-text-muted)}.view-row.svelte-xj2721{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.view-btn.svelte-xj2721{padding:10px 12px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--color-text-secondary);font-weight:600;font-size:.95rem}.view-btn.active.svelte-xj2721{background:#c1494933;border-color:#c1494980;color:var(--color-primary-light)}.view-btn.svelte-xj2721:disabled{opacity:.6}.view-hint.svelte-xj2721{font-size:.8rem;color:var(--color-text-muted)}.mode-row.svelte-xj2721{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.mode-toggle.svelte-xj2721{display:inline-flex;gap:0;background:#ffffff0a;border-radius:999px;padding:4px;border:1px solid rgba(255,255,255,.08)}.mode-btn.svelte-xj2721{display:inline-flex;align-items:center;gap:var(--space-xs);padding:10px 18px;background:transparent;border:none;border-radius:999px;color:var(--color-text-secondary);font-size:.95rem;font-weight:600;cursor:pointer}.mode-btn.active.svelte-xj2721{background:var(--gradient-primary);color:#fff}.mic-status-btn.svelte-xj2721{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--color-text-secondary)}.mic-status-btn.enabled.svelte-xj2721{color:var(--color-success);border-color:#10b98159;background:#10b98114}.mic-status-btn.disabled.svelte-xj2721{color:var(--color-warning-light);border-color:#fbbf2459;background:#fbbf2414}.mic-status.svelte-xj2721{font-size:.8rem;color:var(--color-text-muted)}.scale-row.svelte-xj2721{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--space-md)}.inline-select.svelte-xj2721{padding:10px 12px;background:var(--color-bg-base);border:1px solid var(--color-bg-elevated);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:.95rem}.inline-select.chromatic-disabled.svelte-xj2721{opacity:.5}.toggle-row.svelte-xj2721{display:flex;align-items:center;gap:var(--space-sm);font-size:.95rem;color:var(--color-text-secondary)}.toggle-row.svelte-xj2721 input[type=checkbox]:where(.svelte-xj2721){width:20px;height:20px;accent-color:var(--color-primary)}.string-grid.svelte-xj2721{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-sm)}.string-chip.svelte-xj2721{padding:10px 0;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:var(--color-text-secondary);font-weight:600;font-size:.95rem;text-transform:uppercase}.string-chip.selected.svelte-xj2721{background:#c1494933;border-color:#c1494980;color:var(--color-primary-light)}.string-chip.disabled.svelte-xj2721{opacity:.4}.setup-footer.svelte-xj2721{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:0 var(--space-md) var(--space-md)}.start-btn.svelte-xj2721{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:999px;border:none;background:var(--gradient-primary);color:#fff;font-weight:700;font-size:1rem}.start-btn.svelte-xj2721:disabled{opacity:.6}.setup-root.landscape.svelte-xj2721{gap:var(--space-sm)}.setup-root.landscape.svelte-xj2721 .setup-section:where(.svelte-xj2721){gap:4px}.setup-root.landscape.svelte-xj2721 .setup-title:where(.svelte-xj2721){font-size:1.2rem}.setup-root.landscape.svelte-xj2721 .setup-subtitle:where(.svelte-xj2721){font-size:.8rem}.setup-root.landscape.svelte-xj2721 .toggle-row:where(.svelte-xj2721){font-size:.85rem}.setup-root.landscape.svelte-xj2721 .string-chip:where(.svelte-xj2721){padding:8px 0;font-size:.85rem}.setup-root.landscape.svelte-xj2721 .start-btn:where(.svelte-xj2721){padding:12px 18px;font-size:.95rem}.landscape-controls.svelte-1f33nf5{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-sm);padding:0 .75rem;background:#0f172acc;border-top:1px solid rgba(255,255,255,.08)}.controls-left.svelte-1f33nf5{display:inline-flex;gap:var(--space-sm);align-items:center}.control-btn.svelte-1f33nf5{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--color-text-primary);font-weight:600;font-size:.9rem}.control-btn.danger.svelte-1f33nf5{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:0 6px 16px #c05a3059}.control-btn.danger.svelte-1f33nf5:hover:not(:disabled){background:var(--hover-overlay),var(--gradient-primary)}.controls-center.svelte-1f33nf5{display:inline-flex;align-items:baseline;gap:4px;justify-content:center;font-weight:700}.note-label.svelte-1f33nf5{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);margin-right:4px}.note-main.svelte-1f33nf5{font-size:2.4rem;color:var(--color-primary)}.note-octave.svelte-1f33nf5{font-size:1.4rem;color:#fff9}.controls-right.svelte-1f33nf5{display:inline-flex;gap:var(--space-sm);align-items:center;justify-content:flex-end}.stat-pill.svelte-1f33nf5{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-weight:600;font-size:.85rem}.pause-overlay.svelte-1ja56h2{position:fixed;inset:0;background:#0f172ae6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer}.pause-content.svelte-1ja56h2{text-align:center;color:#fff}.pause-icon.svelte-1ja56h2{display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;opacity:.8;color:var(--color-primary)}.pause-content.svelte-1ja56h2 h2:where(.svelte-1ja56h2){font-size:1.5rem;font-weight:600;margin-bottom:.25rem;color:#f1f5f9}.pause-content.svelte-1ja56h2 p:where(.svelte-1ja56h2){font-size:.9rem;color:#94a3b8}.mobile-game.svelte-1ja56h2{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--color-bg);overflow:hidden}.fretboard-container.svelte-1ja56h2{flex:1;display:flex;flex-direction:column;padding:.5rem;min-width:0;overflow:hidden}.mobile-game.setup.svelte-1ja56h2{grid-template-columns:1fr}.hud.svelte-a26xhl{display:flex;flex-direction:column;gap:var(--space-md);height:100%}.target-card.svelte-a26xhl{background:#0f172aa6;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);padding:var(--space-md);text-align:center;transition:box-shadow var(--transition-base),background var(--transition-base)}.target-card.hit.svelte-a26xhl{background:#10b98133;box-shadow:0 0 24px #10b98166}.target-card.miss-first.svelte-a26xhl{background:#f9731633;box-shadow:0 0 24px #f9731666}.target-card.miss-second.svelte-a26xhl{background:#dc262633;box-shadow:0 0 24px #dc262666}.target-label.svelte-a26xhl{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary)}.target-note.svelte-a26xhl{display:flex;align-items:baseline;justify-content:center;gap:4px}.note-main.svelte-a26xhl{font-size:5rem;font-weight:700;color:var(--color-primary)}.note-octave.svelte-a26xhl{font-size:2.6rem;color:#fff9}.target-string.svelte-a26xhl{font-size:.95rem;color:var(--color-text-secondary)}.status-row.svelte-a26xhl{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.instruction.svelte-a26xhl{font-size:.95rem;color:var(--color-text-muted);text-align:center}.control-row.svelte-a26xhl{display:inline-flex;gap:var(--space-sm);flex-wrap:wrap;justify-content:center}.pill-btn.svelte-a26xhl{display:inline-flex;align-items:center;gap:6px;padding:12px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:var(--color-text-primary);font-weight:600;cursor:pointer;font-size:.95rem}.pill-btn.primary.svelte-a26xhl{background:var(--gradient-primary);color:#fff;border-color:transparent}.pill-btn.danger.svelte-a26xhl{background:var(--gradient-primary);color:#fff;border-color:transparent;box-shadow:0 6px 16px #c05a3059}.pill-btn.danger.svelte-a26xhl:hover:not(:disabled){background:var(--hover-overlay),var(--gradient-primary)}.pill-btn.ghost.svelte-a26xhl:hover:not(:disabled){border-color:#ffffff40;background:#ffffff14}.pill-btn.small.svelte-a26xhl{padding:10px 12px;font-size:.9rem}.stats-row.svelte-a26xhl{display:flex;flex-wrap:wrap;gap:var(--space-sm);justify-content:center}.stat-pill.svelte-a26xhl{display:inline-flex;align-items:center;gap:var(--space-xs);padding:8px 12px;border-radius:var(--radius-md);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);min-width:88px}.stat-text.svelte-a26xhl{display:flex;flex-direction:column;line-height:1.1}.stat-value.svelte-a26xhl{font-weight:700;color:var(--color-text-primary);font-size:1rem}.stat-label.svelte-a26xhl{color:var(--color-text-secondary);font-size:.75rem}.portrait.svelte-a26xhl .note-main:where(.svelte-a26xhl){font-size:5.6rem}.portrait.svelte-a26xhl .note-octave:where(.svelte-a26xhl){font-size:3rem}.landscape.svelte-a26xhl .note-main:where(.svelte-a26xhl){font-size:4.2rem}.landscape.svelte-a26xhl .note-octave:where(.svelte-a26xhl){font-size:2.3rem}.portrait.svelte-a26xhl .landscape-only:where(.svelte-a26xhl){display:none}.pause-overlay.svelte-1eyeayj{position:fixed;inset:0;background:#0f172ae6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;cursor:pointer}.pause-content.svelte-1eyeayj{text-align:center;color:#fff}.pause-icon.svelte-1eyeayj{display:flex;align-items:center;justify-content:center;margin-bottom:.5rem;opacity:.8;color:var(--color-primary)}.pause-content.svelte-1eyeayj h2:where(.svelte-1eyeayj){font-size:1.5rem;font-weight:600;margin-bottom:.25rem;color:#f1f5f9}.pause-content.svelte-1eyeayj p:where(.svelte-1eyeayj){font-size:.9rem;color:#94a3b8}.portrait-game.svelte-1eyeayj{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--color-bg);padding:var(--space-md);overflow:hidden}.portrait-game.setup.svelte-1eyeayj{padding:0}.chart-container.svelte-qwwarj{background:#4b55631a;border-radius:12px;padding:1.5rem;border:1px solid rgba(75,85,99,.3)}h3.svelte-qwwarj{color:#e5e7eb;font-size:1.25rem;margin:0 0 1rem}.chart-wrapper.svelte-qwwarj{position:relative;height:300px;width:100%}.chart-hint.svelte-qwwarj{margin:.75rem 0 0;font-size:.85rem;color:#9ca3af;font-style:italic}@media(max-width:768px){.chart-wrapper.svelte-qwwarj{height:230px}.chart-hint.svelte-qwwarj{font-size:.8rem}}.session-list-container.svelte-18y2vra{background:#4b55631a;border-radius:12px;padding:1.5rem;border:1px solid rgba(75,85,99,.3)}h3.svelte-18y2vra{color:#e5e7eb;font-size:1.25rem;margin:0 0 1rem}.empty-message.svelte-18y2vra{color:#9ca3af;text-align:center;padding:2rem;font-style:italic}.table-wrapper.svelte-18y2vra{overflow-x:auto}.session-table.svelte-18y2vra{width:100%;border-collapse:collapse;font-size:.9rem}thead.svelte-18y2vra{background:#4b556333}th.svelte-18y2vra{padding:.75rem;text-align:left;color:#e5e7eb;font-weight:600;border-bottom:2px solid rgba(75,85,99,.4)}.session-row.svelte-18y2vra td:where(.svelte-18y2vra){padding:.75rem;color:#d1d5db;border-bottom:1px solid rgba(75,85,99,.2)}.session-row.svelte-18y2vra:hover{background:#4b55631a}.date-cell.svelte-18y2vra{font-family:monospace;font-size:.85rem}.accuracy-badge.svelte-18y2vra{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-weight:600;font-size:.85rem}.accuracy-badge.excellent.svelte-18y2vra{background:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.4)}.accuracy-badge.good.svelte-18y2vra{background:#fb923c33;color:#fb923c;border:1px solid rgba(251,146,60,.4)}.accuracy-badge.needs-work.svelte-18y2vra{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.4)}.expand-btn.svelte-18y2vra{background:transparent;border:none;color:#667eea;cursor:pointer;padding:.25rem .5rem;transition:color .2s;display:flex;align-items:center;justify-content:center}.expand-btn.svelte-18y2vra:hover{color:#8a9cff}.details-row.svelte-18y2vra td:where(.svelte-18y2vra){padding:0;border-bottom:1px solid rgba(75,85,99,.2)}.session-details.svelte-18y2vra{background:#1f293780;padding:1.5rem;animation:svelte-18y2vra-slideDown .2s ease-out}@keyframes svelte-18y2vra-slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.details-header.svelte-18y2vra{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.details-header.svelte-18y2vra h4:where(.svelte-18y2vra){color:#e5e7eb;margin:0;font-size:1rem}.header-actions.svelte-18y2vra{display:flex;align-items:center;gap:.5rem}.session-id.svelte-18y2vra{font-size:.75rem;color:#9ca3af;background:#4b55634d;padding:.25rem .5rem;border-radius:4px}.delete-btn.svelte-18y2vra{display:inline-flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:1px solid rgba(239,68,68,.3);border-radius:4px;color:#ef4444;cursor:pointer;transition:all .2s ease}.delete-btn.svelte-18y2vra:hover{background:#ef444426;border-color:#ef444480;color:#f87171}.stats-grid.svelte-18y2vra{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-item.svelte-18y2vra{display:flex;justify-content:space-between;padding:.5rem;background:#4b556333;border-radius:6px}.stat-label.svelte-18y2vra{color:#9ca3af;font-size:.85rem}.stat-value.svelte-18y2vra{color:#e5e7eb;font-weight:600}.string-stats.svelte-18y2vra{margin-top:1.5rem}.string-stats.svelte-18y2vra h5:where(.svelte-18y2vra){color:#d1d5db;font-size:.9rem;margin:0 0 1rem}.strings-container.svelte-18y2vra{display:flex;flex-direction:column;gap:.75rem}.string-row.svelte-18y2vra{background:#4b556326;border-radius:8px;padding:.75rem;display:flex;align-items:center;gap:1rem;border-left:3px solid rgba(102,126,234,.3);transition:all .2s ease}.string-row.svelte-18y2vra:hover{background:#4b556340;border-left-color:#667eea99}.string-label.svelte-18y2vra{min-width:80px;display:flex;flex-direction:column;gap:2px}.string-name.svelte-18y2vra{color:#e5e7eb;font-weight:600;font-size:.9rem}.string-note.svelte-18y2vra{color:#9ca3af;font-size:.75rem;font-family:Courier New,monospace}.string-metrics.svelte-18y2vra{flex:1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;align-items:center}.metric-block.svelte-18y2vra{display:flex;flex-direction:column;gap:.25rem}.metric-header.svelte-18y2vra{display:flex;justify-content:space-between;align-items:center}.metric-label.svelte-18y2vra{color:#9ca3af;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.metric-value.svelte-18y2vra{font-weight:600;font-size:.85rem;color:#e5e7eb}.metric-value.high.svelte-18y2vra{color:#10b981}.metric-value.medium.svelte-18y2vra{color:#fb923c}.metric-value.low.svelte-18y2vra{color:#ef4444}.progress-bar.svelte-18y2vra{height:6px;background:#4b55634d;border-radius:3px;overflow:hidden}.progress-fill.svelte-18y2vra{height:100%;border-radius:3px;transition:width .3s ease}.progress-fill.high.svelte-18y2vra{background:linear-gradient(90deg,#10b981,#34d399)}.progress-fill.medium.svelte-18y2vra{background:linear-gradient(90deg,#fb923c,#fbbf24)}.progress-fill.low.svelte-18y2vra{background:linear-gradient(90deg,#ef4444,#f87171)}.time-metric.svelte-18y2vra{text-align:right}.attempts-info.svelte-18y2vra{color:#6b7280;font-size:.7rem;margin-top:2px}.mobile-session-list.svelte-18y2vra{display:none;flex-direction:column;gap:.75rem}.session-card.svelte-18y2vra{background:#1f293773;border-radius:12px;border:1px solid rgba(75,85,99,.35);overflow:hidden}.card-header.svelte-18y2vra{width:100%;text-align:left;padding:1rem;background:transparent;border:none;color:inherit;display:flex;flex-direction:column;gap:.85rem}.card-heading.svelte-18y2vra{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.card-date.svelte-18y2vra{color:#d1d5db;font-family:monospace;font-size:.85rem}.card-stats.svelte-18y2vra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.card-stat.svelte-18y2vra{display:flex;flex-direction:column;gap:.25rem;background:#4b556333;border-radius:8px;padding:.5rem .6rem}.card-label.svelte-18y2vra{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.card-value.svelte-18y2vra{font-size:.95rem;font-weight:600;color:#e5e7eb}.card-toggle.svelte-18y2vra{display:inline-flex;align-items:center;justify-content:center;color:#8a9cff;align-self:flex-end}.card-details.svelte-18y2vra{border-top:1px solid rgba(75,85,99,.25)}@media(max-width:768px){.table-wrapper.svelte-18y2vra{display:none}.mobile-session-list.svelte-18y2vra{display:flex}.session-table.svelte-18y2vra{font-size:.8rem}th.svelte-18y2vra,.session-row.svelte-18y2vra td:where(.svelte-18y2vra){padding:.5rem .25rem}.stats-grid.svelte-18y2vra{grid-template-columns:1fr}.string-row.svelte-18y2vra{flex-direction:column;align-items:flex-start;gap:.5rem}.string-label.svelte-18y2vra{min-width:auto}.string-metrics.svelte-18y2vra{width:100%;grid-template-columns:1fr;gap:.75rem}.time-metric.svelte-18y2vra{text-align:left}.card-header.svelte-18y2vra{padding:.9rem}.card-stats.svelte-18y2vra{grid-template-columns:1fr}.card-toggle.svelte-18y2vra{align-self:flex-start}}.progress-page.svelte-1np3oad{max-width:1400px;margin:0 auto;padding:2rem 1rem}.page-header.svelte-1np3oad{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem}.header-content.svelte-1np3oad h2:where(.svelte-1np3oad){font-size:2rem;color:#e5e7eb;margin:0 0 .5rem}.subtitle.svelte-1np3oad{color:#9ca3af;margin:0;font-size:1rem}.btn-back.svelte-1np3oad{background:#4b55634d;border:1px solid rgba(75,85,99,.5);color:#d1d5db;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-back.svelte-1np3oad:hover{background:#4b556380;border-color:#4b5563b3}.empty-state.svelte-1np3oad{text-align:center;padding:4rem 2rem;background:#4b55631a;border-radius:12px;border:1px dashed rgba(75,85,99,.3)}.empty-icon.svelte-1np3oad{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:var(--color-primary)}.empty-state.svelte-1np3oad h3:where(.svelte-1np3oad){font-size:1.5rem;color:#e5e7eb;margin-bottom:.5rem}.empty-state.svelte-1np3oad p:where(.svelte-1np3oad){color:#9ca3af;margin-bottom:2rem}.btn.svelte-1np3oad{padding:.75rem 2rem;border-radius:8px;border:none;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary.svelte-1np3oad{background:var(--gradient-primary);color:#fff}.btn-primary.svelte-1np3oad:hover{transform:translateY(-2px);box-shadow:0 4px 12px #c1494966}.charts-container.svelte-1np3oad{display:flex;flex-direction:column;gap:2rem}.summary-stats.svelte-1np3oad{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card.svelte-1np3oad{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.3);border-radius:12px;padding:1.5rem;text-align:center}.stat-label.svelte-1np3oad{color:#9ca3af;font-size:.9rem;margin-bottom:.5rem}.stat-value.svelte-1np3oad{color:#e5e7eb;font-size:2rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media(max-width:768px){.progress-page.svelte-1np3oad{padding:1.5rem 1rem}.page-header.svelte-1np3oad{flex-direction:column}.header-content.svelte-1np3oad h2:where(.svelte-1np3oad){font-size:1.5rem}.btn-back.svelte-1np3oad{width:100%;text-align:center}.summary-stats.svelte-1np3oad{grid-template-columns:1fr}}.debug-page.svelte-ieqqg5{padding:2rem;max-width:1600px;margin:0 auto}header.svelte-ieqqg5{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}h1.svelte-ieqqg5{font-size:2rem;color:#e5e7eb}h2.svelte-ieqqg5{font-size:1.25rem;color:#e5e7eb;margin-bottom:1rem}.grid.svelte-ieqqg5{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem}.card.svelte-ieqqg5{background:linear-gradient(135deg,#1f2937cc,#111827e6);border-radius:12px;padding:1.5rem;border:1px solid rgba(102,126,234,.3)}.graph-card.svelte-ieqqg5,.controls-card.svelte-ieqqg5,.notes-card.svelte-ieqqg5{grid-column:span 2}.reading-display.svelte-ieqqg5{display:flex;flex-direction:column;gap:.75rem}.reading-row.svelte-ieqqg5{display:flex;align-items:center;gap:.5rem}.label.svelte-ieqqg5{color:#9ca3af;font-size:.9rem;min-width:140px}.value.svelte-ieqqg5{color:#6b7280;font-family:Courier New,monospace;font-size:1.1rem;font-weight:600;transition:all .2s}.value.active.svelte-ieqqg5{color:#10b981;text-shadow:0 0 10px rgba(16,185,129,.5)}.value.highlight.svelte-ieqqg5{color:#667eea;font-size:1.2rem;font-weight:700}.clarity-bar.svelte-ieqqg5{position:relative;flex:1;height:8px;background:#374151;border-radius:4px;overflow:visible}.clarity-fill.svelte-ieqqg5{height:100%;background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981);transition:width .1s ease-out;border-radius:4px}.volume-fill.svelte-ieqqg5{height:100%;background:linear-gradient(90deg,#374151,#667eea,#8b5cf6);transition:width .1s ease-out;border-radius:4px}.threshold-line.svelte-ieqqg5{position:absolute;top:-2px;bottom:-2px;width:2px;background:#667eea}.control-group.svelte-ieqqg5{margin-bottom:1.5rem}.control-group.svelte-ieqqg5 label:where(.svelte-ieqqg5){display:flex;justify-content:space-between;margin-bottom:.5rem;color:#e5e7eb;font-weight:500}.control-value.svelte-ieqqg5{color:#667eea;font-family:Courier New,monospace}input[type=range].svelte-ieqqg5{width:100%;height:6px;background:#374151;border-radius:3px;outline:none;-webkit-appearance:none}input[type=range].svelte-ieqqg5::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#667eea;border-radius:50%;cursor:pointer}input[type=range].svelte-ieqqg5::-moz-range-thumb{width:18px;height:18px;background:#667eea;border-radius:50%;cursor:pointer;border:none}.hint.svelte-ieqqg5{margin:.5rem 0 0;font-size:.8rem;color:#9ca3af;font-style:italic}.graph.svelte-ieqqg5{position:relative;background:#1f2937;border-radius:8px;padding:1rem;min-height:300px}.empty.svelte-ieqqg5{text-align:center;color:#6b7280;padding:4rem 0;font-style:italic}.btn-primary.svelte-ieqqg5{padding:.75rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary.svelte-ieqqg5:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-small.svelte-ieqqg5{padding:.5rem 1rem;background:#374151;color:#e5e7eb;border:1px solid #4b5563;border-radius:6px;font-size:.9rem;cursor:pointer;margin-top:1rem}.btn-small.svelte-ieqqg5:hover{background:#4b5563}.notes-card.svelte-ieqqg5 ul:where(.svelte-ieqqg5){list-style:none;padding:0;margin:0}.notes-card.svelte-ieqqg5 li:where(.svelte-ieqqg5){padding:.5rem 0;color:#d1d5db;border-bottom:1px solid rgba(75,85,99,.3)}.notes-card.svelte-ieqqg5 li:where(.svelte-ieqqg5):last-child{border-bottom:none}.notes-card.svelte-ieqqg5 strong:where(.svelte-ieqqg5){color:#667eea}footer.svelte-ieqqg5{margin-top:2rem;text-align:center}footer.svelte-ieqqg5 a:where(.svelte-ieqqg5){color:#667eea;text-decoration:none;font-size:1.1rem}footer.svelte-ieqqg5 a:where(.svelte-ieqqg5):hover{color:#8a9cff}@media(max-width:1024px){.graph-card.svelte-ieqqg5,.controls-card.svelte-ieqqg5,.notes-card.svelte-ieqqg5{grid-column:span 1}}.debug-container.svelte-1nflzvm{padding:1rem;background:#0f172a99;border-radius:16px;border:2px dashed #f97316}.debug-controls.svelte-1nflzvm{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:1rem;padding:1rem;background:#0000004d;border-radius:8px}.debug-controls.svelte-1nflzvm button:where(.svelte-1nflzvm){padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:background .2s}.debug-controls.svelte-1nflzvm button:where(.svelte-1nflzvm):hover{background:#5a67d8}.state-info.svelte-1nflzvm{display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:300px}.state-index.svelte-1nflzvm{font-size:.75rem;color:#94a3b8}.state-name.svelte-1nflzvm{font-size:1.1rem;font-weight:700;color:#f97316}.state-desc.svelte-1nflzvm{font-size:.85rem;color:#94a3b8}.legend.svelte-1nflzvm{margin-top:1rem;padding:1rem;background:#0000004d;border-radius:8px}.legend.svelte-1nflzvm h4:where(.svelte-1nflzvm){margin:0 0 .75rem;color:#e2e8f0;font-size:.9rem}.legend-items.svelte-1nflzvm{display:flex;flex-wrap:wrap;gap:1rem}.legend-item.svelte-1nflzvm{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#94a3b8}.color-swatch.svelte-1nflzvm{width:16px;height:16px;border-radius:4px}.debug-page.svelte-93hw3k{padding:2rem;max-width:1400px;margin:0 auto}.header.svelte-93hw3k{text-align:center;margin-bottom:2rem}.header.svelte-93hw3k h1:where(.svelte-93hw3k){color:#f97316;margin-bottom:.5rem}.header.svelte-93hw3k p:where(.svelte-93hw3k){color:#94a3b8;margin-bottom:1rem}.back-link.svelte-93hw3k{display:inline-block;padding:.5rem 1rem;background:#334155;color:#e2e8f0;text-decoration:none;border-radius:6px;transition:background .2s}.back-link.svelte-93hw3k:hover{background:#475569}.legal-page.svelte-13tj7i{max-width:720px;margin:0 auto;padding:var(--space-lg)}h1.svelte-13tj7i{font-size:2rem;color:var(--color-text-primary);margin-bottom:var(--space-sm)}.effective-date.svelte-13tj7i{color:var(--color-text-muted);font-size:.9rem;margin-bottom:var(--space-xl)}section.svelte-13tj7i{margin-bottom:var(--space-xl)}h2.svelte-13tj7i{font-size:1.25rem;color:var(--color-text-primary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}h3.svelte-13tj7i{font-size:1rem;color:var(--color-text-primary);margin:var(--space-md) 0 var(--space-sm)}p.svelte-13tj7i{color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-md)}ul.svelte-13tj7i{color:var(--color-text-secondary);line-height:1.6;padding-left:var(--space-lg);margin-bottom:var(--space-md)}li.svelte-13tj7i{margin-bottom:var(--space-sm)}a.svelte-13tj7i{color:var(--color-primary);text-decoration:none}a.svelte-13tj7i:hover{text-decoration:underline}.back-link.svelte-13tj7i{margin-top:var(--space-xxl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.back-link.svelte-13tj7i a:where(.svelte-13tj7i){display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:.9rem}.back-link.svelte-13tj7i a:where(.svelte-13tj7i):hover{color:var(--color-primary)}.legal-page.svelte-9amksf{max-width:720px;margin:0 auto;padding:var(--space-lg)}h1.svelte-9amksf{font-size:2rem;color:var(--color-text-primary);margin-bottom:var(--space-sm)}.effective-date.svelte-9amksf{color:var(--color-text-muted);font-size:.9rem;margin-bottom:var(--space-xl)}section.svelte-9amksf{margin-bottom:var(--space-xl)}h2.svelte-9amksf{font-size:1.25rem;color:var(--color-text-primary);margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border)}p.svelte-9amksf{color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-md)}ul.svelte-9amksf{color:var(--color-text-secondary);line-height:1.6;padding-left:var(--space-lg);margin-bottom:var(--space-md)}li.svelte-9amksf{margin-bottom:var(--space-sm)}a.svelte-9amksf{color:var(--color-primary);text-decoration:none}a.svelte-9amksf:hover{text-decoration:underline}.back-link.svelte-9amksf{margin-top:var(--space-xxl);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.back-link.svelte-9amksf a:where(.svelte-9amksf){display:inline-flex;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:.9rem}.back-link.svelte-9amksf a:where(.svelte-9amksf):hover{color:var(--color-primary)}.callback-container.svelte-1g9ud7n{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:var(--space-md)}.spinner.svelte-1g9ud7n{width:40px;height:40px;border:3px solid var(--color-bg-elevated);border-top-color:var(--color-primary);border-radius:50%;animation:svelte-1g9ud7n-spin 1s linear infinite}@keyframes svelte-1g9ud7n-spin{to{transform:rotate(360deg)}}p.svelte-1g9ud7n{color:var(--color-text-secondary);font-size:1.1rem}
