:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#000;--color-bg-elevated:#0a0a0a;--color-surface:#111;--color-surface-hover:#1a1a1a;--color-surface-active:#222;--color-border:#ffffff14;--color-border-hover:#ffffff24;--color-border-strong:#ffffff2e;--color-control-border:#ffffff3d;--color-control-border-hover:#ffffff61;--color-text:#ededed;--color-text-strong:#fff;--color-text-muted:#a1a1a1;--color-text-subtle:#707070;--color-primary:#8b5cf6;--color-primary-hover:#a78bfa;--color-primary-active:#7c3aed;--color-primary-soft:#8b5cf61f;--glass-bg:color-mix(in srgb, var(--color-text-strong) 6%, transparent);--glass-bg-hover:color-mix(in srgb, var(--color-text-strong) 10%, transparent);--glass-bg-strong:color-mix(in srgb, var(--color-text-strong) 12%, transparent);--glass-border:var(--color-border);--glass-border-strong:var(--color-border-strong);--glass-blur-light:blur(2px);--glass-blur-md:blur(4px);--glass-blur-strong:blur(8px);--color-on-primary:#fff;--color-inverse-bg:#fff;--color-inverse-text:#0a0a0a;--color-inverse-border:#e4e4e7;--color-ok:#10b981;--color-warning:#f59e0b;--color-ko:#ef4444;--color-ok-soft:#10b9811f;--color-warning-soft:#f59e0b1f;--color-ko-soft:#ef44441f;--focus-ring-width:2px;--focus-ring-offset:2px;--focus-ring-color:#8b5cf699;--focus-halo:0 0 0 4px #8b5cf62e;--shadow-lg:0 16px 40px #0000007a;--control-chevron-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 7 5 5 5-5' fill='none' stroke='%238b5cf6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E");--control-calendar-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Crect x='3' y='4.5' width='14' height='12.5' rx='2' fill='none' stroke='%238b5cf6' stroke-width='1.7'/%3E%3Cpath d='M6.5 2.75v3.5m7-3.5v3.5M3 8.5h14' fill='none' stroke='%238b5cf6' stroke-linecap='round' stroke-width='1.7'/%3E%3C/svg%3E");--control-icon-size:20px;--control-height-sm:28px;--control-height-md:36px;--control-height-lg:44px;--control-touch-target:40px;--control-checkbox-size:16px;--control-checkbox-tick-width:7px;--control-checkbox-tick-height:4px;--control-file-button-height:28px;--cursor-default:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='m4 2 15 9-6.6 1.7 4.2 6.5-3 1.9-4.1-6.4-4.5 4.6V2Z' fill='%238b5cf6' stroke='%23fff' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/svg%3E") 3 2;--cursor-pointer:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M9 2.5v9m0-3.5 1.8-1.2a2 2 0 0 1 2.8.7l.9 1.5 1-.4a2 2 0 0 1 2.5 1l.9 1.9a4 4 0 0 1-.4 4l-2.4 3.2a4 4 0 0 1-3.2 1.6h-2.4a4 4 0 0 1-3.5-2L4.8 14a2 2 0 0 1 3.1-2.5L9 12.4V2.5a2 2 0 0 1 4 0v7' fill='%238b5cf6' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5'/%3E%3C/svg%3E") 9 2;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-12:48px;--space-16:64px;--layout-gap-xs:var(--space-2);--layout-gap-sm:var(--space-3);--layout-gap-md:var(--space-5);--layout-gap-lg:var(--space-8);--layout-gap-xl:var(--space-12);--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-size-2xs:.6875rem;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.875rem;--font-size-md:.9375rem;--font-size-lg:1rem;--font-size-xl:1.125rem;--font-size-2xl:1.375rem;--font-size-3xl:1.75rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-base:1.5;--line-height-relaxed:1.65;--letter-spacing-tight:-.02em;--letter-spacing-base:0;--letter-spacing-wide:.02em;--layout-max-width:1200px;--layout-narrow-width:720px;--layout-gutter:24px;--item-select-mobile-max-height:72dvh;--tournament-bracket-column-width:256px;--tournament-bracket-row-height:120px;--tournament-bracket-viewport-height:78dvh;--tournament-bracket-viewport-max-height:840px;--tournament-bracket-mobile-height:70dvh;--coach-avatar-size:96px;--coach-avatar-mobile-size:80px;--coach-booking-min-width:220px;--coach-photo-editor-size:112px;--chat-sidebar-min-width:260px;--chat-workspace-min-height:560px;--chat-message-max-width:680px;--chat-coaching-form-min-width:280px;--chat-panel-mobile-min-height:480px;--z-base:0;--z-elevated:10;--z-sticky:20;--z-overlay:30;--z-modal:40;--z-toast:50;--transition-fast:.14s ease-out;--transition-base:.18s cubic-bezier(.4, 0, .2, 1);--transition-slow:.28s cubic-bezier(.4, 0, .2, 1);--safe-top:env(safe-area-inset-top,0);--safe-bottom:env(safe-area-inset-bottom,0);--safe-left:env(safe-area-inset-left,0);--safe-right:env(safe-area-inset-right,0)}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0s;--transition-base:0s;--transition-slow:0s}}*,:before,:after{box-sizing:border-box}html,body{height:100%;margin:0;padding:0;overflow:hidden}html{cursor:var(--cursor-default), default}#root{height:100%}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,picture,video,canvas,svg{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:var(--cursor-pointer), pointer;background:0 0;border:none;padding:0}a{color:inherit;cursor:var(--cursor-pointer), pointer;text-decoration:none}input,textarea,select{font:inherit;color:inherit}input,textarea{cursor:text}input[type=checkbox],input[type=radio],input[type=file],input[type=date],input[type=time],input[type=datetime-local],select,[role=button],[role=option]{cursor:var(--cursor-pointer), pointer}:where(a[href],button:not(:disabled),label,[role=button]:not([aria-disabled=true]),[role=option],input[type=checkbox]:not(:disabled),input[type=radio]:not(:disabled),input[type=file]:not(:disabled),input[type=date]:not(:disabled),input[type=time]:not(:disabled),input[type=datetime-local]:not(:disabled),select:not(:disabled)){cursor:var(--cursor-pointer), pointer!important}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed}:focus{outline:none}::selection{background:var(--color-primary-soft);color:var(--color-text-strong)}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text)}h1,.h1{font-size:var(--font-size-4xl);font-weight:600;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong)}h2,.h2{font-size:var(--font-size-3xl);font-weight:600;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong)}h3,.h3{font-size:var(--font-size-xl);font-weight:600;line-height:var(--line-height-snug);color:var(--color-text-strong)}h4,.h4{font-size:var(--font-size-md);font-weight:600;line-height:var(--line-height-snug);color:var(--color-text-strong)}p{color:var(--color-text)}small,.text-sm{font-size:var(--font-size-sm);color:var(--color-text-muted)}.text-muted{color:var(--color-text-muted)}.text-subtle{color:var(--color-text-subtle)}.button{justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);height:var(--control-height-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;font-family:var(--font-sans);border:1px solid var(--color-border-strong);color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;line-height:1;text-decoration:none;display:inline-flex}.button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.button--primary{background:var(--color-primary);color:var(--color-on-primary);border-color:color-mix(in srgb, var(--color-on-primary) 34%, var(--color-primary));font-weight:500}.button--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:color-mix(in srgb, var(--color-on-primary) 42%, var(--color-primary-hover))}.button--primary:active:not(:disabled){background:var(--color-primary-active);border-color:color-mix(in srgb, var(--color-on-primary) 42%, var(--color-primary-active))}.button--secondary{color:var(--color-text-strong);border-color:var(--color-primary);background:0 0}.button--secondary:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-primary-hover)}.button--secondary:active:not(:disabled){background:var(--color-surface-active);border-color:var(--color-primary-active)}.button--danger{color:var(--color-ko);border-color:var(--color-border-strong);background:0 0}.button--danger:hover:not(:disabled){background:var(--color-ko-soft);border-color:var(--color-ko)}.button--sm{height:var(--control-height-sm);padding:0 var(--space-3);font-size:var(--font-size-xs);gap:var(--space-1)}.button--lg{height:var(--control-height-lg);padding:0 var(--space-5);font-size:var(--font-size-base)}.button--block{width:100%}.button--icon{width:var(--control-height-md);flex-shrink:0;padding:0}.button--icon.button--sm{width:var(--control-height-sm)}.button--icon.button--lg{width:var(--control-height-lg)}@media (width<=960px){.button,.button--sm{height:var(--control-touch-target)}.button--lg{height:var(--control-height-lg)}.button--icon,.button--icon.button--sm{width:var(--control-touch-target)}.button--icon.button--lg{width:var(--control-height-lg)}}.button--google{justify-content:center;align-items:center;gap:var(--space-3);background:var(--color-surface);color:var(--color-text-strong);border:1px solid var(--color-border-strong);transition:background var(--transition-fast), border-color var(--transition-fast);font-weight:500;display:inline-flex}.button--google:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-text-subtle)}.button--google:active:not(:disabled){background:var(--color-surface-active)}.auth-divider{align-items:center;gap:var(--space-3);margin:var(--space-2) 0;font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-border);flex:auto;height:1px}.button[aria-busy=true]{pointer-events:none;cursor:progress}.back-button{width:fit-content}.form{gap:var(--space-4);flex-direction:column;display:flex}.form__row{gap:var(--space-2);flex-direction:column;display:flex}.form__row-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.form__link{font-size:var(--font-size-xs);color:var(--color-text-muted);transition:color var(--transition-fast);text-decoration:none}.form__link:hover{color:var(--color-primary)}.form__group{gap:var(--space-2);flex-direction:column;display:flex}.form__group--grow{flex:auto}.form__label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.form__hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.form__hint--warning{color:var(--color-warning)}.form__input,.form__select,.form__textarea{width:100%;padding:0 var(--space-3);height:var(--control-height-md);background:var(--color-bg);border:1px solid var(--color-control-border);border-radius:var(--radius-md);color:var(--color-text-strong);font-size:var(--font-size-sm);font-family:var(--font-sans);transition:border-color var(--transition-fast);display:block}.form__textarea{height:auto;min-height:80px;padding:var(--space-2) var(--space-3);resize:vertical;line-height:var(--line-height-base)}.form__input::placeholder,.form__textarea::placeholder{color:var(--color-text-subtle)}.form__input:hover:not(:focus):not(:disabled),.form__select:hover:not(:focus):not(:disabled),.form__textarea:hover:not(:focus):not(:disabled){border-color:var(--color-control-border-hover)}.form__input:focus,.form__select:focus,.form__textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-halo);outline:none}.form__input:disabled,.form__select:disabled,.form__textarea:disabled{opacity:.5;cursor:not-allowed}select.form__input,.form__select{appearance:none;padding-right:calc(var(--space-3) + var(--control-icon-size) + var(--space-2));background-image:var(--control-chevron-icon);background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:var(--control-icon-size);cursor:var(--cursor-pointer), pointer}select.form__input option,.form__select option{background:var(--color-surface);color:var(--color-text-strong)}.form__input[type=date],.form__input[type=time],.form__input[type=datetime-local]{min-width:0;padding-right:calc(var(--space-3) + var(--control-icon-size) + var(--space-2));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-variant-numeric:tabular-nums;cursor:var(--cursor-pointer), pointer}.form__input[type=date]::-webkit-calendar-picker-indicator{width:var(--control-icon-size);height:var(--control-icon-size);opacity:1;background:var(--control-calendar-icon) center / contain no-repeat;cursor:var(--cursor-pointer), pointer;margin:0}.form__input[type=time]::-webkit-calendar-picker-indicator{width:var(--control-icon-size);height:var(--control-icon-size);opacity:1;background:var(--control-calendar-icon) center / contain no-repeat;cursor:var(--cursor-pointer), pointer;margin:0}.form__input[type=datetime-local]::-webkit-calendar-picker-indicator{width:var(--control-icon-size);height:var(--control-icon-size);opacity:1;background:var(--control-calendar-icon) center / contain no-repeat;cursor:var(--cursor-pointer), pointer;margin:0}.form__input[type=date]::-webkit-datetime-edit{padding:0}.form__input[type=time]::-webkit-datetime-edit{padding:0}.form__input[type=datetime-local]::-webkit-datetime-edit{padding:0}.form__input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0}.form__input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.form__input[type=datetime-local]::-webkit-datetime-edit-fields-wrapper{padding:0}.form__input[type=number]{appearance:textfield;font-variant-numeric:tabular-nums}.form__input[type=number]::-webkit-inner-spin-button{appearance:none;margin:0}.form__input[type=number]::-webkit-outer-spin-button{appearance:none;margin:0}.form__input[type=file]{height:auto;min-height:var(--control-height-md);padding:var(--space-1);cursor:var(--cursor-pointer), pointer}.form__input[type=file]::file-selector-button{height:var(--control-file-button-height);margin-right:var(--space-3);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-strong);font:inherit;font-size:var(--font-size-xs);cursor:var(--cursor-pointer), pointer;transition:background var(--transition-fast), border-color var(--transition-fast);font-weight:700}.form__input[type=file]::file-selector-button:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.form__input-wrap{position:relative}.form__input-wrap .form__input{padding-left:calc(var(--space-3) + 18px + var(--space-2))}.form__input-icon{left:var(--space-3);width:18px;height:18px;color:var(--color-text-muted);pointer-events:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.form__input-icon svg{width:100%;height:100%}.form__input-wrap__action,.form__input-toggle{right:var(--space-2);width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.form__input-toggle:hover{color:var(--color-text-strong);background:var(--color-surface-hover)}.form__input-toggle:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.form__input-toggle svg{width:16px;height:16px}.form__input-wrap--error .form__input,.form__input-wrap--error .form__select,.form__input-wrap--error .form__textarea{border-color:var(--color-ko)}.form__error{font-size:var(--font-size-xs);color:var(--color-ko);margin:0}.tag-input{min-width:0}.tag-input__control{gap:var(--space-2);padding:var(--space-2);background:var(--color-bg);border:1px solid var(--color-control-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex}.tag-input__control:focus-within{border-color:var(--color-primary);box-shadow:var(--focus-halo)}.tag-input__tags,.tag-input__suggestions{gap:var(--space-2);flex-wrap:wrap;display:flex}.tag-input__tag{align-items:center;gap:var(--space-2);min-height:var(--control-height-sm);padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-strong);font-size:var(--font-size-xs);font-weight:600;display:inline-flex}.tag-input__remove,.tag-input__suggestion{appearance:none;font-family:var(--font-sans);cursor:pointer;border:0}.tag-input__remove{width:var(--control-height-sm);height:var(--control-height-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.tag-input__remove:hover{color:var(--color-ko)}.tag-input__entry{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.tag-input__field{width:100%;height:calc(var(--control-height-md) - var(--space-1));padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-strong);font:inherit;background:0 0;border:0;outline:none}.tag-input__field::placeholder{color:var(--color-text-subtle)}.tag-input__suggestion{min-height:var(--control-height-sm);padding:0 var(--space-2);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-xs);transition:background var(--transition-fast), color var(--transition-fast)}.tag-input__suggestion:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.tag-input__suggestion:focus-visible,.tag-input__remove:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.form__checkbox{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-sm);color:var(--color-text);transition:background var(--transition-fast), border-color var(--transition-fast);display:flex}.form__checkbox:hover{border-color:var(--color-border-hover);background:var(--color-surface-hover)}.form__checkbox input{appearance:none;width:var(--control-checkbox-size);height:var(--control-checkbox-size);border:1px solid var(--color-control-border);border-radius:var(--radius-sm);background:var(--color-bg);cursor:var(--cursor-pointer), pointer;transition:background var(--transition-fast), border-color var(--transition-fast);place-content:center;margin:0;display:grid}.form__checkbox input:before{content:"";width:var(--control-checkbox-tick-width);height:var(--control-checkbox-tick-height);border-bottom:2px solid var(--color-on-primary);border-left:2px solid var(--color-on-primary);opacity:0;transform:rotate(-45deg)translateY(-1px)}.form__checkbox input:checked{border-color:var(--color-primary);background:var(--color-primary)}.form__checkbox input:checked:before{opacity:1}.form__checkbox input:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.form__alert{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-ko-soft);color:var(--color-ko);border:1px solid var(--color-ko);font-size:var(--font-size-sm);line-height:var(--line-height-base);display:flex}.form__alert-dot{background:var(--color-ko);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.form__alert p{margin:0}@media (width<=960px){.form__input,.form__select,.form__input[type=file]{min-height:var(--control-touch-target);height:var(--control-touch-target)}.form__textarea{height:auto}.form__input-wrap__action,.form__input-toggle,.tag-input__field,.tag-input__suggestion,.tag-input__tag{min-height:var(--control-touch-target)}.tag-input__suggestion{min-width:var(--control-touch-target)}.form__input-wrap__action,.form__input-toggle,.tag-input__remove{width:var(--control-touch-target);height:var(--control-touch-target)}.tag-input__remove{margin-right:calc(-1 * var(--space-2))}}.date-time-field{min-width:0;position:relative}.date-time-field__trigger{width:100%;height:var(--control-height-md);padding:0 calc(var(--control-icon-size) + var(--space-4)) 0 var(--space-3);border:1px solid var(--color-control-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-strong);font:inherit;font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;text-align:left;cursor:var(--cursor-pointer), pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;display:flex;position:relative;overflow:hidden}.date-time-field__trigger:hover{border-color:var(--color-control-border-hover)}.date-time-field__trigger:focus-visible,.date-time-field__trigger[aria-expanded=true]{border-color:var(--color-primary);box-shadow:var(--focus-halo);outline:none}.date-time-field__placeholder{color:var(--color-text-subtle)}.date-time-field__icon{right:var(--space-2);width:var(--control-icon-size);height:var(--control-icon-size);color:var(--color-primary);justify-content:center;align-items:center;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.date-time-field__icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.7px;width:100%;height:100%}.date-time-picker{z-index:var(--z-overlay);top:calc(100% + var(--space-2));width:min(320px, calc(100vw - (2 * var(--layout-gutter))));border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-bg-elevated);box-shadow:var(--shadow-lg);animation:date-time-picker-in var(--transition-fast);position:absolute;right:0;overflow:hidden}.date-time-picker--above{top:auto;bottom:calc(100% + var(--space-2));transform-origin:100% 100%}.date-time-picker__calendar{padding:var(--space-3)}.date-time-picker__header{grid-template-columns:var(--control-height-sm) 1fr var(--control-height-sm);gap:var(--space-2);margin-bottom:var(--space-2);align-items:center;display:grid}.date-time-picker__header strong{font-size:var(--font-size-sm);text-align:center;text-transform:capitalize;font-weight:650}.date-time-picker__nav,.date-time-picker__day,.date-time-picker__time-unit>button{color:var(--color-text-muted);font:inherit;cursor:var(--cursor-pointer), pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.date-time-picker__nav{width:var(--control-height-sm);height:var(--control-height-sm);border-radius:var(--radius-md);font-size:var(--font-size-xl)}.date-time-picker__nav:hover,.date-time-picker__time-unit>button:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.date-time-picker__weekdays,.date-time-picker__days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.date-time-picker__weekdays{margin-bottom:var(--space-1)}.date-time-picker__weekdays span{color:var(--color-text-subtle);font-size:var(--font-size-2xs);text-align:center;font-weight:650}.date-time-picker__day{border-radius:var(--radius-md);width:100%;height:28px;color:var(--color-text);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.date-time-picker__day:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.date-time-picker__day--outside{color:var(--color-text-subtle);opacity:.48}.date-time-picker__day--today{box-shadow:inset 0 0 0 1px var(--color-primary)}.date-time-picker__day--selected,.date-time-picker__day--selected:hover{background:var(--color-primary);color:var(--color-on-primary);font-weight:700}.date-time-picker__nav:focus-visible,.date-time-picker__day:focus-visible,.date-time-picker__time-unit>button:focus-visible,.date-time-picker__wheel:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.date-time-picker__time{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:flex}.date-time-picker__time-label{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:600}.date-time-picker__time-control{align-items:center;gap:var(--space-1);display:flex}.date-time-picker__time-unit{grid-template-columns:var(--control-height-sm) 52px var(--control-height-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);align-items:center;display:grid;overflow:hidden}.date-time-picker__time-unit>button{width:var(--control-height-sm);height:var(--control-height-sm)}.date-time-picker__wheel-wrap{background:var(--color-bg);width:52px;height:84px;position:relative;overflow:hidden}.date-time-picker__wheel{z-index:1;scroll-snap-type:y mandatory;scrollbar-width:none;height:84px;padding:28px 0;position:relative;overflow:hidden auto;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.date-time-picker__wheel::-webkit-scrollbar{display:none}.date-time-picker__wheel-option{width:100%;height:28px;color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;scroll-snap-align:center;cursor:var(--cursor-pointer), pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:flex}.date-time-picker__wheel-option--selected{color:var(--color-text-strong);font-size:var(--font-size-sm);font-weight:700}.date-time-picker__wheel-focus{border-top:1px solid var(--color-border-strong);border-bottom:1px solid var(--color-border-strong);background:var(--color-primary-soft);pointer-events:none;z-index:0;height:28px;position:absolute;top:28px;left:0;right:0}.date-time-picker__time-separator{color:var(--color-text-muted);font-weight:700}.date-time-picker__footer{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-3);display:flex}@keyframes date-time-picker-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=640px){.date-time-field__trigger{height:var(--control-touch-target)}.date-time-picker{top:auto;right:var(--layout-gutter);bottom:calc(var(--safe-bottom) + var(--space-4));left:var(--layout-gutter);width:auto;position:fixed}}@media (prefers-reduced-motion:reduce){.date-time-picker{animation:none}}.game-select{width:100%;position:relative}.game-select__button{align-items:center;gap:var(--space-3);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-control-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-strong);text-align:left;cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);grid-template-columns:34px minmax(0,1fr) 20px;display:grid}.game-select__button:hover{border-color:var(--color-control-border-hover);background:var(--color-surface-hover)}.game-select__button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.game-select__button[aria-expanded=true]{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.game-select__button--empty{color:var(--color-text-muted)}.game-select__button--no-leading{grid-template-columns:minmax(0,1fr) 20px}.game-select__thumb{--game-accent:var(--color-primary);border-radius:var(--radius-md);background:color-mix(in srgb, var(--game-accent) 20%, var(--color-surface));border:1px solid color-mix(in srgb, var(--game-accent) 40%, var(--color-border));width:34px;height:34px;color:var(--color-text-strong);font-size:var(--font-size-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.game-select__thumb img{object-fit:cover;width:100%;height:100%;display:block}.game-select__label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-sm);font-weight:500;overflow:hidden}.game-select__chevron{border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-hover) 72%, transparent);border:1px solid var(--color-border);width:28px;height:28px;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);justify-content:center;justify-self:end;align-items:center;display:inline-flex}.game-select__chevron:before{content:"";border-right:2px solid var(--color-text-muted);border-bottom:2px solid var(--color-text-muted);width:8px;height:8px;transition:border-color var(--transition-fast);transform:translateY(-2px)rotate(45deg)}.game-select__button:hover .game-select__chevron,.game-select__button[aria-expanded=true] .game-select__chevron{background:var(--color-surface);border-color:var(--color-primary)}.game-select__button:hover .game-select__chevron:before,.game-select__button[aria-expanded=true] .game-select__chevron:before{border-color:var(--color-text-strong)}.game-select__button[aria-expanded=true] .game-select__chevron{transform:rotate(180deg)}.game-select__menu{z-index:var(--z-overlay);top:calc(100% + var(--space-2));max-height:360px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;left:0;right:0;overflow:hidden}.game-select--open-up .game-select__menu{top:auto;bottom:calc(100% + var(--space-2))}.game-select__backdrop{display:none}.game-select__search{z-index:1;padding:0 0 var(--space-2);background:var(--color-surface);position:sticky;top:0}.game-select__search-input{width:100%;height:40px;padding:0 var(--space-3);border:1px solid var(--color-control-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-strong);font-size:var(--font-size-sm)}.game-select__search-input::placeholder{color:var(--color-text-muted)}.game-select__search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.game-select__options{overscroll-behavior:contain;min-height:0;padding-right:2px;overflow-y:auto}.game-select__option{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:34px minmax(0,1fr);display:grid}.game-select__option--no-leading{grid-template-columns:minmax(0,1fr)}.game-select__option:hover,.game-select__option--active{background:var(--color-surface-hover);border-color:var(--color-border);color:var(--color-text-strong)}.game-select__option--active{border-color:var(--color-primary)}.game-select__option-text{min-width:0;font-size:var(--font-size-sm);flex-direction:column;gap:2px;font-weight:500;display:flex}.game-select__option-text span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.game-select__option-text small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.game-select__empty{padding:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin:0}.game-select__loading{padding:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;margin:0;display:block}@media (width<=720px){.game-select__backdrop{z-index:var(--z-overlay);background:color-mix(in srgb, var(--color-bg) 72%, transparent);border:0;padding:0;display:block;position:fixed;inset:0}.game-select__menu,.game-select--open-up .game-select__menu{z-index:var(--z-modal);top:auto;right:max(var(--space-3), var(--safe-right));bottom:max(var(--space-3), var(--safe-bottom));left:max(var(--space-3), var(--safe-left));max-height:min(var(--item-select-mobile-max-height), calc(100dvh - var(--space-8)));padding:var(--space-3);border-color:var(--color-border-strong);border-radius:var(--radius-xl);position:fixed}.game-select__menu:before{content:"";width:var(--space-10);margin-bottom:var(--space-3);border-top:2px solid var(--color-border-strong);border-radius:var(--radius-full);align-self:center}.game-select__search{padding-bottom:var(--space-3)}.game-select__option{min-height:var(--space-12);padding-inline:var(--space-3)}}.card{gap:var(--space-3);padding:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);transition:border-color var(--transition-fast);flex-direction:column;display:flex}.card:hover{border-color:var(--color-border-hover)}.card:focus-within{border-color:var(--color-border-strong)}.badge{padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500;font-family:var(--font-sans);letter-spacing:var(--letter-spacing-base);background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.badge--success{background:var(--color-ok-soft);color:var(--color-ok);border-color:var(--color-ok)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning);border-color:var(--color-warning)}.badge--ko{background:var(--color-ko-soft);color:var(--color-ko);border-color:var(--color-ko)}.badge--info{background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary)}.badge--neutral{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.badge--solid{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.badge--solid.badge--success{background:var(--color-ok);border-color:var(--color-ok)}.badge--solid.badge--warning{background:var(--color-warning);border-color:var(--color-warning)}.badge--solid.badge--ko{background:var(--color-ko);border-color:var(--color-ko)}.tabs{align-items:stretch;gap:var(--space-2);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);scrollbar-width:none;display:flex;overflow:auto hidden}.tabs::-webkit-scrollbar{display:none}.tabs__tab{padding:var(--space-3) var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:color var(--transition-fast), border-color var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:-1px;font-weight:500;display:inline-flex}.tabs__tab:hover{color:var(--color-text-strong)}.tabs__tab:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(var(--focus-ring-offset) * -1);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tabs__tab--active{color:var(--color-text-strong);border-bottom-color:var(--color-primary)}@media (width<=480px){.coach-tabs{gap:0}.coach-tabs .tabs__tab{min-width:0;padding-inline:var(--space-2);font-size:var(--font-size-xs);flex:1 1 0}.coach-tabs__count{display:none}}@media (width<=360px){.coach-tabs .tabs__tab{padding-inline:var(--space-1);font-size:var(--font-size-2xs)}}.skeleton{background:var(--color-surface);border-radius:var(--radius-md);display:block;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent 0%, color-mix(in srgb, var(--color-text-strong) 4%, transparent) 50%, transparent 100%);background-size:200% 100%;animation:1.6s ease-in-out infinite skeleton-pulse;position:absolute;inset:0}.skeleton--text{width:100%;height:.875em}.skeleton--title{width:60%;height:1.5em}.skeleton--avatar{border-radius:var(--radius-full);width:40px;height:40px}.skeleton--cover{aspect-ratio:16/9;width:100%}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.image-placeholder{background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-weight:600;display:flex;position:relative}.image-placeholder__label{z-index:1;font-size:var(--font-size-sm);text-align:center;padding:0 var(--space-3);position:relative}.image-placeholder--game .image-placeholder__label{font-size:var(--font-size-lg)}.image-placeholder--accent{background:color-mix(in srgb, var(--accent,var(--color-primary)) 14%, var(--color-surface));color:var(--color-text-strong)}.error-boundary{justify-content:center;align-items:center;gap:var(--space-3);min-height:60vh;padding:var(--space-12) var(--space-6);text-align:center;flex-direction:column;display:flex}.error-boundary__title{font-size:var(--font-size-xl);color:var(--color-text-strong)}.error-boundary__description{color:var(--color-text-muted);max-width:50ch}.error-boundary__details{max-width:min(100%,44rem);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);background:var(--color-surface);text-align:left;white-space:pre-wrap;overflow:auto}.error-boundary__actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-elevated);text-align:center;flex-direction:column;min-width:0;display:flex}.empty-state__icon{border:1px solid var(--color-border-strong);border-radius:var(--radius-full);width:36px;height:36px;font-size:var(--font-size-3xl);color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex}.empty-state--error{padding-block:var(--space-8);border-style:solid;border-color:color-mix(in srgb, var(--color-ko) 36%, var(--color-border));background:color-mix(in srgb, var(--color-ko) 5%, var(--color-bg-elevated))}.empty-state--error .empty-state__icon{color:var(--color-ko);border-color:color-mix(in srgb, var(--color-ko) 56%, var(--color-border));font-size:var(--font-size-xl);font-weight:700}.empty-state__title{font-size:var(--font-size-lg);color:var(--color-text-strong);font-weight:600}.empty-state__description{color:var(--color-text-muted);overflow-wrap:anywhere;max-width:50ch}.empty-state__action{margin-top:var(--space-3)}.star-rating{color:var(--color-warning);font-weight:600;font-size:var(--font-size-sm);letter-spacing:.02em;align-items:center;gap:4px;display:inline-flex}.star-rating__star{width:1em;height:1em;display:inline-block}.star-rating__star--empty{color:var(--color-text-subtle)}.star-rating--sm{font-size:var(--font-size-xs)}.star-rating--lg{font-size:var(--font-size-lg)}.carousel{width:100%;position:relative}.carousel__viewport{border-radius:var(--radius-lg);position:relative;overflow:hidden}.carousel__track{will-change:transform;width:100%;transition:transform .48s cubic-bezier(.4,0,.2,1);display:flex}.carousel__slide{flex:0 0 100%;min-width:0;position:relative;overflow:hidden}.carousel__arrow{width:var(--control-touch-target);height:var(--control-touch-target);border-radius:var(--radius-full);border:1px solid var(--color-border-strong);background:color-mix(in srgb, var(--color-bg-elevated) 85%, transparent);color:var(--color-text-strong);cursor:pointer;-webkit-backdrop-filter:var(--glass-blur-md);backdrop-filter:var(--glass-blur-md);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;font-size:0;line-height:1;display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel__arrow svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5px;width:20px;height:20px;display:block}.carousel__arrow:hover{background:var(--color-surface-hover);border-color:var(--color-primary);color:var(--color-primary)}.carousel__arrow--prev{left:var(--space-3)}.carousel__arrow--next{right:var(--space-3)}@media (width<=720px){.carousel__arrow--prev{left:var(--space-2)}.carousel__arrow--next{right:var(--space-2)}}@media (width<=480px){.carousel__arrow svg{width:16px;height:16px}}.carousel__dots{margin-top:var(--space-1);justify-content:center;gap:0;display:flex}.carousel__dot{width:var(--control-height-md);height:var(--control-height-md);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid}.carousel__dot:before{content:"";width:var(--space-2);height:var(--space-2);border-radius:var(--radius-full);background:var(--color-border-strong);transition:width var(--transition-fast), background var(--transition-fast)}.carousel__dot--active:before{width:var(--space-6);background:var(--color-primary)}.carousel__dot:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(var(--focus-ring-offset) * -1)}.search-input{align-items:center;width:100%;display:flex;position:relative}.search-input__icon{left:var(--space-3);color:var(--color-text-muted);pointer-events:none;font-size:14px;position:absolute;top:50%;transform:translateY(-50%)}.search-input__field{width:100%;padding:0 var(--space-3) 0 calc(var(--space-3) + 18px + var(--space-2));height:var(--control-height-md);background:var(--color-bg);border:1px solid var(--color-control-border);border-radius:var(--radius-md);color:var(--color-text-strong);font-size:var(--font-size-sm);min-width:0;transition:border-color var(--transition-fast)}.search-input__field::placeholder{color:var(--color-text-subtle);text-overflow:ellipsis}.search-input__field:hover:not(:focus){border-color:var(--color-control-border-hover)}.search-input__field:focus{border-color:var(--color-primary);box-shadow:var(--focus-halo);outline:none}.search-input--lg .search-input__field{height:var(--control-height-lg);font-size:var(--font-size-base)}.search-input__results{top:calc(100% + var(--space-2));z-index:var(--z-overlay);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);max-height:70vh;position:absolute;left:0;right:0;overflow:hidden auto}.search-input__results-section{padding:var(--space-2) 0}.search-input__results-section+.search-input__results-section{border-top:1px solid var(--color-border)}.search-input__results-title{padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin:0;font-weight:600}.search-input__result{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text);transition:background var(--transition-fast);text-decoration:none;display:flex}.search-input__result:hover,.search-input__result--active{background:var(--color-surface-hover)}.search-input__result-thumb{border-radius:var(--radius-md);flex:none;width:32px;height:32px;overflow:hidden}.search-input__result-content{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.search-input__result-title{font-size:var(--font-size-sm);color:var(--color-text-strong);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:500;overflow:hidden}.search-input__result-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.search-input__empty{padding:var(--space-6);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}@media (width<=960px){.search-input__field{height:var(--control-touch-target)}.search-input--lg .search-input__field{height:var(--control-height-lg)}}.modal-backdrop{z-index:var(--z-modal);background:color-mix(in srgb, var(--color-bg) 70%, transparent);min-height:100dvh;padding:var(--space-4);padding-bottom:calc(var(--space-4) + var(--safe-bottom));justify-content:center;align-items:center;animation:.2s ease-out modal-backdrop-in;display:flex;position:fixed;inset:0}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}.modal{width:100%;max-width:560px;max-height:calc(100vh - 2 * var(--space-4));max-height:calc(100dvh - 2 * var(--space-4));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);flex-direction:column;animation:.22s cubic-bezier(.4,0,.2,1) modal-in;display:flex;position:relative;overflow:hidden}.modal--lg{max-width:720px}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);display:flex}.modal__title{font-size:var(--font-size-lg);color:var(--color-text-strong);margin:0;font-weight:600}.modal__close{width:var(--control-touch-target);height:var(--control-touch-target);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.modal__close:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.modal__body{padding:var(--space-6);flex:auto;overflow-y:auto}.modal__footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex}.toast-region{top:calc(var(--space-6) + var(--safe-top));right:calc(var(--space-6) + var(--safe-right));z-index:var(--z-toast);gap:var(--space-3);pointer-events:none;flex-direction:column;min-width:0;max-width:380px;display:flex;position:fixed}.toast{pointer-events:auto;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);color:var(--color-text);animation:.2s cubic-bezier(.4,0,.2,1) toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast--success{border-left-color:var(--color-ok)}.toast--warning{border-left-color:var(--color-warning)}.toast--error{border-left-color:var(--color-ko)}.toast--info{border-left-color:var(--color-primary)}.toast__icon{border-radius:var(--radius-full);background:var(--color-surface-hover);width:24px;height:24px;color:var(--color-text);flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:inline-flex}.toast--success .toast__icon{background:var(--color-ok-soft);color:var(--color-ok)}.toast--warning .toast__icon{background:var(--color-warning-soft);color:var(--color-warning)}.toast--error .toast__icon{background:var(--color-ko-soft);color:var(--color-ko)}.toast--info .toast__icon{background:var(--color-primary-soft);color:var(--color-primary)}.toast__content{gap:var(--space-1);flex-direction:column;flex:auto;min-width:0;display:flex}.toast__title{font-size:var(--font-size-sm);color:var(--color-text-strong);margin:0;font-weight:600}.toast__message{font-size:var(--font-size-sm);color:var(--color-text-muted);overflow-wrap:anywhere;margin:0}.toast__close{color:var(--color-text-muted);cursor:pointer;margin-left:var(--space-2);background:0 0;border:none;padding:0;font-size:16px}@media (width<=480px){.toast-region{right:calc(var(--space-4) + var(--safe-right));left:calc(var(--space-4) + var(--safe-left));max-width:none}}.app-header{z-index:var(--z-sticky);background:var(--color-bg);border-bottom:1px solid var(--color-border);flex-shrink:0;position:sticky;top:0}.app-header__inner{max-width:var(--layout-max-width);padding:0 var(--layout-gutter);align-items:center;gap:var(--space-6);height:64px;margin:0 auto;display:flex}.app-header__brand{align-items:center;gap:var(--space-2);font-size:var(--font-size-xl);color:var(--color-text-strong);letter-spacing:var(--letter-spacing-wide);min-height:var(--control-height-lg);flex-shrink:0;font-weight:700;display:inline-flex}.app-header__logo{border-radius:var(--radius-md);object-fit:contain;width:34px;height:34px;display:block}.app-header__wordmark{object-fit:contain;width:148px;height:32px;display:block}.app-header__nav{--nav-indicator-x:0px;--nav-indicator-w:0px;--nav-indicator-opacity:0;flex:auto;justify-content:center;align-self:stretch;align-items:center;display:flex;position:relative}.app-header__nav:after{content:"";width:var(--nav-indicator-w);border-radius:var(--radius-full) var(--radius-full) 0 0;background:var(--color-primary);height:3px;opacity:var(--nav-indicator-opacity);transform:translateX(var(--nav-indicator-x));transition:transform .26s cubic-bezier(.22, 1, .36, 1), width .26s cubic-bezier(.22, 1, .36, 1), opacity var(--transition-fast);pointer-events:none;position:absolute;bottom:0;left:0}.app-header__nav ul{align-items:center;gap:var(--space-3);margin:0;padding:0;list-style:none;display:flex}.app-header__nav-menu-item,.app-header__nav-menu{position:relative}.app-header__nav-menu>summary{cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.app-header__nav-menu>summary::-webkit-details-marker{display:none}.app-header__nav-chevron{transition:transform var(--transition-fast);margin-left:2px;fill:none!important;width:16px!important;height:16px!important}.app-header__nav-menu[open] .app-header__nav-chevron{transform:rotate(180deg)}.app-header__nav-popover{top:calc(100% + var(--space-2));z-index:var(--z-overlay);gap:var(--space-1);width:280px;padding:var(--space-2);border:1px solid var(--color-border-hover);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-surface) 96%, transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--glass-blur-md);backdrop-filter:var(--glass-blur-md);display:grid;position:absolute;left:50%;transform:translate(-50%)}.app-header__nav-option{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);border:1px solid #0000;grid-template-columns:38px minmax(0,1fr);text-decoration:none;display:grid}.app-header__nav-option:hover,.app-header__nav-option:focus-visible,.app-header__nav-option--active{border-color:color-mix(in srgb, var(--color-primary) 25%, var(--color-border));background:var(--color-primary-soft);color:var(--color-text-strong)}.app-header__nav-option-icon{border:1px solid color-mix(in srgb, var(--color-primary) 25%, var(--color-border));border-radius:var(--radius-md);background:var(--color-bg);width:38px;height:38px;color:var(--color-primary-hover);place-items:center;display:grid}.app-header__nav-option-icon svg{fill:currentColor;width:19px;height:19px}.app-header__nav-option>span:last-child{gap:2px;min-width:0;display:grid}.app-header__nav-option strong{color:var(--color-text-strong);font-size:var(--font-size-sm)}.app-header__nav-option small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.app-header__nav-option--primary{margin-top:var(--space-1);border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface))}.app-header__nav-option--primary .app-header__nav-option-icon{background:var(--color-primary);color:var(--color-on-primary)}.app-header__link{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-base);padding:var(--space-3) var(--space-4) calc(var(--space-3) + 2px);border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border));transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast);font-weight:700;display:inline-flex;position:relative}.app-header__link svg{width:var(--space-5);height:var(--space-5);fill:currentColor;flex-shrink:0;display:block}.app-header__link:hover{color:var(--color-text-strong);background:color-mix(in srgb, var(--color-primary) 12%, transparent);border-color:color-mix(in srgb, var(--color-primary) 28%, transparent)}.app-header__link:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.app-header__link--active{color:var(--color-text-strong);background:color-mix(in srgb, var(--color-primary) 16%, transparent);border-color:color-mix(in srgb, var(--color-primary) 78%, var(--color-border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 12%, transparent)}.app-header__link--active svg{color:var(--color-primary)}.app-header__actions{gap:var(--space-2);align-items:center;display:flex}.app-header__notification{width:var(--control-touch-target);height:var(--control-touch-target);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);place-items:center;display:grid;position:relative}.app-header__notification:hover,.app-header__notification:focus-visible{border-color:var(--color-primary);color:var(--color-text-strong)}.app-header__notification svg{width:var(--space-5);height:var(--space-5)}.app-header__notification>span{top:calc(var(--space-1) * -1);right:calc(var(--space-1) * -1);min-width:var(--space-5);height:var(--space-5);padding-inline:var(--space-1);border:2px solid var(--color-bg);border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-2xs);place-items:center;font-weight:800;display:grid;position:absolute}.app-header__user{align-items:center;gap:var(--space-2);min-width:0;max-width:260px;height:40px;padding:0 var(--space-4) 0 var(--space-1);border-radius:var(--radius-md);color:var(--color-text-strong);background:color-mix(in srgb, var(--color-primary) 18%, transparent);border:1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border));font-size:var(--font-size-base);white-space:nowrap;transition:background var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), color var(--transition-fast);font-weight:700;text-decoration:none;display:inline-flex}.app-header__user:hover{background:color-mix(in srgb, var(--color-primary) 26%, transparent);border-color:color-mix(in srgb, var(--color-primary) 58%, var(--color-border));color:var(--color-text-strong);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary) 14%, transparent)}.app-header__user:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.app-header__user-avatar{border-radius:var(--radius-sm);background:var(--color-primary);width:32px;height:32px;color:var(--color-on-primary);font-size:var(--font-size-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.app-header__user-avatar img,.app-drawer__user-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.app-header__cta svg{width:var(--space-4);height:var(--space-4)}.app-header__logout{border-color:var(--color-border);color:var(--color-text-muted);min-height:40px;font-size:var(--font-size-base);padding-inline:0;font-weight:700}.app-header__logout svg{width:19px;height:19px}.app-header__logout:hover:not(:disabled){color:var(--color-text-strong);border-color:color-mix(in srgb, var(--color-primary) 34%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 10%, transparent)}.app-header__menu-toggle{border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:none}.app-header__menu-toggle:hover{background:var(--color-surface-hover)}.app-header__menu-toggle svg{width:26px;height:26px}.app-drawer{width:min(86vw,360px);z-index:var(--z-modal);background:var(--color-bg);border-left:1px solid var(--color-border);visibility:hidden;overscroll-behavior:contain;padding-top:var(--safe-top);padding-right:var(--safe-right);padding-bottom:var(--safe-bottom);flex-direction:column;transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.app-drawer--open{visibility:visible;transform:translate(0)}.app-drawer__backdrop{z-index:calc(var(--z-modal) - 1);background:color-mix(in srgb, var(--color-bg) 60%, transparent);opacity:0;visibility:hidden;transition:opacity .2s ease-out;position:fixed;inset:0}.app-drawer__backdrop--open{opacity:1;visibility:visible}.app-drawer__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);flex-shrink:0;height:64px;display:flex}.app-drawer__title{font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text);margin:0;font-weight:600}.app-drawer__close{width:var(--control-height-lg);height:var(--control-height-lg);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.app-drawer__close:hover{background:var(--color-surface-hover);color:var(--color-text)}.app-drawer__body{gap:var(--space-2);padding:var(--space-4);overscroll-behavior:contain;flex-direction:column;flex:auto;display:flex;overflow-y:auto}.app-drawer__nav-link,.app-drawer__action{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-base);cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast);background:0 0;border:1px solid #0000;font-weight:500;display:flex}.app-drawer__nav-link svg{fill:currentColor;flex:0 0 20px;width:20px;height:20px}.app-drawer__nav-link:hover,.app-drawer__action:hover{background:var(--color-surface-hover)}.app-drawer__nav-link--active{color:var(--color-primary);background:var(--color-primary-soft)}.app-drawer__action--primary{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-text-strong);font-weight:700}.app-bottom-nav{display:none}.app-drawer__section{gap:var(--space-1);padding:var(--space-2) var(--space-3);flex-direction:column;display:flex}.app-drawer__section-label{padding:var(--space-2) var(--space-2) var(--space-1);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-text-muted);margin:0;font-weight:600}.app-drawer__footer{gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;flex-shrink:0;display:flex}.app-drawer__user{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.app-drawer__user-avatar{border-radius:var(--radius-full);background:var(--color-surface-hover);width:32px;height:32px;color:var(--color-text-muted);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.app-drawer__user-name{font-weight:500;font-size:var(--font-size-sm);color:var(--color-text);margin:0}.app-drawer__user-email{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.app-drawer__button{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-base);border:1px solid var(--color-border-strong);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;font-weight:500;display:flex}.app-drawer__button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.app-drawer__button--primary{background:var(--color-primary);color:var(--color-on-primary);border-color:color-mix(in srgb, var(--color-on-primary) 34%, var(--color-primary))}.app-drawer__button--primary:hover{background:var(--color-primary-hover);border-color:color-mix(in srgb, var(--color-on-primary) 42%, var(--color-primary-hover))}.app-drawer__button--secondary{color:var(--color-text-strong);border-color:var(--color-border-strong);background:0 0}.app-drawer__button--secondary:hover{background:var(--color-surface-hover)}.app-drawer__button--danger{color:var(--color-ko);border-color:var(--color-ko);background:0 0}.app-drawer__button--danger:hover{background:var(--color-ko-soft)}.app-header__search{border-top:1px solid var(--color-border);background:var(--color-bg);padding:var(--space-3) var(--layout-gutter)}.app-header__search-inner{max-width:var(--layout-max-width);min-width:0;margin:0 auto}.app-header__search--hidden{display:none}@media (width<=960px){.app-header__menu-toggle{display:inline-flex}.app-header__inner{gap:var(--space-2);flex-wrap:wrap;justify-content:space-between}.app-header__nav{display:none}}@media (width<=720px){.app-header__search{padding-inline:var(--space-4)}.app-bottom-nav{left:var(--space-3);right:var(--space-3);bottom:calc(var(--space-3) + var(--safe-bottom));z-index:var(--z-sticky);grid-template-columns:repeat(var(--bottom-nav-items,5), minmax(0, 1fr));gap:var(--space-1);padding:var(--space-1);border:1px solid color-mix(in srgb, var(--color-primary) 20%, var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg) 92%, transparent);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:var(--glass-blur-md);backdrop-filter:var(--glass-blur-md);display:grid;position:fixed}.app-bottom-nav__link{border-radius:var(--radius-md);min-width:0;height:48px;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.68rem;font-weight:700;text-decoration:none;transition:color .22s ease-out,background .26s cubic-bezier(.22,1,.36,1);display:inline-flex;position:relative}.app-bottom-nav__link svg{fill:currentColor;width:20px;height:20px;transition:opacity .18s ease-out}.app-bottom-nav__link:after{content:"";border-radius:var(--radius-full);opacity:0;background:currentColor;width:0;height:2px;transition:width .26s cubic-bezier(.22,1,.36,1),opacity .18s ease-out;position:absolute;bottom:5px;left:50%}.app-bottom-nav__link--active{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 14%, transparent);animation:.3s cubic-bezier(.22,1,.36,1) bottom-nav-active}.app-bottom-nav__link--active:after{opacity:1;width:18px;transform:translate(-50%)}.app-bottom-nav__link--active svg{animation:.26s ease-out bottom-nav-icon-active}@keyframes bottom-nav-active{0%{background:0 0}to{background:color-mix(in srgb, var(--color-primary) 14%, transparent)}}@keyframes bottom-nav-icon-active{0%{opacity:.55}to{opacity:1}}@media (prefers-reduced-motion:reduce){.app-bottom-nav__link,.app-bottom-nav__link:after,.app-bottom-nav__link svg{transition:none;animation:none}}}@media (width>=961px){.app-header__menu-toggle{display:none}}@media (width<=720px){.app-header__inner{gap:var(--space-2)}.app-header__wordmark{width:132px;height:30px}.app-header__user{max-width:180px}}@media (width<=480px){.app-header__user,.app-header__logout,.app-header__cta{display:none}}.home-hero{gap:var(--space-12);margin-bottom:var(--space-12);grid-template-columns:1fr 1fr;align-items:center;display:grid}.home-hero__carousel{border-radius:var(--radius-lg);min-width:0;position:relative}.home-hero__carousel .carousel__viewport{aspect-ratio:16/9;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.home-hero__carousel .carousel__track,.home-hero__carousel .carousel__slide,.home-hero__carousel .hero-slide{height:100%}.home-hero__search{gap:var(--space-5);flex-direction:column;display:flex}.home-hero__title{font-size:clamp(2.5rem, 5vw, var(--font-size-5xl));letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong);margin:0;font-weight:700;line-height:1.05}.home-hero__lede{max-width:52ch;color:var(--color-text-muted);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin:0}.home-hero__actions{gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.home-catalogue{margin-bottom:var(--space-16)}.home-catalogue__count{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 var(--space-3)}.home-catalogue__count strong{color:var(--color-text-strong);font-weight:600}.home-catalogue__empty{padding:var(--space-12) var(--space-6);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-elevated);color:var(--color-text-muted)}.hero-slide{width:100%;height:100%;color:var(--color-text-strong);text-decoration:none;display:block;position:relative;overflow:hidden}.hero-slide__image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-slide__overlay{background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--color-bg) 15%, transparent) 35%, color-mix(in srgb, var(--color-bg) 85%, transparent) 100%);position:absolute;inset:0}.hero-slide__body{z-index:2;gap:var(--space-3);max-width:min(620px,88%);height:100%;padding:var(--space-8);flex-direction:column;justify-content:flex-end;display:flex;position:relative}.hero-slide__title{letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong);overflow-wrap:anywhere;margin:0;font-size:clamp(1.5rem,5vw,3.4rem);font-weight:700;line-height:1.1}.hero-slide__meta{align-items:center;gap:var(--space-2);color:color-mix(in srgb, var(--color-text-strong) 70%, transparent);font-size:var(--font-size-sm);font-weight:500;display:flex}.card-grid{gap:var(--space-4);display:grid}.card-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.card-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=960px){.card-grid--4{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.card-grid--4,.card-grid--3,.card-grid--2{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}}.genre-chips{gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.genre-chips__scroll{gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.genre-chip{border-radius:var(--radius-md)}.genre-chip:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.genre-chip--active{font-weight:600}.home-section__header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.home-section__title{font-size:clamp(1.5rem, 3vw, var(--font-size-4xl));letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong);margin:0;font-weight:600}.home-section__hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.home-section__link{min-height:var(--control-height-md);align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-muted);transition:color var(--transition-fast);font-weight:500;display:inline-flex}.home-section__link:hover{color:var(--color-primary)}@media (width<=960px){.home-hero{gap:var(--space-8);grid-template-columns:1fr}.home-hero__search{order:-1}.home-hero__carousel{min-height:0}.home-hero__carousel .carousel__viewport{aspect-ratio:16/9}.home-hero__title{font-size:clamp(2rem, 6vw, var(--font-size-5xl))}}@media (width<=720px){.home-hero{gap:var(--space-5);margin-bottom:var(--space-10)}.home-hero__carousel{min-height:0}.home-hero__carousel .carousel__viewport{aspect-ratio:4/3}.hero-slide__body{padding:var(--space-5);gap:var(--space-2);max-width:100%}.hero-slide__meta{row-gap:var(--space-1);flex-wrap:wrap}.home-section__header{align-items:flex-start;gap:var(--space-1);flex-direction:column}.home-section__link{min-height:var(--control-touch-target)}}@media (width<=480px){.home-hero__search{gap:var(--space-4)}.home-hero__carousel{border-radius:var(--radius-md)}.home-hero__carousel .carousel__viewport{aspect-ratio:1;border-radius:var(--radius-md)}.hero-slide__body{padding:var(--space-4);gap:var(--space-2);max-width:100%}.hero-slide__title{font-size:clamp(1.7rem,11vw,2.6rem)}.hero-slide__meta{font-size:var(--font-size-xs)}.home-hero__actions{flex-direction:column}.home-hero__actions .button{width:100%}.genre-chips{margin-right:0;padding-bottom:0;overflow-x:visible}.genre-chips__scroll{flex-wrap:wrap;padding-right:0}}.coach-card{gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);color:var(--color-text);min-width:0;min-height:330px;transition:border-color var(--transition-fast), background var(--transition-fast);grid-template-rows:auto auto 1fr;text-decoration:none;display:grid}.coach-card:hover{border-color:var(--color-border-hover);background:var(--color-surface-hover)}.coach-card:focus-visible,.game-card:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.coach-card__top{gap:var(--space-3);grid-template-columns:64px minmax(0,1fr);align-items:center;display:grid}.coach-card__media{min-width:0}.coach-card__avatar{border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);object-fit:cover;flex-shrink:0;width:64px;height:64px}.coach-card__avatar--placeholder{font-weight:700;font-size:var(--font-size-2xl);color:var(--color-text-strong);background:var(--color-bg-elevated);justify-content:center;align-items:center;display:flex}.coach-card__identity{align-items:flex-start;gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.coach-card__body{align-items:flex-start;gap:var(--space-2);flex-direction:column;flex:auto;min-width:0;display:flex}.coach-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);width:100%;display:flex}.coach-card__name{font-size:var(--font-size-lg);line-height:var(--line-height-tight);color:var(--color-text-strong);word-break:break-word;margin:0;font-weight:800}.coach-card__primary-game{align-items:center;gap:var(--space-2);min-width:0;max-width:100%;padding:4px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-xs);font-weight:800;display:inline-flex}.coach-card__primary-game img,.coach-card__primary-game>span:first-child{border-radius:var(--radius-sm);object-fit:cover;background:var(--color-primary-soft);width:22px;height:22px;color:var(--color-primary);flex:0 0 22px;justify-content:center;align-items:center;display:inline-flex}.coach-card__primary-game span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.coach-card__meta{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.coach-card__games{gap:var(--space-2);flex-wrap:wrap;width:100%;margin:0;padding:0;list-style:none;display:flex}.coach-card__game{align-items:center;gap:var(--space-2);min-width:0;max-width:100%;padding:4px var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);color:var(--color-text);font-size:var(--font-size-xs);font-weight:700;display:inline-flex}.coach-card__game img,.coach-card__game>span:first-child{border-radius:var(--radius-sm);object-fit:cover;background:var(--color-primary-soft);width:24px;height:24px;color:var(--color-primary);flex:0 0 24px;justify-content:center;align-items:center;display:inline-flex}.coach-card__game span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.coach-card__rating{color:var(--color-warning);font-weight:500;font-size:var(--font-size-sm);flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.coach-card__facts{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.coach-card__facts span{min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);flex-direction:column;gap:2px;display:flex}.coach-card__price{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);gap:2px;display:grid}.coach-card__price small,.coach-card__price span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.coach-card__price strong{color:var(--color-text-strong);font-size:var(--font-size-xl);line-height:1}.coach-card__facts small{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.coach-card__facts strong{color:var(--color-text-strong);font-size:var(--font-size-sm);overflow-wrap:anywhere}.coach-card .button{width:100%;margin-top:auto}@media (width<=720px){.coach-card{min-height:auto;padding:var(--space-2);gap:var(--space-2)}.coach-card__top{gap:var(--space-2);grid-template-columns:40px minmax(0,1fr)}.coach-card__avatar{width:40px;height:40px}.coach-card__name{font-size:var(--font-size-sm)}.coach-card__primary-game,.coach-card__games,.coach-card__meta{display:none}.coach-card__price strong{font-size:var(--font-size-base)}.coach-card__facts span,.coach-card__price{padding:var(--space-2)}.coach-card .button{min-width:0}}@media (width<=480px){.coach-card__facts{grid-template-columns:1fr 1fr}}.game-card{gap:var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.game-card:hover{border-color:var(--color-border-hover)}.game-card__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.game-card__name{font-size:var(--font-size-lg);color:var(--color-text-strong);word-break:break-word;margin:0;font-weight:600}.game-card--covered{isolation:isolate;padding:0;position:relative}.game-card--covered .game-card__body{z-index:2;padding:var(--space-5);gap:var(--space-3);flex-direction:column;justify-content:flex-end;min-height:320px;display:flex;position:relative}.game-card__cover{background-color:var(--color-bg-elevated);z-index:0;background-position:50%;background-size:cover;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.game-card__cover:after{content:"";background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--color-bg) 15%, transparent) 35%, color-mix(in srgb, var(--color-bg) 85%, transparent) 100%);position:absolute;inset:0}.game-card__cover-label{z-index:1;font-weight:700;font-size:var(--font-size-2xl);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:color-mix(in srgb, var(--color-text-strong) 85%, transparent);padding:var(--space-3);text-align:center;word-break:break-word;max-width:100%;position:relative}.game-card__rating:before{content:"★";color:var(--color-warning)}@media (width<=720px){.game-card--covered .game-card__body{padding:var(--space-3);min-height:210px}.game-card__name{font-size:var(--font-size-sm);line-height:var(--line-height-tight)}}.filters{gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);flex-direction:column;display:flex}.filters__row{gap:var(--space-3);grid-template-columns:140px 1fr;align-items:center;display:grid}.filters__label{font-size:var(--font-size-sm);color:var(--color-text);font-weight:500}.filters__actions{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border);justify-content:flex-end;display:flex}.games-search__controls{gap:var(--space-3);align-items:center;display:flex}.games-search__controls .form__input{flex:1}.pagination{justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.pagination__info{color:var(--color-text-muted);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.coach-profile__header{gap:var(--space-6);margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border);grid-template-columns:140px 1fr;align-items:start;display:grid}.coach-profile__avatar{border-radius:var(--radius-full);background:var(--color-surface);border:1px solid var(--color-border);object-fit:cover;width:140px;height:140px}.coach-profile__avatar--placeholder{font-weight:700;font-size:var(--font-size-3xl);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.coach-profile__name{margin:0 0 var(--space-1);letter-spacing:var(--letter-spacing-tight);font-weight:600;font-size:var(--font-size-3xl);color:var(--color-text-strong);word-break:break-word}.coach-profile__email{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);word-break:break-word}.coach-profile__meta{margin:0 0 var(--space-1);color:var(--color-text);font-size:var(--font-size-sm);gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.coach-profile__section{margin-bottom:var(--space-8)}.coach-profile__section h2{margin:0 0 var(--space-3);font-size:var(--font-size-xl);color:var(--color-text-strong);font-weight:600}@media (width<=960px){.filters{padding:var(--space-4)}.filters__row{gap:var(--space-1);grid-template-columns:1fr}.coach-profile__header{gap:var(--space-5);grid-template-columns:120px 1fr}.coach-profile__avatar{width:120px;height:120px}}@media (width<=640px){.coach-profile__header{text-align:center;grid-template-columns:1fr;justify-items:center}.coach-profile__meta{justify-content:center}.filters__actions{flex-direction:column-reverse;align-items:stretch}.filters__actions>*{width:100%}.games-search__controls{flex-direction:column;align-items:stretch}.games-search__controls>*{width:100%}}@media (width<=480px){.coach-profile__avatar{width:96px;height:96px}}.page--auth{min-height:calc(100dvh - 72px);padding-top:var(--space-8);padding-bottom:var(--space-8);background:radial-gradient(circle at 14% 12%, color-mix(in srgb, var(--color-primary) 15%, transparent), transparent 30%), radial-gradient(circle at 86% 82%, #22d3ee14, transparent 28%), var(--color-bg);place-items:center;display:grid}.auth-shell{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);width:min(100%,460px);min-height:0;display:block;overflow:hidden;box-shadow:0 24px 70px #00000061}.auth-showcase{isolation:isolate;justify-content:space-between;gap:var(--space-10);min-width:0;padding:var(--space-10);border-right:1px solid var(--color-border);background:linear-gradient(145deg, color-mix(in srgb, var(--color-primary) 18%, #080808), #080808 58%), var(--color-bg-elevated);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-showcase:before,.auth-showcase:after{z-index:-1;content:"";border-radius:var(--radius-full);pointer-events:none;position:absolute}.auth-showcase:before{border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);width:340px;height:340px;box-shadow:0 0 0 70px color-mix(in srgb, var(--color-primary) 5%, transparent), 0 0 0 140px color-mix(in srgb, var(--color-primary) 3%, transparent);top:-120px;right:-120px}.auth-showcase:after{filter:blur(55px);background:#22d3ee14;width:160px;height:160px;bottom:12%;right:12%}.auth-card__brand{align-items:center;gap:var(--space-3);color:var(--color-text-strong);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800;display:inline-flex}.auth-card__logo{object-fit:contain;width:42px;height:42px}.auth-showcase__content{gap:var(--space-5);max-width:470px;display:grid}.auth-showcase__eyebrow,.auth-card__eyebrow{color:var(--color-primary-hover);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.auth-showcase h2{max-width:12ch;color:var(--color-text-strong);font-size:clamp(var(--font-size-4xl), 4vw, var(--font-size-5xl));letter-spacing:var(--letter-spacing-tight);margin:0;line-height:1.05}.auth-showcase__content>p{max-width:48ch;color:var(--color-text-muted);font-size:var(--font-size-md);line-height:var(--line-height-relaxed);margin:0}.auth-benefits{gap:var(--space-3);margin:var(--space-2) 0 0;padding:0;list-style:none;display:grid}.auth-benefits li{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb, var(--color-text-strong) 9%, transparent);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-text-strong) 4%, transparent);grid-template-columns:42px minmax(0,1fr);display:grid}.auth-benefits svg{width:22px;height:22px;color:var(--color-primary-hover);margin:auto}.auth-benefits span{color:var(--color-text-muted);font-size:var(--font-size-xs);gap:2px;display:grid}.auth-benefits strong{color:var(--color-text-strong);font-size:var(--font-size-sm)}.auth-showcase__footer,.auth-panel__footer{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin:0}.auth-panel{min-width:0;padding:clamp(var(--space-8), 6vw, var(--space-10));background:var(--color-surface);flex-direction:column;justify-content:center;gap:0;display:flex}.auth-panel__mobile-brand{display:none}.auth-card{gap:var(--space-8);width:100%;max-width:360px;margin:auto;display:grid}.page--auth .page__container--narrow{justify-content:center;width:100%;display:flex}.page--auth .page__container--narrow .auth-card{padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface)}.auth-card__header{gap:var(--space-2);display:grid}.auth-card__title{color:var(--color-text-strong);font-size:clamp(var(--font-size-2xl), 4vw, var(--font-size-3xl));font-weight:750;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);margin:0}.auth-card__subtitle{max-width:34ch;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin:0}.auth-card__body{gap:var(--space-4);display:grid}.auth-card__body--centered{place-items:center}.auth-google-button{border-color:color-mix(in srgb, var(--color-primary) 36%, var(--color-border));background:var(--color-text-strong);min-height:50px;color:var(--color-inverse-text);font-size:var(--font-size-base)}.auth-google-button:hover:not(:disabled){border-color:var(--color-primary-hover);color:var(--color-inverse-text);background:#f1f1f1}.auth-security-note{gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border);grid-template-columns:20px minmax(0,1fr);align-items:start;display:grid}.auth-security-note svg{width:18px;height:18px;color:var(--color-primary-hover)}.auth-security-note p{color:var(--color-text-subtle);font-size:var(--font-size-xs);line-height:var(--line-height-base);margin:0}@media (width<=52rem){.page--auth{min-height:auto;padding-top:var(--space-6);align-items:start}.auth-shell{width:min(100%,500px);min-height:0;display:block}.auth-showcase{display:none}.auth-panel{gap:var(--space-7);padding:var(--space-8)}.auth-panel__mobile-brand{display:block}.auth-card{max-width:none}}@media (width<=30rem){.page--auth{padding:var(--space-4)}.auth-shell{border-radius:var(--radius-lg)}.auth-panel{padding:var(--space-6) var(--space-5)}.auth-card__title{font-size:var(--font-size-3xl)}}.page--coach-profile .page__container{max-width:var(--layout-max-width)}.coach-hero{gap:var(--space-6);padding:var(--space-6);margin-bottom:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.coach-hero__identity{grid-template-columns:var(--coach-avatar-size) minmax(0, 1fr);gap:var(--space-5);align-items:center;min-width:0;display:grid}.coach-hero__avatar{width:var(--coach-avatar-size);height:var(--coach-avatar-size);border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);object-fit:cover}.coach-hero__avatar--placeholder{font-weight:700;font-size:var(--font-size-3xl);color:var(--color-text-muted);justify-content:center;align-items:center;display:flex}.coach-hero__body{gap:var(--space-2);align-content:start;min-width:0;display:grid}.coach-hero__kicker{color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.coach-hero__name{font-size:var(--font-size-3xl);letter-spacing:0;color:var(--color-text-strong);margin:0;font-weight:800;line-height:1.1}.coach-hero__meta{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.coach-hero__meta span+span:before{content:"·";margin-right:var(--space-2);color:var(--color-text-subtle)}.coach-hero__rating-row{align-items:center;gap:var(--space-2);display:flex}.coach-hero__review-count{color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:0;font-weight:700}.coach-hero__booking{min-width:var(--coach-booking-min-width);justify-content:flex-end;align-items:center;gap:var(--space-4);display:flex}.coach-hero__price{justify-content:flex-end;align-items:baseline;gap:var(--space-1);text-align:right;flex-wrap:wrap;display:flex}.coach-hero__price span{width:100%;color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.coach-hero__price strong{color:var(--color-text-strong);font-size:var(--font-size-2xl);line-height:1.1}.coach-hero__price small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.coach-hero__cta{width:auto;min-height:calc(var(--space-10) + var(--space-1));margin:0;font-weight:700}.coach-hero__offers{padding-top:var(--space-4);border-top:1px solid var(--color-border);grid-column:1/-1;display:block}.coach-hero__offer-list{align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.coach-hero__game-pill{align-items:center;gap:var(--space-2);min-height:var(--space-8);padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid color-mix(in srgb, var(--game-accent,var(--color-primary)) 34%, var(--color-border));color:var(--color-text);font-size:var(--font-size-xs);flex-wrap:wrap;font-weight:700;text-decoration:none;display:inline-flex}.coach-hero__game-pill>span{color:var(--color-text-muted);font-weight:600}.coach-section{padding:var(--space-6) 0;margin-bottom:var(--space-6);border-top:1px solid var(--color-border);background:0 0}.coach-section--about{gap:var(--space-4);display:grid}.coach-section__header{gap:var(--space-1);flex-direction:column;display:flex}.coach-section h2{margin:0 0 var(--space-3);font-size:var(--font-size-2xl);color:var(--color-text-strong);font-weight:800}.coach-section__header h2{margin:0}.coach-section p{color:var(--color-text);line-height:var(--line-height-relaxed);margin:0}.coach-about{gap:var(--space-4);display:grid}.coach-about__bio{max-width:76ch;font-size:var(--font-size-base);color:var(--color-text-strong)}.coach-about__availability{gap:var(--space-1);display:grid}.coach-about__availability strong{color:var(--color-text-strong);font-weight:700}.coach-about__footer{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.coach-about__label{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700;display:block}.coach-tab-header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.coach-tab-header h2{color:var(--color-text-strong);font-size:var(--font-size-2xl);margin:0;font-weight:600}.coach-empty-action{justify-items:center;gap:var(--space-4);display:grid}@media (width<=960px){.coach-hero{grid-template-columns:1fr}.coach-hero__booking{justify-content:space-between}.coach-hero__price{text-align:left;justify-content:flex-start}}@media (width<=720px){.coach-hero{padding:var(--space-5);grid-template-columns:1fr}.coach-hero__identity{grid-template-columns:var(--coach-avatar-mobile-size) minmax(0, 1fr);gap:var(--space-4)}.coach-hero__avatar{width:var(--coach-avatar-mobile-size);height:var(--coach-avatar-mobile-size)}.coach-tab-header{flex-direction:column;align-items:flex-start}}@media (width<=480px){.coach-hero{padding:var(--space-4)}.coach-hero__meta{column-gap:var(--space-3);row-gap:var(--space-1)}.coach-hero__meta span+span:before{content:none}.coach-hero__rating-row{row-gap:var(--space-1);flex-wrap:wrap}.coach-hero__booking{flex-direction:column;align-items:stretch;min-width:0}.coach-section{padding:var(--space-5) 0}.coach-about__footer{flex-direction:column;align-items:stretch}}.profile-photo-editor{grid-template-columns:var(--coach-photo-editor-size) minmax(0, 1fr);gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);align-items:start;display:grid}.profile-photo-editor__preview{width:var(--coach-photo-editor-size);aspect-ratio:1;border-radius:var(--radius-full);background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-strong);font-size:var(--font-size-3xl);justify-content:center;align-items:center;font-weight:800;display:flex;overflow:hidden}.profile-photo-editor__preview img{object-fit:cover;width:100%;height:100%}.profile-photo-editor__body{min-width:0}.profile-photo-editor__body h3{margin:0 0 var(--space-1)}@media (width<=640px){.profile-photo-editor{grid-template-columns:1fr}}.game-hero{gap:var(--space-4);padding:var(--space-8);margin-bottom:var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);isolation:isolate;flex-direction:column;justify-content:flex-end;min-height:320px;display:flex;position:relative;overflow:hidden}.game-hero__cover{background-color:var(--color-bg-elevated);z-index:-1;background-position:50%;background-size:cover;position:absolute;inset:0}.game-hero__cover:after{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--color-bg) 10%, transparent) 0%, color-mix(in srgb, var(--color-bg) 45%, transparent) 60%, color-mix(in srgb, var(--color-bg) 85%, transparent) 100%);position:absolute;inset:0}.game-hero__body{z-index:1;gap:var(--space-4);flex-direction:column;max-width:700px;display:flex;position:relative}.game-hero__overlay{z-index:0;pointer-events:none;position:absolute;inset:0}.game-hero__genres{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.game-hero__genre-pill{padding:2px var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);background:color-mix(in srgb, var(--color-bg) 55%, transparent);-webkit-backdrop-filter:var(--glass-blur-light);backdrop-filter:var(--glass-blur-light);border:1px solid;align-items:center;font-weight:600;display:inline-flex}.game-hero__stats{width:min(100%,560px);margin-top:var(--space-3);padding-top:var(--space-4);border-top:1px solid color-mix(in srgb, var(--color-text-strong) 18%, transparent);flex-wrap:wrap;gap:0;display:flex}.game-hero__stat{min-width:120px;padding-right:var(--space-6);margin-right:var(--space-6);border-right:1px solid color-mix(in srgb, var(--color-text-strong) 14%, transparent);flex-direction:column;gap:2px;display:flex}.game-hero__stat:last-child{border-right:0;margin-right:0;padding-right:0}.game-hero__stat-value{font-size:var(--font-size-2xl);color:var(--color-text-strong);text-shadow:0 1px 6px color-mix(in srgb, var(--color-bg) 40%, transparent);font-weight:700}.game-hero__stat-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:color-mix(in srgb, var(--color-text-strong) 70%, transparent)}.game-hero__title{font-size:clamp(1.75rem, 4vw, var(--font-size-5xl));letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong);text-shadow:0 2px 12px color-mix(in srgb, var(--color-bg) 40%, transparent);margin:0;font-weight:700;line-height:1.05}.game-hero__tagline{color:color-mix(in srgb, var(--color-text-strong) 85%, transparent);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);max-width:64ch;text-shadow:0 1px 6px color-mix(in srgb, var(--color-bg) 40%, transparent);margin:0}.game-hero__meta{gap:var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.game-hero__meta-item{padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:2px;display:flex;position:relative;overflow:hidden}.game-hero__meta-item:before{content:"";background:var(--game-accent,var(--color-primary));opacity:.85;height:1px;position:absolute;inset:0 0 auto}.game-hero__meta-item dt{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-muted);font-weight:600}.game-hero__meta-item dd{color:var(--color-text-strong);align-items:center;gap:var(--space-2);margin:0;font-weight:600;display:inline-flex}.game-hero__cta{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.game-hero__rating{top:var(--space-4);right:var(--space-4);align-items:center;gap:var(--space-1);padding:4px var(--space-3);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-bg) 70%, transparent);font-size:var(--font-size-sm);color:var(--color-warning);border:1px solid var(--color-border-strong);z-index:2;font-weight:700;display:inline-flex;position:absolute}.game-hero__chips{bottom:var(--space-4);left:var(--space-4);gap:var(--space-2);z-index:2;flex-wrap:wrap;display:flex;position:absolute}.game-hero__chip{padding:2px var(--space-3);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-bg) 60%, transparent);border:1px solid var(--color-border);font-size:var(--font-size-xs);color:var(--color-text);align-items:center;font-weight:500;display:inline-flex}.game-related{gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border);display:grid}.game-related h2{color:var(--color-text-strong);font-size:var(--font-size-2xl);margin:0;font-weight:700}.game-related__links{gap:var(--space-3);flex-wrap:wrap;display:flex}.game-info{max-width:960px;margin-bottom:var(--space-7);padding-bottom:var(--space-7);border-bottom:1px solid var(--color-border)}.game-info h2{margin:0 0 var(--space-3);color:var(--color-text-strong);font-size:var(--font-size-2xl)}.game-info>p{max-width:82ch}.game-catalog{gap:var(--space-4);display:grid}.game-tabs__search{max-width:520px;margin:0 0 var(--space-2)}.game-details-disclosure{margin-top:var(--space-5);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.game-details-disclosure summary{padding:var(--space-4) 0;color:var(--color-text-strong);cursor:pointer;font-weight:600}.game-details-disclosure__grid{gap:var(--space-4);padding:0 0 var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.game-details-disclosure__grid div{min-width:0}.game-details-disclosure__grid dt{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.game-details-disclosure__grid dd{color:var(--color-text);overflow-wrap:anywhere;margin:0}@media (width<=720px){.game-hero{padding:var(--space-6);min-height:220px}.game-hero__meta{gap:var(--space-2)}.game-hero__stat{min-width:100px;padding-right:var(--space-4);margin-right:var(--space-4)}}@media (width<=480px){.game-hero{padding:var(--space-4);min-height:200px}.game-hero__cta{flex-direction:column;align-items:stretch;width:100%}.game-hero__cta>*{width:100%}.game-related__links{display:grid}.game-details-disclosure__grid{gap:var(--space-3);grid-template-columns:1fr}.game-related__links .button{width:100%;height:auto;min-height:var(--control-touch-target);padding-block:var(--space-2);line-height:var(--line-height-snug);text-align:center;white-space:normal}}.course-detail-hero{margin-bottom:var(--space-10);padding:0 0 var(--space-8);border-bottom:1px solid var(--color-border);color:var(--color-text);position:relative}.course-detail-hero__topline{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.course-detail-hero__back{color:var(--color-text-muted);font-size:var(--font-size-sm);text-decoration:none}.course-detail-hero__back:hover{color:var(--color-text-strong)}.course-detail-hero__grid{gap:var(--space-8);grid-template-columns:288px minmax(0,1fr);align-items:center;display:grid}.course-detail-hero__cover{aspect-ratio:16/9;border-radius:var(--radius-md);background:var(--color-bg-elevated);border:1px solid var(--color-border);overflow:hidden}.course-detail-hero__cover .image-placeholder{border-radius:var(--radius-md);width:100%;height:100%}.course-detail-hero__body{gap:var(--space-4);flex-direction:column;display:flex}.course-detail-hero__eyebrow{align-items:center;gap:var(--space-2);padding:2px var(--space-3);border-radius:var(--radius-full);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;align-self:flex-start;font-weight:600;display:inline-flex}.course-detail-hero__title{font-size:clamp(var(--font-size-2xl), 3vw, var(--font-size-4xl));letter-spacing:var(--letter-spacing-tight);color:var(--color-text-strong);margin:0;font-weight:700}.course-detail-hero__meta{align-items:center;gap:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-base);flex-wrap:wrap;display:flex}.course-detail-hero__price{font-size:var(--font-size-2xl);color:var(--color-text-strong);font-weight:700}.course-detail-hero__sep{color:var(--color-border-strong)}.course-detail-hero__actions{margin-top:var(--space-2);gap:var(--space-3);flex-wrap:wrap;display:flex}.course-detail__section{margin-bottom:var(--space-8)}.course-detail__section-header{justify-content:space-between;align-items:flex-end;gap:var(--space-5);margin-bottom:var(--space-5);display:flex}.course-detail__section-eyebrow{margin-bottom:var(--space-2);color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:700;display:block}.course-detail__section-header h2{color:var(--color-text-strong);font-size:var(--font-size-2xl);margin:0;font-weight:650}.course-detail__section-meta{color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap}.course-detail__description{max-width:72ch;margin:var(--space-10) 0 0;padding-top:var(--space-6);border-top:1px solid var(--color-border)}.course-detail__description-label{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:700;display:block}.course-detail__description p{max-width:68ch;color:var(--color-text);line-height:var(--line-height-relaxed);margin:0}.course-detail__section>h2{margin:0 0 var(--space-3);font-size:var(--font-size-xl);color:var(--color-text-strong);font-weight:600}.course-detail__section>p{color:var(--color-text);line-height:var(--line-height-relaxed);margin:0}.lesson-list{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.lesson-list__item{gap:var(--space-4);padding:var(--space-6) 0;border:0;border-top:1px solid var(--color-border);background:0 0;grid-template-columns:1fr auto;align-items:start;display:grid}.course-detail-hero__cover-image{object-fit:cover;width:100%;height:100%;display:block}.lesson-list__section{margin:0 0 var(--space-1);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-muted);font-weight:600}.lesson-list__title{font-size:var(--font-size-base);color:var(--color-text-strong);align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;font-weight:600;display:flex}.lesson-list__badge{padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--color-ok-soft);color:var(--color-ok);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;align-items:center;font-weight:600;display:inline-flex}.lesson-list__description{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.lesson-list__meta{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;font-weight:500}.course-detail__timestamps{color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:right}@media (width<=960px){.course-detail-hero__grid{gap:var(--space-5);grid-template-columns:240px 1fr}}@media (width<=720px){.course-detail-hero__grid{grid-template-columns:1fr}.course-detail-hero__cover{max-width:420px}.course-detail__section-header{align-items:flex-start;gap:var(--space-2);flex-direction:column}.lesson-list__item{grid-template-columns:1fr}.lesson-list__meta{align-self:flex-start}}@media (width<=480px){.course-detail-hero{padding-bottom:var(--space-5)}.course-detail-hero__topline{margin-bottom:var(--space-4)}.course-detail-hero__title,.course-detail-hero__price{font-size:var(--font-size-xl)}.lesson-list__item{padding:var(--space-3)}}.lesson-list__videos{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.lesson-list__video{gap:var(--space-2);display:grid}.lesson-list__video--expanded{gap:var(--space-2);grid-column:1/-1;display:grid}.lesson-list__video-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.lesson-list__video-label{color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;margin:0;font-weight:700}.lesson-list__video-close{appearance:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-weight:600;transition:color .12s,background-color .12s}.lesson-list__video-close:hover,.lesson-list__video-close:focus-visible{color:var(--color-text-strong);background:var(--color-bg-elevated);outline:none}.lesson-list__video-player{aspect-ratio:16/9;border-radius:var(--radius-sm);background:var(--color-bg);width:100%;max-height:min(60vh,480px);display:block}.lesson-list__video-skeleton{gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);display:grid}.lesson-list__video-skeleton .skeleton{border-radius:var(--radius-md);width:100%;height:clamp(160px,30vw,360px);display:block}.lesson-list__video-tile{aspect-ratio:16/9;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);cursor:pointer;width:100%;padding:0;transition:transform .16s,border-color .16s,box-shadow .16s;display:block;position:relative;overflow:hidden}.lesson-list__video-tile:hover,.lesson-list__video-tile:focus-visible{border-color:var(--color-border-strong);box-shadow:var(--shadow-sm);outline:none}.lesson-list__video-tile:hover .lesson-list__video-tile-overlay,.lesson-list__video-tile:focus-visible .lesson-list__video-tile-overlay{background:linear-gradient(#00000059 0%,#0000008c 100%)}.lesson-list__video-tile:hover .lesson-list__video-tile-image:not(.lesson-list__video-tile-image--placeholder),.lesson-list__video-tile:focus-visible .lesson-list__video-tile-image:not(.lesson-list__video-tile-image--placeholder){transform:scale(1.02)}.lesson-list__video-tile-image{object-fit:cover;width:100%;height:100%;transition:transform .24s;position:absolute;inset:0}.lesson-list__video-tile-image--placeholder{background:linear-gradient(135deg, var(--color-bg) 0%, var(--color-bg-elevated) 100%)}.lesson-list__video-tile-overlay{justify-content:center;align-items:center;gap:var(--space-2);color:#fff;font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;pointer-events:none;background:linear-gradient(#0003 0%,#00000073 100%);font-weight:600;transition:background .2s;display:flex;position:absolute;inset:0}.lesson-list__video-tile-play{width:36px;height:36px;font-size:var(--font-size-sm);background:#0000008c;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:inline-flex}@media (width<=480px){.lesson-list__videos{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.page--bookings .page-header__actions svg{flex:0 0 18px;width:18px;height:18px}.bookings-panel{gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);flex-direction:column;display:flex}.bookings-panel__toolbar{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.bookings-filter{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;display:inline-flex}.bookings-filter__select{min-width:180px}.booking-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.booking-list__item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:border-color var(--transition-fast);overflow:hidden}.booking-list__item:hover{border-color:var(--color-border-hover)}.bookings-pagination{justify-content:center;align-items:center;gap:var(--space-4);padding-top:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600;display:flex}.booking-list__link{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);color:inherit;text-decoration:none;display:flex}.booking-list__main{gap:var(--space-1);flex-direction:column;flex:auto;min-width:0;display:flex}.booking-list__date{font-weight:600;font-size:var(--font-size-base);color:var(--color-text-strong);margin:0}.booking-list__meta{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.booking-list__notes{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:var(--space-1) 0 0;text-overflow:ellipsis;white-space:nowrap;font-style:italic;overflow:hidden}.booking-detail__grid{gap:var(--space-4);margin:var(--space-5) 0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.booking-detail__grid>div{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.booking-detail__grid dt{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-1)}.booking-detail__grid dd{margin:0;font-weight:600}.booking-detail__notes{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.booking-detail__notes h2{font-size:var(--font-size-base);margin:0 0 var(--space-2)}.booking-detail__actions{gap:var(--space-2);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.form__summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-2) 0}.form__summary-title{margin:0 0 var(--space-3);font-size:var(--font-size-base);color:var(--color-text);font-weight:600}.form__summary-list{margin:0 0 var(--space-3);gap:var(--space-2);grid-template-columns:1fr;display:grid}.form__summary-list>div{justify-content:space-between;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);display:flex}.form__summary-list>div:last-child{border-bottom:0}.form__summary-list dt{color:var(--color-text-muted);font-size:var(--font-size-sm)}.form__summary-list dd{color:var(--color-text);margin:0;font-weight:600}.form__actions{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=640px){.form__actions{flex-direction:column-reverse;align-items:stretch}.form__actions>*{width:100%}.form__summary-list>div{gap:var(--space-1);flex-direction:column}}@media (width<=720px){.bookings-panel{padding:var(--space-3)}.bookings-panel__toolbar{justify-content:flex-start;align-items:stretch}.bookings-filter,.bookings-filter__select{width:100%}.booking-list__link{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);flex-direction:column}.booking-list__notes{white-space:normal}.booking-detail__grid{gap:var(--space-3);grid-template-columns:1fr}.booking-detail__actions{flex-direction:column;align-items:stretch}.booking-detail__actions>*{width:100%}.bookings-pagination{gap:var(--space-2);justify-content:space-between}}@media (width<=480px){.booking-detail__notes{padding:var(--space-3)}}.booking-slots{gap:var(--space-2);display:grid}.booking-slots>div{gap:var(--space-2);flex-wrap:wrap;display:flex}.session-workspace{gap:var(--space-4);margin-top:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);display:grid}.session-workspace>header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.session-workspace h2,.session-workspace h3,.session-workspace h4{margin:0}.session-workspace__grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.session-workspace__readout{align-content:start;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid}.session-workspace__attendance{padding-top:var(--space-3);border-top:1px solid var(--color-border)}@media (width<=48rem){.session-workspace__grid{grid-template-columns:1fr}.session-workspace>header{flex-direction:column;align-items:flex-start}}.course-card{gap:var(--space-3);border-color:color-mix(in srgb, var(--color-primary) 22%, var(--color-border));min-height:270px;color:var(--color-text);transition:border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;justify-content:space-between;padding:0;text-decoration:none;display:flex;position:relative;overflow:hidden}.course-card:hover{border-color:color-mix(in srgb, var(--color-primary) 52%, var(--color-border));box-shadow:0 16px 34px color-mix(in srgb, var(--color-primary) 14%, transparent);transform:translateY(-3px)}.course-card__art{aspect-ratio:16/9;background:radial-gradient(circle at 78% 18%, #22d3ee57, transparent 34%), linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 92%, #111827), #161d45 72%);place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.course-card__art--cover{background:var(--color-bg-elevated)}.course-card__cover{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-fast);position:absolute;inset:0}.course-card:hover .course-card__cover{transform:scale(1.03)}.course-card__art-grid{opacity:.28;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000,#0000 72%);mask-image:linear-gradient(135deg,#000,#0000 72%)}.course-card__play{border-radius:var(--radius-full);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff26;border:1px solid #fff6;place-items:center;width:48px;height:48px;padding-left:3px;font-size:1rem;display:grid;position:relative}.course-card__art-label{right:var(--space-3);bottom:var(--space-3);color:#ffffffc2;letter-spacing:.14em;font-size:.62rem;font-weight:800;position:absolute}.course-card:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.course-card__header{padding:var(--space-4) var(--space-4) 0;justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.course-card__title{color:var(--color-text-strong);overflow-wrap:anywhere;margin:0}.course-card__price{color:var(--color-primary);flex:none;font-weight:700}.course-card__meta{padding:0 var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.course-card__cta{padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);color:var(--color-primary);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;margin-top:auto;font-weight:700;display:flex}@media (width<=720px){.course-card{gap:var(--space-2);min-height:248px;padding:0}.course-card__header{gap:var(--space-2);flex-direction:column}.course-card__title{font-size:var(--font-size-sm)}.course-card__meta,.course-card__price{font-size:var(--font-size-xs)}}.course-detail__cover{border-radius:var(--radius-lg);width:100%;max-width:720px;height:auto;margin:var(--space-4) 0;object-fit:cover;border:1px solid var(--color-border);display:block}.course-detail__meta{color:var(--color-text-muted);margin:var(--space-2) 0 0}.course-detail__section{margin-top:var(--space-5)}.page--progress .page__container{max-width:960px}.profile-edit-form{gap:var(--space-5);display:grid}.player-games{gap:var(--space-3);margin:var(--space-4) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.player-games__item{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.player-games__main{align-items:center;gap:var(--space-3);min-width:0;display:flex}.player-games__media{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 16%, transparent), transparent), var(--color-bg-elevated);width:44px;height:44px;color:var(--color-text-strong);font-size:var(--font-size-base);flex:0 0 44px;justify-content:center;align-items:center;font-weight:900;display:inline-flex;overflow:hidden}.player-games__media img{object-fit:cover;width:100%;height:100%;display:block}.player-games__main span{flex-direction:column;gap:2px;min-width:0;display:flex}.player-games__main strong{color:var(--color-text-strong);font-size:var(--font-size-sm)}.player-games__main small{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:700}.profile-overview{margin-bottom:0}.profile-account{justify-content:center;align-items:center;gap:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:center;display:flex}.profile-photo-editor__preview{border-radius:var(--radius-full);background:radial-gradient(circle at 35% 20%, color-mix(in srgb, var(--color-primary) 34%, transparent), transparent 58%), var(--color-bg);border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));width:104px;height:104px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-primary) 8%, transparent);position:relative;overflow:visible}.profile-photo-editor__preview img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.profile-photo-editor__empty,.profile-photo-editor__action{justify-content:center;align-items:center;display:inline-flex}.profile-photo-editor__empty{width:100%;height:100%;color:color-mix(in srgb, var(--color-text-strong) 70%, transparent);border-radius:inherit}.profile-photo-editor__empty svg{width:34px;height:34px}.profile-photo-editor__action{z-index:1;border-radius:var(--radius-full);border:1px solid color-mix(in srgb, var(--color-primary) 42%, var(--color-border));background:color-mix(in srgb, var(--color-bg) 88%, transparent);width:36px;height:36px;color:var(--color-text-strong);cursor:pointer;-webkit-backdrop-filter:var(--glass-blur-md);backdrop-filter:var(--glass-blur-md);position:absolute;top:-8px;right:-8px}.profile-photo-editor__action input{opacity:0;pointer-events:none;block-size:1px;inline-size:1px;position:absolute}.profile-photo-editor__action svg{width:17px;height:17px}.profile-account__body,.profile-account-card__body{min-width:0}.profile-account__body{justify-items:center;display:grid}.profile-account-card__body{gap:var(--space-2);justify-items:start;display:grid}.profile-username-display{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.profile-username-display strong{color:var(--color-text-strong);font-size:1.75rem;font-weight:900;line-height:1.1}.profile-username-display__edit{border:1px solid color-mix(in srgb, var(--color-primary) 34%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-primary) 12%, transparent);width:36px;height:36px;color:var(--color-text-strong);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.profile-username-display__edit:hover:not(:disabled){background:color-mix(in srgb, var(--color-primary) 22%, transparent);border-color:color-mix(in srgb, var(--color-primary) 52%, var(--color-border))}.profile-username-display__edit:disabled{cursor:not-allowed;opacity:.6}.profile-username-display__edit svg{width:17px;height:17px}.profile-username-field{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);width:min(100%,360px);display:grid}.profile-username-editor{align-items:center;gap:var(--space-2);width:100%;max-width:480px;display:flex}.profile-username-field>span{color:var(--color-primary);font-size:1.65rem;font-weight:900;line-height:1}.profile-username-field--editing .form__input{height:42px;font-size:var(--font-size-base);font-weight:700}.profile-username-editor__actions{align-items:center;gap:var(--space-1);flex:none;display:inline-flex}.profile-username-editor__button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);width:38px;height:38px;color:var(--color-text-muted);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.profile-username-editor__button svg{width:18px;height:18px}.profile-username-editor__button--ok{color:var(--color-ok);border-color:color-mix(in srgb, var(--color-ok) 42%, var(--color-border));background:color-mix(in srgb, var(--color-ok) 10%, transparent)}.profile-username-editor__button--ok:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-ok) 62%, var(--color-border));background:color-mix(in srgb, var(--color-ok) 18%, transparent)}.profile-username-editor__button--cancel{color:var(--color-ko)}.profile-username-editor__button--cancel:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-ko) 52%, var(--color-border));background:color-mix(in srgb, var(--color-ko) 12%, transparent)}.profile-username-editor__button:disabled{cursor:not-allowed;opacity:.6}.player-games__actions{align-items:center;gap:var(--space-2);display:inline-flex}.player-games__icon-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;display:inline-flex}.player-games__icon-button svg{width:18px;height:18px}.player-games__icon-button--active{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 48%, var(--color-border));background:color-mix(in srgb, var(--color-warning) 14%, transparent)}.player-games__icon-button--danger{color:var(--color-ko)}.player-games__icon-button--danger:hover{border-color:color-mix(in srgb, var(--color-ko) 52%, var(--color-border));background:color-mix(in srgb, var(--color-ko) 12%, transparent)}.progress-summary{gap:var(--space-3);margin:var(--space-4) 0;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.progress-summary__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);flex-direction:column;align-items:flex-start;display:flex}.progress-summary__value{color:var(--color-text-strong);letter-spacing:var(--letter-spacing-tight);font-size:2rem;font-weight:700}.progress-summary__label{color:var(--color-text-muted);font-size:var(--font-size-sm)}.progress-entries{margin-top:var(--space-5)}.progress-entry-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.progress-entry{justify-content:space-between;align-items:flex-start;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);transition:border-color var(--transition-fast);display:flex}.progress-entry:hover{border-color:var(--color-border-hover)}.progress-entry__main{flex:auto;min-width:0}.progress-entry__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.progress-entry__date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.progress-entry__title{font-size:var(--font-size-base);margin:0 0 var(--space-1);color:var(--color-text-strong);font-weight:600}.progress-entry__description{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:var(--space-1) 0 0}.progress-entry__actions{gap:var(--space-1);flex-direction:column;flex:none;display:flex}.button--danger-text{color:var(--color-ko);border-color:var(--color-ko)}.button--danger-text:hover{background:var(--color-ko-soft)}.form--inline{margin-top:var(--space-4)}.form--inline .form__row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.form--inline .form__group--grow{grid-column:span 2}@media (width<=960px){.progress-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}@media (width<=720px){.profile-account{text-align:center;flex-direction:column}.profile-account__body{width:100%}.profile-account-card__body{justify-items:center}.profile-username-field{grid-template-columns:auto minmax(0,1fr);width:100%}.profile-username-editor{max-width:100%}.lesson-list__item{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);flex-direction:column}.progress-entry{gap:var(--space-3);flex-direction:column;align-items:stretch}.progress-entry__actions{flex-flow:wrap}.form--inline .form__group--grow{grid-column:span 1}}@media (width<=480px){.player-games__item{padding:var(--space-3);gap:var(--space-2)}.player-games__media{flex-basis:40px;width:40px;height:40px}.progress-summary,.form--inline .form__row{grid-template-columns:1fr}.progress-entry{padding:var(--space-3)}}.lesson-manager{margin-top:var(--space-6);padding:var(--space-6)}.lesson-manager__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.lesson-manager__header h2{margin:0 0 var(--space-1);font-size:var(--font-size-xl);color:var(--color-text-strong);font-weight:600}.lesson-manager__header p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.lesson-manager__empty{padding:var(--space-6);background:var(--color-surface);border-radius:var(--radius-md);border:1px dashed var(--color-border);text-align:center}.lesson-manager__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.lesson-row{gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast);grid-template-columns:32px 1fr auto;align-items:center;display:grid}.lesson-row:hover{border-color:var(--color-border-hover)}.lesson-row--busy{opacity:.6;pointer-events:none}.lesson-row__num{color:var(--color-text-muted);font-weight:700}.lesson-row__body{min-width:0}.lesson-row__title{color:var(--color-text-strong);margin:0;font-weight:600}.lesson-row__meta{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.lesson-row__actions{gap:var(--space-1);flex-wrap:wrap;justify-content:flex-end;display:flex}.course-edit-form{padding:var(--space-6);margin-bottom:var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.course-cover-editor{gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(240px,.9fr) minmax(280px,1.1fr);align-items:center;display:grid}.course-cover-editor__preview{aspect-ratio:16/9;border:1px solid var(--color-border-hover);border-radius:var(--radius-lg);background:radial-gradient(circle at 78% 18%, color-mix(in srgb, var(--color-primary) 22%, transparent), transparent 32%), var(--color-bg);place-items:center;min-width:0;display:grid;overflow:hidden}.course-cover-editor__preview img{object-fit:cover;width:100%;height:100%}.course-cover-editor__empty{border:1px solid color-mix(in srgb, var(--color-primary) 32%, var(--color-border));border-radius:var(--radius-full);background:var(--color-primary-soft);width:58px;height:58px;color:var(--color-primary-hover);place-items:center;display:grid}.course-cover-editor__empty svg{width:28px;height:28px}.course-cover-editor__body{gap:var(--space-5);min-width:0;display:grid}.course-cover-editor__body h2{margin:0 0 var(--space-2);color:var(--color-text-strong);font-size:var(--font-size-xl)}.course-cover-editor__body p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.course-cover-editor__body .form__group{margin:0}.course-edit-form__row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.course-edit-form__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.coach-profile-editor{gap:var(--layout-gap-lg);display:grid}.page--coach-dashboard .page__container{max-width:1180px}.page--coach-dashboard .page-header{padding:clamp(var(--space-5), 4vw, var(--space-8));border:1px solid color-mix(in srgb, var(--color-primary) 34%, var(--color-border));border-radius:var(--radius-lg);background:radial-gradient(circle at 88% 0%, color-mix(in srgb, var(--color-primary) 22%, transparent), transparent 32%), var(--color-surface)}.coach-editor-panel{gap:var(--layout-gap-md);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(135deg, color-mix(in srgb, var(--color-primary) 5%, var(--color-surface)), var(--color-surface) 58%);box-shadow:0 12px 30px color-mix(in srgb, var(--color-primary) 7%, transparent);display:grid}.coach-editor-panel__header{gap:var(--space-1);display:grid}.coach-editor-panel__header h2{color:var(--color-text-strong);font-size:var(--font-size-xl);margin:0;line-height:1.2}.coach-editor-panel__header--split{align-items:start;gap:var(--layout-gap-md);grid-template-columns:minmax(0,1fr) auto}.coach-editor-panel__count{min-height:var(--control-height-sm);padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--color-primary-soft);color:var(--color-text-strong);font-size:var(--font-size-xs);justify-self:end;align-items:center;display:inline-flex}.coach-editor-fields{gap:var(--layout-gap-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.coach-editor-fields__wide{grid-column:1/-1;min-width:0}.coach-offer-grid{gap:var(--layout-gap-md);display:grid}.coach-add-game{gap:var(--layout-gap-xs);padding-top:var(--layout-gap-sm);display:grid}.coach-editor-savebar{justify-content:space-between;align-items:center;gap:var(--layout-gap-md);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg-elevated) 84%, transparent);display:flex}.coach-editor-savebar span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.coach-offer-row{--game-accent:var(--color-primary);gap:var(--layout-gap-md);padding:var(--space-4);border:1px solid color-mix(in srgb, var(--game-accent) 28%, var(--color-border));border-radius:var(--radius-lg);background:color-mix(in srgb, var(--color-bg) 90%, var(--game-accent) 10%);display:grid;box-shadow:inset 0 1px #ffffff0d}.coach-offer-row__header{justify-content:space-between;align-items:center;gap:var(--layout-gap-md);padding:var(--space-3);border:1px solid color-mix(in srgb, var(--game-accent) 34%, var(--color-border));border-radius:var(--radius-md);background:linear-gradient(90deg, color-mix(in srgb, var(--game-accent) 16%, var(--color-surface)), var(--color-surface));margin-bottom:0;display:flex}.coach-offer-row__fields{gap:var(--layout-gap-sm);grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;display:grid}.coach-offer-row__tags{grid-column:1/-1;min-width:0}.coach-offer-row__game{align-items:center;gap:var(--space-3);grid-template-columns:48px minmax(0,1fr);min-width:0;display:grid}.coach-offer-row__thumb{border-radius:var(--radius-md);border:1px solid color-mix(in srgb, var(--game-accent) 46%, var(--color-border));background:color-mix(in srgb, var(--game-accent) 18%, var(--color-bg-elevated));width:48px;height:48px;color:var(--color-text-strong);justify-content:center;align-items:center;font-weight:800;display:inline-flex;overflow:hidden}.coach-offer-row__thumb img{object-fit:cover;width:100%;height:100%;display:block}.coach-offer-row__title-group{flex-direction:column;gap:2px;min-width:0;display:flex}.coach-offer-row__title-group strong{color:var(--color-text-strong);font-size:var(--font-size-lg);overflow-wrap:anywhere;line-height:1.15}.coach-offer-row__title-group small{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:700}.services-list{gap:var(--space-3);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}.services-list__item{gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:1fr auto;align-items:center;display:grid}.services-list__title{margin:0 0 var(--space-1);font-size:var(--font-size-lg);color:var(--color-text-strong);font-weight:600}.services-list__meta{margin:0 0 var(--space-2);color:var(--color-primary);font-weight:600;font-size:var(--font-size-sm)}.services-list__desc{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.services-list__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=640px){.coach-editor-panel{padding:var(--space-4)}.coach-editor-panel__header--split{grid-template-columns:1fr}.coach-editor-panel__count{justify-self:start}.coach-editor-fields,.coach-offer-row__fields{grid-template-columns:1fr}.coach-editor-savebar{flex-direction:column;align-items:stretch}.services-list__item{grid-template-columns:1fr}.services-list__actions{justify-content:flex-start}}@media (width<=480px){.lesson-manager{padding:var(--space-4)}.lesson-manager__header{flex-direction:column;align-items:stretch}.lesson-manager__header .button{width:100%}.lesson-row,.services-list__item{padding:var(--space-3)}.wizard-intro__actions{flex-direction:column;align-items:stretch;width:100%}.wizard-intro__actions>*{width:100%}.wizard-step{padding:var(--space-2);flex:30%}.wizard-step__label{display:none}.course-edit-form{padding:var(--space-4)}.course-cover-editor{grid-template-columns:1fr}.course-edit-form__actions{flex-direction:column;align-items:stretch}.course-edit-form__actions>*{width:100%}.coach-offer-row__header{flex-direction:column;align-items:stretch}.coach-offer-row__header .button{width:100%}}.wizard-steps{align-items:center;gap:var(--space-3);margin:0 0 var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;display:grid}.wizard-step{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.wizard-step__num{border-radius:var(--radius-full);background:var(--color-surface-hover);width:24px;height:24px;color:var(--color-text-muted);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.wizard-step--active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-text-strong)}.wizard-step--active .wizard-step__num{background:var(--color-primary);color:var(--color-on-primary)}.wizard-step--done{color:var(--color-ok);border-color:color-mix(in srgb, var(--color-ok) 60%, var(--color-border));background:color-mix(in srgb, var(--color-ok) 10%, var(--color-surface))}.wizard-step--done .wizard-step__num{background:var(--color-ok);color:var(--color-on-primary)}.wizard-intro__list{padding-left:var(--space-5);color:var(--color-text);gap:var(--space-2);margin:0 0 var(--space-4);flex-direction:column;list-style:outside;display:flex}.wizard-intro__actions{gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.wizard-games{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.wizard-games__load-more{padding:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;grid-column:1/-1}.wizard-game{gap:var(--space-3);min-height:74px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;font:inherit;text-align:left;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);--game-accent:var(--color-primary);grid-template-columns:32px 1fr;align-items:center;display:grid}.wizard-game:hover{border-color:var(--color-primary);background:var(--color-surface-hover);transform:translateY(-1px)}.wizard-game--selected{border-color:var(--game-accent,var(--color-primary));background:color-mix(in srgb, var(--game-accent,var(--color-primary)) 14%, var(--color-surface))}.wizard-game__check{border-radius:var(--radius-md);background:var(--color-surface-hover);width:34px;height:34px;color:var(--color-text-muted);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.wizard-game--selected .wizard-game__check{background:var(--game-accent,var(--color-primary));color:var(--color-on-primary)}.wizard-game__body{flex-direction:column;display:flex}.wizard-game__name{color:var(--color-text-strong);font-weight:600}.wizard-game__genre{color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.search-page__input{max-width:600px;margin-bottom:var(--space-4)}.search-results{gap:var(--space-8);flex-direction:column;display:flex}.search-results__title{margin:0 0 var(--space-3);font-size:var(--font-size-lg);color:var(--color-text-strong);font-weight:600}.search-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.search-card{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text);transition:border-color var(--transition-fast);grid-template-columns:56px 1fr;text-decoration:none;display:grid}.search-card:hover{border-color:var(--color-border-hover)}.search-card__thumb{border-radius:var(--radius-md);background:var(--color-bg-elevated);justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.search-card__thumb img{object-fit:cover;width:100%;height:100%}.search-card__placeholder{color:var(--color-text-muted);font-weight:700;font-size:var(--font-size-lg)}.search-card__thumb--course{background:var(--color-primary);color:var(--color-on-primary)}.search-card__body{min-width:0}.search-card__title{color:var(--color-text-strong);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:600;overflow:hidden}.search-card__subtitle{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.form__textarea{resize:vertical;min-height:80px;font-family:var(--font-sans)}.tournament-card__game,.tournament-hero__game{color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.tournament-filters{gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:minmax(280px,1fr) minmax(220px,.55fr) minmax(190px,.4fr);align-items:end;display:grid}.tournament-filter{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.tournament-filter__label{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.tournament-search{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid}.tournament-search .form__input,.tournament-search .button,.tournament-filter .game-select__button{height:var(--space-12);min-height:var(--space-12)}.tournament-search .form__input{min-width:0}.tournament-filter .game-select__button{padding-block:calc(var(--space-2) - var(--space-1) / 2)}.tournament-filter .game-select__thumb{width:var(--space-8);height:var(--space-8)}.tournament-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tournament-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;transition:border-color var(--transition-fast), background var(--transition-fast);overflow:hidden}.tournament-card:hover{border-color:var(--tournament-accent,var(--color-primary));background:var(--color-surface-hover)}.tournament-card__link{color:inherit;text-decoration:none;display:block}.tournament-card__media{background:var(--color-bg-elevated);border-bottom:2px solid var(--tournament-accent,var(--color-primary));height:168px;position:relative;overflow:hidden}.tournament-card__media img{object-fit:cover;opacity:.72;width:100%;height:100%}.tournament-status{width:fit-content;min-height:26px;padding:0 var(--space-3);border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-bg) 88%, transparent);color:var(--color-text);font-size:var(--font-size-xs);border:1px solid;align-items:center;font-weight:700;display:inline-flex}.tournament-card__media .tournament-status{top:var(--space-3);left:var(--space-3);position:absolute}.tournament-status--open{color:var(--color-ok)}.tournament-status--in_progress{color:var(--color-primary)}.tournament-status--completed{color:var(--color-text-muted)}.tournament-status--cancelled{color:var(--color-ko)}.tournament-card__body{gap:var(--space-2);padding:var(--space-5);flex-direction:column;display:flex}.tournament-card__body h2{color:var(--color-text-strong);font-size:var(--font-size-xl);margin:0;line-height:1.2}.tournament-card__facts{justify-content:space-between;gap:var(--space-3);color:var(--color-text);font-size:var(--font-size-sm);display:flex}.tournament-card__organizer{padding-top:var(--space-2);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-form{gap:var(--space-5);flex-direction:column;display:flex}.tournament-wizard{border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(3,minmax(0,1fr));display:grid;overflow:hidden}.tournament-wizard__step{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4);border:0;border-right:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);text-align:left;display:flex}.tournament-wizard__step:last-child{border-right:0}.tournament-wizard__step span{width:var(--space-7);height:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);flex:none;place-items:center;display:grid}.tournament-wizard__step--active,.tournament-wizard__step--complete{color:var(--color-text-strong)}.tournament-wizard__step--active span,.tournament-wizard__step--complete span{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-text-strong)}.tournament-review{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tournament-review>div{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.tournament-review span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-wizard__actions{justify-content:space-between}.tournament-form__section,.tournament-section,.tournament-action-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-6)}.tournament-form__section h2,.tournament-section h2,.tournament-action-card h2{margin:0 0 var(--space-4);color:var(--color-text-strong);font-size:var(--font-size-xl)}.tournament-form__section{gap:var(--space-4);flex-direction:column;display:flex}.tournament-form__dates,.tournament-form__operations{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tournament-hero{isolation:isolate;min-height:340px;margin-bottom:var(--space-6);border:1px solid var(--tournament-accent,var(--color-border));border-radius:var(--radius-lg);background:var(--color-bg-elevated);align-items:flex-end;display:flex;position:relative;overflow:hidden}.tournament-hero__image,.tournament-hero__overlay{width:100%;height:100%;position:absolute;inset:0}.tournament-hero__image{z-index:-2;object-fit:cover;opacity:.52}.tournament-hero__overlay{z-index:-1;background:color-mix(in srgb, var(--color-bg) 64%, transparent)}.tournament-hero__content{width:min(760px,100%);padding:var(--space-8)}.tournament-hero__content h1{margin:var(--space-3) 0 var(--space-2);font-size:clamp(2.25rem,6vw,4.5rem);line-height:.98}.tournament-hero__content p{color:var(--color-text-muted);margin:0}.tournament-private-toggle>span{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.tournament-private-toggle strong{color:var(--color-text-strong);font-size:var(--font-size-sm)}.tournament-private-toggle small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-access-card{max-width:460px;margin:var(--space-12) auto;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.tournament-access-card h1{margin:var(--space-4) 0 var(--space-2);font-size:var(--font-size-2xl)}.tournament-access-card>p{margin:0 0 var(--space-5);color:var(--color-text-muted)}.tournament-access-card form{gap:var(--space-4);flex-direction:column;display:flex}.tournament-hero__game{margin-top:var(--space-4);color:var(--tournament-accent,var(--color-primary));display:block}.tournament-detail-layout{gap:var(--space-6);grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.tournament-detail-main{gap:var(--space-5);flex-direction:column;min-width:0;display:flex}.tournament-overview{padding:var(--space-5) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.tournament-overview__description{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.tournament-overview__description h2{margin:0 0 var(--space-3);color:var(--color-text-strong);font-size:var(--font-size-xl)}.tournament-view-tabs{margin-bottom:0}.tournament-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.tournament-facts>div{gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-4);flex-direction:column;display:flex}.tournament-facts>div+div{border-left:1px solid var(--color-border)}.tournament-facts span,.tournament-action-card small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-facts strong{color:var(--color-text-strong)}.tournament-section p,.tournament-action-card p{color:var(--color-text);line-height:var(--line-height-relaxed);margin:0}.tournament-rules{white-space:pre-wrap}.tournament-section__header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.tournament-section__header h2{margin:0}.tournament-section__header>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.tournament-participants{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.tournament-participants li{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.tournament-participants li strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tournament-participants__remove{color:var(--color-text-muted);font-size:var(--font-size-xs);background:0 0;border:0}.tournament-participants__actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.tournament-attendance-select{min-width:0;min-height:var(--space-8);padding:0 var(--space-7) 0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);background-color:var(--color-bg-elevated);color:var(--color-text);font:inherit;font-size:var(--font-size-xs)}.tournament-attendance-select:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.tournament-participants__remove:hover{color:var(--color-ko)}.tournament-participants li>span{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:800}.tournament-participants__avatar{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;width:28px;height:28px}.tournament-participants__avatar--placeholder{border-radius:var(--radius-full);background:var(--glass-bg);width:28px;height:28px;color:var(--color-text-muted);font-size:var(--font-size-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.tournament-action-card{top:calc(56px + var(--space-4));gap:var(--space-4);flex-direction:column;display:flex;position:sticky}.tournament-action-card h2{margin-bottom:0}.tournament-action-card__stack{gap:var(--space-4);flex-direction:column;display:flex}.tournament-action-card__management{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.tournament-guest-form{gap:var(--space-3);flex-direction:column;display:flex}.tournament-action-card__label{color:var(--color-primary);font-size:var(--font-size-2xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.tournament-action-card__closed{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);justify-content:center;font-weight:700;display:flex}@media (width<=960px){.tournament-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-filters{grid-template-columns:1fr 1fr}.tournament-search,.tournament-filter--search{grid-column:1/-1}.tournament-detail-layout{grid-template-columns:1fr}.tournament-action-card{grid-row:1;position:static}}@media (width<=720px){.tournament-filters,.tournament-form__dates,.tournament-form__operations,.tournament-facts,.tournament-participants{grid-template-columns:1fr}.tournament-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-card__body{padding:var(--space-3)}.tournament-hero{min-height:300px}.tournament-hero__content{padding:var(--space-5)}.tournament-overview{padding:var(--space-4)}.tournament-facts>div{padding-inline:0}.tournament-facts>div+div{padding-top:var(--space-3);border-top:1px solid var(--color-border);border-left:0}.tournament-form__section,.tournament-section,.tournament-action-card{padding:var(--space-4)}.tournament-wizard{grid-template-columns:1fr}.tournament-wizard__step{border-right:0;border-bottom:1px solid var(--color-border)}.tournament-wizard__step:last-child{border-bottom:0}.tournament-review{grid-template-columns:1fr}.tournament-participants li{flex-wrap:wrap}.tournament-participants__actions{width:100%;margin-left:calc(var(--space-7) + var(--space-3))}.tournament-attendance-select,.tournament-participants__remove{min-height:var(--space-12)}.tournament-participants__remove{padding-inline:var(--space-3)}}@media (width<=560px){.tournament-grid{grid-template-columns:1fr}}.tournament-section--bracket{padding:0;overflow:hidden}.tournament-bracket__topbar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.tournament-section--bracket-preview .tournament-bracket__topbar{background:color-mix(in srgb, var(--color-primary) 7%, var(--color-surface))}.tournament-bracket__topbar h2{margin:0}.tournament-bracket__topbar p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-sm)}.tournament-bracket__progress{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-shrink:0;font-weight:700}.tournament-bracket__topbar-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.tournament-bracket__fullscreen-button{width:var(--space-9);height:var(--space-9);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg);color:var(--color-text-muted);cursor:pointer;font:inherit;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center;padding:0;display:inline-flex}.tournament-bracket__fullscreen-button svg{width:var(--space-4);height:var(--space-4)}.tournament-bracket__fullscreen-button:hover{border-color:var(--color-border-strong);color:var(--color-text-strong)}.tournament-bracket__fullscreen-button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.tournament-bracket__champion{align-items:center;gap:var(--space-3);margin:var(--space-4) var(--space-5) 0;padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--color-ok) 54%, var(--color-border));border-radius:var(--radius-md);background:var(--color-ok-soft);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.tournament-bracket__champion>span{color:var(--color-ok);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.tournament-bracket__champion>strong{min-width:0;color:var(--color-text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tournament-bracket__champion>small{color:var(--color-text-muted)}.tournament-bracket__round-nav{display:none}.tournament-bracket__viewport{max-height:min(var(--tournament-bracket-viewport-height), var(--tournament-bracket-viewport-max-height));overscroll-behavior:contain;scrollbar-width:thin;overflow:auto}.tournament-bracket__viewport:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(-1 * var(--focus-ring-width))}.tournament-bracket{--bracket-column-gap:var(--space-8);grid-template-columns:repeat(var(--bracket-round-count), minmax(var(--tournament-bracket-column-width), 1fr));grid-auto-rows:minmax(var(--tournament-bracket-row-height), auto);column-gap:var(--bracket-column-gap);width:max-content;min-width:100%;padding:var(--space-4) var(--space-5) var(--space-6);display:grid}.tournament-round,.tournament-round__matches{display:contents}.tournament-round__header{z-index:var(--z-sticky);align-self:start;gap:var(--space-1) var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;display:grid;position:sticky;top:0}.tournament-round__header>span{color:var(--color-primary);font-size:var(--font-size-2xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;grid-column:1/-1;font-weight:800}.tournament-round__header>strong{min-width:0;color:var(--color-text-strong);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tournament-round__header>small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-match-slot{align-items:center;min-width:0;display:flex;position:relative}.tournament-match-slot--outgoing:after,.tournament-match-slot--pair-start:before,.tournament-match-slot__entry{z-index:var(--z-base);pointer-events:none;position:absolute}.tournament-match-slot--outgoing:after{content:"";top:50%;right:calc(-1 * var(--space-4));width:var(--space-4);border-top:1px solid var(--color-border-strong)}.tournament-match-slot--pair-start:before{content:"";top:50%;right:calc(-1 * var(--space-4));border-right:1px solid var(--color-border-strong);height:100%}.tournament-match-slot__entry{top:50%;left:calc(-1 * var(--space-4));width:var(--space-4);border-top:1px solid var(--color-border-strong)}.tournament-match{z-index:var(--z-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);width:100%;position:relative;overflow:hidden}.tournament-match--ready{border-color:color-mix(in srgb, var(--color-primary) 64%, var(--color-border))}.tournament-match--completed{border-color:var(--color-border-strong)}.tournament-match--preview{border-color:var(--color-border);background:var(--color-bg)}.tournament-match__player{width:100%;min-height:calc(var(--space-10) + var(--space-1));grid-template-columns:var(--space-8) minmax(0, 1fr) auto;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);text-align:left;background:0 0;display:grid}.tournament-match__player:last-child{border-bottom:0}.tournament-match__avatar{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;width:24px;height:24px}.tournament-match__avatar--placeholder{border-radius:var(--radius-full);background:var(--glass-bg);width:24px;height:24px;color:var(--color-text-muted);font-size:var(--font-size-2xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.tournament-match__player>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tournament-match__result{color:var(--color-ok);font-size:var(--font-size-2xs);text-transform:uppercase;font-weight:800}.tournament-match__player--empty{color:var(--color-text-muted)}.tournament-match__player--winner{background:var(--color-ok-soft)}.tournament-match__player--action{cursor:pointer;font:inherit;transition:background var(--transition-fast)}.tournament-match__player--action:hover:not(:disabled){background:var(--color-primary-soft)}.tournament-match__player--action:focus-visible{z-index:var(--z-elevated);outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(-1 * var(--focus-ring-width));position:relative}.tournament-bracket-fullscreen{z-index:var(--z-modal);background:var(--color-bg);animation:tournament-bracket-fullscreen-in var(--transition-base);flex-direction:column;display:flex;position:fixed;inset:0}@keyframes tournament-bracket-fullscreen-in{0%{opacity:0}to{opacity:1}}.tournament-bracket-fullscreen__body{gap:var(--space-3);min-height:0;padding:calc(var(--space-12) + var(--space-3)) var(--space-6) var(--space-6);flex-direction:column;flex:auto;display:flex}.tournament-bracket-fullscreen__body .tournament-bracket__viewport--fullscreen{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex:auto;height:auto;min-height:0;max-height:100%}.tournament-bracket-fullscreen__close{top:var(--space-4);right:var(--space-4);z-index:calc(var(--z-modal) + 1);align-items:center;gap:var(--space-2);padding:0 var(--space-4);height:var(--space-9);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg-elevated);color:var(--color-text-strong);cursor:pointer;font:inherit;font-size:var(--font-size-sm);transition:border-color var(--transition-fast), background var(--transition-fast);font-weight:600;display:inline-flex;position:fixed}.tournament-bracket-fullscreen__close svg{width:var(--space-4);height:var(--space-4)}.tournament-bracket-fullscreen__close:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.tournament-bracket-fullscreen__close:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}@media (width<=720px){.tournament-bracket__topbar{padding:var(--space-4);align-items:flex-start}.tournament-bracket__champion{margin:var(--space-4) var(--space-4) 0}.tournament-bracket__round-nav{gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--color-border);scrollbar-width:none;display:flex;overflow-x:auto}.tournament-bracket__round-nav::-webkit-scrollbar{display:none}.tournament-bracket__round-button{min-height:var(--space-10);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-bg);color:var(--color-text-muted);font:inherit;font-size:var(--font-size-xs);flex:none;font-weight:700}.tournament-bracket__round-button--active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-text-strong)}.tournament-bracket__round-button:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.tournament-bracket__viewport{max-height:var(--tournament-bracket-mobile-height);overflow:auto}.tournament-bracket{width:auto;min-width:0;padding:var(--space-4);display:block}.tournament-round{display:none}.tournament-round--active{display:block}.tournament-round__header{margin-bottom:var(--space-3);display:grid;position:sticky;top:0}.tournament-round__matches{gap:var(--space-3);flex-direction:column;display:flex}.tournament-match-slot{display:block}.tournament-match-slot--outgoing:after,.tournament-match-slot--pair-start:before,.tournament-match-slot__entry{display:none}.tournament-bracket-fullscreen__body{padding:calc(var(--space-12) + var(--space-3)) var(--space-3) var(--space-3)}.tournament-bracket-fullscreen__close span{display:none}.tournament-bracket-fullscreen__close{width:var(--space-9);padding:0}}.tournament-result{gap:var(--space-4);flex-direction:column;display:flex}.tournament-result__help{color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin:0}.tournament-result__winner{gap:var(--space-2);border:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;display:grid}.tournament-result__winner legend{margin-bottom:var(--space-2);color:var(--color-text-strong);font-size:var(--font-size-sm);grid-column:1/-1;font-weight:700}.tournament-result__winner label{min-width:0;min-height:var(--space-12);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;display:flex;position:relative}.tournament-result__winner label:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft)}.tournament-result__winner label:has(input:focus-visible){outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.tournament-result__winner input{opacity:0;position:absolute}.tournament-result__winner span{min-width:0;color:var(--color-text-strong);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.tournament-result__scores{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tournament-result__reports{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);flex-direction:column;display:flex}.tournament-result__reports-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tournament-result__reports-heading span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-result__report-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tournament-result-report{gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex}.tournament-result-report>span,.tournament-result-report p,.tournament-result-report a{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:0}.tournament-result-report>strong{color:var(--color-text-strong);font-size:var(--font-size-sm)}.tournament-result-report a{color:var(--color-primary)}.tournament-result-report--skeleton .skeleton{background:var(--glass-bg-strong)}.tournament-result__reports-warning{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid color-mix(in srgb, var(--color-warning) 55%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-warning) 10%, var(--color-surface));display:flex}.tournament-result__reports-warning p{color:var(--color-text);font-size:var(--font-size-xs);margin:0}@media (width<=560px){.tournament-result__winner,.tournament-result__scores,.tournament-result__report-grid{grid-template-columns:1fr}.tournament-result__reports-warning{flex-direction:column;align-items:stretch}}.tournament-live{gap:var(--space-5);flex-direction:column;display:flex}.tournament-live__summary{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.tournament-live-metric{gap:var(--space-2);min-width:0;padding:var(--space-4);background:0 0;flex-direction:column;display:flex}.tournament-live-metric+.tournament-live-metric{border-left:1px solid var(--color-border)}.tournament-live-metric span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.tournament-live-metric strong{color:var(--color-text-strong);font-size:var(--font-size-2xl)}.tournament-live-metric--live{background:color-mix(in srgb, var(--color-primary) 7%, transparent)}.tournament-live-metric--danger{background:color-mix(in srgb, var(--color-ko) 7%, transparent)}.tournament-live-metric--success{background:color-mix(in srgb, var(--color-ok) 7%, transparent)}.tournament-live__focus{border-color:color-mix(in srgb, var(--color-primary) 50%, var(--color-border))}.tournament-live__check-in{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tournament-live__check-in>span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-live__section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.tournament-live__section-heading h2{margin:var(--space-1) 0 0}.tournament-live__eyebrow{color:var(--color-primary);font-size:var(--font-size-2xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.tournament-live__matches{gap:var(--space-3);flex-direction:column;display:flex}.tournament-live__empty{gap:var(--space-1);padding:var(--space-5);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);color:var(--color-text-muted);flex-direction:column;display:flex}.tournament-live__empty strong{color:var(--color-text-strong)}.tournament-live-match{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-elevated);overflow:hidden}.tournament-live-match--live{border-color:var(--color-primary)}.tournament-live-match--disputed{border-color:var(--color-ko)}.tournament-live-match--featured{margin-bottom:var(--space-4)}.tournament-live-match__header,.tournament-live-match__footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.tournament-live-match__header{border-bottom:1px solid var(--color-border)}.tournament-live-match__header>div{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.tournament-live-match__header span,.tournament-live-match__header time,.tournament-live-match__header strong{font-size:var(--font-size-xs)}.tournament-live-match__header>div>span{color:var(--color-text-muted)}.tournament-live-match__header time,.tournament-live-match__header strong{color:var(--color-text-strong);font-weight:700}.tournament-live-status,.tournament-attendance{width:fit-content;min-height:var(--space-7);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-2xs);white-space:nowrap;align-items:center;font-weight:800;display:inline-flex}.tournament-live-status--live,.tournament-live-status--ready,.tournament-attendance--checked_in{border-color:color-mix(in srgb, var(--color-ok) 55%, var(--color-border));color:var(--color-ok)}.tournament-live-status--disputed,.tournament-attendance--absent{border-color:color-mix(in srgb, var(--color-ko) 55%, var(--color-border));color:var(--color-ko)}.tournament-live-status--awaiting_confirmation,.tournament-live-status--scheduled{border-color:color-mix(in srgb, var(--color-primary) 55%, var(--color-border));color:var(--color-primary)}.tournament-live-match__players{align-items:center;gap:var(--space-3);padding:var(--space-4);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.tournament-live-player{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.tournament-live-player strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tournament-live-player>span{color:var(--color-text-strong);font-size:var(--font-size-xl);font-weight:800}.tournament-live-player--winner{border-color:color-mix(in srgb, var(--color-ok) 50%, var(--color-border));background:var(--color-ok-soft)}.tournament-live-match__versus{color:var(--color-text-muted);font-size:var(--font-size-2xs);font-weight:800}.tournament-live-match__footer{border-top:1px solid var(--color-border);align-items:flex-end}.tournament-live-match__meta,.tournament-live-match__actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.tournament-live-match__meta{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-live-match__meta strong,.tournament-live-match__meta a{color:var(--color-primary)}.tournament-live__sync{color:var(--color-ok);font-size:var(--font-size-xs);font-weight:700}.tournament-live__timeline{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.tournament-live__timeline li{grid-template-columns:var(--space-4) minmax(0, 1fr);gap:var(--space-3);min-width:0;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:grid}.tournament-live__timeline li:last-child{border-bottom:0}.tournament-live__timeline-dot{width:var(--space-2);height:var(--space-2);margin-top:var(--space-2);border-radius:var(--radius-full);background:var(--color-primary)}.tournament-live__timeline li>div{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.tournament-live__timeline strong{color:var(--color-text);font-size:var(--font-size-sm)}.tournament-live__timeline time{color:var(--color-text-muted);font-size:var(--font-size-xs)}.tournament-schedule-form{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tournament-schedule-form__error{grid-column:1/-1}@media (width<=960px){.tournament-live__summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.tournament-live-metric+.tournament-live-metric{border-left:1px solid var(--color-border)}.tournament-live-metric:nth-child(odd){border-left:0}.tournament-live-metric:nth-child(n+3){border-top:1px solid var(--color-border)}.tournament-live__section-heading,.tournament-live__check-in,.tournament-live-match__header,.tournament-live-match__footer{flex-direction:column;align-items:stretch}.tournament-live-match__players{grid-template-columns:1fr}.tournament-live-match__versus{text-align:center}.tournament-live-match__actions .button{flex:auto}.tournament-schedule-form{grid-template-columns:1fr}}@media (width<=420px){.tournament-live__summary{grid-template-columns:1fr}.tournament-live-metric+.tournament-live-metric,.tournament-live-metric:nth-child(odd){border-top:1px solid var(--color-border);border-left:0}.tournament-live-metric:first-child{border-top:0}}.social-search{align-items:end;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;display:grid}.social-list,.social-request-groups{gap:var(--space-3);flex-direction:column;display:flex}.social-request-groups{gap:var(--space-6);min-width:0}.social-request-groups section{min-width:0}.social-request-groups h2{margin:0 0 var(--space-3);font-size:var(--font-size-xl)}.social-user{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);display:flex}.social-request-groups .social-user{flex-direction:column;align-items:flex-start;min-width:0}.social-request-groups .social-user__identity{width:100%}.social-request-groups .social-user__actions{flex-wrap:wrap;width:100%}.social-request-groups .social-user__actions .button,.social-request-groups>section>.social-list>.social-user>.button{white-space:normal;text-align:center;max-width:100%}.social-user__identity,.social-user__actions{align-items:center;gap:var(--space-3);display:flex}.social-user__identity{min-width:0}.social-user__identity>div{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.social-user__identity strong,.social-user__identity span{overflow-wrap:anywhere}.social-user__identity span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.social-user__avatar,.social-user__avatar--placeholder{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-full);object-fit:cover;flex:none}.social-user__avatar--placeholder{border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-primary);place-items:center;font-weight:800;display:grid}.profile-social-inline{width:100%;margin-top:var(--space-4)}.profile-social-inline__metrics{align-items:stretch;gap:clamp(var(--space-3), 3vw, var(--space-8));display:flex}.profile-social-inline__metric{min-width:64px;color:var(--color-text);cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;padding:0;display:inline-flex}.profile-social-inline__metric strong{color:var(--color-text-strong);font-size:var(--font-size-lg);line-height:1}.profile-social-inline__metric span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.profile-social-inline__metric:hover span,.profile-social-inline__metric:focus-visible span{color:var(--color-text-strong)}.profile-social-inline--profile-card{width:100%;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.profile-social-inline--profile-card .profile-social-inline__metrics{justify-content:center;gap:var(--space-3)}.profile-social-inline--profile-card .profile-social-inline__metric{min-width:92px;padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--color-primary) 24%, var(--color-border));border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-primary) 7%, var(--color-bg-elevated));text-align:center;transition:border-color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);align-items:center}.profile-social-inline--profile-card .profile-social-inline__metric:hover,.profile-social-inline--profile-card .profile-social-inline__metric:focus-visible{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 13%, var(--color-bg-elevated));transform:translateY(-1px)}.profile-social-inline--profile-card .profile-social-inline__metric strong{font-size:var(--font-size-xl)}.profile-social-inline__links{gap:var(--space-4);margin-top:var(--space-3);font-size:var(--font-size-xs);display:flex}.profile-social-inline__links a,.profile-social-inline__links button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.profile-social-inline__links a:hover,.profile-social-inline__links button:hover{color:var(--color-primary)}.profile-social-sidebar{gap:var(--space-3);width:100%;margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.profile-social-sidebar .profile-social-inline__metrics{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.profile-social-sidebar .profile-social-inline__metric{min-width:0;padding:var(--space-2);border-radius:var(--radius-md);background:var(--color-bg-elevated)}.profile-social-sidebar__nav{gap:var(--space-1);display:grid}.profile-social-sidebar__item{align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-height-sm);padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:var(--font-size-xs);text-align:left;background:0 0;border:1px solid #0000;text-decoration:none;display:flex}.profile-social-sidebar__item:hover,.profile-social-sidebar__item:focus-visible{border-color:var(--color-border-hover);background:var(--color-surface-hover);color:var(--color-text-strong)}.profile-social-sidebar__item svg{width:var(--space-5);height:var(--space-5);flex:0 0 var(--space-5)}.profile-social-sidebar__item span{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;display:flex}.profile-social-sidebar__item small{color:var(--color-text-muted)}.profile-social-sidebar>.profile-social-inline__links{display:none}.profile-social-more{gap:var(--space-2);display:grid}.profile-social-more>p{margin:0 0 var(--space-2)}.profile-social-more>button{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--color-border);color:var(--color-text-strong);cursor:pointer;text-align:left;background:0 0;display:flex}.profile-social-more>button:last-child{border-bottom:0}.profile-social-more>button>span:first-child{gap:2px;display:grid}.profile-social-more small{color:var(--color-text-muted)}.profile-social-inline--loading,.profile-social-inline--error{max-width:520px}.profile-social-inline--error{align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.social-pagination{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.social-user__identity{color:inherit;text-decoration:none}.social-user__identity:hover strong{color:var(--color-primary)}.social-profile__back{margin-bottom:var(--space-5);color:var(--color-text-muted);text-decoration:none;display:inline-flex}.social-profile__back:hover{color:var(--color-text-strong)}.social-profile-card{align-items:center;gap:var(--space-8);padding:clamp(var(--space-5), 5vw, var(--space-10));border-block:1px solid var(--color-border);grid-template-columns:144px minmax(0,1fr);display:grid}.social-profile-card__avatar{border:1px solid color-mix(in srgb, var(--color-primary) 35%, var(--color-border));border-radius:var(--radius-full);object-fit:cover;place-items:center;width:144px;height:144px;display:grid}.social-profile-card__avatar--empty{background:var(--color-surface);color:var(--color-primary);font-size:var(--font-size-3xl);font-weight:800}.social-profile-card__body{min-width:0}.social-profile-card__identity,.social-profile-card__metrics,.social-profile-card__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.social-profile-card__identity{justify-content:space-between}.social-profile-card__identity h1,.social-profile-card__identity p{margin:0}.social-profile-card__identity p{margin-top:var(--space-1);color:var(--color-text-muted)}.social-profile-card__metrics{gap:clamp(var(--space-5), 5vw, var(--space-10));margin-block:var(--space-6)}.social-profile-card__metrics button,.social-profile-card__metrics>div{align-items:baseline;gap:var(--space-2);color:var(--color-text);background:0 0;border:0;padding:0;display:inline-flex}.social-profile-card__metrics button{cursor:pointer}.social-profile-card__metrics button:hover span{color:var(--color-primary)}.social-profile-card__metrics strong{color:var(--color-text-strong);font-size:var(--font-size-lg)}.social-profile-card__metrics span{color:var(--color-text-muted)}.social-profile-card__intro{max-width:58ch;margin:0 0 var(--space-5);color:var(--color-text-muted)}.social-profile-content{gap:var(--space-8);margin-top:var(--space-8);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);display:grid}.social-profile-section{min-width:0;padding-top:var(--space-6);border-top:1px solid var(--color-border)}.social-profile-section__header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.social-profile-section__header h2,.social-profile-section__header p{margin:0}.social-profile-section__header h2{font-size:var(--font-size-xl)}.social-profile-section__header p{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-sm)}.social-profile-section__eyebrow{margin-bottom:var(--space-2);color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700;display:block}.social-profile-section__count{min-width:var(--space-8);min-height:var(--space-8);padding-inline:var(--space-2);border:1px solid color-mix(in srgb, var(--color-primary) 32%, var(--color-border));border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));color:var(--color-primary);font-size:var(--font-size-sm);place-items:center;font-weight:700;display:inline-grid}.social-profile-games{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.social-profile-game{min-width:0;position:relative}.social-profile-games .game-card--covered .game-card__body{min-height:176px;padding:var(--space-4)}.social-profile-games .game-card__name{font-size:var(--font-size-md)}.social-profile-game__primary{top:var(--space-3);left:var(--space-3);z-index:3;padding:var(--space-1) var(--space-2);border:1px solid color-mix(in srgb, var(--color-primary) 45%, var(--color-border));border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-bg) 72%, transparent);color:var(--color-text-strong);font-size:var(--font-size-xs);font-weight:700;position:absolute}.social-profile-game-skeleton{gap:var(--space-3);min-width:0;min-height:176px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);display:grid}.social-profile-game-skeleton>:first-child{min-height:112px}.social-profile-activity{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);min-width:0;display:grid;overflow:hidden}.social-profile-activity .post-card{background:0 0}.social-profile-activity .post-card:last-child{border-bottom:0}.social-connection-list{display:grid}.social-connection-list>a{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);color:var(--color-text);grid-template-columns:44px minmax(0,1fr) auto;text-decoration:none;display:grid}.social-connection-list>a:last-child{border-bottom:0}.social-connection-list>a:hover strong{color:var(--color-primary)}.social-connection-list .social-profile-card__avatar{width:44px;height:44px;font-size:var(--font-size-md)}.social-connection-list>a>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.social-connection-list small{color:var(--color-text-muted)}.social-tournament-picker{gap:var(--space-2);display:grid}.social-tournament-picker label{align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;grid-template-columns:auto minmax(0,1fr);display:grid}.social-tournament-picker label:has(input:checked){border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 7%, transparent)}.social-tournament-picker span{flex-direction:column;display:flex}.social-tournament-picker small{color:var(--color-text-muted)}@media (width<=720px){.social-search{grid-template-columns:1fr}.social-user{flex-direction:column;align-items:flex-start}.social-user__actions{flex-wrap:wrap;width:100%}.social-user__actions .button,.social-user__actions a{flex:auto}.profile-social-inline__metrics{justify-content:center;gap:var(--space-4)}.profile-social-inline__metric{text-align:center;align-items:center;min-width:54px}.profile-social-inline__links{justify-content:center}.social-profile-card{text-align:center;grid-template-columns:1fr;justify-items:center}.social-profile-card__avatar{width:112px;height:112px}.social-profile-card__identity,.social-profile-card__metrics,.social-profile-card__actions{justify-content:center}.social-profile-card__metrics{gap:var(--space-5)}.social-profile-content{gap:var(--space-7);grid-template-columns:1fr}.social-profile-games{grid-template-columns:repeat(2,minmax(0,1fr))}.social-profile-card__actions .button{flex:auto}}@media (width<=480px){.social-profile-games{grid-template-columns:1fr}}.community-layout{max-width:760px}.community-main,.community-thread{min-width:0}.post-composer__attach{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, transparent);border-color:#0000}.post-composer__attach:hover:not(:disabled){border-color:color-mix(in srgb, var(--color-primary) 30%, transparent);background:color-mix(in srgb, var(--color-primary) 18%, transparent)}.post-composer__attach svg{width:21px;height:21px}.post-composer__send svg{width:20px;height:20px}.post-composer{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-control-border);border-radius:var(--radius-lg);background:var(--color-surface);display:grid}.post-composer__input{resize:vertical;width:100%;min-height:88px;color:var(--color-text-strong);font:inherit;font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);background:0 0;border:0;outline:0}.post-composer__input::placeholder{color:var(--color-text-muted)}.post-composer__input:focus-visible{box-shadow:0 var(--focus-ring-width) 0 var(--focus-ring-color)}.post-composer__footer,.post-composer__tools,.post-composer__submit{align-items:center;gap:var(--space-3);display:flex}.post-composer__footer{padding-top:var(--space-3);border-top:1px solid var(--color-border);justify-content:space-between}.post-composer__tools span,.post-composer__submit span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.post-composer__previews,.post-card__media{gap:var(--space-2);border-radius:var(--radius-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.post-composer__previews figure{min-width:0;margin:0;position:relative}.post-composer__previews img,.post-card__media img{object-fit:cover;width:100%;height:100%;min-height:180px;max-height:360px}.post-composer__previews button{top:var(--space-2);right:var(--space-2);width:var(--space-8);height:var(--space-8);border:1px solid var(--color-border-strong);border-radius:var(--radius-full);background:var(--color-bg);color:var(--color-text-strong);cursor:pointer;font-size:var(--font-size-xl);place-items:center;display:grid;position:absolute}.post-composer__error,.post-card__error{color:var(--color-ko);font-size:var(--font-size-sm);margin:0}.community-tabs{margin-top:var(--space-5);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(2,1fr);display:grid}.community-tabs button{padding:var(--space-4);color:var(--color-text-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;font-weight:700}.community-tabs button:hover,.community-tabs button.is-active{color:var(--color-text-strong)}.community-tabs button.is-active{border-bottom-color:var(--color-primary)}.community-feed,.community-replies{display:grid}.post-card{grid-template-columns:var(--space-10) minmax(0, 1fr);gap:var(--space-3);padding:var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-bg);display:grid}.post-card--reply{padding-left:var(--space-8);position:relative}.post-card--reply:before{inset-block:0;left:var(--space-3);background:var(--color-border-strong);content:"";width:1px;position:absolute}.post-card__avatar{width:var(--space-10);height:var(--space-10);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-primary);place-items:center;font-weight:800;text-decoration:none;display:grid;overflow:hidden}.post-card__avatar img{object-fit:cover;width:100%;height:100%}.post-card__body{gap:var(--space-3);min-width:0;display:grid}.post-card__header{align-items:center;gap:var(--space-2);min-width:0;display:flex}.post-card__identity{gap:var(--space-2);min-width:0;color:var(--color-text-strong);text-decoration:none;display:flex}.post-card__identity strong,.post-card__identity span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.post-card__identity span,.post-card__date,.post-card__deleted{color:var(--color-text-muted)}.post-card__date{font-size:var(--font-size-xs);flex:none;text-decoration:none}.post-card__more{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-full);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xl);background:0 0;border:0;margin-left:auto}.post-card__more:hover{background:var(--color-surface);color:var(--color-ko)}.post-card__content,.post-card__deleted{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.post-card__media{border:1px solid var(--color-border)}.post-card__media:has(>:only-child){grid-template-columns:1fr}.post-card__media-trigger{background:var(--color-surface);width:100%;min-width:0;color:inherit;cursor:zoom-in;font:inherit;border:0;padding:0;display:block;overflow:hidden}.post-card__media-trigger:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(var(--focus-ring-offset) * -1)}.post-card__media-trigger:hover img{opacity:.86}.post-image-lightbox{place-items:center;min-height:min(60vh,520px);display:grid}.post-image-lightbox img{object-fit:contain;width:100%;max-height:70vh;display:block}.post-card__media-trigger img{transition:opacity var(--transition-fast)}.post-card__media-trigger,.post-card__media-trigger img{min-width:0}.post-card__actions{align-items:center;gap:var(--space-7);display:flex}.post-card__action{align-items:center;gap:var(--space-2);padding:var(--space-1);color:var(--color-text-muted);cursor:pointer;font:inherit;font-size:var(--font-size-sm);background:0 0;border:0;text-decoration:none;display:inline-flex}.post-card__action svg{width:var(--space-5);height:var(--space-5);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}.post-card__action:hover,.post-card__action--active{color:var(--color-primary)}.post-card__action--active svg{fill:currentColor}.post-card--skeleton .post-card__body{gap:var(--space-4)}.community-load-more{width:100%;margin-top:var(--space-4)}.community-thread__back{margin-bottom:var(--space-5);color:var(--color-text-muted);text-decoration:none;display:inline-flex}.community-thread>h1{margin:0 0 var(--space-5)}.community-thread>.post-composer{margin-block:var(--space-5)}.community-replies h2{margin:var(--space-5) 0 var(--space-3);font-size:var(--font-size-xl)}@media (width<=900px){.community-layout{max-width:760px}}@media (width<=560px){.community-page{padding-inline:0}.community-page .page-header,.community-thread>h1,.community-thread__back{margin-inline:var(--layout-gutter)}.post-composer{border-inline:0;border-radius:0}.post-composer__footer{align-items:flex-end}.post-composer__tools,.post-composer__submit{flex-direction:column;align-items:flex-start}.post-card{padding-inline:var(--layout-gutter)}.post-card__header{flex-wrap:wrap;align-items:flex-start}.post-card__identity{flex-direction:column;gap:0}.post-card__date{margin-left:auto}.post-card__media img,.post-composer__previews img{min-height:120px}}.notification-list{border-block:1px solid var(--color-border);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.notification-item{grid-template-columns:var(--space-10) minmax(0, 1fr) auto;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);display:grid}.notification-item:last-child{border-bottom:0}.notification-item--unread{background:color-mix(in srgb, var(--color-primary) 5%, transparent)}.notification-item__avatar,.notification-item__icon{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-full);object-fit:cover;flex:none}.notification-item__icon{border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-primary);place-items:center;font-weight:800;display:grid}.notification-item__content{flex:1;min-width:0}.notification-item__content>div{align-items:center;gap:var(--space-2);display:flex}.notification-item__content strong{overflow-wrap:anywhere;min-width:0}.notification-item__content p{margin:var(--space-1) 0;color:var(--color-text);overflow-wrap:anywhere}.notification-item__content small{color:var(--color-text-muted);font-size:var(--font-size-xs);overflow-wrap:anywhere;display:block}.notification-item__dot{width:var(--space-2);height:var(--space-2);border-radius:var(--radius-full);background:var(--color-primary)}.notification-preferences{margin-bottom:var(--space-6);padding-block:var(--space-3);border-block:1px solid var(--color-border)}.notification-preferences summary{cursor:pointer;color:var(--color-text-strong);font-size:var(--font-size-sm);font-weight:600}.notification-preferences--loading{min-height:var(--control-height-md);align-items:center;display:flex}.notification-preferences--error{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.notification-preferences--error p{margin:0}.notification-preferences>p{margin:var(--space-3) 0}.notification-preferences__list{gap:var(--space-2) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.notification-preferences__item{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) 0;color:var(--color-text);font-size:var(--font-size-sm);grid-template-columns:minmax(0,1fr) auto auto;display:grid}.notification-preferences__item input{accent-color:var(--color-primary)}.notification-preferences__item>span:last-child{color:var(--color-text-muted);font-size:var(--font-size-xs)}.notification-list__more{margin-top:var(--space-4)}.notification-action-error{margin:0 0 var(--space-5)}@media (width<=720px){.notification-item{grid-template-columns:var(--space-10) minmax(0, 1fr);align-items:start}.notification-item>.button{grid-column:2;justify-self:start;width:fit-content}.notification-preferences__list{grid-template-columns:1fr}}@media (width<=480px){.notification-item{gap:var(--space-3);padding-block:var(--space-3)}.notification-item__content>div{align-items:flex-start}.notification-item__dot{margin-top:var(--space-1);flex:none}.notification-preferences__item{grid-template-columns:minmax(0,1fr) auto}.notification-preferences__item>span:last-child{display:none}}.chat-tabs{margin-bottom:var(--space-5)}.chat-workspace{grid-template-columns:minmax(var(--chat-sidebar-min-width), .34fr) minmax(0, 1fr);min-width:0;min-height:var(--chat-workspace-min-height);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);display:grid;overflow:hidden}.chat-sidebar{border-right:1px solid var(--color-border)}.chat-sidebar__header,.chat-panel__header{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.chat-panel__header>div:not(.chat-panel__actions){min-width:0}.chat-panel__header h2{overflow-wrap:anywhere}.chat-sidebar__header h2,.chat-panel__header h2,.chat-create-form h2,.coaching-group-list h2{font-size:var(--font-size-lg);margin:0}.chat-panel__actions,.coaching-group-card__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.chat-panel__back{display:none}.chat-sidebar>.text-muted{padding:var(--space-4)}.chat-conversation-list,.chat-messages{margin:0;padding:0;list-style:none}.chat-conversation{gap:var(--space-3);width:100%;min-width:0;padding:var(--space-4);border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.chat-conversation:hover,.chat-conversation--active{background:var(--color-surface-hover)}.chat-conversation__type{width:var(--space-8);height:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-primary);font-size:var(--font-size-xs);place-items:center;font-weight:800;display:grid}.chat-conversation__type img,.chat-message__avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.chat-conversation>span:nth-child(2){min-width:0}.chat-conversation strong,.chat-conversation small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-conversation small,.chat-panel__header p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs)}.chat-conversation em{min-width:var(--space-5);height:var(--space-5);border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-2xs);place-items:center;font-style:normal;font-weight:800;display:grid}.chat-panel{flex-direction:column;min-width:0;display:flex}.chat-members{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.chat-members__error{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.chat-members__error p{margin:0}.chat-members summary{color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer}.chat-members ul{gap:var(--space-2);margin:var(--space-3) 0 0;flex-direction:column;padding:0;list-style:none;display:flex}.chat-members li,.chat-member{align-items:center;gap:var(--space-2);min-width:0;display:flex}.chat-members li{justify-content:space-between}.chat-member__avatar{width:var(--space-7);height:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-primary);font-size:var(--font-size-xs);place-items:center;font-weight:800;display:grid;overflow:hidden}.chat-member__avatar img{object-fit:cover;width:100%;height:100%}.chat-member>span:last-child{flex-direction:column;min-width:0;display:flex}.chat-member strong,.chat-member small{overflow-wrap:anywhere}.chat-member small{color:var(--color-text-muted);font-size:var(--font-size-2xs)}.chat-messages{gap:var(--space-4);min-height:0;padding:var(--space-5);overscroll-behavior:contain;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-message{gap:var(--space-3);width:100%;min-width:0;max-width:min(var(--chat-message-max-width), 100%);display:flex}.chat-message__avatar{width:var(--space-7);height:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-primary);font-size:var(--font-size-xs);flex:none;place-items:center;font-weight:800;display:grid}.chat-message p{margin:var(--space-1) 0;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message>div{flex:auto;min-width:0}.chat-message strong{overflow-wrap:anywhere}.chat-message small{color:var(--color-text-muted);font-size:var(--font-size-2xs)}.chat-composer{align-items:end;gap:var(--space-3);padding:var(--space-4);border-top:1px solid var(--color-border);display:flex}.chat-composer textarea{width:100%;min-width:0;min-height:var(--space-12);resize:vertical;flex:auto}.chat-empty{min-width:0;padding:var(--space-6);text-align:center;place-items:center;display:grid}.chat-messages--state{padding:var(--space-8) var(--space-5);text-align:center;justify-content:center;align-items:center}.chat-panel__loading{gap:var(--space-4);min-height:0;padding:var(--space-5);flex-direction:column;flex:auto;justify-content:flex-end;display:flex}.coaching-groups{grid-template-columns:minmax(var(--chat-coaching-form-min-width), .65fr) minmax(0, 1fr);gap:var(--space-6);display:grid}.chat-group-creator{max-width:var(--layout-narrow-width)}.chat-selected-members{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.chat-selected-members li{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--font-size-xs);display:inline-flex}.chat-selected-members button{color:var(--color-text-muted);background:0 0;border:0;padding:0}.chat-create-form,.coaching-group-card{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;display:flex}.coaching-group-list{gap:var(--space-3);flex-direction:column;display:flex}.coaching-group-card h3,.coaching-group-card p{margin:0}.coaching-group-card h3,.coaching-group-card p,.coaching-group-card small{overflow-wrap:anywhere}.coaching-group-card p,.coaching-group-card small{color:var(--color-text-muted)}.player-picker{position:relative}.player-picker__results{z-index:var(--z-dropdown);max-height:var(--item-select-mobile-max-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;display:flex;position:absolute;left:0;right:0;overflow:hidden auto}.player-picker__results button{overflow-wrap:anywhere;width:100%;padding:var(--space-3);border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);text-align:left;background:0 0}.player-picker__results button:hover{background:var(--color-surface-hover)}@media (width<=900px){.chat-workspace,.coaching-groups{grid-template-columns:1fr}.chat-sidebar{border-right:0;border-bottom:1px solid var(--color-border)}.chat-workspace{min-height:auto}.chat-workspace--has-selection .chat-sidebar{display:none}.chat-panel,.chat-workspace--has-selection .chat-panel{min-height:var(--chat-panel-mobile-min-height)}.chat-panel__back{display:inline-flex}.chat-panel__header{flex-wrap:wrap}}@media (width<=720px){.chat-workspace--has-selection .chat-panel{min-height:calc(100dvh - 250px)}.chat-panel__header{flex-direction:column;align-items:flex-start}.chat-panel__actions{justify-content:flex-start}.chat-composer{flex-direction:column;align-items:stretch}.chat-composer .button{width:100%}.coaching-group-card__actions{justify-content:stretch}.coaching-group-card__actions .button{flex:100%}}.workspace{gap:var(--space-6);display:grid}.workspace__metrics{border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.workspace__metrics article{gap:var(--space-1);padding:var(--space-5);background:var(--color-surface);border-right:1px solid var(--color-border);display:grid}.workspace__metrics article:last-child{border-right:0}.workspace__metrics strong{font-size:var(--font-size-2xl);color:var(--color-text-strong)}.workspace__metrics span,.workspace__muted{color:var(--color-text-muted)}.workspace__columns{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.workspace__panel{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.workspace__panel>header{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.workspace__panel h2{font-size:var(--font-size-lg);margin:0}.workspace__eyebrow{margin-bottom:var(--space-1);color:var(--color-primary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);font-weight:700;display:block}.workspace__list{gap:0;margin:0;padding:0;list-style:none;display:grid}.workspace__list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-border);display:flex}.workspace__list li>div{gap:var(--space-1);display:grid}.workspace__list span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.workspace__list progress{width:min(9rem,35%);accent-color:var(--color-primary)}.workspace__quick{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.workspace__quick a{gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-strong);display:grid}.workspace__quick a:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.workspace__quick span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.availability-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.availability-row{align-items:center;gap:var(--space-2);margin-top:var(--space-2);grid-template-columns:1fr auto 1fr auto;display:grid}.workspace__toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.workspace__toolbar .form__input{max-width:24rem}.admin-table{border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.admin-table__head,.admin-table__row{gap:var(--space-3);padding:var(--space-3) var(--space-4);grid-template-columns:minmax(14rem,2fr) minmax(8rem,1fr) minmax(8rem,1fr);align-items:center;display:grid}.admin-table__head{background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.admin-table__row{border-top:1px solid var(--color-border)}.admin-table__row>div{gap:var(--space-1);display:grid}.admin-table__row span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.review-compose{gap:var(--space-4);display:grid}.review-list{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.review-list article{align-content:start;gap:var(--space-3);display:grid}.review-list article>header span{color:var(--color-text-muted);font-size:var(--font-size-sm);display:block}.review-list blockquote{padding:var(--space-3);border-left:2px solid var(--color-primary);background:var(--color-surface-hover);margin:0}.review-response{gap:var(--space-2);display:grid}.subscription-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.subscription-card__actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width<=48rem){.subscription-grid,.workspace__metrics,.workspace__columns,.workspace__quick,.availability-grid,.review-list{grid-template-columns:1fr}.workspace__metrics article{border-right:0;border-bottom:1px solid var(--color-border)}.workspace__metrics article:last-child{border-bottom:0}.admin-table__head{display:none}.admin-table__row{grid-template-columns:1fr}.availability-row{grid-template-columns:1fr auto 1fr}.availability-row button{grid-column:1/-1}.workspace__toolbar{flex-direction:column;align-items:stretch}.workspace__toolbar .form__input{max-width:none}}.popup{z-index:var(--z-overlay);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);color:var(--color-text);position:fixed}.popup__arrow{background:var(--color-surface);border:1px solid var(--color-border);width:8px;height:8px;position:absolute;transform:rotate(45deg)}@media (width<=960px){.page{padding:var(--space-8) var(--layout-gutter)}}@media (width<=720px){.page{padding:var(--space-6) var(--space-4)}}@media (width<=480px){.page{padding:var(--space-5) var(--space-4)}.page h1{overflow-wrap:anywhere}}.table{border-collapse:collapse;width:100%}@media (width<=720px){.table-wrap{overflow-x:auto}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-layout{background:var(--color-bg);flex-direction:column;height:100%;min-height:100dvh;display:flex;overflow:hidden}.app-layout__main{scrollbar-gutter:stable;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden auto}.app-layout__main:focus{outline:none}.skip-link{top:var(--space-2);left:var(--space-2);z-index:calc(var(--z-overlay) + 1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--transition-fast);font-weight:700;position:fixed}.skip-link:focus{transform:translateY(0)}.network-status{padding:var(--space-2) var(--layout-gutter);border-bottom:1px solid var(--color-warning);background:color-mix(in srgb, var(--color-warning) 14%, var(--color-bg));color:var(--color-text-strong);text-align:center;font-size:var(--font-size-sm);flex:none;font-weight:600}.app-layout__main,.app-drawer__body,.game-select__menu,.game-select__options,.search-input__results,.modal__body,.tournament-bracket__viewport{scrollbar-width:thin;scrollbar-color:var(--color-border-strong) transparent}.app-layout__main::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.app-drawer__body::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.game-select__menu::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.game-select__options::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.search-input__results::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.modal__body::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.tournament-bracket__viewport::-webkit-scrollbar{width:var(--space-3);height:var(--space-3)}.app-layout__main::-webkit-scrollbar-track{background:0 0}.app-drawer__body::-webkit-scrollbar-track{background:0 0}.game-select__menu::-webkit-scrollbar-track{background:0 0}.game-select__options::-webkit-scrollbar-track{background:0 0}.search-input__results::-webkit-scrollbar-track{background:0 0}.modal__body::-webkit-scrollbar-track{background:0 0}.tournament-bracket__viewport::-webkit-scrollbar-track{background:0 0}.app-layout__main::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.app-drawer__body::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.game-select__menu::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.game-select__options::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.search-input__results::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.modal__body::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.tournament-bracket__viewport::-webkit-scrollbar-thumb{background:var(--color-border-strong);border:var(--space-1) solid transparent;border-radius:var(--radius-full);background-clip:padding-box}.app-layout__main::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.app-drawer__body::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.game-select__menu::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.game-select__options::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.search-input__results::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.modal__body::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.tournament-bracket__viewport::-webkit-scrollbar-thumb:hover{background:var(--color-primary);background-clip:padding-box}.app-layout__main::-webkit-scrollbar-corner{background:0 0}.app-drawer__body::-webkit-scrollbar-corner{background:0 0}.game-select__menu::-webkit-scrollbar-corner{background:0 0}.game-select__options::-webkit-scrollbar-corner{background:0 0}.search-input__results::-webkit-scrollbar-corner{background:0 0}.modal__body::-webkit-scrollbar-corner{background:0 0}.tournament-bracket__viewport::-webkit-scrollbar-corner{background:0 0}.page{padding:var(--space-12) var(--layout-gutter);flex:auto}.page__container{max-width:var(--layout-max-width);min-width:0;margin:0 auto}.page__container--narrow{max-width:var(--layout-narrow-width)}.page__content--narrow{max-width:var(--layout-narrow-width);margin-inline:auto}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-6);min-height:88px;margin-bottom:var(--space-7);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.page-header__content{min-width:0}.page-header__eyebrow{margin:0 0 var(--space-2);color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:700}.page-header__title{font-size:clamp(var(--font-size-3xl), 4vw, var(--font-size-4xl));margin:0}.page-header__description{max-width:64ch;margin-top:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-base)}.page-header__description>*{margin:0}.page-header__actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.page-layout-with-sidebar{--page-sidebar-rail-shift:clamp(0px, calc((100vw - var(--layout-max-width)) / 2 - var(--layout-gutter)), 224px);grid-template-columns:minmax(168px, 204px) minmax(0, var(--layout-narrow-width));align-items:start;gap:var(--layout-gap-lg);display:grid}.page-layout-with-sidebar--wide{grid-template-columns:minmax(168px,204px) minmax(0,1fr)}.page-layout-with-sidebar>:last-child{min-width:0}@media (width>=90rem){.page-layout-with-sidebar{grid-template-columns:minmax(0,1fr)}.page-layout-with-sidebar>.page-sidebar{z-index:1;grid-area:1/1;justify-self:start;width:204px}.page-layout-with-sidebar>:last-child{width:min(100%, var(--layout-narrow-width));grid-area:1/1;justify-self:center}.page-layout-with-sidebar--wide>:last-child{width:calc(100% - 204px - var(--layout-gap-lg))}}.page-sidebar{top:var(--space-6);transform:translateX(calc(0px - var(--page-sidebar-rail-shift)));padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);position:sticky}.page-sidebar__nav{gap:var(--space-1);display:grid}.page-sidebar__section-label{margin:var(--space-4) var(--space-3) var(--space-1);color:var(--color-primary);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;font-weight:800}.page-sidebar__section-label--first{margin-top:var(--space-1)}.page-sidebar__link{align-items:center;gap:var(--space-3);min-height:var(--control-height-md);padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-sm);transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border:1px solid #0000;font-weight:700;text-decoration:none;display:flex}.page-sidebar__link svg{width:var(--space-5);height:var(--space-5);flex:0 0 var(--space-5)}.page-sidebar__link:hover,.page-sidebar__link:focus-visible{border-color:var(--color-border-hover);background:var(--color-surface-hover);color:var(--color-text-strong)}.page-sidebar__link--active{border-color:color-mix(in srgb, var(--color-primary) 42%, var(--color-border));background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface));color:var(--color-text-strong)}.page-sidebar__link--primary{color:var(--color-primary)}.page__header{margin-bottom:var(--layout-gap-lg)}.page__header>:first-child{margin-top:0}.page__header>:last-child{margin-bottom:0}.page__lede{color:var(--color-text-muted);font-size:var(--font-size-lg);max-width:60ch;margin-top:var(--space-3);overflow-wrap:anywhere}.stack{gap:var(--layout-gap-md);flex-direction:column;display:flex}.stack--sm{gap:var(--layout-gap-sm)}.stack--lg{gap:var(--layout-gap-lg)}.app-footer{border-top:1px solid var(--color-border);background:var(--color-bg);padding:var(--space-2) var(--layout-gutter);flex-shrink:0}.app-footer__inner{max-width:var(--layout-max-width);justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;margin:0 auto;display:flex}.app-footer__inner p{margin:0}.app-footer__nav{align-items:center;gap:var(--space-4);display:flex}.app-footer__nav a{min-height:var(--control-height-sm);color:var(--color-text-muted);transition:color var(--transition-fast);align-items:center;font-weight:600;display:inline-flex}.app-footer__nav a:hover{color:var(--color-text-strong)}.app-footer__nav a:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}@media (width<=720px){.app-layout__main{scrollbar-gutter:auto}.app-layout__main::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.app-drawer__body::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.game-select__menu::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.game-select__options::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.search-input__results::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.modal__body::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.tournament-bracket__viewport::-webkit-scrollbar{width:var(--space-1);height:var(--space-1)}.app-layout__main::-webkit-scrollbar-thumb{border:0}.app-drawer__body::-webkit-scrollbar-thumb{border:0}.game-select__menu::-webkit-scrollbar-thumb{border:0}.game-select__options::-webkit-scrollbar-thumb{border:0}.search-input__results::-webkit-scrollbar-thumb{border:0}.modal__body::-webkit-scrollbar-thumb{border:0}.tournament-bracket__viewport::-webkit-scrollbar-thumb{border:0}.page{padding-bottom:calc(var(--space-12) + 76px + var(--safe-bottom))}.page-header{align-items:flex-start;gap:var(--space-4);min-height:0;margin-bottom:var(--space-5);padding-bottom:var(--space-4);flex-direction:column}.page-header__actions{justify-content:flex-start;width:100%}.page-layout-with-sidebar{gap:var(--space-5);grid-template-columns:1fr}.page-sidebar{padding:var(--space-2);position:static;transform:none}.page-sidebar__nav{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.app-footer{display:none}}
