:root{--color-bg: oklch(98% 0 0);--color-surface: oklch(100% 0 0);--color-text: oklch(18% 0 0);--color-text-muted: oklch(50% 0 0);--color-accent: oklch(55% .22 250);--color-accent-hover: oklch(48% .22 250);--color-border: oklch(88% 0 0);--color-danger: oklch(55% .22 25);--color-success: oklch(55% .17 145);--radius: 8px;--radius-lg: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--space-16: 64px;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--shadow-sm: 0 1px 2px oklch(0% 0 0 / .06);--shadow: 0 2px 8px oklch(0% 0 0 / .08);--shadow-lg: 0 8px 24px oklch(0% 0 0 / .1);--duration-fast: .12s;--ease-out: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.6;font-size:var(--text-base)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:var(--space-2) var(--space-4);transition:background var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out)}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover)}.btn-ghost{background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border)}.btn-ghost:hover{background:var(--color-border)}.btn-danger{background:var(--color-danger);color:#fff}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow)}.container{max-width:720px;margin:0 auto;padding:var(--space-8) var(--space-4)}label{font-size:var(--text-sm);font-weight:500;color:var(--color-text-muted)}input[type=text],textarea{width:100%;border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2) var(--space-3);font:inherit;background:var(--color-surface);transition:border-color var(--duration-fast) var(--ease-out)}input[type=text]:focus,textarea:focus{outline:none;border-color:var(--color-accent)}
