/* 只做手机：一列，最宽 480。不连外部字体和资源。 */
:root{--bg:#F6F1E9;--card:#FFFDF9;--ink:#24211D;--mute:#77706A;--line:#E6DDD0;--acc:#C2603D;--deep:#1E4A3C;--soft:#F1E6D8;--gold:#B8862E;--safe:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Noto Sans CJK SC","Microsoft YaHei",sans-serif}
.topnote{position:sticky;top:0;z-index:5;background:#EFE5D6;color:#6B5F52;font-size:12px;line-height:1.4;text-align:center;padding:6px 12px}
main{max-width:480px;margin:0 auto;padding:6px 14px calc(76px + var(--safe))}
h1{font:900 24px/1.35 "Songti SC","Noto Serif CJK SC","Source Han Serif SC",serif;margin:12px 0 6px}
h2{font:900 18px/1.4 "Songti SC","Noto Serif CJK SC","Source Han Serif SC",serif;margin:26px 0 8px}
h2 small{font:400 13px/1 sans-serif;color:var(--mute);margin-left:4px}
.hd .sub{margin:0;color:var(--mute);font-size:14px}
a{color:var(--deep)}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:10px 0}
.hero{background:var(--deep);color:#fff;border-radius:16px;padding:14px 16px;margin:12px 0 4px}
.hero small{display:block;color:#CFE0D8;font-size:13px}
.hero b{display:block;font:900 21px/1.35 "Songti SC","Noto Serif CJK SC",serif;margin:3px 0}
.ln{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 13px;margin:8px 0}
.ln .t{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.ln .t b{font-size:17px}.ln .t em{font-style:normal;font-weight:800;color:var(--deep);font-size:16px;text-align:right}
.ln .d{color:var(--mute);font-size:13px;margin-top:2px}
.pb{height:8px;background:#EEE4D6;border-radius:4px;margin:7px 0 3px;overflow:hidden}.pb i{display:block;height:8px;border-radius:4px;background:var(--acc)}
.ln.safe .pb i{background:var(--deep)}.ln.dream .pb i{background:var(--gold)}
.ln .n{display:flex;justify-content:space-between;font-size:13px;color:var(--mute)}
.form .fhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.tag{font-size:12px;background:var(--soft);color:#8A6A4E;border-radius:10px;padding:2px 8px}
.field{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #F0E8DC}
.field:first-of-type{border-top:0}
.field>span:first-child{flex:1;font-size:15px}.field small{display:block;color:var(--mute);font-size:12px;line-height:1.35}
.field.col{flex-direction:column;align-items:stretch}
.inp{display:flex;align-items:center;gap:4px;flex:none}
.inp input{width:104px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff;font:700 17px/1 -apple-system,sans-serif;color:var(--ink);text-align:right;padding:0 10px;-webkit-appearance:none;appearance:none}
.inp input:focus{outline:2px solid #E9B9A3;border-color:var(--acc)}
.inp em{font-style:normal;color:var(--mute);font-size:14px;width:16px}
.more summary{cursor:pointer;color:var(--deep);font-weight:700;padding:10px 0 6px;list-style:none}
.more summary::-webkit-details-marker{display:none}.more summary:before{content:"＋ "}.more[open] summary:before{content:"－ "}
.seg{display:flex;gap:6px;margin-top:6px}.seg button{flex:1;min-height:40px;border:1px solid var(--line);background:#fff;border-radius:10px;font-size:14px;color:var(--ink)}
.seg button.on{background:var(--deep);color:#fff;border-color:var(--deep)}
.hint{background:#FFF1E8;color:#9B4523;border-radius:10px;padding:8px 10px;font-size:14px;margin:6px 0}
.small{font-size:13px;color:var(--mute);line-height:1.55}
.row2{display:flex;gap:8px;margin-top:10px}
button.ghost,.ghost{flex:1;min-height:42px;border:1px solid var(--line);background:#fff;border-radius:21px;font-size:15px;color:var(--ink)}
.primary{display:block;width:100%;min-height:48px;margin:18px 0 6px;border:0;border-radius:24px;background:var(--acc);color:#fff;font-size:17px;font-weight:800;text-align:center;line-height:48px;text-decoration:none}
.tw{display:flex;justify-content:space-between;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:7px 0;font-size:15px}
.tw em{font-style:normal;font-weight:800;white-space:nowrap}.tw em.up{color:var(--deep)}.tw em.down{color:var(--acc)}
.chart svg{display:block;width:100%;height:auto}
.warn{background:#FFF6EE;border:1px solid #F0D7C5;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:15px}.warn b{color:var(--acc)}
.foot{text-align:center;color:var(--mute);font-size:13px;margin:10px 0}
.mlink{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin:10px 0;text-decoration:none;color:var(--ink);position:relative}
.mlink b{display:block;font-size:16px;padding-right:18px}.mlink span{display:block;color:var(--mute);font-size:13.5px;margin-top:2px}
.mlink:after{content:"›";position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--mute);font-size:22px}
.back{display:inline-block;margin-top:10px;color:var(--mute);text-decoration:none;font-size:14px;padding:6px 0}
.say{font:900 18px/1.5 "Songti SC","Noto Serif CJK SC",serif;color:var(--acc);margin:6px 0 10px}
.ul{margin:0;padding-left:20px}.ul li{margin:5px 0}.ul.chk{list-style:none;padding-left:0}.ul.chk li:before{content:"□ ";color:var(--acc)}
.src{font-size:12.5px;color:var(--mute);border-left:3px solid var(--line);padding-left:8px;margin:12px 0}
.tb{width:100%;border-collapse:collapse;font-size:14px}.tb th{text-align:left;white-space:nowrap;vertical-align:top;padding:7px 8px 7px 0;color:var(--deep);width:5.2em}.tb td{padding:7px 0;border-top:1px solid #F0E8DC}.tb tr:first-child td{border-top:0}
.kv{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid #F0E8DC;font-size:15px}.kv:first-child{border-top:0}.kv b{white-space:nowrap}
.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:6;display:flex;background:#fff;border-top:1px solid var(--line);padding-bottom:var(--safe)}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:6px 0 5px;color:#8A8178;text-decoration:none;font-size:11px;line-height:1.3}.tabbar a.on{color:var(--acc);font-weight:800}
.tabbar svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.tabbar svg .d{fill:currentColor;stroke:none}.tabbar a.on svg{stroke-width:2.1}
.sheet{position:fixed;inset:0;z-index:10;background:rgba(30,25,20,.72);display:flex;align-items:center;justify-content:center;padding:16px}
.sheet[hidden]{display:none}.sheet-in{max-width:420px;width:100%;text-align:center}.sheet-t{color:#fff;margin:0 0 10px;font-size:15px}
.sheet img{width:100%;border-radius:12px;display:block;background:#fff}.sheet .ghost{margin-top:12px;width:100%;flex:none}
