:root{--bg:#0d1421;--fg:#ffffff;--muted:#a9b6d3;--accent:#7ce38b;--accent-fg:#0d1421;--line:#223247;--card:#1b2533;--danger:#ff8a99;--radius:18px;--focus:#3f6bf0}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased}.wrap{max-width:720px;margin:0 auto;padding:16px}.screen{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin:0 auto 20px;width:100%;max-width:560px}.lenny-avatar{display:block;margin:0 auto 12px;width:108px;height:auto}h1,h2{line-height:1.25;margin:0 0 12px;font-weight:600}p{margin:0 0 12px}.narrative p{font-size:14px;color:var(--muted);margin:0 0 10px}.choices{display:grid;gap:12px;margin:8px 0 16px}.chip,.primary-btn,.secondary-btn,.text-btn,.back-btn{min-height:48px;padding:12px 16px;font:inherit;border-radius:14px;border:1px solid var(--line);background:#101a2a;color:var(--fg);cursor:pointer;text-align:center}.chip{background:#142232}.chip.active,.primary-btn{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);font-weight:600}.secondary-btn{background:#142232}.text-btn{background:transparent;border:none;color:var(--muted);min-height:40px}.back-btn{background:#142232;width:auto;padding:8px 14px;min-height:40px;margin-bottom:8px}button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}button:disabled{opacity:.45;cursor:not-allowed}.checklist{list-style:none;padding:0;margin:12px 0 16px;display:grid;gap:10px}.checklist li{display:flex;gap:12px;align-items:center;background:#142232;border:1px solid var(--line);padding:10px 12px;border-radius:12px}.checklist input[type=checkbox]{width:22px;height:22px;margin:0;accent-color:var(--accent)}.follow-group{margin:14px 0}.follow-label{font-size:13px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin:0 0 6px}.chips{display:flex;flex-wrap:wrap;gap:8px}.lane-toast{margin-top:14px;background:#102030;border:1px solid var(--line);padding:12px 14px;border-radius:14px;font-size:14px;color:var(--muted)}.viz{margin:14px 0;overflow:auto}pre{background:#0f1c2b;padding:12px;border-radius:12px;font-size:13px;line-height:1.4}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.actions{display:flex;gap:12px;margin-top:8px}@media (min-width:900px){.wrap{max-width:860px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
