/* 首页首屏：按确认稿保留坐标、比例和图层次序。 */
.hero {
  position: relative;
  height: clamp(660px, calc(100vh - var(--nav-h) - var(--peek-h)), 860px);
  overflow: hidden;
  background: var(--c-bg);
  color: var(--c-text);
}
.hero__inner {
  position: relative;
  z-index: 2;
  max-width: var(--wrap);
  height: 100%;
  margin-inline: auto;
  padding-inline: var(--gutter);
  display: flex;
  align-items: center;
}
.hero__copy { width: min(560px, 42vw); padding-bottom: 8px; }
.seal {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
  padding: 4px 14px 4px 12px;
  border: var(--line) solid var(--c-border);
  border-radius: var(--r-pill);
  font-size: var(--fs-caption);
  color: var(--c-muted);
}
.seal__dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: var(--r-circle);
  background: var(--c-success);
  outline: 4px solid var(--c-success-halo);
}
.hero__title {
  margin-top: 28px;
  font-size: var(--fs-h1);
  font-weight: var(--weight-regular);
  line-height: 1.14;
  letter-spacing: var(--tracking-display);
}
.hero__title:lang(zh-CN), .hero__title:lang(zh-TW), .hero__title:lang(ja), .hero__title:lang(ko) {
  letter-spacing: var(--tracking-cjk);
}
.kt-line { display: block; }
.kt-word { display: inline-block; white-space: nowrap; animation: kt-rise .7s var(--ease-out) both; }
.kt-w1 { animation-delay: .05s; }
.kt-w2 { animation-delay: .17s; }
.kt-w3 { animation-delay: .32s; }
.marker { position: relative; z-index: 0; padding-inline: .04em; }
.marker::before {
  content: "";
  position: absolute;
  z-index: -1;
  left: -.08em;
  right: -.08em;
  bottom: .02em;
  height: .56em;
  border-radius: var(--r-xs);
  background: var(--c-highlight);
  transform-origin: left center;
  animation: marker-sweep .5s .62s var(--ease-out) both;
}
.hero__lede {
  margin-top: 22px;
  max-width: 31em;
  font-size: var(--fs-lede);
  line-height: 1.7;
  color: var(--c-muted);
}
.hero__lede strong { color: var(--c-text); font-weight: var(--weight-medium); }
.hero__actions { display: flex; align-items: center; gap: 12px; margin-top: 32px; }
.hero__actions .btn { flex-shrink: 0; }
.spec { margin-top: 40px; padding-top: 20px; border-top: var(--line) solid var(--c-border); }
.spec__row { display: grid; grid-template-columns: 52px minmax(0, 1fr); align-items: center; gap: 12px; }
.spec__row + .spec__row { margin-top: 14px; }
.spec dt { font-family: var(--f-mono); font-size: var(--fs-micro); color: var(--c-muted); letter-spacing: var(--tracking-meta); }
.device-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; }
.device { display: inline-flex; align-items: center; gap: 7px; font-size: var(--fs-small); }
.device svg { width: 18px; height: 18px; }
.device:hover { color: var(--c-accent-dark); }
.store-pill, .chip, .badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  max-width: 100%;
  min-height: 28px;
  padding: 3px 12px;
  border: var(--line) solid var(--c-border);
  border-radius: var(--r-pill);
  color: var(--c-text);
  font-size: var(--fs-caption);
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.store-pill svg { width: 13px; height: 13px; }
.chip-row, .fact-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.fact-row { list-style: none; }
.fact-row li {
  max-width: 100%;
  padding: 7px 12px;
  border: var(--line) solid var(--c-border);
  border-radius: var(--r-pill);
  background: var(--c-bg);
  color: var(--c-text);
  font-size: var(--fs-caption);
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.fact-row strong { font-weight: var(--weight-medium); }
.badge--brand { border-color: var(--c-panel-2-line); background: var(--c-panel-2); color: var(--c-accent-dark); }
.badge--highlight { border-color: var(--c-highlight); background: var(--c-highlight); color: var(--c-text); }
.fade-in { animation: rise-in .6s var(--ease-out) both; }
.fade-d0 { animation-delay: 0s; }
.fade-d1 { animation-delay: .3s; }
.fade-d2 { animation-delay: .4s; }
.fade-d3 { animation-delay: .5s; }

.rig { position: absolute; z-index: 1; top: 44px; left: 50%; width: 900px; height: 720px; pointer-events: none; }
.layer { position: absolute; animation: settle .42s var(--ease-out) both; }
.slab {
  left: 210px;
  top: 28px;
  width: 300px;
  height: 1000px;
  border-radius: var(--r-slab);
  background: var(--c-highlight);
  --dx: 0px;
  --dy: 8px;
  animation-delay: .1s;
}
.phone {
  left: 238px;
  top: 72px;
  width: 268px;
  height: 580px;
  border: 1.5px solid var(--c-text);
  border-radius: var(--r-phone);
  background: var(--c-bg);
  color: var(--c-text);
  --dx: 8px;
  --dy: 0px;
  animation-delay: .18s;
}
.phone::before, .phone::after { content: ""; position: absolute; width: 3px; background: var(--c-text); border-radius: var(--r-tiny); }
.phone::before { left: -5px; top: 104px; height: 54px; }
.phone::after { right: -5px; top: 150px; height: 78px; }
.phone__screen {
  position: absolute;
  inset: 9px;
  border-radius: var(--r-screen);
  overflow: hidden;
  background: linear-gradient(162deg, var(--c-accent) 0%, var(--c-warn) 100%);
  color: var(--c-text);
}
.phone__island { position: absolute; top: 12px; left: 50%; width: 78px; height: 22px; margin-left: -39px; border-radius: var(--r-pill); background: var(--c-text); }
.phone__orb { position: absolute; left: 50%; top: 150px; width: 156px; height: 156px; margin-left: -78px; border-radius: var(--r-circle); background: var(--c-veil); border: var(--line) solid var(--c-veil-line); }
.ios-card {
  left: 16px;
  top: 190px;
  width: 262px;
  background: var(--c-bg);
  color: var(--c-text);
  border: var(--line) solid var(--c-border);
  border-radius: var(--r-card);
  overflow: hidden;
  --dx: -8px;
  --dy: 0px;
  animation-delay: .26s;
}
.ios-card__head { padding: 12px 16px 8px; font-size: var(--fs-micro); color: var(--c-muted); }
.ios-card__group { list-style: none; }
.ios-card__group li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 38px;
  margin-left: 16px;
  padding-right: 14px;
  border-top: var(--line) solid var(--c-border);
  font-size: var(--fs-small);
  letter-spacing: var(--tracking-ui);
}
.ios-card__group li::after { content: "›"; color: var(--c-muted); }
.ios-card__gap { height: 12px; background: var(--c-surface); border-top: var(--line) solid var(--c-border); border-bottom: var(--line) solid var(--c-border); }
.ios-card__gap + .ios-card__group li:first-child { border-top: 0; }
.rule-card {
  left: 316px;
  top: 438px;
  width: 344px;
  padding: 14px 22px 18px;
  border: var(--line) solid var(--c-panel-2-line);
  border-radius: var(--r-card);
  background: var(--c-panel-2);
  color: var(--c-text);
  font-family: var(--f-mono);
  font-size: var(--fs-rule);
  line-height: 24px;
  --dx: 0px;
  --dy: 8px;
  animation-delay: .34s;
}
.rule-card__head { margin-bottom: 6px; font-size: var(--fs-micro); color: var(--c-muted); }
.rule-card ul { list-style: none; }
.rule-card li { white-space: nowrap; }
.pol--proxy { color: var(--c-accent-dark); }
.pol--direct { color: var(--c-text); }
.pol--reject { color: var(--c-error); }
.final { position: relative; z-index: 0; }
.final::before { content: ""; position: absolute; z-index: -1; left: -3px; right: -3px; bottom: 3px; height: 10px; border-radius: var(--r-tiny); background: var(--c-highlight); }
.strip-holder { left: 72px; top: 640px; --dx: -8px; --dy: 0px; animation-delay: .42s; }
.strip {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 900px;
  height: 52px;
  padding-inline: 8px;
  border: var(--line) solid var(--c-panel-line);
  border-radius: var(--r-pill);
  background: var(--c-panel);
  color: var(--c-text);
}
.strip span { display: inline-flex; align-items: center; height: 34px; padding-inline: 14px; border: var(--line) solid var(--c-panel-line); border-radius: var(--r-pill); background: var(--c-bg); color: var(--c-text); font-size: var(--fs-small); white-space: nowrap; }
.rig-note { position: absolute; display: flex; align-items: center; gap: 10px; font-size: var(--fs-caption); white-space: nowrap; animation: settle .4s .5s var(--ease-out) both; --dx: 0px; --dy: 6px; }
.rig-note__num { position: relative; display: grid; place-items: center; flex-shrink: 0; width: 26px; height: 26px; border-radius: var(--r-circle); background: var(--c-accent); color: var(--c-on-accent); font-family: var(--f-mono); font-size: var(--fs-micro); line-height: 1; }
.rig-note__lead { position: absolute; top: 100%; left: 12.5px; border-left: var(--line) dashed var(--c-accent); }
.rig-note__lead::after { content: ""; position: absolute; left: -3px; bottom: -3px; width: 5px; height: 5px; border-radius: var(--r-circle); background: var(--c-accent); }
.rig-note--route { left: 16px; top: 136px; }
.rig-note--route .rig-note__lead { height: 28px; }
.rig-note--rule { left: 548px; top: 336px; }
.rig-note--rule .rig-note__lead { height: 76px; }
.rig-note--proto { left: 96px; top: 560px; }
.rig-note--proto .rig-note__lead { height: 54px; }
.status-peek {
  display: flex;
  align-items: flex-start;
  gap: 36px;
  height: 72px;
  margin-inline: 24px;
  padding: 18px 40px 0;
  border: var(--line) solid var(--c-border);
  border-bottom: 0;
  border-radius: var(--r-card) var(--r-card) 0 0;
  font-family: var(--f-mono);
  font-size: var(--fs-caption);
  color: var(--c-muted);
  white-space: nowrap;
  overflow-x: auto;
}
.status-peek__item { display: inline-flex; align-items: center; gap: 8px; flex-shrink: 0; }
.status-peek__item b { font-weight: var(--weight-regular); color: var(--c-text); }
.status-dot { width: 7px; height: 7px; border-radius: var(--r-circle); background: var(--c-faint); flex-shrink: 0; }
.status-dot--ok { background: var(--c-success); }
.status-dot--accent { background: var(--c-accent); }
.status-dot--warn { background: var(--c-warn); }

/* 标本台：能力面板，不承载获取入口的设备切换。 */
.specimen { display: grid; grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); gap: 64px; }
.specimen [role="tablist"] { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
.specimen [role="tab"] {
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 18px;
  min-height: 64px;
  padding: 12px 20px;
  border-left: 3px solid var(--c-clear);
  font-size: var(--fs-tab);
  font-weight: var(--weight-regular);
  text-align: left;
  line-height: 1.4;
}
.specimen [role="tab"]:hover { color: var(--c-accent-dark); }
.specimen [role="tab"][aria-selected="true"] { border-left-color: var(--c-accent); }
.tab-number { flex-shrink: 0; color: var(--c-accent-dark); font-family: var(--f-mono); font-size: var(--fs-micro); }
.tab-name { position: relative; isolation: isolate; }
[aria-selected="true"] .tab-name::before { content: ""; position: absolute; z-index: -1; inset: auto -.08em .05em; height: .5em; border-radius: var(--r-tiny); background: var(--c-highlight); }
.tab-panels { min-width: 0; }
[role="tabpanel"] { min-width: 0; scroll-margin-top: 28px; }
.example-board {
  min-width: 0;
  min-height: 220px;
  margin-right: -104px;
  margin-bottom: 28px;
  padding: 32px;
  border: var(--line) solid var(--c-border);
  border-radius: var(--r-card);
  background: var(--c-bg);
  color: var(--c-text);
  overflow-x: auto;
}
.example-board pre { margin: 0; padding: 0; border: 0; background: var(--c-bg); color: var(--c-text); }
.tab-copy { max-width: 38em; line-height: 1.9; }
.tab-copy .text-link { display: inline-block; margin-top: 16px; }
.tabs-inline [role="tablist"] { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.tabs-inline [role="tab"] { min-height: 44px; padding: 10px 16px; border: var(--line) solid var(--c-border); border-radius: var(--r-pill); }
.tabs-inline [role="tab"][aria-selected="true"] { background: var(--c-panel-2); color: var(--c-accent-dark); border-color: var(--c-panel-2-line); }

/* 目录的直接父级须覆盖全部章节；默认不吸顶。 */
.toc {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: var(--line) solid var(--c-border);
  border-bottom: var(--line) solid var(--c-border);
  background: var(--c-bg);
  color: var(--c-text);
}
.toc a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 14px; border-radius: var(--r-pill); font-size: var(--fs-small); }
.toc a:hover, .toc a[aria-current] { background: var(--c-panel-2); color: var(--c-accent-dark); }
.toc--sticky { position: sticky; top: 0; z-index: 10; }
.faq-item { border-bottom: var(--line) solid var(--c-border); }
.faq-item summary {
  position: relative;
  min-height: 64px;
  padding: 20px 42px 20px 0;
  list-style: none;
  cursor: pointer;
  font-size: var(--fs-lede);
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::after { content: "+"; position: absolute; right: 8px; top: 20px; color: var(--c-accent-dark); font-family: var(--f-mono); }
.faq-item[open] summary::after { content: "−"; }
.faq-item__answer { padding-bottom: 24px; max-width: 52em; color: var(--c-muted); line-height: 1.85; }
.faq-item__answer p + p { margin-top: 16px; }
.term-card { padding: 28px; border-top: var(--line) solid var(--c-border); }
.term-card__category { margin-bottom: 12px; font-size: var(--fs-micro); color: var(--c-accent-dark); font-family: var(--f-mono); }
.term-card h3 { overflow-wrap: anywhere; }
.term-card p { margin-top: 16px; color: var(--c-muted); line-height: 1.85; }
.appstore-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 60px;
  max-width: 100%;
  padding: 10px 22px;
  border: var(--line) solid var(--c-clear);
  border-radius: var(--r-btn);
  background: var(--c-accent);
  color: var(--c-on-accent);
  transition: background-color var(--time-ui);
}
.appstore-button:hover { background: var(--c-accent-dark); color: var(--c-on-accent); }
.appstore-button svg { width: 26px; height: 28px; }
.appstore-button__text { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.3; }
.appstore-button__text small { font-size: var(--fs-micro); }
.appstore-button__text strong { font-weight: var(--weight-medium); font-size: var(--fs-lede); }
.store-guide-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 48px;
  padding: 28px;
  border: var(--line) solid var(--c-panel-2-line);
  border-radius: var(--r-card);
  background: var(--c-panel-2);
  color: var(--c-text);
}
.store-guide-card__copy { flex: 1 1 260px; min-width: 0; }
.store-guide-card__copy h2 { font-size: var(--fs-h3); }
.store-guide-card__copy p { margin-top: 12px; color: var(--c-muted); }

.official-shot { width: 100%; max-width: 280px; margin-inline: auto; flex-shrink: 0; }
.official-shot img { display: block; width: 100%; height: auto; border-radius: 10px; }
.official-shot { border: var(--line) solid var(--c-border); border-radius: var(--r-sm); }
.official-shot figcaption { padding-top: 12px; padding-bottom: 12px; color: var(--c-muted); font-size: var(--fs-caption); line-height: 1.6; text-align: center; overflow-wrap: break-word; }
.shot-row { display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; gap: 32px; }
.shot-placeholder {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 750 / 1334;
  border-radius: var(--r-sm);
  background: var(--c-surface);
  color: var(--c-muted);
  font-family: var(--f-mono);
  font-size: var(--fs-small);
}
.device-card { display: flex; align-items: flex-start; gap: 24px; }
.device-card__icon { width: 52px; height: 64px; color: var(--c-text); }
.device-card__content { min-width: 0; }
.device-card p { margin-top: 14px; }
.device-card .text-link { display: inline-block; min-height: 44px; padding-top: 14px; }
.article-card { display: flex; flex-direction: column; align-items: flex-start; }
.article-card__meta { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 22px; font-size: var(--fs-micro); color: var(--c-muted); }
.article-card h3 { font-size: var(--fs-h3); line-height: 1.45; }
.article-card h3 a:hover { color: var(--c-accent-dark); }
.article-card p { margin-top: 16px; line-height: 1.8; }
.article-card > .text-link { margin-top: 24px; padding-top: 8px; min-height: 44px; }
.callout {
  padding: 24px;
  border-left: 3px solid var(--c-accent);
  border-radius: var(--r-xs) var(--r-card) var(--r-card) var(--r-xs);
  background: var(--c-panel-2);
  color: var(--c-text);
  line-height: 1.85;
}
.callout strong { font-weight: var(--weight-medium); }
.callout p + p { margin-top: 12px; }
.callout--attention { background: var(--c-panel); color: var(--c-text); border-left-color: var(--c-warn); }
.dl-fab {
  position: fixed;
  z-index: 30;
  right: max(20px, env(safe-area-inset-right));
  bottom: max(20px, env(safe-area-inset-bottom));
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  max-width: calc(100% - 40px);
  padding: 12px 18px;
  border: var(--line) solid var(--c-accent);
  border-radius: var(--r-btn);
  background: var(--c-accent);
  color: var(--c-on-accent);
  line-height: 1.4;
}
.dl-fab:hover { background: var(--c-accent-dark); color: var(--c-on-accent); }
.dl-fab svg { width: 22px; height: 22px; }
.has-dl-fab { padding-bottom: 96px; }

.table-scroll { max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-inline: contain; }
.data-table { width: 100%; border-collapse: collapse; text-align: left; font-size: var(--fs-small); }
.data-table th, .data-table td, .prose table th, .prose table td, .article-body table th, .article-body table td {
  min-width: 7em;
  padding: 16px 20px;
  border-bottom: var(--line) solid var(--c-border);
  text-align: left;
  vertical-align: top;
  overflow-wrap: normal;
  word-break: normal;
}
.data-table th, .prose table th, .article-body table th {
  background: var(--c-surface);
  color: var(--c-text);
  font-weight: var(--weight-medium);
}
.prose table, .article-body table {
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  min-width: 0;
  border-collapse: collapse;
  overscroll-behavior-inline: contain;
}
.data-table code, .prose table code, .article-body table code { overflow-wrap: anywhere; white-space: normal; }

.swatch-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.swatch { min-width: 0; }
.swatch__paint { height: 72px; margin-bottom: 10px; border: var(--line) solid var(--c-border); border-radius: var(--r-sm); }
.swatch code { font-size: var(--fs-micro); }
.swatch-bg { background: var(--c-bg); }
.swatch-surface { background: var(--c-surface); }
.swatch-panel { background: var(--c-panel); }
.swatch-panel-line { background: var(--c-panel-line); }
.swatch-panel-2 { background: var(--c-panel-2); }
.swatch-panel-2-line { background: var(--c-panel-2-line); }
.swatch-border { background: var(--c-border); }
.swatch-border-strong { background: var(--c-border-strong); }
.swatch-accent { background: var(--c-accent); }
.swatch-accent-dark { background: var(--c-accent-dark); }
.swatch-highlight { background: var(--c-highlight); }
.swatch-text { background: var(--c-text); }
.swatch-muted { background: var(--c-muted); }
.swatch-faint { background: var(--c-faint); }
.swatch-success { background: var(--c-success); }
.swatch-warn { background: var(--c-warn); }
.swatch-error { background: var(--c-error); }
.swatch-on-accent { background: var(--c-on-accent); }
.swatch-veil { background: linear-gradient(var(--c-veil), var(--c-veil)), var(--c-accent); }
.swatch-veil-line { background: linear-gradient(var(--c-veil-line), var(--c-veil-line)), var(--c-accent); }
.swatch-success-halo { background: var(--c-success-halo); }
.swatch-scrim { background: var(--c-scrim); }
.swatch-clear { background: var(--c-clear); }
.preview-note { margin-top: 16px; color: var(--c-muted); font-size: var(--fs-small); }
.preview-type > * + * { margin-top: 24px; }
.preview-type__h1 { font-family: var(--f-display); font-size: var(--fs-h1); line-height: 1.14; letter-spacing: var(--tracking-cjk); }
.preview-button-group { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.preview-footer { margin-top: 0; }

@keyframes kt-rise { from { opacity: 0; transform: translateY(.42em); } to { opacity: 1; transform: none; } }
@keyframes marker-sweep { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes rise-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes settle { from { opacity: 0; transform: translate(var(--dx, 0px), var(--dy, 8px)); } to { opacity: 1; transform: none; } }

@media (max-width: 1360px) {
  .rig { transform: scale(.9); transform-origin: 0 0; }
}
@media (max-width: 1080px) {
  .hero { height: auto; }
  .hero__inner { height: auto; padding-top: 56px; padding-bottom: 24px; }
  .hero__copy { width: 100%; max-width: 600px; }
  .rig { position: relative; top: auto; left: auto; margin-left: var(--gutter); transform: scale(.78); transform-origin: 0 0; margin-bottom: -158px; }
  .specimen { grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr); gap: 28px; }
  .specimen [role="tab"] { font-size: var(--fs-h3); padding-inline: 12px; gap: 12px; }
}
@media (max-width: 768px) {
  .specimen { grid-template-columns: 1fr; gap: 28px; }
  .example-board { margin-right: 0; padding: 24px; }
  .swatch-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .hero__inner { padding-top: 40px; }
  .hero__lede { font-size: var(--fs-body); }
  .hero__actions { flex-wrap: wrap; gap: 10px; }
  .hero__actions .btn { padding-inline: 18px; }
  .spec__row { grid-template-columns: 1fr; gap: 8px; }
  .device-row { gap: 10px 16px; }
  .chip-row, .fact-row { flex-direction: row; flex-wrap: wrap; }
  .fact-row { justify-content: center; }
  .fact-row li { padding: 6px 10px; font-size: var(--fs-micro); }
  .rig { transform: scale(.52); margin-left: 12px; margin-bottom: -346px; }
  .status-peek { margin-inline: 12px; padding: 18px 20px 0; }
  .shot-row { flex-direction: column; align-items: center; }
  .official-shot { max-width: min(280px, 100%); }
  .device-card { gap: 18px; }
  .device-card__icon { width: 40px; height: 52px; }
  .term-card { padding: 24px 0; }
  .store-guide-card { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .kt-word, .marker::before, .layer, .rig-note, .fade-in { animation: none; }
}