:root{--bg:#f3f4f6;--surface:#fff;--line:#d8dbe2;--fg:#1c2130;--muted:#5b6274;--ai:#23417c;--on-ai:#fff;
--f-body:"BIZ UDPGothic","Hiragino Sans","Yu Gothic",system-ui,sans-serif;--f-head:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",system-ui,sans-serif}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#11141b;--surface:#1a1e28;--line:#2c3240;--fg:#e7e9ef;--muted:#9aa1b3;--ai:#9fb7ee;--on-ai:#10172a;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#11141b;--surface:#1a1e28;--line:#2c3240;--fg:#e7e9ef;--muted:#9aa1b3;--ai:#9fb7ee;--on-ai:#10172a;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);line-height:1.7}
body.center{min-height:100vh;display:grid;place-items:center;padding:16px}
.box{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px 24px;max-width:460px;width:100%}
.brand{font-family:var(--f-head);font-weight:900;font-size:18px;color:var(--ai)}
h1{font-family:var(--f-head);font-size:22px;margin:8px 0 10px}
.btn{display:inline-block;border-radius:10px;padding:10px 20px;text-decoration:none;font-weight:700;border:1px solid var(--line);color:var(--fg)}
.btn.primary{background:var(--ai);color:var(--on-ai);border-color:var(--ai)}
.muted{color:var(--muted)}.small{font-size:13px}
.msg:empty{display:none}.msg{background:#e0f1e8;color:#1b6a44;border-radius:8px;padding:6px 10px}
.list{padding-left:20px}.list a{color:var(--ai);font-weight:700}
