:root{--font-display:var(--font-sans),system-ui,sans-serif;--font-heading:var(--font-sans),system-ui,sans-serif;--font-mono:"SF Mono",Monaco,"Cascadia Code","Roboto Mono",Consolas,"Courier New",monospace}html{font-size:16px}body{font-family:var(--font-sans),system-ui,sans-serif;font-size:1rem;line-height:1.55;color:var(--text-primary);letter-spacing:-.01em}.material-symbols-outlined{font-family:var(--font-symbols);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;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);margin:0;font-weight:700;line-height:1.15;color:var(--text-primary);letter-spacing:-.02em}h1{font-size:2.4rem;letter-spacing:-.035em}h1,h2{font-weight:800}h2{font-size:1.95rem;letter-spacing:-.03em}h3{font-size:1.5rem}h3,h4{font-weight:700}h4{font-size:1.25rem}h5{font-size:1.125rem;font-weight:700}h6{font-size:1rem}p{margin:0;line-height:1.6;color:var(--text-primary)}.text-xs{font-size:.75rem;line-height:1.4}.text-sm{font-size:.875rem;line-height:1.45}.text-base{font-size:1rem;line-height:1.6}.text-lg{font-size:1.125rem;line-height:1.6}.text-xl{font-size:1.25rem;line-height:1.5}.text-2xl{font-size:1.5rem;line-height:1.4}.text-3xl{font-size:1.875rem;line-height:1.3}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-display{font-family:var(--font-display);letter-spacing:-.02em}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.leading-tight{line-height:1.25}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.75}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translateX(-100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes scaleOut{0%{transform:scale(1);opacity:1}to{transform:scale(.9);opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-25%)}}.animate-fadeIn{animation:fadeIn .3s ease-in-out}.animate-fadeOut{animation:fadeOut .3s ease-in-out}.animate-slideInUp{animation:slideInUp .3s ease-out}.animate-slideInDown{animation:slideInDown .3s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.m-0{margin:0}.p-0{padding:0}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.pointer-events-none{pointer-events:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}