:root{
  color-scheme:light;
  --bg:#F9F2E5;
  --bg-top:#FCF7EE;
  --bg-bottom:#F3EAD9;
  --panel:#FFFBF4;
  --panel-2:#EFE6D4;
  --border:#E3D7C1;
  --accent:#3FD98A;
  --accent-dark:#157A47;
  --text:#2A2119;
  --muted:#75685A;
  --success:#2E9E5B;
  --warn:#C9861A;
  --error:#C2412D;
  --cocoa:#2B211A;
  --cocoa-deep:#1D1611;
  --cocoa-desk:#3C2F24;
  --cocoa-desk-2:#30251C;
  --ink-black:#0E0A07;
  --alu-hi:#EFEBE4;
  --alu:#CBC5BB;
  --alu-lo:#958E84;
  --bezel:#17120E;
  --lamp:#F2BA5C;
  --on-dark:#FFFBF4;
  --flag-red:#C8372D;
  --flag-white:#FFFBF4;
  --flag-blue:#2C3D6E;
  --flag-green:#1D8A4E;
  --mask-solid:#000;
  --clear:transparent;
  --on-dark-soft:color-mix(in srgb,var(--on-dark) 72%,transparent);
  --on-dark-faint:color-mix(in srgb,var(--on-dark) 36%,transparent);
  --mint-soft:color-mix(in srgb,var(--accent) 15%,var(--panel));
  --mint-mid:color-mix(in srgb,var(--accent) 34%,var(--panel));
  --mint-line:color-mix(in srgb,var(--accent) 36%,var(--border));
  --shadow-soft:0 32px 72px -24px color-mix(in srgb,var(--text) 22%,transparent),0 8px 22px -10px color-mix(in srgb,var(--text) 10%,transparent);
  --shadow-card:0 8px 22px -10px color-mix(in srgb,var(--text) 14%,transparent);
  --shadow-on-cocoa:0 24px 40px -14px color-mix(in srgb,var(--ink-black) 72%,transparent),0 4px 10px -4px color-mix(in srgb,var(--ink-black) 50%,transparent);
  --hi-edge:inset 0 1px 0 color-mix(in srgb,var(--panel) 90%,transparent);
  --r-btn:10px;
  --r-card:20px;
  --r-plate:24px;
  --r-win:12px;
  --r-sm:6px;
  --r-chip:8px;
  --r-round:50%;
  --r-focus:4px;
  --font-display:"Inter","Noto Sans SC","PingFang SC","Hiragino Sans","Apple SD Gothic Neo","Microsoft YaHei",system-ui,sans-serif;
  --font-body:"Inter","Noto Sans SC","PingFang SC","Hiragino Sans","Malgun Gothic","Microsoft YaHei",system-ui,sans-serif;
  --font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --font-hand:"Kaiti SC","STKaiti","KaiTi","BiauKai","Noto Sans SC",serif;
  --wrap:1312px;
  --reading:800px;
  --gutter:32px;
  --header-height:56px;
  --anchor-gap:80px;
  --toc-offset:12px;
  --toc-clearance:96px;
  --ease:cubic-bezier(.2,.65,.3,1);
  --fast:180ms;
  --reveal-time:550ms;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--anchor-gap);scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--text);background-color:var(--bg);background-image:linear-gradient(180deg,var(--bg-top) 0,var(--bg-bottom) 860px,var(--bg) 1400px);background-repeat:no-repeat;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-underline-offset:.2em}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button,select,input,textarea{color:var(--text)}
button{border:0}
img{display:block;max-width:100%;height:auto}
svg{vertical-align:middle;flex-shrink:0}
p{margin:0}
h1,h2,h3,h4{font-family:var(--font-display);line-height:1.25;text-wrap:balance}
h1{font-size:clamp(52px,4.6vw,66px);font-weight:900;letter-spacing:-.02em;line-height:1.1}
h2{font-size:clamp(28px,3vw,40px);font-weight:800;letter-spacing:-.02em}
h3{font-size:22px;font-weight:750}
h1,h2,h3,h4{margin-top:0}
ul,ol{padding-left:1.5em}
li+li{margin-top:.3em}
.grid>*{min-width:0}
section,article,main,aside,nav,div{min-width:0}
code{font-family:var(--font-mono);font-size:.9em;overflow-wrap:anywhere}
pre{max-width:100%;overflow-x:auto;padding:20px;border-radius:var(--r-win);background:var(--panel-2);color:var(--text);font-family:var(--font-mono);overscroll-behavior-x:contain}
pre code{overflow-wrap:normal;white-space:pre}
table{border-collapse:collapse}
:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px;border-radius:var(--r-focus)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:16px;top:-64px;z-index:60;padding:8px 14px;border-radius:var(--r-btn);background:var(--panel);color:var(--text);text-decoration:none;font-weight:600;box-shadow:var(--shadow-card)}
.skip:focus{top:12px}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter)*2);padding-inline:var(--gutter);margin-inline:auto}
.reading-wrap{width:100%;max-width:calc(var(--reading) + var(--gutter)*2);padding-inline:var(--gutter);margin-inline:auto}
.sec{padding-top:64px;padding-bottom:64px}
.no-break{white-space:nowrap}
.muted{color:var(--muted)}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--muted)}
.panel,.card{padding:28px;border-radius:var(--r-card);background:var(--panel);box-shadow:var(--hi-edge),var(--shadow-card)}
.panel-warm{background:var(--panel-2);box-shadow:var(--shadow-soft)}
.grid{display:grid;gap:24px}
.grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.grain{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;opacity:.03;mix-blend-mode:multiply;z-index:0}
.topbar{position:relative;z-index:30;background:var(--cocoa);color:var(--on-dark);box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--on-dark) 7%,transparent)}
.topbar-in{display:flex;align-items:center;gap:28px;height:var(--header-height)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.topbar .brand{color:var(--on-dark)}
.logo-mark{width:30px;height:30px;flex:none;border-radius:var(--r-round)}
.brand-word{font-family:var(--font-display);font-weight:800;font-size:19px;letter-spacing:-.02em;line-height:1}
.brand-zh{font-weight:500;color:var(--on-dark-soft);font-size:14px}
.mainnav{flex:1;display:flex;justify-content:center;min-width:0}
.dotnav{display:flex;align-items:center;list-style:none;margin:0;padding:0}
.dotnav li{display:flex;align-items:center;margin:0}
.dotnav li+li::before{content:"·";padding:0 9px;color:var(--on-dark-faint);font-weight:700}
.dotnav a{position:relative;display:inline-flex;align-items:center;min-height:28px;padding:6px 0;font-size:14px;white-space:nowrap;text-decoration:none;color:var(--on-dark-soft)}
.dotnav a:hover{color:var(--on-dark)}
.dotnav a[aria-current="page"]{color:var(--on-dark);font-weight:600}
.dotnav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:var(--r-focus);background:var(--accent)}
.tools{display:flex;align-items:center;gap:10px;flex:none}
.language-picker{position:relative}
.lang{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:34px;width:auto;padding:6px 8px;border:0;border-radius:var(--r-chip);background:var(--clear);color:var(--on-dark-soft);font:inherit;font-size:13.5px;white-space:nowrap;cursor:pointer}
.lang span{white-space:nowrap}
.lang:hover{color:var(--on-dark)}
.lang svg{width:16px;height:16px}
.language-list{position:absolute;right:0;top:calc(100% + 12px);min-width:180px;padding:8px;margin:0;list-style:none;background:var(--cocoa);border-radius:var(--r-win);box-shadow:var(--shadow-soft)}
.language-list li{margin:0}
.language-list a{display:flex;align-items:center;min-height:44px;padding:8px 12px;text-decoration:none;color:var(--on-dark-soft);border-radius:var(--r-sm)}
.language-list a:hover,.language-list a[aria-current="true"]{background:var(--cocoa-desk);color:var(--on-dark)}
.pill{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 16px;border-radius:var(--r-btn);font-size:14px;font-weight:600;white-space:nowrap;text-decoration:none;transition:transform var(--fast) var(--ease)}
.pill:hover{transform:translateY(-1px)}
.pill-ghost{color:var(--on-dark);background:var(--clear);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--on-dark) 70%,transparent)}
.pill-mint{color:var(--text);background:var(--accent);box-shadow:var(--hi-edge)}
.menu-toggle{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border-radius:var(--r-chip);background:var(--clear);color:var(--on-dark)}
.menu-toggle svg{width:22px;height:22px}
.mobile-drawer{display:none}
html.nav-open{overflow:hidden}
.nav-veil{position:fixed;inset:var(--header-height) 0 0;background:color-mix(in srgb,var(--ink-black) 42%,transparent);z-index:28}
.navmenu{display:none;position:relative;flex:none}
.navmenu summary{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px 8px;border-radius:var(--r-chip);list-style:none;cursor:pointer;color:var(--on-dark);font-size:14px}
.navmenu summary::-webkit-details-marker{display:none}
.navmenu ul{position:absolute;right:0;top:100%;display:grid;gap:2px;min-width:220px;max-height:calc(100dvh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;margin:0;padding:8px;list-style:none;border-radius:var(--r-win);background:var(--cocoa);box-shadow:var(--shadow-soft)}
.navmenu li{margin:0}
.navmenu a{display:flex;align-items:center;min-height:44px;width:100%;padding:9px 12px;border-radius:var(--r-chip);font-size:14px;text-decoration:none;color:var(--on-dark-soft)}
main{position:relative;z-index:1}
.hero{position:relative;overflow-x:clip;max-width:100%;padding-top:72px;padding-bottom:80px}
.hero-grid{display:grid;grid-template-columns:46fr 54fr;gap:48px;align-items:center}
.copy{position:relative;z-index:2;min-width:0}
.badge{display:inline-flex;align-items:center;gap:10px;min-height:32px;max-width:100%;padding:5px 14px 5px 12px;border-radius:var(--r-chip);background:var(--panel);font-size:13px;font-weight:600;color:var(--text);box-shadow:var(--hi-edge),0 0 0 1px var(--border),var(--shadow-card)}
.badge-dot{width:8px;height:8px;flex-shrink:0;border-radius:var(--r-round);background:var(--accent);box-shadow:0 0 0 4px var(--mint-soft)}
.h1{margin:24px 0 0;font-family:var(--font-display);font-weight:900;font-size:clamp(52px,4.6vw,66px);line-height:1.1;letter-spacing:-.02em;color:var(--text)}
.h1-brand{display:block}
.h1-line{display:block;margin-top:2px}
.hl{background-image:linear-gradient(180deg,transparent 64%,var(--mint-mid) 64%,var(--mint-mid) 92%,transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .04em}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 28px;border-radius:var(--r-btn);font-size:16.5px;font-weight:700;line-height:1.4;white-space:nowrap;text-decoration:none;flex-shrink:0;transition:transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(1px)}
.btn svg{width:18px;height:18px}
.btn-mint,.btn-primary{color:var(--text);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 86%,var(--panel)),var(--accent));box-shadow:var(--hi-edge),0 0 0 1px color-mix(in srgb,var(--accent-dark) 22%,transparent),0 16px 30px -16px color-mix(in srgb,var(--accent-dark) 70%,transparent)}
.btn-line,.btn-secondary{color:var(--text);background:var(--clear);box-shadow:inset 0 0 0 1.5px var(--text)}
.btn-dark{color:var(--panel);background:var(--text);box-shadow:0 14px 28px -16px color-mix(in srgb,var(--text) 60%,transparent)}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
.btn-small{min-height:44px;padding:10px 18px;font-size:14px}
.lede{margin-top:28px;max-width:34em;font-size:17px;line-height:1.75;color:var(--muted)}
.lede strong{color:var(--text);font-weight:700}
.trust{display:flex;flex-wrap:wrap;margin:20px 0 0;padding:0;list-style:none;font-size:13px;color:var(--muted)}
.trust li{display:flex;align-items:center;white-space:nowrap;margin:0}
.trust li+li::before{content:"•";margin:0 10px;color:color-mix(in srgb,var(--muted) 60%,transparent);flex-shrink:0}
.marks{display:grid;gap:14px;margin-top:32px;padding-top:22px;border-top:1px dashed var(--border)}
.mark-row{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center}
.mark-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:color-mix(in srgb,var(--muted) 82%,transparent)}
.mark-list{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;color:var(--muted)}
.mark-list li{display:flex;align-items:center;gap:7px;font-size:13.5px;font-weight:500;white-space:nowrap;margin:0}
.pf-ico{width:18px;height:18px;flex:none;fill:currentColor}
.flag{position:relative;display:inline-block;flex:none;width:24px;height:16px;border-radius:var(--r-focus);overflow:hidden;box-shadow:0 1px 2px color-mix(in srgb,var(--text) 18%,transparent)}
.flag svg{display:block;width:100%;height:100%}
.flag::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 .5px color-mix(in srgb,var(--text) 24%,transparent)}
.flag-s{width:18px;height:12px;border-radius:var(--r-focus)}
.f-r{fill:var(--flag-red)}
.f-w{fill:var(--flag-white)}
.f-b{fill:var(--flag-blue)}
.f-g{fill:var(--flag-green)}
.scene{position:relative;z-index:1;margin:0}
.plate{position:relative;isolation:isolate;padding:100px 28px 126px 136px;border-radius:var(--r-plate);background:var(--cocoa);box-shadow:var(--shadow-soft)}
.plate-bg{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:inherit;background:radial-gradient(ellipse 46% 40% at 12% 4%,color-mix(in srgb,var(--lamp) 52%,transparent) 0%,color-mix(in srgb,var(--lamp) 16%,transparent) 48%,transparent 100%),radial-gradient(ellipse 80% 70% at 18% 10%,color-mix(in srgb,var(--lamp) 12%,transparent),transparent 70%),linear-gradient(180deg,color-mix(in srgb,var(--cocoa) 88%,var(--lamp)) 0%,var(--cocoa) 45%,var(--cocoa-deep) 100%);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--lamp) 30%,transparent),inset 0 0 0 1px color-mix(in srgb,var(--on-dark) 5%,transparent)}
.plate-bg::before{content:"";position:absolute;left:0;right:0;bottom:0;height:30%;background:radial-gradient(ellipse 60% 90% at 22% 0%,color-mix(in srgb,var(--lamp) 14%,transparent),transparent 70%),linear-gradient(180deg,var(--cocoa-desk),var(--cocoa-desk-2));box-shadow:inset 0 1px 0 color-mix(in srgb,var(--lamp) 26%,transparent)}
.laptop{position:relative}
.lid{position:relative;padding:2px;border-radius:var(--r-card) var(--r-card) var(--r-sm) var(--r-sm);background:linear-gradient(165deg,var(--alu-hi),var(--alu) 40%,var(--alu-lo));box-shadow:inset 0 1px 0 var(--panel),var(--shadow-on-cocoa)}
.bezel{position:relative;padding:12px 12px 14px;border-radius:var(--r-card) var(--r-card) var(--r-sm) var(--r-sm);background:var(--bezel)}
.cam{position:absolute;top:5px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:var(--r-round);background:color-mix(in srgb,var(--alu-lo) 50%,var(--bezel))}
.screen{position:relative;padding:14px;overflow:hidden;border-radius:var(--r-sm);background:radial-gradient(ellipse 70% 60% at 0 0,color-mix(in srgb,var(--lamp) 24%,transparent),transparent 70%),radial-gradient(ellipse 60% 60% at 100% 100%,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%),linear-gradient(160deg,var(--cocoa-desk),var(--cocoa-deep))}
.screen::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(118deg,color-mix(in srgb,var(--panel) 7%,transparent) 0 32%,transparent 32.2%)}
.deck{position:relative;height:18px;margin:0 -18px;border-radius:var(--r-sm) var(--r-sm) var(--r-card) var(--r-card);background:linear-gradient(180deg,var(--alu-hi),var(--alu) 45%,var(--alu-lo));box-shadow:inset 0 1px 0 var(--panel),inset 0 -2px 3px color-mix(in srgb,var(--alu-lo) 70%,transparent)}
.deck::before{content:"";position:absolute;top:0;left:50%;width:96px;height:6px;margin-left:-48px;border-radius:0 0 var(--r-chip) var(--r-chip);background:linear-gradient(180deg,var(--alu-lo),var(--alu))}
.deck::after{content:"";position:absolute;z-index:-1;left:2%;right:2%;top:100%;height:36px;margin-top:-12px;filter:blur(5px);background:radial-gradient(ellipse 50% 50% at 50% 30%,color-mix(in srgb,var(--ink-black) 78%,transparent),transparent)}
.win{overflow:hidden;border-radius:var(--r-win);background:var(--panel);color:var(--text);font-family:var(--font-body);box-shadow:0 18px 34px -14px color-mix(in srgb,var(--ink-black) 82%,transparent),0 0 0 1px color-mix(in srgb,var(--border) 60%,transparent)}
.win-bar{display:flex;align-items:center;gap:6px;min-height:30px;padding:4px 10px;background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--panel-2) 55%,var(--panel)));border-bottom:1px solid var(--border)}
.dot{width:9px;height:9px;border-radius:var(--r-round);flex:none}
.dot-r{background:color-mix(in srgb,var(--error) 72%,var(--panel))}
.dot-y{background:color-mix(in srgb,var(--warn) 72%,var(--panel))}
.dot-g{background:color-mix(in srgb,var(--success) 72%,var(--panel))}
.win-title{flex:1;text-align:center;font-size:11px;font-weight:600;letter-spacing:.02em;color:var(--muted)}
.win-status{display:inline-flex;align-items:center;gap:5px;min-height:20px;padding:0 8px 0 5px;border-radius:var(--r-sm);background:var(--mint-soft);color:var(--accent-dark);font-size:10.5px;font-weight:700;box-shadow:inset 0 0 0 1px var(--mint-line)}
.win-status img{width:14px;height:14px}
.win-body{display:grid;grid-template-columns:37% minmax(0,1fr)}
.routes{padding:10px 8px;background:color-mix(in srgb,var(--panel-2) 40%,var(--panel));border-right:1px solid var(--border)}
.routes-head{display:flex;justify-content:space-between;margin:0 4px 6px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--muted)}
.route-list{display:grid;gap:3px;margin:0;padding:0;list-style:none}
.route{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;min-height:30px;margin:0;padding:4px 6px 4px 9px;border-radius:var(--r-sm);font-size:11.5px;font-weight:600}
.route-name{white-space:nowrap}
.route.is-on{background:var(--panel);box-shadow:inset 0 0 0 1px var(--mint-line),0 4px 10px -6px color-mix(in srgb,var(--text) 18%,transparent)}
.route.is-on::before{content:"";position:absolute;left:3px;top:8px;bottom:8px;width:3px;border-radius:var(--r-sm);background:var(--accent-dark)}
.tag{display:inline-block;max-width:100%;padding:2px 5px;border-radius:var(--r-focus);font-size:9px;font-weight:700;overflow-wrap:anywhere}
.tag-iepl{background:var(--mint-soft);color:var(--accent-dark)}
.tag-relay{background:color-mix(in srgb,var(--warn) 14%,var(--panel));color:color-mix(in srgb,var(--warn) 78%,var(--text))}
.tag-direct{background:var(--panel-2);color:var(--muted)}
.win-main{display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:10px}
.now{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;padding:12px 10px;border-radius:var(--r-btn);background:var(--panel);box-shadow:inset 0 0 0 1px var(--border),var(--shadow-card)}
.now-badge{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-round);color:var(--accent-dark);background:radial-gradient(circle at 35% 30%,var(--panel),var(--mint-mid));box-shadow:0 0 0 4px var(--mint-soft),inset 0 0 0 1px var(--mint-line)}
.now-badge img{width:24px;height:24px}
.now-k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--muted)}
.now-line{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:2px;font-size:12.5px;font-weight:700;line-height:1.4}
.now-line .flag{margin-right:2px}
.sep{color:var(--muted);font-weight:400}
.ok{display:inline-flex;align-items:center;gap:4px;color:var(--accent-dark)}
.ok::before{content:"";width:6px;height:6px;flex:none;border-radius:var(--r-round);background:var(--success)}
.switch{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border-radius:var(--r-btn);background:var(--mint-soft);box-shadow:inset 0 0 0 1px var(--mint-line);font-size:11.5px;font-weight:700}
.switch-l{display:flex;align-items:center;gap:6px}
.switch-l svg{width:14px;height:14px;color:var(--accent-dark)}
.switch-r{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--accent-dark);flex:none}
.sw{position:relative;width:30px;height:17px;border-radius:var(--r-btn);background:color-mix(in srgb,var(--accent) 48%,var(--panel));box-shadow:inset 0 1px 2px color-mix(in srgb,var(--accent-dark) 30%,transparent)}
.sw::after{content:"";position:absolute;top:2px;right:2px;width:13px;height:13px;border-radius:var(--r-round);background:var(--panel);box-shadow:0 1px 2px color-mix(in srgb,var(--accent-dark) 40%,transparent)}
.cover{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.cover-cell{padding:9px 10px;border-radius:var(--r-btn);background:color-mix(in srgb,var(--panel-2) 55%,var(--panel));box-shadow:inset 0 0 0 1px var(--border)}
.cover-cell b{display:block;font-family:var(--font-mono);font-size:15px;font-weight:700;line-height:1.15}
.cover-cell span{font-size:10px;color:var(--muted)}
.plan{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:9px 12px;font-size:11px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-2) 45%,var(--panel)),color-mix(in srgb,var(--panel-2) 80%,var(--panel)));border-top:1px solid var(--border)}
.plan-k{padding:2px 6px;border-radius:var(--r-focus);font-family:var(--font-mono);font-size:9.5px;color:var(--panel);background:var(--text)}
.plan b{font-weight:700}
.plan-sub{color:var(--muted)}
.phone{position:absolute;z-index:3;left:20px;bottom:30px;width:116px;height:236px;padding:4px;border-radius:var(--r-card);background:linear-gradient(160deg,var(--alu-hi),var(--alu-lo));transform:rotate(5deg);box-shadow:inset 0 1px 0 var(--panel),var(--shadow-on-cocoa)}
.phone-screen{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;padding:22px 9px 9px;overflow:hidden;border-radius:var(--r-card);background:linear-gradient(180deg,var(--panel),color-mix(in srgb,var(--panel-2) 50%,var(--panel)));box-shadow:inset 0 0 0 2px var(--bezel)}
.island{position:absolute;top:7px;left:50%;width:30px;height:8px;margin-left:-15px;border-radius:var(--r-sm);background:var(--bezel)}
.ph-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 6px;align-self:stretch;font-size:8.5px;font-weight:700}
.ph-brand{letter-spacing:.04em;color:var(--muted)}
.ph-ok{display:inline-flex;align-items:center;gap:3px;color:var(--accent-dark)}
.ph-ok::before{content:"";width:5px;height:5px;border-radius:var(--r-round);background:var(--success);flex:none}
.ph-ring{display:grid;place-items:center;width:46px;height:46px;border-radius:var(--r-round);color:var(--accent-dark);background:radial-gradient(circle at 35% 30%,var(--panel),var(--mint-mid));box-shadow:0 0 0 5px var(--mint-soft),inset 0 0 0 1px var(--mint-line)}
.ph-ring img{width:26px;height:26px}
.ph-line{font-size:10px;font-weight:700}
.ph-card{align-self:stretch;padding:6px 7px;border-radius:var(--r-chip);background:var(--panel);box-shadow:inset 0 0 0 1px var(--border);line-height:1.35}
.ph-card .k{display:block;font-size:8.5px;color:var(--muted)}
.ph-card b{font-size:10px}
.note{position:absolute;z-index:4;top:-18px;right:-16px;width:200px;padding:18px 18px 14px;border-radius:var(--r-sm);background:var(--bg);color:var(--text);transform:rotate(-3deg);box-shadow:var(--hi-edge),var(--shadow-on-cocoa);font-family:var(--font-hand);font-size:16px;line-height:1.65}
.note::before{content:"";position:absolute;top:-7px;left:33%;right:33%;height:16px;background:color-mix(in srgb,var(--alu-hi) 65%,transparent);box-shadow:var(--hi-edge)}
.note small{display:block;font-family:var(--font-mono);font-size:10px;color:var(--muted)}
.ticket{position:absolute;z-index:4;right:26px;bottom:-16px;display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:var(--r-win);background:var(--panel);color:var(--text);box-shadow:var(--hi-edge),var(--shadow-on-cocoa);transform:rotate(-2deg);font-size:14px;font-weight:700}
.ticket b{font-family:var(--font-mono);font-size:28px;line-height:1}
.ticket span{border-left:1px dashed var(--border);padding-left:12px}
#server-status{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;overflow:hidden;min-height:1px;width:100%;max-width:100%;margin-block:24px}
#server-status>*{min-width:0;max-width:100%}
#server-status+*{margin-top:24px}
.reveal{transition:opacity var(--reveal-time) var(--ease),transform var(--reveal-time) var(--ease)}
.reveal.pending{opacity:0;transform:translateY(16px)}
.reveal.shown{opacity:1;transform:none}
.prose{font-size:17px;line-height:1.9;overflow-wrap:break-word}
.prose p+p{margin-top:1.2em}
.prose h2{margin-top:2em;margin-bottom:.7em}
.prose h3{margin-top:1.5em;margin-bottom:.6em}
.prose li+li{margin-top:.5em}
.prose a{color:var(--accent-dark)}
.site-footer{position:relative;z-index:1;background:var(--panel-2);padding-top:56px;padding-bottom:24px;border-top:1px solid var(--border)}
.footer-grid{display:grid;grid-template-columns:1.2fr 1.5fr 1fr;gap:48px}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:20px;text-decoration:none;width:max-content;max-width:100%}
.footer-brand img{width:34px;height:34px}
.footer-intro{max-width:28em;color:var(--muted);font-size:14px;line-height:1.8}
.footer-title{font-size:14px;font-weight:750;margin:0 0 14px}
.footer-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;list-style:none;margin:0;padding:0}
.footer-links li{margin:0}
.footer-links a,.footer-languages a,.footer-legal a{display:inline-flex;align-items:center;min-height:32px;font-size:14px;text-decoration:none}
.footer-links a:hover,.footer-languages a:hover,.footer-legal a:hover{color:var(--accent-dark);text-decoration:underline}
.footer-languages{display:flex;flex-wrap:wrap;gap:6px 24px;padding-top:28px;margin-top:28px;border-top:1px dashed var(--border)}
.footer-languages a[aria-current="true"]{font-weight:750}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 24px;margin-top:20px;font-size:13px;color:var(--muted)}
.footer-legal{display:flex;flex-wrap:wrap;gap:20px}
@media(max-width:1320px){
  .topbar-in{gap:18px}
  .dotnav li+li::before{padding-inline:6px}
  .dotnav a{font-size:13px}
  .tools{gap:8px}
  .hero-grid{gap:32px}
  .plate{padding-left:104px;padding-right:20px}
  .route{gap:4px;padding-left:7px}
  .route .tag{font-size:8px;padding-inline:3px}
  .mark-list{gap:8px 16px}
}
@media(max-width:1180px){
  .mainnav{display:none}
  .tools{margin-left:auto}
  .menu-toggle{display:inline-flex}
  .mobile-drawer:not([hidden]){display:block;position:absolute;z-index:32;left:0;right:0;top:100%;max-height:calc(100dvh - var(--header-height));padding:12px var(--gutter) 20px;overflow-y:auto;overscroll-behavior:contain;background:var(--cocoa);box-shadow:var(--shadow-soft)}
  .mobile-drawer ul{list-style:none;margin:0;padding:0}
  .mobile-drawer li{margin:0}
  .mobile-drawer a{display:flex;align-items:center;width:100%;min-height:44px;padding:10px 12px;color:var(--on-dark-soft);text-decoration:none;border-radius:var(--r-sm)}
  .mobile-drawer a:hover,.mobile-drawer a[aria-current="page"],.mobile-drawer a[aria-current="true"]{background:var(--cocoa-desk);color:var(--on-dark)}
  .drawer-languages{margin-top:12px!important;padding-top:12px!important;border-top:1px solid var(--on-dark-faint)}
  .navmenu{display:block}
  .hero-grid{grid-template-columns:44fr 56fr;gap:24px}
  .plate{padding:100px 18px 126px 78px}
  .phone{left:10px;width:100px;height:218px}
  .screen{padding:8px}
  .bezel{padding:12px 8px 10px}
  .win-body{grid-template-columns:40% minmax(0,1fr)}
  .route{grid-template-columns:auto minmax(0,1fr)}
  .route .tag{grid-column:2;font-size:9px;width:max-content}
  .now{grid-template-columns:30px minmax(0,1fr);padding:10px 7px;gap:7px}
  .now-badge{width:30px;height:30px}
  .win-main{padding:8px}
  .switch{padding:8px}
  .note{right:8px}
  .h1{font-size:52px}
}
@media(max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:56px}
  .copy{max-width:700px}
  .scene{width:100%;max-width:700px;margin-inline:auto}
  .plate{padding:100px 28px 126px 136px}
  .phone{left:20px;width:116px;height:236px}
  .screen{padding:14px}
  .bezel{padding:12px 12px 14px}
  .win-body{grid-template-columns:37% minmax(0,1fr)}
  .route{grid-template-columns:auto minmax(0,1fr) auto}
  .route .tag{grid-column:auto;font-size:9px}
  .now{grid-template-columns:40px minmax(0,1fr);padding:12px 10px;gap:10px}
  .now-badge{width:40px;height:40px}
  .note{right:4px;top:-16px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .footer-grid>div:first-child{grid-column:1/-1}
  .grid-three{grid-template-columns:1fr}
}
@media(max-width:768px){
  h1,.h1{font-size:clamp(28px,7vw,40px);line-height:1.15}
  .hero{padding-top:40px;padding-bottom:56px}
  .sec{padding-top:40px;padding-bottom:40px}
  .lede{font-size:17px}
  .hero-grid{gap:40px}
  .tools{margin-left:auto}
  .tools>.pill-mint{display:none}
  .topbar-in{gap:12px}
  .trust{gap:6px 12px}
  .trust li{white-space:normal}
  .trust li+li::before{display:none}
  .footer-grid{gap:28px}
}
@media(max-width:640px){
  :root{--gutter:16px}
  .no-break{white-space:normal}
  .tools{margin-left:auto;gap:5px}
  .brand-word{font-size:17px}
  .brand{gap:7px}
  .lang{padding:5px;min-width:44px;font-size:12px}
  .pill{padding-inline:12px}
  .tools .pill-ghost{height:36px}
  .topbar-in{gap:6px}
  .logo-mark{width:27px;height:27px}
  .cta-row{gap:12px;margin-top:28px}
  .btn{padding:12px 20px;font-size:15px;min-height:48px}
  .marks{margin-top:24px;padding-top:20px;gap:12px}
  .mark-row{grid-template-columns:1fr;gap:8px}
  .mark-list{gap:10px 16px}
  .mark-list li{font-size:12px}
  .plate{max-width:100%;padding:100px 12px 202px;overflow:hidden}
  .plate-bg{max-width:100%}
  .lid{border-radius:var(--r-win) var(--r-win) var(--r-sm) var(--r-sm)}
  .bezel{padding:12px 6px 8px;border-radius:var(--r-win)}
  .screen{padding:6px}
  .deck{margin-inline:-5px;height:14px}
  .win-bar{gap:4px;padding-inline:7px}
  .win-title{font-size:10px}
  .win-status{font-size:9px;padding-inline:4px}
  .dot{width:6px;height:6px}
  .win-body{grid-template-columns:1fr}
  .routes{padding:8px 6px;border-right:0;border-bottom:1px solid var(--border)}
  .routes-head{font-size:9px}
  .route-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}
  .route{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:5px 1px;font-size:9px;min-height:66px}
  .route .tag{font-size:8px;padding:1px 2px;line-height:1.3;width:auto;text-align:center}
  .route.is-on::before{left:2px;top:6px;bottom:6px;width:2px}
  .win-main{padding:8px;gap:7px}
  .now{padding:10px;grid-template-columns:32px minmax(0,1fr)}
  .now-badge{width:32px;height:32px}
  .now-line{font-size:11px}
  .cover-cell{padding:7px 10px}
  .cover-cell b{font-size:14px}
  .plan{font-size:10px;padding:8px}
  .phone{left:16px;bottom:16px;width:96px;height:176px;transform:none}
  .phone-screen{padding:20px 7px 7px;gap:5px}
  .ph-ring{width:30px;height:30px;box-shadow:0 0 0 3px var(--mint-soft)}
  .ph-ring img{width:22px;height:22px}
  .ph-line{font-size:9px}
  .ph-card{padding:4px 6px}
  .ph-card b{font-size:9px}
  .ph-card .k{font-size:8px}
  .note{top:16px;right:14px;max-width:calc(100% - 28px);width:190px;padding:10px 14px;font-size:14px;transform:none}
  .note small{font-size:9px}
  .ticket{right:12px;bottom:40px;max-width:calc(100% - 136px);padding:12px;gap:8px;font-size:12px;transform:none}
  .ticket b{font-size:24px}
  .ticket span{padding-left:8px}
  .tilt{transform:none}
  .panel,.card{padding:20px}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
  .footer-bottom{align-items:flex-start;flex-direction:column}
  .prose{font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal,.reveal.pending,.reveal.shown{opacity:1;transform:none;transition:none}
  .btn,.pill{transition:none}
  .btn:hover,.pill:hover,.btn:active{transform:none}
}