:root{--text: #1a1a1a;--muted: #4b5563;--line: #d9dde3;--surface: #ffffff;--page: #f6f7f9;--danger: #b91c1c;--radius: 12px;--brand-primary: #334155;--brand-on-primary: #ffffff;--brand-accent: #64748b}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow-wrap:anywhere}#root{max-width:960px;margin:0 auto;background:var(--surface);min-height:100vh}img{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--brand-primary);outline-offset:2px}.site{padding:0 16px 32px}.site__header{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.site__logo{max-height:40px;width:auto}.site__name{font-weight:700;text-decoration:none}.hero{padding:48px 0 32px}.hero h1{font-size:2rem;line-height:1.2;margin:0 0 12px}.hero__sub{color:var(--muted);font-size:1.125rem;margin:0 0 24px}.site__section{padding:24px 0}.features{display:grid;gap:16px;list-style:none;padding:0;margin:0}.features li{border:1px solid var(--line);border-radius:var(--radius);padding:16px}.features h2{font-size:1.125rem;margin:0 0 4px}.button{display:inline-block;background:var(--brand-primary);color:var(--brand-on-primary);border:0;border-radius:var(--radius);padding:12px 20px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer;min-height:44px}.button[disabled]{opacity:.6;cursor:progress}.signup{display:grid;gap:16px;max-width:480px}.field{display:grid;gap:4px}.field label{font-weight:600}.field input,.field select{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;min-height:44px;background:var(--surface);color:var(--text)}.field [aria-invalid=true]{border-color:var(--danger)}.hint{color:var(--muted)}.error{color:var(--danger)}.notice{border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;margin:0}.notice--error{border-color:var(--danger);color:var(--danger)}.state{border:1px dashed var(--line);border-radius:var(--radius);padding:24px;text-align:center}.site__footer{border-top:1px solid var(--line);color:var(--muted);padding-top:16px;font-size:.875rem}.site__footer p{margin:0 0 4px}@media (min-width: 720px){.hero h1{font-size:2.75rem}.features{grid-template-columns:repeat(3,1fr)}}
