:root{--ink-950:#0b1220;--ink-900:#111827;--ink-800:#1e293b;--ink-700:#334155;--ink-600:#475569;--ink-400:#94a3b8;--paper:#f8f9fc;--white:#fff;--border:#e2e8f0;--border-dark:#1e293b;--indigo-50:#eef2ff;--indigo-100:#e0e7ff;--indigo-600:#4f46e5;--indigo-700:#4338ca;--teal-50:#f0fdfa;--teal-600:#0d9488;--success:#16a34a;--warning:#d97706;--error:#dc2626;--ink:var(--ink-950);--ink-dark:var(--ink-800);--marigold:var(--indigo-600);--marigold-dark:var(--indigo-700);--rust:var(--error);--sage:var(--border);--charcoal:var(--ink-900);--muted:var(--ink-400);--muted-2:var(--ink-600);--tile:var(--indigo-50)}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif}h1,h2,h3,.serif{letter-spacing:-.02em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;font-weight:800}.mono{font-family:SFMono-Regular,Menlo,Consolas,monospace}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--indigo-600);color:#fff}.btn-primary:hover{background:var(--indigo-700)}.btn-outline{border:1px solid var(--border);color:var(--ink-900);background:0 0}.btn-outline:hover{border-color:var(--ink-400)}.btn-outline-dark{color:#fff;background:0 0;border:1px solid #ffffff47}.btn-outline-dark:hover{border-color:#fff9}.btn-ghost{color:var(--ink-700);background:0 0}.input{border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.input:focus{outline:2px solid var(--indigo-600);outline-offset:1px;border-color:var(--indigo-600)}.field-label{color:var(--ink-600);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.card{border:1px solid var(--border);background:#fff;border-radius:12px}.badge{background:var(--indigo-50);color:var(--indigo-700);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.dotted-row{background-image:linear-gradient(to right, var(--border) 40%, transparent 0%);background-position:bottom;background-repeat:repeat-x;background-size:8px 1px}.error-text{color:var(--error);font-size:13px}.muted{color:var(--ink-400)}.muted-2{color:var(--ink-600)}
