:root{--color-background:#1e1e2e;--color-surface:#2a2a3e;--color-foreground:#fff;--color-border:#3b3b4f;--color-muted:#3b3b4f;--color-muted-foreground:#9ca3af;--color-primary:#ef4444;--color-on-primary:#fff;--color-primary-dark:#9f3232;--color-primary-light:#f16a6a;--color-secondary:#0037fd;--color-on-secondary:#fff;--color-secondary-dark:#0020a1;--color-secondary-light:#476eff;--color-disabled:#3f2f2f;--color-success:#16a34a;--color-success-bg:#dcfce7;--color-danger:#ef4444;--color-danger-bg:#fee2e2}[data-nuance=dark]{--color-background:#1e1e2e;--color-surface:#2a2a3e;--color-foreground:#ffffff;--color-border:#3b3b4f;--color-disabled:#6b7280}[data-nuance=light]{--color-background:#ffffff;--color-surface:#f9fafb;--color-foreground:#1e1e2e;--color-border:#d1d5db;--color-disabled:#9ca3af}[data-palette=red]{--color-primary:#ef4444;--color-primary-dark:#dc2626;--color-primary-light:#d76c6c;--color-secondary:#ee710a;--color-secondary-dark:#9d4903;--color-secondary-light:#ee983f;--color-disabled:#f56565}[data-palette=violet]{--color-primary:#8b5cf6;--color-primary-dark:#7c3aed;--color-primary-light:#8f63dc;--color-secondary:#e602fa;--color-secondary-dark:#80008c;--color-secondary-light:#d831e3;--color-disabled:#a779e9}[data-palette=blue]{--color-primary:#3b82f6;--color-primary-dark:#2563eb;--color-primary-light:#4a75da;--color-secondary:#00ffb3;--color-secondary-dark:#009d6e;--color-secondary-light:#7feccc;--color-disabled:#63b3ed}:root{--font-primary:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-secondary:"Geist-Light",var(--font-primary);--font-mono:"Courier New",Courier,monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--letter-spacing-tight:-0.025em;--letter-spacing-normal:0;--letter-spacing-wide:0.025em}.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-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}:root{--spacing-0:0;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--container-2xl:1536px;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--grid-columns:12;--grid-gap:var(--spacing-4);--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--transition-fast:150ms ease;--transition-base:200ms ease;--transition-slow:300ms ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--spacing-4);padding-right:var(--spacing-4)}@media (min-width:640px){.container{max-width:var(--container-sm);padding-left:var(--spacing-6);padding-right:var(--spacing-6)}}@media (min-width:768px){.container{max-width:var(--container-md)}}@media (min-width:1024px){.container{max-width:var(--container-lg);padding-left:var(--spacing-8);padding-right:var(--spacing-8)}}@media (min-width:1280px){.container{max-width:var(--container-xl)}}@media (min-width:1536px){.container{max-width:var(--container-2xl)}}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.flex-row{display:flex;flex-direction:row}.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-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1 1 0%}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.gap-1{gap:var(--spacing-1)}.gap-2{gap:var(--spacing-2)}.gap-3{gap:var(--spacing-3)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.gap-8{gap:var(--spacing-8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.hidden{display:none}.invisible{visibility:hidden}.visible{visibility:visible}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.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)}.transition-fast{transition:all var(--transition-fast)}.transition-base{transition:all var(--transition-base)}.transition-slow{transition:all var(--transition-slow)}.w-full{width:100%}.h-full{height:100%}.w-auto{width:auto}.h-auto{height:auto}.card-base{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-6)}.button-reset{appearance:none;border:none;background:none;padding:0;margin:0;cursor:pointer;font-family:inherit;font-size:inherit;line-height:inherit}.input-base{display:block;width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-foreground);padding:var(--spacing-2) var(--spacing-4);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.input-base:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.truncate{text-overflow:ellipsis}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);border-width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideRight{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleDown{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes zoomIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 var(--primary)}50%{box-shadow:0 0 20px 5px var(--primary)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes spinSlow{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}@keyframes shakeVertical{0%,to{transform:translateY(0)}10%,30%,50%,70%,90%{transform:translateY(-5px)}20%,40%,60%,80%{transform:translateY(5px)}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes glow{0%,to{filter:drop-shadow(0 0 5px var(--primary))}50%{filter:drop-shadow(0 0 20px var(--primary))}}@keyframes heartBeat{0%{transform:scale(1)}14%{transform:scale(1.3)}28%{transform:scale(1)}42%{transform:scale(1.3)}70%{transform:scale(1)}}@keyframes progress{0%{width:0}to{width:100%}}@keyframes skeletonLoading{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes rotateShake{0%,to{transform:rotate(0deg)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}.animate-fade-in{animation:fadeIn .3s ease-in-out forwards}.animate-fade-out{animation:fadeOut .3s ease-in-out forwards}.animate-slide-up{animation:slideUp .4s ease-out forwards}.animate-slide-down{animation:slideDown .4s ease-out forwards}.animate-slide-left{animation:slideLeft .4s ease-out forwards}.animate-slide-right{animation:slideRight .4s ease-out forwards}.animate-scale-up{animation:scaleUp .3s ease-out forwards}.animate-scale-down{animation:scaleDown .3s ease-out forwards}.animate-zoom-in{animation:zoomIn .3s cubic-bezier(.34,1.56,.64,1) forwards}.animate-bounce{animation:bounce 1s infinite}.animate-bounce-in{animation:bounceIn .6s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-pulse-glow{animation:pulseGlow 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-spin-slow{animation:spinSlow 3s linear infinite}.animate-shake{animation:shake .5s ease-in-out}.animate-shake-vertical{animation:shakeVertical .5s ease-in-out}.animate-shimmer{background:linear-gradient(90deg,var(--surface) 0,var(--border) 50%,var(--surface) 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-heart-beat{animation:heartBeat 1.3s ease-in-out}.animate-float{animation:float 3s ease-in-out infinite}.animate-rotate-shake{animation:rotateShake .5s ease-in-out}.animate-stagger>*{opacity:0;animation:slideUp .4s ease-out forwards}.animate-stagger>:first-child{animation-delay:.05s}.animate-stagger>:nth-child(2){animation-delay:.1s}.animate-stagger>:nth-child(3){animation-delay:.15s}.animate-stagger>:nth-child(4){animation-delay:.2s}.animate-stagger>:nth-child(5){animation-delay:.25s}.animate-stagger>:nth-child(6){animation-delay:.3s}.animate-stagger>:nth-child(7){animation-delay:.35s}.animate-stagger>:nth-child(8){animation-delay:.4s}.animate-stagger>:nth-child(9){animation-delay:.45s}.animate-stagger>:nth-child(10){animation-delay:.5s}.transition-all{transition:all .3s ease-in-out}.transition-fast{transition:all .15s ease-in-out}.transition-slow{transition:all .5s ease-in-out}.transition-colors{transition:color .3s ease-in-out,background-color .3s ease-in-out,border-color .3s ease-in-out}.transition-transform{transition:transform .3s ease-in-out}.transition-opacity{transition:opacity .3s ease-in-out}.hover-lift{transition:transform .3s ease-in-out,box-shadow .3s ease-in-out}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.2)}.hover-scale{transition:transform .3s ease-in-out}.hover-scale:hover{transform:scale(1.05)}.hover-scale-sm{transition:transform .3s ease-in-out}.hover-scale-sm:hover{transform:scale(1.02)}.hover-glow{transition:filter .3s ease-in-out}.hover-glow:hover{filter:drop-shadow(0 0 10px var(--primary))}.hover-brighten{transition:filter .3s ease-in-out}.hover-brighten:hover{filter:brightness(1.2)}.loading-skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--border) 50%,var(--surface) 75%);background-size:200% 100%;animation:skeletonLoading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}.loading-spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-dots{display:inline-flex;gap:4px}.loading-dots span{width:8px;height:8px;background-color:var(--primary);border-radius:50%;animation:bounce 1.4s ease-in-out infinite}.loading-dots span:first-child{animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}.glass-effect{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}[data-nuance=dark] .glass-effect{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}.animate-gradient{background-size:200% 200%;animation:gradientShift 3s ease infinite}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;src:url(/fonts/MaterialSymbolsOutlined.woff2) format("woff2");font-display:swap}.material-symbols-outlined{font-family:Material Symbols Outlined,sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga"}body,html{height:100%;color:var(--color-foreground);background:var(--color-background);font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}