/* ROI3 v18 Section 3 shared shell: tabs, panels and topic enhancement only. Every selector is anchored to #revenue. Nothing here touches Sales internals. */

/* Shell */
#revenue .rev18-shell { margin: 0 0 1.5rem; }
#revenue #rev18-h { max-width: none; margin-bottom: .25rem; font-size: clamp(1.15rem, 2.6vw, 1.5rem); font-weight: 800; line-height: 1.2; }
#revenue .rev18-shell-note { max-width: 70ch; margin: 0; color: var(--muted); font-size: .95rem; line-height: 1.35; }

/* Tabs: wrap into readable rows on phones so every label stays visible */
#revenue .rev18-tabs { display: flex; flex-wrap: wrap; gap: .4rem; margin: .8rem 0 0; padding-bottom: .5rem; border-bottom: 3px solid var(--ink); }
#revenue .rev18-tab { display: flex; flex: 1 1 auto; align-items: center; justify-content: center; min-width: 0; min-height: 44px; padding: .45rem .75rem; border: 2px solid var(--line); border-radius: .35rem; background: #fff; color: var(--ink); font-size: .95rem; font-weight: 700; line-height: 1.15; text-align: center; text-decoration: none; }
#revenue .rev18-tab:hover { border-color: var(--ink); text-decoration: underline; }
#revenue .rev18-tab[aria-selected="true"] { border-color: var(--ink); background: var(--ink); color: #fff; font-weight: 800; }
#revenue .rev18-tab[aria-selected="true"]:hover { text-decoration: none; }

/* Panels */
#revenue .rev18-panel { min-width: 0; }
#revenue .rev18-panel[hidden] { display: none; }
#revenue .rev18-panel:focus { outline: none; }
#revenue .rev18-panel:focus-visible { outline: 3px solid var(--ink); outline-offset: 6px; border-radius: .25rem; }
#revenue:not(.rev18-js) .rev18-panel + .rev18-panel { margin-top: 3rem; padding-top: 2rem; border-top: 3px solid var(--ink); }

/* Canonical topics: readable without JS, hidden when the dialog takes over */
#revenue .rev18-topics { margin-top: 2rem; }
#revenue.rev18-js .rev18-topics { display: none; }
#revenue .rev18-topics-h { margin: 0 0 .5rem; font-size: 1.25rem; font-weight: 800; }
#revenue .rev18-topic { padding: 1.25rem 0; border-top: 1px solid var(--line); scroll-margin-top: 4.5rem; }
#revenue .rev18-topic > h3 { margin-bottom: .75rem; font-size: 1.3rem; }
#revenue .rev18-topic-body { font-size: 1rem; line-height: 1.5; }

@media (min-width: 760px) {
  #revenue .rev18-tabs { flex-wrap: nowrap; }
  #revenue .rev18-tab { flex: 1 1 0; }
}
