@import"https://fonts.googleapis.com/css2?family=Cabin:wght@600;700&family=DM+Mono:wght@500&family=Inter:wght@300;400;500;600&family=JetBrains+Mono:wght@400;500&family=Space+Grotesk:wght@500;600;700&display=swap";/*! tailwindcss v4.1.12 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}:root{--figma-surface-base:#fff8f5;--figma-surface-raised:#eaeae6;--figma-background:#509ed8;--figma-texte-titre:#f1582a;--figma-texte-titre-var:#fff8f5;--figma-texte-corp:#1f2937;--figma-texte-corp-var:#374962;--figma-border:#b2aaaa;--figma-gray-0:#fff8f5;--figma-gray-50:#eaeae6;--figma-gray-400:#1b1c17;--figma-warning-disabled:#fce9cf;--figma-warning-hover:#f6be6f;--figma-on-surface:#1f2937;--figma-white:#fff;--figma-dark-gray:#333;--dark-surface-base:#1a1816;--dark-surface-raised:#252220;--dark-border:#3f3f3f;--dark-text-primary:#fff;--dark-text-muted:#ffffffc7;--dark-text-secondary:#ffffffa6;--grid-base:2px;--figma-spacing-none:0;--figma-spacing-s-2:4px;--figma-spacing-s:8px;--figma-spacing-m-3:12px;--figma-spacing-m-2:16px;--figma-spacing-m:24px;--figma-spacing-4:24px;--figma-spacing-3:32px;--figma-spacing-xxl:40px;--figma-spacing-xxxl:48px;--figma-spacing-10:80px;--figma-font-body:"Inter",system-ui,sans-serif;--figma-font-headings:"Space Grotesk",system-ui,sans-serif;--figma-font-display:"Space Grotesk",system-ui,sans-serif;--figma-font-components:"JetBrains Mono",ui-monospace,monospace;--figma-size-xs:12px;--figma-size-sm:14px;--figma-size-base:16px;--figma-size-lg:20px;--figma-size-xl:24px;--figma-size-2xl:32px;--figma-size-display:72px;--figma-line-tighter:16px;--figma-line-tight:20px;--figma-line-base:24px;--figma-line-relaxed:32px;--figma-line-hero:64px;--text-display-font-size:var(--figma-size-display);--text-display-line-height:var(--figma-line-hero);--text-display-font-family:var(--figma-font-display);--text-h1-font-size:48px;--text-h1-line-height:1.15;--text-h1-font-family:var(--figma-font-headings);--text-h2-font-size:40px;--text-h2-line-height:1.2;--text-h2-font-family:var(--figma-font-headings);--text-h3-font-size:var(--figma-size-2xl);--text-h3-line-height:var(--figma-line-relaxed);--text-h3-font-family:var(--figma-font-headings);--text-h4-font-size:var(--figma-size-xl);--text-h4-line-height:var(--figma-line-base);--text-h4-font-family:var(--figma-font-headings);--text-lead-font-size:var(--figma-size-lg);--text-lead-line-height:var(--figma-line-tight);--text-lead-font-family:var(--figma-font-body);--text-body-font-size:var(--figma-size-base);--text-body-line-height:var(--figma-line-base);--text-body-font-family:var(--figma-font-body);--text-body-sm-font-size:var(--figma-size-sm);--text-body-sm-line-height:var(--figma-line-base);--text-body-sm-font-family:var(--figma-font-body);--text-caption-font-size:var(--figma-size-xs);--text-caption-line-height:var(--figma-line-tighter);--text-caption-font-family:var(--figma-font-body);--text-mono-font-family:var(--figma-font-components);--color-bg-primary:var(--dark-surface-base);--color-bg-surface:var(--dark-surface-raised);--color-border-default:var(--dark-border);--color-text-primary:var(--dark-text-primary);--color-text-muted:var(--dark-text-muted);--color-text-secondary:var(--dark-text-secondary);--color-accent:var(--figma-texte-titre);--color-brand-primary:var(--figma-texte-titre);--color-brand-secondary:var(--figma-background);--color-card-bg:#0000004d;--spacing-1:var(--grid-base);--spacing-2:var(--figma-spacing-s-2);--spacing-3:var(--figma-spacing-s);--spacing-4:var(--figma-spacing-s);--spacing-5:10px;--spacing-6:var(--figma-spacing-m-3);--spacing-8:var(--figma-spacing-m-2);--spacing-10:20px;--spacing-12:var(--figma-spacing-m);--spacing-14:28px;--spacing-16:var(--figma-spacing-3);--spacing-20:var(--figma-spacing-xxl);--spacing-24:var(--figma-spacing-xxxl);--spacing-32:64px;--spacing-40:var(--figma-spacing-10);--font-size-xs:var(--text-caption-font-size);--font-size-sm:var(--text-body-sm-font-size);--font-size-base:var(--text-body-font-size);--font-size-md:var(--text-body-font-size);--font-size-lg:var(--text-lead-font-size);--font-size-xl:var(--text-h4-font-size);--font-size-2xl:var(--text-h4-font-size);--font-size-3xl:var(--text-h3-font-size);--font-size-4xl:var(--text-h2-font-size);--font-size-5xl:var(--text-h1-font-size);--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--font-h1-size:var(--text-h1-font-size);--font-h1-line-height:var(--text-h1-line-height);--font-h2-size:var(--text-h2-font-size);--font-h2-line-height:var(--text-h2-line-height);--font-h3-size:var(--text-h3-font-size);--font-h3-line-height:1.25;--font-h4-size:var(--text-h4-font-size);--font-h4-line-height:1.3;--font-body-size:var(--text-body-font-size);--font-body-line-height:var(--text-body-line-height);--font-body-sm-size:var(--text-body-sm-font-size);--font-body-sm-line-height:var(--text-body-sm-line-height);--transition-base:all .2s ease;--transition-smooth:all .3s ease-in-out}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}:root{font-family:var(--text-body-font-family);font-size:var(--text-body-font-size);line-height:var(--text-body-line-height);color-scheme:dark;color:var(--color-text-primary);background-color:var(--color-bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400}h1{font-family:var(--text-h1-font-family);font-size:var(--text-h1-font-size);line-height:var(--text-h1-line-height);font-weight:600}h2{font-family:var(--text-h2-font-family);font-size:var(--text-h2-font-size);line-height:var(--text-h2-line-height);font-weight:600}h3{font-family:var(--text-h3-font-family);font-size:var(--text-h3-font-size);line-height:var(--text-h3-line-height);font-weight:600}h4{font-family:var(--text-h4-font-family);font-size:var(--text-h4-font-size);line-height:var(--text-h4-line-height);font-weight:600}p{font-size:var(--text-body-font-size);line-height:var(--text-body-line-height)}small,.text-caption{font-size:var(--text-caption-font-size);line-height:var(--text-caption-line-height)}.text-display{font-family:var(--text-display-font-family);font-size:var(--text-display-font-size);line-height:var(--text-display-line-height);font-weight:600}.text-lead{font-family:var(--text-lead-font-family);font-size:var(--text-lead-font-size);line-height:var(--text-lead-line-height)}.text-body-sm{font-size:var(--text-body-sm-font-size);line-height:var(--text-body-sm-line-height)}.text-mono{font-family:var(--text-mono-font-family)}*,:before,:after{box-sizing:border-box}body{background-color:#0000;min-height:100vh;margin:0;position:relative;overflow-x:hidden}body:before{content:"";opacity:.15;z-index:1;pointer-events:none;background-image:url(/app-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;width:100%;height:100%;position:fixed;top:0;left:0}body:after{content:"";background-color:var(--color-bg-primary,#0b0e11);z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}html{overflow-x:hidden}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-radius:50px}::-webkit-scrollbar-thumb{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #d8d8d833;border-radius:50px}::-webkit-scrollbar-thumb:hover{background:#fff3;border:1px solid #d8d8d84d}::-webkit-scrollbar-corner{background:#ffffff0d}*{scrollbar-width:thin;scrollbar-color:#ffffff1a #ffffff0d}#root{min-height:100vh}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}.app-root{min-height:100vh;position:relative;z-index:2;background-color:transparent}.app-bg-globe{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;z-index:1;pointer-events:none}.app-root--globe-interactive .app-bg-globe{pointer-events:auto}.app-root--globe-interactive .app-content,.app-root--globe-interactive .app-content .saison-page{pointer-events:none}.app-root--globe-interactive .app-content .saison-page>*{pointer-events:auto}.app-root--globe-interactive .app-content .saison-body{pointer-events:none}.app-root--globe-interactive .app-content .saison-body>*{pointer-events:auto}.app-root--globe-interactive .app-content .saison-main{pointer-events:none}.app-root--globe-interactive .app-content .saison-main>*{pointer-events:auto}.app-root--globe-interactive .app-content .saison-map-block{pointer-events:none}.app-root--globe-interactive{height:100vh;overflow:hidden}.app-root--globe-interactive .app-content{height:100%;min-height:0}.app-bg-globe>*{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.app-content{position:relative;z-index:10;min-height:100vh}.webgl-globe{width:100%;height:100%;min-height:280px;position:relative;background:#0a0a0a;border-radius:inherit}.webgl-globe canvas{display:block;width:100%!important;height:100%!important;object-fit:contain;object-position:center}.courses-page{display:flex;flex-direction:column;gap:var(--spacing-12, 24px);padding:calc(var(--spacing-8, 16px) + var(--topbar-height, 56px)) var(--spacing-12, 24px) var(--spacing-16, 32px);min-height:100vh;color:var(--color-text-primary, #e5e7eb);transition:var(--transition-smooth)}.courses-body{display:flex;gap:var(--spacing-12, 24px)}.courses-side{position:fixed;top:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px));left:var(--spacing-6, 12px);width:200px;display:flex;align-items:flex-start;z-index:90;transition:var(--transition-smooth)}.courses-nav{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:#0b0e1199;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);display:flex;flex-direction:column;gap:var(--spacing-4, 8px)}.courses-nav__item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);text-align:left;cursor:pointer;padding:var(--spacing-1, 2px) 0;font-weight:500;transition:var(--transition-base)}.courses-nav__item--active{color:var(--color-accent, #bfc900);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);letter-spacing:0}.courses-main{display:flex;flex-direction:column;gap:var(--spacing-20, 40px);row-gap:var(--spacing-20, 40px);margin-left:224px;width:calc(100% - 224px);flex:1 0 0;transition:var(--transition-smooth)}@media(max-width:768px){.courses-main{margin-left:0}}.courses-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-12, 24px);margin-top:var(--spacing-12, 24px)}.courses-header__title{font-family:Cabin,sans-serif;font-size:var(--font-h2-size, 40px);line-height:var(--font-h2-line-height, 1.2);color:var(--color-accent, #bfc900);letter-spacing:.12em;margin:0 0 var(--spacing-4, 8px)}.courses-header__flag{width:var(--spacing-20, 40px);height:var(--spacing-20, 40px);border-radius:50%;overflow:hidden}.courses-header__flag img{width:100%;height:100%;object-fit:cover}.courses-header__subtitle{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.courses-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-8, 16px)}.course-card{width:340px;padding:var(--spacing-4, 8px);overflow:hidden;border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);display:flex;flex-direction:column;align-items:flex-start;align-content:flex-start;gap:var(--spacing-2, 4px);flex-wrap:wrap;cursor:pointer;transition:var(--transition-base)}.course-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.course-card:focus-visible{outline:var(--spacing-1, 2px) solid var(--color-brand-primary, #d4df00);outline-offset:var(--spacing-1, 2px)}.course-card__top{width:100%;display:flex;justify-content:flex-start;align-items:flex-start;gap:var(--spacing-2, 4px)}.course-card__gpx{box-sizing:border-box;display:flex;width:60px;flex-shrink:0;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;padding-right:var(--spacing-2, 4px);padding-left:var(--spacing-2, 4px)}.course-card__gpx img{width:56px;height:auto;object-fit:contain}.course-card__gpx-svg{width:56px;height:auto;display:flex;align-items:center;justify-content:center;overflow:hidden}.course-card__gpx-svg svg{width:100%;height:100%;max-width:100%;max-height:100%;display:block;object-fit:contain}.course-card__gpx-svg svg path,.course-card__gpx-svg svg polyline{stroke:#b2aaaa;stroke-width:var(--spacing-1, 2px);fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.course-card__content{flex:1;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;gap:var(--spacing-2, 4px)}.course-card__title{width:100%;font-family:Inter,sans-serif;font-size:var(--font-h4-size, 24px);line-height:var(--font-h4-line-height, 1.3);color:var(--color-text-primary, #e5e7eb);font-weight:500;margin:0}.course-card__stats{font-family:Inter,sans-serif;font-size:var(--font-size-lg, 18px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-primary, #e5e7eb);font-weight:500;margin:0}.course-card__footer{width:calc(100% + var(--spacing-8, 16px));margin-left:calc(-1 * var(--spacing-4, 8px));margin-right:calc(-1 * var(--spacing-4, 8px));margin-bottom:calc(-1 * var(--spacing-4, 8px));box-sizing:border-box;display:flex;flex-direction:row;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.3);padding-top:var(--spacing-2, 4px);padding-left:var(--spacing-4, 8px);padding-right:var(--spacing-4, 8px);padding-bottom:var(--spacing-4, 8px)}.course-card__footer-left{flex:1;min-width:0;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.course-card__footer-left p,.course-card__footer-prep{font-family:Inter,sans-serif;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-primary, #e5e7eb);font-weight:500;margin:0;text-align:center}.course-card__footer-left strong{font-weight:500}.course-card__footer-right{flex:1;min-width:0;border-left:1px solid rgba(255,255,255,.3);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:var(--spacing-4, 8px) var(--spacing-2, 4px);gap:0}.course-card__footer-right p{margin:0}.course-card__footer-right p:first-child{font-family:Inter,sans-serif;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-primary, #e5e7eb);font-weight:400;text-align:center}.course-card__countdown{font-family:Space Grotesk,sans-serif;font-size:var(--font-size-base, 14px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-primary, #e5e7eb);font-weight:700;margin:0;text-align:center}.modal-field__hint{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72));margin-top:var(--spacing-2, 4px)}@media(max-width:768px){.courses-page{padding-bottom:var(--spacing-40, 80px)}.courses-side{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:auto;z-index:90}.courses-nav{flex-direction:row;justify-content:space-around;border-radius:0;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1);padding:var(--spacing-6, 12px) var(--spacing-4, 8px)}.courses-nav__item{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.courses-nav__item--active{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}.courses-main{margin-left:0;width:100%;padding-bottom:var(--spacing-40, 80px)}.courses-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-8, 16px)}.info-card{width:100%}}.saison-topbar{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8, 16px);padding:var(--spacing-4, 8px) var(--spacing-8, 16px);background:transparent;transition:var(--transition-smooth)}.saison-topbar__logo{cursor:pointer;display:inline-block}.saison-topbar__logo img{width:64px;height:var(--spacing-8, 16px);aspect-ratio:32 / 9}.saison-topbar__race{display:flex;align-items:center;justify-content:center;gap:var(--spacing-8, 16px);flex-wrap:wrap}.race-tag{display:inline-flex;align-items:center;gap:var(--spacing-4, 8px);padding:var(--spacing-2, 4px) var(--spacing-5, 10px);border-radius:var(--spacing-4, 8px);background:var(--color-brand-secondary, rgba(76, 141, 255, .12));-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:.12em;text-transform:none}.race-tag__flag{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border-radius:50%;overflow:hidden;flex-shrink:0}.race-tag__flag img{width:100%;height:100%;object-fit:cover}.race-meta{font-family:DM Mono,monospace;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);margin:0}.race-progress{display:flex;align-items:center;gap:var(--spacing-4, 8px);font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-brand-primary, #d4df00);text-transform:lowercase}.race-progress__bar{width:112px;height:var(--spacing-6, 12px);border-radius:var(--spacing-2, 4px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:linear-gradient(to right,var(--color-brand-primary, #d4df00) 65%,transparent 65%)}.saison-topbar__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-6, 12px);margin-left:auto}.saison-topbar__weather{display:flex;align-items:center;gap:var(--spacing-3, 6px);padding:var(--spacing-2, 4px) var(--spacing-5, 10px);border-radius:var(--spacing-4, 8px);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--color-text-secondary, #9ca3af);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5)}.saison-topbar__weather-icon{display:flex;align-items:center;justify-content:center;color:var(--color-brand-primary, #d4df00)}.saison-topbar__weather-icon svg{width:18px;height:18px;flex-shrink:0}.saison-topbar__weather-text{white-space:nowrap}.saison-topbar__user-trigger{display:flex;align-items:center;justify-content:center;width:var(--spacing-20, 40px);height:var(--spacing-20, 40px);min-width:var(--spacing-20, 40px);min-height:var(--spacing-20, 40px);border-radius:50%;overflow:hidden;background:#ffffff0d;border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);color:var(--color-text-primary, #e5e7eb);cursor:pointer;transition:var(--transition-base);flex-shrink:0}.saison-topbar__user-trigger:hover{background:#ffffff1a;border-color:#fff3;color:var(--color-accent, #bfc900)}.saison-topbar__user-trigger svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px)}.saison-topbar__user-trigger-avatar{width:100%;height:100%;min-width:100%;min-height:100%;border-radius:50%;object-fit:cover;object-position:center;display:block;aspect-ratio:1}.saison-topbar__user{display:flex;align-items:center;gap:var(--spacing-6, 12px);margin-left:auto;padding:var(--spacing-2, 4px) var(--spacing-6, 12px);border-radius:var(--spacing-10, 20px);background:#ffffff0d;border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);transition:var(--transition-base)}.saison-topbar__user-avatar{width:var(--spacing-16, 32px);height:var(--spacing-16, 32px);border-radius:50%;object-fit:cover;border:var(--spacing-1, 2px) solid var(--color-accent, #bfc900);flex-shrink:0}.saison-topbar__user-info{display:flex;flex-direction:column;gap:var(--spacing-1, 2px);background:transparent;border:none;padding:0;cursor:pointer;transition:var(--transition-base);text-align:left}.saison-topbar__user-info:hover{opacity:.8}.saison-topbar__user-info:active{opacity:.6}.saison-topbar__user-name{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:500;color:var(--color-text-primary, #e5e7eb);white-space:nowrap}.saison-topbar__user-logout{background:transparent;border:none;color:var(--color-text-secondary, #9ca3af);font-size:var(--font-size-xl, 20px);line-height:var(--line-height-tight, 1.2);cursor:pointer;padding:var(--spacing-2, 4px) var(--spacing-4, 8px);border-radius:var(--spacing-2, 4px);transition:var(--transition-base);flex-shrink:0;display:flex;align-items:center;justify-content:center}.saison-topbar__user-logout:hover{background:#ffffff1a;color:var(--color-text-primary, #e5e7eb)}.saison-topbar__user-logout svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.btn{border-radius:26px;padding:var(--spacing-2, 4px) var(--spacing-8, 16px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:.12em;text-transform:none;border:var(--spacing-1, 2px) solid transparent;cursor:pointer;background:transparent;color:var(--color-text-primary, #e5e7eb);transition:var(--transition-base)}.btn--ghost{border-color:#e5e7eb4d}.btn--primary{background:var(--color-brand-primary);color:var(--color-bg-primary, #0b0e11)}@media(max-width:768px){.saison-topbar{padding:var(--spacing-4, 8px) var(--spacing-6, 12px);gap:var(--spacing-4, 8px)}.saison-topbar__actions{margin-left:auto}.saison-topbar__user{gap:var(--spacing-4, 8px);padding:var(--spacing-2, 4px) var(--spacing-4, 8px)}.saison-topbar__user-avatar{width:var(--spacing-14, 28px);height:var(--spacing-14, 28px)}.saison-topbar__user-name{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5)}.saison-topbar__user-logout{font-size:var(--font-size-lg, 18px);line-height:var(--line-height-tight, 1.2);padding:var(--spacing-1, 2px) var(--spacing-2, 4px)}}.login-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;backdrop-filter:blur(var(--spacing-4, 8px));-webkit-backdrop-filter:blur(var(--spacing-4, 8px));display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-8, 16px);transition:var(--transition-smooth)}.login-modal-overlay--hidden{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}.login-modal{width:100%;max-width:440px;max-height:90vh;background:var(--color-bg-primary, #0b0e11);border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);border-radius:var(--spacing-8, 16px);padding:var(--spacing-12, 24px) var(--spacing-12, 24px);display:flex;flex-direction:column;gap:var(--spacing-8, 16px);position:relative;box-shadow:0 var(--spacing-6, 12px) var(--spacing-20, 40px) #00000080;transition:var(--transition-smooth);overflow-y:auto}.login-modal__close{position:absolute;top:var(--spacing-8, 16px);right:var(--spacing-8, 16px);width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border:none;background:transparent;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--spacing-4, 8px);transition:var(--transition-base)}.login-modal__close:hover{background:#ffffff1a}.login-modal__close svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.login-modal__header{display:flex;flex-direction:column;gap:var(--spacing-4, 8px);text-align:center}.login-modal__title{margin:0;font-family:Cabin,sans-serif;font-size:var(--font-h3-size, 32px);line-height:var(--font-h3-line-height, 1.25);font-weight:600;color:var(--color-accent, #bfc900);letter-spacing:.02em}.login-modal__subtitle{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}.login-modal__forgot-link{background:none;border:none;padding:0;margin-top:var(--spacing-2, 4px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-accent, #bfc900);text-decoration:none;cursor:pointer;text-align:right;align-self:flex-end;transition:var(--transition-base);font-family:inherit;letter-spacing:.02em}.login-modal__forgot-link:hover{text-decoration:underline;opacity:.9;color:var(--color-brand-primary, #d4df00)}.login-modal__success{display:flex;flex-direction:column;gap:var(--spacing-12, 24px);text-align:center;padding:var(--spacing-4, 8px) 0}.login-modal__success .login-modal__switch{width:100%;text-align:center;margin-top:var(--spacing-4, 8px)}.login-modal__success-message{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-accent, #bfc900);font-weight:500}.login-modal__success-note{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}.login-modal__form{display:flex;flex-direction:column;gap:var(--spacing-8, 16px)}.login-modal__field{display:flex;flex-direction:column;gap:var(--spacing-4, 8px)}.login-modal__field label{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:500;color:var(--color-text-primary, #e5e7eb);letter-spacing:.02em}.login-modal__password-wrapper{position:relative;display:flex;align-items:center}.login-modal__password-toggle{position:absolute;right:var(--spacing-6, 12px);background:transparent;border:none;color:var(--color-text-secondary, #9ca3af);cursor:pointer;padding:var(--spacing-2, 4px);display:flex;align-items:center;justify-content:center;transition:var(--transition-base);z-index:1}.login-modal__password-toggle:hover{color:var(--color-accent, #bfc900)}.login-modal__password-toggle svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px)}.login-modal__field input{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);padding-right:calc(var(--spacing-8, 16px) + var(--spacing-12, 24px) + var(--spacing-4, 8px));background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-family:inherit;outline:none;transition:var(--transition-base)}.login-modal__field input::placeholder{color:var(--color-text-muted, rgba(229, 231, 235, .5))}.login-modal__field input:focus{border-color:var(--color-accent, #bfc900);background:#bfc9000d}.login-modal__field input.login-modal__input--error{border-color:#ef4444;background:#ef44440d}.login-modal__error{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:#ef4444;margin-top:calc(-1 * var(--spacing-2, 4px))}.login-modal__submit{width:100%;padding:var(--spacing-8, 16px) var(--spacing-12, 24px);background:var(--color-brand-primary, #d4df00);color:var(--color-bg-primary, #0b0e11);border:none;border-radius:26px;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:600;letter-spacing:.12em;text-transform:none;cursor:pointer;transition:var(--transition-base);font-family:inherit}.login-modal__submit:hover:not(:disabled){background:var(--color-accent, #bfc900);transform:translateY(-1px)}.login-modal__submit:active:not(:disabled){transform:translateY(0)}.login-modal__submit:disabled{opacity:.6;cursor:not-allowed}.login-modal__divider{display:flex;align-items:center;gap:var(--spacing-8, 16px);margin:var(--spacing-4, 8px) 0}.login-modal__divider:before,.login-modal__divider:after{content:"";flex:1;height:var(--spacing-1, 2px);background:var(--color-border-default, #2a3038)}.login-modal__divider span{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72));text-transform:none;letter-spacing:.1em}.login-modal__strava{width:100%;padding:var(--spacing-8, 16px) var(--spacing-12, 24px);background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:26px;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:600;letter-spacing:.12em;text-transform:none;cursor:pointer;transition:var(--transition-base);font-family:inherit;display:flex;align-items:center;justify-content:center;gap:var(--spacing-6, 12px)}.login-modal__strava:hover:not(:disabled){background:#ffffff0d;border-color:var(--color-accent, #bfc900);color:var(--color-accent, #bfc900)}.login-modal__strava:disabled{opacity:.6;cursor:not-allowed}.login-modal__strava svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.login-modal__footer{text-align:center;padding-top:var(--spacing-4, 8px)}.login-modal__switch{background:none;border:none;color:var(--color-text-muted, rgba(229, 231, 235, .72));font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);cursor:pointer;text-decoration:underline;text-underline-offset:var(--spacing-2, 4px);transition:var(--transition-base);font-family:inherit;letter-spacing:.02em}.login-modal__switch:hover{color:var(--color-accent, #bfc900)}.login-modal__switch--centered{width:100%;text-align:center;margin-top:var(--spacing-4, 8px)}@media(max-width:768px){.login-modal{padding:var(--spacing-12, 24px) var(--spacing-10, 20px);max-width:100%}.login-modal__title{font-size:var(--spacing-14, 28px);line-height:var(--line-height-tight, 1.2)}}.side-nav{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:var(--color-bg-primary, #0b0e11);border:none;display:flex;flex-direction:column;gap:var(--spacing-4, 8px);transition:var(--transition-smooth)}.side-nav__item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);text-transform:none;text-align:left;cursor:pointer;padding:var(--spacing-1, 2px) 0;font-weight:500;transition:var(--transition-base)}@media(max-width:768px){.side-nav{flex-direction:row;justify-content:space-around;border-radius:0;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1);padding:var(--spacing-6, 12px) var(--spacing-4, 8px)}.side-nav__item{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.side-nav__item--active{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}}.skeleton{background:linear-gradient(90deg,#ffffff0d,#ffffff1a,#ffffff0d);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;display:inline-block}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-inline{display:inline-block;vertical-align:middle}.events-page{display:flex;flex-direction:column;gap:var(--spacing-12, 24px);padding:calc(var(--spacing-8, 16px) + var(--topbar-height, 56px)) var(--spacing-12, 24px) var(--spacing-16, 32px);min-height:100vh;color:var(--color-text-primary, #e5e7eb);position:relative;transition:var(--transition-smooth)}.events-body{display:flex;gap:var(--spacing-12, 24px)}.events-side{position:fixed;top:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px));left:var(--spacing-6, 12px);width:200px;display:flex;align-items:flex-start;z-index:90;transition:var(--transition-smooth)}.events-nav{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:#0b0e1199;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);display:flex;flex-direction:column;gap:var(--spacing-4, 8px)}.events-nav__item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);text-align:left;cursor:pointer;padding:var(--spacing-1, 2px) 0;font-weight:500;transition:var(--transition-base)}.events-nav__item--active{color:var(--color-accent, #bfc900);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);letter-spacing:0}.events-nav__favorites{display:flex;flex-direction:column;gap:var(--spacing-1, 2px);padding-left:var(--spacing-4, 8px);font-style:italic;color:var(--color-text-primary, #e5e7eb)}.events-nav__favorites p:first-child{color:var(--color-accent, #bfc900)}.events-main{display:flex;flex-direction:column;gap:var(--spacing-20, 40px);row-gap:var(--spacing-20, 40px);margin-left:224px;width:calc(100% - 224px);flex:1 0 0;transition:var(--transition-smooth)}@media(max-width:768px){.events-main{margin-left:0}}.events-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-12, 24px);margin-top:var(--spacing-12, 24px)}.events-title{font-family:Cabin,sans-serif;font-size:var(--font-h2-size, 40px);line-height:var(--font-h2-line-height, 1.2);color:var(--color-accent, #bfc900);letter-spacing:.12em;margin:0 0 var(--spacing-4, 8px)}.events-subtitle{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.events-search{display:flex;align-items:center;gap:var(--spacing-6, 12px);padding:var(--spacing-4, 8px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:#4c8dff1f;border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);color:var(--color-text-secondary, #9ca3af);transition:var(--transition-base)}.events-search__icon{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2)}.events-search__icon svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.events-search input{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);width:260px;outline:none}.events-actions{display:flex;align-items:center;gap:var(--spacing-6, 12px)}.events-filter{background:#5fb36a1f;border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);color:var(--color-text-primary, #e5e7eb);padding:var(--spacing-2, 4px) var(--spacing-5, 10px);border-radius:var(--spacing-4, 8px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);cursor:pointer;display:flex;align-items:center;gap:var(--spacing-4, 8px);transition:var(--transition-base)}.events-filter select{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);outline:none}.events-actions__spacer{flex:1}.events-view{background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-2, 4px);padding:var(--spacing-2, 4px) var(--spacing-5, 10px);color:var(--color-text-primary, #e5e7eb);cursor:pointer;transition:var(--transition-base)}.events-table{display:flex;flex-direction:column;gap:var(--spacing-6, 12px);overflow-x:auto;padding-bottom:var(--spacing-6, 12px)}.events-table__head,.events-table__row{display:grid;grid-template-columns:minmax(240px,2fr) minmax(140px,1fr) minmax(120px,1fr) minmax(140px,1fr) var(--spacing-24, 48px);align-items:center;gap:var(--spacing-4, 8px)}.events-table__head{color:var(--color-text-secondary, #9ca3af);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);padding:var(--spacing-4, 8px) 0;border-bottom:var(--spacing-1, 2px) solid rgba(201,211,214,.25)}.events-table__row{background:#0b0e1166;border-radius:var(--spacing-8, 16px);padding:var(--spacing-4, 8px);transition:var(--transition-base)}.events-table__cell{display:flex;align-items:center;gap:var(--spacing-4, 8px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5)}.events-table__cell--name{min-width:200px}.events-table__cell--right{justify-content:flex-start}.events-table__cell--actions{justify-content:flex-end}.events-table__sort{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5)}.events-thumb{width:var(--spacing-24, 48px);height:var(--spacing-24, 48px);border-radius:var(--spacing-4, 8px);overflow:hidden;border:var(--spacing-1, 2px) solid rgba(202,196,208,.8);flex-shrink:0}.events-thumb img{width:100%;height:100%;object-fit:cover}.events-name{font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5)}.events-options{background:#0b0e1166;border:var(--spacing-1, 2px) solid rgba(0,0,0,.06);border-radius:var(--spacing-4, 8px);width:var(--spacing-16, 32px);height:var(--spacing-16, 32px);color:var(--color-text-primary, #e5e7eb);cursor:pointer;transition:var(--transition-base)}.modal-upload__label{font-family:Akatab,sans-serif;font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}@media(max-width:768px){.modal{padding:var(--spacing-12, 24px) var(--spacing-10, 20px);max-width:100%}.modal__header h2{font-size:var(--spacing-14, 28px);line-height:var(--line-height-tight, 1.2)}.modal-upload-simple{width:100%}}@media(max-width:768px){.events-page{padding-bottom:var(--spacing-40, 80px)}.events-side{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:auto;z-index:90}.events-nav{flex-direction:row;justify-content:space-around;border-radius:0;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1);padding:var(--spacing-6, 12px) var(--spacing-4, 8px)}.events-nav__item{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.events-nav__item--active{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}.events-main{margin-left:0;width:100%;padding-bottom:var(--spacing-40, 80px)}.events-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-8, 16px)}.info-card{width:100%}}/**
 * @license Highcharts Dashboards v2.3.0
 *
 * (c) 2009-2023 Highsoft AS
 *
 * License: www.highcharts.com/license
 */:root,.highcharts-light{--highcharts-background-color: #ffffff;--highcharts-neutral-color-100: #000000;--highcharts-neutral-color-80: #333333;--highcharts-neutral-color-60: #666666;--highcharts-neutral-color-20: #cccccc;--highcharts-neutral-color-10: #e6e6e6;--highcharts-neutral-color-5: #f2f2f2;--highcharts-neutral-color-3: #f7f7f7;--highcharts-neutral-color-0: #ffffff;--highcharts-highlight-color-100: #0022ff;--highcharts-highlight-color-80: #334eff;--highcharts-highlight-color-60: #667aff;--highcharts-highlight-color-20: #ccd3ff;--highcharts-highlight-color-10: #e6e9ff}@media(prefers-color-scheme:dark){:root{--highcharts-background-color: #333333;--highcharts-neutral-color-100: rgb(255, 255, 255);--highcharts-neutral-color-80: rgb(214, 214, 214);--highcharts-neutral-color-60: rgb(173, 173, 173);--highcharts-neutral-color-40: rgb(133, 133, 133);--highcharts-neutral-color-20: rgb(92, 92, 92);--highcharts-neutral-color-10: rgb(71, 71, 71);--highcharts-neutral-color-5: rgb(61, 61, 61);--highcharts-neutral-color-3: rgb(57, 57, 57);--highcharts-neutral-color-0: rgb(0, 0, 0);--highcharts-highlight-color-100: rgb(122, 167, 255);--highcharts-highlight-color-80: rgb(108, 144, 214);--highcharts-highlight-color-60: rgb(94, 121, 173);--highcharts-highlight-color-20: rgb(65, 74, 92);--highcharts-highlight-color-10: rgb(58, 63, 71)}}.highcharts-dark{--highcharts-background-color: #333333;--highcharts-neutral-color-100: rgb(255, 255, 255);--highcharts-neutral-color-80: rgb(214, 214, 214);--highcharts-neutral-color-60: rgb(173, 173, 173);--highcharts-neutral-color-40: rgb(133, 133, 133);--highcharts-neutral-color-20: rgb(92, 92, 92);--highcharts-neutral-color-10: rgb(71, 71, 71);--highcharts-neutral-color-5: rgb(61, 61, 61);--highcharts-neutral-color-3: rgb(57, 57, 57);--highcharts-highlight-color-100: rgb(122, 167, 255);--highcharts-highlight-color-80: rgb(108, 144, 214);--highcharts-highlight-color-60: rgb(94, 121, 173);--highcharts-highlight-color-20: rgb(65, 74, 92);--highcharts-highlight-color-10: rgb(58, 63, 71)}.highcharts-datagrid-container{position:relative;height:100%;box-sizing:border-box;color:var(--highcharts-neutral-color-100);border:1px solid var(--highcharts-neutral-color-20)}.highcharts-dashboards-component-content.dataGrid-container{overflow:hidden}.highcharts-datagrid-outer-container{position:absolute;width:100%;bottom:0;overflow:auto;z-index:0;background-color:var(--highcharts-background-color);color:var(--highcharts-neutral-color-100)}.highcharts-datagrid-scroll-container{height:1000px}.highcharts-datagrid-inner-container{display:flex;flex-direction:column;position:"-webkit-sticky";position:sticky;top:0;overflow:hidden}.highcharts-datagrid-cell{display:flex;align-items:center;border-left:1px solid var(--highcharts-neutral-color-20);border-top:1px solid var(--highcharts-neutral-color-20);overflow:hidden;padding:8px 12px;flex:1;box-sizing:border-box}.highcharts-datagrid-cell:first-child{border-left:none}.highcharts-datagrid-cell-input{width:calc(100% + 24px);margin:-8px -12px;padding:0 10px;box-sizing:border-box;border:2px solid var(--highcharts-highlight-color-100);outline:none;font:inherit}.highcharts-datagrid-row{display:flex;background:var(--highcharts-background-color);width:100%}.highcharts-datagrid-row:nth-child(2n){background-color:var(--highcharts-neutral-color-3)}.highcharts-datagrid-row.hovered{background-color:var(--highcharts-highlight-color-10)}.highcharts-datagrid-row:first-child .highcharts-datagrid-cell{border-top:none}.highcharts-datagrid-column-header{display:flex;align-items:center;border-bottom:1px solid var(--highcharts-neutral-color-20);color:var(--highcharts-neutral-color-100);overflow:hidden;padding:4px 4px 4px 12px;flex:1;font-weight:700;box-sizing:border-box}.highcharts-datagrid-column-header:first-child{border-left:none}.highcharts-datagrid-column-headers{display:flex;background-color:var(--highcharts-neutral-color-5);width:100%}.highcharts-datagrid-col-resize-handle{cursor:ew-resize;opacity:0;background-color:var(--highcharts-highlight-color-100);position:absolute;top:0;width:5px}.highcharts-datagrid-col-resize-crosshair{position:absolute;background-color:var(--highcharts-highlight-color-100);width:3px;left:0;opacity:0;z-index:1}.events-chart{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:#0b0e1166;border:1px solid rgba(42,48,56,.6);color:var(--color-text-primary, #e5e7eb)}.events-chart__container{width:100%;min-height:360px}.events-chart__pagination{display:flex;justify-content:center;gap:8px;padding:12px 0 4px}.events-chart__dot{width:8px;height:8px;border-radius:999px;border:none;background:#e5e7eb4d;cursor:pointer}.events-chart__dot--active{background:var(--color-brand-primary, #d4df00)}.events-chart .highcharts-datagrid-container,.events-chart .highcharts-datagrid-outer-container{background:transparent;border:none}.events-chart .highcharts-datagrid-column-headers{background:transparent;border-bottom:1px solid rgba(201,211,214,.25)}.events-chart .highcharts-datagrid-column-header{font-size:14px;font-weight:500;color:var(--color-text-secondary, #9ca3af);padding:8px 12px;border-bottom:none}.events-grid__header-label{display:inline-flex;align-items:center;gap:6px}.events-grid__header-sort{font-size:12px;color:var(--color-text-primary, #e5e7eb)}.events-chart .highcharts-datagrid-row{background:#0b0e1166;border-bottom:1px solid rgba(201,211,214,.12);cursor:pointer}.events-chart .highcharts-datagrid-cell:last-child{cursor:default;pointer-events:none}.events-chart .highcharts-datagrid-cell:last-child .events-grid__options-wrapper,.events-chart .highcharts-datagrid-cell:last-child .events-grid__options{pointer-events:auto;cursor:pointer}.events-chart .highcharts-datagrid-row:nth-child(2n){background:#0b0e1166}.events-chart .highcharts-datagrid-row.hovered{background:#4c8dff14}.events-chart .highcharts-datagrid-cell{border-left:none;border-top:none;padding:8px 12px;font-size:14px;color:var(--color-text-primary, #e5e7eb)}.events-chart .highcharts-datagrid-cell:first-child{padding-left:0}.events-grid__name{display:inline-flex;align-items:center;gap:8px;font-size:18px;color:var(--color-text-primary, #e5e7eb)}.events-grid__thumb{width:49px;height:49px;border-radius:8px;overflow:hidden;border:1px solid rgba(202,196,208,.8);display:inline-flex;align-items:center;justify-content:center;background:#161b21b3}.events-grid__thumb img{width:100%;height:100%;object-fit:cover}.events-grid__options-wrapper{display:flex;align-items:center;justify-content:center;pointer-events:auto}.events-grid__options{background:#0b0e1166;border:1px solid rgba(0,0,0,.06);border-radius:8px;width:32px;height:32px;color:var(--color-text-primary, #e5e7eb);cursor:pointer;transition:color .2s,background-color .2s;pointer-events:auto;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;-webkit-user-select:none;user-select:none}.events-grid__options:hover{color:var(--color-accent, #bfc900);background:#bfc9001a}.events-grid__menu{background:var(--color-bg-surface, #161b21);-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:.5px solid rgba(42,46,26,.2);border-radius:8px;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:120px;box-shadow:0 4px 12px #0000004d;z-index:1000}.events-grid__menu-item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:14px;letter-spacing:1.82px;text-align:left;padding:8px 12px;cursor:pointer;border-radius:4px;transition:background-color .2s,color .2s;font-family:inherit}.events-grid__menu-item:hover{background:#bfc9001a;color:var(--color-accent, #bfc900)}.events-grid__menu-item--danger{color:#ef4444}.events-grid__menu-item--danger:hover{background:#ef44441a;color:#f87171}.events-chart .highcharts-datagrid-col-resize-handle,.events-chart .highcharts-datagrid-col-resize-crosshair{display:none}.saison-page{display:flex;flex-direction:column;gap:var(--spacing-12, 24px);padding:calc(var(--spacing-8, 16px) + var(--topbar-height, 56px)) var(--spacing-12, 24px) var(--spacing-16, 32px);min-height:100vh;color:var(--color-text-primary, #e5e7eb);transition:var(--transition-smooth)}.app-root--globe-interactive .saison-page{height:100%;min-height:0}.app-root--globe-interactive .saison-body{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.app-root--globe-interactive .saison-main{flex:1;min-height:0;display:flex;flex-direction:column}.app-root--globe-interactive .saison-map-block{flex:1;min-height:0}.saison-body{position:relative}.saison-side{display:flex;align-items:flex-start;position:fixed;top:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px));left:var(--spacing-6, 12px);width:200px;z-index:90;transition:var(--transition-smooth)}.side-nav{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:#0b0e1199;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:none;display:flex;flex-direction:column;gap:var(--spacing-4, 8px)}.side-nav__item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-lg, 18px);letter-spacing:var(--spacing-1, 2px);text-transform:none;text-align:left;cursor:pointer;padding:var(--spacing-1, 2px) 0;font-weight:500}.side-nav__item--active{color:var(--color-accent, #bfc900);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);letter-spacing:0}.saison-main{display:flex;flex-direction:column;gap:var(--spacing-20, 40px);row-gap:var(--spacing-20, 40px);margin-left:224px;width:calc(100% - 224px);transition:var(--transition-smooth)}.saison-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-12, 24px);margin-top:var(--spacing-12, 24px)}.saison-title{font-family:Cabin,sans-serif;font-size:var(--font-h2-size, 40px);line-height:var(--font-h2-line-height, 1.2);color:var(--color-accent, #bfc900);letter-spacing:.12em;margin:0 0 var(--spacing-4, 8px)}.saison-subtitle{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);margin:0;color:var(--color-text-primary)}.info-card{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-4, 8px);padding:var(--spacing-6, 12px) var(--spacing-8, 16px);width:min(473px,100%);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);color:var(--color-text-primary, #e5e7eb);cursor:pointer;transition:var(--transition-base);text-align:left}.info-card__title{font-size:var(--font-size-2xl, 24px);line-height:var(--font-h4-line-height, 1.3);font-weight:300;margin:0 0 var(--spacing-2, 4px);text-align:left}.info-card__subtitle{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);margin:0;text-align:left}.info-card__chevron{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2)}.info-card__chevron svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;backdrop-filter:blur(var(--spacing-4, 8px));-webkit-backdrop-filter:blur(var(--spacing-4, 8px));display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-8, 16px);transition:var(--transition-smooth)}.modal{width:100%;max-width:440px;max-height:90vh;background:var(--color-bg-primary, #0b0e11);border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);border-radius:var(--spacing-8, 16px);padding:var(--spacing-12, 24px) var(--spacing-12, 24px);display:flex;flex-direction:column;gap:var(--spacing-8, 16px);position:relative;box-shadow:0 var(--spacing-6, 12px) var(--spacing-20, 40px) #00000080;transition:var(--transition-smooth);overflow-y:auto}.modal__header{display:flex;flex-direction:column;gap:var(--spacing-2, 4px);text-align:center;position:relative}.modal__header--center{text-align:center}.modal__header--center h2{text-align:center;width:100%}.modal__header h2{margin:0;font-family:Cabin,sans-serif;font-size:var(--font-h3-size, 32px);line-height:var(--font-h3-line-height, 1.25);font-weight:600;color:var(--color-accent, #bfc900);letter-spacing:.02em}.modal__close{position:absolute;top:var(--spacing-8, 16px);right:var(--spacing-8, 16px);width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border:none;background:transparent;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--spacing-4, 8px);transition:var(--transition-base)}.modal__close:hover{background:#ffffff1a}.modal__close svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.modal__subtitle{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}.modal__subtitle--left{text-align:left}.modal-card{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8, 16px);padding:var(--spacing-8, 16px) var(--spacing-12, 24px);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);color:var(--color-text-primary, #e5e7eb);text-align:left;cursor:pointer;transition:var(--transition-base);width:100%}.modal-card:hover{border-color:var(--color-accent, #bfc900);background:#bfc9000d}.modal-card__title{margin:0 0 var(--spacing-2, 4px);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:500;color:var(--color-text-primary, #e5e7eb)}.modal-card__text{margin:0;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}.modal-back{align-self:flex-start;border:none;background:transparent;color:var(--color-text-muted, rgba(229, 231, 235, .72));font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);cursor:pointer;text-decoration:underline;text-underline-offset:var(--spacing-2, 4px);transition:var(--transition-base);font-family:inherit;letter-spacing:.02em}.modal-back:hover{color:var(--color-accent, #bfc900)}.modal--form{gap:var(--spacing-8, 16px)}.modal-upload{display:flex;align-items:center;justify-content:center;gap:var(--spacing-8, 16px);width:100%}.modal-upload-simple{width:100%}.modal-upload-simple__button{display:flex;align-items:center;gap:var(--spacing-6, 12px);width:100%;padding:var(--spacing-8, 16px) var(--spacing-12, 24px);background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);cursor:pointer;transition:var(--transition-base);font-family:inherit}.modal-upload-simple__button:hover{border-color:var(--color-accent, #bfc900);background:#bfc9000d}.modal-upload-simple__icon{display:flex;align-items:center;justify-content:center;width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border-radius:50%;background:var(--color-accent, #bfc900);color:var(--color-bg-primary, #0b0e11);font-size:var(--font-size-xl, 20px);line-height:1;font-weight:600;flex-shrink:0}.modal-upload-simple__text{flex:1;text-align:left}.modal-upload-simple__input{display:none}.modal-upload__circle{width:118px;height:118px;border-radius:999px;border:var(--spacing-1, 2px) dashed #949494;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-5, 10px);color:#333;cursor:pointer;transition:var(--transition-base)}.modal-upload__icon{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);color:#333}.modal-upload__icon svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.modal-upload__label{font-family:Akatab,sans-serif;font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.modal-upload__plus{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border-radius:999px;border:none;background:#2b00ff;color:#e5e7eb;font-size:var(--font-body-size, 16px);line-height:var(--line-height-tight, 1.2);cursor:pointer;margin-left:calc(-1 * var(--spacing-6, 12px));transition:var(--transition-base)}.modal-upload__input{display:none}.modal-upload--double{justify-content:space-between}.modal-upload__block{display:flex;align-items:center;justify-content:center;flex:1}.modal-field{display:flex;flex-direction:column;gap:var(--spacing-4, 8px);width:100%}.modal-field label{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:500;color:var(--color-text-primary, #e5e7eb);letter-spacing:.02em}.modal-field__required{color:#ef4444;margin-left:var(--spacing-2, 4px)}.modal-input{width:100%;padding:var(--spacing-6, 12px) var(--spacing-8, 16px);background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-family:inherit;outline:none;transition:var(--transition-base)}.modal-input::placeholder{color:var(--color-text-muted, rgba(229, 231, 235, .5))}.modal-input:focus{border-color:var(--color-accent, #bfc900);background:#bfc9000d}.modal-footnote{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-muted, rgba(229, 231, 235, .72))}.modal-footnote__link{text-decoration:underline}.modal-actions{display:flex;align-items:center;justify-content:space-between;width:100%}.modal-primary{padding:var(--spacing-8, 16px) var(--spacing-12, 24px);border-radius:26px;border:none;background:var(--color-brand-primary, #d4df00);color:var(--color-bg-primary, #0b0e11);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:600;letter-spacing:.12em;text-transform:none;cursor:pointer;transition:var(--transition-base);font-family:inherit}.modal-primary:hover:not(:disabled){background:var(--color-accent, #bfc900);transform:translateY(-1px)}.modal-primary:active:not(:disabled){transform:translateY(0)}.modal-primary:disabled{opacity:.6;cursor:not-allowed}.saison-map-block{display:flex;flex-direction:column;gap:var(--spacing-8, 16px);min-height:100vh;pointer-events:none}.saison-map-block .courses-section{pointer-events:auto;display:none}.saison-main{position:relative;z-index:10}@media(max-width:768px){.saison-heading{flex-direction:column;align-items:flex-start;gap:var(--spacing-8, 16px)}.info-card{width:100%}.modal-card{flex-direction:column;align-items:flex-start;gap:var(--spacing-4, 8px)}.modal-card span{align-self:flex-end}.modal-upload-simple{width:100%}}.map-wrapper>.world-map-leaflet,.map-wrapper>.world-map-simple,.map-wrapper>.webgl-globe{width:100%;height:100%}.courses-section{display:flex;flex-direction:column;gap:var(--spacing-8, 16px)}.courses-heading{text-align:center}.courses-title{font-family:Cabin,sans-serif;font-size:var(--font-h3-size, 32px);line-height:var(--font-h3-line-height, 1.25);letter-spacing:var(--spacing-2, 4px);margin:0 0 var(--spacing-2, 4px)}.courses-subtitle{font-style:italic;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);margin:0;color:var(--color-text-primary)}.courses-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,340px);gap:var(--spacing-8, 16px);overflow-x:auto;padding-bottom:var(--spacing-2, 4px)}.race-card{display:flex;flex-direction:column;gap:var(--spacing-6, 12px);padding:0;border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-bg-surface, #161b21);overflow:hidden;cursor:pointer;transition:var(--transition-base)}.race-card:focus-visible{outline:var(--spacing-1, 2px) solid var(--color-brand-primary, #d4df00);outline-offset:var(--spacing-1, 2px)}.race-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4, 8px);padding:var(--spacing-6, 12px) var(--spacing-8, 16px) 0;font-size:var(--font-size-xl, 20px);line-height:var(--line-height-normal, 1.5);letter-spacing:.12em}.race-card__flag{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);border-radius:50%;overflow:hidden}.race-card__flag img{width:100%;height:100%;object-fit:cover}.race-card__image{background:var(--color-brand-secondary);display:flex;align-items:center;justify-content:center;height:245px}.race-card__image img{width:180px;height:147px;object-fit:contain}.race-card__content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-6, 12px);padding:0 var(--spacing-8, 16px);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);letter-spacing:.1em}.race-card__content p{margin:0 0 var(--spacing-4, 8px)}.race-card__content img{width:30px;height:var(--spacing-24, 48px)}.race-card__footer{display:grid;grid-template-columns:1fr 1fr;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.2);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5)}.race-card__footer div{padding:var(--spacing-4, 8px) var(--spacing-8, 16px)}.race-card__footer div+div{border-left:var(--spacing-1, 2px) solid rgba(255,255,255,.2)}.race-card__footer p{margin:0}.race-card__countdown{font-family:Space Grotesk,sans-serif;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:600;margin-top:var(--spacing-2, 4px)}@media(max-width:1024px){.saison-topbar{grid-template-columns:1fr;justify-items:center;text-align:center}.saison-topbar__actions{justify-content:center}.saison-body{grid-template-columns:1fr}.saison-heading{flex-direction:column;align-items:flex-start}}@media(max-width:768px){.saison-page{padding-bottom:var(--spacing-40, 80px);transition:var(--transition-smooth)}.saison-side{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;z-index:90}.side-nav{flex-direction:row;justify-content:space-around;border-radius:0;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1);padding:var(--spacing-6, 12px) var(--spacing-4, 8px)}.side-nav__item{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.side-nav__item--active{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}.saison-main{margin-left:0;width:100%;padding-bottom:var(--spacing-40, 80px)}}.single-course-page{display:flex;flex-direction:column;gap:var(--spacing-12, 24px);min-height:100vh;padding:calc(var(--spacing-8, 16px) + var(--topbar-height, 56px)) var(--spacing-12, 24px) var(--spacing-16, 32px);color:var(--color-text-primary, #e5e7eb);transition:var(--transition-smooth)}.single-course-side{position:fixed;top:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px));left:var(--spacing-6, 12px);width:200px;z-index:90;transition:var(--transition-smooth)}.single-course-body{position:relative}.single-course-nav{display:flex;flex-direction:column;gap:var(--spacing-4, 8px);padding:var(--spacing-6, 12px) var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);background:#0b0e1199;-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);border:none}.single-course-nav__item{background:transparent;border:none;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);text-transform:none;text-align:left;cursor:pointer;padding:var(--spacing-1, 2px) 0;font-weight:500;transition:var(--transition-base)}.single-course-nav__item--active{color:var(--color-accent, #bfc900);font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);letter-spacing:0}.single-course-main{display:flex;flex-direction:column;gap:var(--spacing-20, 40px);row-gap:var(--spacing-20, 40px);margin-left:224px;width:calc(100% - 224px);transition:var(--transition-smooth)}.single-course-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-12, 24px);margin-top:var(--spacing-12, 24px)}.single-course-title{font-family:Cabin,sans-serif;font-size:var(--font-h2-size, 40px);line-height:var(--font-h2-line-height, 1.2);color:var(--color-accent, #bfc900);letter-spacing:.12em;margin:0 0 var(--spacing-4, 8px);text-transform:none}.single-course-subtitle{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.single-course-card{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-8, 16px);padding:var(--spacing-6, 12px) var(--spacing-8, 16px);width:min(392px,100%);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;transition:var(--transition-base)}.single-course-card__title{margin:0 0 var(--spacing-2, 4px);font-size:var(--font-size-xl, 20px);line-height:var(--line-height-normal, 1.5);font-weight:300}.single-course-card__subtitle{margin:0;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5)}.single-course-card__chevron{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2)}.single-course-card__chevron svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.single-course-content{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:var(--spacing-10, 20px);align-items:start;transition:var(--transition-smooth)}.single-course-right{display:flex;flex-direction:column;gap:var(--spacing-10, 20px);min-width:0}.single-course-course{display:flex;flex-direction:column;gap:var(--spacing-8, 16px);align-items:flex-start;min-height:0}.single-course-course__meta{display:flex;flex-direction:column;gap:var(--spacing-2, 4px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.single-course-course__meta-title{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:600;letter-spacing:.02em;text-transform:none}.single-course-course__meta-region,.single-course-course__meta-stats,.single-course-course__meta-prep{margin:0;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.single-course-course__gpx{width:100%;height:auto;display:block;border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden}.single-course-course__gpx--with-overlay{position:relative}.single-course-course__gpx-rain-overlay{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;max-width:100%;max-height:100%;display:block}.single-course-course__gpx img{width:100%;height:auto;display:block;object-fit:contain;opacity:.7}.single-course-course__gpx-svg{width:100%;display:block;overflow:hidden}.single-course-course__gpx-svg svg,#gpx-inline-svg{width:100%;height:auto;display:block;vertical-align:top}.single-course-course__gpx-svg svg path,.single-course-course__gpx-svg svg polyline{stroke:#b2aaaa;stroke-width:var(--spacing-1, 2px);fill:none;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.single-course-course__circuit-weather{margin:0;margin-top:var(--spacing-3, 6px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.single-course-course__card{width:100%;padding:var(--spacing-6, 12px);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;flex-shrink:0}.single-course-charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-10, 20px);width:100%}.single-course-chart-block{display:flex;flex-direction:column;background:var(--color-card-bg);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);padding:var(--spacing-8, 16px);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;transition:var(--transition-base)}.single-course-chart-block:last-child{grid-column:1 / -1}.single-course-course__chart{height:200px;border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) dashed rgba(255,255,255,.2);display:grid;place-items:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);background:repeating-linear-gradient(to bottom,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) var(--spacing-1, 2px),transparent var(--spacing-1, 2px),transparent var(--spacing-14, 28px)),repeating-linear-gradient(to right,rgba(255,255,255,.08) 0,rgba(255,255,255,.08) var(--spacing-1, 2px),transparent var(--spacing-1, 2px),transparent var(--spacing-24, 48px))}.single-course-panel{padding:var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;display:flex;flex-direction:column;gap:var(--spacing-8, 16px);transition:var(--transition-base)}.single-course-panel__header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-6, 12px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.single-course-panel__value{display:flex;align-items:center;gap:var(--spacing-4, 8px);font-size:var(--font-h3-size, 32px);line-height:var(--font-h3-line-height, 1.25);color:#fff}.single-course-panel__delta{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:#75e0a7;background:#074d31;border-radius:var(--spacing-4, 8px);padding:var(--spacing-2, 4px) var(--spacing-4, 8px)}.single-course-panel__heatmap{height:140px;margin:var(--spacing-8, 16px) 0;border-radius:var(--spacing-4, 8px);background:transparent;overflow-x:auto;overflow-y:hidden;display:none}.single-course-panel__legend{display:flex;align-items:center;gap:var(--spacing-6, 12px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:#737373;display:none}.single-course-panel__gradient{flex:1;height:var(--spacing-4, 8px);border-radius:var(--spacing-2, 4px);background:linear-gradient(90deg,#50162d,#90123c,#f63d68 40%,#ffe4e8)}.single-course-panel__cards{display:flex;flex-direction:column;gap:var(--spacing-6, 12px)}.single-course-panel__card{padding:var(--spacing-6, 12px);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;display:flex;flex-direction:column;gap:var(--spacing-4, 8px);transition:var(--transition-base)}.single-course-panel__title{margin:0;font-size:var(--font-size-md, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:700;color:var(--color-text-primary, #e5e7eb)}.single-course-panel__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--spacing-2, 4px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-primary, #e5e7eb)}.single-course-panel__list li{display:flex;justify-content:space-between;gap:var(--spacing-6, 12px)}.single-course-panel__list--bullets{gap:var(--spacing-2, 4px)}.single-course-panel__list--bullets li{justify-content:flex-start;gap:var(--spacing-2, 4px)}.single-course-panel__pill{padding:var(--spacing-1, 2px) var(--spacing-4, 8px);border-radius:var(--spacing-6, 12px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-tight, 1.2)}.single-course-panel__pill--ok{background:#074d31;color:#75e0a7}.single-course-panel__pill--warning{background:#ef444433;color:#ef4444}.single-course-panel__objective{margin:var(--spacing-2, 4px) 0 0;font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.single-course-footer{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:var(--spacing-8, 16px)}.single-course-footer__card{padding:var(--spacing-8, 16px);border-radius:var(--spacing-4, 8px);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:var(--color-card-bg);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);overflow:hidden;transition:var(--transition-base)}.single-course-footer__title{margin:0 0 var(--spacing-4, 8px);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}.single-course-footer__card img{max-width:100%;height:auto}@media(max-width:768px){.single-course-page{padding-bottom:var(--spacing-40, 80px)}.single-course-side{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;z-index:90}.single-course-nav{flex-direction:row;justify-content:space-around;border-radius:0;border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1);padding:var(--spacing-6, 12px) var(--spacing-4, 8px)}.single-course-nav__item{text-align:center;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);letter-spacing:var(--spacing-1, 2px);padding:var(--spacing-4, 8px) var(--spacing-2, 4px)}.single-course-nav__item--active{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5)}.single-course-main{margin-left:0;width:100%;padding-bottom:var(--spacing-40, 80px)}.single-course-content{grid-template-columns:1fr;gap:var(--spacing-8, 16px)}.single-course-course__gpx{width:100%;max-width:100%}}.single-course-elevation-chart{width:100%;height:200px}.single-course-elevation-chart .highcharts-container{width:100%!important;height:100%!important}.single-course-elevation-chart text{font-family:Inter,sans-serif}.simulation-engine{background:#ffffff08;border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);border-radius:var(--spacing-6, 12px);padding:var(--spacing-10, 20px);margin-top:var(--spacing-10, 20px);transition:var(--transition-smooth)}.simulation-engine__header{margin-bottom:var(--spacing-12, 24px)}.simulation-engine__title{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:600;color:var(--color-text-primary, #e5e7eb);margin:0 0 var(--spacing-2, 4px) 0}.simulation-engine__subtitle{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af);margin:0}.simulation-engine__control{margin-bottom:var(--spacing-12, 24px)}.simulation-engine__label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4, 8px);font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.simulation-engine__value{font-weight:600;color:var(--color-accent, #bfc900)}.simulation-engine__slider{width:100%;height:var(--spacing-2, 4px);border-radius:var(--spacing-1, 2px);background:#ffffff1a;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.simulation-engine__slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:var(--spacing-8, 16px);height:var(--spacing-8, 16px);border-radius:50%;background:var(--color-accent, #bfc900);cursor:pointer;transition:var(--transition-base)}.simulation-engine__slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 0 var(--spacing-4, 8px) #bfc90080}.simulation-engine__slider::-moz-range-thumb{width:var(--spacing-8, 16px);height:var(--spacing-8, 16px);border-radius:50%;background:var(--color-accent, #bfc900);cursor:pointer;border:none;transition:var(--transition-base)}.simulation-engine__slider::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 0 var(--spacing-4, 8px) #bfc90080}.simulation-engine__hint{font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af);margin-top:var(--spacing-2, 4px);font-style:italic}.simulation-engine__radio-group{display:flex;gap:var(--spacing-4, 8px);flex-wrap:wrap}.simulation-engine__radio{flex:1;min-width:100px;padding:var(--spacing-4, 8px) var(--spacing-6, 12px);border:var(--spacing-1, 2px) solid rgba(255,255,255,.2);border-radius:var(--spacing-2, 4px);background:#ffffff08;color:var(--color-text-primary, #e5e7eb);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);cursor:pointer;transition:var(--transition-base);text-align:center}.simulation-engine__radio:hover{background:#ffffff0f;border-color:#ffffff4d}.simulation-engine__radio--active{background:var(--color-accent, #bfc900);color:var(--color-bg-primary, #0b0e11);border-color:var(--color-accent, #bfc900);font-weight:600}.simulation-engine__result{margin-top:var(--spacing-12, 24px);padding:var(--spacing-8, 16px);background:#bfc9001a;border:var(--spacing-1, 2px) solid rgba(191,201,0,.3);border-radius:var(--spacing-4, 8px)}.simulation-engine__result-label{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af);margin:0 0 var(--spacing-4, 8px) 0}.simulation-engine__result-time{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);font-weight:700;color:var(--color-accent, #bfc900);margin:0 0 var(--spacing-2, 4px) 0}.simulation-engine__result-delta{font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af);margin:0;font-style:italic}.simulation-engine__ai{margin-top:var(--spacing-10, 20px);padding-top:var(--spacing-8, 16px);border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.08)}.simulation-engine__ai-trigger{display:inline-flex;align-items:center;padding:var(--spacing-4, 8px) var(--spacing-8, 16px);font-size:var(--font-body-sm-size, 14px);color:var(--color-bg-primary, #0b0e11);background:var(--color-accent, #bfc900);border:none;border-radius:var(--spacing-4, 8px);cursor:pointer;transition:var(--transition-base)}.simulation-engine__ai-trigger:hover:not(:disabled){filter:brightness(1.1)}.simulation-engine__ai-trigger:disabled{opacity:.7;cursor:not-allowed}.simulation-engine__ai-error{margin:var(--spacing-4, 8px) 0 0;font-size:var(--font-size-sm, 12px);color:#ef4444}.simulation-engine__ai-refined{margin:.5rem 0 0;font-weight:600;color:var(--color-text, #e2e8f0)}.simulation-engine__ai-advice{margin:var(--spacing-6, 12px) 0 0;padding:var(--spacing-6, 12px);background:#ffffff0d;border-radius:var(--spacing-4, 8px);font-size:var(--font-body-sm-size, 14px);line-height:1.6;color:var(--color-text-primary, #e5e7eb);white-space:pre-wrap}.simulation-engine__barriers{margin-top:var(--spacing-12, 24px);padding-top:var(--spacing-12, 24px);border-top:var(--spacing-1, 2px) solid rgba(255,255,255,.1)}.simulation-engine__barriers-title{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:600;color:var(--color-text-primary, #e5e7eb);margin:0 0 var(--spacing-8, 16px) 0}.simulation-engine__barrier{margin-bottom:var(--spacing-8, 16px);padding:var(--spacing-6, 12px);background:#ffffff08;border:var(--spacing-1, 2px) solid rgba(255,255,255,.1);border-radius:var(--spacing-4, 8px);transition:var(--transition-base)}.simulation-engine__barrier--risk{border-color:#ef4444;background:#ef44441a}.simulation-engine__barrier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4, 8px)}.simulation-engine__barrier-name{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:600;color:var(--color-text-primary, #e5e7eb)}.simulation-engine__barrier-distance{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.simulation-engine__barrier-info{display:flex;justify-content:space-between;font-size:var(--font-size-xs, 11px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af);margin-bottom:var(--spacing-4, 8px)}.simulation-engine__barrier-margin{position:relative;height:var(--spacing-12, 24px);background:#ffffff0d;border-radius:var(--spacing-2, 4px);overflow:hidden;display:flex;align-items:center;padding:0 var(--spacing-4, 8px)}.simulation-engine__barrier-gauge{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#10b981,#f59e0b,#ef4444);transition:width .3s ease}.simulation-engine__barrier-gauge--risk{background:#ef4444}.simulation-engine__barrier-margin-text{position:relative;z-index:1;font-size:var(--font-size-xs, 11px);line-height:var(--line-height-tight, 1.2);font-weight:600;color:var(--color-text-primary, #e5e7eb);text-shadow:0 var(--spacing-1, 2px) var(--spacing-1, 2px) rgba(0,0,0,.5)}.physio-gauge,.terrain-comparison,.race-strategy{width:100%;height:100%}.strava-callback-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--color-bg-primary, #0b0e11);color:var(--color-text-primary, #e5e7eb)}.strava-callback__content{text-align:center;padding:24px}.strava-callback__content h1{font-size:24px;margin:0 0 16px;color:var(--color-text-primary, #e5e7eb)}.strava-callback__content p{font-size:16px;margin:0 0 24px;color:var(--color-text-secondary, #9ca3af)}.strava-callback__content button{padding:12px 24px;border-radius:8px;background:var(--color-brand-primary, #d4df00);color:var(--color-bg-primary, #0b0e11);border:none;cursor:pointer;font-size:14px;font-weight:500}.user-account-page{display:flex;flex-direction:column;min-height:100vh;padding:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px)) var(--spacing-12, 24px) var(--spacing-16, 32px);gap:var(--spacing-12, 24px);color:var(--color-text-primary, #e5e7eb);transition:var(--transition-smooth)}.user-account-body{display:flex;gap:var(--spacing-12, 24px)}.user-account-side{position:fixed;top:calc(var(--topbar-height, 56px) + var(--spacing-8, 16px));left:var(--spacing-6, 12px);width:200px;display:flex;align-items:flex-start;z-index:90;transition:var(--transition-smooth)}.user-account-main{display:flex;flex-direction:column;gap:var(--spacing-20, 40px);row-gap:var(--spacing-20, 40px);margin-left:224px;width:calc(100% - 224px);flex:1 0 0;transition:var(--transition-smooth)}.user-account-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-12, 24px);margin-top:var(--spacing-12, 24px)}.user-account-title{margin:0 0 var(--spacing-4, 8px);font-family:Cabin,sans-serif;font-size:var(--font-h2-size, 40px);line-height:var(--font-h2-line-height, 1.2);color:var(--color-accent, #bfc900);letter-spacing:.12em}.user-account-subtitle{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.user-account-not-connected{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-12, 24px);padding:var(--spacing-40, 80px) var(--spacing-12, 24px);text-align:center;min-height:60vh}.user-account-not-connected__actions{display:flex;gap:var(--spacing-8, 16px);flex-wrap:wrap;justify-content:center}.user-account-content{display:flex;flex-direction:column;gap:var(--spacing-10, 20px)}.user-account-profile__connections{margin-top:var(--spacing-12, 24px);padding-top:var(--spacing-12, 24px);border-top:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038)}.user-account-profile__connections-title{margin:0 0 var(--spacing-8, 16px);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);font-weight:600;color:var(--color-text-primary, #e5e7eb)}.user-account-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-10, 20px)}.user-account-card{background:var(--color-bg-surface, #161b21);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-8, 16px);overflow:hidden;transition:var(--transition-base)}.user-account-card__header{padding:var(--spacing-10, 20px) var(--spacing-12, 24px);border-bottom:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-6, 12px)}.btn--small{padding:var(--spacing-2, 4px) var(--spacing-6, 12px);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5)}.user-account-card__title{margin:0;font-family:Cabin,sans-serif;font-size:var(--font-size-2xl, 24px);line-height:var(--font-h4-line-height, 1.3);font-weight:600;color:var(--color-text-primary, #e5e7eb);letter-spacing:.02em}.user-account-card__body{padding:var(--spacing-12, 24px)}.user-account-profile{display:flex;align-items:center;gap:var(--spacing-10, 20px)}.user-account-profile__avatar{width:var(--spacing-40, 80px);height:var(--spacing-40, 80px);border-radius:50%;overflow:hidden;border:var(--spacing-1, 2px) solid var(--color-accent, #bfc900);flex-shrink:0}.user-account-profile__avatar img{width:100%;height:100%;object-fit:cover}.user-account-profile__info{display:flex;flex-direction:column;gap:var(--spacing-2, 4px)}.user-account-profile__name{margin:0;font-size:var(--font-size-2xl, 24px);line-height:var(--font-h4-line-height, 1.3);font-weight:600;color:var(--color-text-primary, #e5e7eb)}.user-account-profile__username{margin:0;font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.user-account-profile__birthdate{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af);margin:var(--spacing-2, 4px) 0 0 0}.user-account-form{display:flex;flex-direction:column;gap:var(--spacing-8, 16px)}.user-account-form__field{display:flex;flex-direction:column;gap:var(--spacing-4, 8px)}.user-account-form__field label{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af);font-weight:500}.user-account-form__field input{background:var(--color-bg-primary, #0b0e11);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-4, 8px);padding:var(--spacing-5, 10px) var(--spacing-8, 16px);color:var(--color-text-primary, #e5e7eb);font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-family:inherit;outline:none;transition:var(--transition-base)}.user-account-form__field input:focus{border-color:var(--color-accent, #bfc900)}.user-account-form__field input::placeholder{color:var(--color-text-muted, rgba(229, 231, 235, .72))}.user-account-form__actions{display:flex;gap:var(--spacing-6, 12px);justify-content:flex-end;margin-top:var(--spacing-4, 8px)}.user-account-delete{margin-top:var(--spacing-12, 24px);padding-top:var(--spacing-8, 16px);border-top:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);background:transparent;border:none;color:var(--color-error, #ef4444);font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);cursor:pointer;text-decoration:underline;text-underline-offset:var(--spacing-2, 4px);transition:var(--transition-base);font-family:inherit;text-align:left}.user-account-delete:hover:not(:disabled){color:#dc2626}.user-account-delete:disabled{opacity:.5;cursor:not-allowed}.user-account-profile__location{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.user-account-empty{text-align:center;padding:var(--spacing-20, 40px) var(--spacing-10, 20px)}.user-account-empty__text{margin:0 0 var(--spacing-4, 8px);font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);color:var(--color-text-primary, #e5e7eb)}.user-account-empty__subtext{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.user-account-connection{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-10, 20px);padding:var(--spacing-8, 16px);background:var(--color-bg-primary, #0b0e11);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-6, 12px);transition:var(--transition-base)}.user-account-connection__info{display:flex;align-items:center;gap:var(--spacing-8, 16px);flex:1}.user-account-connection__icon{width:var(--spacing-24, 48px);height:var(--spacing-24, 48px);display:flex;align-items:center;justify-content:center;background:var(--color-bg-surface, #161b21);border-radius:var(--spacing-6, 12px);color:var(--color-accent, #bfc900);flex-shrink:0}.user-account-connection__icon svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px)}.user-account-connection__details{display:flex;flex-direction:column;gap:var(--spacing-2, 4px)}.user-account-connection__name{margin:0;font-size:var(--font-size-lg, 18px);line-height:var(--font-body-line-height, 1.5);font-weight:600;color:var(--color-text-primary, #e5e7eb)}.user-account-connection__status{margin:0;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5)}.user-account-connection__status--connected{color:#75e0a7}.user-account-connection__status--disconnected{color:var(--color-text-secondary, #9ca3af)}.user-account-connection__button{padding:var(--spacing-5, 10px) var(--spacing-10, 20px);border-radius:26px;font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);font-weight:600;letter-spacing:.12em;text-transform:none;cursor:pointer;transition:var(--transition-base);font-family:inherit;border:var(--spacing-1, 2px) solid transparent}.user-account-connection__button--connect{background:var(--color-brand-primary, #d4df00);color:var(--color-bg-primary, #0b0e11);border:none}.user-account-connection__button--connect:hover:not(:disabled){background:var(--color-accent, #bfc900);transform:translateY(-1px)}.user-account-connection__button--disconnect{background:transparent;color:var(--color-text-primary, #e5e7eb);border-color:var(--color-border-default, #2a3038)}.user-account-connection__button--disconnect:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}.user-account-connection__button:disabled{opacity:.6;cursor:not-allowed}.user-account-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-10, 20px)}.user-account-stats__item{display:flex;flex-direction:column;gap:var(--spacing-4, 8px);padding:var(--spacing-8, 16px);background:var(--color-bg-primary, #0b0e11);border:var(--spacing-1, 2px) solid var(--color-border-default, #2a3038);border-radius:var(--spacing-6, 12px);transition:var(--transition-base)}.user-account-stats__label{font-size:var(--font-body-sm-size, 14px);line-height:var(--font-body-sm-line-height, 1.5);color:var(--color-text-secondary, #9ca3af)}.user-account-stats__value{font-size:var(--font-size-2xl, 24px);line-height:var(--line-height-tight, 1.2);font-weight:600;color:var(--color-accent, #bfc900);font-family:Space Grotesk,sans-serif}.user-account-upload{display:flex;flex-direction:column;gap:var(--spacing-8, 16px)}.user-account-upload__zone{width:100%}.user-account-upload__label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-6, 12px);padding:var(--spacing-20, 40px) var(--spacing-10, 20px);border:var(--spacing-1, 2px) dashed var(--color-border-default, #2a3038);border-radius:var(--spacing-6, 12px);background:var(--color-bg-primary, #0b0e11);cursor:pointer;transition:var(--transition-base);text-align:center}.user-account-upload__label:hover{border-color:var(--color-accent, #bfc900);background:#bfc9000d}.user-account-upload__icon{width:var(--spacing-24, 48px);height:var(--spacing-24, 48px);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #9ca3af);transition:var(--transition-base)}.user-account-upload__icon svg{width:var(--spacing-12, 24px);height:var(--spacing-12, 24px);flex-shrink:0}.user-account-upload__label:hover .user-account-upload__icon{color:var(--color-accent, #bfc900)}.user-account-upload__text{font-size:var(--font-body-size, 16px);line-height:var(--font-body-line-height, 1.5);font-weight:500;color:var(--color-text-primary, #e5e7eb)}.user-account-upload__formats{font-size:var(--font-size-sm, 12px);line-height:var(--line-height-normal, 1.5);color:var(--color-text-secondary, #9ca3af)}.user-account-upload__actions{display:flex;gap:var(--spacing-6, 12px);justify-content:flex-end}@media(max-width:768px){.user-account-page{padding-bottom:var(--spacing-40, 80px)}.user-account-side{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;height:auto;z-index:90}.user-account-main{margin-left:0;width:100%;padding-bottom:var(--spacing-40, 80px)}.user-account-stats{grid-template-columns:1fr}.user-account-upload__actions{flex-direction:column}.user-account-upload__actions .btn{width:100%}.user-account-cards-grid{grid-template-columns:1fr}}
