:root{--background-color: #09090b;--primary-surface-color: #111113;--secondary-surface-color: #1a1a1e;--tertiary-surface-color: #222226;--accent-color: #dc2626;--accent-color-hover: #ef4444;--accent-color-active: #b91c1c;--accent-color-subtle: rgba(220, 38, 38, .08);--accent-color-muted: rgba(220, 38, 38, .15);--accent-color-rgb: 220, 38, 38;--cta-bg: #dc2626;--cta-bg-hover: #ef4444;--cta-bg-active: #b91c1c;--cta-text: #ffffff;--danger-color: #dc2626;--danger-color-rgb: 220, 38, 38;--success-color: #22c55e;--success-color-rgb: 34, 197, 94;--warning-color: #eab308;--warning-color-rgb: 234, 179, 8;--text-primary-color: #fafafa;--text-secondary-color: #a1a1aa;--text-tertiary-color: #52525b;--border-color: rgba(255, 255, 255, .06);--border-color-hover: rgba(255, 255, 255, .12);--border-color-strong: rgba(255, 255, 255, .18);--divider-color: rgba(255, 255, 255, .04);--spacing-2xs: .125rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1.25rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4.5rem;--spacing-4xl: 6rem;--font-family-display: "Space Grotesk", system-ui, sans-serif;--font-family-primary: "Outfit", system-ui, sans-serif;--font-family-mono: "Geist Mono", "JetBrains Mono", monospace;--font-family-album-title: "Outfit", var(--font-family-primary);--font-family-decorative: "Enchanted Land", var(--font-family-display);--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.625rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--font-size-5xl: 4rem;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--line-height-none: 1;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.55;--line-height-relaxed: 1.75;--tracking-hero: -.04em;--tracking-heading: -.02em;--tracking-body: 0em;--tracking-label: .06em;--tracking-badge: .08em;--tracking-caps: .08em;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .03);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4), 0 0 0 1px rgba(255, 255, 255, .04);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .05);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .06);--shadow-glow: 0 0 20px rgba(220, 38, 38, .1);--duration-instant: .1s;--duration-fast: .18s;--duration-base: .28s;--duration-slow: .42s;--duration-glacial: .6s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.05, .7, .1, 1);--ease-spring: linear( 0, .009, .038 2.1%, .142 3.4%, .659 7.2%, .829 8.8%, .953 10.7%, 1.036 12.9%, 1.078 14.6%, 1.097 16.5%, 1.098 18.5%, 1.082 20.4%, 1.053 23%, 1.009 27.1%, .994 29.9%, .989 35.1%, 1.001 50%, 1 );--ease-exit: cubic-bezier(.4, 0, 1, 1);--transition-fast: var(--duration-fast) var(--ease-standard);--transition-base: var(--duration-base) var(--ease-standard);--transition-slow: var(--duration-slow) var(--ease-emphasized);--z-base: 0;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-supreme: 9999;--sidebar-width: 280px;--sidebar-collapsed-width: 72px;--header-height: 60px;--player-bar-height: 80px;--content-max-width: 1440px}[data-theme=light]{--background-color: #fafafa;--primary-surface-color: #ffffff;--secondary-surface-color: #f4f4f5;--tertiary-surface-color: #e4e4e7;--text-primary-color: #09090b;--text-secondary-color: #52525b;--text-tertiary-color: #a1a1aa;--accent-color: #b91c1c;--accent-color-hover: #991b1b;--accent-color-active: #7f1d1d;--accent-color-subtle: rgba(185, 28, 28, .06);--accent-color-muted: rgba(185, 28, 28, .12);--accent-color-rgb: 185, 28, 28;--cta-bg: #b91c1c;--cta-bg-hover: #991b1b;--cta-bg-active: #7f1d1d;--cta-text: #ffffff;--border-color: rgba(0, 0, 0, .06);--border-color-hover: rgba(0, 0, 0, .12);--border-color-strong: rgba(0, 0, 0, .18);--divider-color: rgba(0, 0, 0, .04);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04), 0 0 0 1px rgba(0, 0, 0, .03);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06), 0 0 0 1px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .05);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .1), 0 0 0 1px rgba(0, 0, 0, .06);--shadow-glow: 0 0 20px rgba(185, 28, 28, .06)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-label);line-height:1;text-align:center;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid transparent;border-radius:var(--radius-md);outline:none;cursor:pointer;position:relative;overflow:hidden;-webkit-appearance:none;appearance:none;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),transform var(--duration-instant) var(--ease-standard)}.btn svg,.btn .btn__icon{width:18px;height:18px;flex-shrink:0}.btn--primary{color:var(--cta-text);background-color:var(--cta-bg);border-color:var(--cta-bg);font-weight:var(--font-weight-bold)}.btn--primary:hover:not(:disabled){background-color:var(--cta-bg-hover);border-color:var(--cta-bg-hover);box-shadow:0 2px 8px rgba(var(--accent-color-rgb),.08),0 6px 20px #00000026}.btn--primary:active:not(:disabled){background-color:var(--cta-bg-active);transform:scale(.98);box-shadow:none}.btn--primary:focus-visible{outline:2px solid var(--cta-bg);outline-offset:3px}.btn--secondary{color:var(--text-primary-color);background:var(--secondary-surface-color);border-color:var(--border-color)}.btn--secondary:hover:not(:disabled){background:var(--tertiary-surface-color);border-color:var(--border-color-hover)}.btn--secondary:active:not(:disabled){transform:scale(.98)}.btn--secondary:focus-visible{outline:2px solid var(--accent-color);outline-offset:3px}.btn--ghost{color:var(--text-secondary-color);background-color:transparent}.btn--ghost:hover:not(:disabled){color:var(--text-primary-color);background-color:var(--accent-color-subtle)}.btn--ghost:active:not(:disabled){background-color:var(--accent-color-muted)}.btn--ghost:focus-visible{box-shadow:0 0 0 2px var(--accent-color-subtle)}.btn--outline{color:var(--accent-color);background-color:transparent;border-color:var(--accent-color)}.btn--outline:hover:not(:disabled){color:var(--text-primary-color);background-color:var(--accent-color);box-shadow:0 0 20px rgba(var(--accent-color-rgb),.15)}.btn--outline:active:not(:disabled){background-color:var(--accent-color-active);transform:scale(.98)}.btn--outline:focus-visible{outline:2px solid var(--accent-color);outline-offset:3px}.btn--danger{color:#ededf0;background-color:var(--danger-color);border-color:var(--danger-color)}.btn--danger:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 20px rgba(var(--danger-color-rgb),.25)}.btn--danger:active:not(:disabled){filter:brightness(.95);transform:scale(.98)}.btn--sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.btn--sm svg,.btn--sm .btn__icon{width:16px;height:16px}.btn--lg{padding:var(--spacing-lg) var(--spacing-2xl);font-size:var(--font-size-base);border-radius:var(--radius-lg)}.btn--lg svg,.btn--lg .btn__icon{width:20px;height:20px}.btn--block{display:flex;width:100%}.btn--icon-only{padding:var(--spacing-sm)}.btn--icon-only.btn--sm{padding:var(--spacing-xs)}.btn--icon-only.btn--lg{padding:var(--spacing-md)}.btn:disabled,.btn--disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important;filter:none!important}.btn--loading{color:transparent;pointer-events:none}.btn--loading .btn__text,.btn--loading .btn__icon{visibility:hidden}.btn__spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity var(--duration-fast)}.btn--loading .btn__spinner{opacity:1;visibility:visible}.spinner{display:inline-block;width:18px;height:18px;border:2px solid transparent;border-radius:50%;animation:spinner-rotation .75s linear infinite}.btn--primary .spinner{border-top-color:var(--cta-text);border-right-color:var(--cta-text)}.btn--secondary .spinner,.btn--ghost .spinner,.btn--outline .spinner{border-top-color:var(--accent-color);border-right-color:var(--accent-color)}.btn--danger .spinner{border-top-color:#ededf0;border-right-color:#ededf0}.btn--sm .spinner{width:14px;height:14px;border-width:1.5px}.btn--lg .spinner{width:22px;height:22px;border-width:2.5px}@keyframes spinner-rotation{to{transform:rotate(360deg)}}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.btn-group .btn:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.btn-group .btn:not(:first-child){margin-left:-1px}.btn-group .btn:hover,.btn-group .btn:focus{z-index:1}[data-theme=light] .btn--secondary{background-color:#ffffffbf;border-color:var(--border-color)}[data-theme=light] .btn--secondary:hover:not(:disabled){background-color:#fff;border-color:var(--border-color-hover)}[data-theme=light] .btn--ghost:hover:not(:disabled){background-color:#9e84680f}.btn:focus-visible{outline:2px solid var(--accent-color);outline-offset:3px}@media (prefers-contrast: high){.btn{border-width:2px}}@media (prefers-reduced-motion: reduce){.btn{transition:none}.spinner{animation:none}}@media (hover: none) and (pointer: coarse){.btn{min-height:48px}.btn:hover{transform:none;box-shadow:none}}.spinner-container{display:inline-flex;align-items:center;justify-content:center}.spinner-container--overlay{position:absolute;inset:0;background-color:#09090b99;z-index:var(--z-modal)}@supports (backdrop-filter: blur(1px)){.spinner-container--overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.spinner-container--centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.spinner-circle{display:inline-block;width:32px;height:32px}.spinner-circle:after{content:"";display:block;width:100%;height:100%;border-radius:50%;border:2px solid var(--border-color-hover);border-top-color:var(--accent-color);animation:spinner-rotate .75s linear infinite}.spinner-circle--sm{width:20px;height:20px}.spinner-circle--sm:after{border-width:1.5px}.spinner-circle--lg{width:48px;height:48px}.spinner-circle--lg:after{border-width:3px}.spinner-circle--white:after{border-color:#ffffff26;border-top-color:#fff}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--secondary-surface-color) 0%,var(--tertiary-surface-color) 50%,var(--secondary-surface-color) 100%);background-size:200% 100%;animation:shimmer 2s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton--text{height:1em;margin-bottom:var(--spacing-sm)}.skeleton--text:last-child{width:75%}.skeleton--title{height:1.75em;width:55%;margin-bottom:var(--spacing-md);border-radius:var(--radius-xs)}.skeleton--avatar{width:44px;height:44px;border-radius:50%}.skeleton--card{height:180px;border-radius:var(--radius-lg)}@media (prefers-reduced-motion: reduce){.spinner-circle:after,.skeleton{animation:none}.spinner-circle:after{opacity:.5}}[data-theme=light] .spinner-container--overlay{background-color:#fafafad9}.heading{font-family:var(--font-family-display);line-height:var(--line-height-tight);color:var(--text-primary-color);margin:0;text-wrap:balance}.heading--hero{font-size:clamp(2.5rem,6vw,var(--font-size-5xl));font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-hero);line-height:var(--line-height-none)}.heading--h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-hero);line-height:1.1}@media (max-width: 768px){.heading--h1{font-size:var(--font-size-3xl)}}.heading--h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}@media (max-width: 768px){.heading--h2{font-size:var(--font-size-2xl)}}.heading--h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}.heading--h4{font-family:var(--font-family-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}.heading--h5{font-family:var(--font-family-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.heading--overline{font-family:var(--font-family-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent-color)}.text{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);letter-spacing:var(--tracking-body);color:var(--text-primary-color)}.text--xs{font-size:var(--font-size-xs)}.text--sm{font-size:var(--font-size-sm)}.text--lg{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}.text--xl{font-size:var(--font-size-xl);line-height:var(--line-height-relaxed)}.text--primary{color:var(--text-primary-color)}.text--secondary{color:var(--text-secondary-color)}.text--tertiary{color:var(--text-tertiary-color)}.text--accent{color:var(--accent-color)}.text--danger{color:var(--danger-color)}.text--success{color:var(--success-color)}.text--light{font-weight:var(--font-weight-light)}.text--medium{font-weight:var(--font-weight-medium)}.text--semibold{font-weight:var(--font-weight-semibold)}.text--bold{font-weight:var(--font-weight-bold)}.text--center{text-align:center}.text--right{text-align:right}.text-mono{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-label)}.tracking-hero{letter-spacing:var(--tracking-hero)}.tracking-heading{letter-spacing:var(--tracking-heading)}.tracking-body{letter-spacing:var(--tracking-body)}.tracking-label{letter-spacing:var(--tracking-label)}.tracking-badge{letter-spacing:var(--tracking-badge)}.tracking-caps{letter-spacing:var(--tracking-caps)}.fluid-text--sm{font-size:clamp(.8125rem,1.5vw,.9375rem)}.fluid-text--base{font-size:clamp(.9375rem,2vw,1.0625rem)}.fluid-text--lg{font-size:clamp(1.0625rem,2.5vw,1.25rem)}.fluid-text--xl{font-size:clamp(1.25rem,3.5vw,1.625rem)}.fluid-text--2xl{font-size:clamp(1.625rem,5vw,2.25rem)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shadow--none{box-shadow:none!important}.shadow--sm{box-shadow:var(--shadow-sm)}.shadow--md{box-shadow:var(--shadow-md)}.shadow--lg{box-shadow:var(--shadow-lg)}.shadow--xl{box-shadow:var(--shadow-xl)}.shadow--glow{box-shadow:var(--shadow-md),var(--shadow-glow)}.shadow--inset{box-shadow:inset 0 1px 4px #00000026}.modal__backdrop{background-color:#09090bb3}.modal__content{box-shadow:var(--shadow-xl)}.dropdown__menu{box-shadow:var(--shadow-lg);border:1px solid var(--border-color-hover)}.notification{box-shadow:var(--shadow-md)}.notification--floating{box-shadow:var(--shadow-lg)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fadeInUp{animation:fadeInUp var(--duration-base) var(--ease-emphasized) both}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scaleIn{animation:scaleIn var(--duration-base) var(--ease-spring) both}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.animate-fadeOut{animation:fadeOut var(--duration-fast) var(--ease-exit) both}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-3px)}40%,80%{transform:translate(3px)}}.animate-shake{animation:shake .4s var(--ease-standard)}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.animate-slideInUp{animation:slideInUp var(--duration-slow) var(--ease-emphasized) both}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.animate-slideInRight{animation:slideInRight var(--duration-base) var(--ease-emphasized) both}.animate-slideOutRight{animation:slideOutRight var(--duration-base) var(--ease-exit) both}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.stagger-children>*{opacity:0;animation:fadeInUp var(--duration-base) var(--ease-emphasized) both}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:60ms}.stagger-children>*:nth-child(3){animation-delay:.12s}.stagger-children>*:nth-child(4){animation-delay:.18s}.stagger-children>*:nth-child(5){animation-delay:.24s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.36s}.stagger-children>*:nth-child(8){animation-delay:.42s}.stagger-children>*:nth-child(9){animation-delay:.48s}.stagger-children>*:nth-child(10){animation-delay:.54s}.stagger-children>*:nth-child(11){animation-delay:.6s}.stagger-children>*:nth-child(12){animation-delay:.66s}.stagger-children--fast>*{opacity:0;animation:fadeInUp var(--duration-fast) var(--ease-standard) both}.stagger-children--fast>*:nth-child(1){animation-delay:0ms}.stagger-children--fast>*:nth-child(2){animation-delay:30ms}.stagger-children--fast>*:nth-child(3){animation-delay:60ms}.stagger-children--fast>*:nth-child(4){animation-delay:90ms}.stagger-children--fast>*:nth-child(5){animation-delay:.12s}.stagger-children--fast>*:nth-child(6){animation-delay:.15s}.stagger-children--fast>*:nth-child(7){animation-delay:.18s}.stagger-children--fast>*:nth-child(8){animation-delay:.21s}.stagger-children--fast>*:nth-child(9){animation-delay:.24s}.stagger-children--fast>*:nth-child(10){animation-delay:.27s}.stagger-children--fast>*:nth-child(11){animation-delay:.3s}.stagger-children--fast>*:nth-child(12){animation-delay:.33s}.stagger-children--fast>*:nth-child(13){animation-delay:.36s}.stagger-children--fast>*:nth-child(14){animation-delay:.39s}.stagger-children--fast>*:nth-child(15){animation-delay:.42s}.stagger-children--fast>*:nth-child(16){animation-delay:.45s}.stagger-children--fast>*:nth-child(17){animation-delay:.48s}.stagger-children--fast>*:nth-child(18){animation-delay:.51s}.stagger-children--fast>*:nth-child(19){animation-delay:.54s}.stagger-children--fast>*:nth-child(20){animation-delay:.57s}.animation-fill-both{animation-fill-mode:both!important}.animation-fill-forwards{animation-fill-mode:forwards!important}.delay-100{animation-delay:.1s!important}.delay-200{animation-delay:.2s!important}.delay-300{animation-delay:.3s!important}.delay-400{animation-delay:.4s!important}.delay-500{animation-delay:.5s!important}.delay-600{animation-delay:.6s!important}.delay-700{animation-delay:.7s!important}.delay-800{animation-delay:.8s!important}.delay-900{animation-delay:.9s!important}.delay-1000{animation-delay:1s!important}.will-animate{will-change:transform,opacity}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}.stagger-children>*,.stagger-children--fast>*{opacity:1!important;animation:none!important}}.form-field__label{transition:color var(--duration-fast) var(--ease-standard)}.form-field__label--floating{transition:all var(--duration-base) var(--ease-emphasized)}.form-field .form-input{transition:border-color var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.form-field .form-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color-subtle),var(--shadow-sm)}.form-field__error{opacity:0;transform:translateY(-6px);transition:opacity var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.form-field__error--visible{opacity:1;transform:translateY(0)}a.link--underline{text-decoration:none;position:relative}a.link--underline:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background-color:currentColor;transition:width var(--duration-base) var(--ease-emphasized)}a.link--underline:hover:after{width:100%}.page-enter{opacity:0;transform:translateY(12px)}.page-enter-active{opacity:1;transform:translateY(0);transition:all var(--duration-slow) var(--ease-emphasized)}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity var(--duration-fast) var(--ease-exit)}.loading-overlay{position:absolute;inset:0;background:#09090bb3;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity var(--duration-base),visibility var(--duration-base)}@supports (backdrop-filter: blur(1px)){.loading-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.loading-overlay--visible{opacity:1;visibility:visible}.transition-none{transition:none!important}.transition-colors{transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)!important}.transition-transform{transition:transform var(--duration-base) var(--ease-standard)!important}.transition-opacity{transition:opacity var(--duration-base) var(--ease-standard)!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important}}@media (prefers-contrast: high){:focus-visible{outline-width:3px;outline-offset:3px}}.use-gpu{will-change:transform,opacity}@layer reset,base,tokens,components,utilities;@font-face{font-family:Space Grotesk;src:url(/assets/fonts/SpaceGrotesk-variable.woff) format("woff");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Outfit;src:url(/assets/fonts/Outfit-variable.woff) format("woff");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/fonts/GeistMono-variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Enchanted Land;src:url(/assets/fonts/Enchanted-Land.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@layer reset{*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden;overscroll-behavior-x:none;scroll-behavior:smooth}body{overflow-x:hidden;overscroll-behavior-x:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}}@layer base{body{font-family:var(--font-family-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-normal);letter-spacing:var(--tracking-body);color:var(--text-primary-color);background-color:var(--background-color);background-image:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(var(--accent-color-rgb),.02) 0%,transparent 60%);background-attachment:fixed}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:var(--z-supreme);opacity:.014;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;mix-blend-mode:overlay}[data-theme=light] body{background-image:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(var(--accent-color-rgb),.015) 0%,transparent 55%)}[data-theme=light] body:after{opacity:.02;mix-blend-mode:multiply}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);line-height:var(--line-height-tight);color:var(--text-primary-color);text-wrap:balance}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-hero);line-height:var(--line-height-none)}h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}h4{font-family:var(--font-family-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-heading)}h5{font-family:var(--font-family-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}h6{font-family:var(--font-family-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-tertiary-color)}p{margin-bottom:var(--spacing-lg);max-width:65ch}a{color:var(--accent-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-color-hover)}strong,b{font-weight:var(--font-weight-bold)}::selection{background:var(--accent-color-muted);color:var(--text-primary-color)}lucide-icon,lucide-angular{display:flex}}@layer components{.card{background:var(--primary-surface-color);border-radius:var(--radius-lg);border:1px solid var(--border-color);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);transition:transform var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard)}.card:hover{border-color:var(--border-color-hover);box-shadow:var(--shadow-md)}.card[role=button],.card[tabindex],a .card{cursor:pointer}.card[role=button]:hover,.card[tabindex]:hover,a .card:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.card[role=button]:active,.card[tabindex]:active,a .card:active{transform:scale(.99);transition-duration:var(--duration-instant)}.card--glass{background:var(--primary-surface-color);box-shadow:var(--shadow-md)}@supports (backdrop-filter: blur(1px)){.card--glass{background:linear-gradient(175deg,#ffffff0f,#ffffff05);backdrop-filter:saturate(160%) blur(20px);-webkit-backdrop-filter:saturate(160%) blur(20px);border-top-color:#ffffff1a}}.card--solid{background:var(--primary-surface-color);-webkit-backdrop-filter:none;backdrop-filter:none}.card--featured{border-color:var(--border-color-strong);box-shadow:var(--shadow-md),var(--shadow-glow)}[data-theme=light] .card{background:#ffffffa6;box-shadow:var(--shadow-sm)}[data-theme=light] .card:hover{background:#ffffffd9;box-shadow:var(--shadow-md)}[data-theme=light] .card--glass{background:#ffffff80}@supports (backdrop-filter: blur(1px)){[data-theme=light] .card--glass{background:#ffffff8c;backdrop-filter:saturate(130%) blur(20px);-webkit-backdrop-filter:saturate(130%) blur(20px)}}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:0 var(--spacing-xl)}@media (max-width: 640px){.container{padding:0 var(--spacing-lg)}}.bento-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.bento-grid__item--wide{grid-column:span 2}@media (max-width: 640px){.bento-grid__item--wide{grid-column:span 1}}.bento-grid__item--tall{grid-row:span 2}.bento-grid__item--hero{grid-column:span 2;grid-row:span 2}@media (max-width: 640px){.bento-grid__item--hero{grid-column:span 1;grid-row:span 1}}.bento-grid--3col{grid-template-columns:repeat(3,1fr)}@media (max-width: 896px){.bento-grid--3col{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.bento-grid--3col{grid-template-columns:1fr}}.label{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--tracking-badge);text-transform:uppercase;line-height:1;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-xs);background:var(--accent-color-subtle);color:var(--accent-color);border:1px solid transparent}.label--outlined{background:transparent;border-color:var(--border-color-hover);color:var(--text-secondary-color)}.overline{font-family:var(--font-family-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--accent-color);margin-bottom:var(--spacing-sm)}}@layer utilities{.m-2xs{margin:var(--spacing-2xs)}.mt-2xs{margin-top:var(--spacing-2xs)}.mr-2xs{margin-right:var(--spacing-2xs)}.mb-2xs{margin-bottom:var(--spacing-2xs)}.ml-2xs{margin-left:var(--spacing-2xs)}.mx-2xs{margin-inline:var(--spacing-2xs)}.my-2xs{margin-block:var(--spacing-2xs)}.p-2xs{padding:var(--spacing-2xs)}.pt-2xs{padding-top:var(--spacing-2xs)}.pr-2xs{padding-right:var(--spacing-2xs)}.pb-2xs{padding-bottom:var(--spacing-2xs)}.pl-2xs{padding-left:var(--spacing-2xs)}.px-2xs{padding-inline:var(--spacing-2xs)}.py-2xs{padding-block:var(--spacing-2xs)}.gap-2xs{gap:var(--spacing-2xs)}.m-xs{margin:var(--spacing-xs)}.mt-xs{margin-top:var(--spacing-xs)}.mr-xs{margin-right:var(--spacing-xs)}.mb-xs{margin-bottom:var(--spacing-xs)}.ml-xs{margin-left:var(--spacing-xs)}.mx-xs{margin-inline:var(--spacing-xs)}.my-xs{margin-block:var(--spacing-xs)}.p-xs{padding:var(--spacing-xs)}.pt-xs{padding-top:var(--spacing-xs)}.pr-xs{padding-right:var(--spacing-xs)}.pb-xs{padding-bottom:var(--spacing-xs)}.pl-xs{padding-left:var(--spacing-xs)}.px-xs{padding-inline:var(--spacing-xs)}.py-xs{padding-block:var(--spacing-xs)}.gap-xs{gap:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.mt-sm{margin-top:var(--spacing-sm)}.mr-sm{margin-right:var(--spacing-sm)}.mb-sm{margin-bottom:var(--spacing-sm)}.ml-sm{margin-left:var(--spacing-sm)}.mx-sm{margin-inline:var(--spacing-sm)}.my-sm{margin-block:var(--spacing-sm)}.p-sm{padding:var(--spacing-sm)}.pt-sm{padding-top:var(--spacing-sm)}.pr-sm{padding-right:var(--spacing-sm)}.pb-sm{padding-bottom:var(--spacing-sm)}.pl-sm{padding-left:var(--spacing-sm)}.px-sm{padding-inline:var(--spacing-sm)}.py-sm{padding-block:var(--spacing-sm)}.gap-sm{gap:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.mt-md{margin-top:var(--spacing-md)}.mr-md{margin-right:var(--spacing-md)}.mb-md{margin-bottom:var(--spacing-md)}.ml-md{margin-left:var(--spacing-md)}.mx-md{margin-inline:var(--spacing-md)}.my-md{margin-block:var(--spacing-md)}.p-md{padding:var(--spacing-md)}.pt-md{padding-top:var(--spacing-md)}.pr-md{padding-right:var(--spacing-md)}.pb-md{padding-bottom:var(--spacing-md)}.pl-md{padding-left:var(--spacing-md)}.px-md{padding-inline:var(--spacing-md)}.py-md{padding-block:var(--spacing-md)}.gap-md{gap:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.mt-lg{margin-top:var(--spacing-lg)}.mr-lg{margin-right:var(--spacing-lg)}.mb-lg{margin-bottom:var(--spacing-lg)}.ml-lg{margin-left:var(--spacing-lg)}.mx-lg{margin-inline:var(--spacing-lg)}.my-lg{margin-block:var(--spacing-lg)}.p-lg{padding:var(--spacing-lg)}.pt-lg{padding-top:var(--spacing-lg)}.pr-lg{padding-right:var(--spacing-lg)}.pb-lg{padding-bottom:var(--spacing-lg)}.pl-lg{padding-left:var(--spacing-lg)}.px-lg{padding-inline:var(--spacing-lg)}.py-lg{padding-block:var(--spacing-lg)}.gap-lg{gap:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mt-xl{margin-top:var(--spacing-xl)}.mr-xl{margin-right:var(--spacing-xl)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-xl{margin-left:var(--spacing-xl)}.mx-xl{margin-inline:var(--spacing-xl)}.my-xl{margin-block:var(--spacing-xl)}.p-xl{padding:var(--spacing-xl)}.pt-xl{padding-top:var(--spacing-xl)}.pr-xl{padding-right:var(--spacing-xl)}.pb-xl{padding-bottom:var(--spacing-xl)}.pl-xl{padding-left:var(--spacing-xl)}.px-xl{padding-inline:var(--spacing-xl)}.py-xl{padding-block:var(--spacing-xl)}.gap-xl{gap:var(--spacing-xl)}.m-2xl{margin:var(--spacing-2xl)}.mt-2xl{margin-top:var(--spacing-2xl)}.mr-2xl{margin-right:var(--spacing-2xl)}.mb-2xl{margin-bottom:var(--spacing-2xl)}.ml-2xl{margin-left:var(--spacing-2xl)}.mx-2xl{margin-inline:var(--spacing-2xl)}.my-2xl{margin-block:var(--spacing-2xl)}.p-2xl{padding:var(--spacing-2xl)}.pt-2xl{padding-top:var(--spacing-2xl)}.pr-2xl{padding-right:var(--spacing-2xl)}.pb-2xl{padding-bottom:var(--spacing-2xl)}.pl-2xl{padding-left:var(--spacing-2xl)}.px-2xl{padding-inline:var(--spacing-2xl)}.py-2xl{padding-block:var(--spacing-2xl)}.gap-2xl{gap:var(--spacing-2xl)}.m-3xl{margin:var(--spacing-3xl)}.mt-3xl{margin-top:var(--spacing-3xl)}.mr-3xl{margin-right:var(--spacing-3xl)}.mb-3xl{margin-bottom:var(--spacing-3xl)}.ml-3xl{margin-left:var(--spacing-3xl)}.mx-3xl{margin-inline:var(--spacing-3xl)}.my-3xl{margin-block:var(--spacing-3xl)}.p-3xl{padding:var(--spacing-3xl)}.pt-3xl{padding-top:var(--spacing-3xl)}.pr-3xl{padding-right:var(--spacing-3xl)}.pb-3xl{padding-bottom:var(--spacing-3xl)}.pl-3xl{padding-left:var(--spacing-3xl)}.px-3xl{padding-inline:var(--spacing-3xl)}.py-3xl{padding-block:var(--spacing-3xl)}.gap-3xl{gap:var(--spacing-3xl)}.m-4xl{margin:var(--spacing-4xl)}.mt-4xl{margin-top:var(--spacing-4xl)}.mr-4xl{margin-right:var(--spacing-4xl)}.mb-4xl{margin-bottom:var(--spacing-4xl)}.ml-4xl{margin-left:var(--spacing-4xl)}.mx-4xl{margin-inline:var(--spacing-4xl)}.my-4xl{margin-block:var(--spacing-4xl)}.p-4xl{padding:var(--spacing-4xl)}.pt-4xl{padding-top:var(--spacing-4xl)}.pr-4xl{padding-right:var(--spacing-4xl)}.pb-4xl{padding-bottom:var(--spacing-4xl)}.pl-4xl{padding-left:var(--spacing-4xl)}.px-4xl{padding-inline:var(--spacing-4xl)}.py-4xl{padding-block:var(--spacing-4xl)}.gap-4xl{gap:var(--spacing-4xl)}.text-primary{color:var(--text-primary-color)}.text-secondary{color:var(--text-secondary-color)}.text-tertiary{color:var(--text-tertiary-color)}.text-accent{color:var(--accent-color)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.text-5xl{font-size:var(--font-size-5xl)}.font-display{font-family:var(--font-family-display)}.font-body{font-family:var(--font-family-primary)}.font-mono{font-family:var(--font-family-mono)}.font-light{font-weight:var(--font-weight-light)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-black{font-weight:var(--font-weight-black)}.font-decorative{font-family:var(--font-family-decorative)}.tracking-hero{letter-spacing:var(--tracking-hero)}.tracking-heading{letter-spacing:var(--tracking-heading)}.tracking-body{letter-spacing:var(--tracking-body)}.tracking-label{letter-spacing:var(--tracking-label)}.tracking-badge{letter-spacing:var(--tracking-badge)}.tracking-caps{letter-spacing:var(--tracking-caps)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.grid{display:grid}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100dvh}}@media (max-width: 896px){:root{--sidebar-width: 100%}.hide-mobile{display:none!important}}@media (min-width: 897px){.hide-desktop{display:none!important}}@media (min-width: 897px){.app-container:has(.player-bar:not(:has(.is-empty))) .content-wrapper{padding-bottom:calc(var(--player-bar-height) + var(--spacing-lg))}.app-container:has(.player-bar:not(:has(.is-empty))) .sidebar{padding-bottom:var(--player-bar-height)}.app-container:has(.player-bar:not(:has(.is-empty))) .sidebar-footer{display:none!important}.app-container:has(.player-bar:not(:has(.is-empty))) .sidebar-floating-actions{position:fixed;left:0;bottom:calc(var(--player-bar-height) + var(--spacing-lg));width:var(--sidebar-width);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);z-index:calc(var(--z-fixed) - 1);pointer-events:none}.app-container:has(.player-bar:not(:has(.is-empty))) .sidebar-floating-actions app-theme-toggle-button{pointer-events:auto}}.confirm-dialog-panel{display:flex;align-items:center;justify-content:center}.cdk-overlay-dark-backdrop{background:#09090bbf}@supports (backdrop-filter: blur(1px)){.cdk-overlay-dark-backdrop{backdrop-filter:blur(8px) saturate(120%);-webkit-backdrop-filter:blur(8px) saturate(120%)}}
