:root{--color-primary: #102036;--color-secondary: #3682ae;--color-accent: #00bfa6;--color-success: #16a34a;--color-warning: #f59e0b;--color-danger: #dc2626;--color-info: #0ea5e9;--color-surface: #0b1526;--color-elevated: #13233d;--color-muted: #6b7280;--color-border: #334155;--color-body: #ffffff;--color-white: #ffffff;--color-black: #000000;--color-gradient-text: linear-gradient(89.58deg, #3186FF .28%, #346BF0 44.45%, #4EA0FF 99.55%);--font-ui: "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji", sans-serif;--font-brand: "Ubuntu", "DM Sans", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--text-base: 16px;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--leading-tight: 1.2;--leading-normal: 1.5;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-pill: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 10px 24px rgba(0, 0, 0, .2);--container-sm: 40rem;--container-md: 48rem;--container-lg: 64rem;--container-xl: 80rem;--color-navbar-background: var(--color-white);--color-navbar-border: #e5e7eb}*{box-sizing:border-box}html{font-size:100%}body{margin:0;font-family:var(--font-ui),sans-serif;font-weight:var(--fw-regular);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--color-black);background-color:var(--color-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s ease,color .3s ease,font-weight .3s ease,font-size .3s ease,line-height .3s ease}img,svg,video,canvas{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid color-mix(in oklab,var(--color-info),white 20%);outline-offset:2px}.brand-title{font-family:var(--font-brand);font-weight:var(--fw-bold);line-height:var(--leading-tight)}.container{width:100%;margin-inline:auto;padding-inline:var(--space-4)}@media (min-width: 40rem){.container{max-width:var(--container-sm)}}@media (min-width: 48rem){.container{max-width:var(--container-md)}}@media (min-width: 64rem){.container{max-width:var(--container-lg)}}@media (min-width: 80rem){.container{max-width:var(--container-xl)}}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.m-10{margin:var(--space-10)}.m-12{margin:var(--space-12)}.m-16{margin:var(--space-16)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-10{padding:var(--space-10)}.p-12{padding:var(--space-12)}.p-16{padding:var(--space-16)}.mx-0{margin-left:var(--space-0);margin-right:var(--space-0)}.mx-1{margin-left:var(--space-1);margin-right:var(--space-1)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-3{margin-left:var(--space-3);margin-right:var(--space-3)}.mx-4{margin-left:var(--space-4);margin-right:var(--space-4)}.mx-6{margin-left:var(--space-6);margin-right:var(--space-6)}.my-0{margin-top:var(--space-0);margin-bottom:var(--space-0)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.px-0{padding-left:var(--space-0);padding-right:var(--space-0)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-0{padding-top:var(--space-0);padding-bottom:var(--space-0)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none!important}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.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))}.col-span-2{grid-column:span 2/span 2}.w-full{width:100%}.h-full{height:100%}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.text-xs{font-size:.75rem;line-height:var(--leading-normal)}.text-sm{font-size:var(--text-sm);line-height:var(--leading-normal)}.text-md{font-size:var(--text-md);line-height:var(--leading-normal)}.text-lg{font-size:var(--text-lg);line-height:var(--leading-normal)}.text-xl{font-size:var(--text-xl);line-height:var(--leading-tight)}.text-2xl{font-size:var(--text-2xl);line-height:var(--leading-tight)}.text-3xl{font-size:var(--text-3xl);line-height:var(--leading-tight)}.text-4xl{font-size:var(--text-4xl);line-height:var(--leading-tight)}.fw-light{font-weight:var(--fw-light)}.fw-regular{font-weight:var(--fw-regular)}.fw-medium{font-weight:var(--fw-medium)}.fw-semibold{font-weight:var(--fw-semibold)}.fw-bold{font-weight:var(--fw-bold)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-info{color:var(--color-info)}.text-white{color:var(--color-white)}.text-black{color:var(--color-black)}.bg-body{background-color:var(--color-body)}.bg-surface{background-color:var(--color-surface)}.bg-elevated{background-color:var(--color-elevated)}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-accent{background-color:var(--color-accent)}.bg-white{background-color:var(--color-white);color:var(--color-black)}.border{border:1px solid var(--color-border)}.border-0{border:0}.border-primary{border-color:var(--color-primary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-pill{border-radius:var(--radius-pill)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:var(--fw-semibold);line-height:1;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease,color .12s ease}@media (prefers-reduced-motion: reduce){.btn{transition:none}}.btn:disabled,.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{filter:brightness(1.1)}.btn-primary:active{transform:translateY(.5px)}.btn-primary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab,var(--color-primary),white 60%)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-white)}.btn-secondary:hover{filter:brightness(1.1)}.btn-secondary:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab,var(--color-secondary),white 60%)}.btn-outline{background-color:transparent;color:var(--color-white);border-color:var(--color-border)}.btn-outline:hover{background-color:color-mix(in oklab,var(--color-elevated),black 10%)}.input{width:100%;padding:var(--space-2) var(--space-3);background:var(--color-white);color:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md)}.input:focus{outline:none;box-shadow:0 0 0 3px color-mix(in oklab,var(--color-info),white 60%)}.nowrap{white-space:nowrap}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}@keyframes fall{0%{transform:translateY(-100vh) translate(-5vw)}to{transform:translateY(100vh) translate(5vw)}}.snow{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999}.snowflake{position:absolute;top:-20px;color:var(--color-accent, #ffd700);font-size:1rem;animation:fall linear infinite}body.festive-theme{--color-primary: #d92525;--color-secondary: #006400;--color-accent: #ffd700;--color-body: #f0f8ff;--color-surface: #f0f8ff;--font-ui: Mountains of Christmas, cursive;--radius-lg: 12px;--shadow-md: 0 4px 8px rgba(0, 0, 0, .2);--color-navbar-background: #f0f8ff;--color-navbar-border: #ffd700}
