@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,700;12..96,800&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-display: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Geist", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Geist Mono", "SF Mono", "Fira Code", monospace;--bg-primary: #0E0F2C;--bg-secondary: #1f1f3e;--bg-tertiary: #2a2a52;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .75);--text-muted: rgba(255, 255, 255, .5);--border-strong: rgba(255, 255, 255, .25);--border-subtle: rgba(255, 255, 255, .1);--accent-primary: #f5665d;--accent-secondary: #36309e;--accent-tertiary: #817aff;--status-success: #5BAE5B;--status-warning: #F0A433;--status-error: #FF3F5F;--status-info: #817aff;--gold: #ffd700;--silver: #c0c0c0;--bronze: #cd7f32;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-none: 0;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--text-primary);background:var(--bg-primary);min-height:100vh}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;letter-spacing:-.02em}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}h4{font-size:1.25rem}p{margin-bottom:var(--space-md)}code,pre{font-family:var(--font-mono)}a{color:var(--accent-primary);text-decoration:none;transition:color var(--duration-fast) ease}a:hover{color:var(--accent-tertiary)}input,button,textarea,select{font-family:inherit;font-size:inherit;border-radius:var(--radius-sm)}input:focus,button:focus,textarea:focus,select:focus{outline:none}button{cursor:pointer;border:none;background:none}::selection{background:var(--accent-primary);color:var(--bg-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--accent-secondary);border:2px solid var(--bg-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-tertiary)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media print{body{background:#fff;color:#000}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);position:relative;overflow:hidden;padding:2rem}.login-bg-shapes{position:absolute;inset:0;pointer-events:none;z-index:0}.shape{position:absolute;border:3px solid var(--accent-primary)}.shape-1{width:600px;height:600px;top:-200px;right:-200px;border-radius:50%;border-width:2px;border-style:dashed;opacity:.15}.shape-2{width:400px;height:400px;bottom:-100px;left:-100px;background:var(--accent-primary);opacity:.05;border:none;transform:rotate(45deg)}.shape-3{width:200px;height:200px;top:20%;left:10%;border-color:var(--accent-secondary);opacity:.1}.grid-overlay{position:absolute;inset:0;background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);background-size:60px 60px;opacity:.3}.login-container{position:relative;z-index:1;width:100%;max-width:440px;background:var(--bg-secondary);border:3px solid var(--text-primary);box-shadow:8px 8px 0 0 var(--accent-primary),16px 16px 0 0 var(--bg-tertiary)}.login-header{padding:3rem 2.5rem 2rem;border-bottom:3px solid var(--text-primary);text-align:center}.logo-mark{display:inline-flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:var(--accent-primary)}.login-header h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,2.5rem);font-weight:800;letter-spacing:-.02em;margin:0;color:var(--text-primary)}.tagline{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-top:.75rem}.login-form{padding:2.5rem}.form-field{margin-bottom:1.5rem}.form-field label{display:block;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.15em;color:var(--text-muted);margin-bottom:.75rem;font-weight:600}.form-field input{width:100%;padding:1rem 1.25rem;font-family:var(--font-body);font-size:1rem;background:var(--bg-primary);border:2px solid var(--border-strong);color:var(--text-primary);transition:all .2s ease}.form-field input::placeholder{color:var(--text-muted);opacity:.5}.form-field input:focus{outline:none;border-color:var(--accent-primary);box-shadow:4px 4px 0 0 var(--accent-primary)}.form-field input:disabled{opacity:.6;cursor:not-allowed}.error-message{font-family:var(--font-mono);font-size:.8rem;color:var(--status-error);background:#ff3f5f26;border:2px solid var(--status-error);padding:.75rem 1rem;margin-bottom:1.5rem;border-radius:var(--radius-sm)}.login-button{width:100%;padding:1.25rem 2rem;font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.05em;background:var(--text-primary);color:var(--bg-primary);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;position:relative;overflow:hidden;transition:all .2s ease}.login-button:hover:not(:disabled){background:var(--accent-primary)}.login-button:disabled{cursor:not-allowed;opacity:.8}.login-button .arrow{font-size:1.25rem;transition:transform .2s ease}.login-button:hover .arrow{transform:translate(4px)}.loading-dots{display:flex;gap:.25rem}.loading-dots span{animation:loadingPulse 1s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes loadingPulse{0%,to{opacity:.3}50%{opacity:1}}.login-footer{padding:1rem 2.5rem;border-top:1px solid var(--border-subtle);display:flex;justify-content:center;gap:1rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.1em}.divider{opacity:.3}@media(max-width:520px){.login-page{padding:1rem}.login-container{box-shadow:4px 4px 0 0 var(--accent-primary)}.login-header{padding:2rem 1.5rem 1.5rem}.login-form{padding:1.5rem}.shape-1,.shape-3{display:none}}.events-page{min-height:100vh;background:var(--bg-primary);position:relative;display:flex;flex-direction:column}.events-bg{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.diagonal-stripe{position:absolute;top:0;right:-50%;width:100%;height:300%;background:repeating-linear-gradient(-45deg,transparent,transparent 80px,var(--border-subtle) 80px,var(--border-subtle) 81px);opacity:.4}.corner-accent{position:absolute;width:200px;height:200px;border:3px solid var(--accent-primary)}.corner-accent.top-left{top:-100px;left:-100px;opacity:.15}.corner-accent.bottom-right{bottom:-100px;right:-100px;border-color:var(--accent-secondary);opacity:.1;transform:rotate(45deg)}.events-header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:3px solid var(--text-primary);background:var(--bg-secondary)}.header-left{display:flex;align-items:center;gap:1rem}.logo-small{display:flex;align-items:center;justify-content:center;color:var(--accent-primary)}.header-title h1{font-family:var(--font-display);font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin:0}.header-right{display:flex;align-items:center;gap:1.5rem}.user-email{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted)}.logout-btn{font-family:var(--font-display);font-size:.85rem;font-weight:700;letter-spacing:.05em;padding:.5rem 1rem;background:transparent;border:2px solid var(--text-primary);color:var(--text-primary);cursor:pointer;transition:all .2s ease}.logout-btn:hover{background:var(--text-primary);color:var(--bg-primary)}.events-content{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.event-lookup{background:var(--bg-secondary);border:3px solid var(--text-primary);padding:3rem;width:100%;max-width:480px;box-shadow:8px 8px 0 0 var(--accent-primary),16px 16px 0 0 var(--bg-tertiary)}.lookup-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.lookup-icon{font-size:2rem;color:var(--accent-primary)}.lookup-header h2{font-family:var(--font-display);font-size:1.5rem;font-weight:700;margin:0}.lookup-form{display:flex;gap:1rem}.input-wrapper{flex:1}.event-input{width:100%;padding:1.25rem 1.5rem;font-family:var(--font-mono);font-size:1.25rem;font-weight:600;letter-spacing:.1em;background:var(--bg-primary);border:3px solid var(--border-strong);color:var(--text-primary);text-transform:uppercase;transition:all .2s ease}.event-input::placeholder{color:var(--text-muted);opacity:.4}.event-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:4px 4px 0 0 var(--accent-primary)}.go-button{padding:1.25rem 2rem;font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:.05em;background:var(--text-primary);color:var(--bg-primary);border:none;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.go-button:hover:not(:disabled){background:var(--accent-primary)}.go-button:disabled{opacity:.4;cursor:not-allowed}.go-button .arrow{font-size:1.25rem;transition:transform .2s ease}.go-button:hover:not(:disabled) .arrow{transform:translate(4px)}.lookup-hint{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);margin-top:1.5rem;letter-spacing:.05em}.events-footer{position:relative;z-index:1;padding:1.5rem 2rem;border-top:1px solid var(--border-subtle);display:flex;justify-content:center;gap:1rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text-muted);letter-spacing:.1em;text-transform:uppercase}.separator{opacity:.3}@media(max-width:600px){.events-header{flex-direction:column;gap:1rem;padding:1rem 1.5rem}.header-right{width:100%;justify-content:space-between}.events-content{padding:1.5rem}.event-lookup{padding:2rem 1.5rem;box-shadow:4px 4px 0 0 var(--accent-primary)}.lookup-form{flex-direction:column}.event-input{font-size:1rem;padding:1rem 1.25rem}.go-button{width:100%;justify-content:center;padding:1rem}}.event-page{min-height:100vh;background:var(--bg-primary);display:flex;flex-direction:column;position:relative}.event-page.loading,.event-page.not-found{display:flex;align-items:center;justify-content:center}.event-bg{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.bg-grid{position:absolute;inset:0;background-image:linear-gradient(var(--border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--border-subtle) 1px,transparent 1px);background-size:40px 40px;opacity:.2}.bg-accent{position:absolute;top:-50%;right:-30%;width:100%;height:200%;background:var(--accent-primary);transform:rotate(-15deg);transition:background-color .5s ease}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-spinner{font-size:3rem;color:var(--accent-primary)}.loading-content span{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);letter-spacing:.1em}.not-found-content{text-align:center}.not-found-icon{font-family:var(--font-display);font-size:6rem;font-weight:800;color:var(--accent-primary);opacity:.3;line-height:1}.not-found-content h2{font-family:var(--font-display);font-size:1.5rem;margin:1rem 0 2rem}.not-found-content button{font-family:var(--font-mono);padding:.75rem 1.5rem;background:transparent;border:2px solid var(--text-primary);color:var(--text-primary);cursor:pointer;transition:all .2s}.not-found-content button:hover{background:var(--text-primary);color:var(--bg-primary)}.event-header{position:relative;z-index:1;padding:1.5rem 2rem;border-bottom:3px solid var(--text-primary);background:var(--bg-secondary);display:flex;align-items:center;gap:2rem}.back-btn{font-family:var(--font-display);font-size:.85rem;font-weight:700;letter-spacing:.05em;padding:.5rem 1rem;background:transparent;border:2px solid var(--text-primary);color:var(--text-primary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.back-btn:hover{background:var(--text-primary);color:var(--bg-primary)}.event-info{flex:1;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.event-id-badge{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;padding:.35rem .75rem;background:var(--accent-primary);color:var(--bg-primary);font-weight:600}.event-header h1{font-family:var(--font-display);font-size:clamp(1.25rem,3vw,1.75rem);font-weight:800;margin:0;flex:1}.event-header .event-date{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted)}.event-content{position:relative;z-index:1;flex:1;display:grid;grid-template-columns:340px 1fr;min-height:0}.panel-header{padding:1.25rem 1.5rem;border-bottom:2px solid var(--border-strong);display:flex;align-items:center;justify-content:space-between;gap:1rem}.panel-header h2{font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.1em;margin:0}.panel-header .count{font-family:var(--font-mono);font-size:.75rem;padding:.25rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-subtle)}.teams-panel{background:var(--bg-secondary);border-right:3px solid var(--text-primary);display:flex;flex-direction:column;overflow:hidden}.teams-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.team-item{width:100%;padding:1.25rem 1.5rem;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;text-align:left;transition:all .2s ease}.team-item:hover{background:var(--bg-tertiary)}.team-item.active{background:var(--bg-primary);border-left:4px solid var(--team-color);padding-left:calc(1.5rem - 4px)}.team-color-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.team-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.team-id{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;color:var(--text-muted)}.team-name{font-family:var(--font-display);font-size:1rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-score{font-family:var(--font-display);font-size:1.1rem;font-weight:700;padding:.25rem .5rem;background:var(--bg-primary);border:2px solid var(--accent-primary);color:var(--accent-primary);min-width:40px;text-align:center}.empty-teams{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--text-muted)}.empty-teams .empty-icon{font-size:2rem;opacity:.5}.empty-teams p{font-family:var(--font-mono);font-size:.8rem}.activities-panel{background:var(--bg-primary);display:flex;flex-direction:column;overflow-y:auto}.selected-team-badge{font-family:var(--font-mono);font-size:.7rem;padding:.35rem .75rem;color:var(--bg-primary);font-weight:600;letter-spacing:.05em}.no-team-selected{flex:1;display:flex;align-items:center;justify-content:center}.no-team-selected p{margin:0}.select-prompt{display:flex;align-items:center;gap:1rem;color:var(--text-muted)}.prompt-icon{font-size:2rem;animation:pointLeft 1s ease-in-out infinite}@keyframes pointLeft{0%,to{transform:translate(0)}50%{transform:translate(-8px)}}.select-prompt p{font-family:var(--font-mono);font-size:.9rem}.activities-loading{flex:1;display:flex;align-items:center;justify-content:center}.loading-dots{font-family:var(--font-mono);font-size:2rem;letter-spacing:.5rem;color:var(--accent-primary)}.activities-content{display:flex;flex-direction:column;overflow-y:auto}.activities-table{width:100%;border-collapse:collapse}.activities-table tr{height:56px}.activities-table thead{position:sticky;top:0;z-index:1}.activities-table th{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.15em;text-align:left;padding:1rem 1.5rem;background:var(--bg-secondary);border-bottom:2px solid var(--border-strong);color:var(--text-muted)}.activities-table td{padding:1rem 1.5rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.col-id{width:140px}.col-id code{font-family:var(--font-mono);font-size:.8rem;padding:.25rem .5rem;background:var(--bg-tertiary);border:1px solid var(--border-subtle)}.col-name{font-family:var(--font-body);font-size:.95rem}.col-type{width:180px}.type-badge{display:inline-block;font-family:var(--font-mono);font-size:.7rem;padding:.3rem .6rem;background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);text-transform:lowercase;letter-spacing:.02em}.col-status{width:160px}.status-badge{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.75rem;padding:.35rem .75rem;text-transform:uppercase;letter-spacing:.05em;border:2px solid}.status-badge.completed{background:#5bae5b26;border-color:var(--status-success);color:var(--status-success)}.status-badge.in_progress{background:#f0a43326;border-color:var(--status-warning);color:var(--status-warning)}.status-badge.active{background:#63b3ed33;border-color:#63b3ed;color:#63b3ed;animation:activePulse 2s ease-in-out infinite}@keyframes activePulse{0%,to{box-shadow:0 0 #63b3ed66}50%{box-shadow:0 0 0 6px #63b3ed00}}.status-active{background:#63b3ed0d}.status-badge.pending{background:var(--bg-tertiary);border-color:var(--border-subtle);color:var(--text-muted)}.status-icon{font-size:.9rem}.activity-summary{display:flex;gap:2rem;padding:1.25rem 1.5rem;background:var(--bg-secondary);border-top:2px solid var(--border-strong);margin-top:auto;flex-shrink:0}.summary-item{display:flex;align-items:baseline;gap:.5rem}.summary-value{font-family:var(--font-display);font-size:1.5rem;font-weight:700}.summary-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase}@media(max-width:900px){.event-content{grid-template-columns:1fr;grid-template-rows:auto 1fr}.teams-panel{border-right:none;border-bottom:3px solid var(--text-primary);max-height:40vh}.teams-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.team-item{border-bottom:none;border-right:1px solid var(--border-subtle)}.team-item.active{border-left:none;border-top:4px solid var(--team-color);padding-left:1.5rem;padding-top:calc(1.25rem - 4px)}}@media(max-width:600px){.event-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.5rem}.event-info{width:100%}.panel-header,.team-item{padding:1rem 1.25rem}.activities-table th,.activities-table td{padding:.75rem 1rem}.col-id,.col-status{width:auto}.activity-summary{flex-wrap:wrap;gap:1rem;padding:1rem 1.25rem}}
