:root{color-scheme:light;--ink: #1a1f1c;--muted: #5c675f;--paper: #f3efe6;--panel: #fffdf8;--line: #d5d0c4;--accent: #0f6b4c;--accent-soft: #d9eee4;font-family:Segoe UI,Helvetica Neue,sans-serif;line-height:1.45;color:var(--ink);background:radial-gradient(circle at top left,#e7f2ea 0%,transparent 40%),linear-gradient(180deg,#f7f3ea 0%,var(--paper) 100%)}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,textarea,input{font:inherit}textarea,input{width:100%;border:1px solid var(--line);background:#fff;padding:.5rem .6rem}#root{min-height:100vh}.app{max-width:1100px;margin:0 auto;padding:2rem 1.25rem 4rem}.brand{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.03em;margin:0 0 .35rem}.lede{color:var(--muted);max-width:42rem;margin:0 0 1.75rem}.shell{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:900px){.shell{grid-template-columns:1fr 1fr}}.panel{background:var(--panel);border:1px solid var(--line);padding:1rem 1.1rem 1.25rem}.panel h2{margin:0 0 .75rem;font-size:1.05rem}.panel p,.panel li{color:var(--muted);font-size:.95rem}.banner{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding:.85rem 1rem;background:var(--accent-soft);border:1px solid #b7d8c7}.banner strong{color:var(--accent)}.actions{display:flex;gap:.5rem;flex-wrap:wrap}button{border:1px solid var(--accent);background:var(--accent);color:#fff;padding:.55rem .9rem;cursor:pointer}button.secondary{background:transparent;color:var(--accent)}button:disabled{opacity:.55;cursor:not-allowed}.status{margin-top:1rem;font-size:.9rem;color:var(--muted)}.status code{color:var(--ink)}
