:root{--surface: #ffffff;--surface-raised: #f6f5f3;--ink: #1b1a17;--ink-soft: #6b6862;--line: #e2dfd9;--accent: #7a5c3e;--radius: 10px;--gap: 16px;--reading-max: 760px;--shell-max: 1100px}:root[data-theme=sepia]{--surface: #f4ecd8;--surface-raised: #ece2ca;--ink: #3b3428;--line: #ded1b4}:root[data-theme=dark]{--surface: #16161a;--surface-raised: #1f1f25;--ink: #e8e6e1;--ink-soft: #9b978f;--line: #2c2c34}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:var(--surface);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}.shell{width:100%;max-width:var(--shell-max);margin:0 auto;padding:var(--gap)}button{font:inherit;cursor:pointer}button,a,input,select{min-height:44px}dialog.confirm{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);padding:20px;max-width:min(420px,90vw)}dialog.confirm::backdrop{background:#00000073}dialog.confirm h2{margin:0 0 8px;font-size:1.05rem}dialog.confirm p{margin:0 0 18px;color:var(--ink-soft)}dialog.confirm menu{display:flex;gap:12px;justify-content:flex-end;margin:0;padding:0}dialog.confirm button{border:1px solid var(--line);border-radius:var(--radius);padding:10px 16px;background:transparent;color:var(--ink)}dialog.confirm button.danger{border-color:#a3372f;color:#a3372f}
