*{margin:0;padding:0;box-sizing:border-box}:root{color-scheme:light;--color-bg-primary: #F6F7F9;--color-bg-surface: #FFFFFF;--color-text-primary: #111111;--color-text-secondary: #6B7280;--color-text-muted: #9CA3AF;--color-divider: #E5E7EB;--color-positive-bg: #E6F6EC;--color-positive-primary: #1F9D55;--color-negative-bg: #FDECEC;--color-negative-primary: #D64545;--color-neutral-bg: #F1F3F5;--color-neutral-primary: #374151;--color-accent-bg: #DCE7FF;--color-accent-primary: #2A5BD7;--color-warning-bg: #FEF3C7;--color-warning-primary: #D97706;--color-purple-bg: #F0EAFF;--color-purple-primary: #7C3AED;--font-title-lg: 28px;--font-title-md: 22px;--font-title-sm: 18px;--font-body-lg: 16px;--font-body-md: 14px;--font-body-sm: 12px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-xxl: 32px;--radius-card: 16px;--radius-button: 10px;--radius-chip: 999px;--radius-sm: 4px;--radius-md: 12px;--radius-lg: 20px;--space-3xl: 48px;--font-caption: 13px;--font-micro: 11px;--font-nano: 10px;--font-label: 14px;--font-heading-lg: 24px;--font-display-md: 32px;--font-display-lg: 48px;--font-hero: 40px;--font-hero-sm: 36px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-sm: 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--shadow-hover: 0 4px 16px rgba(0,0,0,.12);--shadow-focus: 0 0 0 3px rgba(42, 91, 215, .12);--z-base: 1;--z-sticky: 10;--z-dropdown: 100;--z-overlay: 200;--z-modal: 1000;--z-toast: 2000;--color-text-inverse: #FFFFFF;--color-surface-hover: #EFF1F3;--color-surface-pressed: #E8EAEC;--color-surface: var(--color-bg-surface);--color-surface-alt: #F1F3F5;--color-bg: var(--color-bg-primary);--color-bg-secondary: var(--color-neutral-bg);--color-surface-primary: var(--color-bg-surface);--color-surface-raised: var(--color-bg-surface);--color-border-secondary: var(--color-divider);--color-accent-blue: var(--color-accent-primary);--color-primary: var(--color-accent-primary);--weight-normal: var(--weight-regular);--font-body-xs: var(--font-micro);--font-body: var(--font-body-md);--font-mono: "SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", monospace;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-out-quart: cubic-bezier(.25, 1, .5, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-instant: .1s;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}button,a,[class*=-btn],[class*=-pill],[class*=-tab],[class*=-option],[class*=-toggle],[class*=-link],.btn,.btn-link,.btn-icon,.btn-back,.card,.trophy-cell,.faq-question,.notif-item,.chat-card,.broadcast-timeline-entry,.calendar-match,.offer-card,.action-card{transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) var(--ease-out-quart),box-shadow var(--duration-fast) var(--ease-out-quart),transform var(--duration-instant) var(--ease-out-quart),opacity var(--duration-fast) var(--ease-out-quart)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;font-size:var(--font-body-md);line-height:1.55;font-kerning:normal}.app{margin:0 auto;height:100dvh;display:flex;flex-direction:column;overflow:hidden}@media (max-width: 767px){.app{max-width:480px}}.text-title-lg{font-size:var(--font-title-lg);font-weight:var(--weight-bold);line-height:1.05;letter-spacing:-.025em}.text-title-md{font-size:var(--font-title-md);font-weight:700;line-height:1.1;letter-spacing:-.02em}.text-title-sm{font-size:var(--font-title-sm);font-weight:700;line-height:1.15;letter-spacing:-.015em}.text-body-lg{font-size:var(--font-body-lg);font-weight:var(--weight-regular);line-height:1.5}.text-body-md{font-size:var(--font-body-md);font-weight:var(--weight-regular);line-height:1.55}.text-body-sm{font-size:var(--font-body-sm);font-weight:var(--weight-medium);line-height:1.4}.text-caption{font-size:var(--font-caption);font-weight:var(--weight-regular);line-height:1.4;color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted);font-size:var(--font-body-sm)}.bracket-view-row{display:flex;justify-content:space-between;align-items:center;padding:0 0 var(--space-md) 0}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.screen{flex:1;display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch}.header{background:var(--color-bg-surface);color:var(--color-text-primary);padding:var(--space-lg) 20px;position:sticky;top:0;z-index:var(--z-sticky);border-bottom:1px solid var(--color-divider)}.header h1{font-size:var(--font-title-sm);font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.1}.header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.content{flex:1;padding:var(--space-xl) 20px;padding-bottom:var(--space-xxl)}.tab-content{padding-bottom:var(--space-3xl);animation:tabFadeIn var(--duration-normal) var(--ease-out-quart) both}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.top-nav{min-height:56px;background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-divider);display:flex;align-items:center;justify-content:space-between;padding:max(12px,env(safe-area-inset-top,12px)) var(--space-lg) 8px;position:sticky;top:0;z-index:var(--z-sticky);overflow:visible}.top-nav-logo{display:flex;align-items:center;gap:4px}.top-nav-register{justify-content:center;padding-top:max(12px,env(safe-area-inset-top,12px));padding-bottom:4px}.top-nav-logo-large{padding:4px 0}.rally-icon{display:block;flex-shrink:0}.rally-wordmark{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.03em;line-height:1}.top-nav-actions{display:flex;align-items:center;gap:var(--space-sm)}.top-nav-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;border-radius:var(--radius-chip);color:var(--color-text-secondary);font-size:var(--font-body-lg);transition:background var(--duration-fast) var(--ease-out-quart),color .15s,transform var(--duration-instant) var(--ease-out-quart)}.top-nav-icon:hover{background:var(--color-neutral-bg);color:var(--color-text-primary)}.top-nav-icon:active{background:var(--color-neutral-bg);transform:scale(.92);transition-duration:.06s}.bottom-tabs{flex-shrink:0;width:100%;height:56px;display:flex;background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-divider);z-index:var(--z-dropdown);padding-bottom:env(safe-area-inset-bottom)}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:4px 0;border:none;background:none;cursor:pointer;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out-quart),transform var(--duration-instant) var(--ease-out-quart);position:relative;min-height:44px}.bottom-tab:active{transform:scale(.92);transition-duration:.06s}.bottom-tab.active{color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.bottom-tab.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:28px;height:2.5px;background:var(--color-accent-primary);border-radius:0 0 3px 3px}.tab-icon{width:20px;height:20px}.tab-text{font-size:var(--font-body-sm);font-weight:var(--weight-medium)}.bottom-tab.active .tab-text{font-weight:var(--weight-semibold)}.btn{height:44px;padding:0 20px;border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-bg-surface);font-size:var(--font-body-md);font-weight:var(--weight-medium);cursor:pointer;transition:transform var(--duration-fast) var(--ease-out-expo),background var(--duration-fast) ease,box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;will-change:transform;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-primary);font-family:inherit}.btn:hover{background:var(--color-neutral-bg)}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:active{transform:scale(.975);transition-duration:var(--duration-instant)}.btn-primary{background:var(--color-accent-primary);color:#fff;border-color:transparent;font-weight:var(--weight-semibold)}.btn-primary:hover{background:color-mix(in srgb,var(--color-accent-primary),#000 10%);transform:translateY(-1px)}.btn-primary:active{background:color-mix(in srgb,var(--color-accent-primary),#000 15%);transform:scale(.975)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-large{width:100%;height:48px;font-size:var(--font-body-lg);font-weight:600;border-radius:var(--radius-button)}.btn-icon{background:none;border:none;cursor:pointer;padding:var(--space-xs);font-size:var(--font-body-lg);color:var(--color-text-secondary);border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.btn-icon:active{background:var(--color-neutral-bg)}.btn-small{height:36px;padding:0 14px;font-size:var(--font-caption);border-radius:var(--radius-button)}.btn-link{background:none;border:none;color:var(--color-accent-primary);font-size:var(--font-caption);cursor:pointer;padding:var(--space-xs) 0;font-weight:var(--weight-medium);text-decoration:none}.btn-link:hover{opacity:.8}.btn-link:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}.btn-link:active{opacity:.7}.btn-danger{background:var(--color-negative-bg);color:var(--color-negative-primary);border-color:transparent;font-weight:var(--weight-semibold)}.btn-danger:hover,.btn-danger:active{background:var(--color-negative-bg)}.btn-destructive{background:var(--color-negative-bg);color:var(--color-negative-primary);border-color:transparent;font-weight:var(--weight-semibold)}.btn-destructive:hover{background:var(--color-negative-bg)}.btn-ghost{background:none;border:none;color:var(--color-accent-primary);padding:0 var(--space-sm)}.btn-ghost:hover{background:var(--color-accent-bg)}.btn-loading{pointer-events:none;opacity:.7}.btn-row{display:flex;gap:var(--space-sm)}.details-toggle-row{display:flex;justify-content:flex-end;padding:0 0 var(--space-sm) 0}.details-toggle-btn{font-size:var(--font-body-sm)}.next-match-section{margin-bottom:var(--space-lg)}.next-match-label{font-size:var(--font-body-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-positive-primary);margin-bottom:var(--space-sm)}.upcoming-matches-section{margin-bottom:var(--space-lg)}.upcoming-matches-toggle{font-size:var(--font-body-sm);margin-bottom:var(--space-sm)}.results-section{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-divider)}.results-section-label{font-size:var(--font-body-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.badge{font-size:var(--font-micro);font-weight:var(--weight-semibold);padding:3px 10px;border-radius:var(--radius-chip);text-transform:uppercase;letter-spacing:.5px;display:inline-block}.badge-setup{background:var(--color-neutral-bg);color:var(--color-text-secondary)}.badge-live{background:var(--color-warning-bg);color:var(--color-warning-primary)}.badge-done{background:var(--color-positive-bg);color:var(--color-positive-primary)}.status-badge{display:inline-flex;align-items:center;font-size:var(--font-micro);font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:var(--radius-md);line-height:1;white-space:nowrap}.status-badge-confirmed{background:var(--color-positive-bg);color:var(--color-positive-primary)}.status-badge-proposed,.status-badge-pending{background:var(--color-warning-bg);color:var(--color-warning-primary)}.status-badge-completed{background:var(--color-neutral-bg);color:var(--color-neutral-primary)}.status-badge-cancelled,.status-badge-error{background:var(--color-negative-bg);color:var(--color-negative-primary)}.status-badge-in-progress{background:var(--color-accent-bg);color:var(--color-accent-primary)}.section-header{font-size:var(--font-body-sm);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent-primary);margin-bottom:var(--space-lg);padding-top:var(--space-sm)}.card-list{display:flex;flex-direction:column;gap:var(--space-lg)}.card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:24px;box-shadow:var(--shadow);cursor:pointer;position:relative;transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart),border-color var(--duration-normal);will-change:transform;border:1px solid var(--color-divider)}.card:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--color-accent-primary),transparent 75%)}.card-status-row,.action-card-status-row,.offer-card-status-row,.waitlist-card-status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-xs)}.action-card-status-meta{display:inline-flex;align-items:center;gap:var(--space-xs);min-width:0}.card-summary-main,.action-card-main,.offer-card-main,.waitlist-card-main{display:flex;flex-direction:column;gap:2px}.card-supporting,.action-card-supporting,.match-card-supporting,.offer-card-supporting,.waitlist-card-supporting{font-size:var(--font-body-md);color:var(--color-text-secondary)}.card-expansion-panel,.action-card-expansion,.match-card-expansion{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-divider);animation:expansion-enter var(--duration-normal) var(--ease-out-expo) both}@keyframes expansion-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.card-expansion-panel>*,.action-card-expansion>*,.match-card-expansion>*{width:100%}.card-meta-chip{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:0 var(--space-sm);border-radius:var(--radius-chip);font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-neutral-bg);font-variant-numeric:tabular-nums}.card-info-tooltip{position:relative;display:inline-flex;align-items:center}.card-info-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-chip);border:1px solid var(--color-divider);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);font-family:inherit;cursor:help;flex-shrink:0}.card-info-tooltip-bubble{position:absolute;top:calc(100% + 8px);right:0;width:min(240px,calc(100vw - 48px));padding:var(--space-sm) var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.45;box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .16s var(--ease-out-quart),transform .16s ease,visibility .16s ease;pointer-events:none;z-index:var(--z-sticky)}.card-info-tooltip:hover .card-info-tooltip-bubble,.card-info-tooltip:focus-within .card-info-tooltip-bubble{opacity:1;visibility:visible;transform:translateY(0)}.card-meta-chip--blue{background:#2a5bd714;color:#2a5bd7d1}.card-meta-chip--amber{background:var(--color-warning-bg);color:var(--color-warning-primary)}.card-meta-chip--purple{background:var(--color-purple-bg);color:var(--color-purple-primary)}.card-meta-chip--red{background:var(--color-negative-bg);color:var(--color-negative-primary)}.card-status-label{font-size:var(--font-micro);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.14em;color:var(--color-text-secondary)}.card-status-label--slate{color:var(--color-text-secondary)}.card-status-label--blue{color:var(--color-accent-primary)}.card-status-label--green{color:var(--color-positive-primary)}.card-status-label--amber{color:var(--color-warning-primary)}.card-status-label--purple{color:var(--color-purple-primary)}.card-status-label--red{color:var(--color-negative-primary)}.card-inline-alert{cursor:default}.card-inline-alert:active{transform:none}.card-inline-alert--warning{border-left:4px solid var(--color-warning-primary)}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.card:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.card:active{transform:scale(.985);transition-duration:.06s}.card-eyebrow{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-xs)}.card-title{font-size:var(--font-title-sm);font-weight:700;color:var(--color-text-primary);line-height:1.15;letter-spacing:-.015em}.card-secondary{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:2px}.workflow-module{display:flex;flex-direction:column;gap:var(--space-md)}.workflow-header{display:flex;flex-direction:column;gap:4px}.workflow-status{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em}.workflow-status--slate{color:var(--color-text-secondary)}.workflow-status--blue{color:var(--color-accent-primary)}.workflow-status--green{color:var(--color-positive-primary)}.workflow-status--amber{color:var(--color-warning-primary)}.workflow-status--purple{color:var(--color-purple-primary)}.workflow-status--red{color:var(--color-negative-primary)}.workflow-divider{height:1px;background:var(--color-divider)}.workflow-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.card-action-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 var(--space-lg);border:none;border-radius:var(--radius-chip);background:var(--color-positive-bg);color:var(--color-positive-primary);font-size:var(--font-caption);font-weight:var(--weight-semibold);font-family:inherit;cursor:pointer;transition:background var(--duration-fast);margin-top:var(--space-md)}.card-action-btn:active{background:var(--color-positive-bg)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.card-top h3{font-size:var(--font-body-lg);font-weight:700;letter-spacing:-.015em;line-height:1.15}.card-meta{display:flex;gap:var(--space-md);font-size:var(--font-caption);color:var(--color-text-secondary)}.delete-btn{position:absolute;top:var(--space-sm);right:var(--space-sm);color:var(--color-text-muted)}.form{display:flex;flex-direction:column;gap:var(--space-xl)}.field{display:flex;flex-direction:column;gap:var(--space-xs);border:none}.field-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}input[type=text],input[type=email],input[type=date],input[type=time]{height:44px;padding:0 var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-button);font-size:var(--font-body-lg);font-family:inherit;background:var(--color-bg-surface);outline:none;width:100%;color:var(--color-text-primary)}input:hover:not(:focus):not(:disabled){border-color:var(--color-text-muted)}input:focus{border-color:var(--color-accent-primary);box-shadow:var(--shadow-focus)}input:disabled,select:disabled{opacity:.5;cursor:not-allowed;background:var(--color-neutral-bg)}select{height:44px;padding:0 var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-button);font-size:var(--font-body-md);font-family:inherit;background:var(--color-bg-surface);outline:none;color:var(--color-text-primary);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236B7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}select:hover:not(:focus):not(:disabled){border-color:var(--color-text-muted)}select:focus{border-color:var(--color-accent-primary);box-shadow:var(--shadow-focus)}.radio-group{display:flex;gap:var(--space-sm)}.radio-card{flex:1;padding:var(--space-lg);border:2px solid var(--color-divider);border-radius:var(--radius-card);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-xs);transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;background:var(--color-bg-surface)}.radio-card input{display:none}.radio-card strong{font-size:var(--font-body-md)}.radio-card span{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.radio-card:hover{border-color:var(--color-text-muted)}.radio-card:active{transform:scale(.985);transition-duration:var(--duration-instant)}.radio-card:focus-within{border-color:var(--color-accent-primary);box-shadow:var(--shadow-focus)}.radio-card.selected{border-color:var(--color-accent-primary);background:var(--color-accent-bg);animation:selection-pop var(--duration-fast) var(--ease-out-expo)}@keyframes selection-pop{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}.section{margin-bottom:var(--space-xl)}.section h2{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);margin-bottom:var(--space-md)}.player-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-xs)}.player-list li{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:var(--color-bg-surface);border-radius:var(--radius-button);border-bottom:1px solid var(--color-divider)}.player-list li:last-child{border-bottom:none}.player-list li.is-you{background:var(--color-accent-bg)}.player-num{width:24px;height:24px;background:var(--color-neutral-bg);color:var(--color-neutral-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-body-sm);font-weight:var(--weight-bold);flex-shrink:0}.player-name{flex:1;font-size:var(--font-body-md);font-weight:var(--weight-medium)}.player-rating{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);background:var(--color-neutral-bg);padding:2px var(--space-sm);border-radius:var(--radius-chip);font-variant-numeric:tabular-nums}.you-badge{font-size:var(--font-micro);color:var(--color-accent-primary);font-weight:var(--weight-semibold);margin-left:6px}.tab-bar{display:flex;gap:var(--space-sm);margin-bottom:var(--space-lg);padding:0}.tab{padding:var(--space-sm) var(--space-lg);border:none;background:var(--color-neutral-bg);border-radius:var(--radius-chip);font-size:var(--font-body-md);font-weight:var(--weight-medium);cursor:pointer;color:var(--color-text-secondary);transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;font-family:inherit}.tab.active{background:var(--color-accent-bg);color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.round-progress{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:var(--space-xl);padding:var(--space-md) var(--space-lg);background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow)}.round-progress-item{display:flex;align-items:center;gap:0}.round-progress-dot{width:10px;height:10px;border-radius:50%;background:var(--color-divider);flex-shrink:0;transition:background var(--duration-normal) var(--ease-out-quart),box-shadow var(--duration-normal) ease}.round-progress-dot.completed{background:var(--color-positive-primary)}.round-progress-dot.active{background:var(--color-accent-primary);box-shadow:0 0 0 3px #2a5bd733;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px #2a5bd733}50%{box-shadow:0 0 0 6px #2a5bd71a}}.round-progress-dot.upcoming{background:var(--color-divider)}.round-progress-label{font-size:var(--font-micro);font-weight:var(--weight-semibold);color:var(--color-text-muted);margin-left:var(--space-xs);white-space:nowrap}.round-progress-label.completed{color:var(--color-positive-primary)}.round-progress-label.active{color:var(--color-accent-primary);font-weight:var(--weight-bold)}.round-progress-line{width:24px;height:2px;background:var(--color-divider);margin:0 var(--space-xs);flex-shrink:0}.round-progress-line.completed{background:var(--color-positive-primary)}.bracket{display:flex;flex-direction:column;gap:var(--space-xxl)}.round{display:flex;flex-direction:column;gap:var(--space-lg);position:relative}.round-label{font-size:var(--font-body-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);font-weight:var(--weight-semibold);margin-bottom:var(--space-xs)}.round-final .round-label{font-size:var(--font-body-md);font-weight:700;color:var(--color-text-primary);letter-spacing:.06em}.bracket-connector{display:flex;justify-content:center;padding:var(--space-md) 0}.bracket-connector-line{width:2px;height:32px;background:var(--color-accent-primary);border-radius:1px;opacity:.5}.match-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:20px 24px;box-shadow:var(--shadow);border-left:6px solid var(--color-divider);transition:border-color var(--duration-fast) var(--ease-out-quart),transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart);display:flex;flex-direction:column;gap:var(--space-md);animation:cardSlideIn .48s var(--ease-out-expo) both;animation-delay:calc(var(--i, 0) * 55ms)}.match-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.match-card.match-card-final{padding:20px var(--space-xl);box-shadow:var(--shadow-md);border-left:4px solid var(--color-accent-primary)}.match-card.match-card-final .match-player{font-size:var(--font-body-lg);padding:var(--space-sm) 0}.match-card.match-card-final .match-vs{font-size:var(--font-body-sm)}.match-card.winner-path{border-left:4px solid var(--color-positive-primary)}.match-card.match-card--needs-score{border-left-color:var(--color-warning-primary)}.match-card.match-card--needs-confirmation{border-left-color:var(--color-accent-primary)}.match-card.scoreable{cursor:pointer}.match-card.scoreable:hover{box-shadow:var(--shadow-hover)}.match-card.scoreable:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.match-card.scoreable:active{transform:scale(.985);transition-duration:var(--duration-instant)}.match-card.my-match{background:var(--color-bg-surface)}.match-card.sched-proposed{cursor:pointer;border-left-color:var(--color-accent-primary)}.match-card.sched-confirmed{border-left-color:var(--color-positive-primary)}.match-card.sched-proposed.my-match{background:var(--color-bg-surface)}.match-card.sched-escalated{border-left-color:var(--color-negative-primary)}.match-card.sched-unscheduled{border-left-color:var(--color-warning-primary)}.match-card.sched-double-loss{opacity:.6}.match-card-eyebrow{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:0}.match-card-supporting{font-variant-numeric:tabular-nums}.match-card-supporting--danger{color:var(--color-negative-primary)}.match-card.sched-confirmed .match-card-eyebrow{color:var(--color-positive-primary)}.match-card.sched-proposed .match-card-eyebrow{color:var(--color-accent-primary)}.match-card.sched-escalated .match-card-eyebrow{color:var(--color-negative-primary)}.match-card.sched-unscheduled .match-card-eyebrow{color:var(--color-warning-primary)}.match-card.completed .match-card-eyebrow{color:var(--color-text-secondary)}.match-card.match-card--needs-score .match-card-eyebrow{color:var(--color-warning-primary)}.match-card.match-card--needs-confirmation .match-card-eyebrow{color:var(--color-accent-primary)}.match-card-title-block{display:flex;flex-direction:column;gap:var(--space-xs)}.match-card-title{font-size:var(--font-title-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.match-card-self{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs);font-size:var(--font-body-sm);color:var(--color-text-secondary)}.match-card-summary{display:flex;flex-direction:column;gap:8px}.match-card-meta-chip{flex-shrink:0}.match-card-summary-separator{font-size:var(--font-micro);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted)}.match-card-scoreboard{display:flex;flex-direction:column;gap:var(--space-xs);padding-top:var(--space-sm);border-top:1px solid var(--color-divider)}.match-card-action-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 var(--space-lg);border:none;border-radius:var(--radius-chip);background:var(--color-positive-bg);color:var(--color-positive-primary);font-size:var(--font-caption);font-weight:var(--weight-semibold);font-family:inherit;cursor:pointer;margin-top:var(--space-md)}.match-card-action-btn:hover{opacity:.9}.match-card-action-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.match-card-action-btn:active{opacity:.8}.match-card.sched-proposed .match-card-action-btn{background:var(--color-accent-bg);color:var(--color-accent-primary)}.match-card.sched-escalated .match-card-action-btn{background:var(--color-negative-bg);color:var(--color-negative-primary)}.match-card.sched-unscheduled .match-card-action-btn{background:var(--color-warning-bg);color:var(--color-warning-primary)}.match-card.completed .match-card-action-btn{background:var(--color-neutral-bg);color:var(--color-neutral-primary)}.match-players-row{display:flex;align-items:center}.match-players-names{flex:1;min-width:0}.match-time-slot{display:flex;flex-direction:column;align-items:center;margin-left:var(--space-md);flex-shrink:0;line-height:1.1}.match-time-day{font-size:var(--font-body-sm);color:var(--color-text-muted);font-weight:var(--weight-medium);letter-spacing:0}.match-time-hour{font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-positive-primary);font-variant-numeric:tabular-nums}.match-time-slot--proposed .match-time-day,.match-time-slot--proposed .match-time-hour{color:var(--color-accent-primary)}.match-time-slot--completed .match-time-day{color:var(--color-text-muted);text-transform:none;font-size:var(--font-body-sm)}.match-player{display:flex;justify-content:space-between;align-items:center;padding:var(--space-xs) 0;padding-left:0;font-size:var(--font-body-md);font-weight:var(--weight-semibold);position:relative}.match-player.winner{font-weight:var(--weight-bold);color:var(--color-positive-primary)}.prob-indicator{width:3px;align-self:stretch;border-radius:2px;flex-shrink:0;margin-right:var(--space-sm)}.prob-indicator-p1{background:var(--color-accent-primary)}.prob-indicator-p2{background:var(--color-text-muted);opacity:.4}.match-player-name{display:flex;align-items:center;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-vs{text-align:center;font-size:var(--font-micro);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;padding:2px 0}.match-score{color:var(--color-text-secondary);font-size:var(--font-body-md);font-variant-numeric:tabular-nums}.match-sets{display:flex;gap:2px;margin-left:var(--space-sm);flex-shrink:0}.set-score{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);background:var(--color-neutral-bg);border-radius:3px;font-variant-numeric:tabular-nums}.set-score.set-won{font-weight:var(--weight-bold);color:var(--color-text-primary);background:var(--color-positive-bg)}.tap-hint{display:none}.bye-label{text-align:center;font-size:var(--font-caption);color:var(--color-text-muted);padding:var(--space-xs);font-style:italic}.match-card-bye{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-card);background:var(--color-neutral-bg);opacity:.6}.bye-player{font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.bye-tag{font-size:var(--font-micro);font-weight:var(--weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.seed-label{color:var(--color-text-muted);font-size:var(--font-body-sm);font-weight:var(--weight-medium);margin-left:var(--space-xs)}.prob-split{display:flex;align-items:center;gap:var(--space-xs);margin-top:var(--space-sm)}.prob-split-bar{flex:1;display:flex;height:8px;border-radius:4px;overflow:hidden;gap:2px}.prob-split-fill-left{height:100%;background:var(--color-accent-primary);border-radius:4px 0 0 4px;transition:width var(--duration-normal) var(--ease-out-quart)}.prob-split-fill-right{height:100%;background:var(--color-text-muted);opacity:.3;border-radius:0 4px 4px 0;transition:width var(--duration-normal) var(--ease-out-quart)}.prob-split-label{font-size:var(--font-micro);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;min-width:32px}.prob-split-p1{color:var(--color-accent-primary);text-align:right}.prob-split-p2{color:var(--color-text-muted);text-align:left}.winner-banner{background:linear-gradient(135deg,var(--color-positive-bg) 0%,var(--color-warning-bg) 100%);padding:var(--space-xl);border-radius:var(--radius-card);text-align:center;margin-bottom:var(--space-lg);border:1px solid rgba(31,157,85,.15)}.winner-trophy{font-size:var(--font-hero);line-height:1;margin-bottom:var(--space-sm)}.winner-name{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:2px}.winner-subtitle{font-size:var(--font-body-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:1px;margin-bottom:var(--space-xs)}.completed-summary{display:flex;flex-direction:column;gap:var(--space-lg)}.completed-placement{display:flex;flex-direction:column;gap:var(--space-sm)}.completed-trophy-card{display:flex;align-items:center;gap:var(--space-md);background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow)}.completed-trophy-icon{font-size:var(--font-hero-sm);line-height:1;flex-shrink:0}.completed-trophy-tier{font-size:var(--font-body-lg);font-weight:var(--weight-bold);color:var(--color-text-primary)}.completed-trophy-detail{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px}.completed-final-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow);text-align:center}.completed-final-label{font-size:var(--font-body-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--weight-semibold);margin-bottom:var(--space-xs)}.completed-final-result{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.completed-final-score{font-variant-numeric:tabular-nums;font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:var(--space-xs)}.completed-stats{display:flex;gap:var(--space-lg);justify-content:center}.completed-stat{text-align:center}.completed-stat-value{font-variant-numeric:tabular-nums;font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary)}.completed-stat-label{font-size:var(--font-body-sm);color:var(--color-text-muted)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:flex-end;justify-content:center;z-index:var(--z-dropdown);animation:overlay-fade-in var(--duration-normal) var(--ease-out-quart) both}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--color-bg-surface);border-radius:var(--radius-card) var(--radius-card) 0 0;padding:var(--space-xl) 20px;width:100%;max-width:480px;max-height:80vh;overflow-y:auto;animation:modal-slide-up var(--duration-slow) var(--ease-out-expo) both}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.modal h2{font-size:var(--font-title-sm);font-weight:var(--weight-bold);margin-bottom:var(--space-xl)}.modal-actions{display:flex;gap:var(--space-md)}.modal-actions .btn{flex:1}.score-grid{display:grid;grid-template-columns:1fr repeat(2,60px);gap:var(--space-sm);align-items:center;margin-bottom:var(--space-md);padding:var(--space-md);border:1px solid rgba(17,17,17,.06);border-radius:var(--radius-md);background:#f6f7f9b8}.score-header{font-size:var(--font-body-sm);color:var(--color-text-secondary);text-align:center;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.score-player-name{font-size:var(--font-body-md);font-weight:var(--weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-input{width:60px;height:44px;text-align:center;border:1px solid rgba(17,17,17,.08);border-radius:var(--radius-button);font-size:var(--font-title-sm);font-weight:var(--weight-semibold);outline:none;font-family:inherit;color:var(--color-text-primary);-moz-appearance:textfield;background:var(--color-bg-surface);font-variant-numeric:tabular-nums}.score-input::-webkit-outer-spin-button,.score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.score-input:focus{border-color:var(--color-accent-primary);box-shadow:var(--shadow-focus)}.score-input.score-invalid{border-color:var(--color-negative-primary)}.score-error{font-size:var(--font-body-sm);color:var(--color-negative-primary);margin-bottom:var(--space-xs)}.win-probability{margin-bottom:var(--space-lg)}.prob-bar{height:6px;background:var(--color-neutral-bg);border-radius:3px;overflow:hidden;margin-bottom:var(--space-xs)}.prob-fill{height:100%;background:var(--color-positive-primary);border-radius:3px;transition:width var(--duration-normal)}.prob-labels{display:flex;justify-content:space-between;font-size:var(--font-micro);color:var(--color-text-secondary)}.winner-preview{text-align:center;padding:6px 0;font-size:var(--font-body-sm);color:var(--color-text-secondary);font-weight:var(--weight-medium)}.standings{overflow-x:auto}.standings table{width:100%;border-collapse:collapse;font-size:var(--font-body-md)}.standings th{text-align:left;padding:var(--space-sm) var(--space-md);font-size:var(--font-micro);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-divider);font-weight:var(--weight-semibold)}.standings td{padding:var(--space-md);font-size:var(--font-body-md);border-bottom:1px solid #E3E3E5}.standings tr:nth-child(2n){background:var(--color-neutral-bg)}.standings tr{transition:background var(--duration-instant) var(--ease-out-quart)}.standings tr:hover{background:var(--color-surface-pressed)}.rank,.standings .rank{font-weight:var(--weight-bold);text-align:center;width:32px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.player-cell{font-weight:var(--weight-semibold);letter-spacing:-.01em}.stat-cell{text-align:center;font-variant-numeric:tabular-nums;font-weight:var(--weight-medium)}.group-standings-inline{margin:var(--space-md) 0;padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-divider)}.group-standings-table{width:100%;border-collapse:collapse;font-size:var(--font-body-md)}.group-standings-table th{text-align:left;padding:var(--space-sm);font-size:var(--font-body-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);font-weight:var(--weight-semibold)}.group-standings-table td{padding:10px;border-bottom:1px solid var(--color-neutral-bg)}.group-standings-table .rank{font-weight:var(--weight-bold);color:var(--color-text-secondary);width:30px}.group-standings-table .player-cell{font-weight:var(--weight-medium)}.group-standings-table .stat-cell{text-align:center;font-variant-numeric:tabular-nums}.group-standings-table tr.qualifies td,.group-standings-table tr.qualifies .rank{color:var(--color-primary)}.qualification-hint{margin-top:var(--space-sm);font-size:var(--font-body-sm);color:var(--color-text-secondary);text-align:center;font-style:italic}.register-hero{text-align:center;padding:var(--space-3xl) 20px var(--space-xl)}.register-hero p{color:var(--color-text-secondary);font-size:var(--font-body-lg);margin-top:var(--space-sm)}.onboard-screen{display:flex;flex-direction:column;min-height:calc(100dvh - 56px);padding:var(--space-lg) var(--space-xl) var(--space-xs);padding-bottom:max(5px,env(safe-area-inset-bottom,5px));justify-content:space-between;background:var(--color-bg-surface);touch-action:pan-y;-webkit-user-select:none;user-select:none;overflow:hidden}.onboard-logo{display:flex;align-items:center;justify-content:center;padding-top:12px}.onboard-logo-text{font-size:var(--font-title-lg);font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1}.onboard-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:0 8px}.onboard-title{font-size:var(--font-display-md);font-weight:var(--weight-bold);line-height:.95;color:var(--color-text-primary);letter-spacing:-.03em;max-width:320px}.onboard-subtitle{font-size:var(--font-body-lg);color:var(--color-text-secondary);max-width:300px;line-height:1.45;font-weight:400}.onboard-visual{margin-bottom:24px;animation:onboardFadeIn .35s var(--ease-out-expo) forwards}.onboard-chat{display:flex;flex-direction:column;gap:var(--space-sm);width:320px}.onboard-chat-bubble{padding:12px 16px;border-radius:var(--radius-lg);font-size:var(--font-body-md);line-height:1.35;max-width:240px;opacity:0;animation:onboardSlideUp .3s var(--ease-out-expo) forwards}.onboard-chat-bubble:nth-child(1){animation-delay:.1s}.onboard-chat-bubble:nth-child(2){animation-delay:.3s}.onboard-chat-bubble:nth-child(3){animation-delay:.5s}.onboard-chat-bubble:nth-child(4){animation-delay:.7s}.onboard-chat-out{align-self:flex-end;background:var(--color-accent-blue);color:#fff;border-bottom-right-radius:6px}.onboard-chat-in{align-self:flex-start;background:var(--color-neutral-bg);color:var(--color-text-primary);border-bottom-left-radius:6px}.onboard-chat-chaotic .onboard-chat-bubble:nth-child(1){transform:rotate(-1deg)}.onboard-chat-chaotic .onboard-chat-bubble:nth-child(2){transform:rotate(1.5deg)}.onboard-chat-chaotic .onboard-chat-bubble:nth-child(3){transform:rotate(-2deg)}.onboard-chat-chaotic .onboard-chat-bubble:nth-child(4){transform:rotate(1deg)}.onboard-match-visual{background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-card);padding:20px;width:320px;display:flex;flex-direction:column;gap:12px;opacity:0;animation:onboardFadeIn .4s var(--ease-out-expo) .1s forwards}.onboard-match-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-divider)}.onboard-match-row:last-of-type{border-bottom:none}.onboard-match-player{font-weight:600;font-size:var(--font-body-md)}.onboard-match-time{font-size:var(--font-label);color:var(--color-text-secondary)}.onboard-match-confirmed{display:flex;align-items:center;gap:8px;font-weight:600;font-size:var(--font-body-md);color:var(--color-positive-primary);padding-top:4px;opacity:0;animation:onboardFadeIn .4s var(--ease-out-expo) .5s forwards}.onboard-match-check{animation:greenPulse 2s ease-in-out 1s infinite;filter:drop-shadow(0 0 4px rgba(31,157,85,.4))}.onboard-leaderboard{background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-card);padding:20px;width:320px;opacity:0;animation:onboardFadeIn .4s var(--ease-out-expo) .1s forwards}.onboard-lb-header{font-size:var(--font-body-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.onboard-lb-row{display:flex;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-divider);font-size:var(--font-body-md)}.onboard-lb-row:last-child{border-bottom:none}.onboard-lb-you{background:var(--color-surface-hover);margin:0 -20px;padding-left:20px;padding-right:20px;border-radius:var(--radius-sm);font-weight:var(--weight-bold);color:var(--color-accent-primary)}.onboard-lb-rank{width:32px;color:var(--color-text-muted);font-weight:600}.onboard-lb-name{flex:1}.onboard-lb-rating{color:var(--color-text-secondary);font-size:var(--font-label)}.onboard-matchup{display:flex;align-items:center;gap:20px;opacity:0;animation:onboardFadeIn .4s var(--ease-out-expo) .1s forwards}.onboard-matchup-player{display:flex;flex-direction:column;align-items:center;gap:8px}.onboard-matchup-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-neutral-bg);border:2px solid var(--color-divider);display:flex;align-items:center;justify-content:center;font-size:var(--font-body-md);font-weight:700;color:var(--color-text-secondary)}.onboard-matchup-rating{font-size:var(--font-title-sm);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.onboard-matchup-vs{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.onboard-matchup-vs-label{font-size:var(--font-caption);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.onboard-matchup-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-md);background:var(--color-surface-pressed);color:var(--color-accent-primary);font-size:var(--font-body-sm);font-weight:var(--weight-bold);white-space:nowrap}.onboard-actions{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:16px}.onboard-btn{width:100%}.onboard-dots{display:flex;gap:8px}.onboard-dot{width:6px;height:6px;border-radius:50%;background:var(--color-divider);transition:background var(--duration-fast)}.onboard-dot.active{background:var(--color-accent-primary);box-shadow:0 0 0 3px #2a5bd726}.onboard-login{display:block;text-align:center;font-size:var(--font-body-lg);font-weight:600;color:var(--color-accent-primary);padding:8px 0;background:none;border:none;cursor:pointer;transition:opacity var(--duration-instant) var(--ease-out-quart)}.onboard-login:hover{opacity:.8}.onboard-login:active{opacity:.6}@keyframes onboardFadeIn{0%{opacity:0}to{opacity:1}}@keyframes onboardSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.signup-screen{justify-content:flex-start;padding-top:32px;padding-bottom:40px;background:var(--color-bg-surface);position:relative}.signup-screen:before{display:none}.signup-logo{text-align:center;margin-bottom:32px}.signup-content{width:100%;max-width:400px;margin:0 auto}.signup-header{text-align:center;margin-bottom:28px}.signup-title{font-size:var(--font-title-lg);font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.1;color:var(--color-text-primary)}.signup-subtitle{font-size:var(--font-body-md);font-weight:500;color:var(--color-text-secondary);margin-top:4px}.signup-desc{font-size:var(--font-label);color:var(--color-text-muted);margin-top:8px;line-height:1.4}.signup-invite-banner{background:var(--color-accent-bg);color:var(--color-accent-primary);font-size:var(--font-body-md);font-weight:var(--weight-medium);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-button);text-align:center;margin-bottom:var(--space-lg)}.signup-form{display:flex;flex-direction:column;gap:16px}.auth-card{padding:var(--space-xl);border-radius:var(--radius-lg);border:1px solid rgba(17,17,17,.08);background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 3px #0000000a,0 8px 32px #0f172a0f}.auth-field{gap:var(--space-sm)}.auth-input{height:52px;border-radius:var(--radius-md);border:1.5px solid var(--color-divider);background:var(--color-bg-surface);font-size:var(--font-body-lg);transition:border-color var(--duration-fast) var(--ease-out-quart),box-shadow .2s}.auth-input:focus{border-color:var(--color-accent-primary);box-shadow:0 0 0 3px #2a5bd71a;outline:none}.auth-input::placeholder{color:var(--color-text-muted)}.auth-input--otp{text-align:center;letter-spacing:.3em;font-size:var(--font-heading-lg);font-family:var(--font-mono, monospace)}.signup-cta{margin-top:8px}.auth-cta{width:100%;justify-content:center;border-radius:var(--radius-button);height:52px;font-size:var(--font-body-md);font-weight:700;background:var(--color-accent-primary);color:#fff;border:none;box-shadow:0 2px 10px #2a5bd740;transition:background var(--duration-fast) var(--ease-out-quart),transform var(--duration-fast) var(--ease-out-quart),box-shadow .2s}.auth-cta:hover:not(:disabled){background:color-mix(in srgb,var(--color-accent-primary),#000 12%);transform:translateY(-1px) scale(1.01);box-shadow:0 4px 16px #2a5bd74d}.auth-cta:active:not(:disabled){transform:scale(.98);box-shadow:0 1px 4px #2a5bd726;transition-duration:.06s}.auth-cta:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.otp-error{color:var(--color-negative-primary);font-size:var(--font-body-sm);text-align:left;margin:0}.otp-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:28px}.otp-actions .btn-link{font-size:var(--font-label);font-weight:600;color:var(--color-positive-primary)}.signup-social-proof{text-align:center;font-size:var(--font-caption);color:var(--color-text-muted);margin-top:20px;font-weight:500}.auth-helper-copy{margin-top:var(--space-md)}.county-suggestions{position:absolute;left:0;right:0;top:100%;background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-button);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);max-height:220px;overflow-y:auto}.county-suggestion-item{display:block;width:100%;text-align:left;padding:var(--space-md) var(--space-md);border:none;background:none;font-family:inherit;font-size:var(--font-body-md);color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-instant) var(--ease-out-quart)}.county-suggestion-item:hover{background:var(--color-surface-hover)}.county-suggestion-item:active{background:#e0e2e4}.field{position:relative}.county-detected{display:flex;flex-direction:column;gap:var(--space-xs)}.county-detected-label{font-size:var(--font-body-sm);color:var(--color-text-muted)}.county-detected-btn{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);background:var(--color-positive-bg);border:1px solid var(--color-positive-primary);border-radius:var(--radius-button);font-family:inherit;font-size:var(--font-body-md);color:var(--color-text-primary);cursor:pointer;font-weight:var(--weight-medium)}.county-detected-use{color:var(--color-positive-primary);font-weight:var(--weight-semibold);font-size:var(--font-body-sm)}.skill-gender-form{display:flex;flex-direction:column;gap:var(--space-lg);margin-bottom:var(--space-lg)}.skill-options{display:flex;flex-direction:column;gap:var(--space-sm)}.skill-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-md) var(--space-lg);border:1.5px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg-surface);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast),transform var(--duration-instant);text-align:left;font-family:inherit;color:var(--color-text-primary)}.skill-option:hover{border-color:#8a9099}.skill-option:active{transform:scale(.98)}.skill-option.selected{border-color:var(--color-accent-primary);background:var(--color-surface-hover);box-shadow:0 0 0 3px #2a5bd714}.skill-option-label{font-weight:var(--weight-semibold);font-size:var(--font-body-md)}.skill-option-desc{font-size:var(--font-body-sm);color:var(--color-text-muted)}.gender-options{display:flex;gap:var(--space-sm)}.gender-option{flex:1;padding:var(--space-md) var(--space-lg);border:1.5px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-bg-surface);cursor:pointer;font-size:var(--font-label);font-weight:var(--weight-medium);transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast),transform var(--duration-instant);font-family:inherit;color:var(--color-text-primary)}.gender-option:hover{border-color:#8a9099}.gender-option:active{transform:scale(.97)}.gender-option.selected{border-color:var(--color-accent-primary);background:var(--color-surface-hover);font-weight:var(--weight-semibold);box-shadow:0 0 0 3px #2a5bd714}.availability-picker{margin-bottom:var(--space-sm)}.avail-screen .signup-content{gap:0}.avail-header{text-align:center;margin-bottom:var(--space-md)}.avail-value-prop{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:var(--space-xs);line-height:1.4}.avail-value-highlight{color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.avail-frequency{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md)}.avail-frequency-label{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary);white-space:nowrap}.avail-frequency-options{display:flex;gap:var(--space-xs);flex:1}.avail-frequency-pill{flex:1;padding:8px 0;border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-surface);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);font-family:inherit;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;text-align:center}.avail-frequency-pill.selected{border-color:var(--color-accent-primary);background:#2a5bd70d;color:var(--color-accent-primary)}.avail-frequency-pill:active{transform:scale(.97)}.avail-add-custom-link{display:block;background:none;border:none;font-family:inherit;font-size:var(--font-body-sm);color:var(--color-accent-primary);cursor:pointer;padding:var(--space-xs) 0;margin-top:var(--space-xs)}.avail-custom-section{margin-top:var(--space-xs)}.avail-threshold{font-size:var(--font-body-sm);color:var(--color-positive-primary);font-weight:var(--weight-medium);margin:0 0 2px}.avail-mode-toggle{display:flex;background:var(--color-bg-secondary);border-radius:var(--radius-button);padding:3px;margin-bottom:var(--space-md)}.avail-mode-btn{flex:1;padding:8px 0;border:none;border-radius:calc(var(--radius-button) - 2px);background:transparent;font-size:var(--font-body-md);font-weight:var(--weight-medium);font-family:inherit;color:var(--color-text-muted);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.avail-mode-btn.active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.quick-slots-v2{display:flex;flex-direction:column;gap:var(--space-sm)}.quick-slot-v2{display:flex;align-items:center;gap:8px;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-bg-surface);font-size:var(--font-body-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;text-align:left;font-family:inherit;color:var(--color-text-primary)}.quick-slot-v2.selected{border-color:var(--color-accent-primary);background:#2a5bd70d}.quick-slot-v2-check{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:var(--font-caption);color:var(--color-accent-primary);font-weight:var(--weight-bold);flex-shrink:0}.quick-slot-v2-label{flex:1;font-weight:var(--weight-medium)}.quick-slot-v2-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.quick-slot-v2-time{font-size:var(--font-body-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.quick-slots-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.quick-slots-grid .quick-presets-hint{font-size:var(--font-caption);color:var(--color-text-muted);margin:0}.avail-feedback{min-height:44px;opacity:0;transition:opacity var(--duration-fast) var(--ease-out-quart);padding:var(--space-sm) 0}.avail-feedback.visible{opacity:1}.avail-feedback-row{display:flex;align-items:baseline;gap:var(--space-xs)}.avail-feedback-count{font-variant-numeric:tabular-nums;font-size:var(--font-body-md);font-weight:700;color:var(--color-positive-primary)}.avail-feedback-label{font-size:var(--font-body-md);color:var(--color-text-secondary)}.avail-nudge{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:2px}.avail-nudge--positive{color:var(--color-positive-primary)}.avail-cap-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0;border-top:1px solid var(--color-divider);margin-bottom:var(--space-md)}.avail-cap-label{font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-primary);white-space:nowrap}.avail-cap-pills{display:flex;gap:var(--space-xs)}.avail-cap-pill{width:36px;height:32px;border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-surface);font-size:var(--font-body-md);font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;padding:0;font-family:inherit}.avail-cap-pill.selected{border-color:var(--color-accent-primary);background:#2a5bd70d;color:var(--color-accent-primary)}.avail-cap-pill:active{transform:scale(.95)}.avail-cap-duration{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-left:auto;font-variant-numeric:tabular-nums}.detailed-slot-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.detailed-slots{display:flex;flex-direction:column;gap:var(--space-xs)}.detailed-slot-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-bg-surface);border-radius:var(--radius-button);border:1px solid var(--color-divider);font-size:var(--font-body-md)}.detailed-add-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto minmax(0,1fr) auto;gap:var(--space-xs);align-items:center}.detailed-add-row select{height:40px;padding:0 var(--space-sm);border-radius:var(--radius-button);border:1px solid var(--color-divider);font-size:var(--font-body-md);background:var(--color-bg-surface);font-family:inherit}.availability-custom-card,.availability-slots-card{padding:var(--space-md);border-radius:var(--radius-card);border:1px solid rgba(17,17,17,.06);background:#f6f7f9b8;display:flex;flex-direction:column;gap:var(--space-sm)}.availability-custom-label,.availability-slots-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.availability-range-separator{color:var(--color-text-secondary);font-weight:var(--weight-semibold)}.availability-custom-add-btn{align-self:flex-start}.availability-editor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.availability-editor-actions .btn{width:100%;justify-content:center}.availability-actions{display:flex;flex-direction:column;gap:8px;margin-top:24px}.lobby-section{display:flex;flex-direction:column;gap:var(--space-xl)}.lobby-header{display:flex;justify-content:space-between;align-items:center}.lobby-header h2{font-size:var(--font-title-md);font-weight:var(--weight-bold);letter-spacing:-.025em;line-height:1.05}.lobby-count{font-size:var(--font-caption);color:var(--color-accent-primary);background:var(--color-surface-pressed);padding:var(--space-xs) 10px;border-radius:var(--radius-chip);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.lobby-hint{text-align:center;margin-top:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-body-md)}.countdown-banner{text-align:center;background:var(--color-neutral-bg);border:1px solid #CDD1D6;border-radius:var(--radius-card);padding:var(--space-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow)}.countdown-label{font-size:var(--font-caption);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--weight-semibold)}.countdown-timer{font-size:var(--font-title-lg);font-weight:var(--weight-bold);color:var(--color-accent-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:var(--space-xs) 0}.countdown-detail{font-size:var(--font-caption);color:var(--color-text-secondary)}.lobby-action{margin-top:var(--space-sm);display:flex;flex-direction:column;gap:var(--space-sm)}.invite-btn{width:100%}.formation-hero{cursor:default;text-align:left;padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md)}.formation-hero:active{transform:none}.formation-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary);line-height:1.15;letter-spacing:-.02em;margin-bottom:var(--space-sm)}.formation-desc{font-size:var(--font-body-md);color:var(--color-text-secondary);line-height:1.5;margin-bottom:var(--space-lg)}.formation-player-count{display:flex;align-items:baseline;gap:2px;margin-bottom:var(--space-sm)}.formation-count-mono{font-variant-numeric:tabular-nums;font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-accent-primary)}.formation-count-sep{font-variant-numeric:tabular-nums;font-size:var(--font-body-lg);color:var(--color-text-muted);margin:0 1px}.formation-count-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-left:var(--space-sm)}.formation-progress-bar{height:6px;background:var(--color-neutral-bg);border-radius:var(--radius-chip);overflow:hidden;margin-bottom:var(--space-md)}.formation-progress-animated .formation-progress-fill{animation:progressGrow .5s var(--ease-out-quart) forwards}@keyframes progressGrow{0%{width:0%}}.formation-progress-fill{height:100%;border-radius:var(--radius-chip);transition:width .6s var(--ease-out-expo),background var(--duration-normal) ease;min-width:2px}.formation-logic{font-size:var(--font-body-sm);color:var(--color-text-muted);line-height:1.5;margin-bottom:var(--space-lg)}.formation-availability-prompt{background:var(--color-surface-hover);border-left:4px solid var(--color-accent-primary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-md);font-size:var(--font-body-sm);line-height:1.5}.formation-availability-prompt p{margin:0}.formation-availability-hint{color:var(--color-text-muted);margin-top:var(--space-xs)}.formation-actions{display:flex;flex-direction:column;gap:var(--space-sm)}.formation-cta-primary{font-weight:var(--weight-semibold);letter-spacing:.01em}.formation-cta-secondary{background:var(--color-neutral-bg);color:var(--color-text-primary);font-weight:var(--weight-medium)}.formation-choice-options{display:flex;flex-direction:column;gap:var(--space-sm)}.formation-choice-options .btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-md) var(--space-lg)}.formation-choice-options .btn.btn-primary{font-size:var(--font-body-md)}.formation-choice-options .formation-cta-secondary{background:var(--color-neutral-bg);color:var(--color-text-secondary)}.formation-choice-options .formation-cta-secondary .formation-choice-label{color:var(--color-text-primary);font-weight:var(--weight-medium)}.formation-choice-label{font-weight:var(--weight-semibold);font-size:var(--font-body)}.formation-choice-desc{font-size:var(--font-body-sm);opacity:.75;font-weight:var(--weight-regular)}.formation-countdown{margin-bottom:var(--space-lg)}.formation-countdown-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--weight-semibold)}.formation-countdown-timer{font-variant-numeric:tabular-nums;font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-accent-primary)}.formation-players{cursor:default}.formation-players:active{transform:none}.formation-players-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);margin-bottom:var(--space-md)}.player-number{width:20px;font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;flex-shrink:0}.formation-leave{text-align:center}.friend-tournament-section{display:flex;flex-direction:column;gap:var(--space-md)}.friend-tournament-header{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.friend-tournament-empty p{font-size:var(--font-body-md);color:var(--color-text-secondary);line-height:1.5}.friend-tournament-card{border-left:3px solid var(--color-positive-primary)}.friend-tournament-cancel{color:var(--color-negative-primary);font-size:var(--font-body-sm)}.friend-tournament-create{width:100%;background:var(--color-bg-surface);border:1px dashed var(--color-divider);color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.friend-tournament-create:hover{border-color:var(--color-accent-primary);background:var(--color-accent-bg)}.card-meta-chip--green{background:var(--color-positive-bg);color:var(--color-positive-primary)}.share-subtitle{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.hero-next-step{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);margin-top:var(--space-sm)}.hero-next-step--warning{background:color-mix(in srgb,var(--color-warning-primary) 10%,transparent);border-left:3px solid var(--color-warning-primary)}.hero-next-step--info{background:color-mix(in srgb,var(--color-accent-primary) 8%,transparent);border-left:3px solid var(--color-accent-primary)}.hero-step-icon{flex-shrink:0;font-size:var(--font-label);line-height:20px}.hero-step-text{display:flex;flex-direction:column;gap:2px}.hero-step-text strong{font:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.hero-step-text span{font:var(--font-caption);color:var(--color-text-secondary)}.hero-checklist{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-sm)}.hero-check-item{display:flex;align-items:center;gap:var(--space-xs);font:var(--font-caption);color:var(--color-text-secondary)}.hero-check-done{color:var(--color-positive-primary);font-weight:var(--weight-bold)}.hero-all-clear{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) 0;font:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-positive-primary)}.hero-check{font-size:var(--font-body-md)}.hero-invite-nudge{display:flex;flex-direction:column;gap:var(--space-sm);padding-top:var(--space-xs)}.hero-invite-nudge span{font:var(--font-caption);color:var(--color-text-secondary)}.hero-action-summary{font:var(--font-body-md);color:var(--color-text-secondary);padding-top:var(--space-xs)}.share-options{display:flex;flex-direction:column;gap:var(--space-sm)}.share-close{text-align:center;margin-top:var(--space-lg)}.profile-content{display:flex;flex-direction:column;gap:var(--space-xl)}.profile-card{text-align:center;padding:20px;background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow)}.profile-identity-card .profile-card{padding:0;background:transparent;border-radius:0;box-shadow:none}.profile-avatar{width:72px;height:72px;background:var(--color-accent-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-title-lg);font-weight:var(--weight-bold);margin:0 auto var(--space-md);box-shadow:0 4px 12px #2a5bd733}.profile-name{font-size:var(--font-title-md);font-weight:var(--weight-bold);letter-spacing:-.025em;line-height:1.05}.profile-county{color:var(--color-text-secondary);font-size:var(--font-body-md);margin-top:var(--space-xs)}.profile-details{color:var(--color-text-muted);font-size:var(--font-body-sm);margin-top:2px}.rating-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-xl);box-shadow:var(--shadow);text-align:center}.rating-big{font-size:var(--font-display-lg);font-weight:var(--weight-bold);color:var(--color-accent-primary);line-height:.9;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.rating-label-text{font-size:var(--font-body-md);color:var(--color-text-secondary);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-xs)}.stats-row{display:flex;gap:var(--space-sm)}.stat-box{flex:1;background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg) var(--space-sm);box-shadow:var(--shadow);text-align:center;animation:cardSlideIn .44s var(--ease-out-expo) both;animation-delay:calc(var(--i, 0) * 60ms)}.stat-value{font-size:var(--font-display-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:.95;color:var(--color-text-primary)}.stat-label{font-size:var(--font-micro);color:var(--color-text-secondary);font-weight:var(--weight-semibold);text-transform:uppercase;margin-top:2px}.logout-btn{margin-top:var(--space-md);color:var(--color-negative-primary);border-color:var(--color-divider)}.profile-section{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-xl);border-left:4px solid var(--color-accent-primary);box-shadow:0 1px 2px #0000000a,0 12px 32px -20px #2a5bd733;display:flex;flex-direction:column;gap:var(--space-md)}.profile-section-title{font-size:var(--font-body-md);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent-primary);margin-bottom:var(--space-md);display:flex;justify-content:space-between;align-items:center}.availability-current{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-md)}.profile-availability-copy{margin-bottom:var(--space-md);font-size:var(--font-body-md);color:var(--color-text-secondary)}.availability-empty-state{padding:var(--space-sm) 0}.availability-empty-note{color:var(--color-warning-primary);font-size:var(--font-body-sm);margin-top:8px}.availability-slot-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-neutral-bg);border-radius:var(--radius-button);font-size:var(--font-body-md)}.availability-slot-day{font-weight:700}.availability-slot-hours{color:var(--color-text-secondary)}.availability-current--editing{margin-bottom:0}.profile-availability-editor{gap:var(--space-md)}.profile-hero-card{background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow);overflow:hidden}.profile-hero-banner{height:80px;background:linear-gradient(135deg,var(--color-accent-primary) 0%,color-mix(in srgb,var(--color-accent-primary),#000 20%) 100%)}.profile-hero-photo{cursor:pointer;width:88px;height:88px;margin:-44px auto 0;position:relative}.profile-hero-photo-img{width:88px;height:88px;border-radius:50%;object-fit:cover;display:block;border:4px solid var(--color-bg-surface)}.profile-hero-avatar{width:88px;height:88px;background:linear-gradient(135deg,var(--color-accent-primary),color-mix(in srgb,var(--color-accent-primary),#000 20%));color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-hero-sm);font-weight:var(--weight-bold);border:4px solid var(--color-bg-surface)}.profile-hero-info{text-align:center;padding:var(--space-sm) var(--space-lg) 0}.profile-hero-name{font-size:var(--font-title-md);font-weight:var(--weight-bold);letter-spacing:-.025em;color:var(--color-text-primary);margin:0;line-height:1.1}.profile-hero-county{font-size:var(--font-body-md);color:var(--color-text-secondary);margin:4px 0 0;text-transform:capitalize}.profile-hero-tags{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:var(--space-sm)}.profile-hero-level{padding:3px 12px;border-radius:100px;background:var(--color-accent-bg);color:var(--color-accent-primary);font-size:var(--font-body-sm);font-weight:var(--weight-semibold)}.profile-hero-joined{font-size:var(--font-body-sm);color:var(--color-text-muted)}.profile-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:var(--space-lg) var(--space-md) 0;padding:0 0 var(--space-lg)}.profile-hero-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--space-md) 0;position:relative}.profile-hero-stat:not(:last-child):after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:1px;height:32px;background:var(--color-divider)}.profile-hero-stat-value{font-size:var(--font-title-md);font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--color-text-primary);font-variant-numeric:tabular-nums;line-height:1}.profile-hero-stat-sep{font-weight:400;color:var(--color-text-muted)}.profile-hero-stat-label{font-size:var(--font-nano);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.8px;font-weight:var(--weight-semibold);margin-top:2px}.profile-identity-card{cursor:default}.profile-identity-header{display:flex;align-items:center;gap:var(--space-lg)}.profile-identity-header .profile-photo-section{cursor:pointer;flex-shrink:0;text-align:center}.profile-identity-header .profile-avatar{margin:0;width:72px;height:72px;font-size:var(--font-title-lg)}.profile-identity-header .profile-avatar-img{width:72px;height:72px;border-radius:50%;object-fit:cover;display:block}.profile-photo-hint{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:4px}.profile-identity-info{min-width:0}.profile-identity-info .profile-name{font-size:var(--font-title-md);font-weight:var(--weight-bold);margin:0;line-height:1.05;letter-spacing:-.025em}.profile-identity-info .profile-email{font-size:var(--font-body-sm);color:var(--color-text-muted);margin:2px 0 0}.profile-identity-info .profile-county{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:2px}.profile-identity-meta{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-md)}.profile-meta-chip{display:inline-block;padding:4px 12px;border-radius:var(--radius-chip);background:var(--color-neutral-bg);font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.profile-meta-chip--accent{background:var(--color-accent-bg);color:var(--color-accent-primary)}.profile-bio-display{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:var(--space-md);line-height:1.5;border-left:3px solid var(--color-divider);padding-left:var(--space-md)}.profile-edit-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:var(--space-lg);cursor:default}.profile-edit-title{font-size:var(--font-body-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);margin:0}.profile-edit-subtitle{font-size:var(--font-body-sm);color:var(--color-text-muted);margin:2px 0 0}.profile-edit-field{display:flex;flex-direction:column;gap:var(--space-xs)}.profile-edit-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px}.profile-edit-hint{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:right}.profile-edit-field .form-input{width:100%;box-sizing:border-box}.profile-style-options{display:flex;gap:8px;flex-wrap:wrap}.profile-style-pill{padding:6px 16px;border-radius:var(--radius-chip);border:1px solid var(--color-divider);background:var(--color-bg-surface);font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.profile-style-pill:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.profile-style-pill.active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff}.profile-courts-list{display:flex;flex-wrap:wrap;gap:8px}.profile-court-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-chip);background:var(--color-neutral-bg);font-size:var(--font-body-md);font-weight:var(--weight-medium)}.profile-court-remove{background:none;border:none;padding:0;font-size:var(--font-body-sm);color:var(--color-text-muted);cursor:pointer;line-height:1}.profile-court-remove:hover{color:var(--color-negative-primary)}.profile-court-add .form-input{flex:1}.profile-avail-header{display:flex;justify-content:space-between;align-items:flex-start}.profile-avail-warning{color:var(--color-warning-primary);font-size:var(--font-body-sm);margin-top:8px}.avail-social-proof{display:flex;align-items:baseline;gap:var(--space-xs);margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-divider)}.avail-social-proof-count{font-variant-numeric:tabular-nums;font-size:var(--font-body-md);font-weight:700;color:var(--color-positive-primary)}.avail-social-proof-label{font-size:var(--font-body-md);color:var(--color-text-secondary)}.avail-profile-nudge{font-size:var(--font-body-sm);color:var(--color-accent-primary);margin-top:4px}.tournament-history{display:flex;flex-direction:column;gap:var(--space-sm)}.history-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-neutral-bg);border-radius:var(--radius-button)}.history-card-info{display:flex;flex-direction:column;gap:2px}.history-card-name{font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.history-card-meta{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.history-card-result{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);padding:2px var(--space-sm);border-radius:var(--radius-chip)}.history-card-result.won{background:var(--color-positive-bg);color:var(--color-positive-primary)}.history-card-result.lost{background:var(--color-negative-bg);color:var(--color-negative-primary)}.match-history-list{display:flex;flex-direction:column;gap:2px}.match-history-item{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--color-divider);cursor:pointer}.match-history-item:last-child{border-bottom:none}.match-result-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:var(--font-body-sm);font-weight:var(--weight-bold);flex-shrink:0}.match-result-badge.win{background:var(--color-positive-bg);color:var(--color-positive-primary)}.match-result-badge.loss{background:var(--color-negative-bg);color:var(--color-negative-primary)}.match-history-info{flex:1;min-width:0}.match-history-opponent{font-size:var(--font-body-md);font-weight:var(--weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.match-history-meta{font-size:var(--font-body-xs);color:var(--color-text-secondary)}.match-history-score{font-size:var(--font-body-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.match-history-toggle{width:100%;text-align:center;padding-top:8px}.recent-activity{cursor:default}.recent-results-list{display:flex;flex-direction:column}.recent-result-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-divider);cursor:pointer}.recent-result-item:last-child{border-bottom:none}.recent-result-players{display:flex;align-items:center;gap:4px;font-size:var(--font-body-sm);min-width:0;flex:1}.recent-result-name{font-weight:var(--weight-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-result-name.is-me{color:var(--color-accent-primary)}.recent-result-def{color:var(--color-text-muted);font-size:var(--font-body-xs);flex-shrink:0}.recent-result-score{font-size:var(--font-body-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:8px}.h2h-card{background:var(--color-bg-secondary);border-radius:var(--radius-md);padding:12px 16px;margin-bottom:12px}.h2h-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.h2h-title{font-weight:var(--weight-semibold);font-size:var(--font-body-md)}.h2h-record{display:flex;align-items:center;gap:8px;font-size:var(--font-heading-lg);font-weight:var(--weight-bold);justify-content:center;margin-bottom:8px}.h2h-wins{color:var(--color-positive-primary)}.h2h-losses{color:var(--color-negative-primary)}.h2h-divider{color:var(--color-text-secondary);font-weight:var(--weight-normal)}.h2h-matches{display:flex;flex-direction:column;gap:4px}.h2h-match-row{display:flex;align-items:center;gap:8px;font-size:var(--font-body-sm);padding:4px 0}.h2h-result{width:20px;font-weight:var(--weight-bold)}.h2h-match-row.won .h2h-result{color:var(--color-positive-primary)}.h2h-match-row.lost .h2h-result{color:var(--color-negative-primary)}.h2h-score{font-variant-numeric:tabular-nums}.h2h-tournament{color:var(--color-text-secondary);flex:1;text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-panel{margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-primary);border:1px solid var(--color-divider);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-md)}.action-card-expansion .schedule-panel{margin-top:0;padding:0;background:none;border:none;border-radius:0}.action-card-expansion .schedule-score-entry{padding:0;border:none;border-radius:0;background:none}.inline-score-entry{margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-card);display:flex;flex-direction:column;gap:var(--space-md)}.inline-score-entry--embedded{margin-top:0;padding:0;background:transparent;border:none;border-radius:0}.schedule-panel--danger{background:#f0f1f3;border-color:#cdd0d4}.schedule-panel--info{background:var(--color-surface-hover);border-color:#bcc0c6}.schedule-panel--success{background:var(--color-surface-hover);border-color:#c0c5ca}.schedule-panel-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.schedule-panel-copy{font-size:var(--font-body-sm);color:var(--color-text-secondary);line-height:1.5}.schedule-panel-compact-header{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--space-xs)}.schedule-panel-actions{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.schedule-panel-link{padding:0;background:none;border:none;color:var(--color-accent-primary);font-size:var(--font-body-sm);font-weight:var(--weight-medium);cursor:pointer}.schedule-panel-link--danger{color:var(--color-negative-primary)}.score-entry-title{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-warning-primary)}.score-entry-copy{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.schedule-status-badge{font-size:var(--font-micro);font-weight:var(--weight-semibold);padding:3px 10px;border-radius:var(--radius-chip);text-transform:uppercase;letter-spacing:.5px;display:inline-block;margin-bottom:var(--space-sm)}.badge-confirmed{background:var(--color-positive-bg);color:var(--color-positive-primary)}.badge-proposed{background:var(--color-accent-bg);color:var(--color-accent-primary)}.badge-escalated{background:var(--color-negative-bg);color:var(--color-negative-primary)}.badge-unscheduled{background:var(--color-neutral-bg);color:var(--color-text-secondary)}.badge-walkover{background:var(--color-warning-bg);color:var(--color-warning-primary)}.badge-forced{background:var(--color-purple-bg);color:var(--color-purple-primary)}.badge-double-loss{background:var(--color-neutral-bg);color:var(--color-text-secondary)}.confirmed-slot{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;padding:var(--space-sm) 0;font-size:var(--font-body-lg);line-height:1.4}.confirmed-day{font-weight:var(--weight-bold);color:var(--color-text-primary)}.confirmed-time{color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.proposal-list{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-sm)}.proposal-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:var(--color-bg-surface);border-radius:var(--radius-button);border:1px solid var(--color-divider);gap:var(--space-sm);transition:border-color var(--duration-fast),background var(--duration-fast)}.proposal-card:hover{border-color:#b0b5bc;background:#fafafa}.proposal-card.proposal-mine{opacity:.6;border-style:dashed}.proposal-info{display:flex;flex-direction:column;gap:2px}.proposal-time{font-size:var(--font-body-md);font-weight:var(--weight-medium);font-variant-numeric:tabular-nums}.proposal-from{font-size:var(--font-micro);color:var(--color-text-secondary)}.propose-link{margin-top:var(--space-xs)}.propose-form{background:#fbfbfb;border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-md)}.schedule-workflow-card{padding:var(--space-md)}.schedule-workflow-card--danger{background:#f0f1f3;border-color:#cdd0d4}.schedule-form-section{display:flex;flex-direction:column;gap:var(--space-xs)}.schedule-form-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary)}.schedule-choice-grid{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.schedule-choice-pill{min-height:36px;padding:8px 12px;border-radius:var(--radius-chip);border:1px solid var(--color-divider);background:var(--color-bg-surface);color:var(--color-text-primary);font-size:var(--font-body-sm);font-family:inherit;cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out-quart),background var(--duration-fast),color var(--duration-fast),transform var(--duration-instant)}.schedule-choice-pill:hover{border-color:#a0a6ae;background:var(--color-neutral-bg)}.schedule-choice-pill:active{transform:scale(.96)}.schedule-choice-pill.is-selected{border-color:var(--color-accent-primary);background:var(--color-accent-bg);color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.schedule-choice-pill--danger.is-selected{border-color:var(--color-negative-primary);background:var(--color-negative-bg);color:var(--color-negative-primary);font-weight:var(--weight-semibold)}.schedule-form-note{padding:var(--space-sm);border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-neutral-bg);font-size:var(--font-body-sm);color:var(--color-text-secondary);line-height:1.5}.schedule-time-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);gap:var(--space-sm)}.schedule-form-field{display:flex;flex-direction:column;gap:var(--space-xs)}.schedule-form-select{min-height:40px;padding:0 var(--space-sm);border-radius:var(--radius-button);border:1px solid var(--color-divider);background:var(--color-bg-surface);color:var(--color-text-primary);font-size:var(--font-body-md);font-family:inherit}.schedule-note-field{min-height:88px}.schedule-locked-note{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-button);border:1px solid #BCC0C6;background:var(--color-surface-hover);color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.5}.propose-row{display:flex;gap:var(--space-xs);align-items:center;margin-bottom:var(--space-sm)}.propose-row select{height:36px;padding:0 var(--space-sm);border-radius:var(--radius-button);border:1px solid var(--color-divider);font-size:var(--font-caption);background:var(--color-bg-surface);font-family:inherit}.propose-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap}.propose-actions .btn{flex:1}.confirmed-actions-shell{display:flex;flex-direction:column;gap:var(--space-sm)}.confirmed-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:var(--space-md)}.confirmed-actions .btn,.confirmed-actions .btn-link{margin-top:0}.confirmed-actions-danger{display:flex}.confirmed-actions-danger .btn{width:100%}.cancel-match-link{color:var(--color-negative-primary);font-weight:var(--weight-medium);font-size:var(--font-label);justify-content:center}.schedule-score-entry{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-card);background:var(--color-bg-surface)}.confirmed-actions-footer{display:flex;justify-content:flex-start}@media (max-width: 520px){.schedule-time-grid,.confirmed-actions{grid-template-columns:1fr}}.schedule-indicator{display:none}.resolution-indicator{text-align:center;font-size:var(--font-body-sm);font-weight:var(--weight-semibold);padding:var(--space-xs) 0 2px}.resolution-indicator.resolution-walkover{color:var(--color-warning-primary)}.resolution-indicator.resolution-forced-match{color:var(--color-purple-primary)}.resolution-indicator.resolution-double-loss{color:var(--color-text-secondary)}.resolution-detail{font-size:var(--font-caption);color:var(--color-text-secondary);margin:6px 0;line-height:1.4}.broadcast-section{margin-bottom:var(--space-xl)}.broadcast-feedback{background:var(--color-positive-primary);color:#fff;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-button);font-size:var(--font-caption);text-align:center;margin-bottom:var(--space-md)}.broadcast-empty-state{text-align:center;padding:var(--space-3xl) 20px;color:var(--color-text-secondary);font-size:var(--font-body-md)}.broadcast-play-now-btn{width:100%;margin-bottom:var(--space-lg);border:none;cursor:pointer;font-family:inherit;text-align:left;background:var(--color-bg-surface);color:var(--color-text-primary)}.broadcast-play-now-btn:active{transform:scale(.98)}.broadcast-play-now-btn .action-card-status-row,.broadcast-play-now-btn .action-card-main{width:100%}.broadcast-fab-group{position:fixed;bottom:80px;right:16px;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-sm);z-index:var(--z-dropdown)}.broadcast-fab{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--color-accent-primary);color:#fff;border:none;border-radius:50%;font-size:var(--font-body-lg);font-weight:var(--weight-bold);cursor:pointer;box-shadow:0 4px 12px #2a5bd74d;transition:transform var(--duration-instant) var(--ease-out-quart)}.broadcast-fab:active{transform:scale(.95)}.broadcast-fab-secondary{width:auto;height:auto;background:var(--color-bg-surface);color:var(--color-neutral-primary);box-shadow:var(--shadow-md);font-size:var(--font-caption);font-weight:var(--weight-semibold);padding:10px var(--space-lg);border-radius:var(--radius-chip)}.broadcast-fab-secondary:active{background:var(--color-neutral-bg)}.broadcast-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow);margin-bottom:var(--space-sm)}.broadcast-card-own{background:var(--color-accent-bg)}.broadcast-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.broadcast-player-name{display:inline-flex;align-items:center;gap:var(--space-xs);font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.broadcast-badge{font-size:var(--font-micro);font-weight:var(--weight-semibold);padding:2px var(--space-sm);border-radius:var(--radius-chip);background:var(--color-positive-bg);color:var(--color-positive-primary);text-transform:uppercase;letter-spacing:.5px}.broadcast-badge-own{background:var(--color-accent-bg);color:var(--color-accent-primary)}.broadcast-card-details{display:flex;gap:var(--space-md);font-size:var(--font-caption);color:var(--color-text-secondary);margin-bottom:6px;flex-wrap:wrap}.broadcast-detail{display:flex;align-items:center;gap:var(--space-xs)}.broadcast-cancel-btn{width:100%;margin-top:var(--space-xs);color:var(--color-negative-primary);border-color:var(--color-divider)}.broadcast-mine{margin-bottom:var(--space-lg)}.broadcast-form{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow);margin-bottom:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.broadcast-form-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold)}.broadcast-time-row{display:flex;gap:var(--space-md)}.field-half{flex:1}.broadcast-form-actions{display:flex;gap:var(--space-md)}.broadcast-form-actions .btn{flex:1}.broadcast-create-card{margin-bottom:var(--space-lg)}.broadcast-create-card .action-card-expansion,.broadcast-form-fields{display:flex;flex-direction:column;gap:var(--space-md)}.broadcast-create-card input[type=text],.broadcast-create-card input[type=date],.broadcast-create-card input[type=time]{width:100%;max-width:100%;min-width:0;font-size:var(--font-body-md)}.broadcast-create-card .field,.broadcast-create-card .field-half{min-width:0}.broadcast-create-card .broadcast-time-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);width:100%}.broadcast-timeline{margin-bottom:var(--space-xl)}.broadcast-timeline-title{font-size:var(--font-body-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);font-weight:var(--weight-semibold);margin-bottom:var(--space-md)}.broadcast-timeline-group{margin-bottom:var(--space-lg)}.broadcast-timeline-date{font-size:var(--font-caption);font-weight:var(--weight-semibold);color:var(--color-text-secondary);padding-bottom:6px;border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-sm)}.broadcast-timeline-entries{display:flex;flex-direction:column;gap:var(--space-sm)}.broadcast-timeline-entry{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow);cursor:pointer;display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;transition:background var(--duration-instant)}.broadcast-timeline-entry:active{background:var(--color-neutral-bg)}.broadcast-timeline-time{font-size:var(--font-caption);font-weight:var(--weight-semibold);color:var(--color-accent-primary);min-width:130px}.broadcast-timeline-player{flex:1;min-width:0}.broadcast-timeline-name{font-size:var(--font-body-md);font-weight:var(--weight-semibold);display:block}.broadcast-timeline-location{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.broadcast-timeline-message{font-size:var(--font-body-sm);color:var(--color-text-secondary);font-style:italic;width:100%;padding-left:142px;margin-top:-4px}.broadcast-timeline-claim{flex-shrink:0}.broadcast-claim-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);padding:var(--space-lg)}.broadcast-claim-modal{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-xl);max-width:340px;width:100%;box-shadow:var(--shadow-lg)}.broadcast-claim-title{font-size:var(--font-title-sm);font-weight:var(--weight-bold);margin-bottom:var(--space-lg);text-align:center}.broadcast-claim-info{text-align:center;margin-bottom:var(--space-xl)}.broadcast-claim-player{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);margin-bottom:var(--space-sm)}.broadcast-claim-detail{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:2px}.broadcast-claim-message{font-size:var(--font-caption);color:var(--color-text-secondary);font-style:italic;margin-top:var(--space-sm)}.broadcast-claim-actions{display:flex;gap:var(--space-md)}.broadcast-claim-actions .btn{flex:1}.offer-list{display:flex;flex-direction:column;gap:var(--space-sm)}.offer-card{padding:20px;cursor:default}.offer-card:active{transform:none}.offer-card-incoming{border-left:4px solid var(--color-accent-primary)}.offer-card-outgoing{border-left:4px solid var(--color-text-muted)}.offer-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)}.offer-card-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em}.offer-card-incoming .offer-card-label{color:var(--color-accent-primary)}.offer-card-outgoing .offer-card-label{color:var(--color-text-secondary)}.offer-card-expires{font-size:var(--font-body-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.offer-card-time{font-variant-numeric:tabular-nums;font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary)}.offer-card-date{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.offer-card-opponent{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-md)}.offer-card-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-md)}.offer-accept-btn{flex:1}.offer-decline-btn{flex:1;background:var(--color-neutral-bg);color:var(--color-text-primary)}.offer-cancel-btn{color:var(--color-text-muted)}.offer-confirm-time{font-variant-numeric:tabular-nums;font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary);text-align:center}.offer-confirm-date{font-size:var(--font-body-md);color:var(--color-text-secondary);text-align:center;margin-bottom:var(--space-sm)}.quickplay-request-summary{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-sm)}.quickplay-request-header{display:flex;flex-direction:column;gap:4px}.quickplay-request-copy{font-size:var(--font-body-md);color:var(--color-text-secondary)}.quickplay-request-detail{display:flex;flex-direction:column;gap:4px;padding:var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-neutral-bg)}.quickplay-request-detail-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary)}.quickplay-request-detail-value{font-size:var(--font-body-md);color:var(--color-text-primary);font-variant-numeric:tabular-nums}.quickplay-request-panel .workflow-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}@media (max-width: 480px){.broadcast-create-card .broadcast-time-row,.quickplay-request-panel .workflow-actions{grid-template-columns:1fr}}.offer-confirm-note{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;margin:var(--space-md) 0}.notif-unread{background:var(--color-accent-bg)}.availability-toggle-btn{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px var(--space-lg);margin-bottom:var(--space-lg);background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-card);font-size:var(--font-caption);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-instant);font-family:inherit}.availability-toggle-btn:active{background:var(--color-neutral-bg)}.availability-toggle-count{font-size:var(--font-body-sm);color:var(--color-text-secondary);background:var(--color-neutral-bg);padding:2px var(--space-sm);border-radius:var(--radius-chip)}.availability-overview{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow);margin-bottom:var(--space-lg)}.availability-empty{font-size:var(--font-caption);color:var(--color-text-secondary);text-align:center;padding:var(--space-md) 0}.availability-day-group{margin-bottom:var(--space-md)}.availability-day-group:last-child{margin-bottom:0}.availability-day-header{font-size:var(--font-body-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);padding-bottom:6px;border-bottom:1px solid var(--color-neutral-bg);margin-bottom:6px}.availability-day-entries{display:flex;flex-direction:column;gap:var(--space-xs)}.availability-slot-entry{display:flex;align-items:center;gap:var(--space-md);padding:6px 0}.availability-slot-time{font-size:var(--font-caption);font-weight:var(--weight-semibold);color:var(--color-accent-primary);min-width:120px}.availability-slot-name{font-size:var(--font-caption);font-weight:var(--weight-medium);color:var(--color-text-secondary)}.pn-my-broadcast{margin-bottom:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.pn-my-broadcast--active,.pn-my-broadcast-active{border-left:3px solid var(--color-positive-primary)}.broadcast-status-indicator{display:inline-flex;align-items:center;gap:var(--space-xs);font-weight:var(--weight-semibold);color:var(--color-positive-primary);font-size:var(--font-body-md)}.broadcast-status-dot,.pn-active-indicator{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--color-positive-primary);margin-right:6px;animation:broadcast-pulse 2s ease-in-out infinite}@keyframes broadcast-pulse{0%,to{opacity:1}50%{opacity:.4}}.broadcast-expiry-timer,.pn-broadcast-expiry{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:var(--space-xs);font-variant-numeric:tabular-nums}.broadcast-toast{animation:toast-slide-in .3s var(--ease-out-quart)}.pn-toast{background:var(--color-positive-primary);color:#fff;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-button);font-size:var(--font-caption);text-align:center;margin-bottom:var(--space-md);animation:toast-slide-in .3s var(--ease-out-quart)}.pn-toast-icon{margin-right:4px}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.pn-section{margin-top:var(--space-md)}.pn-section-title{font-size:var(--font-body-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);margin-bottom:2px}.pn-section-helper{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-bottom:var(--space-md)}.pn-date-group{margin-bottom:var(--space-md)}.pn-date-header{font-size:var(--font-body-sm);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);padding-bottom:6px;border-bottom:1px solid var(--color-neutral-bg);margin-bottom:var(--space-sm)}.pn-opponent-list{display:flex;flex-direction:column;gap:var(--space-sm)}.pn-opponent-row{display:flex;flex-direction:column;gap:0;padding:20px;transition:background var(--duration-instant)}.pn-opponent-card-main{display:flex;align-items:flex-start;gap:var(--space-md)}.pn-opponent-actionable{cursor:pointer}.pn-opponent-actionable:active{background:var(--color-neutral-bg)}.pn-opponent-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-accent-bg);color:var(--color-accent-primary);display:flex;align-items:center;justify-content:center;font-size:var(--font-body-md);font-weight:var(--weight-bold);flex-shrink:0}.pn-opponent-info{flex:1;min-width:0}.pn-opponent-name{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.pn-opponent-meta{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:1px}.pn-opponent-message{font-size:var(--font-body-sm);color:var(--color-text-muted);font-style:italic;margin-top:2px}.pn-available-now{color:var(--color-positive-primary);font-weight:var(--weight-semibold);margin-right:var(--space-xs)}.pn-ask-btn{flex-shrink:0;white-space:nowrap}.pn-empty-state{text-align:center;padding:var(--space-xl) var(--space-lg);background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow)}.pn-empty-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.pn-empty-desc{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.pn-empty-cta{margin-top:var(--space-sm)}.pn-modal-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-accent-bg);color:var(--color-accent-primary);font-size:var(--font-body-sm);font-weight:var(--weight-bold);margin-right:var(--space-sm);vertical-align:middle}.leave-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:var(--z-overlay);padding:var(--space-lg);animation:overlay-fade-in var(--duration-normal) var(--ease-out-quart) both}.leave-modal{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-xl);max-width:340px;width:100%;box-shadow:var(--shadow-lg);animation:modal-scale-in var(--duration-slow) var(--ease-out-expo) both}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.leave-title{font-size:var(--font-title-sm);font-weight:var(--weight-bold);margin-bottom:var(--space-md)}.leave-message{font-size:var(--font-body-md);color:var(--color-text-secondary);line-height:1.5;margin-bottom:var(--space-xl)}.leave-actions{display:flex;gap:var(--space-md)}.leave-actions .btn{flex:1}.home-section{display:flex;flex-direction:column;gap:var(--space-xxl);animation:page-fade-in var(--duration-slow) var(--ease-out-expo)}.home-tournament-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.home-tournament-header h2{font-size:var(--font-title-md);font-weight:var(--weight-bold);letter-spacing:-.025em;line-height:1.05}.home-progress{font-size:var(--font-caption);color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.action-cards{display:flex;flex-direction:column;gap:var(--space-lg)}.action-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:20px 24px 20px 28px;box-shadow:0 1px 2px #0000000a,0 8px 24px -12px #2a5bd71f;position:relative;overflow:hidden;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart);display:flex;flex-direction:column;gap:var(--space-md)}.action-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--color-accent-primary);transition:width var(--duration-normal) var(--ease-out-quart),opacity var(--duration-normal)}.action-card:hover{box-shadow:var(--shadow-hover)}.action-card:hover:before{opacity:.85}.action-card:active{transform:scale(.98);transition-duration:.06s}.action-card{animation:cardSlideIn var(--duration-slow) var(--ease-out-expo) both;animation-delay:calc(var(--i, 0) * 60ms)}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.action-card.action-confirmed:before{background:var(--color-positive-primary)}.action-card.action-respond:before{background:var(--color-accent-primary)}.action-card.action-confirm-score:before{background:var(--color-accent-primary)}.action-card.action-score:before{background:var(--color-accent-primary)}.action-card.action-message:before{background:var(--color-accent-primary)}.action-card.action-schedule:before{background:var(--color-warning-primary)}.action-card.action-escalated:before{background:var(--color-negative-primary)}.action-card.action-completed:before{background:var(--color-text-muted)}.action-card .action-card-status-row{margin-bottom:0}.action-card .action-card-main{gap:var(--space-xs)}.action-card-type{font-size:var(--font-micro);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.08em;margin-bottom:0;color:var(--color-text-secondary)}.action-score .action-card-type,.action-respond .action-card-type{color:var(--color-accent-primary)}.action-confirmed .action-card-type{color:var(--color-positive-primary)}.action-schedule .action-card-type{color:var(--color-warning-primary)}.action-escalated .action-card-type{color:var(--color-negative-primary)}.action-completed .action-card-type{color:var(--color-text-muted)}.action-confirm-score .action-card-type,.action-message .action-card-type{color:var(--color-accent-primary)}.action-card-opponent{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:1.2}.action-card-detail,.action-card-supporting{font-size:var(--font-body-md);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.action-card-supporting--danger{color:var(--color-negative-primary)}.action-card-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 20px;border:none;border-radius:var(--radius-button);font-size:var(--font-body-md);font-weight:var(--weight-semibold);font-family:inherit;cursor:pointer;margin-top:var(--space-md);transition:transform var(--duration-instant) var(--ease-out-quart),background var(--duration-fast)}.action-card-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.action-card-btn:active{transform:scale(.97);transition-duration:.06s}.action-score .action-card-btn,.action-respond .action-card-btn{background:var(--color-accent-bg);color:var(--color-accent-primary)}.action-confirmed .action-card-btn{background:var(--color-positive-bg);color:var(--color-positive-primary)}.action-schedule .action-card-btn{background:var(--color-warning-bg);color:var(--color-warning-primary)}.action-confirm-score .action-card-btn,.action-message .action-card-btn{background:var(--color-accent-bg);color:var(--color-accent-primary)}.action-escalated .action-card-btn{background:var(--color-negative-bg);color:var(--color-negative-primary)}.upnext-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:28px 24px 24px;border-left:6px solid var(--color-accent-primary);box-shadow:0 2px 6px #0000000f,0 18px 48px -20px #2a5bd759;transition:box-shadow var(--duration-normal) var(--ease-out-quart),transform var(--duration-fast) var(--ease-out-expo);animation:cardSlideIn .52s var(--ease-out-expo) both;animation-delay:.12s}.upnext-card:hover{box-shadow:0 4px 10px #00000014,0 24px 56px -18px #2a5bd76b;transform:translateY(-2px)}.upnext-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-positive-primary);margin-bottom:var(--space-xs)}.upnext-opponent{font-size:var(--font-title-lg);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1;color:var(--color-text-primary)}.upnext-time{font-size:var(--font-body-md);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.caught-up{text-align:center;padding:var(--space-3xl) var(--space-xl);color:var(--color-text-secondary)}.caught-up-icon{font-size:var(--font-display-lg);margin-bottom:var(--space-lg)}.caught-up p{font-size:var(--font-body-md)}.home-view-all{text-align:center;margin-top:var(--space-sm)}.playnow-tab{display:flex;flex-direction:column;gap:var(--space-md)}.playnow-section-title{font-size:var(--font-body-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);font-weight:var(--weight-semibold);margin-bottom:var(--space-sm)}.pn-info-banner{margin-bottom:var(--space-xs)}.pn-info-banner-content{display:flex;align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background:var(--color-neutral-bg);border-radius:var(--radius-md);font-size:var(--font-caption);color:var(--color-text-secondary);line-height:1.4}.pn-info-banner-icon{flex-shrink:0;font-size:var(--font-body-md);cursor:pointer;color:var(--color-accent-primary)}.pn-info-banner-text{flex:1}.pn-info-tooltip{margin-top:var(--space-sm);padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-size:var(--font-caption);line-height:1.5;color:var(--color-text-secondary)}.bracket-tab-header{margin-bottom:var(--space-xl)}.bracket-tab-header h2{font-size:var(--font-title-sm);font-weight:700;letter-spacing:-.02em;line-height:1.1}.bracket-tab-meta{font-size:var(--font-caption);color:var(--color-text-secondary);margin-top:2px}.bracket-leave-link{text-align:center;margin-top:var(--space-xl);padding:var(--space-md)}.bracket-leave-link button{background:none;border:none;color:var(--color-negative-primary);font-size:var(--font-caption);cursor:pointer;opacity:.7;font-family:inherit}.bracket-leave-link button:hover{opacity:1}.setup-roster{display:flex;flex-direction:column;gap:var(--space-lg)}.setup-roster-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);text-align:center;color:var(--color-text-secondary)}.leave-link-container{text-align:center;margin-top:var(--space-xl)}.leave-link{color:var(--color-negative-primary);font-size:var(--font-caption);cursor:pointer;background:none;border:none;opacity:.7;font-family:inherit}.leave-link:hover{opacity:1}.devbar-pill{position:fixed;bottom:80px;right:16px;z-index:var(--z-overlay);width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#000000bf;color:#ffffffd9;border:none;border-radius:50%;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:opacity var(--duration-fast);opacity:.85}.devbar-pill:hover{opacity:1;color:#fff}.devbar{position:fixed;top:8px;right:8px;z-index:var(--z-overlay);width:240px;background:#121216eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--color-divider);border-radius:var(--radius-md);padding:12px;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0f;max-height:80vh;overflow-y:auto;font-size:var(--font-body-sm)}.devbar-head{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:10px}.devbar-title{font-weight:700;font-size:var(--font-micro);text-transform:uppercase;letter-spacing:1px;color:#ffffff80}.devbar-user{flex:1;text-align:right;font-size:var(--font-micro);color:var(--color-accent-primary);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.devbar-close{background:none;border:none;color:#ffffff59;cursor:pointer;padding:2px;display:flex;align-items:center;transition:color var(--duration-instant)}.devbar-close:hover{color:#fff}.devbar-toast{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-micro);text-align:center;margin-bottom:8px;font-weight:500}.devbar-toast--success{background:#34c75933;color:var(--color-positive-primary)}.devbar-toast--info{background:#5a82ff26;color:var(--color-accent-primary)}.devbar-toast--error{background:#ff453a33;color:var(--color-negative-primary)}.devbar-grid{display:flex;flex-direction:column;gap:var(--space-sm)}.devbar-group{display:flex;flex-direction:column;gap:5px}.devbar-group-label{font-size:var(--font-nano);text-transform:uppercase;letter-spacing:.5px;color:#ffffff4d;font-weight:600}.devbar-row{display:flex;gap:4px}.devbar-row--wrap{flex-wrap:wrap}.devbar-btn{flex:1;padding:var(--space-xs) var(--space-sm);font-size:var(--font-micro);font-weight:600;font-family:inherit;border:1px solid rgba(255,255,255,.1);color:#fffc;background:#ffffff0f;border-radius:7px;cursor:pointer;transition:background var(--duration-instant),border-color .1s;white-space:nowrap}.devbar-btn:hover:not(:disabled){background:#ffffff1f;border-color:#fff3}.devbar-btn:active:not(:disabled){background:#ffffff2e}.devbar-btn:disabled{opacity:.35;cursor:not-allowed}.devbar-btn--accent{background:#5a82ff26;border-color:#5a82ff4d;color:var(--color-accent-primary)}.devbar-btn--accent:hover:not(:disabled){background:#5a82ff40}.devbar-btn--active{background:var(--color-accent-primary);border-color:var(--color-accent-primary);color:#fff}.activation-progress{cursor:default}.activation-progress:active{transform:none}.activation-progress-title{font-size:var(--font-body-lg);font-weight:var(--weight-bold);margin-bottom:var(--space-lg);color:var(--color-text-primary)}.activation-steps{display:flex;flex-direction:column;gap:var(--space-md)}.activation-step{display:flex;align-items:center;gap:var(--space-md)}.activation-step-check{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.activation-step-label{font-size:var(--font-body-md);color:var(--color-text-secondary)}.activation-step.completed .activation-step-label{color:var(--color-text-primary);font-weight:var(--weight-medium)}.activation-step.next .activation-step-label{color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.activation-card{cursor:default;text-align:center;padding:var(--space-xl)}.activation-card:active{transform:none}.activation-card-icon{font-size:var(--font-display-md);margin-bottom:var(--space-sm)}.activation-card-title{font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.activation-card-desc{font-size:var(--font-body-md);color:var(--color-text-secondary);line-height:1.5;margin-bottom:var(--space-lg)}.activation-card-actions{display:flex;flex-direction:column;gap:var(--space-sm)}.onboarding-card{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.onboarding-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);margin-bottom:var(--space-xs)}.onboarding-subtitle{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.onboarding-steps{display:flex;flex-direction:column;gap:var(--space-sm)}.onboarding-step{display:flex;align-items:center;gap:var(--space-sm)}.onboarding-step-icon{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center}.onboarding-step-label{font-size:var(--font-body-md);color:var(--color-text-secondary)}.onboarding-step.completed .onboarding-step-label{color:var(--color-text-primary);font-weight:var(--weight-medium)}.onboarding-cta{margin-top:var(--space-md);width:100%}.welcome-hiw-toggle{display:flex;align-items:center;gap:var(--space-xs);background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-body-sm);cursor:pointer;padding:0;margin-top:var(--space-md)}.welcome-hiw-chevron{font-size:var(--font-body-sm);transition:transform var(--duration-normal) var(--ease-out-expo);display:inline-block}.welcome-hiw-chevron.expanded{transform:rotate(90deg)}.welcome-hiw-content{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--duration-normal) var(--ease-out-expo),opacity var(--duration-normal) var(--ease-out-expo)}.welcome-hiw-content>*{overflow:hidden}.welcome-hiw-content.expanded{grid-template-rows:1fr;opacity:1;margin-top:var(--space-md)}.welcome-hiw-season{margin-top:var(--space-sm);font-size:var(--font-caption);color:var(--color-text-muted)}.rating-hero{text-align:center;padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.rating-hero .card-status-row,.rating-hero-summary{text-align:left}.rating-hero .card-status-row{margin-bottom:0}.rating-hero-number{font-size:var(--font-display-lg);font-weight:var(--weight-bold);color:var(--color-accent-primary);font-variant-numeric:tabular-nums;line-height:1}.rating-hero-label{font-size:var(--font-body-md);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-xs)}.rating-hero-details{display:flex;flex-direction:column;gap:2px;margin-top:var(--space-md)}.rating-hero-rank{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.rating-hero-percentile{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.rating-hero-change{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);margin-top:var(--space-xs)}.rating-hero-change.positive{color:var(--color-positive-primary)}.rating-hero-change.negative{color:var(--color-negative-primary)}.rating-hero-trend{font-size:var(--font-body-sm)}.rating-hero-trend.positive{color:var(--color-positive-primary)}.rating-hero-trend.negative{color:var(--color-negative-primary)}.rating-trend{font-size:.5em;vertical-align:super}.rating-trend.positive{color:var(--color-positive-primary)}.rating-trend.negative{color:var(--color-negative-primary)}.engagement-prompt{margin-top:var(--space-sm);font-size:var(--font-body-sm);color:var(--color-text-secondary);font-style:italic}.profile-matches-played{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.rating-hero-actions{display:flex;gap:var(--space-md);margin-top:var(--space-md);justify-content:center;flex-wrap:wrap}.rating-hero-link{font-size:var(--font-body-sm)}.rating-explainer-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0;background:none;border:none;cursor:pointer}.rating-explainer-toggle-text{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-accent-primary);letter-spacing:.01em}.rating-explainer-toggle-chevron{font-size:var(--font-caption);color:var(--color-accent-primary);transition:transform var(--duration-fast) var(--ease-out-quart)}.rating-explainer-toggle[aria-expanded=true] .rating-explainer-toggle-chevron{transform:rotate(90deg)}.rating-explainer{text-align:left;font-size:var(--font-body-sm);line-height:1.6;margin-top:var(--space-lg);padding:0 var(--space-xs);color:var(--color-text-secondary)}.rating-explainer p{margin:0 0 var(--space-md) 0}.rating-explainer strong{color:var(--color-text-primary);font-weight:var(--weight-bold)}.rating-tiers{display:flex;flex-direction:column;gap:0;margin:var(--space-lg) 0;border-radius:var(--radius-button);overflow:hidden;box-shadow:var(--shadow)}.rating-tier{display:flex;justify-content:space-between;align-items:center;padding:10px var(--space-lg);background:var(--color-bg-surface);border-left:4px solid var(--color-divider);transition:background var(--duration-instant) var(--ease-out-quart)}.rating-tier:not(:last-child){border-bottom:1px solid var(--color-divider)}.rating-tier:nth-child(1){border-left-color:var(--color-purple-primary)}.rating-tier:nth-child(2){border-left-color:var(--color-accent-primary)}.rating-tier:nth-child(3){border-left-color:var(--color-positive-primary)}.rating-tier:nth-child(4){border-left-color:var(--color-positive-primary)}.rating-tier:nth-child(5){border-left-color:var(--color-warning-primary)}.rating-tier:nth-child(6){border-left-color:var(--color-text-muted)}.rating-tier:nth-child(7){border-left-color:var(--color-divider)}.tier-range{font-variant-numeric:tabular-nums;font-size:var(--font-body-sm);color:var(--color-text-secondary);font-weight:var(--weight-medium);min-width:80px}.tier-label{font-weight:var(--weight-bold);font-size:var(--font-body-sm);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em;font-size:var(--font-micro)}.rating-explainer-footnote{font-size:var(--font-body-sm);color:var(--color-text-muted);margin:var(--space-sm) 0 0 0;padding-left:var(--space-xs);border-left:2px solid var(--color-divider)}.performance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-sm)}.performance-item{text-align:center;padding:var(--space-sm);background:var(--color-neutral-bg);border-radius:var(--radius-sm)}.performance-value{font-size:var(--font-title-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.performance-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px}.home-section-spaced{display:flex;flex-direction:column;gap:var(--space-xl)}.user-status-card{padding:24px;cursor:default;display:flex;flex-direction:column;gap:var(--space-md);background:var(--color-bg-surface);border-top:3px solid var(--color-accent-primary);box-shadow:0 2px 6px #0000000d,0 16px 40px -22px #2a5bd747;transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart);animation:cardSlideIn .5s var(--ease-out-expo) both}.user-status-card:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000014,0 22px 52px -20px #2a5bd759}.user-status-card:active{transform:none}.user-status-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.user-status-info{flex:1;min-width:0}.user-status-headline{font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.1}.user-status-sub{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px}.user-status-rating{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.user-status-rating-value{font-variant-numeric:tabular-nums;font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-accent-primary);line-height:1;letter-spacing:-.02em}.user-status-rating-label{font-size:var(--font-nano);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--weight-semibold)}.leaderboard-teaser{padding:24px;cursor:pointer;display:flex;flex-direction:column;gap:var(--space-md);background:var(--color-bg-surface);border-left:6px solid var(--color-accent-primary);box-shadow:0 2px 6px #0000000d,0 14px 36px -22px #2a5bd738;transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart);animation:cardSlideIn .48s var(--ease-out-expo) both;animation-delay:.18s}.leaderboard-teaser:hover{transform:translateY(-2px);box-shadow:0 4px 10px #00000014,0 20px 48px -20px #2a5bd74d}.leaderboard-teaser-title{font-size:var(--font-body-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent-primary);font-weight:700;margin-bottom:var(--space-sm)}.leaderboard-teaser-list{display:flex;flex-direction:column;gap:2px}.leaderboard-teaser-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0;animation:cardSlideIn .42s var(--ease-out-expo) both;animation-delay:calc(.22s + var(--i, 0) * 50ms)}.leaderboard-teaser-row.is-me{font-weight:var(--weight-bold);color:var(--color-accent-primary);background:var(--color-accent-bg);margin:0 -8px;padding:var(--space-xs) 8px;border-radius:var(--radius-sm)}.leaderboard-rank{width:32px;font-size:var(--font-body-sm);color:var(--color-text-secondary);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.leaderboard-teaser-row.is-me .leaderboard-rank{color:var(--color-accent-primary)}.leaderboard-name{flex:1;font-size:var(--font-body-md)}.leaderboard-rating{font-size:var(--font-body-md);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em}.leaderboard-teaser-divider{height:1px;background:var(--color-divider);margin:var(--space-xs) 0}.leaderboard-see-all{margin-top:var(--space-sm);font-size:var(--font-body-sm)}.leaderboard-screen{padding:var(--space-lg)}.lb-header{margin-bottom:var(--space-xl)}.btn-back{background:none;border:none;padding:0;font-size:var(--font-body-sm);font-family:inherit;color:var(--color-text-secondary);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.btn-back:hover{color:var(--color-text-primary)}.lb-title{font-size:var(--font-title-sm, 17px);font-weight:var(--weight-bold);margin-top:var(--space-xs);color:var(--color-text-primary);letter-spacing:-.02em;line-height:1.1}.lb-list{background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);overflow:hidden}.lb-row{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-divider);position:relative}.lb-row:last-child{border-bottom:none}.lb-row-me{background:var(--color-surface-hover)}.lb-row-me:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-accent-primary)}.lb-row-me .lb-row-name{font-weight:var(--weight-bold);color:var(--color-accent-primary)}.lb-row-me .lb-row-rating{color:var(--color-accent-primary)}.lb-row-rank{width:32px;font-size:var(--font-body-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text-secondary);flex-shrink:0;text-align:center}.lb-row-me .lb-row-rank{color:var(--color-accent-primary)}.lb-row-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);flex-shrink:0}.lb-avatar-me{background:var(--color-accent-primary);color:#fff}.lb-row-info{flex:1;display:flex;flex-direction:column;min-width:0;gap:1px}.lb-row-name{font-size:var(--font-body-md);font-weight:var(--weight-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-row-record{font-size:var(--font-caption);color:var(--color-text-secondary)}.lb-row-me .lb-row-record{color:var(--color-accent-primary);opacity:.7}.lb-row-rating{font-size:var(--font-body-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;flex-shrink:0;color:var(--color-text-primary);letter-spacing:-.02em;letter-spacing:-.01em}.lb-gap{text-align:center;padding:var(--space-sm);color:var(--color-text-muted);font-size:var(--font-body-sm);border-bottom:1px solid var(--color-divider)}.lb-total{text-align:center;margin-top:var(--space-lg);font-size:var(--font-caption);color:var(--color-text-secondary)}.lb-champion-badge{margin-left:4px;font-size:var(--font-body-sm)}.trophy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:var(--space-sm)}.trophy-cell{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-sm);background:none;border:1px solid var(--color-divider);border-radius:var(--radius-md);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast),transform var(--duration-instant)}.trophy-cell:hover{background:var(--color-surface-hover);border-color:#c4c7cb}.trophy-cell:active{transform:scale(.95)}.trophy-cell-label{font-size:var(--font-micro);color:var(--color-text-secondary);font-weight:var(--weight-medium);text-align:center}.trophy-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:var(--space-md);animation:fadeIn .2s var(--ease-out-quart)}.trophy-modal{background:var(--color-bg-surface);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:340px;width:100%;text-align:center}.trophy-modal-icon{margin-bottom:var(--space-md)}.trophy-modal-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);margin:0 0 var(--space-xs)}.trophy-modal-tier{font-size:var(--font-body-md);color:var(--color-text-secondary);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:1px}.trophy-modal-date{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.trophy-modal-match{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-neutral-bg);border-radius:var(--radius-sm);text-align:center}.trophy-modal-match-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-xs)}.trophy-modal-match-result{font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.trophy-modal-match-score{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px;font-variant-numeric:tabular-nums}.trophy-modal-close{margin-top:var(--space-lg);width:100%}.badge-grid{display:flex;gap:var(--space-sm);flex-wrap:wrap}.badge-cell{display:flex;flex-direction:column;align-items:center;gap:4px;width:64px}.badge-icon{width:36px;height:36px;border-radius:50%;background:var(--color-neutral-bg);border:2px solid var(--color-divider);display:flex;align-items:center;justify-content:center;font-size:var(--font-label);font-weight:var(--weight-bold);color:var(--color-text-secondary)}.badge-cell-label{font-size:var(--font-nano);color:var(--color-text-secondary);text-align:center;font-weight:var(--weight-medium)}.victory-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;background:#0000;transition:background .4s var(--ease-out-quart);cursor:pointer}.victory-overlay.active{background:#000000b3}.victory-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none}.victory-particle{position:absolute;top:100%;animation:particleRise 1.6s var(--ease-out-quart) forwards;opacity:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes particleRise{0%{transform:translateY(0) rotate(0);opacity:0}20%{opacity:.8}to{transform:translateY(-120vh) rotate(360deg);opacity:0}}.victory-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);transform:scale(.8);opacity:0;transition:transform .6s var(--ease-spring),opacity .6s var(--ease-out-quart)}.victory-content.active{transform:scale(1);opacity:1}.victory-trophy{animation:trophyGlow 1.5s var(--ease-out-quart) infinite alternate}.victory-trophy.champion{filter:drop-shadow(0 0 20px rgba(42,91,215,.3))}.victory-trophy.finalist{filter:drop-shadow(0 0 15px rgba(0,0,0,.15))}.victory-trophy.semifinalist{filter:drop-shadow(0 0 12px rgba(0,0,0,.12))}@keyframes trophyGlow{0%{filter:drop-shadow(0 0 8px rgba(42,91,215,.2))}to{filter:drop-shadow(0 0 24px rgba(42,91,215,.35))}}.victory-title{font-size:var(--font-hero);font-weight:var(--weight-bold);color:#fff;letter-spacing:.06em;text-transform:uppercase;line-height:.95;text-shadow:0 2px 12px rgba(0,0,0,.3)}.victory-tournament{font-size:var(--font-body-md);color:#fffc;font-weight:var(--weight-medium)}.victory-subtitle{font-size:var(--font-body-sm);color:#fff9}@keyframes greenPulse{0%,to{filter:drop-shadow(0 0 4px rgba(31,157,85,.3))}50%{filter:drop-shadow(0 0 10px rgba(31,157,85,.6))}}.county-detect-btn{display:flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-lg);background:var(--color-accent-bg);border:1px solid var(--color-accent-primary);border-radius:var(--radius-button);font-family:inherit;font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-accent-primary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;width:100%}.county-detect-btn:hover{background:var(--color-accent-primary);color:#fff}.county-detect-btn:disabled{opacity:.6;cursor:not-allowed}.confirmed-content{justify-content:center;gap:var(--space-lg)}.confirmed-check{animation:confirmedPop .5s var(--ease-out-expo) forwards}.confirmed-circle{animation:greenPulse 2s ease-in-out infinite}.confirmed-path{stroke-dasharray:40;stroke-dashoffset:40;animation:confirmedDraw .4s var(--ease-out-quart) .2s forwards}.confirmed-ball{font-size:var(--font-display-md);animation:ballBounce .7s var(--ease-out-expo) .3s both}@keyframes confirmedPop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes confirmedDraw{to{stroke-dashoffset:0}}@keyframes ballBounce{0%{transform:translateY(30px);opacity:0}60%{transform:translateY(-8px);opacity:1}to{transform:translateY(0);opacity:1}}.tournament-card{box-shadow:var(--shadow);overflow:hidden;position:relative;padding:20px;display:flex;flex-direction:column;gap:var(--space-md)}.tournament-progress-bar{height:4px;background:var(--color-divider);border-radius:2px;margin-top:var(--space-md);overflow:hidden}.tournament-progress-fill{height:100%;background:var(--color-accent-primary);border-radius:2px;transition:width .8s var(--ease-out-quart)}.trophy-empty{text-align:center;padding:var(--space-lg) 0}.trophy-empty-icon{font-size:var(--font-hero-sm);margin-bottom:var(--space-sm);opacity:.4}.trophy-empty-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xs)}.trophy-empty-desc{font-size:var(--font-body-sm);color:var(--color-text-muted)}.rating-level-bar{height:6px;background:var(--color-divider);border-radius:3px;margin-top:var(--space-sm);overflow:hidden}.rating-level-fill{height:100%;background:var(--color-accent-primary);border-radius:3px;transition:width .8s var(--ease-out-quart)}.escalation-timeline{margin:var(--space-md) 0}.escalation-timeline-subtle{margin:var(--space-sm) 0}.escalation-bar{height:6px;background:var(--color-divider);border-radius:3px;overflow:hidden}.escalation-fill{height:100%;background:var(--color-negative-primary);border-radius:3px;transition:width .5s var(--ease-out-quart)}.escalation-days{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.escalation-warning{font-size:var(--font-body-sm);color:var(--color-text-secondary);line-height:1.5;margin:var(--space-sm) 0}.escalation-critical{color:var(--color-negative-primary);font-weight:var(--weight-semibold)}.advancement-prompt{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-positive-bg);border:1px solid var(--color-positive-primary);border-radius:var(--radius-card);margin-bottom:var(--space-md);cursor:pointer;animation:advancementSlide .4s var(--ease-out-expo)}.advancement-icon{font-size:var(--font-heading-lg)}.advancement-text{font-size:var(--font-body-md);color:var(--color-positive-primary);line-height:1.4}.advancement-text strong{font-weight:var(--weight-bold)}@keyframes advancementSlide{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.scheduling-dashboard{background:var(--color-surface-primary);border:1px solid var(--color-border-secondary);border-left:4px solid var(--color-positive-primary);border-radius:var(--radius-card);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md)}.scheduling-dashboard-title{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--space-sm)}.scheduling-dashboard-stats{display:flex;gap:var(--space-lg);margin-bottom:var(--space-sm)}.scheduling-stat{display:flex;align-items:baseline;gap:var(--space-xs)}.scheduling-stat-num{font-size:var(--font-heading-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.scheduling-stat-confirmed .scheduling-stat-num{color:var(--color-positive-primary)}.scheduling-stat-action .scheduling-stat-num{color:var(--color-accent-primary)}.scheduling-stat-label{font-size:var(--font-body-sm);color:var(--color-text-muted)}.scheduling-stat-done .scheduling-stat-label{color:var(--color-positive-primary);font-weight:var(--weight-semibold)}.scheduling-dashboard-next{display:flex;flex-direction:column;gap:4px;padding-top:var(--space-sm);border-top:1px solid var(--color-border-secondary)}.scheduling-next-match{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-body-sm)}.scheduling-next-time{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;min-width:70px}.scheduling-next-vs{color:var(--color-text-secondary)}.notif-wrapper{position:relative}.notif-badge{position:absolute;top:-4px;right:-4px;background:var(--color-negative-primary);color:#fff;font-size:var(--font-nano);font-weight:var(--weight-bold);width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;animation:badge-pop .4s var(--ease-out-expo) both}@keyframes badge-pop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.notif-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:280px;background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-card);box-shadow:var(--shadow-hover);z-index:var(--z-overlay);animation:notifSlide var(--duration-normal) var(--ease-out-expo)}.notif-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) var(--space-lg);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-divider)}.notif-close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary, #666);padding:0 4px;line-height:1}.notif-close-btn:hover{color:var(--color-text, #333)}.notif-empty{padding:var(--space-xl);text-align:center;font-size:var(--font-body-md);color:var(--color-text-muted)}.notif-list{max-height:300px;overflow-y:auto}.notif-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);border:none;background:none;width:100%;text-align:left;font-family:inherit;cursor:pointer;transition:background var(--duration-instant) var(--ease-out-quart)}.notif-item:hover{background:var(--color-neutral-bg)}.notif-item:active{background:var(--color-surface-pressed)}.notif-fullscreen-list .notif-item{animation:cardSlideIn var(--duration-normal) var(--ease-out-expo) both;animation-delay:calc(var(--i, 0) * 40ms)}.notif-item+.notif-item{border-top:1px solid var(--color-divider)}.notif-icon{font-size:var(--font-body-lg);flex-shrink:0;display:none}.notif-content{min-width:0}.notif-action{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.notif-opponent{font-size:var(--font-body-sm);color:var(--color-text-muted)}.notif-item.notif-urgent{border-left:3px solid var(--color-negative-primary)}.notif-item.notif-ready{border-left:3px solid var(--color-positive-primary)}.notif-item.notif-pending{border-left:3px solid var(--color-accent-primary)}.notif-time{font-size:var(--font-nano);color:var(--color-text-muted);margin-top:2px}@keyframes notifSlide{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-surface);z-index:var(--z-modal);display:flex;flex-direction:column;overflow:hidden;animation:panel-slide-in var(--duration-slow) var(--ease-out-expo) both}.notif-fullscreen-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg);border-bottom:1px solid var(--color-divider);flex-shrink:0}.notif-fullscreen-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.02em}.notif-fullscreen-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.notif-empty-full{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md);flex:1;color:var(--color-text-muted);font-size:var(--font-body-lg)}.notif-icon-svg{width:36px;height:36px;border-radius:50%;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-text-secondary)}.notif-urgent .notif-icon-svg{background:var(--color-negative-bg);color:var(--color-negative-primary)}.notif-ready .notif-icon-svg{background:var(--color-positive-bg);color:var(--color-positive-primary)}.notif-pending .notif-icon-svg{background:var(--color-accent-bg);color:var(--color-accent-primary)}.notif-unread .notif-icon-svg{background:var(--color-info-bg);color:var(--color-info-primary)}.bracket-overflow-section{display:flex;justify-content:center;padding:var(--space-lg) 0;position:relative}.bracket-overflow-btn{background:none;border:1px solid var(--color-divider);border-radius:var(--radius-chip);padding:var(--space-xs) var(--space-lg);font-size:var(--font-body-lg);color:var(--color-text-muted);cursor:pointer;font-family:inherit;letter-spacing:2px;transition:background var(--duration-instant)}.bracket-overflow-btn:hover{background:var(--color-neutral-bg)}.bracket-overflow-menu{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-button);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);min-width:180px;animation:notifSlide var(--duration-fast) var(--ease-out-expo)}.bracket-overflow-item{display:block;width:100%;text-align:left;padding:var(--space-md) var(--space-lg);border:none;background:none;font-family:inherit;font-size:var(--font-body-md);cursor:pointer}.bracket-overflow-item:hover{background:var(--color-neutral-bg)}.bracket-overflow-danger{color:var(--color-negative-primary)}.message-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-divider)}.message-panel-title-group{display:flex;flex-direction:column;gap:4px}.message-panel-name{font-size:var(--font-body-md);font-weight:600;color:var(--color-text-primary)}.message-panel-close{background:none;border:none;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:var(--color-text-secondary);transition:background var(--duration-fast)}.message-panel-close:hover{background:var(--color-neutral-bg)}.chat-fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-surface);z-index:var(--z-modal);display:flex;flex-direction:column;overflow:hidden}.chat-list-header{flex-shrink:0;background:var(--color-bg-surface);border-bottom:1px solid var(--color-divider)}.chat-list-header-top{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-lg) var(--space-md)}.chat-list-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.02em;display:flex;align-items:center;gap:var(--space-sm)}.chat-list-badge{background:var(--color-accent-primary);color:#fff;font-size:var(--font-body-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;min-width:22px;height:22px;border-radius:var(--radius-chip);display:inline-flex;align-items:center;justify-content:center;padding:0 7px}.chat-close-btn{background:var(--color-neutral-bg);border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-secondary);transition:background var(--duration-fast)}.chat-close-btn:hover{background:var(--color-divider)}.chat-tabs{display:flex;padding:0 var(--space-lg)}.chat-tab{flex:1;padding:var(--space-sm) 0 var(--space-md);background:none;border:none;border-bottom:2px solid transparent;font-size:var(--font-body-md);font-weight:var(--weight-semibold);font-family:inherit;color:var(--color-text-secondary);cursor:pointer;text-align:center;transition:color var(--duration-fast),border-color .15s}.chat-tab.active{color:var(--color-accent-primary);border-bottom-color:var(--color-accent-primary)}.chat-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--color-bg-primary)}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-3xl) var(--space-xl);text-align:center}.chat-empty-icon{color:var(--color-divider);margin-bottom:var(--space-md)}.chat-empty p{margin:0;font-size:var(--font-body-lg);font-weight:var(--weight-medium);color:var(--color-text-primary)}.chat-empty-hint{font-size:var(--font-caption);color:var(--color-text-secondary);margin-top:var(--space-xs)}.chat-card{display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);background:var(--color-bg-surface);border:none;border-bottom:1px solid var(--color-divider);cursor:pointer;text-align:left;font-family:inherit;transition:background var(--duration-instant) var(--ease-out-quart)}.chat-card:hover,.chat-card:active{background:var(--color-neutral-bg)}.chat-card-unread{background:#f1f3f5}.chat-card-avatar-wrap{position:relative;flex-shrink:0}.chat-card-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-lg);color:#fff}.chat-card-avatar--system,.chat-conv-avatar--system{background:var(--color-positive-primary);color:#fff}.welcome-msg-body{flex:1;overflow-y:auto;padding:var(--space-md);-webkit-overflow-scrolling:touch}.chat-card-body{flex:1;min-width:0}.chat-card-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm)}.chat-card-name{font-weight:var(--weight-semibold);font-size:var(--font-body-md);color:var(--color-text-primary)}.chat-card-unread .chat-card-name{font-weight:var(--weight-bold)}.chat-card-time{font-size:var(--font-body-sm);font-variant-numeric:tabular-nums;color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.chat-card-unread .chat-card-time{color:var(--color-accent-primary);font-weight:var(--weight-semibold)}.chat-card-context{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-card-preview{font-size:var(--font-body-md);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;line-height:1.3}.chat-card-unread .chat-card-preview{color:var(--color-text-primary);font-weight:var(--weight-medium)}.chat-card-badge{background:var(--color-accent-primary);color:#fff;font-size:var(--font-body-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;min-width:20px;height:20px;border-radius:var(--radius-chip);display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0}.chat-conv-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-divider);background:var(--color-bg-surface);flex-shrink:0}.chat-back-btn{background:none;border:none;padding:var(--space-xs);cursor:pointer;color:var(--color-text-primary);line-height:0;flex-shrink:0}.chat-conv-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-md);color:#fff;flex-shrink:0}.chat-conv-header-info{flex:1;min-width:0}.chat-conv-header-name{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);display:block}.chat-conv-header-sub{font-size:var(--font-body-sm);color:var(--color-text-muted);display:block;margin-top:1px}.chat-conv-body{flex:1;overflow:hidden;display:flex;flex-direction:column;background:var(--color-bg-primary)}.chat-messages-panel{display:flex;flex-direction:column;border-radius:var(--radius-card);overflow:hidden;background:var(--color-bg-surface);box-shadow:var(--shadow-sm);border:1px solid var(--color-divider)}.chat-messages-embedded{border:none;border-radius:0;box-shadow:none;height:100%;background:var(--color-bg-primary)}.chat-messages-embedded .message-panel-header{display:none}.chat-messages-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--space-lg) var(--space-lg) var(--space-xl);display:flex;flex-direction:column;gap:2px}.chat-messages-embedded .chat-messages-body{max-height:none}.chat-messages-panel:not(.chat-messages-embedded) .chat-messages-body{max-height:240px;min-height:80px;overscroll-behavior:contain;scroll-behavior:smooth}.chat-messages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-3xl) 0;flex:1}.chat-messages-empty-avatar{width:64px;height:64px;border-radius:50%;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary)}.chat-messages-empty-name{margin:var(--space-md) 0 var(--space-xs);font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.chat-messages-empty-hint{margin:0;font-size:var(--font-caption);color:var(--color-text-secondary)}.chat-bubble-row{display:flex;flex-direction:column;max-width:75%}.chat-bubble-mine{align-self:flex-end;align-items:flex-end}.chat-bubble-theirs{align-self:flex-start;align-items:flex-start}.chat-bubble{padding:var(--space-sm) var(--space-md);font-size:var(--font-body-md);line-height:1.4;word-wrap:break-word}.chat-bubble-mine .chat-bubble{background:var(--color-accent-primary);color:#fff;border-radius:18px 18px var(--space-xs) 18px;box-shadow:0 1px 3px #2a5bd726}.chat-bubble-theirs .chat-bubble{background:var(--color-surface-hover);color:var(--color-text-primary);border-radius:18px 18px 18px var(--space-xs)}.chat-bubble-mine:not(.chat-bubble-first) .chat-bubble{border-top-right-radius:var(--space-xs)}.chat-bubble-mine:not(.chat-bubble-last) .chat-bubble{border-bottom-right-radius:var(--space-xs)}.chat-bubble-theirs:not(.chat-bubble-first) .chat-bubble{border-top-left-radius:var(--space-xs)}.chat-bubble-theirs:not(.chat-bubble-last) .chat-bubble{border-bottom-left-radius:var(--space-xs)}.chat-bubble-first{margin-top:var(--space-sm)}.chat-bubble-text{word-wrap:break-word;white-space:pre-wrap}.chat-bubble-time{font-size:var(--font-body-sm);font-variant-numeric:tabular-nums;color:var(--color-text-muted);margin-top:2px;padding:0 var(--space-xs)}.chat-quick-tray{display:flex;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);flex-wrap:wrap;border-top:1px solid var(--color-divider);background:var(--color-bg-surface);animation:chat-quick-slide .15s var(--ease-out-quart)}@keyframes chat-quick-slide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-quick-btn{background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-chip);padding:var(--space-sm) var(--space-md);font-size:var(--font-caption);font-family:inherit;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-instant) var(--ease-out-quart),border-color var(--duration-instant),transform var(--duration-instant),color var(--duration-instant);white-space:nowrap}.chat-quick-btn:hover{background:var(--color-surface-hover);border-color:#c6c8cc}.chat-quick-btn:active{background:var(--color-accent-bg);color:var(--color-accent-primary);border-color:var(--color-accent-primary);transform:scale(.95)}.chat-input-bar{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md) calc(var(--space-sm) + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-divider);background:var(--color-bg-surface)}.chat-input-bar input{flex:1;border:1px solid var(--color-divider);border-radius:var(--radius-chip);padding:var(--space-sm) var(--space-lg);font-size:var(--font-body-md);font-family:inherit;background:var(--color-neutral-bg);color:var(--color-text-primary);outline:none;transition:border-color var(--duration-fast),background .15s}.chat-input-bar input:focus{border-color:var(--color-accent-primary);background:var(--color-bg-surface)}.chat-input-bar input::placeholder{color:var(--color-text-muted)}.chat-quick-toggle{width:36px;height:36px;border-radius:50%;border:none;background:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-secondary);transition:color var(--duration-fast),background .15s;flex-shrink:0}.chat-quick-toggle:hover,.chat-quick-toggle.active{color:var(--color-accent-primary);background:var(--color-accent-bg)}.chat-send-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-accent-primary);border:none;border-radius:50%;cursor:pointer;color:#fff;flex-shrink:0;transition:opacity var(--duration-fast)}.chat-send-btn:disabled{opacity:.3;cursor:default}.chat-send-btn:not(:disabled):active{opacity:.85}.quick-messages{display:flex;gap:var(--space-xs);padding:10px 16px;flex-wrap:wrap;border-top:1px solid var(--color-divider)}.quick-msg-btn{background:var(--color-neutral-bg);border:none;border-radius:var(--radius-card);padding:var(--space-xs) var(--space-md);font-size:var(--font-caption);font-family:inherit;color:var(--color-text-primary);cursor:pointer;transition:background var(--duration-fast);white-space:nowrap}.quick-msg-btn:hover{background:var(--color-divider)}.quick-msg-btn:active{background:var(--color-accent-bg);color:var(--color-accent-primary)}.match-card-actions-row{display:flex;align-items:center;gap:8px}.match-card-actions-row .match-card-action-btn{margin-top:0}.match-card-msg-btn{background:var(--color-bg-surface);border:1px solid var(--color-divider);border-radius:var(--radius-chip);width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-secondary);line-height:0;transition:background var(--duration-fast) var(--ease-out-quart),border-color .15s,color .15s,transform var(--duration-instant) var(--ease-out-quart)}.match-card-msg-btn:hover,.match-card-msg-btn.active{color:var(--color-accent-primary);border-color:var(--color-accent-primary);background:var(--color-accent-bg)}.match-card-msg-btn:active{transform:scale(.9);transition-duration:.06s}.pn-opponent-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pn-message-panel-wrapper{margin-top:var(--space-md);padding:var(--space-md) 16px 16px;border-top:1px solid var(--color-divider)}.inbox-icon-btn{position:relative}.inbox-unread-badge{position:absolute;top:-3px;right:-3px;background:var(--color-negative-primary);color:#fff;font-size:.5rem;font-weight:var(--weight-bold);width:14px;height:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.inbox-unread-dot{position:absolute;top:2px;right:2px;width:8px;height:8px;border-radius:50%;background:var(--color-negative-primary);border:2px solid var(--color-surface)}.match-card-msg-btn{position:relative}.msg-unread-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:var(--color-negative-primary);border:2px solid var(--color-surface)}.action-card-buttons{display:flex;align-items:center;gap:8px}.action-card-buttons .action-card-btn{margin-top:0}.upcoming-match-panel{display:flex;flex-direction:column}.action-card.action-message{border-left-color:var(--color-accent-blue)}.tournament-phase-card{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-sm)}.tournament-phase-dates{display:flex;justify-content:space-between;font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-divider)}.schedule-summary-screen{padding:0 0 32px;opacity:0;transform:translateY(12px);transition:opacity .4s var(--ease-out-quart),transform .4s ease}.schedule-summary-screen.visible{opacity:1;transform:translateY(0)}.schedule-header-card{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-lg);box-shadow:var(--shadow-sm)}.schedule-phase-stepper{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:var(--space-lg)}.schedule-phase-step{display:flex;align-items:center;gap:var(--space-xs)}.schedule-phase-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;transition:background var(--duration-normal) var(--ease-out-quart),box-shadow var(--duration-normal) ease}.schedule-phase-dot.completed{background:var(--color-positive-primary)}.schedule-phase-dot.active{background:var(--color-accent-primary);box-shadow:0 0 0 3px #2a5bd733;animation:pulse-dot 2s ease-in-out infinite}.schedule-phase-dot.upcoming{background:var(--color-divider)}.schedule-phase-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);white-space:nowrap}.schedule-phase-label.completed{color:var(--color-positive-primary)}.schedule-phase-label.active{color:var(--color-accent-primary);font-weight:var(--weight-bold)}.schedule-phase-label.upcoming{color:var(--color-text-muted)}.schedule-phase-line{width:32px;height:2px;background:var(--color-divider);margin:0 var(--space-sm);flex-shrink:0}.schedule-phase-line.completed{background:var(--color-positive-primary)}.schedule-progress-section{margin-bottom:var(--space-md)}.schedule-progress-bar-track{height:6px;background:#e0e2e4;border-radius:3px;overflow:hidden;margin-bottom:6px}.schedule-progress-bar-fill{height:100%;background:var(--color-accent-primary);border-radius:3px;transition:width .6s var(--ease-out-quart);min-width:2px}.schedule-progress-meta{display:flex;justify-content:space-between;align-items:center}.schedule-progress-count{font-size:var(--font-label);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text-primary);letter-spacing:-.01em}.schedule-progress-est{font-size:var(--font-body-sm);color:var(--color-text-muted)}.schedule-todo-section{border-top:1px solid var(--color-divider);padding-top:var(--space-md)}.schedule-todo-title{font-size:var(--font-micro);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);margin-bottom:4px}.schedule-todo-rows{display:flex;flex-direction:column;gap:0}.schedule-todo-row{display:flex;align-items:center;gap:var(--space-sm);padding:4px 0}.schedule-todo-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.schedule-todo-count{font-size:var(--font-label);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;min-width:18px;color:var(--color-text-primary)}.schedule-todo-label{font-size:var(--font-label);color:var(--color-text-secondary)}.schedule-next-match-card{margin-bottom:var(--space-lg)}.schedule-next-match-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md)}.schedule-next-opponent{font-size:var(--font-body-lg);font-weight:600}.schedule-next-time{font-variant-numeric:tabular-nums;font-size:var(--font-body-md);color:var(--color-text-secondary)}.schedule-next-reason{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.schedule-agenda{margin-top:var(--space-xl)}.schedule-agenda-title{font-size:var(--font-title-sm);font-weight:var(--weight-bold);letter-spacing:-.02em;margin-bottom:var(--space-md)}.schedule-week{margin-bottom:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.schedule-week-header{font-size:var(--font-body-sm);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-sm);display:flex;align-items:center;gap:var(--space-xs)}.match-calendar{display:flex;flex-direction:column;gap:var(--space-sm)}.calendar-week-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.calendar-week-dot--current{background:var(--color-positive-primary)}.calendar-week-dot--future{border:2px solid var(--color-text-muted);background:transparent}.calendar-match{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-md) var(--space-md);box-shadow:var(--shadow-sm);border-left:3px solid transparent;animation:calendarSlideUp var(--duration-normal) var(--ease-out-expo) both;cursor:pointer;margin-bottom:var(--space-xs);transition:box-shadow var(--duration-fast),transform var(--duration-instant)}.calendar-match:hover{box-shadow:var(--shadow-md)}.calendar-match:active{transform:scale(.98)}@keyframes calendarSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.calendar-match{animation-delay:calc(var(--i, 0) * 50ms)}.calendar-match--auto{border-left-color:var(--color-positive-primary)}.calendar-match--needs-accept{border-left-color:var(--color-accent-primary)}.calendar-match--needs-negotiation{border-left-color:var(--color-warning-primary)}.calendar-match--won{border-left-color:var(--color-positive-primary);opacity:.8}.calendar-match--lost{border-left-color:var(--color-negative-primary);opacity:.8}.calendar-match-eyebrow{font-size:var(--font-micro);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:2px}.calendar-match-eyebrow--confirmed{color:var(--color-positive-primary)}.calendar-match-eyebrow--proposed{color:var(--color-accent-primary)}.calendar-match-eyebrow--unscheduled{color:var(--color-warning-primary)}.calendar-match-eyebrow--completed{color:var(--color-text-muted)}.calendar-match-body{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm)}.calendar-match-time{font-size:var(--font-body-sm);color:var(--color-text-muted);font-variant-numeric:tabular-nums}.calendar-match-time--none{color:var(--color-text-muted);font-style:italic}.calendar-match-opponent{font-size:var(--font-body-md);font-weight:var(--weight-bold);color:var(--color-text-primary);letter-spacing:-.01em}.calendar-match-score{font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--font-body-sm)}.calendar-match-detail{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px;line-height:1.4}.calendar-match-actions{margin-top:var(--space-sm);display:flex;gap:var(--space-sm)}.calendar-action-btn--respond{background:var(--color-accent-bg);color:var(--color-accent-primary)}.calendar-action-btn--schedule{background:var(--color-warning-bg, #FEF3C7);color:var(--color-warning-primary)}.calendar-reschedule-link{font-size:var(--font-body-sm);color:var(--color-text-muted)}.calendar-empty-week{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-md)}.match-card-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 18px;border-radius:var(--radius-chip);font-size:var(--font-body-sm);font-weight:var(--weight-bold);border:none;cursor:pointer;letter-spacing:.01em;transition:background var(--duration-fast) var(--ease-out-quart),transform var(--duration-instant) var(--ease-out-expo),box-shadow var(--duration-fast),filter var(--duration-fast)}.match-card-action-btn:hover{filter:brightness(.93);box-shadow:0 2px 6px #3c322814}.match-card-action-btn--accept{background:#cdd1d6;color:var(--color-positive-primary)}.match-card-action-btn--negotiate{background:#e3e5e8;color:var(--color-warning-primary)}.match-card-action-btn:active{transform:scale(.94);transition-duration:.06s}.scheduling-badge{display:inline-flex;align-items:center;gap:4px;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-body-sm);font-weight:600;white-space:nowrap}.scheduling-badge--auto{background:#22c55e1a;color:var(--color-positive-primary)}.scheduling-badge--accept{background:var(--color-surface-pressed);color:var(--color-accent-primary)}.scheduling-badge--negotiate{background:#f59e0b1a;color:var(--color-warning-primary)}.scheduling-badge-icon{font-size:.75em}.schedule-summary-strip{display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) 0;border-bottom:1px solid var(--color-divider);margin-bottom:var(--space-md)}.schedule-summary-stats{display:flex;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap}.schedule-stat{font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--font-body-sm)}.schedule-stat--confirmed{color:var(--color-positive-primary)}.schedule-stat--pending{color:var(--color-accent-primary)}.schedule-stat--unscheduled{color:var(--color-warning-primary)}.schedule-stat-label{font-weight:400;color:var(--color-text-secondary)}.schedule-stat-sep{color:var(--color-text-muted)}.schedule-view-bracket{width:100%;margin-top:var(--space-xl);background:var(--color-surface);border:1px solid var(--color-divider);color:var(--color-text-primary)}.bracket-view-toggle{display:flex;gap:4px;background:#dedede;border-radius:var(--radius-button);padding:3px}.bracket-view-toggle-btn{padding:6px var(--space-md);border-radius:calc(var(--radius-button) - 2px);font-size:var(--font-body-sm);font-weight:var(--weight-medium);border:none;cursor:pointer;background:transparent;color:var(--color-text-secondary);font-family:inherit;transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast),box-shadow var(--duration-fast)}.bracket-view-toggle-btn.selected{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm);font-weight:var(--weight-semibold)}.scheduling-confidence{margin-top:var(--space-md);display:flex;flex-direction:column;gap:var(--space-md)}.confidence-header{font-size:var(--font-body-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-sm)}.confidence-bar{height:6px;border-radius:3px;background:var(--color-divider);overflow:hidden;margin-bottom:var(--space-sm)}.confidence-fill{height:100%;border-radius:3px;transition:width .6s var(--ease-out-quart)}.confidence-fill--high{background:var(--color-positive-primary)}.confidence-fill--medium{background:var(--color-accent-primary)}.confidence-fill--low{background:var(--color-warning-primary)}.confidence-value{font-size:var(--font-display-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--color-accent-primary)}.confidence-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px}.confidence-footnote{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-sm)}.waitlist-container{display:flex;flex-direction:column;gap:var(--space-md);padding:0 20px}.waitlist-status-card{border-left:4px solid var(--color-divider)}.waitlist-icon{color:var(--color-text-muted);margin-bottom:var(--space-md)}.waitlist-title{font-size:var(--font-title-sm, 20px);font-weight:600;margin-top:var(--space-md)}.waitlist-body{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-top:var(--space-sm);line-height:1.5}.waitlist-next{background:var(--color-surface);border-radius:var(--radius-button);padding:var(--space-md) var(--space-lg);display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-lg)}.waitlist-next-label{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.waitlist-next-date{font-size:var(--font-body-md);font-weight:600;font-variant-numeric:tabular-nums}.waitlist-improve-card{border-left:4px solid var(--color-accent-primary)}.waitlist-improve-title{font-size:var(--font-body-lg);font-weight:600}.waitlist-improve-body{font-size:var(--font-body-md);color:var(--color-text-secondary);line-height:1.5;margin-top:var(--space-sm)}.waitlist-improve-suggestion{font-size:var(--font-body-sm);color:var(--color-accent-primary);font-weight:500;margin:var(--space-sm) 0 var(--space-md)}.waitlist-findmatch-card{border-left:4px solid var(--color-positive-primary)}.waitlist-findmatch-title{font-weight:600}.waitlist-findmatch-body{color:var(--color-text-secondary);margin:var(--space-sm) 0 var(--space-md)}.match-card-eyebrow-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm)}.help-content{padding-bottom:var(--space-xxl)}.help-header{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg)}.help-header h2{font-size:var(--font-title-sm);font-weight:var(--weight-bold)}.help-tabs{display:flex;gap:var(--space-xs);padding:0 var(--space-lg);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.help-tabs::-webkit-scrollbar{display:none}.help-tab{padding:var(--space-sm) var(--space-md);border:none;background:var(--color-neutral-bg);color:var(--color-text-secondary);font-size:var(--font-body-sm);font-weight:var(--weight-medium);border-radius:var(--radius-chip);cursor:pointer;white-space:nowrap;font-family:inherit;transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast)}.help-tab:hover:not(.help-tab--active){background:#d6d6d8}.help-tab--active{background:var(--color-accent-primary);color:#fff;font-weight:var(--weight-semibold)}.help-body{padding:var(--space-lg)}.help-section{display:flex;flex-direction:column;gap:var(--space-lg)}.help-intro{color:var(--color-text-secondary);font-size:var(--font-body-md);line-height:1.5}.help-subheading{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);margin-top:var(--space-sm)}.help-phases{display:flex;flex-direction:column;gap:0}.help-phase{display:flex;gap:var(--space-md);padding:var(--space-lg) 0}.help-phase-bar{width:3px;background:var(--color-divider);border-radius:2px;flex-shrink:0}.help-phase--lobby .help-phase-bar{background:var(--color-accent-primary)}.help-phase--form .help-phase-bar{background:var(--color-positive-primary)}.help-phase--play .help-phase-bar{background:var(--color-warning-primary)}.help-phase--finals .help-phase-bar{background:var(--color-negative-primary)}.help-phase-content{display:flex;gap:var(--space-md);align-items:flex-start}.help-phase-step{width:28px;height:28px;border-radius:50%;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-sm);color:var(--color-text-primary);flex-shrink:0}.help-phase--lobby .help-phase-step{background:var(--color-accent-bg);color:var(--color-accent-primary)}.help-phase--form .help-phase-step{background:var(--color-positive-bg);color:var(--color-positive-primary)}.help-phase--play .help-phase-step{background:var(--color-warning-bg);color:var(--color-warning-primary)}.help-phase--finals .help-phase-step{background:var(--color-negative-bg);color:var(--color-negative-primary)}.help-phase-content strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.help-phase-content p{color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.4;margin-top:var(--space-xs)}.help-phase-detail{display:inline-block;font-size:var(--font-body-sm);color:var(--color-text-muted);font-weight:var(--weight-medium)}.help-tiers{display:flex;flex-direction:column;gap:var(--space-lg)}.help-tier{display:flex;gap:var(--space-md);align-items:flex-start}.help-tier-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-button);font-size:var(--font-body-sm);font-weight:var(--weight-bold);white-space:nowrap;flex-shrink:0}.help-tier-badge--auto{background:var(--color-positive-bg);color:var(--color-positive-primary)}.help-tier-badge--flex{background:var(--color-warning-bg);color:var(--color-warning-primary)}.help-tier-badge--manual{background:var(--color-neutral-bg);color:var(--color-text-secondary)}.help-tier strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.help-tier p{color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.4;margin-top:2px}.help-tip{background:var(--color-accent-bg);color:var(--color-accent-primary);padding:var(--space-md);border-radius:var(--radius-button);font-size:var(--font-body-sm);font-weight:var(--weight-medium);line-height:1.4}.help-steps-list{display:flex;flex-direction:column;gap:var(--space-lg)}.help-step-item{display:flex;gap:var(--space-md);align-items:flex-start}.help-step-num{width:24px;height:24px;border-radius:50%;background:var(--color-accent-bg);color:var(--color-accent-primary);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-sm);flex-shrink:0}.help-step-item strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.help-step-item p{color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.4;margin-top:2px}.help-tiebreak-list{padding-left:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-sm);font-size:var(--font-body-sm);color:var(--color-text-secondary);line-height:1.4}.help-tiebreak-list strong{color:var(--color-text-primary)}.help-deadlines{display:flex;flex-direction:column;gap:var(--space-lg)}.help-deadline-item{display:flex;gap:var(--space-md);align-items:flex-start}.help-deadline-days{background:var(--color-warning-bg);color:var(--color-warning-primary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-button);font-size:var(--font-body-sm);font-weight:var(--weight-bold);white-space:nowrap;flex-shrink:0}.help-deadline-item strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.help-deadline-item p{color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.4;margin-top:2px}.help-forfeits{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background:var(--color-negative-bg);border-radius:var(--radius-button)}.help-forfeit strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-negative-primary)}.help-forfeit p{color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.4;margin-top:2px}.faq-item{border-bottom:1px solid var(--color-divider)}.faq-item:last-child{border-bottom:none}.faq-question{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-md) 0;border:none;background:none;text-align:left;font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-primary);cursor:pointer;gap:var(--space-sm)}.faq-chevron{font-size:var(--font-body-lg);color:var(--color-text-muted);transition:transform var(--duration-fast);flex-shrink:0}.faq-chevron.open{transform:rotate(90deg)}.faq-answer{padding:0 0 var(--space-md);color:var(--color-text-secondary);font-size:var(--font-body-sm);line-height:1.5}.how-rally-steps{display:flex;flex-direction:column;gap:var(--space-md)}.how-rally-step{display:flex;gap:var(--space-md);align-items:center}.how-rally-step-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-sm);flex-shrink:0}.how-rally-step-icon--join{background:var(--color-accent-bg);color:var(--color-accent-primary)}.how-rally-step-icon--play{background:var(--color-positive-bg);color:var(--color-positive-primary)}.how-rally-step-icon--compete{background:var(--color-warning-bg);color:var(--color-warning-primary)}.how-rally-step-text strong{display:block;font-size:var(--font-body-md);font-weight:var(--weight-semibold)}.how-rally-step-text span{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.help-link-btn{background:var(--color-neutral-bg);color:var(--color-accent-primary);border:1px solid var(--color-divider)}.lobby-mode-toggle{display:flex;gap:0;background:var(--color-neutral-bg);border-radius:var(--radius-md);padding:3px;margin-bottom:var(--space-md)}.lobby-mode-btn{flex:1;padding:8px 16px;border:none;border-radius:calc(var(--radius-md) - 2px);background:transparent;color:var(--color-text-secondary);font-size:var(--font-body-sm);font-weight:var(--weight-medium);font-family:inherit;cursor:pointer;transition:background var(--duration-fast),color .15s,box-shadow .15s}.lobby-mode-btn.active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.doubles-partner-card{padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.doubles-partner-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);margin:0 0 4px}.doubles-partner-desc{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin:0 0 var(--space-md)}.doubles-partner-empty{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-lg) 0}.doubles-partner-list{display:flex;flex-direction:column;gap:8px}.doubles-partner-item{display:flex;align-items:center;gap:12px;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-family:inherit;transition:border-color var(--duration-fast),background .15s}.doubles-partner-item:hover{border-color:var(--color-accent-primary)}.doubles-partner-item.selected{border-color:var(--color-positive-primary);background:#22c55e0d}.doubles-partner-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;font-weight:var(--weight-semibold);font-size:var(--font-label);color:var(--color-text-secondary);flex-shrink:0}.doubles-partner-name{flex:1;text-align:left;font-size:var(--font-body-sm);color:var(--color-text-primary)}.doubles-confirm-btn{margin-top:var(--space-md);width:100%}@keyframes matchCardPulse{0%{box-shadow:0 0 #2a5bd780;border-color:var(--color-accent-primary)}50%{box-shadow:0 0 0 6px #2a5bd726;border-color:var(--color-accent-primary)}to{box-shadow:0 0 #2a5bd700;border-color:var(--color-accent-primary)}}.match-card-highlighted{animation:matchCardPulse 1s ease-in-out 3;border:2px solid var(--color-accent-primary)!important;z-index:var(--z-base)}.match-filter-toggle{display:flex;gap:2px;background:var(--color-neutral-bg);border-radius:var(--radius-md);padding:3px;margin-bottom:var(--space-md)}.match-filter-btn{flex:1;padding:var(--space-xs) var(--space-md);border:none;background:transparent;border-radius:var(--radius-sm);font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;display:flex;align-items:center;justify-content:center;gap:4px}.match-filter-btn.selected{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.match-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--color-accent-primary);color:#fff;font-size:var(--font-micro);font-weight:600;font-variant-numeric:tabular-nums}.completed-match-detail{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:4px}.reported-score-detail{font-size:var(--font-body-sm);color:var(--color-warning-primary);font-weight:var(--weight-medium);margin-top:4px}.completed-match-winner{font-weight:var(--weight-semibold)}.completed-match-resolution{color:var(--color-text-muted)}.tournament-progress-banner{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-sm);border-left:3px solid var(--color-accent-primary)}.tournament-progress-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;flex-wrap:wrap;gap:4px}.tournament-progress-title{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.tournament-progress-date{font-size:var(--font-micro);color:var(--color-text-muted)}.tournament-progress-bar-container{height:6px;background:var(--color-neutral-bg);border-radius:3px;overflow:hidden;margin-bottom:6px}.tournament-progress-bar{height:100%;background:var(--color-accent-primary);border-radius:3px;transition:width .4s var(--ease-out-quart);min-width:2px}.tournament-progress-footer{display:flex;justify-content:space-between;align-items:center}.tournament-progress-pct{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-accent-primary)}.tournament-progress-est{font-size:var(--font-micro);color:var(--color-text-muted)}.confirm-match-btn{width:100%;margin-top:8px;min-height:44px}.confirm-match-btn.confirmed{background:var(--color-positive-primary);color:#fff;pointer-events:none}.score-confirm-overlay{padding:var(--space-md);background:#f6f7f9b8;border-radius:var(--radius-md);border:1px solid rgba(17,17,17,.06)}.score-confirm-overlay--embedded{padding:0;background:none;border-radius:0;border:none}.score-confirm-summary{font-size:var(--font-body-md);font-weight:var(--weight-semibold);margin-bottom:var(--space-sm);text-align:left}.score-confirm-winner{font-size:var(--font-body-sm);color:var(--color-positive-primary);text-align:left;margin-bottom:var(--space-md)}.score-confirm-actions{display:flex;gap:var(--space-sm);flex-wrap:wrap}.score-confirm-actions .btn{flex:1}.score-toast{padding:var(--space-md);border-radius:var(--radius-card);text-align:center;animation:scoreToastIn var(--duration-normal) var(--ease-out-expo)}.score-toast--success{background:#22c55e1a;color:var(--color-positive-primary);border:1px solid rgba(34,197,94,.2)}.score-toast--error{background:#ef44441a;color:var(--color-negative-primary);border:1px solid rgba(239,68,68,.2)}.score-toast-check{font-size:var(--font-title-lg);display:block;margin-bottom:var(--space-xs)}@keyframes scoreToastIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.match-card.match-highlighted{animation:matchPulse .5s var(--ease-out-quart) 3;box-shadow:0 0 0 3px var(--color-accent-primary)}@keyframes matchPulse{0%,to{box-shadow:0 0 0 3px var(--color-accent-primary)}50%{box-shadow:0 0 0 6px #2a5bd74d}}.match-filter-bar{display:flex;gap:var(--space-xs);margin-bottom:var(--space-md);padding:3px;background:var(--color-bg-secondary);border-radius:var(--radius-button)}.match-filter-btn{flex:1;padding:var(--space-xs) var(--space-md);border:none;border-radius:calc(var(--radius-button) - 2px);background:transparent;font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-muted);cursor:pointer;font-family:inherit;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.match-filter-btn.active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.tournament-progress-banner{padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-card);margin-bottom:var(--space-md);border:1px solid var(--color-divider)}.tournament-progress-text{font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.tournament-progress-bar{height:6px;background:var(--color-bg-secondary);border-radius:3px;overflow:hidden;margin-bottom:var(--space-xs)}.tournament-progress-fill{height:100%;background:var(--color-positive-primary);border-radius:3px;transition:width var(--duration-normal) var(--ease-out-quart)}.tournament-progress-meta{display:flex;justify-content:space-between;font-size:var(--font-body-sm);color:var(--color-text-muted)}.playnow-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:var(--color-positive-primary);color:#fff;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-button);font-size:var(--font-body-md);font-weight:var(--weight-medium);z-index:var(--z-modal);animation:toastSlideUp .3s var(--ease-out-quart);box-shadow:var(--shadow-md)}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.profile-photo-section{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.profile-photo{width:80px;height:80px;border-radius:50%;object-fit:cover;border:2px solid var(--color-divider)}.profile-photo-placeholder{width:80px;height:80px;border-radius:50%;background:var(--color-accent-bg);color:var(--color-accent-primary);display:flex;align-items:center;justify-content:center;font-size:var(--font-display-md);font-weight:var(--weight-bold)}.profile-photo-btn{font-size:var(--font-body-sm);color:var(--color-accent-primary);background:none;border:none;cursor:pointer;font-family:inherit;min-height:44px}.profile-bio-input{width:100%;padding:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-button);font-size:var(--font-body-md);font-family:inherit;resize:none;min-height:60px}.profile-bio-counter{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:right}.profile-style-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.profile-style-tag{padding:var(--space-xs) var(--space-md);border:1px solid var(--color-divider);border-radius:var(--radius-lg);font-size:var(--font-body-sm);background:var(--color-surface);cursor:pointer;font-family:inherit;min-height:36px;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.profile-style-tag.selected{background:var(--color-accent-bg);border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.profile-courts-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.profile-court-chip{display:flex;align-items:center;gap:4px;padding:4px 12px;background:var(--color-bg-secondary);border-radius:var(--radius-card);font-size:var(--font-body-sm)}.profile-court-remove{background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:var(--font-label);padding:2px;min-width:24px;min-height:24px}.btn,.btn-link,.btn-icon,.match-card-action-btn,.notif-item,.quick-slot-v2,.avail-cap-pill,.weekly-cap-option,.tab,.bottom-tab{min-height:44px}.btn-icon{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.match-card-action-btn{min-height:44px;padding:10px 16px}.score-row-you{background:#2a5bd70d;border-radius:var(--radius-button);padding:var(--space-xs) var(--space-sm)}.score-row-opponent{padding:var(--space-xs) var(--space-sm)}.score-row-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);margin-bottom:2px}.score-row-label--you{color:var(--color-accent-primary)}.score-row-label--opponent{color:var(--color-text-muted)}.details-toggle{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-body-sm);color:var(--color-text-muted);background:none;border:none;cursor:pointer;padding:var(--space-xs) 0;font-family:inherit;min-height:44px}.match-card .seed-label,.match-card .prob-split,.match-card .rating-label{transition:opacity var(--duration-fast),max-height .2s}.hide-details .seed-label,.hide-details .prob-split,.hide-details .rating-label{opacity:0;max-height:0;overflow:hidden}.next-match-hero{padding:var(--space-md);background:var(--color-accent-bg);border:1px solid rgba(42,91,215,.15);border-radius:var(--radius-card);margin-bottom:var(--space-md)}.next-match-hero-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-accent-primary);margin-bottom:var(--space-xs)}.next-match-hero-opponent{font-size:var(--font-title-sm);font-weight:var(--weight-bold);color:var(--color-text-primary)}.matches-expander{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-body-sm);color:var(--color-accent-primary);background:none;border:none;cursor:pointer;padding:var(--space-sm) 0;font-family:inherit;font-weight:var(--weight-medium);min-height:44px}.post-match-reaction{padding:var(--space-md);background:var(--color-surface);border-radius:var(--radius-card);border:1px solid var(--color-divider);margin-top:var(--space-sm)}.reaction-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);margin-bottom:var(--space-sm)}.reaction-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-xs) 0}.reaction-stars{display:flex;gap:4px}.reaction-star{font-size:var(--font-title-sm);cursor:pointer;background:none;border:none;padding:2px;min-width:32px;min-height:32px;color:var(--color-divider);transition:color var(--duration-fast)}.reaction-star--active{color:var(--color-warning-primary)}.reaction-label{font-size:var(--font-body-sm);color:var(--color-text-secondary);min-width:40px}.reaction-toggle{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-body-sm);cursor:pointer}.reaction-toggle input[type=checkbox]{width:18px;height:18px}.reaction-thankyou{text-align:center;font-size:var(--font-body-sm);color:var(--color-positive-primary);font-weight:var(--weight-medium);padding:var(--space-xs) 0}.post-match-feedback{padding:var(--space-md);background:var(--color-neutral-bg);border-radius:var(--radius-button);border:1px solid var(--color-divider);display:flex;flex-direction:column;gap:var(--space-md)}.feedback-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);margin-bottom:var(--space-sm)}.feedback-sentiment-row{display:flex;gap:var(--space-sm)}.feedback-sentiment-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-md) var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-size:var(--font-body-sm);font-family:inherit;color:var(--color-text-secondary);transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;min-height:44px}.feedback-sentiment-btn:active{transform:scale(.97)}.feedback-sentiment--positive:hover,.feedback-sentiment--positive.selected{border-color:var(--color-positive-primary);background:#22c55e14;color:var(--color-positive-primary)}.feedback-sentiment--neutral:hover,.feedback-sentiment--neutral.selected{border-color:var(--color-text-secondary);background:#9ca3af14;color:var(--color-text-primary)}.feedback-sentiment--negative:hover,.feedback-sentiment--negative.selected{border-color:var(--color-negative-primary);background:#ef444414;color:var(--color-negative-primary)}.feedback-sentiment-icon{font-size:var(--font-title-sm);font-weight:var(--weight-bold);font-family:var(--font-mono);width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-surface-raised)}.feedback-thankyou{text-align:center;font-size:var(--font-body-sm);color:var(--color-positive-primary);font-weight:var(--weight-medium);padding:var(--space-xs) 0}.feedback-blind-note{font-size:var(--font-body-sm);color:var(--color-text-muted);font-weight:var(--weight-regular);margin-top:4px}.feedback-issue-list{display:flex;flex-direction:column;gap:var(--space-sm)}.feedback-issue-summary-card,.feedback-issue-note-card{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);border:1px solid rgba(17,17,17,.06);background:#f6f7f9b8}.feedback-issue-summary-label,.feedback-issue-note-label{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.feedback-issue-summary-copy{margin-top:4px;font-size:var(--font-body-sm);color:var(--color-text-secondary)}.feedback-issue-option{display:flex;align-items:flex-start;gap:var(--space-sm);font-size:var(--font-body-sm);cursor:pointer;padding:var(--space-sm) var(--space-md);border:1px solid rgba(17,17,17,.08);border-radius:var(--radius-md);background:var(--color-surface);transition:border-color var(--duration-fast) var(--ease-out-quart),background .15s ease,box-shadow .15s ease}.feedback-issue-option.selected{border-color:#ef44443d;background:#ef44440a;box-shadow:0 1px 3px #1111110a}.feedback-issue-option input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.feedback-issue-checkmark{width:22px;height:22px;border-radius:var(--radius-sm);border:1px solid rgba(17,17,17,.14);background:var(--color-surface);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:var(--font-caption);font-weight:var(--weight-bold);color:var(--color-negative-primary);margin-top:1px}.feedback-issue-option.selected .feedback-issue-checkmark{border-color:#ef44443d;background:#ef444414}.feedback-issue-copy{display:flex;flex-direction:column;gap:2px}.feedback-issue-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary)}.feedback-issue-detail{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.feedback-issue-text{width:100%;margin-top:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:var(--font-body-sm);font-family:inherit;background:var(--color-surface);color:var(--color-text-primary);resize:vertical;box-sizing:border-box}.feedback-issue-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.feedback-issue-actions .btn{width:100%;justify-content:center}@media (max-width: 480px){.feedback-issue-actions{grid-template-columns:1fr}}.score-confirmation-panel{padding:0;background:transparent;border:none;border-radius:0;margin-top:0}.score-confirmation-panel .workflow-status{font-size:var(--font-body-sm);font-weight:var(--weight-medium);letter-spacing:.04em}.score-confirm-meta{display:flex;flex-direction:column;gap:8px;padding-top:2px}.score-confirm-summary-label{font-size:var(--font-body-sm);font-weight:var(--weight-medium);text-transform:none;letter-spacing:0;color:var(--color-text-secondary)}.score-confirm-summary-value{font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-primary);font-variant-numeric:tabular-nums;text-align:right}.score-confirm-stat-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-bottom:8px;border-bottom:1px solid rgba(17,17,17,.06)}.score-confirm-stat-row--deadline{padding-bottom:0;border-bottom:none}.score-confirm-deadline-value{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);font-variant-numeric:tabular-nums}.score-confirm-deadline-meta{font-size:var(--font-body-sm);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.confirm-option-btn{width:100%;text-align:center}.confirm-option--issue{color:var(--color-text-muted);font-size:var(--font-body-sm)}.score-confirm-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.score-confirm-primary-actions .btn{min-width:0;justify-content:center}.correction-actions{display:flex;flex-direction:column;gap:var(--space-sm);margin-top:2px}.correction-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.correction-secondary-actions .btn,.correction-submit-btn{width:100%;justify-content:center}.issue-header{margin-bottom:var(--space-sm)}.issue-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);margin-bottom:4px}.issue-desc{font-size:var(--font-body-sm);color:var(--color-text-muted)}.issue-text{width:100%;padding:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:var(--font-body-sm);font-family:inherit;background:var(--color-surface);color:var(--color-text-primary);resize:vertical;margin-bottom:var(--space-sm);box-sizing:border-box}.issue-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm)}.issue-actions .btn{width:100%;justify-content:center}@media (max-width: 480px){.score-confirm-primary-actions,.correction-secondary-actions,.issue-actions{grid-template-columns:1fr}.score-confirm-stat-row{flex-direction:column;align-items:flex-start;gap:2px}.score-confirm-summary-value{text-align:left}.score-confirmation-panel .score-grid{gap:var(--space-xs);padding:var(--space-sm)}.score-confirmation-panel .score-grid .score-input{width:56px}}.dispute-review{text-align:center}.dispute-review-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);margin-bottom:4px}.dispute-review-desc{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-bottom:var(--space-md)}.dispute-compare{display:flex;align-items:center;justify-content:center;gap:var(--space-md);margin-bottom:var(--space-sm)}.dispute-score-col{text-align:center}.dispute-score-label{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-bottom:4px}.dispute-score-value{font-family:var(--font-mono);font-size:var(--font-title-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.dispute-score-divider{font-size:var(--font-body-sm);color:var(--color-text-muted)}.dispute-winner-compare{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-bottom:var(--space-md)}.dispute-actions{display:flex;gap:var(--space-sm)}.dispute-actions .btn{flex:1}.dispute-note{font-size:var(--font-micro);color:var(--color-text-muted);margin-top:var(--space-sm)}.reliability-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-left:4px;vertical-align:middle}.reliability-dot--green{background-color:var(--color-positive-primary)}.reliability-dot--yellow{background-color:var(--color-warning-primary)}.reliability-dot--red{background-color:var(--color-negative-primary)}.reschedule-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-sm)}.reschedule-limit{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.cancel-reason-select{width:100%;padding:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-button);font-size:var(--font-body-md);font-family:inherit;margin-top:var(--space-sm);min-height:44px}.skill-anchor{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:2px;line-height:1.3}.skill-reassurance{font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;margin-top:var(--space-md);font-style:italic}.field-hint{display:block;font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-xs);line-height:1.4}.profile-avatar-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0 auto var(--space-md);display:block}.profile-photo-upload{margin-bottom:var(--space-md)}.profile-photo-label,.profile-bio-label,.profile-style-label,.profile-courts-label{display:block;font-size:var(--font-body-sm);font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.profile-photo-row{display:flex;align-items:center;gap:var(--space-md)}.profile-photo-preview{width:56px;height:56px;border-radius:50%;object-fit:cover}.profile-photo-placeholder{width:56px;height:56px;border-radius:50%;background:var(--color-accent-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-heading-lg);font-weight:700}.profile-photo-actions{display:flex;gap:var(--space-xs)}.profile-bio{margin-bottom:var(--space-md)}.profile-bio-input{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:var(--font-body-md);resize:none;font-family:inherit}.profile-bio-counter{text-align:right;font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:2px}.profile-bio-display{margin-top:6px;font-size:var(--font-label);color:var(--color-text-secondary)}.profile-style-tags{margin-bottom:var(--space-md)}.profile-style-buttons{display:flex;gap:8px;flex-wrap:wrap}.profile-style-btn{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-lg);border:1px solid var(--color-divider);background:var(--color-bg-surface);font-size:var(--font-body-sm);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.profile-style-btn.selected{background:var(--color-accent-primary);color:#fff;border-color:var(--color-accent-primary)}.profile-style-tags-display{display:flex;gap:var(--space-xs);flex-wrap:wrap;margin-top:8px;justify-content:center}.profile-style-tag{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);background:var(--color-surface-alt);font-size:var(--font-body-sm)}.profile-courts{margin-bottom:var(--space-md)}.profile-courts-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.profile-courts-display{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:8px;justify-content:center}.profile-court-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-card);background:var(--color-surface-alt);font-size:var(--font-caption)}.profile-court-chip-remove{background:none;border:none;cursor:pointer;font-size:var(--font-body-sm);padding:0;line-height:1;color:var(--color-text-secondary)}.profile-court-add{display:flex;gap:8px}.profile-court-input{flex:1;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:var(--font-body-sm)}.venue-suggestion{font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:4px;padding:4px 8px;background:var(--color-surface-alt);border-radius:var(--radius-sm)}.post-match-card{padding:12px;border-radius:var(--radius-md);background:var(--color-bg-surface);border:1px solid var(--color-divider);text-align:left}.post-match-saved{text-align:center;color:var(--color-positive-primary);font-weight:600}.post-match-title{font-weight:600;margin-bottom:8px;font-size:var(--font-body-md)}.post-match-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.post-match-label{font-size:var(--font-label);color:var(--color-text-secondary)}.post-match-stars{display:flex;gap:4px}.post-match-star{background:none;border:none;cursor:pointer;font-size:var(--font-title-sm);padding:0;color:var(--color-divider);transition:color var(--duration-instant)}.post-match-star.active{color:#f59e0b}.post-match-toggle{padding:var(--space-xs) var(--space-md);border-radius:var(--radius-card);border:1px solid var(--color-divider);background:var(--color-bg-surface);cursor:pointer;font-size:var(--font-caption);transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease}.post-match-toggle.active{background:var(--color-positive-primary);color:#fff;border-color:var(--color-positive-primary)}.post-match-actions{display:flex;gap:8px;margin-top:12px}.match-reaction-summary{display:flex;gap:var(--space-sm);font-size:var(--font-body-sm);color:var(--color-text-secondary);margin-top:4px;padding:4px 0}.reaction-stat{display:inline-flex;align-items:center;gap:2px}.reaction-rematch{color:var(--color-positive-primary)}.pn-tournament-match-list{display:flex;flex-direction:column;gap:var(--space-md)}.pn-tournament-match-card{position:relative;overflow:hidden}.pn-tournament-match-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--color-divider)}.pn-match-confirmed:before{background:var(--color-positive-primary)}.pn-match-proposed:before{background:var(--color-accent-primary)}.pn-match-unscheduled:before{background:var(--color-warning-primary)}.pn-tournament-match-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.pn-tournament-match-opponent{font-size:var(--font-body-md);font-weight:600;color:var(--color-text-primary)}.pn-tournament-match-details{font-size:var(--font-caption);color:var(--color-text-secondary);margin-top:4px}.pn-tier-badge{display:inline-flex;align-items:center;font-size:var(--font-micro);font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:var(--radius-md)}.pn-tier-confirmed{background:var(--color-positive-bg);color:var(--color-positive-primary)}.pn-tier-proposed{background:var(--color-accent-bg);color:var(--color-accent-primary)}.pn-tier-unscheduled{background:var(--color-neutral-bg);color:var(--color-neutral-primary)}.rally-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);max-width:400px;width:calc(100% - 32px);padding:12px 16px;border-radius:var(--radius-button);display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:var(--z-toast);animation:rally-toast-in var(--duration-slow) var(--ease-out-expo);box-shadow:var(--shadow-md);font-size:var(--font-label);font-weight:500}.rally-toast-success{background:var(--color-positive-primary);color:#fff}.rally-toast-error{background:var(--color-negative-primary);color:#fff}.rally-toast-info{background:var(--color-accent-primary);color:#fff}.rally-toast-warning{background:var(--color-warning-primary);color:#fff}.rally-toast-dismiss{background:none;border:none;color:inherit;font-size:var(--font-body-lg);cursor:pointer;padding:0 4px;opacity:.8;line-height:1}.rally-toast-dismiss:hover{opacity:1}@keyframes rally-toast-in{0%{opacity:0;transform:translate(-50%) translateY(16px) scale(.96)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.rally-toast-confirm{position:fixed;bottom:80px;left:50%;transform:translate(-50%);max-width:380px;min-width:240px;padding:12px 16px;border-radius:var(--radius-button);background:var(--color-bg);border:1px solid var(--color-divider);border-left:4px solid;box-shadow:var(--shadow-hover);display:flex;align-items:center;gap:var(--space-sm);z-index:calc(var(--z-toast) + 1);animation:rally-toast-in .3s var(--ease-out-quart);font-size:var(--font-label);color:var(--color-text-primary)}.rally-toast-confirm--green{border-left-color:var(--color-positive-primary)}.rally-toast-confirm--blue{border-left-color:var(--color-accent-primary)}.rally-toast-confirm--orange{border-left-color:var(--color-warning-primary)}.rally-toast-confirm--red{border-left-color:var(--color-negative-primary)}.rally-toast-confirm-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--font-caption);font-weight:600;border-radius:50%;color:#fff}.rally-toast-confirm--green .rally-toast-confirm-icon{background:var(--color-positive-primary)}.rally-toast-confirm--blue .rally-toast-confirm-icon{background:var(--color-accent-primary)}.rally-toast-confirm--orange .rally-toast-confirm-icon{background:var(--color-warning-primary)}.rally-toast-confirm--red .rally-toast-confirm-icon{background:var(--color-negative-primary)}.rally-toast-confirm-msg{flex:1;line-height:1.4}@keyframes confirmPulse-green{0%{background-color:transparent}14%{background-color:#1f9d5514}72%{background-color:#1f9d5514}to{background-color:transparent}}@keyframes confirmPulse-blue{0%{background-color:transparent}14%{background-color:#2a5bd714}72%{background-color:#2a5bd714}to{background-color:transparent}}@keyframes confirmPulse-orange{0%{background-color:transparent}14%{background-color:#d9770614}72%{background-color:#d9770614}to{background-color:transparent}}@keyframes confirmPulse-red{0%{background-color:transparent}14%{background-color:#d6454514}72%{background-color:#d6454514}to{background-color:transparent}}.action-card--highlight-green{animation:confirmPulse-green 3s var(--ease-out-quart)}.action-card--highlight-blue{animation:confirmPulse-blue 3s var(--ease-out-quart)}.action-card--highlight-orange{animation:confirmPulse-orange 3s var(--ease-out-quart)}.action-card--highlight-red{animation:confirmPulse-red 3s var(--ease-out-quart)}.standings-header{display:flex;justify-content:flex-end;margin-bottom:12px}.standings-toggle{font-size:var(--font-caption)}.standings-win-bar-container{display:flex;align-items:center;gap:var(--space-xs);min-width:80px}.standings-win-bar{height:6px;background:var(--color-positive-primary);border-radius:3px;min-width:2px;transition:width var(--duration-normal) var(--ease-out-quart)}.standings-win-pct{font-size:var(--font-body-sm);font-variant-numeric:tabular-nums;color:var(--color-text-secondary);white-space:nowrap}.stat-positive{color:var(--color-positive-primary)}.stat-negative{color:var(--color-negative-primary)}.avail-segmented-control{display:flex;border-radius:var(--radius-button);overflow:hidden;border:1px solid var(--color-divider);margin-bottom:16px}.avail-segment-btn{flex:1;padding:var(--space-sm) var(--space-md);font-size:var(--font-label);font-weight:600;border:none;background:var(--color-bg-surface);color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-fast) ease,opacity var(--duration-fast) ease;text-align:center}.avail-segment-btn.active{background:var(--color-accent-primary);color:#fff}.avail-segment-btn:not(.active):hover{background:var(--color-neutral-bg)}@media (max-width: 640px){.availability-editor-actions{grid-template-columns:1fr}.detailed-add-row{grid-template-columns:1fr 1fr auto 1fr auto;gap:4px}.availability-range-separator{display:none}.availability-custom-add-btn{width:100%}}.skeleton{background:linear-gradient(90deg,var(--color-divider) 25%,var(--color-neutral-bg) 50%,var(--color-divider) 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:var(--radius-card)}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{height:80px;margin-bottom:var(--space-lg);border-radius:var(--radius-card)}.skeleton-line{height:14px;margin-bottom:var(--space-sm);border-radius:4px}.skeleton-line-short{width:60%}.skeleton-line-medium{width:80%}.skeleton-line-full{width:100%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-xxl) var(--space-xl);text-align:center;animation:empty-state-in var(--duration-slow) var(--ease-out-expo) both}@keyframes empty-state-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.empty-state-icon{width:48px;height:48px;color:var(--color-text-muted);margin-bottom:var(--space-lg);animation:empty-icon-in .6s var(--ease-out-expo) .15s both}@keyframes empty-icon-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.empty-state-title{font-size:var(--font-title-sm);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-sm)}.empty-state-message{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:var(--space-xl);max-width:280px}.streak-dots{display:flex;gap:3px;align-items:center}.streak-dot{width:8px;height:8px;border-radius:50%}.streak-dot-win{background:var(--color-positive-primary)}.streak-dot-loss{background:var(--color-negative-primary)}.streak-dot-none{background:var(--color-divider)}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card{animation:card-enter var(--duration-slow) var(--ease-out-expo) both}.card:nth-child(1){animation-delay:0ms}.card:nth-child(2){animation-delay:60ms}.card:nth-child(3){animation-delay:.12s}.card:nth-child(4){animation-delay:.17s}.card:nth-child(5){animation-delay:.21s}.card:nth-child(n+6){animation-delay:.25s}@keyframes page-fade-in{0%{opacity:0}to{opacity:1}}main{animation:page-fade-in var(--duration-normal) var(--ease-out-quart)}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-content-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.details-toggle,.standings-toggle{transition:background-color var(--duration-fast) var(--ease-out-quart),color var(--duration-fast) ease}.rating-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;animation:overlay-fade-in var(--duration-normal) var(--ease-out-quart) both}.rating-panel{background:var(--color-bg);width:100%;max-width:420px;height:100%;display:flex;flex-direction:column;overflow:hidden;animation:panel-slide-in var(--duration-slow) var(--ease-out-expo) both}@keyframes panel-slide-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.rating-tab{animation:tabFadeIn var(--duration-normal) var(--ease-out-quart) both}.rating-tab .rating-panel-body{padding:0}.rating-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--color-divider);background:var(--color-surface)}.rating-panel-title{font-size:var(--font-body-lg);font-weight:var(--weight-bold);letter-spacing:-.02em;margin:0}.rating-panel-close{font-size:var(--font-body-lg);color:var(--color-text-secondary);padding:4px 8px}.rating-panel-body{flex:1;overflow-y:auto;padding:12px 16px 80px;display:flex;flex-direction:column;gap:12px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn-join-free{background:var(--color-accent-primary);color:#fff;font-weight:var(--weight-semibold);font-size:var(--font-body-lg);letter-spacing:.01em;border:none;border-radius:var(--radius-button);height:48px;box-shadow:0 2px 8px #2a5bd733;transition:transform var(--duration-fast) var(--ease-out-expo),box-shadow var(--duration-normal) var(--ease-out-quart),background var(--duration-normal) ease;will-change:transform}.btn-join-free:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #2a5bd740;background:#2148b0}.btn-join-free:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #2a5bd74d}.btn-join-free:disabled{opacity:.5;cursor:not-allowed}@media (min-width: 768px){.bottom-tabs{flex-direction:column;width:72px;height:100dvh;box-shadow:1px 0 4px #0000000f;padding-bottom:0;padding-top:var(--space-lg);position:fixed;left:0;top:0;z-index:var(--z-sticky)}.bottom-tab{flex:0 0 auto;padding:var(--space-md) 0}.bottom-tab.active:before{top:50%;left:0;transform:translateY(-50%);width:3px;height:24px;border-radius:0 2px 2px 0}.screen{margin-left:72px;width:calc(100% - 72px)}.content{padding:var(--space-xl) 40px}.top-nav{padding:0 var(--space-xl)}.card,.action-card{padding:24px}}@media (min-width: 1024px){.bottom-tabs{width:200px;align-items:flex-start;padding:var(--space-xl) 0;gap:var(--space-xs)}.bottom-tab{flex-direction:row;justify-content:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);width:100%;min-height:44px;border-radius:0 var(--radius-md) var(--radius-md) 0}.bottom-tab:hover{background:var(--color-neutral-bg)}.bottom-tab.active{background:var(--color-surface-hover)}.bottom-tab.active:before{height:100%;width:3px;top:0;left:0;transform:none;border-radius:0 2px 2px 0}.tab-text{font-size:var(--font-body-md)}.screen{margin-left:200px;width:calc(100% - 200px)}.content{padding:var(--space-xl) 60px}.top-nav{padding:0 40px}.action-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:var(--space-lg)}.home-section,.home-section-spaced{gap:var(--space-xl)}.leaderboard-teaser{max-width:560px}.pn-opponent-list,.offer-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--space-md)}.schedule-summary-strip{max-width:100%}.schedule-summary-stats{flex-wrap:nowrap}.round{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--space-md)}.round-label{grid-column:1 / -1}.profile-section{max-width:600px}}@media (min-width: 1280px){.content{padding:var(--space-xl) 80px}.top-nav{padding:0 48px}.action-cards,.pn-opponent-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}.app-desktop-guest{max-width:none;height:auto;overflow-y:auto}.strava-home{min-height:100dvh;background:var(--color-bg-surface);overflow-y:auto}.sh-nav{position:sticky;top:0;z-index:100;background:var(--color-bg-surface);border-bottom:1px solid var(--color-divider)}.sh-nav-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 24px}.sh-nav-left{display:flex;align-items:center;gap:32px}.sh-nav-links{display:flex;gap:24px}.sh-nav-link{font-size:var(--font-label);font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:color var(--duration-fast)}.sh-nav-link:hover{color:var(--color-text-primary)}.sh-nav-right{display:flex;align-items:center;gap:12px}.sh-btn-text{background:none;border:none;font-size:var(--font-label);font-weight:600;color:var(--color-text-primary);cursor:pointer;padding:8px 16px;border-radius:8px;transition:background var(--duration-fast)}.sh-btn-text:hover{background:var(--color-neutral-bg)}.sh-btn-cta{background:var(--color-positive-primary);color:#fff;border:none;font-size:var(--font-label);font-weight:600;padding:10px 20px;border-radius:var(--radius-button);cursor:pointer;transition:opacity var(--duration-fast)}.sh-btn-cta:hover{opacity:.9}.sh-btn-cta-large{font-size:var(--font-body-md);padding:14px 32px;width:100%;max-width:360px}.sh-hero{background:var(--color-bg-surface);padding:80px 24px 60px}.sh-hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.sh-hero-content{max-width:500px}.sh-hero-title{font-size:var(--font-display-lg);font-weight:var(--weight-bold);line-height:1.1;letter-spacing:-1px;color:var(--color-text-primary);margin-bottom:16px}.sh-hero-subtitle{font-size:var(--font-body-lg);line-height:1.6;color:var(--color-text-secondary);margin-bottom:32px}.sh-hero-ctas{display:flex;flex-direction:column;gap:12px;max-width:360px}.sh-btn-signup{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 20px;border-radius:var(--radius-button);font-size:var(--font-body-md);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast),border-color var(--duration-fast),color var(--duration-fast),transform var(--duration-fast);border:1.5px solid var(--color-divider);background:var(--color-bg-surface);color:var(--color-text-primary)}.sh-btn-signup:hover{background:var(--color-neutral-bg)}.sh-btn-google{border-color:#dadce0}.sh-btn-google:hover{background:#f8f9fa;border-color:#c6c9cc}.sh-btn-email{background:var(--color-positive-primary);color:#fff;border-color:var(--color-positive-primary)}.sh-btn-email:hover{opacity:.9;background:var(--color-positive-primary);border-color:var(--color-positive-primary)}.sh-btn-email svg{stroke:#fff}.sh-hero-existing{margin-top:16px;font-size:var(--font-label);color:var(--color-text-secondary)}.sh-link{color:var(--color-positive-primary);font-weight:600;text-decoration:none;cursor:pointer;background:none;border:none;font-size:inherit;padding:0}.sh-link:hover{text-decoration:underline}.sh-link-muted{color:var(--color-text-muted);text-decoration:underline}.sh-hero-legal{margin-top:12px;font-size:var(--font-body-sm);color:var(--color-text-muted);line-height:1.5}.sh-hero-visual{display:flex;justify-content:center}.sh-hero-image-wrapper{position:relative;width:100%;max-width:500px;border-radius:20px;overflow:hidden}.sh-hero-image{width:100%;height:500px;object-fit:cover;display:block}.sh-hero-overlay{position:absolute;bottom:20px;right:20px}.sh-phone-mockup{background:var(--color-bg-surface);border-radius:16px;box-shadow:var(--shadow-lg);width:220px;overflow:hidden}.sh-phone-screen{padding:12px}.sh-mock-header{display:flex;align-items:center;gap:6px;padding-bottom:8px;border-bottom:1px solid var(--color-divider);margin-bottom:8px;font-size:var(--font-micro);font-weight:600}.sh-mock-dot{width:6px;height:6px;border-radius:50%}.sh-mock-dot-green{background:var(--color-positive-primary)}.sh-mock-status{color:var(--color-positive-primary);font-size:var(--font-nano)}.sh-mock-count{margin-left:auto;color:var(--color-text-muted);font-size:var(--font-nano);font-family:var(--font-mono)}.sh-mock-match{padding:8px 0;border-bottom:1px solid var(--color-divider);font-size:var(--font-body-sm)}.sh-mock-match:last-child{border-bottom:none}.sh-mock-match-row{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:var(--font-body-sm)}.sh-mock-badge{font-size:.5625rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.sh-mock-badge-green{background:var(--color-positive-bg);color:var(--color-positive-primary)}.sh-mock-badge-blue{background:var(--color-accent-bg);color:var(--color-accent-primary)}.sh-mock-time{font-size:var(--font-nano);color:var(--color-text-muted);margin-top:2px}.sh-section{padding:80px 24px}.sh-section-inner{max-width:1100px;margin:0 auto}.sh-section-title{font-size:var(--font-display-md);font-weight:var(--weight-bold);text-align:center;margin-bottom:12px;letter-spacing:-.5px}.sh-section-subtitle{font-size:var(--font-body-md);color:var(--color-text-secondary);text-align:center;margin-bottom:48px}.dgh{background:var(--color-bg-surface);overflow-x:hidden}.dgh-nav{position:sticky;top:0;z-index:100;background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-divider)}.dgh-nav-inner{max-width:1100px;margin:0 auto;padding:0 var(--space-xl);height:60px;display:flex;align-items:center;justify-content:space-between}.dgh-nav-actions{display:flex;align-items:center;gap:var(--space-sm)}.dgh-btn-primary{background:var(--color-accent-primary);color:#fff;border:none;border-radius:var(--radius-button);padding:10px 22px;font-size:var(--font-label);font-weight:var(--weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),transform var(--duration-fast) var(--ease-out-quart),box-shadow .2s;font-family:inherit}.dgh-btn-primary:hover{background:color-mix(in srgb,var(--color-accent-primary),#000 15%);transform:translateY(-1px) scale(1.02)}.dgh-btn-primary:active{transform:translateY(0) scale(.98);transition-duration:.08s}.dgh-btn-text{background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-label);font-weight:var(--weight-medium);cursor:pointer;padding:10px 12px;font-family:inherit;transition:color var(--duration-fast),transform .15s var(--ease-out-quart)}.dgh-btn-text:hover{color:var(--color-text-primary);transform:translateY(-.5px)}.dgh-btn-text:active{transform:translateY(.5px);transition-duration:.08s}.dgh-btn-link{color:var(--color-text-muted);text-decoration:none;font-size:var(--font-caption);font-weight:var(--weight-medium);padding:10px 8px;transition:color var(--duration-fast)}.dgh-btn-link:hover{color:var(--color-text-primary)}.dgh-hero{padding:clamp(48px,6vw,72px) var(--space-xl) clamp(32px,4vw,48px)}.dgh-hero-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:clamp(32px,5vw,80px);align-items:end}.dgh-hero-eyebrow{font-size:var(--font-body-sm);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-accent-primary);margin:0 0 var(--space-lg) 0;animation:dgh-hero-fade-up .6s var(--ease-out-expo) 0s both}.dgh-hero-title{font-size:clamp(3rem,6vw + 1rem,5.5rem);font-weight:var(--weight-bold);line-height:.92;letter-spacing:-.035em;color:var(--color-text-primary);margin:0 0 var(--space-xl) 0;animation:dgh-hero-fade-up .7s var(--ease-out-expo) .12s both}.dgh-hero-subtitle{font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.65;color:var(--color-text-secondary);font-weight:400;margin:0 0 var(--space-xl) 0;max-width:500px;animation:dgh-hero-fade-up .7s var(--ease-out-expo) .25s both}.dgh-hero-cta{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap;animation:dgh-hero-fade-up .7s var(--ease-out-expo) .4s both}.dgh-btn-primary.dgh-btn-large{padding:18px 40px;font-size:var(--font-body-lg);font-weight:var(--weight-bold);border-radius:var(--radius-button);box-shadow:0 4px 16px #2a5bd74d,0 1px 3px #2a5bd726}.dgh-btn-primary.dgh-btn-large:hover{box-shadow:0 8px 28px #2a5bd766,0 2px 6px #2a5bd733;transform:translateY(-2px)}.dgh-btn-text.dgh-btn-large{font-size:var(--font-body-md);padding:16px 8px}.dgh-hero-aside{display:flex;flex-direction:column;gap:var(--space-xl);padding-bottom:8px;animation:dgh-hero-fade-up .7s var(--ease-out-expo) .55s both}.dgh-hero-stat{text-align:right}.dgh-hero-stat-number{display:block;font-size:var(--font-hero);font-weight:var(--weight-bold);color:var(--color-accent-primary);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.dgh-hero-stat-label{font-size:var(--font-body-sm);color:var(--color-text-muted);font-weight:var(--weight-medium)}.dgh-section-number{display:inline-block;font-size:var(--font-body-sm);font-weight:700;color:var(--color-accent-primary);background:var(--color-neutral-bg);padding:4px 12px;border-radius:999px;margin-bottom:var(--space-md);letter-spacing:-.02em}.dgh-section-heading{font-size:clamp(2rem,3.5vw + .5rem,3.25rem);font-weight:var(--weight-bold);line-height:1.05;letter-spacing:-.03em;color:var(--color-text-primary);margin:0 0 var(--space-lg) 0}.dgh-section-heading--center{text-align:center}.dgh-section-desc{font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.65;color:var(--color-text-secondary);font-weight:400;margin:0;max-width:460px}.dgh-section-desc--center{text-align:center;max-width:480px;margin:0 auto}.dgh-problem{padding:clamp(40px,5vw,64px) var(--space-xl) clamp(56px,7vw,88px);background:var(--color-neutral-bg)}.dgh-problem-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,80px);align-items:center}.dgh-problem-chat{display:flex;flex-direction:column;gap:8px;max-width:320px;justify-self:end}.dgh-story-bubble{padding:10px 16px;border-radius:18px;font-size:var(--font-label);line-height:1.4;max-width:85%;opacity:0;transform:translateY(12px) scale(.95)}.dgh-visible .dgh-anim-chat .dgh-story-bubble,.dgh-anim-chat.dgh-visible .dgh-story-bubble{animation:dgh-bubble-pop .45s var(--ease-out-expo) calc(var(--i, 0) * .2s + .1s) both}@keyframes dgh-bubble-pop{0%{opacity:0;transform:translateY(12px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.dgh-story-bubble-out{background:var(--color-accent-primary);color:#fff;align-self:flex-end;border-bottom-right-radius:6px}.dgh-story-bubble-in{background:var(--color-neutral-bg);color:var(--color-text-primary);border:1px solid var(--color-divider);align-self:flex-start;border-bottom-left-radius:6px}.dgh-solution{padding:clamp(56px,8vw,96px) var(--space-xl)}.dgh-solution-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(40px,6vw,80px);align-items:center}.dgh-solution-visual{background:var(--color-bg-surface);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-divider);border-top:3px solid var(--color-accent-primary);max-width:320px}.dgh-story-schedule-header{margin-bottom:var(--space-md)}.dgh-story-schedule-label{font-size:var(--font-micro);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.dgh-story-schedule-slots{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-md)}.dgh-story-schedule-slot{display:flex;align-items:center;justify-content:space-between;padding:10px var(--space-md);background:var(--color-bg-primary);border-radius:var(--radius-sm)}.dgh-story-schedule-day{font-weight:var(--weight-semibold);font-size:var(--font-label);color:var(--color-text-primary)}.dgh-story-schedule-window{font-size:var(--font-caption);color:var(--color-text-secondary);font-weight:var(--weight-medium)}.dgh-story-schedule-divider{height:1px;background:var(--color-divider);margin:var(--space-sm) 0}.dgh-story-schedule-match{padding-top:var(--space-sm)}.dgh-story-schedule-match-header{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--font-caption);font-weight:var(--weight-semibold);color:var(--color-positive-primary);margin-bottom:var(--space-sm)}.dgh-story-schedule-match-detail{display:flex;flex-direction:column;gap:2px;padding:10px var(--space-md);background:var(--color-positive-bg);border-radius:var(--radius-sm);border-left:3px solid var(--color-positive-primary)}.dgh-story-schedule-match-vs{font-weight:var(--weight-semibold);font-size:var(--font-label);color:var(--color-text-primary)}.dgh-story-schedule-match-time{font-size:var(--font-body-sm);color:var(--color-text-secondary)}.dgh-anim-row{opacity:0;transform:translate(-20px)}.dgh-anim-confirmed{opacity:0;transform:scale(.8)}.dgh-visible .dgh-anim-schedule .dgh-anim-row-1,.dgh-anim-schedule.dgh-visible .dgh-anim-row-1{animation:dgh-row-slide .5s var(--ease-out-expo) .15s both}.dgh-visible .dgh-anim-schedule .dgh-anim-row-2,.dgh-anim-schedule.dgh-visible .dgh-anim-row-2{animation:dgh-row-slide .5s var(--ease-out-expo) .4s both}.dgh-visible .dgh-anim-schedule .dgh-anim-confirmed,.dgh-anim-schedule.dgh-visible .dgh-anim-confirmed{animation:dgh-confirm-pop .5s var(--ease-out-expo) .8s both}@keyframes dgh-row-slide{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes dgh-confirm-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.dgh-matchmaking{padding:clamp(48px,6vw,80px) var(--space-xl) clamp(56px,7vw,88px);background:var(--color-neutral-bg)}.dgh-matchmaking-inner{max-width:1100px;margin:0 auto;text-align:center}.dgh-matchmaking-inner .dgh-section-number{display:inline-block}.dgh-matchmaking-visual{margin-top:clamp(36px,5vw,64px);display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,48px)}.dgh-anim-player-left{opacity:0;transform:translate(-30px)}.dgh-anim-player-right{opacity:0;transform:translate(30px)}.dgh-anim-vs{opacity:0;transform:scale(.5)}.dgh-visible .dgh-anim-matchup .dgh-anim-player-left,.dgh-anim-matchup.dgh-visible .dgh-anim-player-left{animation:dgh-slide-left .6s var(--ease-out-expo) .15s both}.dgh-visible .dgh-anim-matchup .dgh-anim-player-right,.dgh-anim-matchup.dgh-visible .dgh-anim-player-right{animation:dgh-slide-right .6s var(--ease-out-expo) .3s both}.dgh-visible .dgh-anim-matchup .dgh-anim-vs,.dgh-anim-matchup.dgh-visible .dgh-anim-vs{animation:dgh-vs-pop .5s var(--ease-out-expo) .55s both}@keyframes dgh-slide-left{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes dgh-slide-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes dgh-vs-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.dgh-final-cta{padding:clamp(56px,8vw,100px) var(--space-xl);background:var(--color-accent-primary);text-align:center}.dgh-final-cta-inner{max-width:600px;margin:0 auto}.dgh-cta-title{font-size:clamp(2.5rem,5vw + .5rem,4.5rem);font-weight:var(--weight-bold);letter-spacing:-.035em;line-height:.95;color:#fff;margin:0 0 var(--space-lg) 0}.dgh-cta-subtitle{font-size:clamp(1rem,1.2vw,1.25rem);color:#ffffffbf;margin:0 0 var(--space-xl) 0}.dgh-cta-actions{display:flex;justify-content:center;gap:var(--space-md);flex-wrap:wrap}.dgh-cta-btn-primary{background:#fff;color:var(--color-accent-primary);border:none;border-radius:var(--radius-button);padding:18px 44px;font-size:var(--font-body-lg);font-weight:var(--weight-bold);cursor:pointer;font-family:inherit;transition:background var(--duration-fast) var(--ease-out-quart),transform .2s var(--ease-out-quart),box-shadow .2s;box-shadow:0 2px 12px #0000001a}.dgh-cta-btn-primary:hover{background:#eef2ff;transform:translateY(-2px) scale(1.02);box-shadow:0 8px 24px #0000002e}.dgh-cta-btn-primary:active{transform:translateY(0) scale(.98);transition-duration:.08s}.dgh-cta-btn-secondary{background:none;color:#ffffffe6;border:1px solid rgba(255,255,255,.35);border-radius:var(--radius-button);padding:18px 40px;font-size:var(--font-body-md);font-weight:var(--weight-medium);cursor:pointer;font-family:inherit;transition:background var(--duration-fast) var(--ease-out-quart),border-color .2s,transform var(--duration-fast) var(--ease-out-quart)}.dgh-cta-btn-secondary:hover{background:#ffffff1f;border-color:#fff9;transform:translateY(-1px)}.dgh-cta-btn-secondary:active{transform:translateY(.5px);transition-duration:.08s}.dgh-anim-cta{opacity:0;transform:translateY(24px)}.dgh-final-cta.dgh-visible .dgh-anim-cta{animation:dgh-hero-fade-up .7s var(--ease-out-expo) both}.dgh-blog-teaser{padding:clamp(48px,6vw,72px) var(--space-xl);background:var(--color-bg-primary);border-top:1px solid var(--color-divider)}.dgh-blog-teaser-inner{max-width:1100px;margin:0 auto}.dgh-blog-teaser-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:var(--space-xl)}.dgh-blog-teaser-label{font-size:var(--font-micro);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);display:block;margin-bottom:var(--space-xs)}.dgh-blog-teaser-title{font-size:var(--font-title-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);margin:0;letter-spacing:-.02em}.dgh-blog-teaser-all{font-size:var(--font-label);font-weight:var(--weight-semibold);color:var(--color-accent-primary);text-decoration:none;white-space:nowrap}.dgh-blog-teaser-all:hover{text-decoration:underline}.dgh-blog-teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.dgh-blog-teaser-card{display:flex;flex-direction:column;gap:10px;padding:24px 28px;background:var(--color-bg-primary);border-radius:var(--radius-md);text-decoration:none;transition:box-shadow var(--duration-fast) var(--ease-out-quart),transform .2s var(--ease-out-quart)}.dgh-anim-blog .dgh-blog-teaser-card{opacity:0;transform:translateY(16px)}.dgh-anim-blog.dgh-visible .dgh-blog-teaser-card{animation:dgh-blog-card-in .5s var(--ease-out-expo) calc(var(--i, 0) * .1s + .1s) both}@keyframes dgh-blog-card-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.dgh-blog-teaser-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.dgh-blog-teaser-cat{font-size:var(--font-micro);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent-primary)}.dgh-blog-teaser-card:nth-child(2) .dgh-blog-teaser-cat{color:var(--color-warning-primary)}.dgh-blog-teaser-card:nth-child(3) .dgh-blog-teaser-cat{color:var(--color-purple-primary)}.dgh-blog-teaser-card-title{font-size:var(--font-body-md);font-weight:var(--weight-semibold);color:var(--color-text-primary);line-height:1.4}.dgh-blog-teaser-read{font-size:var(--font-body-sm);color:var(--color-text-muted)}.dgh-footer{background:var(--color-neutral-bg);border-top:1px solid var(--color-divider);padding:40px var(--space-xl)}.dgh-footer-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md)}.dgh-footer-brand{display:flex;align-items:center;gap:var(--space-md)}.dgh-footer-tagline,.dgh-footer-copy{font-size:var(--font-body-sm);color:var(--color-text-muted)}.dgh-footer-links{display:flex;align-items:center;gap:var(--space-sm)}.dgh-footer-links a{font-size:var(--font-body-sm);color:var(--color-text-secondary);text-decoration:none}.dgh-footer-links a:hover{color:var(--color-text-primary)}.dgh-footer-sep{color:var(--color-text-muted)}.dgh-footer-social{display:flex;gap:var(--space-sm)}.dgh-footer-social a{color:var(--color-text-muted);transition:color var(--duration-fast)}.dgh-footer-social a:hover{color:var(--color-text-primary)}@keyframes dgh-hero-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.dgh-hero-eyebrow,.dgh-hero-title,.dgh-hero-subtitle,.dgh-hero-cta,.dgh-hero-aside,.dgh-story-bubble,.dgh-anim-row,.dgh-anim-confirmed,.dgh-anim-player-left,.dgh-anim-player-right,.dgh-anim-vs,.dgh-anim-cta,.dgh-blog-teaser-card{opacity:1!important;transform:none!important;animation:none!important}}@media (max-width: 768px){.dgh-hero-inner{grid-template-columns:1fr}.dgh-hero-aside{flex-direction:row;gap:var(--space-xl)}.dgh-hero-stat{text-align:left}.dgh-problem-inner,.dgh-solution-inner{grid-template-columns:1fr;text-align:center}.dgh-problem-chat,.dgh-solution-visual{justify-self:center}.dgh-section-desc{max-width:none}.dgh-blog-teaser-grid{grid-template-columns:1fr}.dgh-footer-inner{flex-direction:column;text-align:center}}@media (max-width: 480px){.dgh-nav-inner{height:52px;padding:0 var(--space-lg)}.dgh-nav-inner .rally-logo{height:28px}.dgh-nav-actions .dgh-btn-link,.dgh-nav-actions .dgh-btn-text{display:none}.dgh-btn-primary{padding:8px 18px;font-size:var(--font-caption)}.dgh-hero{padding-left:var(--space-lg);padding-right:var(--space-lg)}.dgh-hero-aside{flex-direction:row;justify-content:space-between;gap:var(--space-lg)}.dgh-hero-stat-number{font-size:var(--font-title-md)}.dgh-problem,.dgh-solution,.dgh-matchmaking{padding-left:var(--space-lg);padding-right:var(--space-lg)}.dgh-hero-cta{flex-direction:column;align-items:stretch}.dgh-btn-primary.dgh-btn-large{width:100%;text-align:center;padding:16px 24px}.dgh-cta-actions{flex-direction:column;align-items:stretch}.dgh-cta-btn-primary,.dgh-cta-btn-secondary{width:100%;text-align:center}.dgh-matchmaking-visual{gap:var(--space-lg)}.dgh-blog-teaser{padding-left:var(--space-lg);padding-right:var(--space-lg)}.dgh-blog-teaser-header{flex-direction:column;align-items:flex-start;gap:var(--space-sm)}.dgh-footer{padding:var(--space-lg)}}.dgh-story-matchup{display:flex;align-items:center;justify-content:center;gap:var(--space-xl)}.dgh-story-matchup-player{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.dgh-story-matchup-avatar{width:72px;height:72px;border-radius:50%;background:#c5c9ce;border:2px solid #ACB2B9;display:flex;align-items:center;justify-content:center;font-weight:var(--weight-bold);font-size:var(--font-body-lg);color:var(--color-accent-primary)}.dgh-story-matchup-rating{font-size:var(--font-title-lg);font-weight:var(--weight-bold);color:var(--color-text-primary);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.dgh-story-matchup-vs{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.dgh-story-matchup-vs-label{font-size:var(--font-label);font-weight:var(--weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.dgh-story-matchup-badge{display:flex;align-items:center;gap:4px;background:#d6d8dc;color:var(--color-text-secondary);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);padding:5px 12px;border-radius:999px;white-space:nowrap}@media (max-width: 480px){.dgh-story-matchup-avatar{width:56px;height:56px;font-size:var(--font-label)}.dgh-story-matchup-rating{font-size:var(--font-title-md)}}.sh-benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}.sh-benefit-card{background:var(--color-bg-surface);border-radius:16px;padding:28px 24px;box-shadow:var(--shadow-sm)}.sh-benefit-icon{margin-bottom:16px}.sh-benefit-title{font-size:var(--font-body-lg);font-weight:700;margin-bottom:8px}.sh-benefit-desc{font-size:var(--font-label);line-height:1.6;color:var(--color-text-secondary)}.sh-how{background:var(--color-bg-surface)}.sh-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.sh-how-step{text-align:center;padding:24px}.sh-how-number{width:48px;height:48px;border-radius:50%;background:var(--color-positive-primary);color:#fff;font-size:var(--font-title-sm);font-weight:var(--weight-bold);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.sh-how-title{font-size:var(--font-body-lg);font-weight:700;margin-bottom:8px}.sh-how-desc{font-size:var(--font-label);line-height:1.6;color:var(--color-text-secondary)}.sh-value-box{background:var(--color-bg-primary)}.sh-value-card{background:var(--color-bg-surface);border-radius:20px;padding:40px;box-shadow:var(--shadow-md);text-align:center}.sh-value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:480px;margin:0 auto 32px;text-align:left}.sh-value-item{display:flex;align-items:center;gap:10px;font-size:var(--font-body-md);font-weight:500}.sh-value-check{color:var(--color-positive-primary);font-weight:700;font-size:var(--font-body-lg)}.sh-stats{background:var(--color-bg-surface);padding:60px 24px}.sh-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}.sh-stat{display:flex;flex-direction:column;gap:4px}.sh-stat-number{font-size:var(--font-hero-sm);font-weight:var(--weight-bold);letter-spacing:-1px;font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.sh-stat-label{font-size:var(--font-caption);color:var(--color-text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.sh-problem{background:var(--color-bg-primary)}.sh-problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}.sh-problem-card{border-radius:16px;padding:28px 24px;background:var(--color-bg-surface)}.sh-problem-before{border-left:3px solid var(--color-negative-primary)}.sh-problem-after{border-left:3px solid var(--color-positive-primary)}.sh-problem-label{font-size:var(--font-caption);font-weight:700;color:var(--color-negative-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.sh-problem-label-positive{color:var(--color-positive-primary)}.sh-chat-demo{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.sh-chat-bubble{padding:8px 14px;border-radius:14px;font-size:var(--font-caption);max-width:80%;line-height:1.4}.sh-chat-out{background:var(--color-accent-primary);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.sh-chat-in{background:var(--color-neutral-bg);color:var(--color-text-primary);align-self:flex-start;border-bottom-left-radius:4px}.sh-problem-stat{display:flex;align-items:baseline;gap:8px;padding-top:12px;border-top:1px solid var(--color-divider)}.sh-problem-stat-number{font-size:var(--font-title-lg);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-negative-primary)}.sh-problem-stat-positive .sh-problem-stat-number{color:var(--color-positive-primary)}.sh-problem-stat-label{font-size:var(--font-caption);color:var(--color-text-secondary)}.sh-solution-demo{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin-bottom:16px}.sh-solution-step{display:flex;align-items:center;gap:10px;font-size:var(--font-label);font-weight:500}.sh-solution-icon{width:36px;height:36px;border-radius:10px;background:var(--color-neutral-bg);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);flex-shrink:0}.sh-solution-icon-accent{background:var(--color-accent-bg);color:var(--color-accent-primary)}.sh-solution-icon-positive{background:var(--color-positive-bg);color:var(--color-positive-primary)}.sh-solution-arrow{padding-left:12px;color:var(--color-text-muted)}.sh-multi{background:var(--color-bg-surface)}.sh-multi-inner{text-align:center;max-width:700px}.sh-multi-title{font-size:var(--font-title-lg);font-weight:var(--weight-bold);margin-bottom:16px}.sh-multi-copy{font-size:var(--font-body-md);line-height:1.7;color:var(--color-text-secondary)}.sh-final-cta{background:var(--color-bg-primary);text-align:center;padding:80px 24px}.sh-cta-title{font-size:var(--font-hero-sm);font-weight:var(--weight-bold);margin-bottom:12px}.sh-cta-subtitle{font-size:var(--font-body-lg);color:var(--color-text-secondary);margin-bottom:32px}.sh-blog-teaser{background:var(--color-bg-surface);padding:64px 24px;border-top:1px solid var(--color-divider)}.sh-blog-teaser-inner{max-width:1100px;margin:0 auto}.sh-blog-teaser-header{text-align:center;margin-bottom:32px}.sh-blog-teaser-label{font-size:var(--font-body-sm);font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);display:block;margin-bottom:4px}.sh-blog-teaser-title{font-size:var(--font-title-lg);font-weight:var(--weight-bold)}.sh-blog-teaser-subtitle{font-size:var(--font-label);color:var(--color-text-secondary);margin-top:4px}.sh-blog-teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.sh-blog-teaser-card{display:flex;flex-direction:column;gap:6px;padding:20px;background:var(--color-bg-primary);border-radius:12px;text-decoration:none;color:inherit;transition:box-shadow var(--duration-fast)}.sh-blog-teaser-card:hover{box-shadow:var(--shadow-md)}.sh-blog-teaser-cat{font-size:var(--font-micro);font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-positive-primary)}.sh-blog-teaser-card-title{font-size:var(--font-body-md);font-weight:600;line-height:1.4}.sh-blog-teaser-read{font-size:var(--font-body-sm);color:var(--color-text-muted)}.sh-blog-teaser-all{display:block;text-align:center;margin-top:24px;font-size:var(--font-label);font-weight:600;color:var(--color-positive-primary);text-decoration:none}.sh-blog-teaser-all:hover{text-decoration:underline}.sh-footer{background:#111;color:#999;padding:48px 24px 24px}.sh-footer-inner{max-width:1100px;margin:0 auto}.sh-footer-top{display:flex;gap:60px;margin-bottom:32px}.sh-footer-brand{display:flex;flex-direction:column;gap:8px;min-width:180px}.sh-footer-tagline{font-size:var(--font-caption);color:#666}.sh-footer-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;flex:1}.sh-footer-col{display:flex;flex-direction:column;gap:8px}.sh-footer-col-title{font-size:var(--font-body-sm);font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#ccc;margin-bottom:4px}.sh-footer-col a{font-size:var(--font-caption);color:#999;text-decoration:none;transition:color var(--duration-fast)}.sh-footer-col a:hover{color:#fff}.sh-footer-bottom{padding-top:24px;border-top:1px solid #333;font-size:var(--font-body-sm);color:#555}.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0}.auth-divider-line{flex:1;height:1px;background:var(--color-divider)}.auth-divider-text{font-size:var(--font-body-sm);color:var(--color-text-muted);font-weight:500;text-transform:uppercase}.auth-terms{margin-top:16px;font-size:var(--font-body-sm);color:var(--color-text-muted);text-align:center;line-height:1.5}.auth-terms a{color:var(--color-text-muted);text-decoration:underline}.auth-switch{margin-top:12px;font-size:var(--font-label);color:var(--color-text-secondary);text-align:center}.login-page{min-height:100dvh;background:var(--color-bg-surface);position:relative}.login-page:before{display:none}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100dvh}.login-form-side{display:flex;align-items:flex-start;justify-content:center;padding:60px 40px 40px}.login-form-wrapper{width:100%;max-width:400px}.login-logo{margin-bottom:40px}.login-title{font-size:var(--font-title-lg);font-weight:var(--weight-bold);margin-bottom:4px}.login-subtitle{font-size:var(--font-body-md);color:var(--color-text-secondary);margin-bottom:28px}.login-verify-msg{font-size:var(--font-label);color:var(--color-text-secondary);margin-bottom:16px}.login-image-side{position:relative;overflow:hidden}.login-image{width:100%;height:100%;object-fit:cover;display:block}.login-image-overlay{position:absolute;bottom:0;left:0;right:0;padding:40px;background:linear-gradient(transparent,#000000b3)}.login-image-quote{max-width:400px}.login-quote-text{font-size:var(--font-body-lg);font-weight:600;color:#fff;line-height:1.5;margin-bottom:8px}.login-quote-attr{font-size:var(--font-caption);color:#ffffffb3}.join-page{min-height:100dvh;background:var(--color-bg-surface);display:flex;align-items:center;justify-content:center;padding:40px 24px}.join-inner{max-width:440px;width:100%;text-align:center}.join-logo,.join-hero{margin-bottom:32px}.join-title{font-size:var(--font-hero-sm);font-weight:var(--weight-bold);line-height:1.1;margin-bottom:12px}.join-subtitle{font-size:var(--font-body-md);line-height:1.6;color:var(--color-text-secondary)}.join-ctas{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.join-legal{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-bottom:40px}.join-legal a{color:var(--color-text-muted);text-decoration:underline}.join-steps{text-align:left;display:flex;flex-direction:column;gap:20px;margin-bottom:40px;padding:24px;background:var(--color-bg-primary);border-radius:16px}.join-step{display:flex;gap:16px;align-items:flex-start}.join-step-num{width:32px;height:32px;border-radius:50%;background:var(--color-positive-primary);color:#fff;font-size:var(--font-label);font-weight:var(--weight-bold);display:flex;align-items:center;justify-content:center;flex-shrink:0}.join-step strong{font-size:var(--font-label);display:block;margin-bottom:2px}.join-step p{font-size:var(--font-caption);color:var(--color-text-secondary);margin:0}.join-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.join-stat{display:flex;flex-direction:column;gap:2px}.join-stat-num{font-size:var(--font-title-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.join-stat-label{font-size:var(--font-micro);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.join-bottom-cta{margin:0 auto}@media (max-width: 767px){.sh-nav-links,.sh-hide-mobile{display:none}.sh-hero{padding:40px 20px 32px}.sh-hero-inner{grid-template-columns:1fr;gap:32px}.sh-hero-content{max-width:100%;text-align:center}.sh-hero-title{font-size:var(--font-display-md)}.sh-hero-subtitle{font-size:var(--font-body-md)}.sh-hero-ctas{max-width:100%;margin:0 auto}.sh-hero-visual{display:none}.sh-section{padding:48px 20px}.sh-section-title,.sh-identity-headline{font-size:var(--font-title-md)}.sh-pillars-grid{grid-template-columns:1fr;gap:32px}.sh-benefits-grid{grid-template-columns:1fr}.sh-how-grid{grid-template-columns:1fr;gap:24px}.sh-value-grid{grid-template-columns:1fr}.sh-stats-grid{grid-template-columns:repeat(2,1fr)}.sh-problem-grid{grid-template-columns:1fr}.sh-cta-title{font-size:var(--font-title-lg)}.sh-blog-teaser-grid{grid-template-columns:1fr}.sh-footer-top{flex-direction:column;gap:32px}.sh-footer-columns{grid-template-columns:repeat(2,1fr)}.login-layout{grid-template-columns:1fr}.login-image-side{display:none}.login-form-side{padding:32px 24px}.join-title{font-size:var(--font-title-lg)}}.analytics-dashboard{padding:var(--space-lg);padding-bottom:100px}.analytics-header{display:flex;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg)}.analytics-back{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-button);display:flex;align-items:center}.analytics-back:hover{background:var(--color-neutral-bg)}.analytics-title{font-size:var(--font-title-md);font-weight:var(--weight-bold);color:var(--color-text-primary)}.analytics-range-picker{display:flex;gap:var(--space-xs);margin-bottom:var(--space-lg);background:var(--color-neutral-bg);border-radius:var(--radius-button);padding:3px}.analytics-range-btn{flex:1;padding:var(--space-sm) var(--space-md);border:none;background:transparent;border-radius:8px;font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--ease-out-quart),color var(--duration-fast) var(--ease-out-quart),box-shadow var(--duration-fast) var(--ease-out-quart)}.analytics-range-btn.active{background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow)}.analytics-tabs{display:flex;gap:var(--space-xs);margin-bottom:var(--space-xl);border-bottom:1px solid var(--color-divider);overflow-x:auto;-webkit-overflow-scrolling:touch}.analytics-tab{padding:var(--space-sm) var(--space-md);border:none;background:transparent;font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:color var(--duration-fast) var(--ease-out-quart),border-color var(--duration-fast) var(--ease-out-quart)}.analytics-tab.active{color:var(--color-accent-primary);border-bottom-color:var(--color-accent-primary)}.analytics-tab:hover{color:var(--color-text-primary)}.analytics-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}.analytics-metric-card{background:var(--color-bg-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:var(--shadow)}.analytics-metric-value{font-size:var(--font-title-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text-primary);line-height:1.2}.analytics-metric-label{font-size:var(--font-body-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);margin-top:var(--space-xs)}.analytics-metric-sub{font-size:var(--font-micro);color:var(--color-text-muted);margin-top:2px}.analytics-section-title{font-size:var(--font-body-lg);font-weight:var(--weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-md)}.analytics-bar-chart{display:flex;align-items:flex-end;gap:2px;height:120px;padding:var(--space-sm) 0;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-xl)}.analytics-bar-col{display:flex;flex-direction:column;align-items:center;flex:1;min-width:28px;height:100%;justify-content:flex-end}.analytics-bar-value{font-size:var(--font-nano);font-weight:var(--weight-medium);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-bottom:2px}.analytics-bar{width:100%;max-width:32px;border-radius:4px 4px 0 0;transition:height var(--duration-normal) var(--ease-out-quart)}.analytics-bar-label{font-size:.5625rem;color:var(--color-text-muted);margin-top:4px;white-space:nowrap}.analytics-funnel{display:flex;flex-direction:column;gap:var(--space-md);margin-bottom:var(--space-xl)}.analytics-funnel-step{display:flex;flex-direction:column;gap:var(--space-xs)}.analytics-funnel-info{display:flex;justify-content:space-between;align-items:baseline}.analytics-funnel-name{font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-primary)}.analytics-funnel-count{font-size:var(--font-body-md);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.analytics-funnel-bar-track{height:28px;background:var(--color-neutral-bg);border-radius:6px;overflow:hidden}.analytics-funnel-bar-fill{height:100%;border-radius:6px;transition:width .4s var(--ease-out-quart)}.analytics-funnel-rate{font-size:var(--font-body-sm);color:var(--color-text-muted)}.analytics-channel-table{background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow);overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-lg)}.analytics-channel-header{display:grid;grid-template-columns:2fr repeat(6,1fr);padding:var(--space-md) var(--space-lg);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);min-width:560px}.analytics-channel-row{display:grid;grid-template-columns:2fr repeat(6,1fr);padding:var(--space-md) var(--space-lg);font-size:var(--font-body-md);border-bottom:1px solid var(--color-divider);align-items:center;min-width:560px}.analytics-channel-row:last-child{border-bottom:none}.analytics-channel-name{display:flex;align-items:center;gap:var(--space-sm);font-weight:var(--weight-medium);color:var(--color-text-primary)}.analytics-channel-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.analytics-channel-num{font-variant-numeric:tabular-nums;text-align:right;color:var(--color-text-primary)}.analytics-cac{font-weight:var(--weight-semibold)}.analytics-spend-input{width:70px;padding:4px 6px;border:1px solid var(--color-accent-primary);border-radius:6px;font-size:var(--font-body-sm);font-variant-numeric:tabular-nums;text-align:right;outline:none}.analytics-spend-btn{background:none;border:1px dashed var(--color-divider);border-radius:6px;padding:4px 8px;font-size:var(--font-body-sm);color:var(--color-text-muted);cursor:pointer;font-variant-numeric:tabular-nums}.analytics-spend-btn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.analytics-channel-mix{margin-bottom:var(--space-xl)}.analytics-mix-bar{display:flex;height:24px;border-radius:12px;overflow:hidden;margin-bottom:var(--space-md)}.analytics-mix-segment{transition:width var(--duration-normal) var(--ease-out-quart);min-width:2px}.analytics-mix-legend{display:flex;flex-wrap:wrap;gap:var(--space-md)}.analytics-mix-item{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-body-sm);color:var(--color-text-secondary)}.analytics-mix-pct{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.analytics-cohort-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-xl);border-radius:var(--radius-card);box-shadow:var(--shadow)}.analytics-cohort-table{width:100%;min-width:400px;border-collapse:collapse;background:var(--color-bg-surface);font-size:var(--font-body-sm)}.analytics-cohort-table th{padding:var(--space-sm) var(--space-md);text-align:center;font-weight:var(--weight-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);white-space:nowrap;position:sticky;top:0;background:var(--color-bg-surface)}.analytics-cohort-table th:first-child,.analytics-cohort-table th:nth-child(2){text-align:left;position:sticky;left:0;z-index:1}.analytics-cohort-week{padding:var(--space-sm) var(--space-md);font-weight:var(--weight-medium);color:var(--color-text-primary);white-space:nowrap;position:sticky;left:0;background:var(--color-bg-surface)}.analytics-cohort-users{padding:var(--space-sm) var(--space-md);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.analytics-cohort-cell{padding:var(--space-sm) var(--space-md);text-align:center;font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid var(--color-bg-primary)}.analytics-cohort-empty{background:var(--color-neutral-bg)!important;color:transparent!important}.analytics-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-3xl);color:var(--color-text-secondary);font-size:var(--font-body-md)}.analytics-spinner{width:32px;height:32px;border:3px solid var(--color-neutral-bg);border-top-color:var(--color-accent-primary);border-radius:50%;animation:analytics-spin .8s linear infinite}@keyframes analytics-spin{to{transform:rotate(360deg)}}.analytics-empty-state{text-align:center;padding:var(--space-3xl) var(--space-xl);color:var(--color-text-secondary)}.analytics-empty-icon{margin-bottom:var(--space-lg)}.analytics-empty-sub{font-size:var(--font-body-sm);color:var(--color-text-muted);margin-top:var(--space-sm);max-width:300px;margin-left:auto;margin-right:auto}.analytics-empty{text-align:center;padding:var(--space-xl);color:var(--color-text-muted);font-size:var(--font-body-sm);background:var(--color-neutral-bg);border-radius:var(--radius-card);margin-bottom:var(--space-xl)}.analytics-setup-note{margin-top:var(--space-xl);background:var(--color-bg-surface);border-radius:var(--radius-card);box-shadow:var(--shadow);overflow:hidden}.analytics-setup-note summary{padding:var(--space-md) var(--space-lg);font-size:var(--font-body-md);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer}.analytics-setup-note ol{padding:0 var(--space-lg) var(--space-lg) var(--space-xl);font-size:var(--font-body-sm);color:var(--color-text-secondary);line-height:1.8}.analytics-setup-note code{background:var(--color-neutral-bg);padding:2px 6px;border-radius:4px;font-size:var(--font-body-sm)}.victory-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);overflow-y:auto;animation:victory-fade-in .22s ease-out}.victory-overlay--podium{background:radial-gradient(ellipse at center,#1a1d2e,#0c0e1a)}.victory-overlay--group{background:#111111e0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}@keyframes victory-fade-in{0%{opacity:0}to{opacity:1}}.victory-overlay__inner{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);max-width:420px;width:100%;padding:var(--space-xl) var(--space-lg) var(--space-lg);animation:victory-pop-in .42s cubic-bezier(.2,.9,.25,1.1)}@keyframes victory-pop-in{0%{transform:translateY(24px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.victory-overlay__close{position:absolute;top:var(--space-xs);right:var(--space-xs);width:36px;height:36px;border-radius:999px;border:none;background:#ffffff1f;color:#fff;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .14s ease}.victory-overlay__close:hover{background:#ffffff38}.victory-overlay__headline{text-align:center;color:#fff}.victory-overlay__headline-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.18em;color:#ffffff9e;margin-bottom:var(--space-xs)}.victory-overlay__headline-tier{font-size:34px;font-weight:800;letter-spacing:-.01em;line-height:1.05}.victory-overlay__headline--group .victory-overlay__headline-tier{font-size:20px;font-weight:600;color:#ffffffeb}.victory-card{position:relative;width:100%;max-width:360px;padding:var(--space-xl) var(--space-lg) var(--space-lg);border-radius:22px;background:linear-gradient(160deg,#1f2335,#12141f);color:#fff;box-shadow:0 24px 64px #0000008c,0 0 0 1px #ffffff0f,inset 0 1px #ffffff14;text-align:center;overflow:hidden;isolation:isolate}.victory-card--group{background:linear-gradient(160deg,#1a1d2b,#0f1119)}.victory-card__glow{position:absolute;inset:-40% -10% auto -10%;height:70%;background:radial-gradient(ellipse at center top,var(--tier-glow) 0%,transparent 70%);pointer-events:none;z-index:0}.victory-card>*:not(.victory-card__glow){position:relative;z-index:1}.victory-card__eyebrow{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;letter-spacing:.22em;color:var(--tier-primary);margin-bottom:var(--space-md);text-transform:uppercase}.victory-card__trophy{display:flex;justify-content:center;margin-bottom:var(--space-md);filter:drop-shadow(0 6px 14px var(--tier-glow))}.victory-card__title{font-size:26px;font-weight:800;letter-spacing:-.01em;color:#fff;margin-bottom:var(--space-xs)}.victory-card__player{font-size:18px;font-weight:600;color:#ffffffeb;margin-bottom:2px}.victory-card__tournament{font-size:13px;color:#ffffff9e;margin-bottom:var(--space-lg)}.victory-card__county{margin-left:4px;opacity:.75}.victory-card__stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md);padding:var(--space-md) 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:var(--space-md)}.victory-card__stat{display:flex;flex-direction:column;align-items:center;gap:2px}.victory-card__stat-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:22px;font-weight:700;color:#fff;letter-spacing:-.02em}.victory-card__stat-divider{color:#ffffff61;margin:0 2px;font-weight:500}.victory-card__stat-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff85}.victory-card__final{padding:var(--space-sm) 0 var(--space-md);margin-bottom:var(--space-sm)}.victory-card__final-label{font-size:12px;color:#ffffff9e;margin-bottom:2px}.victory-card__final-score{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:15px;font-weight:600;color:var(--tier-highlight);letter-spacing:.02em}.victory-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-sm);border-top:1px solid rgba(255,255,255,.06);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#ffffff6b}.victory-card__brand{color:var(--tier-primary);font-weight:600}.victory-overlay__actions{display:flex;gap:var(--space-sm);width:100%;max-width:360px}.victory-overlay__share,.victory-overlay__done{flex:1;padding:14px 16px;border-radius:var(--radius-button);font-size:15px;font-weight:600;border:none;cursor:pointer;transition:transform .12s ease,background .14s ease}.victory-overlay__share{background:#fff;color:#111}.victory-overlay__share:hover{transform:translateY(-1px);background:#f3f4f6}.victory-overlay__done{background:#ffffff1a;color:#fff}.victory-overlay__done:hover{background:#ffffff2e}.victory-overlay__toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);background:#000000db;color:#fff;font-size:13px;padding:10px 16px;border-radius:999px;box-shadow:0 4px 16px #0000004d;z-index:10;animation:victory-toast-in .18s ease-out}@keyframes victory-toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.victory-confetti{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.victory-confetti__piece{position:absolute;top:50%;left:50%;width:10px;height:14px;border-radius:2px;transform-origin:center;animation:victory-confetti-fly 1.6s ease-out forwards;opacity:0}@keyframes victory-confetti-fly{0%{transform:translate(-50%,-50%) rotate(0) scale(.6);opacity:0}15%{opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(var(--rot)) scale(1);opacity:0}}@media (max-width: 380px){.victory-overlay__inner{padding:var(--space-lg) var(--space-md)}.victory-overlay__headline-tier{font-size:28px}.victory-card{padding:var(--space-lg) var(--space-md) var(--space-md)}.victory-card__title{font-size:22px}.victory-card__stat-value{font-size:19px}}.victory-replay{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;margin-top:var(--space-sm);border-radius:999px;background:var(--color-neutral-bg);color:var(--color-text-primary);border:none;font-size:12px;font-weight:600;cursor:pointer;transition:background .14s ease}.victory-replay:hover{background:#e3e6eb}.native-app .top-nav{padding-top:calc(env(safe-area-inset-top,20px) + 16px);padding-bottom:16px;min-height:64px}.native-app .top-nav-register{padding-top:calc(env(safe-area-inset-top,20px) + 16px);padding-bottom:16px}.native-app .bottom-tabs{height:auto;min-height:72px;padding-top:8px;padding-bottom:calc(env(safe-area-inset-bottom,20px) + 8px)}.native-app .bottom-tab{gap:5px;padding:8px 0}.native-app .tab-icon{width:24px;height:24px}.native-app .dgh-nav{display:none}.native-guest-nav{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,20px) + 16px) var(--space-lg) 16px;background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-divider);position:sticky;top:0;z-index:var(--z-sticky)}.native-guest-nav .rally-logo{cursor:pointer}.native-guest-nav-actions{display:flex;align-items:center;gap:var(--space-sm)}.native-guest-nav-btn{padding:8px 16px;border-radius:var(--radius-button);font-size:var(--font-body-sm);font-weight:var(--weight-semibold);cursor:pointer;border:1px solid var(--color-divider);background:none;color:var(--color-text-secondary)}.native-guest-nav-btn-primary{background:var(--color-accent-primary);color:#fff;border-color:var(--color-accent-primary)}
