:root{
  --tfv-paper:#fbf6ec;
  --tfv-paper2:var(--p10,#f4f0f9);
  --tfv-ink:var(--ink,#2b2733);
  --tfv-muted:var(--tm,#6b6766);
  --tfv-line:var(--bd,#e5e1e0);
  --tfv-night:#26282e;
  --tfv-gold:var(--gold,#e3ac2f);
  --tfv-yellow:var(--y,#ffe600);
  --tfv-dpp:var(--dpp,#1B9431);
  --tfv-kmt:var(--kmt,#000095);
  --tfv-neither:#7d8387;
  --tfv-active-party:var(--tpp,#28C8C8);
}
.tfv-main{background:var(--tfv-paper);color:var(--tfv-ink);font-family:"Noto Sans TC",system-ui,sans-serif;font-size:var(--fs-base,18.5px);font-weight:500;line-height:1.75}
.tfv-main *{box-sizing:border-box}
.tfv-main button,.tfv-main input{font:inherit}
.tfv-main button{color:inherit}
.tfv-wrap{width:min(1120px,calc(100% - 40px));margin:0 auto}
.tfv-main section[id],.tfv-main [id="poll"]{scroll-margin-top:150px}
.tfv-hero{position:relative;overflow:hidden;padding:46px 0 44px;background:
  radial-gradient(circle at 10% 22%,rgba(27,148,49,.12),transparent 25%),
  radial-gradient(circle at 88% 25%,rgba(0,0,149,.11),transparent 27%),
  radial-gradient(circle at 72% 92%,rgba(255,230,0,.2),transparent 22%),
  #f7f3e9;color:var(--tfv-ink)}
.tfv-hero::before{content:"9  10  11";position:absolute;right:-20px;top:125px;color:transparent;font:900 clamp(80px,13vw,188px)/1 "Noto Serif TC",serif;-webkit-text-stroke:1px rgba(43,39,51,.12);letter-spacing:-.08em}
.tfv-hero .tfv-wrap{position:relative;z-index:1}
.tfv-back{display:inline-flex;margin-bottom:12px;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:800;text-decoration:none}
.tfv-back::before{content:"←";margin-right:8px}.tfv-back:hover{color:var(--tfv-kmt)}
.tfv-kicker,.tfv-eyebrow{margin:0;font-size:var(--fs-xs,14.5px);font-weight:900;letter-spacing:.16em}
.tfv-kicker{display:flex;align-items:center;gap:10px;color:var(--tfv-kmt)}
.tfv-kicker span{width:34px;height:4px;background:linear-gradient(90deg,var(--tfv-kmt) 0 33.33%,var(--tfv-dpp) 33.33% 66.66%,var(--npp,#FFE600) 66.66%)}
.tfv-period{margin:17px 0 0;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:700;letter-spacing:.08em}
.tfv-hero h1{max-width:900px;margin:18px 0 10px;font:900 clamp(46px,6vw,74px)/1.04 "Noto Sans TC",sans-serif;letter-spacing:-.04em}
.tfv-hero h1 em{font-style:normal;color:var(--tfv-ink);background:linear-gradient(transparent 62%,rgba(255,230,0,.72) 62%)}
.tfv-punch{margin:0 0 24px;font-size:var(--fs-m,22px);font-weight:900;letter-spacing:0}
.tfv-punch::after{content:"";display:block;width:190px;height:7px;margin-top:18px;border-radius:var(--r-pill,999px);background:linear-gradient(90deg,var(--tfv-kmt) 0 33.33%,var(--tfv-dpp) 33.33% 66.66%,var(--npp,#FFE600) 66.66%)}
.tfv-lead{max-width:730px;margin:0;color:#514b57;font-size:var(--fs-base,18.5px);line-height:1.85}
.tfv-framework{display:inline-block;margin:32px 0 0;padding:13px 18px;border-radius:var(--r-md,12px);background:var(--tfv-ink);color:#fff;font-size:var(--fs-base,18.5px);line-height:1.7}
.tfv-framework strong{color:var(--tfv-yellow)}
.tfv-scope{margin:11px 0 0;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}
.tfv-local-nav{position:sticky;top:69px;z-index:80;display:flex;justify-content:center;gap:28px;padding:14px 20px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--tfv-line);box-shadow:0 12px 32px -30px var(--pdd,#2b1f45);backdrop-filter:blur(10px)}
.tfv-local-nav a{color:var(--tfv-ink);font-size:var(--fs-base,18.5px);font-weight:900;text-decoration:none}
.tfv-local-nav a:hover{color:var(--tfv-kmt)}
.tfv-answer{padding:84px 0 90px;background:#fff}
.tfv-answer h2{max-width:900px;margin:10px 0 18px;font-size:clamp(30px,4.2vw,52px);font-weight:900;line-height:1.24;letter-spacing:-.02em}
.tfv-answer-lead{max-width:820px;margin:0;color:var(--tfv-muted);font-size:var(--fs-m,22px);line-height:1.8}
.tfv-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:38px}
.tfv-answer-grid article{min-height:240px;padding:26px;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);background:var(--tfv-paper);display:flex;flex-direction:column}
.tfv-answer-grid span{color:var(--tfv-kmt);font-size:var(--fs-xs,14.5px);font-weight:900;letter-spacing:.08em}
.tfv-answer-grid strong{margin:18px 0 12px;font-size:var(--fs-m,22px);line-height:1.45}
.tfv-answer-grid p{margin:auto 0 0;color:var(--tfv-muted);font-size:var(--fs-base,18.5px);line-height:1.7}
.tfv-answer-scope{margin:18px 0 0;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);line-height:1.7}
.tfv-criteria{padding:88px 0;background:var(--tfv-night);color:#fff}
.tfv-criteria-layout{display:grid;grid-template-columns:.8fr 1.6fr;gap:56px;align-items:start}
.tfv-eyebrow{color:var(--tfv-kmt)}
.tfv-criteria .tfv-eyebrow,.tfv-units .tfv-eyebrow,.tfv-data .tfv-eyebrow{color:var(--tfv-yellow)}
.tfv-criteria h2,.tfv-section-head h2,.tfv-reading-guide h2{margin:10px 0 18px;font-size:var(--fs-l,30px);font-weight:900;line-height:1.25;letter-spacing:0}
.tfv-criteria header>p:last-child{margin:0;color:#bbb4c4;font-size:var(--fs-base,18.5px);line-height:1.8}
.tfv-criteria-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.tfv-criteria-grid article{min-height:285px;padding:27px 24px;border:1px solid #4b4e56;border-radius:var(--r-lg,16px);background:#30323a;display:flex;flex-direction:column}
.tfv-criteria-grid article>div{display:flex;justify-content:space-between;align-items:center;color:#aaa2b3;font-size:var(--fs-xs,14.5px)}
.tfv-criteria-grid b{padding:4px 8px;border-radius:var(--r-pill,999px);font-size:var(--fs-xs,14.5px);letter-spacing:.06em}
.tfv-criteria-grid .is-done{background:#315d48;color:#fff}
.tfv-criteria-grid .is-building{background:#4c4530;color:#f6dc77}
.tfv-criteria-grid h3{margin:auto 0 12px;font-size:var(--fs-m,22px)}
.tfv-criteria-grid p{margin:0;color:#c1b9c8;font-size:var(--fs-base,18.5px);line-height:1.75}
.tfv-section{padding:100px 0 110px}
.tfv-results-section{padding-top:44px}
.tfv-section-head{display:flex;align-items:flex-start;gap:18px;margin-bottom:46px}
.tfv-section-head>span{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:1px solid var(--tfv-line);border-radius:50%;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:800}
.tfv-section-head h2{margin-bottom:0}
.tfv-cohorts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);background:#fff;box-shadow:var(--shadow-card,0 1px 2px rgba(101,73,148,.05),0 14px 30px -14px rgba(101,73,148,.18))}
.tfv-cohorts button{min-height:94px;padding:16px;border:0;border-radius:var(--r-md,12px);background:transparent;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:5px 10px;cursor:pointer;transition:background .15s,color .15s,transform .15s}
.tfv-cohorts button:hover{background:var(--tfv-paper2);transform:translateY(-1px)}
.tfv-cohorts button[data-cohort^="npp"].active{background:var(--npp,#FFE600);color:#292318;box-shadow:0 8px 20px -14px #9b8700}
.tfv-cohorts button[data-cohort^="tpp"].active{background:var(--tpp,#28C8C8);color:#102b2a;box-shadow:0 8px 20px -14px #157b79}
.tfv-cohorts i{width:11px;height:11px;margin-top:4px;border-radius:50%}
.tfv-party.npp{background:var(--npp,#FFE600)}.tfv-party.tpp{background:var(--tpp,#28C8C8)}
.tfv-cohorts button>span{display:grid;font-size:var(--fs-base,18.5px);line-height:1.45}
.tfv-cohorts small{grid-column:2;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}.tfv-cohorts .active small{color:currentColor;opacity:.72}
.tfv-cohort-scope{margin:12px 0 24px;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}
.tfv-denominator{margin-bottom:22px;padding:20px 22px;border:1px solid #ead8a8;border-radius:var(--r-md,12px);background:#fff8e7;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.tfv-denominator strong{color:#5a4613;font-size:var(--fs-base,18.5px)}
.tfv-denominator ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px}
.tfv-denominator li{position:relative;padding-left:15px;color:#5f553c;font-size:var(--fs-xs,14.5px);line-height:1.65}
.tfv-denominator li::before{content:"";position:absolute;left:0;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--tfv-gold)}
.tfv-overview{overflow:hidden;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px) var(--r-lg,16px) 0 0;background:#fff;box-shadow:var(--shadow-card,0 1px 2px rgba(101,73,148,.05),0 14px 30px -14px rgba(101,73,148,.18))}
.tfv-overview-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:30px 32px 24px;border-bottom:1px solid var(--tfv-line)}
.tfv-overview-head h3{margin:6px 0 5px;font-size:var(--fs-l,30px);line-height:1.3}
.tfv-overview-head p:last-child{margin:0;color:var(--tfv-muted);font-size:var(--fs-base,18.5px)}
.tfv-overview-head>span{flex:none;padding:7px 12px;border-radius:var(--r-pill,999px);background:#fff8ce;color:#5a4613;font-size:var(--fs-xs,14.5px);font-weight:900}
.tfv-overview-table-wrap{overflow-x:auto}
.tfv-overview-table{width:100%;border-collapse:collapse;table-layout:fixed}
.tfv-overview-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.tfv-overview-table th,.tfv-overview-table td{padding:17px 16px;border-bottom:1px solid var(--tfv-line);text-align:right;font-size:var(--fs-base,18.5px)}
.tfv-overview-table thead th{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);white-space:nowrap}
.tfv-overview-table thead th:first-child,.tfv-overview-table tbody th{text-align:left}
.tfv-overview-table thead th:nth-child(1){width:180px}.tfv-overview-table thead th:nth-child(2){width:34%}
.tfv-overview-table thead i{display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:50%;vertical-align:1px}.tfv-overview-table thead .dpp{background:var(--tfv-dpp)}.tfv-overview-table thead .kmt{background:var(--tfv-kmt)}.tfv-overview-table thead .neither{background:linear-gradient(135deg,var(--npp,#FFE600) 50%,var(--tpp,#28C8C8) 50%)}
.tfv-overview-table tbody tr:last-child>*{border-bottom:0}
.tfv-overview-table tbody th strong,.tfv-overview-table tbody th span,.tfv-overview-table tbody th small{display:block}.tfv-overview-table tbody th strong{font-size:var(--fs-base,18.5px)}.tfv-overview-table tbody th span{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}.tfv-overview-table tbody th small{margin-top:3px;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:500}
.tfv-overview-table td{font-weight:800}.tfv-overview-table td.is-largest{font-weight:900}.tfv-overview-table td:nth-child(3).is-largest{background:#e3f3e7;color:#126528}.tfv-overview-table td:nth-child(4).is-largest{background:#e7ebf6;color:#142e72}.tfv-overview-table td:nth-child(5).is-largest{background:#f8f7f3;box-shadow:inset 6px 0 var(--row-party)}
.tfv-overview-stack{display:flex;width:100%;height:18px;overflow:hidden;border-radius:var(--r-pill,999px);background:#ece9e2;box-shadow:inset 0 0 0 1px rgba(43,39,51,.16)}
.tfv-overview-stack i{display:block;height:100%}.tfv-overview-stack .dpp{background:var(--tfv-dpp)}.tfv-overview-stack .kmt{background:var(--tfv-kmt)}
.tfv-overview-note{margin:0;padding:18px 28px 22px;border-top:1px solid var(--tfv-line);background:#fff8e7;color:#5f553c;font-size:var(--fs-xs,14.5px);line-height:1.75}
.tfv-post-poll{margin-top:38px}.tfv-post-poll .tfv-overview-note{border:1px solid #ead8a8;border-radius:var(--r-md,12px)}.tfv-post-poll .tfv-denominator{margin:14px 0 0}
.tfv-deep-head{margin:72px 0 24px;padding-top:36px;border-top:1px solid var(--tfv-line)}
.tfv-deep-head h3{margin:6px 0 5px;font-size:var(--fs-l,30px);line-height:1.3}.tfv-deep-head>p:last-child{margin:0;color:var(--tfv-muted);font-size:var(--fs-base,18.5px)}
.tfv-result-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}
.tfv-result-card{padding:clamp(26px,4vw,44px);background:#fff;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);box-shadow:var(--shadow-card,0 1px 2px rgba(101,73,148,.05),0 14px 30px -14px rgba(101,73,148,.18))}
.tfv-result-head{display:flex;justify-content:space-between;gap:22px}
.tfv-result-party{display:inline-block;padding-left:11px;border-left:7px solid var(--tfv-active-party);color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:700}
.tfv-result-card h3{margin:18px 0 6px;font-size:var(--fs-l,30px);letter-spacing:0}
.tfv-result-head p{margin:0;color:var(--tfv-muted);font-size:var(--fs-base,18.5px)}
.tfv-total{display:grid;text-align:right;align-content:start}.tfv-total span{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}.tfv-total strong{font-size:var(--fs-l,30px);letter-spacing:0;color:var(--tfv-ink)}
.tfv-bars{display:grid;gap:28px;margin:50px 0 38px}
.tfv-bar-row>div{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:var(--fs-base,18.5px)}.tfv-bar-row strong{font-size:var(--fs-l,30px)}
.tfv-track{display:block;height:16px;overflow:hidden;background:#d8d0c3}.tfv-track i{display:block;height:100%;box-shadow:inset 0 0 0 1px rgba(32,28,39,.7);transition:width .35s ease,background-color .2s ease}.tfv-track .dpp{background:var(--tfv-dpp)}.tfv-track .kmt{background:var(--tfv-kmt)}
.tfv-reading{display:grid;gap:7px;padding-top:22px;border-top:1px solid var(--tfv-line)}.tfv-reading span{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);letter-spacing:.12em}.tfv-reading strong{font-size:var(--fs-m,22px);line-height:1.55}
.tfv-audit{margin-top:17px;padding:14px 16px;border-radius:var(--r-md,12px);background:var(--tfv-paper2);color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);line-height:1.7}
.tfv-methods{padding:27px 21px;border:1px solid #4b4e56;border-radius:var(--r-lg,16px);background:linear-gradient(150deg,#26282e,#383b43);color:#fff;box-shadow:var(--shadow-card,0 1px 2px rgba(101,73,148,.05),0 14px 30px -14px rgba(101,73,148,.18))}
.tfv-methods>p{margin:0 0 12px;color:#d5d6da;font-size:var(--fs-xs,14.5px);font-weight:900;letter-spacing:.14em}
.tfv-methods button{width:100%;padding:18px 12px;border:0;border-radius:var(--r-md,12px);background:transparent;color:#fff;display:flex;gap:15px;text-align:left;cursor:pointer}
.tfv-methods button:hover{background:rgba(255,255,255,.08)}
.tfv-methods button>span{color:#b7b9c0;font-size:var(--fs-xs,14.5px)}.tfv-methods b{display:grid;font-size:var(--fs-base,18.5px)}.tfv-methods small{margin-top:4px;color:#d5d6da;font-size:var(--fs-xs,14.5px);font-weight:500}.tfv-methods button.active{background:#fff;color:var(--tfv-ink);box-shadow:inset 6px 0 0 var(--tfv-active-party)}.tfv-methods button.active small,.tfv-methods button.active>span{color:var(--tfv-muted)}
.tfv-table-wrap{margin-top:22px;overflow-x:auto;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px) var(--r-lg,16px) 0 0;background:#fff}
.tfv-comparison,.tfv-sensitivity table{width:100%;border-collapse:collapse;background:transparent}
.tfv-comparison caption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.tfv-comparison th,.tfv-comparison td,.tfv-sensitivity th,.tfv-sensitivity td{padding:15px 20px;border-bottom:1px solid var(--tfv-line);text-align:right;white-space:nowrap}
.tfv-comparison th:last-child{border-bottom:3px solid var(--tfv-active-party)}.tfv-comparison td:last-child{box-shadow:inset 4px 0 var(--tfv-active-party)}
.tfv-comparison th:first-child,.tfv-comparison td:first-child,.tfv-sensitivity th:first-child,.tfv-sensitivity td:first-child{text-align:left}
.tfv-comparison th,.tfv-sensitivity th{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);letter-spacing:.05em}.tfv-comparison td{font-size:var(--fs-base,18.5px);font-weight:800}
.tfv-comparison tr.active{background:var(--tfv-paper2)}.tfv-comparison tbody tr:last-child td,.tfv-sensitivity tbody tr:last-child td{border-bottom:0}
.tfv-definition{margin-top:28px;padding:24px 28px;border-left:7px solid var(--npp,#FFE600);border-radius:0 var(--r-md,12px) var(--r-md,12px) 0;background:#fff8ce;display:grid;grid-template-columns:210px 1fr;gap:24px}.tfv-definition strong{font-size:var(--fs-m,22px)}.tfv-definition p{margin:0;color:#5d5661;font-size:var(--fs-base,18.5px);line-height:1.8}
.tfv-units,.tfv-data{padding:100px 0 110px;background:var(--tfv-night);color:#fff}
.tfv-section-head.light>span{border-color:#53565f;color:#b7b9c0}.tfv-section-intro{max-width:760px;margin:-18px 0 45px 58px;color:#d1d2d6;font-size:var(--fs-base,18.5px);line-height:1.8}
.tfv-unit-list{border-top:1px solid #4b4e56}.tfv-unit-list article{display:grid;grid-template-columns:64px 1fr;gap:14px;padding:27px 0;border-bottom:1px solid #4b4e56}.tfv-unit-list article>span{color:#b7b9c0;font-size:var(--fs-xs,14.5px)}.tfv-unit-list h3{margin:0;font-size:var(--fs-m,22px)}.tfv-unit-list h3 b{margin-left:9px;padding:4px 8px;border-radius:var(--r-pill,999px);font-size:var(--fs-xs,14.5px);vertical-align:3px}.tfv-unit-list .done{background:#315d48;color:#b6f0cf}.tfv-unit-list .work{background:#5c4e2e;color:#f5dd86}.tfv-unit-list .todo{background:#45474e;color:#d1d2d6}.tfv-unit-list p{max-width:760px;margin:8px 0 0;color:#d1d2d6;font-size:var(--fs-base,18.5px);line-height:1.7}
.tfv-case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:50px}.tfv-case-grid article{min-height:210px;padding:28px;border:1px solid #4b4e56;border-radius:var(--r-lg,16px);background:#30323a;display:flex;flex-direction:column}.tfv-case-grid span{color:var(--tfv-yellow);font-size:var(--fs-xs,14.5px);font-weight:900;letter-spacing:.05em}.tfv-case-grid strong{margin:18px 0 auto;font-size:var(--fs-m,22px);line-height:1.35}.tfv-case-grid p{margin:18px 0 0;color:#d1d2d6;font-size:var(--fs-base,18.5px);line-height:1.7}
.tfv-weight-lab{display:grid;grid-template-columns:.72fr 1.28fr;gap:22px}.tfv-slider-card{padding:32px;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);background:#fff;box-shadow:var(--shadow-card-sm,0 1px 2px rgba(101,73,148,.05));display:flex;flex-direction:column;justify-content:center}.tfv-slider-card label{font-size:var(--fs-base,18.5px);line-height:1.6}.tfv-slider-card label strong{font-size:var(--fs-l,30px)}.tfv-slider-card input{width:100%;margin:34px 0 4px;accent-color:var(--tfv-kmt)}.tfv-slider-card>div{display:flex;justify-content:space-between;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}
.tfv-weight-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tfv-weight-cards article{min-height:190px;padding:27px 22px;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);background:#fff;display:flex;flex-direction:column}.tfv-weight-cards .recommended{background:linear-gradient(150deg,#26282e,#383b43);color:#fff}.tfv-weight-cards span{font-size:var(--fs-xs,14.5px)}.tfv-weight-cards strong{margin:auto 0 6px;font-size:var(--fs-l,30px);letter-spacing:0}.tfv-weight-cards small{color:var(--tfv-muted);font-size:var(--fs-xs,14.5px)}.tfv-weight-cards .recommended small{color:#d1d2d6}
.tfv-sensitivity{display:grid;grid-template-columns:.8fr 1.2fr;gap:34px;margin-top:30px;padding:28px;border:1px solid var(--tfv-line);border-radius:var(--r-lg,16px);background:#fff}.tfv-sensitivity h3{margin:8px 0 12px;font-size:var(--fs-m,22px)}.tfv-sensitivity p:last-child{margin:0;color:var(--tfv-muted);font-size:var(--fs-base,18.5px);line-height:1.8}.tfv-table-wrap.compact{margin:0;border-radius:var(--r-md,12px)}.tfv-sensitivity th,.tfv-sensitivity td{padding:12px 14px;font-size:var(--fs-xs,14.5px)}.tfv-sensitivity td:not(:first-child){font-weight:800}
.tfv-download-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tfv-download-grid a{min-height:165px;padding:22px;border:1px solid #4b4e56;border-radius:var(--r-lg,16px);background:#30323a;color:#fff;text-decoration:none;display:flex;flex-direction:column;transition:transform .18s,background .18s}.tfv-download-grid a:hover{transform:translateY(-3px);background:#3a3d45}.tfv-download-grid span{align-self:flex-start;padding:4px 8px;border-radius:var(--r-pill,999px);background:var(--tfv-yellow);color:#30282e;font-size:var(--fs-xs,14.5px);font-weight:900}.tfv-download-grid strong{margin:auto 0 7px;font-size:var(--fs-base,18.5px)}.tfv-download-grid small{color:#d1d2d6;font-size:var(--fs-xs,14.5px);line-height:1.6}
.tfv-sources{margin-top:24px;padding-top:20px;border-top:1px solid #4b4e56;display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;color:#d1d2d6;font-size:var(--fs-xs,14.5px)}.tfv-sources strong{color:#fff}.tfv-sources a{color:#f5dc70;text-decoration:underline;text-underline-offset:3px}.tfv-sources span{margin-left:auto}
.tfv-reading-guide{padding:90px 0;background:var(--tfv-paper)}.tfv-reading-note{max-width:760px;margin:0;padding-top:20px;border-top:3px solid var(--tfv-ink);color:var(--tfv-muted);font-size:var(--fs-base,18.5px);line-height:1.85}
.tfv-poll-section{padding:0 0 100px;background:var(--tfv-paper)}
.tfv-poll-inline{margin-top:-1px;padding:clamp(40px,5vw,58px) clamp(34px,5vw,52px) clamp(34px,5vw,52px);background:linear-gradient(90deg,var(--tfv-kmt) 0 33.33%,var(--tfv-dpp) 33.33% 66.66%,var(--npp,#FFE600) 66.66%) top/100% 7px no-repeat,#2b2d33;color:#fff;border:1px solid #4b4e56;border-top:0;border-radius:0 0 var(--r-lg,16px) var(--r-lg,16px);box-shadow:var(--shadow-card,0 1px 2px rgba(101,73,148,.05),0 14px 30px -14px rgba(101,73,148,.18))}
.tfv-poll-section .tfv-poll-inline{margin-top:0;border-top:1px solid #4b4e56;border-radius:var(--r-lg,16px)}
.tfv-poll .tfv-eyebrow{color:var(--tfv-yellow)}
.tfv-poll h2{margin:10px 0 14px;font-size:var(--fs-l,30px);font-weight:900;line-height:1.25;letter-spacing:0}
.tfv-poll-lead{max-width:780px;margin:0;color:#c2bbc8;font-size:var(--fs-base,18.5px);line-height:1.8}
.tfv-poll-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:38px}
.tfv-poll fieldset{margin:0;padding:28px;border:1px solid #53565f;border-radius:var(--r-lg,16px);background:rgba(255,255,255,.055)}
.tfv-poll legend{padding:0 12px;color:#fff;font-size:var(--fs-m,22px);font-weight:900}.tfv-poll legend i{display:inline-block;width:14px;height:14px;margin-right:9px;border-radius:50%}.tfv-poll legend .npp{background:var(--npp,#FFE600)}.tfv-poll legend .tpp{background:var(--tpp,#28C8C8)}
.tfv-poll-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tfv-poll-options button{min-height:58px;padding:12px;border:1px solid var(--tfv-line);border-radius:var(--r-pill,999px);background:#fff;color:var(--tfv-ink);font-size:var(--fs-base,18.5px);font-weight:900;cursor:pointer}
.tfv-poll-options button:hover{border-color:var(--tfv-active-party)}
[data-poll-party="npp"] .tfv-poll-options button.selected{border-color:#ad8b0d;background:var(--npp,#FFE600);color:#292318;box-shadow:inset 0 0 0 1px #6e590c}
[data-poll-party="tpp"] .tfv-poll-options button.selected{border-color:#157b79;background:var(--tpp,#28C8C8);color:#102b2a;box-shadow:inset 0 0 0 1px #176d6b}
.tfv-poll-options button:disabled{cursor:default}.tfv-poll-options button:disabled:not(.selected){opacity:.48}
.tfv-poll-submit{display:flex;align-items:center;gap:20px;margin-top:24px}.tfv-poll-submit>button{min-height:58px;padding:12px 30px;border:0;border-radius:var(--r-pill,999px);background:var(--tfv-gold);color:var(--tfv-ink);font-size:var(--fs-base,18.5px);font-weight:900;cursor:pointer}.tfv-poll-submit>button:disabled{background:#696170;color:#c2bbc8;cursor:not-allowed}.tfv-poll-submit p{margin:0;color:#b8b0c0;font-size:var(--fs-xs,14.5px);line-height:1.7}
@media(max-width:900px){
  .tfv-criteria-layout,.tfv-result-layout,.tfv-weight-lab,.tfv-sensitivity{grid-template-columns:1fr}
  .tfv-answer-grid{grid-template-columns:1fr}.tfv-answer-grid article{min-height:0}
  .tfv-criteria-grid{margin-top:4px}.tfv-cohorts{grid-template-columns:1fr 1fr}
  .tfv-methods{display:grid;grid-template-columns:repeat(3,1fr);padding:0}.tfv-methods>p{display:none}.tfv-methods button{border:0;padding:19px}
  .tfv-case-grid,.tfv-download-grid{grid-template-columns:1fr}.tfv-case-grid article{min-height:165px}.tfv-download-grid a{min-height:135px}
}
@media(max-width:640px){
  .tfv-wrap{width:min(100% - 28px,1120px)}.tfv-hero{padding:30px 0 32px}.tfv-hero::before{display:none}.tfv-hero h1{font-size:42px}.tfv-punch{font-size:var(--fs-m,22px)}.tfv-lead,.tfv-framework{font-size:var(--fs-base,18.5px)}
  .tfv-local-nav{justify-content:space-between;gap:12px;padding:12px 14px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.tfv-local-nav::-webkit-scrollbar{display:none}.tfv-local-nav a{white-space:nowrap;scroll-snap-align:start;font-size:var(--fs-xs,14.5px)}
  .tfv-answer{padding:66px 0 72px}.tfv-answer h2{font-size:var(--fs-l,30px)}.tfv-answer-lead{font-size:var(--fs-base,18.5px)}.tfv-answer-grid{margin-top:28px}
  .tfv-criteria,.tfv-section,.tfv-units,.tfv-data,.tfv-reading-guide{padding:74px 0}.tfv-results-section{padding-top:24px}.tfv-criteria-grid{grid-template-columns:1fr}.tfv-criteria-grid article{min-height:190px}
  .tfv-section-head{gap:12px}.tfv-section-head h2,.tfv-criteria h2,.tfv-reading-guide h2{font-size:var(--fs-l,30px)}.tfv-cohorts{grid-template-columns:1fr}.tfv-cohorts button{border:0}
  .tfv-overview-head{display:block;padding:24px 20px 20px}.tfv-overview-head>span{display:inline-block;margin-top:14px}.tfv-overview-table-wrap{overflow:visible}.tfv-overview-table,.tfv-overview-table tbody{display:block}.tfv-overview-table thead{display:none}.tfv-overview-table tbody{padding:12px}.tfv-overview-table tbody tr{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:12px;border:1px solid var(--tfv-line);border-radius:var(--r-md,12px);overflow:hidden}.tfv-overview-table tbody tr:last-child{margin-bottom:0}.tfv-overview-table tbody th,.tfv-overview-table tbody td{display:block;border:0;padding:12px;text-align:left}.tfv-overview-table tbody th{grid-column:1/-1;background:#f8f6f1}.tfv-overview-table .tfv-overview-visual{grid-column:1/-1;padding:14px 12px 6px}.tfv-overview-table tbody td:not(.tfv-overview-visual){position:relative;padding-top:30px;text-align:center;font-size:var(--fs-base,18.5px)}.tfv-overview-table tbody td:not(.tfv-overview-visual)::before{content:attr(data-label);position:absolute;left:4px;right:4px;top:8px;color:var(--tfv-muted);font-size:var(--fs-xs,14.5px);font-weight:500;white-space:nowrap}.tfv-overview-table td:nth-child(5).is-largest{box-shadow:inset 0 5px var(--row-party)}
  .tfv-denominator{grid-template-columns:1fr;gap:8px}.tfv-denominator ul{display:grid;gap:6px}.tfv-result-head{display:grid}.tfv-total{text-align:left}.tfv-bars{margin:40px 0 34px}.tfv-methods{grid-template-columns:1fr}.tfv-methods button{border-bottom:1px solid #4b4355}
  .tfv-comparison th,.tfv-comparison td{padding:14px 11px;font-size:var(--fs-xs,14.5px)}.tfv-table-wrap.compact{position:relative}.tfv-table-wrap.compact::after{content:"左右滑看完整表格";display:block;padding:8px 12px;border-top:1px solid var(--tfv-line);color:var(--tfv-muted);font-size:12px;text-align:right}.tfv-definition{grid-template-columns:1fr;gap:8px}.tfv-section-intro{margin-left:0;font-size:var(--fs-base,18.5px)}.tfv-unit-list article{grid-template-columns:38px 1fr}.tfv-unit-list h3 b{display:inline-block;margin:8px 0 0}.tfv-weight-cards{grid-template-columns:1fr}.tfv-weight-cards article{min-height:140px}.tfv-weight-cards strong{margin-top:25px}.tfv-sources span{width:100%;margin-left:0}.tfv-poll-section{padding-bottom:72px}.tfv-poll-inline{padding:32px 20px}.tfv-poll-grid{grid-template-columns:1fr}.tfv-poll-options{grid-template-columns:1fr}.tfv-poll-submit{align-items:stretch;flex-direction:column}.tfv-poll-submit>button{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tfv-track i,.tfv-download-grid a{transition:none}}
