/* #84 WiK Codex — Epigraph mobile reference UI.
   Standalone page scoped to .epigraph-page; existing database remains untouched.
   Intentionally no CSS gap property. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700&family=PT+Sans:wght@400;700&display=swap');
.epigraph-page {
  --epg-bg:#070807;
  --epg-face:#171615;
  --epg-border:rgba(242,242,242,.15);
  --epg-gold:#d6aa4f;
  --epg-highlight:#f3d27a;
  --epg-text:#f2f2f2;
  --epg-muted:#c8c8c4;
  min-width:0;
  margin-top:1.15rem;
  padding:1rem .78rem 1.4rem;
  background:var(--epg-bg);
  border:1px solid var(--epg-border);
  border-radius:1rem;
  color:var(--epg-text);
  font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  font-size:.8125rem;
  line-height:1.65;
  overflow-wrap:break-word;
}
html[lang=en] .epigraph-page,html[lang=es] .epigraph-page {font-family:Inter,Arial,sans-serif;line-height:1.55;}
html[lang=ru] .epigraph-page {font-family:'PT Sans',Arial,sans-serif;line-height:1.6;letter-spacing:0;}
.epigraph-page [hidden] {display:none!important;}
.epigraph-page * {min-width:0;box-sizing:border-box;}
.epigraph-page h1,.epigraph-page h2,.epigraph-page h3,.epigraph-page h4,.epigraph-page p {margin:0;}
.epigraph-page button,.epigraph-page a {font:inherit;}
.epigraph-page button:focus-visible,.epigraph-page a:focus-visible,.epigraph-page summary:focus-visible {outline:2px solid var(--epg-highlight);outline-offset:3px;}
.epg-kicker,.epg-eyebrow {font-size:.6875rem;letter-spacing:.1em;color:var(--epg-gold);font-weight:600;}
.epg-intro h2 {font-size:1.25rem;font-weight:600;line-height:1.3;margin-top:.38rem;}
.epg-tagline {color:var(--epg-muted);font-size:.8125rem;margin-top:.28rem!important;}
.epg-paragraph {font-size:.8125rem;line-height:inherit;margin-top:.65rem!important;}
.epg-h3 {font-size:.9375rem;line-height:1.4;font-weight:600;margin:1.35rem 0 .65rem!important;}
.epg-minor {color:var(--epg-muted);font-size:.75rem;line-height:1.6;margin-top:.7rem!important;}
.epg-goals {list-style:none;margin:.55rem 0 0;padding:0;counter-reset:goal;}
.epg-goals li {position:relative;counter-increment:goal;padding:.55rem .5rem .55rem 2.1rem;border-bottom:1px solid var(--epg-border);}
.epg-goals li::before {content:counter(goal,decimal-leading-zero);position:absolute;left:.25rem;top:.59rem;font-variant-numeric:tabular-nums;color:var(--epg-gold);font-size:.75rem;font-weight:700;}
.epg-goals li strong,.epg-goals li span {display:block;}
.epg-goals li strong {font-size:.875rem;font-weight:600;}
.epg-goals li span {color:var(--epg-muted);font-size:.75rem;margin-top:.1rem;}
.epg-toc {margin-top:1.2rem;border:1px solid var(--epg-border);padding:.7rem;border-radius:.75rem;background:rgba(255,255,255,.02);}
.epg-toc-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.45rem;}
.epg-toc-links a {color:var(--epg-muted);text-decoration:none;line-height:1.4;font-size:.75rem;padding:.45rem .35rem;border-bottom:1px solid var(--epg-border);}
.epg-toc-links a:nth-child(odd) {margin-right:.4rem;}
.epg-toc-links a:nth-child(even) {margin-left:.4rem;}
.epg-toc-links a:hover {color:var(--epg-highlight);}
.epg-section {padding-top:1.35rem;padding-bottom:.8rem;border-bottom:1px solid var(--epg-border);scroll-margin-top:1rem;}
.epg-section:last-child {border-bottom:0;}
.epg-section-heading {display:flex;align-items:baseline;margin-bottom:.65rem;}
.epg-section-number {color:var(--epg-gold);font:500 .9375rem Inter,Arial,sans-serif;margin-right:.6rem;font-variant-numeric:tabular-nums;}
.epg-section-heading h2 {font-size:.9375rem;line-height:1.4;font-weight:600;overflow-wrap:anywhere;}
.epg-route-card {background:var(--epg-face);border:1px solid var(--epg-border);border-radius:1rem;padding:.75rem;margin-top:.55rem;}
.epg-route-heading {display:flex;align-items:center;}
.epg-route-heading h4 {font-size:.875rem;font-weight:600;line-height:1.4;}
.epg-route-symbol {width:2.3rem;height:2.3rem;display:flex;align-items:center;justify-content:center;background:rgba(214,170,79,.12);color:var(--epg-gold);border-radius:.75rem;font-size:1.1rem;margin-right:.65rem;flex:0 0 auto;}

.epg-route-symbol img {
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  object-fit: contain;
}
.epg-route-card p {margin-top:.45rem;color:var(--epg-muted);font-size:.75rem;line-height:1.55;}
.epg-steps-inline {padding-left:3rem;margin-top:.3rem;line-height:1.65;font-size:.75rem;}
.epg-steps-inline span {display:inline;white-space:normal;}
.epg-table-scroll {width:100%;max-width:100%;margin-top:.55rem;border:1px solid var(--epg-border);border-radius:.65rem;overflow:hidden;}
.epg-table {width:100%;border-collapse:collapse;table-layout:fixed;font-size:.75rem;line-height:1.4;font-variant-numeric:tabular-nums;}
.epg-table thead {background:#23211b;}
.epg-table th,.epg-table td {padding:.54rem .28rem;border-bottom:1px solid rgba(242,242,242,.1);overflow-wrap:anywhere;hyphens:auto;text-align:right;vertical-align:middle;}
.epg-table tr:last-child th,.epg-table tr:last-child td {border-bottom:0;}
.epg-table th {font-weight:600;}
.epg-table tbody th {color:var(--epg-muted);text-align:left;}
.epg-table th:first-child,.epg-table td:first-child {text-align:left;}
.epg-rarity-table th:nth-child(1),.epg-rarity-table td:nth-child(1) {width:18%;}
.epg-rarity-table th:nth-child(2),.epg-rarity-table td:nth-child(2) {width:35%;}
.epg-rarity-table td {text-align:left;}
.epg-rarity-table tbody tr:first-child th {color:var(--epg-gold);}
.epg-factions {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:.5rem;}
.epg-faction {width:100%;min-height:3rem;padding:.48rem .2rem;background:#151514;border:1px solid #403f3b;border-radius:.55rem;color:var(--epg-muted);font-size:.75rem;font-weight:600;line-height:1.4;overflow-wrap:anywhere;cursor:pointer;}
.epg-faction + .epg-faction {margin-left:0;}
.epg-faction:nth-child(2) {border-left:0;border-right:0;border-radius:0;}
.epg-faction:first-child {border-radius:.55rem 0 0 .55rem;}
.epg-faction:last-child {border-radius:0 .55rem .55rem 0;}
.epg-faction.is-active {border-color:var(--epg-gold);background:rgba(214,170,79,.16);color:var(--epg-highlight);}
.epg-rune-list {margin-top:.7rem;}
.epg-rune-card {margin-top:.55rem;border:1px solid var(--epg-border);border-radius:1rem;background:var(--epg-face);overflow:hidden;}
.epg-rune-card:has(.epg-rune-toggle[aria-expanded=true]) {border-color:rgba(214,170,79,.46);}
.epg-rune-toggle {display:flex;align-items:center;text-align:left;width:100%;min-height:4.75rem;padding:.65rem;color:var(--epg-text);background:transparent;border:0;cursor:pointer;}
.epg-icon-tile {display:flex;align-items:center;justify-content:center;flex:0 0 3rem;width:3rem;height:3rem;margin-right:.72rem;border-radius:.7rem;background:#2a261d;overflow:hidden;}
.epg-icon-tile img {width:2.75rem;height:2.75rem;object-fit:contain;}
.epg-rune-copy {display:block;flex:1 1 0;}
.epg-rune-copy strong,.epg-rune-copy small {display:block;overflow-wrap:anywhere;}
.epg-rune-copy strong {font-size:.875rem;line-height:1.35;font-weight:600;}
.epg-rune-copy small {font-size:.75rem;line-height:1.45;color:var(--epg-muted);margin-top:.15rem;}
.epg-chevron {display:block;flex:0 0 1.25rem;font-size:1.4rem;line-height:1;text-align:center;color:var(--epg-gold);margin-left:.4rem;transform:rotate(0deg);transition:transform .18s;}
.epg-rune-toggle[aria-expanded=true] .epg-chevron {transform:rotate(180deg);}
.epg-rune-body {padding:.2rem .7rem .8rem;}
.epg-table-heading {margin-top:1rem;margin-bottom:.35rem;}
.epg-table-heading h4 {font-size:.8125rem;font-weight:600;}
.epg-table-heading small {font-size:.6875rem;color:var(--epg-muted);}
.epg-effects-table th:first-child {width:17%;}
.epg-effects-table th:nth-child(2) {width:39%;}
.epg-effects-table th:nth-child(3) {width:44%;}
.epg-special-star {color:var(--epg-gold);font-weight:700;}
.epg-final {color:var(--epg-highlight);font-weight:700;}
.epg-card-tip {color:var(--epg-muted);font-size:.75rem;margin-top:.6rem!important;line-height:1.6;}
.epg-card-tip strong {color:var(--epg-text);}
.epg-metric-pair {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.epg-metric {padding:.7rem .5rem;background:var(--epg-face);border:1px solid var(--epg-border);border-radius:.8rem;min-height:7.4rem;}
.epg-metric:first-child {margin-right:.35rem;}
.epg-metric:last-child {margin-left:.35rem;}
.epg-metric-label,.epg-metric>span:last-child {display:block;color:var(--epg-muted);font-size:.6875rem;line-height:1.4;}
.epg-metric>strong,.epg-metric-amount strong {display:block;font-weight:600;font-size:1.4375rem;color:var(--epg-gold);font-variant-numeric:tabular-nums;line-height:1.3;margin:.3rem 0;}
.epg-metric-amount {display:flex;align-items:center;}
.epg-metric-amount img {width:1.9rem;height:1.9rem;object-fit:contain;margin-right:.35rem;}
.epg-cost-table th:first-child {width:13%;}
.epg-cost-table th:nth-child(2) {width:25%;}
.epg-cost-table th:nth-child(3) {width:23%;}
.epg-cost-table th:nth-child(4) {width:39%;}
.epg-cost-table td {font-size:.75rem;}
.epg-detail {background:var(--epg-face);border:1px solid var(--epg-border);border-radius:.8rem;margin-top:.55rem;overflow:hidden;}
.epg-detail summary {position:relative;display:flex;align-items:center;min-height:3rem;padding:.7rem 2rem .7rem .72rem;font-size:.8125rem;font-weight:600;cursor:pointer;list-style:none;overflow-wrap:anywhere;}
.epg-detail summary::-webkit-details-marker {display:none;}
.epg-detail summary::after {content:'⌄';position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:var(--epg-gold);font-size:1.2rem;line-height:1;}
.epg-detail[open]>summary::after {content:'⌃';}
.epg-detail-inner {padding:0 .72rem .72rem;}
.epg-amp-table th:first-child {width:22%;}
.epg-timeline {position:relative;list-style:none;padding:0 0 0 .2rem;margin:.55rem 0 0;}
.epg-timeline::before {content:'';position:absolute;top:1.2rem;bottom:1.4rem;left:1.25rem;width:1px;background:rgba(214,170,79,.45);}
.epg-timeline-row {position:relative;display:flex;align-items:center;min-height:3.55rem;padding:.25rem 0;}
.epg-timeline-node {position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:0 0 2.15rem;width:2.15rem;height:2.15rem;border:1px solid rgba(214,170,79,.6);border-radius:50%;font:.75rem Inter,Arial,sans-serif;background:var(--epg-bg);color:var(--epg-gold);margin-right:.7rem;}
.epg-timeline-level {flex:0 0 4.3rem;font-variant-numeric:tabular-nums;color:var(--epg-gold);font-weight:600;margin-right:.4rem;}
.epg-timeline-desc {display:block;flex:1;line-height:1.4;}
.epg-timeline-desc strong,.epg-timeline-desc small {display:block;}
.epg-timeline-desc strong {font-size:.8125rem;font-weight:600;}
.epg-timeline-desc small {font-size:.75rem;color:var(--epg-muted);margin-top:.15rem;}
.epg-example-table {font-size:.6875rem;}
.epg-example-table th:first-child {width:39%;}
.epg-exp-table {font-size:.6875rem;}
.epg-exp-table th:first-child {width:49%;}
.epg-exp-table th:not(:first-child) {width:17%;}
.epg-shop-item {display:flex;align-items:center;min-height:4.35rem;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.08);}
.epg-shop-item:last-child {border-bottom:0;}
.epg-shop-image {display:flex;align-items:center;justify-content:center;flex:0 0 3.15rem;width:3.15rem;height:3.15rem;margin-right:.75rem;background:rgba(255,214,102,.07);border-radius:.8rem;}
.epg-shop-image img {width:2.65rem;height:2.65rem;object-fit:contain;}
.epg-shop-copy {display:block;flex:1;min-width:0;line-height:1.38;}
.epg-shop-copy strong,.epg-shop-copy small,.epg-shop-price strong,.epg-shop-price small {display:block;}
.epg-shop-copy strong {font-size:.95rem;font-weight:700;color:var(--epg-text);}
.epg-shop-copy small {margin-top:.1rem;font-size:.9rem;color:var(--epg-muted);overflow-wrap:anywhere;}
.epg-shop-copy .epg-shop-note {margin-top:.3rem;font-size:.75rem;line-height:1.4;}
.epg-shop-price {flex:0 0 31%;max-width:31%;margin-left:.5rem;text-align:right;line-height:1.25;align-self:center;}
.epg-shop-price strong {font-size:1rem;color:var(--epg-gold);font-weight:700;font-variant-numeric:tabular-nums;}
.epg-shop-price small {margin-top:.1rem;font-size:.88rem;color:var(--epg-muted);overflow-wrap:anywhere;}
.epg-shop-price-empty {visibility:hidden;}
.epg-uses-table td {text-align:left;}
.epg-uses-table th {width:42%;}
.epg-progress-list {list-style:none;padding:0;margin:.4rem 0 0;}
.epg-progress-list li {display:flex;align-items:center;padding:.65rem .3rem;border-bottom:1px solid var(--epg-border);}
.epg-progress-list li>span {display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;flex:0 0 2rem;border-radius:50%;border:1px solid rgba(214,170,79,.4);color:var(--epg-gold);font-weight:600;font-variant-numeric:tabular-nums;margin-right:.65rem;}
.epg-progress-list li div {flex:1;}
.epg-progress-list strong,.epg-progress-list small {display:block;}
.epg-progress-list strong {font-size:.8125rem;font-weight:600;}
.epg-progress-list small {color:var(--epg-muted);font-size:.75rem;}
.epg-tip {margin-top:.5rem;border:1px solid var(--epg-border);border-radius:.8rem;background:var(--epg-face);overflow:hidden;}
.epg-tip details summary {display:flex;align-items:center;min-height:4rem;padding:.65rem .7rem;cursor:pointer;list-style:none;}
.epg-tip details summary::-webkit-details-marker {display:none;}
.epg-tip-num {flex:0 0 3rem;color:var(--epg-gold);font-size:.75rem;font-weight:700;}
.epg-tip-summary {display:block;flex:1;padding-right:.65rem;}
.epg-tip-summary strong,.epg-tip-summary small {display:block;}
.epg-tip-summary strong {font-size:.8125rem;line-height:1.4;font-weight:600;}
.epg-tip-summary small {color:var(--epg-muted);font-size:.75rem;line-height:1.45;margin-top:.12rem;}
.epg-tip details summary::after {content:'⌄';flex:0 0 .75rem;color:var(--epg-gold);font-size:1.15rem;}
.epg-tip details[open] summary::after {content:'⌃';}
.epg-tip-body {padding:.1rem .75rem .8rem;color:var(--epg-muted);font-size:.75rem;}
.epg-tip-body>p {margin-bottom:.55rem;}
.epg-visual {margin-top:.75rem;border-top:1px solid var(--epg-border);padding-top:.75rem;}
.epg-visual>h4 {color:var(--epg-text);font-size:.8125rem;font-weight:600;margin-bottom:.5rem;}
.epg-star-map {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));}
.epg-star-tick {min-width:0;margin-right:2px;padding:.36rem 0;display:flex;flex-direction:column;align-items:center;border-radius:.3rem;border:1px solid #383735;}
.epg-star-tick:last-child {margin-right:0;}
.epg-star-tick span {font-size:.6875rem;line-height:1.4;font-variant-numeric:tabular-nums;}
.epg-star-tick strong {font-size:.6875rem;font-weight:600;line-height:1.6;}
.epg-star-tick.is-highlight {background:rgba(214,170,79,.16);border-color:var(--epg-gold);color:var(--epg-highlight);}
.epg-star-legend {display:flex;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:.45rem;font-size:.6875rem;}
.epg-star-legend>span {display:inline-flex;align-items:center;margin:.15rem .35rem;}
.epg-star-legend i {width:.58rem;height:.58rem;border-radius:.1rem;margin-right:.28rem;display:inline-block;}
.epg-legend-primary {background:#696860;}.epg-legend-secondary {background:var(--epg-gold);}
.epg-star-message {text-align:center;color:var(--epg-highlight);font-size:.8125rem;font-weight:600;margin-top:.45rem!important;}
.epg-chart-extra {margin-top:.75rem;border-top:1px solid var(--epg-border);}
.epg-chart-extra>summary {padding:.6rem .2rem;color:var(--epg-text);font-size:.75rem;cursor:pointer;}
.epg-static-chart h4 {font-size:.75rem;font-weight:600;line-height:1.4;}
.epg-static-chart svg {display:block;width:100%;height:auto;margin-top:.45rem;overflow:visible;}
.epg-static-chart .epg-minor {margin-top:.25rem!important;}
html[lang=ru] .epg-toc-links a,html[lang=ru] .epg-shop-copy,html[lang=ru] .epg-rune-copy,html[lang=ru] .epg-faction {line-height:1.5;}
@media (max-width:360px) {
  .epigraph-page {padding:.85rem .5rem 1rem;}
  .epg-icon-tile {width:2.75rem;flex-basis:2.75rem;margin-right:.5rem;}
  .epg-icon-tile img {width:2.55rem;height:2.55rem;}
  .epg-timeline-level {flex-basis:3.7rem;}
  .epg-rune-toggle {padding:.55rem;}
  .epg-table th,.epg-table td {padding:.5rem .16rem;}
  .epg-shop-price {flex-basis:31%;max-width:31%;}
}
@media (prefers-reduced-motion:reduce) {.epg-chevron {transition:none;}}
/* High text zoom: switch dense numeric tables to readable stacked rows.
   rem-based container threshold responds to browser text-size enlargement. */
.epigraph-page {container-type:inline-size;}
@container (max-width:18rem) {
  .epg-table-scroll {border:0;overflow:visible;}
  .epg-table,.epg-table tbody,.epg-table tbody tr,.epg-table tbody th,.epg-table tbody td {display:block;width:100%!important;max-width:none!important;}
  .epg-table thead {display:none;}
  .epg-table tbody tr {border:1px solid rgba(242,242,242,.15);border-radius:.4rem;margin-bottom:.4rem;padding:.25rem .45rem;background:#171615;}
  .epg-table tbody th {border:0!important;font-size:.8125rem!important;padding:.3rem!important;text-align:left!important;color:#d6aa4f;}
  .epg-table tbody td {display:flex;align-items:baseline;justify-content:space-between;border:0!important;font-size:.75rem!important;padding:.35rem .3rem!important;text-align:right!important;}
  .epg-table tbody td::before {content:attr(data-label);color:#c8c8c4;font-size:.6875rem;flex:1;text-align:left;margin-right:.5rem;overflow-wrap:anywhere;}
  .epg-factions {display:block;}
  .epg-faction {width:100%;min-height:2.6rem;text-align:left;padding-left:.7rem;border-radius:.45rem!important;margin-bottom:.15rem;}
  .epg-faction:nth-child(2) {border:1px solid #403f3b;}
  .epg-star-map {grid-template-columns:repeat(4,minmax(0,1fr));}
  .epg-star-tick {margin-bottom:.15rem;}
  .epg-metric-pair {display:block;}
  .epg-metric:first-child,.epg-metric:last-child {margin:0 0 .5rem;}
  .epg-shop-item {flex-wrap:nowrap;}
  .epg-shop-image {flex-basis:2.9rem;width:2.9rem;height:2.9rem;margin-right:.65rem;}
  .epg-shop-image img {width:2.4rem;height:2.4rem;}
  .epg-shop-copy strong {font-size:.9rem;}
  .epg-shop-copy small {font-size:.82rem;}
  .epg-shop-price {flex:0 0 32%;max-width:32%;text-align:right;margin-left:.45rem;}
  .epg-shop-price strong {font-size:.96rem;}
  .epg-shop-price small {font-size:.78rem;}
}
@container (max-width:18rem) {
  .epg-timeline-row {display:grid;grid-template-columns:2.15rem minmax(0,1fr);grid-template-rows:auto auto;padding:.55rem 0;}
  .epg-timeline-node {grid-column:1;grid-row:1 / 3;align-self:start;}
  .epg-timeline-level {grid-column:2;grid-row:1;width:auto;margin:0;}
  .epg-timeline-desc {grid-column:2;grid-row:2;width:auto;margin-top:.15rem;overflow-wrap:anywhere;}
  .epg-tip-summary strong,.epg-tip-summary small,.epg-shop-copy,.epg-section-heading h2,.epg-detail summary {overflow-wrap:anywhere;}
}
@container (max-width:18rem) {
  .epg-toc-links {display:block;}
  .epg-toc-links a {display:block;margin-left:0!important;margin-right:0!important;}
  .epg-section-number {flex:0 0 auto;}
  .epg-route-heading h4,.epg-route-card p,.epg-steps-inline,.epg-tip-body,.epg-progress-list li div,.epg-toc-links a,.epg-minor,.epg-paragraph {overflow-wrap:anywhere;word-break:normal;}
  .epg-steps-inline {padding-left:0;}
}
/* Prevent a 1px legacy category-label overhang at extreme text zoom. */
@media (max-width:320px) {
  html[lang="ru"] .database-tab {min-width:0;}
  html[lang="ru"] .database-tab > span:last-child {min-width:0;overflow-wrap:anywhere;}
}

/* Integrate inside current Raven databasePanel; do not change the existing tab grid. */
body[data-database-type="raven"] #ravenRunePlanContent.epigraph-page {margin:0;padding:.25rem 0 1rem;background:transparent;border:0;border-radius:0;max-width:100%;}
body[data-database-type="raven"].is-rune-plan-active #databasePanel > .database-panel-heading {display:none;}
body[data-database-type="raven"] #ravenRunePlanContent.epigraph-page .epg-intro h2 {font-size:1.25rem;line-height:1.35;}
body[data-database-type="raven"] #ravenRunePlanContent[hidden] {display:none!important;}

/* The legacy Raven pending state must never leak into the Rune Plan tab. */
body[data-database-type="raven"].is-rune-plan-active #ravenPendingContent,
body[data-database-type="raven"].is-rune-plan-active #ravenCalculationContent,
body[data-database-type="raven"].is-rune-plan-active #ravenEquipmentContent {display:none!important;}

/* 2026-10-22 UI revision — requested visual refinements. */
/* Chapter headings: gold left rail and subtle dark bronze header, matching Raven Equipment hierarchy. */
.epigraph-page .epg-section-heading {
  align-items:center;
  min-height:3.05rem;
  padding:.7rem .78rem;
  margin:.1rem 0 .85rem;
  background:#201f1c;
  border-left:3px solid var(--epg-gold);
  border-radius:.1rem .5rem .5rem .1rem;
}
.epigraph-page .epg-section-number {margin-right:.7rem;line-height:1.3;}
.epigraph-page .epg-section-heading h2 {line-height:1.45;}
/* Contents caption is visually centred regardless of text length. */
.epigraph-page .epg-toc>.epg-eyebrow {display:block;text-align:center;}
/* All rarity table headings and data begin at the same horizontal position. */
.epigraph-page .epg-rarity-table thead th,
.epigraph-page .epg-rarity-table tbody th,
.epigraph-page .epg-rarity-table tbody td {
  text-align:left;
  vertical-align:middle;
  padding:.65rem .45rem;
  line-height:1.5;
}
/* Accordion cards: remove busy outer borders, increase tone contrast subtly. */
.epigraph-page .epg-rune-card,
.epigraph-page .epg-detail {border:0;background:#20201e;}
.epigraph-page .epg-rune-card:has(.epg-rune-toggle[aria-expanded=true]) {border:0;background:#22211f;}
/* Chevron anchored at the vertical centre of the 48px rune icon, not the variable-height text. */
.epigraph-page .epg-rune-toggle {position:relative;align-items:flex-start;padding-right:2.25rem;}
.epigraph-page .epg-icon-tile {align-self:flex-start;}
.epigraph-page .epg-rune-copy {align-self:center;}
.epigraph-page .epg-chevron {
  position:absolute;
  right:.72rem;
  top:calc(.65rem + 1.5rem);
  margin:0;
  width:1.25rem;
  height:1.25rem;
  font-size:0;
  line-height:1;
  transform:none;
}
.epigraph-page .epg-chevron::after {
  content:"";
  position:absolute;
  top:4px;
  left:5px;
  width:9px;
  height:9px;
  border-right:2px solid var(--epg-gold);
  border-bottom:2px solid var(--epg-gold);
  transform:rotate(45deg);
}
.epigraph-page .epg-rune-toggle[aria-expanded=true] .epg-chevron {transform:none;}
.epigraph-page .epg-rune-toggle[aria-expanded=true] .epg-chevron::after {transform:translateY(5px) rotate(225deg);}
/* Native details arrows: geometric chevron avoids low optical positioning of the text glyph. */
.epigraph-page .epg-detail summary::after {
  content:"";
  top:50%;
  right:.85rem;
  width:9px;
  height:9px;
  border-right:2px solid var(--epg-gold);
  border-bottom:2px solid var(--epg-gold);
  transform:translateY(-65%) rotate(45deg);
}
.epigraph-page .epg-detail[open]>summary::after {
  content:"";
  transform:translateY(-5%) rotate(225deg);
}
/* Manufacturing stat cards: centred labels, images, numbers and descriptions. */
.epigraph-page .epg-metric {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.epigraph-page .epg-metric-amount {justify-content:center;width:100%;}
.epigraph-page .epg-metric-label,
.epigraph-page .epg-metric>span:last-child {text-align:center;}
/* Tips: no accordions, no accordion borders or chevrons. */
.epigraph-page .epg-tip {background:#20201e;border:0;padding:.75rem .8rem;}
.epigraph-page .epg-tip-head {display:flex;align-items:flex-start;}
.epigraph-page .epg-tip-num {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 2rem;
  height:2rem;
  margin-right:.7rem;
  border-radius:50%;
  background:rgba(214,170,79,.12);
  color:var(--epg-gold);
  font-size:.875rem;
  font-weight:700;
  font-variant-numeric:tabular-nums;
}
.epigraph-page .epg-tip-summary {padding:0;}
.epigraph-page .epg-tip-body {padding:.6rem 0 0;color:var(--epg-muted);}
.epigraph-page .epg-tip-body>p {margin:0;}
/* Keep both TIP 3 figures visible; distinguish graphs with gently raised tonal backgrounds. */
.epigraph-page .epg-visual {
  margin-top:.8rem;
  border-top:0;
  padding:.8rem .55rem;
  background:#292722;
  border-radius:.7rem;
}
.epigraph-page .epg-static-chart {
  margin-top:.8rem;
  padding:.8rem .55rem .55rem;
  background:#343129;
  border-radius:.6rem;
}
.epigraph-page .epg-static-chart svg {overflow:hidden;}
@media (max-width:360px) {
  .epigraph-page .epg-rune-toggle .epg-chevron {top:calc(.55rem + 1.5rem);}
  .epigraph-page .epg-tip {padding:.7rem .6rem;}
  .epigraph-page .epg-visual {padding:.7rem .4rem;}
}
@media (prefers-reduced-motion: reduce) {
  .epigraph-page .epg-chevron::after {transition:none;}
}

/* Static HTML holds one distinct icon for each class: show the selected image only. */
.epigraph-page .epg-icon-tile img[hidden] { display:none!important; }
