:root{--bg:#f6f2ea;--paper:#fff;--paper-2:#efe9db;--border:#ded4bd;--ink:#6f6555;--ink-h:#251f16;--accent:#21684f;--accent-soft:color-mix(in srgb, var(--accent) 14%, transparent);--signal-ok:#21684f;--signal-info:#395a80;--signal-error:#a13a4c;--signal-warn:#a5721f;--display:"Fraunces", "Iowan Old Style", Georgia, serif;--sans:"IBM Plex Sans", system-ui, "Segoe UI", sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;font:17px/1.6 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--ink);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:15px}}@media (prefers-color-scheme:dark){:root{--bg:#16130e;--paper:#1f1a12;--paper-2:#292117;--border:#3c3222;--ink:#a89a80;--ink-h:#f3ecdc;--accent:#4bb98e;--accent-soft:color-mix(in srgb, var(--accent) 18%, transparent);--signal-ok:#4bb98e;--signal-info:#83a6d6;--signal-error:#e08191;--signal-warn:#dcab5c}}*{box-sizing:border-box}body{background-color:var(--bg);margin:0}::selection{background:var(--accent);color:var(--paper)}#root{background:var(--paper);border-inline:1px solid var(--border);flex-direction:column;width:100%;max-width:1600px;min-height:100svh;margin:0 auto;display:flex}h1,h2,h3{font-family:var(--display);color:var(--ink-h);margin:0;font-weight:600}button,input,select{font-family:inherit}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.home{flex-direction:column;flex:1;gap:32px;padding:48px 40px;display:flex}.home-intro h2{margin-bottom:10px;font-size:26px;font-style:italic}.home-intro p{max-width:60ch;color:var(--ink);margin:0}.home-intro code{font-family:var(--mono);background:var(--paper-2);border:1px solid var(--border);color:var(--ink-h);border-radius:3px;padding:1px 6px;font-size:.85em}.home-grid{grid-template-columns:minmax(320px,460px) 1fr;align-items:start;gap:40px;display:grid}.api-card{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--paper);border-radius:4px;overflow:hidden}.api-card-header{background:var(--paper-2);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;display:flex}.api-card-title{align-items:center;gap:10px;display:flex}.api-method{font-family:var(--mono);letter-spacing:.08em;color:var(--paper);background:var(--accent);border-radius:3px;padding:3px 8px;font-size:11px;font-weight:600}.api-path{font-family:var(--mono);color:var(--ink-h);font-size:14px}.api-ping-btn{border:1px solid var(--ink-h);color:var(--ink-h);font-family:var(--sans);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:3px;padding:7px 14px;font-size:11px;font-weight:600;transition:background-color .15s,color .15s}.api-ping-btn:hover:not(:disabled){background:var(--ink-h);color:var(--paper)}.api-ping-btn:disabled{cursor:default;opacity:.5}.api-card-body{align-items:center;min-height:32px;padding:22px;display:flex}.api-state{align-items:flex-start;gap:10px;width:100%;font-size:14px;display:flex}.api-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-top:2px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.api-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:6px}.api-dot-ok{background:var(--signal-ok);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-ok) 22%, transparent)}.api-dot-error{background:var(--signal-error);box-shadow:0 0 0 3px color-mix(in srgb, var(--signal-error) 22%, transparent)}.api-card-body-error .api-state{color:var(--signal-error)}.api-response{font-family:var(--mono);color:var(--ink-h);white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px}.api-card-footer{background:var(--paper-2);border-top:1px solid var(--border);font-family:var(--mono);color:var(--ink);justify-content:space-between;padding:10px 22px;font-size:11px;display:flex}.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;height:100%;display:grid}.stack-col{border:1px solid var(--border);background:var(--paper-2);border-radius:4px;padding:20px 22px}.stack-col h3{margin-bottom:14px;font-size:15px;font-style:italic}.stack-col ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.stack-col li{color:var(--ink);padding-left:16px;font-size:14px;line-height:1.5;position:relative}.stack-col li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:8px;left:0}.stack-col strong{color:var(--ink-h);font-weight:600}.stack-col code{font-family:var(--mono);background:var(--paper);border:1px solid var(--border);color:var(--ink-h);border-radius:3px;padding:1px 5px;font-size:.85em}@media (width<=860px){.home-grid{grid-template-columns:1fr}}@media (width<=640px){.stack-grid{grid-template-columns:1fr}}@media (width<=1024px){.home{padding:24px 20px}}.app{flex-direction:column;flex:1;display:flex}.app-header{border-bottom:1px solid var(--border);text-align:left;padding:56px 40px 0}.app-header-eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);align-items:center;gap:8px;margin:0 0 20px;font-size:11px;display:inline-flex}.status-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;animation:2.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.app-header h1{letter-spacing:-.01em;margin-bottom:12px;font-size:46px;font-style:italic}.app-header-sub{color:var(--ink);max-width:56ch;margin:0 0 28px;font-size:16px}.app-stack{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin:0;padding:20px 0 28px;list-style:none;display:flex}.app-stack-tag{font-family:var(--mono);letter-spacing:.02em;color:var(--ink);border:1px solid var(--border);border-radius:3px;padding:4px 10px;font-size:12px}@media (width<=1024px){.app-header{padding:40px 20px 0}.app-header h1{font-size:32px}}
