:root{--paper:#F2EDE3;--card:#FBF8F2;--card-2:#F6F1E7;--ink:#2A2622;--ink-2:#6B6459;--ink-3:#A29A8D;--rule:#DED6C7;--rule-2:#EBE4D8;--seal:#A63A2E;--seal-bg:#F3E4E0;--moss:#4A6153;--rec:#C4392B;--shadow:rgba(42,38,34,.10);--serif:"Songti SC","Source Han Serif SC","Noto Serif SC","STSong","SimSun",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif}[data-theme=night]{--paper:#1A1815;--card:#232019;--card-2:#2A251E;--ink:#EDE6D8;--ink-2:#A79E8D;--ink-3:#6E665A;--rule:#38322A;--rule-2:#2E2921;--seal:#D97B62;--seal-bg:#3A2620;--moss:#7FA48D;--rec:#E0705C;--shadow:rgba(0,0,0,.4)}*{box-sizing:border-box;-webkit-font-smoothing:antialiased}body,html{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}.serif{font-family:var(--serif)}button{font-family:inherit}@media (min-width:720px){body{max-width:480px;margin:0 auto}}.screen{min-height:100vh;display:flex;flex-direction:column}.grow{flex:1 1}.grow,.pad{padding:0 28px}.nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px 24px}.nav>:first-child{justify-self:start}.nav>:last-child{justify-self:end}.nav-back{font-size:15px;color:var(--ink-2);background:none;border:none;cursor:pointer;padding:6px 0;text-decoration:none}.nav-title{font-size:13px;letter-spacing:.08em;color:var(--ink-3)}.btn{display:block;width:100%;text-align:center;cursor:pointer;border:none;border-radius:999px;font-size:16px;padding:16px 24px;background:var(--ink);color:var(--paper);transition:transform .12s,opacity .2s;text-decoration:none}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.35;pointer-events:none}.btn.seal{background:var(--seal);color:#fff}.btn.ghost{background:transparent;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--rule)}.field{margin-bottom:24px}.field label{display:block;font-size:11px;letter-spacing:.16em;color:var(--ink-3);margin-bottom:10px}.field input{width:100%;font-size:19px;color:var(--ink);background:transparent;border:none;border-bottom:1px solid var(--rule);padding:4px 0 9px;outline:none;border-radius:0;font-family:var(--serif)}.field input::placeholder{color:var(--ink-3);opacity:.55}.field input:focus{border-bottom-color:var(--seal)}.field .tip{font-size:11.5px;color:var(--ink-3);margin-top:9px;line-height:1.75}.field .tip b{color:var(--seal);font-weight:400}.step-dots{display:flex;gap:5px;margin-bottom:24px}.step-dots i{height:2px;flex:1 1;background:var(--rule);border-radius:2px;transition:background .3s}.step-dots i.on{background:var(--seal)}.step-q{font-size:24px;font-weight:500;margin:0 0 9px;line-height:1.62}.step-sub{font-size:12.5px;color:var(--ink-3);line-height:1.85;margin:0 0 26px}.chip-group{margin-bottom:22px}.chip-group .gl{font-size:10.5px;letter-spacing:.2em;color:var(--ink-3);margin-bottom:11px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{font-size:14px;padding:9px 15px;border-radius:999px;cursor:pointer;background:var(--card);color:var(--ink-2);border:none;box-shadow:inset 0 0 0 1px var(--rule-2);transition:all .15s}.chip.on{background:var(--ink);color:var(--paper);box-shadow:none}.pick-big{display:block;width:100%;text-align:left;cursor:pointer;background:var(--card);border:none;border-radius:3px;padding:21px 20px;margin-bottom:12px;box-shadow:inset 0 0 0 1px var(--rule-2);transition:box-shadow .18s;color:var(--ink)}.pick-big.on{box-shadow:inset 0 0 0 1.5px var(--seal)}.pick-big h4{margin:0 0 8px;font-size:18px;font-weight:500;font-family:var(--serif)}.pick-big p{margin:0;font-size:12.5px;color:var(--ink-2);line-height:1.85}.note{background:var(--card);border-radius:3px;padding:18px 19px;border-left:2px solid var(--moss);text-align:left}.note .lbl{font-size:10.5px;letter-spacing:.18em;color:var(--moss);margin-bottom:11px}.note p{margin:0;font-size:12.5px;line-height:1.9;color:var(--ink-2)}.note b{color:var(--ink);font-weight:500}.err{font-size:13px;color:var(--seal);background:var(--seal-bg);padding:12px 15px;border-radius:3px;margin-bottom:18px}.bookcard{display:flex;gap:16px;padding:18px;align-items:center;background:var(--card);border-radius:4px;margin-bottom:16px;box-shadow:0 1px 3px var(--shadow);border-left:3px solid var(--seal);cursor:pointer;text-decoration:none;color:var(--ink);transition:transform .15s}.bookcard:hover{transform:translateX(2px)}.bookcard h3{margin:0 0 5px;font-size:19px;font-weight:500;font-family:var(--serif)}.bookcard .meta{font-size:12px;color:var(--ink-3);line-height:1.7}.portrait{width:62px;height:78px;flex:none;border-radius:2px;background:radial-gradient(ellipse at 50% 34%,color-mix(in srgb,var(--ink) 16%,transparent) 0,transparent 58%),linear-gradient(160deg,var(--card-2),color-mix(in srgb,var(--ink) 12%,var(--card-2)));box-shadow:inset 0 0 22px color-mix(in srgb,var(--ink) 14%,transparent);display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;font-size:9px;color:var(--ink-3);letter-spacing:.1em}.add-book{display:block;padding:20px;border:1px dashed var(--rule);border-radius:4px;text-align:center;font-size:14px;color:var(--ink-3);text-decoration:none;cursor:pointer}.seal-mark{width:58px;height:58px;border-radius:3px;background:var(--seal);color:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:var(--serif);margin:0 auto 24px}@keyframes qin{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}@keyframes up{0%{transform:translateY(100%)}to{transform:none}}.screen.iv{height:100vh}