.navbar{z-index:1000;background:0 0;padding:20px 0;transition:all .3s;position:fixed;top:0;left:0;right:0}.navbar--scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);background:#000000f2;padding:16px 0}.navbar__container{justify-content:space-between;align-items:center;max-width:1280px;margin:0 auto;padding:0 24px;display:flex}.navbar__logo{font-family:var(--font-display);letter-spacing:-.5px;align-items:baseline;font-size:1.5rem;font-weight:800;text-decoration:none;display:flex}.navbar__logo-syn{color:var(--color-text-primary)}.navbar__logo-dojo{color:var(--color-accent)}.navbar__logo-arena{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:2px;margin-left:6px;font-size:1rem;font-weight:500}.navbar__links{align-items:center;gap:32px;display:flex}.navbar__link{color:var(--color-text-secondary);font-size:.95rem;font-weight:500;transition:color .2s;position:relative}.navbar__link:hover{color:var(--color-text-primary)}.navbar__link--active{color:var(--color-accent)}.navbar__link--active:after{content:"";background:var(--color-accent);border-radius:1px;height:2px;position:absolute;bottom:-6px;left:0;right:0}.navbar__link--admin{color:#f59e0b}.navbar__link--admin:hover{color:#fbbf24}.navbar__link--admin.navbar__link--active{color:#f59e0b}.navbar__link--admin.navbar__link--active:after{background:#f59e0b}.navbar__btn{border-radius:6px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.navbar__btn--outline{border:1px solid var(--color-text-primary);color:var(--color-text-primary);background:0 0}.navbar__btn--outline:hover{background:var(--color-text-primary);color:var(--color-bg-primary)}.navbar__btn--primary{background:var(--color-accent);border:1px solid var(--color-accent);color:var(--color-bg-primary)}.navbar__btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.navbar__user-menu{align-items:center;gap:16px;display:flex}.navbar__user{color:var(--color-text-primary);border-radius:8px;align-items:center;gap:10px;padding:6px 12px;text-decoration:none;transition:background .2s;display:flex}.navbar__user:hover{background:var(--color-bg-secondary)}.navbar__user-avatar{background:var(--color-accent);width:32px;height:32px;color:var(--color-bg-primary);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.navbar__user-name{font-size:.95rem;font-weight:600}.navbar__user-caret{opacity:.6;margin-left:4px;font-size:.7rem;transition:transform .2s}.navbar__user-dropdown{position:relative}.navbar__user-trigger{cursor:pointer;background:0 0;border:none}.navbar__dropdown-menu{background:var(--color-bg-primary);border:1px solid var(--color-border);opacity:0;visibility:hidden;z-index:100;border-radius:8px;min-width:180px;margin-top:8px;padding:8px 0;transition:all .2s;position:absolute;top:100%;right:0;transform:translateY(-8px);box-shadow:0 4px 12px #00000026}.navbar__user-dropdown:hover .navbar__dropdown-menu,.navbar__user-dropdown:focus-within .navbar__dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.navbar__user-dropdown:hover .navbar__user-caret{transform:rotate(180deg)}.navbar__dropdown-item{text-align:left;width:100%;color:var(--color-text-primary);cursor:pointer;background:0 0;border:none;padding:10px 16px;font-size:.9rem;text-decoration:none;transition:background .15s;display:block}.navbar__dropdown-item:hover{background:var(--color-bg-secondary)}.navbar__dropdown-item--danger{color:#dc2626}.navbar__dropdown-item--danger:hover{background:#fef2f2}.navbar__dropdown-item--admin{color:#f59e0b}.navbar__dropdown-item--admin:hover{background:#f59e0b1a}.navbar__dropdown-divider{background:var(--color-border);height:1px;margin:8px 0}.navbar__badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:700}.navbar__badge--admin{color:#f59e0b;background:#f59e0b33}.navbar__badge--group{color:var(--color-accent);background:#2edaf133}.navbar__mobile-toggle{cursor:pointer;z-index:1001;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.navbar__mobile-toggle span{background:var(--color-text-primary);width:24px;height:2px;transition:all .3s;display:block}.navbar__mobile-toggle--open span:first-child{transform:rotate(45deg)translate(5px,5px)}.navbar__mobile-toggle--open span:nth-child(2){opacity:0}.navbar__mobile-toggle--open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}@media (width<=900px){.navbar__mobile-toggle{display:flex}.navbar__links{background:var(--color-bg-primary);border-left:1px solid var(--color-border);flex-direction:column;align-items:flex-start;gap:8px;width:280px;height:100vh;padding:80px 24px 24px;transition:right .3s;position:fixed;top:0;right:-100%}.navbar__links--open{right:0}.navbar__link{width:100%;padding:12px 0;font-size:1.1rem}.navbar__link--active:after{display:none}.navbar__user-menu{border-top:1px solid var(--color-border);flex-direction:column;align-items:flex-start;gap:12px;width:100%;margin-top:16px;padding-top:16px}.navbar__user{padding:8px 0}.navbar__btn{text-align:center;width:100%}}@media (width<=768px){.navbar__logo-arena{display:none}}.footer{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);margin-top:auto;padding:24px 0 16px}.footer__container{max-width:1280px;margin:0 auto;padding:0 24px}.footer__main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.footer__brand{align-items:center;gap:8px;display:flex}.footer__powered{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px}.footer__logo{font-family:var(--font-display);font-size:14px;font-weight:700}.footer__logo-syn{color:var(--color-text-primary)}.footer__logo-dojo{color:var(--color-accent)}.footer__links{align-items:center;gap:12px;display:flex}.footer__link{color:var(--color-text-secondary);font-size:13px;transition:color .2s}.footer__link:hover{color:var(--color-accent)}.footer__separator{color:var(--color-border);font-size:12px}.footer__bottom{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.footer__copyright{color:var(--color-text-muted);font-size:12px}.footer__version{color:var(--color-text-muted);font-family:monospace;font-size:11px}@media (width<=640px){.footer__main{text-align:center;flex-direction:column}.footer__links{flex-wrap:wrap;justify-content:center}.footer__bottom{text-align:center;flex-direction:column;gap:8px}}.hero-video-container{z-index:0;position:absolute;inset:0;overflow:hidden}.hero-video,.hero-poster{object-fit:cover;width:auto;min-width:100%;height:auto;min-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-video-overlay{background:linear-gradient(#0a0f14b3 0%,#0a0f14d9 50%,#0a0f14f2 100%);position:absolute;inset:0}.hero-video-container:before{content:"";background:var(--color-bg-primary,#0a0f14);z-index:-1;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){.hero-video{display:none}}.home{min-height:100vh}.hero{justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:60px 24px;display:flex;position:relative;overflow:hidden}.hero__bg-grid{z-index:1;pointer-events:none;background-image:linear-gradient(#2edaf108 1px,#0000 1px),linear-gradient(90deg,#2edaf108 1px,#0000 1px);background-size:50px 50px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 20%,#0000 70%);mask-image:radial-gradient(#000 20%,#0000 70%)}.hero__content{text-align:center;z-index:1;max-width:900px;position:relative}.hero__title{letter-spacing:-2px;margin-bottom:24px;font-size:clamp(3rem,8vw,5rem);font-weight:800;line-height:1.1}.hero__title--accent{color:var(--color-accent)}.hero__subtitle{color:var(--color-text-secondary);max-width:600px;margin:0 auto 40px;font-size:1.25rem;line-height:1.7}.hero__actions{justify-content:center;gap:16px;margin-bottom:60px;display:flex}.hero__btn{border-radius:8px;padding:16px 32px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-block}.hero__btn--primary{background:var(--color-accent);color:var(--color-bg-primary);border:2px solid var(--color-accent)}.hero__btn--primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-bg-primary)}.hero__btn--outline{color:var(--color-text-primary);border:2px solid var(--color-text-primary);background:0 0}.hero__btn--outline:hover{background:var(--color-text-primary);color:var(--color-bg-primary)}.hero__stats{justify-content:center;gap:60px;display:flex}.hero__stat{flex-direction:column;align-items:center;display:flex}.hero__stat-value{font-family:var(--font-display);color:var(--color-text-primary);font-size:2.5rem;font-weight:700}.animated-number{transition:color .3s,text-shadow .3s;display:inline-block}.hero__stat-value:has(.animated-number){text-align:center;min-width:80px}.hero__stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.preview{background:var(--color-bg-secondary);padding:80px 24px}.preview__container{grid-template-columns:1fr 1fr;gap:32px;max-width:1280px;margin:0 auto;display:grid}.preview__container--centered{justify-content:center;display:flex}.preview__leaderboard--enhanced{width:100%}.preview__leaderboard,.preview__recent{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:28px}.preview__header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.preview__title{font-size:1.25rem;font-weight:600}.preview__link{color:var(--color-accent);font-size:.9rem}.preview__live{color:#ef4444;letter-spacing:1px;background:#ef444433;border-radius:20px;padding:4px 12px;font-size:.75rem;font-weight:600;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.preview__list{flex-direction:column;gap:12px;display:flex}.preview__item{background:var(--color-bg-secondary);border-radius:10px;align-items:center;gap:16px;padding:16px;transition:background .2s;display:flex}.preview__item:hover{background:var(--color-bg-card-hover)}.preview__rank{width:40px;height:40px;font-family:var(--font-display);background:var(--color-border);border-radius:10px;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.preview__rank[data-rank="1"]{color:#000;background:linear-gradient(135deg,gold 0%,orange 100%)}.preview__rank[data-rank="2"]{color:#000;background:linear-gradient(135deg,silver 0%,#a0a0a0 100%)}.preview__rank[data-rank="3"]{color:#000;background:linear-gradient(135deg,#cd7f32 0%,#b8860b 100%)}.preview__info{flex-direction:column;flex:1;gap:2px;display:flex}.preview__name{font-size:1rem;font-weight:600}.preview__score{color:var(--color-text-muted);font-size:.85rem}.preview__trend{font-size:1.2rem;font-weight:700}.preview__trend--up{color:#22c55e}.preview__trend--down{color:#ef4444}.preview__empty{text-align:center;color:var(--color-text-muted);padding:24px}.preview__item--enhanced{flex-wrap:wrap}.preview__match{align-items:center;gap:16px;margin-left:auto;padding-left:16px;display:flex}.preview__best-time{font-family:var(--font-display);color:var(--color-text-secondary);background:var(--color-bg-secondary);border-radius:6px;padding:4px 10px;font-size:.9rem;font-weight:500}.preview__view-all{text-align:center;background:var(--color-accent);color:var(--color-bg-primary);border-radius:8px;margin-top:20px;padding:12px 24px;font-weight:600;transition:background .2s;display:block}.preview__view-all:hover{background:var(--color-accent-hover);color:var(--color-bg-primary)}.preview__matches{flex-direction:column;gap:12px;display:flex}.match{background:var(--color-bg-secondary);border-radius:10px;justify-content:space-between;align-items:center;padding:16px;transition:background .2s;display:flex}.match:hover{background:var(--color-bg-card-hover)}.match__scenario{color:var(--color-accent);font-size:.9rem;font-weight:600}.match__details{flex-direction:column;align-items:center;gap:2px;display:flex}.match__winner{font-weight:500}.match__score{color:var(--color-text-muted);font-size:.85rem}.match__time{color:var(--color-text-muted);font-size:.8rem}.features{padding:100px 24px}.features__container{max-width:1280px;margin:0 auto}.features__title{text-align:center;margin-bottom:60px;font-size:2.5rem}.features__title span{color:var(--color-accent)}.features__grid{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}.feature{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:16px;padding:32px 24px;transition:all .3s}.feature:hover{border-color:var(--color-accent);transform:translateY(-4px)}.feature__icon{margin-bottom:16px;font-size:2.5rem}.feature__title{margin-bottom:12px;font-size:1.1rem;font-weight:600}.feature__desc{color:var(--color-text-secondary);font-size:.9rem;line-height:1.6}.events-preview{background:linear-gradient(180deg, var(--color-bg-primary) 0%, var(--color-bg-secondary) 100%);padding:60px 24px}.events-preview__container{max-width:1280px;margin:0 auto}.events-preview__header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.events-preview__title{font-size:2rem;font-weight:700}.events-preview__badge{color:var(--color-accent);letter-spacing:.5px;background:#2edaf126;border-radius:20px;padding:6px 16px;font-size:.85rem;font-weight:600}.events-preview__grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;display:grid}.event-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:28px;transition:all .3s}.event-card:hover{border-color:var(--color-accent);transform:translateY(-4px)}.event-card__header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.event-card__name{color:var(--color-text-primary);font-size:1.25rem;font-weight:600}.event-card__participants{color:var(--color-accent);background:#2edaf11a;border-radius:12px;padding:4px 10px;font-size:.8rem}.event-card__description{color:var(--color-text-secondary);margin-bottom:20px;font-size:.9rem;line-height:1.5}.event-card__countdown{margin-bottom:20px}.event-card__countdown-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:.75rem;display:block}.countdown{align-items:center;gap:8px;display:flex}.countdown__unit{background:var(--color-bg-secondary);border-radius:8px;flex-direction:column;align-items:center;min-width:50px;padding:8px 12px;display:flex}.countdown__value{font-family:var(--font-display);color:var(--color-accent);font-size:1.5rem;font-weight:700}.countdown__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.65rem}.countdown__separator{color:var(--color-text-muted);font-size:1.5rem;font-weight:300}.event-card__footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.event-card__scenarios{color:var(--color-text-muted);font-size:.85rem}.event-card__join{color:var(--color-accent);font-size:.85rem;font-weight:600;transition:color .2s}.event-card__join:hover{color:var(--color-accent-hover)}.host-form{background:var(--color-bg-secondary);padding:100px 24px}.host-form__container{max-width:700px;margin:0 auto}.host-form__content{text-align:center}.host-form__title{margin-bottom:16px;font-size:2.5rem;font-weight:700}.host-form__subtitle{color:var(--color-text-secondary);margin-bottom:40px;font-size:1.1rem;line-height:1.7}.host-form__form{flex-direction:column;gap:16px;display:flex}.host-form__row{gap:16px;display:flex}.host-form__input,.host-form__textarea{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:10px;flex:1;padding:16px 20px;font-size:1rem;transition:border-color .2s}.host-form__input::placeholder,.host-form__textarea::placeholder{color:var(--color-text-muted)}.host-form__input:focus,.host-form__textarea:focus{border-color:var(--color-accent);outline:none}.host-form__textarea{resize:vertical;min-height:100px}.host-form__submit{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:10px;padding:16px 32px;font-size:1rem;font-weight:600;transition:background .2s}.host-form__submit:hover:not(:disabled){background:var(--color-accent-hover)}.host-form__submit:disabled{opacity:.6;cursor:not-allowed}.host-form__error{color:#ef4444;text-align:left;background:#ef444426;border:1px solid #ef44444d;border-radius:10px;padding:14px 20px;font-size:.95rem}.host-form__success{text-align:center;background:var(--color-bg-card);border:1px solid #22c55e4d;border-radius:16px;padding:40px}.host-form__success-icon{color:#22c55e;background:#22c55e33;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto 20px;font-size:1.75rem;font-weight:700;display:flex}.host-form__success h3{color:#22c55e;margin-bottom:12px;font-size:1.5rem}.host-form__success p{color:var(--color-text-secondary)}@media (width<=1024px){.features__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.hero__stats{flex-direction:column;gap:24px}.hero__actions{flex-direction:column}.preview__container,.features__grid,.events-preview__grid{grid-template-columns:1fr}.host-form__row{flex-direction:column}.countdown__unit{min-width:40px;padding:6px 8px}.countdown__value{font-size:1.2rem}}.get-syndojo-callout{background:linear-gradient(135deg,#2edaf114 0%,#2edaf105 100%);border-top:1px solid #2edaf126;border-bottom:1px solid #2edaf126;padding:60px 24px}.get-syndojo-callout__container{max-width:1000px;margin:0 auto}.get-syndojo-callout__content{align-items:center;gap:32px;display:flex}.get-syndojo-callout__icon{flex-shrink:0;font-size:3rem}.get-syndojo-callout__text{flex:1}.get-syndojo-callout__title{color:var(--color-text);margin-bottom:8px;font-size:1.75rem;font-weight:700}.get-syndojo-callout__desc{color:var(--color-text-secondary);margin:0;line-height:1.6}.get-syndojo-callout__btn{background:var(--color-accent);color:var(--color-bg);border-radius:10px;flex-shrink:0;padding:14px 28px;font-size:1rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s}.get-syndojo-callout__btn:hover{background:var(--color-accent-hover);transform:translate(4px)}@media (width<=768px){.get-syndojo-callout__content{text-align:center;flex-direction:column}.get-syndojo-callout__btn{text-align:center;width:100%}}.difficulty-badge{background:color-mix(in srgb, var(--badge-color) 15%, transparent);color:var(--badge-color);border:1px solid color-mix(in srgb, var(--badge-color) 30%, transparent);white-space:nowrap;border-radius:9999px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-weight:500;display:inline-flex}.difficulty-badge--sm{padding:.125rem .5rem;font-size:.75rem}.difficulty-badge--md{font-size:.875rem}.difficulty-badge--lg{padding:.375rem .875rem;font-size:1rem}.difficulty-badge__icon{letter-spacing:-2px;font-size:.75em}.difficulty-badge__score{opacity:.7;font-size:.85em}.difficulty-badge--unrated{--badge-color:#6b7280}.difficulty-badge--beginner{--badge-color:#22c55e}.difficulty-badge--intermediate{--badge-color:#3b82f6}.difficulty-badge--advanced{--badge-color:#f59e0b}.difficulty-badge--expert{--badge-color:#ef4444}.difficulty-badge--elite{--badge-color:#8b5cf6}.difficulty-stars{gap:.125rem;display:inline-flex}.difficulty-star{color:#374151;font-size:1rem}.difficulty-star--filled{color:#fbbf24}.difficulty-selector{color:#e5e7eb;cursor:pointer;background:#1f2937;border:1px solid #374151;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem}.difficulty-selector:hover:not(:disabled){border-color:#4b5563}.difficulty-selector:disabled{opacity:.5;cursor:not-allowed}.difficulty-selector:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 2px #3b82f64d}.leaderboard{min-height:calc(100vh - 80px)}.leaderboard__header-compact{background:var(--color-bg-card);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;height:50px;padding:0 24px;display:none}.leaderboard__title-compact{white-space:nowrap;margin:0;font-size:1.25rem;font-weight:700}.leaderboard__filters-compact{flex:1;justify-content:center;gap:12px;display:flex}.leaderboard__select-compact{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:6px;min-width:160px;padding:8px 12px;font-size:.85rem}.leaderboard__select-compact:focus{border-color:var(--color-accent);outline:none}.leaderboard__status-compact{color:var(--color-text-muted);letter-spacing:.5px;align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:flex}.leaderboard__status-compact--live{color:#22c55e}.status-dot{background:var(--color-text-muted);border-radius:50%;width:8px;height:8px}.leaderboard__status-compact--live .status-dot{background:#22c55e;animation:2s infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.9)}}.podium-bar{border-bottom:1px solid var(--color-border);background:linear-gradient(90deg,#ffd7000a,#c0c0c00a,#cd7f320a);justify-content:center;gap:48px;padding:14px 24px;display:none}.podium-bar__item{cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:6px 12px;transition:background .2s;display:flex}.podium-bar__item:hover{background:#ffffff0d}.podium-bar__medal{font-size:1.25rem}.podium-bar__name{color:var(--color-text-primary);font-size:.95rem;font-weight:600}.podium-bar__score{font-family:var(--font-display);color:var(--color-accent);font-size:.95rem;font-weight:600}.leaderboard__header-mobile{text-align:center;background:linear-gradient(#2edaf114 0%,#0000 100%);padding:40px 24px 30px;display:block}.leaderboard__controls-mobile{padding:0 0 24px;display:block}.leaderboard__podium-mobile{justify-content:center;align-items:flex-end;gap:16px;margin-bottom:30px;padding:20px 0;display:flex}@media (width>=1024px){.leaderboard__header-compact{display:flex}.leaderboard__header-mobile,.leaderboard__controls-mobile{display:none}.podium-bar{display:flex}.leaderboard__podium-mobile{display:none}.leaderboard__container{padding-top:0}.row--gold{border-left:3px solid gold}.row--silver{border-left:3px solid silver}.row--bronze{border-left:3px solid #cd7f32}.row--highlighted{animation:2s highlight-row}@keyframes highlight-row{0%,to{background:0 0}25%,75%{background:#2edaf126}}}.leaderboard__header{text-align:center;background:linear-gradient(#2edaf114 0%,#0000 100%);padding:60px 24px 40px}.leaderboard__title{letter-spacing:-1px;margin-bottom:12px;font-size:2.5rem;font-weight:800}.leaderboard__subtitle{color:var(--color-text-secondary);font-size:1rem}.leaderboard__status{background:var(--color-bg-card);border:1px solid var(--color-border);letter-spacing:1px;color:var(--color-text-muted);border-radius:20px;margin-top:16px;padding:6px 16px;font-size:.75rem;font-weight:600;display:inline-block}.leaderboard__status--live{color:#22c55e;background:#22c55e26;border-color:#22c55e4d;animation:2s infinite pulse}.leaderboard__container{max-width:1280px;margin:0 auto;padding:0 24px 60px}.leaderboard__controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;display:flex}.leaderboard__tabs{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:10px;padding:4px;display:flex}.leaderboard__tab{color:var(--color-text-secondary);background:0 0;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:all .2s}.leaderboard__tab:hover{color:var(--color-text-primary)}.leaderboard__tab--active{background:var(--color-accent);color:var(--color-bg-primary)}.leaderboard__filters{flex-wrap:wrap;gap:12px;display:flex}.leaderboard__select{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:8px;min-width:140px;padding:12px 16px;font-size:.9rem}.leaderboard__select:focus{border-color:var(--color-accent);outline:none}.leaderboard__podium{justify-content:center;align-items:flex-end;gap:24px;margin-bottom:50px;padding:20px 0;display:flex}.podium__place{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:20px;flex-direction:column;align-items:center;padding:24px 32px;transition:all .3s;display:flex;position:relative}.podium__place:hover{transform:translateY(-8px)}.podium__place--1{border-color:var(--color-gold);background:linear-gradient(180deg, #ffd7001a 0%, var(--color-bg-card) 50%);padding:32px 40px}.podium__place--2{border-color:var(--color-silver);background:linear-gradient(180deg, #c0c0c014 0%, var(--color-bg-card) 50%)}.podium__place--3{border-color:var(--color-bronze);background:linear-gradient(180deg, #cd7f3214 0%, var(--color-bg-card) 50%)}.podium__avatar{background:var(--color-border);width:56px;height:56px;font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;font-size:1.25rem;font-weight:700;display:flex}.podium__place--1 .podium__avatar{background:linear-gradient(135deg, var(--color-gold) 0%, orange 100%);color:#000;width:68px;height:68px;font-size:1.5rem}.podium__place--2 .podium__avatar{background:linear-gradient(135deg, var(--color-silver) 0%, #a0a0a0 100%);color:#000}.podium__place--3 .podium__avatar{background:linear-gradient(135deg, var(--color-bronze) 0%, #b8860b 100%);color:#000}.podium__rank{width:32px;height:32px;font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:800;display:flex;position:absolute;top:-10px;right:-10px}.podium__place--1 .podium__rank{background:var(--color-gold);color:#000}.podium__place--2 .podium__rank{background:var(--color-silver);color:#000}.podium__place--3 .podium__rank{background:var(--color-bronze);color:#000}.podium__name{margin-bottom:4px;font-size:1.1rem;font-weight:700}.podium__place--1 .podium__name{font-size:1.25rem}.podium__members,.podium__team{color:var(--color-text-muted);margin-bottom:10px;font-size:.8rem}.podium__score{font-family:var(--font-display);color:var(--color-accent);font-size:1.25rem;font-weight:700}.podium__place--1 .podium__score{font-size:1.5rem}.podium__trend{margin-top:8px;font-size:.9rem;font-weight:600}.podium__trend--up{color:#22c55e}.podium__trend--down{color:#ef4444}.podium__trend--same{color:var(--color-text-muted)}.leaderboard__table-wrapper{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;margin-bottom:24px;overflow:hidden}.leaderboard__table{border-collapse:collapse;width:100%}.leaderboard__table th{text-align:left;text-transform:uppercase;letter-spacing:1px;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);z-index:10;padding:14px 20px;font-size:.8rem;font-weight:600;position:sticky;top:0}.leaderboard__table td{border-bottom:1px solid var(--color-border);padding:14px 20px;font-size:.95rem}.leaderboard__table tr:last-child td{border-bottom:none}.leaderboard__table tbody tr{transition:background .2s}.leaderboard__table tbody tr:hover{background:var(--color-bg-card-hover)}.row--top3{background:#2edaf108}.th--rank{width:80px}.th--trend{text-align:center;width:100px}.td--rank{text-align:center}.rank{width:36px;height:36px;font-family:var(--font-display);background:var(--color-border);border-radius:8px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.rank--gold{background:linear-gradient(135deg, var(--color-gold) 0%, orange 100%);color:#000}.rank--silver{background:linear-gradient(135deg, var(--color-silver) 0%, #a0a0a0 100%);color:#000}.rank--bronze{background:linear-gradient(135deg, var(--color-bronze) 0%, #b8860b 100%);color:#000}.name-cell{align-items:center;gap:12px;display:flex}.name-cell__flag{font-size:1.2rem}.name-cell__name{font-weight:600}.td--score{font-family:var(--font-display);color:#fff;font-size:1rem;font-weight:600}.th--time{text-align:center;width:100px}.td--time{font-family:var(--font-display);text-align:center;color:#fff;font-size:1rem;font-weight:600}.th--mission{width:150px}.th--events{text-align:center;width:80px}.td--events{text-align:center;color:var(--color-text-secondary);font-weight:500}.td--mission{color:var(--color-accent);white-space:nowrap;font-size:.9rem;font-weight:100}.td--winrate{color:#22c55e;font-weight:500}.td--trend{text-align:center}.trend{border-radius:20px;justify-content:center;align-items:center;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-flex}.trend--up{color:#22c55e;background:#22c55e26}.trend--down{color:#ef4444;background:#ef444426}.trend--same{background:var(--color-bg-secondary);color:var(--color-text-muted)}.leaderboard__pagination{justify-content:center;align-items:center;gap:16px;display:flex}.pagination__btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:8px;padding:10px 20px;font-weight:500;transition:all .2s}.pagination__btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.pagination__btn:disabled{opacity:.5;cursor:not-allowed}.pagination__pages{align-items:center;gap:8px;display:flex}.pagination__page{border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text-secondary);background:0 0;border-radius:8px;justify-content:center;align-items:center;font-weight:500;transition:all .2s;display:flex}.pagination__page:hover{border-color:var(--color-accent);color:var(--color-accent)}.pagination__page--active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg-primary)}.pagination__ellipsis{color:var(--color-text-muted);padding:0 8px}@media (width<=1023px){.leaderboard__podium-mobile{flex-direction:column;align-items:center}.podium__place{width:100%;max-width:280px;order:unset!important}}@media (width<=768px){.leaderboard__title{font-size:2rem}.leaderboard__controls{flex-direction:column;align-items:stretch}.leaderboard__tabs{justify-content:center}.leaderboard__filters{flex-direction:column}.leaderboard__select{width:100%}.leaderboard__table-wrapper{overflow-x:auto}.leaderboard__table{min-width:500px}.leaderboard__pagination{flex-wrap:wrap}}.td--empty{text-align:center;color:var(--color-text-muted);padding:40px 20px;font-size:1rem}.leaderboard__recent{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;margin-top:40px;padding:24px}.recent__title{margin-bottom:20px;font-size:1.25rem;font-weight:600}.recent__list{flex-direction:column;gap:12px;display:flex}.recent__item{background:var(--color-bg-secondary);border-radius:10px;align-items:center;gap:16px;padding:12px 16px;display:flex}.recent__user{min-width:120px;font-weight:600}.recent__team{color:var(--color-text-muted);font-size:.85rem}.recent__score{font-family:var(--font-display);color:#22c55e;margin-left:auto;font-weight:600}.recent__duration{font-family:var(--font-display);color:var(--color-accent);background:#2edaf11a;border-radius:4px;padding:2px 8px;font-size:.85rem;font-weight:500}.recent__time{color:var(--color-text-muted);text-align:right;min-width:80px;font-size:.8rem}.th--actions{width:60px}.td--actions{text-align:center}.btn-delete{color:#ef4444;cursor:pointer;background:#ef444426;border:none;border-radius:6px;width:32px;height:32px;font-size:1rem;font-weight:600;transition:all .2s}.btn-delete:hover:not(:disabled){color:#fff;background:#ef4444}.btn-delete:disabled{opacity:.5;cursor:not-allowed}.auth{justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:40px 24px;display:flex}.auth__container{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;width:100%;max-width:420px;padding:40px}.auth__header{text-align:center;margin-bottom:32px}.auth__title{margin-bottom:8px;font-size:1.75rem;font-weight:700}.auth__subtitle{color:var(--color-text-secondary);font-size:.95rem}.auth__form{flex-direction:column;gap:20px;display:flex}.auth__error{color:#ef4444;text-align:center;background:#ef444426;border:1px solid #ef44444d;border-radius:8px;padding:12px 16px;font-size:.9rem}.auth__field{flex-direction:column;gap:8px;display:flex}.auth__field label{color:var(--color-text-secondary);font-size:.9rem;font-weight:500}.auth__field input{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:8px;padding:14px 16px;font-size:1rem;transition:border-color .2s}.auth__field input:focus{border-color:var(--color-accent);outline:none}.auth__field input::placeholder{color:var(--color-text-muted)}.auth__submit{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:8px;margin-top:8px;padding:16px;font-size:1rem;font-weight:600;transition:background .2s}.auth__submit:hover:not(:disabled){background:var(--color-accent-hover)}.auth__submit:disabled{opacity:.6;cursor:not-allowed}.auth__switch{text-align:center;color:var(--color-text-secondary);margin-top:24px;font-size:.9rem}.auth__switch button{color:var(--color-accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:500}.auth__switch button:hover{text-decoration:underline}.auth__forgot{text-align:center;margin-top:16px}.auth__forgot a{color:var(--color-text-secondary);font-size:.9rem;text-decoration:none}.auth__forgot a:hover{color:var(--color-accent);text-decoration:underline}.auth__info{text-align:center;background:#4f46e51a;border:1px solid #4f46e533;border-radius:8px;margin:20px 0;padding:16px}.auth__info p{color:var(--color-text-secondary);margin:0;font-size:.9rem}.auth__switch a{color:var(--color-accent);font-weight:500;text-decoration:none}.auth__switch a:hover{text-decoration:underline}@media (width<=480px){.auth__container{padding:24px}}.image-upload{flex-direction:column;align-items:center;gap:8px;display:inline-flex;position:relative}.image-upload-preview{width:var(--size,128px);height:var(--size,128px);cursor:pointer;background:#0000004d;border:2px dashed #fff3;border-radius:12px;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.image-upload-preview:hover:not(.disabled):not(.uploading){border-color:#00d4ff80;transform:scale(1.02)}.image-upload-preview.disabled{cursor:not-allowed;opacity:.7}.image-upload-preview.uploading{cursor:wait}.image-upload-preview img{object-fit:cover;width:100%;height:100%;transition:opacity .2s}.image-upload-preview img.default-image{opacity:.5}.image-upload-preview:hover:not(.disabled):not(.uploading) img{opacity:.6}.upload-overlay{opacity:0;background:#0009;flex-direction:column;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.image-upload-preview:hover:not(.disabled):not(.uploading) .upload-overlay{opacity:1}.upload-icon{margin-bottom:4px;font-size:24px}.upload-text{color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.upload-progress{background:#000000b3;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.progress-bar{background:linear-gradient(90deg,#00d4ff,#0f8);height:4px;transition:width .3s;position:absolute;bottom:0;left:0}.progress-text{color:#00d4ff;font-size:14px;font-weight:600}.btn-remove-image{color:#fff;cursor:pointer;z-index:10;background:#ff4757;border:2px solid #1a1a2e;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;transition:transform .2s,background .2s;display:flex;position:absolute;top:-8px;right:-8px}.btn-remove-image:hover{background:#ff6b7a;transform:scale(1.1)}.image-upload-error{color:#ff4757;text-align:center;max-width:var(--size,128px);word-wrap:break-word;font-size:12px}.image-upload-hint{color:#fff6;text-align:center;font-size:11px}.scenario-image{background:#0000004d;border-radius:8px}.admin-dashboard{background:linear-gradient(135deg,#0a0a0a 0%,#1a1a2e 100%);min-height:100vh;padding:2rem}.admin-container{max-width:1400px;margin:0 auto}.admin-header{margin-bottom:2rem}.admin-header h1{color:#fff;margin:0;font-size:2rem;font-weight:700}.admin-header p{color:#888;margin:.5rem 0 0}.admin-tabs{background:#ffffff08;border-radius:12px;gap:.5rem;margin-bottom:2rem;padding:.5rem;display:flex;overflow-x:auto}.tab-button{color:#888;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;transition:all .2s;display:flex}.tab-button:hover{color:#fff;background:#ffffff0d}.tab-button.active{color:#fff;background:linear-gradient(135deg,#00d4ff 0%,#09f 100%);font-weight:600}.tab-icon{font-size:1.1rem}.tab-badge{color:#fff;text-align:center;background:#f44;border-radius:10px;min-width:20px;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.tab-button.active .tab-badge{background:#ffffff4d}.admin-content{background:#ffffff08;border-radius:16px;padding:1.5rem}.admin-loading,.admin-empty{text-align:center;color:#666;padding:3rem}.admin-error{color:#f66;background:#ff44441a;border:1px solid #ff44444d;border-radius:8px;margin-bottom:1rem;padding:1rem}.admin-overview{padding:1rem 0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.stat-card{text-align:center;background:#ffffff0d;border-radius:12px;padding:1.5rem;transition:transform .2s,background .2s}.stat-card:hover{background:#ffffff14;transform:translateY(-2px)}.stat-card.highlight{background:linear-gradient(135deg,#00d4ff1a 0%,#0099ff1a 100%);border:1px solid #00d4ff33}.stat-value{color:#fff;margin-bottom:.25rem;font-size:2rem;font-weight:700}.stat-card.highlight .stat-value{color:#00d4ff}.stat-label{color:#888;font-size:.85rem}.admin-section{padding:.5rem 0}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.section-header h2{color:#fff;margin:0;font-size:1.25rem}.filter-group{align-items:center;gap:.5rem;display:flex}.filter-group select,.search-input{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:.5rem 1rem;font-size:.9rem}.filter-group select:focus,.search-input:focus{border-color:#00d4ff;outline:none}.search-input{min-width:200px}.btn-refresh{color:#888;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;padding:.5rem 1rem;transition:all .2s}.btn-refresh:hover{color:#fff;background:#ffffff1a}.table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid #ffffff0d;padding:1rem}.admin-table th{color:#888;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.admin-table td{color:#ddd}.admin-table tbody tr:hover{background:#ffffff08}.admin-table .row-deleted{opacity:.5}.badge{text-transform:capitalize;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-success,.badge-approved{color:#00c864;background:#00c86433}.badge-warning{color:#fa0;background:#fa03}.badge-neutral,.badge-denied,.badge-rejected{color:#888;background:#ffffff1a}.badge-pending{color:#00d4ff;background:#00d4ff33}.badge-reviewed{color:#fa0;background:#fa03}.badge-info{color:#0af;background:#0af3}.action-buttons{gap:.5rem;display:flex}.btn-approve,.btn-deny,.btn-view,.btn-delete,.btn-restore,.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s}.btn-approve{color:#fff;background:linear-gradient(135deg,#00c864 0%,#00a050 100%)}.btn-approve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00c8644d}.btn-deny{color:#fff;background:linear-gradient(135deg,#f44 0%,#c00 100%)}.btn-deny:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff44444d}.btn-view{color:#ddd;background:#ffffff1a;border:1px solid #ffffff1a}.btn-view:hover{background:#ffffff26}.btn-primary{color:#fff;background:linear-gradient(135deg,#00d4ff 0%,#09f 100%)}.btn-delete{color:#f66;background:#f443;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.btn-delete:hover:not(:disabled){background:#ff44444d}.btn-restore{color:#00c864;background:#00c86433;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:flex}.btn-restore:hover:not(:disabled){background:#00c8644d}.btn-promote{color:#fff;background:linear-gradient(135deg,#9c27b0 0%,#7b1fa2 100%);font-weight:600}.btn-promote:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #9c27b066}.btn-promote{color:#81c784;background:#4caf5033}.btn-promote:hover:not(:disabled){background:#4caf504d}.btn-demote{color:#ffb74d;background:#ff980033}.btn-demote:hover:not(:disabled){background:#ff98004d}.section-description{color:#888;margin-bottom:1.5rem;font-size:.9rem}button:disabled{opacity:.5;cursor:not-allowed}.create-form{background:#ffffff08;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.create-form h3{color:#fff;margin:0 0 1rem;font-size:1rem}@media (width<=600px){.form-row{grid-template-columns:1fr}}.form-group label{color:#888;margin-bottom:.5rem;font-size:.85rem;display:block}.form-group input,.form-group textarea,.form-group select{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;width:100%;padding:.75rem;font-size:.9rem}.form-group select option{color:#fff;background:#1a1a1a}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#00d4ff;outline:none}.form-group textarea{resize:vertical}.modal-overlay{z-index:1000;background:#000c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:#1a1a2e;border-radius:16px;width:100%;max-width:480px;padding:1.5rem}.modal-content.modal-large{max-width:700px;max-height:90vh;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.modal-header h3{color:#fff;margin:0}.modal-close{color:#888;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1}.modal-close:hover{color:#fff}.modal-body{margin-bottom:1.5rem}.modal-content p{color:#ddd;margin:0 0 .5rem}.modal-note{font-size:.9rem;color:#888!important}.modal-footer{justify-content:flex-end;gap:.75rem;display:flex}.detail-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.detail-item{flex-direction:column;gap:.25rem;display:flex}.detail-item label{color:#666;text-transform:uppercase;font-size:.8rem}.detail-item span{color:#fff}.detail-description{margin-bottom:1.5rem}.detail-description label{color:#666;text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;display:block}.description-text{color:#ddd;white-space:pre-wrap;background:#ffffff08;border-radius:8px;max-height:200px;padding:1rem;line-height:1.6;overflow-y:auto}.detail-notes label{color:#666;text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;display:block}.detail-notes textarea{color:#fff;resize:vertical;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;width:100%;padding:.75rem;font-size:.9rem}.detail-notes textarea:focus{border-color:#00d4ff;outline:none}@media (width<=768px){.admin-dashboard{padding:1rem}.admin-tabs{padding:.25rem}.tab-button{padding:.5rem .75rem;font-size:.8rem}.tab-label{display:none}.tab-icon{font-size:1.2rem}.section-header{flex-direction:column;align-items:flex-start}.filter-group{width:100%}.filter-group select,.search-input{flex:1}.stats-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.section-description{color:#888;margin-top:.25rem;font-size:.9rem}.test-harness-form{background:#ffffff08;border-radius:12px;margin-top:1rem;padding:1.5rem}.form-row{gap:1rem;margin-bottom:1rem;display:flex}.mode-buttons{gap:.5rem;display:flex}.mode-btn{color:#aaa;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:.75rem 1.25rem;font-size:.9rem;transition:all .2s}.mode-btn:hover{background:#ffffff14;border-color:#fff3}.mode-btn.active{color:#0096ff;background:#0096ff26;border-color:#0096ff}.test-harness-form select,.test-harness-form input[type=number],.test-harness-form input[type=text]{color:#fff;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:.95rem}.test-harness-form select:focus,.test-harness-form input:focus{border-color:#0096ff;outline:none}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-group input[type=checkbox]{accent-color:#0096ff;width:18px;height:18px}.test-harness-form .btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0096ff 0%,#06c 100%);border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.test-harness-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0096ff4d}.test-harness-form .btn-primary:disabled{opacity:.6;cursor:not-allowed}.test-harness-results{background:#ffffff08;border-radius:12px;margin-top:2rem;padding:1.5rem}.test-harness-results h3{color:#fff;margin:0 0 1rem;font-size:1.1rem}.results-summary{background:#0096ff0d;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:grid}.results-summary code{background:#ffffff1a;border-radius:4px;padding:.2rem .4rem;font-size:.8rem}.admin-success{color:#00c853;background:#00c8531a;border:1px solid #00c8534d;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.scenario-title-cell{align-items:center;gap:.75rem;display:flex}.scenario-thumbnail{object-fit:cover;border:1px solid #ffffff1a;border-radius:6px;width:40px;height:40px}.description-cell{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.form-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.form-header h3{margin:0}.file-selected,.file-info,.form-hint{color:#fff9;margin-top:.5rem;font-size:.85rem;display:block}.file-selected{color:#00c853}.form-hint{color:#fff6;font-style:italic}.label-hint{color:#ffffff80;font-size:.85em;font-weight:400}.modal-warning{color:#ff9800;background:#ff98001a;border:1px solid #ff98004d;border-radius:8px;margin:1rem 0;padding:.75rem 1rem}.btn-edit{color:#0096ff;cursor:pointer;background:#0096ff1a;border:1px solid #0096ff4d;border-radius:6px;padding:.4rem .6rem;font-size:.9rem;transition:all .2s}.btn-edit:hover{background:#0096ff33;border-color:#0096ff80}.flex-1{flex:1}.flex-2{flex:2}.scenarios-tab .section-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.scenarios-tab .section-header h2{margin:0}.scenarios-list{border:1px solid var(--color-border);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.scenario-row{border-bottom:1px solid var(--color-border);background:var(--color-bg-card);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.scenario-row.row-deleted{opacity:.5;background:var(--color-bg-muted)}.scenario-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.scenario-title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.scenario-meta{color:var(--color-text-muted);align-items:center;gap:.75rem;font-size:.85rem;display:flex}.scenario-duration,.scenario-usage{color:var(--color-text-muted)}.scenario-actions{flex-shrink:0;gap:.5rem;display:flex}.status-deleted{color:#9ca3af;background:#9ca3af26}.modal-wide{max-width:700px!important}.modal-hint{color:var(--color-text-muted);margin-bottom:1rem}.modal-warning{color:#f59e0b;background:#f59e0b1a;border-radius:4px;margin:.5rem 0;padding:.75rem}.modal-note{color:var(--color-text-muted);margin-top:.5rem;font-size:.9rem}.upload-step-1{min-height:150px}@media (width<=600px){.edit-scenario-layout{flex-direction:column;align-items:center}.edit-scenario-form{width:100%}.scenario-row{flex-wrap:wrap}.scenario-actions{justify-content:flex-end;width:100%}}.competition-title-cell{flex-direction:column;gap:.25rem;display:flex}.competition-name{color:#fff;font-weight:500}.competition-meta-small{color:#888;font-size:.8rem}.creator-cell{flex-direction:column;gap:.25rem;display:flex}.email-small{color:#888;font-size:.8rem}.dates-cell{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.date-separator{color:#666}.cancellation-reason{color:#ff9800;font-size:.85rem;font-style:italic}.text-muted{color:#666}.detail-section h4{color:#fff;border-bottom:1px solid #ffffff1a;margin:0 0 .75rem;padding-bottom:.5rem;font-size:1rem}.detail-cancellation{background:#ff44441a;border:1px solid #ff44444d;border-radius:8px;margin-top:1rem;padding:1rem}.detail-cancellation label{color:#f66;text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;display:block}.cancellation-text{color:#ddd;margin-bottom:.5rem;line-height:1.6}.cancellation-meta{color:#888;margin-top:.5rem;font-size:.8rem;display:block}.detail-list{flex-direction:column;gap:.5rem;display:flex}.detail-list-item{background:#ffffff08;border-radius:6px;justify-content:space-between;align-items:center;padding:.75rem;display:flex}.list-item-name{color:#fff;font-weight:500}.list-item-meta{color:#888;font-size:.85rem}.char-count{text-align:right;color:#666;margin-top:.25rem;font-size:.8rem;display:block}.btn-danger{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f44 0%,#c00 100%);border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff44444d}.groups{min-height:calc(100vh - 80px);padding:100px 24px 40px}.groups__container{max-width:1000px;margin:0 auto}.groups__header{justify-content:space-between;align-items:flex-start;margin-bottom:40px;display:flex}.groups__title{margin-bottom:8px;font-size:2rem;font-weight:700}.groups__subtitle{color:var(--color-text-secondary);font-size:1rem}.groups__loading{text-align:center;color:var(--color-text-muted);padding:60px;font-size:1.1rem}.groups__create-btn{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-size:.95rem;font-weight:600;transition:background .2s}.groups__create-btn:hover{background:var(--color-accent-hover)}.groups__empty{text-align:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:80px 24px}.groups__empty-icon{margin-bottom:16px;font-size:3rem}.groups__empty h2{margin-bottom:12px;font-size:1.5rem}.groups__empty p{color:var(--color-text-secondary);max-width:400px;margin:0 auto 24px}.groups__empty-btn{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:background .2s}.groups__empty-btn:hover{background:var(--color-accent-hover)}.groups__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.groups__card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:24px;text-decoration:none;transition:all .2s;display:block}.groups__card:hover{border-color:var(--color-accent);transform:translateY(-2px)}.groups__card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.groups__card-name{color:var(--color-text-primary);font-size:1.2rem;font-weight:600}.groups__card-role{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;flex-shrink:0;padding:4px 10px;font-size:.75rem;font-weight:600}.groups__card-role--group_admin{color:#f59e0b;background:#f59e0b26}.groups__card-role--pilot{color:var(--color-accent);background:#2edaf126}.groups__card-role--observer{color:#9ca3af;background:#9ca3af26}.groups__card-description{color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;min-height:1.5em;margin-bottom:16px;font-size:.9rem;line-height:1.5;overflow:hidden}.groups__card-stats{gap:16px;margin-bottom:16px;display:flex}.groups__card-stat{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.groups__card-stat-icon{font-size:.9rem}.groups__card-footer{justify-content:flex-end;align-items:center;min-height:28px;display:flex}.groups__card-inactive{color:#ef4444;font-weight:500}.groups__card-leave{color:#ef4444;cursor:pointer;background:0 0;border:1px solid #ef444466;border-radius:6px;margin-left:auto;padding:4px 12px;font-size:.8rem;font-weight:500;transition:all .2s}.groups__card-leave:hover:not(:disabled){background:#ef444426;border-color:#ef4444}.groups__card-leave:disabled{opacity:.6;cursor:not-allowed}.groups__modal-overlay{z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.groups__modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;width:100%;max-width:480px;padding:32px}.groups__modal-title{margin-bottom:24px;font-size:1.5rem;font-weight:600}.groups__modal-error{color:#ef4444;background:#ef444426;border:1px solid #ef44444d;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:.9rem}.groups__modal-field{margin-bottom:20px}.groups__modal-field label{color:var(--color-text-secondary);margin-bottom:8px;font-size:.9rem;font-weight:500;display:block}.groups__modal-field input,.groups__modal-field textarea{background:var(--color-bg-secondary);border:1px solid var(--color-border);width:100%;color:var(--color-text-primary);border-radius:8px;padding:14px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s}.groups__modal-field input:focus,.groups__modal-field textarea:focus{border-color:var(--color-accent);outline:none}.groups__modal-field input::placeholder,.groups__modal-field textarea::placeholder{color:var(--color-text-muted)}.groups__modal-field textarea{resize:vertical;min-height:80px}.groups__modal-actions{justify-content:flex-end;gap:12px;margin-top:24px;display:flex}.groups__modal-cancel{border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:8px;padding:12px 24px;font-weight:500;transition:all .2s}.groups__modal-cancel:hover{background:var(--color-bg-secondary)}.groups__modal-submit{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:8px;padding:12px 24px;font-weight:600;transition:background .2s}.groups__modal-submit:hover:not(:disabled){background:var(--color-accent-hover)}.groups__modal-submit:disabled{opacity:.6;cursor:not-allowed}.groups__section{margin-bottom:32px}.groups__section-title{color:var(--color-text-primary);margin-bottom:16px;font-size:1.25rem;font-weight:600}.groups__invites-list,.groups__pending-list{flex-direction:column;gap:12px;display:flex}.groups__invite-card,.groups__pending-card{background:var(--color-bg-card);border:1px solid var(--color-accent);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.groups__pending-card{border-color:var(--color-border)}.groups__invite-info h3,.groups__pending-info h3{margin-bottom:4px;font-size:1.1rem;font-weight:600}.groups__invite-desc{color:var(--color-text-secondary);margin-bottom:4px;font-size:.9rem}.groups__invite-meta,.groups__pending-meta{color:var(--color-text-muted);font-size:.85rem}.groups__invite-actions{flex-shrink:0;gap:8px;display:flex}.groups__btn{cursor:pointer;border-radius:6px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.groups__btn--accept{background:var(--color-accent);color:var(--color-bg-primary);border:none}.groups__btn--accept:hover:not(:disabled){background:var(--color-accent-hover)}.groups__btn--decline{border:1px solid var(--color-border);color:var(--color-text-secondary);background:0 0}.groups__btn--decline:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-text-muted)}.groups__btn--cancel{color:#ef4444;background:0 0;border:1px solid #ef444466}.groups__btn--cancel:hover:not(:disabled){background:#ef44441a;border-color:#ef4444}.groups__btn:disabled{opacity:.6;cursor:not-allowed}.groups__card-coordinator{color:var(--color-text-muted);margin-bottom:12px;font-size:.85rem}.groups__card-competitions{margin-bottom:16px}.groups__card-competitions-label{color:var(--color-text-secondary);margin-bottom:6px;font-size:.85rem;font-weight:500;display:block}.groups__card-competition-counts{flex-direction:column;gap:4px;display:flex}.groups__card-comp-stat{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.groups__card-comp-dot{text-align:center;width:16px;font-size:.75rem}.groups__card-comp-stat--upcoming .groups__card-comp-dot{color:#fbbf24}.groups__card-comp-stat--active .groups__card-comp-dot{color:#22c55e}.groups__card-comp-stat--completed .groups__card-comp-dot{color:var(--color-text-muted)}.groups__modal-desc{color:var(--color-text-secondary);margin-bottom:20px;font-size:.95rem}@media (width<=640px){.groups__header{flex-direction:column;gap:16px}.groups__create-btn{width:100%}.groups__grid{grid-template-columns:1fr}.groups__invite-card,.groups__pending-card{flex-direction:column;align-items:flex-start}.groups__invite-actions{width:100%}.groups__invite-actions .groups__btn{flex:1}}.group-detail{min-height:calc(100vh - 80px);padding:100px 24px 40px}.group-detail__container{max-width:900px;margin:0 auto}.group-detail__loading,.group-detail__error{text-align:center;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:60px}.group-detail__error h2{color:#ef4444;margin-bottom:12px}.group-detail__error p{color:var(--color-text-secondary);margin-bottom:24px}.group-detail__back-btn{background:var(--color-accent);color:var(--color-bg-primary);border-radius:8px;padding:12px 24px;font-weight:600;text-decoration:none;display:inline-block}.group-detail__breadcrumb{color:var(--color-text-muted);margin-bottom:16px;font-size:.9rem;text-decoration:none;display:inline-block}.group-detail__breadcrumb:hover{color:var(--color-text-primary)}.group-detail__header{margin-bottom:24px}.group-detail__header-content{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.group-detail__title{margin-bottom:8px;font-size:2rem;font-weight:700}.group-detail__description{color:var(--color-text-secondary);max-width:500px;font-size:1rem}.group-detail__header-actions{align-items:center;gap:24px;display:flex}.group-detail__stats{gap:24px;display:flex}.group-detail__leave-btn{color:#ef4444;cursor:pointer;background:0 0;border:1px solid #ef4444;border-radius:8px;padding:10px 20px;font-size:.9rem;font-weight:600;transition:all .2s}.group-detail__leave-btn:hover:not(:disabled){color:#fff;background:#ef4444}.group-detail__leave-btn:disabled{opacity:.6;cursor:not-allowed}.group-detail__stat{text-align:center}.group-detail__stat-value{color:var(--color-accent);font-size:1.75rem;font-weight:700;display:block}.group-detail__stat-label{color:var(--color-text-muted);font-size:.85rem}.group-detail__tabs{border-bottom:1px solid var(--color-border);gap:4px;margin-bottom:24px;display:flex}.group-detail__tab{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 24px;font-size:.95rem;font-weight:500;transition:all .2s}.group-detail__tab:hover{color:var(--color-text-primary)}.group-detail__tab--active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.group-detail__section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;padding:24px}.group-detail__members-list{flex-direction:column;gap:12px;display:flex}.group-detail__member{background:var(--color-bg-secondary);border-radius:10px;justify-content:space-between;align-items:center;padding:16px;display:flex}.group-detail__member-info{align-items:center;gap:14px;display:flex}.group-detail__member-avatar{background:var(--color-accent);width:40px;height:40px;color:var(--color-bg-primary);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.group-detail__member-name{font-weight:600}.group-detail__empty{text-align:center;color:var(--color-text-muted);padding:48px 24px}.group-detail__empty-icon{margin-bottom:12px;font-size:2.5rem}.group-detail__empty p{font-size:1rem}.group-detail__competitions{flex-direction:column;gap:32px;display:flex}.group-detail__comp-section{flex-direction:column;gap:12px;display:flex}.group-detail__comp-section-title{color:var(--color-text-primary);align-items:center;gap:10px;margin:0;font-size:1rem;font-weight:600;display:flex}.group-detail__comp-section-indicator{border-radius:50%;width:10px;height:10px}.group-detail__comp-section-indicator--active{background:#4caf50}.group-detail__comp-section-indicator--upcoming{background:#ffc107}.group-detail__comp-section-indicator--past{background:#9e9e9e}.group-detail__comp-list{flex-direction:column;gap:12px;display:flex}.group-detail__comp-card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:12px;padding:20px;text-decoration:none;transition:all .2s;display:block}.group-detail__comp-card:hover{border-color:var(--color-accent);transform:translate(4px)}.group-detail__comp-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.group-detail__comp-name{color:var(--color-text-primary);margin:0;font-size:1.1rem;font-weight:600}.group-detail__comp-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;flex-shrink:0;padding:4px 10px;font-size:.7rem;font-weight:600}.group-detail__comp-badge--active{color:#4caf50;background:#4caf5033}.group-detail__comp-badge--upcoming{color:#ffc107;background:#ffc10733}.group-detail__comp-badge--ended{color:#9e9e9e;background:#9e9e9e33}.group-detail__comp-description{color:var(--color-text-secondary);margin:0 0 12px;font-size:.9rem;line-height:1.5}.group-detail__comp-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:16px;font-size:.8rem;display:flex}@media (width<=640px){.group-detail__header-content{flex-direction:column}.group-detail__stats{justify-content:space-around;width:100%}.group-detail__tabs{overflow-x:auto}.group-detail__tab{white-space:nowrap;padding:12px 16px}.group-detail__comp-meta{gap:8px}}.competitions{background:linear-gradient(135deg,#0a0a0f 0%,#1a1a2e 100%);min-height:calc(100vh - 80px);padding:2rem 1rem 4rem}.competitions__container{max-width:1280px;margin:0 auto}.competitions__header{margin-bottom:2.5rem}.competitions__hero{text-align:center;padding:2rem 1rem}.competitions__title{color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,#fff 0%,#a8d8ff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 .75rem;font-size:3rem;font-weight:800}.competitions__subtitle{color:#8892b0;max-width:600px;margin:0 auto;font-size:1.125rem;line-height:1.6}.competitions__filters{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2.5rem;display:flex}.competitions__filter{color:#8892b0;cursor:pointer;background:#ffffff05;border:1px solid #2a2a4a;border-radius:2rem;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.competitions__filter:hover{color:#4fc3f7;background:#4fc3f70d;border-color:#4fc3f7}.competitions__filter--active{color:#0a0a0f;background:linear-gradient(135deg,#4fc3f7 0%,#00bcd4 100%);border-color:#0000;font-weight:600}.competitions__filter--active:hover{color:#0a0a0f;background:linear-gradient(135deg,#81d4fa 0%,#26c6da 100%)}.competitions__filter-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.competitions__filter-dot--active{background:#4caf50;animation:2s infinite pulse}.competitions__filter--active .competitions__filter-dot--active{background:#0a0a0f}.competitions__grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;display:grid}.competitions__title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.competitions__meta-row{align-items:center;gap:1.5rem;display:flex}.competitions__card-action{color:#4fc3f7;border-top:1px solid #2a2a4a;justify-content:center;align-items:center;margin-top:auto;padding:.875rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.competitions__card:hover .competitions__card-action{color:#81d4fa;background:#4fc3f70d}.competitions__footer{border-top:1px solid #2a2a4a;justify-content:center;margin-top:2.5rem;padding-top:2rem;display:flex}.competitions__browse-link{color:#4fc3f7;background:0 0;border:1px solid #4fc3f7;border-radius:.5rem;align-items:center;gap:.5rem;padding:.875rem 2rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.competitions__browse-link:hover{background:#4fc3f71a;transform:translateY(-2px);box-shadow:0 4px 20px #4fc3f733}.competitions__card{color:inherit;background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:1rem;flex-direction:column;text-decoration:none;transition:all .3s;display:flex;overflow:hidden}.competitions__card:hover{border-color:#4fc3f7;transform:translateY(-6px);box-shadow:0 12px 40px #4fc3f726,0 0 0 1px #4fc3f71a}.competitions__card-image-wrapper{aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}.competitions__card-image{object-fit:cover;width:100%;height:100%;transition:transform .4s}.competitions__card:hover .competitions__card-image{transform:scale(1.05)}.competitions__card-image-overlay{pointer-events:none;background:linear-gradient(#0000 0%,#0000001a 50%,#16162ae6 100%);position:absolute;inset:0}.competitions__card-badges{flex-wrap:wrap;gap:.5rem;display:flex;position:absolute;top:.75rem;left:.75rem}.competitions__badge{text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:1rem;padding:.3rem .75rem;font-size:.7rem;font-weight:600}.competitions__badge--active{color:#fff;background:#4caf50e6}.competitions__badge--upcoming{color:#1a1a2e;background:#ffc107e6}.competitions__badge--ended{color:#fff;background:#646478e6}.competitions__badge--draft{color:#fff;background:#607d8be6}.competitions__badge--cancelled{color:#fff;background:#f44336e6}.competitions__badge--private{color:#fff;background:#9c27b0e6}.competitions__badge-icon{font-size:.65rem}.competitions__countdown{color:#fff;text-transform:uppercase;letter-spacing:.5px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ff9800f2;border-radius:1rem;padding:.3rem .75rem;font-size:.7rem;font-weight:600;position:absolute;bottom:.75rem;right:.75rem}.competitions__card-content{flex-direction:column;flex-grow:1;padding:1.25rem;display:flex}.competitions__card-header{flex-wrap:wrap;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;padding:1rem 1rem 0;display:flex}.competitions__card-content .competitions__card-header{margin-bottom:.5rem;padding:0}.competitions__user-badge{text-transform:uppercase;border-radius:1rem;flex-shrink:0;padding:.2rem .6rem;font-size:.65rem;font-weight:600}.competitions__user-badge--registered{color:#4fc3f7;background:#4fc3f733}.competitions__user-badge--invited{color:#ff9800;background:#ff980033}.competitions__card-title{color:#fff;flex-grow:1;margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.competitions__card-description{color:#8892b0;flex-grow:1;margin:0 0 1rem;font-size:.875rem;line-height:1.5}.competitions__card-meta{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.competitions__meta-item{color:#6a6a8a;align-items:center;gap:.5rem;font-size:.8rem;display:flex}.competitions__meta-icon{font-size:.9rem}.competitions__card-stats{border-top:1px solid #2a2a4a;justify-content:center;align-items:center;gap:1.5rem;margin-top:auto;padding-top:1rem;display:flex}.competitions__stat{flex-direction:column;align-items:center;gap:.125rem;display:flex}.competitions__stat-value{color:#4fc3f7;font-size:1.25rem;font-weight:700}.competitions__stat-label{color:#6a6a8a;text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}.competitions__stat-divider{background:#2a2a4a;width:1px;height:32px}.competitions__loading{color:#8892b0;flex-direction:column;justify-content:center;align-items:center;padding:6rem 2rem;display:flex}.competitions__spinner{border:3px solid #2a2a4a;border-top-color:#4fc3f7;border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.competitions__empty{text-align:center;color:#8892b0;padding:6rem 2rem}.competitions__empty-icon{filter:grayscale(.3);margin-bottom:1.5rem;font-size:5rem}.competitions__empty h3{color:#fff;margin:0 0 .75rem;font-size:1.5rem;font-weight:600}.competitions__empty p{max-width:400px;margin:0 auto 2rem;line-height:1.6}.competitions__empty-btn{color:#0a0a0f;cursor:pointer;background:linear-gradient(135deg,#4fc3f7 0%,#00bcd4 100%);border:none;border-radius:.5rem;padding:.875rem 2rem;font-weight:600;transition:all .2s}.competitions__empty-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #4fc3f766}.competitions__error{text-align:center;color:#f44336;background:#f443361a;border:1px solid #f443364d;border-radius:.75rem;padding:3rem 2rem}.competitions__error button{color:#fff;cursor:pointer;background:#f44336;border:none;border-radius:.375rem;margin-top:1rem;padding:.625rem 1.25rem;font-weight:500;transition:background .2s}.competitions__error button:hover{background:#e53935}@media (width<=768px){.competitions{padding:1.5rem 1rem 3rem}.competitions__title{font-size:2.25rem}.competitions__subtitle{font-size:1rem}.competitions__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.competitions__filters{gap:.375rem;padding:0 .5rem}.competitions__filter{padding:.5rem 1rem;font-size:.85rem}.competitions__card-image-wrapper{aspect-ratio:2}}@media (width<=640px){.competitions__grid{grid-template-columns:1fr}.competitions__meta-row{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (width<=480px){.competitions__hero{padding:1rem 0}.competitions__title{font-size:1.875rem}.competitions__filters{-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:.5rem;overflow-x:auto}.competitions__filters::-webkit-scrollbar{display:none}.competitions__filter{flex-shrink:0}}.competition-detail{background:linear-gradient(135deg,#0a0a0f 0%,#1a1a2e 100%);min-height:calc(100vh - 80px)}.competition-detail__hero{align-items:flex-end;min-height:400px;display:flex;position:relative}.competition-detail__hero-image-wrapper{position:absolute;inset:0;overflow:hidden}.competition-detail__hero-image{object-fit:cover;object-position:center 30%;width:100%;height:100%}.competition-detail__hero-overlay{background:linear-gradient(#0a0a0f4d 0%,#0a0a0f99 50%,#0a0a0ff2 85%,#0a0a0f 100%);position:absolute;inset:0}.competition-detail__hero-content{z-index:1;width:100%;max-width:1200px;margin:0 auto;padding:3rem 1.5rem 2rem;position:relative}.competition-detail__breadcrumb{align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.875rem;display:flex}.competition-detail__breadcrumb a{color:#4fc3f7;text-decoration:none;transition:color .2s}.competition-detail__breadcrumb a:hover{color:#81d4fa}.competition-detail__breadcrumb-sep{color:#4a4a6a}.competition-detail__breadcrumb span:last-child{color:#8892b0}.competition-detail__header-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.competition-detail__badge{text-transform:uppercase;letter-spacing:.5px;border-radius:2rem;padding:.375rem .875rem;font-size:.75rem;font-weight:600}.competition-detail__badge--active{color:#fff;background:#4caf50e6}.competition-detail__badge--upcoming{color:#1a1a2e;background:#ffc107e6}.competition-detail__badge--ended{color:#fff;background:#646478e6}.competition-detail__badge--draft{color:#fff;background:#607d8be6}.competition-detail__badge--cancelled{color:#fff;background:#f44336e6}.competition-detail__badge--private{color:#fff;background:#9c27b0e6}.competition-detail__title{color:#fff;letter-spacing:-.02em;margin:0 0 1rem;font-size:2.75rem;font-weight:800;line-height:1.15}.competition-detail__description{color:#b0b8c8;max-width:700px;margin:0 0 1.5rem;font-size:1.125rem;line-height:1.6}.competition-detail__meta{flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem;display:flex}.competition-detail__meta-item{align-items:center;gap:.75rem;display:flex}.competition-detail__meta-icon{font-size:1.5rem}.competition-detail__meta-text{flex-direction:column;gap:.125rem;display:flex}.competition-detail__meta-label{color:#6a6a8a;text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}.competition-detail__meta-value{color:#fff;font-size:.95rem;font-weight:500}.competition-detail__actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.competition-detail__register-btn{color:#0a0a0f;cursor:pointer;background:linear-gradient(135deg,#4fc3f7 0%,#00bcd4 100%);border:none;border-radius:.5rem;padding:.875rem 2.5rem;font-size:1rem;font-weight:600;transition:all .2s}.competition-detail__register-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #4fc3f766}.competition-detail__register-btn:disabled{opacity:.7;cursor:not-allowed}.competition-detail__registered-badge{color:#4caf50;background:#4caf5026;border:1px solid #4caf5066;border-radius:.5rem;padding:.75rem 1.5rem;font-weight:600}.competition-detail__invite-notice{color:#ff9800;font-size:.9rem}.competition-detail__container{max-width:1200px;margin:0 auto;padding:0 1.5rem 4rem}.competition-detail__tabs{border-bottom:1px solid #2a2a4a;gap:.5rem;margin-bottom:2rem;padding-bottom:0;display:flex}.competition-detail__tab{color:#8892b0;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.5rem;margin-bottom:-1px;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s;display:flex}.competition-detail__tab:hover{color:#fff}.competition-detail__tab--active{color:#4fc3f7;border-bottom-color:#4fc3f7}.competition-detail__tab-icon{font-size:1.1rem}.competition-detail__tab-count{color:#4fc3f7;background:#4fc3f726;border-radius:1rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.competition-detail__tab--active .competition-detail__tab-count{background:#4fc3f740}.competition-detail__events-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.competition-detail__event-card{color:inherit;background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:.875rem;flex-direction:column;text-decoration:none;transition:all .3s;display:flex;overflow:hidden}.competition-detail__event-card:hover{border-color:#4fc3f7;transform:translateY(-4px);box-shadow:0 8px 32px #4fc3f726}.competition-detail__event-image-wrapper{aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}.competition-detail__event-image{object-fit:cover;width:100%;height:100%;transition:transform .4s}.competition-detail__event-card:hover .competition-detail__event-image{transform:scale(1.05)}.competition-detail__event-image-overlay{background:linear-gradient(#0000 50%,#16162acc 100%);position:absolute;inset:0}.competition-detail__event-status{text-transform:uppercase;letter-spacing:.5px;border-radius:1rem;padding:.3rem .75rem;font-size:.7rem;font-weight:600;position:absolute;top:.75rem;left:.75rem}.competition-detail__event-status--active{color:#fff;background:#4caf50e6}.competition-detail__event-status--upcoming{color:#1a1a2e;background:#ffc107e6}.competition-detail__event-status--ended{color:#fff;background:#646478e6}.competition-detail__event-content{flex-direction:column;flex:1;padding:1.25rem;display:flex}.competition-detail__event-title{color:#fff;margin:0 0 .5rem;font-size:1.125rem;font-weight:600;line-height:1.3}.competition-detail__event-description{color:#8892b0;flex-grow:1;margin:0 0 .75rem;font-size:.875rem;line-height:1.5}.competition-detail__event-meta{color:#6a6a8a;flex-wrap:wrap;gap:1rem;font-size:.8rem;display:flex}.competition-detail__event-meta-item{align-items:center;gap:.25rem;display:flex}.competition-detail__event-arrow{display:none}.competition-detail__empty{text-align:center;background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:1rem;padding:4rem 2rem}.competition-detail__empty-icon{filter:grayscale(.3);margin-bottom:1rem;font-size:4rem}.competition-detail__empty h3{color:#fff;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.competition-detail__empty p{color:#8892b0;max-width:400px;margin:0 auto}.competition-detail__podium{justify-content:center;align-items:flex-end;gap:1rem;margin-bottom:2.5rem;padding:2rem 1rem;display:flex}.competition-detail__podium-place{background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:1rem;flex-direction:column;align-items:center;gap:.5rem;min-width:140px;padding:1.5rem 2rem;display:flex;position:relative}.competition-detail__podium-place--1{background:linear-gradient(145deg,#2a2a40 0%,#1e1e30 100%);border-color:#ffd7004d;padding-top:2rem;padding-bottom:2.5rem}.competition-detail__podium-place--2,.competition-detail__podium-place--3{transform:translateY(1rem)}.competition-detail__podium-crown{font-size:2rem;animation:2s ease-in-out infinite float;position:absolute;top:-1.5rem}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.competition-detail__podium-avatar{color:#fff;background:linear-gradient(135deg,#4a4a6a 0%,#3a3a5a 100%);border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;font-weight:700;display:flex}.competition-detail__podium-avatar--gold{color:#1a1a2e;background:linear-gradient(135deg,gold 0%,#ffb300 100%);box-shadow:0 4px 20px #ffd7004d}.competition-detail__podium-rank{font-size:1.5rem}.competition-detail__podium-name{color:#fff;font-size:.95rem;font-weight:600}.competition-detail__podium-score{color:#4fc3f7;font-size:1.125rem;font-weight:700}.competition-detail__leaderboard-table-wrapper{background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:1rem;overflow-x:auto}.competition-detail__leaderboard-table{border-collapse:collapse;width:100%;font-size:.9rem}.competition-detail__leaderboard-table th{text-align:left;color:#6a6a8a;text-transform:uppercase;letter-spacing:.5px;background:#0003;border-bottom:1px solid #2a2a4a;padding:1rem 1.25rem;font-size:.7rem;font-weight:500}.competition-detail__leaderboard-table td{color:#fff;border-bottom:1px solid #2a2a4a80;padding:1rem 1.25rem}.competition-detail__leaderboard-table tbody tr:last-child td{border-bottom:none}.competition-detail__leaderboard-table tbody tr:hover{background:#4fc3f70d}.competition-detail__th--rank,.competition-detail__td--rank{text-align:center;width:70px}.competition-detail__th--score,.competition-detail__td--score{text-align:right;color:#4fc3f7;font-weight:600}.competition-detail__th--time,.competition-detail__td--time{text-align:right;color:#8892b0;font-family:SF Mono,Fira Code,monospace}.competition-detail__th--runs,.competition-detail__td--runs{text-align:center;color:#6a6a8a}.competition-detail__rank{border-radius:50%;justify-content:center;align-items:center;min-width:32px;height:32px;font-size:.9rem;font-weight:700;display:inline-flex}.competition-detail__rank--gold,.competition-detail__rank--silver,.competition-detail__rank--bronze{font-size:1.25rem}.competition-detail__row--top3{background:#4fc3f708}.competition-detail__pilot{align-items:center;gap:.75rem;display:flex}.competition-detail__pilot-avatar{color:#fff;background:linear-gradient(135deg,#4a4a6a 0%,#3a3a5a 100%);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.875rem;font-weight:600;display:flex}.competition-detail__leaderboard-note{text-align:center;color:#6a6a8a;padding:1.5rem;font-size:.8rem}.competition-detail__loading{color:#8892b0;flex-direction:column;justify-content:center;align-items:center;padding:8rem 2rem;display:flex}.competition-detail__loading--inline{padding:4rem 2rem}.competition-detail__spinner{border:3px solid #2a2a4a;border-top-color:#4fc3f7;border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}.competition-detail__error{text-align:center;padding:6rem 2rem}.competition-detail__error-icon{margin-bottom:1rem;font-size:4rem}.competition-detail__error h2{color:#fff;margin:0 0 .5rem;font-size:1.5rem}.competition-detail__error p{color:#8892b0;margin:0 0 2rem}.competition-detail__back-btn{color:#4fc3f7;background:0 0;border:1px solid #4fc3f7;border-radius:.5rem;padding:.875rem 2rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-block}.competition-detail__back-btn:hover{background:#4fc3f71a}@media (width<=768px){.competition-detail__hero{min-height:320px}.competition-detail__hero-content{padding:2rem 1rem}.competition-detail__title{font-size:1.75rem}.competition-detail__description{font-size:1rem}.competition-detail__meta{gap:1.5rem}.competition-detail__container{padding:0 1rem 3rem}.competition-detail__tabs{gap:0}.competition-detail__tab{padding:.875rem 1rem;font-size:.9rem}.competition-detail__tab-icon{display:none}.competition-detail__events-grid{grid-template-columns:1fr}.competition-detail__podium{flex-direction:column;gap:1rem;padding:1rem}.competition-detail__podium-place{width:100%;max-width:200px;padding:1rem}.competition-detail__podium-place--2,.competition-detail__podium-place--3{transform:none}.competition-detail__leaderboard-table th,.competition-detail__leaderboard-table td{padding:.75rem}.competition-detail__th--runs,.competition-detail__td--runs{display:none}}@media (width<=480px){.competition-detail__hero{min-height:280px}.competition-detail__title{font-size:1.5rem}.competition-detail__register-btn{text-align:center;width:100%}.competition-detail__podium{display:none}}.competition-detail__event-leaderboard-btn{cursor:pointer;z-index:5;background:#000000b3;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:all .2s;display:flex;position:absolute;top:.75rem;right:.75rem}.competition-detail__event-leaderboard-btn:hover{background:#3b82f6cc;border-color:#3b82f6;transform:scale(1.1)}.competition-detail__event-card{position:relative}.competition-detail__modal-overlay{z-index:1000;background:#000c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.competition-detail__modal{background:#1a1a2e;border:1px solid #ffffff1a;border-radius:12px;width:100%;max-width:600px;max-height:80vh;padding:1.5rem;position:relative;overflow-y:auto}.competition-detail__modal-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;transition:background .2s;display:flex;position:absolute;top:1rem;right:1rem}.competition-detail__modal-close:hover{background:#fff3}.competition-detail__modal-title{color:#fff;margin:0 0 1.5rem;font-size:1.25rem}.competition-detail__modal-table-wrapper{overflow-x:auto}.competition-detail__modal-actions{justify-content:flex-end;margin-top:1.5rem;display:flex}.competition-detail__modal-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:6px;padding:.5rem 1.5rem;transition:background .2s}.competition-detail__modal-btn:hover{background:#fff3}.competition-detail__rank--1{background:linear-gradient(90deg,#ffd70026 0%,#0000 50%)}.competition-detail__rank--2{background:linear-gradient(90deg,#c0c0c026 0%,#0000 50%)}.competition-detail__rank--3{background:linear-gradient(90deg,#cd7f3226 0%,#0000 50%)}.competition-detail__td--rank{text-align:center;font-size:1.1rem}.competition-event{background:linear-gradient(135deg,#0a0a0f 0%,#1a1a2e 100%);min-height:calc(100vh - 80px);padding:2rem 1rem}.competition-event__container{max-width:900px;margin:0 auto}.competition-event__breadcrumb{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.9rem;display:flex}.competition-event__breadcrumb a{color:#4fc3f7;text-decoration:none;transition:color .2s}.competition-event__breadcrumb a:hover{color:#81d4fa}.competition-event__breadcrumb-sep{color:#4a4a6a}.competition-event__breadcrumb span:last-child{color:#8892b0}.competition-event__header{margin-bottom:3rem}.competition-event__header-badges{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.competition-event__badge{text-transform:uppercase;letter-spacing:.5px;border-radius:1rem;padding:.3rem .75rem;font-size:.75rem;font-weight:600}.competition-event__badge--active{color:#4caf50;background:#4caf5033;animation:2s infinite pulse}.competition-event__badge--upcoming{color:#ffc107;background:#ffc10733}.competition-event__badge--ended{color:#9e9e9e;background:#9e9e9e33}.competition-event__badge--registered{color:#4fc3f7;background:#4fc3f733}.competition-event__title{color:#fff;margin:0 0 1rem;font-size:2.5rem;font-weight:700;line-height:1.2}.competition-event__description{color:#8892b0;margin:0 0 1.5rem;font-size:1.1rem;line-height:1.6}.competition-event__meta{flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem;display:flex}.competition-event__meta-item{align-items:flex-start;gap:.75rem;display:flex}.competition-event__meta-icon{font-size:1.5rem}.competition-event__meta-label{color:#6a6a8a;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-size:.75rem}.competition-event__meta-value{color:#fff;font-size:.95rem}.competition-event__join-btn{color:#0a0a0f;cursor:pointer;background:linear-gradient(135deg,#4fc3f7 0%,#00bcd4 100%);border:none;border-radius:.5rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.competition-event__join-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #4fc3f766}.competition-event__join-btn:disabled{opacity:.7;cursor:not-allowed}.competition-event__joined-notice{color:#4fc3f7;background:#4fc3f71a;border:1px solid #4fc3f74d;border-radius:.5rem;padding:1rem;font-weight:500}.competition-event__section{margin-bottom:2.5rem}.competition-event__section-title{color:#fff;border-bottom:1px solid #2a2a4a;margin:0 0 1.5rem;padding-bottom:.75rem;font-size:1.5rem;font-weight:600}.competition-event__rules{background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:.75rem;padding:1.5rem}.competition-event__rules pre{color:#8892b0;white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9rem}.competition-event__scenarios-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.competition-event__scenario-card{background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:.75rem;padding:1.25rem;transition:border-color .2s}.competition-event__scenario-card:hover{border-color:#3a3a5a}.competition-event__scenario-card--competition{border-color:#4fc3f733}.competition-event__scenario-badge{color:#4fc3f7;text-transform:uppercase;background:#4fc3f71a;border-radius:.25rem;margin-bottom:.75rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.competition-event__scenario-title{color:#fff;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.competition-event__scenario-description{color:#8892b0;margin:0 0 .75rem;font-size:.85rem;line-height:1.4}.competition-event__scenario-filename{color:#6a6a8a;margin:0 0 .75rem;font-family:monospace;font-size:.8rem}.competition-event__scenario-meta{color:#6a6a8a;flex-wrap:wrap;gap:.75rem;font-size:.8rem;display:flex}.competition-event__scenario-available{color:#4caf50;background:#4caf501a;border-radius:.25rem;padding:.5rem;font-size:.8rem}.competition-event__scenario-locked{color:#ff9800;background:#ff98001a;border-radius:.25rem;padding:.5rem;font-size:.8rem}.competition-event__no-scenarios{text-align:center;color:#8892b0;background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:1rem;padding:3rem 2rem}.competition-event__loading{color:#8892b0;flex-direction:column;justify-content:center;align-items:center;padding:6rem 2rem;display:flex}.competition-event__spinner{border:3px solid #2a2a4a;border-top-color:#4fc3f7;border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}.competition-event__error{text-align:center;padding:4rem 2rem}.competition-event__error h2{color:#f44336;margin:0 0 1rem}.competition-event__error p{color:#8892b0;margin:0 0 2rem}.competition-event__back-btn{color:#4fc3f7;background:0 0;border:1px solid #4fc3f7;border-radius:.5rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s;display:inline-block}.competition-event__back-btn:hover{background:#4fc3f71a}.competition-event__section-toggle{cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:0;display:flex}.competition-event__section-title--toggle{border-bottom:none;margin-bottom:0;padding-bottom:0}.competition-event__toggle-icon{color:#4fc3f7;font-size:.875rem}.competition-event__leaderboard{background:linear-gradient(145deg,#1e1e30 0%,#16162a 100%);border:1px solid #2a2a4a;border-radius:.75rem;margin-top:1rem;padding:1.5rem}.competition-event__leaderboard-note{color:#6a6a8a;margin:0 0 1.5rem;font-size:.875rem}.competition-event__leaderboard-table-wrapper{overflow-x:auto}.competition-event__leaderboard-table{border-collapse:collapse;width:100%;font-size:.9rem}.competition-event__leaderboard-table th{text-align:left;color:#6a6a8a;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #2a2a4a;padding:.75rem 1rem;font-size:.75rem;font-weight:500}.competition-event__leaderboard-table td{color:#fff;border-bottom:1px solid #2a2a4a80;padding:.875rem 1rem}.competition-event__leaderboard-table tbody tr:last-child td{border-bottom:none}.competition-event__th--rank,.competition-event__td--rank{text-align:center;width:60px}.competition-event__th--score,.competition-event__td--score{text-align:right;font-weight:600}.competition-event__th--time,.competition-event__td--time{text-align:right;color:#8892b0;font-family:SF Mono,Fira Code,monospace}.competition-event__th--attempts,.competition-event__td--attempts{text-align:center;color:#6a6a8a}.competition-event__rank{border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:inline-flex}.competition-event__rank--gold{color:#1a1a2e;background:linear-gradient(135deg,gold 0%,#ffb300 100%);box-shadow:0 2px 8px #ffd70066}.competition-event__rank--silver{color:#1a1a2e;background:linear-gradient(135deg,silver 0%,#a0a0a0 100%);box-shadow:0 2px 8px #c0c0c066}.competition-event__rank--bronze{color:#1a1a2e;background:linear-gradient(135deg,#cd7f32 0%,#b87333 100%);box-shadow:0 2px 8px #cd7f3266}.competition-event__row--top3{background:#4fc3f70d}.competition-event__row--top3:hover{background:#4fc3f71a}.competition-event__leaderboard-table tbody tr:hover{background:#ffffff05}@media (width<=768px){.competition-event__title{font-size:1.75rem}.competition-event__meta{gap:1rem}.competition-event__scenarios-grid{grid-template-columns:1fr}.competition-event__leaderboard{padding:1rem}.competition-event__leaderboard-table th,.competition-event__leaderboard-table td{padding:.625rem .5rem}.competition-event__th--attempts,.competition-event__td--attempts{display:none}}.profile{min-height:calc(100vh - 80px);padding:100px 24px 40px}.profile__container{max-width:800px;margin:0 auto}.profile__loading{text-align:center;color:var(--color-text-muted);padding:60px;font-size:1.1rem}.profile__header{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;align-items:center;gap:24px;margin-bottom:32px;padding:32px;display:flex}.profile__avatar-wrapper{flex-shrink:0;position:relative}.profile__avatar{background:var(--color-accent);width:80px;height:80px;color:var(--color-bg-primary);border-radius:50%;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:flex;overflow:hidden}.profile__avatar img{object-fit:cover;width:100%;height:100%}.profile__avatar-upload{background:var(--color-bg-card);border:2px solid var(--color-border);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:background .2s,border-color .2s;display:flex;position:absolute;bottom:-4px;right:-4px}.profile__avatar-upload:hover{background:var(--color-bg-card-hover);border-color:var(--color-accent)}.profile__avatar-upload svg{width:14px;height:14px;color:var(--color-text-muted)}.profile__avatar-upload:hover svg{color:var(--color-accent)}.profile__avatar-upload input{display:none}.profile__avatar-upload--loading{pointer-events:none;opacity:.6}.profile__avatar-upload--loading svg{animation:1s linear infinite spin}.profile__name{margin-bottom:4px;font-size:1.75rem;font-weight:700}.profile__username-display{align-items:center;gap:8px;display:flex}.profile__username-edit-btn{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex}.profile__username-edit-btn:hover{color:var(--color-accent)}.profile__username-edit-btn svg{width:16px;height:16px}.profile__username-edit{align-items:center;gap:8px;margin-bottom:4px;display:flex}.profile__username-input{border:2px solid var(--color-border);background:var(--color-bg-secondary);color:var(--color-text-primary);border-radius:6px;width:200px;padding:4px 8px;font-size:1.5rem;font-weight:700;transition:border-color .2s}.profile__username-input:focus{border-color:var(--color-accent);outline:none}.profile__username-actions{gap:4px;display:flex}.profile__username-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;transition:background .2s,color .2s;display:flex}.profile__username-btn svg{width:18px;height:18px}.profile__username-btn--save{color:#22c55e}.profile__username-btn--save:hover{background:#22c55e26}.profile__username-btn--cancel{color:#ef4444}.profile__username-btn--cancel:hover{background:#ef444426}.profile__username-btn:disabled{opacity:.5;cursor:not-allowed}.profile__username-btn--save:disabled svg{animation:1s linear infinite spin}.profile__error{color:#ef4444;margin-bottom:8px;font-size:.85rem}.profile__email{color:var(--color-text-muted);margin-bottom:12px}.profile__badges{flex-wrap:wrap;gap:8px;display:flex}.profile__badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:4px 10px;font-size:.75rem;font-weight:600}.profile__badge--admin{color:#f59e0b;background:#f59e0b26}.profile__badge--group{color:#a855f7;background:#a855f726}.profile__badge--pilot{color:var(--color-accent);background:#2edaf126}.profile__stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;display:grid}.profile__stat{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:12px;padding:24px}.profile__stat-value{color:var(--color-accent);margin-bottom:4px;font-size:1.75rem;font-weight:700;display:block}.profile__stat-label{color:var(--color-text-muted);font-size:.85rem}.profile__section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;margin-bottom:20px;padding:24px}.profile__section-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.profile__section-header h2{font-size:1.1rem;font-weight:600}.profile__section-header a{color:var(--color-accent);font-size:.9rem}.profile__empty{color:var(--color-text-muted);padding:16px 0}.profile__empty a{color:var(--color-accent)}.profile__groups{flex-direction:column;gap:8px;display:flex}.profile__group{background:var(--color-bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;padding:14px 16px;text-decoration:none;transition:background .2s;display:flex}.profile__group:hover{background:var(--color-bg-card-hover)}.profile__group-name{color:var(--color-text-primary);font-weight:500}.profile__group-role{border-radius:4px;padding:4px 10px;font-size:.75rem;font-weight:600}.profile__group-role--group_admin{color:#f59e0b;background:#f59e0b26}.profile__group-role--pilot{color:var(--color-accent);background:#2edaf126}.profile__group-role--observer{color:#9ca3af;background:#9ca3af26}.profile__events{flex-direction:column;gap:8px;display:flex}.profile__event{background:var(--color-bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;padding:14px 16px;text-decoration:none;transition:background .2s;display:flex}.profile__event:hover{background:var(--color-bg-card-hover)}.profile__event-name{color:var(--color-text-primary);font-weight:500}.profile__event-date{color:var(--color-text-muted);font-size:.85rem}.profile__scores{flex-direction:column;gap:8px;display:flex}.profile__score{background:var(--color-bg-secondary);border-radius:8px;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.profile__score-info{flex-direction:column;gap:2px;display:flex}.profile__score-scenario{color:var(--color-text-primary);font-weight:500}.profile__score-date{color:var(--color-text-muted);font-size:.8rem}.profile__score-value{color:var(--color-accent);font-size:1.25rem;font-weight:700}.profile__syndojo-link{border:1px solid var(--color-border);border-radius:12px;padding:20px}.profile__syndojo-link--active{background:#22c55e0d;border-color:#22c55e33}.profile__syndojo-link--unlinked{background:var(--color-bg-secondary);text-align:center}.profile__syndojo-link--unlinked p{color:var(--color-text-muted);margin-bottom:12px}.profile__syndojo-status{margin-bottom:12px}.profile__syndojo-badge{color:#22c55e;background:#22c55e26;border-radius:16px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-block}.profile__syndojo-details{flex-direction:column;gap:4px;display:flex}.profile__syndojo-pilot{color:var(--color-text-primary);font-weight:600}.profile__syndojo-device{color:var(--color-text-muted);font-size:.9rem}.profile__syndojo-cta{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;padding:10px 24px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block}.profile__syndojo-cta:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f14d}@media (width<=640px){.profile__header{text-align:center;flex-direction:column}.profile__badges{justify-content:center}.profile__stats{grid-template-columns:repeat(2,1fr)}}.get-syndojo{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);min-height:100vh;padding:2rem}.syndojo-container{max-width:600px;margin:0 auto}.syndojo-header{text-align:center;margin-bottom:2rem}.syndojo-header h1{color:#fff;margin-bottom:.5rem;font-size:2.5rem}.syndojo-header .subtitle{color:#a0aec0;font-size:1.1rem}.military-notice{background:linear-gradient(135deg,#4299e126 0%,#3182ce1a 100%);border:1px solid #4299e14d;border-radius:12px;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding:1.25rem;display:flex}.notice-icon{flex-shrink:0;font-size:1.5rem}.military-notice p{color:#e2e8f0;margin:0;line-height:1.6}.military-notice strong{color:#90cdf4}.syndojo-form{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;margin-bottom:2rem;padding:2rem}@media (width<=500px){.form-row{grid-template-columns:1fr}}.form-group label{color:#e2e8f0;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.form-group input{color:#fff;background:#0000004d;border:1px solid #ffffff26;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{color:#e2e8f0;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:8px;padding:.75rem 1.5rem;font-size:.9rem;transition:background .2s}.error-icon{flex-shrink:0}.success-message{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:3rem 2rem}.success-message.approved{background:#48bb781a;border-color:#48bb784d}.success-message.pending{background:#ed89361a;border-color:#ed89364d}.success-icon{margin-bottom:1rem;font-size:3rem}.success-message h2{color:#fff;margin-bottom:.75rem}.success-message p{color:#a0aec0;margin-bottom:.5rem}.email-note{font-weight:500;color:#68d391!important;margin-bottom:1.5rem!important}.supported-domains{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:1.5rem}.supported-domains h3{color:#e2e8f0;margin-bottom:1rem;font-size:1rem}.supported-domains ul{flex-wrap:wrap;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.supported-domains li{color:#a0aec0;background:#ffffff0d;border-radius:6px;padding:.375rem .75rem;font-size:.85rem}.supported-domains code{color:#90cdf4;font-family:SF Mono,Monaco,monospace}.non-military-note{color:#718096;margin:0;font-size:.85rem}.download-page{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.download-container{width:100%;max-width:500px}.download-header{text-align:center;margin-bottom:2rem}.download-header h1{color:#fff;font-size:2rem}.download-status{text-align:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:2.5rem}.download-status.success{border-color:#48bb784d}.download-status.error{border-color:#f565654d}.spinner{border:3px solid #ffffff1a;border-top-color:#4299e1;border-radius:50%;width:48px;height:48px;margin:0 auto 1.5rem;animation:1s linear infinite spin}.status-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;font-size:2rem;display:flex}.success .status-icon{color:#68d391;background:#48bb7833}.error .status-icon{color:#fc8181;background:#f5656533}.download-status h2{color:#fff;margin-bottom:.75rem}.download-status p{color:#a0aec0;margin-bottom:.5rem}.download-status .error-message{color:#fc8181;font-weight:500}.hint{font-size:.9rem;color:#718096!important;margin-top:1rem!important}.hint a{color:#4299e1;text-decoration:underline}.next-steps{text-align:left;border-top:1px solid #ffffff1a;margin-top:2rem;padding-top:2rem}.next-steps h3{color:#e2e8f0;margin-bottom:1rem;font-size:1rem}.next-steps ol{color:#a0aec0;margin-bottom:1.5rem;padding-left:1.25rem}.next-steps li{margin-bottom:.5rem}.btn-primary{color:#fff;text-align:center;cursor:pointer;background:linear-gradient(135deg,#4299e1 0%,#3182ce 100%);border:none;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-block}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4299e166}.create-competition{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);min-height:calc(100vh - 60px);padding:40px 20px}.competition-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;max-width:720px;margin:0 auto;padding:40px}.competition-header{text-align:center;margin-bottom:32px}.competition-header h1{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:2.5rem}.competition-header .subtitle{color:#ffffffb3;max-width:600px;margin:0 auto;font-size:1.1rem;line-height:1.6}.info-notice{background:#667eea1a;border:1px solid #667eea4d;border-radius:12px;gap:16px;margin-bottom:32px;padding:20px;display:flex}.info-notice .notice-icon{flex-shrink:0;font-size:1.5rem}.info-notice p{color:#ffffffd9;margin:0;line-height:1.6}.competition-form{margin-bottom:32px}@media (width<=600px){.form-row{grid-template-columns:1fr}}.form-group label{color:#ffffffe6;margin-bottom:8px;font-weight:500;display:block}.form-group label .required{color:#f87171}.form-group input,.form-group textarea{color:#fff;background:#ffffff14;border:1px solid #ffffff26;border-radius:8px;width:100%;padding:14px 16px;font-size:1rem;transition:all .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#fff6}.form-group input:focus,.form-group textarea:focus{background:#ffffff1a;border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea33}.form-group input:disabled,.form-group textarea:disabled{opacity:.6;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:160px;font-family:inherit;line-height:1.5}.char-count{text-align:right;color:#ffffff80;margin-top:6px;font-size:.85rem}.char-count.near-limit{color:#fbbf24}.error-message{color:#fca5a5;background:#ef444426;border:1px solid #ef444466;border-radius:8px;align-items:center;gap:10px;margin-bottom:20px;padding:14px 18px;display:flex}.error-message .error-icon{font-size:1.2rem}.success-message{text-align:center;padding:40px 20px}.success-message .success-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;font-size:2.5rem;display:flex}.success-message h2{color:#fff;margin-bottom:16px;font-size:1.8rem}.success-message p{color:#fffc;margin-bottom:12px;font-size:1.1rem;line-height:1.6}.success-message .email-note{color:#fff9;margin-bottom:28px;font-size:.95rem}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;padding:16px 24px;font-size:1.1rem;font-weight:600;transition:all .2s}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:500;transition:all .2s}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.captcha-notice{text-align:center;color:#fff6;margin-top:16px;font-size:.8rem;line-height:1.5}.captcha-notice a{color:#fff9;text-decoration:underline}.captcha-notice a:hover{color:#fffc}.what-happens-next{border-top:1px solid #ffffff1a;padding-top:32px}.what-happens-next h3{color:#fff;margin-bottom:20px;font-size:1.25rem}.what-happens-next ol{counter-reset:step;margin:0;padding:0;list-style:none}.what-happens-next li{color:#ffffffbf;counter-increment:step;padding-bottom:20px;padding-left:48px;line-height:1.5;position:relative}.what-happens-next li:last-child{padding-bottom:0}.what-happens-next li:before{content:counter(step);color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:600;display:flex;position:absolute;top:0;left:0}.what-happens-next li strong{color:#fff}@media (width<=600px){.competition-container{padding:24px 20px}.competition-header h1{font-size:1.8rem}.competition-header .subtitle{font-size:1rem}.info-notice{text-align:center;flex-direction:column;gap:12px}}.link-syndojo{background:linear-gradient(135deg,#0a0a1a 0%,#1a1a3a 100%);min-height:calc(100vh - 64px);padding:2rem}.link-syndojo__container{max-width:600px;margin:0 auto}.link-syndojo__title{text-align:center;color:#fff;margin-bottom:2rem;font-size:2rem}.link-syndojo__loading{text-align:center;color:#888;padding:4rem}.link-syndojo__step{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:2rem}.link-syndojo__step--center{text-align:center}.link-syndojo__instructions{color:#ccc;margin-bottom:1.5rem;line-height:1.6}.link-syndojo__code-input{margin-bottom:1.5rem;position:relative}.link-syndojo__input{letter-spacing:.5rem;text-align:center;text-transform:uppercase;color:#fff;background:#0000004d;border:2px solid #fff3;border-radius:8px;width:100%;padding:1.25rem;font-family:Monaco,Consolas,monospace;font-size:2rem;transition:border-color .2s}.link-syndojo__input:focus{border-color:#6366f1;outline:none}.link-syndojo__input::placeholder{color:#555;letter-spacing:.3rem}.link-syndojo__code-count{color:#666;font-size:.85rem;position:absolute;bottom:-24px;right:12px}.link-syndojo__btn{cursor:pointer;border:none;border-radius:8px;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.link-syndojo__btn:disabled{opacity:.5;cursor:not-allowed}.link-syndojo__btn--primary{color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);width:100%;margin-top:1rem}.link-syndojo__btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #6366f166}.link-syndojo__btn--secondary{color:#fff;background:#ffffff1a;border:1px solid #fff3}.link-syndojo__btn--secondary:hover:not(:disabled){background:#ffffff26}.link-syndojo__actions{gap:1rem;margin-top:1.5rem;display:flex}.link-syndojo__actions .link-syndojo__btn{flex:1;margin-top:0}.link-syndojo__help{border-top:1px solid #ffffff1a;margin-top:2rem;padding-top:2rem}.link-syndojo__help h3{color:#aaa;margin-bottom:1rem;font-size:.95rem}.link-syndojo__help ol{color:#888;padding-left:1.5rem;line-height:1.8}.link-syndojo__error{color:#f87171;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;margin-top:1rem;padding:1rem}.link-syndojo__spinner{border:3px solid #ffffff1a;border-top-color:#6366f1;border-radius:50%;width:48px;height:48px;margin:0 auto 1.5rem;animation:1s linear infinite spin}.link-syndojo__confirm h2{color:#fff;margin-bottom:1.5rem}.link-syndojo__confirm-details{background:#0003;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.link-syndojo__detail{border-bottom:1px solid #ffffff0d;justify-content:space-between;padding:.75rem 0;display:flex}.link-syndojo__detail:last-child{border-bottom:none}.link-syndojo__detail-label{color:#888}.link-syndojo__detail-value{color:#fff;font-weight:500}.link-syndojo__conflicts{background:#eab3081a;border:1px solid #eab3084d;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.link-syndojo__conflicts h3{color:#fbbf24;margin-bottom:1rem;font-size:1rem}.link-syndojo__conflict{margin-bottom:1rem}.link-syndojo__conflict:last-child{margin-bottom:0}.link-syndojo__conflict-message{color:#fcd34d;margin-bottom:.5rem}.link-syndojo__conflict-detail{color:#a3a3a3;font-size:.9rem}.link-syndojo__conflict-warning{color:#fbbf24;border-top:1px solid #eab30833;margin-top:1rem;padding-top:1rem;font-weight:500}.link-syndojo__success{padding:2rem 0}.link-syndojo__success-icon{color:#fff;background:linear-gradient(135deg,#22c55e,#16a34a);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;font-size:2rem;display:flex}.link-syndojo__success h2{color:#22c55e;margin-bottom:1rem}.link-syndojo__success p{color:#ccc;margin-bottom:.5rem}.link-syndojo__success-note{color:#888;font-size:.9rem}.link-syndojo__error-state{padding:2rem 0}.link-syndojo__error-icon{color:#fff;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1.5rem;font-size:2rem;display:flex}.link-syndojo__error-state h2{color:#ef4444;margin-bottom:1rem}.link-syndojo__current{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;padding:2rem}.link-syndojo__current-header{margin-bottom:1.5rem}.link-syndojo__status-badge{border-radius:20px;padding:.5rem 1rem;font-size:.9rem;font-weight:600;display:inline-block}.link-syndojo__status-badge--active{color:#22c55e;background:#22c55e33;border:1px solid #22c55e4d}.link-syndojo__current-details{background:#0003;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.link-syndojo__current-info{color:#888;margin-bottom:1.5rem;font-size:.95rem}.link-syndojo__unlink-btn{color:#f87171;cursor:pointer;background:0 0;border:1px solid #ef444480;border-radius:8px;padding:.75rem 1.5rem;font-weight:500;transition:all .2s}.link-syndojo__unlink-btn:hover:not(:disabled){background:#ef44441a;border-color:#ef4444}.link-syndojo__unlink-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=640px){.link-syndojo{padding:1rem}.link-syndojo__title{font-size:1.5rem}.link-syndojo__input{letter-spacing:.3rem;padding:1rem;font-size:1.5rem}.link-syndojo__actions{flex-direction:column}}.submit-score{background:linear-gradient(135deg, var(--bg-primary) 0%, var(--bg-secondary) 100%);justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:2rem;display:flex}.submit-score__loading{color:var(--text-secondary);font-size:1.125rem}.submit-score__container{text-align:center;width:100%;max-width:600px}.submit-score__icon{margin-bottom:1.5rem;font-size:4rem}.submit-score__title{color:var(--text-primary);margin-bottom:1rem;font-size:2rem;font-weight:700}.submit-score__description{color:var(--text-secondary);margin-bottom:2.5rem;font-size:1.125rem;line-height:1.6}.submit-score__description strong{color:var(--accent-primary)}.submit-score__steps{text-align:left;flex-direction:column;gap:1.5rem;margin-bottom:2.5rem;display:flex}.submit-score__step{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.submit-score__step-number{background:var(--accent-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:700;display:flex}.submit-score__step-content h3{color:var(--text-primary);margin-bottom:.25rem;font-size:1rem;font-weight:600}.submit-score__step-content p{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}.submit-score__actions{justify-content:center;gap:1rem;margin-bottom:2rem;display:flex}.submit-score__btn{border-radius:8px;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s}.submit-score__btn--primary{background:var(--accent-primary);color:#fff}.submit-score__btn--primary:hover{background:var(--accent-primary-hover);transform:translateY(-2px)}.submit-score__btn--secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.submit-score__btn--secondary:hover{background:var(--bg-secondary);border-color:var(--accent-primary)}.submit-score__note{color:var(--text-muted);font-size:.875rem;line-height:1.5}.submit-score__note a{color:var(--accent-primary);text-decoration:none}.submit-score__note a:hover{text-decoration:underline}@media (width<=640px){.submit-score{padding:1.5rem}.submit-score__title{font-size:1.5rem}.submit-score__description{font-size:1rem}.submit-score__actions{flex-direction:column}.submit-score__btn{text-align:center;width:100%}}.host-dashboard{max-width:1200px;margin:0 auto;padding:2rem}.host-header{margin-bottom:2rem}.host-header h1{color:var(--color-primary);margin-bottom:.5rem;font-size:2rem}.host-header .subtitle{color:var(--color-text-muted);font-size:1rem}.host-tabs{border-bottom:2px solid var(--color-border);gap:.5rem;margin-bottom:2rem;display:flex}.host-tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.5rem;margin-bottom:-2px;padding:.75rem 1.5rem;font-size:1rem;transition:all .2s;display:flex}.host-tab:hover{color:var(--color-text)}.host-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-count{background:var(--color-bg-muted);border-radius:1rem;padding:.125rem .5rem;font-size:.75rem}.host-tab.active .tab-count{background:var(--color-primary);color:#fff}.host-loading{text-align:center;color:var(--color-text-muted);padding:3rem}.empty-state{text-align:center;background:var(--color-bg-muted);border-radius:8px;padding:3rem}.empty-state p{color:var(--color-text-muted);margin-bottom:1rem}.empty-message{color:var(--color-text-muted);padding:1rem 0;font-style:italic}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.stat-card{background:var(--color-bg-muted);text-align:center;border-radius:8px;padding:1.5rem}.stat-card.highlight{background:var(--color-primary);color:#fff}.stat-value{font-size:2.5rem;font-weight:700;line-height:1}.stat-label{color:var(--color-text-muted);margin-top:.5rem;font-size:.875rem}.stat-card.highlight .stat-label{color:#fffc}.tab-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.tab-header h2{color:var(--color-text);flex:1;font-size:1.5rem}.tab-header .btn-primary{flex:none;align-self:center;width:auto;max-width:fit-content}.groups-list,.competitions-list{gap:1rem;display:grid}.group-card,.competition-card{background:var(--color-bg-card);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;padding:1.25rem;transition:all .2s}.group-card:hover,.competition-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.group-info h3,.comp-header h3{margin-bottom:.25rem;font-size:1.125rem}.group-info p{color:var(--color-text-muted);margin:.5rem 0;font-size:.875rem}.group-meta,.comp-stats{color:var(--color-text-muted);gap:1rem;margin-top:.5rem;font-size:.875rem;display:flex}.comp-header{justify-content:space-between;align-items:flex-start;display:flex}.comp-badges{gap:.5rem;display:flex}.comp-dates{color:var(--color-text-muted);margin:.5rem 0;font-size:.875rem}.comp-actions,.group-actions{border-top:1px solid var(--color-border);gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.status-badges{align-items:center;gap:.5rem;display:flex}.status-badge{text-transform:uppercase;border-radius:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.status-draft{color:#4a5568;background:#e3e8ef}.status-active{color:#22543d;background:#c6f6d5}.status-cancelled{color:#742a2a;background:#fed7d7}.phase-badge{text-transform:uppercase;border-radius:1rem;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.phase-upcoming{color:#92400e;background:#fef3c7}.phase-live{color:#97266d;background:#fed7e2}.phase-closed{color:#4a5568;background:#e2e8f0}.status-upcoming{color:#92400e;background:#fef3c7}.status-live{color:#97266d;background:#fed7e2}.status-ended,.status-closed{color:#4a5568;background:#e2e8f0}.visibility-badge{border-radius:1rem;padding:.25rem .75rem;font-size:.75rem}.visibility-badge.public{color:#234e52;background:#e6fffa}.visibility-badge.private{color:#553c9a;background:#faf5ff}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-bg-card);border-radius:12px;width:90%;max-width:500px;max-height:90vh;padding:2rem;overflow-y:auto}.modal-content.modal-wide{max-width:700px}.edit-scenario-layout{gap:2rem;margin-top:1rem;display:flex}.edit-scenario-image{flex-direction:column;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.edit-scenario-image label{color:var(--color-text-muted);font-size:.9rem;font-weight:500}.edit-scenario-form{flex:1;min-width:0}@media (width<=600px){.edit-scenario-layout{flex-direction:column;align-items:center}.edit-scenario-form{width:100%}}.edit-competition-layout{gap:2rem;margin-top:1rem;display:flex}.edit-competition-image{flex-direction:column;flex-shrink:0;align-items:center;gap:.75rem;display:flex}.edit-competition-image label{color:var(--color-text-muted);font-size:.9rem;font-weight:500}.edit-competition-form{flex:1;min-width:0}@media (width<=600px){.edit-competition-layout{flex-direction:column;align-items:center}.edit-competition-form{width:100%}}.modal-content h3{margin-bottom:.5rem}.modal-step-indicator{color:var(--color-text-muted,#6b7280);margin-bottom:1rem;font-size:.875rem}.modal-hint{color:var(--color-text-muted,#6b7280);margin-bottom:1.5rem;font-size:.9rem}.modal-hint strong{color:var(--color-text,#e5e7eb)}.event-image-hint{color:var(--color-text-muted,#6b7280);margin:.25rem 0 .75rem;font-size:.8rem;font-style:italic}.scenario-tabs{border-bottom:1px solid var(--color-border);gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.scenario-tab{border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;transition:all .2s}.scenario-tab:hover{border-color:var(--color-primary);color:var(--color-text)}.scenario-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.scenario-list{flex-direction:column;gap:.5rem;max-height:300px;display:flex;overflow-y:auto}.scenario-card{background:var(--color-bg-muted);border:1px solid var(--color-border);cursor:pointer;border-radius:8px;padding:1rem;transition:all .2s}.scenario-card:hover{border-color:var(--color-primary);background:var(--color-bg-card)}.scenario-card-title{color:var(--color-text);margin-bottom:.25rem;font-weight:600}.scenario-card-desc{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.4;display:-webkit-box;overflow:hidden}.empty-state.small{padding:1.5rem}.empty-state.small p{margin-bottom:.5rem}.empty-state.small .hint{color:var(--color-text-muted);font-size:.85rem}.form-group{margin-bottom:1.25rem}.form-group label{margin-bottom:.5rem;font-weight:500;display:block}.form-group input[type=text],.form-group input[type=date],.form-group textarea,.form-group select{border:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);border-radius:6px;padding:.75rem;font-size:1rem}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .2);outline:none}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-actions{justify-content:flex-end;gap:.75rem;margin-top:1.5rem;display:flex}.form-error{color:#742a2a;background:#fed7d7;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.checkbox-label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-label input[type=checkbox]{width:auto}.btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;transition:background .2s}.btn-primary:hover{background:var(--color-primary-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary.btn-compact{padding:.5rem 1rem;font-size:.875rem}.btn-secondary{background:var(--color-bg-muted);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem}.btn-secondary:hover{background:var(--color-border)}.btn-small{padding:.375rem .75rem;font-size:.875rem}.btn-danger{color:#fff;background:#e53e3e;border:none}.btn-danger:hover{background:#c53030}.btn-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-bottom:1rem;padding:0;font-size:1rem}.btn-back:hover{text-decoration:underline}.detail-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.detail-header-left{flex:1;align-items:center;gap:.75rem;display:flex}.detail-header-actions{gap:.5rem;display:flex}.detail-header h2{margin:0;font-size:1.75rem}.description{color:var(--color-text-muted);margin-bottom:1rem}.detail-meta{color:var(--color-text-muted);gap:1.5rem;margin-bottom:1.5rem;font-size:.875rem;display:flex}.detail-nav{border-bottom:1px solid var(--color-border);gap:.5rem;margin-bottom:1.5rem;display:flex}.detail-nav button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem 1rem}.detail-nav button:hover{color:var(--color-text)}.detail-nav button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.detail-section{margin-bottom:2rem}.detail-section h3{margin-bottom:1rem;font-size:1.25rem}.overview-stats{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.stat-box{background:var(--color-bg-muted);text-align:center;border-radius:6px;padding:1rem}.stat-box .stat-value{font-size:1.5rem}.stat-box .stat-label{font-size:.75rem}.member-search,.pilot-search{gap:.5rem;margin-bottom:1rem;display:flex}.member-search input,.pilot-search input{border:1px solid var(--color-border);border-radius:6px;flex:1;padding:.5rem .75rem}.search-results{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:6px;margin-bottom:1rem}.search-result{border-bottom:1px solid var(--color-border);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.search-result:last-child{border-bottom:none}.search-result .email{color:var(--color-text-muted);flex:1;font-size:.875rem}.members-list,.pilots-list,.groups-list.compact{border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.member-row,.pilot-row,.group-row{border-bottom:1px solid var(--color-border);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.member-row:last-child,.pilot-row:last-child,.group-row:last-child{border-bottom:none}.member-name,.pilot-name,.group-name{min-width:150px;font-weight:500}.member-email,.pilot-email{color:var(--color-text-muted);flex:1;font-size:.875rem}.member-role,.pilot-status{background:var(--color-bg-muted);border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem}.badge-accepted{color:#22543d;background:#c6f6d5}.badge-invited{color:#92400e;background:#fef3c7}.badge-declined,.badge-removed{color:#742a2a;background:#fed7d7}.add-group-section{background:var(--color-bg-muted);border-radius:6px;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.add-group-section>label{margin-bottom:.25rem;font-weight:500}.add-group-section select{border:1px solid var(--color-border);border-radius:4px;flex:1;padding:.5rem}.group-select-list{background:var(--color-bg);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;gap:.5rem;max-height:200px;padding:.5rem;display:flex;overflow-y:auto}.group-checkbox-label{cursor:pointer;align-items:center;gap:.5rem;padding:.25rem 0;display:flex}.group-checkbox-label:hover{color:var(--color-primary)}.group-checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px}.scenarios-list{border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.scenario-row{border-bottom:1px solid var(--color-border);align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.scenario-row:last-child{border-bottom:none}.scenario-title{flex:1;align-items:center;gap:.5rem;font-weight:500;display:flex}.scenario-file{color:var(--color-text-muted);font-size:.875rem}.system-badge{color:#234e52;background:#e6fffa;border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem}.locked-badge{color:#d69e2e}.scenario-actions{margin-bottom:1rem}.scenario-row .scenario-actions{gap:.5rem;margin-bottom:0;display:flex}.events-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.event-row{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.event-row .event-image{flex-shrink:0}.event-row:hover{border-color:var(--color-primary)}.event-info{flex-direction:column;flex:1;gap:.375rem;display:flex}.event-title{color:var(--color-text);font-size:1rem;font-weight:600}.event-scenario,.event-dates{color:var(--color-text-muted);font-size:.875rem}.event-actions{flex-shrink:0;gap:.5rem;display:flex}.system-scenarios-panel{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.system-scenarios-panel h4{margin-bottom:.5rem}.help-text{color:var(--color-text-muted);margin-bottom:1rem;font-size:.875rem}.system-scenarios-list{gap:1rem;display:grid}.system-scenario-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;justify-content:space-between;align-items:flex-start;padding:1rem;display:flex}.ss-info h5{margin:0 0 .25rem}.ss-info p{color:var(--color-text-muted);margin:.25rem 0;font-size:.875rem}.ss-meta{gap:.5rem;margin-top:.5rem;display:flex}.difficulty-badge{border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.difficulty-badge.beginner{color:#22543d;background:#c6f6d5}.difficulty-badge.intermediate{color:#92400e;background:#fef3c7}.difficulty-badge.advanced{color:#742a2a;background:#fed7d7}.difficulty-badge.expert{color:#553c9a;background:#e9d8fd}.difficulty-badge.elite{color:#f7fafc;background:#1a202c}.sub-tabs{gap:.5rem;margin-bottom:1.5rem;display:flex}.sub-tabs button{border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:.5rem 1rem;transition:all .2s}.sub-tabs button:hover{background:var(--color-bg-muted);color:var(--color-text)}.sub-tabs button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.system-scenarios-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.scenario-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem}.scenario-card h4{margin:0 0 .5rem}.scenario-card p{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.875rem}.scenario-meta{align-items:center;gap:.75rem;display:flex}.duration{color:var(--color-text-muted);font-size:.75rem}.tags{flex-wrap:wrap;gap:.25rem;margin-top:.5rem;display:flex}.tag{background:var(--color-bg-muted);border-radius:.25rem;padding:.125rem .5rem;font-size:.75rem}.info-notice{color:#2c5282;background:#ebf8ff;border-radius:6px;margin-bottom:1rem;padding:1rem}.warning-notice{color:#92400e;background:#fef3c7;border-radius:6px;margin-top:1rem;padding:.75rem 1rem}.score-distribution{background:var(--color-bg-muted);border-radius:6px;margin:1.5rem 0;padding:1rem}.score-distribution h4{margin:0 0 .75rem}.distribution-stats{gap:2rem;display:flex}.leaderboard-preview{margin-top:1.5rem}.leaderboard-preview h4{margin-bottom:.75rem}.leaderboard-table{border-collapse:collapse;width:100%}.leaderboard-table th,.leaderboard-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.75rem}.leaderboard-table th{background:var(--color-bg-muted);font-weight:500}.leaderboard-table .rank-cell{text-align:center;font-size:1.1rem}.leaderboard-table tr.rank-1{background:linear-gradient(90deg,#ffd70026 0%,#0000 50%)}.leaderboard-table tr.rank-2{background:linear-gradient(90deg,#c0c0c026 0%,#0000 50%)}.leaderboard-table tr.rank-3{background:linear-gradient(90deg,#cd7f3226 0%,#0000 50%)}.recent-activity{margin-top:2rem}.recent-activity h3{margin-bottom:1rem}.activity-list{border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.activity-item{border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.activity-item:last-child{border-bottom:none}.activity-user{font-weight:500}.activity-action{color:var(--color-text-muted)}.activity-comp{color:var(--color-primary)}.activity-time{color:var(--color-text-muted);margin-left:auto;font-size:.75rem}@media (width<=768px){.host-dashboard{padding:1rem}.host-tabs{flex-wrap:wrap}.host-tab{padding:.5rem 1rem;font-size:.875rem}.stats-grid,.overview-stats{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}.detail-nav,.member-row,.pilot-row,.group-row,.scenario-row{flex-wrap:wrap}.modal-content{width:95%;padding:1.5rem}}.join-code-section{background:var(--color-bg-muted);border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.join-code-section h3{margin-bottom:.75rem;font-size:1rem}.join-code-box{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.join-code-display{align-items:center;gap:.5rem;display:flex}.join-code{letter-spacing:2px;background:var(--color-bg-card);border:2px dashed var(--color-primary);border-radius:6px;padding:.5rem 1rem;font-family:monospace;font-size:1.5rem;font-weight:700}.join-code.disabled{opacity:.5;border-style:solid;border-color:var(--color-border)}.join-code-actions{align-items:center;gap:1rem;display:flex}.toggle-label{cursor:pointer;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.toggle-label input{width:18px;height:18px}.btn-icon{border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:4px;padding:.5rem;font-size:1rem;transition:background .2s}.btn-icon:hover:not(:disabled){background:var(--color-bg-muted)}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.help-text{color:var(--color-text-muted);margin-top:.75rem;font-size:.8rem}.detail-tabs{border-bottom:2px solid var(--color-border);gap:.5rem;margin-bottom:1.5rem;display:flex}.detail-tabs .tab{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.5rem;margin-bottom:-2px;padding:.75rem 1.25rem;font-size:.95rem;transition:all .2s;display:flex}.detail-tabs .tab:hover{color:var(--color-text)}.detail-tabs .tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.detail-tabs .badge{background:var(--color-primary);color:#fff;border-radius:10px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.requests-group{margin-bottom:1rem}.requests-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.requests-header h4{color:var(--color-text-muted);font-size:1rem}.requests-list{flex-direction:column;gap:.5rem;display:flex}.request-row{background:var(--color-bg-muted);border-radius:6px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.request-info{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.request-actions{flex-shrink:0;gap:.5rem;display:flex}.invited-by{color:var(--color-text-muted);font-size:.8rem}.flight-history{min-height:calc(100vh - 80px);padding:100px 24px 40px}.flight-history__container{max-width:1200px;margin:0 auto}.flight-history__loading{text-align:center;color:var(--color-text-muted);padding:60px;font-size:1.1rem}.flight-history__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.flight-history__title-section h1{margin-bottom:4px;font-size:2rem;font-weight:700}.flight-history__subtitle{color:var(--color-text-muted);font-size:.95rem}.flight-history__export-btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:8px;padding:10px 20px;font-weight:500;transition:all .2s}.flight-history__export-btn:hover:not(:disabled){background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent)}.flight-history__export-btn:disabled{opacity:.5;cursor:not-allowed}.flight-history__stats{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px;display:grid}.flight-history__stat{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:12px;padding:20px}.flight-history__stat-value{color:var(--color-accent);margin-bottom:4px;font-size:1.5rem;font-weight:700;display:block}.flight-history__stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem}.flight-history__filters{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;margin-bottom:24px;padding:20px}.flight-history__filter-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.flight-history__filter-group{flex-direction:column;flex:1;gap:6px;min-width:140px;display:flex}.flight-history__filter-group--order{flex:none;min-width:auto}.flight-history__filter-group label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.flight-history__filter-group select,.flight-history__filter-group input{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);border-radius:8px;padding:10px 12px;font-size:.9rem}.flight-history__filter-group select:focus,.flight-history__filter-group input:focus{border-color:var(--color-accent);outline:none}.flight-history__sort-order{background:var(--color-bg-secondary);border:1px solid var(--color-border);width:44px;height:44px;color:var(--color-text-primary);cursor:pointer;border-radius:8px;font-size:1.2rem;transition:all .2s}.flight-history__sort-order:hover{background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent)}.flight-history__clear-filters{color:var(--color-accent);cursor:pointer;background:0 0;border:none;margin-top:12px;padding:8px 16px;font-size:.85rem}.flight-history__clear-filters:hover{text-decoration:underline}.flight-history__list{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;margin-bottom:24px;overflow:hidden}.flight-history__table-header{display:none}.flight-history__empty{text-align:center;color:var(--color-text-muted);padding:60px 20px}.flight-history__empty button{background:var(--color-accent);color:var(--color-bg-primary);cursor:pointer;border:none;border-radius:8px;margin-top:16px;padding:10px 20px;font-weight:500}.flight-history__flight{border-bottom:1px solid var(--color-border);color:inherit;grid-template-rows:auto auto;grid-template-columns:1fr auto;gap:4px 12px;padding:16px 20px;text-decoration:none;transition:background .2s;display:grid}.flight-history__flight:last-child{border-bottom:none}.flight-history__flight:hover{background:var(--color-bg-secondary)}.flight-history__col--date{color:var(--color-text-muted);font-size:.85rem}.flight-history__col--scenario{grid-column:1;font-weight:600}.flight-history__col--score{color:var(--color-accent);text-align:right;grid-area:1/2/3;align-self:center;font-size:1.25rem;font-weight:700}.flight-history__max-score{color:var(--color-text-muted);font-size:.85rem;font-weight:400}.flight-history__col--duration,.flight-history__col--event{display:none}.flight-history__col--badges{grid-column:2;justify-content:flex-end;gap:6px;display:flex}.flight-history__badge{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.7rem;font-weight:600}.flight-history__badge--pb{color:#f59e0b;background:#f59e0b26}.flight-history__badge--telemetry{background:#2edaf126;font-size:.85rem}.flight-history__pagination{justify-content:center;align-items:center;gap:16px;margin-bottom:32px;display:flex}.flight-history__page-btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;border-radius:8px;padding:10px 20px;font-weight:500;transition:all .2s}.flight-history__page-btn:hover:not(:disabled){background:var(--color-accent);color:var(--color-bg-primary);border-color:var(--color-accent)}.flight-history__page-btn:disabled{opacity:.5;cursor:not-allowed}.flight-history__page-info{color:var(--color-text-muted);font-size:.9rem}.flight-history__personal-bests{margin-top:32px}.flight-history__personal-bests h2{margin-bottom:16px;font-size:1.25rem}.flight-history__pb-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.flight-history__pb-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:4px;padding:16px;display:flex}.flight-history__pb-scenario{font-size:.9rem;font-weight:600}.flight-history__pb-score{color:var(--color-accent);font-size:1.5rem;font-weight:700}.flight-history__pb-attempts{color:var(--color-text-muted);font-size:.8rem}@media (width>=768px){.flight-history__table-header{background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);grid-template-columns:180px 1fr 120px 100px 150px 80px;gap:12px;padding:12px 20px;font-size:.75rem;display:grid}.flight-history__flight{grid-template-rows:auto;grid-template-columns:180px 1fr 120px 100px 150px 80px;align-items:center;gap:12px;display:grid}.flight-history__col--date{font-size:.9rem}.flight-history__col--score{text-align:left;grid-area:auto;font-size:1rem}.flight-history__col--duration,.flight-history__col--event{color:var(--color-text-muted);font-size:.9rem;display:block}.flight-history__col--badges{grid-column:auto;justify-content:flex-start}}@media (width<=640px){.flight-history{padding:80px 16px 24px}.flight-history__header{flex-direction:column}.flight-history__stats{grid-template-columns:repeat(2,1fr)}.flight-history__stat:last-child{grid-column:span 2}.flight-history__filter-group{min-width:100%}.flight-history__pb-grid{grid-template-columns:1fr}}.scenarios-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.scenarios-header{text-align:center;margin-bottom:2rem}.scenarios-header h1{background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem}.scenarios-header p{color:#9ca3af;font-size:1.125rem}.difficulty-summary{background:#1f293780;border:1px solid #374151;border-radius:.75rem;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-bottom:2rem;padding:1rem;display:flex}.difficulty-summary__item{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;transition:all .2s;display:flex}.difficulty-summary__item:hover{background:#ffffff0d}.difficulty-summary__item.active{background:#3b82f633;border-color:#3b82f6}.difficulty-summary__count{color:#e5e7eb;font-weight:600}.scenarios-filters{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.filter-group{flex-direction:column;gap:.25rem;display:flex}.filter-group label{color:#9ca3af;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.filter-group select{color:#e5e7eb;cursor:pointer;background:#1f2937;border:1px solid #374151;border-radius:.5rem;min-width:180px;padding:.625rem 1rem;font-size:.875rem}.filter-group select:hover{border-color:#4b5563}.filter-group select:focus{border-color:#3b82f6;outline:none}.scenarios-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.scenario-card{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:.75rem;padding:1.5rem;transition:transform .2s,box-shadow .2s}.scenario-card:hover{border-color:#4b5563;transform:translateY(-2px);box-shadow:0 10px 25px -5px #0000004d}.scenario-card__header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.scenario-card__header h3{color:#f9fafb;margin:0;font-size:1.125rem;line-height:1.4}.scenario-card__desc{color:#9ca3af;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:1rem;font-size:.875rem;line-height:1.5;display:-webkit-box;overflow:hidden}.scenario-card__stats{border-top:1px solid #374151;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.75rem;padding-top:1rem;display:grid}.stat{flex-direction:column;gap:.125rem;display:flex}.stat__label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem}.stat__value{color:#e5e7eb;font-size:1rem;font-weight:600}.scenario-card__rank{color:#a78bfa;text-align:center;background:#8b5cf61a;border-radius:.375rem;margin-top:.75rem;padding:.5rem;font-size:.75rem}.scenarios-loading,.scenarios-empty,.scenarios-error{text-align:center;color:#9ca3af;padding:4rem 2rem}.scenarios-error{color:#f87171}@media (width<=640px){.scenarios-page{padding:1rem}.scenarios-header h1{font-size:1.75rem}.scenarios-filters{flex-direction:column}.filter-group select{width:100%;min-width:unset}.scenarios-grid{grid-template-columns:1fr}}.achievement-badge{border:2px solid var(--rarity-color);cursor:pointer;background:#1f2937cc;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem;transition:all .2s;display:inline-flex}.achievement-badge:hover{box-shadow:0 0 20px color-mix(in srgb, var(--rarity-color) 40%, transparent);transform:scale(1.05)}.achievement-badge--locked{opacity:.5;filter:grayscale(.8);border-color:#374151}.achievement-badge--glow.achievement-badge--unlocked{animation:2s ease-in-out infinite achievementGlow}@keyframes achievementGlow{0%,to{box-shadow:0 0 5px var(--rarity-color)}50%{box-shadow:0 0 15px var(--rarity-color), 0 0 25px color-mix(in srgb, var(--rarity-color) 50%, transparent)}}.achievement-badge__icon{font-size:1.5rem;line-height:1}.achievement-badge--sm .achievement-badge__icon{font-size:1rem}.achievement-badge--lg .achievement-badge__icon{font-size:2rem}.achievement-badge__details{flex-direction:column;gap:.125rem;display:flex}.achievement-badge__name{color:#f9fafb;font-size:.875rem;font-weight:600}.achievement-badge__rarity{color:var(--rarity-color);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem}.achievement-card{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:.75rem;gap:1rem;padding:1rem;transition:all .2s;display:flex}.achievement-card--unlocked{border-color:var(--rarity-color)}.achievement-card--locked{opacity:.6}.achievement-card--rare.achievement-card--unlocked,.achievement-card--epic.achievement-card--unlocked,.achievement-card--legendary.achievement-card--unlocked{box-shadow:0 0 20px color-mix(in srgb, var(--rarity-color) 20%, transparent)}.achievement-card__icon{background:color-mix(in srgb, var(--rarity-color) 15%, transparent);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;font-size:2rem;display:flex}.achievement-card__content{flex:1;min-width:0}.achievement-card__name{color:#f9fafb;margin:0 0 .25rem;font-size:1rem}.achievement-card__desc{color:#9ca3af;margin:0 0 .5rem;font-size:.875rem;line-height:1.4}.achievement-card__meta{gap:.75rem;font-size:.75rem;display:flex}.achievement-card__rarity{color:var(--rarity-color);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.achievement-card__points{color:#fbbf24;font-weight:600}.achievement-card__date{color:#6b7280;margin-top:.5rem;font-size:.6875rem}.achievement-progress{align-items:center;gap:.75rem;display:flex}.achievement-progress__label{color:#9ca3af;min-width:80px;font-size:.75rem}.achievement-progress__bar{background:#374151;border-radius:3px;flex:1;height:6px;overflow:hidden}.achievement-progress__fill{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:3px;height:100%;transition:width .3s}.achievement-progress__text{color:#6b7280;text-align:right;min-width:50px;font-size:.75rem}.achievement-notification{background:linear-gradient(135deg, #1f2937 0%, color-mix(in srgb, var(--rarity-color) 20%, #1f2937) 100%);border:2px solid var(--rarity-color);box-shadow:0 10px 40px color-mix(in srgb, var(--rarity-color) 30%, transparent);border-radius:.75rem;align-items:center;gap:1rem;padding:1rem 1.5rem;animation:.4s ease-out notificationSlide;display:flex}@keyframes notificationSlide{0%{opacity:0;transform:translateY(-20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.achievement-notification__icon{font-size:2.5rem;animation:.5s ease-out .2s both iconPop}@keyframes iconPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.achievement-notification__content{flex:1}.achievement-notification__title{color:var(--rarity-color);text-transform:uppercase;letter-spacing:.1em;font-size:.6875rem;font-weight:600}.achievement-notification__name{color:#f9fafb;margin:.125rem 0;font-size:1.125rem;font-weight:700}.achievement-notification__points{color:#fbbf24;font-size:.875rem;font-weight:600}.achievement-notification__close{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.25rem;line-height:1}.achievement-notification__close:hover{color:#f9fafb}@media (width<=480px){.achievement-card{text-align:center;flex-direction:column;align-items:center}.achievement-card__meta{justify-content:center}}.achievements-page{max-width:1400px;margin:0 auto;padding:2rem 1rem}.achievements-header{text-align:center;margin-bottom:2rem}.achievements-header h1{background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem}.achievements-header p{color:#9ca3af;font-size:1.125rem}.achievements-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.stat-card{text-align:center;background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:.75rem;padding:1.25rem}.stat-card--highlight{background:linear-gradient(145deg,#1f2937,#fbbf241a);border-color:#fbbf24}.stat-card__value{color:#f9fafb;font-size:1.75rem;font-weight:700}.stat-card--highlight .stat-card__value{color:#fbbf24}.stat-card__label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem;font-size:.75rem}.achievements-content{grid-template-columns:1fr 280px;gap:2rem;display:grid}.achievements-main{min-width:0}.achievements-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.filter-tabs{background:#1f2937;border-radius:.5rem;flex-wrap:wrap;gap:.25rem;padding:.25rem;display:flex}.filter-tab{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.filter-tab:hover{color:#e5e7eb}.filter-tab.active{color:#f9fafb;background:#374151}.filter-select select{color:#e5e7eb;background:#1f2937;border:1px solid #374151;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem}.achievements-list{flex-direction:column;gap:2rem;display:flex}.achievements-group__title{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1rem;display:flex}.achievements-group__title.rarity-legendary{color:#f59e0b}.achievements-group__title.rarity-epic{color:#a855f7}.achievements-group__title.rarity-rare{color:#3b82f6}.achievements-group__title.rarity-uncommon{color:#22c55e}.achievements-group__title.rarity-common{color:#6b7280}.achievements-group__count{opacity:.7;font-weight:400}.achievements-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.achievements-sidebar{flex-direction:column;gap:1rem;display:flex}.sidebar-card{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:.75rem;padding:1.25rem}.sidebar-card h3{color:#f9fafb;margin:0 0 1rem;font-size:1rem}.sidebar-empty{color:#6b7280;text-align:center;padding:1rem 0;font-size:.875rem}.leaderboard-mini{flex-direction:column;gap:.5rem;display:flex}.leaderboard-mini__item{background:#3741514d;border-radius:.375rem;align-items:center;gap:.75rem;padding:.5rem;display:flex}.leaderboard-mini__rank{color:#fbbf24;min-width:2rem;font-weight:600}.leaderboard-mini__name{color:#e5e7eb;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.875rem;overflow:hidden}.leaderboard-mini__points{color:#9ca3af;font-size:.75rem;font-weight:600}.btn-check-achievements{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:.5rem;width:100%;padding:.75rem 1rem;font-weight:600;transition:all .2s}.btn-check-achievements:hover{transform:translateY(-1px);box-shadow:0 4px 15px #3b82f666}.achievements-loading,.achievements-empty,.achievements-error{text-align:center;color:#9ca3af;padding:4rem 2rem}.achievements-error{color:#f87171}@media (width<=1024px){.achievements-content{grid-template-columns:1fr}.achievements-sidebar{order:-1}}@media (width<=640px){.achievements-page{padding:1rem}.achievements-header h1{font-size:1.75rem}.filter-tabs{width:100%}.achievements-filters{flex-direction:column;align-items:stretch}.achievements-grid{grid-template-columns:1fr}}.rank-badge{background:color-mix(in srgb, var(--rank-color,#6b7280) 15%, transparent);border:1px solid color-mix(in srgb, var(--rank-color,#6b7280) 40%, transparent);border-radius:.375rem;align-items:center;gap:.375rem;padding:.25rem .625rem;display:inline-flex}.rank-badge--sm{padding:.125rem .5rem;font-size:.75rem}.rank-badge--md{font-size:.875rem}.rank-badge--lg{padding:.375rem .875rem;font-size:1rem}.rank-badge__icon{font-size:1.125em}.rank-badge__name{color:var(--rank-color,#e5e7eb);font-weight:600}.rank-badge--tier-7,.rank-badge--tier-8,.rank-badge--tier-9,.rank-badge--tier-10{animation:2s ease-in-out infinite rankGlow}@keyframes rankGlow{0%,to{box-shadow:0 0 5px var(--rank-color)}50%{box-shadow:0 0 15px var(--rank-color)}}.xp-bar{width:100%}.xp-bar__header{justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;display:flex}.xp-bar__current{color:#f9fafb;font-weight:600}.xp-bar__next{color:#9ca3af}.xp-bar__track{background:#374151;border-radius:4px;height:8px;margin-bottom:.25rem;overflow:hidden}.xp-bar__fill{background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);border-radius:4px;height:100%;transition:width .5s;box-shadow:0 0 10px #8b5cf680}.xp-bar__percent{text-align:right;color:#6b7280;font-size:.6875rem}.xp-gain{align-items:center;gap:.375rem;font-weight:600;display:inline-flex}.xp-gain--positive{color:#22c55e}.xp-gain--negative{color:#ef4444}.xp-gain__source{color:#9ca3af;font-size:.85em;font-weight:400}.streak-badge{background:linear-gradient(135deg,#f59e0b,#ef4444);border-radius:9999px;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.875rem;display:inline-flex}.streak-badge__icon{animation:1s ease-in-out infinite streakPulse}@keyframes streakPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.streak-badge__count{color:#fff;font-weight:700}.streak-badge__label{color:#fffc;font-size:.75em}.rankup-notification{background:linear-gradient(135deg, #1f2937 0%, color-mix(in srgb, var(--rank-color) 30%, #1f2937) 100%);border:2px solid var(--rank-color);box-shadow:0 0 40px var(--rank-color);border-radius:1rem;align-items:center;gap:1rem;padding:1.5rem 2rem;animation:.5s ease-out rankUpSlide;display:flex}@keyframes rankUpSlide{0%{opacity:0;transform:scale(.8)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.rankup-notification__icon{font-size:4rem;animation:.6s ease-out .2s both rankUpIcon}@keyframes rankUpIcon{0%{transform:scale(0)rotate(-180deg)}50%{transform:scale(1.2)rotate(10deg)}to{transform:scale(1)rotate(0)}}.rankup-notification__content{flex:1}.rankup-notification__title{color:var(--rank-color);text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;font-weight:700;animation:.4s ease-out .3s both rankUpText}.rankup-notification__rank{color:#f9fafb;font-size:1.75rem;font-weight:800;animation:.4s ease-out .4s both rankUpText}.rankup-notification__tier{color:#9ca3af;font-size:.875rem;animation:.4s ease-out .5s both rankUpText}@keyframes rankUpText{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.rankup-notification__close{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:.5rem;font-size:1.5rem;line-height:1}.rankup-notification__close:hover{color:#f9fafb}.progression-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.progression-header{text-align:center;margin-bottom:2rem}.progression-header h1{background:linear-gradient(135deg,#3b82f6,#8b5cf6,#ec4899);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem}.progression-header p{color:#9ca3af;font-size:1.125rem}.my-progress-card{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:1rem;margin-bottom:2rem;padding:2rem}.my-progress-card__rank{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.my-progress-card__xp{margin-bottom:1.5rem}.my-progress-card__activity h4{color:#9ca3af;margin:0 0 .75rem;font-size:.875rem}.activity-list{flex-direction:column;gap:.5rem;display:flex}.activity-item{background:#3741514d;border-radius:.375rem;justify-content:space-between;padding:.5rem;font-size:.875rem;display:flex}.activity-item__source{color:#e5e7eb}.activity-item__amount.positive{color:#22c55e;font-weight:600}.activity-item__amount.negative{color:#ef4444;font-weight:600}.login-prompt{text-align:center;color:#9ca3af;background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:1rem;margin-bottom:2rem;padding:3rem 2rem}.progression-content{gap:2rem;margin-bottom:2rem;display:grid}.ranks-section h2,.leaderboard-section h2,.xp-info h2{color:#f9fafb;margin-bottom:1rem;font-size:1.25rem}.ranks-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;display:grid}.rank-card{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:.75rem;gap:1rem;padding:1rem;transition:all .2s;display:flex;position:relative}.rank-card--achieved{opacity:.6}.rank-card--current{border-color:var(--rank-color);box-shadow:0 0 20px color-mix(in srgb, var(--rank-color) 30%, transparent)}.rank-card__icon{font-size:2rem}.rank-card__info{flex:1}.rank-card__name{color:var(--rank-color,#f9fafb);font-weight:600}.rank-card__tier{color:#6b7280;font-size:.75rem}.rank-card__xp{color:#9ca3af;margin-top:.25rem;font-size:.875rem}.rank-card__badge{background:var(--rank-color);color:#fff;text-transform:uppercase;border-radius:.25rem;padding:.125rem .5rem;font-size:.625rem;font-weight:700;position:absolute;top:-.5rem;right:.5rem}.leaderboard-section{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:1rem;padding:1.5rem}.leaderboard-table{flex-direction:column;display:flex}.leaderboard-header{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #374151;grid-template-columns:50px 1fr 100px 120px 100px;gap:.5rem;padding:.75rem;font-size:.75rem;display:grid}.leaderboard-row{border-bottom:1px solid #1f2937;grid-template-columns:50px 1fr 100px 120px 100px;align-items:center;gap:.5rem;padding:.75rem;font-size:.875rem;display:grid}.leaderboard-row:hover{background:#3741514d}.leaderboard-row--me{background:#3b82f61a;border-color:#3b82f6}.col-rank{font-size:1rem;font-weight:600}.col-pilot{color:#e5e7eb;align-items:center;gap:.5rem;display:flex}.streak-mini{opacity:.8;font-size:.75rem}.col-xp{color:#f9fafb;font-weight:600}.col-stats{color:#9ca3af;gap:.75rem;font-size:.75rem;display:flex}.xp-info{background:linear-gradient(145deg,#1f2937,#111827);border:1px solid #374151;border-radius:1rem;padding:1.5rem}.xp-sources-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;display:grid}.xp-source-card{text-align:center;background:#3741514d;border-radius:.5rem;flex-direction:column;align-items:center;padding:1rem;display:flex}.xp-source-card__icon{margin-bottom:.5rem;font-size:1.5rem}.xp-source-card__name{color:#e5e7eb;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.xp-source-card__desc{color:#9ca3af;font-size:.75rem}.empty-state{text-align:center;color:#6b7280;padding:2rem}@media (width<=768px){.progression-page{padding:1rem}.progression-header h1{font-size:1.75rem}.leaderboard-header,.leaderboard-row{grid-template-columns:40px 1fr 80px}.col-tier,.col-stats{display:none}.ranks-grid{grid-template-columns:1fr}}.flight-detail{min-height:calc(100vh - 80px);padding:100px 24px 40px}.flight-detail__container{max-width:900px;margin:0 auto}.flight-detail__loading,.flight-detail__error{text-align:center;color:var(--color-text-muted);padding:60px 20px}.flight-detail__error h2{color:var(--color-text-primary);margin-bottom:16px}.flight-detail__error a{color:var(--color-accent);text-decoration:none}.flight-detail__error a:hover{text-decoration:underline}.flight-detail__back{color:var(--color-accent);margin-bottom:24px;font-size:.9rem;text-decoration:none;display:inline-block}.flight-detail__back:hover{text-decoration:underline}.flight-detail__header{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:32px;display:flex}.flight-detail__title-section h1{margin-bottom:8px;font-size:1.75rem;font-weight:700}.flight-detail__date{color:var(--color-text-muted);margin-bottom:12px;font-size:.95rem}.flight-detail__badges{flex-wrap:wrap;gap:8px;display:flex}.flight-detail__badge{border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:600;text-decoration:none}.flight-detail__badge--pb{color:#f59e0b;background:#f59e0b26}.flight-detail__badge--event{color:#a855f7;background:#a855f726}.flight-detail__badge--event:hover{background:#a855f740}.flight-detail__score-section{text-align:right;min-width:140px}.flight-detail__score{color:var(--color-accent);font-size:2.5rem;font-weight:700;line-height:1}.flight-detail__max-score{color:var(--color-text-muted);font-size:1.25rem}.flight-detail__score-bar{background:var(--color-bg-secondary);border-radius:3px;width:100%;height:6px;margin-top:12px;overflow:hidden}.flight-detail__score-fill{background:var(--color-accent);border-radius:3px;height:100%;transition:width .5s}.flight-detail__stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:32px;display:grid}.flight-detail__stat{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:12px;padding:20px}.flight-detail__stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.75rem;display:block}.flight-detail__stat-value{color:var(--color-text-primary);font-size:1.5rem;font-weight:700}.flight-detail__stat-value--mono{font-family:monospace;font-size:1.2rem}.flight-detail__stat-context{color:var(--color-text-muted);margin-left:4px;font-size:.85rem;font-weight:400}.flight-detail__section{margin-bottom:32px}.flight-detail__section h2{color:var(--color-text-secondary);margin-bottom:16px;font-size:1.1rem;font-weight:600}.flight-detail__scenario-desc{color:var(--color-text-muted);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:20px;line-height:1.6}.flight-detail__telemetry{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;position:relative;overflow:hidden}.flight-detail__canvas{width:100%;height:400px;display:block}.flight-detail__telemetry-legend{flex-direction:column;gap:8px;display:flex;position:absolute;top:16px;right:16px}.flight-detail__legend-item{color:var(--color-text-muted);background:#0009;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.75rem;display:flex}.flight-detail__legend-item:before{content:"";border-radius:50%;width:12px;height:12px}.flight-detail__legend-item--start:before{background:#22c55e}.flight-detail__legend-item--end:before{background:#ef4444}.flight-detail__telemetry-info{border-top:1px solid var(--color-border);color:var(--color-text-muted);text-align:center;padding:12px 16px;font-size:.85rem}.flight-detail__no-telemetry{background:var(--color-bg-card);border:1px solid var(--color-border);text-align:center;border-radius:12px;padding:40px 20px}.flight-detail__no-telemetry p{color:var(--color-text-muted);margin-bottom:8px}.flight-detail__no-telemetry-hint{opacity:.7;font-size:.85rem}.flight-detail__raw-telemetry{background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:12px;max-height:300px;padding:20px;font-family:monospace;font-size:.85rem;overflow:auto}@media (width<=640px){.flight-detail{padding:80px 16px 24px}.flight-detail__header{flex-direction:column;padding:24px}.flight-detail__score-section{text-align:left;width:100%}.flight-detail__score{font-size:2rem}.flight-detail__stats-grid{grid-template-columns:repeat(2,1fr)}.flight-detail__canvas{height:280px}}.account-settings{max-width:800px;margin:0 auto;padding:2rem}.settings-header{margin-bottom:2rem}.settings-header h1{color:var(--color-text-primary);margin:0 0 .5rem;font-size:2rem;font-weight:700}.settings-subtitle{color:var(--color-text-secondary);margin:0}.settings-content{flex-direction:column;gap:2rem;display:flex}.settings-section{border:1px solid var(--color-border);background:linear-gradient(145deg,#1f2937,#111827);border-radius:.75rem;padding:1.5rem}.settings-section h2{border-bottom:1px solid var(--color-border);color:var(--color-text-primary);margin:0 0 1rem;padding-bottom:.75rem;font-size:1.25rem;font-weight:600}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.info-item{flex-direction:column;gap:.25rem;display:flex}.info-item label{color:var(--color-text-muted);font-size:.875rem;font-weight:500}.info-item span{color:var(--color-text-primary);font-size:1rem}.password-form{flex-direction:column;gap:1rem;max-width:400px;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--color-text-secondary);font-size:.875rem;font-weight:500}.form-group input{border:1px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-primary);border-radius:6px;padding:.75rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.form-group input::placeholder{color:var(--color-text-muted)}.form-group input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #2edaf126}.error-message{color:#f87171;background:#ef444426;border:1px solid #ef44444d;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.success-message{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.btn{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-bg-primary)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 15px #2edaf14d}.btn-secondary{color:var(--color-text-primary);background:#374151}.btn-secondary:hover:not(:disabled){background:#4b5563}.btn-danger{color:#fff;background:#dc2626}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 15px #dc26264d}.become-host-section{background:linear-gradient(145deg,#2edaf10d,#111827);border-color:#2edaf14d}.become-host-section h2{color:var(--color-accent);border-bottom-color:#2edaf14d}.become-host-content{flex-direction:column;gap:1rem;display:flex}.become-host-info p{color:var(--color-text-secondary);margin:0;font-size:.9375rem;line-height:1.6}.info-message{color:#93c5fd;background:#3b82f626;border:1px solid #3b82f64d;border-radius:6px;padding:.75rem 1rem;font-size:.875rem}.danger-zone{background:linear-gradient(145deg,#7f1d1d33,#111827);border-color:#ef44444d}.danger-zone h2{color:#f87171;border-bottom-color:#ef44444d}.danger-content{justify-content:space-between;align-items:center;gap:2rem;display:flex}.danger-info h3{color:var(--color-text-primary);margin:0 0 .5rem;font-size:1rem;font-weight:600}.danger-info p{color:var(--color-text-secondary);margin:0;font-size:.875rem}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{border:1px solid var(--color-border);background:linear-gradient(145deg,#1f2937,#111827);border-radius:12px;width:100%;max-width:500px;max-height:90vh;padding:2rem;overflow-y:auto}.modal-content h2{color:var(--color-text-primary);margin:0 0 1rem;font-size:1.5rem}.modal-warning{background:#7f1d1d4d;border:1px solid #ef44444d;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.modal-warning p{color:#fca5a5;margin:0 0 .75rem}.modal-warning ul{color:#f87171;margin:0;padding-left:1.25rem;font-size:.875rem}.modal-warning li{margin:.25rem 0}.modal-actions{justify-content:flex-end;gap:1rem;margin-top:1.5rem;display:flex}.loading{min-height:200px;color:var(--color-text-secondary);justify-content:center;align-items:center;display:flex}@media (width<=600px){.account-settings{padding:1rem}.danger-content{flex-direction:column;align-items:flex-start}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.legal-page{background-color:var(--color-bg-primary);min-height:calc(100vh - 80px);padding:48px 24px}.legal-page__container{max-width:800px;margin:0 auto}.legal-page__header{text-align:center;margin-bottom:40px}.legal-page__draft-badge{color:#ffc107;letter-spacing:.1em;background-color:#ffc10726;border-radius:4px;margin-bottom:16px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-block}.legal-page__title{color:var(--color-text-primary);margin-bottom:8px;font-size:36px;font-weight:700}.legal-page__subtitle{color:var(--color-text-secondary);font-size:18px}.legal-page__effective{color:var(--color-text-muted);font-size:14px}.legal-page__content{color:var(--color-text-secondary);line-height:1.7}.legal-page__section{margin-bottom:32px}.legal-page__section h2{color:var(--color-text-primary);margin-bottom:12px;font-size:20px;font-weight:600}.legal-page__section h3{color:var(--color-text-primary);margin-top:16px;margin-bottom:8px;font-size:16px;font-weight:600}.legal-page__section p{margin-bottom:12px}.legal-page__section ul{margin:12px 0;padding-left:24px}.legal-page__section li{margin-bottom:8px}.contact-grid{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.contact-card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:24px;transition:border-color .2s,background-color .2s}.contact-card:hover{border-color:var(--color-accent);background-color:var(--color-bg-card-hover)}.contact-card__icon{width:40px;height:40px;color:var(--color-accent);margin-bottom:16px}.contact-card__icon svg{width:100%;height:100%}.contact-card__title{color:var(--color-text-primary);margin-bottom:8px;font-size:18px;font-weight:600}.contact-card__description{color:var(--color-text-secondary);margin-bottom:16px;font-size:14px;line-height:1.5}.contact-card__link{color:var(--color-accent);font-size:14px;font-weight:500;transition:color .2s}.contact-card__link:hover{color:var(--color-accent-hover)}@media (width<=640px){.legal-page{padding:32px 16px}.legal-page__title{font-size:28px}.contact-grid{grid-template-columns:1fr}}.app{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;padding-top:80px}*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-primary:#000;--color-bg-secondary:#0a0a0a;--color-bg-card:#111;--color-bg-card-hover:#1a1a1a;--color-accent:#2edaf1;--color-accent-hover:#5ae4f5;--color-text-primary:#fff;--color-text-secondary:#bebcbc;--color-text-muted:#7e7e7e;--color-border:#333;--color-gold:gold;--color-silver:silver;--color-bronze:#cd7f32;--font-display:"Raleway", sans-serif;--font-body:"Inter", sans-serif}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-hover)}button{font-family:var(--font-body);cursor:pointer}.container{max-width:1280px;margin:0 auto;padding:0 24px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}
