.spi-fishing-finder { margin-block: clamp(1.25rem, 3vw, 2.5rem); padding: clamp(1rem, 3vw, 1.7rem); border: 1px solid color-mix(in srgb, var(--spi-section-heading, #164e63) 20%, transparent); border-radius: var(--luperiq-radius, .75rem); background: linear-gradient(145deg, var(--spi-surface-muted, #f6fbfc), transparent 72%); }
.spi-fishing-finder > h2 { margin: 0; color: var(--spi-section-heading, #164e63); }
.spi-fishing-finder__lead { max-width: 68ch; margin: .7rem 0 1rem; line-height: 1.6; }
.spi-fishing-intel { margin-block: 1rem; }
.spi-fishing-intel h3 { font-size: 1.15rem; color: var(--spi-section-heading, #164e63); margin: 0 0 .65rem; }
.spi-fishing-intel h4 { font-size: .9rem; margin: 0 0 .4rem; }
.spi-fishing-intel__heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .65rem; }
.spi-fishing-intel__observations { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.spi-fishing-intel__reading { border: 1px solid var(--spi-border, #b9ced3); background: var(--spi-surface-muted, #f6fbfc); border-radius: var(--luperiq-radius, .5rem); padding: .85rem; min-width: 0; }
.spi-fishing-intel__reading time, .spi-fishing-intel__reading > a { display: block; font-size: .75rem; margin-block: .4rem; overflow-wrap: anywhere; }
.spi-fishing-intel p.spi-fishing-intel__value { font-size: clamp(1.15rem, 3vw, 1.6rem); font-weight: 750; color: var(--spi-section-heading, #164e63); margin-block: .5rem; }
.spi-fishing-intel__small, .spi-fishing-intel__age { font-size: .8rem; }
.spi-fishing-intel__subject, .spi-fishing-intel__outlook-label { font-weight: 750; }
.spi-fishing-intel__evidence { padding-block: 1rem; border-block: 1px solid var(--spi-border, #b9ced3); }
.spi-fishing-intel [data-intel-outlook] { padding: .1rem .9rem .85rem; background: var(--spi-surface-muted, #f6fbfc); border-left: 3px solid var(--spi-section-heading, #164e63); margin-block: 1rem; }
.spi-fishing-intel :is([data-intel-survey], [data-intel-context]) { overflow-wrap: anywhere; }
.spi-fishing-intel :is(.spi-fishing-intel__chart, .spi-fishing-intel__methods) { margin-top: 1rem; }
.spi-fishing-intel summary { cursor: pointer; font-weight: 700; padding-block: .7rem; }
.spi-fishing-intel table { width: 100%; border-collapse: collapse; font-size: .8rem; margin-top: .6rem; table-layout: fixed; }
.spi-fishing-intel th, .spi-fishing-intel td { text-align: left; border-bottom: 1px solid var(--spi-border, #b9ced3); padding: .5rem .25rem; overflow-wrap: anywhere; }
.spi-fishing-intel caption { text-align: left; padding-bottom: .5rem; }
.spi-fishing-intel tr.is-selected { background: var(--spi-surface-muted, #e5f3f5); }
.spi-fishing-intel meter { display: block; width: 100%; height: .6rem; margin-top: .2rem; }
.spi-fishing-finder [data-finder-controls] { margin-top: 1rem; padding: .2rem 1rem 1rem; border: 1px solid var(--spi-border, #b9ced3); border-radius: var(--luperiq-radius, .5rem); background: var(--luperiq-surface, #fff); }
.spi-fishing-finder [data-finder-controls] > summary { margin: 0 -.15rem; color: var(--spi-section-heading, #164e63); font-size: 1.05rem; }
.spi-fishing-finder__quick, .spi-fishing-finder__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; align-items: end; }
.spi-fishing-finder__quick > button { justify-self: start; }
.spi-fishing-finder__dates { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .65rem; margin-block: .75rem; }
.spi-fishing-finder :is(input, select, button) { min-height: 2.75rem; max-width: 100%; font: inherit; }
.spi-fishing-finder label { display: grid; gap: .3rem; color: var(--spi-section-heading, #164e63); font-weight: 700; }
.spi-fishing-finder__plan { margin-top: .75rem; padding-top: .15rem; border-top: 1px solid var(--spi-border, #b9ced3); }
.spi-fishing-finder__actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-block: 1rem .75rem; }
.spi-fishing-finder__actions button { padding-inline: .9rem; border-radius: 999px; }
@media (max-width: 520px) {
  .spi-fishing-finder { padding: 1rem; }
  .spi-fishing-finder__dates, .spi-fishing-finder__quick, .spi-fishing-finder__fields { grid-template-columns: minmax(0, 1fr); }
  .spi-fishing-finder__actions > * { width: 100%; }
  .spi-fishing-intel__reading { padding: .7rem; }
  .spi-fishing-intel__heading { align-items: start; }
}
@media (max-width: 379px) { .spi-fishing-intel__observations { grid-template-columns: minmax(0, 1fr); } }
