/* ==========================================================================
   BRIDGEVANTI CRM — Screen-specific styles (auth, dashboard, settings)
   ========================================================================== */

/* ---------- Extra component states ---------- */
.callout.is-danger { background: var(--color-danger-bg); color: var(--color-danger); border-color: #EDC9C0; }
.toast.is-error { background: #5A1F14; }
.toast.is-error .icon { color: #F2B9AC; }
.skip-link:focus { position: fixed; z-index: 100; top: 8px; left: 8px; width: auto; height: auto; clip: auto; padding: 8px 12px; background: #fff; border-radius: var(--radius-sm); }
.field-row { display: flex; justify-content: space-between; align-items: baseline; }
.field-row a { font-size: var(--text-xs); font-weight: var(--weight-semi); }
.quick-menu button:disabled { cursor: not-allowed; opacity: .6; }
.dot { display: inline-block; width: 10px; height: 10px; border-radius: 3px; flex: none; }

/* ---------- Auth (login / forgot / reset) ---------- */
.bv-auth { background: var(--color-bg); }
.auth { min-height: 100dvh; display: grid; grid-template-columns: minmax(0, 1fr); }
.auth-panel { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: var(--space-6); padding: var(--space-10) var(--space-4); }
.auth-brand { display: flex; align-items: center; gap: 12px; }
.auth-brand img { width: 56px; height: 56px; object-fit: contain; }
.auth-brand .wordmark { display: grid; line-height: 1; }
.auth-brand .wordmark b { font: var(--weight-black) 22px/1 var(--font-display); letter-spacing: .05em; color: var(--bv-forest-900); }
.auth-brand .wordmark small { margin-top: 6px; font: var(--weight-semi) 11px/1 var(--font-body); letter-spacing: .24em; text-transform: uppercase; color: var(--bv-gold-700); }
.auth-card { width: min(420px, 100%); display: grid; gap: var(--space-4); padding: var(--space-8) var(--space-6); background: var(--color-surface); border: 1px solid var(--color-border-soft); border-radius: var(--radius-xl); box-shadow: var(--shadow-md); }
.auth-card h1 { font-size: var(--text-2xl); }
.auth-sub { color: var(--color-text-muted); font-size: var(--text-sm); margin-top: -8px !important; }
.auth-form { display: grid; gap: var(--space-4); }
.auth-form .btn-lg { margin-top: var(--space-2); }
.auth-foot { text-align: center; font-size: var(--text-sm); }
.auth-legal { font-size: var(--text-2xs); color: var(--color-text-subtle); text-align: center; }
.auth-aside { display: none; position: relative; overflow: hidden; background: var(--bv-forest-900); }
.auth-aside::before { content: ""; position: absolute; inset: 0;
  background: radial-gradient(600px 400px at 85% 15%, rgba(194, 164, 90, .16), transparent 60%),
              linear-gradient(transparent 0 calc(100% - 1px), rgba(243, 238, 226, .04) 0) 0 0 / 100% 48px; }
.auth-aside-inner { position: absolute; left: 48px; right: 48px; bottom: 56px; }
.auth-aside .eyebrow { color: var(--bv-gold-500); letter-spacing: .3em; }
.auth-quote { margin-top: 12px !important; font: var(--weight-bold) 34px/1.15 var(--font-display); color: var(--bv-cream-200); letter-spacing: -.01em; max-width: 440px; }
@media (min-width: 960px) {
  .auth { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .auth-aside { display: block; }
}

/* ---------- Mobile "More" menu ---------- */
.more-nav { display: grid; gap: 2px; }
.more-nav a { display: flex; align-items: center; gap: var(--space-3); min-height: 48px; padding: 0 var(--space-3); border-radius: var(--radius-md); color: var(--color-text); font-weight: var(--weight-medium); text-decoration: none !important; }
.more-nav a .icon { color: var(--bv-gold-600); }
.more-nav a[aria-current="page"] { background: var(--bv-cream-200); font-weight: var(--weight-semi); }

/* ---------- Dashboard: target cards ---------- */
.greet .date { font-size: var(--text-sm); color: var(--color-text-muted); font-weight: var(--weight-medium); }
.target-card { padding: var(--space-4) var(--space-5); display: grid; gap: var(--space-3); }
.target-top { display: flex; align-items: center; gap: var(--space-3); }
.target-top .src-ico { width: 34px; height: 34px; border-radius: var(--radius-md); display: grid; place-items: center; flex: none;
  color: var(--c); background: color-mix(in srgb, var(--c) 12%, white); }
.target-top h3 { font-size: var(--text-sm); }
.target-top .sched { font-size: var(--text-2xs); color: var(--color-text-subtle); font-weight: var(--weight-medium); }
.target-top .pct { margin-left: auto; font: var(--weight-bold) var(--text-sm)/1 var(--font-display); color: var(--color-text-muted); }
.target-top .btn { margin-right: -8px; color: var(--color-text-subtle); }
.target-figs { display: flex; align-items: baseline; gap: 6px; }
.target-figs .big { font: var(--weight-black) var(--text-3xl)/1 var(--font-display); letter-spacing: -.02em; }
.target-figs .of { color: var(--color-text-muted); font-weight: var(--weight-semi); font-size: var(--text-sm); }
.target-foot { display: flex; justify-content: space-between; gap: var(--space-2); font-size: var(--text-xs); color: var(--color-text-muted); }
.target-foot b { color: var(--color-text); font-weight: var(--weight-semi); }
.target-foot .ok { color: var(--color-success); font-weight: var(--weight-semi); display: inline-flex; align-items: center; gap: 4px; }

/* ---------- Phase 2: shared record UI ---------- */
.view-root { display: contents; }
/* minmax(0,1fr): a wide table inside scrolls in its own box instead of widening the page. */
.stack { display: grid; gap: var(--space-4); grid-template-columns: minmax(0, 1fr); }
.stack-lg { display: grid; gap: var(--space-5); grid-template-columns: minmax(0, 1fr); }
.back { display: inline-flex; align-items: center; gap: 4px; font-size: var(--text-sm); font-weight: var(--weight-semi); color: var(--color-text-muted) !important; margin-bottom: calc(var(--space-2) * -1); }
.icon.flip { transform: scaleX(-1); }
a.plain { color: inherit !important; }
.small-link { font-size: var(--text-sm); font-weight: var(--weight-semi); }
.head-actions { display: flex; gap: var(--space-2); flex-wrap: wrap; }
.muted.date, .page-head .date { font-size: var(--text-sm); font-weight: var(--weight-medium); color: var(--color-text-muted); }

.row-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: var(--text-xs); color: var(--color-text-muted); }
.profile-head .row-meta { margin-top: 4px; font-size: var(--text-sm); }
.row-meta .sep { width: 3px; height: 3px; border-radius: 50%; background: var(--bv-ink-300); }

/* Temperature (lookup-driven) */
.temp[data-rank="1"] .bars i:nth-child(-n+1),
.temp[data-rank="2"] .bars i:nth-child(-n+2),
.temp[data-rank="3"] .bars i { opacity: 1; }
.chips[data-name="temperature"] .chip { min-width: 76px; justify-content: center; }

/* Source badge (any color from Settings) */
.badge.src-badge { --b-fg: color-mix(in srgb, var(--c) 80%, black); --b-bg: color-mix(in srgb, var(--c) 13%, white); --b-bd: transparent; }

/* Status pill = native select styled as a badge (native picker on phones) */
.status-pill { position: relative; display: inline-flex; align-items: center; }
.status-pill select {
  appearance: none; -webkit-appearance: none; cursor: pointer; max-width: 170px;
  height: 30px; padding: 0 26px 0 12px; border-radius: var(--radius-pill);
  font: var(--weight-semi) var(--text-xs)/1 var(--font-body); text-overflow: ellipsis;
  color: var(--b-fg); background: var(--b-bg); border: 1px solid var(--b-bd);
}
.status-pill::after { content: ""; position: absolute; right: 10px; top: 50%; width: 6px; height: 6px; margin-top: -5px; border: solid currentColor; border-width: 0 1.5px 1.5px 0; transform: rotate(45deg); color: var(--b-fg); pointer-events: none; }
.status-pill { --b-fg: #3B4741; --b-bg: #F1EFEA; --b-bd: #E2DED4; }
.status-pill[data-status="contacted"], .status-pill[data-status="attempted"] { --b-fg: #2F5D7C; --b-bg: #E8F0F6; --b-bd: #D2E1EC; }
.status-pill[data-status="connected"], .status-pill[data-status="interested"] { --b-fg: #22593F; --b-bg: #E6F0EA; --b-bd: #CFE2D7; }
.status-pill[data-status="followup"] { --b-fg: #8A5D0F; --b-bg: #FBF0D9; --b-bd: #F1DDB2; }
.status-pill[data-status="appointment"], .status-pill[data-status="proposal"] { --b-fg: #6E5820; --b-bg: #F6EFDD; --b-bd: #E8DAB4; }
.status-pill[data-status="customer"] { --b-fg: var(--bv-gold-300); --b-bg: var(--bv-forest-900); --b-bd: var(--bv-forest-900); }
.status-pill[data-status="not_interested"], .status-pill[data-status="not_fit"], .status-pill[data-status="unresponsive"] { --b-fg: #7A817D; --b-bg: #F3F2EF; --b-bd: #E4E2DC; }
.status-pill select:focus-visible { outline: none; box-shadow: var(--shadow-focus); }
.ph-status .status-pill select { height: 38px; font-size: var(--text-sm); max-width: 220px; }

/* Lead rows */
.lead-row { align-items: start; }
.lead-row .avatar { margin-top: 2px; text-decoration: none !important; }
.lead-main { min-width: 0; color: inherit !important; text-decoration: none !important; display: grid; gap: 2px; }
.lead-row .row-end { padding-top: 2px; }
.row .row-meta .badge { height: 20px; font-size: var(--text-2xs); padding: 0 7px; }
.row-end .count { display: inline-flex; gap: 4px; align-items: center; height: 24px; }
@media (max-width: 520px) {
  .lead-row { grid-template-columns: auto minmax(0, 1fr); }
  .lead-row .row-end { grid-column: 2; padding-top: 4px; }
}

/* Toolbar + filters */
.toolbar { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.toolbar .grow { flex: 1 1 260px; }
.toolbar .select { width: auto; min-width: 140px; }
.filter-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: calc(var(--space-3) * -1); }
.filter-chips:empty { display: none; }
.fchip { display: inline-flex; align-items: center; gap: 4px; height: 28px; padding: 0 8px 0 10px; border-radius: var(--radius-pill); border: 1px solid var(--bv-gold-300); background: var(--bv-gold-50); color: var(--bv-gold-700); font: var(--weight-semi) var(--text-xs)/1 var(--font-body); cursor: pointer; }
.fchip:disabled { cursor: default; padding-right: 10px; opacity: .85; }
.fchip.is-clear { border-color: transparent; background: none; color: var(--color-text-muted); text-decoration: underline; }
.load-more { display: flex; justify-content: center; }
.load-more:has(#more[hidden]) { display: none; }

/* Profiles */
.profile-head { display: flex; align-items: center; gap: var(--space-4); flex-wrap: wrap; }
.profile-head .ph-main { flex: 1 1 220px; min-width: 0; }
.profile-head h1 { font-size: var(--text-2xl); overflow-wrap: anywhere; }
.avatar-lg { width: 56px; height: 56px; font-size: var(--text-lg); border-radius: var(--radius-lg); }
.actions-bar { display: flex; gap: var(--space-2); overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
.actions-bar .act { flex: 0 0 auto; display: grid; justify-items: center; gap: 4px; min-width: 72px; padding: 10px 12px; border-radius: var(--radius-md);
  background: var(--color-surface); border: 1px solid var(--color-border-soft); box-shadow: var(--shadow-xs); color: var(--bv-forest-700) !important; text-decoration: none !important;
  font: var(--weight-semi) var(--text-xs)/1 var(--font-body); }
.actions-bar .act .icon { color: var(--bv-gold-600); }
.actions-bar .act:active { transform: translateY(1px); }
.profile-grid { display: grid; gap: var(--space-5); grid-template-columns: minmax(0, 1fr); }
.profile-grid .col { display: grid; gap: var(--space-5); align-content: start; min-width: 0; }
@media (min-width: 1024px) { .profile-grid { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); } }
.dl { display: grid; gap: var(--space-3); margin: 0; }
.dl > div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: var(--space-3); font-size: var(--text-sm); }
.dl dt { color: var(--color-text-muted); }
.dl dd { margin: 0; overflow-wrap: anywhere; }
.notes { white-space: pre-wrap; margin-top: var(--space-4) !important; font-size: var(--text-sm); color: var(--bv-ink-700); }
.timeline { list-style: none; margin: 0; padding: var(--space-3) var(--space-5) var(--space-4); display: grid; gap: var(--space-3); }
.timeline li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); font-size: var(--text-xs); }
.quick-dates { margin-top: var(--space-2); }
.quick-dates .chip { min-height: 30px; font-size: var(--text-xs); }

/* Typeahead + search results */
.typeahead, .search-results { display: grid; padding: 6px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-lg); }
.search { position: relative; }
.search .search-results { position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 60; max-height: 70vh; overflow: auto; }
.search-results.is-inline { box-shadow: none; border: 0; padding: 0; }
.ta-label { padding: 8px 10px 4px; font: var(--weight-semi) var(--text-2xs)/1 var(--font-body); letter-spacing: var(--tracking-caps); text-transform: uppercase; color: var(--color-text-subtle); }
.ta-item { display: flex; align-items: center; gap: var(--space-3); width: 100%; min-height: 48px; padding: 6px 10px; border: 0; border-radius: var(--radius-sm); background: none; text-align: left; cursor: pointer; color: var(--color-text) !important; text-decoration: none !important; font: inherit; }
.ta-item:hover, .ta-item:focus { background: var(--bv-cream-100); outline: none; }
.ta-item > span:not(.avatar):not(.badge) { display: grid; min-width: 0; flex: 1; }
.ta-item b { font-weight: var(--weight-semi); font-size: var(--text-sm); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ta-item small { color: var(--color-text-muted); font-size: var(--text-xs); }
.ta-item .avatar { width: 32px; height: 32px; font-size: var(--text-xs); }
.sr-empty { padding: 14px 10px; color: var(--color-text-muted); font-size: var(--text-sm); }
.sr-group + .sr-group { border-top: 1px solid var(--color-border-soft); margin-top: 4px; padding-top: 4px; }
.modal-search .modal-header { gap: var(--space-2); }
@media (max-width: 767px) { .modal.modal-search { min-height: 70dvh; } }
.topbar .search .kbd { position: absolute; right: 10px; }
@media (max-width: 1023px) { .topbar .search .kbd { display: none; } }
.selected-biz { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border-radius: var(--radius-md); background: var(--bv-green-50); border: 1px solid var(--bv-green-200); }
.selected-biz > div { flex: 1; min-width: 0; }

/* Duplicate prompt */
.dup-list { display: grid; gap: var(--space-2); }
.dup-row { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-md); }
.dup-row .dup-info { flex: 1; min-width: 0; display: grid; gap: 4px; }
.dup-row .row-meta { display: flex; flex-wrap: wrap; gap: 4px 8px; font-size: var(--text-xs); color: var(--color-text-muted); }

/* Disclosure */
.disclosure { border: 1px solid var(--color-border-soft); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4); }
.disclosure summary { cursor: pointer; font-weight: var(--weight-semi); font-size: var(--text-sm); }
.disclosure[open] summary { margin-bottom: var(--space-4); }

/* Quick menu links + prospecting */
.quick-menu .qm-link { display: flex; align-items: center; gap: var(--space-3); min-height: 56px; padding: 0 var(--space-4); border: 1px solid var(--color-border); border-radius: var(--radius-lg); background: var(--color-surface); color: var(--color-text) !important; text-decoration: none !important; font: var(--weight-semi) var(--text-lg)/1.2 var(--font-body); }
.quick-menu .qm-link small { display: block; font-size: var(--text-xs); font-weight: var(--weight-regular); color: var(--color-text-muted); margin-top: 2px; }
.add-src { margin-top: var(--space-1); }
.src-group + .src-group { margin-top: var(--space-4); }
.src-group .card-header h3 { display: flex; align-items: center; gap: 8px; font-size: var(--text-md); }

/* Option-list editor */
.lists-editor { display: grid; gap: var(--space-2); }
.list-block { border: 1px solid var(--color-border-soft); border-radius: var(--radius-md); }
.list-block summary { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); cursor: pointer; font-size: var(--text-sm); }
.li-rows { display: grid; gap: 6px; padding: 0 var(--space-3) var(--space-3); }
.li-row { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); padding: 6px; border-radius: var(--radius-sm); background: var(--bv-cream-100); }
.li-row.is-archived { opacity: .55; }
.li-row .li-label { flex: 1 1 160px; min-height: 36px; }
.li-move { display: flex; }
.li-move .btn { width: 26px; font-size: 10px; }
.li-color { width: 36px; height: 36px; padding: 2px; border: 1px solid var(--color-border-strong); border-radius: var(--radius-sm); background: #fff; }
.select.sm { min-height: 36px; width: auto; font-size: var(--text-sm); }
.check.sm { font-size: var(--text-xs); }
.li-add { display: flex; gap: var(--space-2); padding: 0 var(--space-3) var(--space-3); }
.li-add .input { min-height: 36px; }

/* ---------- Phase 3: workflow ---------- */
.bottomnav a .bn-ico { display: inline-flex; position: relative; }
.workflow-bar { display: flex; gap: var(--space-2); flex-wrap: wrap; }
@media (max-width: 767px) {
  .workflow-bar { display: grid; grid-template-columns: 1fr 1fr; }
  .workflow-bar .btn { min-height: 48px; }
}
.day-group { display: grid; gap: var(--space-2); }
.day-group + .day-group { margin-top: var(--space-5); }
.day-group > .eyebrow { padding-left: 2px; }
.done-line { padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); }

/* Follow-up cards */
.fu-list { display: grid; gap: var(--space-3); }
.fu-card { background: var(--color-surface); border: 1px solid var(--color-border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); overflow: hidden; }
.fu-main { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-3); padding: var(--space-4) var(--space-4) var(--space-3); color: inherit !important; text-decoration: none !important; }
.fu-main > div { display: grid; gap: 4px; min-width: 0; }
.fu-due { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-top: 4px; font-size: var(--text-sm); }
.fu-action { font-weight: var(--weight-semi); color: var(--color-text); }
.fu-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); padding: var(--space-3) var(--space-4); border-top: 1px solid var(--color-border-soft); background: var(--bv-cream-100); }
.fu-actions .btn-primary { flex: 1 1 auto; }
@media (min-width: 768px) { .fu-actions .btn-primary { flex: 0 0 auto; } }

/* Activity timeline */
.act-day + .act-day { margin-top: var(--space-5); }
.act-list { list-style: none; margin: var(--space-2) 0 0; padding: 0; display: grid; }
.act-item { position: relative; display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: var(--space-3); padding: var(--space-3) 0; }
.act-item + .act-item { border-top: 1px solid var(--color-border-soft); }
.act-ico { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-cream-200); color: var(--bv-forest-700); }
.act-body { display: grid; gap: 3px; min-width: 0; font-size: var(--text-sm); }
.act-head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 8px; }
.act-time { margin-left: auto; font-size: var(--text-xs); }
.act-who { font-size: var(--text-xs); color: var(--color-text-muted) !important; }
.act-outcome { font-weight: var(--weight-medium); }
.act-notes { white-space: pre-wrap; color: var(--bv-ink-700); }
.act-next { display: inline-flex; align-items: center; gap: 4px; font-size: var(--text-xs); color: var(--bv-gold-700); font-weight: var(--weight-semi); }
.act-del { opacity: .45; }
.act-item:hover .act-del, .act-del:focus-visible { opacity: 1; }
.inline-date { display: inline-flex; align-items: center; gap: 6px; font-size: var(--text-sm); color: var(--color-text-muted); }
.inline-date .input { width: auto; min-height: 40px; }

/* Log activity sheet */
details.when { border: 1px solid var(--color-border-soft); border-radius: var(--radius-md); padding: 10px 12px; }
details.when summary { display: flex; align-items: center; gap: 6px; cursor: pointer; font-size: var(--text-sm); font-weight: var(--weight-semi); color: var(--bv-ink-700); }
.outcome-chips { margin-top: var(--space-2); }
.outcome-chips .chip { min-height: 30px; font-size: var(--text-xs); }
.next-step { border: 1px solid var(--bv-gold-100); background: var(--bv-gold-50); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4) var(--space-4); margin: 0; display: grid; gap: var(--space-3); }
.next-step legend { padding: 0 6px; font: var(--weight-bold) var(--text-sm)/1 var(--font-display); color: var(--bv-gold-700); }

/* Appointments */
.appt-list { display: grid; }
.appt-row { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-4); border-top: 1px solid var(--color-border-soft); }
.appt-row:first-child { border-top: 0; }
.appt-row .time { text-align: center; padding: 6px 0; border-radius: var(--radius-md); background: var(--bv-cream-200); }
.appt-row .time b { display: block; font: var(--weight-black) var(--text-sm)/1.2 var(--font-display); }
.appt-row .time span { font-size: var(--text-2xs); color: var(--color-text-muted); }
.appt-main { display: grid; gap: 3px; min-width: 0; }
.appt-end { grid-column: 2; display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
@media (min-width: 768px) { .appt-row { grid-template-columns: 64px minmax(0, 1fr) auto; } .appt-end { grid-column: auto; } }
.cal-layout { display: grid; gap: var(--space-5); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .cal-layout { grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); align-items: start; } }
.cal-card { padding: var(--space-4); }
.cal-head { display: flex; align-items: center; gap: var(--space-2); margin-bottom: var(--space-3); }
.cal-head h2 { flex: 1; text-align: center; font-size: var(--text-lg); }
.cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.cal-dow div { text-align: center; font: var(--weight-semi) var(--text-2xs)/1 var(--font-body); letter-spacing: var(--tracking-caps); text-transform: uppercase; color: var(--color-text-subtle); padding: 6px 0; }
.cal-cell { position: relative; min-height: 48px; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 6px 2px; border: 1px solid transparent; border-radius: var(--radius-sm); background: var(--bv-cream-100); cursor: pointer; font: inherit; color: var(--color-text); overflow: hidden; }
.cal-cell.is-pad { background: none; cursor: default; }
.cal-cell:hover:not(.is-pad) { border-color: var(--bv-gold-300); }
.cal-cell.is-today .cal-num { background: var(--bv-forest-900); color: #fff; }
.cal-cell.is-selected { border-color: var(--bv-gold-500); background: var(--bv-gold-50); }
.cal-num { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font: var(--weight-bold) var(--text-xs)/1 var(--font-display); }
.cal-items { display: none; width: 100%; }
.cal-dots { display: flex; gap: 3px; }
.cal-dots i { width: 5px; height: 5px; border-radius: 50%; background: var(--bv-gold-600); }
@media (min-width: 1024px) {
  .cal-cell { min-height: 92px; align-items: stretch; }
  .cal-num { align-self: flex-start; }
  .cal-items { display: grid; gap: 2px; }
  .cal-chip { display: block; padding: 2px 4px; border-radius: 3px; background: var(--bv-forest-900); color: var(--bv-cream-200); font-size: 10px; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .cal-more { font-size: 10px; color: var(--color-text-muted); }
  .cal-dots { display: none; }
}

/* Route */
.rt-add { position: relative; }
.rt-add .typeahead { position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 20; }
.next-stop { padding: var(--space-5); display: grid; gap: var(--space-4); border: 1px solid var(--bv-gold-300); background: linear-gradient(180deg, var(--bv-gold-50), var(--color-surface) 60%); }
.ns-head { display: flex; gap: var(--space-4); align-items: center; }
.ns-head h2 { font-size: var(--text-xl); }
.ns-head .row-meta { margin-top: 6px; }
.ns-actions { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-2); }
.ns-actions .btn-lg { min-height: 52px; }
@media (min-width: 768px) { .ns-actions { display: flex; flex-wrap: wrap; } }
.rt-stop.is-done { opacity: .6; }
.rt-num { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-forest-900); color: var(--bv-cream-200); font: var(--weight-bold) var(--text-xs)/1 var(--font-display); }
.rt-stop.is-done .rt-num { background: var(--bv-green-100); color: var(--bv-forest-700); }

/* ---------- Phase 4: dashboard, reports, import, backups ---------- */
.small { font-size: var(--text-xs); }
.row-wrap { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
a.stat { color: inherit !important; text-decoration: none !important; transition: background var(--dur-fast) var(--ease); }
a.stat:hover { background: var(--bv-cream-100); }
.stat .stat-help { font-size: var(--text-2xs); color: var(--color-text-subtle); }
.kpis-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.kpis-5 > .stat:first-child { grid-column: 1 / -1; border-right: 0; }
@media (min-width: 1024px) {
  .kpis-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .kpis-5 > .stat { border-bottom: 0 !important; border-right: 1px solid var(--color-border-soft) !important; }
  .kpis-5 > .stat:first-child { grid-column: auto; }
  .kpis-5 > .stat:last-child { border-right: 0 !important; }
}
.wk-totals { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-4) var(--space-5); padding-bottom: var(--space-5); margin-bottom: var(--space-4); border-bottom: 1px solid var(--color-border-soft); }
.wk-totals .v { font: var(--weight-black) var(--text-2xl)/1 var(--font-display); font-variant-numeric: tabular-nums; margin-top: 6px; }
.delta { display: block; margin-top: 4px; font-size: var(--text-2xs); font-weight: var(--weight-semi); color: var(--color-text-muted); }
.delta.up { color: var(--color-success); }
.delta.down { color: var(--color-danger); }
.wk-split { display: grid; gap: var(--space-6); margin-top: var(--space-5); }
.wk-split .eyebrow { margin-bottom: var(--space-3); }
.legend { margin-bottom: var(--space-2); }
@media (min-width: 768px) { .wk-totals { grid-template-columns: repeat(4, 1fr); } .wk-split { grid-template-columns: 1fr 1fr; } }
.dash-mini-tabs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: var(--space-3) var(--space-5); font-size: var(--text-xs); color: var(--color-text-muted); border-bottom: 1px solid var(--color-border-soft); }
.dash-mini-tabs .count + .count, .dash-mini-tabs .count { margin-left: 6px; }
a.appt { display: grid; grid-template-columns: 56px 1fr; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); color: inherit !important; text-decoration: none !important; }
a.appt:first-child { border-top: 0; }
a.appt:hover { background: var(--bv-cream-100); }
a.appt .time { text-align: center; padding: 6px 0; border-radius: var(--radius-md); background: var(--bv-cream-200); }
a.appt .time b { display: block; font: var(--weight-black) var(--text-md)/1.1 var(--font-display); }
a.appt .time span { font-size: var(--text-2xs); color: var(--color-text-muted); font-weight: var(--weight-semi); }
.hbar > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 520px) { .hbar { grid-template-columns: 96px 1fr 32px; } }

.report-grid { display: grid; gap: var(--space-5); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .report-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mini-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: var(--space-3); }
.mini-stats > div { display: grid; gap: 2px; padding: var(--space-3); border-radius: var(--radius-md); background: var(--bv-cream-100); }
.mini-stats b { font: var(--weight-black) var(--text-2xl)/1 var(--font-display); }
.mini-stats b.danger { color: var(--color-danger); }
.mini-stats span { font-size: var(--text-xs); color: var(--color-text-muted); }
.mini-rates { display: flex; flex-wrap: wrap; gap: var(--space-5); margin-top: var(--space-4); font-size: var(--text-sm); color: var(--color-text-muted); }
.mini-rates b { color: var(--color-text); font-family: var(--font-display); }
.filter-chips span.fchip { cursor: pointer; }

/* Import wizard */
.steps { list-style: none; margin: 0; padding: 0; display: flex; gap: var(--space-2); flex-wrap: wrap; }
.steps li { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 6px; border-radius: var(--radius-pill); background: var(--color-surface-sunk); font-size: var(--text-sm); font-weight: var(--weight-semi); color: var(--color-text-muted); }
.steps li span { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--color-surface); font-size: var(--text-xs); }
.steps li.is-current { background: var(--bv-forest-900); color: #fff; }
.steps li.is-current span { background: var(--bv-gold-500); color: var(--bv-forest-950); }
.steps li.is-done span { background: var(--bv-green-100); color: var(--bv-forest-700); }
.dropzone { display: grid; justify-items: center; gap: 6px; padding: var(--space-10) var(--space-4); border: 2px dashed var(--color-border-strong); border-radius: var(--radius-lg); text-align: center; cursor: pointer; background: var(--bv-cream-100); }
.dropzone:hover { border-color: var(--bv-gold-500); }
.dropzone .icon { color: var(--bv-gold-600); width: 32px; height: 32px; }
.map-list { display: grid; }
.map-row { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); }
.map-row:first-child { border-top: 0; }
.map-src { display: grid; min-width: 0; }
.map-src .muted { font-size: var(--text-xs); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.map-arrow { color: var(--bv-gold-600); }
@media (max-width: 600px) { .map-row { grid-template-columns: 1fr; gap: 6px; } .map-arrow { display: none; } }
.pv-summary { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.pv-chip { display: inline-flex; align-items: baseline; gap: 6px; padding: 8px 14px; border: 1px solid var(--color-border); border-radius: var(--radius-pill); background: var(--color-surface); cursor: pointer; font: inherit; font-size: var(--text-sm); color: var(--color-text-muted); }
.pv-chip b { font: var(--weight-black) var(--text-lg)/1 var(--font-display); color: var(--color-text); }
.pv-chip.ok b { color: var(--color-success); } .pv-chip.dup b { color: var(--color-warning); } .pv-chip.err b { color: var(--color-danger); }
.pv-chip.is-on { border-color: var(--bv-forest-900); box-shadow: inset 0 0 0 1px var(--bv-forest-900); }
.dup-mode { border: 1px solid var(--color-border-soft); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4) var(--space-4); margin: 0; display: grid; gap: var(--space-2); }
.dup-mode legend { padding: 0 6px; font-weight: var(--weight-bold); }
.dup-mode .check { align-items: flex-start; font-size: var(--text-sm); }
.confirm-update { padding: var(--space-2) var(--space-3); border-radius: var(--radius-sm); background: var(--color-warning-bg); }
.pv-list { display: grid; }
.pv-row { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: var(--space-3); align-items: start; padding: var(--space-3) var(--space-4); border-top: 1px solid var(--color-border-soft); font-size: var(--text-sm); }
.pv-row:first-child { border-top: 0; }
.pv-n { color: var(--color-text-subtle); font-variant-numeric: tabular-nums; }
.pv-badge { font-size: var(--text-2xs); font-weight: var(--weight-bold); padding: 3px 8px; border-radius: var(--radius-pill); background: var(--color-success-bg); color: var(--color-success); }
.pv-row.is-duplicate .pv-badge { background: var(--color-warning-bg); color: var(--color-warning); }
.pv-row.is-error .pv-badge { background: var(--color-danger-bg); color: var(--color-danger); }
.wizard-nav { display: flex; flex-wrap: wrap; gap: var(--space-2); justify-content: flex-end; }

/* Backups */
.data-actions { display: flex; flex-wrap: wrap; gap: var(--space-2); }
@media (max-width: 767px) { .data-actions { display: grid; } }
.danger-zone { border-color: #EDC9C0; }
.danger-zone summary { color: var(--color-danger); }

/* ---------- Automation system ---------- */
.input.sm, .select.sm { min-height: 36px; font-size: var(--text-sm); width: auto; }
.bell { position: relative; }
.bell-count { position: absolute; top: 2px; right: 2px; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #B5462F; color: #fff; font: var(--weight-bold) 10px/18px var(--font-body); text-align: center; border: 2px solid var(--color-bg); }
.notif-list { display: grid; gap: 2px; }
.notif { display: flex; gap: var(--space-3); align-items: flex-start; width: 100%; padding: var(--space-3); border: 0; border-radius: var(--radius-md); background: none; text-align: left; cursor: pointer; font: inherit; color: var(--color-text); }
.notif:hover { background: var(--bv-cream-100); }
.notif.is-unread { background: var(--bv-gold-50); }
.notif-ico { width: 32px; height: 32px; flex: none; border-radius: 50%; display: grid; place-items: center; background: var(--bv-cream-200); color: var(--bv-forest-700); }
.notif-ico.t-overdue, .notif-ico.t-hot, .notif-ico.t-failed { background: var(--color-danger-bg); color: var(--color-danger); }
.notif-text { display: grid; gap: 2px; font-size: var(--text-sm); }
.notif-text small { font-size: var(--text-xs); color: var(--color-text-muted); }

/* Your day */
.sum-chips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2); margin-bottom: var(--space-4); }
@media (min-width: 768px) { .sum-chips { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .sum-chips { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.sum-chip { display: grid; gap: 2px; padding: var(--space-3) var(--space-4); border-radius: var(--radius-lg); background: var(--color-surface); border: 1px solid var(--color-border-soft); box-shadow: var(--shadow-xs); color: inherit !important; text-decoration: none !important; }
.sum-chip b { font: var(--weight-black) var(--text-2xl)/1 var(--font-display); font-variant-numeric: tabular-nums; }
.sum-chip span { font-size: var(--text-xs); color: var(--color-text-muted); }
.sum-chip.warn b { color: var(--color-warning); } .sum-chip.danger b { color: var(--color-danger); }
.sum-chip.is-zero b { color: var(--bv-ink-300); }
.sum-chip:hover { border-color: var(--bv-gold-300); }
.assist-cols { display: grid; gap: var(--space-5); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .assist-cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); align-items: start; } }
.checklist, .suggest-list { list-style: none; margin: 0; padding: 0; }
.ck-row { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); }
.ck-row:first-child { border-top: 0; }
.ck-box { width: 24px; height: 24px; border-radius: 7px; border: 2px solid var(--c); display: grid; place-items: center; color: #fff; }
.ck-row.is-done .ck-box { background: var(--c); }
.ck-main { display: grid; gap: 3px; min-width: 0; font-size: var(--text-sm); }
.ck-main .muted { font-size: var(--text-xs); }
.ck-bar { height: 5px; border-radius: 3px; background: var(--color-surface-sunk); overflow: hidden; }
.ck-bar i { display: block; height: 100%; border-radius: inherit; }
.ck-pct { font: var(--weight-bold) var(--text-sm)/1 var(--font-display); color: var(--color-text-muted); }
.ck-row.is-done .ck-pct { color: var(--color-success); }
.ck-off { padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); }
.suggest { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); font-size: var(--text-sm); }
.suggest:first-child { border-top: 0; }
.sg-ico { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-gold-50); color: var(--bv-gold-700); }
@media (max-width: 520px) { .suggest { grid-template-columns: 32px minmax(0, 1fr); } .suggest .btn { grid-column: 2; justify-self: start; } }

/* Automation center */
.auto-health { display: grid; gap: var(--space-3); }
.ah-row { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.ah-row > div { flex: 1 1 240px; }
.ah-dot { width: 12px; height: 12px; border-radius: 50%; flex: none; }
.ah-dot.ok { background: var(--color-success); box-shadow: 0 0 0 4px var(--bv-green-100); }
.ah-dot.warn { background: var(--color-warning); box-shadow: 0 0 0 4px var(--color-warning-bg); }
code, .copy { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; background: var(--color-surface-sunk); padding: 2px 6px; border-radius: 4px; overflow-wrap: anywhere; user-select: all; }
.auto-grid { display: grid; gap: var(--space-4); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .auto-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.auto-card { background: var(--color-surface); border: 1px solid var(--color-border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); padding: var(--space-4) var(--space-5); display: grid; gap: var(--space-3); align-content: start; }
.auto-card.is-on { border-color: var(--bv-green-200); }
.auto-head { display: flex; align-items: flex-start; gap: var(--space-3); }
.auto-ico { width: 32px; height: 32px; border-radius: var(--radius-md); display: grid; place-items: center; background: var(--color-surface-sunk); color: var(--color-text-muted); flex: none; }
.auto-card.is-on .auto-ico { background: var(--bv-forest-900); color: var(--bv-gold-500); }
.auto-title { flex: 1; min-width: 0; }
.auto-title h3 { font-size: var(--text-md); }
.auto-title .row-meta { margin-top: 4px; }
.auto-desc { font-size: var(--text-sm); color: var(--color-text-muted); }
.auto-fields { display: flex; flex-wrap: wrap; gap: var(--space-3); padding-top: var(--space-3); border-top: 1px dashed var(--color-border); }
.auto-field { display: inline-flex; align-items: center; gap: 8px; font-size: var(--text-sm); color: var(--bv-ink-700); flex-wrap: wrap; }
.auto-field .input.sm[type=number] { width: 76px; }
.auto-field.wide { display: grid; width: 100%; gap: 6px; }
.auto-field.wide .input { width: 100%; }
.seq-grid { display: grid; gap: var(--space-2); grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); width: 100%; }
.seq-grid .auto-field { display: grid; gap: 4px; }
.seq-grid .input { width: 100%; }
.hist-list { display: grid; }
.hist-row { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: var(--space-3); padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); font-size: var(--text-sm); }
.hist-row:first-child { border-top: 0; }
.hist-status { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-green-100); color: var(--bv-forest-700); }
.hist-row.is-error .hist-status { background: var(--color-danger-bg); color: var(--color-danger); }
.hist-title { font-weight: var(--weight-semi); }
.hist-row.is-error .hist-title { color: var(--color-danger); }
.hist-msg { color: var(--bv-ink-700); overflow-wrap: anywhere; }

/* Lead sequence + alerts + settings */
.seq-state { font-weight: var(--weight-semi); }
.seq-state.is-paused { color: var(--color-warning); }
.seq-state.is-stopped, .seq-state.is-auto_stopped { color: var(--color-danger); }
.alert-card { border-left: 3px solid var(--color-warning); }
.pref-table { width: 100%; border-collapse: collapse; font-size: var(--text-sm); }
.pref-table th { text-align: left; font-size: var(--text-2xs); text-transform: uppercase; letter-spacing: var(--tracking-caps); color: var(--color-text-muted); padding: 6px 8px; border-bottom: 1px solid var(--color-border); }
.pref-table td { padding: 10px 8px; border-bottom: 1px solid var(--color-border-soft); }
.pref-table th:not(:first-child), .pref-table td:not(:first-child) { text-align: center; width: 72px; }
.pref-table input { width: 20px; height: 20px; accent-color: var(--bv-forest-700); }
.phone-box { display: grid; gap: var(--space-3); padding: var(--space-4); border-radius: var(--radius-md); background: var(--bv-cream-100); }
.phone-box h3 { font-size: var(--text-md); }
.phone-box ol { margin: 8px 0 0; padding-left: 18px; }
.device-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.device-list li { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); padding: 8px 10px; background: var(--color-surface); border-radius: var(--radius-sm); font-size: var(--text-sm); }

/* ---------- Reporting & Export Center ---------- */
.report-tabs { margin-top: calc(var(--space-2) * -1); }
.report-tabs .tab-link { position: relative; display: inline-flex; align-items: center; min-height: 42px; padding: 0 var(--space-3); font: var(--weight-semi) var(--text-sm)/1 var(--font-body); color: var(--color-text-muted) !important; text-decoration: none !important; white-space: nowrap; }
.report-tabs .tab-link[aria-selected="true"] { color: var(--color-text) !important; }
.report-tabs .tab-link[aria-selected="true"]::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: -1px; height: 2px; background: var(--bv-gold-500); border-radius: 2px; }
.rep-grid { display: grid; gap: var(--space-3); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .rep-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.rep-card { display: grid; gap: var(--space-3); padding: var(--space-4); background: var(--color-surface); border: 1px solid var(--color-border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); align-content: space-between; }
.rep-main { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: var(--space-3); color: inherit !important; text-decoration: none !important; }
.rep-main h3 { font-size: var(--text-md); }
.rep-main p { margin: 3px 0 6px !important; }
.rep-ico { width: 36px; height: 36px; border-radius: var(--radius-md); display: grid; place-items: center; background: var(--bv-forest-900); color: var(--bv-gold-500); }
.rep-actions { display: grid; gap: var(--space-2); padding-top: var(--space-3); border-top: 1px dashed var(--color-border); }
.dl-group { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.view-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-3); }
.rr-meta { margin-bottom: calc(var(--space-2) * -1); }
.rr-cards { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
.rr-card { display: grid; gap: 2px; padding: var(--space-3) var(--space-4); border-radius: var(--radius-md); background: var(--bv-cream-100); border-left: 3px solid var(--bv-gold-500); }
.rr-card b { font: var(--weight-black) var(--text-2xl)/1.1 var(--font-display); color: var(--bv-forest-900); overflow-wrap: anywhere; }
.rr-card span { font-size: var(--text-xs); color: var(--color-text-muted); }
.rr-card small { font-size: var(--text-2xs); color: var(--color-text-subtle); }
.rr-scroll { overflow-x: auto; }
.rr-table { min-width: 600px; }
.rr-table .num-col { text-align: right; font-variant-numeric: tabular-nums; }
.rr-table tr.rr-group td { background: var(--bv-gold-50); color: var(--bv-gold-700); font-weight: var(--weight-bold); }
.pie-wrap { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-5); }
.pie { width: 160px; height: 160px; flex: none; }
.pie-total { font: var(--weight-black) 22px var(--font-display); fill: var(--color-text); }
.pie-sub { font: var(--weight-medium) 10px var(--font-body); fill: var(--color-text-muted); }
.pie-legend { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; flex: 1 1 200px; font-size: var(--text-sm); }
.pie-legend li { display: grid; grid-template-columns: 12px minmax(0, 1fr) auto 40px; gap: 8px; align-items: center; }
.pie-legend i { width: 12px; height: 12px; border-radius: 3px; }
.pie-legend .muted { text-align: right; font-size: var(--text-xs); }
.builder h2 { font-size: var(--text-md); }
.col-order { list-style: decimal inside; margin: 8px 0 0; padding: 0; display: grid; gap: 4px; }
.col-order li { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 4px 4px 4px 10px; border-radius: var(--radius-sm); background: var(--bv-cream-100); font-size: var(--text-sm); }
.col-order li > span:first-child { flex: 1; }
.seg.seg-wrap { flex-wrap: wrap; }
.sch-card { display: grid; gap: var(--space-3); padding: var(--space-4) var(--space-5); background: var(--color-surface); border: 1px solid var(--color-border-soft); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.sch-card.is-on { border-color: var(--bv-green-200); }
.sch-card .sch-name { width: 100%; font-weight: var(--weight-semi); }
.sch-grid { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); align-items: start; }
.sch-grid .field { gap: 4px; align-content: start; }
.sch-grid .select.sm, .sch-grid .input.sm { width: 100%; }
.sch-actions { padding-top: var(--space-2); border-top: 1px dashed var(--color-border); }
.hist-files { display: grid; }
.hf-row { display: grid; grid-template-columns: 32px minmax(0, 1fr) auto; gap: var(--space-3); align-items: center; padding: var(--space-3) var(--space-5); border-top: 1px solid var(--color-border-soft); font-size: var(--text-sm); }
.hf-row:first-child { border-top: 0; }
.hf-ico { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-green-100); color: var(--bv-forest-700); }
.hf-row.is-error .hf-ico { background: var(--color-danger-bg); color: var(--color-danger); }
.hf-main { display: grid; gap: 3px; min-width: 0; }
.hf-actions { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 640px) { .hf-row { grid-template-columns: 32px minmax(0, 1fr); } .hf-actions { grid-column: 2; justify-content: flex-start; } }
.dr-row { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--color-border-soft); }
.dr-row:last-child { border-bottom: 0; }
.dr-row > span:first-child, .dr-row > a { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.card-body .eyebrow { margin-bottom: 4px; }

/* ---------- Settings ---------- */
.settings { display: grid; gap: var(--space-5); scroll-margin-top: 80px; }
.settings .card { scroll-margin-top: 80px; }
.target-edits { display: grid; gap: 0; padding-top: 0; padding-bottom: 0; }
.target-edit { display: grid; gap: var(--space-3); padding: var(--space-4) 0; border-top: 1px solid var(--color-border-soft); }
.target-edit:first-child { border-top: 0; }
.te-name { display: flex; align-items: center; gap: var(--space-2); }
.te-nums { display: grid; grid-template-columns: repeat(2, 96px); gap: var(--space-3); }
.chips.days { gap: 6px; flex-wrap: nowrap; }
.chip.day { width: 40px; min-width: 40px; padding: 0; justify-content: center; }
@media (min-width: 900px) {
  .target-edit { grid-template-columns: 200px auto 1fr; align-items: end; column-gap: var(--space-6); }
  .te-name { align-self: center; }
  .target-edit > .error-text { grid-column: 1 / -1; }
}
.seq { display: grid; gap: var(--space-2); margin-bottom: var(--space-3); }
.seq-step { display: grid; grid-template-columns: 28px 88px 1fr auto; align-items: center; gap: var(--space-3); font-size: var(--text-sm); }
.seq-n { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-cream-200); color: var(--bv-forest-700); font: var(--weight-bold) var(--text-xs)/1 var(--font-display); }
.lists { display: grid; gap: var(--space-5); }
@media (min-width: 768px) { .lists { grid-template-columns: 1fr 1fr; } }
.save-bar { position: sticky; bottom: calc(var(--bottomnav-h) + env(safe-area-inset-bottom) + 8px); z-index: 20; display: flex; align-items: center; justify-content: space-between; gap: var(--space-3);
  padding: var(--space-3) var(--space-3) var(--space-3) var(--space-5); background: rgba(255, 255, 255, .94); backdrop-filter: blur(8px);
  border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); }
.save-state { font-size: var(--text-sm); color: var(--color-text-muted); }
.save-state.is-dirty { color: var(--color-warning); font-weight: var(--weight-semi); }
@media (min-width: 1024px) { .save-bar { bottom: var(--space-4); } }

/* ======================= AI & Intelligence ======================= */
.intel-grid { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.intel-tool { display: flex; gap: var(--space-3); padding: var(--space-4); text-decoration: none !important; color: var(--color-text) !important; transition: border-color .15s, box-shadow .15s; }
.intel-tool:hover { border-color: var(--bv-gold-500); box-shadow: var(--shadow-md); }
.intel-tool b { display: block; margin-bottom: 2px; }
.intel-tool .tag { margin-top: 6px; }
.intel-two { display: grid; gap: var(--space-4); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .intel-two { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.intel-item { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) 0; border-bottom: 1px solid var(--color-border-soft); color: var(--color-text) !important; text-decoration: none !important; }
.intel-item:last-child { border-bottom: 0; }
.intel-item:hover b { color: var(--bv-forest-700); }
.intel-item-main { flex: 1; min-width: 0; display: grid; gap: 2px; }
.intel-item-main .row-meta { overflow-wrap: anywhere; }
.count-pill { min-width: 28px; height: 24px; padding: 0 8px; display: inline-grid; place-items: center; border-radius: var(--radius-pill); background: var(--bv-gold-100); color: var(--bv-gold-700); font-weight: var(--weight-bold); font-size: var(--text-xs); }
.count-pill.is-zero { background: var(--color-surface-sunk); color: var(--color-text-subtle); }
.sev-high { background: var(--color-danger-bg); color: var(--color-danger); }
.sev-medium { background: var(--color-warning-bg); color: var(--color-warning); }
.sev-low { background: var(--bv-green-50); color: var(--bv-forest-700); }
.rec-group.is-clear { opacity: .75; }
.rec-settings summary, .card-pad > summary { cursor: pointer; }

.score-badge { flex: none; width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; font: var(--weight-bold) var(--text-sm)/1 var(--font-display, inherit); border: 2px solid currentColor; }
.score-badge.is-high { color: var(--bv-forest-700); background: var(--bv-green-50); }
.score-badge.is-medium { color: var(--bv-gold-700); background: var(--bv-gold-50); }
.score-badge.is-low { color: var(--color-text-muted); background: var(--color-surface-sunk); }
.score-badge.is-closed { color: var(--color-text-subtle); background: var(--color-surface-sunk); }
.reasons { display: flex; flex-wrap: wrap; gap: 4px; }
.reason { font-size: var(--text-2xs); padding: 2px 6px; border-radius: var(--radius-xs); background: var(--color-surface-sunk); color: var(--bv-ink-700); }
.reason.is-neg { background: var(--color-danger-bg); color: var(--color-danger); }
.score-line { display: flex; gap: var(--space-3); align-items: flex-start; }
.score-line > div { display: grid; gap: 4px; min-width: 0; }
.score-help { margin: var(--space-3) 0; padding-left: 18px; font-size: var(--text-sm); display: grid; gap: 4px; }

.pz-bar { display: grid; gap: var(--space-3); }
.pz-actions { justify-content: flex-end; }
.pz-list { display: grid; }
.pz-row { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-3) var(--space-4); border-bottom: 1px solid var(--color-border-soft); cursor: pointer; }
.pz-row > input { margin-top: 12px; width: 18px; height: 18px; accent-color: var(--bv-forest-700); flex: none; }
.pz-row:hover { background: var(--color-surface-alt); }
.pz-main { flex: 1; min-width: 0; display: grid; gap: 4px; }
.pz-title { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }

.brief-date { display: grid; gap: 2px; }
.brief-date b { font-size: var(--text-lg); }
.brief-target { display: grid; gap: 6px; font-size: var(--text-sm); }
.brief-target .bar { height: 8px; border-radius: var(--radius-pill); background: var(--color-surface-sunk); overflow: hidden; }
.brief-target .bar span { display: block; height: 100%; background: var(--bv-gold-500); border-radius: inherit; }

.ow-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); }
.picker-wrap { position: relative; }
.picker-list { position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + 4px); max-height: 320px; overflow: auto; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-md); box-shadow: var(--shadow-lg); }
.picker-opt { display: grid; gap: 2px; width: 100%; text-align: left; padding: var(--space-2) var(--space-3); border: 0; border-bottom: 1px solid var(--color-border-soft); background: none; cursor: pointer; font: inherit; color: var(--color-text); }
.picker-opt:hover, .picker-opt:focus { background: var(--color-surface-alt); outline: none; }
.picker-empty { padding: var(--space-3); color: var(--color-text-muted); font-size: var(--text-sm); }
.picker-pill { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); padding: var(--space-2) var(--space-3); border: 1px solid var(--bv-green-200); background: var(--bv-green-50); border-radius: var(--radius-md); }

/* Claude workflow */
.cw .card-header h2 { display: flex; align-items: center; gap: 6px; }
.cw-steps { display: grid; }
.cw-step { display: grid; gap: var(--space-3); padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--color-border-soft); min-width: 0; }
.cw-step:last-child { border-bottom: 0; }
.cw-step-head { display: flex; gap: var(--space-3); align-items: flex-start; }
.cw-num { flex: none; width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--bv-forest-900); color: var(--bv-gold-300); font-weight: var(--weight-bold); font-size: var(--text-xs); }
.cw-blocks { display: grid; gap: var(--space-2); }
.cw-block { border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface-alt); }
.cw-block > summary { display: flex; justify-content: space-between; gap: var(--space-2); padding: var(--space-2) var(--space-3); cursor: pointer; }
.cw-fields { display: grid; border-top: 1px solid var(--color-border-soft); }
.cw-field { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--color-border-soft); cursor: pointer; background: var(--color-surface); }
.cw-field:last-child { border-bottom: 0; border-radius: 0 0 var(--radius-md) var(--radius-md); }
.cw-field input { margin-top: 2px; width: 17px; height: 17px; accent-color: var(--bv-forest-700); flex: none; }
.cw-field.is-off .cw-f-value { text-decoration: line-through; opacity: .5; }
.cw-f-main { display: grid; gap: 2px; min-width: 0; }
.cw-f-label { font-size: var(--text-xs); font-weight: var(--weight-semi); color: var(--bv-ink-700); }
.cw-f-value { font-size: var(--text-sm); white-space: pre-wrap; overflow-wrap: anywhere; max-height: 7.5em; overflow: auto; }
.tag.tag-private { background: var(--color-danger-bg); color: var(--color-danger); height: 18px; font-size: var(--text-2xs); }
.tag.tag-draft { background: var(--color-warning-bg); color: var(--color-warning); }
.tag.tag-sent { background: var(--bv-green-50); color: var(--bv-forest-700); }
.cw-prompt { font: var(--text-xs)/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; background: var(--color-surface-alt); min-height: 160px; }
.cw-response { min-height: 140px; }
.cw-review { display: grid; gap: var(--space-4); min-width: 0; }
.cw-rendered { font-size: var(--text-sm); line-height: 1.6; overflow-wrap: anywhere; min-width: 0; }
.cw-rendered h2, .cw-rendered h3, .cw-rendered h4, .cw-rendered h5 { margin: var(--space-3) 0 var(--space-1); font-size: var(--text-md); }
.cw-rendered p { margin: 0 0 var(--space-2); }
.cw-rendered ul, .cw-rendered ol { margin: 0 0 var(--space-2); padding-left: 20px; }
.cw-rendered code { font-size: .9em; background: var(--color-surface-sunk); padding: 0 4px; border-radius: 4px; }
.cw-review > .cw-rendered { padding: var(--space-4); border: 1px solid var(--color-border); border-radius: var(--radius-md); max-height: 480px; overflow: auto; }
.cw-save, .cw-sugg { display: grid; gap: var(--space-3); padding: var(--space-4); border-radius: var(--radius-md); background: var(--color-surface-alt); border: 1px solid var(--color-border-soft); }
.cw-save h3, .cw-sugg h3 { font-size: var(--text-md); }
.cw-targets { display: grid; gap: 6px; }
.cw-sg { display: flex; gap: var(--space-3); align-items: flex-start; padding: var(--space-2) var(--space-3); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius-sm); font-size: var(--text-sm); cursor: pointer; flex-wrap: wrap; }
.cw-sg input { margin-top: 3px; width: 17px; height: 17px; accent-color: var(--bv-forest-700); }
.cw-sg > span { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.cw-sg.is-bad { opacity: .7; cursor: default; }
.cw-sg.is-done { border-color: var(--bv-green-200); background: var(--bv-green-50); }
.cw-sg.is-done > span::after { content: " ✓ Applied"; color: var(--bv-forest-700); font-weight: var(--weight-semi); }

/* Insights */
.insight { display: grid; gap: var(--space-2); padding: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); min-width: 0; }
.insight.is-draft { border-color: #F1DDB2; background: #FFFCF4; }
.insight-head { display: flex; gap: var(--space-3); align-items: flex-start; }
.insight-title { min-width: 0; display: grid; gap: 4px; }
.insight-title .row-meta { flex-wrap: wrap; gap: 6px; }
.insight-body > summary { cursor: pointer; font-size: var(--text-xs); font-weight: var(--weight-semi); color: var(--color-link); }
.insight-body .cw-rendered { margin-top: var(--space-2); max-height: 360px; overflow: auto; }
.insights-card .card-header h2 { display: flex; align-items: center; gap: 6px; }

/* ======================= Google Calendar ======================= */
#gcal .card-header h2 { display: flex; align-items: center; gap: 6px; }
.gc-pill { display: inline-flex; align-items: center; gap: 4px; height: 26px; padding: 0 10px; border-radius: var(--radius-pill); font-size: var(--text-xs); font-weight: var(--weight-semi); white-space: nowrap; background: var(--color-surface-sunk); color: var(--color-text-muted); }
.gc-pill.sm { height: 22px; padding: 0 8px; font-size: var(--text-2xs); }
.gc-pill.is-on { background: var(--bv-green-50); color: var(--bv-forest-700); }
.gc-pill.is-warn { background: var(--color-warning-bg); color: var(--color-warning); }
.gc-pill.is-bad { background: var(--color-danger-bg); color: var(--color-danger); }
.gc-setup { border: 1px solid var(--color-border); border-radius: var(--radius-md); padding: var(--space-3) var(--space-4); background: var(--color-surface-alt); }
.gc-setup > summary { cursor: pointer; }
.gc-uri { font-size: var(--text-xs); padding: 6px 8px; border-radius: var(--radius-sm); background: var(--color-surface); border: 1px solid var(--color-border); overflow-wrap: anywhere; min-width: 0; }
.gc-main .dl > div { grid-template-columns: minmax(96px, 140px) minmax(0, 1fr); align-items: center; }
.gc-main .dl .select { width: 100%; max-width: 320px; min-width: 0; }
.gc-line { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: center; }
.gc-conflicts { display: grid; gap: var(--space-3); padding: var(--space-4); border-radius: var(--radius-md); border: 1px solid #EDC9C0; background: #FFF8F6; }
.gc-conflicts h3 { display: flex; align-items: center; gap: 6px; font-size: var(--text-md); color: var(--color-danger); }
.gc-conflict { display: grid; gap: var(--space-2); }
.gc-versions { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.gc-ver { display: grid; gap: 4px; align-content: start; padding: var(--space-3); border: 1px solid var(--color-border); border-radius: var(--radius-md); background: var(--color-surface); font-size: var(--text-sm); }
.gc-ver .btn { justify-self: start; margin-top: 6px; }
.gc-notes { white-space: pre-wrap; max-height: 6em; overflow: auto; }
.appt-row.is-busy { opacity: .8; background: repeating-linear-gradient(135deg, transparent 0 8px, var(--color-surface-sunk) 8px 16px); }
.cal-chip.is-busy { background: var(--color-surface-sunk); color: var(--color-text-muted); }

/* ======================= POS & Equipment ======================= */
.pos-bar { display: grid; gap: var(--space-3); }
.pos-grid { display: grid; gap: var(--space-4); grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); padding-bottom: 72px; }
.pos-card { display: grid; gap: var(--space-2); padding: var(--space-4); align-content: start; transition: box-shadow .15s, border-color .15s; }
.pos-card:hover { box-shadow: var(--shadow-md); border-color: var(--bv-ink-300); }
.pos-card.is-offering, .match-card.is-offering { border-color: var(--bv-gold-500); box-shadow: 0 0 0 1px var(--bv-gold-300) inset; }
.pos-card-top { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.pos-card-top .fav { margin-left: auto; color: var(--color-text-subtle); }
.fav.is-on { color: var(--bv-gold-600); }
.fav.is-on svg { fill: currentColor; }
.pos-card-title { display: grid; gap: 2px; color: var(--color-text) !important; text-decoration: none !important; }
.pos-card-title b { font-size: var(--text-md); }
.pos-desc { font-size: var(--text-sm); color: var(--color-text-muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pos-prices { display: grid; gap: 4px; }
.price-line { display: flex; justify-content: space-between; gap: var(--space-2); font-size: var(--text-xs); padding: 4px 8px; border-radius: var(--radius-xs); background: var(--color-surface-alt); border-left: 3px solid var(--bv-forest-600); }
.price-line span { color: var(--color-text-muted); min-width: 0; overflow-wrap: anywhere; }
.price-line b { white-space: nowrap; }
.price-line.is-quote, .price-row.is-quote { border-left-color: var(--bv-gold-500); }
.price-line.is-est, .price-row.is-est { border-left-color: var(--bv-ink-400); border-left-style: dashed; }
.price-key { display: inline-block; padding: 0 6px; border-left: 3px solid var(--bv-forest-600); font-size: var(--text-2xs); }
.price-key.is-quote { border-left-color: var(--bv-gold-500); }
.price-key.is-est { border-left: 3px dashed var(--bv-ink-400); }
.price-row { display: flex; justify-content: space-between; gap: var(--space-3); padding: var(--space-2) var(--space-3); border-left: 3px solid var(--bv-forest-600); background: var(--color-surface-alt); border-radius: var(--radius-sm); }
.price-row > div { min-width: 0; }
.pos-card-foot { display: flex; justify-content: space-between; align-items: center; gap: var(--space-2); flex-wrap: wrap; margin-top: auto; padding-top: var(--space-2); border-top: 1px solid var(--color-border-soft); }
.tag.tag-offer { background: var(--bv-forest-900); color: var(--bv-gold-300); }
.feat-grid { display: grid; gap: 6px; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); }
.feat { display: flex; justify-content: space-between; gap: var(--space-2); padding: 6px 10px; border-radius: var(--radius-sm); font-size: var(--text-sm); background: var(--color-surface-alt); }
.feat.is-yes b, td.is-yes, .match-line.is-yes { color: var(--bv-forest-700); }
.feat.is-no b, td.is-no, .match-line.is-no { color: var(--color-danger); }
.feat.is-plan b, td.is-plan, .match-line.is-plan { color: var(--color-warning); }
.feat.is-unk { opacity: .6; }
td.is-unk, .match-line.is-unk { color: var(--color-text-subtle); }
.src-link { font-size: var(--text-sm); overflow-wrap: anywhere; }
.cmp-tray { position: fixed; z-index: 40; left: 50%; transform: translateX(-50%); bottom: calc(var(--space-4) + 64px); display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) var(--space-3) var(--space-2) var(--space-4); border-radius: var(--radius-pill); background: var(--bv-forest-900); color: var(--bv-white); box-shadow: var(--shadow-lg); max-width: calc(100vw - 32px); }
.cmp-tray .btn-ghost { color: var(--bv-cream-200) !important; }
.cmp-tray .cmp-count, .cmp-tray .btn { white-space: nowrap; font-size: var(--text-sm); }
.cmp-tray .is-disabled { opacity: .5; pointer-events: auto; }
@media (min-width: 1024px) { .cmp-tray { bottom: var(--space-6); } }
.cmp-card { overflow: hidden; }
.cmp-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.cmp-table { width: 100%; border-collapse: separate; border-spacing: 0; font-size: var(--text-sm); }
.cmp-table th, .cmp-table td { padding: var(--space-2) var(--space-3); border-bottom: 1px solid var(--color-border-soft); text-align: left; vertical-align: top; min-width: 170px; max-width: 320px; overflow-wrap: anywhere; }
.cmp-table thead th { position: sticky; top: 0; background: var(--color-surface); z-index: 2; border-bottom: 2px solid var(--color-border); }
.cmp-table thead th .btn { margin-top: 4px; padding-left: 0; }
.cmp-table .cmp-attr { position: sticky; left: 0; z-index: 1; background: var(--color-surface); min-width: 130px; max-width: 160px; font-weight: var(--weight-semi); color: var(--bv-ink-700); box-shadow: 1px 0 0 var(--color-border-soft); }
.cmp-table thead .cmp-attr { z-index: 3; }
.cmp-table .cmp-group th { background: var(--color-surface-sunk); font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .04em; color: var(--color-text-muted); position: sticky; left: 0; }
.cmp-table tr.is-diff td { background: #FFFBEF; }
.cmp-table tr.is-diff .cmp-attr { background: #FFF6DE; }
.diff-dot { color: var(--bv-gold-600); font-weight: var(--weight-bold); }
.grow { flex: 1; }
.chip-checks { display: flex; flex-wrap: wrap; gap: 6px 14px; margin-top: 6px; }
.match-grid { display: grid; gap: var(--space-3); grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.match-card { display: grid; gap: var(--space-2); padding: var(--space-4); align-content: start; }
.match-head { display: flex; justify-content: space-between; gap: var(--space-2); align-items: flex-start; }
.match-line { display: flex; gap: 6px; font-size: var(--text-sm); align-items: flex-start; }
.match-line .icon { flex: none; margin-top: 2px; }
.fit { font-size: var(--text-2xs); font-weight: var(--weight-bold); padding: 3px 8px; border-radius: var(--radius-pill); white-space: nowrap; }
.fit.is-strong { background: var(--bv-green-50); color: var(--bv-forest-700); }
.fit.is-possible { background: var(--color-warning-bg); color: var(--color-warning); }
.fit.is-weak { background: var(--color-surface-sunk); color: var(--color-text-muted); }
.pos-edit .feat-edit { display: grid; gap: var(--space-2); grid-template-columns: repeat(auto-fill, minmax(min(100%, 200px), 1fr)); margin-top: 8px; }
.price-edit { display: grid; gap: 6px; margin: 6px 0; }
.price-edit-row { display: grid; gap: 6px; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr) auto; align-items: center; }
@media (max-width: 720px) { .price-edit-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; } }
.sv-row { display: flex; justify-content: space-between; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.sv-main { min-width: 0; flex: 1; }
.offer-box { padding: var(--space-4); border-radius: var(--radius-md); border: 1px solid var(--bv-gold-300); background: var(--bv-gold-50); display: grid; gap: var(--space-3); }
.offer-box h3 { font-size: var(--text-md); }
.pos-biz .card-header h2 { display: flex; align-items: center; gap: 6px; }
.pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.wake-panel > summary { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); cursor: pointer; }
.wake-panel ol { padding-left: 18px; display: grid; gap: 4px; }
