@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Work+Sans:wght@400;500;600;700&display=swap";:root{--primary: #FF6B00;--primary-dark: #E55A00;--primary-light: #FF8533;--secondary: #FFD600;--background: #0A0E14;--surface: #14191F;--surface-light: #1E252E;--text: #FFFFFF;--text-muted: #8B92A0;--success: #00FF94;--danger: #FF3B5C;--border: #2A3240;--font-display: "Bebas Neue", sans-serif;--font-body: "Work Sans", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px rgba(255, 107, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--background);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{min-height:100vh;width:100%}.setup-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--background) 0%,#0F1419 100%)}.setup-container{width:100%;max-width:600px;animation:fadeIn .6s ease-out}.setup-header{text-align:center;margin-bottom:var(--spacing-xl)}.setup-header h1{font-family:var(--font-display);font-size:5rem;letter-spacing:.05em;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-xs);text-shadow:0 0 40px rgba(255,107,0,.2)}.tagline{font-size:1.1rem;color:var(--text-muted);font-weight:500;letter-spacing:.1em;text-transform:uppercase}.setup-content{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-lg);border:1px solid var(--border)}.add-participant-section h2{font-family:var(--font-display);font-size:2rem;letter-spacing:.05em;color:var(--primary);margin-bottom:var(--spacing-md)}.input-row{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.participant-input{flex:1;min-width:200px;padding:var(--spacing-md);font-size:1.1rem;font-family:var(--font-body);background:var(--background);border:2px solid var(--border);border-radius:var(--radius-md);color:var(--text);transition:all .3s ease}.participant-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b001a}.btn-add{padding:var(--spacing-md) var(--spacing-lg);font-size:1.1rem;font-weight:600;font-family:var(--font-body);background:var(--primary);color:var(--text);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.btn-add:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-add:disabled{opacity:.5;cursor:not-allowed}.participants-list h3{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--spacing-md)}.participants-list ul{list-style:none;margin-bottom:var(--spacing-lg)}.participants-list li{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--spacing-xs);font-size:1.1rem;font-weight:500;animation:slideIn .3s ease-out}.participants-list li>span{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-remove{width:32px;height:32px;border-radius:50%;border:none;background:var(--danger);color:var(--text);font-size:1.2rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.btn-remove:hover{transform:scale(1.1);box-shadow:0 0 12px #ff3b5c66}.empty-state{text-align:center;color:var(--text-muted);padding:var(--spacing-xl);font-style:italic}.btn-start-race{width:100%;padding:var(--spacing-lg);font-size:1.5rem;font-weight:700;font-family:var(--font-display);letter-spacing:.1em;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-light) 100%);color:var(--text);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase}.btn-start-race:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow),var(--shadow-lg)}.btn-start-race:disabled{opacity:.5;cursor:not-allowed}.admin-view{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--background) 0%,#0F1419 100%)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border);position:relative}.admin-header h1{font-family:var(--font-display);font-size:3.5rem;letter-spacing:.05em;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-controls{display:flex;gap:var(--spacing-sm)}.admin-footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:2px solid var(--border);display:flex;justify-content:center}.admin-footer .btn-reset{min-width:200px}@media (max-width: 768px){.admin-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.admin-controls,.admin-controls .btn-view-results{width:100%}.admin-footer .btn-reset{width:100%;max-width:none}}.btn-view-results,.btn-reset,.btn-back,.btn-export-all,.btn-export,.btn-rerun{padding:var(--spacing-sm) var(--spacing-lg);font-size:1rem;font-weight:600;font-family:var(--font-body);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.btn-view-results,.btn-export-all{background:var(--success);color:var(--background)}.btn-view-results:hover,.btn-export-all:hover{transform:translateY(-2px);box-shadow:0 0 20px #00ff9466}.btn-rerun{background:var(--primary);color:var(--text)}.btn-rerun:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-export{background:var(--secondary);color:var(--background);font-size:.9rem;padding:var(--spacing-xs) var(--spacing-md)}.btn-export:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 20px #ffd60066}.btn-export:disabled,.btn-export-all:disabled{opacity:.5;cursor:not-allowed}.btn-view-individual{width:100%;margin-top:var(--spacing-sm);padding:var(--spacing-md);font-size:1rem;font-weight:600;font-family:var(--font-body);background:var(--success);color:var(--background);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.btn-view-individual:hover{transform:translateY(-2px);box-shadow:0 0 20px #00ff9466}.btn-reset{background:var(--danger);color:var(--text)}.btn-reset:hover{transform:translateY(-2px);box-shadow:0 0 20px #ff3b5c66}.btn-back{background:var(--surface-light);color:var(--text);border:1px solid var(--border)}.btn-back:hover{background:var(--border)}.participants-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-lg)}.participant-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:2px solid var(--border);box-shadow:var(--shadow-md);animation:slideIn .4s ease-out;transition:all .3s ease;min-height:280px;display:flex;flex-direction:column}.participant-card:hover{border-color:var(--primary);box-shadow:var(--shadow-glow),var(--shadow-md)}.participant-info h2{font-family:var(--font-display);font-size:2.5rem;letter-spacing:.05em;margin-bottom:var(--spacing-md);color:var(--primary);display:flex;align-items:center;gap:var(--spacing-sm)}.participant-info{flex:1;display:flex;flex-direction:column}.participant-emoji{font-size:1.2em;line-height:1;display:inline-block}.participant-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label{font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.stat-value{font-family:var(--font-display);font-size:2rem;letter-spacing:.05em;color:var(--text)}.stat-value.segment-name{font-size:1.3rem;color:var(--primary);min-height:2.6rem;line-height:1.3rem;display:flex;align-items:center}.checkpoint-button{width:100%;min-height:80px;padding:var(--spacing-lg);font-size:1.6rem;font-weight:700;font-family:var(--font-body);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.checkpoint-text{font-size:1.6rem;line-height:1.2}.checkpoint-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#fff3;transform:translate(-50%,-50%);transition:width .6s,height .6s}.checkpoint-button:active:before{width:300px;height:300px}.checkpoint-text{position:relative;z-index:1}.btn-start{background:var(--success);color:var(--background)}.btn-start:hover{transform:translateY(-4px);box-shadow:0 0 30px #00ff9480}.btn-run{background:var(--primary);color:var(--text)}.btn-run:hover:not(.cooldown){transform:translateY(-4px);box-shadow:var(--shadow-glow)}.btn-station{background:var(--secondary);color:var(--background)}.btn-station:hover:not(.cooldown){transform:translateY(-4px);box-shadow:0 0 30px #ffd60080}.btn-finished{background:var(--surface-light);color:var(--text-muted);cursor:not-allowed;border:2px dashed var(--border)}.checkpoint-button.flashing{animation:flash .3s ease-out}@keyframes flash{0%{box-shadow:0 0 #ffffffb3;transform:scale(1)}50%{box-shadow:0 0 30px 10px #fff6;transform:scale(1.05)}to{box-shadow:0 0 #fff0;transform:scale(1)}}.checkpoint-button.cooldown{opacity:.6;cursor:not-allowed;pointer-events:none}.results-view{min-height:100vh;padding:var(--spacing-lg);background:linear-gradient(135deg,var(--background) 0%,#0F1419 100%)}.results-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border)}.participant-selector{margin-bottom:var(--spacing-xl);background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:2px solid var(--border)}.participant-selector label{display:block;font-family:var(--font-display);font-size:1.5rem;letter-spacing:.05em;color:var(--text-muted);margin-bottom:var(--spacing-md)}.selector-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.selector-btn{padding:var(--spacing-md) var(--spacing-lg);font-size:1.1rem;font-weight:600;font-family:var(--font-body);background:var(--background);color:var(--text);border:2px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em;display:flex;align-items:center;gap:var(--spacing-xs)}.selector-btn:hover{border-color:var(--primary);transform:translateY(-2px)}.selector-btn.active{background:var(--primary);border-color:var(--primary);color:var(--text);box-shadow:var(--shadow-glow)}.results-header-bar h1{font-family:var(--font-display);font-size:3.5rem;letter-spacing:.05em;background:linear-gradient(135deg,var(--success) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.results-controls{display:flex;gap:var(--spacing-sm)}.results-container{display:flex;flex-direction:column;gap:var(--spacing-xl)}.results-card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:2px solid var(--border);box-shadow:var(--shadow-md);animation:slideIn .4s ease-out}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border)}.results-header h2{font-family:var(--font-display);font-size:3rem;letter-spacing:.05em;color:var(--primary);display:flex;align-items:center;gap:var(--spacing-sm);word-break:break-word;overflow-wrap:break-word}.results-header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.finished-badge{padding:var(--spacing-xs) var(--spacing-md);background:var(--success);color:var(--background);border-radius:var(--radius-md);font-weight:700;font-size:.9rem;letter-spacing:.1em}.no-data{text-align:center;color:var(--text-muted);padding:var(--spacing-xl);font-style:italic}.totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.total-stat{background:var(--background);border-radius:var(--radius-md);padding:var(--spacing-lg);text-align:center;border:1px solid var(--border)}.total-label{display:block;font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:var(--spacing-xs)}.total-value{display:block;font-family:var(--font-display);font-size:2.5rem;letter-spacing:.05em;color:var(--primary)}.splits-section{margin-bottom:var(--spacing-lg)}.splits-section:last-child{margin-bottom:0}.splits-section h3{font-family:var(--font-display);font-size:2rem;letter-spacing:.05em;color:var(--secondary);margin-bottom:var(--spacing-md)}.splits-table{background:var(--background);border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border)}.splits-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:var(--spacing-md);background:var(--surface-light);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);border-bottom:1px solid var(--border)}.splits-header.combined{grid-template-columns:2fr 1fr 1.5fr}.splits-section:last-child .splits-header{grid-template-columns:2fr 1fr}.split-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;padding:var(--spacing-md);border-bottom:1px solid var(--border);font-size:1.1rem;transition:background .2s ease}.split-row.combined{grid-template-columns:2fr 1fr 1.5fr}.split-row.run{background:#ff6b000d}.split-row.station{background:#ffd6000d}.splits-section:last-child .split-row{grid-template-columns:2fr 1fr}.split-row:last-child{border-bottom:none}.split-row:hover{background:var(--surface-light)}.split-row.run:hover{background:#ff6b001a}.split-row.station:hover{background:#ffd6001a}.split-row span:first-child,.split-name{font-weight:600}.split-time{font-family:var(--font-display);font-size:1.3rem;letter-spacing:.05em}.split-extra{color:var(--text-muted)}.roxzone-mini{font-size:.9rem;margin-left:var(--spacing-sm);color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.setup-header h1{font-size:3.5rem}.admin-header h1,.results-header-bar h1{font-size:2.5rem}.participants-grid{grid-template-columns:1fr}.participant-card{min-width:unset}.totals-grid{grid-template-columns:repeat(2,1fr)}.splits-header,.split-row{font-size:.85rem;padding:var(--spacing-sm)}.splits-header.combined,.split-row.combined{grid-template-columns:1.5fr 1fr 1.2fr}.admin-header,.results-header-bar{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.admin-controls,.results-controls{width:100%;flex-direction:column}.btn-view-results,.btn-reset,.btn-back,.btn-export-all,.btn-export,.btn-rerun{width:100%}.results-header{flex-direction:column;align-items:flex-start}.results-header-actions{width:100%;flex-direction:column}.selector-buttons{flex-direction:column}.selector-btn{width:100%}}@media (max-width: 480px){.setup-header h1{font-size:2.5rem}.totals-grid{grid-template-columns:1fr}.splits-header,.split-row{grid-template-columns:1.5fr 1fr 1fr 1fr;font-size:.75rem}.splits-header.combined,.split-row.combined{grid-template-columns:1.5fr .8fr 1fr;font-size:.75rem}.splits-section:last-child .splits-header,.splits-section:last-child .split-row{grid-template-columns:1.5fr 1fr}.roxzone-mini{display:block;margin-left:0;margin-top:2px}}.help-button{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:50%;background:var(--surface);border:2px solid var(--border);color:var(--text);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:999;box-shadow:var(--shadow-md)}.admin-view .help-button,.results-view .help-button{bottom:20px;right:20px}.help-button:hover{background:var(--primary);border-color:var(--primary);transform:scale(1.1);box-shadow:var(--shadow-glow)}.help-button svg{width:24px;height:24px}.help-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;padding:var(--spacing-lg);animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.help-modal{background:var(--surface);border-radius:var(--radius-lg);max-width:700px;max-height:90vh;overflow-y:auto;padding:var(--spacing-xl);position:relative;border:2px solid var(--border);box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.help-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);width:36px;height:36px;border-radius:50%;background:var(--background);border:1px solid var(--border);color:var(--text-muted);font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;line-height:1}.help-close:hover{background:var(--danger);border-color:var(--danger);color:var(--text);transform:rotate(90deg)}.help-modal h2{font-family:var(--font-display);font-size:2.5rem;letter-spacing:.05em;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:var(--spacing-lg);padding-right:50px}.help-modal h3{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.05em;color:var(--primary);margin-bottom:var(--spacing-sm)}.help-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border)}.help-section:last-of-type{border-bottom:none}.help-section p{color:var(--text);line-height:1.6;margin-bottom:var(--spacing-sm)}.help-section ul,.help-section ol{color:var(--text);line-height:1.8;padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm)}.help-section li{margin-bottom:var(--spacing-xs)}.help-section strong{color:var(--primary);font-weight:600}.help-got-it{width:100%;padding:var(--spacing-md) var(--spacing-lg);margin-top:var(--spacing-lg);font-size:1.1rem;font-weight:700;font-family:var(--font-body);background:var(--primary);color:var(--text);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em}.help-got-it:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-glow)}.help-modal::-webkit-scrollbar{width:8px}.help-modal::-webkit-scrollbar-track{background:var(--background);border-radius:4px}.help-modal::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.help-modal::-webkit-scrollbar-thumb:hover{background:var(--primary)}@media (max-width: 768px){.help-button{top:15px;right:15px;width:44px;height:44px}.help-modal{padding:var(--spacing-lg);max-height:85vh}.help-modal h2{font-size:2rem}.help-modal h3{font-size:1.3rem}}@media (max-width: 480px){.help-modal-overlay{padding:var(--spacing-sm)}.help-modal{padding:var(--spacing-md)}.help-modal h2{font-size:1.8rem}}
