:root{--ink:#20312f;--muted:#61716f;--brand:#176b64;--accent:#e59a48;--line:#d8e3df;--soft:#edf7f4;--surface:#fff;--bg:#f7faf8;font-family:Inter,"Noto Sans TC",system-ui,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;line-height:1.7}a{color:var(--brand)}.container{width:min(1080px,calc(100% - 32px));margin:auto}.site-header{border-bottom:1px solid var(--line);background:rgba(255,255,255,.94)}.nav{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{flex:0 0 auto;font-weight:900;text-decoration:none}.brand span{color:var(--accent)}.primary-links{display:flex;align-items:center;gap:18px;min-width:0}.primary-links a{white-space:nowrap;text-decoration:none;font-size:.9rem;font-weight:800}.hero{padding:70px 0 48px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--brand);font-size:.78rem;font-weight:900}.hero h1{max-width:780px;margin:.25rem 0;font-size:clamp(2.25rem,7vw,4.8rem);line-height:1.08}.lead{max-width:720px;color:var(--muted);font-size:1.13rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:72px}.card{padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 10px 35px rgba(31,74,68,.05)}.card h2,.card h3{margin-top:0}.card a{text-decoration:none;font-weight:850}.tag{display:inline-block;padding:4px 9px;border-radius:99px;background:var(--soft);color:var(--brand);font-size:.78rem;font-weight:850}.breadcrumbs{padding-top:26px;color:var(--muted);font-size:.9rem}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);gap:24px;padding:32px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-weight:800}input,select,button{width:100%;min-height:48px;margin-top:6px;padding:10px 12px;border:1px solid #b8cbc6;border-radius:11px;background:white;font:inherit}button{grid-column:1/-1;border:0;background:var(--brand);color:white;font-weight:900;cursor:pointer}.result{background:linear-gradient(145deg,#e8f6f2,#fff5e8)}.result-value{font-size:clamp(2rem,6vw,3.8rem);font-weight:950;color:var(--brand);line-height:1.15}.result[hidden]{display:none}.content{display:grid;gap:18px;padding-bottom:80px}.formula{padding:14px;border-radius:12px;background:var(--soft);font-family:ui-monospace,monospace;overflow-wrap:anywhere}.source-note{font-size:.88rem;color:var(--muted)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:10px;top:10px;z-index:9;background:white;padding:10px}.site-footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted)}@media(max-width:760px){.grid,.tool-layout{grid-template-columns:1fr}.hero{padding-top:45px}.form-grid{grid-template-columns:1fr}.tool-layout{padding-top:20px}}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.metric-grid div{padding:12px;border-radius:12px;background:rgba(255,255,255,.72)}.metric-grid dt{color:var(--muted);font-size:.78rem;font-weight:800}.metric-grid dd{margin:2px 0 0;font-size:1.16rem;font-weight:900}.chart-section{padding-bottom:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.section-heading h2,.section-heading p{margin-top:0}.section-heading>p{color:var(--muted);font-size:.88rem}.chart-shell{min-height:300px;margin-top:18px;overflow:hidden}.chart-shell svg{display:block;width:100%;height:auto}.chart-grid{stroke:#d9e5e1;stroke-width:1}.chart-line{fill:none;stroke:var(--brand);stroke-width:3;vector-effect:non-scaling-stroke}.chart-area{fill:url(#cpi-area)}.chart-label{fill:var(--muted);font:12px system-ui,sans-serif}.chart-point{fill:var(--accent);stroke:white;stroke-width:3}.faq details{padding:14px 0;border-top:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:850}.faq details p{color:var(--muted)}@media(max-width:560px){.metric-grid{grid-template-columns:1fr}.section-heading{display:block}.chart-shell{min-height:220px}}
.chart-line-secondary{stroke:var(--accent)}.chart-legend{display:flex;gap:24px;color:var(--muted);font-size:.88rem}.chart-legend span:before{content:"";display:inline-block;width:24px;height:3px;margin-right:7px;vertical-align:middle;background:var(--brand)}.chart-legend span+span:before{background:var(--accent)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:right}th:first-child,td:first-child{text-align:left}th{color:var(--muted);font-size:.8rem}.table-card{padding-bottom:12px}
.content>*{min-width:0}
.sensitivity-table th,.sensitivity-table td{text-align:center;white-space:normal;min-width:110px}.sensitivity-table th:first-child{min-width:150px}.fav-buy{color:var(--brand);font-weight:850}.fav-rent{color:#9a4c32;font-weight:850}
.county-list{list-style:none;padding:0;margin:18px 0 0}.county-list li{display:grid;grid-template-columns:28px 70px minmax(70px,1fr) 112px;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.county-list .rank{color:var(--muted);font-size:.8rem}.county-list strong{text-align:right}.county-bar{height:9px;background:var(--soft);border-radius:99px;overflow:hidden}.county-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),var(--accent));border-radius:inherit}@media(max-width:560px){.county-list li{grid-template-columns:24px 64px minmax(40px,1fr) 92px;font-size:.86rem}}
.vital-birth{fill:var(--brand)}.vital-death{fill:var(--accent)}.vital-legend span:first-child:before{background:var(--brand)}.vital-legend span+span:before{background:var(--accent)}td.negative{color:#a33b32;font-weight:800}
.change-natural{fill:var(--brand)}.change-residual{fill:var(--accent)}.change-legend span:first-child:before{background:var(--brand)}.change-legend span+span:before{background:var(--accent)}
.age-stack{display:flex;height:42px;margin:24px 0 16px;border-radius:14px;overflow:hidden;background:var(--soft)}.age-stack i{display:block}.age-child{background:#e8b76f}.age-working{background:var(--brand)}.age-older{background:#9a6b72}.age-legend{display:flex;flex-wrap:wrap;gap:16px 28px;list-style:none;padding:0}.age-legend li{display:flex;align-items:center;gap:8px;color:var(--muted)}.age-legend span{width:12px;height:12px;border-radius:3px}.age-legend strong{color:var(--ink)}
.labor-stack{display:flex;height:42px;margin:24px 0 16px;border-radius:14px;overflow:hidden;background:var(--soft)}.labor-stack i{display:block;min-width:2px}.labor-employed{background:var(--brand)}.labor-unemployed{background:var(--accent)}.labor-out{background:#9a6b72}.labor-legend{display:flex;flex-wrap:wrap;gap:16px 28px;list-style:none;padding:0}.labor-legend li{display:flex;align-items:center;gap:8px;color:var(--muted)}.labor-legend span{width:12px;height:12px;border-radius:3px}.labor-legend li:nth-child(1) span{background:var(--brand)}.labor-legend li:nth-child(2) span{background:var(--accent)}.labor-legend li:nth-child(3) span{background:#9a6b72}
.comparison-grid,.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.comparison-grid>div,.related-grid>a{padding:18px;border-radius:14px;background:var(--soft)}.comparison-grid h3{margin:0}.related-grid a{display:grid;gap:4px;text-decoration:none}.related-grid span{color:var(--muted);font-size:.9rem}.example-card{background:linear-gradient(145deg,#e8f6f2,#fff5e8)}@media(max-width:620px){.comparison-grid,.related-grid{grid-template-columns:1fr}}
.price-list{list-style:none;padding:0}.price-list li{display:grid;grid-template-columns:28px 100px minmax(80px,1fr) 120px;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.price-list small{display:block;color:var(--muted)}.price-list strong{text-align:right}.warning-card{border-color:#e7cda9;background:#fffaf2}@media(max-width:560px){.price-list li{grid-template-columns:22px 76px minmax(45px,1fr) 92px;font-size:.84rem}.section-heading label{margin-bottom:12px}}
.tool-catalog{display:grid;gap:72px;padding-bottom:72px}.tool-topic{scroll-margin-top:24px}.tool-topic .grid{padding-bottom:0}.topic-heading{max-width:720px;margin-bottom:22px}.topic-heading h2{font-size:clamp(2.25rem,7vw,4.8rem);line-height:1.08}.topic-heading p:last-child{color:var(--muted)}.topic-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.topic-nav a{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:white;text-decoration:none;font-weight:800}.tool-topic .card{display:flex;flex-direction:column}.tool-topic .card h3{margin:.7rem 0 0;font-size:1.22rem}.tool-topic .card p{flex:1}.subtopic-title{margin:30px 0 14px;color:var(--muted);font-size:.85rem;font-weight:900;letter-spacing:.08em}.home-method{padding-top:0}.tool-layout>*{min-width:0}.result .table-scroll{width:100%;min-width:0;max-width:100%}@media(max-width:760px){.tool-layout{grid-template-columns:minmax(0,1fr)}}
.footer-nav{display:flex;flex-wrap:wrap;gap:8px 20px;width:min(1080px,calc(100% - 32px));margin:14px auto 0}.footer-nav a{font-weight:750;text-decoration:none}
.snapshot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.snapshot-card{display:flex;flex-direction:column}.snapshot-card h2{margin:.7rem 0 0}.snapshot-card>p:nth-of-type(2){min-height:3.2em}.snapshot-card>a{margin-top:auto}.snapshot-value{margin:.45rem 0 0;color:var(--brand);font-size:clamp(1.65rem,4vw,2.6rem);font-weight:950;line-height:1.2}@media(max-width:820px){.snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.snapshot-grid{grid-template-columns:1fr}.snapshot-card>p:nth-of-type(2){min-height:0}}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-grid>.card{display:flex;flex-direction:column}.profile-grid>.card>a{margin-top:auto}.profile-details{display:grid;gap:8px;margin:12px 0 20px}.profile-details div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}.profile-details dt{color:var(--muted)}.profile-details dd{margin:0;text-align:right;font-weight:900}@media(max-width:620px){.profile-grid{grid-template-columns:1fr}}

@media(max-width:760px){.nav{width:100%;padding-left:16px}.primary-links{overflow-x:auto;padding:14px 16px 14px 0;scrollbar-width:none}.primary-links::-webkit-scrollbar{display:none}.primary-links a{font-size:.84rem}}
.skip-link:focus-visible{left:10px;top:10px;z-index:100;padding:10px 14px;border-radius:8px;box-shadow:0 0 0 4px rgba(229,154,72,.35)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brand);outline-offset:3px}input:focus-visible,select:focus-visible{border-color:var(--brand)}
.tool-finder{margin:0 auto 44px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 10px 35px rgba(31,74,68,.05)}.tool-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.tool-search-row label{min-width:0}.tool-search-row input{margin-top:6px}.tool-search-row button{width:auto;min-width:112px;grid-column:auto;margin-top:0;padding-inline:18px}.filter-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.filter-buttons button{width:auto;min-height:40px;margin:0;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:var(--soft);color:var(--brand)}.filter-buttons button[aria-pressed="true"]{background:var(--brand);color:#fff}.finder-status{display:flex;justify-content:space-between;gap:16px;margin-top:14px;color:var(--muted);font-size:.9rem}.finder-status p{margin:0}.tool-topic[hidden],.tool-topic .card[hidden],.tool-finder [hidden]{display:none!important}@media(max-width:560px){.tool-search-row{grid-template-columns:1fr}.tool-search-row button{width:100%}.finder-status{display:block}.filter-buttons{display:grid;grid-template-columns:1fr 1fr}.filter-buttons button{width:100%}}
