:root{--color-primary:#5c8edc;--color-primary-light:#72b3e7;--color-primary-dark:#4d7bc7;--color-primary-darker:#426bb5;--color-secondary:#e9a944;--color-accent:#44e99a;--color-success:#44e99a;--color-tertiary:#a944e9;--color-warning:#e9a944;--color-danger:#ef4444;--color-info:#5c8edc;--color-text:#333333;--color-text-light:#666666;--color-text-muted:#999999;--color-text-white:#ffffff;--color-background:#ffffff;--color-background-alt:#f8f9fa;--color-background-dark:#343a40;--color-background-overlay:rgba(0,0,0,0.5);--color-border:#dee2e6;--color-border-light:#f0f0f0;--color-border-dark:#adb5bd;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:5rem;--space-5xl:6rem;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--font-family-mono:"Fira Code","Monaco","Consolas","Courier New",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:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--line-height-loose:1.8;--radius-none:0;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.05);--shadow-md:0 2px 4px rgba(0,0,0,0.1);--shadow-lg:0 4px 6px rgba(0,0,0,0.1);--shadow-xl:0 10px 15px rgba(0,0,0,0.1);--shadow-2xl:0 20px 25px rgba(0,0,0,0.15);--shadow-inner:inset 0 2px 4px rgba(0,0,0,0.06);--gradient-primary:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);--gradient-secondary:linear-gradient(135deg,var(--color-secondary) 0%,#f1c896 100%);--transition-fast:0.15s ease;--transition-normal:0.2s ease;--transition-slow:0.3s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--breakpoint-2xl:1400px;--container-sm:540px;--container-md:720px;--container-lg:960px;--container-xl:1140px;--container-2xl:1320px}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-background);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root,body{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{line-height:var(--line-height-relaxed)}ol,ul{list-style:none}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}button{font-family:inherit;font-size:inherit;border:none;background:none;cursor:pointer;transition:all var(--transition-normal)}img,svg{display:block;max-width:100%;height:auto}input,select,textarea{font-family:inherit;font-size:inherit}:focus{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.container{width:100%;max-width:var(--container-xl);margin:0 auto;padding-left:var(--space-md);padding-right:var(--space-md)}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-lg)}.container-xl{max-width:var(--container-xl)}.container-2xl{max-width:var(--container-2xl)}.m-0{margin:0}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.m-xl{margin:var(--space-xl)}.m-2xl{margin:var(--space-2xl)}.m-3xl{margin:var(--space-3xl)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mt-3xl{margin-top:var(--space-3xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--space-xs)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.mb-3xl{margin-bottom:var(--space-3xl)}.p-0{padding:0}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.p-3xl{padding:var(--space-3xl)}.py-0{padding-top:0;padding-bottom:0}.py-xs{padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.py-2xl{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.py-3xl{padding-top:var(--space-3xl);padding-bottom:var(--space-3xl)}.px-0{padding-left:0;padding-right:0}.px-xs{padding-left:var(--space-xs);padding-right:var(--space-xs)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.px-xl{padding-left:var(--space-xl);padding-right:var(--space-xl)}.px-2xl{padding-left:var(--space-2xl);padding-right:var(--space-2xl)}.px-3xl{padding-left:var(--space-3xl);padding-right:var(--space-3xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.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)}.font-extrabold{font-weight:var(--font-weight-extrabold)}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-light)}.text-muted{color:var(--color-text-muted)}.text-white{color:var(--color-text-white)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-12{grid-template-columns:repeat(12,1fr)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.bg-primary{background-color:var(--color-primary)}.bg-secondary{background-color:var(--color-secondary)}.bg-white{background-color:var(--color-background)}.bg-alt{background-color:var(--color-background-alt)}.bg-gradient-primary{background:var(--gradient-primary)}.bg-gradient-secondary{background:var(--gradient-secondary)}.border{border:1px solid var(--color-border)}.border-light{border:1px solid var(--color-border-light)}.border-dark{border:1px solid var(--color-border-dark)}.rounded-none{border-radius:var(--radius-none)}.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)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-inner{box-shadow:var(--shadow-inner)}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}@media (min-width:576px){.sm\:grid-cols-1{grid-template-columns:repeat(1,1fr)}.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.sm\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.sm\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.sm\:block{display:block}.sm\:hidden{display:none}.sm\:text-center{text-align:center}.sm\:text-left{text-align:left}}@media (min-width:768px){.md\:grid-cols-1{grid-template-columns:repeat(1,1fr)}.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.md\:block{display:block}.md\:hidden{display:none}.md\:text-center{text-align:center}.md\:text-left{text-align:left}}@media (min-width:992px){.lg\:grid-cols-1{grid-template-columns:repeat(1,1fr)}.lg\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:text-center{text-align:center}.lg\:text-left{text-align:left}}