
body.cab-v2 .pro-nav { display: none; }
body.cab-v2 .pro-section.cab-inactive { display: none !important; }

.cab-shell { position: relative; z-index: 5; min-width: 0; }
.cab-menu-toggle {
  display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 12px;
  min-height: 48px; padding: 10px 16px; border-radius: 14px; cursor: pointer; text-align: left;
  border: 1px solid var(--border, #e4e5e8); background: var(--card, #fff); color: var(--ink, #14151a); font: inherit;
}
.cab-menu-toggle-label { font-size: .72rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: var(--muted, #6c6f77); }
.cab-menu-toggle-current { font-weight: 800; color: var(--orange, #ff6500); }
.cab-menu-toggle::after { content: ''; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); margin-top: -4px; flex: 0 0 auto; }
.cab-shell.cab-menu-open .cab-menu-toggle::after { transform: rotate(-135deg); margin-top: 4px; }

.cab-nav { display: none; flex-direction: column; gap: 6px; margin-top: 8px; }
.cab-shell.cab-menu-open .cab-nav { display: flex; }
.cab-nav-item {
  display: flex; align-items: center; gap: 10px; width: 100%; min-height: 56px; padding: 10px 12px; cursor: pointer; text-align: left;
  border-radius: 14px; border: 1px solid var(--border, #e4e5e8); background: var(--card, #fff); color: var(--muted-2, #4b4d53); font: inherit;
}
.cab-nav-item:hover, .cab-nav-item:focus-visible { border-color: #ffd9bd; color: var(--ink, #14151a); outline: none; }
.cab-nav-item.is-active { border-color: var(--orange, #ff6500); background: var(--tint-orange, rgba(255,101,0,.08)); color: var(--ink, #14151a); }
.cab-nav-num { flex: 0 0 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: .7rem; font-weight: 800; background: var(--card-2, #f3f4f6); color: var(--muted, #6c6f77); }
.cab-nav-item.is-active .cab-nav-num { background: var(--orange, #ff6500); color: #fff; }
.cab-nav-icon { flex: 0 0 20px; width: 20px; height: 20px; }
.cab-nav-text { display: flex; flex-direction: column; min-width: 0; }
.cab-nav-title { font-size: .86rem; font-weight: 800; line-height: 1.25; }
.cab-nav-hint { font-size: .7rem; color: var(--muted, #6c6f77); line-height: 1.3; margin-top: 2px; }

.cab-tabs {
  display: flex; gap: 6px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 2px 0 6px; max-width: 100%;
  position: sticky; top: 68px; z-index: 4; background: var(--bg, #f6f7f9);
}
.cab-tabs[hidden] { display: none; }
.cab-tab {
  flex: 0 0 auto; min-height: 40px; padding: 8px 14px; border-radius: 999px; cursor: pointer; white-space: nowrap; font: inherit;
  font-size: .8rem; font-weight: 700; border: 1px solid var(--border, #e4e5e8); background: var(--card, #fff); color: var(--muted-2, #4b4d53);
}
.cab-tab:hover, .cab-tab:focus-visible { color: var(--orange, #ff6500); border-color: #ffd9bd; outline: none; }
.cab-tab.is-active { background: var(--orange, #ff6500); border-color: var(--orange, #ff6500); color: #fff; }

.cab-lock-panel h2 { margin-top: 0; }

@media (min-width: 900px) {
  .cab-shell { flex: 0 0 248px; position: sticky; top: 92px; max-height: calc(100vh - 112px); overflow-y: auto; align-self: flex-start; }
  .cab-menu-toggle { display: none; }
  .cab-nav { display: flex; margin-top: 0; }
  .cab-tabs { top: 84px; }
}

.acc-badge { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: .68rem; font-weight: 800; letter-spacing: .05em; }
.acc-badge-demo { background: #ffe9a8; color: #5b4300; }
.acc-badge-stale { background: #ffd2cc; color: #7a1406; }
.acc-badge-live { background: #cdf2dc; color: #0b5a2b; }
.acc-badge-na { background: var(--card-2, #eceef1); color: var(--muted-2, #4b4d53); border: 1px solid var(--border, #e4e5e8); }
.acc-demo-banner { border: 2px dashed #e0b400; border-radius: 14px; padding: 10px 14px; margin: 12px 0; font-size: .85rem; }
.acc-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.acc-list button { font: inherit; cursor: pointer; padding: 8px 12px; border-radius: 12px; border: 1px solid var(--border, #e4e5e8); background: var(--card, #fff); color: var(--ink, #14151a); text-align: left; }
.acc-list button.is-active { border-color: var(--orange, #ff6500); }
.acc-list small { display: block; color: var(--muted, #6c6f77); }
.acc-meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 6px 16px; margin: 10px 0; font-size: .82rem; }
.acc-meta span { color: var(--muted, #6c6f77); display: block; font-size: .7rem; }
.acc-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; margin: 12px 0; }
.acc-metric { border: 1px solid var(--border, #e4e5e8); border-radius: 12px; padding: 10px 12px; background: var(--card-2, #fafafa); min-width: 0; }
.acc-metric span { display: block; font-size: .7rem; color: var(--muted, #6c6f77); }
.acc-metric b { display: block; font-size: 1rem; margin-top: 2px; overflow-wrap: anywhere; }
.acc-metric .neg { color: #d33a2c; }
.acc-metric .pos { color: #13915a; }
.acc-note { font-size: .78rem; color: var(--muted, #6c6f77); margin: 6px 0; }
.acc-warn { font-size: .8rem; border-left: 3px solid #e0b400; padding: 6px 10px; margin: 8px 0; }
.acc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.acc-chart { width: 100%; height: 140px; display: block; margin: 8px 0; }
.acc-status-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 10px 0; }
.acc-consent-list { list-style: none; padding: 0; margin: 10px 0; display: flex; flex-direction: column; gap: 10px; }
.acc-consent-list li { border: 1px solid var(--border, #e4e5e8); border-radius: 12px; padding: 10px 14px; }
.acc-consent-list h3 { margin: 0 0 4px; font-size: .9rem; }
.acc-consent-list p { margin: 0; font-size: .82rem; }
