.pagehead-tudastar{padding:48px 0 36px;position:relative;overflow:hidden}.pagehead-tudastar:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(20,24,28,.025) 1px,transparent 0),linear-gradient(180deg,rgba(20,24,28,.025) 1px,transparent 0);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 60% 80% at 80% 30%,#000 30%,transparent 70%);mask-image:radial-gradient(ellipse 60% 80% at 80% 30%,#000 30%,transparent 70%);pointer-events:none}.pagehead-inner{position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:end}@media (max-width:1080px){.pagehead-inner{grid-template-columns:1fr;gap:32px}}.head-meta{display:flex;flex-direction:column;gap:14px;padding:22px 24px;background:var(--surface);border:1px solid var(--line);border-radius:6px}.head-meta .row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-bottom:12px;border-bottom:1px dashed var(--line)}.head-meta .row:last-child{border-bottom:0;padding-bottom:0}.head-meta .k{font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.head-meta .v{font-family:var(--font-instrument),serif;font-size:22px;line-height:1}.doc{display:grid;grid-template-columns:240px 1fr;gap:56px;padding:0 0 80px;align-items:start;position:relative}.doc-main{min-width:0}@media (max-width:1080px){.doc{grid-template-columns:1fr;gap:0}}.toc{position:sticky;top:96px;align-self:start;padding:24px 0;border-top:1px solid var(--line)}@media (max-width:1080px){.toc{position:static;border-top:0;border-bottom:1px solid var(--line);padding:24px 0;display:flex;flex-direction:column}.toc ol{display:flex!important;flex-wrap:wrap;gap:6px}.toc a{margin:0!important;border-left:0!important;border:1px solid var(--line);border-radius:999px;padding:6px 14px!important}.toc a.on{border-color:var(--accent);background:var(--accent-soft)}}.toc-h{font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin:0 0 18px}.toc ol{list-style:none;padding:0;margin:0;counter-reset:toc}.toc li{counter-increment:toc;display:block;margin-bottom:2px}.toc a{display:flex;align-items:flex-start;gap:10px;border-radius:4px;font-size:13.5px;color:var(--ink-soft);line-height:1.35;transition:all .12s;border-left:2px solid transparent;margin-left:-12px;padding:8px 10px}.toc a:before{content:counter(toc,decimal-leading-zero);font-family:var(--font-mono),monospace;font-size:10.5px;color:var(--ink-mute);flex-shrink:0;padding-top:2px}.toc a:hover{color:var(--ink);background:rgba(20,24,28,.03)}.toc a.on{color:var(--ink);border-left-color:var(--accent);background:var(--accent-soft)}.toc a.on:before{color:var(--accent-ink)}section.chap{padding:48px 0 16px;scroll-margin-top:120px}section.chap+section.chap{border-top:1px solid var(--line)}.chap-h{margin:0 0 32px}.chap-num{font-family:var(--font-mono),monospace;font-size:11px;color:var(--accent-ink);letter-spacing:.12em;background:var(--accent-soft);padding:3px 8px;border-radius:3px;display:inline-block;margin-bottom:14px}.chap-h h2{font-family:var(--font-instrument),serif;font-weight:400;font-size:clamp(34px,3.8vw,48px);line-height:1.05;letter-spacing:-.015em;margin:0 0 12px}.chap-h h2 em{font-style:italic;color:var(--accent-ink)}.chap-h .sub{font-size:16px;color:var(--ink-soft);max-width:680px;margin:0;line-height:1.55}h3.sub-h{font-family:var(--font-instrument),serif;font-weight:400;font-size:28px;line-height:1.1;margin:40px 0 16px;letter-spacing:-.01em}h4.sub-sub-h{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);margin:28px 0 10px;font-weight:600}p.body{font-size:15.5px;line-height:1.65;color:var(--ink);margin:0 0 14px;max-width:760px;text-wrap:pretty}.pt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:24px 0 8px}@media (max-width:740px){.pt-grid{grid-template-columns:1fr}}.pt-card{background:var(--surface);padding:28px;display:flex;flex-direction:column;gap:14px}.pt-card .head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pt-card .icon{width:48px;height:48px;border-radius:6px;background:var(--accent-soft);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;flex-shrink:0}.pt-card[data-kind=ev] .icon{background:oklch(95% .04 175);color:oklch(38% .08 175)}.pt-card[data-kind=phev] .icon{background:oklch(95% .04 90);color:oklch(38% .1 90)}.pt-card[data-kind=hev] .icon{background:oklch(95% .03 50);color:oklch(38% .1 50)}.pt-card[data-kind=ice] .icon{background:#f1efe7;color:#6a655a}.pt-card h4{font-family:var(--font-instrument),serif;font-weight:400;font-size:26px;line-height:1.05;margin:0 0 4px;letter-spacing:-.005em}.pt-card .badge{font-family:var(--font-mono),monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.pt-card .desc{font-size:14.5px;line-height:1.55;color:var(--ink-soft);margin:0 0 4px}.pt-card .cons,.pt-card .pros{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.pt-card .lbl{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);font-family:var(--font-mono),monospace;margin:8px 0 4px}.pt-card li{font-size:13.5px;line-height:1.5;color:var(--ink-soft);padding-left:18px;position:relative}.pt-card .pros li:before{content:"+";position:absolute;left:0;color:var(--good);font-weight:600}.pt-card .cons li:before{content:"−";position:absolute;left:0;color:var(--bad);font-weight:600}.factor-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 4px}.factor-chip{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:999px;font-size:13px;color:var(--ink-soft)}.factor-chip svg{color:var(--accent-ink)}.data-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:18px 0;font-size:14px;table-layout:fixed}.data-table thead th{text-align:left;font-weight:600;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);background:#fbfaf6;font-family:var(--font-mono),monospace}.data-table tbody td,.data-table thead th{padding:14px 18px;border-bottom:1px solid var(--line)}.data-table tbody td{color:var(--ink);vertical-align:top;line-height:1.5}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfaf6}.data-table td.num,.data-table th.num{text-align:right;font-family:var(--font-mono),monospace}.data-table td.label{font-weight:500}.badge-ok{background:var(--good-soft);color:oklch(34% .1 150)}.badge-ok,.badge-warn{font-family:var(--font-mono),monospace;font-size:11px;padding:2px 8px;border-radius:3px;letter-spacing:.04em;display:inline-block}.badge-warn{background:var(--warn-soft);color:oklch(38% .13 50)}.badge-bad{background:var(--bad-soft);color:oklch(38% .13 25);font-family:var(--font-mono),monospace;font-size:11px;padding:2px 8px;border-radius:3px;letter-spacing:.04em;display:inline-block}.cost-chart{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:24px 28px;margin:18px 0}.cost-chart .title{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px;gap:16px;flex-wrap:wrap}.cost-chart h4{font-family:var(--font-instrument),serif;font-weight:400;font-size:22px;margin:0}.cost-chart .axis{font-family:var(--font-mono),monospace;font-size:11px;color:var(--ink-mute);letter-spacing:.06em}.cost-row{display:grid;grid-template-columns:200px 1fr 100px;gap:16px;align-items:center;padding:10px 0;border-bottom:1px dashed var(--line)}.cost-row:last-child{border-bottom:0}.cost-row .lbl{font-size:13.5px;color:var(--ink)}.cost-row .lbl small{display:block;color:var(--ink-mute);font-size:11.5px;margin-top:2px}.cost-row .bar-track{height:22px;background:#f3f1ea;border-radius:3px;position:relative;overflow:hidden}.cost-row .bar{height:100%;background:linear-gradient(90deg,var(--accent) 0,oklch(60% .08 175) 100%);border-radius:3px;display:flex;align-items:center;padding-left:10px;color:#fff;font-family:var(--font-mono),monospace;font-size:11px;letter-spacing:.04em}.cost-row.hi .bar{background:linear-gradient(90deg,oklch(60% .13 25),oklch(64% .1 25))}.cost-row.lo .bar{background:linear-gradient(90deg,oklch(56% .1 150),oklch(60% .08 150))}.cost-row .val{text-align:right;font-family:var(--font-mono),monospace;font-size:13px;color:var(--ink)}@media (max-width:740px){.cost-row{grid-template-columns:1fr;gap:6px}}.callout{display:flex;gap:14px;background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:0 6px 6px 0;padding:18px 20px;margin:20px 0;font-size:14px;line-height:1.55;color:var(--ink-soft);max-width:840px}.callout.warn{border-left-color:var(--warn);background:var(--warn-soft)}.callout svg{color:var(--accent-ink);flex-shrink:0;margin-top:2px}.callout.warn svg{color:oklch(46% .13 50)}.callout strong{color:var(--ink);font-weight:600}.callout a{color:var(--accent-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:500}.checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px;list-style:none;padding:0;margin:14px 0;max-width:880px}@media (max-width:740px){.checklist{grid-template-columns:1fr}}.checklist li{font-size:14px;line-height:1.5;color:var(--ink-soft);padding-left:24px;position:relative}.checklist li:before{content:"";position:absolute;left:0;top:6px;width:14px;height:14px;border:1.5px solid var(--accent);border-radius:3px;background:var(--surface)}.checklist li:after{content:"";position:absolute;left:3px;top:9px;width:8px;height:5px;border-left:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);transform:rotate(-45deg)}.tabs{border:1px solid var(--line-strong);padding:3px;background:#fbfaf6;margin:8px 0 18px;flex-wrap:wrap}.tabs,.tabs button{display:inline-flex;border-radius:999px}.tabs button{font-size:13px;height:32px;padding:0 16px;color:var(--ink-soft);transition:all .12s;align-items:center;gap:6px}.tabs button.on{background:var(--ink);color:#fff}.tabs button .speed{font-family:var(--font-mono),monospace;font-size:10.5px;opacity:.7}.tab-pane{display:none;animation:fade .18s ease-out}.tab-pane.on{display:block}@keyframes fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.toltes-spec{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;max-width:780px;margin:0 0 14px}@media (max-width:740px){.toltes-spec{grid-template-columns:1fr}}.toltes-spec .cell{background:var(--surface);padding:18px}.toltes-spec .k{font-family:var(--font-mono),monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px}.toltes-spec .v{font-family:var(--font-instrument),serif;font-size:22px;line-height:1;color:var(--ink)}.toltes-spec .v small{font-family:var(--font-inter),sans-serif;color:var(--ink-mute);font-size:11px;margin-left:4px;letter-spacing:.06em;text-transform:uppercase}.app-grid{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px;max-width:780px}.app-badge{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 14px;background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;font-size:13px;color:var(--ink)}.app-badge svg{color:var(--accent-ink)}details.fin{background:var(--surface);border:1px solid var(--line);border-radius:6px;margin:10px 0;overflow:hidden}details.fin[open]{box-shadow:var(--shadow)}details.fin summary{cursor:pointer;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;font-family:var(--font-instrument),serif;font-size:22px;font-weight:400;line-height:1.1}details.fin summary::-webkit-details-marker{display:none}details.fin summary:after{content:"+";font-family:var(--font-mono),monospace;font-size:18px;color:var(--ink-mute);transition:transform .18s;flex-shrink:0}details.fin[open] summary:after{transform:rotate(45deg)}details.fin .body{padding:0 22px 22px}.decision-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:24px 0 8px}@media (max-width:740px){.decision-grid{grid-template-columns:1fr}}.decision-card{background:var(--surface);padding:26px;display:flex;flex-direction:column;gap:10px;min-height:160px}.decision-card .icon{width:36px;height:36px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);display:flex;align-items:center;justify-content:center;margin-bottom:6px}.decision-card h4{font-family:var(--font-instrument),serif;font-weight:400;font-size:22px;margin:0 0 4px;letter-spacing:-.005em;line-height:1.1}.decision-card h4 em{font-style:italic;color:var(--accent-ink)}.decision-card p{font-size:14px;color:var(--ink-soft);margin:0;line-height:1.55}.matrix{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;font-size:13.5px;table-layout:fixed}.matrix thead th{padding:16px;background:#fbfaf6;border-bottom:1px solid var(--line);text-align:left;vertical-align:bottom;line-height:1.2}.matrix thead th.head-cat{font-family:var(--font-instrument),serif;font-weight:400;font-size:18px;font-style:italic;color:var(--ink)}.matrix thead th.head-cat small{display:block;font-size:10.5px;margin-top:4px;font-style:normal}.matrix thead th.head-cat small,.matrix thead th.head-row{font-family:var(--font-mono),monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.matrix thead th.head-row{font-size:11px;font-weight:600}.matrix tbody td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.5}.matrix tbody tr:last-child td{border-bottom:0}.matrix tbody td.row-h{font-weight:500;color:var(--ink);background:#fbfaf6;border-right:1px solid var(--line)}.matrix tbody td .lvl{display:inline-flex;align-items:center;gap:6px}.matrix tbody td .lvl .dots{display:inline-flex;gap:2px;margin-right:6px}.matrix tbody td .lvl .dots span{width:6px;height:6px;border-radius:50%;background:var(--line-strong)}.matrix tbody td .lvl[data-lvl="3"] .dots span:nth-child(-n+3){background:var(--good)}.matrix tbody td .lvl[data-lvl="2"] .dots span:nth-child(-n+2){background:oklch(64% .1 90)}.matrix tbody td .lvl[data-lvl="1"] .dots span:nth-child(-n+1){background:var(--bad)}.related{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:18px 0}@media (max-width:740px){.related{grid-template-columns:1fr}}.related a{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:22px;display:block;transition:all .15s;position:relative}.related a:hover{border-color:var(--ink-soft);transform:translateY(-1px);box-shadow:var(--shadow)}.related .num{font-family:var(--font-mono),monospace;font-size:11px;color:var(--ink-mute);letter-spacing:.06em;margin-bottom:8px;display:block}.related h5{font-family:var(--font-instrument),serif;font-weight:400;font-size:20px;margin:0 0 8px;line-height:1.2;letter-spacing:-.005em}.related p{font-size:13.5px;color:var(--ink-soft);margin:0;line-height:1.5}.related a:after{content:"→";position:absolute;top:22px;right:22px;font-family:var(--font-mono),monospace;color:var(--ink-mute);transition:transform .15s}.related a:hover:after{transform:translateX(3px);color:var(--ink)}.disclaimer{background:#fbfaf6;border:1px solid var(--line);border-radius:6px;padding:22px 26px;margin:24px 0;display:flex;gap:14px;font-size:13.5px;color:var(--ink-soft);line-height:1.55;max-width:880px}.disclaimer svg{color:var(--ink-mute);flex-shrink:0;margin-top:2px}.disclaimer strong{color:var(--ink)}