:root{--bg:#f4f5f7;--card:#ffffff;--line:#e4e6ea;--ink:#1c1e21;--ink2:#5f6368;--ink3:#9aa0a6;--t1:#0f6e56;--t1bg:#e1f5ee;--t2:#185fa5;--t2bg:#e6f1fb;--t3:#534ab7;--t3bg:#eeedfe;--warn:#993c1d;--warnbg:#faece7}*{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100vw}body{background:var(--bg);color:var(--ink);font-family:-apple-system,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-size:14px;line-height:1.6;padding:24px 16px 60px;-webkit-font-smoothing:antialiased}.wrap{max-width:1080px;margin:0 auto}header{text-align:center;margin-bottom:22px}header h1{font-size:22px;font-weight:600;letter-spacing:.5px}header p{color:var(--ink2);margin-top:6px;font-size:13px}.toolbar{display:flex;gap:10px;justify-content:center;margin-top:14px;flex-wrap:wrap}button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer;font-family:inherit}button:hover{border-color:#b9bcc2}button.primary{background:#1c1e21;color:#fff;border-color:#1c1e21}button.primary:hover{background:#333}.banner{display:none;background:var(--warnbg);color:var(--warn);border:1px solid #f0c8b8;border-radius:10px;padding:10px 14px;margin-bottom:16px;font-size:13px;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}.banner.show{display:flex}.hist-item{border:1px solid var(--line);border-radius:10px;padding:10px 14px;margin-bottom:10px;font-size:13px}.hist-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:space-between}.hist-ops button{padding:3px 10px;font-size:12px;margin-left:6px}.hist-detail{margin-top:8px;color:var(--ink2);line-height:1.7}.profileGrid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr 1.5fr;grid-gap:16px;gap:16px;align-items:start}.kettleParams{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin-bottom:18px}.kettleParams>.panel{margin-bottom:0}.twoCol{display:grid;grid-template-columns:1.15fr 1fr;grid-gap:18px;gap:18px;align-items:start;margin-bottom:18px}.twoCol>.panel{margin-bottom:0}@media (max-width:860px){.profileGrid{grid-template-columns:repeat(2,1fr)}.kettleParams{grid-template-columns:1fr}.kettleParams>.panel{margin-bottom:14px}.twoCol{grid-template-columns:1fr}.twoCol>.panel{margin-bottom:18px}}.field input[type=range]{border:none;padding:0;background:transparent;accent-color:var(--t2)}.kettles{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin-bottom:22px}@media (max-width:720px){.kettles{grid-template-columns:1fr}}.kettle{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 18px 16px;position:relative;overflow:hidden}.kettle:before{content:"";position:absolute;top:0;left:0;right:0;height:4px}.k1:before{background:var(--t1)}.k2:before{background:var(--t2)}.k3:before{background:var(--t3)}.kettle .tag{display:inline-block;font-size:12px;padding:2px 10px;border-radius:999px;margin-bottom:10px;font-weight:500}.k1 .tag{background:var(--t1bg);color:var(--t1)}.k2 .tag{background:var(--t2bg);color:var(--t2)}.k3 .tag{background:var(--t3bg);color:var(--t3)}.kettle h3{font-size:15px;font-weight:600;margin-bottom:2px}.kettle .desc{color:var(--ink2);font-size:12px;margin-bottom:12px;min-height:34px}.kettle .goal{font-size:24px;font-weight:600;letter-spacing:.3px}.k1 .goal{color:var(--t1)}.k2 .goal{color:var(--t2)}.k3 .goal{color:var(--t3)}.kettle .formula{color:var(--ink3);font-size:12px;margin:2px 0 12px}.bar{height:8px;background:#eef0f2;overflow:hidden}.bar,.bar i{border-radius:999px}.bar i{display:block;height:100%;transition:width .5s}.k1 .bar i{background:var(--t1)}.k2 .bar i{background:var(--t2)}.k3 .bar i{background:var(--t3)}.kettle .meta{display:flex;justify-content:space-between;margin-top:8px}.kettle .eta,.kettle .meta{font-size:12px;color:var(--ink2)}.kettle .eta{margin-top:10px;background:#fafbfc;border:1px dashed var(--line);border-radius:8px;padding:7px 10px}.kettle .eta b{color:var(--ink)}.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;margin-bottom:18px}.panel h2{font-size:15px;font-weight:600;margin-bottom:14px;display:flex;align-items:center;gap:8px}.panel h2 .dot{width:8px;height:8px;border-radius:50%}.field{display:flex;flex-direction:column;gap:5px}.field label{font-size:12.5px;color:var(--ink2)}.field label small{color:var(--ink3)}.field input,.field select{border:1px solid var(--line);border-radius:8px;padding:9px 10px;font-size:14px;background:#fff;color:var(--ink);outline:none;font-family:inherit}.field input:focus,.field select:focus{border-color:#8ab4f8}.field .hint{font-size:11.5px;color:var(--ink3)}.money{position:relative}.money>span{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ink3);font-size:13px}.money input{padding-left:24px;width:100%}table.dreams{width:100%;border-collapse:collapse;font-size:13px}table.dreams th{text-align:left;color:var(--ink3);font-weight:400;font-size:12px;padding:4px 6px}table.dreams td{padding:4px 6px;vertical-align:middle}table.dreams input,table.dreams select{width:100%;border:1px solid var(--line);border-radius:7px;padding:7px 8px;font-size:13px;background:#fff;font-family:inherit}table.dreams .del{border:none;background:none;color:var(--ink3);font-size:16px;cursor:pointer;padding:0 6px}table.dreams .del:hover{color:#a32d2d}.dreamsum{margin-top:10px;font-size:13px;color:var(--ink2)}.dreamsum b{color:var(--t3)}.advice{list-style:none}.advice li{display:flex;gap:10px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:13.5px}.advice li:last-child{border-bottom:none}.advice .no{flex:none;width:20px;height:20px;border-radius:50%;background:#f1f2f4;color:var(--ink2);font-size:12px;display:flex;align-items:center;justify-content:center;margin-top:2px}.advice b{font-weight:600}.advice .src{color:var(--ink3);font-size:12px}details.method{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:18px}details.method summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--ink2)}details.method .m{margin-top:12px;font-size:13px;color:var(--ink2)}details.method .m p{margin:6px 0}details.method .m b{color:var(--ink)}details.method blockquote{border-left:3px solid var(--line);padding-left:12px;margin:8px 0;color:var(--ink2)}.ptable{width:100%;border-collapse:collapse;font-size:12.5px;margin:10px 0}.ptable th{text-align:left;color:var(--ink3);font-weight:500;font-size:11.5px;padding:5px 8px;border-bottom:1px solid var(--line)}.ptable td{padding:7px 8px;border-bottom:1px solid #f0f1f3;vertical-align:top;color:var(--ink2)}.ptable td:first-child,.ptable td:nth-child(2){color:var(--ink)}footer{color:var(--ink3);font-size:12px;text-align:center;margin-top:26px;line-height:1.8}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#1c1e21;color:#fff;font-size:13px;padding:9px 18px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .3s;z-index:50}.toast.show{opacity:.92}.hint{font-size:11.5px;color:var(--ink3)}a{color:inherit;text-decoration:none}.toolbar a{display:inline-flex}