:root{--ink:#121e55;--blue:#182c8a;--deep:#101b62;--paper:#f4f6ff;--mist:#e8edff;--line:#c9d0ec;--coral:#ffd2c3;--sub:#465586;font-family:system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper);scroll-padding-top:1rem}
*{box-sizing:border-box}
body{margin:0;line-height:1.68}
a{color:var(--blue);text-underline-offset:.22em;text-decoration-thickness:.09em}
a:hover{text-decoration-thickness:.16em}
a:focus-visible{outline:2px solid #b94537;outline-offset:4px}
.skip{position:absolute;top:.5rem;left:.75rem;transform:translateY(-150%);z-index:5;background:white;padding:.6rem}
.skip:focus{transform:none}
.frame{width:min(1200px,calc(100% - 70px));margin-inline:auto}
.mast{background:#fff;border-bottom:1px solid var(--line)}
.mast .frame,.bottom .frame{display:flex;justify-content:space-between;align-items:center;gap:1.2rem}
.mast .frame{height:65px}
.wordmark{display:inline-flex;gap:.52rem;align-items:center;font-size:1.22rem;font-weight:780;text-decoration:none}
.wordmark svg{color:#b94537}
.mast nav,.bottom nav{display:flex;gap:1.3rem;align-items:center;flex-wrap:wrap;font-size:.88rem;font-weight:620}
.mast nav a{display:inline-flex;align-items:center;min-height:44px}
.mast [aria-current]{color:var(--sub)}
h1,h2,h3,p,dl,figure{margin:0}
h2{font-size:clamp(1.37rem,2.7vw,2.25rem);line-height:1.23;letter-spacing:-.027em}
.threshold{display:grid;grid-template-columns:1fr .9fr;grid-template-areas:"hero plaque";align-items:stretch;margin-block:clamp(18px,4vw,54px);background:var(--blue);color:#fff;border:1px solid var(--blue);box-shadow:0 10px 28px #14278215}
.placard{grid-area:plaque;padding:clamp(24px,3.6vw,58px);min-width:0}
.hero{grid-area:hero;position:relative;min-height:400px}
.hero img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:48% 63%;display:block}
.kicker{display:inline-block;font:720 .75rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;color:#464f81}
.placard .kicker{color:#fbc5b5;border-bottom:1px solid #a0ade3;padding-bottom:.45rem}
.placard h1{font-size:clamp(3.3rem,6.1vw,6.2rem);font-weight:820;letter-spacing:-.08em;line-height:1.02;margin:.4em 0 .29em}
.placard h1 span{display:block;letter-spacing:.02em;font-size:clamp(1.17rem,2.55vw,2.28rem);font-weight:700;line-height:1.16;margin-top:.43em}
.address{padding:.65rem .92rem .72rem;border-left:5px solid #ff947d;background:#101b62;margin-bottom:.7rem;max-width:max-content}
.address span{display:block;font-size:.77rem;color:#d8defb;margin-bottom:.18rem}
code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
.address code{font-size:clamp(1rem,2.3vw,1.56rem);font-weight:720;color:#fff}
.address b{color:#ffd2c3}
.placard p{color:#e4e9ff;max-width:37ch;font-size:.94rem}
.action{display:inline-flex;align-items:center;min-height:44px;color:var(--deep);text-decoration:none;background:var(--coral);padding:.56rem .9rem;font-weight:750;margin-top:1.05rem}
.action:focus-visible{outline-color:white}
.action:hover{background:white;text-decoration:underline}
.compare{background:var(--mist);border-block:1px solid var(--line);padding:clamp(27px,4.6vw,63px) 0}
.compare-grid{display:grid;grid-template-columns:minmax(190px,.73fr) minmax(0,1.27fr);align-items:start;gap:clamp(21px,5.6vw,75px)}
.compare h2{margin:.46rem 0 .65rem}
.compare p:not(.kicker),.alias-row p,.support-entry p{color:var(--sub)}
.host-table{display:grid}
.host-table div{display:grid;grid-template-columns:minmax(8.8em,.55fr) minmax(0,1fr);gap:.3rem .7rem;border-top:1px solid #bfc8ea;padding:.72rem 0;align-items:baseline}
.host-table div:last-child{border-bottom:1px solid #bfc8ea}
.host-table dt{font-weight:730;font-size:.92rem}
.host-table dd{margin:0}
.host-table code{font-size:clamp(.84rem,1.6vw,1.07rem);font-weight:740}
.host-table small{display:block;color:var(--sub);font-size:.8rem;margin-top:.16rem}
.alias-row{display:grid;grid-template-columns: minmax(120px,21%) 1fr;gap:.55rem 1.2rem;padding:clamp(24px,4.1vw,58px) 0;border-bottom:1px solid var(--line)}
.alias-row p{margin-top:.45rem}
.alias-row code{background:#e1e8ff;padding:.08em .16em}
.help{padding:clamp(24px,4vw,51px) 0}
.reading-links{display:grid;grid-template-columns:1fr 1fr;gap:.76rem;margin-top:.82rem}
.support-entry{padding:.8rem 1rem;background:white;border:1px solid var(--line);border-top:4px solid var(--blue)}
.support-entry h3{line-height:1.4;font-size:1.03rem}
.support-entry p{font-size:.88rem;margin-top:.34rem}
.manual{max-width:860px;padding-block:clamp(23px,5vw,64px)}
.manual h1{font-size:clamp(1.85rem,4.6vw,3.4rem);line-height:1.18;letter-spacing:-.035em;margin:.45rem 0 .72rem}
.crumb{display:flex;flex-wrap:wrap;gap:.56rem;font-size:.82rem;margin-bottom:.85rem;color:var(--sub)}
.article-heading time{font:600 .77rem/1.5 ui-monospace,monospace;color:var(--sub)}
.route-body,.prose{max-width:68ch}
.route-body p,.prose p{margin:.7rem 0}
.route-body h2,.prose h2{margin:1.35rem 0 .52rem;font-size:clamp(1.15rem,2.35vw,1.58rem)}
.answer{background:var(--mist);border-left:4px solid var(--blue);padding:.8rem .95rem;font-weight:690}
.outcomes{margin:1rem 0;border:1px solid var(--line);background:white}
.outcomes section{padding:.88rem 1rem}
.outcomes section+section{border-top:1px solid var(--line)}
.outcomes h2{margin:0}
.outcomes p{margin:.36rem 0 0}
.further{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin-top:1.25rem;padding-top:.75rem;border-top:1px solid var(--line);font-size:.9rem}
.bottom{background:var(--deep);color:white}
.bottom .frame{align-items:flex-start;padding:1.4rem 0 1.65rem}
.bottom p,.bottom a,.bottom span{color:#e1e7ff;font-size:.82rem}
@media(max-width:850px){.frame{width:calc(100% - 42px)}.hero{min-height:330px}.host-table div{grid-template-columns:minmax(6.5em,.55fr) minmax(0,1fr)}}
@media(max-width:640px){
 .frame{width:calc(100% - 28px)}.mast .frame{height:56px}.mast nav{gap:.9rem;font-size:.8rem}
 .threshold{display:flex;flex-direction:column;width:100%;margin:0;border:0;box-shadow:none}
 .placard{padding:1.25rem 1rem 1.35rem}.placard h1{font-size:3.25rem;margin:.3em 0 .3em}.placard h1 span{font-size:1.36rem}
 .hero{min-height:0;height:clamp(190px,61vw,280px)}.hero img{object-position:48% 60%}
 .compare-grid,.alias-row{display:block}.alias-row .kicker{margin-bottom:.4rem}.host-table div{grid-template-columns:minmax(6.2em,.43fr) minmax(0,1fr)}
 .reading-links{grid-template-columns:1fr}.bottom .frame{display:block}.bottom nav{margin-top:.68rem}
}
