:root{--color-ionic-white:#f5f5f0;--color-off-white:#fafaf8;--color-dark-gray:#333;--color-medium-gray:#666;--color-light-gray:#999;--color-border-gray:#e0e0e0;--color-mustard:#facc15;--color-mustard-hover:#e5b800;--color-mustard-light:#fff9e6;--color-blue:#00bcd4;--color-blue-hover:#00acc1;--color-blue-light:#e0f7fa;--color-lime:#8bc34a;--color-lime-hover:#7cb342;--color-lime-light:#f1f8e9;--color-red:#f44336;--color-red-hover:#e53935;--color-red-light:#ffebee;--ionic-white:var(--color-ionic-white);--off-white:var(--color-off-white);--dark-gray:var(--color-dark-gray);--medium-gray:var(--color-medium-gray);--light-gray:var(--color-light-gray);--border-gray:var(--color-border-gray);--mustard-yellow:var(--color-mustard);--mustard-yellow-hover:var(--color-mustard-hover);--mustard-yellow-light:var(--color-mustard-light);--bright-blue:var(--color-blue);--bright-blue-hover:var(--color-blue-hover);--bright-blue-light:var(--color-blue-light);--lime-green:var(--color-lime);--lime-green-hover:var(--color-lime-hover);--lime-green-light:var(--color-lime-light);--bright-red:var(--color-red);--bright-red-hover:var(--color-red-hover);--bright-red-light:var(--color-red-light);--background:var(--color-ionic-white);--foreground:var(--color-dark-gray);--space-0:0;--space-px:1px;--space-0-5:.125rem;--space-1:.25rem;--space-1-5:.375rem;--space-2:.5rem;--space-2-5:.625rem;--space-3:.75rem;--space-3-5:.875rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--space-14:3.5rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-28:7rem;--space-32:8rem;--space-36:9rem;--space-40:10rem;--space-44:11rem;--space-48:12rem;--space-52:13rem;--space-56:14rem;--space-60:15rem;--space-64:16rem;--space-72:18rem;--space-80:20rem;--space-96:24rem;--font-primary:"Space Mono",monospace;--font-secondary:"Courier Prime",monospace;--font-display:"Studio-Feixen-Sans",Arial,sans-serif;--font-mono:"Courier New",Courier,monospace;--font-space-mono:var(--font-primary);--font-courier-prime:var(--font-secondary);--font-size-xs:.75rem;--font-size-sm:.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-size-6xl:3.75rem;--font-size-7xl:4.5rem;--font-size-8xl:6rem;--font-size-9xl:8rem;--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--line-height-none:1;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--letter-spacing-tighter:-.05em;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--letter-spacing-widest:.1em;--shadow-color-sm:#33333314;--shadow-color-md:#3333331f;--shadow-color-lg:#33333329;--shadow-sm:var(--shadow-color-sm);--shadow-md:var(--shadow-color-md);--shadow-lg:var(--shadow-color-lg);--shadow-retro-sm:4px 4px 0 var(--color-dark-gray);--shadow-retro-md:8px 8px 0 var(--color-dark-gray);--shadow-retro-lg:12px 12px 0 var(--color-dark-gray);--shadow-retro-xl:16px 16px 0 var(--color-dark-gray);--shadow-retro-mustard:8px 8px 0 var(--color-mustard);--shadow-retro-blue:8px 8px 0 var(--color-blue);--shadow-retro-lime:8px 8px 0 var(--color-lime);--shadow-retro-red:8px 8px 0 var(--color-red);--shadow-glow-mustard:0 0 8px var(--color-mustard);--shadow-glow-blue:0 0 8px var(--color-blue);--shadow-glow-lime:0 0 8px var(--color-lime);--shadow-glow-red:0 0 8px var(--color-red);--border-width-0:0;--border-width-1:1px;--border-width-2:2px;--border-width-3:3px;--border-width-4:4px;--border-width-5:5px;--border-width-8:8px;--border-radius-none:0;--border-radius-sm:.125rem;--border-radius-base:.25rem;--border-radius-md:.375rem;--border-radius-lg:.5rem;--border-radius-xl:.75rem;--border-radius-2xl:1rem;--border-radius-3xl:1.25rem;--border-radius-arcade-sm:1.25rem;--border-radius-arcade-md:1.875rem;--border-radius-arcade-lg:2.5rem;--border-radius-full:9999px;--duration-75:75ms;--duration-100:.1s;--duration-150:.15s;--duration-200:.2s;--duration-300:.3s;--duration-500:.5s;--duration-700:.7s;--duration-1000:1s;--ease-linear:linear;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--transition-fast:var(--duration-150)var(--ease-out);--transition-base:var(--duration-200)var(--ease-out);--transition-slow:var(--duration-300)var(--ease-out);--transition-all:all var(--duration-200)var(--ease-out);--transition-colors:color,background-color,border-color var(--duration-200)var(--ease-out);--transition-transform:transform var(--duration-200)var(--ease-out);--z-index-0:0;--z-index-10:10;--z-index-20:20;--z-index-30:30;--z-index-40:40;--z-index-50:50;--z-index-dropdown:100;--z-index-sticky:200;--z-index-fixed:300;--z-index-modal-backdrop:400;--z-index-modal:500;--z-index-popover:600;--z-index-tooltip:700;--z-index-notification:800;--z-index-header:1000;--z-index-max:9999;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--container-2xl:1536px}@media (prefers-color-scheme:dark){:root{--background:var(--color-ionic-white);--foreground:var(--color-dark-gray)}}
@keyframes slideUp{0%{opacity:0;transform:translate(-50%,100px)}to{opacity:1;transform:translate(-50%)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes bounceGentle{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes heartbeat{0%,to{transform:scale(1)}10%,30%{transform:scale(1.1)}20%,40%{transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes glow{0%,to{box-shadow:0 0 5px}50%{box-shadow:0 0 20px}}@keyframes glowPulse{0%,to{filter:brightness();box-shadow:0 0 8px}50%{filter:brightness(1.2);box-shadow:0 0 16px}}@keyframes neonGlow{0%,to{text-shadow:0 0 5px,0 0 10px}50%{text-shadow:0 0 10px,0 0 20px,0 0 30px}}@keyframes buttonPress{0%{transform:translate(0);box-shadow:8px 8px #333}to{transform:translate(4px,4px);box-shadow:4px 4px #333}}@keyframes buttonHover{0%{transform:translate(0)}to{transform:translate(-2px,-2px);box-shadow:10px 10px #333}}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}@keyframes progress{0%{width:0%}to{width:100%}}@keyframes slideProgress{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes slideOutDown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes rainbow{0%{color:#f44336}16.67%{color:#facc15}33.33%{color:#8bc34a}50%{color:#00bcd4}66.67%{color:#2196f3}83.33%{color:#9c27b0}to{color:#f44336}}@keyframes gradient{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}
