: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}.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__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);display:grid}@media (width>=768px){.grid-2{grid-template-columns:repeat(2,1fr)}}.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)}.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)}.live-banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-green-dark);border-radius:var(--radius-md);margin-bottom:var(--space-4);background:#1a7a4a40;animation:2s ease-in-out infinite pulse-border;display:flex}.live-banner__icon{font-size:20px;line-height:1}.live-banner__dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite live-dot}.live-banner__label{font-family:var(--font-display);color:var(--color-primary);letter-spacing:.08em;font-size:20px}.live-banner__meta{color:#e8f5eebf;font-size:13px}.player-badge{align-items:center;gap:var(--space-3);display:flex}.player-badge--clickable{cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);transition:background .2s}.player-badge--clickable:hover{background:#2ea8681a}.player-badge__avatar{background:var(--color-green-dark);width:40px;height:40px;font-family:var(--font-display);color:var(--color-accent-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex;overflow:hidden}.player-badge--lg .player-badge__avatar{width:56px;height:56px;font-size:18px}.player-badge__avatar img{object-fit:cover;width:100%;height:100%}.player-badge__name{color:var(--color-white);font-weight:600;display:block}.player-badge__meta{color:#e8f5ee8c;font-size:12px}.player-hero{gap:var(--space-5);margin-bottom:var(--space-5);align-items:center;display:flex}.player-hero__avatar{background:var(--color-green-dark);border:3px solid var(--color-primary);border-radius:50%;flex-shrink:0;width:96px;height:96px;overflow:hidden}.player-hero__avatar img{object-fit:cover;width:100%;height:100%}.player-hero__initials{height:100%;font-family:var(--font-display);color:var(--color-accent-light);justify-content:center;align-items:center;font-size:36px;display:flex}.player-hero h1{color:var(--color-white);font-size:36px;line-height:1.1}.player-hero__sub{margin:var(--space-2) 0;color:#e8f5eeb3}.player-hero__rank{padding:var(--space-1) var(--space-3);background:var(--color-accent);color:var(--color-bg);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:12px;font-weight:600;display:inline-block}.stat-pill{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);text-align:center;min-width:100px}.stat-pill__value{font-family:var(--font-display);color:var(--color-white);margin-bottom:var(--space-1);font-size:32px;line-height:1;display:block}.stat-pill__label{text-transform:uppercase;letter-spacing:.06em;color:#e8f5ee8c;font-size:11px}.stat-pill--success .stat-pill__value{color:var(--color-primary)}.stat-pill--accent .stat-pill__value{color:var(--color-accent)}.stat-pill--error .stat-pill__value{color:var(--color-error)}.surface-stat{margin-bottom:var(--space-3)}.surface-stat__header{margin-bottom:var(--space-1);justify-content:space-between;font-size:13px;display:flex}.surface-stat__pct{font-family:var(--font-mono);color:var(--color-primary)}.surface-stat__bar{background:var(--color-border);border-radius:3px;height:6px;overflow:hidden}.surface-stat__fill{background:linear-gradient(90deg, var(--color-green-dark), var(--color-primary));border-radius:3px;height:100%;transition:width .6s ease-out}.match-detail-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;overflow:hidden}.match-detail{width:min(880px,100%);max-height:calc(100dvh - var(--space-6));background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 24px 64px #0000008c}.match-detail__header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-bg);flex-shrink:0;display:flex}.match-detail__scroll{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--color-green-dark) var(--color-surface);flex:1;min-height:0;overflow:hidden auto}.match-detail__scroll::-webkit-scrollbar{width:8px}.match-detail__scroll::-webkit-scrollbar-track{background:var(--color-surface)}.match-detail__scroll::-webkit-scrollbar-thumb{background:var(--color-green-dark);border-radius:4px}.match-detail__scroll::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.match-detail__live{font-family:var(--font-display);color:var(--color-primary);letter-spacing:.1em;margin-bottom:var(--space-1);align-items:center;gap:6px;font-size:14px;display:inline-flex}.match-detail__live-dot{background:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite live-dot}.match-detail__title{font-family:var(--font-display);color:var(--color-white);letter-spacing:.06em;font-size:22px}.match-detail__close{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-green-light);cursor:pointer;flex-shrink:0;width:36px;height:36px;font-size:16px;transition:border-color .2s,color .2s}.match-detail__close:hover{border-color:var(--color-error);color:var(--color-error)}.match-detail__body{padding:var(--space-5)}.match-detail__scoreboard{text-align:center;padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-5)}.match-detail__versus{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.match-detail__name{font-family:var(--font-display);color:var(--color-white);letter-spacing:.04em;font-size:clamp(18px,4vw,24px)}.match-detail__vs{color:#e8f5ee66;text-transform:uppercase;font-size:12px}.match-detail__main-score{font-family:var(--font-mono);color:var(--color-accent);letter-spacing:.08em;font-size:clamp(24px,5vw,32px)}.match-detail__winner{margin-top:var(--space-2);color:#e8f5eeb3;font-size:13px}.match-detail__winner strong{color:var(--color-primary)}.match-detail__section{margin-bottom:var(--space-5)}.match-detail__section:last-child{margin-bottom:0}.match-detail__section h3{font-family:var(--font-display);color:var(--color-primary);letter-spacing:.08em;margin-bottom:var(--space-3);font-size:16px}.match-detail__table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.match-detail__sets-table{border-collapse:collapse;width:100%;font-size:14px}.match-detail__sets-table th,.match-detail__sets-table td{padding:var(--space-2) var(--space-3);text-align:center;border-bottom:1px solid var(--color-border)}.match-detail__sets-table tr:last-child td{border-bottom:none}.match-detail__sets-table th{text-transform:uppercase;color:#e8f5ee73;background:var(--color-surface);font-size:11px;font-weight:500}.match-detail__sets-table td:first-child,.match-detail__sets-table th:first-child{text-align:left;color:var(--color-white);font-weight:500}.match-detail__sets-table .set-won{color:var(--color-primary);font-weight:700;font-family:var(--font-mono)}.match-detail__info-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));margin:0;display:grid}.match-detail__info-grid div{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3);min-width:0}.match-detail__info-grid dt{text-transform:uppercase;letter-spacing:.06em;color:#e8f5ee73;margin-bottom:2px;font-size:10px}.match-detail__info-grid dd{color:var(--color-white);word-break:break-word;margin:0;font-size:13px}.text-live{font-weight:600;color:var(--color-primary)!important}.text-pending{color:var(--color-accent)!important}.match-detail__desc{margin-top:var(--space-3);color:#e8f5ee8c;font-size:12px;line-height:1.6}.match-detail__players-grid{gap:var(--space-4);display:grid}@media (width>=768px){.match-detail__players-grid{grid-template-columns:repeat(2,1fr)}}.match-detail__player{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);min-width:0}.match-detail__player--winner{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}.match-detail__player-stats{gap:var(--space-2);margin:var(--space-4) 0;grid-template-columns:repeat(2,1fr);display:grid}.match-detail__recent h4{text-transform:uppercase;letter-spacing:.06em;color:#e8f5ee73;margin-bottom:var(--space-2);font-size:11px}.match-detail__recent-head{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.match-detail__recent-head h4{margin-bottom:0}.match-detail__history-loading{color:var(--color-primary);letter-spacing:.04em;font-size:10px}.match-detail__profile-link{color:var(--color-primary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.match-detail__profile-link:hover{color:var(--color-green-light)}.match-detail__history li{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);grid-template-columns:64px minmax(0,1fr) minmax(0,.9fr) auto auto auto;align-items:center;font-size:11px;display:grid}.match-detail__tournament-dates{color:var(--color-accent);margin-top:4px;font-size:11px;display:block}.match-detail__history-tournament{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.match-detail__history-opponent{color:#e8f5eea6;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.match-detail__history-score{color:var(--color-primary)}.match-detail__history-sets{color:#e8f5ee8c;font-size:10px}.match-detail__recent ul,.match-detail__history{margin:0;padding:0;list-style:none}.match-detail__recent li{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);grid-template-columns:72px 1fr auto;align-items:center;font-size:12px;display:grid}.match-detail__recent li:last-child{border-bottom:none}.match-detail__no-profile{margin-top:var(--space-3);color:#e8f5ee73;font-size:12px;font-style:italic}.match-detail__scroll .loading,.match-detail__scroll .error-state{padding:var(--space-6)}.match-detail__highlight-btn{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);color:#ff8a8a;background:#ff6b6b1f;border:1px solid #ff6b6b66;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.match-detail__highlight-btn:hover{background:#ff6b6b33}.match-detail__results-list{margin:0;padding:0;list-style:none}.match-detail__results-list li{gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;font-size:13px;display:flex}.tournament-badge{align-items:flex-start;gap:6px;max-width:100%;display:inline-flex}.tournament-badge__text{flex-direction:column;gap:2px;min-width:0;display:flex}.tournament-badge__dates{color:var(--color-accent);letter-spacing:.02em;font-size:10px}.tournament-badge--md .tournament-badge__dates{font-size:12px}.tournament-badge__logo{object-fit:contain;object-position:left center;flex-shrink:0;width:auto;max-width:72px;height:22px}.tournament-badge--md .tournament-badge__logo{max-width:120px;height:52px}.tournament-badge--has-logo.tournament-badge--md{align-items:flex-start;gap:var(--space-3);flex-direction:column}.tournament-badge__icon{flex-shrink:0;line-height:1}.tournament-badge--sm .tournament-badge__icon{font-size:14px}.tournament-badge--md .tournament-badge__icon{font-size:22px}.tournament-badge__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tournament-badge--sm .tournament-badge__name{font-size:inherit}.tournament-badge--md .tournament-badge__name{font-family:var(--font-display);letter-spacing:.04em;color:var(--color-white);font-size:18px}.tournament-badge--grand-slam .tournament-badge__name{color:var(--color-accent)}.duel-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);background:linear-gradient(145deg,#16261cf2 0%,#0f1a13fa 100%);transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.duel-card:before{content:"";pointer-events:none;background:radial-gradient(at 50% 0,#2ea86814 0%,#0000 60%);position:absolute;inset:0}.duel-card--live{border-color:#2ea8688c;animation:2.8s ease-in-out infinite duel-live-glow}.duel-card--live:after{content:"";background:linear-gradient(90deg, transparent, var(--color-primary), transparent);height:2px;animation:2s linear infinite duel-scan;position:absolute;top:0;left:0;right:0}.duel-card--finished{border-color:#d4a01759}.duel-card--upcoming,.duel-card--scheduled{opacity:.92;border-color:#e8f5ee1f}.duel-card--clickable{cursor:pointer}.duel-card--clickable:hover{border-color:var(--color-primary);transform:translateY(-3px);box-shadow:0 12px 32px #00000059}.duel-card__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);z-index:1;flex-wrap:wrap;display:flex;position:relative}.duel-card__live-badge{letter-spacing:.12em;color:var(--color-primary);background:#2ea86833;border:1px solid #2ea86880;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:10px;font-weight:700;display:inline-flex}.duel-card__live-dot{background:var(--color-primary);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite live-dot}.duel-card__badge{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:3px 8px;font-size:10px;font-weight:600}.duel-card__badge--done{color:var(--color-accent);background:#d4a0171f}.duel-card__badge--soon{color:#e8f5eea6;background:#e8f5ee0f}.duel-card__tournament{color:#e8f5eed9;font-size:12px;font-weight:600}.duel-card__round{color:var(--color-primary);font-size:11px;font-weight:600}.duel-card__arena{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);z-index:1;grid-template-columns:1fr auto 1fr;display:grid;position:relative}.duel-side--clickable{cursor:pointer;border-radius:var(--radius-md);transition:background .15s}.duel-side--clickable:hover{background:#4caf7814}.duel-side--clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.duel-side{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;min-width:0;display:flex}.duel-side--winner .duel-side__avatar{border-color:var(--color-accent);box-shadow:0 0 16px #d4a01759}.duel-side__avatar-wrap{margin-bottom:var(--space-1);position:relative}.duel-card--live .duel-side__avatar-wrap:before{content:"";border:2px solid #2ea86859;border-radius:50%;animation:2s ease-in-out infinite duel-ring;position:absolute;inset:-4px}.duel-side__avatar{background:var(--color-green-dark);z-index:1;border:2px solid #e8f5ee26;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;display:flex;position:relative;overflow:hidden}.duel-side__avatar img{object-fit:cover;object-position:top center;width:100%;height:100%}.duel-side__initials{font-family:var(--font-display);color:var(--color-accent-light);letter-spacing:.05em;font-size:22px}.duel-side__name{color:var(--color-white);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:700;overflow:hidden}.duel-side__rank{color:var(--color-accent);font-size:11px;font-weight:600}.duel-side__country{color:#e8f5ee73;text-overflow:ellipsis;white-space:nowrap;max-width:90px;font-size:10px;overflow:hidden}.duel-card__center{flex-direction:column;align-items:center;gap:4px;min-width:88px;display:flex}.duel-card__score{color:var(--color-accent);text-align:center;font-size:20px;font-weight:600;line-height:1.2}.duel-card__sets{color:#e8f5ee8c;text-align:center;font-size:11px}.duel-card__vs{font-family:var(--font-display);color:#e8f5ee59;letter-spacing:.15em;font-size:18px}.duel-card__vs-block,.duel-card__live-score{flex-direction:column;align-items:center;gap:4px;display:flex}.duel-card__time{color:var(--color-accent);font-size:11px}.duel-card__pulse{text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);font-size:10px;font-weight:600;animation:1.5s ease-in-out infinite duel-pulse-text}.duel-card__footer{align-items:center;gap:var(--space-2) var(--space-3);padding-top:var(--space-3);color:#e8f5ee8c;z-index:1;border-top:1px solid #e8f5ee14;flex-wrap:wrap;font-size:11px;display:flex;position:relative}.duel-card__meta-item{align-items:center;gap:4px;display:inline-flex}.duel-card__highlight{color:#ff8a8a;margin-left:auto;font-weight:600;text-decoration:none}.duel-card__highlight:hover{text-decoration:underline}.duel-card__cta{color:var(--color-primary);opacity:.7;margin-left:auto;font-size:11px;font-weight:600}.duel-card--clickable:hover .duel-card__cta{opacity:1}@keyframes duel-live-glow{0%,to{box-shadow:0 0 #2ea86826,inset 0 0 0 1px #2ea86833}50%{box-shadow:0 0 28px #2ea86833,inset 0 0 0 1px #2ea86873}}@keyframes duel-scan{0%{opacity:0;transform:translate(-100%)}50%{opacity:1}to{opacity:0;transform:translate(100%)}}@keyframes duel-ring{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes duel-pulse-text{0%,to{opacity:.55}50%{opacity:1}}@media (width<=480px){.duel-side__avatar{width:56px;height:56px}.duel-card__arena{gap:var(--space-2)}.duel-card__score{font-size:16px}}.schedule-strip{gap:var(--space-2);padding-bottom:var(--space-2);margin-bottom:var(--space-5);scrollbar-width:thin;display:flex;overflow-x:auto}.schedule-strip__day{padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:#e8f5ee99;cursor:pointer;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:52px;transition:all .2s;display:flex}.schedule-strip__day:hover{border-color:var(--color-primary)}.schedule-strip__day--today{border-color:var(--color-accent);color:var(--color-accent)}.schedule-strip__day--active{background:var(--color-green-dark);border-color:var(--color-primary);color:var(--color-white)}.schedule-strip__label{text-transform:uppercase;font-size:11px}.schedule-strip__sub{font-family:var(--font-mono);font-size:14px;font-weight:600}.court-schedule{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.court-schedule__title{font-family:var(--font-display);color:var(--color-primary);margin-bottom:var(--space-3);letter-spacing:.06em;font-size:18px}.court-schedule__list{margin:0;padding:0;list-style:none}.court-schedule__item{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:flex}.court-schedule__item:last-child{border-bottom:none}.court-schedule__item--live{border-left:2px solid var(--color-primary);padding-left:var(--space-2)}.court-schedule__item--finished{opacity:.65}.court-schedule__time{font-family:var(--font-mono);color:var(--color-accent);min-width:44px;font-size:12px}.court-schedule__match{flex-direction:column;flex:1;gap:2px;display:flex}.court-schedule__players{color:var(--color-white);font-size:13px;font-weight:500}.court-schedule__score{font-family:var(--font-mono);color:var(--color-accent);font-size:13px}.court-schedule__label{color:#e8f5ee80;font-size:11px}.court-schedule__item--live .court-schedule__label{color:var(--color-primary)}.court-schedule__item--scheduled .court-schedule__label:before{content:"Programme · "}.live-page__banner{margin-bottom:var(--space-5);border-radius:var(--radius-lg);border:1px solid var(--color-border);min-height:140px;position:relative;overflow:hidden}.live-page__banner-picture{width:100%;display:block}.live-page__banner-img{object-fit:cover;object-position:center 40%;width:100%;height:160px;display:block}.live-page__banner-content{padding:var(--space-4) var(--space-5);pointer-events:none;background:linear-gradient(#0f1a13e0 0%,#0f1a1366 42%,#0f1a130d 100%);flex-direction:column;justify-content:flex-start;align-items:flex-start;display:flex;position:absolute;inset:0}.live-page__banner .live-page__title{margin:0 0 var(--space-1);text-shadow:0 2px 10px #000000bf;font-size:clamp(22px,5vw,32px)}.live-page__banner .page-subtitle{text-shadow:0 1px 6px #000000b3;margin:0;font-size:clamp(12px,3vw,14px)}@media (width<=767px){.live-page__banner{min-height:120px}.live-page__banner-img{object-position:center 55%;height:130px}.live-page__banner-content{padding:var(--space-3) var(--space-4);background:linear-gradient(#0f1a13d1 0%,#0f1a1340 50%,#0000 100%)}}@media (width>=768px) and (width<=1024px){.live-page__banner-img{object-position:center center;height:150px}}.upcoming-matches-grid{margin-bottom:var(--space-6)}.live-page__day-loading{margin-bottom:var(--space-4);font-size:13px}.live-page__hero{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.live-page__title{font-family:var(--font-display);letter-spacing:.08em;color:var(--color-white);margin:0 0 var(--space-1);font-size:32px}.live-page__hero-icon{filter:drop-shadow(0 0 12px #2ea86859);font-size:48px;animation:3s ease-in-out infinite live-icon-bounce}.live-page__grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.live-page__card-wrap{animation:.45s backwards live-card-in}.live-page__loader{align-items:center;gap:var(--space-3);padding:var(--space-8) 0;flex-direction:column;display:flex}.live-page__loader-icon{font-size:40px;animation:1.2s ease-in-out infinite live-icon-bounce}@keyframes live-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes live-icon-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.ranking-list{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;padding:0;list-style:none;overflow:hidden}.ranking-list__row{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;border-bottom:1px solid var(--color-border);color:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:48px 36px 1fr auto auto;transition:background .2s;display:grid}.ranking-list__row:last-child{border-bottom:none}.ranking-list__row:hover{background:#2ea86814}.ranking-list__row--active{box-shadow:inset 3px 0 0 var(--color-primary);background:#2ea86826}.ranking-list__rank{color:var(--color-accent);font-size:14px;font-weight:600}.ranking-list__avatar{background:var(--color-green-dark);width:32px;height:32px;font-family:var(--font-display);color:var(--color-accent-light);border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:flex;overflow:hidden}.ranking-list__avatar img{object-fit:cover;width:100%;height:100%}.ranking-list__name{color:var(--color-white);font-size:14px;font-weight:600}.ranking-list__country{color:#e8f5ee80;font-size:12px}.ranking-list__circuit{font-family:var(--font-mono);color:var(--color-primary);background:#2ea8681f;border-radius:4px;padding:2px 8px;font-size:10px}@media (width<=600px){.ranking-list__row{grid-template-columns:40px 32px 1fr}.ranking-list__country,.ranking-list__circuit{display:none}}.endpoint-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);transition:border-color .2s}.endpoint-card:hover{border-color:var(--color-primary)}.endpoint-card__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.endpoint-card__badge{background:var(--color-green-dark);color:var(--color-primary);font-family:var(--font-mono);letter-spacing:.05em;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}.endpoint-card__category{color:#e8f5ee73;text-transform:uppercase;font-size:10px}.endpoint-card__title{color:var(--color-white);margin-bottom:var(--space-2);font-size:14px;font-weight:600}.endpoint-card__url{color:var(--color-accent);word-break:break-all;margin-bottom:var(--space-3);font-size:11px;line-height:1.6;display:block}.endpoint-card__footer{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.endpoint-card__params{color:#e8f5ee80;font-size:11px}.endpoint-card__limit{color:var(--color-primary);background:#2ea8681f;border-radius:4px;padding:2px 8px;font-size:10px}.offers-page__hero{margin-bottom:var(--space-6)}.offers-page__badge{margin-bottom:var(--space-3);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);background:#d4a0171f;border:1px solid #d4a01759;border-radius:999px;padding:4px 12px;font-size:11px;display:inline-block}.offers-page__intro{margin-top:var(--space-3);color:#e8f5eea6;max-width:640px;font-size:14px;line-height:1.6}.offers-page__discord{margin-bottom:var(--space-7)}.offers-page__discord-card{border-radius:var(--radius-md);padding:var(--space-5);background:linear-gradient(135deg,#5865f22e,#0f1a13a6);border:1px solid #5865f259}.offers-page__discord-label{margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.08em;color:#a5adf6;font-size:11px;display:block}.offers-page__discord-title{font-family:var(--font-display);color:var(--color-white);margin:0 0 var(--space-2);font-size:20px}.offers-page__discord-desc{margin:0 0 var(--space-3);color:#e8f5eea6;max-width:560px;font-size:13px;line-height:1.55}.offers-page__discord-perks{margin:0 0 var(--space-4);padding:0;list-style:none}.offers-page__discord-perks li{margin-bottom:var(--space-2);color:#e8f5eebf;padding-left:18px;font-size:12px;position:relative}.offers-page__discord-perks li:before{content:"✓";color:#5865f2;font-size:11px;position:absolute;left:0}.offers-page__discord-icon{flex-shrink:0;width:20px;height:20px}.offers-page__plans-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.offers-page__plans-title{margin:0}.offers-page__billing{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:3px;display:inline-flex}.offers-page__billing-btn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-family:var(--font-mono);color:#e8f5ee8c;border-radius:calc(var(--radius-sm) - 2px);cursor:pointer;background:0 0;border:none;font-size:12px;transition:color .2s,background .2s;display:inline-flex}.offers-page__billing-btn--active{color:var(--color-white);background:var(--color-green-dark)}.offers-page__billing-save{letter-spacing:.04em;text-transform:uppercase;color:var(--color-green-dark);background:var(--color-accent);border-radius:999px;padding:1px 6px;font-size:9px}.offers-page__billing-btn--active .offers-page__billing-save{color:var(--color-accent);background:#d4a01733}.offers-page__grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:1fr;display:grid}@media (width>=768px){.offers-page__grid{grid-template-columns:repeat(3,1fr);align-items:stretch}}.offers-page__plan{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);flex-direction:column;display:flex;position:relative}.offers-page__plan--featured{border-color:var(--color-accent);box-shadow:0 0 0 1px #d4a01733}.offers-page__plan-badge{top:var(--space-3);right:var(--space-3);text-transform:uppercase;letter-spacing:.06em;color:var(--color-green-dark);background:var(--color-accent);border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600;position:absolute}.offers-page__plan-name{font-family:var(--font-display);color:var(--color-white);margin:0 0 var(--space-1);font-size:22px}.offers-page__plan-tagline{margin:0 0 var(--space-3);color:#e8f5ee80;font-size:12px}.offers-page__plan-price{margin:0 0 var(--space-4)}.offers-page__plan-amount{font-family:var(--font-display);color:var(--color-accent);font-size:32px}.offers-page__plan-period{color:#e8f5ee73;margin-left:4px;font-size:13px}.offers-page__plan-equiv{margin-top:var(--space-1);font-family:var(--font-mono);color:var(--color-primary);font-size:11px;display:block}.offers-page__plan-list{margin:0 0 var(--space-4);flex:1;padding:0;list-style:none}.offers-page__plan-list li{margin-bottom:var(--space-2);padding-left:18px;font-size:12px;line-height:1.45;position:relative}.offers-page__plan-list-item--yes{color:#e8f5eed9}.offers-page__plan-list-item--yes:before{content:"✓";color:var(--color-primary);font-size:11px;font-weight:700;position:absolute;left:0}.offers-page__plan-list-item--no{color:#e8f5ee52}.offers-page__plan-list-item--no:before{content:"✗";color:var(--color-error);font-size:11px;font-weight:700;position:absolute;left:0}.offers-page__cta{width:100%;padding:var(--space-3) var(--space-4);font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--color-green-dark);background:var(--color-primary);border-radius:var(--radius-sm);cursor:not-allowed;opacity:.55;border:none;font-size:13px}.offers-page__cta--ghost{color:#e8f5eeb3;border:1px solid var(--color-border);background:0 0;width:auto}.offers-page__cta--discord{justify-content:center;align-items:center;gap:var(--space-2);color:#fff;cursor:pointer;opacity:1;background:#5865f2;border:none;width:auto;min-width:220px;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.offers-page__cta--discord:hover{background:#4752c4;transform:translateY(-1px)}.offers-page__legal{color:#e8f5ee59;max-width:720px;font-size:11px;line-height:1.5}
