
/* 版面：校對稿。單欄寬版面＋左側頁邊；說法用大字明體，判定是頁邊的藍鉛筆註記 */
:root{
  --paper:#f3f4f1;--sheet:#fbfbf9;--ink:#15181f;--soft:#3b404b;--muted:#6a6f78;--rule:#d8dad4;
  --pencil:#2a52c4;--pencil-soft:rgba(42,82,196,.10);
  --v-true:#2f7650;--v-part:#a6720f;--v-exag:#bf5420;--v-unver:#5d6b85;
  --f-claim:"Noto Serif TC","Songti TC","PMingLiU",serif;
  --f-body:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;
  --f-hand:"LXGW WenKai TC","Kaiti TC","DFKai-SB","BiauKai",serif;
  --f-fig:"Instrument Serif","Times New Roman",serif;
  --f-label:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;
  --paper:#111318;--sheet:#171a20;--ink:#ebece8;--soft:#c3c6cc;--muted:#8e939c;--rule:#2b2f37;
  --pencil:#8eaaf5;--pencil-soft:rgba(142,170,245,.12);
  --v-true:#76c596;--v-part:#e2ad52;--v-exag:#f0945f;--v-unver:#a5b2c9}}
:root[data-theme="dark"]{color-scheme:dark;
  --paper:#111318;--sheet:#171a20;--ink:#ebece8;--soft:#c3c6cc;--muted:#8e939c;--rule:#2b2f37;
  --pencil:#8eaaf5;--pencil-soft:rgba(142,170,245,.12);
  --v-true:#76c596;--v-part:#e2ad52;--v-exag:#f0945f;--v-unver:#a5b2c9}
*{box-sizing:border-box}
html{background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:16.5px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--pencil);outline-offset:3px;border-radius:2px}
.wrap{max-width:1080px;margin:0 auto;padding-inline:24px}
.label{font-family:var(--f-label);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
/* 刊頭 */
.mast{display:flex;flex-wrap:wrap;gap:10px 28px;align-items:baseline;justify-content:space-between;padding-block:22px 18px}
.mast .name{font-family:var(--f-claim);font-weight:900;font-size:18px;letter-spacing:.12em;text-decoration:none}
.mast nav{display:flex;gap:22px;font-size:14px}
.mast nav a{text-decoration:none;color:var(--muted);background:linear-gradient(var(--pencil),var(--pencil)) left bottom/0 1.5px no-repeat;transition:background-size .2s,color .2s;padding-bottom:2px}
.mast nav a:hover{color:var(--ink);background-size:100% 1.5px}
/* 首頁開場 */
.hero{padding-block:56px 40px;display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.hero h1{font-family:var(--f-claim);font-weight:900;font-size:clamp(38px,7vw,82px);line-height:1.12;letter-spacing:.01em;margin:0;text-wrap:balance}
.ring{position:relative;display:inline-block;white-space:nowrap}
.ring svg{position:absolute;left:-12%;top:-14%;width:124%;height:128%;overflow:visible;pointer-events:none;color:var(--pencil)}
.ring svg path{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;vector-effect:non-scaling-stroke}
.hero .dek{max-width:40ch;font-size:18px;color:var(--soft);margin:0}
.hero .aside{font-family:var(--f-hand);color:var(--pencil);font-size:17px;margin:0}
.figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);margin-top:18px}
.figures div{padding:16px 18px 6px 0}
.figures div+div{padding-left:18px;border-left:1px solid var(--rule)}
.figures b{display:block;font-family:var(--f-fig);font-weight:400;font-size:clamp(48px,7vw,76px);line-height:1;font-variant-numeric:lining-nums tabular-nums}
.figures span{display:block;font-size:13.5px;color:var(--muted);margin-top:8px;line-height:1.5}
/* 版面區塊 */
main.wrap{padding-block:8px 80px;display:flex;flex-direction:column;gap:72px}
.sec-head{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:baseline;margin-bottom:8px}
.sec-head h2{font-family:var(--f-claim);font-weight:900;font-size:26px;margin:0;letter-spacing:.02em}
.sec-head p{margin:4px 0 0;color:var(--muted);font-size:14px}
/* 頁邊註記 */
.mark{display:flex;flex-direction:column;align-items:flex-start;gap:2px;color:var(--pencil)}
.mark svg{width:40px;height:40px;overflow:visible}
.mark svg .loop{fill:none;stroke:currentColor;stroke-width:1.6;opacity:.55}
.mark svg path{fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
.mark .w{font-family:var(--f-hand);font-size:19px;line-height:1.2;color:var(--vc)}
.mark.true{--vc:var(--v-true)}.mark.part{--vc:var(--v-part)}.mark.exag{--vc:var(--v-exag)}.mark.unver{--vc:var(--v-unver)}
.mark svg{color:var(--vc)}
/* 說法條目 */
.tools{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;margin-bottom:6px}
.tools .row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.tools input,.tools select{font:inherit;font-size:14.5px;border:0;border-bottom:1.5px solid var(--rule);background:transparent;color:var(--ink);padding:8px 2px;border-radius:0}
.tools input{flex:1 1 240px;min-width:0}
.tools input:focus,.tools select:focus{border-bottom-color:var(--pencil);outline:none}
.entries{display:flex;flex-direction:column}
.entry{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:28px;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.entry:last-child{border-bottom:1px solid var(--rule)}
.entry h3{font-family:var(--f-claim);font-weight:700;font-size:clamp(20px,2.4vw,25px);line-height:1.5;margin:0;text-wrap:pretty;
  background:linear-gradient(var(--pencil-soft),var(--pencil-soft)) left 88%/0 .45em no-repeat;transition:background-size .3s}
.entry:hover h3{background-size:100% .45em}
.entry p{margin:8px 0 0;color:var(--soft);max-width:62ch}
.entry .by{margin-top:10px;font-size:13px;color:var(--muted)}
.entry .by .label{margin-left:10px}
.empty{padding:28px 0;color:var(--muted);border-top:1px solid var(--rule)}
/* 公司紀錄條 */
.ledger{display:flex;flex-direction:column}
.co{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:24px;align-items:center;padding-block:16px;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.co:last-child{border-bottom:1px solid var(--rule)}
.co strong{font-family:var(--f-claim);font-size:19px}
.co .dots{display:flex;flex-wrap:wrap;gap:6px}
.co .dots i{width:14px;height:14px;border-radius:50%;background:var(--dc)}
.co .dots i.unver{background:transparent;border:1.6px solid var(--v-unver)}
.co .meta{font-size:13px;color:var(--muted);text-align:right;line-height:1.5}
.co .meta b{font-family:var(--f-fig);font-size:22px;font-weight:400;color:var(--ink)}
a.co:hover strong{color:var(--pencil)}
.key{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--muted);margin-top:14px}
.key span{display:inline-flex;align-items:center;gap:7px}
.key i{width:11px;height:11px;border-radius:50%;background:var(--dc)}
.key i.unver{background:transparent;border:1.5px solid var(--v-unver)}
.true{--dc:var(--v-true)}.part{--dc:var(--v-part)}.exag{--dc:var(--v-exag)}.unver{--dc:var(--v-unver)}
/* 查證頁 */
.crumbs{font-size:13px;color:var(--muted);padding-top:24px}
.crumbs a{color:var(--muted)}
.claim-head{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:28px 36px}
.claim-head h1{font-family:var(--f-claim);font-weight:900;font-size:clamp(30px,4.6vw,52px);line-height:1.32;margin:6px 0 0;text-wrap:balance}
.claim-head .said{font-size:15px;color:var(--soft);margin-top:18px}
.claim-head .said a{color:var(--pencil)}
.ruling{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:32px;border-top:1.5px solid var(--ink);border-bottom:1px solid var(--rule)}
.ruling .mark svg{width:64px;height:64px}
.ruling .mark .w{font-size:28px}
.ruling .sowhat{font-family:var(--f-claim);font-weight:700;font-size:clamp(20px,2.6vw,27px);line-height:1.55;margin:0;max-width:34ch;text-wrap:pretty}
.scale{display:flex;flex-wrap:wrap;gap:4px 26px;margin-top:22px;font-size:14.5px;color:var(--muted)}
.scale span{position:relative;padding:4px 2px}
.scale span.on{color:var(--vc);font-weight:700}
.scale span.on::after{content:"";position:absolute;inset:-4px -12px;border:1.6px solid var(--pencil);border-radius:50%;transform:rotate(-4deg)}
.scale span.true{--vc:var(--v-true)}.scale span.part{--vc:var(--v-part)}.scale span.exag{--vc:var(--v-exag)}.scale span.unver{--vc:var(--v-unver)}
.body{display:grid;grid-template-columns:150px minmax(0,1fr) 260px;gap:24px 40px;padding-top:40px}
.body .col{display:flex;flex-direction:column;gap:40px;min-width:0}
.body h2{font-family:var(--f-claim);font-size:20px;margin:0 0 10px}
.body .prose p{margin:0 0 12px;max-width:62ch}
.body .prose .fine{font-size:14px;color:var(--muted)}
.srcs{list-style:none;margin:0;padding:0;counter-reset:s}
.srcs li{counter-increment:s;display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding-block:10px;border-top:1px solid var(--rule)}
.srcs li::before{content:counter(s,decimal-leading-zero);font-family:var(--f-label);font-size:12px;color:var(--muted);padding-top:3px}
.srcs a{text-decoration:none}
.srcs a b{display:block;font-weight:500}
.srcs a span{display:block;font-size:12.5px;color:var(--muted);word-break:break-all;line-height:1.5}
.srcs a:hover b{color:var(--pencil)}
aside{display:flex;flex-direction:column;gap:28px;font-size:14.5px}
aside .blk{display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--ink)}
aside .ep{text-decoration:none;display:flex;flex-direction:column;gap:2px}
aside .ep b{font-family:var(--f-fig);font-size:30px;font-weight:400;line-height:1}
aside .ep span{color:var(--soft);line-height:1.55}
aside a.ep:hover span{color:var(--pencil)}
dl.kv{display:grid;grid-template-columns:max-content 1fr;gap:2px 14px;margin:0}
dl.kv dt{color:var(--muted)}dl.kv dd{margin:0}
.copy{font:inherit;font-size:14px;border:0;background:none;color:var(--pencil);padding:0;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:4px}
.mini{display:flex;flex-wrap:wrap;gap:5px}
.mini i{width:11px;height:11px;border-radius:50%;background:var(--dc)}
.mini i.unver{background:transparent;border:1.5px solid var(--v-unver)}
.more{padding-top:24px}
/* 方法頁 */
.method{display:flex;flex-direction:column}
.method .m{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding-block:22px;border-top:1px solid var(--rule)}
.method .m p{margin:0;font-size:17px;max-width:52ch;color:var(--soft)}
footer{border-top:1px solid var(--ink)}
footer .wrap{padding-block:22px 40px;display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;font-size:13.5px;color:var(--muted)}
footer a{color:var(--ink)}
@media (max-width:860px){.body{grid-template-columns:minmax(0,1fr)}.body>.gutter{display:none}}
@media (max-width:640px){
  .sec-head,.tools,.entry,.claim-head,.ruling,.co,.method .m,footer .wrap{grid-template-columns:minmax(0,1fr);gap:10px}
  .entry .mark,.claim-head .mark{flex-direction:row;align-items:center;gap:8px}
  .entry .mark svg{width:30px;height:30px}
  .co .meta{text-align:left}
  .figures{grid-template-columns:1fr}.figures div+div{padding-left:0;border-left:0;border-top:1px solid var(--rule)}
  .sec-head>span:empty,.tools>span:empty{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* 週報訂閱 */
.sub{max-width:620px;padding-block:48px 64px}
.sub h1{font-family:var(--f-claim);font-weight:900;font-size:clamp(32px,5.5vw,52px);line-height:1.2;margin:10px 0 14px}
.sub .dek{color:var(--soft);font-size:18px;margin:0 0 26px}
.sub ul{margin:0 0 28px;padding-left:1.2em;color:var(--soft)}
.sub form{display:grid;gap:14px;background:var(--sheet);border:1px solid var(--rule);border-radius:10px;padding:22px}
.sub input[type=email]{font:inherit;font-size:17px;padding:12px 14px;border:1px solid var(--rule);border-radius:8px;background:var(--paper);color:var(--ink);width:100%}
.sub label.ok{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--soft);line-height:1.6}
.sub label.ok input{margin-top:5px}
.sub .gift-note{background:var(--sheet);border-left:4px solid var(--pencil);border-radius:6px;padding:14px 16px;margin:0 0 26px;font-size:16px;line-height:1.7}
.sub button{font:inherit;font-weight:700;font-size:16px;padding:12px 18px;border:0;border-radius:8px;background:var(--pencil);color:#fff;cursor:pointer}
.sub button:disabled{opacity:.6;cursor:default}
.sub .msg{min-height:1.6em;font-size:15px}
.sub .msg.good{color:var(--v-true)}.sub .msg.bad{color:var(--v-exag)}
.sub .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sub .fine{font-size:13px;color:var(--muted);margin-top:18px}

:root,:root[data-theme="dark"]{color-scheme:light;
  --paper:#ece6da;--sheet:#f7f3ea;--ink:#1e1b17;--soft:#463f36;--muted:#6b6458;--rule:#d5ccbb;
  --pencil:#2456a6;--pencil-soft:rgba(36,86,166,.10);--xy:#c4302b;--ak:#2456a6;--amber:#c87a12;
  --v-true:#2f7650;--v-part:#9a6a0e;--v-exag:#b4501f;--v-unver:#55627a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:light;
  --paper:#ece6da;--sheet:#f7f3ea;--ink:#1e1b17;--soft:#463f36;--muted:#6b6458;--rule:#d5ccbb;
  --pencil:#2456a6;--pencil-soft:rgba(36,86,166,.10);
  --v-true:#2f7650;--v-part:#9a6a0e;--v-exag:#b4501f;--v-unver:#55627a}}
body{background-image:radial-gradient(rgba(30,27,23,.07) 1px,transparent 1px);background-size:22px 22px}
.mast .name{color:var(--ink)}

/* 首頁(頻道總入口) */
.kicker{font-family:var(--f-label);font-size:12px;letter-spacing:.12em;color:var(--muted)}
.hhero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:36px 0}
.stage{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:6px;position:relative}
.stage::after{content:"";position:absolute;left:4%;right:4%;bottom:-6px;height:14px;border-radius:50%;background:rgba(30,27,23,.12);filter:blur(4px);z-index:-1}
.who{display:flex;flex-direction:column;align-items:center}
.who img{width:100%;max-width:250px;height:auto}
.bub{position:relative;background:#fff;border:2.5px solid var(--ink);border-radius:18px;padding:12px 16px 12px;margin:0 0 14px;font-size:16px;line-height:1.6;font-weight:700;box-shadow:0 4px 0 rgba(30,27,23,.15)}
.bub b{display:inline-block;color:#fff;font-size:13px;padding:1px 10px;border-radius:99px;margin:0 8px 4px 0}
.xy .bub b{background:var(--xy)}.ak .bub b{background:var(--ak)}
.bub::after{content:"";position:absolute;bottom:-11px;left:50%;width:18px;height:18px;background:#fff;border-right:2.5px solid var(--ink);border-bottom:2.5px solid var(--ink);transform:translateX(-50%) rotate(45deg)}
.ak .bub{margin-bottom:22px}
.pitch h1{font-family:var(--f-claim);font-weight:900;font-size:clamp(42px,6.5vw,72px);line-height:1.1;margin:8px 0 12px}
.pitch .dek{font-size:18px;color:var(--soft);margin:0 0 22px;max-width:30ch}
.hsub{background:var(--ink);color:#fff;border-radius:18px;padding:22px 22px 18px;box-shadow:0 8px 0 rgba(30,27,23,.15)}
.hsub .gift{margin:0 0 14px;font-size:15.5px;line-height:1.7;color:#e9e2d4}
.hsub .gift b{color:#fff;font-size:17px}
.hsub form{display:grid;gap:12px}
.hsub input[type=email]{font:inherit;font-size:17px;padding:12px 14px;border:0;border-radius:10px;background:#fff;color:var(--ink);width:100%}
.hsub label.ok{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:#cfc6b6;line-height:1.6}
.hsub label.ok input{margin-top:5px}
.hsub button{font:inherit;font-weight:900;font-size:17px;padding:13px 18px;border:0;border-radius:10px;background:#f2b84b;color:var(--ink);cursor:pointer}
.hsub button:hover{filter:brightness(1.06)}
.hsub button:disabled{opacity:.6;cursor:wait}
.hsub .hp{position:absolute;left:-9999px}
.hsub .msg{font-size:14.5px;min-height:1.2em}.hsub .msg.good{color:#9be3b4}.hsub .msg.bad{color:#ffb4a6}
.pitch .alt{margin:14px 0 0;font-size:15px;color:var(--muted)}
.pitch .alt a{color:var(--ak);font-weight:700;text-decoration:none}
.row-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.row-head h2,.card h2{font-family:var(--f-claim);font-weight:900;font-size:26px;margin:0;line-height:1.35}
.row-head a,.more-link a{color:var(--ak);font-weight:700;text-decoration:none;font-size:15px}
.more-link{margin:16px 0 0}
.epgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.epc{display:flex;flex-direction:column;gap:8px;text-decoration:none;background:var(--sheet);border:1.5px solid var(--rule);border-radius:14px;padding:10px 10px 14px;transition:transform .15s,box-shadow .15s}
.epc:hover{transform:translateY(-3px);box-shadow:0 6px 0 rgba(30,27,23,.12)}
.epc img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:9px}
.epc .meta{font-family:var(--f-label);font-size:11.5px;color:var(--muted);letter-spacing:.06em;padding-inline:4px}
.epc b{font-size:15px;line-height:1.55;padding-inline:4px}
.duo-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}
.card{background:var(--sheet);border:1.5px solid var(--rule);border-radius:18px;padding:24px}
.card-head{margin-bottom:18px}.card-head h2{margin-top:6px}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:20px}
.stats div{background:var(--paper);border-radius:12px;padding:12px}
.stats b{display:block;font-size:17px;line-height:1.3}
.stats span{display:block;font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:4px}
.bars{display:flex;flex-direction:column;gap:10px}
.bar{display:grid;grid-template-columns:minmax(0,8.5em) minmax(0,1fr) auto;gap:12px;align-items:center;font-size:14px}
.bar .bn{font-weight:700;line-height:1.35}
.bar .bt{height:14px;background:var(--paper);border-radius:4px;overflow:hidden}
.bar .bf{display:block;height:100%;background:var(--ak);border-radius:0 4px 4px 0}
.bar .bv{text-align:right;white-space:nowrap}.bar .bv b{font-variant-numeric:tabular-nums}
.bar .bv small{display:block;font-size:11.5px;color:var(--muted)}
.claims{display:flex;flex-direction:column;gap:10px}
.cc{display:flex;flex-direction:column;gap:6px;text-decoration:none;background:var(--paper);border-radius:12px;padding:14px 16px}
.cc:hover b{color:var(--ak)}
.cc .v{align-self:flex-start;font-size:12.5px;font-weight:700;color:#fff;padding:1px 10px;border-radius:99px}
.cc .v.true{background:var(--v-true)}.cc .v.part{background:var(--v-part)}.cc .v.exag{background:var(--v-exag)}.cc .v.unver{background:var(--v-unver)}
.cc b{font-size:15px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cc small{font-size:12.5px;color:var(--muted)}
/* 實測排行頁的表格 */
.tbl{overflow-x:auto;border:1.5px solid var(--rule);border-radius:14px;background:var(--sheet)}
table.bench{border-collapse:collapse;width:100%;font-size:14.5px;min-width:520px}
table.bench th,table.bench td{padding:12px 14px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
table.bench thead th{font-family:var(--f-label);font-size:11.5px;letter-spacing:.08em;color:var(--muted);font-weight:500}
table.bench tbody tr:last-child th,table.bench tbody tr:last-child td{border-bottom:0}
table.bench .num{font-variant-numeric:tabular-nums;white-space:nowrap}
table.bench .ok{color:var(--v-true);font-weight:700}
table.bench .ng{color:var(--v-exag)}
table.bench .na{color:var(--muted)}
@media (max-width:860px){.hhero{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:16px}
  .stage{max-width:520px;margin-inline:auto;width:100%}.bub{font-size:14px;padding:10px 12px}
  .duo-grid{grid-template-columns:minmax(0,1fr)}.stats{grid-template-columns:minmax(0,1fr)}}

/* 新聞重點文章 */
.kicker{font-family:var(--f-label);font-size:12px;letter-spacing:.12em;color:var(--muted)}
.art{max-width:720px;display:flex;flex-direction:column;gap:30px}
.art h1{font-family:var(--f-claim);font-weight:900;font-size:clamp(30px,5vw,46px);line-height:1.25;margin:8px 0 0;text-wrap:balance}
.art h2{font-family:var(--f-claim);font-weight:900;font-size:24px;margin:0 0 10px}
.art h3{font-size:17px;margin:18px 0 4px}
.art p,.art li{font-size:17px;line-height:1.85}
.art ul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:6px}
.art .answer{background:var(--ink);color:#f4efe5;border-radius:16px;padding:20px 22px}
.art .answer .kicker{color:#f2b84b}
.art .answer p{margin:6px 0 0;font-size:18px;line-height:1.8}
.art ul.todo{list-style:none;padding:0}
.art ul.todo li{position:relative;padding-left:30px}
.art ul.todo li::before{content:"✓";position:absolute;left:0;top:0;color:var(--v-true);font-weight:900}
.art ul.checks{list-style:none;padding:0;gap:10px}
.art ul.checks a{display:flex;gap:12px;align-items:flex-start;text-decoration:none;background:var(--sheet);border:1.5px solid var(--rule);border-radius:12px;padding:12px 14px}
.art ul.checks small{display:block;color:var(--muted);font-size:13px}
.art .v,.cc .v{flex:none;font-size:12.5px;font-weight:700;color:#fff;padding:1px 10px;border-radius:99px;line-height:1.8}
.art .v.true{background:var(--v-true)}.art .v.part{background:var(--v-part)}.art .v.exag{background:var(--v-exag)}.art .v.unver{background:var(--v-unver)}
.yt{position:relative;aspect-ratio:16/9;max-width:100%;border-radius:14px;overflow:hidden;background:#000}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.art-sub{background:var(--sheet);border:1.5px solid var(--rule);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.art-sub b{font-size:18px}.art-sub p{margin:0;font-size:15.5px;color:var(--soft)}
.art .fine{font-size:13.5px;color:var(--muted)}
.art ul.rel{list-style:none;padding:0}
.art ul.rel li{display:flex;flex-direction:column;border-top:1px solid var(--rule);padding-top:8px}
.art ul.rel a{color:var(--ink);font-weight:700;text-decoration:none}.art ul.rel small{color:var(--muted)}
.alist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.ai{display:flex;flex-direction:column;gap:6px;text-decoration:none;background:var(--sheet);border:1.5px solid var(--rule);border-radius:14px;padding:18px}
.ai b{font-size:18px;line-height:1.5}.ai:hover b{color:var(--ak)}
.ai p{margin:0;font-size:14.5px;color:var(--soft);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.news{display:flex;flex-direction:column;gap:10px}
.about h2{font-family:var(--f-claim);font-size:22px;margin:22px 0 6px}

.pitch .dek b{color:var(--ink)}
.pitch .lead{font-family:var(--f-claim);font-weight:900;font-size:clamp(22px,2.6vw,28px);line-height:1.4;margin:0 0 8px;color:var(--xy)}
.proof{list-style:none;display:flex;flex-wrap:wrap;gap:8px 22px;padding:0;margin:0 0 20px}
.proof li{display:flex;align-items:baseline;gap:6px;font-size:14.5px;color:var(--muted)}
.proof b{font-family:var(--f-claim);font-size:28px;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.row-dek{margin:-6px 0 16px;color:var(--soft);font-size:15.5px}
.tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.task{display:flex;flex-direction:column;gap:6px;text-decoration:none;background:var(--sheet);border:1.5px solid var(--rule);border-radius:14px;padding:16px;transition:transform .15s,box-shadow .15s}
.task:hover{transform:translateY(-3px);box-shadow:0 6px 0 rgba(30,27,23,.12)}
.task b{font-size:17px}.task p{margin:0;font-size:14px;line-height:1.65;color:var(--soft)}
.task small{margin-top:auto;padding-top:6px;font-size:12.5px;color:var(--ak);font-weight:700;line-height:1.5}
.hfaq{max-width:760px}
.hfaq h2{font-family:var(--f-claim);font-weight:900;font-size:26px;margin:0 0 12px}
.hfaq details{border-top:1.5px solid var(--rule);padding:14px 2px}
.hfaq details:last-child{border-bottom:1.5px solid var(--rule)}
.hfaq summary{cursor:pointer;font-weight:700;font-size:17px}
.hfaq details p{margin:8px 0 0;color:var(--soft);line-height:1.8}
.tsec{scroll-margin-top:20px}
.tres{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.tres li{display:flex;flex-wrap:wrap;gap:4px 14px;background:var(--sheet);border:1.5px solid var(--rule);border-radius:10px;padding:10px 14px}
.tres .ok{color:var(--v-true);font-weight:700}.tres .ng{color:var(--v-exag)}.tres .na{color:var(--muted)}
@media (prefers-reduced-motion:reduce){.task,.epc{transition:none}}
