:root{color-scheme:light;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}html{scroll-padding-top:env(safe-area-inset-top,0px)}body{margin:0;padding:0;font:14px -apple-system,BlinkMacSystemFont,sans-serif;background:#fff;color:#000}img{max-width:100%}[hidden]:not([hidden=until-found i]){display:none!important}

/* Layout: morning-brief front page — hero headline with publish timeline, close table beside local read-through, supply-chain lookup, then plans with local payments */
:root{
  --bg:#f5f6f8; --surface:#ffffff; --sunk:#eef0f4; --ink:#121a2a; --fg:#2b3446; --muted:#5b6578; --line:#dde1e8;
  --accent:#b5652b; --accent-ink:#ffffff; --accent-soft:#f6e9de;
  --up:#cf2f2a; --down:#11834a;
  --chan:#06C755; --chan-ink:#062b14;
  --f-display:"Archivo","Noto Sans TC",system-ui,sans-serif;
  --f-body:"Noto Sans TC","Noto Sans TC",system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --r:8px; --base:15px; --pad:20px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0d121b; --surface:#151c28; --sunk:#111823; --ink:#eef1f6; --fg:#cdd4df; --muted:#97a1b2; --line:#263043;
  --accent:#e08a4e; --accent-ink:#1a0f06; --accent-soft:#3a2617; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0d121b; --surface:#151c28; --sunk:#111823; --ink:#eef1f6; --fg:#cdd4df; --muted:#97a1b2; --line:#263043;
  --accent:#e08a4e; --accent-ink:#1a0f06; --accent-soft:#3a2617; color-scheme:dark}
:root{--up:#cf2f2a;--down:#11834a}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--up:#ff6f66;--down:#3fcf86}}
:root[data-theme="dark"]{--up:#ff6f66;--down:#3fcf86}
/* ===== 9o’clock 品牌標準色（品牌標準手冊 第 1 版）===== */
:root{--o50:#FFEDD9;--o100:#FFD9B3;--o200:#FFC080;--o300:#FFA34D;--o500:#FF8000;--o600:#CC6600;--o700:#994D00;--o800:#663300;--o900:#331A00;
  --bg:#FFF6EC;--surface:#FFFFFF;--sunk:#F6EFE7;--ink:#331A00;--fg:#3D2410;--muted:#994D00;--line:#F0DCC6;
  --accent:#CC6600;--accent-ink:#FFFFFF;--accent-soft:#FFEDD9;
  --f-display:"Poppins","Noto Sans TC",system-ui,sans-serif}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#331A00;--surface:#40230A;--sunk:#2A1500;--ink:#FFEDD9;--fg:#FFD9B3;--muted:#FFC080;--line:#5C3713;
  --accent:#FFA34D;--accent-ink:#331A00;--accent-soft:#4D2B0B;--wire:#7A4A1A;--wire2:0}}
:root[data-theme="dark"]{
  --bg:#331A00;--surface:#40230A;--sunk:#2A1500;--ink:#FFEDD9;--fg:#FFD9B3;--muted:#FFC080;--line:#5C3713;
  --accent:#FFA34D;--accent-ink:#331A00;--accent-soft:#4D2B0B;--wire:#7A4A1A;--wire2:0}
html:root{--hl:#FF8000;--hl-soft:#FFEDD9;--hl-ink:#331A00}
@media (prefers-color-scheme: dark){html:root:not([data-theme="light"]){--hl:#FF8000;--hl-soft:#5C3713;--hl-ink:#331A00}}
html:root[data-theme="dark"]{--hl:#FF8000;--hl-soft:#5C3713;--hl-ink:#331A00}
.ft{--wire:#D9B48C}
body .ribbon{background:var(--o900);color:var(--o100)}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) body .ribbon{background:#1F0F00}}
:root[data-theme="dark"] body .ribbon{background:#1F0F00}
.logo .lg2{display:flex;align-items:center;gap:8px}
.logo .lg2>svg{height:50px;width:auto;flex:none}
.logo .lg2 .wm{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left}
.logo .lg2 .wm svg{height:24px;width:auto;display:block}
.logo .lg2 small{font-family:"Noto Sans TC",sans-serif!important;font-weight:700;font-size:10.5px;letter-spacing:.18em;color:var(--o700);line-height:1;padding-left:2px}
.logo .blg.dk .lg2 small{color:var(--o200)}
@media (max-width:600px){.logo .lg2>svg{height:40px}.logo .lg2 .wm svg{height:19px}.logo .lg2 small{font-size:9px}}
#fBrand.flogo{display:block;margin-bottom:4px}
#fBrand.flogo .lg2>svg{height:42px}#fBrand.flogo .lg2 .wm svg{height:20px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .ft{--wire:#7A4A1A}}
:root[data-theme="dark"] .ft{--wire:#7A4A1A}
.logo .blg.dk{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo .blg.lt{display:none}:root:not([data-theme="light"]) .logo .blg.dk{display:block}}
:root[data-theme="dark"] .logo .blg.lt{display:none} :root[data-theme="dark"] .logo .blg.dk{display:block}
.btn.accent{background:var(--accent);color:var(--accent-ink)}
/* 盤前看板指數卡：細框、小字 */
#idx .ix{background:var(--surface);border:1px solid var(--line);padding:7px 10px 8px;gap:1px;border-radius:6px}
#idx .ixn{font-size:12px;font-weight:500;flex-direction:row;align-items:baseline;gap:6px;flex-wrap:wrap}
#idx .ixn small{font-size:10.5px}
#idx .ix b.num{font-size:15px;font-weight:400;letter-spacing:-.01em}
#idx .ix .chg{font-size:11.5px;font-weight:500}
#idx.idx{gap:6px}
body .ctas .btn{min-height:36px;padding:7px 14px;font-size:13px;font-weight:500}
@media (max-width:640px){body .hero .ctas{flex-wrap:nowrap}body .hero .ctas .btn{flex:1 1 0;padding:7px 8px;white-space:nowrap}}
/* 手機版：全站字級縮小、字重變細 */
@media (max-width:640px){
 body{font-size:14px;line-height:1.65}
 body h1,body h2,body h3,body h4{font-weight:500;letter-spacing:0}
 body .ribbon{font-size:11px}
 body .hero h1{font-size:19px;line-height:1.45;font-weight:500}
 body .tl .st.pub span{font-weight:500}
 body .tl .st,body .cal li{font-size:13.5px;padding:7px 0}
 body .tl .st b,body .cal li b{font-size:13.5px;font-weight:400}
 body .nltag{font-weight:500;font-size:10.5px}
 body .nlb{font-weight:500}
 body .hero h1 b.chg{font-weight:500}
 body h2{font-size:17px}
 body h3{font-size:15px}
 body .note,body p.note{font-size:12px}
 body nav.links a{font-size:13px;padding:6px 5px;font-weight:400}
 body nav.links{gap:0;margin-left:-5px;flex-wrap:nowrap}
 body .nlname{font-size:21px;font-weight:500}
 body .nlkind{font-size:11px;font-weight:600}
 body .nltldr,body .nltldr li{font-size:14px}
 body .nlt{font-size:14px;font-weight:500}
 body .chip{font-size:12px}
 body .chip b,body button.chip.fc .fn{font-weight:500}
 body button.chip.hub b{font-size:19px;font-weight:500}
 body table{font-size:13px}
 body td.tk,body .tk{font-weight:500}
 body .chg{font-weight:400}
 body .sw-h h3{font-size:18px;font-weight:500}
 body .sw-tabs button{font-size:13px}
 body .kv dt{font-size:12px} body .kv dd{font-size:13.5px}
 body .bbc .s{font-size:18px}
 body .ranks b{font-size:16px}
 body .plan .p{font-size:22px}
 body .nlpt{font-size:17px;font-weight:500}
 body .nlpbox p{font-size:14px}
 body .lg-b h1{font-size:21px} body .lg-b .lead-p{font-size:14.5px}
 body .btn{font-weight:500}
 body b,body strong{font-weight:500}
 body .ln-grid{gap:6px}
 body .ln-it{padding:8px 12px;border-radius:6px}
 body .ln-it summary{gap:1px}
 body .ln-it summary b{font-size:13.5px;font-weight:500}
 body .ln-it summary span{font-size:11.5px;line-height:1.5}
 body .ln-it p{font-size:13px;line-height:1.7;margin:6px 0 4px}
 body .ln-it small{font-size:11px}
 body .ln-sec h3{font-size:14.5px;margin:6px 0 6px}
 body .ln-cats button{font-size:12px;padding:4px 10px}
 body #lnQ{font-size:13px;padding:7px 12px}
 body #learn{gap:10px}
 body #fLinks{gap:4px 12px}
 body #fLinks a{font-size:12px}
 body #fDisc,body #fCopy{font-size:11.5px}
 body #fAbout{font-size:12px}

}
/* 全站字體：全宋體（思源宋體＋Source Serif 數字） */
:root{--f-display:"Noto Serif TC",serif;--f-body:"Noto Serif TC",serif;--f-mono:"Source Serif 4","Noto Serif TC",serif}
body,body.zh,body .btn,body.zh .btn,button,input,select{font-family:"Noto Serif TC","Songti TC","PMingLiU",serif!important}
h1,h2,h3,h4,.nlname,.nlpt,.sw-h h3,.eyebrow{font-family:"Noto Serif TC","Songti TC",serif!important}
.num,.chg,.tk,.c,.mt,.ml,.nlb,.ix b.num,td.n,.bbc .s,.ranks b,.plan .p,.tl .st b,.cal li b,.nldate{font-family:"Source Serif 4","Noto Serif TC",serif!important;font-variant-numeric:tabular-nums lining-nums;letter-spacing:0}
/* 小學堂：精簡版（電腦與手機一致） */
body .ln-grid{gap:6px}
body .ln-it{padding:8px 12px;border-radius:6px}
body .ln-it summary{gap:1px}
body .ln-it summary b{font-size:13.5px;font-weight:500}
body .ln-it summary span{font-size:11.5px;line-height:1.5}
body .ln-it p{font-size:13px;line-height:1.7;margin:6px 0 4px}
body .ln-it small{font-size:11px}
body .ln-sec h3{font-size:14.5px;margin:6px 0 6px}
body .ln-cats button{font-size:12px;padding:4px 10px}
body #lnQ{font-size:13px;padding:7px 12px}
body #learn{gap:10px}
/* 分類標籤配色 */
.segtag{display:inline-block;font-size:12px;font-weight:600;padding:1px 9px;border-radius:999px;background:var(--o100);color:var(--o800)}
.segtag.s-mem{background:var(--o50);color:var(--o700)}
.segtag.s-server{background:var(--o200);color:var(--o900)}
.segtag.s-power{background:var(--o700);color:#fff}
.segtag.s-cloud{background:var(--o900);color:var(--o200)}
:root{--chan:#06C755;--chan-ink:#04220f;--r:6px;--base:15px;--pad:18px;--h1:32px;--cell:8px}
#pbox,#payPanel{display:none!important}
#fAbout{white-space:pre-line}
.payrow{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:820px;align-items:start}
@media (max-width:900px){.payrow{grid-template-columns:minmax(0,1fr)}}
.payrow .side{display:contents}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:var(--base);line-height:1.6}
body.zh{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--hdr-bg,var(--surface))}
h1,h2,h3{color:var(--ink);margin:0;line-height:1.25;text-wrap:balance}
h2{font-size:1.35em}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.num{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.ribbon{background:var(--ink);color:var(--bg);font-size:12.5px}
.ribbon .wrap{padding-block:6px;display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between}
.ribbon b{font-family:var(--f-mono);font-weight:500;letter-spacing:.06em}

header.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--hdr-bg,var(--surface));border-bottom:1px solid var(--hdr-line,var(--line));color:var(--hdr-fg,var(--fg))}
header.nav .wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-block:10px}
.logo{display:flex;align-items:center;gap:10px;color:var(--hdr-ink,var(--ink));text-decoration:none;font-weight:700;font-size:18px}
.logo svg{flex:none}
.logo small{display:block;font-family:var(--f-mono);font-size:10.5px;font-weight:400;letter-spacing:.06em;color:var(--hdr-muted,var(--muted));line-height:1}
nav.links{display:flex;gap:2px;flex:1;flex-wrap:wrap}
nav.links a{color:var(--hdr-fg,var(--fg));text-decoration:none;padding:8px 10px;border-radius:6px;font-weight:500;font-size:14px}
nav.links a:hover{background:var(--hdr-hover,var(--sunk))}
.navr{display:flex;gap:8px;align-items:center}
.lang{display:inline-flex;border:1px solid var(--hdr-line,var(--line));border-radius:999px;overflow:hidden}
.lang button{border:0;background:transparent;color:var(--hdr-muted,var(--muted));font:500 13px var(--f-body);padding:7px 12px;cursor:pointer;min-height:36px}
body.zh .lang button{font-family:"Noto Sans TC",system-ui,sans-serif}
.lang button[aria-pressed="true"]{background:var(--hdr-ink,var(--ink));color:var(--hdr-bg,var(--surface))}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--r);padding:10px 16px;font:600 14px var(--f-body);cursor:pointer;min-height:44px;text-decoration:none}
body.zh .btn{font-family:"Noto Sans TC",system-ui,sans-serif}
.btn.accent{background:var(--accent);color:var(--accent-ink)}
.btn.chan{background:var(--chan);color:var(--chan-ink)}
.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink)}
.btn:hover{filter:brightness(1.05)}

main{padding-block:28px 56px;display:flex;flex-direction:column;gap:36px}
section{display:flex;flex-direction:column;gap:14px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.pad{padding:var(--pad)}
.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.note{color:var(--muted);font-size:13px;margin:0}

.hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;align-items:stretch}
.hero h1{font-size:clamp(24px,3.2vw,var(--h1,34px));font-weight:700}
.hero .lead{display:flex;flex-direction:column;gap:14px;justify-content:center}
.bul{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:6px}
.bul li::marker{color:var(--accent)}
.ctas{display:flex;gap:8px;flex-wrap:wrap}
.tl{display:flex;flex-direction:column}
.tl .st,.cal li{display:grid;grid-template-columns:7.2em minmax(0,1fr);gap:10px;align-items:baseline;padding:9px 0;border-top:1px dashed var(--line);font-size:15px;color:var(--fg)}
.tl .st:first-of-type{border-top:0}
.tl .st b,.cal li b{font-family:var(--f-mono);font-size:15px;color:var(--ink);font-weight:500;white-space:nowrap}
.tl .st.pub b{color:var(--accent)}
.tl .st.pub span{color:var(--ink);font-weight:600}
.tl .tz{font-size:12px;color:var(--muted);margin-top:4px}

.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;align-items:start}
table{border-collapse:collapse;width:100%;font-size:.95em}
th,td{padding:var(--cell,9px) 12px;text-align:left;border-bottom:1px solid var(--line)}
th{font-size:12px;color:var(--muted);font-weight:500;letter-spacing:.03em;background:var(--sunk)}
td.r,th.r{text-align:right}
.tk{font-family:var(--f-mono);font-weight:500;color:var(--ink)}
.chg{font-family:var(--f-mono);font-variant-numeric:tabular-nums;font-weight:600}
.chg.u{color:var(--up)} .chg.d{color:var(--down)}
.tbox{overflow-x:auto}
.trig{display:flex;flex-direction:column;gap:8px;padding:14px 0;border-top:1px solid var(--line)}
.trig:first-of-type{border-top:0;padding-top:0}
.trig .th{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.trig .th b{color:var(--ink)}
.mrow{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.mlab{font-family:var(--f-mono);font-size:11px;color:var(--muted);min-width:34px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{display:inline-flex;gap:6px;align-items:baseline;border:1px solid var(--line);background:var(--surface);border-radius:calc(var(--r) - 2px);padding:4px 9px;font-size:14px;color:var(--ink)}
.chip .c{font-family:var(--f-mono);font-size:12px;color:var(--muted)}
.chip .rl{font-size:11.5px;color:var(--accent)}
.lock{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r);padding:10px 12px}

.picker{display:flex;flex-wrap:wrap;gap:6px}
.pk{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:6px 12px;font:500 13px var(--f-mono);cursor:pointer;min-height:36px}
.pk[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
[hidden]{display:none!important}
/* 盤前看板 */
.hero h1.board{font-size:clamp(19px,2.2vw,24px);display:flex;flex-wrap:wrap;gap:4px 18px;line-height:1.35}
.hero h1.board span{white-space:nowrap}
.hero h1 b.chg{font-weight:700}
.idx{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:640px){.idx{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ix{display:flex;flex-direction:column;gap:2px;background:var(--sunk);border-radius:var(--r);padding:10px 12px;min-width:0}
.ixn{font-size:13px;font-weight:600;color:var(--ink);display:flex;flex-direction:column;line-height:1.3}
.ixn small{font-size:11px;font-weight:400;color:var(--muted)}
.ix b.num{font-size:17px;color:var(--ink);font-weight:500}
.ix .chg{font-size:13px}
.cal{border-top:1px solid var(--line);margin-top:10px;padding-top:14px;display:flex;flex-direction:column;gap:4px}
.cal ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.cal li:first-child{border-top:0}
.nltag{display:inline-flex;align-items:center;margin-left:6px;font-size:11px;font-weight:600;text-decoration:none;color:var(--hl-ink,#2a2100);background:var(--hl);border-radius:999px;padding:0 7px;line-height:18px;white-space:nowrap;vertical-align:1px}
.nltag:hover{filter:brightness(.95)}
.bbm{display:inline-flex;gap:4px;margin-left:4px;font-family:var(--f-mono);font-size:11px}
.bbm i{font-style:normal}
.bbm i.u{color:var(--up)} .bbm i.d{color:var(--down)}
.nlst.flash{background:var(--hl-soft)}
@media (prefers-reduced-motion:no-preference){.nlst{transition:background .3s}}
/* 每日電子報 */
:root{--hl:#f2c200;--hl-soft:#fff3c4}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--hl:#e0b400;--hl-soft:#3d3412}}
:root[data-theme="dark"]{--hl:#e0b400;--hl-soft:#3d3412}
.nlgrid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:16px;align-items:start}
@media (max-width:900px){.nlgrid{grid-template-columns:minmax(0,1fr)}}
.nlcard{padding:22px var(--pad);display:flex;flex-direction:column;gap:12px}
.nlhead{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}
.nldate{font-size:12.5px;color:var(--muted)}
.nlname{font-size:28px;font-weight:800;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.nlkind{font-size:13px;font-weight:700;letter-spacing:.06em;background:var(--ink);color:var(--surface);padding:2px 9px;border-radius:4px}
.nltldr{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:8px}
.nltldr li::marker{font-family:var(--f-mono);font-weight:600;color:var(--accent)}
.nlh3{font-size:15px;margin-top:4px}
.nlstories{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.nlst{all:unset;box-sizing:border-box;width:100%;cursor:pointer;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 4px;border-bottom:1px solid var(--line)}
.nlst:hover .nlt{color:var(--accent)}
.nlst:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nlt{color:var(--ink);font-weight:600;line-height:1.45}
.nlm2{display:flex;flex-direction:column;align-items:flex-end;gap:0;font-size:13px}
.nlarch ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.nlarch a:not(.btn){display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--ink);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px}
.nlarch a:not(.btn):hover{border-color:var(--accent)}
.nlarch .num{font-size:12px;color:var(--muted)}
.nlarch{display:flex;flex-direction:column;gap:12px}
.nlb{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--hl);color:var(--hl-ink,#2a2100);font-family:var(--f-mono);font-size:10.5px;font-weight:700;line-height:1;margin-left:3px}
.nlb.big{min-width:24px;height:24px;border-radius:12px;font-size:12.5px;margin:0}
.ahl{font-size:10.5px;font-weight:500;opacity:.8}
.nlbar{display:flex;flex-direction:column;gap:8px;background:var(--hl-soft);border-radius:var(--r);padding:12px 14px}
.nlck{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);cursor:pointer;font-size:14px}
.nlck input{width:18px;height:18px;accent-color:var(--hl);margin:0}
.nlsw{display:none}
.nlf{display:flex;flex-wrap:wrap;gap:6px}
.fbtn{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 12px;font:500 13px var(--f-body);cursor:pointer;min-height:34px;display:inline-flex;align-items:center;gap:4px}
.fbtn[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.fbtn:disabled{opacity:.45;cursor:not-allowed}
.pk.nlp{border-color:var(--hl)}
button.chip.fc.nlm{box-shadow:0 0 0 2px var(--hl);border-color:transparent}
button.chip.hub.nlm{box-shadow:0 0 0 3px var(--hl),0 6px 18px rgba(8,16,32,.12)}
.nloff{display:flex;flex-direction:column;gap:6px;border:1px dashed var(--hl);border-radius:var(--r);padding:10px 12px}
/* 供應鏈族譜：上游欄 → 匯流線 → 美股 → 匯流線 → 下游欄 */
.tree{padding:0;overflow:hidden}
.ft-scroll{overflow-x:auto;padding:22px 0 26px}
.ft{display:flex;flex-direction:column;align-items:center;padding:0 var(--pad);box-sizing:border-box;--wire:var(--muted)}
.ft-h{font-size:13px;color:var(--muted);font-weight:500;padding:4px 0 10px}
.ft-cols{display:flex;align-items:flex-end;justify-content:center;width:100%}
.ft-cols.down{align-items:flex-start}
.ft-col{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;flex:var(--k,1) 1 0;min-width:calc(86px * var(--k,1));max-width:calc(150px * var(--k,1));padding:0 3px}
.ft-cols.up .ft-col{padding-bottom:22px}
.ft-cols.up .ft-col .cl{order:2}
.ft-cols.down .ft-col{padding-top:22px}
.ft-col::before{content:"";position:absolute;left:0;right:0;border-top:1px solid var(--wire)}
.ft-cols.up .ft-col::before{bottom:0}
.ft-cols.down .ft-col::before{top:0}
.ft-col:first-child::before{left:50%}
.ft-col:last-child::before{right:50%}
.ft-col::after{content:"";position:absolute;left:50%;width:1px;height:22px;background:var(--wire)}
.ft-cols.up .ft-col::after{bottom:0}
.ft-cols.down .ft-col::after{top:0}
.ft-cols.none{padding:8px 0}
.ft-stem{display:block;width:1px;height:26px;background:var(--wire)}
.cl{font-size:11.5px;color:var(--muted);text-align:left;display:flex;align-items:flex-start;gap:5px;justify-content:center;min-height:20px;line-height:18px;max-width:100%}
.cards{display:grid;grid-template-columns:repeat(var(--k,1),minmax(0,1fr));gap:8px;width:100%}
button.chip.fc{min-width:0;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:6px 7px;font-size:12.5px;border-radius:var(--r);background:var(--accent-soft);border:1px solid transparent}
button.chip.fc:hover{border-color:var(--accent)}
button.chip.fc .fn{font-weight:600;color:var(--ink);line-height:1.25;overflow-wrap:normal;word-break:normal;hyphens:auto;-webkit-hyphens:auto;max-width:100%}
button.chip.fc .c{font-size:11px}
button.chip.fc .fm{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
button.chip.fc .mt{font-family:var(--f-mono);font-size:10.5px;border:1px solid var(--line);border-radius:4px;padding:0 4px;color:var(--muted);background:var(--surface)}
button.chip.fc.m-u{background:var(--sunk)}
.ft-core{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:28px;align-items:center;width:100%}
button.chip.hub{flex-direction:column;align-items:center;gap:2px;padding:14px 34px;border:2px solid var(--accent);background:var(--surface);border-radius:calc(var(--r) + 4px);box-shadow:0 6px 18px rgba(8,16,32,.12);min-width:200px}
button.chip.hub b{font-size:24px;color:var(--ink)}
button.chip.hub .hm{font-size:12px;color:var(--muted);font-family:var(--f-mono)}
.peerbox{position:relative;justify-self:start;display:flex;flex-direction:column;gap:6px;width:150px;border:1px dashed var(--line);border-radius:var(--r);padding:8px}
.peerbox::before{content:"";position:absolute;right:100%;top:50%;width:28px;border-top:1px dashed var(--wire)}
.peerbox .cl{min-height:0;justify-content:flex-start}
.peerbox .pg{display:flex;flex-direction:column;gap:6px}
.peerbox .pg+.pg{border-top:1px dashed var(--line);padding-top:8px}
.peerbox .pg.own button.chip.fc{background:var(--surface);border:1px dashed var(--muted)}
.peerbox .pnote{font-size:10.5px;color:var(--accent)}
.ft-stemrow{position:relative;display:flex;justify-content:center;width:100%}
.ft-h.side{position:absolute;left:calc(50% + 12px);top:2px;padding:0;white-space:nowrap}
button.chip.fc .bi{font-family:var(--f-mono);font-size:10.5px;border-radius:4px;padding:0 4px;background:var(--accent);color:var(--accent-ink)}
.tgn{display:inline-grid;place-items:center;min-width:18px;height:18px;flex:none;border-radius:999px;background:var(--sunk);color:var(--ink);font-family:var(--f-mono);font-size:11px;flex:none}
.grp{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}
.empty{font-size:13.5px;color:var(--muted)}

.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.plan{display:flex;flex-direction:column;gap:10px;padding:var(--pad)}
.plan.hl{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.plan .p{font-family:var(--f-mono);font-size:28px;color:var(--ink);line-height:1.1}
.plan .p small{font-size:13px;color:var(--muted)}
.plan .bd{align-self:flex-start;font-size:12px;background:var(--accent-soft);color:var(--accent);padding:2px 8px;border-radius:999px}
.plan ul{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:4px;font-size:14px}
.payrow{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px}
.pays{display:flex;flex-wrap:wrap;gap:8px}
.pay{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);padding:8px 12px;background:var(--surface);min-width:0}
.pay b{color:var(--ink);font-size:14px}
.pay span{font-size:12px;color:var(--muted)}
.pay.main{border-color:var(--accent)}
.side{display:flex;flex-direction:column;gap:12px}
.logins{display:flex;flex-wrap:wrap;gap:6px}
.logins span{border:1px solid var(--line);border-radius:999px;padding:4px 11px;font-size:13px;color:var(--ink)}
.chanbox{background:var(--sunk);border-radius:var(--r);padding:16px;display:flex;flex-direction:column;gap:10px}

footer{border-top:1px solid var(--line);background:var(--surface)}
footer .wrap{padding-block:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
footer b{color:var(--ink)}

@media (max-width:900px){
  .hero,.two,.payrow{grid-template-columns:minmax(0,1fr)}
  .cols3,.plans{grid-template-columns:minmax(0,1fr)}
  nav.links{order:3;flex-basis:100%;overflow-x:auto;flex-wrap:nowrap}
  nav.links a{white-space:nowrap}
  .navr{margin-left:auto}
}
@media (max-width:480px){.navr .btn{display:none}}

/* 說明窗 */
button.chip{font:inherit;font-size:14px;cursor:pointer;text-align:left}
button.chip:hover{border-color:var(--accent)}
button.chip[aria-pressed="true"]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);background:var(--accent-soft)}
.sw{position:fixed;z-index:20;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));
  width:min(720px,calc(100vw - 32px));height:min(72vh,780px);min-height:380px;background:var(--surface);color:var(--fg);
  border:1px solid var(--line);border-radius:calc(var(--r) + 4px);box-shadow:0 20px 56px rgba(8,16,32,.28);display:flex;flex-direction:column;overflow:hidden}
.sw:focus{outline:none}
.sw-h{display:flex;gap:12px;align-items:flex-start;padding:16px 16px 12px 20px;border-bottom:1px solid var(--line)}
.sw-h .who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.sw-h .who .c{font-family:var(--f-mono);font-size:12.5px;color:var(--muted)}
.sw-h h3{font-size:22px}
.sw-h .sub{font-size:13px;color:var(--muted)}
.sw-x{flex:none;width:40px;height:40px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;display:grid;place-items:center}
.sw-x:hover{background:var(--sunk)}
.sw-tabs{display:flex;gap:2px;padding:0 12px;border-bottom:1px solid var(--line);overflow-x:auto;flex:none}
.sw-tabs button{border:0;background:none;color:var(--muted);font:500 14px var(--f-body);padding:11px 10px;border-bottom:2px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap;min-height:44px}
body.zh .sw-tabs button{font-family:"Noto Sans TC",system-ui,sans-serif}
.sw-tabs button[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent)}
.sw-b{flex:1;overflow:auto;padding:18px 20px 22px;display:flex;flex-direction:column;gap:14px}
.kv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:8px 16px;margin:0}
.kv dt{color:var(--muted);font-size:13px}
.kv dd{margin:0;color:var(--ink)}
.sw-b h4{margin:0;font-size:13px;color:var(--muted);font-weight:500;letter-spacing:.03em}
.usrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:10px 0;border-top:1px solid var(--line)}
.usrow:first-of-type{border-top:0;padding-top:0}
.usrow .rl{grid-column:1/-1;font-size:13px;color:var(--accent)}
.demo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);background:var(--accent-soft);border-radius:var(--r);padding:8px 12px;align-self:flex-start}
.sec{display:flex;flex-direction:column;gap:8px}
.sec+.sec{border-top:1px solid var(--line);padding-top:14px}
.subtabs{display:flex;gap:4px;flex-wrap:wrap}
.subtabs button{border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:999px;padding:5px 12px;font:500 13px var(--f-body);cursor:pointer;min-height:34px}
body.zh .subtabs button{font-family:"Noto Sans TC",system-ui,sans-serif}
.subtabs button[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.mini{width:100%;border-collapse:collapse;font-size:13.5px}
.mini th,.mini td{padding:7px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.mini td.n,.mini th.n{text-align:right;font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.v.u{color:var(--up)} .v.d{color:var(--down)}
.bb{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.bbc{border:1px solid var(--line);border-radius:var(--r);padding:10px;text-align:center}
.bbc .l{font-size:13px;font-weight:600}
.bbc .s{font-family:var(--f-mono);font-size:22px;color:var(--ink)}
.bbc .s small{font-size:13px;color:var(--muted)}
.bbg{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;font-size:13px}
.bbg .gh{grid-column:1/-1;background:var(--sunk);padding:6px 12px;color:var(--muted);font-size:12px}
.bbg span{padding:7px 10px;text-align:center;color:var(--muted);opacity:.55;border-top:1px solid var(--line)}
.bbg span:nth-of-type(odd){border-right:1px solid var(--line)}
.bbg span.on{opacity:1;color:var(--ink);font-weight:500}
.bbg span.blank{background:var(--bg)}
.bbg span.na{opacity:.28}
.mini tr.me td{background:var(--sunk);font-weight:600}
.bars{display:flex;gap:18px;align-items:flex-end;height:140px;padding:8px 4px 0;border-bottom:1px solid var(--line)}
.bars .m{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end}
.bars .pair{display:flex;gap:4px;align-items:flex-end;height:100%;width:100%;justify-content:center}
.bars i{display:block;width:30%;max-width:34px;border-radius:3px 3px 0 0}
.bars i.ly{background:var(--line)} .bars i.cur{background:var(--accent)}
.bars .ml{font-family:var(--f-mono);font-size:11px;color:var(--muted)}
.legend{display:flex;gap:14px;font-size:12px;color:var(--muted)}
.legend b{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.news{display:flex;flex-direction:column}
.news a,.news div.it{display:flex;flex-direction:column;gap:3px;padding:11px 0;border-top:1px solid var(--line);color:var(--ink);text-decoration:none}
.news .it:first-child{border-top:0;padding-top:0}
.news .meta{font-size:12px;color:var(--muted)}
.news .tg{font-size:11px;color:var(--accent);border:1px solid var(--accent);border-radius:4px;padding:0 5px;margin-right:6px}
.ranks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ranks div{background:var(--sunk);border-radius:var(--r);padding:10px;text-align:center}
.ranks small{display:block;font-size:12px;color:var(--muted)}
.ranks b{font-family:var(--f-mono);font-size:20px;color:var(--ink)}
.ranks b span{font-size:12px;color:var(--muted)}
.pend{font-size:13.5px;color:var(--muted);border:1px dashed var(--line);border-radius:var(--r);padding:12px}
@media (max-width:640px){.sw{left:0;right:0;bottom:0;width:100%;height:72vh;border-radius:16px 16px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom,0px)}}
@media (prefers-reduced-motion:no-preference){.sw:not([hidden]){animation:swIn .18s ease-out}@keyframes swIn{from{transform:translateY(12px);opacity:.4}to{transform:none;opacity:1}}}
@media (prefers-reduced-motion:no-preference){.pk,.btn,.chip{transition:background .15s,filter .15s}}

/* 價格說明、頁尾公司資料、法律頁 */
.pbox{display:flex;flex-direction:column;gap:12px}
.pbox h3{font-size:1.1em}
.ptab td,.ptab th{white-space:normal}
.ptab td:first-child{color:var(--ink);font-weight:600}
.pp{color:var(--muted);font-size:12px;margin-left:2px}
.pbd{display:inline-block;white-space:nowrap;font-size:11.5px;font-weight:500;background:var(--accent-soft);color:var(--accent);padding:0 7px;border-radius:999px}
#planCards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}
@media (max-width:900px){#planCards{grid-template-columns:minmax(0,1fr)}}
.pnotes{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:6px;font-size:14px}
.plinks,#fLinks{display:flex;flex-wrap:wrap;gap:6px 16px}
.plinks a,#fLinks a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-size:14px}
footer .wrap.ftw{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px 32px;align-items:start;padding-block:28px 36px}
.fco{display:flex;flex-direction:column;gap:6px}
.fkv{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 14px;margin:6px 0 0;font-size:13px}
.fkv dt{color:var(--muted)} .fkv dd{margin:0;color:var(--fg);overflow-wrap:anywhere}
.flinks{display:flex;flex-direction:column;gap:10px}
.ph{background:var(--accent-soft);color:var(--accent);border-bottom:1px dashed var(--accent);padding:0 2px;border-radius:2px}
.lg{position:fixed;inset:0;z-index:40;background:var(--bg);overflow:auto;overscroll-behavior:contain}
.lg-in{max-width:760px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-left,0px)) 72px}
.lg-h{position:sticky;top:0;z-index:1;background:var(--bg);display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:calc(12px + env(safe-area-inset-top,0px)) 0 12px;border-bottom:1px solid var(--line)}
.lg-tabs{display:flex;flex-wrap:wrap;gap:6px}
.lg-tabs a{border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px;color:var(--fg);text-decoration:none;min-height:34px;display:inline-flex;align-items:center}
.lg-tabs a[aria-current="page"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.lg-b{color:var(--fg);line-height:1.75}
.lg-b h1{font-size:26px;margin:24px 0 4px}
.lg-b h2{font-size:16px;margin:24px 0 6px}
.lg-b p{margin:0}
.lg-b .upd{color:var(--muted);font-size:13px;margin-bottom:8px}
.lg-b .tok{margin-top:16px}
.lg-b .tok th{width:34%;white-space:normal;vertical-align:top;background:var(--sunk);color:var(--ink);font-size:13px}
.lg-b .tok td{white-space:normal}
.lg-b .lead-p{margin-top:12px;font-size:16px;color:var(--ink)}
@media (max-width:720px){footer .wrap.ftw{grid-template-columns:minmax(0,1fr)}}
.lead-p{white-space:pre-line}
.nlr{position:fixed;z-index:22;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));
  width:min(560px,calc(100vw - 32px));height:min(80vh,860px);background:var(--surface);border:1px solid var(--line);border-radius:calc(var(--r) + 4px);
  box-shadow:0 20px 56px rgba(51,26,0,.28);display:flex;flex-direction:column;overflow:hidden}
.nlr[hidden]{display:none}
.nlr:focus{outline:none}
.nlr-h{display:flex;gap:10px;align-items:center;padding:12px 14px 12px 18px;border-bottom:1px solid var(--line)}
.nlr-h>div{flex:1;min-width:0;display:flex;flex-direction:column}
.nlr-h .m{font-size:12px;color:var(--muted)}
.nlr-h b{font-size:17px;color:var(--ink)}
.nlr-o{font-size:12.5px;color:var(--accent);white-space:nowrap}
.nlr iframe{flex:1;width:100%;border:0;background:var(--bg)}
@media (max-width:640px){.nlr{left:0;right:0;bottom:0;width:100%;height:86vh;border-radius:16px 16px 0 0;border-bottom:0}}
@media (prefers-reduced-motion:no-preference){.nlr:not([hidden]){animation:swIn .18s ease-out}}

#learn{display:flex;flex-direction:column;gap:14px}
.ln-tools{display:flex;flex-direction:column;gap:10px}
#lnQ{font:inherit;font-size:14px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);max-width:420px}
.ln-cats{display:flex;gap:6px;flex-wrap:wrap}
.ln-cats button{font:inherit;font-size:13px;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer}
.ln-cats button[aria-pressed="true"]{background:var(--ink);color:var(--surface);border-color:var(--ink)}
.ln-sec h3{font-size:16px;margin:8px 0 10px;color:var(--ink)}
.ln-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
@media (max-width:760px){.ln-grid{grid-template-columns:minmax(0,1fr)}}
.ln-it{padding:12px 16px}
.ln-it summary{cursor:pointer;display:flex;flex-direction:column;gap:2px;list-style:none}
.ln-it summary::-webkit-details-marker{display:none}
.ln-it summary b{color:var(--ink);font-size:15px}
.ln-it summary b::after{content:" +";color:var(--accent);font-weight:400}
.ln-it[open] summary b::after{content:" −"}
.ln-it summary span{font-size:13px;color:var(--muted)}
.ln-it p{margin:10px 0 6px;line-height:1.8;font-size:14px}
.ln-it small{font-size:12px;color:var(--accent)}
/* 小學堂：學習單元目錄 */
.lc{display:flex;flex-direction:column;gap:14px}
.lc-top{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:14px;align-items:stretch}
@media (max-width:760px){.lc-top{grid-template-columns:minmax(0,1fr)}}
.lc-meter{padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.lc-meter .big{font-family:"Source Serif 4","Noto Serif TC",serif;font-size:30px;color:var(--ink);line-height:1}
.lc-meter .big small{font-size:15px;color:var(--muted)}
.lc-track{height:7px;background:var(--line);border-radius:99px;overflow:hidden}
.lc-fill{height:100%;background:var(--o500,#FF8000);border-radius:99px;transition:width .4s}
.lc-meter .row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;color:var(--muted)}
.lc-meter button{all:unset;cursor:pointer;text-decoration:underline;font-size:12px}
.lc-today{padding:14px 16px;display:flex;flex-direction:column;gap:8px;background:var(--accent-soft);border:0}
.lc-today b{color:var(--ink);font-size:14px}
.lc-today .chips{gap:6px}
.lc-chip{font:inherit;font-size:13.5px;border:1px solid var(--o500,#FF8000);background:var(--surface);color:var(--ink);border-radius:999px;padding:4px 12px;cursor:pointer}
.lc-chip:hover{background:var(--o50,#FFEDD9)}
.lc-chip i{font-style:normal;font-family:"Source Serif 4",serif;color:var(--accent);margin-right:5px}
.lc-ch{display:grid;grid-template-columns:190px minmax(0,1fr);gap:18px;padding:16px 0;border-top:1px solid var(--line)}
@media (max-width:760px){.lc-ch{grid-template-columns:minmax(0,1fr);gap:10px}}
.lc-chh{display:flex;flex-direction:column;gap:4px}
.lc-no{font-family:"Source Serif 4",serif;font-size:40px;line-height:1;color:var(--o500,#FF8000)}
.lc-chh h4{margin:0;font-size:17px;color:var(--ink);line-height:1.4}
.lc-chh p{margin:0;font-size:13px;color:var(--muted)}
.lc-chh .pr{font-size:12px;color:var(--muted)}
@media (max-width:760px){.lc-chh{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px}.lc-no{grid-row:span 3;font-size:34px}}
.lc-units{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start}
@media (max-width:900px){.lc-units{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.lc-units{grid-template-columns:minmax(0,1fr)}}
.lc-u{font:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px 12px 12px;color:var(--fg)}
.lc-u:hover{border-color:var(--accent)}
.lc-u[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft)}
.lc-u .t{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}
.lc-u .t i{font-style:normal;font-family:"Source Serif 4",serif;font-weight:600;color:var(--accent);font-size:13px}
.lc-u .t em{font-style:normal;color:var(--accent);display:none}
.lc-u.rd .t em{display:inline}
.lc-u b{color:var(--ink);font-size:15px;line-height:1.45}
.lc-u.rd b{color:var(--muted)}
.lc-u span.h{font-size:12.5px;color:var(--muted);line-height:1.55}
.ln-dict{font-size:18px;margin:14px 0 0;padding-top:16px;border-top:2px solid var(--ink);color:var(--ink)}
.lcr{position:fixed;z-index:21;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(520px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 100px));background:var(--surface);color:var(--fg);border:1px solid var(--line);border-radius:calc(var(--r) + 4px);box-shadow:0 20px 56px rgba(51,26,0,.28);display:flex;flex-direction:column;overflow:hidden}
.lcr-h{display:flex;gap:12px;align-items:flex-start;padding:14px 16px 10px 20px;border-bottom:1px solid var(--line)}
.lcr-h .m{font-size:12px;color:var(--muted)}
.lcr-h h3{font-size:21px;margin-top:2px}
.lcr-h>div{flex:1;min-width:0}
.lcr-b{overflow-y:auto;min-height:0;padding:4px 20px 18px}
.lcr-k{padding:12px 0;border-bottom:1px dashed var(--line)}
.lcr-k h5{margin:0 0 3px;font-size:12px;letter-spacing:.14em;color:var(--accent);font-weight:600}
.lcr-k p{margin:0;line-height:1.8}
.lcr-k.nw{background:var(--sunk);border:0;border-radius:8px;padding:10px 14px;margin-top:12px}
.lcr-k.kp{background:var(--o500,#FF8000);color:#331A00;border:0;border-radius:8px;padding:12px 14px;margin-top:10px}
.lcr-k.kp h5{color:#331A00;opacity:.8}
.lcr-k.kp p{font-weight:600;font-size:16.5px}
.lcr-f{display:flex;gap:8px;align-items:center;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
.lcr-f .btn{min-height:38px;padding:7px 12px;font-size:13.5px}
.lcr-f .btn:disabled{opacity:.4;cursor:default}
.lcr-f .go{margin-left:auto}
@media (max-width:640px){.lcr{left:0;right:0;bottom:0;width:100%;max-height:76vh;border-radius:16px 16px 0 0;border-bottom:0}}
@media (prefers-reduced-motion:no-preference){.lcr:not([hidden]){animation:swIn .18s ease-out}}
/* 小學堂目錄：精簡版，跟名詞小字典同尺寸（電腦與手機一致） */
body .lc{gap:10px}
body .lc-top{gap:8px}
body .lc-today,body .lc-meter{padding:8px 12px;border-radius:6px;gap:5px}
body .lc-today b{font-size:13.5px;font-weight:500}
body .lc-chip{font-size:12px;padding:3px 10px}
body .lc-meter .big{font-size:22px}
body .lc-meter .big small{font-size:12px}
body .lc-meter .row{font-size:11.5px}
body .lc-ch{padding:10px 0;gap:10px;grid-template-columns:150px minmax(0,1fr)}
body .lc-chh{gap:2px}
body .lc-no{font-size:26px}
body .lc-chh h4{font-size:14.5px;font-weight:500}
body .lc-chh p{font-size:11.5px;line-height:1.5}
body .lc-chh .pr{font-size:11px}
body .lc-units{gap:6px}
body .lc-u{padding:8px 12px;border-radius:6px;gap:1px}
body .lc-u .t{font-size:11px}
body .lc-u .t i{font-size:11.5px}
body .lc-u b{font-size:13.5px;font-weight:500}
body .lc-u span.h{font-size:11.5px;line-height:1.5}
body .ln-dict{font-size:14.5px;font-weight:500;margin-top:8px;padding-top:12px}
body .lcr-h h3{font-size:17px;font-weight:500}
body .lcr-k p{font-size:13.5px;line-height:1.75}
body .lcr-k.kp p{font-size:14px;font-weight:500}
body .lcr-k{padding:9px 0}
body .lcr-f .btn{font-size:12.5px;min-height:34px;padding:5px 10px}
@media (max-width:760px){body .lc-ch{grid-template-columns:minmax(0,1fr);gap:6px}body .lc-no{font-size:24px}}



.phonepv{padding:40px 0 56px;border-top:1px solid var(--line);background:var(--sunk)}
.phonepv .wrap{display:flex;flex-direction:column;align-items:center;gap:8px}
.phonepv .phone{position:relative;width:414px;max-width:100%;padding:12px;border-radius:52px;background:#1a0d00;box-shadow:0 20px 50px rgba(51,26,0,.25);margin-top:12px}
.phonepv .scr{border-radius:40px;overflow:hidden;background:var(--surface)}
.phonepv .sbar{height:47px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;color:var(--ink);font:600 15px var(--f-display);position:relative}
.phonepv .sbar i{width:26px;height:12px;border:1.5px solid var(--ink);border-radius:4px}
.phonepv .notch{position:absolute;top:11px;left:50%;transform:translateX(-50%);width:110px;height:30px;border-radius:16px;background:#1a0d00}
.phonepv iframe{display:block;width:390px;max-width:100%;height:797px;border:0;background:var(--surface)}

.nlb[data-n]{cursor:pointer}
.nlb[data-n]:hover{filter:brightness(.92)}
.nlpop{position:fixed;inset:0;z-index:60;background:rgba(10,14,22,.45);display:grid;place-items:center;padding:16px}
.nlpop[hidden]{display:none}
.nlpbox{background:var(--panel,#fff);color:var(--ink);border-radius:12px;max-width:560px;width:100%;max-height:min(86vh,760px);overflow:auto;padding:20px 22px;display:flex;flex-direction:column;gap:10px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.nlphead{display:flex;justify-content:space-between;align-items:center}
.nlpx{all:unset;cursor:pointer;width:34px;height:34px;border-radius:17px;border:1px solid var(--line);display:grid;place-items:center;font-size:20px}
.nlpt{margin:0;font-size:20px;line-height:1.4}
.nlpc{margin:0;font-family:var(--f-mono);color:var(--down);font-weight:600}
.nlpbox p{margin:0;line-height:1.75}
.nlpbox h4{margin:6px 0 0;font-size:14px;color:var(--accent)}
.nlpplain{background:var(--sunk);border-radius:8px;padding:10px 12px}
.nlpplain b{font-size:13px;color:var(--muted)}
body.nlpopen{overflow:hidden}
/* 全站緊湊版：少留白（電腦與手機一致） */
html body header.nav .wrap{padding-block:6px;gap:14px}
html body .logo .lg2>svg{height:40px}
html body .logo .lg2 .wm svg{height:20px}
html body header.nav .btn{min-height:34px;padding:5px 14px;font-size:13px}
html body main{padding-block:14px 36px;gap:16px}
html body section{gap:10px}
html body .pad{padding:12px 14px}
html body .hero{gap:12px;align-items:start}
html body .hero .lead{justify-content:flex-start;gap:9px}
html body .hero h1.board{font-size:clamp(17px,1.9vw,21px);gap:2px 14px;line-height:1.35}
html body .eyebrow{font-size:11.5px}
html body .tl .st,html body .cal li{padding:4px 0;font-size:13.5px;grid-template-columns:6.2em minmax(0,1fr);gap:8px}
html body .tl .st b,html body .cal li b{font-size:13.5px}
html body .tl .tz{font-size:11.5px;margin-top:2px}
html body .cal{margin-top:6px;padding-top:8px;gap:2px}
html body #idx .ix{padding:5px 8px 6px}
html body .two{gap:12px}
html body th,html body td{padding:6px 10px}
html body .trig{padding:9px 0;gap:6px}
html body h2{font-size:17px}
html body .note{font-size:12.5px}
html body .lock{padding:7px 10px}
@media (max-width:640px){
 html body main{padding-block:10px 28px;gap:12px}
 html body .pad{padding:10px 12px}
 html body .hero h1.board{font-size:17px}
 html body .logo .lg2>svg{height:34px}
 html body .logo .lg2 .wm svg{height:17px}
 html body .tl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}
 html body .tl .st{grid-template-columns:3.4em minmax(0,1fr);font-size:13px}
 html body .tl .st:nth-of-type(2){border-top:0}
 html body .tl .tz{grid-column:1/-1}
 html body .tl .st b,html body .cal li b{font-size:13px}
 html body .cal li{font-size:13px}
 html body h2{font-size:16px}
}

/* ===== 去 AI 味第一步：白底、少框、橘色只留給品牌與關鍵數字 ===== */
:root{--bg:#FFFFFF;--surface:#FFFFFF;--sunk:#F7F5F3;--ink:#1F1A16;--fg:#3A332D;--muted:#7A706A;--line:#E8E3DE;--accent:#3A332D;--accent-ink:#FFFFFF;--accent-soft:#F3F0ED;--key:#CC6600}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#141210;--surface:#141210;--sunk:#1D1A17;--ink:#F2EEEA;--fg:#D6CFC8;--muted:#9C938B;--line:#2E2925;--accent:#D6CFC8;--accent-ink:#141210;--accent-soft:#26221E;--key:#FFA34D;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#141210;--surface:#141210;--sunk:#1D1A17;--ink:#F2EEEA;--fg:#D6CFC8;--muted:#9C938B;--line:#2E2925;--accent:#D6CFC8;--accent-ink:#141210;--accent-soft:#26221E;--key:#FFA34D;color-scheme:dark}
html body .ribbon{background:var(--ink);color:var(--bg)}
html body .panel{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0}
html body .hero>.panel{border-top:2px solid var(--ink)}
html body .pad{padding:12px 0}
html body .tree.panel{border-top:1px solid var(--line)}
html body #idx .ix{background:transparent;border:0;border-left:1px solid var(--line);border-radius:0;padding:2px 10px}
html body #idx .ix:first-child{border-left:0;padding-left:0}
html body .lock{border:0;padding:4px 0;border-radius:0}
html body .chanbox{background:transparent;border-top:1px solid var(--line);border-radius:0;padding:12px 0}
html body .plan.hl{box-shadow:none;border-top:2px solid var(--ink)}
html body .nlarch a:not(.btn){border:0;border-bottom:1px solid var(--line);border-radius:0;padding:8px 0}
html body .lc-today,html body .lc-meter{background:transparent;padding:8px 0}
html body .lc-chip{border-color:var(--line)}
html body .lc-chip:hover{background:var(--sunk)}
html body .lc-no{color:var(--ink)}
html body .lc-units{gap:0 18px}
html body .lc-u{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:7px 0;background:transparent}
html body .lc-u[aria-pressed="true"]{background:var(--sunk)}
html body .ln-grid{gap:0 18px}
html body .ln-it{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:7px 0}
html body .lcr-k.kp{background:var(--sunk);color:var(--ink)}
html body .lcr-k.kp h5{color:var(--muted);opacity:1}
html body .segtag,html body .segtag[class]{background:var(--sunk);color:var(--fg);border:1px solid var(--line)}
html body .tl .st.pub b{color:var(--key)}
html body .lc-fill{background:var(--key)}
/* 漲跌符號 */
.chg.u::before{content:"▲";font-size:.75em;margin-right:2px;vertical-align:.08em}
.chg.d::before{content:"▼";font-size:.75em;margin-right:2px;vertical-align:.08em}
/* 刪掉標題下的說明 */
#closeNote,#affNote,#mapNote,.ln-lead,.ln-dict+.note,.lc-today .note,.nlbar .note{display:none!important}
/* 名詞連到小學堂、更新時間與資料來源 */
a.lk{font-size:12px;font-weight:400;color:var(--muted);margin-left:10px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
a.lk:hover{color:var(--ink)}
.src{margin:0;font-size:11.5px;color:var(--muted);line-height:1.5}
.src b{font-weight:500;color:var(--fg)}
@media (max-width:640px){html body .pad{padding:10px 0}}

/* ===== 版型 C：品牌生活感 ===== */
html body,html body.zh,html body .btn,html body.zh .btn,html body button,html body input,html body select{font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif!important}
html body h1,html body h2,html body h3,html body h4,html body .nlname,html body .nlpt,html body .sw-h h3,html body .lcr-h h3,html body .c-ser{font-family:"Noto Serif TC","Songti TC",serif!important}
#brief{display:none!important}
#affTitle,#aff,#affLock,#srcAff{display:none!important}
.cb{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px 28px;align-items:start}
.c-hero{background:var(--o500);color:#331A00;border-radius:22px;padding:18px 20px 20px;display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:6px 14px;align-items:center}
.c-hero .hi{font-family:"Noto Serif TC",serif;font-weight:700;font-size:15px}
.c-hero .dl{font-size:12px;opacity:.8}
.c-hero .big{font-family:"Noto Serif TC",serif;font-weight:700;font-size:clamp(24px,3vw,32px);line-height:1.25;margin:4px 0 2px}
.c-hero .big .n{font-family:"Source Serif 4",serif;font-weight:600}
.c-hero .sm{font-size:13.5px;line-height:1.65}
.c-hero svg{width:112px;height:112px;grid-row:1/4;grid-column:2}
.c-hero .ctas{grid-column:1/-1;margin-top:8px}
.c-hero .btn.ghost{background:#FFF6EC;border-color:transparent;color:#331A00}
.c-hero .chg.u,.c-hero .chg.d{color:#331A00}
.c-lbl{font-family:"Noto Serif TC",serif!important;font-weight:700;font-size:16px;color:var(--ink);margin:0 0 10px}
.c-time{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));text-align:center;font-size:12.5px;margin-bottom:6px}
.c-time::before{content:"";position:absolute;left:12.5%;right:12.5%;top:9px;border-top:2px dotted var(--line)}
.c-time div{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px}
.c-time i{width:18px;height:18px;border-radius:50%;background:var(--bg);border:2px solid var(--line)}
.c-time .done i{background:var(--line)}
.c-time .now i{background:var(--o500);border-color:var(--o500);box-shadow:0 0 0 5px var(--o50)}
.c-time b{font-family:"Source Serif 4",serif;color:var(--ink);font-size:14px;font-weight:600}
.c-time .now b{color:var(--key)}
.c-tz{font-size:11.5px;color:var(--muted);margin:4px 0 14px;text-align:center}
.c-ix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin-bottom:12px}
.c-ix div{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--line);font-size:13px}
.c-ix b{font-weight:500;color:var(--ink)}
.c-cal{list-style:none;margin:0;padding:0}
.c-cal li{display:grid;grid-template-columns:6.5em minmax(0,1fr);gap:8px;padding:5px 0;border-bottom:1px solid var(--line);font-size:13px}
.c-cal b{font-family:"Source Serif 4","Noto Sans TC",serif;font-weight:600;color:var(--ink)}
.c-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,calc((100% - 48px)/4.3));gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin}
.cst{all:unset;box-sizing:border-box;cursor:pointer;scroll-snap-align:start;border-top:3px solid var(--ink);padding-top:10px;display:flex;flex-direction:column;gap:6px;min-width:0}
.cst:focus-visible{outline:2px solid var(--o500);outline-offset:3px}
.cst .no{font-family:"Source Serif 4",serif;font-weight:600;font-size:13px;color:var(--key);display:flex;justify-content:space-between;gap:6px}
.cst .no .chg{font-size:12px}
.cst h3{font-weight:700;font-size:16px;line-height:1.45;color:var(--ink);margin:0}
.cst:hover h3{text-decoration:underline;text-underline-offset:3px}
.cst .say{font-size:13.5px;line-height:1.7;background:var(--o50);border-radius:14px 14px 14px 4px;padding:9px 12px;color:var(--fg)}
.cst .say b{display:block;font-size:11.5px;color:var(--key);font-weight:500;margin-bottom:2px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .cst .say{background:#33210F}:root:not([data-theme="light"]) .c-time .now i{box-shadow:0 0 0 5px #33210F}}
:root[data-theme="dark"] .cst .say{background:#33210F}:root[data-theme="dark"] .c-time .now i{box-shadow:0 0 0 5px #33210F}
.c-chat{display:flex;flex-direction:column;gap:10px}
.c-q{align-self:flex-end;background:var(--ink);color:var(--bg);border-radius:18px 18px 4px 18px;padding:8px 14px;max-width:88%;font-size:14px}
.c-a{align-self:stretch;background:var(--sunk);border-radius:18px 18px 18px 4px;padding:12px 14px;display:flex;flex-direction:column;gap:9px}
.c-pills{display:flex;gap:6px;flex-wrap:wrap}
.c-pills button{border:0;background:var(--bg);border-radius:999px;padding:4px 12px;font-size:13px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink)}
.c-pills button[aria-pressed="true"]{background:var(--ink);color:var(--bg);box-shadow:none}
.c-a .chips .chip{border-radius:10px;border-color:transparent;background:var(--bg)}
.c-a .src{margin:0}
html body .two{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:16px 28px}
html body .chip{border-radius:999px}
html body .btn{border-radius:999px}
html body .lc-no{color:var(--o500)}
html body header.nav nav.links a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--o500);border-radius:0}
@media (max-width:900px){.cb{grid-template-columns:minmax(0,1fr)}.c-strip{grid-auto-columns:78%}}
@media (max-width:640px){
  html body{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}
  html body header.nav nav.links{position:fixed;left:0;right:0;bottom:0;z-index:15;margin:0;background:var(--bg);border-top:1px solid var(--line);display:flex;justify-content:space-around;gap:0;padding:4px max(8px,env(safe-area-inset-right,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));overflow:visible}
  html body header.nav nav.links a{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;padding:6px 2px;color:var(--muted);flex:1;text-align:center;white-space:nowrap}
  html body header.nav nav.links a::before{content:"";width:22px;height:4px;border-radius:2px;background:var(--line)}
  html body header.nav nav.links a[aria-current]{color:var(--ink);box-shadow:none;font-weight:500}
  html body header.nav nav.links a[aria-current]::before{background:var(--o500)}
  .c-hero{grid-template-columns:minmax(0,1fr) 84px;padding:16px}
  .c-hero svg{width:84px;height:84px}
  .c-hero .big{font-size:24px}
  .c-hero .ctas .btn{flex:1 1 0}
  html body .two{grid-template-columns:minmax(0,1fr)}
}

html body .nlt{font-size:13.5px;font-weight:500;line-height:1.5}
html body .nlst{padding:8px 4px}
/* 訂閱方案：橘框橘按鈕 */
html body #planCards .plan{border:1px solid var(--line);border-radius:18px;padding:16px 18px;background:var(--surface)}
html body #planCards .plan:last-child,html body #planCards .plan:has(.btn.accent){border:2px solid var(--o500);box-shadow:none}
html body #planCards .btn.accent{background:var(--o500);color:#331A00;border-color:var(--o500)}
html body #planCards .btn.accent:hover{filter:brightness(1.06)}
html body #planCards .bd{background:var(--o50);color:var(--o700)}
/* 供應鏈地圖上方：縮小、拿掉示範說明 */
#demoLine{display:none!important}
html body #map h2{font-size:16px}
html body #map .nlbar{padding:8px 10px;gap:6px;border-radius:12px}
html body #map .nlck{font-size:12.5px;gap:6px;font-weight:500}
html body #map .nlck input{width:15px;height:15px}
html body #map .nlf{gap:4px}
html body #map .fbtn{font-size:12px;min-height:26px;padding:1px 9px;gap:3px}
html body #map .picker{gap:4px}
html body #map .pk{font-size:12px;min-height:26px;padding:2px 9px}
html body #map .nlb{min-width:14px;height:14px;font-size:9.5px;padding:0 3px}
/* 小學堂：增添色彩（橘色系） */
html body #learn>h2{font-size:20px}
html body .lc-top{background:var(--o500);color:#331A00;border-radius:22px;padding:14px 16px;gap:10px 18px}
html body .lc-top .panel,html body .lc-top .lc-today,html body .lc-top .lc-meter{background:transparent;border:0;padding:0}
html body .lc-top b,html body .lc-top .note,html body .lc-top .big,html body .lc-top .big small,html body .lc-top .row,html body .lc-top .lc-meter button{color:#331A00}
html body .lc-top .lc-meter .note{opacity:.8}
html body .lc-top .lc-chip{background:#FFF6EC;border-color:transparent;color:#331A00}
html body .lc-top .lc-chip:hover{background:#FFFFFF}
html body .lc-top .lc-chip i{color:#CC6600}
html body .lc-top .lc-track{background:rgba(51,26,0,.18)}
html body .lc-top .lc-fill{background:#331A00}
html body .lc-ch{border-top-color:var(--line)}
html body .lc-no{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;font-size:19px!important;background:var(--o50);color:var(--o700)!important;font-weight:600}
html body .lc-ch:nth-child(3n+2) .lc-no{background:var(--o100)}
html body .lc-ch:nth-child(3n) .lc-no{background:var(--o200);color:var(--o900)!important}
html body .lc-u .t i{color:var(--o600)}
html body .lc-u .t em{color:var(--o600)}
html body .lc-u:hover{background:var(--o50)}
html body .lc-u[aria-pressed="true"]{background:var(--o50);box-shadow:inset 3px 0 0 var(--o500);padding-left:10px}
html body .lcr-k.kp{background:var(--o500);color:#331A00}
html body .lcr-k.kp h5{color:#331A00;opacity:.75}
html body .lcr-k h5{color:var(--o600)}
html body .ln-dict{border-top:3px solid var(--o500)}
html body .ln-cats button[aria-pressed="true"]{background:var(--o500);color:#331A00;border-color:var(--o500)}
html body .ln-sec h3::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--o500);margin-right:7px;vertical-align:.1em}
html body .ln-it summary b::after{color:var(--o600)}
html body .ln-it small{color:var(--o600)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body .lc-u:hover,:root:not([data-theme="light"]) body .lc-u[aria-pressed="true"]{background:#33210F}}
:root[data-theme="dark"] body .lc-u:hover,:root[data-theme="dark"] body .lc-u[aria-pressed="true"]{background:#33210F}
/* 訂閱方案：縮小，一進頁面就看到兩個方案 */
html body #plans{gap:8px}
html body #plans>h2{font-size:17px}
html body #planCards{gap:8px;max-width:760px}
html body #planCards .plan{padding:10px 14px 12px;gap:4px;border-radius:14px}
html body #planCards .plan>b{font-size:14px}
html body #planCards .plan .p{font-size:22px;line-height:1.15}
html body #planCards .plan .p small{font-size:12px}
html body #planCards .plan ul{font-size:13px;gap:0;line-height:1.6;margin:2px 0 4px}
html body #planCards .plan .btn{min-height:34px;padding:5px 14px;font-size:13px}
html body #planCards .bd{font-size:11px;padding:0 8px}
/* 116.02.01 收費後：未訂閱點「閱讀完整電子報」→ 左下角展開訂閱面板 */
.payt{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);padding:6px 0;border-bottom:1px dashed var(--line)}
.payt input{width:15px;height:15px;accent-color:var(--o500);margin:0}
.payt b{color:var(--ink);font-weight:500}
.nlpw{position:fixed;z-index:22;left:max(16px,env(safe-area-inset-left,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));width:min(420px,calc(100vw - 32px));max-height:min(86vh,720px);overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 56px rgba(51,26,0,.28);display:flex;flex-direction:column;transform-origin:bottom left}
.nlpw[hidden]{display:none}
.nlpw:focus{outline:none}
.nlpw-h{display:flex;align-items:center;gap:10px;padding:12px 12px 10px 16px;border-bottom:1px solid var(--line)}
.nlpw-h>div{flex:1;min-width:0;display:flex;flex-direction:column}
.nlpw-h .m{font-size:12px;color:var(--muted)}
.nlpw-h b{font-size:15px;color:var(--ink)}
.nlpw-b{padding:12px 16px 16px;display:flex;flex-direction:column;gap:10px}
.nlpw-t{font-family:"Noto Serif TC",serif!important;font-size:17px;font-weight:700;color:var(--ink);margin:0;line-height:1.4}
.nlpw-in{list-style:none;margin:0;padding:0;font-size:13px;border-top:1px solid var(--line)}
.nlpw-in li{display:flex;gap:8px;padding:5px 0;border-bottom:1px solid var(--line);color:var(--fg)}
.nlpw-in li::before{content:"🔒";font-size:11px;opacity:.7}
.nlpw-plan{border:2px solid var(--o500);border-radius:14px;padding:10px 14px 12px;display:flex;flex-direction:column;gap:6px}
.nlpw-plan .p{font-family:"Source Serif 4",serif;font-size:22px;color:var(--ink);line-height:1.1}
.nlpw-plan .p small{font-size:12px;color:var(--muted)}
.nlpw-plan .btn{background:var(--o500);color:#331A00;border-color:var(--o500);min-height:38px;font-size:14px}
.nlpw-plan .s{font-size:12px;color:var(--muted)}
.nlpw-log{font-size:12.5px;color:var(--muted);text-align:center}
.nlpw-log a{color:var(--ink)}
@media (max-width:640px){.nlpw{left:0;right:0;bottom:0;width:100%;border-radius:18px 18px 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom,0px)}}
@media (prefers-reduced-motion:no-preference){.nlpw:not([hidden]){animation:payIn .22s ease-out}@keyframes payIn{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}}

/* 正式上架：拿掉預覽用元素 */
.ribbon,#payT,.phonepv,.nlr-o{display:none!important}

/* 上架版：隱藏預覽用元素 */
.ribbon,#payT,.phonepv,.nlr-o{display:none!important}
