:root{--color-bg: #0a0d0f;--color-surface: #0f1316;--color-surface-2: #151a1e;--color-line: #232b30;--color-ink: #d5dbd8;--color-muted: #7f8a87;--color-accent: #7cc49a;--color-teal: #5fb3a8;--color-blue: #7aa2cf;--color-error: #e27d7d;--font-display: "JetBrains Mono", ui-monospace, monospace;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius: 6px;--gap: 10px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--color-ink);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(1.4rem,3vw,1.75rem)}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0 0 1em;color:var(--color-muted)}a{color:var(--color-blue);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono);font-size:.9em;color:var(--color-accent)}button{font-family:var(--font-body);cursor:pointer}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.text{white-space:pre-line}.output-line{display:block;min-height:1.5em;white-space:pre-wrap;overflow-wrap:anywhere}.t-muted{color:var(--color-muted)}.t-accent{color:var(--color-accent);font-weight:700}.t-teal{color:var(--color-teal)}.t-blue{color:var(--color-blue)}.t-error{color:var(--color-error)}.t-dir{color:var(--color-blue);font-weight:700}.t-exec{color:var(--color-accent);font-weight:700}.swatch{display:inline-block}.doc{max-width:72ch;padding:1.25rem 1.5rem 2rem;font-size:.95rem;line-height:1.65}.doc h1,.doc h2{font-family:var(--font-mono);font-weight:700}.doc h1:before,.doc h2:before{color:var(--color-muted);font-weight:400}.doc h1{font-size:1.15rem;color:var(--color-accent)}.doc h1:before{content:"# "}.doc h2{font-size:.95rem;color:var(--color-teal);margin-top:2rem}.doc h2:before{content:"## "}.doc p{color:color-mix(in srgb,var(--color-ink) 85%,var(--color-bg))}.meta{font-family:var(--font-mono);font-size:.8rem;color:var(--color-muted)}.kv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:.25rem 1.5rem;margin:0 0 1rem;font-family:var(--font-mono);font-size:.85rem}.kv dt{color:var(--color-muted)}.kv dd{margin:0;overflow-wrap:anywhere}.form-page{max-width:560px;margin:0 auto;padding:4rem 1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--color-ink);margin-bottom:.4rem}.form-group input,.form-group textarea{width:100%;padding:.7rem .9rem;border:1px solid var(--color-line);border-radius:var(--radius);font-family:var(--font-body);font-size:.95rem;color:var(--color-ink);background:var(--color-surface);transition:border-color .15s ease}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-muted)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-accent)}.form-group textarea{resize:vertical;min-height:100px}.error{display:block;color:var(--color-error);font-size:.8rem;margin-top:.3rem}.error-banner,.success-banner{padding:.75rem 1rem;border-radius:var(--radius);font-size:.9rem;margin-bottom:1rem}.error-banner{background:color-mix(in srgb,var(--color-error) 15%,transparent);color:var(--color-error)}.success-banner{background:color-mix(in srgb,var(--color-accent) 15%,transparent);color:var(--color-accent)}.form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.form-actions button{padding:.75rem 1.5rem;border-radius:var(--radius);border:none;font-weight:500;font-size:.95rem}.form-actions button[type=submit]{background:var(--color-accent);color:var(--color-bg)}.form-actions button[type=submit]:hover:not(:disabled){opacity:.85}.form-actions button[type=submit]:disabled{background:var(--color-line);color:var(--color-muted);cursor:not-allowed}table{width:100%;border-collapse:collapse;margin-top:1.5rem;font-size:.9rem}table th{text-align:left;padding:.6rem .75rem;color:var(--color-muted);font-weight:500;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--color-line)}table td{padding:.75rem;border-bottom:1px solid var(--color-line);color:var(--color-ink)}table tbody tr:hover{background:var(--color-surface)}table td button{padding:.35rem .7rem;margin-right:.4rem;border:1px solid var(--color-line);border-radius:6px;background:transparent;font-size:.8rem;color:var(--color-muted)}table td button:hover{border-color:var(--color-accent);color:var(--color-accent)}hr{border:none;border-top:1px solid var(--color-line);margin:2rem 0}
