:root{--accent:#3b82f6;--accent-hover:#2563eb;--accent-strong:#b8d4ec;--accent-soft:#6eb0f0;--accent-bg:rgba(59,130,246,.07);--accent2:#5ba3ed;--accent2-bg:rgba(91,163,237,.12);--ok:#34a87a;--ok-bg:rgba(52,168,122,.1);--warn:#c49a3a;--warn-bg:rgba(196,154,58,.1);--danger:#e05555;--danger-bg:rgba(224,85,85,.1);--bg:#0c1525;--surface:#131f30;--surface2:#1a2a3e;--border:#1e3555;--border-light:#254060;--text:#e5ecf5;--text2:#8fa8c5;--text3:#526070;--tag-1:#7aa7d4;--tag-1-bg:rgba(122,167,212,.1);--tag-2:#c49a3a;--tag-2-bg:rgba(196,154,58,.1);--tag-3:#8b8fd4;--tag-3-bg:rgba(139,143,212,.1);--tag-4:#3da882;--tag-4-bg:rgba(61,168,130,.1);--shadow:0 2px 20px rgba(0,0,0,.45);--shadow-lg:0 8px 40px rgba(0,0,0,.55);--shadow-cta:0 6px 18px rgba(59,130,246,.2);--radius:12px;--radius-sm:8px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:80px;--primary:var(--accent);--primary-dark:var(--accent-hover);--primary-light:var(--accent-bg);--success:var(--ok);--warning:var(--warn);--bg-primary:var(--bg);--bg-secondary:var(--surface);--bg-tertiary:var(--surface2);--text-primary:var(--text);--text-secondary:var(--text2);--text-muted:var(--text3);--background:var(--bg);--secondary:var(--text3)}[data-theme=light]{--bg:#fff;--surface:#f8fafc;--surface2:#e2e8f0;--border:#e2e8f0;--border-light:#cbd5e1;--text:#0f172a;--text2:#475569;--text3:#64748b;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-strong:#2563eb;--accent-soft:#4a7ab5;--accent-bg:rgba(37,99,235,.07);--accent2:#3b82f6;--accent2-bg:rgba(59,130,246,.09);--ok:#059669;--ok-bg:rgba(5,150,105,.08);--warn:#d97706;--warn-bg:rgba(217,119,6,.09);--danger:#dc2626;--danger-bg:rgba(220,38,38,.08);--tag-1:#2563eb;--tag-1-bg:rgba(37,99,235,.08);--tag-2:#d97706;--tag-2-bg:rgba(217,119,6,.09);--tag-3:#7c3aed;--tag-3-bg:rgba(124,58,237,.08);--tag-4:#059669;--tag-4-bg:rgba(5,150,105,.08);--shadow:0 2px 16px rgba(0,0,0,.07);--shadow-lg:0 8px 40px rgba(37,99,235,.1);--shadow-cta:0 8px 20px rgba(37,99,235,.2);--bg-primary:var(--bg);--bg-secondary:var(--surface);--bg-tertiary:var(--surface2);--text-primary:var(--text);--text-secondary:var(--text2);--text-muted:var(--text3);--background:var(--bg);--primary:var(--accent);--primary-dark:var(--accent-hover);--success:var(--ok);--warning:var(--warn);--secondary:var(--text3)}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:16px;line-height:1.6;color:var(--text);background-color:var(--bg)}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-hover)}h1{font-size:2.5rem;margin-bottom:var(--space-lg);line-height:1.2}h1,h2{font-family:"DM Serif Display",Georgia,serif;font-weight:400;font-style:normal;color:var(--text);letter-spacing:-.01em}h2{font-size:2rem;margin-bottom:var(--space-md);line-height:1.25}h3{font-size:1.5rem;margin-bottom:var(--space-md)}h3,h4{font-family:DM Sans,sans-serif;font-weight:600;color:var(--text2);line-height:1.4}h4{font-size:1.25rem;margin-bottom:var(--space-sm)}h5,h6{font-weight:600;color:var(--text2);line-height:1.4}h5,h6,p{font-family:DM Sans,sans-serif}p{line-height:1.6}small{font-family:DM Sans,sans-serif;font-size:.875rem;line-height:1.5}button{cursor:pointer;border:none}button,input,select,textarea{font-family:inherit;transition:all .2s ease}input,select,textarea{font-size:1rem;color:var(--text);background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-soft);background-color:var(--surface2);box-shadow:0 0 0 3px var(--accent-bg)}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:not(:disabled){cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}html{scroll-behavior:smooth}::selection{background-color:var(--accent-bg);color:var(--text)}