:root{--ctx-bg-primary:#FAFAFA;--ctx-bg-secondary:#F5F5F5;--ctx-bg-tertiary:#EEEEEE;--ctx-fg-primary:#0A0A0C;--ctx-fg-secondary:#3A3A3C;--ctx-fg-tertiary:#6A6A6C;--ctx-fg-quaternary:#98989D;--ctx-accent:#34C759;--ctx-accent-hover:#30B752;--ctx-accent-pressed:#2BA84A;--ctx-accent-bg:rgba(52,199,89,0.1);--ctx-success:#34C759;--ctx-warning:#FF9500;--ctx-error:#FF3B30;--ctx-info:#007AFF;--ctx-glass-bg:rgba(250,250,250,0.72);--ctx-glass-bg-strong:rgba(250,250,250,0.92);--ctx-glass-border:rgba(0,0,0,0.08);--ctx-glass-shadow:0 8px 32px rgba(0,0,0,0.06);--ctx-glass-blur:blur(24px) saturate(180%);--ctx-font-sans:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,sans-serif;--ctx-font-mono:"JetBrains Mono","SF Mono",Menlo,Monaco,"Courier New",monospace;--ctx-font-display:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display",system-ui,sans-serif;--ctx-text-xs:0.6875rem;--ctx-text-sm:0.8125rem;--ctx-text-base:0.9375rem;--ctx-text-md:1rem;--ctx-text-lg:1.0625rem;--ctx-text-xl:1.25rem;--ctx-text-2xl:1.5rem;--ctx-text-3xl:1.75rem;--ctx-text-4xl:2.125rem;--ctx-text-5xl:2.5rem;--ctx-text-6xl:3.5rem;--ctx-fw-regular:400;--ctx-fw-medium:500;--ctx-fw-semibold:600;--ctx-fw-bold:700;--ctx-tracking-tight:-0.02em;--ctx-tracking-normal:-0.01em;--ctx-tracking-wide:0.01em;--ctx-leading-tight:1.2;--ctx-leading-snug:1.35;--ctx-leading-normal:1.5;--ctx-leading-relaxed:1.65;--ctx-space-1:0.25rem;--ctx-space-2:0.5rem;--ctx-space-3:0.75rem;--ctx-space-4:1rem;--ctx-space-5:1.25rem;--ctx-space-6:1.5rem;--ctx-space-8:2rem;--ctx-space-10:2.5rem;--ctx-space-12:3rem;--ctx-space-16:4rem;--ctx-space-20:5rem;--ctx-radius-xs:4px;--ctx-radius-sm:8px;--ctx-radius-md:12px;--ctx-radius-lg:16px;--ctx-radius-xl:22px;--ctx-radius-2xl:28px;--ctx-radius-pill:9999px;--ctx-shadow-xs:0 1px 2px rgba(0,0,0,0.04);--ctx-shadow-sm:0 2px 4px rgba(0,0,0,0.06);--ctx-shadow-md:0 4px 12px rgba(0,0,0,0.08);--ctx-shadow-lg:0 8px 24px rgba(0,0,0,0.10);--ctx-shadow-xl:0 16px 48px rgba(0,0,0,0.14);--ctx-ease:cubic-bezier(0.25,0.46,0.45,0.94);--ctx-duration-fast:120ms;--ctx-duration-base:200ms;--ctx-duration-slow:320ms}@media (prefers-color-scheme:dark){:root{--ctx-bg-primary:#0A0A0C;--ctx-bg-secondary:#1C1C1E;--ctx-bg-tertiary:#2C2C2E;--ctx-fg-primary:#FAFAFA;--ctx-fg-secondary:#C7C7CC;--ctx-fg-tertiary:#98989D;--ctx-fg-quaternary:#6A6A6C;--ctx-accent:#30D158;--ctx-accent-hover:#34D962;--ctx-accent-pressed:#28B848;--ctx-accent-bg:rgba(48,209,88,0.15);--ctx-glass-bg:rgba(28,28,30,0.72);--ctx-glass-bg-strong:rgba(28,28,30,0.92);--ctx-glass-border:rgba(255,255,255,0.10);--ctx-glass-shadow:0 8px 32px rgba(0,0,0,0.32);--ctx-shadow-xs:0 1px 2px rgba(0,0,0,0.16);--ctx-shadow-sm:0 2px 4px rgba(0,0,0,0.20);--ctx-shadow-md:0 4px 12px rgba(0,0,0,0.30);--ctx-shadow-lg:0 8px 24px rgba(0,0,0,0.40);--ctx-shadow-xl:0 16px 48px rgba(0,0,0,0.50)}}[data-theme=dark]{--ctx-bg-primary:#0A0A0C;--ctx-bg-secondary:#1C1C1E;--ctx-bg-tertiary:#2C2C2E;--ctx-fg-primary:#FAFAFA;--ctx-fg-secondary:#C7C7CC;--ctx-fg-tertiary:#98989D;--ctx-glass-bg:rgba(28,28,30,0.72);--ctx-glass-bg-strong:rgba(28,28,30,0.92);--ctx-glass-border:rgba(255,255,255,0.10)}[data-theme=light]{--ctx-bg-primary:#FAFAFA;--ctx-bg-secondary:#F5F5F5;--ctx-bg-tertiary:#EEEEEE;--ctx-fg-primary:#0A0A0C;--ctx-fg-secondary:#3A3A3C;--ctx-fg-tertiary:#6A6A6C;--ctx-glass-bg:rgba(250,250,250,0.72);--ctx-glass-bg-strong:rgba(250,250,250,0.92);--ctx-glass-border:rgba(0,0,0,0.08)}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{font-family:var(--ctx-font-sans);font-size:var(--ctx-text-base);line-height:var(--ctx-leading-normal);font-feature-settings:"cv11","ss01","ss03";letter-spacing:var(--ctx-tracking-normal)}body,html{background-color:var(--ctx-bg-primary);color:var(--ctx-fg-primary)}body{margin:0}.ctx-glass{background-color:var(--ctx-glass-bg)}.ctx-glass,.ctx-glass-strong{backdrop-filter:var(--ctx-glass-blur);-webkit-backdrop-filter:var(--ctx-glass-blur);border:1px solid var(--ctx-glass-border);box-shadow:var(--ctx-glass-shadow);border-radius:var(--ctx-radius-xl)}.ctx-glass-strong{background-color:var(--ctx-glass-bg-strong)}.ctx-display{font-size:var(--ctx-text-6xl);font-weight:var(--ctx-fw-bold)}.ctx-display,.ctx-title-1{line-height:var(--ctx-leading-tight);letter-spacing:var(--ctx-tracking-tight)}.ctx-title-1{font-size:var(--ctx-text-4xl);font-weight:var(--ctx-fw-semibold)}.ctx-title-2{font-size:var(--ctx-text-3xl);letter-spacing:var(--ctx-tracking-tight)}.ctx-title-2,.ctx-title-3{font-weight:var(--ctx-fw-semibold);line-height:var(--ctx-leading-snug)}.ctx-title-3{font-size:var(--ctx-text-2xl)}.ctx-headline{font-size:var(--ctx-text-xl);font-weight:var(--ctx-fw-semibold)}.ctx-body{font-size:var(--ctx-text-base);font-weight:var(--ctx-fw-regular);line-height:var(--ctx-leading-normal)}.ctx-callout{font-size:var(--ctx-text-md)}.ctx-caption{font-size:var(--ctx-text-xs);color:var(--ctx-fg-tertiary);letter-spacing:var(--ctx-tracking-wide)}.ctx-mono{font-family:var(--ctx-font-mono)}.ctx-btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--ctx-space-3) var(--ctx-space-5);font-family:var(--ctx-font-sans);font-size:var(--ctx-text-base);font-weight:var(--ctx-fw-medium);border-radius:var(--ctx-radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--ctx-duration-base) var(--ctx-ease);-webkit-user-select:none;-moz-user-select:none;user-select:none}.ctx-btn-primary{background-color:var(--ctx-accent);color:white}.ctx-btn-primary:hover{background-color:var(--ctx-accent-hover);transform:translateY(-1px);box-shadow:var(--ctx-shadow-md)}.ctx-btn-primary:active{background-color:var(--ctx-accent-pressed);transform:translateY(0)}.ctx-btn-secondary{background-color:var(--ctx-bg-secondary);color:var(--ctx-fg-primary);border-color:var(--ctx-glass-border)}.ctx-btn-secondary:hover{background-color:var(--ctx-bg-tertiary)}.ctx-glyph:before{content:"ø";font-family:var(--ctx-font-display);font-weight:var(--ctx-fw-bold);color:var(--ctx-accent);margin-right:.15em}.ctx-card{background-color:var(--ctx-bg-secondary);border-radius:var(--ctx-radius-lg);padding:var(--ctx-space-6);border:1px solid var(--ctx-glass-border);box-shadow:var(--ctx-shadow-sm)}:focus-visible{outline:2px solid var(--ctx-accent);outline-offset:2px;border-radius:var(--ctx-radius-xs)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}