:root{--color-black:#000000;--color-white:#ffffff;--color-bg:#f2f2f7;--color-surface:#ffffff;--color-surface-hover:#f9f9fb;--color-surface-elevated:rgba(255,255,255,0.72);--color-border:#d1d1d6;--color-border-light:#e5e5ea;--color-text:#1c1c1e;--color-text-secondary:#8e8e93;--color-text-tertiary:#aeaeb2;--color-primary:#000000;--color-primary-hover:#1c1c1e;--color-primary-text:#ffffff;--color-accent:#af52de;--color-accent-soft:rgba(175,82,222,0.08);--color-accent-vibrant:#bf5af2;--color-success:#34c759;--color-warning:#ff9f0a;--color-error:#ff3b30;--color-error-soft:rgba(255,59,48,0.08);--color-link:#007aff;--gradient-hero:linear-gradient(135deg,#667eea,#764ba2);--gradient-accent:linear-gradient(135deg,#af52de,#5856d6);--gradient-warm:linear-gradient(135deg,#f9d423,#ff4e50);--gradient-subtle:linear-gradient(180deg,#f2f2f7,#ffffff);--glass-bg:rgba(255,255,255,0.72);--glass-bg-thick:rgba(255,255,255,0.88);--glass-blur:blur(20px);--glass-border:rgba(255,255,255,0.5);--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",system-ui,sans-serif;--font-display:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display",sans-serif;--font-mono:"SF Mono","JetBrains Mono","Fira Code",monospace;--text-xs:0.6875rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-lg:1.0625rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3.25rem;--text-hero:clamp(2.5rem,6vw,4.5rem);--leading-tight:1.12;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.65;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-heavy:800;--tracking-tight:-0.025em;--tracking-normal:-0.01em;--tracking-wide:0.04em;--space-0-5:0.125rem;--space-1:0.25rem;--space-1-5:0.375rem;--space-2:0.5rem;--space-2-5:0.625rem;--space-3:0.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;--space-20:5rem;--space-24:6rem;--space-32:8rem;--radius-sm:0.5rem;--radius-md:0.625rem;--radius-lg:0.875rem;--radius-xl:1rem;--radius-2xl:1.25rem;--radius-3xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 3px rgba(0,0,0,0.04),0 1px 2px rgba(0,0,0,0.03);--shadow-md:0 2px 8px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.04);--shadow-lg:0 4px 20px rgba(0,0,0,0.08),0 2px 6px rgba(0,0,0,0.04);--shadow-xl:0 12px 40px rgba(0,0,0,0.12),0 4px 12px rgba(0,0,0,0.06);--shadow-2xl:0 20px 60px rgba(0,0,0,0.15),0 8px 20px rgba(0,0,0,0.08);--shadow-glow:0 0 40px rgba(175,82,222,0.15);--shadow-btn:0 2px 12px rgba(0,0,0,0.12);--shadow-card-hover:0 8px 24px rgba(0,0,0,0.1),0 2px 8px rgba(0,0,0,0.04);--ease-out:cubic-bezier(0.25,1,0.5,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-smooth:cubic-bezier(0.45,0,0.55,1);--duration-fast:180ms;--duration-normal:280ms;--duration-slow:450ms;--transition-card:transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-normal) var(--ease-out);--header-height:56px;--bottom-nav-height:56px;--max-width:480px;--max-width-desktop:1200px;--safe-area-bottom:env(safe-area-inset-bottom,0px);--safe-area-top:env(safe-area-inset-top,0px);--z-base:1;--z-sticky:100;--z-modal:200;--z-toast:300}[data-theme=dark]{--color-bg:#000000;--color-surface:#1c1c1e;--color-surface-hover:#2c2c2e;--color-surface-elevated:rgba(28,28,30,0.72);--color-border:#38383a;--color-border-light:#2c2c2e;--color-text:#f2f2f7;--color-text-secondary:#aeaeb2;--color-text-tertiary:#636366;--color-primary:#ffffff;--color-primary-hover:#e5e5ea;--color-primary-text:#000000;--glass-bg:rgba(28,28,30,0.72);--glass-bg-thick:rgba(28,28,30,0.88);--glass-border:rgba(255,255,255,0.08);--shadow-card-hover:0 8px 24px rgba(0,0,0,0.3),0 2px 8px rgba(0,0,0,0.15)}[data-theme=light]{--color-bg:#f2f2f7;--color-surface:#ffffff;--color-surface-hover:#f9f9fb;--color-surface-elevated:rgba(255,255,255,0.72);--color-border:#d1d1d6;--color-border-light:#e5e5ea;--color-text:#1c1c1e;--color-text-secondary:#8e8e93;--color-text-tertiary:#aeaeb2;--color-primary:#000000;--color-primary-hover:#1c1c1e;--color-primary-text:#ffffff;--glass-bg:rgba(255,255,255,0.72);--glass-bg-thick:rgba(255,255,255,0.88);--glass-border:rgba(255,255,255,0.5);--shadow-card-hover:0 8px 24px rgba(0,0,0,0.1),0 2px 8px rgba(0,0,0,0.04)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#000000;--color-surface:#1c1c1e;--color-surface-hover:#2c2c2e;--color-surface-elevated:rgba(28,28,30,0.72);--color-border:#38383a;--color-border-light:#2c2c2e;--color-text:#f2f2f7;--color-text-secondary:#aeaeb2;--color-text-tertiary:#636366;--color-primary:#ffffff;--color-primary-hover:#e5e5ea;--color-primary-text:#000000;--glass-bg:rgba(28,28,30,0.72);--glass-bg-thick:rgba(28,28,30,0.88);--glass-border:rgba(255,255,255,0.08);--shadow-card-hover:0 8px 24px rgba(0,0,0,0.3),0 2px 8px rgba(0,0,0,0.15)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 rgba(175,82,222,.3)}50%{box-shadow:0 0 0 6px rgba(175,82,222,0)}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{line-height:var(--leading-normal);font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg)}canvas,img,picture,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ol,ul{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);line-height:var(--leading-tight)}p{line-height:var(--leading-relaxed)}body,html{height:100%;overflow-x:hidden}body.timea-map-open header,body.timea-map-open nav{display:none!important;visibility:hidden!important;pointer-events:none!important;position:absolute!important;left:-9999px!important}::selection{background:var(--color-accent);color:var(--color-white)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@supports (padding:env(safe-area-inset-bottom)){.safe-bottom{padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom))}}