/* ============================================
   Medmio - ICD-10-CM Code Lookup
   Scoped styles for /icd10-codes/ hub + condition cluster pages.
   Uses global tokens from styles.css (no hardcoded brand colors).
   Mirrors the denial-codes tool's visual language with ic- classes.
   ============================================ */

/* ---- Hero ---- */
.ic-hero {
  padding: calc(var(--nav-h) + 48px) 0 40px;
  background:
    radial-gradient(900px 480px at 85% -10%, rgba(34,169,120,.08), transparent 60%),
    radial-gradient(640px 380px at -5% 110%, rgba(47,133,230,.05), transparent 60%),
    var(--white);
  border-bottom: 1px solid var(--border);
}
.ic-hero__inner { max-width: 960px; margin: 0 auto; text-align: center; }
.ic-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: .74rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  color: var(--green-deep); background: var(--green-soft);
  padding: 5px 12px; border-radius: 999px; margin-bottom: 18px;
  border: 1px solid rgba(34,169,120,.18);
}
.ic-hero__eyebrow svg { width: 13px; height: 13px; }
.ic-hero h1 { font-size: clamp(2rem, 4vw, 3rem); letter-spacing: -.03em; line-height: 1.08; margin: 0 0 16px; }
.ic-hero__lead { font-size: 1.12rem; color: var(--gray); line-height: 1.6; max-width: 720px; margin: 0 auto 14px; }
.ic-hero__meta-line { font-size: .82rem; color: var(--gray-soft); margin-top: 18px; }
.ic-hero__meta-line strong { color: var(--ink-soft); font-weight: 600; }

/* ---- Search tool ---- */
.ic-tool { max-width: 720px; margin: 22px auto 0; text-align: left; }
.ic-search { position: relative; }
.ic-search__field { position: relative; display: flex; align-items: center; }
.ic-search__field > svg { position: absolute; left: 16px; width: 18px; height: 18px; color: var(--gray-soft); pointer-events: none; }
.ic-search__input {
  width: 100%; font: inherit; font-size: 1.02rem; color: var(--ink);
  padding: 15px 16px 15px 46px; border: 1.5px solid var(--border-strong);
  border-radius: var(--radius); background: var(--white); transition: border-color .15s, box-shadow .15s;
}
.ic-search__input:focus { outline: none; border-color: var(--green); box-shadow: 0 0 0 3px rgba(34,169,120,.12); }
.ic-search__input::placeholder { color: var(--gray-soft); }

/* ---- Results ---- */
.ic-results { margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }
.ic-result {
  display: flex; align-items: center; gap: 14px;
  padding: 12px 14px; border: 1px solid var(--border); border-radius: var(--radius-sm);
  background: var(--white); transition: border-color .15s, box-shadow .15s;
}
.ic-result:hover { border-color: var(--border-strong); box-shadow: var(--shadow-sm); }
.ic-result__code {
  display: inline-flex; align-items: center; justify-content: center;
  font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  font-weight: 800; font-size: .86rem; letter-spacing: .01em;
  padding: 6px 11px; border-radius: 7px; white-space: nowrap; flex-shrink: 0; min-width: 72px;
  background: var(--green-soft); color: var(--green-deep); border: 1px solid rgba(34,169,120,.2);
}
.ic-result__body { min-width: 0; flex: 1; }
.ic-result__desc { display: block; font-size: .92rem; font-weight: 500; color: var(--ink); line-height: 1.4; }
.ic-result__tag { display: flex; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--gray-soft); margin-top: 5px; align-items: center; gap: 6px; }
.ic-result__copy {
  font: inherit; font-size: .76rem; font-weight: 600; color: var(--gray);
  background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-sm);
  padding: 6px 10px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; flex-shrink: 0;
  transition: all .15s;
}
.ic-result__copy svg { width: 13px; height: 13px; }
.ic-result__copy:hover { border-color: var(--green); color: var(--green-deep); }
.ic-result__copy.is-copied { background: var(--green); color: var(--white); border-color: var(--green); }

.ic-loading, .ic-empty {
  padding: 22px 16px; text-align: center; color: var(--gray); font-size: .9rem;
  border: 1px dashed var(--border-strong); border-radius: var(--radius-sm);
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.ic-empty strong { color: var(--ink-soft); }
.ic-spinner { width: 16px; height: 16px; border: 2px solid var(--border-strong); border-top-color: var(--green); border-radius: 50%; animation: ic-spin .7s linear infinite; }
@keyframes ic-spin { to { transform: rotate(360deg); } }
.ic-results__more { font-size: .8rem; color: var(--gray-soft); text-align: center; padding: 8px 0 2px; }

/* ---- Cluster-guide hint (appears when a query matches a guide topic) ---- */
.ic-hint {
  display: flex; align-items: center; gap: 12px; margin-top: 12px;
  padding: 12px 16px; border-radius: var(--radius);
  background: linear-gradient(135deg, var(--green-soft), var(--blue-soft));
  border: 1px solid rgba(34,169,120,.2); color: var(--ink-soft); font-size: .9rem; line-height: 1.5;
}
.ic-hint svg { width: 18px; height: 18px; color: var(--green-deep); flex-shrink: 0; }
.ic-hint a { font-weight: 700; color: var(--green-deep); text-decoration: underline; text-underline-offset: 2px; }

/* ---- Default state (popular searches before typing) ---- */
.ic-default { margin-top: 16px; display: flex; flex-direction: column; gap: 12px; }
.ic-default__row { display: flex; align-items: center; gap: 8px 10px; flex-wrap: wrap; }
.ic-default__label { font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray-soft); min-width: 58px; }
.ic-pill { font: inherit; display: inline-flex; align-items: center; font-weight: 600; font-size: .84rem; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--border); background: var(--white); color: var(--ink-soft); cursor: pointer; transition: all .15s; }
.ic-pill:hover { border-color: var(--green); color: var(--green-deep); box-shadow: var(--shadow-sm); }

/* ---- CodeSight strip ---- */
.ic-strip { background: linear-gradient(135deg, var(--green-soft), var(--blue-soft)); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.ic-strip__inner { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; padding: 26px 0; }
.ic-strip__text { flex: 1; min-width: 280px; }
.ic-strip__text h2 { font-size: clamp(1.2rem, 2.4vw, 1.55rem); letter-spacing: -.02em; margin: 0 0 5px; }
.ic-strip__text p { font-size: .96rem; color: var(--ink-soft); margin: 0; }
.ic-strip__actions { display: flex; gap: 10px; flex-wrap: wrap; }

/* ---- Section scaffolding ---- */
.ic-section { padding: 56px 0; }
.ic-section--alt { background: var(--gray-bg); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }

/* ---- Guides grid (links to condition cluster pages) ---- */
.ic-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.ic-card {
  display: flex; flex-direction: column; gap: 8px; padding: 18px;
  border: 1px solid var(--border); border-radius: var(--radius); background: var(--white);
  transition: border-color .18s, transform .18s, box-shadow .18s; color: inherit;
}
.ic-card:hover { border-color: var(--border-strong); transform: translateY(-2px); box-shadow: var(--shadow-md); }
.ic-card__title { font-size: .98rem; font-weight: 700; color: var(--ink); line-height: 1.3; display: flex; align-items: center; gap: 9px; }
.ic-card__title .ic-card__fam { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .76rem; font-weight: 700; color: var(--green-deep); background: var(--green-soft); padding: 2px 7px; border-radius: 5px; }
.ic-card__def { font-size: .86rem; color: var(--gray); line-height: 1.55; }
.ic-card--soon { cursor: default; opacity: .72; }
.ic-card--soon:hover { transform: none; box-shadow: none; border-color: var(--border); }
.ic-card__tag { display: inline-flex; align-items: center; font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--gray-soft); background: var(--gray-bg); border: 1px solid var(--border); border-radius: 999px; padding: 3px 9px; align-self: flex-start; }
.ic-card__arrow { margin-top: auto; display: inline-flex; align-items: center; gap: 6px; font-size: .82rem; font-weight: 600; color: var(--green-deep); }
.ic-card__arrow svg { width: 14px; height: 14px; transition: transform .15s; }
.ic-card:hover .ic-card__arrow svg { transform: translateX(3px); }

/* ---- "How to read a code" - visual anatomy diagram ---- */
.ic-anatomy { max-width: 720px; margin: 0 auto; }
.ic-anatomy__code { display: flex; align-items: flex-start; justify-content: center; gap: 8px; margin-bottom: 30px; flex-wrap: wrap; }
.ic-seg { display: flex; flex-direction: column; align-items: center; gap: 11px; }
.ic-seg__chars { font-family: ui-monospace, Menlo, Consolas, monospace; font-weight: 800; font-size: clamp(1.7rem, 5vw, 2.5rem); line-height: 1; padding: 14px 16px; border-radius: 12px; }
.ic-seg__label { font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
.ic-seg--cat .ic-seg__chars { background: var(--green-soft); color: var(--green-deep); border: 2px solid rgba(34,169,120,.3); }
.ic-seg--cat .ic-seg__label { color: var(--green-deep); }
.ic-seg--detail .ic-seg__chars { background: var(--blue-soft); color: var(--blue-deep); border: 2px solid rgba(47,133,230,.3); }
.ic-seg--detail .ic-seg__label { color: var(--blue-deep); }
.ic-seg--dot .ic-seg__chars { background: transparent; color: var(--gray-soft); border: 2px solid transparent; padding-left: 2px; padding-right: 2px; }
.ic-anatomy__legend { display: flex; flex-direction: column; gap: 13px; max-width: 600px; margin: 0 auto 20px; }
.ic-anatomy__legend > div { font-size: .92rem; color: var(--gray); line-height: 1.55; padding-left: 22px; position: relative; }
.ic-anatomy__legend strong { color: var(--ink); font-weight: 700; }
.ic-anatomy__legend code, .ic-anatomy__note code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .85rem; background: var(--gray-bg); padding: 2px 6px; border-radius: 5px; color: var(--ink-soft); }
.ic-dot { position: absolute; left: 0; top: 6px; width: 11px; height: 11px; border-radius: 3px; }
.ic-dot--cat { background: var(--green); }
.ic-dot--detail { background: var(--blue); }
.ic-anatomy__note { font-size: .9rem; color: var(--gray); line-height: 1.65; max-width: 600px; margin: 0 auto; padding-top: 16px; border-top: 1px solid var(--border); }
.ic-anatomy__note strong { color: var(--ink); font-weight: 600; }

/* ---- History timeline ---- */
.ic-timeline { max-width: 720px; margin: 6px auto 0; list-style: none; padding: 0; }
.ic-timeline li { display: flex; gap: 18px; }
.ic-timeline__year { flex-shrink: 0; width: 58px; font-family: ui-monospace, Menlo, Consolas, monospace; font-weight: 800; font-size: 1.05rem; color: var(--green-deep); text-align: right; padding-top: 1px; }
.ic-timeline__body { border-left: 2px solid var(--border); padding: 0 0 26px 22px; position: relative; font-size: .95rem; color: var(--gray); line-height: 1.65; }
.ic-timeline li:last-child .ic-timeline__body { border-left-color: transparent; padding-bottom: 0; }
.ic-timeline__body::before { content: ''; position: absolute; left: -7px; top: 4px; width: 12px; height: 12px; border-radius: 50%; background: var(--green); border: 3px solid var(--white); box-shadow: 0 0 0 1px var(--border); }
.ic-timeline__body strong { color: var(--ink); display: block; margin-bottom: 2px; }
.ic-cite { font-size: .62em; font-weight: 700; vertical-align: super; line-height: 0; margin-left: 1px; }
.ic-cite a { color: var(--green-deep); text-decoration: none; }
.ic-cite a:hover { text-decoration: underline; }
.ic-refs { max-width: 720px; margin: 24px auto 0; font-size: .78rem; color: var(--gray-soft); line-height: 1.65; padding-top: 16px; border-top: 1px solid var(--border); }
.ic-refs strong { font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray-soft); }
.ic-refs ol { margin: 8px 0 0; padding-left: 22px; display: flex; flex-direction: column; gap: 4px; }
.ic-refs a { color: var(--gray); text-decoration: underline; text-underline-offset: 2px; }
.ic-refs a:hover { color: var(--green-deep); }

/* ---- Source / disclaimer meta ---- */
.ic-meta { font-size: .78rem; color: var(--gray-soft); line-height: 1.6; margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--border); }
.ic-meta a { color: var(--gray); text-decoration: underline; text-underline-offset: 2px; }

/* ============================================
   Condition cluster (guide) pages
   ============================================ */
.ic-guide { padding-top: calc(var(--nav-h) + 12px); padding-bottom: 56px; }
.ic-breadcrumb { font-size: .82rem; color: var(--gray); padding: 14px 0 0; display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.ic-breadcrumb a { color: var(--gray); transition: color .15s; }
.ic-breadcrumb a:hover { color: var(--green-deep); }
.ic-breadcrumb svg { width: 12px; height: 12px; color: var(--gray-soft); }
.ic-breadcrumb [aria-current] { color: var(--ink-soft); font-weight: 600; }
.ic-guidehead { padding: 18px 0 6px; max-width: 820px; }
.ic-guidehead h1 { font-size: clamp(1.8rem, 3.4vw, 2.5rem); letter-spacing: -.02em; line-height: 1.1; margin: 0 0 14px; }
.ic-guidehead__lead { font-size: 1.12rem; line-height: 1.65; color: var(--ink-soft); margin: 0; }

.ic-guide__layout { display: grid; grid-template-columns: 1fr 290px; gap: 44px; align-items: start; padding: 26px 0 0; }
.ic-guide__main { min-width: 0; max-width: 760px; }
.ic-guide__aside { position: sticky; top: calc(var(--nav-h) + 16px); display: flex; flex-direction: column; gap: 16px; }
@media (max-width: 900px) { .ic-guide__layout { grid-template-columns: 1fr; gap: 28px; } .ic-guide__aside { position: static; } }

.ic-block { margin-bottom: 34px; }
.ic-block h2 { font-size: 1.3rem; font-weight: 700; color: var(--ink); margin: 0 0 14px; letter-spacing: -.01em; }
.ic-block h3 { font-size: 1rem; font-weight: 700; color: var(--ink); margin: 20px 0 8px; }
.ic-block p { font-size: .98rem; color: var(--gray); line-height: 1.7; margin: 0 0 12px; }
.ic-block p strong { color: var(--ink-soft); font-weight: 600; }
.ic-block a { color: var(--green-deep); text-decoration: underline; text-underline-offset: 2px; }
.ic-block code, .ic-table code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .85em; background: var(--gray-bg); padding: 2px 6px; border-radius: 5px; color: var(--green-deep); font-weight: 600; }

/* code table */
.ic-table { width: 100%; border-collapse: collapse; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; margin: 6px 0 14px; font-size: .92rem; }
.ic-table th { text-align: left; font-size: .7rem; text-transform: uppercase; letter-spacing: .06em; color: var(--gray-soft); background: var(--gray-bg); padding: 10px 14px; border-bottom: 1px solid var(--border); }
.ic-table td { padding: 10px 14px; border-bottom: 1px solid var(--border); color: var(--ink-soft); line-height: 1.45; vertical-align: top; }
.ic-table tr:last-child td { border-bottom: none; }
.ic-table td:first-child { font-family: ui-monospace, Menlo, Consolas, monospace; font-weight: 700; color: var(--green-deep); white-space: nowrap; }

/* checklist + mistakes */
.ic-checklist { list-style: none; padding: 0; margin: 0 0 12px; display: flex; flex-direction: column; gap: 10px; }
.ic-checklist li { position: relative; padding-left: 28px; font-size: .96rem; color: var(--ink-soft); line-height: 1.6; }
.ic-checklist li svg { position: absolute; left: 0; top: 3px; width: 17px; height: 17px; color: var(--green); }
.ic-mistakes { list-style: none; padding: 0; margin: 0 0 12px; display: flex; flex-direction: column; gap: 14px; }
.ic-mistakes li { position: relative; padding-left: 26px; font-size: .96rem; color: var(--gray); line-height: 1.6; }
.ic-mistakes li::before { content: ''; position: absolute; left: 5px; top: 8px; width: 8px; height: 8px; border-radius: 2px; background: var(--orange); }
.ic-mistakes strong { color: var(--ink); display: block; margin-bottom: 1px; font-weight: 600; }

/* callouts */
.ic-callout { border-radius: var(--radius); padding: 15px 18px; font-size: .94rem; line-height: 1.6; display: flex; gap: 12px; margin: 4px 0 16px; }
.ic-callout svg { width: 18px; height: 18px; flex-shrink: 0; margin-top: 2px; }
.ic-callout strong { color: var(--ink); }
.ic-callout--tip { background: var(--green-soft); border: 1px solid rgba(34,169,120,.2); color: var(--ink-soft); }
.ic-callout--tip svg { color: var(--green-deep); }
.ic-callout--warn { background: rgba(237,118,38,.07); border: 1px solid rgba(237,118,38,.2); color: var(--ink-soft); }
.ic-callout--warn svg { color: var(--orange); }

/* ============================================
   Tools hub - punchy tool cards
   ============================================ */
.tool-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 20px; }
.tool-card {
  position: relative; display: flex; flex-direction: column; gap: 13px;
  padding: 28px 24px 24px; border-radius: var(--radius-lg);
  border: 1.5px solid var(--border); background: var(--white); color: inherit;
  box-shadow: var(--shadow-sm); overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.tool-card::before {
  content: ''; position: absolute; inset: 0 0 auto 0; height: 5px;
  background: linear-gradient(90deg, var(--accent), var(--accent-deep));
}
.tool-card--link:hover { transform: translateY(-5px); box-shadow: var(--shadow-lg); border-color: var(--accent); }
.tool-card__icon {
  width: 54px; height: 54px; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--accent), var(--accent-deep)); color: #fff;
  box-shadow: 0 6px 16px -6px var(--accent);
}
.tool-card__icon svg { width: 27px; height: 27px; }
.tool-card__title { font-size: 1.22rem; font-weight: 800; color: var(--ink); letter-spacing: -.02em; line-height: 1.2; }
.tool-card__desc { font-size: .94rem; color: var(--gray); line-height: 1.55; }
.tool-card__desc strong { color: var(--ink-soft); font-weight: 700; }
.tool-card__cta {
  margin-top: 6px; display: inline-flex; align-items: center; gap: 8px; align-self: flex-start;
  font-size: .92rem; font-weight: 700; color: #fff;
  background: linear-gradient(135deg, var(--accent), var(--accent-deep));
  padding: 10px 18px; border-radius: 999px; transition: gap .15s, filter .15s, box-shadow .2s;
  box-shadow: 0 6px 16px -8px var(--accent);
}
.tool-card__cta svg { width: 15px; height: 15px; transition: transform .15s; }
.tool-card--link:hover .tool-card__cta { filter: brightness(1.05); box-shadow: 0 9px 20px -8px var(--accent); }
.tool-card--link:hover .tool-card__cta svg { transform: translateX(4px); }
.tool-card__free {
  position: absolute; top: 18px; right: 18px; font-size: .62rem; font-weight: 800; letter-spacing: .1em;
  text-transform: uppercase; color: var(--accent-deep); background: var(--accent-soft);
  padding: 4px 10px; border-radius: 999px; border: 1px solid var(--accent-line);
}
/* accent palettes */
.tool-card--green  { --accent: var(--green); --accent-deep: var(--green-deep); --accent-soft: var(--green-soft); --accent-line: rgba(34,169,120,.25); }
.tool-card--blue   { --accent: var(--blue);  --accent-deep: var(--blue-deep);  --accent-soft: var(--blue-soft);  --accent-line: rgba(47,133,230,.25); }
.tool-card--teal   { --accent: var(--teal);  --accent-deep: #178f85;           --accent-soft: var(--teal-soft);  --accent-line: rgba(29,167,155,.25); }
/* coming soon - muted so the live tools pop by contrast */
.tool-card--soon { background: var(--gray-bg); border-style: dashed; box-shadow: none; }
.tool-card--soon::before { background: var(--border-strong); }
.tool-card--soon .tool-card__icon { background: var(--white); color: var(--gray-soft); box-shadow: none; border: 1px solid var(--border); }
.tool-card--soon .tool-card__title { color: var(--ink-soft); }
.tool-card__soon-tag {
  margin-top: 6px; align-self: flex-start; font-size: .66rem; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: var(--gray-soft); background: var(--white); border: 1px solid var(--border-strong);
  padding: 6px 12px; border-radius: 999px;
}
@media (max-width: 600px) { .tool-card { padding: 24px 20px 22px; } }

/* worked example */
.ic-worked { border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; background: var(--white); margin: 6px 0 14px; }
.ic-worked__scenario { padding: 14px 16px; background: var(--gray-bg); border-bottom: 1px solid var(--border); font-size: .94rem; color: var(--ink-soft); line-height: 1.6; }
.ic-worked__scenario strong { color: var(--ink); }
.ic-worked__codes { padding: 13px 16px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; border-bottom: 1px solid var(--border); }
.ic-worked__label { font-size: .68rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; color: var(--gray-soft); margin-right: 4px; }
.ic-worked__codes code { font-family: ui-monospace, Menlo, Consolas, monospace; font-weight: 700; font-size: .85rem; background: var(--green-soft); color: var(--green-deep); padding: 4px 10px; border-radius: 6px; }
.ic-worked__why { padding: 14px 16px; font-size: .9rem; color: var(--gray); line-height: 1.65; margin: 0; }
.ic-worked__why strong { color: var(--ink); font-weight: 600; }
.ic-worked__why code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .85em; background: var(--gray-bg); padding: 1px 5px; border-radius: 4px; color: var(--green-deep); }

/* aside */
.ic-aside__card { border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; background: var(--white); }
.ic-aside__card h3 { font-size: .74rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gray-soft); margin: 0 0 12px; }
.ic-aside__card p { font-size: .9rem; color: var(--gray); line-height: 1.55; margin: 0 0 14px; }
.ic-aside__card--cta { background: linear-gradient(135deg, var(--ink), var(--ink-soft)); color: #fff; border: none; }
.ic-aside__card--cta h3 { color: var(--green); }
.ic-aside__card--cta p { color: rgba(255,255,255,.85); }
.ic-rellinks { display: flex; flex-direction: column; gap: 10px; }
.ic-rellink { display: flex; align-items: center; gap: 9px; font-size: .9rem; font-weight: 600; color: var(--ink-soft); transition: color .15s; }
.ic-rellink:hover { color: var(--green-deep); }
.ic-rellink svg { width: 15px; height: 15px; color: var(--green); flex-shrink: 0; }

/* ---- Responsive ---- */
@media (max-width: 600px) {
  .ic-result { flex-wrap: wrap; gap: 10px; }
  .ic-result__copy { margin-left: auto; }
  .ic-section { padding: 44px 0; }
  .ic-table { font-size: .86rem; }
  .ic-table th, .ic-table td { padding: 8px 10px; }
}
