:root{color-scheme:light;--blue:#1d4ed8;--ink:#17243b;--line:#d6dfea}*{box-sizing:border-box}body{overflow-wrap:anywhere;margin:0;background:#f5f8fc;color:var(--ink);font:16px/1.55 system-ui,sans-serif}header,main,footer{max-width:1200px;margin:auto;padding:24px}header,.heading,nav,.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}header{justify-content:space-between}a{color:#1644ad}section,.card{margin:18px 0}form,.card,article{background:white;border:1px solid var(--line);border-radius:12px;padding:22px;margin:18px 0}label{display:block;margin:12px 0}input,textarea,select,button{font:inherit}input,textarea,select{display:block;max-width:100%;width:100%;padding:10px;border:1px solid #8d9db3;border-radius:6px}textarea{min-height:110px;resize:vertical}.editor{min-height:300px}button{padding:10px 16px;background:var(--blue);color:white;border:0;border-radius:7px;cursor:pointer;margin:4px 6px 4px 0}button:disabled{opacity:.55;cursor:wait}button.secondary{background:#e7eefb;color:#173d80}button[aria-current=page]{outline:3px solid #e4a72a}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #b57d00;outline-offset:3px}.error,.blocker{color:#9f1239}#message{padding:12px;background:#e9f0ff;border-radius:8px;white-space:pre-wrap}.muted,small{color:#475569}blockquote{border-left:3px solid #92aee3;margin:12px 0;padding:8px 15px;background:#f4f7fc;white-space:pre-wrap}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}pre{white-space:pre-wrap;overflow-wrap:anywhere}dialog{width:min(90vw,900px);max-height:90vh;border:1px solid var(--line);border-radius:12px}dialog::backdrop{background:#17243baa}details{margin:16px 0}summary{cursor:pointer;font-weight:600}.pill{display:inline-block;background:#e7eefb;padding:3px 9px;border-radius:20px;font-size:.85rem}table{border-collapse:collapse;width:100%}td,th{padding:8px;border:1px solid var(--line);text-align:left;overflow-wrap:anywhere}.scroll{overflow:auto}.save-state{font-weight:600}h2,h3{line-height:1.25}@media(max-width:650px){header,main,footer{padding:16px}form,.card,article{padding:16px}nav{gap:8px}button{min-height:44px}h1{font-size:1.8rem}}
