
/* =========================================================
   V156 ITEM 19 — CONTROLLED UI/TEXT-ONLY FINAL OWNERSHIP
   This stylesheet is intentionally loaded last.
   It does not alter application logic, IDs, storage, APIs,
   recommendation state, auth, map state, or event handlers.
   ========================================================= */

:root{
  --v156-border:#c45f36;
  --v156-dark:#111312;
  --v156-dark-2:#181b19;
  --v156-light:#f7f3ed;
  --v156-light-2:#eee7de;
  --v156-muted-light:#d9d2c9;
  --v156-muted-dark:#514b45;
}

/* Permanent visual contract: navigation + app cards/panels. */
body.v78-atlas .bottomnav{
  border:2px solid var(--v156-border)!important;
}
body.v78-atlas :is(
  .current-card,.region4-water-card,.scan-dock,.quick-context-card,
  .water-readout,.analyze-ready,.trip-tool-card,#catchLogCard,
  .pin-photo-card,.learning-feedback-card,.trip-tool-output,
  .strata-move-card,.strata-option-drawer,.logbook-entry,.historyItem,
  .account-card,.learning-privacy-card,.saved-trip-item,.trip-brief-section,
  .playbook-column,.field-pick,.recCard
){
  border-color:var(--v156-border)!important;
}

/* Shared readable controls. */
body.v78-atlas :is(input,select,textarea,button){
  max-width:100%;
  box-sizing:border-box;
}
body.v78-atlas :is(select,input,textarea){
  font-size:max(14px,.92rem);
}
body.v78-atlas :is(.tiny,.sub,small){
  line-height:1.42;
}

/* ---------------- MY PLAN ---------------- */
body.v78-atlas #recommendations{
  font-size:15px;
}
body.v78-atlas #recommendations .premium-plan-hero{
  padding-top:2px!important;
  padding-bottom:10px!important;
}
body.v78-atlas #recommendations .premium-brand-picker{
  margin-top:0!important;
}
body.v78-atlas #recommendations :is(
  .premium-brand-copy,#brandSelectNote,.plan-photo-status,.strata-move-card p,
  .strata-change-trigger,.strata-alternative-strip,.strata-qualified-control
){
  font-size:13px!important;
  line-height:1.42!important;
}
body.v78-atlas #recommendations #brandSelect{
  min-height:46px!important;
  font-size:15px!important;
  font-weight:800!important;
}
body.v78-atlas #recommendations .playbook-layout{
  gap:12px!important;
  padding:12px!important;
}
body.v78-atlas #recommendations .playbook-column{
  padding:14px!important;
  min-width:0!important;
}
body.v78-atlas #recommendations .column-tab{
  font-size:15px!important;
  font-weight:900!important;
}
body.v78-atlas #recommendations .field-pick{
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:10px!important;
  padding:11px!important;
}
body.v78-atlas #recommendations .field-pick :is(p,span,small,strong,b){
  line-height:1.42!important;
}
body.v78-atlas #recommendations .strata-move-card{
  min-width:0!important;
}
body.v78-atlas #recommendations .strata-move-card>p{
  color:#e4ded6!important;
}
body.v78-atlas #recommendations .strata-move-config{
  background:var(--v156-light-2)!important;
  color:#211e1b!important;
}
body.v78-atlas #recommendations .strata-move-config :is(span,b,strong,small){
  color:#211e1b!important;
}
body.v78-atlas #recommendations .strata-qualified-control>span{
  color:#f3eee8!important;
}
body.v78-atlas #recommendations .strata-qualified-select{
  min-height:44px!important;
}

/* Bigger Bass: prominent through hierarchy, not wasted height. */
body.v78-atlas #recommendations .strata-bigger-bass{
  margin-top:16px!important;
  padding:0!important;
  border:2px solid var(--v156-border)!important;
  border-radius:10px!important;
  overflow:hidden!important;
  background:var(--v156-dark)!important;
  color:#f7f2ec!important;
}
body.v78-atlas #recommendations .strata-bigger-bass-banner{
  padding:12px 14px!important;
  background:linear-gradient(110deg,#1a1c1b,#24201d)!important;
  color:#fff!important;
  border-bottom:1px solid var(--v156-border)!important;
}
body.v78-atlas #recommendations .strata-bigger-bass-banner :is(span,h3,strong,b){
  color:#fff!important;
}
body.v78-atlas #recommendations .strata-bigger-bass-head{
  padding:9px 12px!important;
  background:#171918!important;
  color:#f0e9e1!important;
}
body.v78-atlas #recommendations .strata-bigger-bass-head :is(b,span){
  color:inherit!important;
}
body.v78-atlas #recommendations .strata-bigger-moves{
  display:grid!important;
  gap:10px!important;
  padding:10px!important;
}
body.v78-atlas #recommendations .strata-bigger-move{
  padding:11px 12px!important;
  background:#111312!important;
  color:#f5f0ea!important;
  border:1px solid #5d5149!important;
  border-left:3px solid var(--v156-border)!important;
  border-radius:8px!important;
}
body.v78-atlas #recommendations .strata-bigger-move :is(p,span,strong,b,small,summary){
  color:inherit!important;
}
body.v78-atlas #recommendations .strata-bigger-move>p{
  color:#ddd6ce!important;
}
body.v78-atlas #recommendations .strata-bigger-config{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  margin:8px 0!important;
}
body.v78-atlas #recommendations .strata-bigger-config>div{
  min-height:0!important;
  padding:9px 10px!important;
  background:var(--v156-light-2)!important;
  color:#211e1b!important;
  border:1px solid #d4c6b8!important;
  border-radius:7px!important;
}
body.v78-atlas #recommendations .strata-bigger-config>div :is(span,b,small){
  color:#211e1b!important;
}
body.v78-atlas #recommendations .strata-bigger-product,
body.v78-atlas #recommendations .strata-bigger-location,
body.v78-atlas #recommendations .strata-bigger-basis{
  margin-top:7px!important;
}
body.v78-atlas #recommendations .strata-bigger-note{
  padding:0 12px 11px!important;
  color:#d8d0c8!important;
}

/* ---------------- SAVED TRIPS / MY FISHING ---------------- */
body.v78-atlas :is(#trips,#history) .saved-trip-item{
  background:var(--ui-surface)!important;
  color:var(--ui-text-dark)!important;
  border:1px solid var(--v156-border)!important;
  border-left-width:3px!important;
}
body.v78-atlas :is(#trips,#history) .saved-trip-item :is(
  h1,h2,h3,h4,p,span,strong,b,small,label,summary,em
){
  color:var(--ui-text-dark)!important;
}
body.v78-atlas :is(#trips,#history) .saved-trip-item :is(.saved-trip-date,.saved-trip-meta,small){
  color:var(--ui-muted-dark)!important;
}
body.v78-atlas :is(#trips,#history) .saved-trip-bigger{
  background:color-mix(in srgb,var(--ui-accent) 8%,var(--ui-surface))!important;
  color:var(--ui-text-dark)!important;
  border-left:3px solid var(--v156-border)!important;
}
body.v78-atlas #history .history-device-note{
  max-width:980px;
  font-size:13px!important;
  line-height:1.45!important;
}
body.v78-atlas #history .historyItem,
body.v78-atlas #history .logbook-entry{
  background:var(--ui-surface)!important;
  color:var(--ui-text-dark)!important;
}
body.v78-atlas #history .historyItem :is(p,span,small),
body.v78-atlas #history .logbook-entry :is(p,span,small){
  color:var(--ui-muted-dark)!important;
}
body.v78-atlas #history .historyItem :is(h3,strong,b),
body.v78-atlas #history .logbook-entry :is(h3,strong,b){
  color:var(--ui-text-dark)!important;
}

/* ---------------- PLAN A TRIP ---------------- */
body.v78-atlas #trips .map-slab{
  border:1px solid var(--v156-border)!important;
}
body.v78-atlas #trips .map-layer-controls{
  gap:7px!important;
}
body.v78-atlas #trips .map-layer-controls button{
  min-height:40px!important;
  padding:7px 10px!important;
  white-space:nowrap!important;
}
body.v78-atlas #trips .trip-tool-card,
body.v78-atlas #trips #catchLogCard{
  border:1px solid var(--v156-border)!important;
}
body.v78-atlas #trips .catch-location-guide{
  border-color:var(--v156-border)!important;
}
body.v78-atlas #trips .catch-location-guide span,
body.v78-atlas #trips .catch-log-note{
  font-size:13px!important;
  line-height:1.45!important;
}

/* Trip intelligence cards: readable and compact. */
body.v78-atlas #trips .trip-brief-section{
  padding:13px 14px!important;
}
body.v78-atlas #trips .trip-lure-list{
  display:grid!important;
  gap:9px!important;
}
body.v78-atlas #trips .trip-lure-pick{
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:10px!important;
  padding:11px!important;
}
body.v78-atlas #trips .trip-lure-pick :is(p,span,small,strong,b,h4,label){
  line-height:1.4!important;
}
body.v78-atlas #trips .trip-config-callout{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
body.v78-atlas #trips .trip-config-callout>div{
  min-width:0!important;
  padding:8px 9px!important;
}

/* Plan Trip Bigger Bass */
body.v78-atlas #trips .trip-bigger-bass{
  border:2px solid var(--v156-border)!important;
  background:#121413!important;
  color:#f7f2ec!important;
}
body.v78-atlas #trips .trip-bigger-banner{
  padding:11px 13px!important;
  background:#1a1c1b!important;
  border-bottom:1px solid var(--v156-border)!important;
}
body.v78-atlas #trips .trip-bigger-banner :is(span,h3,b,strong){
  color:#fff!important;
}
body.v78-atlas #trips .trip-bigger-bass .trip-source-note,
body.v78-atlas #trips .trip-bigger-summary{
  color:#ded7cf!important;
}
body.v78-atlas #trips .trip-bigger-bass .trip-lure-pick{
  background:#111312!important;
  color:#f7f2ec!important;
  border-color:#66584f!important;
  border-left:3px solid var(--v156-border)!important;
}
body.v78-atlas #trips .trip-bigger-bass .trip-lure-pick :is(p,span,small,strong,b,h4,label){
  color:inherit!important;
}
body.v78-atlas #trips .trip-bigger-bass .trip-config-callout>div{
  background:var(--v156-light-2)!important;
  color:#211e1b!important;
}
body.v78-atlas #trips .trip-bigger-bass .trip-config-callout>div :is(span,b){
  color:#211e1b!important;
}

/* ---------------- SETTINGS / PRIVACY ---------------- */
body.v78-atlas #settings :is(.account-card,.learning-privacy-card){
  border:1px solid var(--v156-border)!important;
}
body.v78-atlas #settings :is(.account-content,.learning-content){
  color:var(--ui-text-dark)!important;
}
body.v78-atlas #settings :is(.account-content,.learning-content) :is(p,span,small,label,strong,b){
  color:inherit!important;
}

/* ---------------- RESPONSIVE ---------------- */
@media (min-width:1100px){
  body.v78-atlas #recommendations .playbook-layout{
    grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr)!important;
  }
  body.v78-atlas #recommendations .hero-lures{
    min-width:0!important;
  }
  body.v78-atlas #trips.has-trip-results .v78-trip-frame{
    grid-template-columns:minmax(520px,.9fr) minmax(620px,1.1fr)!important;
    gap:16px!important;
  }
  body.v78-atlas #trips .v78-trip-side{
    max-height:none!important;
    overflow:visible!important;
  }
}
@media (min-width:701px) and (max-width:1099px){
  body.v78-atlas #recommendations .playbook-layout{
    grid-template-columns:1fr 1fr!important;
  }
  body.v78-atlas #recommendations .hero-lures{
    grid-column:1/-1!important;
    grid-row:auto!important;
  }
  body.v78-atlas #trips .mapbox,
  body.v78-atlas #trips #map{
    min-height:520px!important;
    height:520px!important;
  }
}
@media (max-width:700px){
  body.v78-atlas #recommendations{
    font-size:15px!important;
  }
  body.v78-atlas #recommendations .playbook-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    padding:8px!important;
    gap:9px!important;
  }
  body.v78-atlas #recommendations .playbook-column{
    padding:12px!important;
  }
  body.v78-atlas #recommendations .strata-bigger-config{
    grid-template-columns:1fr 1fr!important;
  }
  body.v78-atlas #trips .map-slab{
    padding-bottom:0!important;
  }
  body.v78-atlas #trips .map-layer-title{
    margin-top:4px!important;
  }
  body.v78-atlas #trips .map-layer-controls{
    position:relative!important;
    inset:auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    padding:8px!important;
    background:#111312!important;
    border-block:1px solid var(--v156-border)!important;
  }
  body.v78-atlas #trips .map-layer-controls button{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    min-height:44px!important;
  }
  body.v78-atlas #trips .mapbox,
  body.v78-atlas #trips #map{
    position:relative!important;
    height:58vh!important;
    min-height:430px!important;
    max-height:620px!important;
  }
  body.v78-atlas #trips .map-legend{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px 12px!important;
    padding:7px 9px!important;
    background:#111312!important;
    color:#fff!important;
  }
  body.v78-atlas #trips .trip-lure-pick{
    grid-template-columns:32px minmax(0,1fr)!important;
  }
  body.v78-atlas #trips .trip-config-callout{
    grid-template-columns:1fr 1fr!important;
  }
}

/* Privacy page: no theme control; clear return action. */
body.privacy-page .back-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:46px!important;
  padding:10px 16px!important;
  font-size:15px!important;
  font-weight:900!important;
  background:var(--ui-surface-3)!important;
  color:var(--ui-text-dark)!important;
  border:2px solid var(--v156-border)!important;
}
body.privacy-page .card{
  border-left:3px solid var(--v156-border)!important;
}
body.privacy-page :is(p,li){
  line-height:1.58!important;
}
