:root{--bg-primary:#0c0c11;--bg-secondary:#0f0f16;--bg-card:#1a1a24;--bg-panel:#14141c;--bg-elevated:#1f1f2e;--color-blue:#3b82f6;--color-blue-light:#60a5fa;--color-blue-bg:#3b82f61f;--color-red:#ef4444;--color-red-light:#f87171;--color-red-bg:#ef44441f;--accent:#e8516a;--accent-light:#f07a8c;--accent-bg:#e8516a24;--accent-glow:#e8516a4d;--color-green:#34d399;--color-orange:#fb923c;--color-yellow:#fbbf24;--color-text:#f0f0f5;--color-text-dim:#7c7c9a;--color-text-sub:#a0a0b8;--color-border:#ffffff12;--color-border-hover:#ffffff24;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-mono:"SF Mono","JetBrains Mono","Fira Code","Courier New",monospace;--text-2xs:9px;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--text-4xl:36px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-black:900;--leading-none:1;--leading-tight:1.2;--leading-normal:1.5;--radius-sm:4px;--radius:8px;--radius-lg:14px;--radius-xl:20px;--radius-full:9999px;--shadow-sm:0 1px 4px #0000004d;--shadow-card:0 2px 16px #0006;--shadow-glow:0 0 20px var(--accent-glow);--z-base:0;--z-dropdown:10;--z-sticky:50;--z-modal:1000;--z-tooltip:1100;--transition-fast:0.12s ease;--transition-base:0.15s ease;--transition-slow:0.3s ease}*{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100%;overflow:hidden}body.page-scrollable,body.page-scrollable #root,html:has(body.page-scrollable){height:auto;min-height:100%;overflow:auto}body{-webkit-font-smoothing:antialiased;background-color:var(--bg-primary);color:var(--color-text);font-family:var(--font-sans);font-size:14px}.app-container{display:grid;grid-template-rows:auto 1fr;height:100vh;overflow:hidden}.main-content{grid-gap:1px;background:var(--color-border);display:grid;gap:1px;grid-template-columns:1fr 1fr;min-height:0;overflow:hidden}.app-container.dual-mode .main-content{background:var(--bg-primary);grid-template-columns:1fr}.video-section{background:#000;display:flex;flex-direction:column;overflow:hidden}.analysis-section{background:var(--bg-primary);display:flex;min-height:0;overflow:hidden}.analysis-panel{grid-gap:1px;background:var(--color-border);display:grid;gap:1px;grid-template-columns:1fr 1.1fr .9fr 1fr 1.2fr;min-height:0;overflow:hidden;width:100%}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:5px;padding:7px 14px;-webkit-user-select:none;user-select:none}.header-top{gap:10px;justify-content:space-between}.header-scoreboard,.header-top{align-items:center;display:flex}.header-scoreboard{flex:1 1;gap:6px;justify-content:center}.athlete-name{border-radius:var(--radius-lg);font-size:12px;font-weight:700;letter-spacing:.8px;max-width:160px;overflow:hidden;padding:4px 14px;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.athlete-name.blue{background:linear-gradient(135deg,#1d4ed8,#3b82f6);box-shadow:0 2px 8px #3b82f64d;color:#fff}.athlete-name.red{background:linear-gradient(135deg,#b91c1c,#ef4444);box-shadow:0 2px 8px #ef44444d;color:#fff}.score-display{font-family:var(--font-mono);font-size:32px;font-weight:900;letter-spacing:-1px;min-width:64px;padding:0 16px;text-align:center}.score-display.blue{color:var(--color-blue-light)}.score-display.red{color:var(--color-red-light)}.timer-display{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);font-family:var(--font-mono);font-size:24px;font-weight:700;letter-spacing:1px;min-width:110px;padding:4px 18px;text-align:center;transition:all .2s}.timer-display.running{border-color:#34d39959;box-shadow:0 0 12px #34d39926;color:var(--color-green)}.header-controls{align-items:center;display:flex;gap:5px}.header-bottom{gap:8px;justify-content:space-between}.header-bottom,.round-selector{align-items:center;display:flex}.round-selector{gap:3px}.round-btn{background:#0000;border:1px solid var(--color-border);border-radius:20px;color:var(--color-text-dim);cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.3px;padding:3px 11px;transition:all .15s}.round-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-sub)}.round-btn.active{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.event-info{color:var(--color-text-dim);font-size:11px;letter-spacing:.3px;text-align:center}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:4px;justify-content:center;letter-spacing:.2px;line-height:1;min-height:30px;padding:6px 14px;transition:all .15s ease;white-space:nowrap}.btn:hover{filter:brightness(1.1)}.btn:active{transform:scale(.96)}.btn:disabled{cursor:not-allowed;filter:none;opacity:.35;transform:none}.btn-primary{background:var(--color-blue);color:#fff}.btn-danger{background:var(--color-red);color:#fff}.btn-success{background:var(--color-green);color:#000}.btn-warning{background:var(--color-orange);color:#000}.btn-secondary{background:var(--bg-elevated);color:var(--color-text-sub)}.btn-ghost,.btn-secondary{border-color:var(--color-border)}.btn-ghost{background:#0000;color:var(--color-text-dim)}.btn-ghost:hover{border-color:var(--color-border-hover);color:var(--color-text)}.btn-sm{font-size:11px;min-height:26px;padding:4px 10px}.btn-lg{font-size:15px;min-height:44px;padding:10px 22px}.btn-xl{font-size:17px;font-weight:700;min-height:52px;padding:14px 26px}.btn-block{width:100%}.toggle-group{display:flex;flex-wrap:wrap;gap:3px}.toggle-btn{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;font-size:12px;font-weight:600;min-height:32px;padding:6px 10px;transition:all .15s}.toggle-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text-sub)}.toggle-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.toggle-btn.selected.red-theme{background:var(--color-red);border-color:var(--color-red);box-shadow:0 2px 8px #ef44444d}.panel{background:var(--bg-panel);display:flex;flex-direction:column;min-height:0;overflow:hidden}.panel-header{background:var(--bg-secondary);border-bottom:1px solid var(--color-border);color:var(--color-text-dim);flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:1.2px;padding:7px 12px;text-transform:uppercase}.panel-body{flex:1 1;gap:8px;overflow-y:auto;padding:10px}.panel-body,.panel-section{display:flex;flex-direction:column}.panel-section{gap:4px}.panel-label{color:var(--color-text-dim);font-size:10px}.athlete-select-btn,.panel-label{font-weight:700;letter-spacing:1px;text-transform:uppercase}.athlete-select-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;font-size:13px;gap:2px;justify-content:center;min-height:56px;padding:14px 8px;transition:all .18s;width:100%}.athlete-select-btn.blue{background:var(--color-blue-bg);border-color:#3b82f640;color:var(--color-blue-light)}.athlete-select-btn.red{background:var(--color-red-bg);border-color:#ef444440;color:var(--color-red-light)}.athlete-select-btn.selected.blue{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-color:var(--color-blue);box-shadow:0 4px 16px #3b82f666;color:#fff}.athlete-select-btn.selected.red{background:linear-gradient(135deg,#b91c1c,#ef4444);border-color:var(--color-red);box-shadow:0 4px 16px #ef444466;color:#fff}.athlete-name-label{font-size:10px;font-weight:400;letter-spacing:0;opacity:.75;text-transform:none}.penalty-counter{align-items:center;display:flex;gap:6px;justify-content:center}.penalty-count{font-family:var(--font-mono);font-size:18px;font-weight:700;min-width:28px;text-align:center}.penalty-count.blue{color:var(--color-blue-light)}.penalty-count.red{color:var(--color-red-light)}.technique-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(2,1fr)}.technique-btn{align-items:center;background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-sub);cursor:pointer;display:flex;flex-direction:column;font-size:11px;gap:2px;justify-content:center;min-height:46px;padding:8px 4px;text-align:center;transition:all .15s}.technique-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text)}.technique-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 10px var(--accent-glow);color:#fff}.technique-abbr{font-size:15px;font-weight:700}.technique-name{font-size:9px;opacity:.75}.action-type-grid{display:flex;flex-direction:column;gap:4px}.action-type-btn{align-items:center;background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;display:flex;font-size:11px;font-weight:600;gap:8px;min-height:36px;padding:8px 10px;text-align:left;transition:all .15s;width:100%}.action-type-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text-sub)}.action-type-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 10px var(--accent-glow);color:#fff}.action-type-abbr{font-family:var(--font-mono);font-size:13px;font-weight:700;min-width:20px;opacity:.85}.points-display{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;padding:14px 12px;position:relative;text-align:center}.points-number{color:var(--color-green);font-family:var(--font-mono);font-size:56px;font-weight:900;line-height:1;text-shadow:0 0 20px #34d3994d}.points-number.zero{color:var(--color-text-dim);text-shadow:none}.points-label{color:var(--color-text-dim);font-size:10px;margin-top:4px}.confirm-btn,.points-label{letter-spacing:1px;text-transform:uppercase}.confirm-btn{background:linear-gradient(135deg,#c73558,var(--accent));border:none;border-radius:var(--radius-lg);box-shadow:0 4px 16px var(--accent-glow);color:#fff;cursor:pointer;font-size:14px;font-weight:700;min-height:50px;padding:14px;transition:all .18s;width:100%}.confirm-btn:hover:not(:disabled){box-shadow:0 6px 20px var(--accent-glow);filter:brightness(1.1);transform:translateY(-1px)}.confirm-btn:disabled{background:var(--bg-elevated);box-shadow:none;color:var(--color-text-dim);cursor:not-allowed;transform:none}.cancel-btn{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;font-size:12px;min-height:34px;padding:8px;transition:all .15s;width:100%}.cancel-btn:hover{background:var(--color-red-bg);border-color:#ef444466;color:var(--color-red-light)}.timeline-list{display:flex;flex:1 1;flex-direction:column;gap:3px;overflow-y:auto}.timeline-item{align-items:flex-start;border:1px solid #0000;border-radius:var(--radius);display:flex;font-size:11px;gap:6px;line-height:1.4;padding:6px 8px;transition:background .12s}.timeline-item.blue{background:#3b82f612;border-color:#3b82f626}.timeline-item.red{background:#ef444412;border-color:#ef444426}.timeline-time{color:var(--color-text-dim);flex-shrink:0;font-family:var(--font-mono);font-size:10px;padding-top:1px;white-space:nowrap}.timeline-content{flex:1 1}.timeline-athlete{font-size:10px;font-weight:700;text-transform:uppercase}.timeline-athlete.blue{color:var(--color-blue-light)}.timeline-athlete.red{color:var(--color-red-light)}.timeline-details{color:var(--color-text-dim);font-size:10px}.timeline-points{flex-shrink:0;font-family:var(--font-mono);font-size:12px;font-weight:700;white-space:nowrap}.timeline-points.green{color:var(--color-green)}.timeline-points.orange{color:var(--color-orange)}.timeline-points.red{color:var(--color-red-light)}.timeline-delete{background:#0000;border:none;color:var(--color-text-dim);cursor:pointer;flex-shrink:0;font-size:11px;opacity:.4;padding:0 2px;transition:opacity .15s}.timeline-delete:hover{color:var(--color-red);opacity:1}.stats-section{border-top:1px solid var(--color-border);flex-shrink:0;max-height:45%;overflow-y:auto;padding:8px}.stats-athlete{margin-bottom:8px}.stats-athlete-header{border-radius:20px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.8px;margin-bottom:4px;padding:2px 8px;text-transform:uppercase}.stats-athlete-header.blue{background:var(--color-blue-bg);color:var(--color-blue-light)}.stats-athlete-header.red{background:var(--color-red-bg);color:var(--color-red-light)}.stats-row{align-items:center;display:flex;font-size:11px;justify-content:space-between;padding:1px 0}.stats-label{color:var(--color-text-dim)}.stats-value{font-family:var(--font-mono);font-weight:600}.video-player{background:#000;display:flex;flex-direction:column;height:100%;overflow:hidden}.video-source-selector{background:var(--bg-secondary);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;gap:4px;padding:6px}.video-container{align-items:center;background:#000;display:flex;flex:1 1;justify-content:center;min-height:0;position:relative}.video-container iframe,.video-container video{height:100%;object-fit:contain;width:100%}.video-controls{background:var(--bg-secondary);border-top:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;gap:5px;padding:6px 10px}.video-controls-row{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.video-progress{background:var(--bg-elevated);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;height:14px;margin:4px 0;position:relative;width:100%}.video-progress-bar{background:var(--accent);border-radius:2px;height:100%;pointer-events:none;transition:width .1s}.video-time{color:var(--color-text-dim);font-family:var(--font-mono);font-size:11px;white-space:nowrap}.url-input{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:12px;padding:6px 10px;transition:border-color .15s;width:100%}.url-input:focus{border-color:var(--accent);outline:none}.url-input-row{background:var(--bg-secondary);border-bottom:1px solid var(--color-border);display:flex;flex-shrink:0;gap:4px;padding:6px}.drop-zone{align-items:center;border:1px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-dim);cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-size:14px;gap:12px;justify-content:center;margin:8px;padding:24px;transition:all .2s}.drop-zone.drag-over,.drop-zone:hover{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-light)}.drop-zone-icon{font-size:36px}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:0 24px 60px #000000b3;max-height:90vh;max-width:560px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:18px 22px}.modal-title{color:var(--color-text);font-size:18px;font-weight:700;letter-spacing:-.3px}.modal-body{display:flex;flex-direction:column;gap:16px;padding:22px}.modal-footer{border-top:1px solid var(--color-border);display:flex;gap:8px;justify-content:flex-end;padding:16px 22px}.form-group{display:flex;flex-direction:column;gap:5px}.form-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.form-label{color:var(--color-text-dim);font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase}.form-input{background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font-size:14px;padding:9px 12px;transition:border-color .15s}.form-input:focus{border-color:var(--accent);outline:none}.form-input.blue-accent{border-left:3px solid var(--color-blue)}.form-input.red-accent{border-left:3px solid var(--color-red)}.athletes-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.biomech-group{display:flex;flex-direction:column;gap:3px}.biomech-options{grid-gap:3px;display:grid;gap:3px;grid-template-columns:1fr 1fr}.dual-toggle{align-items:center;display:flex;font-size:12px;gap:6px}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}::-webkit-scrollbar-thumb:hover{background:#fff3}.separator{background:var(--color-border);height:1px;margin:2px 0}.text-blue{color:var(--color-blue-light)}.text-red{color:var(--color-red-light)}.text-green{color:var(--color-green)}.text-dim{color:var(--color-text-dim)}.text-center{text-align:center}.fw-bold{font-weight:700}.font-mono{font-family:var(--font-mono)}.checkbox-row{align-items:center;cursor:pointer;display:flex;font-size:12px;gap:6px}.checkbox-row input[type=checkbox]{accent-color:var(--accent);cursor:pointer;height:14px;width:14px}select.form-input option{background:var(--bg-card);color:var(--color-text)}.mode-selector{align-items:center;display:flex;gap:3px}.mode-btn{background:#0000;border:1px solid var(--color-border);border-radius:20px;color:var(--color-text-dim);cursor:pointer;font-size:10px;font-weight:600;letter-spacing:.2px;line-height:1.4;padding:3px 10px;transition:all .15s;white-space:nowrap}.mode-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-sub)}.mode-btn.active{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.ipad-instructions{align-items:center;display:flex;justify-content:center;overflow-y:auto;padding:40px 24px}.ipad-instructions-card{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);max-width:640px;padding:34px 38px;width:100%}.ipad-instructions-card h2{color:var(--color-text);font-size:20px;font-weight:700;letter-spacing:-.3px;margin-bottom:8px}.instruction-step{align-items:flex-start;background:#ffffff08;border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:16px;margin:20px 0;padding:16px}.step-num{align-items:center;background:linear-gradient(135deg,#c73558,var(--accent));border-radius:50%;box-shadow:0 2px 8px var(--accent-glow);color:#fff;display:flex;flex-shrink:0;font-size:15px;font-weight:700;height:32px;justify-content:center;min-width:32px;width:32px}.step-content{flex:1 1}.step-title{color:var(--color-text);font-size:14px;font-weight:600;margin-bottom:6px}.step-url{background:#00000059;border:1px solid #67e8f926;border-radius:var(--radius);color:#67e8f9;cursor:text;font-family:var(--font-mono);font-size:12px;padding:5px 10px;-webkit-user-select:all;user-select:all;word-break:break-all}.instruction-note{background:var(--accent-bg);border:1px solid #e8516a33;border-radius:var(--radius-lg);color:var(--color-text-sub);font-size:13px;line-height:1.6;margin-top:20px;padding:12px 16px}.comand-waiting{align-items:center;background:var(--bg-primary);color:var(--color-text);display:flex;flex-direction:column;gap:12px;height:100vh;justify-content:center;padding:24px;text-align:center}.comand-waiting-icon{font-size:52px;margin-bottom:8px}.comand-waiting-title{font-size:22px;font-weight:700;letter-spacing:-.3px}.comand-waiting-sub{color:var(--color-text-sub);font-size:15px}.comand-waiting-hint{color:var(--color-text-dim);font-size:13px;line-height:1.6;max-width:380px}.comand-waiting-error{color:var(--color-red);font-size:13px}.comand-spinner{animation:spin .9s linear infinite;border:3px solid #e8516a26;border-radius:50%;border-top:3px solid var(--accent);height:36px;margin-top:16px;width:36px}@keyframes spin{to{transform:rotate(1turn)}}.touch-mode{-webkit-tap-highlight-color:transparent}.touch-mode .btn{font-size:15px;min-height:48px;min-width:48px;padding:10px 14px}.touch-mode .btn-sm{font-size:14px;min-height:44px;min-width:44px;padding:8px 12px}.touch-mode .btn-lg{font-size:17px;min-height:56px;min-width:56px;padding:12px 18px}@media (hover:none){.touch-mode .btn:hover{filter:none}.touch-mode .toggle-btn:hover{background:var(--bg-card)}.touch-mode .mode-btn:hover,.touch-mode .toggle-btn:hover{border-color:var(--color-border);color:var(--color-text-dim)}}.touch-mode .toggle-btn{font-size:14px;min-height:44px;min-width:44px;padding:8px 12px}.touch-mode .panel-title{font-size:14px;padding:10px 12px}.touch-mode .panel-body{font-size:14px;padding:10px}.touch-mode .toggle-group{gap:6px}.touch-mode .round-btn{font-size:14px;min-height:44px;min-width:44px;padding:6px 14px}.comand-header .header-top{flex-wrap:wrap;gap:6px}.comand-header .athlete-name{font-size:14px;max-width:120px}.comand-header .score-display{font-size:28px;padding:2px 10px}.comand-header .timer-display{font-size:22px;min-width:90px;padding:2px 10px}@media screen and (max-width:1366px) and (hover:none){.touch-mode .main-content{grid-template-columns:1fr!important}}.analysis-panel-v2{grid-gap:1px;background:var(--color-border);display:grid;gap:1px;grid-template-columns:1fr 300px;min-height:0;overflow:hidden;width:100%}.ac-composer{background:var(--bg-primary);gap:6px;outline:none;overflow-y:auto;padding:8px}.ac-composer,.ac-step{display:flex;flex-direction:column}.ac-step{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:8px;padding:10px 12px}.ac-step-label{color:var(--color-text-dim);display:flex;gap:6px;letter-spacing:1px;text-transform:uppercase}.ac-step-label,.ac-step-num{align-items:center;font-size:10px;font-weight:700}.ac-step-num{background:var(--accent);border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;width:18px}kbd{align-items:center;background:var(--bg-elevated);border:1px solid var(--color-border);border-radius:4px;display:inline-flex;justify-content:center;line-height:1.5;padding:1px 5px}.ac-kbd-hint,kbd{color:var(--color-text-dim);font-family:var(--font-mono);font-size:9px}.ac-kbd-hint{margin-left:auto;opacity:.7}.ac-athlete-row{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.ac-athlete-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:2px;justify-content:center;min-height:58px;padding:10px 8px;position:relative;transition:all .15s}.ac-athlete-btn.blue{background:var(--color-blue-bg);border-color:#3b82f640;color:var(--color-blue-light)}.ac-athlete-btn.red{background:var(--color-red-bg);border-color:#ef444440;color:var(--color-red-light)}.ac-athlete-btn.blue.selected{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-color:var(--color-blue);box-shadow:0 4px 16px #3b82f666;color:#fff}.ac-athlete-btn.red.selected{background:linear-gradient(135deg,#b91c1c,#ef4444);border-color:var(--color-red);box-shadow:0 4px 16px #ef444466;color:#fff}.ac-athlete-key{font-family:var(--font-mono);font-size:9px;opacity:.5;position:absolute;right:8px;top:5px}.ac-athlete-color{font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.ac-athlete-name{font-size:10px;font-weight:400;opacity:.75}.ac-action-type-row{display:flex;flex-wrap:wrap;gap:4px}.ac-type-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:1px;min-width:40px;padding:5px 10px;transition:all .13s}.ac-type-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text-sub)}.ac-type-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.ac-type-abbr{font-size:13px;font-weight:700}.ac-type-label{font-size:8px;line-height:1.2;opacity:.6;text-align:center}.ac-technique-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(4,1fr)}.ac-tech-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-sub);cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:48px;padding:6px 4px;position:relative;transition:all .13s}.ac-tech-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text)}.ac-tech-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.ac-tech-abbr{font-size:13px;font-weight:700}.ac-tech-name{font-size:8px;line-height:1.2;opacity:.7;text-align:center}.ac-tech-key{font-family:var(--font-mono);font-size:8px;margin-top:1px;opacity:.4}.ac-tech-btn.selected .ac-tech-key{opacity:.6}.ac-custom-input{background:var(--bg-panel);border:1px solid var(--accent);border-radius:var(--radius);color:var(--color-text);font-size:13px;padding:6px 10px;width:100%}.ac-custom-input:focus{outline:none}.ac-biomech-toggle{background:#0000;border:1px dashed var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;font-size:11px;padding:5px 10px;text-align:left;transition:all .13s;width:100%}.ac-biomech-toggle:hover{border-color:var(--color-border-hover);color:var(--color-text-sub)}.ac-biomech{background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);display:flex;flex-direction:column;gap:6px;padding:8px}.ac-biomech-row{align-items:center;display:flex;gap:8px}.ac-biomech-label{color:var(--color-text-dim);font-size:10px;font-weight:600;letter-spacing:.5px;min-width:60px;text-transform:uppercase}.ac-biomech-opts{display:flex;flex-wrap:wrap;gap:3px}.ac-biomech-btn{background:#0000;border:1px solid var(--color-border);border-radius:20px;color:var(--color-text-dim);cursor:pointer;font-size:11px;font-weight:500;padding:4px 10px;transition:all .12s}.ac-biomech-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-sub)}.ac-biomech-btn.selected{background:var(--accent);border-color:var(--accent);color:#fff}.ac-step-outcome{gap:8px}.ac-outcome-row{align-items:flex-start;display:flex;gap:8px}.ac-outcome-col{display:flex;flex:1 1;flex-direction:column;gap:4px}.ac-outcome-col-pts{align-items:center;flex:0 0 auto;min-width:64px}.ac-outcome-sublabel{color:var(--color-text-dim);font-size:10px;font-weight:700;letter-spacing:.8px;margin-bottom:2px;text-transform:uppercase}.ac-outcome-btn{align-items:center;background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-sub);cursor:pointer;display:flex;font-size:12px;font-weight:600;justify-content:space-between;padding:7px 10px;transition:all .13s}.ac-outcome-btn:hover{background:var(--bg-elevated);border-color:var(--color-border-hover);color:var(--color-text)}.ac-outcome-btn.selected{background:var(--accent);border-color:var(--accent);box-shadow:0 2px 8px var(--accent-glow);color:#fff}.ac-outcome-btn.disabled{cursor:not-allowed;opacity:.28}.ac-outcome-keys{align-items:center;color:inherit;display:flex;font-size:9px;gap:2px;opacity:.55}.ac-clash-note{color:var(--color-orange);font-size:10px;padding:2px 0}.ac-pts-number{color:var(--color-green);font-family:var(--font-mono);font-size:42px;font-weight:900;line-height:1;text-shadow:0 0 16px #34d3994d}.ac-pts-number.zero{color:var(--color-text-dim);text-shadow:none}.ac-pts-label{color:var(--color-text-dim);font-size:9px;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.ac-bonus-row{align-items:center;color:var(--color-text-dim);cursor:pointer;display:flex;font-size:11px;gap:4px}.ac-bonus-row input{accent-color:var(--accent)}.ac-validation{color:var(--color-text-dim);display:flex;flex-wrap:wrap;font-size:10px;gap:6px;padding:4px 0}.ac-validation span{opacity:.7}.ac-action-btns{display:flex;flex-direction:column;gap:4px}.ac-confirm-btn{align-items:center;background:linear-gradient(135deg,#c73558,var(--accent));border:none;border-radius:var(--radius-lg);box-shadow:0 4px 16px var(--accent-glow);color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;letter-spacing:.8px;padding:13px;text-transform:uppercase;transition:all .18s;width:100%}.ac-confirm-btn:hover:not(:disabled){box-shadow:0 6px 20px var(--accent-glow);filter:brightness(1.1);transform:translateY(-1px)}.ac-confirm-btn:disabled{background:var(--bg-elevated);box-shadow:none;color:var(--color-text-dim);cursor:not-allowed;transform:none}.ac-cancel-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;display:flex;font-size:12px;gap:6px;justify-content:center;padding:7px;transition:all .13s;width:100%}.ac-cancel-btn:hover{background:var(--color-red-bg);border-color:#ef444459;color:var(--color-red-light)}.ac-seq-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-dim);cursor:pointer;display:flex;font-size:12px;gap:6px;justify-content:center;padding:7px;transition:all .13s;width:100%}.ac-seq-btn:hover{border-color:#fbbf2466;color:#fbbf24}.ac-seq-btn.active{background:#fbbf2426;border-color:#fbbf24;box-shadow:0 0 8px #fbbf244d;color:#fbbf24;font-weight:600}.ac-penalties{gap:6px}.ac-penalty-select{background:var(--bg-panel);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-sub);font-size:11px;padding:5px 8px;width:100%}.ac-penalty-row{align-items:center;display:flex;gap:8px}.ac-penalty-athlete{flex:1 1;font-size:11px;font-weight:700;letter-spacing:.5px;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.ac-penalty-athlete.blue{color:var(--color-blue-light)}.ac-penalty-athlete.red{color:var(--color-red-light)}.ac-pen-btn{align-items:center;background:var(--bg-elevated);border:1px solid var(--color-border);border-radius:50%;color:var(--color-text-sub);cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;line-height:1;transition:all .12s;width:28px}.ac-pen-btn:hover{filter:brightness(1.2)}.ac-pen-btn-add.blue{background:var(--color-blue-bg);border-color:#3b82f64d;color:var(--color-blue-light)}.ac-pen-btn-add.red{background:var(--color-red-bg);border-color:#ef44444d;color:var(--color-red-light)}.ac-pen-count{font-family:var(--font-mono);font-size:16px;font-weight:700;min-width:24px;text-align:center}.ac-pen-count.blue{color:var(--color-blue-light)}.ac-pen-count.red{color:var(--color-red-light)}.btn-accent{background:var(--accent);border-color:#0000;color:#fff}.ds-section-label{color:var(--color-text-dim);font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.ds-card{background:var(--bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.ds-empty-state{color:var(--color-text-dim);font-size:13px;padding:36px 20px;text-align:center}.ds-stat-row{display:flex;gap:12px;margin-bottom:24px}.rp-panel{background:var(--bg-panel);border:1px solid var(--color-border);border-radius:8px;margin-bottom:20px;padding:16px}
/*# sourceMappingURL=main.b153b50d.css.map*/