:root {
  --ibx-bg: #ffffff;
  --ibx-surface: #f7f9fc;
  --ibx-surface-2: #f1f5f9;
  --ibx-surface-3: #e9f1f7;
  --ibx-text: #17324a;
  --ibx-text-soft: #405f77;
  --ibx-muted: #71869a;
  --ibx-line: #dbe5ed;
  --ibx-line-strong: #bdcdd9;
  --ibx-blue: #005baa;
  --ibx-cyan: #0076bd;
  --ibx-green: #17834c;
  --ibx-amber: #a86f00;
  --ibx-red: #c64545;
  --ibx-mono: "SFMono-Regular", "SF Mono", Consolas, "Liberation Mono", monospace;
  --ibx-sans: -apple-system, BlinkMacSystemFont, "Pretendard Variable", Pretendard, "Noto Sans KR", "Helvetica Neue", Arial, sans-serif;
  --ibx-wide: 1720px;
  --ibx-shell: 1320px;
  color-scheme: light;
}

/* Official notices */
.ibx-notice-layout,
.ibx-notice-document {
  width: min(920px, calc(100% - 48px));
  margin: 0 auto;
}
.ibx-notice-document { padding-bottom: 86px; }

.ibx-notice-heading {
  padding: 84px 0 42px;
  border-bottom: 1px solid var(--ibx-line-strong);
}

.ibx-notice-heading h1,
.ibx-notice-hero h1 {
  margin: 10px 0 18px;
  color: var(--ibx-text);
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.15;
  letter-spacing: 0;
}

.ibx-notice-heading > p:not(.ibx-eyebrow),
.ibx-notice-subtitle,
.ibx-notice-summary {
  margin: 0;
  color: var(--ibx-text-soft);
  font-size: 18px;
  line-height: 1.75;
}

.ibx-eyebrow,
.ibx-notice-kicker {
  color: var(--ibx-cyan);
  font-size: 13px;
  font-weight: 800;
}

.ibx-notice-updated {
  display: block;
  margin-top: 24px;
  color: var(--ibx-muted);
  font-size: 13px;
}

.ibx-notice-list { padding: 16px 0 96px; }

.ibx-notice-row {
  display: grid;
  grid-template-columns: 160px minmax(0, 1fr) 32px;
  gap: 26px;
  align-items: start;
  padding: 30px 4px;
  border-bottom: 1px solid var(--ibx-line);
  color: inherit;
  text-decoration: none;
}

.ibx-notice-row:hover h2 { color: var(--ibx-cyan); }
.ibx-notice-row h2 { margin: 0 0 10px; font-size: 23px; line-height: 1.35; }
.ibx-notice-row p { margin: 0; color: var(--ibx-text-soft); line-height: 1.65; }
.ibx-notice-row-meta { display: flex; flex-direction: column; gap: 8px; color: var(--ibx-muted); font-size: 13px; }
.ibx-notice-row-meta > span:first-child { color: var(--ibx-cyan); font-weight: 750; }
.ibx-notice-arrow { align-self: center; color: var(--ibx-muted); font-size: 22px; }
.ibx-notice-ended { color: var(--ibx-muted); font-size: 12px; font-weight: 750; }
.ibx-notice-empty { padding: 64px 0; text-align: center; color: var(--ibx-muted); }

.ibx-notice-hero {
  padding: 78px 0 44px;
  border-bottom: 1px solid var(--ibx-line-strong);
}

.ibx-notice-kicker { display: flex; gap: 12px; align-items: center; }
.ibx-notice-summary { max-width: 760px; margin-top: 20px; color: var(--ibx-text-soft); }
.ibx-notice-byline { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; color: var(--ibx-muted); font-size: 13px; }
.ibx-notice-byline span + time::before,
.ibx-notice-byline time + span::before { content: "·"; margin-right: 14px; color: var(--ibx-line-strong); }
.ibx-notice-image { margin: 42px 0 0; }
.ibx-notice-image img { display: block; width: 100%; max-height: 620px; object-fit: contain; }
.ibx-notice-body { padding: 24px 0 52px; }
.ibx-notice-body section { padding: 28px 0; }
.ibx-notice-body section + section { padding-top: 12px; }
.ibx-notice-body--verbatim { padding-top: 38px; }
.ibx-notice-body h2,
.ibx-notice-references h2 { margin: 0 0 18px; color: var(--ibx-text); font-size: 24px; }
.ibx-notice-copy { color: var(--ibx-text-soft); font-size: 17px; line-height: 1.85; white-space: pre-line; }
.ibx-notice-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.ibx-notice-cta { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 0 24px; background: #0d65b5; color: #fff; font-weight: 750; text-decoration: none; }
.ibx-notice-references { margin-top: 48px; padding-top: 30px; border-top: 1px solid var(--ibx-line-strong); }
.ibx-notice-references ul { margin: 0; padding-left: 20px; }
.ibx-notice-references li { margin: 8px 0; }
.ibx-notice-references a { color: var(--ibx-cyan); }
.ibx-home-notices { border-bottom: 1px solid var(--ibx-line); }
.ibx-home-notice-list { border-top: 1px solid var(--ibx-line-strong); }
.ibx-home-notice-list a { display: grid; grid-template-columns: 110px 1fr 110px; gap: 20px; padding: 22px 4px; border-bottom: 1px solid var(--ibx-line); color: inherit; text-decoration: none; }
.ibx-home-notice-list span { color: var(--ibx-cyan); font-size: 13px; font-weight: 750; }
.ibx-home-notice-list time { color: var(--ibx-muted); font-size: 13px; text-align: right; }

@media (max-width: 700px) {
  .ibx-notice-layout,
  .ibx-notice-document { width: min(100% - 32px, 920px); }
  .ibx-notice-heading,
  .ibx-notice-hero { padding-top: 52px; }
  .ibx-notice-row { grid-template-columns: 1fr 24px; gap: 14px; }
  .ibx-notice-row-meta { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; }
  .ibx-home-notice-list a { grid-template-columns: 1fr auto; }
  .ibx-home-notice-list span { grid-column: 1 / -1; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; }
body.ibx-page {
  color: var(--ibx-text);
  background: var(--ibx-bg);
  font-family: var(--ibx-sans);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; letter-spacing: 0; }
button { color: inherit; }
img { display: block; max-width: 100%; }
::selection { color: #fff; background: #0c68bb; }
:focus-visible { outline: 2px solid var(--ibx-cyan); outline-offset: 3px; }

.ibx-wide { width: min(var(--ibx-wide), calc(100% - 48px)); margin: 0 auto; }
.ibx-shell { width: min(var(--ibx-shell), calc(100% - 48px)); margin: 0 auto; }
.ibx-eyebrow,
.ibx-panel-label {
  margin: 0;
  color: var(--ibx-cyan);
  font: 700 10px/1.4 var(--ibx-mono);
  text-transform: uppercase;
}
.ibx-header {
  position: sticky;
  top: 0;
  z-index: 80;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 60px;
  padding: 0 max(24px, calc((100vw - var(--ibx-wide)) / 2));
  border-bottom: 1px solid var(--ibx-line);
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(14px);
}
.ibx-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ibx-brand-logo-only { flex: 0 0 auto; }
.ibx-logo-frame {
  display: grid;
  place-items: center;
  width: 84px;
  height: 38px;
}
.ibx-logo-frame img { width: 100%; height: 100%; object-fit: contain; }
.ibx-header-context { color: var(--ibx-text-soft); font-size: 14px; font-weight: 750; }
a.ibx-header-context:hover { color: var(--ibx-cyan); }

.ibx-home-hero,
.ibx-brand-hero { border-bottom: 1px solid var(--ibx-line); background: var(--ibx-surface); }
.ibx-home-hero { padding: 58px 0 52px; }
.ibx-home-hero-grid { display: block; }
.ibx-home-hero-grid .ibx-hero-copy { max-width: 1060px; }
.ibx-home-hero .ibx-hero-copy h1 { margin-top: 0; }
.ibx-brand-hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 430px; gap: 72px; align-items: center; }
.ibx-hero-copy h1 {
  max-width: 860px;
  margin: 18px 0 0;
  font-size: 54px;
  line-height: 1.08;
  font-weight: 780;
  letter-spacing: 0;
}
.ibx-hero-lead { max-width: 760px; margin: 20px 0 0; color: var(--ibx-text-soft); font-size: 16px; line-height: 1.75; }
.ibx-hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.ibx-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid var(--ibx-line-strong);
  border-radius: 6px;
  color: var(--ibx-text-soft);
  background: transparent;
  font-size: 12px;
  font-weight: 750;
}
.ibx-button:hover { border-color: var(--ibx-blue); color: var(--ibx-blue); }
.ibx-button-primary { border-color: var(--ibx-blue); color: #fff; background: #0d65b5; }
.ibx-update-summary { border-bottom: 1px solid var(--ibx-line); background: #f4f8fb; }
.ibx-update-summary > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  min-height: 72px;
  border-right: 1px solid var(--ibx-line);
  border-left: 1px solid var(--ibx-line);
  padding: 0 24px;
}
.ibx-update-summary strong { color: var(--ibx-green); font: 650 15px var(--ibx-mono); }
.ibx-update-summary span { color: var(--ibx-text-soft); font-size: 11px; }

.ibx-section { padding: 70px 0 82px; }
.ibx-section-alt { border-top: 1px solid var(--ibx-line); background: var(--ibx-surface); }
.ibx-section-head { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 28px; }
.ibx-section-head h2 { margin: 9px 0 0; font-size: 32px; line-height: 1.2; }
.ibx-section-head > p { max-width: 440px; margin: 0; color: var(--ibx-muted); font-size: 12px; line-height: 1.7; text-align: right; }

.ibx-brand-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.ibx-brand-card {
  position: relative;
  display: grid;
  grid-template-columns: 28px 88px minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  gap: 14px;
  min-height: 174px;
  padding: 16px;
  border: 1px solid var(--ibx-line);
  border-radius: 6px;
  background: #fff;
}
.ibx-brand-card:hover { border-color: var(--ibx-blue); background: #f6faff; }
.ibx-index { color: var(--ibx-green); font: 700 10px var(--ibx-mono); }
.ibx-brand-logo { display: grid; place-items: center; width: 88px; height: 88px; padding: 12px; border-radius: 4px; overflow: hidden; background: #f7f9fa; }
.ibx-brand-logo img { width: 100%; height: 100%; object-fit: contain; }
.ibx-brand-card-copy small { color: var(--ibx-muted); font: 700 9px var(--ibx-mono); }
.ibx-brand-card-copy h3 { margin: 8px 0 0; font-size: 20px; }
.ibx-brand-card-copy > h3:first-child { margin-top: 0; }
.ibx-brand-card-copy p { margin: 9px 0 0; color: var(--ibx-text-soft); font-size: 12px; line-height: 1.65; }
.ibx-card-meta { grid-column: 2 / -1; display: flex; justify-content: space-between; padding-top: 12px; border-top: 1px solid var(--ibx-line); }
.ibx-card-meta span { color: var(--ibx-muted); font: 700 9px var(--ibx-mono); }
.ibx-card-meta strong { color: var(--ibx-cyan); font-size: 11px; }

.ibx-product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.ibx-product-card { display: grid; grid-template-columns: 108px minmax(0, 1fr); min-height: 150px; border: 1px solid var(--ibx-line); border-radius: 6px; overflow: hidden; background: #fff; }
.ibx-product-card:hover { border-color: var(--ibx-cyan); }
.ibx-product-image { display: grid; place-items: center; min-width: 0; padding: 9px; border-right: 1px solid var(--ibx-line); background: #edf3f5; }
.ibx-product-image img { width: auto; height: auto; max-width: 82px; max-height: 112px; object-fit: contain; }
.ibx-image-fallback { display: grid; place-items: center; width: 100%; height: 100%; min-height: 120px; padding: 12px; color: #174b6f; background: #e6eef2; font-weight: 800; text-align: center; }
.ibx-product-copy { display: flex; flex-direction: column; min-width: 0; padding: 13px 14px; }
.ibx-product-copy > div { display: flex; flex-wrap: wrap; gap: 7px; }
.ibx-product-copy > div span { color: var(--ibx-green); font: 700 9px var(--ibx-mono); }
.ibx-product-copy h3 { margin: 9px 0 0; font-size: 16px; line-height: 1.4; }
.ibx-product-copy > h3:first-child { margin-top: 0; }
.ibx-product-copy p { display: -webkit-box; margin: 7px 0 0; color: var(--ibx-text-soft); font-size: 10px; line-height: 1.6; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.ibx-brand-hero { padding: 34px 0 58px; }
.ibx-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; min-width: 0; color: var(--ibx-muted); font: 650 9px var(--ibx-mono); }
.ibx-breadcrumb a:hover { color: var(--ibx-cyan); }
.ibx-breadcrumb strong { overflow: hidden; color: var(--ibx-text-soft); text-overflow: ellipsis; white-space: nowrap; }
.ibx-brand-hero-grid { margin-top: 48px; }
.ibx-brand-hero .ibx-hero-copy h1 { margin-top: 20px; font-size: 62px; }
.ibx-category-row { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 28px; }
.ibx-category-row span { padding: 7px 10px; border: 1px solid var(--ibx-line); border-radius: 4px; color: var(--ibx-text-soft); font-size: 10px; }
.ibx-brand-identity { border: 1px solid var(--ibx-line-strong); background: #fff; }
.ibx-brand-logo-large { display: grid; place-items: center; height: 240px; padding: 40px; border-bottom: 1px solid var(--ibx-line); background: #f7f9fa; }
.ibx-brand-logo-large img { max-width: 260px; max-height: 150px; object-fit: contain; }
.ibx-brand-identity dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }
.ibx-brand-identity dl div { min-width: 0; padding: 15px; border-left: 1px solid var(--ibx-line); }
.ibx-brand-identity dl div:first-child { border-left: 0; }
.ibx-brand-identity dt { color: var(--ibx-muted); font: 700 8px var(--ibx-mono); }
.ibx-brand-identity dd { margin: 7px 0 0; color: var(--ibx-green); font: 650 11px var(--ibx-mono); overflow-wrap: anywhere; }

.ibx-product-ledger { border-top: 1px solid var(--ibx-line-strong); }
.ibx-product-ledger > a { display: grid; grid-template-columns: 34px 116px minmax(0, 1fr) 88px; gap: 16px; align-items: center; min-height: 150px; padding: 14px 16px; border-bottom: 1px solid var(--ibx-line); }
.ibx-product-ledger > a:hover { background: var(--ibx-surface-2); }
.ibx-ledger-image { display: grid; place-items: center; width: 116px; height: 116px; padding: 8px; border-radius: 4px; background: #edf3f5; }
.ibx-ledger-image img { width: 100%; height: 100%; object-fit: contain; }
.ibx-ledger-copy { min-width: 0; }
.ibx-ledger-copy small { color: var(--ibx-green); font: 700 9px var(--ibx-mono); }
.ibx-ledger-copy h3 { margin: 9px 0 0; font-size: 20px; }
.ibx-ledger-copy p { max-width: 760px; margin: 8px 0 0; color: var(--ibx-text-soft); font-size: 12px; line-height: 1.6; }
.ibx-product-ledger dl { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0; }
.ibx-product-ledger dl div { min-width: 0; padding: 9px; border-left: 1px solid var(--ibx-line); }
.ibx-product-ledger dt { color: var(--ibx-muted); font: 700 8px var(--ibx-mono); }
.ibx-product-ledger dd { margin: 6px 0 0; color: var(--ibx-text-soft); font: 600 10px var(--ibx-mono); overflow-wrap: anywhere; }
.ibx-open-label { justify-self: end; color: var(--ibx-cyan); font-size: 11px; }

.ibx-product-layout {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  width: min(var(--ibx-wide), calc(100% - 32px));
  min-height: calc(100vh - 66px);
  margin: 0 auto;
  border-right: 1px solid var(--ibx-line);
  border-left: 1px solid var(--ibx-line);
}
.ibx-product-index { min-width: 0; border-right: 1px solid var(--ibx-line); background: #f7f9fb; }
.ibx-sticky { position: sticky; top: 82px; }
.ibx-product-index .ibx-sticky { padding: 18px 14px 28px; }
.ibx-taxonomy { margin-top: 12px; border-top: 1px solid var(--ibx-line); }
.ibx-taxonomy a { display: grid; gap: 6px; padding: 13px 10px; border-bottom: 1px solid var(--ibx-line); }
.ibx-taxonomy small { color: var(--ibx-muted); font: 700 8px var(--ibx-mono); }
.ibx-taxonomy strong { color: var(--ibx-text-soft); font-size: 11px; line-height: 1.45; }
.ibx-taxonomy a.is-current { border-left: 2px solid var(--ibx-cyan); background: var(--ibx-surface-2); }
.ibx-taxonomy a.is-current small { color: var(--ibx-green); }
.ibx-section-nav { display: grid; margin-top: 26px; }
.ibx-section-nav a { padding: 8px 4px; color: var(--ibx-muted); font-size: 10px; }
.ibx-section-nav a:hover { color: var(--ibx-cyan); }
.ibx-related-products { margin-top: 25px; padding-top: 18px; border-top: 1px solid var(--ibx-line); }
.ibx-related-products a { display: block; margin-top: 10px; color: var(--ibx-text-soft); font-size: 10px; line-height: 1.5; }
.ibx-brand-product-index { margin-top: 25px; padding-top: 18px; border-top: 1px solid var(--ibx-line); }
.ibx-brand-product-index nav { display: grid; max-height: min(52vh, 520px); margin-top: 10px; overflow-y: auto; }
.ibx-brand-product-index a { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 7px; padding: 9px 4px; border-bottom: 1px solid var(--ibx-line); }
.ibx-brand-product-index a:hover { background: var(--ibx-surface-2); }
.ibx-brand-product-index span { color: var(--ibx-green); font: 700 8px var(--ibx-mono); }
.ibx-brand-product-index strong { color: var(--ibx-text-soft); font-size: 10px; font-weight: 650; line-height: 1.45; }

.ibx-product-document { min-width: 0; padding: 24px 32px 72px; background: var(--ibx-bg); }
.ibx-brand-document { min-width: 0; background: var(--ibx-bg); }
.ibx-brand-content { padding-right: 32px; padding-left: 32px; }
.ibx-product-hero { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 28px; align-items: start; padding: 32px 0 30px; border-bottom: 1px solid var(--ibx-line-strong); }
.ibx-product-heading h1 { margin: 18px 0 0; font-size: 43px; line-height: 1.16; }
.ibx-product-heading > h1:first-child { margin-top: 0; }
.ibx-product-heading .ibx-hero-lead { margin-top: 24px; font-size: 15px; }
.ibx-inline-section-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  margin-top: 22px;
  padding: 0 13px;
  border: 1px solid var(--ibx-line-strong);
  border-radius: 6px;
  color: var(--ibx-text-soft);
  font-size: 11px;
  font-weight: 750;
}
.ibx-inline-section-link:hover { border-color: var(--ibx-cyan); color: #fff; }
.ibx-product-stage { display: grid; place-items: center; height: 214px; padding: 20px; border: 1px solid var(--ibx-line); border-radius: 6px; overflow: hidden; background: #edf3f5; }
.ibx-product-stage img { width: auto; height: auto; max-width: 164px; max-height: 172px; object-fit: contain; }
.ibx-product-content { min-width: 0; margin-top: 30px; }
.ibx-quick-answer { margin: 0; padding: 22px 24px; border: 1px solid #b9d8ea; border-left: 3px solid var(--ibx-blue); background: #f2f8fc; }
.ibx-quick-answer > p:last-child { margin: 11px 0 0; color: var(--ibx-text); font-size: 16px; line-height: 1.8; }
.ibx-document-section { padding: 48px 0; border-bottom: 1px solid var(--ibx-line-strong); }
.ibx-document-section > header { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 8px 24px; margin-bottom: 22px; }
.ibx-document-section > header .ibx-eyebrow { grid-column: 1 / -1; }
.ibx-document-section > header h2 { margin: 0; font-size: 27px; }
.ibx-document-section > header > span { color: var(--ibx-muted); font: 700 8px var(--ibx-mono); }

.ibx-fact-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--ibx-line); border-left: 1px solid var(--ibx-line); }
.ibx-fact-grid article { min-width: 0; min-height: 82px; padding: 14px; border-right: 1px solid var(--ibx-line); border-bottom: 1px solid var(--ibx-line); background: #fff; }
.ibx-fact-grid small { display: block; color: var(--ibx-muted); font-size: 9px; }
.ibx-fact-grid strong { display: block; margin-top: 9px; color: var(--ibx-text); font-size: 13px; line-height: 1.45; overflow-wrap: anywhere; }
.ibx-variant-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ibx-variant-list article { border: 1px solid var(--ibx-line); background: #fff; }
.ibx-variant-list h3 { margin: 0; padding: 13px 15px; border-bottom: 1px solid var(--ibx-line); color: var(--ibx-green); font: 700 10px var(--ibx-mono); }
.ibx-variant-list dl { margin: 0; }
.ibx-variant-list dl div { display: grid; grid-template-columns: 110px 1fr; gap: 12px; padding: 9px 15px; border-bottom: 1px solid var(--ibx-line); }
.ibx-variant-list dt { color: var(--ibx-muted); font-size: 9px; }
.ibx-variant-list dd { margin: 0; color: var(--ibx-text-soft); font-size: 10px; overflow-wrap: anywhere; }
.ibx-product-members { margin-top: 28px; }
.ibx-product-members > h3 { margin: 0 0 12px; color: var(--ibx-text-soft); font-size: 13px; }

.ibx-story-list { border-top: 1px solid var(--ibx-line-strong); }
.ibx-story-list article { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 16px; padding: 23px 0; border-bottom: 1px solid var(--ibx-line); }
.ibx-story-list article > span { color: var(--ibx-green); font: 700 10px var(--ibx-mono); }
.ibx-story-list small { color: var(--ibx-cyan); font: 700 8px var(--ibx-mono); text-transform: uppercase; }
.ibx-story-list h3 { margin: 7px 0 0; font-size: 20px; line-height: 1.45; }
.ibx-story-list p { margin: 11px 0 0; color: var(--ibx-text-soft); font-size: 13px; line-height: 1.85; }
.ibx-story-list .ibx-section-lead { color: var(--ibx-text); font-weight: 700; }
.ibx-selection-section {
  margin-right: -14px;
  margin-left: -14px;
  padding: 54px 14px;
  background: #f7f9fc;
}
.ibx-selection-section > header h2 { font-size: 30px; }
.ibx-recommend-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.ibx-recommend-grid article {
  min-width: 0;
  padding: 23px 21px;
  border: 1px solid var(--ibx-line);
  border-top-width: 3px;
  border-radius: 6px;
  background: #fff;
}
.ibx-recommend-grid article:only-child,
.ibx-recommend-grid article:last-child:nth-child(odd) { grid-column: 1 / -1; }
.ibx-recommend-grid h3 { margin: 0; min-height: 42px; font-size: 16px; line-height: 1.45; }
.ibx-recommend-grid ul { display: grid; gap: 16px; margin: 17px 0 0; padding: 0; list-style: none; }
.ibx-recommend-grid li { padding-top: 14px; border-top: 1px solid rgba(184, 209, 222, .16); }
.ibx-recommend-grid li strong { display: block; color: var(--ibx-text); font-size: 13px; line-height: 1.6; }
.ibx-recommend-grid li span { display: block; margin-top: 7px; color: var(--ibx-text-soft); font-size: 11px; line-height: 1.75; }
.ibx-recommend-best { border-color: #a9d5bc !important; background: #f3faf6 !important; }
.ibx-recommend-best h3 { color: var(--ibx-green); }
.ibx-recommend-reason { border-color: #acd3e8 !important; background: #f2f8fc !important; }
.ibx-recommend-reason h3 { color: var(--ibx-cyan); }
.ibx-recommend-caution { border-color: #e3d0a4 !important; background: #fffaf0 !important; }
.ibx-recommend-caution h3 { color: var(--ibx-amber); }
.ibx-faq-list { border-top: 1px solid var(--ibx-line-strong); }
.ibx-faq-list details { border-bottom: 1px solid var(--ibx-line); }
.ibx-faq-list summary { padding: 17px 2px; color: var(--ibx-text); font-size: 13px; font-weight: 750; cursor: pointer; }
.ibx-faq-list details p { margin: 0 0 18px; padding-right: 28px; color: var(--ibx-text-soft); font-size: 12px; line-height: 1.8; }
.ibx-purchase-links,
.ibx-reference-links { display: grid; gap: 8px; }
.ibx-purchase-links a,
.ibx-reference-links a { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 66px; padding: 13px 16px; border: 1px solid var(--ibx-line); border-radius: 8px; background: #fff; }
.ibx-purchase-links a:hover,
.ibx-reference-links a:hover { border-color: var(--ibx-cyan); }
.ibx-purchase-links strong,
.ibx-reference-links span { font-size: 12px; }
.ibx-purchase-links strong { font-size: 15px; line-height: 1.45; }
.ibx-purchase-links small,
.ibx-reference-links small { display: block; margin-top: 5px; color: var(--ibx-muted); font: 700 8px var(--ibx-mono); }
.ibx-purchase-links > a > span { color: var(--ibx-green); font: 700 9px var(--ibx-mono); }
.ibx-hero-purchase { margin-top: 26px; }
.ibx-hero-purchase > header { margin-bottom: 12px; }
.ibx-hero-purchase > header h2 { margin: 0; color: var(--ibx-blue); font-size: 20px; line-height: 1.3; }
.ibx-hero-purchase .ibx-purchase-links a { min-height: 58px; padding: 11px 14px; }
.ibx-hero-purchase .ibx-purchase-links strong { color: var(--ibx-text); font-size: 13px; }
.ibx-hero-purchase .ibx-benefit-list { margin-top: 16px; }
.ibx-query-list { display: flex; flex-wrap: wrap; gap: 7px; }
.ibx-query-list span { padding: 8px 10px; border: 1px solid var(--ibx-line); border-radius: 4px; color: var(--ibx-text-soft); background: #fff; font-size: 10px; }
.ibx-keyword-list { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 14px; }
.ibx-keyword-list span { padding: 7px 9px; border: 1px solid #b9d8ea; border-radius: 4px; color: var(--ibx-blue); background: #f2f8fc; font-size: 9px; }
.ibx-reference-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.ibx-reference-groups > div { min-width: 0; }
.ibx-reference-groups h3,
.ibx-benefit-list h3 { margin: 0 0 10px; color: var(--ibx-text-soft); font-size: 12px; }
.ibx-source-group + .ibx-source-group { margin-top: 18px; }
.ibx-source-group h4 { margin: 0 0 8px; color: var(--ibx-cyan); font-size: 10px; font-weight: 750; }
.ibx-source-links { display: grid; gap: 8px; }
.ibx-source-links > a,
.ibx-source-links > article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 66px;
  padding: 13px 16px;
  border: 1px solid var(--ibx-line);
  border-radius: 6px;
  background: #fff;
}
.ibx-source-links > a:hover { border-color: var(--ibx-cyan); }
.ibx-source-links span { min-width: 0; }
.ibx-source-links strong { display: block; color: var(--ibx-text-soft); font-size: 11px; line-height: 1.5; }
.ibx-source-links small { display: block; margin-top: 5px; color: var(--ibx-muted); font: 700 8px var(--ibx-mono); overflow-wrap: anywhere; }
.ibx-source-links em { flex: 0 0 auto; color: var(--ibx-muted); font: 700 8px var(--ibx-mono); font-style: normal; }
.ibx-source-links em.is-verified { color: var(--ibx-green); }
.ibx-benefit-list { margin-top: 24px; }
.ibx-benefit-list p { display: grid; gap: 5px; margin: 0; padding: 12px 14px; border-top: 1px solid var(--ibx-line); background: #f7f9fc; }
.ibx-benefit-list strong { color: var(--ibx-text); font-size: 11px; }
.ibx-benefit-list span { color: var(--ibx-text-soft); font-size: 10px; line-height: 1.65; }
.ibx-publication-meta { display: grid; grid-template-columns: minmax(0, 1fr) minmax(420px, .92fr); gap: 34px; margin-top: 34px; padding: 24px; border: 1px solid var(--ibx-line-strong); background: var(--ibx-surface-2); }
.ibx-publication-meta h2 { margin: 9px 0 0; font-size: 22px; }
.ibx-publication-meta p:last-child { margin: 11px 0 0; color: var(--ibx-text-soft); font-size: 11px; line-height: 1.7; }
.ibx-publication-meta dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.ibx-publication-meta dl div { padding: 8px 10px; border-left: 1px solid var(--ibx-line); }
.ibx-publication-meta dt { color: var(--ibx-muted); font-size: 8px; }
.ibx-publication-meta dd { margin: 6px 0 0; color: var(--ibx-text-soft); font: 600 9px var(--ibx-mono); overflow-wrap: anywhere; }

.ibx-footer { border-top: 1px solid var(--ibx-line); background: #f4f7fa; }
.ibx-footer > div { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 76px; color: var(--ibx-muted); font: 650 9px var(--ibx-mono); }
.ibx-footer a:hover { color: var(--ibx-cyan); }

.ibx-status-page { min-height: 100vh; }
.preview-shell {
  display: grid;
  align-content: center;
  width: min(760px, calc(100% - 40px));
  min-height: 100vh;
  margin: 0 auto;
  padding: 64px 0;
}
.preview-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: fit-content;
  margin-bottom: 24px;
  color: var(--ibx-text);
  font-size: 18px;
  font-weight: 760;
}
.preview-card {
  padding: clamp(28px, 5vw, 52px);
  border: 1px solid var(--ibx-line-strong);
  border-radius: 6px;
  background: var(--ibx-surface);
}
.preview-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 22px;
  padding: 7px 10px;
  border: 1px solid #e3d0a4;
  border-radius: 4px;
  color: var(--ibx-amber);
  background: #fffaf0;
  font-size: 12px;
  font-weight: 700;
}
.preview-status::before {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  content: "";
}
.preview-card h1 {
  max-width: 620px;
  margin: 0;
  font-size: clamp(30px, 5vw, 46px);
  line-height: 1.16;
}
.preview-lead { margin: 20px 0 0; color: var(--ibx-text-soft); font-size: 16px; line-height: 1.75; }
.preview-detail {
  display: flex;
  gap: 12px;
  margin: 28px 0 0;
  padding: 17px 18px;
  border: 1px solid var(--ibx-line);
  border-radius: 4px;
  color: var(--ibx-text-soft);
  background: var(--ibx-surface-2);
  font-size: 13px;
  line-height: 1.6;
}
.preview-detail strong { flex: 0 0 auto; color: var(--ibx-text); }
.preview-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.preview-actions a {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  border: 1px solid var(--ibx-line-strong);
  border-radius: 6px;
  color: var(--ibx-text-soft);
  font-size: 13px;
  font-weight: 700;
}
.preview-actions a:first-child { border-color: var(--ibx-blue); color: #fff; background: #0d65b5; }
.preview-actions a:hover { border-color: var(--ibx-cyan); color: #fff; }
.preview-note { margin: 22px 0 0; color: var(--ibx-muted); font-size: 12px; line-height: 1.65; }

@media (max-width: 1480px) {
  .ibx-product-layout { grid-template-columns: 190px minmax(0, 1fr); }
  .ibx-product-document { padding-inline: 26px; }
  .ibx-brand-content { padding-right: 26px; padding-left: 26px; }
  .ibx-product-hero { grid-template-columns: minmax(0, 1fr) 220px; }
  .ibx-product-stage { height: 198px; }
  .ibx-product-stage img { max-width: 150px; max-height: 156px; }
  .ibx-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1120px) {
  .ibx-brand-hero-grid { grid-template-columns: minmax(0, 1fr) 360px; gap: 40px; }
  .ibx-hero-copy h1 { font-size: 48px; }
  .ibx-brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ibx-product-ledger > a { grid-template-columns: 28px 100px minmax(0, 1fr) 80px; }
  .ibx-product-ledger .ibx-open-label { display: none; }
  .ibx-ledger-image { width: 100px; height: 100px; }
  .ibx-product-layout { grid-template-columns: 180px minmax(0, 1fr); }
}

@media (max-width: 820px) {
  .ibx-wide,
  .ibx-shell { width: min(100% - 28px, var(--ibx-wide)); }
  .ibx-header { position: relative; min-height: 56px; padding: 0 14px; }
  .ibx-logo-frame { width: 76px; height: 34px; }
  .ibx-header-context { max-width: 48vw; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
  .ibx-home-hero { padding: 52px 0 42px; }
  .ibx-brand-hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .ibx-hero-copy h1,
  .ibx-brand-hero .ibx-hero-copy h1 { font-size: 38px; line-height: 1.18; }
  .ibx-hero-lead { font-size: 14px; }
  .ibx-update-summary > div { gap: 12px; min-height: 64px; padding: 0 16px; }
  .ibx-section { padding: 50px 0 58px; }
  .ibx-section-head { display: block; }
  .ibx-section-head h2 { font-size: 27px; }
  .ibx-section-head > p { margin-top: 12px; text-align: left; }
  .ibx-brand-grid,
  .ibx-product-grid { grid-template-columns: 1fr; }
  .ibx-brand-card { grid-template-columns: 24px 72px minmax(0, 1fr); min-height: 150px; }
  .ibx-brand-logo { width: 72px; height: 72px; }
  .ibx-brand-hero { padding-top: 20px; }
  .ibx-brand-hero-grid { margin-top: 30px; }
  .ibx-brand-logo-large { height: 190px; }
  .ibx-product-ledger > a { grid-template-columns: 24px 84px minmax(0, 1fr); min-height: 126px; padding-inline: 8px; }
  .ibx-ledger-image { width: 84px; height: 84px; }
  .ibx-product-ledger dl { display: none; }
  .ibx-ledger-copy h3 { font-size: 16px; }
  .ibx-ledger-copy p { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .ibx-product-layout { display: block; width: 100%; border: 0; }
  .ibx-product-index { border-right: 0; border-bottom: 1px solid var(--ibx-line); }
  .ibx-product-index .ibx-sticky { position: static; padding: 14px; }
  .ibx-taxonomy { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ibx-brand-layout .ibx-taxonomy { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ibx-taxonomy a { min-width: 0; padding: 10px 8px; border-right: 1px solid var(--ibx-line); }
  .ibx-taxonomy strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .ibx-section-nav,
  .ibx-related-products,
  .ibx-brand-product-index { display: none; }
  .ibx-product-document { padding: 18px 14px 56px; }
  .ibx-brand-content { padding-right: 14px; padding-left: 14px; }
  .ibx-product-hero { grid-template-columns: 1fr; padding: 24px 0 24px; }
  .ibx-product-heading h1 { font-size: 34px; }
  .ibx-product-stage { order: -1; height: 188px; padding: 18px; }
  .ibx-product-stage img { max-width: 144px; max-height: 150px; }
  .ibx-product-content { margin-top: 24px; }
  .ibx-quick-answer { padding: 18px; }
  .ibx-quick-answer > p:last-child { font-size: 14px; }
  .ibx-document-section { padding: 38px 0; }
  .ibx-document-section > header h2 { font-size: 23px; }
  .ibx-fact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ibx-variant-list,
  .ibx-recommend-grid,
  .ibx-reference-groups { grid-template-columns: 1fr; }
  .ibx-selection-section { margin-right: -8px; margin-left: -8px; padding: 42px 8px; }
  .ibx-selection-section > header h2 { font-size: 25px; }
  .ibx-recommend-grid article { min-height: 0; padding: 20px 18px; }
  .ibx-publication-meta { grid-template-columns: 1fr; gap: 22px; padding: 18px; }
  .ibx-publication-meta dl div:nth-child(odd) { border-left: 0; }
  .ibx-footer > div { min-height: 64px; }
}

@media (max-width: 480px) {
  .ibx-hero-copy h1,
  .ibx-brand-hero .ibx-hero-copy h1 { font-size: 32px; }
  .ibx-update-summary > div { grid-template-columns: auto minmax(0, 1fr); gap: 8px; padding: 0 12px; }
  .ibx-update-summary strong { font-size: 11px; }
  .ibx-update-summary span { font-size: 9px; }
  .ibx-brand-card { grid-template-columns: 22px 62px minmax(0, 1fr); padding: 12px; }
  .ibx-brand-logo { width: 62px; height: 62px; padding: 9px; }
  .ibx-card-meta { grid-column: 1 / -1; }
  .ibx-product-card { grid-template-columns: 92px minmax(0, 1fr); }
  .ibx-product-image { padding: 7px; }
  .ibx-product-heading h1 { font-size: 29px; }
  .ibx-taxonomy small { font-size: 7px; }
  .ibx-taxonomy strong { font-size: 9px; }
  .ibx-fact-grid { grid-template-columns: 1fr 1fr; }
  .ibx-story-list article { grid-template-columns: 30px minmax(0, 1fr); gap: 10px; }
  .ibx-story-list h3 { font-size: 17px; }
  .ibx-publication-meta dl { grid-template-columns: 1fr; }
  .ibx-publication-meta dl div { border-left: 0; border-top: 1px solid var(--ibx-line); }
  .preview-shell { width: min(100% - 24px, 760px); padding: 32px 0; }
  .preview-card { padding: 26px 22px; }
  .preview-detail { flex-direction: column; gap: 4px; }
  .preview-actions { flex-direction: column; }
  .preview-actions a { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
