
/* Bold Outdoors Theme v1.0.22 — Theme Sprints A-C
   Theme-owned public parity, Plant Database Pro, and Landscape Design Portal UI layer. */
:root {
  --bo-sprint-container: 1200px;
  --bo-sprint-green: var(--bov2-primary, #556955);
  --bo-sprint-blue: var(--bov2-accent, #2f6f95);
  --bo-sprint-cream: #f7f4ed;
  --bo-sprint-card-radius: 18px;
  --bo-sprint-shadow: 0 18px 44px rgba(22, 38, 25, .12);
  
}
html { scroll-padding-top: var(--bo-header-offset); }

.bov2-public-parity-page .bom-pb-container,
.bov2-public-parity-page .bov2-container,
.bo-theme-sprint-container { max-width: var(--bo-sprint-container); margin-inline: auto; }
.bo-section-surface--green { background: var(--bo-sprint-green); color: #fff; }
.bo-section-surface--green :where(h1,h2,h3,h4,p,li,a,span) { color: inherit; }
.bo-section-surface--cream { background: var(--bo-sprint-cream); }
.bo-card-hover-overlay { position: relative; overflow: hidden; border-radius: var(--bo-sprint-card-radius); box-shadow: var(--bo-sprint-shadow); }
.bo-card-hover-overlay::after { content:""; position:absolute; inset:0; background:rgba(32,49,33,.62); opacity:0; transition:opacity .22s ease; pointer-events:none; }
.bo-card-hover-overlay:hover::after, .bo-card-hover-overlay:focus-within::after { opacity:1; }
.bo-card-favorite-action { position:absolute; top:14px; right:14px; z-index:3; width:42px; height:42px; border-radius:999px; border:1px solid rgba(255,255,255,.7); background:rgba(255,255,255,.94); color:var(--bo-sprint-green); display:inline-grid; place-items:center; cursor:pointer; }
.bo-card-favorite-action.is-active { background:var(--bo-sprint-green); color:#fff; }
.bo-plant-filter-shell { display:grid; grid-template-columns:minmax(240px, 300px) 1fr; gap:28px; align-items:start; }
.bo-plant-filter-panel { background:#fff; border:1px solid rgba(85,105,85,.18); border-radius:18px; padding:20px; box-shadow:0 10px 30px rgba(0,0,0,.06); position:sticky; top:calc(var(--bo-header-offset) + 20px); }
.bo-plant-results-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.bo-plant-compare-bar { position:sticky; bottom:18px; z-index:20; max-width:var(--bo-sprint-container); margin:24px auto 0; background:#fff; border:1px solid rgba(85,105,85,.24); border-radius:18px; box-shadow:var(--bo-sprint-shadow); padding:14px 18px; display:none; }
.bo-plant-compare-bar.is-visible { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.bo-ldp-dashboard-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:20px; }
.bo-ldp-card { background:#fff; border:1px solid rgba(85,105,85,.18); border-radius:18px; padding:22px; box-shadow:0 12px 32px rgba(20,35,24,.08); }
.bo-ldp-status { display:inline-flex; align-items:center; gap:8px; border-radius:999px; padding:6px 12px; font-size:12px; font-weight:700; background:rgba(85,105,85,.1); color:var(--bo-sprint-green); }
.bo-ldp-viewer-shell { display:grid; grid-template-columns:1fr 340px; gap:24px; min-height:620px; }
.bo-ldp-pdf-stage { background:#2b2d2f; border-radius:18px; min-height:620px; overflow:hidden; position:relative; }
.bo-ldp-annotation-pin { position:absolute; width:28px; height:28px; border-radius:999px; border:2px solid #fff; background:var(--bo-sprint-blue); color:#fff; display:grid; place-items:center; font-weight:800; box-shadow:0 10px 25px rgba(0,0,0,.25); }
.bo-ldp-comments-panel { background:#fff; border:1px solid rgba(85,105,85,.18); border-radius:18px; padding:18px; overflow:auto; }
@media (max-width: 900px) {
  .bo-plant-filter-shell, .bo-ldp-viewer-shell { grid-template-columns:1fr; }
  .bo-plant-filter-panel { position:static; }
  .bo-ldp-dashboard-grid { grid-template-columns:1fr; }
}
