:root{--ink:#142d3b;--muted:#526776;--line:#dce5eb;--blue:#124fdf;--navy:#102a39;--pale:#f3f7fa;--orange:#f45b36}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;color:var(--ink);background:#fff;font-family:Inter,"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;font-size:17px;line-height:1.85}a{color:var(--blue);text-underline-offset:4px}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #f45b36;outline-offset:5px}button{font:inherit}.skip{position:fixed;top:-100px;left:20px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.rail{position:fixed;inset:0 auto 0 0;width:264px;background:var(--navy);color:#fff;padding:34px 25px;display:flex;flex-direction:column;z-index:10;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:750;font-size:20px;line-height:1.45}.mark{font-size:21px;background:var(--orange);width:36px;height:36px;display:grid;place-items:center;border-radius:7px;flex-shrink:0}.brand small{font-size:12px;display:block;letter-spacing:2px;color:#b9cbd7;font-weight:500;margin-top:6px}.rail-label{color:#adc3d1;font-size:12px;letter-spacing:2px;margin:42px 12px 12px}.rail nav a{display:flex;gap:13px;padding:11px 12px;color:#ccdae2;text-decoration:none;border-radius:6px;font-size:15px;margin-bottom:4px;line-height:1.5}.rail nav a span{color:#89a6b7;font-size:12px;padding-top:3px}.rail nav a.active,.rail nav a:hover{background:#234253;color:white}.rail nav a.active{box-shadow:inset 3px 0 var(--orange)}.rail-foot{margin-top:auto;padding-top:38px;font-size:12px;color:#b1c4d0}.rail-foot a{color:#d5e4ed;font-size:14px}.mobile-header{display:none}.page{margin-left:264px}.topbar{border-bottom:1px solid var(--line);padding:18px 6%;display:flex;justify-content:space-between;gap:15px;font-size:14px;color:var(--muted)}.topbar b{font-weight:500;color:var(--ink)}main{max-width:1230px;padding:48px 6% 70px;margin:auto}section{padding:44px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}section:first-child{padding-top:0}.eyebrow{font-size:13px;letter-spacing:2px;color:var(--blue);font-weight:700;margin-bottom:18px}.intro-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:40px;align-items:center}h1{font-size:clamp(38px,4.1vw,60px);letter-spacing:-1.5px;line-height:1.2;margin:0 0 23px;font-weight:750}h1 span{display:block;font-size:.6em;letter-spacing:0;margin-top:14px}h2{font-size:30px;line-height:1.5;margin:0 0 16px;letter-spacing:-.6px}h3{font-size:20px;line-height:1.5;margin:0 0 10px}p{margin:0 0 17px}.lead{font-size:19px;line-height:1.9;max-width:660px}.meta{font-size:13px;color:var(--muted)}.pill{display:inline-block;font-size:12px;line-height:1.7;padding:3px 9px;background:#e9efff;color:#214fac;border-radius:4px;font-weight:650;vertical-align:middle}.pill.beta{background:#fff0d9;color:#855209}.pill.linked{background:#edf2f5;color:#516572}.hero-box{background:var(--navy);padding:25px;color:#fff;border-radius:10px;position:relative}.hero-box .label{font-size:12px;letter-spacing:2px;color:#b8cfdf;margin-bottom:15px}.stack-row{display:flex;gap:7px;flex-wrap:wrap}.stack-row span{background:#29495c;padding:5px 11px;font-size:14px;border:1px solid #48677b;border-radius:4px}.gateway{border:1px solid #fa7f60;background:#243d4b;margin:20px 0;padding:17px;text-align:center}.gateway strong{font-size:23px;display:block}.gateway small{font-size:13px;color:#d6e3eb}.connector{height:16px;border-left:1px solid #7091a6;margin-left:50%;margin-top:-16px}.foundation{border-top:1px solid #4d697a;margin-top:22px;padding-top:15px;font-size:14px;color:#bed0dc}.foundation b{display:block;color:#fff}.quick-values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:35px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.quick-values article{padding:23px;border-right:1px solid var(--line)}.quick-values article:last-child{border:0}.quick-values h3{font-size:18px}.quick-values p{font-size:15px;color:var(--muted);margin:0}.big-num{font-size:12px;color:var(--blue);font-weight:700;letter-spacing:2px;margin-bottom:8px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.section-head .number{font-size:14px;color:var(--blue);font-weight:700}.callout{padding:20px 24px;background:#eef4ff;border-left:3px solid var(--blue);margin:25px 0;border-radius:0 6px 6px 0}.callout p:last-child{margin-bottom:0}.callout.warn{background:#fff5e5;border-color:#d19733}.callout strong{color:var(--ink)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{padding:24px;background:var(--pale);border-radius:8px}.card p:last-child{margin:0}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:7px;margin:24px 0}table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.8}th{text-align:left;font-weight:650;background:#edf3f7;color:#2b485a}th,td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}tr:last-child td{border:0}td:first-child{font-weight:650;min-width:150px}td p{margin:0}.sources-inline{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;margin-top:12px}.sources-inline a{color:#365c78}.feature-group{font-size:14px;font-weight:650;color:var(--blue);letter-spacing:1px;margin:32px 0 12px}.feature{border:1px solid var(--line);border-radius:8px;margin-bottom:12px;overflow:hidden}.feature summary{display:grid;grid-template-columns:38px 1fr auto 20px;gap:13px;align-items:center;padding:20px 22px;cursor:pointer;list-style:none}.feature summary::-webkit-details-marker{display:none}.feature summary::after{content:'＋';font-size:20px;color:var(--muted)}.feature[open] summary::after{content:'−'}.feature[open] summary{background:#f5f8fc;border-bottom:1px solid var(--line)}.feature summary:hover{background:#f5f8fc}.feature-icon{font-size:13px;color:#406786;background:#ecf2f7;display:grid;place-items:center;width:35px;height:35px;border-radius:6px}.feature-title{font-size:18px;font-weight:650;line-height:1.55}.feature-title small{font-size:13px;color:var(--muted);font-weight:400;display:block;margin-top:3px}.feature-body{padding:23px 26px}.feature-body p{font-size:16px}.feature-body .example{background:var(--pale);padding:14px 18px;font-size:15px;margin:18px 0}.feature-body .note{font-size:14px;color:#76602e}.feature-actions{display:flex;gap:14px;margin:20px 0}button.subtle{background:white;border:1px solid #b6c9d5;color:#244b65;border-radius:5px;padding:6px 14px;font-size:14px;cursor:pointer}button.subtle:hover{background:var(--pale)}.journey{counter-reset:journey;padding-left:0;list-style:none}.journey li{position:relative;padding:0 0 27px 54px;border-left:1px solid #c9d8e2;margin-left:17px}.journey li:last-child{border:0;padding-bottom:0}.journey li::before{counter-increment:journey;content:counter(journey);position:absolute;left:-18px;top:0;border:1px solid #c9d8e2;background:white;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;color:var(--blue);font-size:14px}.journey h3{font-size:19px}.journey p{font-size:16px;color:var(--muted)}.scenario{border:1px solid var(--line);padding:25px;border-radius:8px}.scenario .who{font-size:12px;color:var(--blue);letter-spacing:2px;margin-bottom:10px}.scenario p{font-size:16px}.metric{font-size:14px;border-top:1px solid var(--line);padding-top:12px;margin:0!important;color:#3b5d75}.glossary{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.glossary div{padding:17px 0;border-bottom:1px solid var(--line)}.glossary dt{font-weight:650;font-size:16px}.glossary dd{margin:5px 0 0;color:var(--muted);font-size:15px}.source-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 25px;counter-reset:source}.source-list li{border-bottom:1px solid var(--line);padding:16px 0;display:flex;gap:12px;font-size:14px;line-height:1.7}.source-list li:before{counter-increment:source;content:counter(source,decimal-leading-zero);font-size:12px;color:#56738a;padding-top:3px}.source-list a{font-weight:600;text-decoration:none}.source-list small{display:block;font-size:12px;color:var(--muted);font-weight:400}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:600;cursor:pointer}.faq p{margin:15px 0 0;color:var(--muted);font-size:16px}.footer{font-size:13px;color:var(--muted);padding:30px 0}.backtop{color:var(--blue);text-decoration:none;float:right}.menu-btn{background:none;border:1px solid #567281;color:white;border-radius:4px;padding:4px 10px}.reading-bar{height:3px;background:var(--orange);position:fixed;top:0;left:264px;width:0;z-index:12}code{background:#eef2f6;padding:2px 5px;border-radius:3px;font-size:.88em;overflow-wrap:anywhere}ul{padding-left:22px}li{margin-bottom:6px}.compact{font-size:15px;color:var(--muted)}@media(min-width:1600px){main{padding-left:65px;padding-right:65px}}@media(max-width:1100px){.rail{width:225px;padding:30px 18px}.page{margin-left:225px}.reading-bar{left:225px}.intro-grid{grid-template-columns:1fr;gap:25px}.hero-box{max-width:650px}.stack-row{justify-content:center}.foundation{text-align:center}.quick-values article{padding:17px}main{padding-left:5%;padding-right:5%}}@media(max-width:760px){html{scroll-padding-top:80px}.mobile-header{display:flex;position:sticky;top:0;z-index:15;background:var(--navy);color:white;padding:12px 18px;justify-content:space-between;align-items:center;font-size:15px}.rail{display:none;top:60px;width:100%;bottom:auto;max-height:calc(100dvh - 60px);padding:15px 20px;box-shadow:0 10px 25px #102a3933}.rail.open{display:block}.rail .brand,.rail .rail-label,.rail-foot{display:none}.rail nav{display:grid;grid-template-columns:1fr 1fr}.page{margin-left:0}.reading-bar{left:0;top:60px}.topbar{padding:13px 20px;font-size:12px}.topbar span:last-child{display:none}main{padding:32px 22px 20px}h1{font-size:43px}h2{font-size:27px}.intro-grid{gap:20px}.lead{font-size:17px}.quick-values{grid-template-columns:1fr}.quick-values article{border-right:0;border-bottom:1px solid var(--line);padding:18px 20px}.quick-values article:last-child{border:0}.grid2,.glossary,.source-list{grid-template-columns:1fr}.feature summary{grid-template-columns:28px 1fr 18px;gap:10px;padding:17px 14px}.feature summary>.pill{grid-column:2;justify-self:start;grid-row:2}.feature summary::after{grid-column:3;grid-row:1}.feature-icon{width:28px;height:28px}.feature-body{padding:18px}.feature-title{font-size:17px}.feature-title small{font-size:12px}.callout{padding:17px}section{padding:34px 0}.section-head{gap:10px}th,td{padding:12px;min-width:170px}td:first-child{min-width:135px}.table-wrap{margin:20px 0}.hero-box{padding:20px}.journey li{padding-left:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.rail,.mobile-header,.topbar,.reading-bar,.feature-actions{display:none}.page{margin:0}main{max-width:none;padding:0}section{break-inside:auto}.grid2{display:block}.scenario{margin-bottom:15px}a{color:#142d3b}.feature{break-inside:avoid}body{font-size:12pt}}

/* Desktop reading layout: wider canvas, bounded prose, roomier detail panels. */
@media screen and (min-width:761px){
  main{max-width:1512px;padding:56px clamp(32px,3.4vw,64px) 88px}
  .topbar{padding:20px clamp(32px,3.4vw,64px);gap:24px}
  section{padding:64px 0;scroll-margin-top:32px}
  .eyebrow{margin-bottom:24px;font-size:14px}
  h2{line-height:1.55;margin-bottom:24px}
  h3{margin-bottom:16px}
  p{margin-bottom:24px}
  main>section>p,main>section>ul{max-width:80ch}
  .intro-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:48px;align-items:center}
  .intro-grid>*{min-width:0}
  h1{font-size:clamp(42px,3.2vw,58px);line-height:1.25;letter-spacing:-1px;margin-bottom:28px}
  h1 span{font-size:clamp(28px,2.1vw,36px);line-height:1.6;margin-top:20px}
  .lead{font-size:19px;line-height:2;max-width:60ch}
  .hero-box{padding:32px;max-width:none}
  .hero-box .label{font-size:13px;margin-bottom:20px}
  .stack-row{gap:12px}
  .gateway{padding:24px 18px;margin:28px 0}
  .gateway strong{font-size:24px}
  .gateway small{font-size:14px}
  .foundation{margin-top:28px;padding-top:20px}
  .quick-values{margin-top:44px}
  .quick-values article{padding:28px 30px}
  .quick-values h3{font-size:20px;margin-bottom:12px}
  .quick-values p{font-size:16px;line-height:1.95}
  .section-head{flex-wrap:wrap;align-items:baseline;gap:8px 28px;margin-bottom:12px}
  .section-head h2{margin-bottom:8px}
  .section-head .number{white-space:nowrap}
  .callout{padding:28px 32px;margin:32px 0;line-height:2}
  .callout>strong{display:block;margin-bottom:12px}
  .callout p{max-width:82ch}
  .grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
  .card,.scenario{padding:32px;min-width:0}
  .card p,.scenario p{font-size:17px;line-height:2}
  .scenario .who{font-size:13px;margin-bottom:14px}
  .scenario .metric{font-size:16px;padding-top:20px;margin-top:28px!important;line-height:1.9}
  .scenario>.sources-inline,.card>.sources-inline{display:grid;gap:9px;margin-top:24px}
  .table-wrap{margin:32px 0}
  table{font-size:16px;line-height:1.95;table-layout:fixed}
  th,td{padding:22px 24px;overflow-wrap:anywhere}
  th:first-child{width:24%}
  td:first-child{font-weight:600;min-width:0}
  .feature-group{margin:44px 0 18px;font-size:15px}
  .feature{margin-bottom:18px}
  .feature summary{grid-template-columns:40px minmax(0,1fr) auto 24px;gap:20px;padding:26px 30px}
  .feature-title{font-size:20px;line-height:1.65}
  .feature-title small{font-size:14px;margin-top:6px}
  .feature-icon{width:40px;height:40px;font-size:14px}
  .feature summary>.pill{white-space:nowrap;font-size:13px;padding:5px 12px}
  .feature-body{padding:32px 40px 36px}
  .feature-body>p{font-size:17px;line-height:2;max-width:80ch;margin-bottom:24px}
  .feature-body .example{padding:22px 26px;font-size:17px;line-height:2;margin:26px 0;max-width:86ch}
  .feature-body .note{font-size:16px;line-height:2}
  .feature-actions{margin:26px 0 32px;gap:16px}
  button.subtle{padding:9px 18px;font-size:15px}
  .sources-inline{font-size:14px;line-height:1.9;gap:10px 24px;margin-top:20px}
  .sources-inline a{overflow-wrap:anywhere}
  .journey{margin-top:32px;margin-bottom:36px}
  .journey li{padding-bottom:38px;padding-left:56px}
  .journey h3{font-size:20px;margin-bottom:12px}
  .journey p{font-size:17px;line-height:2;max-width:78ch}
  .glossary{gap:0 44px}
  .glossary div{padding:24px 0}
  .glossary dt{font-size:17px}
  .glossary dd{font-size:16px;line-height:2;margin-top:10px}
  .source-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:44px}
  .source-list li{padding:22px 0;gap:16px;font-size:16px}
  .source-list small{font-size:13px;margin-top:7px}
  .faq details{padding:26px 0}
  .faq summary{font-size:18px;line-height:1.8}
  .faq p{font-size:17px;line-height:2;max-width:80ch;margin-top:22px}
  .rail nav a{padding-top:13px;padding-bottom:13px}
}
@media screen and (min-width:761px) and (max-width:1439px){
  .grid2{grid-template-columns:minmax(0,1fr);gap:24px}
  .card p,.scenario p{max-width:78ch}
  .quick-values article{padding:24px}
  .intro-grid{gap:32px}
}
@media screen and (min-width:761px) and (max-width:1199px){
  .intro-grid{grid-template-columns:minmax(0,1fr)}
  .hero-box{max-width:720px}
  .feature summary{padding:24px;gap:16px}
  .feature-body{padding:28px}
  th,td{padding:18px}
  .quick-values{grid-template-columns:minmax(0,1fr)}
  .quick-values article{border-right:0;border-bottom:1px solid var(--line)}
  .quick-values article:last-child{border-bottom:0}
  .glossary,.source-list{grid-template-columns:minmax(0,1fr)}
}
