@keyframes statrush-shine-glow{0%,to{box-shadow:0 0 10px #2ea86847,0 0 18px #d4a01724}50%{box-shadow:0 0 20px #2ea8688c,0 0 32px #d4a01752}}@keyframes statrush-shine-glow-soft{0%,to{box-shadow:0 0 6px #2ea86826,0 0 12px #d4a01714}50%{box-shadow:0 0 14px #2ea86852,0 0 22px #d4a0172e}}@keyframes statrush-shine-sweep{0%{transform:translate(-130%)}45%,to{transform:translate(130%)}}.shine-btn{isolation:isolate;animation:2.8s ease-in-out infinite statrush-shine-glow;position:relative;overflow:hidden}.shine-btn:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(105deg,#0000 32%,#ffffff38 50%,#0000 68%);animation:3.2s ease-in-out infinite statrush-shine-sweep;position:absolute;inset:0;transform:translate(-130%)}.shine-btn>*{z-index:2;position:relative}.shine-btn--soft{animation-name:statrush-shine-glow-soft}.shine-btn--soft:after{background:linear-gradient(105deg,#0000 38%,#ffffff1f 50%,#0000 62%)}.shine-panel{animation:3.4s ease-in-out infinite statrush-shine-glow-soft;position:relative;overflow:hidden}.shine-panel:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff0f 50%,#0000 70%);animation:4.5s ease-in-out infinite statrush-shine-sweep;position:absolute;inset:0;transform:translate(-130%)}.shine-panel>*{z-index:1;position:relative}@keyframes statrush-shine-glow-discord{0%,to{box-shadow:0 0 10px #5865f259,0 0 18px #7289da33}50%{box-shadow:0 0 22px #5865f299,0 0 34px #7289da59}}@keyframes statrush-shine-glow-offers{0%,to{box-shadow:0 0 8px #2ea86833,0 0 14px #d4a0171f}50%{box-shadow:0 0 16px #2ea86861,0 0 24px #d4a01738}}.shine-btn--discord,.shine-panel--discord{animation-name:statrush-shine-glow-discord}.shine-panel--offers{animation-name:statrush-shine-glow-offers}.shine-panel--offers-featured{animation-name:statrush-shine-glow}@media (prefers-reduced-motion:reduce){.shine-btn,.shine-btn--soft,.shine-btn--discord,.shine-panel,.shine-panel--discord,.shine-panel--offers,.shine-panel--offers-featured{animation:none}.shine-btn:after,.shine-panel:before{animation:none;display:none}}:root{--color-bg:#0f1a13;--color-surface:#1a2e22;--color-border:#2a3e30;--color-primary:#2ea868;--color-green-dark:#1a7a4a;--color-green-light:#e8f5ee;--color-accent:#d4a017;--color-accent-light:#fdf6e0;--color-error:#e05252;--color-white:#fff;--font-display:"Bebas Neue", sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--font-mono:"DM Mono", monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--nav-rail-width:72px;--bottom-nav-height:64px}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{font-family:var(--font-body);color:var(--color-green-light);background:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#2ea8680a 1px,#0000 1px),linear-gradient(90deg,#2ea8680a 1px,#0000 1px);background-size:48px 48px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(#000 30%,#0000 80%);mask-image:radial-gradient(#000 30%,#0000 80%)}h1,h2,h3,.display{font-family:var(--font-display);letter-spacing:.04em;margin:0;font-weight:400}.mono{font-family:var(--font-mono);font-size:12px}a{color:var(--color-primary);text-decoration:none}button{font:inherit;cursor:pointer}input{font:inherit}@keyframes pulse-border{0%,to{box-shadow:inset 3px 0 0 var(--color-primary)}50%{box-shadow:inset 3px 0 0 var(--color-accent)}}@keyframes fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes live-dot{0%,to{opacity:1}50%{opacity:.35}}.fade-in{animation:.35s ease-out both fade-in}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-rail{width:var(--nav-rail-width);background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-4) 0;z-index:100;flex-direction:column;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0}@media (width>=1024px){.nav-rail{display:flex}}.nav-rail__brand{margin-bottom:var(--space-6)}.nav-rail__logo{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:44px;height:44px;transition:opacity .15s;display:flex}.nav-rail__logo:hover{opacity:.85}.nav-rail__logo img{object-fit:contain;width:40px;height:auto;display:block}.nav-rail__list{gap:var(--space-2);flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.nav-rail__link{align-items:center;gap:var(--space-1);padding:var(--space-2);color:#e8f5ee8c;border-left:2px solid #0000;flex-direction:column;font-size:10px;text-decoration:none;transition:color .2s,background .2s;display:flex}.nav-rail__link:hover{color:var(--color-green-light)}.nav-rail__link--active{color:var(--color-primary);border-left-color:var(--color-primary);background:#2ea86814}.nav-rail__icon{font-size:16px}.bottom-nav{height:var(--bottom-nav-height);background:var(--color-surface);border-top:1px solid var(--color-border);z-index:100;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=1024px){.bottom-nav{display:none}}.bottom-nav__link{color:#e8f5ee8c;padding:var(--space-2);flex-direction:column;align-items:center;gap:2px;font-size:11px;text-decoration:none;transition:color .2s;display:flex}.bottom-nav__link--active{color:var(--color-primary)}.bottom-nav__icon{font-size:18px}.lang-switch{border:1px solid #e8f5ee2e;border-radius:999px;display:inline-flex;overflow:hidden}.lang-switch__btn{appearance:none;color:#e8f5ee8c;font:inherit;letter-spacing:.06em;cursor:pointer;background:0 0;border:0;padding:.35rem .55rem;font-size:.72rem}.lang-switch__btn--active{color:#e8f5ee;background:#2ea86838}.auth-overlay{z-index:9999;padding:var(--space-4);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f1a13e0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-modal{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;width:min(420px,100%);display:flex;overflow:hidden;box-shadow:0 24px 64px #0000008c}.auth-modal__header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.auth-modal__title{font-family:var(--font-display);color:var(--color-white);letter-spacing:.06em;font-size:18px}.auth-modal__body{padding:var(--space-5)}.auth-modal__tabs{margin-bottom:var(--space-5);border-bottom:1px solid var(--color-border);gap:0;display:flex}.auth-modal__tab{padding:var(--space-3);color:#e8f5ee73;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;font-size:13px;transition:color .2s,border-color .2s}.auth-modal__tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.auth-modal__form{gap:var(--space-4);flex-direction:column;display:flex}.auth-modal__label{gap:var(--space-2);color:#e8f5ee8c;text-transform:uppercase;letter-spacing:.05em;flex-direction:column;font-size:12px;display:flex}.auth-modal__input{padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-white);font-size:14px;transition:border-color .2s}.auth-modal__input:focus{border-color:var(--color-primary);outline:none}.auth-modal__input::placeholder{color:#e8f5ee40}.auth-modal__hint{text-transform:none;letter-spacing:0;color:#e8f5ee59;font-size:11px;line-height:1.4}.auth-modal__error{color:var(--color-error);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);background:#e0525214;border:1px solid #e0525240;margin:0;font-size:12px}.auth-modal__btn{padding:var(--space-3) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-white);cursor:pointer;font-size:14px;transition:all .2s}.auth-modal__btn--primary{background:var(--color-green-dark);border-color:var(--color-primary);color:var(--color-white);letter-spacing:.03em;font-weight:600}.auth-modal__btn--primary:hover:not(:disabled){background:var(--color-primary);color:#0a1a10}.auth-modal__btn:disabled{opacity:.5;cursor:not-allowed}.auth-modal__confirm{align-items:center;gap:var(--space-3);text-align:center;padding:var(--space-3) 0;flex-direction:column;display:flex}.auth-modal__confirm-icon{font-size:36px}.auth-modal__confirm p{color:#e8f5eeb3;margin:0;font-size:14px}.auth-modal__confirm strong{color:var(--color-white)}.header-auth{align-items:center;gap:var(--space-3);display:flex}.header-auth__btn{background:var(--color-surface);border:1px solid var(--color-border);color:#e8f5ee99;cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:border-color .2s,color .2s,background .2s;display:flex}.header-auth__btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.header-auth__btn--logged{background:var(--color-green-dark);border-color:var(--color-primary);color:var(--color-primary)}.header-auth__username{color:#e8f5ee73;text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:11px;text-decoration:none;transition:color .2s;display:none;overflow:hidden}.header-auth__username:hover{color:var(--color-primary)}@media (width>=640px){.header-auth__username{display:block}}.header-auth{align-items:center;gap:var(--space-2);display:flex;position:relative}.header-auth__menu{top:calc(100% + var(--space-2));z-index:100;min-width:160px;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);position:absolute;right:0;box-shadow:0 12px 32px #00000073}.header-auth__menu-item{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-green-light);text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;font-size:13px;text-decoration:none;transition:background .15s,color .15s;display:block}.header-auth__menu-item:hover{color:var(--color-white);background:#2ea8681a}.header-auth__menu-item--accent{color:var(--color-accent)}.header-auth__menu-item--accent:hover{color:var(--color-white);background:#d4a0171f}.header-auth__menu-item--danger:hover{color:var(--color-error);background:#e052521a}.header-auth__signout{color:#e8f5ee59;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline;display:none}@media (width>=640px){.header-auth__signout{display:block}}.header-auth__signout:hover{color:var(--color-error)}.app-layout{z-index:1;min-height:100vh;position:relative}.app-layout__main{min-height:100vh;padding-bottom:calc(var(--bottom-nav-height) + var(--space-4))}@media (width>=1024px){.app-layout__main{margin-left:var(--nav-rail-width);padding-bottom:var(--space-6)}}.app-header{padding:var(--space-4) var(--space-4) var(--space-3);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50;background:#0f1a13eb;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}@media (width>=1024px){.app-header{padding:var(--space-4) var(--space-6)}}.app-header__tools{align-items:center;gap:.75rem;display:flex}.app-header__brand{align-items:center;gap:var(--space-3);display:flex}.app-header__logo{object-fit:contain;object-position:left center;width:auto;max-width:min(200px,42vw);height:40px;display:block}.app-header__tag{color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em;font-size:12px}.app-header__version{color:var(--color-accent);background:#d4a01726;border-radius:4px;padding:2px 6px;font-size:10px}.app-header__url{color:#e8f5ee59;font-size:11px}.app-content{padding:var(--space-4);max-width:1200px;margin:0 auto}@media (width>=1024px){.app-content{padding:var(--space-5) var(--space-6)}}.page-title{color:var(--color-white);margin-bottom:var(--space-2);font-size:24px}.page-subtitle{color:#e8f5ee8c;margin-bottom:var(--space-5);font-size:13px}.section-title{font-family:var(--font-display);color:var(--color-primary);letter-spacing:.08em;margin:var(--space-5) 0 var(--space-3);font-size:18px}.grid-2{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.grid-3{gap:var(--space-3);display:grid}@media (width>=768px){.grid-3{grid-template-columns:repeat(3,1fr)}}.grid-4{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=768px){.grid-4{grid-template-columns:repeat(4,1fr)}}.loading,.error-state{padding:var(--space-6);text-align:center;color:#e8f5ee99}.error-state{color:var(--color-error)}.filter-bar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.filter-bar__sep{background:var(--color-border);width:1px;height:20px;margin:0 var(--space-1)}.filter-btn{padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:#e8f5eeb3;font-size:12px;transition:all .2s}.filter-btn--active{background:var(--color-green-dark);border-color:var(--color-primary);color:var(--color-white)}.filter-select{max-width:min(220px,42vw);padding:var(--space-2) var(--space-5) var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:#e8f5eed9;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23a5f3c4' d='M1 1l4 4 4-4'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;font-size:12px;line-height:1.3;transition:border-color .2s,background .2s}.filter-select:hover:not(:disabled){border-color:var(--color-primary)}.filter-select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.filter-select:disabled{opacity:.45;cursor:not-allowed}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.search-input{width:100%;max-width:360px;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-white);margin-bottom:var(--space-4)}.search-input:focus{border-color:var(--color-primary);outline:none}.search-input::placeholder{color:#e8f5ee59}.tabs{gap:var(--space-2);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2);display:flex}.tab{padding:var(--space-2) var(--space-3);color:#e8f5ee8c;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-9px;font-size:13px}.tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.badge-tag{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.badge-tag--win{color:var(--color-primary);background:#2ea86833}.badge-tag--loss{color:var(--color-error);background:#e0525233}.badge-tag--live{color:var(--color-accent);background:#d4a01733}.results-table{border-collapse:collapse;width:100%;font-size:13px}.results-table th{text-align:left;padding:var(--space-2) var(--space-3);color:#e8f5ee73;text-transform:uppercase;border-bottom:1px solid var(--color-border);font-size:11px;font-weight:500}.results-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-green-light)}.results-table tr:hover td{background:#2ea8680d}.tournament-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);cursor:pointer;transition:border-color .2s,transform .2s}.tournament-card:hover{border-color:var(--color-primary);transform:translateY(-2px)}.tournament-card h3{color:var(--color-white);margin-bottom:var(--space-1);font-size:16px}.tournament-card p{color:#e8f5ee8c;margin:0;font-size:12px}.tournament-card__surface{margin-top:var(--space-2);color:var(--color-accent);font-size:11px;display:inline-block}.tournament-card__dates{margin-top:var(--space-2);font-family:var(--font-mono);color:var(--color-accent);font-size:12px;display:block}.schedule-page__tournament-head{align-items:center;gap:var(--space-4);margin-bottom:var(--space-2);display:flex}.schedule-page__tournament-logo{object-fit:contain;flex-shrink:0;width:auto;max-width:100px;height:64px}.slam-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=768px){.slam-grid{grid-template-columns:repeat(4,1fr)}}.slam-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);text-align:center}.slam-card__count{font-family:var(--font-display);color:var(--color-accent);font-size:28px}.slam-card__name{color:var(--color-white);margin:var(--space-1) 0;font-size:12px}.slam-card__years{font-family:var(--font-mono);color:#e8f5ee73;font-size:10px}.courts-grid{gap:var(--space-4);display:grid}@media (width>=900px){.courts-grid{grid-template-columns:repeat(3,1fr)}}.meta-row{gap:var(--space-4);margin-bottom:var(--space-5);flex-wrap:wrap;font-size:13px;display:flex}.meta-row span{color:#e8f5ee99}.meta-row strong{color:var(--color-white);margin-right:var(--space-1)}.legend{gap:var(--space-4);margin-top:var(--space-4);color:#e8f5ee73;font-size:11px;display:flex}.legend__item--finished:before,.legend__item--live:before,.legend__item--scheduled:before{content:"";border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.legend__item--finished:before{background:#e8f5ee4d}.legend__item--live:before{background:var(--color-primary)}.legend__item--scheduled:before{background:var(--color-accent)}.player-profile-section{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--color-border)}
