:root {
  --wrap:1280px;
  --header-h:72px;
  --h1:56px;
  --h2:40px;
  --h3:20px;
  --body:16px;
  --small:14px;
  --paper:#faf6ec;
  --paper-2:#f1ebdc;
  --white:#ffffff;
  --head-paper:#fffdf8;
  --ink:#16110a;
  --ink-2:#4a4334;
  --muted:#6c6556;
  --line:#e4dccb;
  --d-bg:#16110a;
  --d-card:#211a10;
  --d-text:#f6f1e4;
  --d-muted:#a59f8e;
  --d-line:#2e2719;
  --or:#ee5a24;
  --or-deep:#c9430f;
  --or-wash:#fbe3d6;
  --rose:#e2475f;
  --rose-wash:#42201f;
  --chip-hover:#e7dfcb;
  --switch-off:#d6cdb8;
  --fwd-line:#ddd4bf;
  --tag-neutral:#e8e1d0;
  --amazon:#232f3e;
  --paypal:#003087;
  --brand-blue:#009cde;
  --brand-gold:#ff9900;
  --code-ink:#c45500;
  --hover-ink:#2b241a;
  --glass:rgba(22,17,10,.74);
  --glass-soft:rgba(255,255,255,.08);
  --glass-line:rgba(255,255,255,.12);
  --white-soft:rgba(255,255,255,.86);
  --white-line:rgba(255,255,255,.7);
  --white-hover:rgba(255,255,255,.12);
  --photo-shade:rgba(22,17,10,.88);
  --photo-clear:rgba(22,17,10,0);
  --overlay:rgba(22,17,10,.5);
  --shadow-pill:0 32px 64px -32px rgba(122,76,28,.28),0 1px 2px rgba(22,17,10,.06);
  --shadow-win:0 48px 96px -64px rgba(122,76,28,.35);
  --sans:-apple-system,"SF Pro Text","Helvetica Neue","PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",sans-serif;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"PingFang SC","Noto Sans SC",serif;
  --mono:"SF Mono",ui-monospace,Menlo,Consolas,"PingFang SC",monospace;
  --r-s:10px;
  --r-l:22px;
  --r-p:999px;
  --radius-control:var(--r-p);
  --radius-card:var(--r-l);
  --s1:4px;
  --s2:8px;
  --s3:16px;
  --s4:24px;
  --s5:32px;
  --s6:48px;
  --s7:96px;
}
* { box-sizing:border-box; margin:0; padding:0; }
[hidden] { display:none !important; }
html { background:var(--paper); scroll-behavior:smooth; scroll-padding-top:calc(var(--header-h) + var(--s4)); }
body { background:var(--paper); color:var(--ink); font:400 var(--body)/1.6 var(--sans); -webkit-font-smoothing:antialiased; }
body.reader-open,body.modal-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
button,input,textarea { font:inherit; }
button { color:inherit; background:none; border:0; cursor:pointer; }
button:disabled { cursor:wait; opacity:.65; }
img { display:block; max-width:100%; }
svg { flex:none; }
a,button,input,textarea,summary { -webkit-tap-highlight-color:transparent; }
:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.dark :focus-visible { outline-color:var(--d-text); }
input:focus,textarea:focus { outline:0; border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.frame { width:min(var(--wrap),100%); margin:0 auto; border-left:1px solid var(--line); border-right:1px solid var(--line); }
.dark { background:var(--d-bg); color:var(--d-text); }
.dark .frame { border-color:var(--d-line); }
.mono { font-family:var(--mono); letter-spacing:0; }
.serif { font-family:var(--serif); font-weight:400; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.skip-link { position:fixed; top:8px; left:16px; z-index:150; transform:translateY(-200%); padding:8px 16px; background:var(--ink); color:var(--d-text); border-radius:var(--r-p); }
.skip-link:focus { transform:translateY(0); }
.notice { width:min(var(--wrap),100%); margin:0 auto; background:var(--ink); color:var(--d-text); font-size:14px; line-height:32px; text-align:center; font-weight:500; }
.notice a { color:var(--or); margin-left:8px; }
.notice a:hover { text-decoration:underline; }
.site-head { position:sticky; top:0; z-index:50; border-bottom:1px solid var(--line); background:var(--head-paper); }
.site-head .frame { height:var(--header-h); display:flex; align-items:center; padding:0 24px; position:relative; }
.brand { display:inline-flex; align-items:center; gap:8px; font-family:var(--serif); font-size:28px; letter-spacing:-.02em; color:var(--ink); line-height:1; flex:none; }
.brand img { width:32px; height:32px; flex:none; }
.nav { display:flex; gap:32px; margin-left:48px; font-size:16px; font-weight:500; color:var(--ink-2); align-items:center; }
.nav a,.nav-drawer a { padding:6px 0; white-space:nowrap; }
.nav a:hover { color:var(--ink); }
.nav a[aria-current="page"],.nav-drawer a[aria-current="page"] { color:var(--ink); text-decoration:underline; text-decoration-color:var(--or); text-underline-offset:7px; }
.head-right { margin-left:auto; display:flex; align-items:center; gap:12px; }
.lang-wrap { position:relative; }
.lang { position:relative; display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:500; color:var(--ink-2); background:var(--head-paper); padding:0 32px 0 16px; height:40px; border-radius:var(--r-p); }
.lang svg { width:10px; height:10px; }
.chevron { position:absolute; right:14px; top:50%; width:7px; height:7px; border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:translateY(calc(-50% - .08em)) rotate(45deg); pointer-events:none; }
.lang-menu,.filter-menu { position:absolute; z-index:90; top:calc(100% + 8px); right:0; min-width:160px; padding:8px; border:1px solid var(--line); border-radius:var(--r-s); background:var(--white); color:var(--ink); box-shadow:var(--shadow-pill); }
.lang-menu a,.filter-menu button { display:flex; width:100%; align-items:center; padding:10px 12px; border-radius:var(--r-s); font-size:14px; text-align:left; background:var(--white); color:var(--ink); }
.lang-menu a:hover,.lang-menu a[aria-current],.filter-menu button:hover,.filter-menu button[aria-selected="true"] { background:var(--paper-2); color:var(--ink); }
.menu-toggle { display:none; width:40px; height:40px; align-items:center; justify-content:center; color:var(--ink); background:var(--head-paper); border:1px solid var(--line); border-radius:var(--r-p); }
.menu-toggle svg { width:20px; height:20px; }
.nav-drawer { position:fixed; top:var(--drawer-top,var(--header-h)); left:16px; right:auto; z-index:80; width:min(310px,calc(100% - 32px)); padding:16px; display:grid; gap:8px; text-align:left; background:var(--head-paper); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-l); box-shadow:var(--shadow-pill); }
.nav-drawer a { padding-left:12px; padding-right:12px; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; height:40px; padding:0 20px; border:1px solid transparent; border-radius:var(--r-p); font-size:16px; font-weight:500; white-space:nowrap; transition:background .2s,color .2s,border-color .2s; vertical-align:middle; }
.btn-line { border-color:var(--line); background:transparent; color:var(--ink); }
.btn-line:hover { border-color:var(--ink); background:var(--ink); color:var(--paper); }
.btn-or { background:var(--or); color:var(--white); }
.btn-or:hover { background:var(--or-deep); color:var(--white); }
.btn-lg { height:48px; padding:0 24px; }
.btn-w { background:var(--white); color:var(--ink); }
.btn-w:hover { background:var(--paper); color:var(--ink); }
.btn-wl { border-color:var(--white-line); background:transparent; color:var(--white); }
.btn-wl:hover { background:var(--white-hover); color:var(--white); }
.btn-ink { background:var(--ink); color:var(--d-text); }
.btn-ink:hover { background:var(--hover-ink); color:var(--d-text); }
.btn-danger { background:var(--rose); color:var(--white); }
.btn-danger:hover { background:var(--ink); color:var(--white); }
.actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.hero .frame { display:grid; grid-template-columns:560px minmax(0,1fr); }
.hero-copy { padding:64px 48px 48px; min-width:0; }
.hero h1 {
  font-size:var(--h1);
  line-height:1.12;
  font-weight:600;
  letter-spacing:-.02em;
  overflow-wrap:anywhere;
}
.hero h1 em,h1 em { font-style:normal; color:var(--rose); }
.lead-b { margin-top:32px; font-size:20px; font-weight:500; line-height:1.4; }
.lead { margin-top:8px; color:var(--muted); font-size:16px; }
.seg { margin-top:32px; display:inline-grid; grid-template-columns:1fr 1fr; gap:4px; padding:4px; background:var(--paper-2); border-radius:var(--r-p); }
.seg a { min-height:40px; padding:0 20px; display:flex; align-items:center; justify-content:center; gap:8px; border-radius:var(--r-p); font-size:14px; font-weight:500; color:var(--ink-2); }
.seg a:hover { color:var(--ink); }
.seg a small { font-size:12px; color:var(--muted); font-weight:400; }
.seg a.is-selected { background:var(--ink); color:var(--d-text); }
.seg a.is-selected small { color:var(--d-muted); }
.panel { margin-top:16px; }
.pill { display:flex; align-items:center; gap:12px; height:64px; background:var(--white); color:var(--ink); border-radius:var(--r-p); padding:0 8px 0 24px; box-shadow:var(--shadow-pill); }
.pill svg { width:20px; height:20px; flex:none; }
.pill .addr { font-family:var(--mono); font-size:20px; letter-spacing:0; white-space:nowrap; color:var(--ink); flex:1; overflow:hidden; min-width:0; }
.pill .addr span { color:var(--muted); }
.pill .ph { flex:1; font-size:16px; color:var(--muted); }
.pill .btn { height:48px; }
.meta { margin-top:16px; display:flex; align-items:center; gap:8px; font-size:14px; color:var(--ink-2); flex-wrap:wrap; }
.meta .clock { display:flex; align-items:center; gap:8px; margin-right:auto; }
.meta .clock b { font-family:var(--mono); font-weight:500; color:var(--ink); }
.meta .clock svg { width:16px; height:16px; }
.chip { min-height:32px; padding:0 12px; border-radius:var(--r-p); background:var(--paper-2); font-size:14px; font-weight:500; color:var(--ink); display:inline-flex; align-items:center; justify-content:center; gap:4px; }
.chip:hover { background:var(--chip-hover); color:var(--ink); }
.fwd-note { margin-top:16px; font-size:14px; color:var(--ink-2); }
.fwd-note b { font-weight:600; color:var(--ink); }
.hero-side { border-left:1px solid var(--line); padding:16px; min-width:0; }
.hero-art { display:grid; border-radius:var(--r-l); overflow:hidden; background:var(--paper-2); }
.hero-art .art-photo { grid-area:1/1; width:100%; height:clamp(22rem,38vw,34rem); object-fit:cover; }
.hero-art .float-card { grid-area:1/1; align-self:end; justify-self:start; margin:1.5rem; width:320px; padding:20px; border-radius:var(--r-l); background:var(--glass); -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px); color:var(--d-text); }
.fc-top { display:flex; align-items:center; gap:8px; font-size:12px; color:var(--d-muted); }
.fc-top svg { width:16px; height:16px; }
.fc-title { margin-top:8px; font-family:var(--serif); font-size:28px; line-height:1.2; letter-spacing:-.01em; }
.fc-row { margin-top:16px; display:flex; align-items:center; justify-content:space-between; height:48px; padding:0 8px 0 16px; border-radius:var(--r-p); background:var(--glass-soft); border:1px solid var(--glass-line); }
.fc-row .mono {
  font-size:20px;
  letter-spacing:.08em;
  color:var(--d-text);
}
.fc-row i { font-style:normal; font-size:12px; color:var(--d-muted); }
.fc-row svg { width:32px; height:32px; }
.hero-inbox { grid-column:1/-1; border-top:1px solid var(--line); padding:32px 48px 64px; min-width:0; scroll-margin-top:var(--header-h); }
.win { background:var(--white); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-l); min-height:660px; display:grid; grid-template-rows:64px minmax(594px,1fr); overflow:hidden; box-shadow:var(--shadow-win); }
.win-bar { display:flex; align-items:center; gap:12px; padding:0 24px; border-bottom:1px solid var(--line); min-width:0; }
.win-bar h2 { font-size:16px; font-weight:600; }
.count { min-height:24px; padding:0 8px; border-radius:var(--r-p); background:var(--or); color:var(--white); font-size:12px; font-weight:600; display:inline-flex; align-items:center; flex:none; }
.win-bar .to { font-family:var(--mono); font-size:14px; color:var(--muted); letter-spacing:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.win-bar .note { margin-left:auto; font-size:12px; color:var(--muted); }
.refresh { height:32px; padding:0 12px; border-radius:var(--r-p); border:1px solid var(--line); background:var(--white); color:var(--ink); font-size:14px; font-weight:500; display:inline-flex; align-items:center; gap:8px; flex:none; }
.refresh:hover { border-color:var(--ink); background:var(--paper); color:var(--ink); }
.refresh svg { width:14px; height:14px; }
.win-body { display:grid; grid-template-columns:380px minmax(0,1fr); min-height:0; }
.list { border-right:1px solid var(--line); background:var(--head-paper); color:var(--ink); overflow-y:auto; max-height:760px; min-width:0; }
.row { width:100%; height:80px; display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:12px; align-items:center; padding:0 20px; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); cursor:pointer; text-align:left; }
.row:hover { background:var(--paper); color:var(--ink); }
.row.sel,.row.is-active { background:var(--paper-2); color:var(--ink); box-shadow:inset 3px 0 0 var(--or); }
.av { width:40px; height:40px; border-radius:var(--r-s); display:flex; align-items:center; justify-content:center; background:var(--paper-2); color:var(--ink); }
.av svg { width:24px; height:24px; }
.av-amz { background:var(--amazon); color:var(--white); }
.av-pp { background:var(--paypal); color:var(--white); }
.r-main { min-width:0; }
.r-from { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:600; }
.badge { min-height:20px; padding:0 8px; border-radius:var(--r-p); background:var(--or-wash); color:var(--or-deep); font-size:12px; font-weight:500; display:inline-flex; align-items:center; flex:none; }
.r-sub { font-size:14px; color:var(--ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.r-time { align-self:center; font-size:12px; color:var(--muted); white-space:nowrap; }
.list-end { padding:24px 20px; font-size:12px; color:var(--muted); display:flex; gap:8px; align-items:flex-start; }
.list-end svg { width:16px; height:16px; flex:none; margin-top:2px; }
.read { display:grid; grid-template-rows:auto minmax(0,1fr) 64px; min-height:0; min-width:0; background:var(--white); color:var(--ink); }
.r-head { padding:24px 32px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:40px minmax(0,1fr) auto; gap:16px; align-items:center; }
.r-head .av { width:40px; height:40px; }
.r-head h3 { font-size:20px; font-weight:600; line-height:1.3; display:flex; align-items:center; gap:8px; }
.r-head p { font-size:14px; color:var(--muted); overflow-wrap:anywhere; }
.r-head p .mono { color:var(--ink-2); }
.r-head time { font-size:14px; color:var(--muted); }
.r-body { padding:24px 32px; overflow:auto; max-height:630px; min-height:0; }
.r-body iframe,.archive-body iframe { display:block; width:100%; min-height:380px; border:0; background:var(--white); color:var(--ink); }
.r-body pre,.archive-body pre { font:400 14px/1.7 var(--mono); white-space:pre-wrap; overflow-wrap:anywhere; background:var(--white); color:var(--ink); }
.mail-brand { display:flex; align-items:center; gap:8px; min-height:44px; padding-bottom:16px; border-bottom:3px solid var(--amazon); font-weight:600; font-size:20px; line-height:1.15; color:var(--amazon); }
.mail-brand svg { width:56px; height:16px; }
.r-body h4 { margin-top:24px; font-size:20px; font-weight:600; }
.r-body p { margin-top:8px; font-size:14px; color:var(--ink-2); max-width:560px; }
.code { margin-top:16px; display:flex; align-items:center; gap:24px; width:max-content; max-width:100%; padding:16px 24px; border-radius:var(--r-s); background:var(--paper); color:var(--ink); }
.code .mono { font-size:40px; font-weight:500; letter-spacing:.16em; color:var(--ink); line-height:1.2; }
.code span { font-size:12px; color:var(--muted); line-height:1.5; }
.code b { display:block; font-size:14px; color:var(--code-ink); font-weight:600; }
.kv { margin-top:16px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:4px 24px; font-size:14px; max-width:560px; }
.kv dt { color:var(--muted); }
.kv dd { color:var(--ink); overflow-wrap:anywhere; }
.disc { margin-top:24px; padding-top:12px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); max-width:560px; }
.r-body p.disc { margin-top:24px; font-size:12px; color:var(--muted); }
.r-act { border-top:1px solid var(--line); display:flex; align-items:center; gap:8px; padding:0 32px; }
.r-act .chip svg { width:14px; height:14px; }
.r-act .chip.main { background:var(--ink); color:var(--d-text); }
.r-act .chip.main:hover { background:var(--hover-ink); color:var(--d-text); }
.r-act .end { margin-left:auto; font-size:12px; color:var(--muted); }
.reader-mobile-actions { display:none; }
.read.is-real .demo-pill,.read.is-real [data-demo-brand],.read.is-real .demo-only { display:none; }
.sec { padding:96px 48px; }
.eyebrow { margin:0 0 20px; font-size:14px; font-weight:600; color:var(--or); }
.dark .eyebrow { color:var(--rose); }
.display { font-size:56px; line-height:1.12; font-weight:600; letter-spacing:-.02em; }
.display em { font-style:normal; color:var(--rose); }
h2.t { font-size:40px; line-height:1.2; font-weight:600; letter-spacing:-.02em; }
.sub,.section-intro { margin-top:20px; font-size:16px; color:var(--ink-2); max-width:720px; }
.dark .sub,.dark .section-intro { color:var(--d-muted); }
.leak-grid { margin-top:48px; display:grid; grid-template-columns:7fr 5fr; gap:16px; }
.leak-photo { position:relative; border-radius:var(--r-l); overflow:hidden; height:560px; }
.leak-photo img { width:100%; height:100%; object-fit:cover; transition:transform 1.2s ease; }
.leak-photo:hover img { transform:scale(1.03); }
.leak-photo::after { content:""; position:absolute; inset:auto 0 0; height:50%; background:linear-gradient(to top,var(--photo-shade),var(--photo-clear)); }
.leak-photo figcaption { position:absolute; left:32px; bottom:28px; z-index:1; font-family:var(--serif); font-size:28px; color:var(--d-text); }
.pains { display:grid; grid-template-rows:repeat(3,1fr); gap:16px; }
.pain { background:var(--d-card); color:var(--d-text); border-radius:var(--r-l); padding:24px 28px; display:flex; flex-direction:column; }
.pain-ico { width:40px; height:40px; border-radius:var(--r-s); background:var(--rose-wash); color:var(--rose); display:flex; align-items:center; justify-content:center; }
.pain-ico svg { width:20px; height:20px; }
.pain h3 { margin-top:12px; font-size:20px; font-weight:600; }
.pain p { margin-top:4px; font-size:14px; color:var(--d-muted); }
.pain .fix { margin-top:auto; padding-top:12px; font-size:14px; font-weight:500; color:var(--or); display:flex; align-items:center; gap:8px; }
.pain .fix svg { width:14px; height:14px; }
.feats { margin-top:48px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:48px; }
.f-ico { width:40px; height:40px; border-radius:var(--r-s); background:var(--paper-2); color:var(--or); display:flex; align-items:center; justify-content:center; }
.f-ico svg { width:20px; height:20px; }
.feat .rank { margin-top:24px; font-family:var(--serif); font-size:14px; color:var(--muted); }
.feat h3 { margin-top:4px; font-size:20px; font-weight:600; }
.feat p { margin-top:8px; font-size:14px; color:var(--ink-2); overflow-wrap:anywhere; }
.feat p .mono { color:var(--ink); }
.shows { margin-top:48px; display:grid; grid-template-columns:7fr 5fr; gap:16px; }
.show { background:var(--paper-2); color:var(--ink); border-radius:var(--r-l); padding:32px; height:400px; display:flex; flex-direction:column; min-width:0; }
.show-h { display:flex; justify-content:space-between; align-items:baseline; gap:12px; }
.show-h b { font-size:16px; font-weight:600; }
.show-h span { font-size:12px; color:var(--muted); }
.alias-list { margin-top:24px; display:grid; gap:8px; }
.alias {
  min-height:72px;
  background:var(--white);
  color:var(--ink);
  border-radius:var(--r-s);
  display:grid;
  grid-template-columns:minmax(64px,max-content) minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  padding:12px 16px;
}
.alias .tag {
  width:auto;
  min-width:40px;
  min-height:40px;
  padding:8px;
  border-radius:var(--r-s);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  font-weight:600;
  background:var(--paper-2);
  color:var(--ink-2);
}
.alias .tag-orange { background:var(--or-wash); color:var(--or-deep); }
.alias .tag-neutral { background:var(--tag-neutral); color:var(--muted); }
.alias b { display:block; font-size:14px; font-weight:600; }
.alias .mono { font-size:14px; color:var(--ink-2); overflow-wrap:anywhere; }
.sw { width:44px; height:24px; border-radius:var(--r-p); background:var(--or); display:flex; align-items:center; justify-content:flex-end; padding:0 3px; }
.sw i { width:18px; height:18px; border-radius:var(--r-p); background:var(--white); }
.sw.off { background:var(--switch-off); justify-content:flex-start; }
.alias.paused b,.alias.paused .mono { color:var(--muted); }
.timer { margin:auto 0; display:flex; flex-direction:column; align-items:center; }
.timer svg { width:240px; height:132px; }
.timer .mono { margin-top:-48px; font-size:28px; font-weight:500; color:var(--ink); }
.timer span { font-size:12px; color:var(--muted); }
.timer-foot { display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--muted); border-top:1px solid var(--line); padding-top:12px; }
.timer-foot b { color:var(--ink); font-weight:600; }
.facts { border-top:1px solid var(--line); display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
.fact { padding:32px 24px; border-right:1px solid var(--line); text-align:center; }
.fact:last-child { border-right:0; }
.fact .serif { font-size:40px; line-height:1.1; color:var(--ink); }
.fact .serif small { font-family:var(--sans); font-size:16px; margin-left:4px; color:var(--ink-2); }
.fact p { margin-top:8px; font-size:12px; color:var(--muted); }
.fwd { background:var(--paper-2); color:var(--ink); }
.fwd .frame { border-color:var(--fwd-line); }
.fwd-top { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; align-items:center; }
.fwd-top .sub { color:var(--ink-2); }
.fwd-cta { margin-top:32px; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.fwd-cta .link { font-size:14px; font-weight:500; color:var(--ink-2); border-bottom:1px solid currentColor; padding-bottom:2px; }
.fwd-cta .link:hover { color:var(--ink); }
.route { background:var(--paper); color:var(--ink); border-radius:var(--r-l); padding:32px; display:grid; grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr); align-items:center; gap:8px; }
.stubs { display:grid; gap:8px; min-width:0; }
.stub { height:48px; border-radius:var(--r-s); background:var(--white); color:var(--ink); display:flex; align-items:center; padding:0 16px; font-family:var(--mono); font-size:14px; letter-spacing:0; border-left:3px dashed var(--or); overflow:hidden; }
.route>svg { width:48px; height:120px; }
.real { background:var(--ink); color:var(--d-text); border-radius:var(--r-s); padding:24px 20px; }
.real span { font-size:12px; color:var(--d-muted); }
.real b { display:block; margin-top:4px; font-size:16px; font-weight:600; }
.real p { margin-top:12px; font-size:12px; color:var(--d-muted); }
.big3 { margin-top:48px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.big { background:var(--or); color:var(--white); border-radius:var(--r-l); padding:32px; height:240px; display:flex; flex-direction:column; }
.big .serif { font-size:56px; line-height:1; }
.big .serif small { font-family:var(--sans); font-size:20px; margin-left:8px; }
.big h3 { margin-top:auto; font-size:20px; font-weight:600; }
.big p { margin-top:4px; font-size:14px; color:var(--white-soft); }
.steps { margin-top:48px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.step { background:var(--d-card); color:var(--d-text); border-radius:var(--r-l); padding:32px; min-height:280px; display:flex; flex-direction:column; }
.step .serif { font-size:40px; line-height:1; color:var(--or); }
.step h3 { margin-top:auto; font-size:20px; font-weight:600; }
.step p { margin-top:8px; font-size:14px; color:var(--d-muted); }
.step p .mono { color:var(--d-text); }
.limits { margin-top:16px; border-radius:var(--r-l); border:1px solid var(--d-line); display:grid; grid-template-columns:160px repeat(3,minmax(0,1fr)); }
.limits>div { padding:24px; font-size:14px; color:var(--d-muted); display:flex; gap:12px; align-items:flex-start; border-left:1px solid var(--d-line); }
.limits>div:first-child { border-left:0; color:var(--d-text); font-weight:600; font-size:16px; align-items:center; }
.limits svg { width:16px; height:16px; flex:none; margin-top:3px; }
.limits b { color:var(--d-text); font-weight:600; display:block; }
.faq-head { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; }
.faq-head a { font-size:14px; font-weight:500; border-bottom:1px solid currentColor; padding-bottom:2px; color:var(--ink-2); }
.faq { margin-top:48px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 48px; }
.faq details { border-top:1px solid var(--line); padding:24px 0; }
.faq details:nth-last-child(-n+2) { border-bottom:1px solid var(--line); }
.faq summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; font-size:16px; font-weight:600; cursor:pointer; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary i { position:relative; width:28px; height:28px; flex:none; border-radius:var(--r-p); background:var(--paper-2); color:var(--ink); }
.faq summary .chevron { right:10px; width:6px; height:6px; }
.faq details[open] summary i { background:var(--ink); color:var(--paper); }
.faq details[open] .chevron { transform:translateY(calc(-50% + .08em)) rotate(225deg); }
.faq details p { margin-top:12px; font-size:14px; color:var(--ink-2); max-width:520px; padding-bottom:4px; }
.cta-sec { padding:0 48px 96px; }
.cta { background:var(--or); color:var(--white); border-radius:var(--r-l); padding:64px; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:48px; align-items:center; }
.cta h2 { font-size:40px; line-height:1.2; font-weight:600; letter-spacing:-.02em; }
.cta p { margin-top:12px; font-size:16px; color:var(--white-soft); }
.cta p .mono { color:var(--white); }
.cta-btns { display:flex; gap:12px; flex-wrap:wrap; }
.site-foot .frame { padding:64px 48px 32px; }
.foot-top { display:grid; grid-template-columns:2fr repeat(4,minmax(0,1fr)); gap:48px; }
.site-foot .brand { color:var(--d-text); }
.foot-brand { min-width:0; }
.foot-brand p { margin-top:16px; font-size:14px; color:var(--d-muted); max-width:360px; }
.foot-brand a.mail { display:inline-flex; margin-top:16px; font-family:var(--mono); font-size:14px; padding:10px 16px; border-radius:var(--r-p); background:var(--d-text); color:var(--ink); overflow-wrap:anywhere; max-width:100%; }
.foot-brand a.mail:hover { background:var(--white); color:var(--ink); }
.foot-col h4 { font-size:14px; font-weight:600; color:var(--d-text); }
.foot-col ul { list-style:none; margin-top:16px; display:grid; gap:8px; }
.foot-col a { font-size:14px; color:var(--d-muted); overflow-wrap:anywhere; }
.foot-col a:hover { color:var(--d-text); }
.foot-bot { margin-top:64px; padding-top:24px; border-top:1px solid var(--d-line); display:flex; justify-content:space-between; gap:16px; font-size:12px; color:var(--d-muted); }
.toast { position:fixed; z-index:200; left:50%; bottom:24px; display:block; width:max-content; max-width:min(28rem,calc(100vw - 32px)); height:auto; min-height:0; padding:12px 20px; border-radius:var(--r-s); background:var(--ink); color:var(--d-text); font-size:14px; font-weight:500; line-height:1.45; text-align:center; box-shadow:var(--shadow-pill); opacity:0; visibility:hidden; transform:translate(-50%,12px); transition:opacity .2s,transform .2s,visibility .2s; pointer-events:none; white-space:normal; overflow-wrap:break-word; }
.toast.is-on { opacity:1; visibility:visible; transform:translate(-50%,0); height:auto; min-height:0; padding:12px 20px; }
.modal-backdrop { position:fixed; inset:0; z-index:120; display:grid; place-items:center; padding:16px; background:var(--overlay); }
.dialog { width:min(420px,100%); max-height:calc(100dvh - 32px); overflow:auto; border-radius:var(--r-l); padding:32px; background:var(--paper); color:var(--ink); }
.dialog>svg { display:block; width:32px; height:32px; margin-bottom:16px; color:var(--or); }
.dialog h2 { font-size:24px; line-height:1.3; font-weight:600; }
.dialog p { margin-top:16px; font-size:14px; color:var(--ink-2); }
.dialog .actions { margin-top:24px; justify-content:flex-end; }
.empty-state { width:min(420px,calc(100% - 32px)); height:auto; min-height:0; margin:auto; padding:20px; background:var(--paper); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-s); }
.empty-state h3 { font-size:18px; line-height:1.4; font-weight:600; }
.empty-state p { margin-top:8px; color:var(--muted); font-size:14px; }
.empty-state svg { width:24px; height:24px; margin-bottom:12px; color:var(--or); }
.list.is-empty,.read.is-empty { display:flex; align-items:center; justify-content:center; height:auto; min-height:100%; }
.list.is-empty>.empty-state,.read.is-empty>.empty-state { margin:0; align-self:center; }
.status-pill { width:max-content; max-width:100%; display:inline-flex; align-items:center; gap:6px; padding:4px 10px; margin:0; border-radius:var(--r-p); background:var(--paper-2); color:var(--ink-2); font-size:12px; line-height:1.5; }
.status-pill.is-pending { background:var(--or-wash); color:var(--or-deep); }
.status-pill.is-off { background:var(--line); color:var(--ink-2); }
.status-pill.is-failed { background:var(--rose-wash); color:var(--d-text); }
.field { display:grid; gap:8px; min-width:0; }
.field label { font-size:14px; font-weight:500; }
.input,textarea { display:block; width:100%; min-width:0; min-height:48px; padding:12px 16px; font-size:14px; line-height:1.5; border:1px solid var(--line); border-radius:var(--r-p); background:var(--white); color:var(--ink); }
textarea { border-radius:var(--r-s); min-height:120px; resize:vertical; }
.input::placeholder,textarea::placeholder { color:var(--muted); font-size:14px; }
.form-note { margin-top:12px; font-size:14px; color:var(--muted); }
.form-error { margin-top:12px; font-size:14px; color:var(--or-deep); }
.table-scroll { margin:24px 0 32px; overflow-x:auto; }
table { width:100%; border-collapse:collapse; color:var(--ink); font-size:14px; }
th,td { padding:16px; text-align:left; border-bottom:1px solid var(--line); vertical-align:top; }
th { font-weight:500; background:var(--paper-2); color:var(--ink); }
.filter { position:relative; width:max-content; max-width:100%; }
.filter-trigger { position:relative; display:inline-flex; align-items:center; min-height:40px; padding:8px 34px 8px 16px; border:1px solid var(--muted); border-radius:var(--r-p); background:var(--white); color:var(--ink); font-size:14px; }
.filter-menu { left:0; right:auto; min-width:220px; background:var(--white); color:var(--ink); border-color:var(--muted); }
.filter-menu button { font-size:14px; }
.auth-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:var(--wrap); margin:auto; min-height:640px; }
.auth-story { padding:64px 48px; background:var(--paper-2); color:var(--ink); }
.auth-story h1 { font-size:40px; line-height:1.25; letter-spacing:-.02em; }
.auth-story p:not(.eyebrow) { margin-top:24px; color:var(--ink-2); }
.auth-panel { padding:64px 48px; background:var(--paper); color:var(--ink); display:grid; align-content:start; }
.login-card { width:100%; max-width:440px; justify-self:center; padding:32px; background:var(--white); color:var(--ink); border-radius:var(--r-l); }
.login-card h2 { font-size:24px; line-height:1.3; }
.login-card .field { margin-top:24px; }
.login-card .input { background:var(--paper); color:var(--ink); border-color:var(--line); }
.login-card .actions { margin-top:24px; }
.login-card .form-error { margin-top:16px; }
.auth-notice { margin:48px 0 16px; padding:12px 16px; background:var(--paper-2); color:var(--ink-2); border-radius:var(--r-s); font-size:14px; }
.auth-secondary { height:40px; padding:0 16px; border:1px solid var(--ink); border-radius:var(--r-p); background:var(--white); color:var(--ink); font-size:14px; }
.auth-secondary:hover { background:var(--ink); color:var(--white); }
.desk { padding:48px; min-width:0; }
.desk-session { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:32px; flex-wrap:wrap; }
.desk-session [data-session-email] { font-family:var(--mono); font-size:14px; overflow-wrap:anywhere; }
.desk-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
.surface-alias { grid-column:1/-1; padding:32px; background:var(--paper-2); color:var(--ink); border-radius:var(--r-l); }
.surface-archive { padding:32px; background:var(--white); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-l); min-width:0; }
.surface-safety { padding:32px; background:var(--paper-2); color:var(--ink); border-radius:var(--r-l); min-width:0; }
.desk h2 { font-size:24px; line-height:1.3; }
.desk h3 { font-size:18px; line-height:1.4; }
.alias-compose { margin-top:24px; display:flex; gap:12px; align-items:center; }
.prefix-group { display:flex; align-items:center; gap:8px; flex:1; min-width:0; background:var(--white); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-p); padding-right:16px; }
.prefix-group:focus-within { border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.prefix-group input { border:0; background:transparent; color:var(--ink); height:48px; font-size:14px; min-width:0; border-radius:0; padding:0 16px; flex:1; box-shadow:none; }
.prefix-group span { font:400 14px var(--mono); white-space:nowrap; }
.alias-compose .btn { font-size:14px; height:48px; }
.alias-compose button[type="submit"] { min-width:112px; }
.alias-results { margin-top:24px; }
.alias-results .empty-state { width:100%; max-width:none; margin:0; }
.alias-record { padding:16px 0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; border-bottom:1px solid var(--line); }
.alias-address { font:400 14px/1.6 var(--mono); overflow-wrap:anywhere; }
.alias-record .actions { justify-content:flex-end; gap:8px; }
.alias-record .status-pill { margin-top:8px; }
.archive-heading { display:flex; align-items:center; gap:16px; flex-wrap:wrap; margin-bottom:24px; }
.archive-list { margin-top:24px; }
.archive-row { display:block; width:100%; padding:16px 0; text-align:left; background:transparent; color:var(--ink); border-bottom:1px solid var(--line); }
.archive-row-inner { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:16px; }
.archive-row-subject { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:14px; font-weight:500; }
.archive-row-from { color:var(--muted); font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.archive-row-meta { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; font-size:12px; color:var(--muted); }
[data-archive-empty] { width:100%; max-width:none; margin:24px 0 0; }
.archive-detail { margin-top:24px; background:var(--paper); color:var(--ink); border:1px solid var(--line); border-radius:var(--r-l); padding:24px; }
.archive-detail-header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.archive-detail-header h3 { overflow-wrap:anywhere; }
.archive-detail-header .actions { align-items:center; flex:none; }
.archive-detail-header button { align-self:flex-start; height:32px; }
.archive-body { margin-top:24px; overflow:auto; }
.twofa-status { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:16px; }
.twofa-status [data-2fa-badge] { margin:0; }
.twofa-idle { margin-top:24px; display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.twofa-idle .btn { flex:none; align-self:center; }
.twofa-steps { display:grid; gap:12px; list-style:none; font-size:14px; color:var(--ink-2); }
.twofa-steps li { display:flex; align-items:flex-start; gap:12px; }
.step-number { width:24px; height:24px; border-radius:var(--r-p); display:inline-flex; align-items:center; justify-content:center; flex:none; background:var(--ink); color:var(--d-text); font-size:12px; }
.twofa-setup { margin:24px 0; padding-top:24px; border-top:1px solid var(--line); background:var(--paper-2); color:var(--ink); }
.setup-grid { display:grid; grid-template-columns:160px minmax(0,1fr); gap:24px; align-items:start; }
.twofa-qr { width:160px; height:160px; aspect-ratio:1; padding:8px; background:var(--white); color:var(--ink); border-radius:var(--r-s); object-fit:contain; }
.twofa-secret { display:flex; gap:12px; align-items:center; margin:16px 0; min-width:0; }
.twofa-secret code { color:var(--ink); font:400 14px/1.6 var(--mono); overflow-wrap:anywhere; }
.twofa-secret button { width:auto; white-space:nowrap; flex:none; }
.twofa-confirm-actions { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:24px; }
.twofa-confirm-actions input { width:150px; }
.twofa-confirm-actions .btn { margin:0; height:48px; }
.article-layout { width:min(1184px,calc(100% - 48px)); margin:0 auto; display:grid; grid-template-columns:240px minmax(0,1fr); gap:64px; padding:64px 0 96px; }
.toc { position:sticky; top:calc(var(--header-h) + 16px); align-self:start; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.toc h2 { font-size:16px; font-weight:600; }
.toc ol { margin:16px 0 0 20px; display:grid; gap:8px; font-size:14px; }
.toc .count { margin-top:16px; }
.prose { min-width:0; max-width:820px; }
.prose h2 { margin:40px 0 20px; font-size:28px; line-height:1.3; font-weight:600; }
.prose h3 { margin:32px 0 16px; font-size:20px; line-height:1.4; font-weight:600; }
.prose p,.prose ul,.prose ol { margin:16px 0; font-size:16px; color:var(--ink-2); line-height:1.8; }
.prose ul,.prose ol { padding-left:24px; }
.prose a:not(.btn) { color:var(--or-deep); text-decoration:underline; text-underline-offset:3px; }
.prose .cta { margin-top:48px; display:block; background:var(--ink); color:var(--d-text); }
.prose .cta h2 { color:var(--d-text); margin:0; }
.prose .cta p { color:var(--d-muted); }
.prose .cta .actions { margin-top:28px; }
.prose .cta .btn-or { background:var(--or); color:var(--white); text-decoration:none; }
.prose .cta .btn-or:hover { background:var(--or-deep); color:var(--white); }
.journal-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:32px; }
.post-card { display:flex; flex-direction:column; padding:32px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); border:1px solid var(--line); min-width:0; }
.post-card:hover { background:var(--chip-hover); color:var(--ink); }
.post-card h2 { margin-top:20px; font-size:24px; line-height:1.3; }
.post-card p { margin-top:16px; color:var(--ink-2); }
.post-card time { margin-top:24px; font-size:14px; color:var(--muted); }
.recommend-float { position:fixed; z-index:45; right:24px; bottom:24px; width:min(340px,calc(100% - 32px)); border-radius:var(--r-l); overflow:hidden; background:var(--white); color:var(--ink); border:1px solid var(--line); box-shadow:var(--shadow-pill); }
.recommend-float img { width:100%; height:140px; object-fit:cover; }
.recommend-float-content { padding:24px; }
.recommend-float h2 { font-size:20px; line-height:1.3; }
.recommend-float p { margin-top:12px; font-size:14px; color:var(--ink-2); }
.recommend-float .btn { margin-top:24px; max-width:100%; min-height:40px; height:auto; padding:10px 16px; white-space:normal; line-height:1.35; }
.float-close { position:absolute; top:12px; right:12px; width:32px; height:32px; border-radius:var(--r-p); display:grid; place-items:center; background:var(--paper); color:var(--ink); border:1px solid var(--line); }
.float-close svg { width:16px; height:16px; }
@media (max-width:1100px) {
  .nav { margin-left:24px; gap:12px; font-size:14px; }
  .head-right { gap:8px; }
  .head-product { display:none; }
  .hero .frame { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .hero-copy { padding:48px 32px; }
  .hero h1 { font-size:48px; }
  .hero-inbox { padding:32px 32px 64px; }
  .pill { padding-left:16px; gap:8px; }
  .pill .addr { font-size:16px; }
  .pill .btn { padding:0 16px; font-size:14px; }
  .meta .clock { width:100%; }
  .win-body { grid-template-columns:minmax(0,34%) minmax(0,1fr); }
  .row { padding:0 16px; gap:8px; }
  .r-time { font-size:12px; }
  .r-head,.r-body { padding:24px; }
  .r-head { grid-template-columns:40px minmax(0,1fr); }
  .r-head time { grid-column:2; }
  .r-act { padding:0 24px; }
  .r-act .end { display:none; }
  .sec { padding:80px 32px; }
  .feats { gap:32px; }
  .show { padding:24px; }
  .alias { gap:8px; padding:12px; }
  .fwd-top { gap:32px; }
  .route { padding:24px; grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr); }
  .route>svg { width:32px; }
  .real { padding:20px 16px; }
  .limits { grid-template-columns:1fr; }
  .limits>div { border-left:0; border-top:1px solid var(--d-line); }
  .limits>div:first-child { border-top:0; }
  .cta-sec { padding:0 32px 80px; }
  .cta { padding:40px; gap:32px; }
  .cta h2 { font-size:32px; }
  .cta-btns { flex-direction:column; }
  .site-foot .frame { padding:48px 32px 32px; }
  .foot-top { gap:24px; grid-template-columns:2fr repeat(4,minmax(0,1fr)); }
  .auth-layout { grid-template-columns:minmax(0,1fr); }
  .auth-panel { grid-row:1; padding:40px 24px; }
  .auth-story { padding:48px 32px; }
  .article-layout { grid-template-columns:200px minmax(0,1fr); gap:32px; }
}
@media (max-width:860px) {
  .site-head .frame { padding:0 20px; }
  .nav { display:none; }
  .menu-toggle { display:inline-flex; margin-right:16px; }
  .head-right { gap:8px; }
  .head-login { display:none; }
  .hero .frame { grid-template-columns:minmax(0,1fr); }
  .hero-copy { padding:48px 32px 32px; }
  .hero h1 { font-size:48px; }
  .hero-side { border-left:0; padding:0 32px 32px; }
  .hero-art .art-photo { height:400px; }
  .meta .clock { width:auto; }
  .hero-inbox { padding-top:32px; }
  .win-bar .note { display:none; }
  .refresh { margin-left:auto; }
  .win { min-height:0; grid-template-rows:auto 1fr; }
  .win-bar { min-height:64px; }
  .win-body { display:block; }
  .list { border-right:0; min-height:260px; max-height:480px; }
  .read,.read.is-empty:not(.mobile-reader) { display:none; }
  .read.mobile-reader { position:fixed; top:var(--reader-top,var(--header-h)); bottom:0; left:0; right:0; height:calc(100dvh - var(--reader-top,var(--header-h))); z-index:75; display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; background:var(--white); color:var(--ink); overflow:auto; }
  .reader-mobile-actions { display:flex; position:sticky; top:0; z-index:2; align-items:center; justify-content:space-between; gap:16px; padding:12px 20px; border-bottom:1px solid var(--line); background:var(--white); color:var(--ink); }
  .mobile-reader .r-head { padding:20px; }
  .mobile-reader .r-head time { grid-column:2; }
  .mobile-reader .r-body { max-height:none; padding:24px 20px; overflow:auto; }
  .mobile-reader .r-act { min-height:64px; padding:12px 20px; flex-wrap:wrap; }
  .hero,.hero .frame,.hero-inbox,.win,.win-body { transform:none; animation:none; }
  .reader-open .hero-art { visibility:hidden; }
  .leak-grid { grid-template-columns:minmax(0,1fr); }
  .leak-photo { height:420px; }
  .pains { grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:auto; }
  .pain { padding:24px 20px; }
  .pain h3 { font-size:18px; }
  .feats { gap:24px; }
  .shows { grid-template-columns:minmax(0,1fr); }
  .show { height:380px; }
  .facts { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .fact { padding:24px 12px; }
  .fact .serif { font-size:32px; }
  .fwd-top { grid-template-columns:minmax(0,1fr); }
  .route { padding:32px; grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr); }
  .route>svg { width:48px; }
  .big { padding:24px; }
  .step { padding:24px; }
  .faq { gap:0 24px; }
  .cta { grid-template-columns:minmax(0,1fr); }
  .cta-btns { flex-direction:row; }
  .foot-top { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .foot-brand { grid-column:1/-1; }
  .foot-brand p { max-width:600px; }
  .desk { padding:32px 24px; }
  .desk-grid { grid-template-columns:minmax(0,1fr); }
  .alias-compose { flex-wrap:wrap; }
  .prefix-group { flex-basis:100%; }
  .article-layout { display:block; }
  .toc { position:static; margin-bottom:32px; }
  .display { font-size:48px; }
}
@media (max-width:560px) {
  :root { --header-h:64px; --h1:40px; --h2:32px; }
  .notice { padding:8px 16px; line-height:1.5; display:flex; flex-direction:column; align-items:center; gap:4px; font-size:12px; }
  .notice a { margin-left:0; max-width:100%; white-space:normal; }
  .site-head .frame { padding:0 16px; }
  .menu-toggle { margin-right:12px; width:36px; height:36px; }
  .brand { font-size:24px; }
  .brand img { width:28px; height:28px; }
  .head-right { margin-left:auto; }
  .lang { width:40px; height:40px; padding:0; justify-content:center; background:var(--head-paper); color:var(--ink); }
  .lang .lang-name { display:none; }
  .lang>svg { width:12px; height:12px; margin-right:8px; }
  .lang .chevron { right:7px; width:6px; height:6px; }
  .hero-copy { padding:40px 24px 32px; }
  .hero h1 { font-size:36px; line-height:1.2; }
  .lead-b { font-size:18px; margin-top:24px; }
  .lead { font-size:15px; }
  .seg { display:grid; width:100%; margin-top:24px; }
  .seg a { padding:8px 10px; flex-wrap:wrap; gap:2px 6px; line-height:1.35; white-space:normal; }
  .seg a small { font-size:12px; }
  .pill { height:auto; min-height:64px; padding:8px 8px 8px 16px; }
  .pill>.addr { font-size:14px; }
  .pill>svg { display:none; }
  .pill .btn { padding:0 12px; font-size:14px; gap:4px; height:44px; }
  .pill .btn svg { width:16px; height:16px; }
  .meta { gap:8px; }
  .meta .clock { width:100%; font-size:12px; }
  .meta .chip { font-size:12px; }
  .hero-side { padding:0 16px 24px; }
  .hero-art .art-photo { height:340px; }
  .hero-art .float-card { margin:16px; width:min(290px,calc(100% - 32px)); padding:20px; }
  .fc-title { font-size:24px; }
  .hero-inbox { padding:24px 16px 48px; }
  .win { min-height:0; }
  .win-bar { padding:16px; min-height:64px; flex-wrap:wrap; gap:8px; }
  .win-bar .to { order:4; flex-basis:100%; font-size:12px; }
  .row { grid-template-columns:40px minmax(0,1fr) auto; height:80px; padding:0 12px; }
  .r-from { font-size:14px; }
  .r-sub { font-size:12px; }
  .r-time { font-size:12px; }
  .list-end { padding:20px 16px; }
  .r-head h3 { font-size:18px; flex-wrap:wrap; }
  .r-head p { font-size:12px; }
  .code { padding:16px; gap:12px; flex-wrap:wrap; }
  .code .mono { font-size:32px; }
  .sec { padding:64px 24px; }
  .display { font-size:36px; line-height:1.2; }
  h2.t { font-size:32px; }
  .leak-grid,.feats,.shows,.big3,.steps,.faq { margin-top:32px; }
  .leak-photo { height:360px; }
  .leak-photo figcaption { left:24px; bottom:24px; font-size:24px; }
  .pains { grid-template-columns:minmax(0,1fr); }
  .pain { padding:24px; }
  .feats { grid-template-columns:minmax(0,1fr); gap:32px; }
  .feat .rank { margin-top:16px; }
  .show { padding:24px 16px; height:auto; min-height:340px; }
  .alias { grid-template-columns:32px minmax(0,1fr) 36px; gap:8px; }
  .alias .tag { width:32px; height:32px; }
  .alias .mono { font-size:12px; }
  .sw { width:36px; }
  .timer { margin:40px 0; }
  .timer-foot { flex-wrap:wrap; }
  .facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .fact { border-bottom:1px solid var(--line); }
  .fact:last-child { grid-column:1/-1; }
  .fwd-cta { align-items:flex-start; flex-direction:column; gap:20px; }
  .fwd-cta .btn { max-width:100%; white-space:normal; height:auto; min-height:48px; padding:12px 20px; }
  .route { padding:20px 12px; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); gap:4px; }
  .route>svg { width:24px; }
  .stub { padding:0 8px; font-size:11px; }
  .real { padding:20px 12px; }
  .real b { font-size:14px; }
  .big3,.steps { grid-template-columns:minmax(0,1fr); }
  .big { height:220px; padding:32px; }
  .step { min-height:240px; padding:32px; }
  .limits>div { padding:20px; }
  .faq-head { flex-direction:column; align-items:flex-start; gap:20px; }
  .faq { grid-template-columns:minmax(0,1fr); }
  .faq details:nth-last-child(2) { border-bottom:0; }
  .cta-sec { padding:0 16px 64px; }
  .cta { padding:32px 24px; gap:28px; }
  .cta h2 { font-size:32px; }
  .cta p { font-size:14px; overflow-wrap:anywhere; }
  .cta-btns { flex-direction:column; align-items:flex-start; }
  .cta-btns .btn { max-width:100%; height:auto; min-height:48px; padding:12px 24px; white-space:normal; line-height:1.35; }
  .site-foot .frame { padding:48px 24px 24px; }
  .foot-top { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 24px; }
  .foot-brand { grid-column:1/-1; }
  .foot-brand a.mail { font-size:12px; }
  .foot-bot { margin-top:40px; flex-direction:column; gap:8px; }
  .auth-panel { padding:32px 16px; }
  .login-card { padding:24px; }
  .auth-story { padding:40px 24px; }
  .auth-story h1 { font-size:32px; }
  .desk { padding:32px 16px; }
  .desk-session { align-items:flex-start; }
  .surface-alias,.surface-archive,.surface-safety { padding:24px 20px; }
  .alias-compose { display:grid; grid-template-columns:minmax(0,1fr); }
  .prefix-group { width:100%; padding-right:12px; }
  .prefix-group input { width:100%; padding-left:12px; }
  .prefix-group span { font-size:12px; }
  .alias-compose .btn { width:100%; }
  .alias-record { grid-template-columns:minmax(0,1fr); }
  .alias-record .actions { justify-content:flex-start; flex-wrap:wrap; }
  .archive-row-inner { grid-template-columns:minmax(0,1fr); gap:8px; }
  .archive-row-meta { justify-content:flex-start; }
  .archive-detail { padding:20px; }
  .archive-detail-header { flex-wrap:wrap; }
  .setup-grid { grid-template-columns:minmax(0,1fr); }
  .twofa-qr { width:160px; height:160px; }
  .twofa-secret { flex-wrap:wrap; }
  .twofa-secret button { width:auto; }
  .twofa-confirm-actions { gap:8px; }
  .twofa-confirm-actions input { width:100%; }
  .article-layout { width:calc(100% - 32px); padding-top:40px; }
  .prose h2 { font-size:24px; }
  .journal-grid { grid-template-columns:minmax(0,1fr); }
  .recommend-float { right:16px; bottom:16px; }
  .dialog { padding:24px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none !important; transition:none !important; }
}

/* Access and shopping desk extensions. */
.tock-access { border-left:1px solid var(--line); border-right:1px solid var(--line); }
.tock-access .auth-story { padding:56px 48px; }
.tock-access .auth-panel { padding:48px 32px; }
.tock-access .auth-story h1 { font-size:40px; line-height:1.28; font-weight:600; letter-spacing:-.02em; }
.tock-access .login-card { max-width:480px; padding:32px; }
.tock-access .login-card .eyebrow { margin-bottom:20px; }
.tock-access .login-card .auth-notice { margin:48px 0 16px; overflow-wrap:anywhere; }
.tock-access .login-card .form-note { font-weight:400; }
.access-receipt { margin-top:40px; padding:24px; border-radius:var(--r-l); background:var(--paper); color:var(--ink); }
.access-receipt>svg { color:var(--or); margin-bottom:20px; }
.access-receipt h2 { font-size:20px; line-height:1.4; font-weight:600; }
.access-addresses { margin-top:24px; display:grid; gap:24px; }
.access-addresses>div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; }
.access-addresses dt { font-size:14px; font-weight:600; }
.access-addresses dd { font-size:14px; color:var(--ink-2); }
.auth-story p.access-footnote { margin-top:32px; font-size:14px; }
.access-footnote a,.access-legal a { text-decoration:underline; text-underline-offset:3px; color:var(--or-deep); }
.access-code { letter-spacing:.16em; font-size:20px; }
.access-session-note { margin:20px 0 0; padding:12px 16px; border-radius:var(--r-s); background:var(--or-wash); color:var(--or-deep); font-size:14px; }
.access-secondary-actions { gap:8px; }
.access-secondary-actions .auth-secondary { min-width:0; height:auto; min-height:40px; padding:10px 16px; line-height:1.35; white-space:normal; }
.access-legal { margin-top:32px; padding-top:24px; border-top:1px solid var(--line); display:grid; gap:12px; }
.access-legal p { font-size:14px; color:var(--muted); line-height:1.7; }
.shopping-desk { padding-top:40px; }
.desk-identity { min-width:0; }
.desk-caption { font-size:12px; color:var(--muted); margin-bottom:8px; }
.desk-identity [data-session-email] { font-size:16px; color:var(--ink); }
.desk-error { margin:0 0 24px; padding:16px; border-radius:var(--r-s); background:var(--or-wash); color:var(--or-deep); }
.shopping-addresses { padding:32px; }
.desk-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:32px; }
.desk-section-head>div { min-width:0; }
.desk-section-head h1 { font-size:32px; line-height:1.25; font-weight:600; letter-spacing:-.02em; }
.desk-section-head .eyebrow { margin-bottom:20px; }
.desk-section-head>.status-pill { flex:none; background:var(--ink); color:var(--d-text); }
.shopping-addresses .section-intro { max-width:720px; }
.desk-prefix-label { display:block; margin-top:24px; font-size:14px; font-weight:500; }
.desk-prefix-label>span { margin-left:8px; color:var(--muted); font-weight:400; }
.shopping-addresses .alias-compose { margin-top:12px; }
.shopping-addresses .alias-compose .prefix-group:focus-within { border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.prefix-group input:focus,.prefix-group input:focus-visible { outline:none; border-color:transparent; box-shadow:none; }
.shopping-addresses .alias-compose button[type="submit"] { min-width:120px; }
.shopping-addresses .alias-record { padding:20px 0; gap:24px; }
.shopping-addresses .alias-record:last-child { border-bottom:0; padding-bottom:0; }
.alias-identity { min-width:0; display:flex; align-items:center; gap:16px; flex-wrap:wrap; }
.alias-identity .status-pill { margin:0; flex:none; }
.alias-detail-link { display:block; text-align:left; text-decoration:underline; text-decoration-color:var(--fwd-line); text-underline-offset:4px; background:transparent; color:var(--ink); min-width:0; }
.alias-detail-link:hover { color:var(--or-deep); text-decoration-color:var(--or-deep); }
.alias-record .actions .chip { background:var(--white); color:var(--ink); border:1px solid var(--line); }
.alias-record .actions .chip:hover { background:var(--ink); color:var(--d-text); border-color:var(--ink); }
.alias-stats-panel { margin-top:32px; padding:24px; border:1px solid var(--fwd-line); border-radius:var(--r-l); background:var(--paper); color:var(--ink); }
.desk-subhead { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.desk-subhead>div { min-width:0; }
.desk h2.alias-stats-title { font:400 16px/1.5 var(--mono); overflow-wrap:anywhere; }
.alias-stat-grid { margin-top:24px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.alias-stat-grid dt { color:var(--muted); font-size:14px; }
.alias-stat-grid dd { margin-top:8px; font-size:24px; line-height:1.3; }
.shopping-records { margin-top:40px; padding:32px; background:var(--white); color:var(--ink); }
.records-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:32px; }
.records-heading>div:first-child { min-width:0; flex:1; }
.records-heading .filter { flex:none; margin-top:40px; }
.records-heading .section-intro { max-width:720px; }
.shopping-records .archive-list { margin-top:32px; border-top:0; }
.archive-row-copy { display:grid; min-width:0; gap:4px; }
.archive-row-subject,.archive-row-from { display:block; }
.archive-row:hover { background:var(--head-paper); color:var(--ink); }
.archive-row:focus-visible { outline-offset:-2px; }
.shopping-records [data-archive-empty] { margin:24px 0 0; padding:20px; width:100%; max-width:none; }
.archive-detail { scroll-margin-top:calc(var(--header-h) + 24px); }
.archive-detail-identity { min-width:0; }
.archive-detail-state { margin-bottom:16px; }
.archive-detail-meta { margin-top:12px; display:flex; align-items:center; flex-wrap:wrap; gap:8px 16px; font-size:14px; color:var(--muted); overflow-wrap:anywhere; }
.archive-detail-header .archive-delete { height:32px; align-self:flex-start; }
.records-footnote { margin-top:24px; font-size:14px; color:var(--muted); }
.shopping-safety { margin-top:40px; background:var(--paper-2); color:var(--ink); padding:32px; }
.safety-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:32px; }
.safety-title-group { display:flex; align-items:flex-start; gap:20px; min-width:0; }
.safety-icon { color:var(--or-deep); }
.safety-title-group>div { min-width:0; }
.safety-title-group .section-intro { margin-top:20px; }
.safety-heading .twofa-status { margin:0; font-size:14px; flex:none; }
.shopping-safety .twofa-status .status-pill.is-off { background:var(--white); color:var(--ink-2); }
.shopping-safety .twofa-idle { display:flex; justify-content:space-between; align-items:center; gap:32px; margin-top:32px; }
.shopping-safety .twofa-idle .btn { height:40px; flex:none; }
.shopping-safety .twofa-steps { max-width:760px; }
.setup-instructions { min-width:0; }
.setup-instructions>.form-note:first-of-type { margin-top:12px; }
.setup-instructions .desk-prefix-label { margin-top:24px; }
.setup-instructions .twofa-confirm-actions { margin-top:12px; }
.shopping-safety .setup-grid { grid-template-columns:160px minmax(0,1fr); }
.shopping-safety .twofa-secret { align-items:center; }
.shopping-safety .twofa-confirm-actions { align-items:center; }
.shopping-safety .twofa-confirm-actions .btn { height:48px; margin:0; }
.twofa-disable-panel { margin-top:24px; padding-top:24px; border-top:1px solid var(--line); }
.twofa-disable-panel>.form-note { margin-top:0; }
.twofa-disable-panel .twofa-confirm-actions { margin-top:12px; }
.desk-endnote { margin-top:40px; padding:8px 0 0; display:flex; align-items:flex-start; justify-content:space-between; gap:32px; color:var(--muted); font-size:14px; }
.desk-endnote p { max-width:720px; }
.desk-endnote a { color:var(--or-deep); text-decoration:underline; text-underline-offset:3px; }
.unread-dot { display:inline-block; flex:none; width:6px; height:6px; border-radius:var(--r-p); background:var(--or); }
.r-main>.r-from,.r-main>.r-sub { display:flex; }
.r-main>.r-sub { display:block; }
.inline-image-note { margin:0 0 20px; padding:12px 16px; border-radius:var(--r-s); background:var(--paper-2); color:var(--ink-2); font-size:14px; }
.mail-files { margin-top:24px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.mail-files h4 { width:100%; font-size:14px; font-weight:500; margin:0; }
.mail-files .chip { max-width:100%; height:auto; padding:8px 12px; overflow-wrap:anywhere; white-space:normal; text-align:left; }
.address-ready { animation:tock-address-ready 1.2s ease; }
@keyframes tock-address-ready {
  0%,100% { outline:0 solid var(--or-wash); }
  35% { outline:6px solid var(--or-wash); }
}
@media (min-width:1101px) {
  .tock-access { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:961px) and (max-width:1100px) {
  .tock-access { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tock-access .auth-panel { grid-row:auto; padding:40px 24px; }
  .tock-access .auth-story { padding:48px 32px; }
  .tock-access .login-card { padding:24px; }
  .tock-access .auth-story h1 { font-size:32px; }
}
@media (max-width:960px) {
  .tock-access { grid-template-columns:minmax(0,1fr); }
  .tock-access .auth-panel { grid-row:1; padding:40px 24px; }
  .tock-access .auth-story { padding:48px 32px; }
  .tock-access .auth-story h1 { font-size:32px; line-height:1.28; }
  .records-heading { display:block; }
  .records-heading .filter { margin-top:24px; }
  .desk-section-head { flex-wrap:wrap; gap:24px; }
  .safety-heading { flex-wrap:wrap; gap:24px; }
  .shopping-safety .twofa-idle { align-items:flex-start; flex-direction:column; gap:24px; }
}
@media (max-width:720px) {
  .shopping-addresses .alias-compose { display:grid; grid-template-columns:minmax(0,1fr); }
  .shopping-addresses .alias-compose .btn { width:100%; }
  .shopping-addresses .alias-record { grid-template-columns:minmax(0,1fr); gap:16px; }
  .alias-identity { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
  .alias-identity .status-pill { justify-self:start; }
  .alias-record .actions { justify-content:flex-start; }
  .records-heading .filter { margin-top:24px; }
  .archive-row-inner { grid-template-columns:minmax(0,1fr); gap:8px; }
  .archive-row-meta { justify-content:flex-start; }
  .desk-endnote { display:grid; grid-template-columns:minmax(0,1fr); gap:20px; }
  .safety-title-group { gap:12px; }
  .shopping-safety .setup-grid { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:560px) {
  .tock-access .auth-panel { padding:32px 16px; }
  .tock-access .login-card { padding:24px; }
  .tock-access .auth-story { padding:40px 24px; }
  .access-receipt { padding:24px 20px; }
  .access-addresses>div { grid-template-columns:minmax(0,1fr); gap:8px; }
  .shopping-desk { padding:32px 16px 40px; }
  .shopping-addresses,.shopping-records,.shopping-safety { padding:24px 20px; }
  .desk-section-head h1 { font-size:28px; }
  .shopping-records,.shopping-safety { margin-top:32px; }
  .desk-session .actions { gap:8px; }
  .desk-session .actions .btn { font-size:14px; padding:0 16px; }
  .desk-prefix-label>span { display:block; margin:4px 0 0; }
  .alias-stats-panel { padding:20px; }
  .alias-stat-grid { gap:12px; }
  .alias-stat-grid dd { font-size:20px; }
  .archive-detail-header { flex-wrap:wrap; }
  .archive-detail-header .actions { flex-wrap:wrap; }
  .safety-title-group { display:block; }
  .safety-icon { margin-bottom:20px; }
  .shopping-safety .twofa-secret { align-items:flex-start; gap:12px; }
  .shopping-safety .twofa-secret code { flex-basis:100%; }
  .shopping-safety .twofa-secret button { width:auto; }
  .shopping-safety .twofa-confirm-actions { gap:12px; }
  .shopping-safety .twofa-confirm-actions input { width:100%; }
  .shopping-safety .twofa-confirm-actions .btn { padding:0 16px; font-size:14px; }
  .pill>.addr { overflow:visible; text-overflow:clip; font-size:13px; white-space:normal; overflow-wrap:anywhere; line-height:1.5; }
  .pill>.btn { flex:none; }
  .read.mobile-reader { height:100dvh; max-height:calc(100dvh - var(--reader-top,var(--header-h))); border-radius:0; transform:none; animation:none; }
  .reader-mobile-actions .chip { min-height:40px; }
}


/* Shared component corrections. */
.hero-actions { min-width:0; }
.p-temp { min-width:0; }
.feat-sec { min-width:0; }
.faq { align-items:start; }
.brand-name { display:inline-block; flex:none; white-space:nowrap; overflow:visible; }
.brand > span { flex:none; white-space:nowrap; }
.brand { flex-shrink:0; }
.site-head { position:sticky; top:0; z-index:100; }
[data-site-nav] a { white-space:nowrap; }
[data-site-nav] a[aria-current="page"],
[data-nav-drawer] a[aria-current="page"] { padding:6px 12px; background:color-mix(in srgb,var(--or-deep) 10%,var(--white)); color:var(--ink); }
.section-head,
.content-head { margin-bottom:40px; }
:lang(zh) h1,
:lang(zh) h2 { text-wrap:balance; }
[data-login] label,
.auth-card label { display:block; margin-bottom:8px; }
.auth-card h2,
[data-login] [data-code-pane] h2,
[data-login] [data-login-twofa-pane] h2 { font-size:22px; line-height:1.4; }
.archive-detail,
[data-archive-detail] { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.archive-detail iframe,
[data-archive-detail] iframe { display:block; width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
.reader-head { min-width:0; }
.reader-meta { min-width:0; overflow-wrap:anywhere; }
.reader:not(.mobile-reader) [data-reader-close],
.read:not(.mobile-reader) [data-reader-close],
[data-reader]:not(.mobile-reader) .reader-mobile-actions { display:none; }
.status-pill.is-active { background:color-mix(in srgb,var(--or-deep) 14%,var(--white)); color:var(--or-deep); }
.status-pill.is-paused { background:color-mix(in srgb,var(--ink) 9%,var(--white)); color:var(--ink); }
.lang .chevron { position:absolute; top:50%; flex:none; transform:translateY(-50%) rotate(45deg); }
.lang[aria-expanded="true"] .chevron {
  position:absolute;
  top:50%;
  transform:rotate(45deg);
  margin-top:-3px;
}
.twofa-setup,
[data-twofa-setup] { margin-top:24px; }
[data-twofa-setup] [data-twofa-confirm] { margin:0; }
[data-twofa-setup] .actions { align-items:center; }
[data-twofa-setup] .actions [data-twofa-confirm],
[data-twofa-setup] .twofa-confirm-actions [data-twofa-confirm] { margin:0; }
.twofa-status { display:flex; align-items:center; margin-bottom:24px; }
.twofa-status [data-2fa-badge] { margin:0; }
[data-2fa-badge]:not(.twofa-status *) { margin:0; }


/* Privacy editorial layout. */
.privacy-hero { background:var(--paper); color:var(--ink); }
.privacy-hero-inner { padding:64px 48px 48px; }
.privacy-heading { display:grid; grid-template-columns:minmax(0,1fr) 260px; align-items:start; gap:64px; }
.privacy-heading h1 { max-width:760px; font-size:var(--h1); line-height:1.18; letter-spacing:-.02em; font-weight:600; }
.privacy-heading .section-intro { max-width:720px; margin-top:24px; color:var(--ink-2); }
.privacy-edition { border-left:1px solid var(--line); padding-left:32px; font-size:14px; color:var(--muted); }
.privacy-edition>svg { margin-bottom:24px; color:var(--or-deep); }
.privacy-edition p+p { margin-top:16px; }
.privacy-edition time,.privacy-edition strong { color:var(--ink); font-weight:500; }
.privacy-edition>a { display:inline-block; margin-top:24px; color:var(--ink-2); font-family:var(--mono); font-size:12px; overflow-wrap:anywhere; text-decoration:underline; text-underline-offset:4px; }
.privacy-glance.legal-glance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:48px; }
.privacy-glance-card { display:flex; flex-direction:column; min-width:0; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.privacy-glance-card:hover { background:var(--chip-hover); color:var(--ink); }
.privacy-index { font-size:12px; color:var(--muted); }
.privacy-glance-card h2 { margin-top:20px; font-size:20px; line-height:1.4; font-weight:600; }
.privacy-glance-card p { margin-top:12px; font-size:14px; color:var(--ink-2); }
.privacy-card-link { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-top:24px; margin-top:auto; color:var(--or-deep); font-size:14px; font-weight:500; }
.privacy-reading { display:grid; grid-template-columns:240px minmax(0,1fr); align-items:start; gap:64px; padding:48px 48px 96px; border-top:1px solid var(--line); }
.privacy-sidebar { position:sticky; top:calc(var(--header-h) + 24px); min-width:0; }
.privacy-sidebar-title { font-size:14px; font-weight:600; }
.privacy-contents { display:grid; gap:8px; margin-top:24px; padding-left:16px; border-left:1px solid var(--line); }
.privacy-contents a { padding:4px 0; font-size:14px; color:var(--ink-2); }
.privacy-contents a:hover { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }
.privacy-sidebar-note { margin-top:32px; font-size:14px; line-height:1.7; color:var(--muted); }
.privacy-sidebar-link { display:inline-block; margin-top:20px; font-size:14px; color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }
.privacy-copy { max-width:none; min-width:0; }
.privacy-section { scroll-margin-top:calc(var(--header-h) + 32px); }
.privacy-section+.privacy-section { margin-top:64px; padding-top:48px; border-top:1px solid var(--line); }
.privacy-copy .privacy-section-number { margin:0 0 20px; font-size:12px; line-height:1.6; color:var(--or-deep); font-weight:500; }
.privacy-copy h2 { margin:0 0 24px; font-size:28px; line-height:1.35; font-weight:600; letter-spacing:-.02em; }
.privacy-copy h3 { margin:32px 0 16px; font-size:20px; line-height:1.4; font-weight:600; }
.privacy-copy p { font-weight:400; }
.privacy-data-list { display:grid; margin:32px 0; border-bottom:1px solid var(--line); }
.privacy-data-list>div { display:grid; grid-template-columns:104px minmax(0,1fr); gap:24px; padding:20px 0; border-top:1px solid var(--line); }
.privacy-data-list dt { font-size:14px; font-weight:600; color:var(--ink); }
.privacy-data-list dd { font-size:14px; line-height:1.8; color:var(--ink-2); }
.privacy-duration-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:24px 0 32px; }
.privacy-duration-card { padding:24px 20px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); min-width:0; }
.privacy-copy .privacy-duration-value { margin:0 0 20px; font:400 40px/1.1 var(--serif); color:var(--or-deep); }
.privacy-duration-value span { font:400 14px/1.5 var(--sans); color:var(--ink-2); }
.privacy-duration-card h4 { font-size:14px; line-height:1.5; font-weight:600; color:var(--ink); }
.privacy-copy .privacy-duration-card p:not(.privacy-duration-value) { margin:8px 0 0; font-size:14px; line-height:1.7; color:var(--ink-2); }
.privacy-boundary { display:flex; align-items:flex-start; gap:16px; margin:32px 0; padding:24px; border-radius:var(--r-l); background:var(--d-bg); color:var(--d-text); }
.privacy-boundary>svg { margin-top:2px; color:var(--rose); }
.privacy-copy .privacy-boundary h3 { margin:0; font-size:20px; color:var(--d-text); }
.privacy-copy .privacy-boundary p { margin:12px 0 0; font-size:14px; line-height:1.8; color:var(--d-muted); }
.privacy-retention-table { margin:32px 0; border:1px solid var(--line); border-radius:var(--r-s); background:var(--head-paper); color:var(--ink); }
.privacy-retention-table table { min-width:600px; table-layout:fixed; }
.privacy-retention-table caption { padding:16px; text-align:left; font-size:14px; font-weight:500; color:var(--ink); background:var(--paper-2); }
.privacy-retention-table thead th { background:var(--paper-2); color:var(--ink); }
.privacy-retention-table th:first-child { width:25%; }
.privacy-retention-table tbody th { background:var(--head-paper); color:var(--ink); font-weight:500; }
.privacy-retention-table td { color:var(--ink-2); line-height:1.8; overflow-wrap:anywhere; }
.privacy-retention-table tbody tr:last-child>* { border-bottom:0; }
.privacy-delete-list { display:grid; gap:16px; }
.privacy-delete-list strong { color:var(--ink); font-weight:600; }
.privacy-practice { margin:32px 0; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.privacy-copy .privacy-practice h3 { margin:0 0 20px; font-size:20px; }
.privacy-copy .privacy-practice ol { display:grid; gap:12px; margin:0; padding-left:24px; font-size:14px; color:var(--ink-2); }
.privacy-copy .privacy-practice p { margin:24px 0 0; padding-top:20px; border-top:1px solid var(--fwd-line); font-size:14px; color:var(--ink-2); }
.privacy-contact { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; margin:32px 0; padding:24px; border:1px solid var(--line); border-radius:var(--r-l); background:var(--white); color:var(--ink); }
.privacy-copy .privacy-contact-label { margin:0 0 12px; font-size:12px; color:var(--muted); }
.privacy-copy .privacy-contact-address { font:400 16px/1.5 var(--mono); overflow-wrap:anywhere; color:var(--ink); text-decoration-color:var(--line); }
.privacy-copy .privacy-contact p:last-child { margin:12px 0 0; font-size:14px; color:var(--ink-2); }
.privacy-contact .btn { max-width:100%; white-space:normal; height:auto; min-height:40px; padding:10px 20px; line-height:1.35; }
@media (max-width:1100px) {
  .privacy-heading { grid-template-columns:minmax(0,1fr) 220px; gap:32px; }
  .privacy-hero-inner { padding:48px 32px; }
  .privacy-heading h1 { font-size:48px; }
  .privacy-edition { padding-left:24px; }
  .privacy-reading { grid-template-columns:200px minmax(0,1fr); gap:32px; padding:40px 32px 80px; }
  .privacy-duration-grid { gap:8px; }
  .privacy-duration-card { padding:20px 16px; }
  .privacy-contact { grid-template-columns:minmax(0,1fr); }
  .privacy-contact .btn { justify-self:start; }
}
@media (max-width:860px) {
  .privacy-heading { grid-template-columns:minmax(0,1fr); gap:32px; }
  .privacy-edition { display:flex; align-items:flex-start; flex-wrap:wrap; gap:24px; border-left:0; border-top:1px solid var(--line); padding:24px 0 0; }
  .privacy-edition>svg { margin:0; }
  .privacy-edition p+p { margin:0; }
  .privacy-edition>a { margin:0; align-self:center; }
  .privacy-glance.legal-glance { grid-template-columns:minmax(0,1fr); margin-top:32px; gap:12px; }
  .privacy-glance-card { padding:24px; }
  .privacy-glance-card h2 { margin-top:20px; }
  .privacy-card-link { padding-top:24px; }
  .privacy-reading { grid-template-columns:minmax(0,1fr); gap:40px; padding:32px 32px 64px; }
  .privacy-sidebar { position:static; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
  .privacy-contents { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:16px; border-left:0; padding-left:0; gap:8px 24px; }
  .privacy-sidebar-note { margin-top:24px; }
  .privacy-sidebar-link { margin-top:16px; }
  .privacy-section+.privacy-section { margin-top:48px; padding-top:40px; }
  .privacy-copy h2 { font-size:28px; line-height:1.4; }
  .privacy-copy h3 { font-size:20px; line-height:1.4; }
}
@media (max-width:560px) {
  .privacy-hero-inner { padding:40px 24px 32px; }
  .privacy-heading h1 { font-size:36px; line-height:1.2; }
  .privacy-heading .section-intro { font-size:16px; margin-top:24px; }
  .privacy-edition { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
  .privacy-edition>svg { width:40px; height:40px; }
  .privacy-edition>a { font-size:14px; }
  .privacy-reading { padding:32px 24px 64px; }
  .privacy-sidebar { padding:24px 20px; }
  .privacy-contents { grid-template-columns:minmax(0,1fr); gap:8px; }
  .privacy-copy h2 { font-size:24px; }
  .privacy-copy h3 { font-size:20px; }
  .privacy-data-list>div { grid-template-columns:minmax(0,1fr); gap:8px; }
  .privacy-duration-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  .privacy-duration-card { padding:24px; }
  .privacy-copy .privacy-duration-value { margin-bottom:16px; }
  .privacy-boundary { display:block; padding:24px 20px; }
  .privacy-boundary>svg { display:block; margin:0 0 16px; }
  .privacy-practice { padding:24px 20px; }
  .privacy-contact { padding:24px 20px; }
  .privacy-copy .privacy-contact-address { font-size:14px; }
}


/* Terms reading surfaces. */
.terms-hero { background:var(--paper); color:var(--ink); }
.terms-hero-inner { padding:64px 48px 48px; }
.terms-hero h1 { max-width:840px; font:600 var(--h2)/1.25 var(--sans); letter-spacing:-.02em; }
.terms-hero .section-intro { max-width:720px; margin-top:24px; }
.terms-edition { display:flex; align-items:center; gap:16px 32px; flex-wrap:wrap; margin-top:24px; font-size:14px; color:var(--muted); }
.terms-edition a { color:var(--ink-2); text-decoration:underline; text-underline-offset:4px; }
.terms-edition a:hover { color:var(--or-deep); }
.terms-legal-glance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:48px; }
.terms-glance-card { display:flex; flex-direction:column; min-width:0; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.terms-glance-card>svg { width:24px; height:24px; margin-bottom:24px; color:var(--or-deep); }
.terms-glance-card h2 { font-size:20px; line-height:1.4; font-weight:600; }
.terms-glance-card p { margin-top:12px; font-size:14px; line-height:1.7; color:var(--ink-2); }
.terms-glance-card a { align-self:flex-start; margin-top:auto; padding-top:24px; font-size:14px; font-weight:500; text-decoration:underline; text-underline-offset:4px; color:var(--ink); }
.terms-glance-card a:hover { color:var(--or-deep); }
.terms-reading { display:grid; grid-template-columns:240px minmax(0,1fr); align-items:start; gap:64px; padding:48px 48px 96px; border-top:1px solid var(--line); }
.terms-index { position:sticky; top:calc(var(--header-h) + 24px); min-width:0; padding-right:24px; }
.terms-index>p { font-size:14px; font-weight:600; color:var(--ink); }
.terms-index ol { display:grid; gap:12px; margin:20px 0 0; padding-left:20px; color:var(--muted); font-size:14px; }
.terms-index a { color:var(--ink-2); }
.terms-index a:hover { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }
.terms-index-note { margin-top:32px; padding-top:24px; border-top:1px solid var(--line); font-size:14px; line-height:1.7; color:var(--muted); }
.terms-index .terms-index-link { display:inline-block; margin-top:16px; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.terms-prose { width:100%; max-width:820px; }
.terms-clause { scroll-margin-top:calc(var(--header-h) + 32px); }
.terms-clause+.terms-clause { margin-top:48px; padding-top:40px; border-top:1px solid var(--line); }
.terms-prose .terms-clause-number { margin:0 0 20px; color:var(--or-deep); font-size:12px; font-weight:500; letter-spacing:.02em; }
.terms-prose h2 { margin:0 0 24px; font-size:24px; line-height:1.4; font-weight:600; letter-spacing:-.02em; }
.terms-prose h3 { margin:0 0 16px; font-size:20px; line-height:1.4; font-weight:600; }
.terms-prose p { font-size:16px; font-weight:400; }
.terms-prose strong { font-weight:600; }
.terms-boundary-table { margin:24px 0 32px; border:1px solid var(--line); border-radius:var(--r-s); background:var(--white); color:var(--ink); }
.terms-boundary-table table { min-width:580px; }
.terms-boundary-table caption { padding:16px; text-align:left; background:var(--paper-2); color:var(--ink); font-size:14px; font-weight:600; }
.terms-boundary-table th { min-width:116px; }
.terms-boundary-table tbody th { background:var(--head-paper); color:var(--ink); }
.terms-boundary-table td { line-height:1.7; }
.terms-boundary-table tr:last-child th,.terms-boundary-table tr:last-child td { border-bottom:0; }
.terms-use-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:24px 0 32px; }
.terms-use-card { min-width:0; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.terms-use-heading { display:flex; align-items:center; gap:12px; }
.terms-use-heading svg { width:24px; height:24px; color:var(--or-deep); }
.terms-prose .terms-use-heading h3 { margin:0; font-size:18px; line-height:1.4; }
.terms-prose .terms-use-card ul { display:grid; gap:16px; margin:24px 0 0; padding:0; list-style:none; color:var(--ink-2); font-size:14px; line-height:1.7; }
.terms-use-restricted { background:var(--d-card); color:var(--d-text); }
.terms-use-restricted .terms-use-heading svg { color:var(--rose); }
.terms-prose .terms-use-restricted ul { color:var(--d-muted); }
.terms-use-restricted strong { color:var(--d-text); }
.terms-contact { margin:32px 0 0; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.terms-prose .terms-contact h3 { margin:0 0 20px; }
.terms-prose .terms-contact p { margin:0; color:var(--ink-2); font-size:14px; }
.terms-contact .btn { margin-top:24px; max-width:100%; min-height:40px; height:auto; padding:10px 20px; white-space:normal; overflow-wrap:anywhere; line-height:1.35; }
.terms-reading-end { margin-top:48px; padding-top:32px; border-top:1px solid var(--line); }
.terms-prose .terms-reading-end p { margin:0; color:var(--muted); font-size:14px; }
.terms-reading-end .actions { margin-top:24px; }
.terms-reading-end .btn { max-width:100%; min-height:48px; height:auto; padding:12px 24px; line-height:1.35; white-space:normal; }
@media (max-width:1100px) {
  .terms-reading { grid-template-columns:200px minmax(0,1fr); gap:32px; padding-right:32px; padding-left:32px; }
  .terms-hero-inner { padding-right:32px; padding-left:32px; }
}
@media (max-width:860px) {
  .terms-hero-inner { padding:48px 32px 40px; }
  .terms-legal-glance { grid-template-columns:minmax(0,1fr); gap:16px; margin-top:32px; }
  .terms-glance-card>svg { margin-bottom:16px; }
  .terms-glance-card a { margin-top:0; padding-top:20px; }
  .terms-reading { grid-template-columns:minmax(0,1fr); gap:40px; padding:40px 32px 64px; }
  .terms-index { position:static; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
  .terms-index ol { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 24px; }
  .terms-index-note { margin-top:24px; padding-top:20px; }
  .terms-prose { max-width:none; }
}
@media (max-width:560px) {
  .terms-hero-inner { padding:40px 24px 32px; }
  .terms-hero h1 { font-size:32px; line-height:1.25; }
  .terms-edition { display:grid; gap:12px; }
  .terms-glance-card { padding:24px; }
  .terms-reading { padding:32px 24px 64px; gap:32px; }
  .terms-index ol { grid-template-columns:minmax(0,1fr); }
  .terms-clause+.terms-clause { margin-top:40px; padding-top:32px; }
  .terms-prose h2 { font-size:24px; }
  .terms-prose h3 { font-size:20px; }
  .terms-use-grid { grid-template-columns:minmax(0,1fr); }
  .terms-contact { padding:24px 20px; }
  .terms-reading-end .actions { align-items:flex-start; flex-direction:column; }
}


/* Coupon signup checklist. */
.coupon-hero { background:var(--paper); color:var(--ink); }
.coupon-hero-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:64px; align-items:center; }
.coupon-title { max-width:720px; font-size:var(--h1); line-height:1.15; font-weight:600; letter-spacing:-.02em; }
.coupon-hero-actions { margin-top:32px; }
.coupon-hero-actions .btn,.coupon-result-actions .btn,.coupon-end-actions .btn,.coupon-handoff-actions .btn { max-width:100%; min-height:48px; height:auto; padding:12px 24px; white-space:normal; line-height:1.35; text-align:center; }
.coupon-boundary { margin-top:24px; max-width:640px; font-size:14px; color:var(--muted); }
.coupon-receipt { padding:32px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.coupon-receipt>svg { color:var(--or-deep); margin-bottom:24px; }
.coupon-receipt-kicker { font-size:14px; color:var(--ink-2); }
.coupon-receipt h2 { margin-top:20px; font-size:40px; line-height:1.2; letter-spacing:-.02em; font-weight:600; }
.coupon-receipt-facts { margin:32px 0; display:grid; gap:16px; }
.coupon-receipt-facts>div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; font-size:14px; }
.coupon-receipt-facts dt { font-weight:500; }
.coupon-receipt-facts dd { color:var(--ink-2); }
.coupon-text-link { display:inline-block; color:var(--or-deep); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.coupon-text-link:hover { color:var(--ink); }
.coupon-workspace { background:var(--paper-2); color:var(--ink); }
.coupon-workspace .frame { border-color:var(--fwd-line); }
.coupon-workspace-head { display:flex; align-items:flex-start; justify-content:space-between; gap:32px; margin-bottom:48px; }
.coupon-workspace-head>div { min-width:0; }
.coupon-local-note { display:flex; align-items:center; gap:8px; flex:none; margin-top:4px; font-size:14px; color:var(--ink-2); }
.coupon-local-note svg { color:var(--or-deep); }
.coupon-noscript { padding:20px; margin-bottom:32px; border:1px solid var(--fwd-line); border-radius:var(--r-s); background:var(--paper); color:var(--ink-2); }
.coupon-form { min-width:0; }
.coupon-checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.coupon-check { min-width:0; padding:32px; border-radius:var(--r-l); background:var(--head-paper); color:var(--ink); }
.coupon-check-wide { grid-column:1/-1; }
.coupon-check-heading { display:flex; align-items:flex-start; gap:16px; margin-bottom:24px; }
.coupon-check-heading>div { min-width:0; }
.coupon-number { display:flex; align-items:center; justify-content:center; flex:none; width:40px; height:40px; border-radius:var(--r-s); background:var(--ink); color:var(--d-text); font:400 16px/1 var(--mono); }
.coupon-check-topic { margin-bottom:8px; font-size:12px; color:var(--muted); }
.coupon-check h3 { font-size:20px; line-height:1.4; font-weight:600; }
.coupon-check>p { margin-top:16px; color:var(--ink-2); font-size:16px; }
.coupon-points { margin:20px 0 24px; padding-left:20px; display:grid; gap:12px; color:var(--ink-2); font-size:14px; }
.coupon-time-field { margin:24px 0; }
.coupon-time-field>label { display:block; margin-bottom:8px; font-size:14px; font-weight:500; }
.coupon-time-input { display:flex; align-items:center; gap:12px; color:var(--ink-2); font-size:14px; }
.coupon-time-input .input { width:112px; background:var(--white); color:var(--ink); border-color:var(--muted); }
.coupon-option,.coupon-ack { display:flex; align-items:flex-start; gap:12px; font-size:14px; cursor:pointer; }
.coupon-option { margin-top:24px; color:var(--ink-2); }
.coupon-ack { margin-top:24px; padding:16px; border:1px solid var(--line); border-radius:var(--r-s); background:var(--paper-2); color:var(--ink); }
.coupon-option input,.coupon-ack input,.coupon-choice>input { flex:none; width:18px; height:18px; margin-top:3px; accent-color:var(--or-deep); cursor:pointer; }
.coupon-check>.coupon-text-link { margin-top:24px; }
.coupon-mini-note { display:grid; gap:8px; margin-top:24px; padding:20px; border-radius:var(--r-s); background:var(--paper-2); color:var(--ink); font-size:14px; }
.coupon-mini-note strong { font-weight:500; }
.coupon-mini-note span { color:var(--ink-2); }
.coupon-purpose { min-width:0; margin-top:24px; padding:0; border:0; }
.coupon-purpose legend { padding:0; margin-bottom:16px; font-size:14px; font-weight:500; }
.coupon-choice-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.coupon-choice { display:flex; align-items:flex-start; gap:12px; padding:24px; border:1px solid var(--fwd-line); border-radius:var(--r-l); background:var(--paper); color:var(--ink); cursor:pointer; min-width:0; }
.coupon-choice:has(input:checked) { border-color:var(--or-deep); background:var(--or-wash); color:var(--ink); }
.coupon-choice:focus-within { outline:2px solid var(--ink); outline-offset:3px; }
.coupon-choice-body { display:grid; gap:12px; min-width:0; }
.coupon-choice-body strong { font-size:18px; line-height:1.4; font-weight:600; }
.coupon-choice-body>span { font-size:14px; color:var(--ink-2); }
.coupon-choice-body small { font-size:12px; color:var(--or-deep); }
.coupon-table-caption { padding:0 0 16px; text-align:left; font-size:14px; color:var(--ink-2); }
.coupon-summary { margin-top:48px; padding:40px; border-radius:var(--r-l); background:var(--paper); color:var(--ink); border:1px solid var(--fwd-line); scroll-margin-top:calc(var(--header-h) + 24px); }
.coupon-summary-head { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
.coupon-summary-head h2 { font-size:32px; line-height:1.3; font-weight:600; letter-spacing:-.02em; }
.coupon-summary-head .btn { flex:none; font-size:14px; }
.coupon-summary-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:48px; margin-top:32px; }
.coupon-result { min-width:0; }
.coupon-progress { display:inline-flex; align-items:center; min-height:28px; padding:4px 12px; border-radius:var(--r-p); background:var(--ink); color:var(--d-text); font-size:12px; }
.coupon-result h3 { margin-top:20px; font-size:24px; line-height:1.4; font-weight:600; }
.coupon-result h3+p { margin-top:16px; color:var(--ink-2); }
.coupon-wait-summary { margin-top:20px; color:var(--muted); font-size:14px; }
.coupon-result-actions { margin-top:32px; }
.coupon-summary-note { margin-top:16px; font-size:14px; color:var(--muted); }
.coupon-pending { align-self:start; padding:24px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.coupon-pending h3 { font-size:18px; line-height:1.4; font-weight:600; }
.coupon-pending ul { display:grid; gap:12px; margin-top:20px; padding-left:20px; font-size:14px; color:var(--ink-2); }
.coupon-pending p { margin-top:20px; font-size:14px; color:var(--ink-2); }
.coupon-data-note { margin-top:32px; padding-top:24px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); }
.coupon-handoff { color:var(--d-text); }
.coupon-handoff-list { list-style:none; margin-top:48px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.coupon-handoff-list li { min-width:0; }
.coupon-handoff-number { display:inline-flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:var(--r-s); background:var(--d-card); color:var(--or); font:400 20px/1 var(--mono); }
.coupon-handoff-list h3 { margin-top:24px; font-size:20px; line-height:1.4; font-weight:600; }
.coupon-handoff-list p { margin-top:12px; font-size:14px; color:var(--d-muted); }
.coupon-handoff-actions { margin-top:40px; }
.coupon-end { background:var(--paper); color:var(--ink); }
.coupon-end-copy { max-width:820px; margin:0 auto; text-align:center; }
.coupon-end-copy .section-intro { margin-left:auto; margin-right:auto; }
.coupon-end-actions { justify-content:center; margin-top:32px; }
@media (max-width:860px) {
  .coupon-hero-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .coupon-title { font-size:48px; }
  .coupon-receipt { padding:32px; }
  .coupon-receipt h2 br { display:none; }
  .coupon-receipt-facts { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
  .coupon-receipt-facts>div { grid-template-columns:minmax(0,1fr); gap:8px; }
  .coupon-workspace-head { display:block; margin-bottom:32px; }
  .coupon-local-note { margin-top:24px; }
  .coupon-checks { grid-template-columns:minmax(0,1fr); }
  .coupon-check { padding:24px; }
  .coupon-choice-grid { grid-template-columns:minmax(0,1fr); }
  .coupon-choice { padding:20px; }
  .coupon-summary { padding:32px 24px; margin-top:32px; }
  .coupon-summary-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
  .coupon-handoff-list { grid-template-columns:minmax(0,1fr); gap:32px; margin-top:32px; }
  .coupon-handoff-list li { display:grid; grid-template-columns:40px minmax(0,1fr); gap:20px; }
  .coupon-handoff-list h3 { margin-top:0; }
}
@media (max-width:560px) {
  .coupon-title { font-size:36px; line-height:1.2; }
  .coupon-receipt { padding:24px; }
  .coupon-receipt h2 { font-size:32px; }
  .coupon-receipt-facts { grid-template-columns:minmax(0,1fr); gap:16px; }
  .coupon-receipt-facts>div { grid-template-columns:80px minmax(0,1fr); gap:12px; }
  .coupon-hero-actions { align-items:stretch; flex-direction:column; }
  .coupon-check { padding:24px 20px; }
  .coupon-check-heading { gap:12px; }
  .coupon-check h3 { font-size:18px; }
  .coupon-check .table-scroll { margin-right:0; }
  .coupon-check table { min-width:580px; }
  .coupon-check th,.coupon-check td { padding:12px; }
  .coupon-summary { padding:24px 20px; }
  .coupon-summary-head { flex-wrap:wrap; }
  .coupon-summary-head h2 { font-size:24px; }
  .coupon-summary-grid { margin-top:24px; }
  .coupon-result h3 { font-size:20px; }
  .coupon-pending { padding:20px; }
  .coupon-result-actions { align-items:stretch; flex-direction:column; }
  .coupon-handoff-list li { gap:16px; }
  .coupon-handoff-list h3 { font-size:18px; }
  .coupon-handoff-actions,.coupon-end-actions { align-items:stretch; flex-direction:column; }
}


/* Mailbox lifespan planner. */
.planner-hero h1 { max-width:900px; font-size:var(--h1); line-height:1.18; font-weight:600; letter-spacing:-.02em; }
.planner-hero .section-intro { max-width:800px; }
.planner-facts { margin-top:var(--s6); display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--s3); }
.planner-fact { min-width:0; padding:var(--s5); background:var(--paper-2); color:var(--ink); border-radius:var(--r-l); }
.planner-number { font:400 var(--h1)/1.1 var(--serif); letter-spacing:-.02em; }
.planner-number span { font:400 var(--small)/1.5 var(--sans); letter-spacing:0; }
.planner-fact h2 { margin-top:var(--s4); font-size:var(--h3); line-height:1.4; font-weight:600; }
.planner-fact>p:last-child { margin-top:var(--s2); font-size:var(--small); color:var(--ink-2); }
.planner-fact-note { margin-top:var(--s4); max-width:900px; color:var(--muted); font-size:var(--small); }
.planner-workspace { background:var(--paper-2); color:var(--ink); }
.planner-workspace>.frame { border-color:var(--fwd-line); }
.planner-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s5); }
.planner-section-head>div { min-width:0; }
.planner-section-head>.status-pill { flex:none; background:var(--white); color:var(--ink-2); }
.planner-tool { margin-top:var(--s6); display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); border-radius:var(--r-l); background:var(--white); color:var(--ink); border:1px solid var(--fwd-line); }
.planner-controls { padding:var(--s5); min-width:0; border-right:1px solid var(--line); }
.planner-controls>.field+.field { margin-top:var(--s4); }
.planner-field-label { display:block; font-size:var(--small); font-weight:500; }
.planner-picker { width:100%; }
.planner-picker .filter-trigger { width:100%; min-height:48px; justify-content:flex-start; background:var(--paper); color:var(--ink); border-color:var(--line); text-align:left; }
.planner-picker .filter-menu { width:100%; max-width:100%; min-width:0; top:calc(100% + var(--s2)); }
.planner-picker .filter-menu button { white-space:normal; }
.planner-hour-field { position:relative; }
.planner-hour-field input { padding-right:64px; background:var(--paper); color:var(--ink); }
.planner-hour-field>span { position:absolute; right:var(--s3); top:50%; transform:translateY(-50%); color:var(--muted); font-size:var(--small); pointer-events:none; }
.planner-controls .form-note { margin-top:0; }
.planner-task-note { margin-top:var(--s4); font-size:var(--small); color:var(--ink-2); }
.planner-controls>button[type="submit"] { margin-top:var(--s4); max-width:100%; }
.planner-model-note { margin-top:var(--s4); padding-top:var(--s4); border-top:1px solid var(--line); font-size:var(--small); color:var(--muted); }
.planner-result { padding:var(--s5); min-width:0; align-self:start; }
.planner-result h3 { font-size:var(--h3); line-height:1.4; font-weight:600; }
.planner-result-summary { margin-top:var(--s3); font-size:var(--small); color:var(--ink-2); }
.planner-timeline { margin-top:var(--s5); }
.planner-timeline-row { display:grid; grid-template-columns:84px minmax(0,1fr) auto; align-items:center; gap:var(--s3); font-size:var(--small); }
.planner-timeline-row+.planner-timeline-row { margin-top:var(--s3); }
.planner-timeline-row>span { color:var(--ink-2); }
.planner-timeline-row>strong { min-width:72px; text-align:right; font-size:var(--small); font-weight:500; white-space:nowrap; }
.planner-track { height:8px; min-width:0; overflow:hidden; border-radius:var(--r-p); background:var(--paper-2); }
.planner-track>span { display:block; height:100%; border-radius:var(--r-p); transition:width .2s ease; }
.planner-task-bar { width:8.333333%; background:var(--or); }
.planner-life-bar { width:12.5%; background:var(--ink-2); }
.planner-axis { margin-top:var(--s3); display:flex; justify-content:space-between; gap:var(--s3); color:var(--muted); font-size:var(--small); }
.planner-result-facts { margin-top:var(--s5); display:grid; gap:var(--s3); padding-top:var(--s4); border-top:1px solid var(--line); font-size:var(--small); }
.planner-result-facts>div { display:grid; grid-template-columns:100px minmax(0,1fr); gap:var(--s3); }
.planner-result-facts dt { color:var(--muted); }
.planner-result-facts dd { color:var(--ink); }
.planner-verdict { margin-top:var(--s5); background:var(--or-wash); color:var(--or-deep); }
.planner-verdict.planner-verdict-alert { background:var(--ink); color:var(--d-text); }
.planner-result-caution { margin-top:var(--s3); font-size:var(--small); color:var(--muted); }
.planner-result-actions { margin-top:var(--s5); }
.planner-result-actions .btn { max-width:100%; height:auto; min-height:40px; padding:10px 20px; line-height:1.35; white-space:normal; }
.planner-text-link { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; font-size:var(--small); }
.planner-noscript { margin-top:var(--s4); padding:var(--s4); background:var(--white); color:var(--ink-2); border-radius:var(--r-s); font-size:var(--small); }
.planner-renew-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:var(--s6); }
.planner-renew-link { margin-top:var(--s5); max-width:100%; height:auto; min-height:48px; padding:12px 24px; white-space:normal; line-height:1.35; }
.planner-renew-steps { list-style:none; display:grid; align-content:start; gap:var(--s5); }
.planner-renew-steps li { display:grid; grid-template-columns:24px minmax(0,1fr); gap:var(--s3); align-items:start; }
.planner-renew-steps .step-number { background:var(--or); color:var(--white); }
.planner-renew-steps h3 { font-size:var(--h3); line-height:1.4; font-weight:600; }
.planner-renew-steps p { margin-top:var(--s2); color:var(--d-muted); font-size:var(--small); }
.planner-example { margin-top:var(--s6); padding:var(--s5); border-radius:var(--r-l); background:var(--d-card); color:var(--d-text); display:grid; grid-template-columns:160px minmax(0,1fr); gap:var(--s4); }
.planner-example-label { font-weight:500; color:var(--or); }
.planner-example>p:last-child { font-size:var(--small); color:var(--d-muted); }
.planner-comparison { margin-top:var(--s5); }
.planner-comparison table { min-width:720px; }
.planner-comparison caption { caption-side:top; padding-bottom:var(--s3); text-align:left; color:var(--muted); font-size:var(--small); }
.planner-comparison th { white-space:normal; }
.planner-comparison tbody th { width:130px; background:var(--paper); color:var(--ink); }
.planner-comparison td { width:29%; color:var(--ink-2); }
.planner-boundary-note { display:flex; align-items:flex-start; gap:var(--s3); margin-top:var(--s5); padding:var(--s4); border-radius:var(--r-s); background:var(--paper-2); color:var(--ink-2); font-size:var(--small); }
.planner-boundary-note svg { color:var(--or-deep); }
.planner-boundary-note strong { font-weight:600; color:var(--ink); }
.planner-boundary-note a,.planner-continuity-conclusion a { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }
.planner-continuity { background:var(--paper-2); color:var(--ink); }
.planner-continuity>.frame { border-color:var(--fwd-line); }
.planner-use-cases { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s3); margin-top:var(--s6); }
.planner-use-case { padding:var(--s5); border-radius:var(--r-l); background:var(--paper); color:var(--ink); }
.planner-case-index { font-size:var(--small); color:var(--muted); }
.planner-use-case h3 { margin-top:var(--s4); font-size:var(--h3); line-height:1.4; font-weight:600; }
.planner-use-case p { margin-top:var(--s3); font-size:var(--small); color:var(--ink-2); }
.planner-continuity-conclusion { margin-top:var(--s5); max-width:880px; }
.planner-continuity-conclusion .status-pill { background:var(--ink); color:var(--d-text); }
.planner-continuity-conclusion>p:last-child { margin-top:var(--s3); font-size:var(--small); color:var(--ink-2); }
.planner-exit-card { padding:var(--s6); border-radius:var(--r-l); background:var(--ink); color:var(--d-text); text-align:center; }
.planner-exit-card .eyebrow { color:var(--or); }
.planner-exit-card .section-intro { margin:var(--s4) auto 0; color:var(--d-muted); }
.planner-exit-card .actions { justify-content:center; margin-top:var(--s5); }
.planner-exit-card .btn { max-width:100%; white-space:normal; height:auto; min-height:48px; padding:12px 24px; line-height:1.35; }
.planner-exit-note { display:inline-block; margin-top:var(--s5); color:var(--d-muted); font-size:var(--small); text-decoration:underline; text-underline-offset:4px; }
.planner-exit-note:hover { color:var(--d-text); }
@media (max-width:860px) {
  .planner-hero h1 { font-size:48px; }
  .planner-facts { gap:var(--s3); }
  .planner-fact { padding:var(--s4); }
  .planner-number { font-size:var(--h2); }
  .planner-section-head { flex-direction:column; gap:var(--s4); }
  .planner-tool { grid-template-columns:minmax(0,1fr); }
  .planner-controls { border-right:0; border-bottom:1px solid var(--line); }
  .planner-renew-layout { grid-template-columns:minmax(0,1fr); gap:var(--s6); }
  .planner-example { grid-template-columns:minmax(0,1fr); gap:var(--s3); }
  .planner-use-cases { gap:var(--s3); }
  .planner-use-case { padding:var(--s4); }
  .planner-exit-card { padding:var(--s5); }
}
@media (max-width:560px) {
  .planner-hero h1 { font-size:36px; line-height:1.2; }
  .planner-facts { grid-template-columns:minmax(0,1fr); margin-top:var(--s5); }
  .planner-fact { padding:var(--s4); }
  .planner-fact h2 { margin-top:var(--s3); }
  .planner-tool { margin-top:var(--s5); }
  .planner-controls,.planner-result { padding:var(--s4); }
  .planner-timeline-row { grid-template-columns:70px minmax(0,1fr) auto; gap:var(--s2); }
  .planner-timeline-row>strong { min-width:64px; }
  .planner-axis { font-size:var(--small); gap:var(--s2); flex-wrap:wrap; }
  .planner-result-facts>div { grid-template-columns:minmax(0,1fr); gap:var(--s2); }
  .planner-result-actions { align-items:flex-start; flex-direction:column; gap:var(--s4); }
  .planner-example { padding:var(--s4); }
  .planner-boundary-note { padding:var(--s3); }
  .planner-use-cases { grid-template-columns:minmax(0,1fr); margin-top:var(--s5); }
  .planner-use-case { padding:var(--s4); }
  .planner-exit-card { padding:var(--s5) var(--s4); }
  .planner-exit-card .actions { flex-direction:column; align-items:center; }
}


/* Disposable email and alias comparison. */
.compare-hero { background:var(--paper); color:var(--ink); }
.compare-hero .sec { padding-top:48px; padding-bottom:64px; }
.compare-crumb { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:48px; color:var(--muted); font-size:14px; }
.compare-crumb a { text-decoration:underline; text-underline-offset:4px; }
.compare-crumb a:hover { color:var(--ink); }
.compare-hero-grid { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:64px; align-items:center; }
.compare-hero h1 { font-size:var(--h1); line-height:1.2; font-weight:600; letter-spacing:-.02em; }
.compare-answer { margin-top:32px; font-size:20px; line-height:1.6; font-weight:500; max-width:640px; }
.compare-hero-actions { margin-top:32px; }
.compare-receipt { padding:32px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.compare-ticket-icon { display:block; margin-bottom:24px; color:var(--or-deep); }
.compare-receipt h2 { font-size:24px; line-height:1.4; font-weight:600; }
.compare-receipt-list { display:grid; gap:24px; margin-top:24px; }
.compare-receipt-list>div { border-left:2px dashed var(--or); padding-left:16px; }
.compare-receipt-list dt { font-size:16px; font-weight:600; }
.compare-receipt-list dd { margin-top:8px; color:var(--ink-2); font-size:14px; line-height:1.8; }
.compare-receipt-note { margin-top:24px; padding-top:20px; border-top:1px solid var(--fwd-line); font-size:14px; color:var(--muted); }
.compare-route-section { border-top:1px solid var(--line); }
.compare-paths { margin-top:48px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.compare-path { display:flex; flex-direction:column; min-width:0; padding:32px; background:var(--white); color:var(--ink); border-radius:var(--r-l); }
.compare-path-alias { background:var(--paper-2); color:var(--ink); }
.compare-path-head { display:flex; gap:16px; align-items:flex-start; }
.compare-route-number { width:40px; height:40px; display:grid; place-items:center; flex:none; border-radius:var(--r-s); font:400 24px/1 var(--serif); background:var(--ink); color:var(--d-text); }
.compare-path-head h3 { font-size:20px; font-weight:600; line-height:1.4; }
.compare-path-head p { margin-top:8px; font-size:14px; color:var(--muted); }
.compare-route-steps { display:grid; gap:24px; list-style:none; margin:32px 0; }
.compare-route-steps li { display:flex; align-items:flex-start; gap:12px; }
.compare-route-steps h4 { font-size:16px; font-weight:600; line-height:1.5; }
.compare-route-steps p { margin-top:8px; font-size:14px; line-height:1.8; color:var(--ink-2); }
.compare-route-foot { margin-top:auto; padding-top:24px; border-top:1px solid var(--line); display:grid; gap:16px; }
.compare-route-foot strong { font-size:14px; font-weight:500; }
.compare-route-foot a,.compare-section-note a,.compare-task-card>a,.compare-text-link { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; font-size:14px; }
.compare-route-foot a:hover,.compare-section-note a:hover,.compare-task-card>a:hover,.compare-text-link:hover { color:var(--ink); }
.compare-section-note { margin-top:32px; max-width:960px; font-size:14px; color:var(--ink-2); line-height:1.8; }
.compare-table-section { background:var(--paper-2); color:var(--ink); scroll-margin-top:var(--header-h); }
.compare-table-scroll { margin-top:32px; margin-bottom:32px; }
.compare-table { min-width:680px; table-layout:fixed; }
.compare-table caption { text-align:left; font-size:14px; color:var(--muted); padding-bottom:16px; }
.compare-table th,.compare-table td { padding:20px 24px; border-color:var(--fwd-line); line-height:1.8; }
.compare-table thead th { background:var(--paper); color:var(--ink); font-size:16px; }
.compare-table thead th:first-child { width:18%; }
.compare-table tbody th { background:transparent; color:var(--ink); font-weight:500; }
.compare-table td { color:var(--ink-2); }
.compare-stop-grid { margin-top:48px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.compare-stop-card { display:flex; flex-direction:column; padding:24px; border-radius:var(--r-l); background:var(--d-card); color:var(--d-text); min-width:0; }
.compare-stop-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:var(--r-s); background:var(--rose-wash); color:var(--rose); }
.compare-stop-card h3 { margin-top:24px; font-size:20px; line-height:1.4; font-weight:600; }
.compare-stop-card p { margin-top:12px; font-size:14px; line-height:1.8; color:var(--d-muted); }
.compare-stop-card strong { display:block; margin-top:auto; padding-top:24px; font-size:14px; font-weight:500; color:var(--d-text); }
.compare-stop-note { margin-top:32px; padding:24px 0 0; border-top:1px solid var(--d-line); max-width:960px; }
.compare-stop-note h3 { font-size:20px; font-weight:600; line-height:1.4; }
.compare-stop-note p { margin-top:12px; font-size:14px; color:var(--d-muted); line-height:1.8; }
.compare-task-grid { margin-top:48px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.compare-task-card { display:flex; flex-direction:column; min-width:0; padding:32px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.compare-task-card h3 { margin-top:24px; font-size:20px; line-height:1.4; font-weight:600; }
.compare-task-card p { margin-top:16px; font-size:14px; color:var(--ink-2); line-height:1.8; }
.compare-task-card dl { display:grid; gap:20px; margin:24px 0 32px; }
.compare-task-card dt { font-size:14px; font-weight:600; }
.compare-task-card dd { margin-top:8px; font-size:14px; color:var(--ink-2); line-height:1.8; }
.compare-task-card>a { margin-top:auto; }
.compare-boundary-section { background:var(--paper-2); color:var(--ink); }
.compare-boundary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; align-items:start; }
.compare-text-link { display:inline-block; margin-top:32px; }
.compare-boundary-notes { display:grid; gap:32px; }
.compare-boundary-notes article { padding-left:24px; border-left:1px solid var(--fwd-line); }
.compare-boundary-notes h3 { font-size:20px; line-height:1.4; font-weight:600; }
.compare-boundary-notes p { margin-top:12px; font-size:14px; line-height:1.8; color:var(--ink-2); }
.compare-action-section { background:var(--paper); color:var(--ink); }
.compare-final { padding:64px; border-radius:var(--r-l); background:var(--ink); color:var(--d-text); text-align:center; }
.compare-final .eyebrow { color:var(--or); }
.compare-final .section-intro { margin:20px auto 0; color:var(--d-muted); }
.compare-final .actions { margin-top:32px; justify-content:center; }
.compare-final-link { display:inline-block; margin-top:32px; font-size:14px; color:var(--d-text); text-decoration:underline; text-underline-offset:4px; }
.compare-final-link:hover { color:var(--or); }
@media (max-width:1100px) {
  .compare-hero-grid,.compare-boundary-grid { gap:32px; }
  .compare-hero h1 { font-size:48px; }
  .compare-stop-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .compare-task-card { padding:24px; }
}
@media (max-width:860px) {
  .compare-hero-grid,.compare-boundary-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .compare-hero h1 { font-size:40px; }
  .compare-paths { grid-template-columns:minmax(0,1fr); }
  .compare-task-grid { grid-template-columns:minmax(0,1fr); gap:16px; }
  .compare-task-card { padding:32px; }
  .compare-final { padding:48px 32px; }
  .compare-paths,.compare-task-grid,.compare-stop-grid { margin-top:32px; }
  .compare-boundary-notes article { padding-left:20px; }
}
@media (max-width:560px) {
  .compare-hero .sec { padding-top:40px; padding-bottom:48px; }
  .compare-crumb { margin-bottom:32px; font-size:12px; }
  .compare-hero h1 { font-size:36px; }
  .compare-answer { font-size:20px; margin-top:24px; }
  .compare-hero-actions { align-items:stretch; }
  .compare-hero-actions .btn { height:auto; min-height:48px; max-width:100%; white-space:normal; padding:12px 20px; }
  .compare-receipt,.compare-path,.compare-task-card { padding:24px; }
  .compare-stop-grid { grid-template-columns:minmax(0,1fr); }
  .compare-table th,.compare-table td { padding:16px; }
  .compare-final { padding:32px 24px; }
  .compare-final .actions { flex-direction:column; }
  .compare-final .btn { width:100%; max-width:100%; height:auto; min-height:48px; padding:12px 20px; white-space:normal; line-height:1.35; }
  .compare-final-link { line-height:1.8; }
}


/* Shopping signup decision matrix. */
.matrix-hero { background:var(--paper); color:var(--ink); }
.matrix-hero .sec { padding-top:48px; padding-bottom:64px; }
.matrix-crumb { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:40px; font-size:14px; color:var(--muted); }
.matrix-crumb a { color:var(--ink-2); }
.matrix-crumb a:hover { text-decoration:underline; text-underline-offset:4px; }
.matrix-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:center; }
.matrix-title { font:600 var(--h1)/1.14 var(--sans); letter-spacing:-.02em; }
.matrix-hero-grid .section-intro { max-width:510px; }
.matrix-text-link { display:inline-block; max-width:100%; margin-top:28px; font-size:14px; font-weight:500; color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }
.matrix-text-link:hover { color:var(--ink); }
.matrix-picker { min-width:0; padding:32px; border-radius:var(--r-l); background:var(--white); color:var(--ink); }
.matrix-ticket-head { display:flex; align-items:center; gap:12px; padding-bottom:24px; border-bottom:1px dashed var(--line); font-size:14px; color:var(--or-deep); }
.matrix-picker h2 { margin-top:24px; font-size:24px; line-height:1.4; font-weight:600; }
.matrix-picker h2 + p { margin-top:12px; color:var(--muted); font-size:14px; }
.matrix-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:24px; }
.matrix-choice { display:grid; align-content:start; gap:8px; min-width:0; min-height:100px; padding:16px; border:1px solid var(--line); border-radius:var(--r-s); background:var(--head-paper); color:var(--ink); text-align:left; }
.matrix-choice span { font-size:16px; font-weight:500; }
.matrix-choice small { font-size:12px; line-height:1.5; color:var(--muted); }
.matrix-choice:hover { background:var(--paper-2); color:var(--ink); border-color:var(--muted); }
.matrix-choice[aria-pressed="true"] { background:var(--ink); color:var(--d-text); border-color:var(--ink); }
.matrix-choice[aria-pressed="true"] small { color:var(--d-muted); }
.matrix-picker-note { margin-top:24px; font-size:14px; color:var(--ink-2); }
.matrix-picker-note strong { font-weight:500; }
.matrix-picker-note a { color:var(--or-deep); text-decoration:underline; text-underline-offset:3px; }
.matrix-judge-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:48px; }
.matrix-judge { min-width:0; display:flex; flex-direction:column; padding:32px; border-radius:var(--r-l); background:var(--d-card); color:var(--d-text); }
.matrix-judge-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:var(--r-s); background:var(--rose-wash); color:var(--rose); }
.matrix-judge-icon svg { width:24px; height:24px; }
.matrix-judge h3 { margin-top:24px; font-size:20px; line-height:1.4; font-weight:600; }
.matrix-judge > p { margin-top:12px; color:var(--d-muted); font-size:14px; }
.matrix-risk { display:grid; gap:8px; margin-top:24px; padding-top:20px; border-top:1px solid var(--d-line); font-size:14px; }
.matrix-risk b { color:var(--d-text); font-weight:500; }
.matrix-risk span { color:var(--d-muted); }
.matrix-judge > a { align-self:flex-start; margin-top:auto; padding-top:28px; color:var(--or); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.matrix-judge > a:hover { color:var(--d-text); }
.matrix-section-head { display:flex; align-items:flex-end; gap:32px; justify-content:space-between; margin-bottom:32px; }
.matrix-section-head > div { min-width:0; }
.matrix-margin-note { flex:none; padding-left:24px; border-left:1px solid var(--line); font-size:14px; color:var(--muted); }
.matrix-table { width:100%; table-layout:fixed; border-collapse:separate; border-spacing:0; }
.matrix-table caption { text-align:left; }
.matrix-table thead th { padding:20px; background:var(--paper-2); color:var(--ink); font-size:14px; }
.matrix-table thead th:first-child { width:19%; border-radius:var(--r-s) 0 0 0; }
.matrix-table thead th:last-child { width:29%; border-radius:0 var(--r-s) 0 0; }
.matrix-table tbody th,.matrix-table tbody td { padding:24px 20px; background:var(--head-paper); color:var(--ink-2); font-size:14px; line-height:1.7; border-bottom:1px solid var(--line); }
.matrix-table tbody th { color:var(--ink); font-size:16px; font-weight:500; }
.matrix-table th span,.matrix-table td span { display:block; margin-top:8px; color:var(--muted); font-size:14px; font-weight:400; }
.matrix-table td strong { display:block; color:var(--ink); font-weight:500; }
.matrix-table td a { display:inline-block; margin-top:12px; color:var(--or-deep); text-decoration:underline; text-underline-offset:3px; }
.matrix-table td a:hover { color:var(--ink); }
.matrix-table tbody tr:last-child th { border-radius:0 0 0 var(--r-s); }
.matrix-table tbody tr:last-child td:last-child { border-radius:0 0 var(--r-s) 0; }
.matrix-table-note { max-width:900px; margin-top:32px; font-size:14px; color:var(--muted); }
.matrix-arrangements { background:var(--paper-2); color:var(--ink); }
.matrix-arrangement-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:48px; }
.matrix-arrangement { min-width:0; padding:32px; border-radius:var(--r-l); background:var(--head-paper); color:var(--ink); scroll-margin-top:calc(var(--header-h) + 24px); }
.matrix-card-index { display:block; font:400 14px/1.5 var(--mono); color:var(--or-deep); }
.matrix-arrangement h3 { margin-top:24px; font-size:24px; line-height:1.4; font-weight:600; }
.matrix-arrangement > p { margin-top:16px; font-size:16px; color:var(--ink-2); }
.matrix-checklist { display:grid; gap:24px; list-style:none; counter-reset:matrix-step; margin-top:32px; }
.matrix-checklist li { display:grid; grid-template-columns:24px minmax(0,1fr); gap:8px 12px; counter-increment:matrix-step; }
.matrix-checklist li::before { content:counter(matrix-step); display:grid; place-items:center; width:24px; height:24px; border-radius:var(--r-p); background:var(--paper-2); color:var(--ink); font:500 12px/1 var(--mono); }
.matrix-checklist strong { align-self:center; font-size:16px; line-height:1.5; font-weight:500; }
.matrix-checklist li > span { grid-column:2; color:var(--ink-2); font-size:14px; }
.matrix-card-note { margin-top:32px; padding:20px; border-radius:var(--r-s); background:var(--paper-2); color:var(--ink-2); font-size:14px; }
.matrix-exception-grid { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:64px; align-items:start; }
.matrix-dark-link { display:inline-block; max-width:100%; margin-top:28px; color:var(--or); font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.matrix-dark-link:hover { color:var(--d-text); }
.matrix-exception-list { display:grid; gap:16px; }
.matrix-exception-list article { padding:24px 32px; border-radius:var(--r-l); background:var(--d-card); color:var(--d-text); }
.matrix-exception-list h3 { font-size:20px; line-height:1.4; font-weight:600; }
.matrix-exception-list p { margin-top:12px; font-size:14px; color:var(--d-muted); }
.matrix-summary { display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:48px; padding:48px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); scroll-margin-top:calc(var(--header-h) + 24px); }
.matrix-summary-copy { min-width:0; }
.matrix-summary-scenario { display:inline-flex; align-items:center; padding:4px 12px; margin-bottom:24px; border-radius:var(--r-p); background:var(--white); color:var(--ink-2); font-size:14px; }
.matrix-summary h2 { font-size:32px; line-height:1.3; }
.matrix-summary-boundary { margin-top:24px; color:var(--muted); font-size:14px; }
.matrix-summary-actions { align-self:center; min-width:0; }
.matrix-summary-actions > p { color:var(--ink-2); font-size:16px; }
.matrix-summary-actions .actions { margin-top:24px; align-items:center; }
.matrix-summary-actions .btn { max-width:100%; height:auto; min-height:48px; padding:12px 20px; white-space:normal; line-height:1.35; }
.matrix-next { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:48px; }
.matrix-next a { min-width:0; padding:24px; border:1px solid var(--line); border-radius:var(--r-l); background:var(--head-paper); color:var(--ink); }
.matrix-next a:hover { background:var(--paper-2); color:var(--ink); }
.matrix-next a > span { font-size:12px; color:var(--muted); }
.matrix-next strong { display:block; margin-top:12px; font-size:20px; line-height:1.4; font-weight:500; }
.matrix-next p { margin-top:12px; font-size:14px; color:var(--ink-2); }
@media (max-width:1100px) {
  .matrix-hero-grid { gap:32px; }
  .matrix-title { font-size:48px; }
  .matrix-picker { padding:24px; }
  .matrix-judge { padding:24px; }
  .matrix-exception-grid { gap:32px; }
  .matrix-summary { padding:32px; gap:32px; }
}
@media (max-width:860px) {
  .matrix-hero .sec { padding-top:40px; padding-bottom:64px; }
  .matrix-hero-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .matrix-title { font-size:48px; }
  .matrix-title br:last-of-type { display:none; }
  .matrix-hero-grid .section-intro { max-width:660px; }
  .matrix-picker { padding:32px; }
  .matrix-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .matrix-judge-grid { grid-template-columns:minmax(0,1fr); gap:16px; margin-top:32px; }
  .matrix-judge { padding:32px; }
  .matrix-judge > a { margin-top:0; }
  .matrix-section-head { display:block; }
  .matrix-margin-note { display:block; padding-left:0; border-left:0; margin-top:24px; }
  .matrix-margin-note br { display:none; }
  .matrix-margin-note br::after { content:" "; }
  .matrix-table,.matrix-table tbody { display:block; width:100%; }
  .matrix-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  .matrix-table tbody { display:grid; gap:16px; }
  .matrix-table tbody tr { display:block; padding:24px; border:1px solid var(--line); border-radius:var(--r-l); background:var(--head-paper); color:var(--ink); }
  .matrix-table tbody th,.matrix-table tbody td { display:block; width:100%; padding:0; border:0; background:transparent; color:var(--ink-2); }
  .matrix-table tbody th { padding-bottom:20px; color:var(--ink); font-size:20px; }
  .matrix-table tbody td { padding-top:20px; }
  .matrix-table tbody td::before { content:attr(data-label); display:block; margin-bottom:8px; color:var(--muted); font-size:12px; font-weight:500; }
  .matrix-table tbody tr:last-child th,.matrix-table tbody tr:last-child td:last-child { border-radius:0; }
  .matrix-arrangement-grid { grid-template-columns:minmax(0,1fr); margin-top:32px; }
  .matrix-exception-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .matrix-summary { grid-template-columns:minmax(0,1fr); gap:32px; }
  .matrix-summary-actions .actions { justify-content:flex-start; }
  .matrix-next { grid-template-columns:minmax(0,1fr); gap:16px; margin-top:32px; }
}
@media (max-width:560px) {
  .matrix-hero .sec { padding-top:32px; padding-bottom:48px; }
  .matrix-crumb { margin-bottom:32px; font-size:12px; }
  .matrix-title { font-size:36px; line-height:1.2; }
  .matrix-title br:last-of-type { display:initial; }
  .matrix-picker { padding:24px 20px; }
  .matrix-choices { gap:8px; }
  .matrix-choice { min-height:108px; padding:12px; }
  .matrix-picker h2 { font-size:20px; }
  .matrix-judge { padding:24px; }
  .matrix-judge h3 { font-size:20px; }
  .matrix-table tbody tr { padding:24px 20px; }
  .matrix-arrangement { padding:24px 20px; }
  .matrix-arrangement h3 { font-size:20px; }
  .matrix-arrangement > p { font-size:15px; }
  .matrix-card-note { padding:16px; }
  .matrix-exception-list article { padding:24px; }
  .matrix-exception-list h3 { font-size:20px; }
  .matrix-summary { padding:24px 20px; }
  .matrix-summary h2 { font-size:24px; }
  .matrix-summary-actions .actions { gap:8px; }
  .matrix-summary-actions .btn { padding:12px 16px; font-size:14px; }
  .matrix-next a { padding:24px; }
}


/* Planner and verification alignment. */
.planner-boundaries { min-width:0; }
.timeline article { align-items:start; }
.timeline article h2,
.timeline article h3 { margin-top:0; }
.tool-legend { display:block; width:100%; margin:0 0 var(--s3); padding:0; font-size:var(--small); line-height:1.5; font-weight:500; color:var(--ink); }
.dark .tool-legend { color:var(--d-text); }


/* Keep final component declarations self-contained. */
.site-head { position:sticky; top:0; z-index:100; }
.lang .chevron {
  position:absolute;
  top:50%;
  right:14px;
  width:7px;
  height:7px;
  flex:none;
  border-right:1px solid currentColor;
  border-bottom:1px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
}
.lang[aria-expanded="true"] .chevron {
  position:absolute;
  top:50%;
  transform:rotate(45deg);
  margin-top:-3px;
}
.twofa-confirm-actions {
  display:flex;
  align-items:center;
  gap:12px;
}
[data-twofa-actions] {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
[data-twofa-actions] input {
  width:150px;
  height:48px;
}
[data-twofa-actions] button {
  height:48px;
  margin:0;
}
.actions > [data-twofa-confirm] {
  margin:0;
}
.tool-legend {
  position:static;
  display:block;
  width:auto;
  max-width:100%;
  margin:0 0 var(--s3);
  padding:0;
  float:none;
  transform:none;
  font-size:var(--small);
  font-weight:500;
  line-height:1.6;
  color:var(--ink);
}
.twofa-secret [data-copy-secret] {
  flex:none;
  width:auto;
  max-width:100%;
  margin:0;
  white-space:nowrap;
  background:var(--white);
  color:var(--ink);
  border:1px solid var(--line);
}
.twofa-secret [data-copy-secret]:hover {
  background:var(--ink);
  color:var(--d-text);
  border-color:var(--ink);
}
@media (max-width:560px) {
  .lang .chevron {
    right:7px;
    width:6px;
    height:6px;
  }
}


/* Journal index and long-form reading. */
.journal-page { background:var(--paper); color:var(--ink); }
.journal-list-heading { padding:var(--s7) var(--s6) var(--s6); max-width:1000px; }
.journal-list-heading h1 { font:600 var(--h1)/1.18 var(--sans); letter-spacing:-.02em; }
.journal-total { display:table; margin:var(--s4) 0 0; padding:var(--s1) var(--s3); border-radius:var(--r-p); background:var(--paper-2); color:var(--ink-2); font-size:var(--small); line-height:1.6; }
.journal-total:empty { display:none; }
.journal-list-heading .section-intro { margin-top:var(--s4); max-width:720px; }
.journal-list-section>.frame { padding:0 var(--s6) var(--s7); }
.journal-post-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--s4); }
.journal-post-card { display:flex; flex-direction:column; min-width:0; padding:var(--s5); border:1px solid var(--line); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); transition:background .2s,color .2s,border-color .2s; }
.journal-post-card:hover { background:var(--chip-hover); color:var(--ink); border-color:var(--fwd-line); }
.journal-card-top { display:flex; justify-content:space-between; align-items:center; gap:var(--s3); }
.journal-post-tag { display:inline-flex; align-items:center; max-width:100%; padding:var(--s1) 12px; border-radius:var(--r-p); background:var(--head-paper); color:var(--ink-2); font-size:12px; line-height:1.6; }
.journal-card-number { color:var(--muted); font:400 var(--small)/1.6 var(--mono); }
.journal-card-title { margin-top:var(--s5); font-size:24px; line-height:1.45; font-weight:600; letter-spacing:-.02em; overflow-wrap:anywhere; }
.journal-card-description { margin-top:var(--s3); color:var(--ink-2); font-size:var(--body); line-height:1.8; font-weight:400; }
.journal-card-bottom { margin-top:auto; padding-top:var(--s6); display:flex; flex-wrap:wrap; align-items:flex-end; justify-content:space-between; gap:var(--s4); }
.journal-card-meta { display:grid; gap:var(--s2); color:var(--muted); font-size:var(--small); }
.journal-card-action { display:inline-flex; align-items:center; gap:var(--s3); font-size:var(--small); font-weight:500; color:var(--ink); }
.journal-card-arrow { position:relative; display:inline-block; width:24px; height:16px; flex:none; }
.journal-card-arrow::before { content:""; position:absolute; top:8px; left:0; width:23px; border-top:1px solid currentColor; }
.journal-card-arrow::after { content:""; position:absolute; right:0; top:4px; width:8px; height:8px; border-top:1px solid currentColor; border-right:1px solid currentColor; transform:rotate(45deg); }
.journal-noscript { margin-top:var(--s4); padding:var(--s4); border:1px solid var(--line); border-radius:var(--r-s); background:var(--head-paper); color:var(--ink-2); font-size:var(--small); }
.journal-noscript ul { margin:var(--s3) 0 0; padding-left:var(--s4); }
.journal-noscript li+li { margin-top:var(--s2); }
.journal-noscript a { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; }

.journal-article { background:var(--paper); color:var(--ink); }
.journal-article-hero>.frame { padding:var(--s6) var(--s6) var(--s6); }
.journal-breadcrumb { display:flex; align-items:center; gap:var(--s2) var(--s3); flex-wrap:wrap; margin-bottom:var(--s6); font-size:var(--small); color:var(--muted); }
.journal-breadcrumb a { color:var(--ink-2); text-decoration:underline; text-underline-offset:4px; }
.journal-breadcrumb a:hover { color:var(--or-deep); }
.journal-breadcrumb [aria-current] { overflow-wrap:anywhere; }
.journal-article-heading { max-width:1000px; }
.journal-article-heading h1 { max-width:960px; font:600 var(--h1)/1.2 var(--sans); letter-spacing:-.02em; overflow-wrap:anywhere; }
.journal-article-heading .section-intro { max-width:820px; margin-top:var(--s4); }
.journal-article-meta { display:inline-flex; align-items:center; gap:var(--s3); flex-wrap:wrap; margin-top:var(--s5); font-size:var(--small); color:var(--muted); }
.journal-article-meta .journal-post-tag { background:var(--paper-2); color:var(--ink-2); }
.journal-article-meta time { white-space:normal; }
.journal-article-count { display:table; margin-top:var(--s4); font-size:12px; color:var(--muted); }
.journal-reading-frame { border-top:1px solid var(--line); }
.journal-reading-layout { display:grid; grid-template-columns:240px minmax(0,1fr); align-items:start; gap:var(--s6); padding:var(--s6) var(--s6) var(--s7); }
.journal-toc { position:sticky; top:calc(var(--header-h) + var(--s3)); min-width:0; align-self:start; padding:var(--s4); border:1px solid var(--line); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.journal-toc h2 { font-size:var(--body); line-height:1.5; font-weight:600; }
.journal-toc ol { display:grid; gap:12px; margin:var(--s4) 0 0; padding-left:20px; font-size:var(--small); line-height:1.7; color:var(--ink-2); }
.journal-toc a { overflow-wrap:anywhere; text-decoration:underline; text-decoration-color:var(--fwd-line); text-underline-offset:4px; }
.journal-toc a:hover { color:var(--or-deep); text-decoration-color:var(--or-deep); }
.journal-toc-count { display:inline-flex; margin-top:var(--s4); padding:var(--s1) 12px; border-radius:var(--r-p); background:var(--white); color:var(--ink-2); font-size:12px; }
.journal-toc-note { margin-top:var(--s4); padding-top:var(--s3); border-top:1px solid var(--fwd-line); color:var(--muted); font-size:12px; line-height:1.7; }
.journal-mobile-toc { display:none; }
.journal-prose { width:100%; min-width:0; max-width:820px; font-size:var(--body); line-height:1.85; }
.journal-prose>section { scroll-margin-top:calc(var(--header-h) + var(--s5)); }
.journal-prose>section+section { margin-top:var(--s6); }
.journal-prose h2 { margin:var(--s6) 0 var(--s4); font-size:28px; line-height:1.4; font-weight:600; letter-spacing:-.02em; color:var(--ink); }
.journal-prose>section:first-child>h2:first-child { margin-top:0; }
.journal-prose h3 { margin:var(--s5) 0 var(--s3); font-size:var(--h3); line-height:1.5; font-weight:600; color:var(--ink); }
.journal-prose p { margin:var(--s3) 0; font-size:var(--body); font-weight:400; color:var(--ink-2); }
.journal-prose ul,.journal-prose ol { margin:var(--s4) 0; padding-left:var(--s4); color:var(--ink-2); }
.journal-prose li+li { margin-top:12px; }
.journal-prose strong { font-weight:600; color:var(--ink); }
.journal-prose a:not(.btn) { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.journal-prose a:not(.btn):hover { color:var(--ink); }
.journal-prose code { font-family:var(--mono); font-size:var(--small); letter-spacing:0; overflow-wrap:anywhere; }
.journal-prose figure { margin:var(--s5) 0; }
.journal-prose figure>img { width:100%; height:auto; border-radius:var(--r-l); }
.journal-prose figcaption { margin-top:12px; color:var(--muted); font-size:var(--small); line-height:1.7; }
.journal-callout { margin:var(--s5) 0; padding:var(--s4); border-radius:var(--r-l); border:1px solid var(--line); background:var(--paper-2); color:var(--ink); }
.journal-callout>svg { width:24px; height:24px; margin-bottom:var(--s3); color:var(--or-deep); }
.journal-prose .journal-callout h3 { margin:0 0 var(--s3); }
.journal-prose .journal-callout p { margin:0; font-size:var(--small); }
.journal-prose .journal-callout p+p { margin-top:12px; }
.journal-callout-dark { background:var(--d-card); color:var(--d-text); border-color:var(--d-line); }
.journal-callout-dark>svg { color:var(--rose); }
.journal-prose .journal-callout-dark h3,.journal-prose .journal-callout-dark strong { color:var(--d-text); }
.journal-prose .journal-callout-dark p { color:var(--d-muted); }
.journal-prose .journal-callout-dark a:not(.btn) { color:var(--or); }
.journal-article-table { margin:var(--s5) 0; overflow-x:auto; border:1px solid var(--line); border-radius:var(--r-s); background:var(--head-paper); color:var(--ink); }
.journal-article-table table { min-width:600px; }
.journal-article-table caption { padding:var(--s3); text-align:left; background:var(--paper-2); color:var(--ink); font-size:var(--small); font-weight:500; }
.journal-article-table th { background:var(--paper-2); color:var(--ink); }
.journal-article-table tbody th { background:var(--head-paper); color:var(--ink); }
.journal-article-table td { color:var(--ink-2); line-height:1.8; }
.journal-article-table tr:last-child>* { border-bottom:0; }
.journal-prose blockquote { margin:var(--s5) 0; padding:var(--s3) var(--s4); border-left:2px solid var(--or); background:var(--paper-2); color:var(--ink-2); }
.journal-prose blockquote p { margin:0; }
.journal-source-note { margin-top:var(--s5); padding-top:var(--s4); border-top:1px solid var(--line); }
.journal-prose .journal-source-note p { font-size:var(--small); color:var(--muted); }
.journal-article-cta { display:block; margin-top:var(--s6); padding:var(--s5); border-radius:var(--r-l); background:var(--ink); color:var(--d-text); }
.journal-prose .journal-article-cta .eyebrow { margin:0 0 20px; color:var(--or); font-size:var(--small); font-weight:600; }
.journal-prose .journal-article-cta h2 { margin:0; color:var(--d-text); font-size:28px; line-height:1.4; }
.journal-prose .journal-article-cta p:not(.eyebrow) { margin-top:20px; color:var(--d-muted); }
.journal-article-cta .actions { margin-top:var(--s5); }
.journal-article-cta .btn { max-width:100%; min-height:48px; height:auto; padding:12px var(--s4); line-height:1.35; white-space:normal; text-align:center; }
.journal-prose .journal-article-cta .btn-or { background:var(--or); color:var(--white); text-decoration:none; }
.journal-prose .journal-article-cta .btn-or:hover { background:var(--or-deep); color:var(--white); }
.journal-prose .journal-article-cta .btn-w { background:var(--white); color:var(--ink); text-decoration:none; }
.journal-prose .journal-article-cta .btn-w:hover { background:var(--paper-2); color:var(--ink); }
.journal-back-link { display:inline-block; margin-top:var(--s5); font-size:var(--small); }
.journal-recommend { position:fixed; z-index:45; bottom:var(--s4); right:var(--s4); width:min(340px,calc(100% - 32px)); max-height:calc(100dvh - var(--header-h) - var(--s6)); overflow:auto; border:1px solid var(--line); border-radius:var(--r-l); background:var(--white); color:var(--ink); box-shadow:var(--shadow-pill); }
.journal-recommend-visual { position:relative; background:var(--paper-2); color:var(--ink); }
.journal-recommend-visual img { display:block; width:100%; height:140px; object-fit:cover; }
.journal-recommend .float-close { position:absolute; top:12px; right:12px; min-width:32px; min-height:32px; background:var(--head-paper); color:var(--ink); border:1px solid var(--line); }
.journal-recommend .float-close:hover { background:var(--ink); color:var(--d-text); }
.journal-recommend-content { padding:var(--s4); }
.journal-recommend-content .eyebrow { margin-bottom:20px; font-size:12px; color:var(--or-deep); }
.journal-recommend-content h2 { font-size:var(--h3); line-height:1.4; font-weight:600; }
.journal-recommend-content p:not(.eyebrow) { margin-top:var(--s3); font-size:var(--small); color:var(--ink-2); }
.journal-recommend-content .btn { display:inline-flex; margin-top:var(--s4); max-width:100%; height:auto; min-height:40px; padding:10px var(--s3); white-space:normal; line-height:1.35; text-align:center; background:var(--or); color:var(--white); }
.journal-recommend-content .btn:hover { background:var(--or-deep); color:var(--white); }
@media (max-width:1100px) {
  .journal-list-heading { padding:64px var(--s5) var(--s6); }
  .journal-list-heading h1,.journal-article-heading h1 { font-size:48px; }
  .journal-list-section>.frame { padding:0 var(--s5) 80px; }
  .journal-article-hero>.frame { padding:var(--s6) var(--s5); }
  .journal-reading-layout { grid-template-columns:200px minmax(0,1fr); gap:var(--s5); padding:var(--s6) var(--s5) 80px; }
  .journal-toc { padding:20px; }
}
@media (max-width:860px) {
  .journal-list-heading { padding:var(--s6) var(--s5); }
  .journal-list-heading h1,.journal-article-heading h1 { font-size:40px; }
  .journal-post-grid { grid-template-columns:minmax(0,1fr); }
  .journal-post-card { padding:var(--s5); }
  .journal-card-bottom { padding-top:var(--s5); }
  .journal-reading-layout { grid-template-columns:minmax(0,1fr); gap:var(--s5); padding:var(--s5) var(--s5) 64px; }
  .journal-toc { display:none; }
  .journal-mobile-toc { display:block; padding:var(--s3) var(--s4); border:1px solid var(--line); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
  .journal-mobile-toc summary { position:relative; padding-right:var(--s5); list-style:none; cursor:pointer; font-size:var(--small); font-weight:600; }
  .journal-mobile-toc summary::-webkit-details-marker { display:none; }
  .journal-mobile-toc summary .chevron { right:2px; }
  .journal-mobile-toc[open] summary .chevron { transform:translateY(-50%) rotate(225deg); }
  .journal-mobile-toc ol { display:grid; gap:12px; margin:var(--s4) 0 var(--s2); padding-left:20px; font-size:var(--small); }
  .journal-mobile-toc a { color:var(--ink-2); text-decoration:underline; text-underline-offset:4px; }
  .journal-mobile-toc .journal-toc-count { margin-top:var(--s3); }
  .journal-prose { max-width:none; }
  .journal-prose h2 { font-size:24px; }
}
@media (max-width:560px) {
  .journal-list-heading { padding:40px var(--s4) var(--s5); }
  .journal-list-heading h1,.journal-article-heading h1 { font-size:36px; line-height:1.25; }
  .journal-list-section>.frame { padding:0 var(--s4) 64px; }
  .journal-post-card { padding:var(--s4); }
  .journal-card-title { margin-top:var(--s4); font-size:24px; line-height:1.4; }
  .journal-card-description { font-size:var(--small); }
  .journal-card-meta { font-size:12px; }
  .journal-card-bottom { gap:var(--s3); }
  .journal-article-hero>.frame { padding:40px var(--s4) var(--s5); }
  .journal-breadcrumb { margin-bottom:var(--s5); font-size:12px; }
  .journal-article-meta { gap:var(--s2) var(--s3); font-size:12px; }
  .journal-reading-layout { padding:var(--s5) var(--s4) 64px; }
  .journal-prose h2 { font-size:24px; }
  .journal-prose h3 { font-size:var(--h3); }
  .journal-article-cta { padding:var(--s4); }
  .journal-prose .journal-article-cta h2 { font-size:24px; }
  .journal-article-cta .actions { align-items:stretch; flex-direction:column; }
  .journal-recommend { right:var(--s3); bottom:var(--s3); }
}


/* Journal reading shell. */
.journal-article-hero {
  width:min(1184px,calc(100% - 48px));
  margin:0 auto;
  padding:var(--s7) 0 var(--s6);
  color:var(--ink);
}
.journal-article-crumb {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2) var(--s3);
  margin-bottom:var(--s6);
  color:var(--muted);
  font-size:var(--small);
}
.journal-article-crumb a:hover {
  color:var(--or-deep);
  text-decoration:underline;
  text-underline-offset:4px;
}
.journal-article-hero h1 {
  max-width:960px;
  font-size:var(--h1);
  line-height:1.22;
  font-weight:600;
  letter-spacing:-.02em;
}
.journal-article-meta {
  display:inline-flex;
  align-items:center;
  gap:var(--s2) var(--s3);
  flex-wrap:wrap;
  width:fit-content;
  max-width:100%;
  margin-top:var(--s5);
  padding:var(--s2) var(--s3);
  border-radius:var(--r-p);
  background:var(--paper-2);
  color:var(--ink-2);
  font-size:var(--small);
}
.journal-article-meta>* {
  white-space:nowrap;
}
.journal-article-meta>*+* {
  padding-left:var(--s3);
  border-left:1px solid var(--fwd-line);
}
.journal-article-hero .section-intro {
  margin-top:var(--s4);
  max-width:880px;
  line-height:1.8;
}
.journal-article-takeaway {
  display:flex;
  align-items:flex-start;
  gap:var(--s4);
  max-width:880px;
  margin-top:var(--s5);
  padding:var(--s4) var(--s4) var(--s4) 0;
  border-top:1px solid var(--line);
  color:var(--ink-2);
}
.journal-article-takeaway>svg {
  color:var(--or-deep);
}
.journal-article-takeaway p {
  font-size:var(--small);
  line-height:1.8;
}
.journal-article-takeaway strong {
  display:block;
  margin-bottom:var(--s2);
  font-weight:600;
  color:var(--ink);
}
.journal-article-layout {
  display:grid;
  grid-template-columns:240px minmax(0,1fr);
  align-items:start;
  gap:var(--s6);
  width:min(1184px,calc(100% - 48px));
  margin:0 auto;
  padding:var(--s6) 0 var(--s7);
  border-top:1px solid var(--line);
}
.journal-article-sidebar {
  position:sticky;
  top:calc(var(--header-h) + var(--s3));
  z-index:3;
  min-width:0;
  padding:var(--s4);
  border-radius:var(--r-l);
  background:var(--paper-2);
  color:var(--ink);
}
.journal-article-toc summary {
  position:relative;
  list-style:none;
  padding-right:var(--s4);
  font-size:var(--body);
  font-weight:500;
  cursor:pointer;
}
.journal-article-toc summary::-webkit-details-marker {
  display:none;
}
.journal-article-toc summary .chevron {
  right:var(--s1);
}
.journal-article-toc[open] summary .chevron {
  transform:rotate(45deg);
  margin-top:-3px;
}
.journal-article-toc ol {
  display:grid;
  gap:var(--s2);
  margin:var(--s4) 0 0;
  padding-left:var(--s4);
  font-size:var(--small);
  color:var(--ink-2);
}
.journal-article-toc li {
  margin:0;
  padding-left:var(--s1);
}
.journal-article-toc a:hover {
  color:var(--or-deep);
  text-decoration:underline;
  text-underline-offset:3px;
}
.journal-article-count {
  margin-top:var(--s4);
  background:var(--ink);
  color:var(--d-text);
}
.journal-article-count:hover {
  background:var(--hover-ink);
  color:var(--d-text);
}
.journal-article-copy {
  max-width:none;
  min-width:0;
}
.journal-article-copy>section {
  scroll-margin-top:calc(var(--header-h) + var(--s5));
}
.journal-article-copy>section+section {
  margin-top:var(--s6);
}
.journal-article-copy h2 {
  margin:0 0 var(--s4);
  font-size:24px;
  font-weight:600;
  line-height:1.45;
  letter-spacing:-.02em;
}
.journal-article-copy h3 {
  margin:var(--s5) 0 var(--s3);
  font-size:var(--h3);
  font-weight:600;
  line-height:1.5;
}
.journal-article-copy p {
  line-height:1.85;
}
.journal-article-copy strong {
  font-weight:600;
  color:var(--ink);
}
.journal-article-copy li {
  margin:var(--s2) 0;
}
.journal-article-table {
  max-width:100%;
  margin:var(--s4) 0 var(--s5);
  border:1px solid var(--line);
  border-radius:var(--r-s);
  background:var(--head-paper);
  color:var(--ink);
}
.journal-article-table table {
  min-width:640px;
  table-layout:fixed;
}
.journal-article-table caption {
  padding:var(--s3);
  text-align:left;
  color:var(--ink-2);
  font-size:var(--small);
  line-height:1.7;
}
.journal-article-table th,
.journal-article-table td {
  padding:var(--s3);
  line-height:1.8;
  overflow-wrap:anywhere;
}
.journal-article-table th:first-child {
  width:26%;
}
.journal-article-table tbody th {
  background:var(--head-paper);
  color:var(--ink);
  font-weight:500;
}
.journal-article-table td {
  color:var(--ink-2);
}
.journal-article-table tbody tr:last-child>* {
  border-bottom:0;
}
.journal-article-copy .journal-article-table+p {
  margin-top:var(--s5);
}
.journal-article-example {
  margin:var(--s4) 0 var(--s5);
  padding:var(--s4);
  border-radius:var(--r-l);
  background:var(--paper-2);
  color:var(--ink);
}
.journal-article-copy .journal-article-example h3 {
  margin:0 0 var(--s3);
  font-size:var(--body);
}
.journal-article-copy .journal-article-example p {
  margin:0;
  font-size:var(--small);
  color:var(--ink-2);
}
.journal-article-copy .journal-article-cta {
  margin-top:var(--s6);
  padding:var(--s6);
  background:var(--ink);
  color:var(--d-text);
}
.journal-article-cta>svg {
  display:block;
  margin-bottom:var(--s4);
  color:var(--or);
}
.journal-article-copy .journal-article-cta h2 {
  font-size:24px;
  line-height:1.4;
  color:var(--d-text);
}
.journal-article-copy .journal-article-cta p {
  color:var(--d-muted);
}
.journal-article-cta .actions {
  margin-top:var(--s5);
}
.journal-article-cta .btn {
  max-width:100%;
  height:auto;
  min-height:48px;
  padding:12px var(--s4);
  white-space:normal;
  line-height:1.35;
  text-align:center;
}
.journal-article-copy .journal-article-cta .btn-w {
  background:var(--white);
  color:var(--ink);
  border-color:transparent;
  text-decoration:none;
}
.journal-article-copy .journal-article-cta .btn-w:hover {
  background:var(--paper-2);
  color:var(--ink);
}
.journal-article-recommend {
  z-index:45;
  width:min(304px,calc(100% - 32px));
}
.journal-article-recommend>img {
  height:112px;
}
.journal-article-recommend .recommend-float-content {
  padding:var(--s4);
}
.journal-article-recommend h2 {
  font-size:var(--body);
}
.journal-article-recommend p {
  margin-top:var(--s2);
}
.journal-recommend-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--s2);
  margin-top:var(--s4);
}
.journal-article-recommend .journal-recommend-actions .btn {
  flex:1 1 auto;
  margin:0;
  padding:10px 12px;
  font-size:var(--small);
}
@media (max-width:1100px) {
  .journal-article-hero h1 {
    font-size:var(--h2);
  }
  .journal-article-layout {
    grid-template-columns:208px minmax(0,1fr);
    gap:var(--s5);
  }
}
@media (max-width:860px) {
  .journal-article-layout {
    grid-template-columns:minmax(0,1fr);
    gap:var(--s5);
    padding-top:var(--s5);
  }
  .journal-article-sidebar {
    position:static;
  }
  .journal-article-toc ol {
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:var(--s5);
  }
  .journal-article-copy .journal-article-cta {
    padding:var(--s5);
  }
}
@media (max-width:560px) {
  .journal-article-hero,
  .journal-article-layout {
    width:calc(100% - 48px);
  }
  .journal-article-hero {
    padding-top:var(--s7);
    padding-bottom:var(--s5);
  }
  .journal-article-crumb {
    margin-bottom:var(--s5);
    font-size:12px;
    gap:var(--s2);
  }
  .journal-article-hero h1 {
    font-size:32px;
    line-height:1.3;
  }
  .journal-article-meta {
    gap:var(--s2);
    margin-top:var(--s4);
    padding:var(--s2) 12px;
    font-size:12px;
  }
  .journal-article-meta>*+* {
    padding-left:var(--s2);
  }
  .journal-article-takeaway {
    padding-right:0;
    gap:12px;
  }
  .journal-article-takeaway>svg {
    width:24px;
    height:24px;
  }
  .journal-article-toc ol {
    grid-template-columns:minmax(0,1fr);
  }
  .journal-article-copy h2 {
    font-size:24px;
  }
  .journal-article-copy .journal-article-cta {
    padding:var(--s4);
  }
  .journal-article-cta .actions {
    align-items:stretch;
    flex-direction:column;
  }
  .journal-article-recommend {
    width:min(280px,calc(100% - 32px));
  }
  .journal-article-recommend>img {
    height:64px;
  }
}


/* Journal article reading system. */
.journal-article-hero,
.journal-reading-layout { width:min(1184px,calc(100% - 48px)); margin-right:auto; margin-left:auto; }
.journal-article-hero { padding-top:var(--s7); padding-bottom:var(--s6); }
.journal-article-crumb { display:flex; align-items:center; flex-wrap:wrap; gap:var(--s2) var(--s3); margin-bottom:var(--s6); color:var(--muted); font-size:var(--small); }
.journal-article-crumb a { color:var(--ink-2); text-decoration:underline; text-underline-offset:4px; }
.journal-article-crumb a:hover { color:var(--or-deep); }
.journal-article-hero h1 { max-width:1000px; font-size:var(--h1); line-height:1.22; font-weight:600; letter-spacing:-.02em; }
.journal-article-deck { max-width:800px; margin-top:var(--s4); }
.journal-article-meta { display:inline-flex; align-items:center; flex-wrap:wrap; gap:var(--s2) var(--s4); max-width:100%; margin-top:var(--s5); padding:12px 20px; border-radius:var(--r-l); background:var(--paper-2); color:var(--ink-2); font-size:var(--small); }
.journal-article-meta time { color:var(--ink); }
.journal-article-meta [data-post-tag] { color:var(--or-deep); }
.journal-article-takeaway { display:flex; align-items:flex-start; gap:var(--s4); margin-top:var(--s6); padding-top:var(--s5); border-top:1px solid var(--line); }
.journal-article-takeaway>svg { color:var(--or-deep); }
.journal-article-takeaway p { max-width:800px; font-size:var(--body); color:var(--ink); }
.journal-article-takeaway strong { display:block; font-weight:500; }
.journal-article-takeaway p>span { display:block; margin-top:var(--s2); color:var(--muted); font-size:var(--small); }
.journal-reading-layout { display:grid; grid-template-columns:240px minmax(0,1fr); gap:64px; align-items:start; padding-top:var(--s6); padding-bottom:var(--s7); border-top:1px solid var(--line); }
.journal-reading-main { min-width:0; }
.journal-toc { position:sticky; top:calc(var(--header-h) + var(--s4)); z-index:2; align-self:start; padding:var(--s4); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.journal-toc h2 { font-size:var(--body); line-height:1.5; font-weight:500; }
.journal-toc ol,
.journal-mobile-toc ol { margin:var(--s4) 0 0; padding-left:20px; font-size:var(--small); color:var(--muted); }
.journal-toc li,
.journal-mobile-toc li { margin:0; padding-left:var(--s1); }
.journal-toc li+li,
.journal-mobile-toc li+li { margin-top:var(--s2); }
.journal-toc li a,
.journal-mobile-toc li a { color:var(--ink-2); }
.journal-toc li a:hover,
.journal-mobile-toc li a:hover { color:var(--or-deep); text-decoration:underline; text-underline-offset:3px; }
.journal-toc-count { display:inline-flex; align-items:center; min-height:28px; margin-top:var(--s4); padding:4px 12px; border-radius:var(--r-p); background:var(--white); color:var(--ink-2); font-size:12px; }
.journal-toc-count:hover { background:var(--ink); color:var(--d-text); }
.journal-mobile-toc { display:none; }
.journal-prose { min-width:0; color:var(--ink-2); }
.journal-prose>section { scroll-margin-top:calc(var(--header-h) + var(--s5)); }
.journal-prose>section+section { margin-top:var(--s6); padding-top:var(--s5); border-top:1px solid var(--line); }
.journal-prose h2 { margin:var(--s6) 0 var(--s4); font-size:24px; line-height:1.45; font-weight:600; letter-spacing:-.02em; color:var(--ink); }
.journal-prose h3 { margin:var(--s5) 0 var(--s3); font-size:var(--h3); line-height:1.5; font-weight:500; color:var(--ink); }
.journal-prose p { margin:var(--s3) 0; font-size:var(--body); line-height:1.9; font-weight:400; }
.journal-prose section>p:last-child { margin-bottom:0; }
.journal-prose strong { font-weight:600; color:var(--ink); }
.journal-prose a:not(.btn) { color:var(--or-deep); text-decoration:underline; text-underline-offset:4px; text-decoration-thickness:1px; }
.journal-prose a:not(.btn):hover { color:var(--ink); }
.journal-prose ul { margin:var(--s4) 0; padding-left:24px; }
.journal-prose li { margin:0; font-size:var(--body); line-height:1.8; }
.journal-prose li+li { margin-top:var(--s2); }
.journal-comparison-scroll { margin:var(--s4) 0 var(--s5); overflow-x:auto; border:1px solid var(--line); border-radius:var(--r-s); background:var(--head-paper); color:var(--ink); }
.journal-comparison-scroll table { min-width:620px; table-layout:fixed; }
.journal-comparison-scroll caption { text-align:left; padding:var(--s3); font-size:var(--small); background:var(--paper-2); color:var(--ink-2); }
.journal-comparison-scroll thead th { background:var(--paper-2); color:var(--ink); font-weight:500; }
.journal-comparison-scroll th:first-child { width:23%; }
.journal-comparison-scroll tbody th { background:var(--head-paper); color:var(--ink); font-weight:500; }
.journal-comparison-scroll td { color:var(--ink-2); line-height:1.8; }
.journal-comparison-scroll tbody tr:last-child>* { border-bottom:0; }
.journal-closing-sheet { margin:var(--s4) 0 var(--s5); padding:var(--s5); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
.journal-closing-sheet h3 { margin:0 0 var(--s4); font-size:var(--h3); }
.journal-closing-sheet ul { margin:0; }
.journal-closing-sheet li { color:var(--ink-2); font-size:var(--small); }
.journal-article-final { margin-top:var(--s6); padding:var(--s6); border-radius:var(--r-l); background:var(--ink); color:var(--d-text); }
.journal-article-final>svg { display:block; margin-bottom:var(--s5); color:var(--or); }
.journal-article-final .eyebrow { margin:0 0 20px; color:var(--or); font-size:var(--small); line-height:1.6; font-weight:500; }
.journal-article-final h2 { margin:0; font-size:var(--h2); line-height:1.25; color:var(--d-text); }
.journal-article-final h2+p { max-width:600px; margin-top:var(--s4); color:var(--d-muted); }
.journal-article-final .actions { margin-top:var(--s5); }
.journal-article-final .btn { max-width:100%; min-height:48px; height:auto; padding:12px 24px; white-space:normal; line-height:1.35; text-decoration:none; }
.journal-article-final .btn-or { background:var(--or); color:var(--white); border-color:transparent; }
.journal-article-final .btn-or:hover { background:var(--or-deep); color:var(--white); }
.journal-article-final .btn-w { background:var(--white); color:var(--ink); border-color:transparent; }
.journal-article-final .btn-w:hover { background:var(--paper-2); color:var(--ink); }
.journal-prose .journal-article-endnote { margin:var(--s5) 0 0; font-size:var(--small); color:var(--muted); }
.journal-tool-float { z-index:45; width:min(320px,calc(100% - 32px)); }
.journal-float-photo { position:relative; background:var(--paper-2); color:var(--d-text); }
.journal-float-photo img { width:100%; height:120px; object-fit:cover; }
.journal-float-photo>span { position:absolute; bottom:12px; left:var(--s3); padding:4px 12px; border-radius:var(--r-p); background:var(--glass); color:var(--d-text); font-size:12px; }
.journal-tool-float .float-close { position:absolute; z-index:2; top:12px; right:12px; background:var(--paper); color:var(--ink); border-color:var(--line); }
.journal-tool-float .recommend-float-content { padding:var(--s4); }
.journal-tool-float .recommend-float-content h2 { font-size:var(--h3); font-weight:500; }
.journal-tool-float .recommend-float-content p { margin-top:var(--s2); }
.journal-tool-float .actions { margin-top:var(--s4); gap:var(--s2); }
.journal-tool-float .actions .btn { margin-top:0; padding:10px 16px; font-size:var(--small); }
@media (max-width:1100px) {
  .journal-reading-layout { grid-template-columns:200px minmax(0,1fr); gap:var(--s5); }
  .journal-toc { padding:20px; }
}
@media (max-width:860px) {
  .journal-article-hero { padding-top:var(--s7); }
  .journal-article-hero h1 { font-size:40px; line-height:1.3; }
  .journal-reading-layout { display:block; padding-top:var(--s5); }
  .journal-toc { display:none; }
  .journal-mobile-toc { display:block; margin-bottom:var(--s6); padding:var(--s3) var(--s4); border:1px solid var(--line); border-radius:var(--r-l); background:var(--paper-2); color:var(--ink); }
  .journal-mobile-toc summary { display:flex; align-items:center; justify-content:space-between; gap:var(--s3); list-style:none; cursor:pointer; font-size:var(--small); font-weight:500; }
  .journal-mobile-toc summary::-webkit-details-marker { display:none; }
  .journal-toc-chevron { display:block; width:7px; height:7px; flex:none; margin-right:var(--s1); border-right:1px solid currentColor; border-bottom:1px solid currentColor; transform:rotate(45deg); }
  .journal-mobile-toc[open] .journal-toc-chevron { transform:rotate(225deg); }
  .journal-mobile-toc nav { padding-bottom:var(--s2); }
  .journal-article-final { padding:var(--s5); }
}
@media (max-width:560px) {
  .journal-article-hero,
  .journal-reading-layout { width:calc(100% - 48px); }
  .journal-article-hero { padding-top:var(--s7); padding-bottom:var(--s5); }
  .journal-article-crumb { margin-bottom:var(--s5); font-size:12px; gap:var(--s2); }
  .journal-article-hero h1 { font-size:32px; line-height:1.35; }
  .journal-article-deck { margin-top:var(--s4); }
  .journal-article-meta { gap:var(--s2) var(--s3); padding:12px 16px; font-size:12px; }
  .journal-article-takeaway { margin-top:var(--s5); gap:var(--s3); }
  .journal-article-takeaway>svg { width:32px; height:32px; }
  .journal-reading-layout { padding-bottom:var(--s6); }
  .journal-mobile-toc { padding:var(--s3); margin-bottom:var(--s5); }
  .journal-prose h2 { font-size:24px; line-height:1.45; }
  .journal-prose h3 { font-size:var(--h3); }
  .journal-closing-sheet { padding:var(--s4); }
  .journal-article-final { padding:var(--s5) var(--s4); }
  .journal-article-final h2 { font-size:32px; }
  .journal-article-final .actions { align-items:stretch; flex-direction:column; }
  .journal-tool-float { width:min(288px,calc(100% - 32px)); }
  .journal-float-photo img { height:88px; }
  .journal-tool-float .recommend-float-content { padding:var(--s3); }
  .journal-tool-float .recommend-float-content h2 { font-size:var(--body); }
  .journal-tool-float .recommend-float-content p { font-size:12px; }
  .journal-tool-float .actions { margin-top:12px; }
}


/* Journal page boundaries and article product handoff. */
.journal-detail-page {
  min-width:0;
}
.journal-list-hero {
  min-width:0;
}
.journal-article-page {
  min-width:0;
}
.journal-product-cta {
  width:min(1184px,calc(100% - var(--s6)));
  margin:var(--s6) auto var(--s7);
  padding:var(--s6);
  border-radius:var(--r-l);
  background:var(--ink);
  color:var(--d-text);
}
.journal-product-cta h2 {
  max-width:820px;
  font-size:var(--h2);
  line-height:1.3;
  font-weight:600;
  letter-spacing:-.02em;
}
.journal-product-cta p {
  max-width:720px;
  margin-top:var(--s4);
  font-size:var(--body);
  line-height:1.8;
  color:var(--d-muted);
}
.journal-product-cta .actions {
  margin-top:var(--s5);
}
.journal-product-cta .btn {
  max-width:100%;
  min-height:48px;
  height:auto;
  padding:12px 24px;
  white-space:normal;
  line-height:1.35;
  text-align:center;
}
@media (max-width:560px) {
  .journal-product-cta {
    width:calc(100% - var(--s5));
    margin-top:var(--s5);
    margin-bottom:var(--s6);
    padding:var(--s5) var(--s4);
  }
  .journal-product-cta .actions {
    align-items:flex-start;
    flex-direction:column;
  }
}


/* Keep the header and language controls self-contained. */
.site-head,
.site-header {
  position:sticky;
  top:0;
  z-index:100;
  background:var(--head-paper);
  border-bottom:1px solid var(--line);
}

[data-lang-trigger] .chevron {
  position:absolute;
  top:50%;
  right:14px;
  width:7px;
  height:7px;
  border-right:1px solid currentColor;
  border-bottom:1px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
  pointer-events:none;
}

[data-lang-trigger][aria-expanded="true"] .chevron {
  position:absolute;
  top:50%;
  transform:rotate(45deg);
  margin-top:-3px;
}

/* Match the photograph caption to its light surface. */
.journal-float-photo {
  background:var(--paper-2);
  color:var(--ink);
  border-color:var(--line);
}

@media (max-width:560px) {
  [data-lang-trigger] .chevron {
    right:7px;
    width:6px;
    height:6px;
  }
}
