:root{--background: hsl(0, 0%, 100%);--foreground: hsl(0, 0%, 8%);--card: hsl(0, 0%, 100%);--card-foreground: hsl(0, 0%, 8%);--popover: hsl(0, 0%, 100%);--popover-foreground: hsl(0, 0%, 8%);--primary: hsl(350, 63%, 34%);--primary-foreground: hsl(0, 0%, 100%);--secondary: hsl(0, 0%, 96%);--secondary-foreground: hsl(0, 0%, 8%);--muted: hsl(0, 0%, 96%);--muted-foreground: hsl(0, 0%, 45%);--accent: hsl(350, 63%, 34%);--accent-foreground: hsl(0, 0%, 100%);--destructive: hsl(0, 84%, 60%);--destructive-foreground: hsl(0, 0%, 100%);--border: hsl(0, 0%, 90%);--input: hsl(0, 0%, 90%);--ring: hsl(350, 63%, 34%);--radius: 0px;--board-light: hsl(40, 33%, 97%);--board-dark: hsl(350, 30%, 40%);--chess-highlight: hsl(350, 63%, 80%);--tournament-green: hsl(350, 63%, 34%);--wood-accent: hsl(40, 70%, 50%);--sidebar-background: hsl(0, 0%, 98%);--sidebar-foreground: hsl(240, 5%, 26%);--sidebar-primary: hsl(350, 63%, 34%);--sidebar-primary-foreground: hsl(0, 0%, 98%);--sidebar-accent: hsl(240, 5%, 96%);--sidebar-accent-foreground: hsl(240, 6%, 10%);--sidebar-border: hsl(220, 13%, 91%);--sidebar-ring: hsl(217, 91%, 60%);--bg-primary: hsl(0, 0%, 100%);--bg-secondary: hsl(0, 0%, 98%);--bg-tertiary: hsl(0, 0%, 96%);--bg-card: hsl(0, 0%, 100%);--bg-hero: hsl(0, 0%, 8%);--bg-hero-secondary: hsl(0, 0%, 12%);--text-primary: hsl(0, 0%, 8%);--text-secondary: hsl(0, 0%, 45%);--text-tertiary: hsl(0, 0%, 55%);--text-inverse: hsl(0, 0%, 100%);--text-inverse-secondary: hsl(0, 0%, 75%);--border-color: hsl(0, 0%, 90%);--border-color-strong: hsl(0, 0%, 80%);--accent-hover: hsl(350, 63%, 28%);--accent-light: hsl(350, 63%, 95%);--success: hsl(142, 71%, 45%);--danger: hsl(0, 84%, 60%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--shadow-glow: none;--radius-sm: calc(var(--radius) - 2px);--radius-md: var(--radius);--radius-lg: calc(var(--radius) + 4px);--radius-xl: calc(var(--radius) + 8px);--radius-full: 9999px;--gradient-hero: linear-gradient(135deg, hsl(0, 0%, 8%) 0%, hsl(0, 0%, 12%) 100%);--gradient-primary: linear-gradient(135deg, hsl(350, 63%, 34%) 0%, hsl(350, 63%, 45%) 100%);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=dark]{--background: hsl(0, 0%, 5%);--foreground: hsl(0, 0%, 95%);--card: hsl(0, 0%, 8%);--card-foreground: hsl(0, 0%, 95%);--popover: hsl(0, 0%, 8%);--popover-foreground: hsl(0, 0%, 95%);--primary: hsl(350, 63%, 45%);--primary-foreground: hsl(0, 0%, 100%);--secondary: hsl(0, 0%, 15%);--secondary-foreground: hsl(0, 0%, 95%);--muted: hsl(0, 0%, 15%);--muted-foreground: hsl(0, 0%, 65%);--accent: hsl(350, 63%, 45%);--accent-foreground: hsl(0, 0%, 100%);--destructive: hsl(0, 62%, 30%);--destructive-foreground: hsl(0, 0%, 95%);--border: hsl(0, 0%, 20%);--input: hsl(0, 0%, 20%);--ring: hsl(350, 63%, 45%);--board-light: hsl(40, 20%, 70%);--board-dark: hsl(350, 25%, 30%);--chess-highlight: hsl(350, 55%, 60%);--tournament-green: hsl(350, 63%, 45%);--wood-accent: hsl(40, 55%, 48%);--sidebar-background: hsl(240, 6%, 10%);--sidebar-foreground: hsl(240, 5%, 96%);--sidebar-primary: hsl(350, 63%, 45%);--sidebar-primary-foreground: hsl(0, 0%, 100%);--sidebar-accent: hsl(240, 4%, 16%);--sidebar-accent-foreground: hsl(240, 5%, 96%);--sidebar-border: hsl(240, 4%, 16%);--sidebar-ring: hsl(217, 91%, 60%);--bg-primary: hsl(0, 0%, 5%);--bg-secondary: hsl(0, 0%, 10%);--bg-tertiary: hsl(0, 0%, 15%);--bg-hero: hsl(0, 0%, 3%);--bg-card: hsl(0, 0%, 8%);--text-primary: hsl(0, 0%, 95%);--text-secondary: hsl(0, 0%, 70%);--text-tertiary: hsl(0, 0%, 55%);--border-color: hsl(0, 0%, 20%);--border-color-strong: hsl(0, 0%, 30%);--accent-hover: hsl(350, 63%, 55%);--accent-light: hsl(350, 30%, 15%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;animation:pageFadeIn .35s ease-out}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}body.page-exit{opacity:0;transform:translateY(-4px);transition:opacity .2s ease-in,transform .2s ease-in}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}img,svg{display:block;max-width:100%}.card{background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-title{font-size:24px;font-weight:600;line-height:1;letter-spacing:-.02em}.card-description{font-size:14px;color:var(--muted-foreground)}.card-content{padding:0 24px 24px}.input,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],input[type=tel],input[type=url]{display:flex;width:100%;height:40px;padding:8px 12px;font-size:14px;background:var(--background);color:var(--foreground);border:1px solid var(--input);border-radius:var(--radius-md);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::-moz-placeholder,input::-moz-placeholder{color:var(--muted-foreground)}.input::placeholder,input::placeholder{color:var(--muted-foreground)}.input:focus,input:focus{border-color:var(--ring);box-shadow:0 0 0 2px #8d203233}.input:disabled,input:disabled{cursor:not-allowed;opacity:.5}textarea,.textarea{display:flex;width:100%;min-height:80px;padding:8px 12px;font-size:14px;font-family:inherit;background:var(--background);color:var(--foreground);border:1px solid var(--input);border-radius:var(--radius-md);outline:none;resize:vertical;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}textarea:focus,.textarea:focus{border-color:var(--ring);box-shadow:0 0 0 2px #8d203233}label,.label{display:block;font-size:14px;font-weight:500;color:var(--foreground);margin-bottom:6px}select,.select{display:flex;width:100%;height:40px;padding:8px 36px 8px 12px;font-size:14px;background:var(--background);color:var(--foreground);border:1px solid var(--input);border-radius:var(--radius-md);cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}select:focus,.select:focus{border-color:var(--ring);box-shadow:0 0 0 2px #8d203233}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.badge{display:inline-flex;align-items:center;padding:2px 10px;font-size:12px;font-weight:500;border-radius:var(--radius-full);background:var(--secondary);color:var(--secondary-foreground)}.separator{width:100%;height:1px;background:var(--border)}.avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);overflow:hidden;background:var(--muted);color:var(--muted-foreground);font-weight:500}.avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.tabs{display:flex;flex-direction:column}.progress{width:100%;height:8px;background:var(--secondary);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background:var(--accent);border-radius:var(--radius-full);transition:width var(--transition-base)}.alert{position:relative;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--background)}.skeleton{background:linear-gradient(90deg,var(--muted) 25%,hsl(36,20%,88%) 50%,var(--muted) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.hero{position:relative;min-height:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:144px 24px 80px;background:var(--gradient-hero);overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.hero-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(255,255,255,.1),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(0,0,0,.2),transparent)}.hero-content{position:relative;z-index:1;max-width:1400px;text-align:center}.hero-logo{margin-bottom:24px}.logo-container{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;background:linear-gradient(145deg,#2a2a2a,#1a1a1a);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-xl);color:#fafafa;box-shadow:0 0 0 1px #ffffff0d,0 20px 40px -10px #00000080,inset 0 1px #ffffff1a}.logo-container svg{width:60px;height:60px}.logo-text{font-size:10px;font-weight:700;letter-spacing:2px;margin-top:4px;opacity:.7}.hero-title{font-size:clamp(36px,6vw,64px);font-weight:800;line-height:1.1;color:var(--text-inverse);margin-bottom:16px;letter-spacing:-.02em}.hero-subtitle{font-size:18px;color:var(--text-inverse-secondary);max-width:560px;margin:0 auto 32px;line-height:1.7}.search-container{margin-bottom:24px}.search-box{position:relative;max-width:720px;margin:0 auto 16px}.search-icon{position:absolute;right:20px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#6b7280;pointer-events:none;transition:color var(--transition-fast)}.search-input{width:100%;height:56px;padding:0 50px 0 24px;font-size:16px;color:#1f1f1f;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:8px;outline:none;transition:all var(--transition-base)}.search-input::-moz-placeholder{color:#6b7280}.search-input::placeholder{color:#6b7280}.search-input:focus{background:#fff;border-color:var(--accent);box-shadow:0 0 0 4px #10b9811a;color:#1f1f1f}.search-input:focus+.search-icon,.search-box:focus-within .search-icon{color:var(--accent)}[data-theme=light] .search-input:focus{background:#fff;color:#1f1f1f;border-color:var(--accent)}.suggestion-tag{font-size:13px;padding:6px 12px;color:var(--text-inverse-secondary);background:#ffffff14;border-radius:var(--radius-full);transition:all var(--transition-fast)}.suggestion-tag:hover{background:#ffffff26;color:var(--text-inverse)}.hero-actions{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.hero-btn{width:250px!important;height:48px!important;display:inline-flex!important;justify-content:center!important;align-items:center!important;padding:0!important;margin:0!important;text-align:center!important;box-sizing:border-box!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;border-radius:var(--radius-md);transition:all var(--transition-fast);white-space:nowrap;cursor:pointer;outline:none;border:none;box-shadow:none!important;text-decoration:none!important}.btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.btn:disabled{pointer-events:none;opacity:.5}.btn svg{width:16px;height:16px;flex-shrink:0}.btn-primary{background:var(--primary);color:var(--primary-foreground);box-shadow:none!important}.btn-primary:hover{background:#dc2828;color:#fff}[data-theme=dark] .btn-primary{background:var(--accent);color:var(--accent-foreground)}[data-theme=dark] .btn-primary:hover{background:var(--accent-hover);color:var(--accent-foreground)}.btn-secondary{background:var(--secondary);color:var(--secondary-foreground)}.btn-secondary:hover{background:#dc2828;color:#fff}[data-theme=dark] .btn-secondary{background:var(--secondary);color:var(--secondary-foreground)}.btn-outline{background:var(--background);color:var(--foreground);border:1px solid var(--input)}.btn-outline:hover{background:#dc2828;color:#fff;border-color:#dc2828}.btn-outline:active,.btn-outline:focus{transform:none!important;box-shadow:none!important}.btn-outline-danger{background:transparent;color:var(--destructive);border:1px solid var(--destructive)}.btn-outline-danger:hover{background:var(--destructive);color:#fff;border-color:var(--destructive)}.btn-sm{height:36px;padding:6px 12px;font-size:13px;border-radius:var(--radius-md)}.btn-lg{height:44px;padding:12px 32px;font-size:16px;border-radius:var(--radius-md)}.btn-icon{width:40px;height:40px;padding:0}button:active,button:focus,[type=button]:active,[type=button]:focus,[type=submit]:active,[type=submit]:focus,[class*=btn]:active,[class*=btn]:focus{transform:none!important;outline:none}button:active:before,button:focus:before,button:active:after,button:focus:after,[type=button]:active:before,[type=button]:focus:before,[type=button]:active:after,[type=button]:focus:after,[type=submit]:active:before,[type=submit]:focus:before,[type=submit]:active:after,[type=submit]:focus:after{opacity:0!important;display:none!important}.stats-section{padding:80px 24px;background:var(--bg-hero);border-top:1px solid rgba(255,255,255,.1)}.stats-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:40px}.stat-item{text-align:center}.stat-number{display:block;font-size:40px;font-weight:800;color:var(--text-inverse);margin-bottom:8px;line-height:1}.stat-label{font-size:14px;color:var(--text-inverse-secondary);font-weight:500}.stat-divider{width:1px;height:48px;background:#ffffff1a}@media(max-width:768px){.stats-container{flex-direction:column;gap:24px}.stat-divider{width:48px;height:1px}}.featured-section{padding:60px 24px;background:var(--bg-primary)}.section-container{max-width:1200px;margin:0 auto}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.section-header.centered{flex-direction:column;text-align:center;gap:12px}.section-title{font-size:28px;font-weight:700;color:var(--text-primary)}.section-subtitle{font-size:16px;color:var(--text-secondary);max-width:500px}.view-all{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--text-secondary);transition:color var(--transition-fast)}.view-all svg{width:16px;height:16px;transition:transform var(--transition-fast)}.view-all:hover{color:var(--text-primary)}.view-all:hover svg{transform:translate(4px)}.tournaments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.tournament-card{background:var(--card);color:var(--card-foreground);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.card-image{position:relative;height:160px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.card-placeholder{color:var(--text-tertiary)}.card-placeholder svg{width:48px;height:48px}.card-badge{position:absolute;top:12px;right:12px;padding:4px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#8d2032;color:#fff;border-radius:var(--radius-full)}.card-badge.featured{background:var(--accent);color:var(--bg-secondary)}.card-meta{display:flex;align-items:center;gap:16px;margin-bottom:12px}.card-date{font-size:13px;color:var(--text-tertiary)}.card-location{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-tertiary)}.card-location svg{width:14px;height:14px}.card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:8px;line-height:1.4}.card-description{font-size:14px;color:var(--text-secondary);margin-bottom:16px;line-height:1.5}.card-stats{display:flex;gap:20px;font-size:13px;color:var(--text-tertiary)}.card-stats strong{color:var(--text-primary)}.features-section{padding:100px 24px;background:var(--bg-tertiary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:60px}.feature-card{padding:32px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-base)}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-light);border-radius:var(--radius-md);margin-bottom:20px}.feature-icon svg{width:24px;height:24px;color:var(--accent)}.feature-title{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.feature-description{font-size:14px;color:var(--text-secondary);line-height:1.6}.cta-section{padding:100px 24px;background:var(--bg-hero)}.cta-container{max-width:800px;margin:0 auto;text-align:center}.cta-title{font-size:clamp(28px,4vw,40px);font-weight:700;color:var(--text-inverse);margin-bottom:16px}.cta-subtitle{font-size:18px;color:var(--text-inverse-secondary);margin-bottom:32px}.cta-actions{display:flex;justify-content:center}.footer{padding:80px 24px 40px;background:var(--bg-secondary);border-top:1px solid var(--border-color)}.footer-container{max-width:1200px;margin:0 auto}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:24px}.footer-brand{display:flex;flex-direction:column;gap:24px;max-width:320px}.footer-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:20px;color:var(--text-primary)}.footer-logo svg{width:28px;height:28px}.footer-description{font-size:15px;line-height:1.6;color:var(--text-secondary)}.footer-social{display:flex;gap:16px;margin-top:8px}.footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--text-secondary);border-radius:var(--radius-md);background:var(--bg-tertiary);transition:all var(--transition-fast)}.footer-social a:hover{background:var(--text-primary);color:var(--bg-secondary);transform:translateY(-2px)}.footer-social svg{width:18px;height:18px}.footer-links{display:contents}.footer-column{display:flex;flex-direction:column;gap:16px}.footer-column h4{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.footer-column a{font-size:14px;color:var(--text-secondary);transition:color var(--transition-fast);width:-moz-fit-content;width:fit-content}.footer-column a:hover{color:var(--text-primary)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:32px;border-top:1px solid var(--border-color)}.footer-bottom p{font-size:14px;color:var(--text-tertiary)}.footer-legal{display:flex;gap:24px}.footer-legal a{font-size:14px;color:var(--text-tertiary);text-decoration:underline;text-decoration-color:transparent;text-underline-offset:4px;transition:all var(--transition-fast)}.footer-legal a:hover{color:var(--text-secondary);text-decoration-color:var(--text-secondary)}@media(max-width:1024px){.nav-links{position:fixed;top:64px;left:0;right:0;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:16px 24px;flex-direction:column;align-items:stretch;gap:8px;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all var(--transition-base);z-index:999;box-shadow:var(--shadow-md)}.nav-links.active{transform:translateY(0);opacity:1;visibility:visible}.nav-links .nav-link{justify-content:flex-start;width:100%}.mobile-menu-btn{display:flex;margin-right:auto;margin-left:12px}.nav-links:not(.active){pointer-events:none}}@media(max-width:768px){.nav-container{padding:0 16px}.hero{padding:120px 16px 60px}.hero-title{font-size:32px}.hero-subtitle{font-size:16px}.hero-actions{flex-direction:column;width:100%;gap:12px}.hero-btn{width:100%!important}.stats-container{flex-direction:column;gap:32px}.stat-divider{width:48px;height:1px}.stat-number{font-size:32px}.tournaments-grid,.features-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:16px}.footer-main{grid-template-columns:1fr;gap:40px}.footer-links{display:flex;flex-direction:column;gap:32px}.footer-bottom{flex-direction:column;gap:24px;text-align:center}.footer-legal{flex-direction:column;gap:12px;align-items:center}}@media(max-width:480px){.logo-container{width:80px;height:80px}.logo-container svg{width:40px;height:40px}.nav-brand span{display:none}.nav-brand span{display:block}}.hero-content>*{animation:fadeInUp .6s ease-out backwards}.hero-logo{animation-delay:.1s}.hero-title{animation-delay:.2s}.hero-subtitle{animation-delay:.3s}.search-container{animation-delay:.4s}.hero-actions{animation-delay:.5s}.hero-stats{animation:fadeInUp .6s ease-out .6s backwards}.hidden{display:none!important}.toast-container{position:fixed;top:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:10px}.toast{min-width:300px;max-width:400px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;align-items:flex-start;gap:12px;position:relative;overflow:hidden}.toast:before{display:none}.toast.toast-success{border:1px solid #10b981;border-left:5px solid #10b981}.toast.toast-error{border:1px solid #8d2032;border-left:5px solid #8d2032}.toast.toast-warning{border:1px solid #f59e0b;border-left:5px solid #f59e0b}.toast.toast-info{border:1px solid var(--accent);border-left:5px solid var(--accent)}.toast-icon{flex-shrink:0;width:20px;height:20px}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#8d2032}.toast-warning .toast-icon{color:#f59e0b}.toast-info .toast-icon{color:var(--accent)}.toast-content{flex-grow:1}.toast-message{font-size:14px;color:var(--text-primary);line-height:1.4;word-break:break-word}.toast-close{flex-shrink:0;width:16px;height:16px;cursor:pointer;color:var(--text-tertiary);transition:color .2s}.toast-close:hover{color:var(--text-primary)}@keyframes fadeOut{to{transform:translate(100%);opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.btn{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:2px;background:linear-gradient(45deg,var(--accent),transparent,var(--accent));background-size:200% 200%;animation:gradientShift 3s ease infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease;z-index:2;pointer-events:none}span.ripple{position:absolute;border-radius:50%;transform:scale(0);animation:ripple .6s linear;background-color:#0000001a;pointer-events:none}.btn:hover:before{opacity:1}.btn:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.2) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .5s,opacity 1s;z-index:-2}.btn:active,.btn:focus{transform:none!important;outline:none}.btn:active:before,.btn:focus:before,.btn:active:after,.btn:focus:after{display:none!important}.btn-primary{box-shadow:0 4px 15px #2f8f6a4d;border:1px solid transparent}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #2f8f6a66;background:var(--accent-hover)}.btn-primary:active,.btn-primary:focus{transform:none!important;box-shadow:0 4px 15px #2f8f6a4d!important}.btn-secondary{position:relative}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026;border-color:transparent}.btn-secondary:active,.btn-secondary:focus{transform:none!important;box-shadow:none!important}.card,[class*=card]{transition:all .3s cubic-bezier(.4,0,.2,1)}.card:hover,[class*=card]:hover{transform:translateY(-4px)}.nav-link{position:relative}.hero{animation:fadeIn .8s ease-out}.hero-content{animation:fadeInUp .8s ease-out .2s backwards}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2f8f6a26;transition:all .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--border-color-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}main,.main-content,.page-content{animation:fadeIn .4s ease-out}section{animation:fadeInUp .6s ease-out backwards}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(1.5);opacity:0}}.skeleton,.loading-placeholder{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--text-tertiary);transition:all .2s ease;cursor:pointer;background:transparent;border:none}.modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-close svg{width:20px;height:20px}.modal-container{background:var(--bg-card);width:100%;max-width:500px;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border-color)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-header h3{font-size:18px;font-weight:700;color:var(--text-primary);margin:0}.modal-body{padding:24px}.modal{animation:fadeIn .2s ease-out}.modal-content{animation:scaleIn .3s ease-out}[data-tooltip]:after{transition:opacity .2s ease,transform .2s ease}[data-tooltip]:hover:after{transform:translateY(-2px)}input[type=checkbox]:checked,input[type=radio]:checked{animation:checkPop .3s ease}@keyframes checkPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.footer a{transition:color .2s ease,transform .2s ease}.footer a:hover{color:var(--accent);transform:translate(4px)}table tbody tr{transition:background-color .2s ease}table tbody tr:hover{background-color:var(--bg-tertiary)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.usage-warning{color:#f59e0b!important;font-weight:600;animation:pulse-warning 2s ease-in-out infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}#ocrUsageDisplay,#gameUsageDisplay{font-size:13px;font-weight:500;padding:4px 10px;border-radius:var(--radius-sm);background:var(--bg-tertiary);transition:all var(--transition-fast)}#ocrUsageDisplay.usage-warning,#gameUsageDisplay.usage-warning{background:#f59e0b26;border:1px solid rgba(245,158,11,.3)}.page-header{padding:120px 24px 60px;background:var(--gradient-hero, linear-gradient(135deg, hsl(30, 8%, 12%) 0%, hsl(30, 8%, 15%) 100%));text-align:center}.page-header.page-header-compact{padding:100px 24px 40px}.page-header-content{max-width:600px;margin:0 auto}.page-header-content.page-header-row{max-width:1400px;display:flex;align-items:center;justify-content:space-between;text-align:left}.page-title{font-size:40px;font-weight:800;color:var(--text-inverse, #ffffff);margin-bottom:12px;letter-spacing:-.02em}.page-title.page-title-large{font-size:48px;margin-bottom:0}.btn-create-tournament{padding:14px 28px;font-size:16px;font-weight:600;display:inline-flex;align-items:center;gap:10px}.btn-create-tournament svg{width:20px;height:20px}.page-subtitle{font-size:16px;color:var(--text-inverse-secondary);line-height:1.6}.main-content{padding:40px 24px 80px;background:var(--bg-primary);min-height:calc(100vh - 300px)}.content-container{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:280px 1fr;gap:40px}.filters-sidebar{position:sticky;top:104px;height:-moz-fit-content;height:fit-content;padding:24px;background:var(--bg-card)!important;border:1px solid var(--border-color);border-radius:var(--radius-lg)}.filter-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid var(--border-color)}.filter-section:last-of-type{margin-bottom:20px;padding-bottom:0;border-bottom:none}.filter-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary);margin-bottom:16px}.filter-options{display:flex;flex-direction:column;gap:12px}.filter-option{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast)}.filter-option:hover{color:var(--text-primary)}.filter-option input[type=checkbox],.filter-option input[type=radio]{display:none}.filter-text{flex:1;font-weight:500}.checkmark{width:18px;height:18px;border:2px solid var(--border-color-strong);border-radius:4px;position:relative;transition:all var(--transition-fast);flex-shrink:0}.filter-option:hover .checkmark{border-color:var(--accent)}.filter-option input:checked+.checkmark{background:var(--accent);border-color:var(--accent)}.filter-option input:checked+.checkmark:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--bg-secondary);border-width:0 2px 2px 0;transform:rotate(45deg)}.radio-mark{width:18px;height:18px;border:2px solid var(--border-color-strong);border-radius:50%;position:relative;transition:all var(--transition-fast);flex-shrink:0}.filter-option:hover .radio-mark{border-color:var(--accent)}.filter-option input:checked+.radio-mark{border-color:var(--accent)}.filter-option input:checked+.radio-mark:after{content:"";position:absolute;left:3px;top:3px;width:8px;height:8px;background:var(--accent);border-radius:50%}.filter-badge{margin-left:auto;padding:3px 10px;font-size:11px;font-weight:700;background:var(--accent-light);color:var(--text-secondary);border-radius:var(--radius-full)}.filter-badge.live{background:#fecaca;color:#dc2626}[data-theme=dark] .filter-badge.live{background:#ef444433;color:#f87171}.filter-select{width:100%;padding:12px 14px;font-size:14px;font-weight:500;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;outline:none;transition:border-color var(--transition-fast)}.filter-select:focus{border-color:var(--accent)}.btn-clear-filters{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.btn-clear-filters svg{width:16px;height:16px}.btn-clear-filters:hover{color:var(--text-primary);border-color:var(--border-color-strong);background:var(--bg-tertiary)}.tournaments-content{min-width:0}.breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:24px;font-size:14px}.breadcrumb-item{color:var(--text-tertiary);font-weight:500;transition:color var(--transition-fast)}.breadcrumb-item:hover{color:var(--text-primary)}.breadcrumb-item.active{color:var(--text-primary);font-weight:600}.breadcrumb-separator{color:var(--text-tertiary)}.tournament-name-header{display:flex;align-items:center;gap:16px;margin-bottom:24px;padding:16px 20px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px}.btn-back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;flex-shrink:0}.btn-back:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.btn-back svg{width:20px;height:20px}.tournament-header-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-navigation{display:flex;gap:12px;margin-bottom:24px;align-items:flex-start}.tab-btn{flex:1 0 auto;display:inline-flex;align-items:center;align-self:flex-start;justify-content:center;gap:10px;padding:14px 24px;font-size:14px;font-weight:500;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}@keyframes ripple{to{transform:scale(4);opacity:0}}.tab-btn svg{width:18px;height:18px;opacity:.7}.tab-btn:hover{border-color:var(--border-color-strong)}.tab-btn.active{color:var(--text-primary);border-color:var(--accent);background:var(--accent-light)}.tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:600;background:var(--accent);color:#fff;border-radius:12px}.content-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.search-inline{position:relative;flex:1;max-width:400px}.search-inline.search-full-width{max-width:none}.search-inline svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--text-tertiary);pointer-events:none}.search-inline input{width:100%;padding:12px 16px 12px 48px;font-size:14px;font-weight:500;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);outline:none;transition:all var(--transition-fast)}.search-inline input::-moz-placeholder{color:var(--text-tertiary)}.search-inline input::placeholder{color:var(--text-tertiary)}.search-inline input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0000000d}[data-theme=dark] .search-inline input:focus{box-shadow:0 0 0 3px #ffffff0d}.toolbar-actions{display:flex;align-items:center;gap:12px}.sort-select{padding:12px 40px 12px 16px;font-size:14px;font-weight:500;color:var(--text-primary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23737373' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.sort-select:focus{border-color:var(--accent)}.view-toggle{display:flex;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.view-btn{display:flex;align-items:center;justify-content:center;width:44px;height:42px;color:var(--text-tertiary);background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast)}.view-btn:first-child{border-right:1px solid var(--border-color)}.view-btn svg{width:18px;height:18px}.view-btn:hover,.view-btn.active{color:var(--text-primary);background:var(--bg-tertiary)}.results-info{font-size:14px;color:var(--text-secondary);margin-bottom:24px;font-weight:500}.results-info strong{color:var(--text-primary);font-weight:700}.view-container{display:none}.view-container.active{display:block}.tournaments-grid{display:flex;flex-direction:column;gap:12px}.tournament-row{display:flex;align-items:flex-start;gap:20px;padding:24px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;transition:background-color .15s ease}.tournament-row:hover{background:var(--bg-tertiary)}.tournament-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-light);border-radius:10px;color:var(--accent)}.tournament-icon svg{width:24px;height:24px}.tournament-info{flex:1;min-width:0}.tournament-name{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px;line-height:1.3}.tournament-location{font-size:14px;color:var(--text-tertiary);margin:0 0 10px}.tournament-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-item{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--text-secondary)}.meta-item svg{width:14px;height:14px;color:var(--text-tertiary)}.meta-separator{color:var(--text-tertiary);font-size:13px}.tournament-status{flex-shrink:0;font-size:13px;font-weight:500;padding:4px 0}.status-completed{color:#958c83}.status-live{color:var(--accent)}.status-upcoming{color:#ec6d13}@media(max-width:640px){.tournament-row{flex-wrap:wrap;gap:12px}.tournament-info{flex:1 1 calc(100% - 68px)}.tournament-status{width:100%;text-align:left;padding-left:68px}}.tournaments-grid.list-view{grid-template-columns:1fr;gap:12px}.tournaments-grid.list-view .tournament-card{display:flex;flex-direction:row;align-items:center;padding:16px 20px;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-color)}.tournaments-grid.list-view .card-image{display:none}.tournaments-grid.list-view .card-content{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px;padding:0}.tournaments-grid.list-view .card-meta{display:flex;align-items:center;gap:16px;margin-bottom:0;flex-shrink:0}.tournaments-grid.list-view .card-title{flex:1;margin-bottom:0;font-size:16px;font-weight:600}.tournaments-grid.list-view .card-description{display:none}.tournaments-grid.list-view .card-stats{display:flex;gap:20px;font-size:13px;flex-shrink:0}.tournaments-grid.list-view .card-badge{position:static;flex-shrink:0;margin-left:12px}@media(max-width:768px){.tournaments-grid.list-view .tournament-card{flex-direction:column;align-items:flex-start;padding:16px}.tournaments-grid.list-view .card-content{flex-direction:column;align-items:flex-start;gap:12px;width:100%}.tournaments-grid.list-view .card-stats{width:100%;justify-content:flex-start}}.tournament-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;overflow:hidden;cursor:pointer;transition:border-color .2s ease}.tournament-card:hover{border-color:var(--border-color-strong)}.card-image{position:relative;height:140px;background:linear-gradient(135deg,#f3f0ed,#ebe9e5);display:flex;align-items:center;justify-content:center}.card-placeholder{color:#b9b3ac;opacity:.6}.card-placeholder svg{width:44px;height:44px;stroke-width:1.5}.card-badge{position:absolute;top:12px;right:12px;padding:6px 14px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#df3a3a;color:#fff;border-radius:20px}.card-badge.featured{background:var(--accent);color:#fff}.card-badge.admin{background:#3c83f6;color:#fff}.card-content{padding:20px}.card-meta{display:flex;align-items:center;gap:12px;margin-bottom:10px;font-size:13px}.card-date{font-weight:500;color:var(--text-secondary)}.card-location{display:flex;align-items:center;gap:4px;font-weight:400;color:var(--text-tertiary)}.card-location svg{width:13px;height:13px;opacity:.7}.card-title{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:6px;line-height:1.4}.card-description{font-size:13px;color:var(--text-secondary);margin-bottom:14px;line-height:1.5}.card-stats{display:flex;gap:20px;font-size:13px;color:var(--text-tertiary);font-weight:400}.card-stats strong{color:var(--accent);font-weight:600}.tournament-detail-header{padding:32px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:32px}.tournament-detail-top{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:16px;flex-wrap:wrap}.tournament-detail-title{font-size:28px;font-weight:800;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.02em;flex:1;min-width:200px}.tournament-detail-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.tournament-detail-actions .btn{white-space:nowrap}.tournament-detail-meta{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:20px}.detail-meta-item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);font-weight:500}.detail-meta-item svg{width:18px;height:18px;color:var(--text-tertiary)}.tournament-detail-stats{display:flex;gap:32px;padding-top:20px;border-top:1px solid var(--border-color)}.detail-stat{text-align:left}.detail-stat-value{font-size:24px;font-weight:800;color:var(--text-primary)}.detail-stat-label{font-size:13px;color:var(--text-tertiary);font-weight:500}.tournament-progress-container{margin:20px 0;padding:16px 20px;background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.progress-status{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.progress-status svg{flex-shrink:0}.progress-percentage{font-size:13px;font-weight:700;color:var(--text-tertiary)}.progress-track{position:relative;height:10px;background:var(--bg-secondary);border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.progress-fill{position:relative;height:100%;border-radius:10px;transition:width .6s cubic-bezier(.4,0,.2,1);overflow:hidden}.progress-glow{position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.4),transparent);border-radius:10px 10px 0 0}.progress-pending .progress-fill{background:linear-gradient(90deg,#6b7280,#9ca3af)}.progress-pending .progress-status svg{color:#6b7280}.progress-active .progress-fill{background:linear-gradient(90deg,var(--accent),#3ca37a,#5dc09a);background-size:200% 100%;animation:progressShimmer 2s ease-in-out infinite}.progress-active .progress-status svg{color:var(--accent)}.progress-active .progress-percentage{color:var(--accent)}@keyframes progressShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.progress-pulse{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--accent);border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #2f8f6ab3}50%{opacity:.8;box-shadow:0 0 0 8px #2f8f6a00}}.progress-complete .progress-fill{background:linear-gradient(90deg,#10b981,#34d399,#6ee7b7)}.progress-complete .progress-status svg{color:#10b981}.progress-complete .progress-percentage{color:#10b981}.progress-complete .tournament-progress-container{border-color:#10b9814d}[data-theme=dark] .progress-track{background:#ffffff14;box-shadow:inset 0 1px 3px #0000004d}[data-theme=dark] .tournament-progress-container{background:#ffffff08}.rounds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.round-card{padding:28px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-align:center}.round-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--border-color-strong)}.round-number{font-size:14px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.round-title{font-size:24px;font-weight:800;color:var(--text-primary);margin-bottom:16px}.round-date{font-size:14px;color:var(--text-secondary);margin-bottom:20px;font-weight:500}.round-stats{display:flex;justify-content:center;gap:24px;padding-top:16px;border-top:1px solid var(--border-color)}.round-stat{text-align:center}.round-stat-value{font-size:20px;font-weight:800;color:var(--text-primary)}.round-stat-label{font-size:12px;color:var(--text-tertiary);font-weight:500}.round-progress{display:flex;flex-direction:column;gap:6px;margin-top:16px;padding:0 12px}.round-progress-bar{width:100%;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px #0000001f}.round-progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:6px;transition:width .5s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 2px 8px #8b5cf64d}.round-progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.3),transparent);border-radius:6px 6px 0 0}.round-progress-text{font-size:11px;font-weight:600;color:var(--text-tertiary);text-align:center;letter-spacing:.5px}[data-theme=dark] .round-progress-bar{background:#ffffff14;box-shadow:inset 0 1px 3px #0000004d}[data-theme=dark] .round-progress-fill{box-shadow:0 2px 12px #8b5cf680}.round-status{display:inline-block;align-items:center;gap:6px;padding:6px 12px;margin-top:16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:8px}.round-card-actions{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;margin-top:20px;flex-wrap:nowrap}.round-card-actions .round-standings-btn,.round-card-actions .round-reset-btn{margin-top:0;width:auto}.round-reset-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#ef44441a;color:var(--danger);border:1px solid rgba(239,68,68,.2);border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.round-reset-btn:hover{background:#ef444426;border-color:#ef444466;transform:translateY(-1px)}.round-reset-btn svg{width:14px;height:14px}.round-status.completed{background:#dcfce7;color:#16a34a}.round-status.in-progress{background:#fef3c7;color:#d97706}.round-status.upcoming{background:var(--accent-light);color:var(--text-secondary)}[data-theme=dark] .round-status.completed{background:#16a34a33}[data-theme=dark] .round-status.in-progress{background:#d9770633}.round-standings-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;margin-top:12px;font-size:13px;font-weight:600;color:var(--accent);background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.round-standings-btn:hover{background:#8b5cf633;border-color:var(--accent);transform:translateY(-1px)}.round-standings-btn svg{width:18px;height:18px}[data-theme=dark] .round-standings-btn{background:#8b5cf626;border-color:#8b5cf666}[data-theme=dark] .round-standings-btn:hover{background:#8b5cf640}.round-reset-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;margin-top:12px;font-size:13px;font-weight:600;color:#dc2626;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.round-reset-btn:hover{background:#dc262633;border-color:#dc2626;transform:translateY(-1px)}.round-reset-btn svg{width:18px;height:18px}[data-theme=dark] .round-reset-btn{background:#dc262626;border-color:#dc262666}[data-theme=dark] .round-reset-btn:hover{background:#dc262640}.round-detail-header{padding:28px 32px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:24px;display:flex;align-items:center;justify-content:space-between}.round-detail-info h2{font-size:24px;font-weight:800;color:var(--text-primary);margin-bottom:4px}.round-detail-info p{font-size:14px;color:var(--text-secondary);font-weight:500}.games-table-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.games-table{width:100%;border-collapse:collapse;table-layout:auto}.games-table th{padding:12px 10px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);background:var(--bg-tertiary);text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.games-table th.th-board{width:50px;text-align:center}.games-table th.th-result{width:70px;text-align:center}.games-table th.th-rating{width:55px;text-align:center}.games-table th.th-moves{width:50px;text-align:center}.games-table th.th-status{width:90px;text-align:center}.games-table th.th-action{width:80px;text-align:center}.games-table td{padding:10px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color);vertical-align:middle}.games-table tbody tr{transition:background var(--transition-fast)}.games-table tbody tr:hover{background:var(--bg-tertiary)}.games-table tbody tr:last-child td{border-bottom:none}.td-board{font-size:14px;font-weight:700;color:var(--text-primary);text-align:center}.td-player{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap}.title-badge{display:inline-block;padding:2px 5px;font-size:9px;font-weight:700;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-radius:3px;text-transform:uppercase;letter-spacing:.3px;margin-right:6px;vertical-align:middle}.td-rating{font-size:13px;font-weight:600;color:var(--text-secondary);text-align:center}.td-result{text-align:center}.result-badge{display:inline-flex;align-items:center;justify-content:center;min-width:45px;padding:4px 8px;font-size:12px;font-weight:700;background:var(--bg-tertiary);color:var(--text-primary);border-radius:var(--radius-sm)}.result-badge.white-win,.result-badge.black-win{background:#171717;color:#fff}.result-badge.draw{background:var(--bg-tertiary);color:var(--text-secondary)}.result-badge.pending{background:var(--accent-light);color:var(--text-tertiary)}.td-moves{font-size:14px;font-weight:600;color:var(--text-secondary);text-align:center}.td-status{text-align:center}.game-status{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-full)}.game-status.completed{background:#dcfce7;color:#16a34a}.game-status.in-progress{background:#fef3c7;color:#d97706}.game-status.pending{background:var(--accent-light);color:var(--text-tertiary)}.game-status.needs-upload{background:#fee2e2;color:#dc2626}[data-theme=dark] .game-status.completed{background:#16a34a33}[data-theme=dark] .game-status.in-progress{background:#d9770633}[data-theme=dark] .game-status.needs-upload{background:#dc262633}.td-action{text-align:center}.btn-upload{display:inline-block;padding:6px 12px;font-size:11px;font-weight:700;color:#fff;background:var(--accent);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.btn-upload:hover{opacity:.9}.btn-upload.uploaded{background:#22c55e;color:#fff}.btn-view,.btn-view-moves{display:inline-block;padding:6px 14px;font-size:12px;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all var(--transition-fast)}[data-theme=dark] .btn-view,[data-theme=dark] .btn-view-moves{color:#fff;background:#374151;border-color:#4b5563}.btn-view:hover,.btn-view-moves:hover{background:var(--accent-light);transform:translateY(-1px)}[data-theme=dark] .btn-view:hover,[data-theme=dark] .btn-view-moves:hover{background:#4b5563}.pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:40px}.page-numbers{display:flex;align-items:center;gap:4px}.page-btn{min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.page-btn svg{width:18px;height:18px}.page-btn:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-color-strong);background:var(--bg-tertiary)}.page-btn.active{color:var(--bg-secondary);background:var(--accent);border-color:var(--accent)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-dots{padding:0 8px;color:var(--text-tertiary);font-weight:500}@media(max-width:1200px){.content-container{grid-template-columns:260px 1fr}.tournaments-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:1024px){.content-container{grid-template-columns:1fr}.filters-sidebar{position:static;display:none}.games-table-container{overflow-x:auto}.games-table{min-width:900px}}@media(max-width:768px){.page-header{padding:100px 16px 40px}.page-title{font-size:32px}.page-header-content.page-header-row{flex-direction:column;gap:16px;align-items:stretch;text-align:center}.btn-create-tournament{width:100%;justify-content:center}.tab-navigation{flex-direction:row;gap:8px}.tab-btn{flex:1 1 0px;width:50%;padding:10px 4px;font-size:13px;white-space:nowrap}.content-toolbar{flex-direction:column;align-items:stretch}.search-inline{max-width:none}.toolbar-actions{justify-content:space-between}.tournaments-grid{grid-template-columns:1fr}.rounds-grid{grid-template-columns:1fr 1fr}.tournament-detail-header{padding:24px}.tournament-detail-title{font-size:22px}.round-detail-header{flex-direction:column;gap:16px;text-align:center;align-items:center}.round-detail-actions{justify-content:center}}@media(max-width:480px){.rounds-grid{grid-template-columns:1fr}.pagination{gap:4px}.page-btn{min-width:40px;height:40px}.tab-navigation{flex-direction:column}.tab-btn{width:100%;flex:none;height:44px;padding:0 16px;display:flex;align-items:center;justify-content:center}}.round-detail-info h2{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.round-detail-info p{font-size:14px;color:var(--text-secondary);margin:0}.round-detail-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.tournament-detail-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.tournament-detail-actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-danger{background:#8d2032;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.action-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.btn-result{background:var(--accent);color:#fff;border:none;padding:6px 14px;border-radius:8px;font-weight:600;cursor:pointer;font-size:.875rem;transition:all .2s;white-space:nowrap}[data-theme=dark] .btn-result{color:var(--bg-hero);background:var(--text-inverse)}.btn-result:hover{background:var(--accent-hover);transform:translateY(-1px)}[data-theme=dark] .btn-result:hover{background:var(--text-inverse-secondary)}.btn-upload{background:transparent;color:var(--text-primary);border:1px solid var(--border-color);padding:6px 14px;border-radius:8px;font-weight:600;cursor:pointer;font-size:.875rem;transition:all .2s;white-space:nowrap;margin-left:0}.action-buttons .btn-upload{margin-left:0}.btn-upload:hover{background:var(--bg-tertiary);border-color:var(--text-secondary);transform:translateY(-1px)}[data-theme=dark] .btn-upload{color:var(--text-inverse);border-color:#fff3}[data-theme=dark] .btn-upload:hover{background:#ffffff1a}.btn-edit{background:var(--surface-bg);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;font-size:.875rem;transition:all .2s}.btn-edit:hover{border-color:var(--accent);color:var(--accent)}.status-badge.active{background:#10b981;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.status-badge.inactive,.status-badge.draft,.status-badge.upcoming{background:#6b7280;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600}.status-badge.in_progress,.status-badge.live{background:#3b82f6;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.standings-header{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid var(--border-color);margin-bottom:24px}.standings-header-info h2{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 4px}.standings-header-info p{font-size:14px;color:var(--text-secondary);margin:0}.standings-header-actions{display:flex;gap:12px}.standings-table-container{overflow-x:auto;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.standings-table{width:100%;border-collapse:collapse;font-size:14px}.standings-table th{background:var(--bg-primary);padding:16px 12px;text-align:left;font-weight:600;color:var(--text-secondary);text-transform:uppercase;font-size:12px;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.standings-table th.th-rank{width:60px;text-align:center}.standings-table th.th-player{min-width:200px}.standings-table th.th-title{width:60px;text-align:center}.standings-table th.th-rating{width:80px;text-align:center}.standings-table th.th-points{width:80px;text-align:center;font-weight:700}.standings-table th.th-games,.standings-table th.th-wins,.standings-table th.th-draws,.standings-table th.th-losses{width:50px;text-align:center}.standings-table th.th-buchholz,.standings-table th.th-buchholz-cut,.standings-table th.th-sonneborn,.standings-table th.th-performance{width:90px;text-align:center}.standings-table td{padding:14px 12px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.standings-table tbody tr{transition:all .2s ease}.standings-table tbody tr:hover{background:var(--bg-primary)}.standings-table tbody tr:last-child td{border-bottom:none}.standings-table tbody tr:nth-child(1) td:first-child{color:#d4af37;font-weight:700;font-size:16px;text-shadow:0 0 1px rgba(212,175,55,.3)}[data-theme=dark] .standings-table tbody tr:nth-child(1) td:first-child{color:gold}.standings-table tbody tr:nth-child(2) td:first-child{color:#8b8b8b;font-weight:700;font-size:16px;text-shadow:0 0 1px rgba(139,139,139,.3)}[data-theme=dark] .standings-table tbody tr:nth-child(2) td:first-child{color:silver}.standings-table tbody tr:nth-child(3) td:first-child{color:#b87333;font-weight:700;font-size:16px;text-shadow:0 0 1px rgba(184,115,51,.3)}[data-theme=dark] .standings-table tbody tr:nth-child(3) td:first-child{color:#cd7f32}.standings-table td:nth-child(1),.standings-table td:nth-child(3),.standings-table td:nth-child(4),.standings-table td:nth-child(5),.standings-table td:nth-child(6),.standings-table td:nth-child(7),.standings-table td:nth-child(8),.standings-table td:nth-child(9),.standings-table td:nth-child(10),.standings-table td:nth-child(11),.standings-table td:nth-child(12){text-align:center}.standings-table td:nth-child(5){font-weight:700;font-size:16px;color:var(--accent)}.standings-table .player-title{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;background:#8b5cf626;color:#7c3aed}[data-theme=dark] .standings-table .player-title{background:var(--accent-dim);color:var(--accent)}.btn-adjust-points{display:inline-flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-adjust-points:hover{background:#8b5cf61a;border-color:var(--accent);color:var(--accent)}.btn-adjust-points svg{width:14px;height:14px}.manual-points-indicator{font-size:11px;font-weight:500;color:var(--accent);opacity:.8}.standings-table td:nth-child(13){text-align:center;width:50px}.small-modal{max-width:400px;width:90%}.small-modal .form-group{margin-bottom:0}.small-modal .form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}@media(max-width:1200px){.standings-table th.th-buchholz-cut,.standings-table th.th-sonneborn,.standings-table th.th-performance,.standings-table td:nth-child(11),.standings-table td:nth-child(12){display:none}}@media(max-width:768px){.standings-header{flex-direction:column;align-items:flex-start;gap:16px}.standings-header-info h2{font-size:24px}.standings-table{font-size:13px}.standings-table th,.standings-table td{padding:10px 8px}.standings-table th.th-title,.standings-table th.th-draws,.standings-table th.th-losses,.standings-table th.th-buchholz,.standings-table td:nth-child(3),.standings-table td:nth-child(8),.standings-table td:nth-child(9),.standings-table td:nth-child(10){display:none}}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#000000b3!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:10000!important}.modal-content{background:var(--surface-bg, #1e1e2e);border-radius:12px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0006}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;color:var(--text-primary, #e0e0e0)}.btn-close{background:none;border:none;font-size:2rem;color:var(--text-secondary, #b0b0c0);cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.btn-close:hover{color:var(--text-primary, #e0e0e0)}.modal-body{padding:1.5rem}.game-info{margin-bottom:1.5rem;padding:1rem;background:var(--bg-primary, #13131a);border-radius:8px}.game-info p{margin:.5rem 0;color:var(--text-secondary, #b0b0c0)}.result-options{display:flex;flex-direction:column;gap:.75rem}.result-btn{padding:1rem;border:2px solid var(--border-color);background:var(--surface-bg, #1e1e2e);color:var(--text-primary, #e0e0e0);border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s}.result-btn:hover{border-color:var(--accent, #8b5cf6);background:var(--accent-dark, #7c3aed)}.result-btn.selected{border-color:var(--accent, #8b5cf6);background:var(--accent, #8b5cf6);color:#fff}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color)}.form-control{width:100%;padding:.75rem;border:1px solid var(--border-color);background:var(--surface-bg, #1e1e2e);color:var(--text-primary, #e0e0e0);border-radius:8px;font-size:1rem}.upgrade-modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;z-index:10000;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.upgrade-modal-overlay.active{display:flex}.upgrade-modal-content{background:var(--bg-secondary, #1a1a2e);border-radius:20px;width:95%;max-width:700px;max-height:90vh;overflow:auto;box-shadow:0 25px 80px #00000080;position:relative;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.upgrade-modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--text-secondary, #888);font-size:28px;cursor:pointer;padding:0;line-height:1;transition:color .2s;z-index:10}.upgrade-modal-close:hover{color:var(--text-primary, #fff)}.upgrade-modal-header{text-align:center;padding:40px 32px 24px}.upgrade-icon{width:64px;height:64px;margin:0 auto 16px;background:linear-gradient(135deg,#8b5cf6,#a78bfa);border-radius:50%;display:flex;align-items:center;justify-content:center}.upgrade-icon svg{width:32px;height:32px;color:#fff;fill:currentColor;stroke:none}.upgrade-modal-header h2{margin:0 0 8px;font-size:28px;font-weight:700;color:var(--text-primary, #fff)}.upgrade-modal-header p{margin:0;font-size:16px;color:var(--text-secondary, #888)}.upgrade-modal-body{padding:0 32px 32px}.upgrade-plans{display:grid;grid-template-columns:1fr 1fr;gap:20px}.plan-card{padding:24px;border:2px solid var(--border-color);border-radius:16px;position:relative;transition:all .2s}.plan-card.free{opacity:.7}.plan-card.pro{border-color:#8b5cf6;background:#8b5cf614}.plan-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);padding:4px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#8b5cf6,#a78bfa);color:#fff;border-radius:20px}.plan-card h3{margin:0 0 8px;font-size:20px;font-weight:700;color:var(--text-primary, #fff)}.plan-price{font-size:36px;font-weight:800;color:var(--text-primary, #fff);margin-bottom:16px}.plan-price span{font-size:16px;font-weight:500;color:var(--text-secondary, #888)}.plan-features{list-style:none;padding:0;margin:0 0 20px}.plan-features li{padding:8px 0;font-size:14px;color:var(--text-secondary, #aaa);display:flex;align-items:center;gap:8px}.plan-features li:before{content:"✓";color:#8b5cf6;font-weight:700}.plan-features li strong{color:var(--text-primary, #fff)}.plan-current{padding:12px 20px;font-size:14px;font-weight:600;color:var(--text-tertiary, #666);background:var(--bg-tertiary, #252538);border-radius:8px;text-align:center}.btn-upgrade{display:block;width:100%;padding:14px 20px;font-size:15px;font-weight:600;text-align:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .2s;text-decoration:none}.btn-upgrade:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9);transform:translateY(-2px);box-shadow:0 8px 20px #8b5cf64d}.upgrade-modal-footer{padding:16px 32px 24px;text-align:center;border-top:1px solid var(--border-color)}.upgrade-modal-footer p{margin:0;font-size:13px;color:var(--text-tertiary, #666)}.upgrade-modal-footer a{color:#8b5cf6;text-decoration:none}.upgrade-modal-footer a:hover{text-decoration:underline}.btn-upgrade-pro{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important;color:#fff!important;border:none!important}.btn-upgrade-pro:hover{background:linear-gradient(135deg,#7c3aed,#6d28d9)!important;transform:translateY(-2px)}.btn-upgrade-pro svg{fill:currentColor;stroke:none}@media(max-width:600px){.upgrade-plans{grid-template-columns:1fr}.upgrade-modal-header{padding:32px 20px 20px}.upgrade-modal-body{padding:0 20px 24px}}.td-player.player-selectable{cursor:pointer;position:relative;transition:all .2s ease}.td-player.player-selectable:hover{background-color:rgba(var(--accent-rgb),.1);color:var(--accent);font-weight:600}.td-player.selected-swap{background-color:var(--accent)!important;color:#fff!important;box-shadow:inset 0 0 0 2px var(--accent)}.td-player.selected-swap .title-badge{background:#fff3;color:#fff}.btn-warning{background-color:#f59e0b;color:#fff}.btn-warning:hover{background-color:#d97706}.toast{position:fixed;bottom:20px;right:20px;padding:12px 24px;border-radius:8px;color:#fff;font-weight:500;box-shadow:0 4px 6px #0000001a;z-index:9999;animation:slideIn .3s ease-out}.toast-info{background-color:var(--accent)}.toast-success{background-color:var(--success)}.toast-error{background-color:var(--danger)}@keyframes slideIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.round-detail-actions{display:flex;gap:12px;align-items:center}.round-detail-actions .btn{border:1px solid currentColor;background:transparent;padding:10px;width:42px;height:42px;border-radius:8px;overflow:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,0,.2,1),background-color .3s ease,color .3s ease;display:inline-flex;align-items:center;justify-content:flex-start}.round-detail-actions .btn-primary{color:var(--accent);border-color:var(--accent)}.round-detail-actions .btn-secondary{color:var(--text-secondary);border-color:var(--border-color-strong)}.round-detail-actions .btn-danger{color:var(--danger);border-color:var(--danger)}.round-detail-actions .btn-warning{color:#f59e0b;border-color:#f59e0b}.round-detail-actions .btn:hover{width:auto;padding-right:20px}.round-detail-actions .btn-primary:hover{background:var(--accent);color:#fff;min-width:160px}.round-detail-actions .btn-secondary:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--text-primary);min-width:140px}.round-detail-actions .btn-danger:hover{background:var(--danger);color:#fff;min-width:140px}.round-detail-actions .btn-warning:hover{background:#f59e0b;color:#fff;min-width:140px}.round-detail-actions .btn svg{min-width:20px;margin-right:12px}.round-detail-actions .btn span{opacity:0;transition:opacity .2s ease .1s}.round-detail-actions .btn:hover span{opacity:1}.btn-icon{display:inline-flex;align-items:center;justify-content:center;padding:8px;width:36px;height:36px;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.btn-icon svg{width:20px;height:20px}.btn-icon:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.btn-icon.btn-view{color:var(--text-secondary)}.btn-icon.btn-view:hover{color:var(--primary);background:rgba(var(--primary-rgb),.1);border-color:var(--primary)}.btn-icon.btn-edit{color:var(--text-secondary)}.btn-icon.btn-edit:hover{color:var(--accent);background:rgba(var(--accent-rgb),.1);border-color:var(--accent)}.btn-icon.btn-result{color:var(--accent);background:rgba(var(--accent-rgb),.1)}.btn-icon.btn-result:hover{background:var(--accent);color:#fff}.btn-icon.btn-upload{color:var(--text-secondary)}.btn-icon.btn-upload:hover{color:var(--info);background:rgba(var(--info-rgb),.1);border-color:var(--info)}.action-buttons{display:flex;align-items:center;justify-content:center;gap:4px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.tournament-card{animation:fadeInUp .6s ease-out backwards}.tournament-card:nth-child(1){animation-delay:.05s}.tournament-card:nth-child(2){animation-delay:.1s}.tournament-card:nth-child(3){animation-delay:.15s}.tournament-card:nth-child(4){animation-delay:.2s}.tournament-card:nth-child(5){animation-delay:.25s}.tournament-card:nth-child(6){animation-delay:.3s}.tournament-card:nth-child(7){animation-delay:.35s}.tournament-card:nth-child(8){animation-delay:.4s}.tournament-card:nth-child(9){animation-delay:.45s}.tournament-card:nth-child(10){animation-delay:.5s}.tournament-card:nth-child(11){animation-delay:.55s}.tournament-card:nth-child(12){animation-delay:.6s}.tournament-card{position:relative;background:var(--bg-primary)}.round-card{animation:fadeInScale .5s ease-out backwards}.round-card:nth-child(1){animation-delay:.05s}.round-card:nth-child(2){animation-delay:.1s}.round-card:nth-child(3){animation-delay:.15s}.round-card:nth-child(4){animation-delay:.2s}.round-card:nth-child(5){animation-delay:.25s}.round-card:nth-child(6){animation-delay:.3s}.round-card:nth-child(7){animation-delay:.35s}.filters-sidebar{background:rgba(var(--bg-secondary-rgb, 30, 30, 30),.7);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05)}.btn{position:relative;overflow:hidden}.btn:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.3) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .4s,opacity .8s}.btn:active:after{transform:scale(0);opacity:.3;transition:0s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.card-badge{animation:float 2s ease-in-out infinite}.card-badge.live,.card-badge:not(.featured):not(.admin):not(.completed){animation:float 2s ease-in-out infinite,pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 8px #ef444400}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-loader{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.btn-primary{transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #2f8f6a4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #2f8f6a66}.btn-secondary{transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.page-title{animation:fadeInUp .8s ease-out}.page-subtitle{animation:fadeInUp .8s ease-out .1s backwards}.tab-btn{position:relative;transition:all .3s ease}.tab-btn:before{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--accent);transition:all .3s ease;transform:translate(-50%)}.tab-btn:hover:before,.tab-btn.active:before{width:100%}.tab-btn.active{color:var(--accent)}.filter-item input[type=checkbox]:checked+label,.filter-item input[type=checkbox]:checked~label{animation:checkBounce .3s ease}@keyframes checkBounce{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.tournaments-grid::-webkit-scrollbar,.filters-sidebar::-webkit-scrollbar{width:6px}.tournaments-grid::-webkit-scrollbar-track,.filters-sidebar::-webkit-scrollbar-track{background:transparent}.tournaments-grid::-webkit-scrollbar-thumb,.filters-sidebar::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.tournaments-grid::-webkit-scrollbar-thumb:hover,.filters-sidebar::-webkit-scrollbar-thumb:hover{background:var(--accent)}.view-btn{transition:all .3s cubic-bezier(.4,0,.2,1)}.view-btn:hover{transform:scale(1.1)}.view-btn.active{box-shadow:0 0 12px #2f8f6a66}.tournament-detail-header{animation:fadeInUp .5s ease-out}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.detail-stat{animation:countUp .5s ease-out backwards}.detail-stat:nth-child(1){animation-delay:.1s}.detail-stat:nth-child(2){animation-delay:.2s}.detail-stat:nth-child(3){animation-delay:.3s}.breadcrumb{animation:fadeInUp .4s ease-out}.filter-group{transition:all .3s ease}.filter-group:hover{transform:translate(4px)}.search-input:focus{box-shadow:0 0 0 3px #2f8f6a33;border-color:var(--accent);transform:scale(1.01)}.card-stats span{transition:all .2s ease}.card-stats span:hover{color:var(--accent);transform:scale(1.05)}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.tab-count{animation:bounce .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-backdrop{animation:fadeIn .2s ease-out}.main-content{animation:fadeIn .3s ease-out}.tab-btn.active,.filter-item.active,.view-btn.active{position:relative}.tab-btn.active:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;background:var(--accent);border-radius:inherit;opacity:.1;z-index:-1}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:hover,.btn-secondary:hover,.btn-danger:hover,.btn-primary:hover{transform:none!important;box-shadow:none!important}.btn:hover:before{opacity:0!important;display:none!important}.btn-secondary:hover{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-secondary)!important}.btn-danger:hover{background:var(--destructive)!important;opacity:.9}.btn-secondary:hover svg{color:currentColor}.rounds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.round-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:24px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:row;align-items:center;justify-content:space-between;min-height:120px}.round-info{display:flex;flex-direction:column}.round-card-actions{display:flex;gap:8px;align-items:center}.round-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s}.round-action-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color-strong)}.round-action-btn.danger:hover{color:var(--destructive);border-color:var(--destructive);background:#ef44441a}.round-card:hover{border-color:var(--border-color-strong);background:var(--bg-tertiary)}.round-card-title{font-size:18px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.round-card-date{font-size:13px;color:var(--text-tertiary);margin:0 0 8px;font-weight:500}.round-card-games{font-size:13px;color:var(--text-tertiary);margin:0}.auth-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.auth-modal-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-modal-content{position:relative;width:100%;max-width:420px;max-height:90vh;background:var(--bg-secondary, #ffffff);border-radius:16px;box-shadow:0 25px 50px -12px #00000040;padding:32px;animation:authModalSlideIn .3s ease-out;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.auth-modal-content::-webkit-scrollbar{display:none}@keyframes authModalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:var(--bg-tertiary, #f3f4f6);color:var(--text-secondary, #6b7280);border-radius:8px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.auth-modal-close:hover{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #111827)}.auth-modal-close:focus,.auth-modal-close:active{outline:none;transform:none;box-shadow:none}.auth-modal-header{text-align:center;margin-bottom:28px}.auth-modal-header h2{font-size:24px;font-weight:700;color:var(--text-primary, #111827);margin:0 0 8px}.auth-modal-header p{font-size:14px;color:var(--text-secondary, #6b7280);margin:0}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form .form-group{display:flex;flex-direction:column;gap:6px}.auth-form label{font-size:13px;font-weight:600;color:var(--text-primary, #374151)}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{width:100%;padding:12px 14px;font-size:14px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827);transition:all .2s}.auth-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #8d203226}.auth-form input::-moz-placeholder{color:var(--text-tertiary, #9ca3af)}.auth-form input::placeholder{color:var(--text-tertiary, #9ca3af)}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:40px!important}.password-toggle-btn{position:absolute;right:10px;background:none;border:none;color:var(--text-tertiary, #9ca3af);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s;outline:none}.password-toggle-btn:hover{color:var(--text-primary, #374151);background:#0000000d}.password-toggle-btn:focus,.password-toggle-btn:active{outline:none;transform:none;box-shadow:none}.role-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:4px}.role-option{cursor:pointer}.role-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.role-card{display:flex;flex-direction:column;align-items:center;padding:10px 8px;border:2px solid var(--border-color, #e5e7eb);border-radius:10px;background:var(--bg-primary, #ffffff);transition:all .2s;height:100%}.role-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:6px;color:var(--text-tertiary, #9ca3af);transition:all .2s}.role-icon svg{width:24px;height:24px}.role-name{font-size:13px;font-weight:600;color:var(--text-primary, #111827);margin-bottom:2px}.role-desc{font-size:10px;color:var(--text-secondary, #6b7280);text-align:center;line-height:1.2}.role-option input:checked+.role-card{border-color:var(--accent);background:#8d20320d}.role-option:hover .role-card{border-color:var(--accent)}.role-option:focus .role-card,.role-option:active .role-card{outline:none;transform:none}.role-card:focus,.role-card:active{outline:none;transform:none}.auth-error{padding:12px 14px;background:#ef44441a;border:1px solid var(--danger);border-radius:8px;color:var(--danger);font-size:13px;font-weight:500}.auth-success{padding:12px 14px;background:#2f8f6a1a;border:1px solid var(--success);border-radius:8px;color:var(--success);font-size:13px;font-weight:500}[data-theme=dark] .auth-modal-backdrop{background:#000000bf}[data-theme=dark] .auth-modal-content{background:#1a1a1a;border:1px solid hsl(0,0%,20%);box-shadow:0 25px 50px -12px #00000080}[data-theme=dark] .auth-modal-close{background:#262626;color:#b3b3b3}[data-theme=dark] .auth-modal-close:hover{background:#333;color:#f2f2f2}[data-theme=dark] .auth-modal-header h2{color:#f2f2f2}[data-theme=dark] .auth-modal-header p{color:#b3b3b3}[data-theme=dark] .auth-form label{color:#f2f2f2}[data-theme=dark] .auth-form input[type=email],[data-theme=dark] .auth-form input[type=password],[data-theme=dark] .auth-form input[type=text]{background:#0d0d0d;color:#f2f2f2;border-color:#333}[data-theme=dark] .auth-form input::-moz-placeholder{color:#737373}[data-theme=dark] .auth-form input::placeholder{color:#737373}[data-theme=dark] .auth-form input:focus{border-color:#bb2a43;box-shadow:0 0 0 3px #bb2a4333}[data-theme=dark] .password-toggle-btn{color:#8c8c8c}[data-theme=dark] .password-toggle-btn:hover{color:#f2f2f2;background:#ffffff0d}[data-theme=dark] .role-card{background:#0d0d0d;border-color:#333}[data-theme=dark] .role-name{color:#f2f2f2}[data-theme=dark] .role-desc{color:#b3b3b3}[data-theme=dark] .role-icon{color:#8c8c8c}[data-theme=dark] .role-option input:checked+.role-card{border-color:#bb2a43;background:#bb2a431a}[data-theme=dark] .auth-switch{border-top-color:#333;color:#b3b3b3}[data-theme=dark] .remember-me-label{color:#f2f2f2}[data-theme=dark] .checkmark-box{background:#0d0d0d;border-color:#4d4d4d}[data-theme=dark] .user-menu-btn{background:#262626;border-color:#333}[data-theme=dark] .user-menu-btn:hover{background:#333}[data-theme=dark] .user-email{color:#f2f2f2}[data-theme=dark] .user-role{color:#a6a6a6}[data-theme=dark] .user-dropdown{background:#1a1a1a;border-color:#333;box-shadow:0 10px 25px -5px #0006}[data-theme=dark] .dropdown-item{color:#f2f2f2}[data-theme=dark] .dropdown-item:hover{background:#262626}[data-theme=dark] .dropdown-divider{background:#333}[data-theme=dark] .auth-error{background:#dc262626;border-color:#dc26264d}[data-theme=dark] .auth-success{background:#16a34a26;border-color:#16a34a4d}.auth-submit{width:100%;padding:14px 20px;font-size:15px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:none!important;background:var(--accent, hsl(350, 63%, 34%));color:var(--accent-foreground, #ffffff)}.auth-submit:hover{background:var(--accent-hover, hsl(350, 63%, 28%))}.auth-submit:focus,.auth-submit:active{outline:none;transform:none;box-shadow:none!important}[data-theme=dark] .auth-submit{background:#bb2a43;color:#fff}[data-theme=dark] .auth-submit:hover{background:#d5445c}[data-theme=dark] .auth-submit:focus,[data-theme=dark] .auth-submit:active{outline:none;transform:none;box-shadow:none!important}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.btn-loading{display:inline-flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-link{text-align:center}.auth-link a{font-size:13px;color:var(--accent);text-decoration:none;font-weight:500}.auth-link a:hover{text-decoration:underline}.auth-link a:focus,.auth-link a:active{outline:none;transform:none}.auth-switch{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color, #e5e7eb);text-align:center;font-size:14px;color:var(--text-secondary, #6b7280)}.auth-switch a{color:var(--accent);text-decoration:none;font-weight:600;margin-left:4px}.auth-switch a:hover{text-decoration:underline}.auth-switch a:focus,.auth-switch a:active{outline:none;transform:none}.header-auth{display:flex;align-items:center;gap:10px;opacity:0;transition:opacity .25s ease}.header-auth.auth-ready{opacity:1}.btn-sm{padding:8px 16px!important;font-size:13px!important}.user-menu{position:relative}.user-menu-btn{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;background:var(--bg-tertiary, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:40px;cursor:pointer;transition:all .2s}.user-menu-btn:hover{background:var(--bg-tertiary, #e5e7eb)}.user-menu-btn:focus,.user-menu-btn:active{outline:none;transform:none;box-shadow:none}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}[data-theme=dark] .user-avatar{color:var(--bg-hero)}.user-info{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.user-email{font-size:13px;font-weight:600;color:var(--text-primary, #111827);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:11px;color:var(--text-secondary, #6b7280)}.chevron{color:var(--text-secondary, #6b7280)}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--bg-secondary, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:10px;box-shadow:0 10px 25px -5px #0000001a;padding:6px;z-index:1000}.dropdown-item{display:block;padding:10px 12px;font-size:13px;font-weight:500;color:var(--text-primary, #374151);text-decoration:none;border-radius:6px;transition:all .15s}.dropdown-item:hover{background:var(--bg-tertiary, #f3f4f6)}.dropdown-item:focus,.dropdown-item:active{outline:none;transform:none;box-shadow:none}.dropdown-divider{height:1px;background:var(--border-color, #e5e7eb);border:none;margin:6px 0}@media(max-width:480px){.auth-modal-content{padding:24px;margin:16px;max-width:calc(100% - 32px)}.role-selector{grid-template-columns:1fr}.role-card{flex-direction:row;text-align:left;gap:12px}.role-icon{font-size:24px;margin-bottom:0}.user-info{display:none}.user-menu-btn{padding:4px}}.remember-me-group{display:flex;align-items:left;justify-content:flex-start;padding:8px 0}.remember-me-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:var(--text-primary, #374151);-webkit-user-select:none;-moz-user-select:none;user-select:none}.remember-me-label input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.checkmark-box{width:18px;height:18px;border:2px solid var(--border-color, #d1d5db);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s;background:var(--bg-primary, #ffffff)}.remember-me-label input[type=checkbox]:checked+.checkmark-box{background:var(--accent);border-color:var(--accent)}.remember-me-label input[type=checkbox]:checked+.checkmark-box:after{content:"";width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg);margin-bottom:2px}.remember-me-label:hover .checkmark-box{border-color:var(--accent)}.remember-me-label:focus,.remember-me-label:active{outline:none;transform:none}.checkmark-box:focus,.checkmark-box:active{outline:none;transform:none}.remember-me-text{font-weight:500}.google-signin-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border:1px solid var(--border-color, #ddd);border-radius:8px;background:var(--bg-primary, #ffffff);color:var(--text-primary, #333);cursor:pointer;font-size:14px;font-weight:500;transition:background .2s,border-color .2s}.google-signin-btn:hover{background:var(--bg-tertiary, #f9fafb);border-color:var(--border-color-strong, #ccc)}.google-signin-btn:active,.google-signin-btn:focus{outline:none;transform:none;box-shadow:none}.google-signin-btn svg{flex-shrink:0}[data-theme=dark] .google-signin-btn{background:#1f1f1f;color:#e6e6e6;border-color:#404040}[data-theme=dark] .google-signin-btn:hover{background:#2e2e2e;border-color:#595959}.auth-modal .btn,.auth-modal .btn-primary,.auth-modal .btn-secondary,.auth-modal [class*=btn-]{overflow:hidden;transform:none!important}.auth-modal .btn:before,.auth-modal .btn:after,.auth-modal .btn-primary:before,.auth-modal .btn-primary:after,.auth-modal .btn-secondary:before,.auth-modal .btn-secondary:after,.auth-modal [class*=btn-]:before,.auth-modal [class*=btn-]:after{display:none!important;content:none!important}.auth-modal .btn:hover,.auth-modal .btn-primary:hover,.auth-modal .btn-secondary:hover,.auth-modal [class*=btn-]:hover{transform:none!important;box-shadow:none!important}.auth-modal .btn:active,.auth-modal .btn:focus,.auth-modal .btn-primary:active,.auth-modal .btn-primary:focus,.auth-modal .btn-secondary:active,.auth-modal .btn-secondary:focus,.auth-modal [class*=btn-]:active,.auth-modal [class*=btn-]:focus{transform:none!important;box-shadow:none!important}.auth-modal button,.auth-modal a,.auth-modal [role=button],.auth-modal [type=button],.auth-modal [type=submit]{outline:none}.auth-modal button:focus,.auth-modal button:active,.auth-modal a:focus,.auth-modal a:active,.auth-modal [role=button]:focus,.auth-modal [role=button]:active,.auth-modal [type=button]:focus,.auth-modal [type=button]:active,.auth-modal [type=submit]:focus,.auth-modal [type=submit]:active{transform:none!important;box-shadow:none!important;outline:none!important}
