:root{--purple-50:#f3e8ff;--purple-100:#e9d5ff;--purple-200:#d8b4fe;--purple-300:#c084fc;--purple-400:#a855f7;--purple-500:#9333ea;--purple-600:#7e22ce;--purple-700:#6b21a8;--purple-800:#581c87;--purple-900:#3b0764;--primary-600:#7c3aed;--primary-500:#8b5cf6;--primary-400:#a78bfa;--violet-400:#a78bfa;--violet-500:#8b5cf6;--indigo-400:#818cf8;--pink-400:#f472b6;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--color-primary:var(--primary-600);--color-primary-hover:var(--purple-700);--color-primary-light:var(--purple-100);--color-secondary:var(--primary-500);--color-accent:var(--pink-400);--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:var(--indigo-400);--bg-primary:#fff;--bg-secondary:var(--gray-50);--bg-tertiary:var(--purple-50);--bg-dark:var(--gray-900);--bg-gradient:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-500) 100%);--bg-gradient-light:linear-gradient(135deg,var(--primary-400) 0%,var(--primary-500) 100%);--text-primary:var(--gray-900);--text-secondary:var(--gray-600);--text-muted:var(--gray-500);--text-on-primary:#fff;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-purple:0 10px 40px -10px #9333ea4d;--transition-fast:150ms ease;--transition-base:250ms ease;--transition-slow:350ms ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}@media (prefers-color-scheme:dark){:root{--bg-primary:var(--gray-900);--bg-secondary:var(--gray-800);--bg-tertiary:var(--purple-900);--text-primary:var(--gray-100);--text-secondary:var(--gray-400);--text-muted:var(--gray-500)}}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem}.text-lg,.text-xl{line-height:1.75rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7c3aed,#8b5cf6);background:var(--bg-gradient);-webkit-background-clip:text;background-clip:text}.glass-effect{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.glow-purple{box-shadow:0 0 20px #9333ea80}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fadeIn{animation:fadeIn ease-out .25s ease;animation:fadeIn var(--transition-base) ease-out}.animate-slideIn{animation:slideIn ease-out .25s ease;animation:slideIn var(--transition-base) ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-float{animation:float 3s ease-in-out infinite}html{font-size:16px;scroll-behavior:smooth}body{background:var(--bg-primary);color:var(--text-primary)}.App,body{min-height:100vh}.App{background:linear-gradient(180deg,var(--purple-50) 0,var(--bg-primary) 100%);display:flex;flex-direction:column}.App-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--bg-gradient);box-shadow:var(--shadow-lg);color:var(--text-on-primary);padding:var(--space-lg) var(--space-xl);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.App-header h1{align-items:center;display:flex;font-size:1.75rem;font-weight:700;gap:var(--space-sm);letter-spacing:-.025em;margin:0}.App-header h1:before{animation:float 3s ease-in-out infinite;content:"🎯";font-size:1.5rem}main{animation:fadeIn var(--transition-base) ease-out;flex:1 1;margin:0 auto;max-width:1400px;padding:var(--space-xl);width:100%}.card{background:var(--bg-primary);border:1px solid var(--purple-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.card:hover{border-color:var(--purple-300);box-shadow:var(--shadow-purple);transform:translateY(-2px)}.card-body{padding:var(--space-lg)}.card-header{background:var(--bg-gradient-light);border-bottom:1px solid var(--purple-200);padding:var(--space-md) var(--space-lg)}.btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:var(--space-xs);overflow:hidden;padding:var(--space-sm) var(--space-lg);position:relative;text-decoration:none;transition:all var(--transition-base)}.btn:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn:active:before{height:300px;width:300px}.btn-primary{background:var(--bg-gradient);box-shadow:var(--shadow-md);color:var(--text-on-primary)}.btn-primary:hover{box-shadow:var(--shadow-purple);transform:translateY(-2px)}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--purple-200);color:var(--text-primary)}.btn-secondary:hover{background:var(--purple-100);border-color:var(--purple-300)}.btn-danger{background:linear-gradient(135deg,var(--color-error) 0,#dc2626 100%);color:#fff}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.form{gap:var(--space-lg)}.form,.form-group{display:flex;flex-direction:column}.form-group{gap:var(--space-xs)}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.form-input,.form-select{background:var(--bg-primary);border:2px solid var(--purple-200);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;padding:var(--space-sm) var(--space-md);transition:all var(--transition-base);width:100%}.form-input:focus,.form-select:focus{border-color:var(--purple-500);box-shadow:0 0 0 3px #9333ea1a;outline:none}.form-input::placeholder{color:var(--text-muted)}.table{overflow-x:auto;width:100%}table{border-collapse:initial;border-spacing:0;width:100%}thead{background:var(--bg-gradient-light);position:-webkit-sticky;position:sticky;top:0;z-index:10}th{border-bottom:2px solid var(--purple-300);color:var(--purple-800);font-weight:600;text-align:left;white-space:nowrap}td,th{padding:var(--space-md)}td{border-bottom:1px solid var(--purple-100)}tbody tr{transition:all var(--transition-fast)}tbody tr:hover{background:var(--purple-50)}.loading{align-items:center;display:flex;flex-direction:column;gap:var(--space-md);justify-content:center;min-height:400px}.loading:before{animation:spin 1s linear infinite;border:4px solid var(--purple-200);border-radius:50%;border-top-color:var(--purple-600);content:"";height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error)}.error,.success{margin:var(--space-md) 0;padding:var(--space-lg)}.success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid var(--color-success);border-radius:var(--radius-md);color:var(--color-success)}.nav-tab{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:500;padding:var(--space-sm) var(--space-lg);position:relative;transition:all var(--transition-base)}.nav-tab:after{background:var(--bg-gradient);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);transition:width var(--transition-base);width:0}.nav-tab:hover{color:var(--purple-600)}.nav-tab.active{color:var(--purple-700)}.nav-tab.active:after{width:100%}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.025em;padding:var(--space-xs) var(--space-sm);text-transform:uppercase}.status-created{background:var(--purple-100);color:var(--purple-700)}.status-active{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:var(--color-success)}.status-finished{background:var(--gray-200);color:var(--gray-600)}.card-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:var(--space-lg)}.team-selection-grid{grid-gap:var(--space-md);display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:var(--space-md)}.team-card-selectable{align-items:center;background:var(--bg-primary);border:2px solid var(--purple-200);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);position:relative;transition:all var(--transition-base)}.team-card-selectable:hover{border-color:var(--purple-400);box-shadow:var(--shadow-md);transform:translateY(-2px)}.team-card-selectable.selected{background:var(--bg-gradient-light);border-color:var(--purple-500);box-shadow:var(--shadow-purple)}.team-logo-thumb{border:2px solid var(--purple-200);border-radius:var(--radius-md);height:64px;object-fit:cover;width:64px}.team-card-selectable .checkmark{align-items:center;background:var(--bg-gradient);border-radius:50%;color:#fff;display:none;font-size:14px;height:24px;justify-content:center;position:absolute;right:var(--space-sm);top:var(--space-sm);width:24px}.team-card-selectable.selected .checkmark{display:flex}.muted{color:var(--text-muted);font-size:.875rem}.text-center{text-align:center}.text-right{text-align:right}.mt-1{margin-top:var(--space-sm)}.mt-2{margin-top:var(--space-md)}.mt-3{margin-top:var(--space-lg)}.mb-1{margin-bottom:var(--space-sm)}.mb-2{margin-bottom:var(--space-md)}.mb-3{margin-bottom:var(--space-lg)}.gap-1{gap:var(--space-sm)}.gap-2{gap:var(--space-md)}.gap-3{gap:var(--space-lg)}@media (max-width:768px){.App-header,main{padding:var(--space-md)}.App-header h1{font-size:1.25rem}.card-grid{grid-template-columns:1fr}.team-selection-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}table{font-size:.875rem}td,th{padding:var(--space-sm)}}@media print{.App-header,.btn,.nav-tab{display:none!important}main{padding:0}.card{border:1px solid var(--gray-300);box-shadow:none}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}:focus-visible{outline:2px solid var(--purple-500);outline-offset:2px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--purple-50);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--purple-400);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--purple-500)}.App-footer{background:var(--bg-primary);border-top:1px solid var(--border-color);margin-top:auto;padding:var(--space-sm) 0}.game-manager{animation:fadeIn .5s ease-out}.game-header{background:linear-gradient(135deg,var(--purple-600) 0,var(--violet-500) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:#fff;margin-bottom:var(--space-xl);padding:var(--space-xl)}.game-title{align-items:center;display:flex;font-size:2rem;font-weight:700;gap:var(--space-md);margin-bottom:var(--space-sm)}.game-meta{display:flex;flex-wrap:wrap;gap:var(--space-lg);margin-top:var(--space-md);opacity:.95}.game-meta-item{align-items:center;display:flex;font-size:.9rem;gap:var(--space-xs)}.game-meta-item:before{content:"•";margin-right:var(--space-xs)}.game-meta-item:first-child:before{display:none}.btn-scoreboard{align-items:center;background:#fff3;border:2px solid #fff;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);transition:all var(--transition-base)}.btn-scoreboard:hover{background:#fff;box-shadow:var(--shadow-md);color:var(--purple-600);transform:translateY(-2px)}.rounds-container{display:flex;flex-direction:column;gap:var(--space-xl)}.round-card{animation:slideIn .3s ease-out backwards;background:#fff;border:2px solid var(--purple-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.round-card:first-child{animation-delay:.1s}.round-card:nth-child(2){animation-delay:.2s}.round-card:nth-child(3){animation-delay:.3s}.round-card:nth-child(4){animation-delay:.4s}.round-card:nth-child(5){animation-delay:.5s}.round-card:hover{border-color:var(--purple-300);box-shadow:var(--shadow-purple)}.round-header{border-bottom:2px solid var(--purple-200);justify-content:space-between;padding:var(--space-md) var(--space-lg)}.round-header,.round-title{align-items:center;display:flex}.round-title{color:var(--purple-800);font-size:1.125rem;font-weight:600;gap:var(--space-sm)}.round-badge{align-items:center;background:var(--bg-gradient);border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:700;height:32px;justify-content:center;width:32px}.round-max-score{background:#fff;border:1px solid var(--purple-200);border-radius:var(--radius-full);color:var(--purple-600);font-size:.875rem;font-weight:600;padding:var(--space-xs) var(--space-md)}.round-actions{display:flex;gap:var(--space-sm)}.scores-table{border-collapse:collapse;width:100%}.scores-table th{background:var(--purple-50);border-bottom:2px solid var(--purple-200);color:var(--purple-700);font-size:.875rem;font-weight:600;letter-spacing:.025em;padding:var(--space-md);text-align:left;text-transform:uppercase}.scores-table td{border-bottom:1px solid var(--purple-100);padding:var(--space-md);vertical-align:middle}.scores-table tbody tr{transition:all var(--transition-fast)}.scores-table tbody tr:hover{background:var(--purple-50)}.position-cell{color:var(--purple-600);font-size:1.125rem;font-weight:700;text-align:center;width:60px}.position-cell.gold{color:gold;font-size:1.25rem}.position-cell.silver{color:silver;font-size:1.125rem}.position-cell.bronze{color:#cd7f32;font-size:1.125rem}.team-logo{border:2px solid var(--purple-100);border-radius:var(--radius-sm);height:36px;width:36px}.team-name{color:var(--gray-800)}.score-input{border:2px solid var(--purple-200);border-radius:var(--radius-sm);font-size:1rem;font-weight:600;padding:var(--space-xs) var(--space-sm);text-align:center;transition:all var(--transition-fast);width:80px}.score-input:focus{border-color:var(--purple-500);box-shadow:0 0 0 3px #9333ea1a;outline:none}.score-input.positive{color:var(--color-success)}.score-input.negative{color:var(--color-error)}.score-input:disabled{background:var(--gray-100);cursor:not-allowed;opacity:.7}.score-display{font-size:1rem;font-weight:600;min-width:60px;padding:var(--space-xs) var(--space-sm);text-align:center}.score-display.positive{color:var(--color-success)}.score-display.negative{color:var(--color-error)}.totals-section{animation:slideIn .6s ease-out;background:linear-gradient(135deg,var(--purple-600) 0,var(--violet-500) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);margin-top:var(--space-2xl);padding:var(--space-xl)}.totals-header{align-items:center;color:#fff;display:flex;font-size:1.5rem;font-weight:700;gap:var(--space-sm);justify-content:center;margin-bottom:var(--space-lg);text-align:center}.totals-header:after,.totals-header:before{animation:float 3s ease-in-out infinite;content:"⭐";font-size:1.25rem}.totals-header:after{animation-delay:1.5s}.totals-table{background:#fff;border-radius:var(--radius-md);overflow:hidden}.totals-table th{background:var(--purple-100);color:var(--purple-800)}.totals-table .total-score{color:var(--purple-700);font-size:1.25rem;font-weight:700}.edit-mode-badge{animation:pulse 2s infinite;background:var(--color-warning);border-radius:var(--radius-full);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:var(--space-xs) var(--space-md);text-transform:uppercase}@keyframes successFlash{0%{background:var(--color-success)}50%{background:#0000}to{background:var(--color-success)}}.save-success{animation:successFlash .5s ease-out}.scores-loading{color:var(--text-muted);padding:var(--space-2xl);text-align:center}.scores-loading:before{animation:spin 1s linear infinite;border:4px solid var(--purple-200);border-radius:50%;border-top-color:var(--purple-600);content:"";display:block;height:48px;margin:0 auto var(--space-lg);width:48px}.no-teams{color:var(--text-muted);font-size:1.125rem;padding:var(--space-2xl);text-align:center}.no-teams:before{content:"🎮";display:block;font-size:3rem;margin-bottom:var(--space-md);opacity:.5}@media (max-width:768px){.game-title{font-size:1.5rem}.game-meta,.score-input,.scores-table{font-size:.875rem}.score-input{width:60px}.team-logo{height:28px;width:28px}.position-cell{font-size:1rem}.totals-table .total-score{font-size:1.125rem}}@media (max-width:480px){.game-header{padding:var(--space-md)}.round-header{align-items:flex-start;flex-direction:column;gap:var(--space-sm)}.round-actions{width:100%}.round-actions .btn{flex:1 1}.scores-table td,.scores-table th{padding:var(--space-sm)}}.admin-panel{animation:fadeIn .3s ease-out;min-height:100vh}.admin-header{background:linear-gradient(135deg,var(--purple-600) 0,var(--violet-500) 100%);border-radius:var(--radius-xl);color:#fff;margin-bottom:var(--space-xl);overflow:hidden;padding:var(--space-2xl) var(--space-xl);position:relative;text-align:center}.admin-header:before{animation:float 20s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;position:absolute;right:-50%;top:-50%;width:200%}.admin-header h1{font-size:2.5rem;font-weight:700;margin-bottom:var(--space-sm);position:relative;z-index:1}.admin-header p{font-size:1.125rem;opacity:.95;position:relative;z-index:1}.admin-nav{background:var(--bg-primary);border:1px solid var(--purple-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--space-xs);margin-bottom:var(--space-xl);overflow-x:auto;padding:var(--space-sm)}.admin-nav .nav-tab{border-radius:var(--radius-md);flex-shrink:0;padding:var(--space-md) var(--space-lg);transition:all var(--transition-base)}.admin-nav .nav-tab:hover{background:var(--purple-50)}.admin-nav .nav-tab.active{background:var(--bg-gradient);box-shadow:var(--shadow-md);color:#fff}.admin-nav .nav-tab.active:after{display:none}.admin-content{animation:slideIn .3s ease-out}.list-header,.section-header{align-items:center;border-bottom:2px solid var(--purple-100);display:flex;justify-content:space-between;margin-bottom:var(--space-lg);padding-bottom:var(--space-md)}.list-header h2,.section-header h2{align-items:center;color:var(--purple-800);display:flex;font-size:1.75rem;font-weight:600;gap:var(--space-sm)}.template-list-header{align-items:center;border-bottom:2px solid var(--purple-100);display:flex;justify-content:space-between;margin-bottom:var(--space-xl);padding-bottom:var(--space-md)}.template-list-header h2{color:var(--purple-800);font-size:1.75rem;font-weight:600;margin:0}.teams-header{align-items:center;border-bottom:2px solid var(--purple-100);display:flex;gap:var(--space-lg);justify-content:space-between;margin-bottom:var(--space-xl);padding-bottom:var(--space-md)}.teams-header h2{color:var(--purple-800);flex-shrink:0;font-size:1.75rem;font-weight:600;margin:0}.create-team{align-items:center;display:flex;flex:1 1;gap:var(--space-sm);max-width:400px}.create-team .form-input{flex:1 1;margin:0}.create-team .btn{flex-shrink:0}.game-card,.template-card{background:#fff;border:2px solid var(--purple-100);cursor:pointer;overflow:hidden;position:relative;transition:all var(--transition-base)}.game-card:before,.template-card:before{background:var(--bg-gradient);content:"";height:4px;left:0;position:absolute;top:0;transform:scaleX(0);transition:transform var(--transition-base);width:100%}.game-card:hover:before,.template-card:hover:before{transform:scaleX(1)}.game-card:hover,.template-card:hover{border-color:var(--purple-300);box-shadow:var(--shadow-purple);transform:translateY(-4px)}.game-status{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-left:var(--space-sm);padding:var(--space-xs) var(--space-md);text-transform:uppercase}.rounds-section{background:var(--purple-50);border:1px solid var(--purple-200);border-radius:var(--radius-lg);margin-top:var(--space-lg);padding:var(--space-lg)}.rounds-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-md)}.rounds-list{display:flex;flex-direction:column;gap:var(--space-sm)}.round-item{align-items:center;background:#fff;border:1px solid var(--purple-200);border-radius:var(--radius-md);display:flex;gap:var(--space-md);padding:var(--space-md);transition:all var(--transition-fast)}.round-item:hover{border-color:var(--purple-400);box-shadow:var(--shadow-sm)}.round-number{align-items:center;background:var(--bg-gradient);border-radius:50%;color:#fff;display:flex;font-size:.875rem;font-weight:600;height:32px;justify-content:center;width:32px}.teams-container{grid-gap:var(--space-xl);display:grid;gap:var(--space-xl)}.team-form{background:var(--purple-50);border:1px solid var(--purple-200);border-radius:var(--radius-lg);padding:var(--space-lg)}.teams-grid{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.template-grid{display:flex;flex-direction:column;gap:var(--space-lg)}.template-grid .template-card{width:100%}.team-card{background:#fff;border:2px solid #0000;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition-base)}.team-card:hover{border-color:var(--purple-300);box-shadow:var(--shadow-purple);transform:translateY(-4px)}.team-logo{align-items:center;background:var(--bg-gradient-light);color:var(--purple-300);display:flex;font-size:3rem;height:150px;justify-content:center;object-fit:cover;width:100%}.team-info{padding:var(--space-md)}.team-name{color:var(--purple-800);font-size:1.125rem;font-weight:600;margin-bottom:var(--space-xs)}.team-actions{display:flex;gap:var(--space-xs);margin-top:var(--space-md)}.teams-list{display:flex;flex-direction:column;gap:var(--space-lg)}.teams-list .team-card{width:100%}.form-actions{border-top:1px solid var(--purple-100);display:flex;gap:var(--space-md);margin-top:var(--space-xl);padding-top:var(--space-lg)}.empty-state{color:var(--text-muted);padding:var(--space-3xl) var(--space-xl);text-align:center}.empty-state:before{animation:float 3s ease-in-out infinite;content:"📋";display:block;font-size:4rem;margin-bottom:var(--space-lg);opacity:.5}.empty-state p{font-size:1.125rem;margin-bottom:var(--space-lg)}.section-placeholder{background:linear-gradient(135deg,var(--purple-50) 0,var(--violet-400) 100%);border:2px dashed var(--purple-300);border-radius:var(--radius-lg);padding:var(--space-2xl);text-align:center}.section-placeholder h2{color:var(--purple-800);margin-bottom:var(--space-md)}.file-upload{cursor:pointer;display:inline-block;position:relative;width:100%}.file-upload input[type=file]{left:-9999px;position:absolute}.file-upload-label{align-items:center;background:var(--purple-50);border:2px dashed var(--purple-300);border-radius:var(--radius-md);color:var(--purple-600);display:flex;font-weight:500;gap:var(--space-sm);justify-content:center;padding:var(--space-lg);transition:all var(--transition-base)}.file-upload-label:hover{background:var(--purple-100);border-color:var(--purple-500)}.inline-edit{align-items:center;display:flex;gap:var(--space-sm)}.inline-edit input{background:#fff;border:2px solid var(--purple-300);border-radius:var(--radius-sm);flex:1 1;font-size:inherit;font-weight:inherit;padding:var(--space-xs) var(--space-sm)}.inline-edit input:focus{border-color:var(--purple-500);box-shadow:0 0 0 3px #9333ea1a;outline:none}.hint{align-items:flex-start;background:var(--purple-50);border-left:4px solid var(--purple-400);border-radius:var(--radius-sm);color:var(--purple-700);display:flex;font-size:.875rem;gap:var(--space-sm);margin-top:var(--space-md);padding:var(--space-md)}.hint:before{content:"💡";flex-shrink:0}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.loading-spinner{animation:spin 1s linear infinite;border:4px solid var(--purple-200);border-radius:50%;border-top-color:var(--purple-600);height:64px;width:64px}@media (max-width:768px){.admin-header h1{font-size:1.75rem}.admin-nav{padding:var(--space-xs)}.admin-nav .nav-tab{font-size:.875rem;padding:var(--space-sm) var(--space-md)}.teams-grid,.teams-list,.template-grid{grid-template-columns:1fr}.teams-header{align-items:stretch;flex-direction:column}.create-team{max-width:100%}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}@media (prefers-color-scheme:dark){.admin-panel{background:var(--bg-dark)}.game-card,.rounds-section,.team-card,.template-card{background:var(--gray-800);border-color:var(--purple-700)}.round-item{background:var(--gray-700);border-color:var(--purple-600)}}.scoreboard{animation:fadeIn .5s ease-out;background:linear-gradient(135deg,var(--purple-900) 0,var(--violet-900) 100%);min-height:100vh;padding:var(--space-xl)}.scoreboard header{animation:slideIn .6s ease-out;margin-bottom:var(--space-2xl);text-align:center}.scoreboard h2{color:#fff;font-size:3rem;font-weight:700;letter-spacing:-.025em;margin-bottom:var(--space-sm);text-shadow:0 4px 6px #0000004d}.scoreboard .muted{color:var(--purple-200);font-size:1.125rem}.leaders-grid{grid-gap:var(--space-lg);animation:fadeIn .8s ease-out;display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:var(--space-2xl)}.leader-card{animation:fadeIn .5s ease-out backwards;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;padding:var(--space-lg);position:relative;transition:all var(--transition-base)}.leader-card:first-child{animation-delay:.1s;background:linear-gradient(135deg,gold,#ffed4e);border:3px solid gold}.leader-card:nth-child(2){animation-delay:.2s;background:linear-gradient(135deg,silver,#e8e8e8);border:3px solid silver}.leader-card:nth-child(3){animation-delay:.3s;background:linear-gradient(135deg,#cd7f32,#e6a86e);border:3px solid #cd7f32}.leader-card:hover{box-shadow:0 12px 24px #0003;transform:translateY(-2px)}.leader-medal{font-size:3rem}.leader-card:first-child .leader-medal{animation-delay:0s}.leader-card:nth-child(2) .leader-medal{animation-delay:1s}.leader-card:nth-child(3) .leader-medal{animation-delay:2s}.leader-info{flex:1 1}.leader-team{align-items:center;display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm)}.leader-team img{border:2px solid #0000001a;border-radius:var(--radius-md);height:36px;object-fit:cover;width:36px}.leader-team strong{color:var(--gray-800);font-size:1.25rem}.leader-details{color:var(--gray-600);display:flex;font-size:.875rem;gap:var(--space-md)}.leader-card:first-child .leader-team strong{color:#6b5600}.leader-card:nth-child(2) .leader-team strong{color:#4a4a4a}.leader-card:nth-child(3) .leader-team strong{color:#6b3e1f}.scoreboard-table{animation:slideIn 1s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:var(--radius-xl);box-shadow:0 20px 60px #0000004d;overflow:hidden}.scoreboard-table .card-body{padding:0}.scoreboard-table table{border-collapse:collapse;width:100%}.scoreboard-table thead{background:var(--bg-gradient)}.scoreboard-table th{border-bottom:none;color:#fff;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:var(--space-lg);position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.header-icon{color:#fff;font-size:1.35rem;line-height:1;text-shadow:0 1px 2px #00000040}.icon-table{display:inline-block;height:24px;width:24px}.scoreboard-table tbody tr{animation:fadeIn .5s ease-out backwards;transition:all var(--transition-fast)}.scoreboard-table tbody tr:first-child{animation-delay:.05s}.scoreboard-table tbody tr:nth-child(2){animation-delay:.1s}.scoreboard-table tbody tr:nth-child(3){animation-delay:.15s}.scoreboard-table tbody tr:nth-child(4){animation-delay:.2s}.scoreboard-table tbody tr:nth-child(5){animation-delay:.25s}.scoreboard-table tbody tr:hover{background:var(--purple-50)}.scoreboard-table td{border-bottom:1px solid var(--purple-100);font-size:1rem;padding:var(--space-md) var(--space-lg)}.scoreboard-table tbody tr:first-child td:first-child{color:gold;font-size:1.5rem;font-weight:700;text-shadow:0 2px 4px #0000001a}.scoreboard-table tbody tr:nth-child(2) td:first-child{color:silver;font-size:1.25rem;font-weight:700;text-shadow:0 2px 4px #0000001a}.scoreboard-table tbody tr:nth-child(3) td:first-child{color:#cd7f32;font-size:1.125rem;font-weight:700;text-shadow:0 2px 4px #0000001a}.team-cell{align-items:center;display:flex;gap:var(--space-sm)}.team-logo-small{border:2px solid var(--purple-200);border-radius:var(--radius-sm);height:32px;object-fit:cover;width:32px}.team-name-text{color:var(--purple-800);font-weight:600;transition:all var(--transition-fast)}.team-name-text:hover{color:var(--purple-600);text-decoration:underline}.leader-team a{transition:all var(--transition-fast)}.leader-team a:hover{opacity:.8;text-decoration:underline}.score-cell{font-weight:500;min-width:60px;position:relative;text-align:center;transition:all var(--transition-fast)}.score-cell.positive{color:var(--color-success)}.score-cell.negative{color:var(--color-error)}.score-cell.zero{color:var(--text-muted);opacity:.5}.score-cell.best-score{background:#ffd7002e;border-radius:var(--radius-sm);box-shadow:inset 0 0 0 1px #ffd70059;color:var(--gray-900);font-weight:700}.total-cell{background:var(--purple-50);color:var(--purple-700);font-size:1.125rem;font-weight:700;position:-webkit-sticky;position:sticky;right:0}.round-header{background:var(--bg-gradient-light);font-size:.75rem;padding:var(--space-sm)!important}.scoreboard-loading{align-items:center;background:linear-gradient(135deg,var(--purple-900) 0,var(--violet-900) 100%);display:flex;justify-content:center;min-height:100vh}.scoreboard-loading:before{animation:spin 1s linear infinite;border:4px solid var(--purple-300);border-radius:50%;border-top:4px solid #fff;content:"";height:80px;width:80px}.scoreboard-error{align-items:center;background:linear-gradient(135deg,var(--purple-900) 0,var(--violet-900) 100%);color:#fff;display:flex;justify-content:center;min-height:100vh;padding:var(--space-xl);text-align:center}.scoreboard-error h2{font-size:2rem;margin-bottom:var(--space-md)}.live-indicator{align-items:center;animation:pulse 2s infinite;background:var(--color-error);border-radius:var(--radius-full);color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);position:absolute;right:var(--space-md);text-transform:uppercase;top:var(--space-md)}.live-indicator:before{background:#fff;border-radius:50%;content:"";height:8px;width:8px}@keyframes slideInTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width:1024px){.scoreboard{padding:var(--space-md)}.scoreboard h2{font-size:2rem}.leaders-grid{gap:var(--space-md);grid-template-columns:1fr}.scoreboard-table{border-radius:var(--radius-md)}.scoreboard-table td,.scoreboard-table th{font-size:.875rem;padding:var(--space-sm)}.team-logo-small{height:24px;width:24px}}@media (max-width:640px){.scoreboard h2{font-size:1.5rem}.leader-card{padding:var(--space-md)}.leader-medal{font-size:2rem}.scoreboard-table{font-size:.75rem}.scoreboard-table td:nth-child(3),.scoreboard-table td:nth-child(4),.scoreboard-table th:nth-child(3),.scoreboard-table th:nth-child(4){display:none}}@media print{.scoreboard{background:#fff;color:#000}.scoreboard h2{color:#000;text-shadow:none}.leaders-grid{display:none}.scoreboard-table{border:1px solid #ccc;box-shadow:none}.live-indicator{display:none}}@media (prefers-contrast:high){.scoreboard{background:#000}.scoreboard-table{background:#fff;border:2px solid #fff}.leader-card{border-width:4px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}ol,ul{list-style:none}button{background:none;border:none;cursor:pointer;padding:0}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}:focus{outline:2px solid #007bff;outline-offset:2px}.js-focus-visible :focus:not(.focus-visible){outline:none}@media print{*{background:#0000!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}}
/*# sourceMappingURL=main.54193959.css.map*/