@layer base,systems,components,pages;@layer base{:root{--color-brand: #10b89f;--color-brand-dark: #0b9a85;--color-bg-dark: #071415;--color-bg-elevated: #0b2223;--color-text: #fff;--color-text-muted: #e8f0ee;--color-heading: var(--color-text);--color-danger: #ff6b6b;--alpha-10: rgb(255 255 255 / 10%);--alpha-30: rgb(255 255 255 / 30%);--alpha-70: rgb(255 255 255 / 70%);--alpha-90: rgb(255 255 255 / 90%);--overlay-soft: rgb(0 0 0 / 30%);--overlay-strong: rgb(0 0 0 / 70%);--alpha-25: rgb(255 255 255 / 25%);--overlay-8: rgb(0 0 0 / 8%);--text-xs: .75rem;--text-sm: .85rem;--text-base: 1rem;--text-lg: 1.2rem;--text-xl: 1.5rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: .75rem;--space-lg: 1rem;--space-xl: 1.5rem;--radius-xs: 4px;--radius-sm: 8px;--radius: 16px;--radius-lg: 24px;--radius-round: 50%;--color-accent: #ffd578;--color-accent-warm: #ffd6a0;--color-accent-soft: #ffb8c0;--color-surface-1: #0b2223;--color-surface-2: #123133;--color-surface-3: #184244;--color-surface-paper: #f6f0e7;--color-text-on-paper: #1b120b;--glass-bg: rgb(10 47 49 / 70%);--glass-border: rgb(255 255 255 / 10%);--glass-shadow: 0 8px 32px rgb(0 0 0 / 30%);--surface-border-rim: rgb(255 255 255 / 7%);--color-success: #10b89f;--color-warning: #ffb84d;--color-info: #4a9eff;--color-link: var(--color-brand);--border: var(--alpha-10);--card-border: var(--alpha-10);--shadow-soft: 0 2px 8px var(--overlay-soft);--shadow-strong: 0 4px 12px var(--overlay-strong);--gradient: linear-gradient(135deg, var(--color-bg-elevated), var(--color-bg-dark));--gradient-elevated: linear-gradient(145deg, var(--color-bg-elevated), var(--color-bg-dark));--tool-gradient-start: var(--color-bg-elevated);--tool-gradient-end: var(--color-bg-dark);--tool-gradient-end-brighter: #004044;--badge-border-success: var(--color-brand);--badge-border-info: var(--alpha-30);--badge-border-warning: var(--color-danger);--badge-border-special: var(--color-danger);--chip-primary-bg: rgb(16 184 159 / 12%);--chip-primary-border: rgb(16 184 159 / 40%);--chip-primary-text: var(--color-brand);--chip-accent-bg: rgb(255 215 0 / 12%);--chip-accent-border: rgb(255 215 0 / 40%);--chip-accent-text: var(--color-accent);--chip-neutral-bg: rgb(232 240 238 / 16%);--chip-neutral-border: rgb(232 240 238 / 40%);--chip-neutral-text: var(--color-text-muted);--aquarium-teal-900: #065f56;--aquarium-teal-800: #0f766e;--aquarium-teal-700: #0d9488;--aquarium-teal-600: #0891b2;--aquarium-teal-500: #14b8a6;--aquarium-teal-500-alpha-30: rgb(20 184 166 / 30%);--aquarium-teal-500-alpha-90: rgb(20 184 166 / 90%);--aquarium-teal-depth-alpha-40: rgb(15 118 110 / 40%);--aquarium-teal-depth-alpha-80: rgb(15 118 110 / 80%);--aquarium-glow: #4cedd4;--aquarium-glow-alpha-20: rgb(76 237 212 / 20%);--aquarium-glow-alpha-30: rgb(76 237 212 / 30%);--aquarium-glow-alpha-40: rgb(76 237 212 / 40%);--aquarium-glow-alpha-50: rgb(76 237 212 / 50%);--aquarium-glow-alpha-60: rgb(76 237 212 / 60%);--aquarium-glow-alpha-70: rgb(76 237 212 / 70%);--aquarium-glow-alpha-80: rgb(76 237 212 / 80%);--aquarium-depth: #095c53;--aquarium-depth-alpha-30: rgb(9 92 83 / 30%);--aquarium-depth-alpha-35: rgb(9 92 83 / 35%);--aquarium-depth-alpha-40: rgb(9 92 83 / 40%);--aquarium-bubble: #c8e6ff;--aquarium-bubble-alpha-30: rgb(200 230 255 / 30%);--aquarium-bubble-alpha-60: rgb(200 230 255 / 60%);--aquarium-wave-blue: #2196f3;--aquarium-wave-blue-alpha-40: rgb(33 150 243 / 40%);--aquarium-sparkle-blue: #29b6f6;--aquarium-sparkle-blue-alpha-30: rgb(41 182 246 / 30%);--aquarium-blue-700: #1976d2;--duel-right-bronze: #cd7f32;--duel-right-copper: #b87333;--duel-right: var(--duel-right-bronze);--aquarium-blue-600: #1565c0;--aquarium-amber: #ffc107;--aquarium-amber-alpha-50: rgb(255 193 7 / 50%);--aquarium-amber-alpha-60: rgb(255 193 7 / 60%);--aquarium-amber-alpha-80: rgb(255 193 7 / 80%);--aquarium-sunbeam: #ffeb3b;--aquarium-sunbeam-alpha-60: rgb(255 235 59 / 60%);--aquarium-orange-600: #f57c00;--aquarium-orange-500: #ff9800;--aquarium-sand-100: #dbac72;--aquarium-sand-200: #d4a574;--aquarium-sand-300: #c19a5f;--aquarium-sand-400: #b8935a;--aquarium-sand-500: #a68650;--aquarium-sand-600: #8f7542;--aquarium-sand-700: #6b5a42;--aquarium-sand-800: #5d4e35;--aquarium-sand-900: #4a3d2a;--retro-overlay: rgb(20 30 40 / 95%);--retro-surface-dark: #1c1c1c;--retro-surface-mid: #3a3a3a;--retro-panel-dark: #2a2a2a;--retro-panel-outline: #111;--retro-border-deep: #1a1a1a;--retro-border-muted: #444;--retro-border-soft: #666;--retro-metallic: #d8c8b0;--retro-wave-active: rgb(0 20 15 / 80%);--retro-neon-glow-30: rgb(0 255 229 / 30%);--retro-neon-glow-60: rgb(0 255 229 / 60%);--retro-steel-highlight: rgb(60 60 60 / 20%);--retro-cream-glow-40: rgb(240 230 210 / 40%);--retro-cream-glow-50: rgb(240 230 210 / 50%);--retro-cream-soft: #fff5cc;--retro-dial-highlight: #fff3d6;--retro-panel-border-contrast: #151515;--retro-panel-border-soft: #a09080;--retro-panel-edge: #876a4a;--retro-panel-border: #a08060;--retro-panel-border-light: #c0a080;--retro-panel-surface: #f3d9b9;--retro-panel-surface-shadow: #e1cba8;--retro-panel-text: #111;--retro-warm-glow-40: rgb(255 200 170 / 40%);--retro-alert-soft: #fdc;--retro-alert-warm: #fca;--retro-alert-border: #c64;--retro-alert-text: #621;--retro-alert-highlight: #d75;--retro-mint-base: #0bd1be;--retro-mint-deep: #068479;--retro-mint-shadow: #034d46;--retro-mint-mid: #50b0a0;--retro-mint-soft: #a0f0e0;--retro-mint-highlight: #adffc0;--retro-foam-glow: #e0fffa;--retro-teal-dim-alpha-30: rgb(68 91 91 / 30%);--retro-timer-cyan-bright: #0ac;--retro-timer-cyan-mid: #009bb0;--retro-timer-teal-soft: #07988d;--retro-timer-teal-deep: #066b60;--retro-timer-teal-shadow: #055852;--retro-timer-mint-bright: #0a7f70;--retro-timer-mint-mid: #065550;--retro-timer-mint-deep: #043835;--retro-timer-mint-active: #066558;--retro-timer-mint-dark: #043b35;--retro-timer-mint-night: #022520;--retro-timer-aqua-glow: #087268;--retro-timer-aqua-shadow: #054540;--retro-timer-deep-sea: #032d28;--start-button-bg-1: #087268;--start-button-bg-2: #054540;--start-button-bg-3: #032d28;--start-button-hover-1: #0a7f70;--start-button-hover-2: #065550;--start-button-hover-3: #043835;--start-button-active-1: #066558;--start-button-active-2: #043b35;--start-button-active-3: #022520}.btn{padding:.5rem 1.5rem;border-radius:var(--radius);cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,transform .12s ease;font-weight:500;text-align:center;text-decoration:none;display:inline-block;font-size:.9rem;background:var(--color-bg-elevated);border:1px solid var(--alpha-10);box-shadow:var(--shadow-soft);color:var(--color-text-muted)}.btn:hover{filter:brightness(1.03);box-shadow:0 4px 12px var(--overlay-soft);transform:translateY(-1px)}.btn--secondary{background:transparent;border:1px solid var(--alpha-30);opacity:.8;box-shadow:none}.btn--secondary:hover{background:var(--alpha-10);border-color:var(--alpha-30);opacity:1;filter:none;transform:none;box-shadow:none}.btn--danger{background:transparent;border:1px solid var(--alpha-30);opacity:.7;box-shadow:none}.btn--danger:hover{background:var(--alpha-10);border-color:var(--color-danger);color:var(--color-danger);opacity:1;filter:none;transform:none}.btn--small{padding:6px 12px;font-size:.8rem}.btn--large{padding:12px 24px;font-size:1rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;filter:none!important}.btn--full{width:100%}.btn--brand{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.btn--brand:hover{background:var(--color-brand-dark);border-color:var(--color-brand-dark)}.btn--gradient{background:var(--tool-gradient-start);border-color:var(--alpha-10)}.btn--gradient:hover{background:var(--tool-gradient-end);border-color:var(--color-brand)}.btn--aquarium{background:linear-gradient(135deg,var(--aquarium-teal-500) 0%,var(--aquarium-teal-600) 100%);color:#fff;border:none;font-weight:600;letter-spacing:.5px}.btn--aquarium:hover{background:linear-gradient(135deg,var(--aquarium-teal-800) 0%,var(--aquarium-teal-900) 100%);transform:translateY(-2px);box-shadow:0 6px 20px var(--aquarium-teal-depth-alpha-40)}.btn--aquarium.btn--large{padding:18px 40px;font-size:1.2em;border-radius:30px;text-transform:uppercase;letter-spacing:1px}.btn--tool{background:linear-gradient(135deg,var(--aquarium-wave-blue) 0%,var(--aquarium-blue-700) 100%);color:#fff;border:none;font-weight:600}.btn--tool:hover{background:linear-gradient(135deg,var(--aquarium-blue-700) 0%,var(--aquarium-blue-600) 100%);transform:scale(1.1);box-shadow:0 4px 10px var(--aquarium-wave-blue-alpha-40)}.btn--tool.active{background:linear-gradient(135deg,var(--aquarium-amber) 0%,var(--aquarium-orange-500) 100%);box-shadow:0 0 15px var(--aquarium-amber-alpha-60);animation:tool-active-pulse 2s ease-in-out infinite}.btn--tool.active:hover{background:linear-gradient(135deg,var(--aquarium-orange-500) 0%,var(--aquarium-orange-600) 100%)}.btn--round{width:40px;height:40px;padding:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.btn--round.btn--small{width:32px;height:32px;font-size:16px}.btn--animated{animation:button-pulse 2s ease-in-out infinite}.btn--animated:hover{animation:none;transform:scale(1.08)}@keyframes button-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes tool-active-pulse{0%,to{box-shadow:0 0 20px var(--aquarium-amber-alpha-50)}50%{box-shadow:0 0 30px var(--aquarium-amber-alpha-80)}}a{color:var(--color-brand);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-brand-dark);text-decoration:underline}*{margin:0;padding:0;box-sizing:border-box}*:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px;border-radius:var(--radius-xs)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--color-brand);outline-offset:2px}html,body{width:100%;height:100%}body{font-family:Nunito,Arial,sans-serif;background:linear-gradient(135deg,var(--color-bg-dark) 0%,var(--color-bg-dark) 100%);background-attachment:fixed;color:var(--color-text-muted);display:flex;flex-direction:column;min-height:100vh;margin:0}.login-register-links{display:flex;justify-content:center;gap:20px;padding:15px;background-color:var(--alpha-10);border-bottom:1px solid var(--alpha-10)}.login-register-links a{color:var(--color-brand);text-decoration:none;font-weight:700;padding:8px 16px;border-radius:var(--radius);transition:background-color .3s}.login-register-links a:hover{background-color:var(--alpha-10)}.main-content{flex:1 0 auto;display:flex;flex-direction:column;padding-bottom:70px;padding-top:15px;position:relative}@supports (min-height: 100dvh){body{min-height:100dvh}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-surface-1);display:flex;justify-content:space-between;padding:10px 20px;z-index:999;height:60px;border-top:1px solid var(--surface-border-rim);box-shadow:0 -4px 12px var(--overlay-soft)}@supports (padding-bottom: env(safe-area-inset-bottom)){.bottom-nav{padding-bottom:calc(10px + env(safe-area-inset-bottom));height:calc(60px + env(safe-area-inset-bottom))}.main-content{padding-bottom:calc(70px + env(safe-area-inset-bottom))}}.bottom-nav .nav-links{display:flex;justify-content:space-evenly;flex-grow:1;padding:0 10px;max-width:600px;margin:0 auto}.bottom-nav a{color:var(--color-text-muted);text-decoration:none;padding:6px 12px;border-radius:999px;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .12s ease;display:flex;flex-direction:column;align-items:center;gap:4px;width:80px;justify-content:center}@media (width <= 480px){.bottom-nav a{width:60px;padding:6px}}.bottom-nav img{width:28px;height:28px;aspect-ratio:1;object-fit:contain;padding:1px;opacity:.75;transition:opacity .18s ease,transform .12s ease}.icon-bottom-nav{filter:brightness(0) invert(1)}.icon-bottom-nav--primary{transform:translateY(-1px)}.bottom-nav a:hover{background-color:var(--alpha-10);box-shadow:0 2px 8px var(--overlay-soft);color:var(--color-text-muted)}.bottom-nav a.active{background-color:var(--color-brand);color:var(--color-bg-dark);box-shadow:0 3px 10px var(--overlay-soft);transform:translateY(-1px)}.bottom-nav a:hover img{opacity:.9}.bottom-nav a.active img{opacity:1;transform:translateY(-1px)}.profile-icon{font-size:24px;display:flex;justify-content:center;align-items:center}@view-transition{navigation: auto;}::view-transition-group(root){animation-duration:.3s}::view-transition-old(root){animation:fade-out .3s ease-out}::view-transition-new(root){animation:fade-in .3s ease-out}::view-transition-image-pair(root){isolation:isolate;background:linear-gradient(135deg,var(--color-bg-dark) 0%,var(--color-bg-dark) 100%)}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}.nav-link-aquarium{position:relative;overflow:hidden}.nav-link-aquarium .beta-badge{position:absolute;top:5px;left:-20px;background-color:var(--color-danger);color:#fff;font-size:9px;font-weight:700;padding:2px 24px;text-transform:uppercase;transform:rotate(-45deg);box-shadow:var(--shadow-soft);z-index:10;pointer-events:none}}@layer systems{.form{width:100%}.form--compact{max-width:400px}.form--standard{max-width:600px}.form-field{margin-bottom:20px;text-align:left}.form-field--inline{display:flex;align-items:center;gap:var(--space-md)}.form-field--compact{margin-bottom:12px}.form-field__label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text-muted);font-size:var(--text-sm)}.form-field__label--required:after{content:" *";color:var(--color-brand)}.form-field__input,.form-field__textarea,.form-field__select{width:100%;padding:var(--space-md) var(--space-lg);border:1px solid var(--alpha-10);border-radius:var(--radius);background-color:var(--color-bg-elevated);color:var(--color-text-muted);font-size:var(--text-base);transition:all .2s ease;font-family:inherit}.form-field__input:focus,.form-field__textarea:focus,.form-field__select:focus{outline:none;border-color:var(--color-brand);background-color:var(--alpha-10);box-shadow:0 0 0 2px var(--alpha-10)}.form-field__input:disabled,.form-field__textarea:disabled,.form-field__select:disabled{opacity:.5;cursor:not-allowed}.form-field__input::placeholder,.form-field__textarea::placeholder{color:var(--alpha-30)}.form-field__textarea{resize:vertical;min-height:100px}.form-field__select{padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23ffffff' fill-opacity='0.6' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-field__input--compact{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm)}.form-field__input--large{padding:var(--space-lg) var(--space-xl);font-size:var(--text-lg)}.form-field__checkbox,.form-field__radio{position:relative;display:inline-flex;align-items:center;cursor:pointer}.form-field__checkbox input,.form-field__radio input{width:20px;height:20px;margin-right:8px;accent-color:var(--color-brand);cursor:pointer}.form-actions{display:flex;gap:var(--space-md);margin-top:24px;justify-content:flex-end}.form-actions--with-divider{border-top:1px solid var(--alpha-10);padding-top:1rem}.form-actions--center{justify-content:center}.form-actions--spread{justify-content:space-between}.form-field__error{color:var(--color-danger);font-size:var(--text-sm);margin-top:4px}.form-field__hint{color:var(--alpha-70);font-size:var(--text-sm);margin-top:4px}.form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--alpha-10)}.form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.form-section__title{font-size:var(--text-lg);font-weight:600;color:var(--color-text-muted);margin-bottom:16px}.form--inline{display:flex;gap:var(--space-md);align-items:flex-end}.form--inline .form-field{flex:1;margin-bottom:0}.form--inline .btn{flex-shrink:0}.radio-group{display:flex;flex-direction:column;gap:var(--space-md)}.radio-option{padding:var(--space-md);border:1px solid var(--alpha-10);border-radius:var(--radius);transition:all .2s ease}.radio-option:has(input:checked){background-color:var(--alpha-10);border-color:var(--color-brand)}@media (width <= 480px){.form-actions{flex-direction:column}.form-actions button,.form-actions a{width:100%}.form--inline{flex-direction:column;align-items:stretch}.form--inline .form-field{margin-bottom:12px}}}@layer components{.modal,.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--overlay-strong, var(--overlay-strong));z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--modal-bg, var(--glass-bg));backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border-radius:var(--modal-radius, var(--radius));padding:0;width:90%;max-width:400px;box-shadow:var(--modal-shadow, var(--glass-shadow));border:1px solid var(--glass-border)}.modal-header{padding:20px 24px 16px;border-bottom:1px solid var(--alpha-10);display:flex;justify-content:space-between;align-items:center}.modal-header h3{color:var(--color-text-muted);margin:0;font-size:1.2rem;font-weight:600}.modal-close{background:none;border:none;color:var(--alpha-70);font-size:24px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{color:var(--color-text-muted);background:var(--alpha-10)}.modal-body{padding:20px 24px}.modal-actions{padding:16px 24px 24px;display:flex;gap:12px;justify-content:flex-end}@media (width <= 768px){.modal-header{padding:16px 20px 12px}.modal-body{padding:16px 20px}.modal-actions{padding:12px 20px 20px}}}@layer components{.card-inner{padding:var(--space-md) var(--space-lg);display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);position:relative}.card-inner--compact{padding:var(--space-sm) var(--space-md);gap:var(--space-md)}.card-inner--column{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-sm)}.card-inner--center{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-sm)}.card-inner--spacious{padding:var(--space-lg) var(--space-xl);gap:var(--space-xl)}.card-content{flex:1;display:flex;flex-direction:column;gap:var(--space-sm);min-width:0}.card-header{display:flex;flex-direction:column;gap:var(--space-xs);text-align:left}.card-actions{display:flex;gap:var(--space-sm);flex-shrink:0;align-items:center}.card-actions--column{flex-direction:column}.card-meta{display:flex;gap:var(--space-md);font-size:var(--text-sm);color:var(--alpha-70);align-items:center}.card-meta--column{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.card-inner--interactive{cursor:pointer;transition:all .2s ease}.card-inner--interactive:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--overlay-strong)}.card-inner--completed{border-color:var(--color-brand);box-shadow:0 0 10px var(--alpha-30)}.card-inner--in-progress{border-left:3px solid var(--color-brand);padding-left:calc(var(--space-lg) - 3px)}.card-title{font-size:var(--text-lg);font-weight:500;color:var(--color-text);margin:0;line-height:1.2}.card-title--large{font-size:var(--text-xl);font-weight:600}.card-title--small{font-size:var(--text-base);font-weight:500}.card-subtitle{font-size:var(--text-sm);color:var(--color-text-muted);margin:0;line-height:1.4}.card-description{color:var(--alpha-70);font-size:var(--text-sm);line-height:1.5;margin:0}@media (width <= 480px){.card-inner{padding:var(--space-sm) var(--space-md);gap:var(--space-md)}.card-inner--compact{padding:var(--space-xs) var(--space-sm);gap:var(--space-sm)}.card-inner--spacious{padding:var(--space-md) var(--space-lg);gap:var(--space-lg)}.card-actions{gap:var(--space-xs);flex-wrap:wrap}.card-meta{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.card-title--large{font-size:var(--text-lg)}}.competition-name{font-size:24px;font-weight:500;color:var(--color-text);margin:0 0 2px!important;padding:0;line-height:1}.competition-band{font-size:13px;font-weight:400;color:var(--color-text-muted);margin:0;line-height:1}.practice-title{font-size:var(--text-xl);font-weight:500;color:var(--color-text);margin:0;line-height:1;text-align:left}.progress-indicator{margin:0}.progress-text{font-size:13px;color:var(--color-text-muted);margin-bottom:3px;display:block;font-weight:400}.progress-indicator.ongoing .progress-text{color:var(--color-text-muted);font-weight:500}.date-range-full{display:flex;align-items:center;justify-content:space-between;margin-top:4px;margin-bottom:8px;font-size:12px;color:var(--color-text-muted)}.date-range-full.ongoing{color:var(--color-text-muted)}.badges-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-bottom:0}.practice-datetime{display:flex;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-text-muted);align-items:center}.practice-date{color:var(--color-text-muted);font-weight:500;display:flex;align-items:center;gap:var(--space-xs)}.practice-time{color:var(--color-text-muted);font-weight:500;padding:2px 8px;background:var(--alpha-10);border-radius:6px}.practice-badges{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.practice-progress{position:relative;width:60px;height:60px;flex-shrink:0;background:var(--overlay-soft);border-radius:50%;padding:4px}.practice-progress-svg{width:100%;height:100%;transform:rotate(-90deg)}.practice-progress-bg{fill:none;stroke:var(--overlay-strong);stroke-width:4}.practice-progress-fill{fill:none;stroke:url(#practice-progress-gradient);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .3s ease}.practice-progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--text-xs);font-weight:500;color:var(--color-text-muted);text-align:center;line-height:1.2}.practice-progress-gradient,.practice-progress-gradient-end{stop-color:var(--color-brand)}@media (width <= 480px){.practice-badges{gap:var(--space-xs)}.practice-badge{font-size:var(--text-xs);padding:var(--space-xs) var(--space-xs)}.practice-progress{width:50px;height:50px}.practice-progress-text{font-size:var(--text-xs)}}}@layer components{.practice-widget{position:fixed;top:160px;left:50%;transform:translate(-50%);width:90%;max-width:320px;height:280px;margin:0;padding:16px;background:linear-gradient(145deg,var(--tool-gradient-start),var(--tool-gradient-end-brighter));border-radius:var(--radius);box-shadow:0 2px 8px var(--overlay-soft);border:1px solid var(--alpha-10);color:var(--color-text-muted);display:flex;flex-direction:column;box-sizing:border-box;z-index:100}.practice-widget--compact{max-width:280px;height:240px;padding:12px}.practice-widget--large{max-width:400px;height:320px;padding:20px}.practice-widget--full-height{height:auto;max-height:70vh;min-height:280px}.practice-widget--lower{top:200px}.practice-widget--higher{top:120px}.practice-widget--side-panel{position:fixed;inset:20px auto 20px 20px;width:400px;max-width:calc(100vw - 40px);height:auto;transform:none;z-index:1000}.fixed-header{position:fixed;top:0;left:0;right:0;z-index:998}.fixed-header--with-offset{top:45px}.fixed-footer{position:fixed;bottom:0;left:0;right:0;z-index:50}.fixed-footer--with-padding{bottom:60px}.fixed-bottom-widget{position:fixed;bottom:90px;left:50%;transform:translate(-50%);z-index:95}.fixed-bottom-widget--higher{bottom:100px}.fixed-top-widget{position:fixed;top:75px;left:50%;transform:translate(-50%);z-index:98}.widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--alpha-10);flex-shrink:0}.widget-header h3{color:var(--color-text-muted);margin:0;font-size:1rem;font-weight:500}.widget-close-btn{background:none;border:none;color:var(--alpha-70);font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.widget-close-btn:hover{color:var(--color-text-muted);background:var(--alpha-10)}.widget-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.widget-content--scrollable{overflow-y:auto}.widget-footer{margin-top:auto;padding-top:12px;border-top:1px solid var(--alpha-10);flex-shrink:0}@media (width <= 768px){.practice-widget--side-panel{top:100px;left:10px;right:10px;width:auto;padding:12px}.practice-widget{max-width:280px;padding:12px}.practice-widget--large{max-width:300px;height:300px;padding:16px}}@media (width <= 480px){.practice-widget{max-width:260px;height:260px;padding:10px}.widget-header{margin-bottom:8px;padding-bottom:6px}.fixed-bottom-widget{bottom:85px}}.z-modal{z-index:1000}.z-overlay{z-index:999}.z-header{z-index:998}.z-widget-high{z-index:100}.z-widget{z-index:98}.z-background{z-index:10}.z-footer{z-index:50}}@layer components;@layer components{.practice-stats-wrapper{margin-top:1rem}.practice-stats-compact{display:flex;gap:.75rem;justify-content:center;align-items:center;opacity:0;animation:fadeIn .5s ease-out forwards;animation-delay:.3s}.stat-badge{display:inline-flex;align-items:center;gap:.25rem;background:var(--alpha-10);border:1px solid var(--alpha-10);border-radius:20px;padding:.25rem .5rem;font-size:.85rem;transition:all .3s ease;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none}.stat-badge.expandable{cursor:pointer}.stat-badge:hover{background:var(--alpha-10);transform:translateY(-1px)}.stat-icon{font-size:.9rem;opacity:.9;transition:transform .3s ease}.stat-value{font-weight:600;color:var(--color-text);font-size:.85rem;transition:all .3s ease}.stat-expanded{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.25rem;opacity:0;visibility:hidden;transition:all .3s ease;white-space:nowrap;pointer-events:none}.expanded-label{font-size:.75rem;color:var(--alpha-70);text-transform:lowercase}.stat-badge.expanded{background:var(--alpha-10);padding:.5rem .75rem;transform:scale(1.1)}.stat-badge.expanded .stat-icon{transform:scale(1.1)}.stat-badge.expanded .stat-expanded{opacity:1;visibility:visible}.stat-badge[data-stat=streak] .stat-value{color:var(--color-danger)}.stat-badge.last-practice .stat-value{color:var(--color-brand);font-size:.8rem}.stat-badge[data-stat=weekly] .stat-value,.stat-badge[data-stat=weekly-time] .stat-value{color:var(--color-brand)}.stat-badge[data-stat=competitions] .stat-value{color:var(--color-danger)}.stat-badge[data-stat=fish] .stat-value{color:var(--color-brand)}.stat-badge.pending-fish-glow{background:var(--aquarium-glow-alpha-15);border:1px solid var(--aquarium-glow-alpha-40);animation:pendingFishGlow 2s ease-in-out infinite;box-shadow:0 0 15px var(--aquarium-glow-alpha-30)}.stat-badge.pending-fish-glow:hover{background:var(--aquarium-glow-alpha-25);box-shadow:0 0 20px var(--aquarium-glow-alpha-50)}.stat-badge.pending-fish-glow .stat-icon{filter:drop-shadow(0 0 8px var(--aquarium-glow-alpha-60))}.stat-badge.pending-fish-glow .stat-value{color:var(--color-brand);text-shadow:0 0 10px var(--aquarium-glow-alpha-80);font-weight:700}@keyframes pendingFishGlow{0%,to{box-shadow:0 0 15px var(--aquarium-glow-alpha-30);background:var(--aquarium-glow-alpha-15)}50%{box-shadow:0 0 25px var(--aquarium-glow-alpha-60);background:var(--aquarium-glow-alpha-25)}}.stat-badge[data-stat=streak][data-value="0"]{opacity:.6}.stat-badge[data-stat=streak][data-value="0"] .stat-icon{filter:grayscale(100%)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05);background:var(--alpha-10)}}.stat-expanded.competitions-list{position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--overlay-strong);border:1px solid var(--alpha-30);border-radius:8px;padding:.5rem;margin-top:.5rem;min-width:200px;max-width:300px}.competition-item{margin:.25rem 0}.competition-link{display:flex;justify-content:space-between;align-items:center;color:var(--alpha-90);text-decoration:none;padding:.25rem .5rem;border-radius:4px;transition:background .2s ease}.competition-link:hover{background:var(--alpha-10);color:var(--color-text)}.comp-name{font-size:.85rem;font-weight:500;margin-right:.5rem;color:var(--alpha-90)}.comp-days{font-size:.75rem;color:var(--alpha-70);white-space:nowrap}@media (width <= 640px){.practice-stats-compact{gap:.5rem}.stat-badge{padding:.2rem .4rem;font-size:.8rem}.stat-icon{font-size:.85rem}.stat-value{font-size:.8rem}.stat-badge.expanded{padding:.4rem .6rem}}}@layer components{.milestone-ambient{margin-top:1.2rem;text-align:center;font-size:.85rem;color:var(--alpha-70);line-height:1.6;position:relative}.milestone-next{margin-bottom:.4rem;display:flex;justify-content:center;align-items:baseline;gap:.5rem;font-weight:400}.milestone-next.clickable{cursor:pointer;transition:opacity .2s ease}.milestone-next.clickable:hover{opacity:.8}.milestone-label{color:var(--alpha-30);font-size:.8rem}.milestone-name{color:var(--alpha-90);font-weight:400}.milestone-time{color:var(--alpha-70);font-size:.8rem}.milestone-completed-line{display:flex;justify-content:center;gap:1rem;opacity:.4;font-size:.75rem;font-weight:400}.milestone-done{color:var(--alpha-70)}.milestone-achieved .milestone-next{animation:gentleGlow 1s ease-out}@keyframes gentleGlow{0%{opacity:1}50%{opacity:.6;color:var(--color-brand)}to{opacity:1}}.milestone-details-expanded{position:absolute;top:100%;left:0;right:0;opacity:0;transition:opacity .3s ease-out;text-align:center;font-size:.75rem;line-height:1.4;padding:.6rem 0;color:var(--alpha-70);pointer-events:none}.milestone-details-expanded.expanded{opacity:1;pointer-events:auto}.mini-ladder-component{margin-top:.8rem;text-align:center;font-size:.85rem;color:var(--alpha-70);line-height:1.3;position:relative;text-decoration:none;display:block;transition:opacity .2s ease}.mini-ladder-component:hover{opacity:.8;text-decoration:none;color:var(--alpha-70)}.ladder-theme-line{margin-bottom:.25rem;display:flex;justify-content:center;align-items:baseline;gap:.2rem;font-weight:400;color:var(--alpha-70);font-size:.8rem}.ladder-icon{font-size:.75rem}.ladder-theme-text{color:var(--alpha-70)}.ladder-leaderboard-entries{display:flex;flex-direction:column;gap:.1rem;font-size:.75rem;font-weight:400}.ladder-entry{display:flex;align-items:center;gap:.4rem;opacity:.4;color:var(--alpha-70);padding:.05rem 0}.ladder-entry.current-user{opacity:1;color:var(--color-brand)}.ladder-entry.user-outside-top3{margin-top:.1rem;opacity:.6}.ladder-rank{min-width:1rem;text-align:right;font-weight:400}.ladder-username{flex:1;text-align:left}.ladder-value{text-align:right;font-weight:400;min-width:2rem}.ladder-dots{opacity:.3;margin-right:.2rem}@media (width <= 640px){.milestone-ambient{font-size:.8rem}.milestone-label,.milestone-time{font-size:.75rem}.milestone-completed-line{font-size:.7rem;gap:.8rem}.mini-ladder-component{font-size:.9rem}.ladder-leaderboard-entries{font-size:.8rem;gap:.15rem}.ladder-rank{min-width:1rem}.ladder-value{min-width:2rem}.milestone-modal-content{padding:1rem;width:95%;max-height:70vh}.milestone-modal h3{font-size:1rem}.milestone-description,.milestone-current-details{font-size:.75rem}}}@layer components{h1{font-size:var(--text-xl);font-weight:600;color:var(--color-heading);line-height:1.25;margin-bottom:1.25rem}h2{font-size:var(--text-lg);font-weight:600;color:var(--color-heading);line-height:1.25;margin-bottom:1rem}h3{font-size:var(--text-base);font-weight:500;color:var(--color-heading);line-height:1.25;margin-bottom:.75rem}.text-small{font-size:var(--text-sm)}.text-muted{color:var(--alpha-70)}.text-center{text-align:center}.container{width:100%;max-width:var(--container-width, 800px);margin:0 auto;padding:var(--container-padding, 2rem);box-sizing:border-box}.container--xs{--container-width: 400px}.container--sm{--container-width: 500px}.container--md{--container-width: 600px}.container--lg{--container-width: 800px}.container--centered{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh}.primary-container{width:100%;max-width:800px;margin:0 auto;padding:var(--space-xl);background:var(--color-surface-1);border:1px solid var(--surface-border-rim);border-radius:var(--radius);box-shadow:0 2px 8px var(--overlay-soft);box-sizing:border-box}@media (width <= 768px){.container{--container-padding: 1rem}}@media (width <= 480px){.container{--container-padding: .75rem}}.primary-card{background:var(--color-surface-1);border:1px solid var(--surface-border-rim);border-radius:var(--radius);padding:var(--space-lg);box-shadow:0 2px 8px var(--overlay-soft);transition:all .2s ease;position:relative;width:100%;max-width:420px;min-width:320px;margin:3rem auto;color:var(--color-text-muted)}.primary-card:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;z-index:-1;border-radius:calc(var(--radius) + 2px);background:linear-gradient(135deg,var(--color-brand) 0%,transparent 70%);opacity:.4}.container.primary-card:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;z-index:-1;border-radius:calc(var(--radius) + 2px);background:linear-gradient(135deg,var(--color-brand) 0%,transparent 70%);opacity:.4}@media (width <= 480px){.primary-card{width:100%;min-width:280px;margin:2rem auto}}.fab,.add-button,.floating-action-btn{position:fixed!important;bottom:var(--fab-bottom, 90px)!important;right:var(--fab-right, 30px)!important;width:56px;height:56px;background:var(--fab-background, var(--color-bg-elevated));border-radius:50%;box-shadow:0 4px 12px var(--overlay-soft);display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);text-decoration:none;font-size:24px;transition:all .3s ease;cursor:pointer;border:none;z-index:100}.fab:hover,.add-button:hover,.floating-action-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--overlay-soft);background:var(--fab-background-hover, var(--color-bg-elevated))}.fab:active,.add-button:active,.floating-action-btn:active{transform:translateY(0);box-shadow:0 2px 8px var(--overlay-soft)}.progress{width:100%;height:var(--progress-height, 8px);background:var(--progress-bg, var(--alpha-10));border-radius:var(--progress-radius, 4px);overflow:hidden;position:relative}.progress__fill{height:100%;background:var(--progress-fill, var(--color-brand));border-radius:inherit;transition:width .3s ease}.progress-text{font-size:.85rem;color:var(--alpha-70);font-weight:400}.card{background:var(--color-surface-1);border:1px solid var(--surface-border-rim);border-radius:var(--radius);box-shadow:var(--shadow-soft);transition:all .2s ease;position:relative;overflow:hidden}.card--interactive:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--overlay-soft)}.card--glass{background:var(--glass-bg);backdrop-filter:blur(10px) saturate(180%);-webkit-backdrop-filter:blur(10px) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.card--glass.card--interactive:hover{box-shadow:0 12px 40px var(--overlay-strong)}.surface-card{background-color:var(--color-surface-1);border-radius:var(--radius);border:1px solid var(--surface-border-rim);box-shadow:var(--shadow-soft)}.surface-card--floating{background-color:var(--color-surface-2);box-shadow:var(--shadow-strong)}.surface-card--condensed{border-radius:var(--radius-sm);box-shadow:var(--shadow-soft)}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:12px;font-size:13px;font-weight:600;transition:all .2s ease;background:transparent;border:1px solid var(--badge-border, var(--alpha-30));color:var(--badge-color, var(--color-text-muted))}.badge--success{--badge-border: var(--badge-border-success);--badge-color: var(--color-brand)}.badge--info{--badge-border: var(--badge-border-info);--badge-color: var(--color-brand)}.badge--warning{--badge-border: var(--badge-border-warning);--badge-color: var(--color-danger)}.badge--danger{--badge-border: var(--color-danger);--badge-color: var(--color-danger)}.badge--default{--badge-border: var(--alpha-30);--badge-color: var(--color-text-muted)}.badge--accent{--badge-border: var(--color-brand);--badge-color: var(--color-brand)}.competitions-list{display:flex;flex-direction:column;gap:1rem}.detail-with-icon{display:flex;align-items:center;gap:8px}.icon-circle{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-dark)}.start-icon{color:var(--color-brand)}.end-icon{color:var(--alpha-90)}.users-icon{color:var(--color-brand)}.icon{font-size:14px;line-height:1}.detail-text{font-size:14px;color:var(--color-text-muted);line-height:1.4}.empty-state{text-align:center;padding:40px 20px;color:var(--alpha-70)}.empty-state__icon{font-size:2.5rem;margin-bottom:16px;opacity:.5}.empty-state__text{font-size:1.125rem;margin-bottom:24px}.empty-state__action{margin-top:24px}.alert{padding:1rem;margin-bottom:1rem;border-radius:var(--radius);border:1px solid transparent;font-size:var(--text-sm);line-height:1.5}.alert--error{background:var(--alpha-10);border-color:var(--color-danger);color:var(--color-danger)}.alert--success{background:var(--alpha-10);border-color:var(--color-brand);color:var(--color-brand)}.alert--warning{background:var(--alpha-10);border-color:var(--color-danger);color:var(--color-danger)}.alert--info{background:var(--alpha-10);border-color:var(--color-brand);color:var(--color-text-muted)}.info-box{background:var(--alpha-10);border:1px solid var(--alpha-30);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem}.info-box__title{font-size:var(--text-lg);font-weight:600;margin:0 0 1rem;color:var(--color-brand)}.info-box__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.info-box__list-item{position:relative;padding-left:24px;color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.5}.info-box__list-item:before{content:"✓";position:absolute;left:0;color:var(--color-brand);font-weight:600}.info-box--success{background:var(--alpha-10);border-color:var(--color-brand)}.info-box--warning{background:var(--alpha-10);border-color:var(--color-danger)}.list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.list-item{display:flex;align-items:center;justify-content:space-between;padding:10px;border:1px solid var(--alpha-10);border-radius:var(--radius-sm);background:var(--overlay-soft);transition:all .2s ease}.list-item:hover{border-color:var(--alpha-30);background:var(--color-bg-dark)}.list-item__content{flex:1;display:flex;flex-direction:column;gap:4px}.list-item__title{color:var(--color-text-muted);font-weight:500}.list-item__subtitle{font-size:var(--text-sm);color:var(--alpha-70)}.list-item__actions{display:flex;gap:8px;align-items:center}.action-list{display:flex;flex-direction:column;gap:4px}.action-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:var(--radius-sm);transition:background-color .18s ease,transform .12s ease,box-shadow .18s ease;text-decoration:none;color:inherit}.action-row--clickable{cursor:pointer}.action-row--clickable:hover{background-color:var(--color-surface-2);box-shadow:0 6px 18px var(--overlay-soft);transform:translateY(-1px)}.action-row__leading{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:999px;background-color:var(--alpha-10);font-size:1.1rem;color:var(--color-accent)}.action-row__content{flex:1;min-width:0;padding:0 10px;display:flex;flex-direction:column;gap:2px}.action-row__title{font-size:.95rem;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-row__subtitle{font-size:.78rem;color:var(--alpha-70);text-transform:uppercase;letter-spacing:.08em}.action-row__meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.action-row__trailing{flex-shrink:0;display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--alpha-70)}.action-row__chevron{font-size:1.1rem}@media (width <= 480px){.action-row{padding:10px}.action-row__leading{width:28px;height:28px;font-size:1rem}}.segmented-control{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:var(--alpha-10);border:1px solid var(--alpha-10);box-shadow:0 2px 8px var(--overlay-soft)}.segmented-control__button{border:none;background:transparent;padding:.45rem .8rem;border-radius:999px;font-size:.8rem;font-weight:500;color:var(--alpha-70);cursor:pointer;display:inline-flex;align-items:center;gap:4px;min-width:0;white-space:nowrap;transition:background-color .18s ease,color .18s ease,transform .12s ease}.segmented-control__button:hover{background-color:var(--alpha-10);color:var(--color-text-muted)}.segmented-control__button--active{background-color:var(--color-brand);color:var(--color-bg-dark);font-weight:600}.segmented-control__button-icon{font-size:.9rem}.data-chip{display:inline-flex;align-items:center;justify-content:center;padding:2px 9px;border-radius:999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;border:1px solid transparent;white-space:nowrap}.data-chip--primary{background-color:var(--chip-primary-bg);border-color:var(--chip-primary-border);color:var(--chip-primary-text)}.data-chip--accent{background-color:var(--chip-accent-bg);border-color:var(--chip-accent-border);color:var(--chip-accent-text)}.data-chip--neutral{background-color:var(--chip-neutral-bg);border-color:var(--chip-neutral-border);color:var(--chip-neutral-text)}.data-chip--danger{background-color:var(--alpha-10);border-color:var(--color-danger);color:var(--color-danger)}.list--simple .list-item{border:none;background:transparent;padding:8px 0;border-bottom:1px solid var(--alpha-10);border-radius:0}.list--simple .list-item:hover{background:transparent;border-bottom-color:var(--alpha-10)}.list--simple .list-item:last-child{border-bottom:none}.accordion{display:flex;flex-direction:column;gap:8px}.accordion__item{background:transparent;border-radius:var(--radius-sm);overflow:hidden}.accordion__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px 16px;background:var(--color-bg-dark);border:1px solid var(--alpha-10);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:1rem;font-weight:600;text-align:left;cursor:pointer;transition:all .2s ease;position:relative}.accordion__header:hover{background:var(--color-bg-elevated);border-color:var(--alpha-30)}.accordion__header:focus{outline:2px solid var(--color-brand);outline-offset:2px}.accordion__title{flex:1;font-size:1rem;font-weight:600;color:var(--color-text-muted);text-transform:capitalize}.accordion__meta{font-size:.85rem;color:var(--alpha-70);font-weight:400;margin-right:12px}.accordion__chevron{font-size:18px;font-weight:700;color:var(--alpha-70);transition:transform .25s ease;flex-shrink:0}.accordion__header[aria-expanded=true] .accordion__chevron{transform:rotate(90deg)}.accordion__content{overflow:hidden;transition:max-height .3s ease-out,opacity .2s ease,padding .25s ease;opacity:1;padding-top:8px}.accordion__content--collapsed{max-height:0!important;opacity:0;padding-top:0}.accordion__content:not(.accordion__content--collapsed){overflow:visible}@media (width <= 600px){.accordion__header{padding:10px 12px}.accordion__title{font-size:.95rem}.accordion__meta{font-size:.8rem}}.rating{display:inline-flex;align-items:center;gap:.15rem}.rating--block{display:flex}.rating__option{display:inline-block;cursor:pointer;padding:.1rem;transition:opacity .1s ease;position:relative}.rating__option:hover{opacity:1}.rating__input{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.rating__emoji{font-size:1.2rem;opacity:.35;transition:opacity .15s ease,transform .15s ease;display:inline-block;-webkit-user-select:none;user-select:none}.rating__option:hover .rating__emoji{opacity:.7;transform:translateY(-1px)}.rating__input:checked+.rating__emoji{opacity:1;transform:translateY(-1px)}.rating__input:focus+.rating__emoji{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:4px}.rating--readonly{gap:.25rem;pointer-events:none}.rating--readonly .rating__emoji{opacity:.3;font-size:1.5rem}.rating--readonly .rating__emoji--selected{opacity:1}.rating--small .rating__emoji{font-size:1rem}.rating--large .rating__emoji{font-size:1.5rem}.rating--compact{gap:.1rem}.rating--compact .rating__option{padding:0}.rating--compact .rating__emoji{font-size:1rem}@media (width <= 600px){.rating__emoji{font-size:1.05rem}.rating--large .rating__emoji{font-size:1.3rem}.rating--compact .rating__emoji{font-size:.95rem}}html.no-scroll,body.no-scroll{height:100%;overflow:hidden}[title]{position:relative;cursor:help}.details-card{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:20px;background-color:var(--color-bg-elevated);padding:20px;border-radius:var(--radius-sm);margin:20px 0;box-shadow:0 1px 3px var(--overlay-soft);border:1px solid var(--alpha-10)}.details-column{display:flex;flex-direction:column;gap:12px;flex-basis:48%;text-align:left}.details-column.right{align-items:flex-end;text-align:right}.details-column.right .detail-text{text-align:right}.time-signature-select,#metronome-time-signature,.retro-metronome select,.metronome-container select,.retro-select,.retro-tuner select,.retro-input{color:var(--retro-panel-text)!important;-webkit-text-fill-color:var(--retro-panel-text)!important;-moz-text-fill-color:var(--retro-panel-text)!important}.practices-list{display:flex;flex-direction:column;gap:16px;margin-top:20px}.modern-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:0;border-radius:var(--radius);border:1px solid var(--card-border);box-shadow:var(--shadow-soft);background-color:var(--color-surface-1);color:var(--color-text-muted)}.modern-table thead tr{background-color:var(--color-surface-2);color:var(--color-text-muted);font-weight:500;font-size:.95em}.modern-table th{padding:14px;text-align:left;border-bottom:1px solid var(--card-border);background-color:var(--color-surface-2)}.modern-table td{padding:14px 16px;text-align:left;border-bottom:.5px solid var(--card-border);font-weight:400;font-size:.95em;background-color:var(--color-surface-1)}.modern-table tr{background-color:var(--color-surface-1)}.modern-table tr:nth-child(2n){background-color:var(--color-surface-1)}.modern-table tr:first-child th:first-child{border-top-left-radius:var(--radius)}.modern-table tr:first-child th:last-child{border-top-right-radius:var(--radius)}.modern-table tr:last-child td:first-child{border-bottom-left-radius:var(--radius)}.modern-table tr:last-child td:last-child{border-bottom-right-radius:var(--radius)}.modern-table tbody tr:hover{background-color:var(--alpha-10)!important;transition:background .2s ease-in-out}.modern-table tbody tr:hover td{background-color:transparent!important}}
