:root{--ink:#172326;--muted:#718086;--line:#e4eceb;--bg:#f4f8f7;--card:#fff;--teal:#0d7c76;--teal-dark:#075b58;--orange:#e68a4a;--shadow:0 16px 45px rgba(32,70,69,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans','Noto Sans TC',sans-serif} .shell{max-width:1060px;margin:auto;padding:52px 24px 80px}.hero{max-width:760px;margin:0 auto 34px}.eyebrow,.kicker{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--teal)}.hero h1{font-family:'Noto Sans TC',sans-serif;font-size:clamp(30px,5vw,50px);line-height:1.18;margin:13px 0 13px;letter-spacing:-.04em}.hero p{font-size:16px;color:#5f7073;line-height:1.8;margin:0}.hero-note{margin-top:20px;font-size:12px;color:#708185}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--orange);margin-right:8px}.card{background:var(--card);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.input-card{padding:28px;margin-bottom:30px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:23px}.section-head h2,.section-head h3{font-family:'Noto Sans TC',sans-serif;margin:7px 0 0;letter-spacing:-.02em}.section-head h2{font-size:23px}.section-head h3{font-size:19px}.compact{align-items:center;margin-bottom:18px}.ghost-btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 14px;color:var(--teal-dark);font-weight:600;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.field,.monthly{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;color:#405054}.field i,.monthly i{font-style:normal;color:#99a4a6;font-weight:400;font-size:11px;margin-left:4px}.field input,.monthly input{width:100%;border:1px solid #d8e3e1;border-radius:11px;padding:13px 14px;font:inherit;font-weight:500;color:var(--ink);outline:none;background:#fcfefd}.field input:focus,.monthly input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(13,124,118,.1)}.advanced-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.toggle{display:flex;align-items:center;gap:10px;font-size:13px;color:#526467;cursor:pointer}.toggle input{display:none}.switch{width:38px;height:22px;background:#b9c9c7;border-radius:20px;position:relative;transition:.2s}.switch:after{content:"";position:absolute;width:16px;height:16px;background:#fff;border-radius:50%;left:3px;top:3px;transition:.2s;box-shadow:0 1px 3px #78908d}.toggle input:checked+.switch{background:var(--teal)}.toggle input:checked+.switch:after{left:19px}.monthly{width:220px}.primary-btn{margin-top:25px;width:100%;border:0;border-radius:12px;padding:15px;background:var(--teal);color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:.2s}.primary-btn:hover{background:var(--teal-dark);transform:translateY(-1px)}.primary-btn span{font-size:20px;margin-left:7px}.error{min-height:18px;color:#c55247;font-size:12px;margin:10px 0 0}.hidden{display:none}.results{animation:rise .45s ease}.result-head{display:flex;align-items:center;justify-content:space-between;margin:14px 0 19px}.result-head h2{font-family:'Noto Sans TC',sans-serif;font-size:25px;margin:7px 0 0}.chip{background:#e0f1ed;color:var(--teal-dark);border-radius:100px;padding:8px 13px;font-size:12px;font-weight:700}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:17px}.metric{background:#fff;border:1px solid var(--line);border-radius:17px;padding:20px 21px;box-shadow:0 8px 25px rgba(32,70,69,.05)}.metric span{display:block;color:#748488;font-size:12px}.metric strong{display:block;font-size:29px;letter-spacing:-.04em;margin:9px 0 3px}.metric small{color:#9aa6a7;font-size:11px}.metric.accent{background:var(--teal);color:#fff;border-color:var(--teal)}.metric.accent span,.metric.accent small{color:#c5e7e1}.chart-card,.table-card{padding:25px;margin-top:17px}.legend{font-size:11px;color:#758487;display:flex;align-items:center;gap:7px}.legend b{width:9px;height:9px;border-radius:3px;display:inline-block;margin-left:6px}.legend-current{background:#a7c5c0}.legend-proposed{background:var(--orange)}.chart{height:270px;display:flex;align-items:flex-end;justify-content:space-around;gap:14px;padding:15px 18px 0;border-bottom:1px solid var(--line);background:linear-gradient(to top,rgba(13,124,118,.035) 1px,transparent 1px);background-size:100% 25%}.bar-group{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;gap:8px;position:relative;max-width:150px}.bar{width:min(42px,35%);border-radius:7px 7px 0 0;position:relative;min-height:3px;transition:height .7s cubic-bezier(.2,.8,.3,1)}.bar.current{background:#a7c5c0}.bar.proposed{background:var(--orange)}.bar-value{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);font-size:10px;font-weight:700;color:#536467;white-space:nowrap}.bar-label{position:absolute;bottom:-27px;font-size:11px;color:#778689}.table-wrap{overflow-x:auto}.table-card table{width:100%;border-collapse:collapse;font-size:13px}.table-card th{text-align:left;padding:11px 12px;color:#7a898c;font-size:11px;font-weight:600;border-bottom:1px solid var(--line)}.table-card td{padding:16px 12px;border-bottom:1px solid #edf2f1;font-weight:600}.table-card tr:last-child td{border-bottom:0}.positive{color:var(--teal)}.small-muted{font-size:11px;color:#9aa6a7}.disclaimer{display:flex;gap:10px;margin:17px 4px 0;color:#849194;font-size:11px;line-height:1.7}.disclaimer p{margin:0}@keyframes rise{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@media(max-width:720px){.shell{padding:34px 15px 50px}.form-grid{grid-template-columns:1fr 1fr}.advanced-row{align-items:flex-start;flex-direction:column}.monthly{width:100%}.metric-grid{grid-template-columns:1fr}.metric strong{font-size:26px}.chart-card,.table-card{padding:18px}.legend{font-size:10px}.result-head{align-items:flex-end}}@media(max-width:460px){.form-grid{grid-template-columns:1fr}.section-head{margin-bottom:18px}.hero h1{font-size:33px}.table-card th,.table-card td{padding:12px 8px;font-size:11px}}
