/* Original stylesheet sources (cascade order):
/static/site-shell.css?v=20260930ux
/static/mobile-polish.css?v=20261020a
/static/ui-polish.css?v=20260930ux
/static/visual-cleanup.css?v=20261023visual1
/static/guides/vest-comparison.css
*/
.bm-mobile-menu { display:none; }
@media(max-width:520px) {
  .bm-site-header__inner { position:relative; }
  .bm-mobile-menu { display:block; position:absolute; top:8px; right:14px; z-index:12; }
  .bm-mobile-menu summary { display:flex; align-items:center; gap:8px; min-height:44px; box-sizing:border-box; padding:0 10px; border:1px solid #3b4b42; border-radius:6px; background:#121a16; color:#d3dfd9; cursor:pointer; font-size:12px; list-style:none; }
  .bm-mobile-menu summary::-webkit-details-marker { display:none; }
  .bm-mobile-menu nav { position:absolute; top:44px; right:0; width:190px; padding:6px; border:1px solid #3b4b42; border-radius:8px; background:#121a16; box-shadow:0 12px 30px #0008; }
  .bm-mobile-menu nav a { display:flex; align-items:center; min-height:44px; padding:0 12px; color:#d3dfd9; text-decoration:none; font-size:14px; border-radius:4px; }
  .bm-mobile-menu nav a[aria-current="page"] { background:#1c392a; color:#77e0b2; }}
:root {
  --bm-shell-bg: #0b0e0d;
  --bm-shell-line: #29312e;
  --bm-shell-text: #f0f3f1;
  --bm-shell-muted: #9ca8a3;
  --bm-shell-accent: #4ed58a;
  --bm-header-height: 65px;
}

.bm-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.bm-site-header {
  box-sizing: border-box;
  position: sticky;
  z-index: 80;
  top: 0;
  width: 100%;
  min-width: 0;
  height: 65px;
  min-height: 65px;
  border-bottom: 1px solid var(--bm-shell-line);
  background: rgba(11, 14, 13, .97);
  backdrop-filter: blur(12px);
  font-family: Pretendard, "Pretendard Variable", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: 0;
}

body.mode-zone > .bm-site-header {
  grid-area: header;
}

/* Tool workspaces have legacy direct-child header rules. Keep the shared
   shell authoritative without coupling it to each tool stylesheet. */
.app > .bm-site-header {
  min-height: 0;
  display: block;
  padding: 0;
  gap: 0;
}

.app > .bm-site-header .bm-site-header__inner {
  min-height: 64px;
}

.app > .bm-site-header .bm-site-nav {
  width: auto;
  overflow: visible;
  gap: 24px;
  color: var(--bm-shell-muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}

.app > .bm-site-header .bm-site-nav a {
  min-height: 44px;
  padding: 0;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: 1;
}

.bm-site-header__inner {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  height: 64px;
  min-height: 64px;
  margin: 0;
  padding-inline: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.bm-site-header__identity {
  flex: 0 0 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 14px;
}

.bm-site-brand {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--bm-shell-text);
  font-size: 17px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.bm-site-brand:hover,
.bm-site-brand:focus-visible {
  color: var(--bm-shell-text);
  text-decoration: none;
}

.bm-site-brand__mark {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  border: 2px solid var(--bm-shell-accent);
  border-radius: 50%;
  box-shadow: inset 0 0 0 5px var(--bm-shell-bg);
  background: var(--bm-shell-accent);
}

.bm-header-divider {
  width: 1px;
  height: 22px;
  flex: 0 0 auto;
  background: var(--bm-shell-line);
}

.bm-header-context {
  overflow: hidden;
  margin: 0;
  color: var(--bm-shell-text);
  font-size: 14px;
  font-weight: 760;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bm-site-nav {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 24px;
  color: var(--bm-shell-muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}

.bm-site-nav a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  border-bottom: 2px solid transparent;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.bm-site-nav a:hover,
.bm-site-nav a:focus-visible {
  color: var(--bm-shell-text);
  text-decoration: none;
}

.bm-site-nav a[aria-current="page"] {
  border-bottom-color: var(--bm-shell-accent);
  color: var(--bm-shell-text);
}

.bm-site-footer {
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  border-top: 1px solid var(--bm-shell-line);
  background: #090c0b;
  color: #a8b2ae;
  font-family: Pretendard, "Pretendard Variable", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 13px;
  letter-spacing: 0;
}

.bm-site-footer__inner {
  box-sizing: border-box;
  width: min(1280px, calc(100% - 40px));
  margin: 0 auto;
  padding: 42px 0 46px;
  display: grid;
  grid-template-columns: minmax(260px, 1.2fr) minmax(480px, 1.8fr);
  gap: 64px;
}

.bm-site-footer__about p {
  max-width: 560px;
  margin: 10px 0 0;
  color: #a8b2ae;
  font-size: 13px;
  line-height: 1.7;
}

.bm-site-footer__brand {
  color: var(--bm-shell-text);
  font-size: 17px;
  font-weight: 850;
  text-decoration: none;
}

.bm-site-footer__nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}

.bm-site-footer__group {
  min-width: 0;
}

.bm-site-footer__group h2 {
  margin: 0 0 13px;
  color: var(--bm-shell-text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
}

.bm-site-footer__group a {
  min-height: 32px;
  display: flex;
  align-items: center;
  width: fit-content;
  color: #a8b2ae;
  font-size: 13px;
  line-height: 1.4;
  text-decoration: none;
}

.bm-site-footer__group a:hover,
.bm-site-footer__group a:focus-visible,
.bm-site-footer__brand:hover,
.bm-site-footer__brand:focus-visible {
  color: var(--bm-shell-accent);
  text-decoration: none;
}

@media (max-width: 820px) {
  :root {
    --bm-header-height: 61px;
  }

  .bm-site-header {
    height: 61px;
    min-height: 61px;
  }

  .bm-site-header__inner {
    width: 100%;
    height: 60px;
    min-height: 60px;
    padding: 0 14px;
    gap: 18px;
  }

  .app > .bm-site-header .bm-site-header__inner {
    width: 100%;
    height: 60px;
    min-height: 60px;
    padding: 0 14px;
  }

  .app > .bm-site-header .bm-site-nav {
    overflow-x: auto;
  }

  .bm-header-divider,
  .bm-header-context {
    display: none;
  }

  .bm-site-nav {
    overflow-x: auto;
    justify-content: flex-start;
    gap: 18px;
    overscroll-behavior-inline: contain;
    scroll-padding-inline: 14px;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
    scrollbar-color: rgba(78, 213, 138, .42) transparent;
  }

  .bm-site-nav::-webkit-scrollbar {
    height: 3px;
  }

  .bm-site-nav::-webkit-scrollbar-track {
    background: transparent;
  }

  .bm-site-nav::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(78, 213, 138, .42);
  }

  .bm-site-nav a {
    scroll-snap-align: start;
  }

  .bm-site-nav::after {
    content: "";
    flex: 0 0 calc(50% - 20px);
  }

  .bm-site-footer__inner {
    grid-template-columns: 1fr;
    gap: 30px;
  }}

@media (max-width: 520px) {
  :root {
    --bm-header-height: 90px;
  }

  .bm-site-header {
    height: auto;
    min-height: 89px;
  }

  /* Legacy tool styles still target the bare header element on small screens.
     Keep every page on the same shared shell dimensions. */
  body.mode-drop:not(.has-analysis-image) .app > .bm-site-header,
  body.mode-mortar:not(.has-analysis-image) .app > .bm-site-header {
    height: auto !important;
    min-height: 89px !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  .bm-site-header__inner {
    height: auto;
    display: block;
    padding: 8px 14px 0;
  }

  .app > .bm-site-header .bm-site-header__inner {
    height: auto;
    display: block;
    padding: 8px 14px 0;
  }

  .app > .bm-site-header .bm-site-nav {
    gap: 18px;
    padding: 0;
  }

  .app > .bm-site-header .bm-site-nav a {
    min-height: 44px;
  }

  .bm-site-brand {
    min-height: 44px;
    font-size: 16px;
  }

  .bm-site-nav {
    margin-top: 1px;
  }

  .bm-site-nav a {
    min-height: 44px;
  }

  .bm-site-footer__inner {
    width: 100%;
    padding: 30px 18px 36px;
  }

  .bm-site-footer__nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 18px;
  }}


        :root { color-scheme: dark; --bg:#0c1111; --panel:#121a18; --text:#e7f5ef; --muted:#a8b9b2; --line:#24302c; --accent:#4df59a; }
        * { box-sizing:border-box; }
        body { font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; margin:0; line-height:1.7; background:var(--bg); color:var(--text); }
        body > main, body > footer { width:min(880px,calc(100% - 36px)); margin-left:auto; margin-right:auto; }
        body > main { padding-top:44px; }
        a { color:var(--accent); text-decoration:none; }
        a:hover { text-decoration:underline; }
        h1 { font-size:38px; line-height:1.16; margin:0 0 16px; word-break:keep-all; overflow-wrap:break-word; }
        h2 { font-size:20px; margin-top:30px; }
        #editorial, #production-review, .research-report { scroll-margin-top:calc(var(--bm-header-height, 90px) + 16px); }
        p, li { color:var(--text); overflow-wrap:anywhere; }
        .muted { color:var(--muted); }
        .box { border:1px solid var(--line); background:var(--panel); padding:16px; border-radius:8px; overflow-wrap:anywhere; }
        .guide-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:20px 0 22px; }
        .guide-tab { display:inline-flex; align-items:center; justify-content:center; min-height:36px; padding:7px 11px; border:1px solid var(--line); border-radius:8px; background:#101918; color:var(--text); font-weight:800; line-height:1.2; }
        .guide-tab:hover { border-color:rgba(77,245,154,.48); color:var(--accent); text-decoration:none; }
        .guide-section-head { margin-top:30px; }
        .guide-section-head h2 { margin-bottom:6px; }
        .guide-section-head p { margin-top:0; }
        .guide-proof { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr); gap:0; margin:24px 0 32px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
        .guide-proof-copy { display:flex; flex-direction:column; justify-content:center; padding:24px 26px 24px 0; }
        .guide-proof-label { color:var(--accent); font-size:11px; font-weight:900; }
        .guide-proof h2 { margin:7px 0 8px; font-size:22px; }
        .guide-proof p { margin:0; color:var(--muted); font-size:14px; }
        .guide-proof-link { display:inline-flex; align-self:flex-start; align-items:center; min-height:38px; margin-top:14px; color:var(--text); font-weight:850; }
        .guide-proof-link::after { content:"→"; margin-left:8px; color:var(--accent); }
        .guide-proof-image { display:block; width:100%; height:100%; min-height:190px; object-fit:cover; border-left:1px solid var(--line); }
        .guide-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin-top:18px; border-bottom:1px solid var(--line); }
        .guide-grid.compact { gap:0 20px; }
        .guide-category-details { border:1px solid var(--line); border-radius:8px; background:rgba(16,25,24,.72); margin-top:12px; overflow:hidden; scroll-margin-top:calc(var(--bm-header-height, 90px) + 16px); }
        .guide-category-details + .guide-category-details { margin-top:10px; }
        .guide-category-details > summary { display:block; min-height:48px; padding:12px 14px; cursor:pointer; list-style:none; }
        .guide-category-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 12px; align-items:center; margin:0; font-size:16px; }
        .guide-category-details > summary::-webkit-details-marker { display:none; }
        .guide-category-title { color:var(--accent); font-weight:900; line-height:1.35; }
        .guide-category-desc { color:var(--muted); font-size:13px; font-weight:400; line-height:1.45; }
        .guide-category-icon { grid-row:1 / span 2; grid-column:2; width:22px; height:22px; display:grid; place-items:center; border:1px solid rgba(77,245,154,.34); border-radius:999px; color:var(--accent); font-weight:900; }
        .guide-category-icon::before { content:"+"; }
        .guide-category-details[open] .guide-category-icon::before { content:"-"; }
        .guide-category-body { padding:0 12px 12px; }
        .guide-category-body .guide-grid { margin-top:0; }
        .guide-card { display:block; border:0; border-top:1px solid var(--line); background:transparent; padding:18px 2px 20px; border-radius:0; min-height:142px; overflow:hidden; }
        .guide-card.no-image { padding:18px 2px 20px; }
        .guide-card:hover { border-color:rgba(77,245,154,.58); text-decoration:none; }
        .guide-card-body { display:flex; flex-direction:column; min-width:0; }
        .guide-label { display:inline-flex; align-self:flex-start; margin-bottom:9px; padding:0; border:0; border-radius:0; color:var(--accent); font-size:11px; font-weight:850; line-height:1.3; }
        .guide-card h3 { display:block; margin:0 0 8px; color:var(--text); font-size:16px; font-weight:700; line-height:1.35; }
        .guide-breadcrumb { display:flex; flex-wrap:wrap; gap:5px 8px; margin:0 0 12px; color:var(--muted); font-size:13px; line-height:1.55; }
        .guide-breadcrumb a { color:var(--muted); }
        .guide-breadcrumb [aria-current="page"] { color:var(--text); overflow-wrap:anywhere; }
        .guide-topic-link { display:inline-block; margin-right:10px; color:var(--accent); }
        .guide-card .guide-desc { display:block; color:var(--muted); font-size:14px; line-height:1.55; }
        .guide-meta { color:var(--muted); font-size:14px; }
        .guide-meta a { text-decoration:underline; text-underline-offset:.2em; }
        .sample-note { margin-top:14px; }
        .sample-note p { margin:6px 0; }
        .guide-figure { margin:18px 0 26px; }
        .guide-figure img { display:block; width:100%; height:auto; border:1px solid var(--line); border-radius:8px; background:#071010; }
        .guide-figure figcaption { margin-top:8px; color:var(--muted); font-size:13px; line-height:1.5; }
        .guide-review-notes { margin-top:30px; }
        .guide-review-notes h2 { margin-top:0; }
        .guide-review-notes ul { display:grid; gap:10px; padding-left:20px; }
        .guide-review-notes li strong { display:block; color:var(--accent); }
        .guide-review-notes li span { display:block; color:var(--text); }
        .guide-sample-details { margin-top:30px; }
        .guide-sample-details > summary { display:flex; align-items:center; min-height:38px; cursor:pointer; color:var(--accent); font-size:20px; font-weight:800; }
        .guide-sample-details > summary:hover { text-decoration:underline; }
        .guide-lead { margin:18px 0 20px; }
        .guide-lead p:last-child { margin-bottom:0; }
        .guide-accordion { border:1px solid var(--line); border-radius:8px; background:var(--panel); margin-top:12px; overflow:hidden; }
        .guide-accordion summary { display:flex; align-items:center; justify-content:space-between; gap:14px; cursor:pointer; padding:14px 16px; }
        .guide-accordion summary h2 { margin:0; font-size:18px; line-height:1.35; }
        .guide-accordion summary span::before { content:"+"; color:var(--accent); font-weight:900; }
        .guide-accordion[open] summary span::before { content:"-"; }
        .guide-accordion-body { padding:0 16px 16px; }
        .guide-accordion-body p:first-child { margin-top:0; }
        .guide-table-wrap { width:100%; overflow-x:auto; border:1px solid var(--line); border-radius:8px; margin:12px 0; }
        .guide-data-table { width:100%; min-width:760px; border-collapse:collapse; background:#0f1716; }
        .guide-data-table th, .guide-data-table td { border-bottom:1px solid var(--line); padding:10px 12px; text-align:left; vertical-align:top; font-size:14px; }
        .guide-data-table th { color:var(--accent); background:#121e1b; white-space:nowrap; }
        .guide-data-table tbody tr:last-child td { border-bottom:0; }
        .case-report-intro { margin:22px 0; padding:18px; border-left:3px solid var(--accent); background:#101918; }
        .case-report-intro h2 { margin:0 0 8px; }
        .case-report-intro p { margin:8px 0; }
        .case-report-intro ul { margin-bottom:0; }
        .case-jump-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:22px 0 12px; }
        .case-jump-links a { min-height:44px; padding:8px 10px; border:1px solid var(--line); border-radius:6px; background:#101918; color:var(--text); font-weight:800; text-align:center; }
        .case-jump-links a:hover { border-color:rgba(77,245,154,.48); color:var(--accent); text-decoration:none; }
        .verified-case { scroll-margin-top:18px; margin-top:42px; padding-top:34px; border-top:1px solid var(--line); }
        .case-heading { display:block; margin:0 0 18px; padding:0; border:0; }
        .case-heading h2 { margin:7px 0 8px; font-size:24px; }
        .case-heading p { margin:0; color:var(--muted); }
        .case-kicker { color:var(--accent); font-size:13px; font-weight:900; }
        .case-mortar .case-kicker { color:#dec44f; }
        .case-zone .case-kicker { color:#58add8; }
        .case-meta { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 18px; margin:0 0 16px; padding:12px; border:1px solid var(--line); border-radius:6px; background:#0d1514; }
        .case-meta-row { display:grid; grid-template-columns:minmax(108px,.65fr) minmax(0,1.35fr); gap:8px; padding:6px 0; border-bottom:1px solid rgba(143,165,159,.12); }
        .case-meta-row dt { color:var(--muted); font-size:12px; }
        .case-meta-row dd { margin:0; color:var(--text); font-size:12px; overflow-wrap:anywhere; }
        .case-media-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
        .case-media { position:relative; margin:0; min-width:0; }
        .case-media img { display:block; width:100%; height:auto; max-height:520px; object-fit:contain; object-position:top center; border:1px solid var(--line); border-radius:6px; background:#071010; }
        .case-media-label { position:absolute; z-index:1; top:9px; left:9px; padding:3px 7px; border:1px solid rgba(255,255,255,.2); border-radius:4px; background:rgba(7,12,11,.9); color:#fff; font-size:11px; font-weight:900; }
        .case-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:14px 0 0; }
        .case-metric { min-width:0; padding:11px 12px; border:1px solid var(--line); border-radius:6px; background:#101918; }
        .case-metric dt { color:var(--muted); font-size:12px; line-height:1.35; }
        .case-metric dd { margin:4px 0 0; color:var(--text); font-size:17px; font-weight:900; line-height:1.25; overflow-wrap:anywhere; }
        .case-notes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 24px; margin-top:22px; }
        .case-notes section { min-width:0; }
        .case-notes h3 { margin:0 0 8px; font-size:17px; }
        .case-notes p, .case-notes ul, .case-notes ol { margin-top:0; }
        .case-limit { grid-column:1 / -1; padding-top:16px; border-top:1px solid var(--line); }
        .case-tool-link { display:inline-flex; align-items:center; justify-content:center; min-height:42px; margin-top:4px; padding:8px 13px; border:1px solid rgba(77,245,154,.45); border-radius:6px; color:var(--accent); font-weight:900; }
        .case-tool-link:hover { background:#101918; text-decoration:none; }
        .case-report-footer { margin-top:42px; padding-top:24px; border-top:1px solid var(--line); }

        .updates-intro { margin:18px 0 30px; padding:16px 0 18px 18px; border-left:2px solid var(--accent); border-bottom:1px solid var(--line); }
        .updates-intro p { margin:6px 0; }
        .updates-summary { color:var(--muted); font-size:14px; }
        .updates-timeline { display:grid; margin-top:26px; }
        .update-entry { position:relative; display:grid; grid-template-columns:140px minmax(0,1fr); gap:34px; min-width:0; }
        .update-entry::before { content:""; position:absolute; top:11px; bottom:-11px; left:156px; width:1px; background:var(--line); }
        .update-entry:last-child::before { bottom:calc(100% - 18px); }
        .update-entry::after { content:""; position:absolute; top:7px; left:151px; width:9px; height:9px; border:2px solid var(--accent); border-radius:50%; background:var(--bg); box-shadow:0 0 0 4px var(--bg); }
        .update-rail { display:flex; flex-direction:column; align-items:flex-end; gap:5px; min-width:0; padding-top:1px; text-align:right; }
        .update-category { color:var(--accent); font-size:11px; font-weight:900; }
        .update-period { color:var(--muted); font-size:12px; font-variant-numeric:tabular-nums; line-height:1.45; }
        .update-content { min-width:0; padding:0 0 36px; border-bottom:1px solid var(--line); }
        .update-entry:last-child .update-content { border-bottom:0; }
        .update-heading { display:block; margin:0; padding:0 0 14px; }
        .update-entry h2 { margin:0; font-size:22px; line-height:1.35; }
        .update-section { min-width:0; }
        .update-section h3 { margin:0 0 8px; color:var(--muted); font-size:13px; line-height:1.35; }
        .update-section p, .update-section ul { margin:0; }
        .update-section ul { display:grid; gap:7px; padding-left:20px; }
        .update-changes { padding:14px 0 18px; border-top:1px solid var(--line); }
        .update-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:17px 0; border-top:1px solid var(--line); }
        .update-more { border-top:1px solid var(--line); }
        .update-more > summary { display:flex; align-items:center; justify-content:space-between; min-height:44px; color:var(--muted); font-size:13px; font-weight:800; cursor:pointer; list-style:none; }
        .update-more > summary::-webkit-details-marker { display:none; }
        .update-more > summary::after { content:"+"; color:var(--accent); font-size:18px; font-weight:500; }
        .update-more[open] > summary::after { content:"−"; }
        .update-more__body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:2px 0 16px; }
        .update-links-list { display:flex; flex-wrap:wrap; gap:8px 14px; }
        .update-links-list a { display:inline-flex; align-items:center; min-height:32px; font-weight:800; }
        .updates-footer-note { margin-top:24px; }
        .research-intro { margin:18px 0 20px; padding:18px 20px; border-left:3px solid var(--accent); background:#101918; }
        .research-intro p { margin:5px 0; }
        .research-intro-note { color:var(--muted); font-size:14px; }
        .research-jump-links { display:flex; flex-wrap:wrap; gap:7px 16px; margin:0 0 30px; }
        .research-jump-links a { display:inline-flex; align-items:center; min-height:38px; font-weight:800; }
        .research-principles { margin:0 0 34px; padding:20px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
        .research-principles h2 { margin-top:0; }
        .research-principles dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0; }
        .research-principles dl div { min-width:0; }
        .research-principles dt { margin-bottom:5px; font-weight:900; }
        .research-principles dd { margin:0; color:var(--muted); font-size:14px; }
        .research-report { padding:34px 0; border-top:1px solid var(--line); }
        .research-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:14px; }
        .research-heading h2 { margin:3px 0 5px; font-size:24px; }
        .research-heading time, .research-category { color:var(--muted); font-size:13px; }
        .research-category { margin:0; color:var(--accent); font-weight:900; }
        .research-status { flex:0 0 auto; padding:5px 8px; border:1px solid rgba(77,245,154,.42); border-radius:4px; color:var(--accent); font-size:12px; font-weight:900; }
        .research-lead { max-width:780px; font-size:16px; }
        .research-table-wrap { margin:20px 0; overflow-x:auto; border:1px solid var(--line); border-radius:6px; }
        .research-table { width:100%; min-width:620px; border-collapse:collapse; }
        .research-table th, .research-table td { padding:11px 13px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
        .research-table thead th { color:var(--muted); background:#0d1514; font-size:12px; }
        .research-table tbody th { width:23%; }
        .research-table tbody td:nth-child(2) { width:20%; color:var(--text); font-weight:900; }
        .research-table tr:last-child th, .research-table tr:last-child td { border-bottom:0; }
        .research-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 28px; }
        .research-detail-grid h3 { margin:0 0 7px; font-size:16px; }
        .research-detail-grid p { margin:0; color:var(--muted); font-size:14px; }
        .research-limit { grid-column:1 / -1; padding-top:16px; border-top:1px solid var(--line); }
        .research-links { display:flex; flex-wrap:wrap; gap:7px 16px; margin-top:20px; }
        .research-links a { display:inline-flex; align-items:center; min-height:36px; font-weight:800; }
        .research-footer-note { margin-top:20px; }
        .contact-links { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:10px; }
        .footer-contact { margin-top:12px; }
        .contact-page-links { margin-top:12px; }
        .contact-link { display:inline-flex; align-items:center; min-height:38px; gap:7px; border:1px solid var(--line); border-radius:8px; background:#101918; padding:8px 10px; color:var(--text); font-size:13px; font-weight:800; text-decoration:none; line-height:1; }
        .contact-link:hover { border-color:rgba(77,245,154,.48); color:var(--accent); text-decoration:none; }
        .contact-link svg { width:16px; height:16px; flex:0 0 auto; }
        .contact-link.discord svg { color:#8ea1ff; }
        .contact-link.kakao svg { color:#fee500; }
        footer { border-top:1px solid var(--line); margin-top:36px; padding-top:18px; color:var(--muted); font-size:14px; }
        footer a { display:inline-flex; align-items:center; justify-content:center; min-height:34px; min-width:34px; }
        @media (max-width:640px) {
          body { line-height:1.65; }
          body > main, body > footer { width:min(100% - 28px,880px); }
          body > main { padding-top:24px; }
          h1 { font-size:26px; }
          h2 { font-size:18px; }
          .guide-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
          .guide-proof { grid-template-columns:1fr; }
          .guide-proof-copy { padding:20px 0; }
          .guide-proof-image { min-height:0; aspect-ratio:16/9; border-left:0; border-top:1px solid var(--line); }
          .guide-grid { grid-template-columns:1fr; }
          .guide-card { grid-template-columns:1fr; }
          .guide-thumb { height:auto; min-height:0; }
          .guide-category-details > summary { min-height:52px; padding:12px; }
          .guide-accordion summary h2 { font-size:16px; }
          .case-jump-links, .case-meta, .case-media-grid, .case-notes { grid-template-columns:1fr; }
          .case-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
          .case-limit { grid-column:auto; }
          .case-heading h2 { font-size:21px; }
          .updates-intro { margin-bottom:24px; padding:12px 0 14px 14px; }
          .update-entry { grid-template-columns:1fr; gap:9px; }
          .update-entry::before, .update-entry::after { display:none; }
          .update-rail { flex-direction:row; align-items:center; justify-content:space-between; gap:12px; padding-top:0; text-align:left; }
          .update-content { padding-bottom:28px; }
          .update-heading { padding:0 0 12px; }
          .update-entry h2 { font-size:19px; }
          .update-detail-grid, .update-more__body { grid-template-columns:1fr; gap:16px; }
          .update-more > summary { min-height:48px; }
          .research-principles dl, .research-detail-grid { grid-template-columns:1fr; }
          .research-limit { grid-column:auto; }
          .research-heading { display:block; }
          .research-status { display:inline-block; margin-top:10px; }
          ul, ol { padding-left:22px; }}
      
/* Presentation only: shared navigation, editorial reading and mobile previews. */
.tool-grid .tool-media:has(img.image-load-failed)::after {
  content: "예시 이미지를 불러오지 못했습니다. 도구는 열 수 있어요.";
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  padding: 16px;
  background: #101914;
  color: #bdcfc3;
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  pointer-events: none;
}
@media (max-width: 820px) {
  .bm-site-header .bm-site-nav::after { content: none; }
  .bm-site-header .bm-site-nav {
    mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
  }
  .bm-site-header .bm-site-nav[data-overflow-left="false"][data-overflow-right="false"] {
    mask-image: none; -webkit-mask-image: none;
  }
  .bm-site-header .bm-site-nav[data-overflow-left="true"][data-overflow-right="false"] {
    mask-image: linear-gradient(to right, transparent, #000 24px);
    -webkit-mask-image: linear-gradient(to right, transparent, #000 24px);
  }
  .bm-site-header .bm-site-nav[data-overflow-left="true"][data-overflow-right="true"] {
    mask-image: linear-gradient(to right, transparent, #000 24px, #000 calc(100% - 28px), transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, #000 24px, #000 calc(100% - 28px), transparent);
  }}
@media (max-width: 680px) {
  .tool-grid > .tool-card .tool-media {
    height: clamp(112px, 36vw, 168px);
    min-height: 0;
    aspect-ratio: auto;
  }
  .tool-grid > .tool-card .tool-media img { object-fit: contain; }
  main.bm-guide-page p:not(.guide-meta):not(.wdg-edition):not(.vest-eyebrow) {
    font-size: 16px;
    line-height: 1.8;
  }
  main.bm-guide-page :is(.guide-data-table, .wdg-table, .vest-table) :is(th, td),
  main.bm-guide-page figcaption,
  main.bm-guide-page .guide-toc nav a {
    font-size: 15px;
    line-height: 1.7;
  }
  main.bm-guide-page :is(.wdg-confidence, .wdg-metric-definitions, .vest-source-links) {
    font-size: 16px;
    line-height: 1.8;
  }}

/* Presentation only. Scoped to established components; no canvas sizing. */
.guide-tool-cta{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 16px;border:1px solid #3b5e4a;border-radius:6px;background:#14271d;color:#a1edc8;text-decoration:none!important;font-size:14px;font-weight:600}
.guide-tool-cta:hover{background:#203d2c;border-color:#79dca8}
.guide-toc{margin:22px 0;padding:14px 18px;border:1px solid #33473c;border-radius:8px;background:#111c16}
.guide-toc summary{cursor:pointer;color:#d9e8df;font-size:14px;font-weight:600;min-height:30px}
.guide-toc nav{display:grid;gap:2px;margin-top:10px}.guide-toc nav a{display:block;padding:8px 0;font-size:14px;line-height:1.5;color:#b1d4bf;text-decoration:none}.guide-toc nav a:hover{text-decoration:underline}
@media(max-width:600px){.guide-toc nav a{min-height:44px;box-sizing:border-box}.guide-tool-cta{justify-content:center}}
.tool-card:focus-visible,.data-tool-card:focus-visible,.guide-card:focus-visible{outline:2px solid #54dbab;outline-offset:4px}
.tool-card:is(:hover,:focus-visible) .tool-action{color:#fff}
.tool-card .tool-copy{min-height:112px}
@media(prefers-reduced-motion:reduce){.tool-card .tool-media img{transition:none}.tool-card:hover .tool-media img{transform:none}}
.bm-quiet-action,.bm-distance-preset{font:inherit;color:inherit;border:1px solid #466257;border-radius:6px;background:transparent;padding:8px 12px;cursor:pointer;min-height:38px}
.bm-quiet-action:hover,.bm-distance-preset:hover{background:#183128;border-color:#71b49a}
.bm-quiet-action:focus-visible,.bm-distance-preset:focus-visible{outline:2px solid #54dbab;outline-offset:3px}
.bm-distance-preset[aria-pressed=true]{background:#1b4938;border-color:#54dbab;color:#dcfff0}
.bm-distance-presets{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.bm-quick-exit{margin-right:auto}
/* Rankings: preserve all metrics, expose secondary ones on demand. */
body:has(#rankings) .metric-strip{border:0;border-block:1px solid var(--line);background:none;margin-bottom:0}
body:has(#rankings) .metric{padding:12px 16px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
body:has(#rankings) .metric strong{font-size:20px;line-height:1.3;margin:0}
body:has(#rankings) .metric small{font-size:11px}
body:has(#rankings) #rankings{margin-top:20px}
body:has(#rankings) #rankings .panel__header{min-height:72px;padding-block:16px}
#rankings .filters{align-items:end;flex-wrap:wrap}
#rankings .table-wrap{overflow:auto;max-height:72vh;scrollbar-gutter:stable}
#rankings thead th{position:sticky;top:0;z-index:2}
#rankings.bm-ui-ready:not(.bm-details-on) :is(th,td,col):is(:nth-child(4),:nth-child(5),:nth-child(7),:nth-child(8)){display:none}
#rankings.bm-ui-ready:not(.bm-details-on) .ranking-table{min-width:700px;table-layout:auto}
#rankings.bm-ui-ready:not(.bm-details-on) .ranking-col{width:auto}
.bm-distance-control label{display:flex;flex-direction:column;gap:10px}
.bm-explainer-head .bm-quick-exit{margin-left:auto;margin-right:10px;font-size:13px;white-space:nowrap}
#rankings .ranking-table td{font-variant-numeric:tabular-nums}
@media(max-width:760px){#rankingDetailToggle{display:none}body:has(#rankings) .metric{padding:10px 6px}body:has(#rankings) .metric small{display:none}}
/* Keep complete input controls within ordinary laptop-height screens. */
@media(min-width:1000px) and (max-height:850px){
 body:is(.mode-drop,.mode-mortar,.mode-zone):not(.has-analysis-image):not([data-input-mode=manual]){
  & .dropzone{padding:20px 26px}
  & .empty-onboarding{gap:8px}
  & .empty-title{font-size:32px}
  & .empty-flow{margin-top:14px;gap:20px}
  & .empty-actions{margin-top:12px;gap:8px}
  & .drop-step-heading{min-height:98px;padding-bottom:10px}
  & .drop-monitor-screen{max-height:142px}
  & .drop-step-heading h3{font-size:18px}
  & .drop-save-note{margin:0}
 }
 .bm-explainer .bm-explainer-body{padding-top:20px;padding-bottom:20px}
 .bm-explainer .bm-brief-title{margin-bottom:18px}
}
/* Comparison: give controls priority over framing and repeated metadata. */
body:has(#simulatorTitle) .page-intro{margin-bottom:22px;padding-top:24px}
body:has(#simulatorTitle) .page-intro .lead{max-width:760px}
body:has(#simulatorTitle) .simulator-head{padding-block:14px}
body:has(#simulatorTitle) .global-controls{padding-block:18px}
body:has(#simulatorTitle) .data-source-strip{padding-block:10px}
body:has(#simulatorTitle) .intro-data-note{color:#bdc9c3}
/* Guides: browse first, proof after the shortlist. */
body:has(.guide-featured) .guide-proof{margin-top:32px}
body:has(.guide-featured) .guide-proof-image{max-height:190px;object-fit:cover}
body:has(.guide-featured) .guide-section-head p{max-width:660px}
@media(prefers-reduced-motion:reduce){.bm-distance-preset,.bm-quiet-action{transition:none}}

/* Presentation only. Keep tool inputs, analysis canvas geometry and data charts owned by their existing styles. */
:root {
  --bm-card-surface: #101714;
  --bm-card-border: #2c3932;
  --bm-rule: #29372f;
}
body a:is(.tool-card, .data-tool-card, .latest-guide-card), body a.stats-preview.tool-card {
  border-color: var(--bm-card-border);
  background-color: var(--bm-card-surface);
  border-radius: 8px;
  box-shadow: none;
}
body a:is(.tool-card, .data-tool-card, .latest-guide-card):is(:hover, :focus-visible),
body a.stats-preview.tool-card:is(:hover, :focus-visible) {
  border-color: #60957a;
  background-color: #132019;
}
body a:focus-visible, body button:focus-visible, body summary:focus-visible {
  outline: 2px solid #78dcb0;
  outline-offset: 4px;
}
a[target="_blank"] { text-decoration: underline; text-underline-offset: .2em; }
.data-tool-visual { background: transparent !important; }
.data-tool-vs { border: 0 !important; box-shadow: none !important; background: transparent !important; }

/* Explain with headings and paragraphs, not a stack of nested cards. */
.bm-content-pack { gap: 0; }
body .bm-content-pack > :is(section, nav) {
  display: block;
  border: 0;
  border-top: 1px solid var(--bm-rule);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: 26px 0;
  margin: 0;
}
.bm-content-pack .bm-info-cards { display: block; margin-top: 18px; }
.bm-content-pack .bm-info-card {
  border: 0; border-radius: 0; padding: 0; margin: 20px 0 0; background: transparent; box-shadow: none;
}
.bm-content-pack .bm-info-card:first-child { margin-top: 0; }
.bm-content-pack .bm-info-card h3 { margin-bottom: 7px; font-size: 16px; }
.bm-content-pack :is(p, li) { line-height: 1.75; }
.bm-content-pack .bm-methodology p + p { margin-top: 6px; }
.bm-case-date { display: block; margin-bottom: 7px; color: #a5b8ad; font-size: 12px; }
.bm-content-pack .bm-tool-case-metrics .case-metric,
.case-metrics .case-metric {
  border: 0; border-radius: 0; border-bottom: 1px solid var(--bm-rule);
  background: transparent; box-shadow: none; padding: 12px 4px;
}
.bm-content-pack .bm-accordion-item {
  border: 0; border-radius: 0; border-bottom: 1px solid var(--bm-rule); background: transparent;
}
.bm-content-pack .bm-accordion-trigger { padding: 14px 0; font-weight: 650; }
.bm-content-pack .bm-accordion-panel { padding: 0 0 18px; }
.bm-content-pack .bm-related-list { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.bm-content-pack a.bm-related-link {
  display: inline-flex; border: 0; border-radius: 0; background: transparent;
  padding: 5px 0; min-height: 34px; text-decoration: underline; text-underline-offset: .2em;
}

/* A guide index, not accordion cards enclosing more cards. */
.guide-category-section {
  scroll-margin-top: calc(var(--bm-header-height, 90px) + 24px);
  margin: 36px 0 0; padding: 24px 0 0; border-top: 1px solid var(--bm-rule);
}
.guide-category-section:first-child { margin-top: 24px; }
.guide-category-section .guide-category-heading { display: block; margin: 0 0 18px; }
.guide-category-section .guide-category-title { display: block; font-size: 22px; color: var(--text, #e7f5ef); }
.guide-category-section .guide-category-desc { display: block; margin-top: 6px; line-height: 1.7; }
.guide-category-section .guide-category-body { padding: 0; }
.guide-category-section .guide-grid { border: 0; margin: 0; gap: 0 28px; }
.guide-category-section a.guide-card {
  border: 0; border-bottom: 1px solid var(--bm-rule); background: transparent; border-radius: 0;
  padding: 20px 0; min-height: 0; box-shadow: none; overflow: visible;
}
.guide-category-section a.guide-card:hover h3 { color: #78dcb0; text-decoration: underline; text-underline-offset: .2em; }
.guide-category-section .guide-card h3 { line-height: 1.55; }
.guide-category-section .guide-card .guide-desc { line-height: 1.7; }
.guide-help-list { list-style: none; padding: 0; margin: 0; }
.guide-help-list li { padding: 15px 0; border-bottom: 1px solid var(--bm-rule); }
.guide-help-list a { display: inline-block; font-size: 15px; font-weight: 650; text-decoration: underline; text-underline-offset: .2em; }
.guide-help-list .guide-desc { display: block; margin-top: 5px; font-size: 13px; color: var(--muted, #a8b9b2); }
.guide-help-list .guide-card-date { margin-top: 5px; }
.guide-proof-link::after { content: none !important; }

/* Keep the help content and links; give the disclosure a restrained custom marker. */
body .home-help { border: 0; border-top: 1px solid var(--bm-rule); border-radius: 0; padding: 18px 0 0; }
.home-help > summary { display: flex; align-items: center; gap: 10px; list-style: none; }
.home-help > summary::-webkit-details-marker { display: none; }
.home-help > summary::before {
  content: ''; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor;
  transform: rotate(-45deg); flex: 0 0 7px; margin-right: 2px;
}
.home-help[open] > summary::before { transform: rotate(45deg); }
body .home-info > :is(section, details) {
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
body .home-reading > section { border-top: 1px solid var(--bm-rule); padding: 20px 0; }
.bm-guide-page :is(.guide-lead, .guide-related, .guide-review-notes),
.bm-guide-page .wdg-confidence {
  border: 0; border-top: 1px solid var(--bm-rule); border-radius: 0; background: transparent; padding: 20px 0; box-shadow: none;
}
.bm-guide-page .wdg-answer { border: 0; border-left: 2px solid #58c99a; border-radius: 0; background: transparent; padding: 4px 0 4px 20px; }
.wd-page .wd-analysis { border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.wd-page .wd-chart-section { border: 0; border-top: 1px solid var(--bm-rule); border-radius: 0; background: transparent; padding-inline: 0; }
.wd-page .wd-body-grid { border-top: 1px solid var(--bm-rule); border-bottom: 1px solid var(--bm-rule); }
.wd-page .bm-wseo { border: 0; border-top: 1px solid var(--bm-rule); border-radius: 0; background: transparent; padding: 24px 0; box-shadow: none; }

/* Step illustrations have a predictable minimum height; no keycap can escape its own screen. */
.drop-guide-step { align-content: start; grid-template-rows: minmax(112px, auto) auto; gap: 14px; }
.drop-step-heading { padding-bottom: 0; min-width: 0; }
.drop-monitor { min-width: 0; }
.drop-monitor-screen { aspect-ratio: 16 / 10; min-height: 172px; box-shadow: none; border-radius: 6px; }
.drop-monitor-screen > img { object-fit: cover; }
.drop-monitor-screen:has(.drop-capture-overlay) > .drop-pin-label { display: none; }
.drop-capture-overlay { gap: 9px; padding: 12px; box-sizing: border-box; font-size: 12px; }
.drop-capture-overlay kbd { min-width: 0; height: 42px; padding: 0 12px; font-size: 18px; border-radius: 5px; }
.drop-site-demo { box-sizing: border-box; width: 100%; height: 100%; min-width: 0; padding: 10px; gap: 8px; overflow: hidden; }
.drop-demo-brand { flex: 0 0 auto; min-width: 0; white-space: nowrap; font-size: 11px; gap: 6px; }
.drop-demo-brand .bm-site-brand__mark { box-sizing: border-box; width: 14px; height: 14px; flex: 0 0 14px; }
.drop-demo-paste { padding: 8px; gap: 8px; box-sizing: border-box; min-width: 0; font-size: 11px; }
.drop-demo-paste > svg { display: none; }
.drop-key-combination { gap: 6px; max-width: 100%; }
.drop-key-combination kbd { min-width: 0; height: 38px; padding: 0 9px; font-size: 16px; border-radius: 5px; }
.drop-key-combination > span { font-size: 13px; }
@media (max-width: 1100px) and (min-width: 801px) {
  .drop-guide-step { grid-template-rows: minmax(148px, auto) auto; }
  .drop-monitor-screen { min-height: 164px; }
  .drop-capture-overlay kbd { font-size: 16px; height: 38px; padding-inline: 9px; }
  .drop-site-demo { padding: 8px; }
  .drop-key-combination kbd { font-size: 14px; height: 34px; padding-inline: 7px; }}
@media (max-width: 800px) {
  .drop-guide-step { grid-template-rows: auto auto; gap: 14px; }
  .drop-monitor-screen { min-height: 0; aspect-ratio: 16 / 9; }
  .drop-site-demo { padding: 16px; gap: 12px; }
  .drop-demo-brand { font-size: 13px; }
  .drop-demo-paste { gap: 12px; }
  .drop-key-combination kbd { font-size: 20px; height: 46px; padding: 0 14px; }
  .bm-content-pack .bm-info-card { margin-top: 20px; }}
@media (max-width: 520px) {
  .guide-category-section { margin-top: 30px; padding-top: 22px; }
  .guide-category-section .guide-category-title { font-size: 21px; }
  .guide-category-section .guide-grid { grid-template-columns: minmax(0, 1fr); }
  .guide-category-section .guide-card h3 { font-size: 17px; }
  .guide-help-list li { padding: 15px 0; }
  .bm-content-pack > :is(section, nav) { padding-block: 24px; }}

.vest-guide{--vest-line:#304b40;--vest-accent:#6be3b5;--vest-warm:#f2bf78;line-height:1.85;max-width:100%}
.vest-guide p{margin:0 0 1.25rem}.vest-guide h2{margin-top:3rem;line-height:1.45}.vest-guide h3{line-height:1.5}
.vest-guide .vest-eyebrow{font-size:.75rem;letter-spacing:.12em;color:var(--vest-accent);margin:0 0 .6rem;font-weight:700}
.vest-lead{font-size:1.12rem;max-width:68ch}.vest-takeaway{border:1px solid var(--vest-line);border-left:3px solid var(--vest-accent);background:#12251c;border-radius:10px;padding:1.4rem;margin:1.8rem 0}
.vest-guide .vest-model-label{margin:1rem 0 0;padding-top:1rem;border-top:1px solid var(--vest-line);font-size:.88rem;color:#bdd2c7}
.vest-rate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1.5rem 0}
.vest-rate-grid>div{display:grid;gap:.15rem;padding:1.2rem;border:1px solid var(--vest-line);border-radius:8px;background:#102019}
.vest-rate-grid strong{font-size:2rem;line-height:1.4;color:var(--vest-accent);font-variant-numeric:tabular-nums}.vest-rate-grid small{color:#adc4b7}.vest-rate-grid>div:last-child strong{color:var(--vest-warm)}
.vest-tracks{display:grid;gap:1rem;margin:1.5rem 0}.vest-track{border:1px solid var(--vest-line);border-radius:10px;padding:1.1rem;background:#101f18;min-width:0}
.vest-track h3{margin:0 0 1rem;font-size:1rem;display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.vest-track h3 span{font-size:.86rem;font-weight:400;color:#bed0c6}
.vest-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem;list-style:none!important;padding:0!important;margin:0!important}
.vest-steps li{display:flex;flex-direction:column;gap:.1rem;padding:.65rem .3rem;border:1px solid #2b5945;border-top:3px solid var(--vest-accent);border-radius:5px;text-align:center;font-variant-numeric:tabular-nums;font-size:.8rem;line-height:1.5;background:#142d21}
.vest-steps strong{font-size:1.05rem}.vest-steps small{font-size:.69rem;color:#bdd0c3}.vest-steps .vest-broken{border-color:#715632;border-top-color:var(--vest-warm);background:#2e281b}
.vest-zone,.vest-method{border:1px solid var(--vest-line);border-radius:8px;margin:1rem 0;background:#102019;overflow:hidden}
.vest-zone summary,.vest-method summary{cursor:pointer;padding:1rem 1.1rem;font-weight:650;line-height:1.5}.vest-zone summary span{font-size:.84rem;color:#b0c6ba;font-weight:400;margin-left:.6rem}
.vest-zone[open]>summary,.vest-method[open]>summary{border-bottom:1px solid var(--vest-line)}
.vest-table-wrap{overflow-x:auto;max-width:100%;padding:0 .8rem .5rem}.vest-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:.88rem;line-height:1.6}
.vest-table caption{text-align:left;color:#b5cdc0;font-size:.81rem;padding:.9rem 0}.vest-table th,.vest-table td{padding:.75rem .6rem;border-bottom:1px solid #293f34;text-align:right;vertical-align:middle;white-space:normal}
.vest-table th:first-child{text-align:left}.vest-table thead th{font-size:.8rem;color:#c5d6cb;font-weight:600}.vest-table tbody th{color:#e0eae3;font-weight:600}.vest-table tbody tr:last-child>*{border-bottom:0}.vest-table tbody tr:hover{background:#182d21}.vest-better{color:var(--vest-accent)}
.vest-table-help{font-size:.88rem;color:#b8cdc0}.vest-decisions{padding-left:1.4rem}.vest-decisions li{padding-left:.2rem;margin:0 0 1rem}.vest-evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.vest-evidence section{border-top:2px solid var(--vest-line);padding-top:.6rem}.vest-evidence h3{font-size:1rem;margin:.3rem 0 .7rem}.vest-evidence p{font-size:.92rem}
.vest-method>p{margin:1rem 1.1rem}.vest-method>.vest-table{width:calc(100% - 2.2rem);margin:0 1.1rem 1rem}.vest-source-links{font-size:.88rem;padding-left:1.3rem}.vest-source-links li{margin-bottom:.65rem}.vest-guide .vest-related{border-top:1px solid var(--vest-line);margin-top:1.5rem;padding-top:1.3rem;font-size:.92rem}
.vest-guide :is(summary,a,[tabindex]):focus-visible{outline:2px solid #87edc7;outline-offset:3px}
@media(max-width:600px){.vest-guide{line-height:1.85}.vest-lead{font-size:1.02rem}.vest-takeaway{padding:1.05rem}.vest-rate-grid{gap:.45rem}.vest-rate-grid>div{padding:.7rem .55rem;font-size:.83rem}.vest-rate-grid strong{font-size:1.7rem}.vest-rate-grid small{font-size:.72rem}.vest-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.vest-track{padding:.9rem}.vest-steps li{padding:.6rem .2rem}.vest-steps strong{font-size:1.05rem}.vest-steps small{font-size:.72rem}.vest-table{font-size:.76rem}.vest-table th,.vest-table td{padding:.65rem .25rem}.vest-table thead th{font-size:.7rem}.vest-table-wrap{padding:0 .4rem .5rem}.vest-zone summary span{display:block;margin:.25rem 0 0}.vest-evidence{grid-template-columns:1fr;gap:.5rem}.vest-method>p{margin:.9rem}.vest-method>.vest-table{width:calc(100% - 1.8rem);margin:0 .9rem .8rem}}