/* Birds In The Bay — Field Guide design, built on v1.2.57 */
:root{--fg-ink:#082f50;--fg-muted:#59788f;--fg-paper:#f4f8fc;--fg-line:#c9ddec;--fg-teal:#0868ab;--fg-accent:#3a9fdd;--fg-rail:78px;--fg-panel:354px;--fg-top:76px}
body{font-family:Inter,'Segoe UI',Arial,sans-serif!important;color:var(--fg-ink);background:var(--fg-paper)}
#brandbar,.aboutInfoFab,.privateLogFab,body>.mapkey{display:none!important}
#map{position:fixed!important;top:var(--fg-top)!important;left:calc(var(--fg-rail) + var(--fg-panel))!important;width:auto!important;right:0!important;bottom:0!important;height:auto!important;z-index:1}
#map .leaflet-tile-pane{filter:saturate(.58) contrast(.96)}
.fg-shell *{box-sizing:border-box}.fg-shell button,.fg-shell input,.fg-shell select{font:inherit}.fg-shell button{cursor:pointer}.fg-shell button:focus-visible,.fg-shell input:focus-visible{outline:3px solid #3a9fdd;outline-offset:3px}.fg-shell button{transition:background .15s,transform .15s}.fg-shell button:hover{background:#e7f1fa}.fg-icon{width:21px;height:21px;display:inline-block;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.fg-header{position:fixed;inset:0 0 auto;height:var(--fg-top);background:var(--fg-paper);z-index:1100;border-bottom:1px solid var(--fg-line);display:flex;align-items:center;justify-content:space-between;padding:0 28px 0 21px;gap:16px}.fg-brand{display:flex;gap:12px;align-items:center}.fg-mark{width:42px;height:42px;border-radius:50%;background:var(--fg-teal);color:#fff;display:grid;place-items:center}.fg-mark svg{width:29px;height:29px}.fg-brand strong{font-size:18px;letter-spacing:-.5px;display:block}.fg-brand small{display:block;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;margin-top:4px;color:var(--fg-muted)}.fg-header-right{display:flex;gap:22px;align-items:center;font-size:13px;color:var(--fg-muted)}.fg-report{display:flex;align-items:center;gap:9px;padding:11px 16px;background:var(--fg-teal)!important;color:white;border:0;border-radius:9px;font-weight:600!important}.fg-report:hover{background:#082f50!important}
.fg-rail{position:fixed;top:var(--fg-top);bottom:0;left:0;width:var(--fg-rail);z-index:1100;background:#f4f8fc;border-right:1px solid var(--fg-line);padding:24px 9px;display:flex;flex-direction:column;gap:15px}.fg-nav{border:0;background:transparent;color:#59788f;border-radius:12px;display:flex;align-items:center;flex-direction:column;gap:6px;font-size:10px!important;padding:12px 3px!important;font-weight:600!important;min-height:58px}.fg-nav.active{background:#d7eafa;color:#082f50}.fg-rail .fg-bottom{margin-top:auto}
.fg-explorer{position:fixed;left:var(--fg-rail);width:var(--fg-panel);top:var(--fg-top);bottom:0;z-index:1050;background:var(--fg-paper);border-right:1px solid var(--fg-line);display:flex;flex-direction:column}.fg-explorer-head{padding:27px 24px 17px}.fg-eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;color:var(--fg-teal);display:flex;align-items:center;gap:8px}.fg-eyebrow::before{content:'';width:6px;height:6px;background:var(--fg-accent);border-radius:50%}.fg-explorer h1{font-size:29px;line-height:1.14;letter-spacing:-1px;margin:11px 0 9px;font-weight:650}.fg-intro{font-size:13px;line-height:1.6;color:var(--fg-muted);margin:0}.fg-selection{border:1px solid #c9ddec;border-radius:12px;background:#fff;margin-top:19px;padding:12px;width:100%;text-align:left;display:flex;gap:12px;align-items:center;color:var(--fg-ink)}.fg-selection img{width:64px;height:37px;object-fit:contain;mix-blend-mode:multiply}.fg-selection .fg-target-icon{width:64px;text-align:center;color:var(--fg-teal)}.fg-selection small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--fg-muted);margin-bottom:5px}.fg-selection strong{font-size:14px}.fg-selection .fg-chevron{margin-left:auto;font-size:20px;color:#7198b4}.fg-search{position:relative;display:flex;align-items:center;gap:8px;padding:11px 12px;margin-top:15px;border-radius:8px;background:#e7f1fa;color:#7198b4}.fg-search input{width:100%;background:none;border:0;outline:none;color:var(--fg-ink);font-size:12px}.fg-filterrow{display:flex;gap:7px;margin-top:11px}.fg-filterrow button{border:1px solid #c9ddec;border-radius:7px;background:transparent;color:#082f50;font-size:11px;padding:8px 10px;min-height:34px}.fg-filterrow .fg-icon{width:14px;height:14px;margin-right:3px}.fg-listheading{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;font-weight:650;color:#59788f;border-top:1px solid var(--fg-line)}.fg-list{overflow-y:auto;flex:1;overscroll-behavior:contain;padding:0 14px 18px;scrollbar-width:thin}.fg-placecard{position:relative;display:flex;align-items:stretch;border-bottom:1px solid var(--fg-line)}.fg-placeopen{padding:17px 9px;border:0;background:transparent;text-align:left;color:var(--fg-ink);flex:1;min-width:0;border-radius:8px}.fg-placeopen strong{display:block;font-size:14px;font-weight:650;line-height:1.4;margin:3px 0 6px}.fg-placeopen small{display:block;font-size:11px;color:var(--fg-muted);line-height:1.6}.fg-placeopen .fg-place-label{font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:#59788f}.fg-save{border:0;background:none;color:#7198b4;align-self:center;padding:12px 8px}.fg-save[aria-pressed=true]{color:#0868ab}.fg-save[aria-pressed=true] svg{fill:#d7eafa}.fg-badge{display:inline-block;font-size:9px;background:#e7f1fa;border-radius:4px;padding:3px 6px;font-weight:600;letter-spacing:.3px;margin-top:7px}.fg-badge.medium{background:#fff0dc;color:#994900}.fg-badge.hot{background:#f7ded1;color:#9a442c}.fg-empty{padding:25px 10px;font-size:13px;color:var(--fg-muted);line-height:1.7}.fg-empty b{display:block;color:var(--fg-ink);margin-bottom:6px}.fg-explorer-footer{padding:12px 22px;border-top:1px solid var(--fg-line);font-size:10px;line-height:1.5;color:#59788f;background:#f4f8fc}.fg-explorer-footer a{color:var(--fg-teal)}
.fg-map-top{position:fixed;top:calc(var(--fg-top) + 24px);left:calc(var(--fg-rail) + var(--fg-panel) + 25px);z-index:800;pointer-events:none}.fg-map-top h2{font-size:21px;letter-spacing:-.6px;margin:0 0 7px;text-shadow:0 1px 5px white,0 0 12px white}.fg-map-top p{margin:0;font-size:11px;color:#59788f;text-shadow:0 0 6px white}.fg-map-tools{position:fixed;right:22px;top:calc(var(--fg-top) + 23px);z-index:1000;display:flex;gap:8px}.fg-map-tools button{border:1px solid #c9ddec;box-shadow:0 3px 12px #173a3e10;background:#f4f8fc;border-radius:9px;min-height:42px;padding:10px 13px;color:var(--fg-ink);font-size:12px}.fg-map-tools button svg{width:17px;height:17px;margin-right:5px}.fg-map-legend{position:fixed;bottom:27px;left:calc(var(--fg-rail) + var(--fg-panel) + 25px);z-index:750;background:#fafcf8f2;border:1px solid #c9ddec;border-radius:10px;padding:13px 17px;display:flex;gap:17px;box-shadow:0 3px 12px #173a3e0c;font-size:11px;color:#59788f}.fg-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;background:#3d8268}.fg-dot.forecast{background:#cf7854}.fg-dot.birds{background:#728dad}.fg-dot.reports{background:#b5a276}.fg-mobile-map{display:none}
.fg-drawer{position:fixed;right:16px;top:calc(var(--fg-top) + 80px);width:380px;max-width:calc(100vw - 24px);bottom:22px;z-index:1200;border-radius:16px;background:#fff;box-shadow:0 12px 60px #163b3d35;display:flex;flex-direction:column;overflow:hidden}.fg-drawer[hidden],.fg-overlay[hidden]{display:none}.fg-drawer-head{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--fg-line);background:var(--fg-paper);font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:650}.fg-drawer-head button{border:0;background:transparent;color:var(--fg-ink);padding:6px}.fg-detail{overflow-y:auto;padding:21px;flex:1;scrollbar-width:thin}.fg-detail .fishermanPopup{padding:0!important;background:transparent!important;max-width:none!important;color:var(--fg-ink)!important}.fg-detail .predictionPlace{font-size:23px!important;line-height:1.2;letter-spacing:-.5px;margin-bottom:12px}.fg-detail .predictionHabitat{font-size:11px!important;color:#59788f;margin-top:6px!important}.fg-detail .predictionTarget{font-size:17px!important;margin:18px 0 6px}.fg-detail .predictionTargetRegulations{font-size:11px!important;color:#59788f!important;line-height:1.6}.fg-detail .predictionCoords{font-size:10px!important;letter-spacing:.5px;color:#59788f!important}.fg-detail .predictionSection{margin-top:20px!important}.fg-detail .predictionSectionTitle{font-size:11px!important;letter-spacing:.7px;color:#082f50!important;font-weight:750!important;margin-bottom:9px}.fg-detail .predictionStatusLine{padding:5px 0;font-size:13px!important}.fg-detail .predictionBestWhy{font-size:11px;color:#59788f;line-height:1.55}.fg-detail .predictionFactor{padding:10px 0!important;font-size:12px;border-color:#c9ddec!important}.fg-detail .predictionFactor>strong{font-size:11px;color:#0868ab!important;background:#e7f1fa;padding:3px 6px;border-radius:4px}.fg-detail .predictionFactor>div{font-size:12px!important;line-height:1.6}.fg-detail ul{padding-left:16px;font-size:12px;line-height:1.7}.fg-detail details{font-size:11px}.fg-detail .predictionFocusButton,.fg-detail .spotPopupReportFish{background:var(--fg-teal)!important;font-size:11px!important;min-height:40px;border-radius:8px!important}.fg-detail .spotPopupClose{background:#e7f1fa!important;color:var(--fg-ink)!important;font-size:11px!important;border-radius:8px!important}.fg-detail .predictionStructured{min-width:0!important}.fg-detail .popSources{font-size:10px}.fg-detail .topFishList b{color:var(--fg-ink)}
.leaflet-top.leaflet-left{top:110px!important;left:15px!important}.leaflet-bottom.leaflet-right{bottom:24px!important;right:12px!important}.leaflet-control-zoom{border:1px solid #c9ddec!important;border-radius:10px!important;overflow:hidden;box-shadow:0 2px 15px #173a3e15!important}.leaflet-control-zoom a{color:var(--fg-ink)!important;background:#f4f8fc!important;width:36px!important;height:36px!important;line-height:36px!important}.leaflet-control-attribution{font-size:9px!important;background:#ffffffb0!important}.confirmedSpotDot{background:#3f8067!important;border:2px solid white!important;box-shadow:0 1px 5px #244e4940!important;font-size:9px!important}.predIcon{border-radius:50%!important;box-shadow:0 2px 10px #25463830!important}.fg-toast{position:fixed;bottom:85px;left:50%;transform:translateX(-50%);z-index:15000;background:var(--fg-ink);color:white;font-size:12px;padding:12px 18px;border-radius:9px;max-width:90vw}
.fg-overlay{position:fixed;inset:0;background:#173d425c;backdrop-filter:blur(4px);z-index:11000;display:flex;align-items:center;justify-content:center;padding:20px}.fg-menu{background:var(--fg-paper);border-radius:18px;padding:25px;max-height:85dvh;overflow-y:auto;width:440px;max-width:100%;box-shadow:0 15px 60px #153c3c30}.fg-menu h2{font-size:24px;letter-spacing:-.6px;margin:0 0 9px}.fg-menu>p{font-size:12px;color:var(--fg-muted);line-height:1.6}.fg-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.fg-menu-head button{border:0;background:#e7f1fa;border-radius:50%;width:32px;height:32px;font-size:18px}.fg-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.fg-menu-grid button{border:1px solid var(--fg-line);padding:15px 12px;background:white;border-radius:10px;text-align:left;color:var(--fg-ink);font-size:12px;min-height:52px}.fg-menu .chips{display:grid!important;grid-template-columns:1fr 1fr;padding:0!important;margin:15px 0!important;gap:10px!important}.fg-menu .chip{font-size:12px!important;border:1px solid var(--fg-line)!important;border-radius:8px!important;padding:13px!important;background:white!important;color:var(--fg-ink)!important}.fg-menu input[type=checkbox]{accent-color:var(--fg-teal)}.fg-menu .mapkey{position:static!important;display:block!important;max-width:none!important;width:100%!important;border:0!important;padding:12px 0!important;box-shadow:none!important;background:transparent!important;font-size:11px!important}.fg-menu .mapkey .keyline{line-height:1.8}.fg-menu .fg-period{display:flex;justify-content:space-between;font-size:12px;align-items:center;margin:20px 0}.fg-menu #period{background:white;color:var(--fg-ink);border:1px solid var(--fg-line);padding:9px;border-radius:7px}
body .targetFishSheet,body .habitatSheet,body .areaSheet,body .fishingStyleSheet,body .modal,body .fishRegsModal{z-index:12000!important;background:rgba(20,51,53,.4);backdrop-filter:blur(4px)}body .card,body .targetFishPanel,body .habitatPanel,body .areaPanel,body .fishingStylePanel,body .fishRegsCard{background:var(--fg-paper)!important;color:var(--fg-ink)!important;border-radius:20px!important;box-shadow:0 12px 70px #143d3d2b!important}body .card h2,body .targetFishPanel h2,body .areaPanel h2,body .habitatPanel h2,body .fishingStylePanel h2{letter-spacing:-.6px;color:var(--fg-ink)}body .habitatApply,body .submit,body .fishRegsDone{background:var(--fg-teal)!important;color:white!important;border-radius:10px!important}body .targetFishCard,body .targetFishChoice,body .habitatChoice,body .areaChoice,body .fishingStyleChoice{border-radius:10px!important;border-color:var(--fg-line)!important}body .privacyBanner{z-index:14000!important;background:#fff!important;color:var(--fg-ink)!important;border-radius:15px!important;box-shadow:0 5px 40px #193e3a25!important;max-width:420px!important}.offlineBadge{z-index:10001}.fg-loading{padding:25px;color:var(--fg-muted);font-size:13px}.fg-more{border:1px solid var(--fg-line);border-radius:8px;background:white;color:var(--fg-teal);width:100%;padding:12px;margin:12px 0;font-size:12px}.fg-intro-link{color:var(--fg-teal);background:transparent;border:0;padding:0;font-size:12px;text-decoration:underline}.fg-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:270px;display:block}
@media(min-width:1450px){:root{--fg-panel:385px}.fg-explorer-head{padding:32px 27px 20px}.fg-placeopen{padding:20px 12px}.fg-listheading{padding:12px 27px}}
@media(max-width:1050px){.fg-map-top h2{font-size:17px}.fg-map-top p{max-width:180px}.fg-map-tools button span{display:none}.fg-map-tools button svg{margin:0}.fg-header-right>span{display:none}.fg-map-legend{gap:9px;padding:12px;font-size:10px}}
@media(max-width:760px){:root{--fg-top:65px;--fg-rail:0px;--fg-panel:0px}.fg-header{padding:0 15px;gap:8px}.fg-brand{gap:8px}.fg-mark{width:34px;height:34px}.fg-mark svg{width:25px}.fg-brand strong{font-size:15px}.fg-brand small{font-size:8px;letter-spacing:1px}.fg-header-right{gap:0}.fg-report{font-size:11px!important;padding:9px 11px;min-height:38px}.fg-report svg{width:15px}.fg-report span{display:none}.fg-rail{top:auto;bottom:0;left:0;right:0;width:auto;height:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom));padding:5px 8px env(safe-area-inset-bottom);display:flex;flex-direction:row;justify-content:space-around;background:#f4f8fc;border-top:1px solid var(--fg-line);gap:2px;z-index:2000}.fg-nav{flex:1;padding:7px 2px!important;font-size:9px!important;min-height:54px;gap:4px;border-radius:10px}.fg-nav .fg-icon{width:20px;height:20px}.fg-rail .fg-bottom{margin:0}.fg-explorer{top:var(--fg-top);left:0;width:100%;bottom:var(--fg-nav-height,67px);border:0;z-index:1050;display:none}.fg-explorer.open{display:flex}.fg-explorer-head{padding:20px 20px 13px}.fg-explorer h1{font-size:27px;margin-top:8px}.fg-selection{margin-top:12px}.fg-listheading{padding:12px 20px}.fg-list{padding:0 12px 15px}.fg-placeopen{padding:15px 9px}.fg-explorer-footer{padding:9px 20px}.fg-map-top{top:78px;left:14px;right:14px;pointer-events:auto;background:#fafcf7f2;border:1px solid var(--fg-line);border-radius:12px;padding:12px 15px;box-shadow:0 3px 15px #203e3910}.fg-map-top h2{font-size:15px;margin:0 0 4px}.fg-map-top p{font-size:10px;max-width:none}.fg-mobile-map{display:flex;gap:7px;margin-top:11px}.fg-mobile-map button{flex:1;border:1px solid #c9ddec;background:white;color:var(--fg-ink);border-radius:6px;font-size:10px;padding:8px 5px;min-height:33px}.fg-map-tools{top:207px;right:14px;flex-direction:column}.fg-map-tools button{min-width:38px;min-height:38px;padding:9px}.fg-map-legend{bottom:90px;left:14px;right:14px;justify-content:space-around;gap:3px;padding:12px 8px;font-size:9px}.leaflet-top.leaflet-left{top:143px!important;left:12px!important}.leaflet-bottom.leaflet-right{bottom:77px!important;right:0!important}.fg-drawer{top:auto;bottom:var(--fg-nav-height,67px);left:0;right:0;width:100%;max-width:100%;height:70dvh;border-radius:20px 20px 0 0;z-index:1800}.fg-drawer.expanded{height:calc(100dvh - var(--fg-nav-height,67px) - var(--fg-top))}.fg-drawer-head{padding:9px 16px}.fg-detail{padding:20px}.fg-overlay{align-items:flex-end;padding:0}.fg-menu{border-radius:20px 20px 0 0;width:100%;padding:24px 20px;max-height:85dvh}.fg-detail .predictionPlace{font-size:24px!important}body .privacyBanner{bottom:78px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important}.fg-toast{bottom:85px}.fg-status{max-width:90vw}.fg-drawer-head .fg-expand{display:inline-flex!important}}
@media(prefers-reduced-motion:reduce){.fg-shell *{transition:none!important}}

/* Aggregate overview markers without changing underlying habitat membership. */
.fg-map-overview #map .confirmedSpotIcon,.fg-map-overview #map .namedPointPin{visibility:hidden!important;pointer-events:none!important}
.fg-cluster{display:flex!important;align-items:center;justify-content:center;background:#f4f8ef!important;border:1.5px solid #57866b;border-radius:50%;color:#082f50;font-size:10px;font-weight:700;box-shadow:0 0 0 4px #f4f8ef60,0 2px 6px #315c4b20}
.fg-cluster i{width:5px;height:5px;background:#4b8365;border-radius:50%}
:is(#map,.fg-live-map-key) .predIcon{font-size:0!important;width:24px!important;height:24px!important;margin:6px;background:#0868ab!important;border:2px solid #fff!important;display:grid!important;place-items:center}
:is(#map,.fg-live-map-key) .predIcon::after{content:'';width:6px;height:6px;border:1px solid #fff;transform:rotate(45deg)}
:is(#map,.fg-live-map-key) .predIcon.predMed{background:#ff8a00!important}:is(#map,.fg-live-map-key) .predIcon.predHigh{background:#cd7452!important}
.fg-detail .predictionRegulationsTop{font-size:11px;line-height:1.6;color:#59788f;margin-top:4px}.fg-detail .predictionRegulationsTop>b{display:none}

.fg-detail-tabs{display:flex;gap:6px;padding:10px 18px;background:#f4f8fc;border-bottom:1px solid #c9ddec}.fg-detail-tabs[hidden]{display:none}.fg-detail-tabs button{flex:1;border:0;border-radius:7px;background:transparent;padding:9px;font-size:12px;color:#59788f}.fg-detail-tabs button.active{background:white;color:#082f50;box-shadow:0 1px 5px #23483910;font-weight:650}
.fg-detail .predictionFactor>strong[data-rating="unknown"]{background:#e7f1fa;color:#7b857c!important}.fg-detail .predictionFactor>strong[data-rating="fair"],.fg-detail .predictionFactor>strong[data-rating="less favorable"]{background:#f3ecd9;color:#8b743e!important}
body .fishRegsBtn,body .targetClear,body .targetFishPanel .cancel,body .areaPanel .cancel,body .habitatPanel .cancel,body .fishingStylePanel .cancel{background:#e7f1fa!important;color:#082f50!important;box-shadow:none!important;border:1px solid #c9ddec!important;border-radius:9px!important}
.fg-map-legend .fg-dot.forecast{background:#0868ab;transform:rotate(45deg);border-radius:1px}

/* Map-first layout and native marker cards. */
body:not(.fg-exploring) #map{left:var(--fg-rail)!important}
.fg-explorer:not(.open){display:none!important}
.fg-map-top,.fg-map-legend{display:none!important}
.fg-map-tools{top:calc(var(--fg-top) + 12px)}
.leaflet-top.leaflet-left{top:12px!important}
.leaflet-popup-content{margin:0!important;width:min(340px,calc(100vw - 48px))!important;max-height:none!important;overflow:visible!important}
.leaflet-popup-content-wrapper{padding:0!important;border-radius:14px!important;background:var(--fg-paper)!important;color:var(--fg-ink)!important}
.leaflet-popup-close-button{display:none!important}
#modal #submitBtn,#modal #submitReportBottom{background:#c62828!important;color:#fff!important;border-color:#c62828!important}
#modal #submitBtn:hover,#modal #submitReportBottom:hover{background:#a91f1f!important}
#modal .report-footer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:12px}
#modal .report-footer>button{width:100%!important;margin:0!important;min-width:0;min-height:44px!important;padding:10px 8px!important;font-size:12px!important}
#modal #submitBtn:disabled,#modal #submitReportBottom:disabled{opacity:.6;cursor:wait}
#fgDrawer.fg-drawer{position:static;width:100%;max-width:none;height:auto;max-height:none;display:block;overflow:visible;box-shadow:none;border-radius:14px}
#fgDrawer[hidden]{display:none}
#fgDetail{padding:12px;overflow:visible;max-height:none;font-size:12px}
#fgDetail .predictionPlace{font-size:18px!important;margin-bottom:6px}
#fgDetail .predictionTarget{font-size:14px!important;margin:8px 0}
#fgDetail .predictionSection{margin-top:8px!important}
#fgDetail *{max-height:none;scrollbar-width:none}
#fgDetail .predictionStructured,#fgDetail .fishermanPopup{min-width:0!important;width:auto!important}
.fg-secondary{border-top:1px solid var(--fg-line);padding:7px 0}
.fg-secondary summary{cursor:pointer;font-weight:600;color:var(--fg-teal)}
#fgMove{touch-action:none;cursor:move;letter-spacing:0;min-height:36px}
.fg-drawer-head{padding:5px 10px;gap:5px}
.fg-detail-tabs{padding:6px 10px}
.fg-drawer button{cursor:pointer;font:inherit}
.fg-drawer .fg-expand{display:none!important}
@media(max-width:760px){
 #map{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important}
 .fg-explorer.open{top:auto;height:42dvh;bottom:var(--fg-nav-height,67px);border-radius:16px 16px 0 0;border-top:1px solid var(--fg-line)}
 .fg-explorer-head{padding:10px 14px}.fg-explorer-head h1,.fg-eyebrow,.fg-explorer-head>.fg-intro,.fg-explorer-footer{display:none}
 .fg-selection{margin-top:0;padding:6px}.fg-search{margin-top:7px;padding:7px}.fg-filterrow{margin-top:6px}.fg-listheading{padding:7px 14px}
 .leaflet-bottom.leaflet-right{bottom:0!important}
 .privateLogDialog[open]{position:fixed;top:auto;bottom:var(--fg-nav-height,67px);left:0;right:auto;margin:0;width:100%;max-height:42dvh}
}
.privateLogDialog[open]{z-index:2100}
@media(min-width:761px){.privateLogDialog[open]{position:fixed;left:var(--fg-rail);top:var(--fg-top);bottom:0;margin:0;width:354px;max-height:calc(100dvh - var(--fg-top))}}

#fgDetail .bitbPop,#fgDetail .namedPointPopup{background:transparent!important;color:var(--fg-ink)!important;font-family:inherit;font-size:12px}

.fg-drawer *{box-sizing:border-box}.fg-drawer{font-family:Inter,Segoe UI,Arial,sans-serif}.fg-drawer summary{cursor:pointer}.fg-drawer button:focus-visible{outline:3px solid #3a9fdd;outline-offset:2px}

#fgDetail .fishermanPopup details{padding:6px 0}#fgDetail .predictionCoords{margin-bottom:5px}#fgDetail .predictionHabitat{margin:4px 0!important}#fgDetail .spotPopupActions,#fgDetail .predictionPopupActions{margin-top:8px}
#fgDetail .predictionFocusButton,#fgDetail .predictionTargetFishButton{color:white!important;background:var(--fg-teal)!important}
.leaflet-popup-content{touch-action:auto!important}
.privateLogDialog[open]{margin:0!important}
@media(max-width:760px){.privateLogDialog[open]{width:100%!important;max-width:100%!important;max-height:42dvh!important}}
@media(min-width:761px){.privateLogDialog[open]{width:354px!important;max-height:calc(100dvh - var(--fg-top))!important}}
/* v1.3.2: parallel collection panels and explicit mobile expansion. */
.fg-panel-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--fg-line);flex-shrink:0;gap:10px}
.fg-panel-bar strong{font-size:15px}.fg-panel-bar button,.fg-inline-actions button,.fg-view-expand{border:1px solid var(--fg-line);border-radius:7px;padding:8px 12px;background:white;color:var(--fg-teal);cursor:pointer;font:600 12px Inter,Segoe UI,Arial,sans-serif}
.fg-panel-bar button{display:none}.fg-places-host{display:flex;flex-direction:column;min-height:0;flex:1}.fg-places-host[hidden],.fg-log-host[hidden],#fgSavedDetail[hidden]{display:none!important}
.fg-log-host{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:0 14px 14px}
.fg-selected-card{padding:13px;background:#d7eafa;border:1px solid #99bdd8;border-radius:10px;margin:10px 14px;color:var(--fg-ink);overflow-wrap:anywhere}
.fg-selected-card h3{font-size:16px;margin:5px 0}.fg-selected-card p{font-size:12px;margin:5px 0;white-space:pre-wrap}.fg-selected-card small{font-size:11px;color:#59788f}
.fg-inline-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.fg-inline-actions button{font-size:11px;padding:7px 9px}
.fg-placecard.fg-selected{background:#d7eafa;border-radius:8px;box-shadow:inset 3px 0 #0868ab}
body[data-fg-mode=saved] .fg-explorer-head>.fg-selection,body[data-fg-mode=saved] .fg-filterrow{display:none}
/* Compact visible bookmark, with a 44px transparent touch target. */
.fg-bookmark-marker{display:grid!important;place-items:center;background:transparent;border:0;box-shadow:none}
.fg-bookmark-symbol{display:grid;place-items:center;box-sizing:border-box;width:20px;height:24px;background:#725133;color:#fff;border:1.5px solid white;border-radius:4px 4px 7px 7px;box-shadow:0 1px 3px #243f4b70}
.fg-bookmark-symbol .fg-icon{width:13px;height:16px;fill:#ffffff22;stroke-width:2}.fg-bookmark-marker.fg-selected-marker .fg-bookmark-symbol{box-shadow:0 0 0 2px #df805a90,0 1px 4px #243f4b70}
:is(#map,.fg-live-map-key) .predIcon{width:30px!important;height:30px!important;margin:3px!important;border:2px solid white!important;border-radius:50%!important;background:#2577b5!important;box-shadow:0 1px 6px #183e4370!important}
:is(#map,.fg-live-map-key) .predIcon.predMed{background:#ff8a00!important}:is(#map,.fg-live-map-key) .predIcon.predHigh{background:#c53e3e!important}
:is(#map,.fg-live-map-key) .predIcon::after{display:none!important}.fg-bullseye{display:block;width:20px;height:20px;border:2px solid white;border-radius:50%;position:relative}.fg-bullseye::after{content:'';position:absolute;inset:5px;background:white;border-radius:50%}
.fg-nav.fg-back{background:var(--fg-teal);color:#fff;font-weight:750!important;line-height:1.25;box-shadow:0 2px 8px #173a3e20}
.fg-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#fgLogHost #privateFishingLog{display:block!important;position:static!important;width:100%!important;max-width:none!important;max-height:none!important;height:auto!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;font:inherit!important}
#fgLogHost .privateLogClose,#fgLogHost #privateLogBack,#fgLogHost #privateLogTitle,#fgLogHost .privateLogNotice{display:none!important}
#fgLogHost .privateLogTopActions{display:flex;gap:6px;align-items:center;padding-top:8px}
#fgLogHost #privateLogAdd{background:var(--fg-teal)!important;color:white!important;padding:8px!important;width:auto!important;font-size:12px!important;min-height:36px}
#fgLogHost #privateLogExport{font-size:11px!important;padding:7px!important;min-height:32px;background:transparent;margin-top:0}
#fgLogHost .privateLogEntry{display:block;border:0;border-bottom:1px solid var(--fg-line);border-radius:0;padding:10px 6px;margin:0;background:transparent;font-size:12px}
#fgLogHost .privateLogEntry.fg-selected{background:#d7eafa;border-radius:8px}
#fgLogHost .privateLogEntry h3{font-size:14px;margin:3px 0}#fgLogHost .privateLogFishIcon{display:none}#fgLogHost .privateLogEntry>.privateLogConditions,#fgLogHost .privateLogEntry>small{display:none}
#fgLogHost .privateLogLocation{font-size:13px!important;color:var(--fg-teal);text-decoration:none;min-height:32px!important;margin:0!important;padding:4px 0!important}
#fgLogHost .privateLogEntry>button:not(.privateLogLocation){font-size:11px!important;padding:5px 9px!important;min-height:30px!important;margin:3px 4px 0 0!important}
#fgLogHost .fg-selected-card{margin:8px 0}#fgLogHost .fg-inline-actions button{font-size:11px!important;min-height:32px!important;padding:5px 8px!important;margin:0!important}
#fgLogHost .privateLogActions{bottom:0;background:var(--fg-paper)}
.fg-view-expand{display:none}
@media(max-width:760px){
 .fg-panel-bar{padding:7px 12px;min-height:44px}.fg-panel-bar button{display:block;padding:6px 10px;min-height:30px}
 .fg-explorer.open{height:43dvh;bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom));top:auto}.fg-explorer.open.fg-expanded{height:calc(100dvh - var(--fg-top) - var(--fg-nav-height,67px) - env(safe-area-inset-bottom));border-radius:0;top:var(--fg-top)}
 .fg-explorer-head{padding:6px 12px}.fg-explorer-head h1,.fg-explorer-head>.fg-intro,.fg-eyebrow{display:none!important}
 .fg-selection{margin:0;padding:5px 8px;min-height:32px;gap:4px}.fg-selection img,.fg-selection .fg-target-icon,.fg-selection small,.fg-selection .fg-chevron{display:none}.fg-selection strong{font-size:12px}.fg-selection span{display:inline}.fg-search{margin-top:5px;padding:6px 9px}.fg-filterrow{margin-top:5px;gap:5px}.fg-filterrow button{padding:5px 7px;min-height:29px;font-size:10px}
 .fg-listheading{padding:6px 12px;font-size:9px}.fg-placeopen{padding:9px 7px}.fg-placeopen strong{font-size:13px;margin:0 0 3px}.fg-placeopen small{font-size:10px;line-height:1.35}.fg-place-label{display:none}.fg-placecard .fg-badge{display:none}.fg-save{padding:10px}.fg-list{padding:0 10px 10px}
 .fg-selected-card{padding:9px;margin:6px 10px}.fg-selected-card h3{font-size:14px}.fg-selected-card p{font-size:11px}.fg-selected-card .fg-inline-actions{margin-top:5px}
 #fgSavedDetail{max-height:40%;overflow:auto;flex-shrink:0}
 #fgLogHost{padding:0 10px 10px}#fgLogHost .privateLogEntry{padding:7px 6px}#fgLogHost .privateLogEntry p{font-size:11px}.fg-log-host .sub{font-size:10px}
 .fg-nav.fg-back{flex:1.65;min-width:78px;font-size:11px!important;padding:6px 4px!important;justify-content:center}.fg-away .fg-rail{z-index:15000}
 .fg-overlay{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom));padding-top:var(--fg-top)}.fg-menu{max-height:43dvh;padding:12px}.fg-menu h2{font-size:18px}.fg-menu-grid{gap:6px}.fg-menu-grid button{padding:9px;min-height:38px}.fg-menu>.fg-menu-head{margin-bottom:8px}.fg-menu .fg-intro{display:none}
 .fg-menu .fg-view-expand{display:block}.fg-menu.fg-view-expanded{height:100%;max-height:100%;width:100%;border-radius:0}
 body>.modal,body>.targetFishSheet,body>.habitatSheet,body>.areaSheet,body>.fishingStyleSheet,body>.fishRegsModal{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important;align-items:flex-end!important}
 body>.modal>.card,body>.targetFishSheet>.targetFishPanel,body>.habitatSheet>.habitatPanel,body>.areaSheet>.areaPanel,body>.fishingStyleSheet>.fishingStylePanel,body>.fishRegsModal>.fishRegsCard{max-height:43dvh!important;padding:12px!important;margin:0 auto!important}
 .fg-view-expand{display:block!important;position:sticky;top:0;z-index:5;margin:0 0 8px auto!important;min-height:32px!important}
 body>.fg-view-expanded>.card,body>.fg-view-expanded>.targetFishPanel,body>.fg-view-expanded>.habitatPanel,body>.fg-view-expanded>.areaPanel,body>.fg-view-expanded>.fishingStylePanel,body>.fg-view-expanded>.fishRegsCard{height:calc(100dvh - var(--fg-top) - var(--fg-nav-height,67px))!important;max-height:calc(100dvh - var(--fg-top) - var(--fg-nav-height,67px))!important;width:100%!important;max-width:100%!important;border-radius:0!important}
}
.fg-away .fg-rail{z-index:15000}
#fgLogHost .privateLogEntryNotes{display:none}
body[data-fg-mode=saved] .fg-explorer-head h1,body[data-fg-mode=saved] .fg-explorer-head>.fg-intro,body[data-fg-mode=saved] .fg-eyebrow{display:none}
body[data-fg-mode=saved] .fg-explorer-head{padding:10px 14px}body[data-fg-mode=saved] .fg-search{margin-top:0}
#fgLogHost #privateLogExport{background:transparent!important;color:var(--fg-teal)!important;border:1px solid var(--fg-line)!important}
@media(max-width:760px){body.fg-exploring #map{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom) + 43dvh)!important}}
.fg-nav.fg-back,.fg-nav.fg-back:hover{background:var(--fg-teal)!important;color:white!important}
/* v1.3.3: compact layers, swipe navigation, and private-catch workflow. */
#fgLogHost #privateLogForm input,#fgLogHost #privateLogForm select,#fgLogHost #privateLogForm textarea{border:1px solid var(--fg-line);background:#fff;color:var(--fg-ink);border-radius:8px;font:14px Inter,Segoe UI,Arial,sans-serif;min-height:40px;padding:8px 10px}
#fgLogHost #privateLogForm label{font-size:12px;font-weight:600;color:var(--fg-ink)}
#fgLogHost #privateLogForm .privateLogActions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:8px 0;margin-top:8px;position:static;background:transparent}
#fgLogHost #privateLogForm .privateLogActions button{width:100%!important;margin:0!important;min-width:0;min-height:48px!important;padding:8px!important;font-size:11px!important;line-height:1.3!important;border-radius:8px!important;box-shadow:none!important}
#fgLogHost #privateLogPick{background:#e7f1fa!important;color:var(--fg-teal)!important;border:1px solid #99bdd8!important}
#fgLogHost #privateLogForm button[type=submit]{background:var(--fg-teal)!important;color:white!important;border:1px solid var(--fg-teal)!important}
#fgLogHost .privateLogCancel{background:transparent!important;color:var(--fg-muted)!important;border:0!important;min-height:36px!important;padding:6px 12px!important;font-size:12px!important;margin:0!important}
#fgLogHost #privateLogLocationStatus{font-size:11px;line-height:1.4;color:var(--fg-teal);margin:7px 0}
#fgLogHost #privateLogForm button:disabled{opacity:.55;cursor:wait}
.privateLogDraftMarker{background:none;border:0}#privateLogDraft{width:34px;height:34px;display:grid;place-items:center;border:3px solid white;border-radius:50%;background:#0868ab;color:white;font:700 28px/1 Arial,sans-serif;box-shadow:0 0 0 2px #0868ab,0 2px 8px #173a3e70}
.privateLogSavedPin{width:32px;height:34px;border:2px solid white;border-radius:7px 7px 12px 12px;background:#0868ab;color:white;display:grid;place-items:center;box-shadow:0 2px 6px #12364a66;position:relative}
.privateLogSavedPin svg{width:19px;height:24px;fill:#ffffff22;stroke:white;stroke-width:2}.privateLogSavedPin span{position:absolute;right:-5px;bottom:-4px;font-size:10px;line-height:16px;background:var(--fg-paper);border-radius:50%;width:16px;text-align:center}
.privateLogPicker{position:fixed;bottom:calc(78px + env(safe-area-inset-bottom));z-index:1900;background:var(--fg-paper);border:1px solid var(--fg-line);color:var(--fg-ink);font:12px/1.4 Inter,Segoe UI,Arial,sans-serif;border-radius:12px;padding:10px}
.privateLogPicker button{background:var(--fg-teal);font-size:11px;min-height:40px;border-radius:7px}.privateLogPicker button:last-child{background:#e7f1fa;color:var(--fg-teal)}
#fgDrawer{touch-action:none;cursor:grab}#fgDrawer.fg-dragging{cursor:grabbing;user-select:none}#fgDrawer button,#fgDrawer a,#fgDrawer summary{cursor:pointer}
.fg-mobile-layers,.fg-mobile-destination,.fg-nav-swipe{display:none}
.fg-chart-switch{display:block!important;width:100%;margin:0 0 10px!important;background:var(--fg-teal)!important;color:white!important;border:0!important;border-radius:8px!important;min-height:42px;font:600 12px Inter,Segoe UI,Arial,sans-serif!important;padding:10px!important;cursor:pointer}
@media(max-width:760px){
 .leaflet-control-zoom{display:none!important}
 .fg-mobile-layers{display:block;position:fixed;top:calc(var(--fg-top) + 12px);left:12px;z-index:1100}
 #fgMobileLayersToggle{display:flex;gap:6px;align-items:center;min-height:38px;padding:8px 10px;border:1px solid var(--fg-line);border-radius:9px;background:var(--fg-paper);color:var(--fg-ink);font-size:12px;box-shadow:0 2px 8px #173a3e18}
 #fgMobileLayersToggle .fg-icon{width:17px;height:17px}
 #fgMobileLayers{position:absolute;top:44px;left:0;width:min(270px,calc(100vw - 24px));max-height:calc(100dvh - var(--fg-top) - 140px);overflow-y:auto;background:var(--fg-paper);border:1px solid var(--fg-line);border-radius:12px;padding:10px;box-shadow:0 8px 30px #173a3e33}
 #fgMobileLayers[hidden]{display:none}#fgMobileLayers header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:13px}#fgMobileLayers header button{border:0;background:none;color:var(--fg-ink);font-size:22px;min-width:32px;min-height:32px}
 #fgMobileLayers .fg-intro{display:none}#fgMobileLayers .chips{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;padding:0!important;margin:0!important}
 #fgMobileLayers .chip{display:flex!important;align-items:center;gap:8px!important;min-height:36px!important;padding:5px 8px!important;border:0!important;border-radius:6px!important;background:#fff!important;color:var(--fg-ink)!important;font:12px Inter,Segoe UI,Arial,sans-serif!important}
 #fgMobileLayers .chip input{width:17px;height:17px;accent-color:var(--fg-teal);flex-shrink:0}#fgMobileLayers .ebirdMiniIcon{width:16px;height:16px}
 #fgMobileLayers .fg-period{display:flex;align-items:center;justify-content:space-between;margin:10px 0;font-size:11px}#fgMobileLayers #period{font-size:11px;max-width:135px;background:#fff;color:var(--fg-ink);border:1px solid var(--fg-line);border-radius:6px;padding:5px}
 #fgMobileLayers .mapkey{position:static!important;display:block!important;width:auto!important;max-width:none!important;max-height:none!important;box-shadow:none!important;border:0!important;background:transparent!important;padding:5px 0!important;font-size:10px}
 .fg-map-tools>[data-action=layers]{display:none}
 .fg-rail{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;gap:4px;scrollbar-width:none;scroll-behavior:smooth;overscroll-behavior-x:contain;touch-action:pan-x;padding-left:6px;padding-right:12px}
 .fg-rail::-webkit-scrollbar{display:none}.fg-rail .fg-nav{flex:0 0 66px;min-width:66px;max-width:78px;white-space:normal;min-height:54px;justify-content:center}
 .fg-rail .fg-nav[data-mode=map]{position:sticky;left:0;z-index:2;flex:0 0 92px;min-width:92px;max-width:92px;background:var(--fg-paper);box-shadow:4px 0 7px #173a3e14}
 .fg-rail .fg-nav[data-mode=map].active{background:#d7eafa}.fg-rail .fg-nav.fg-back{background:var(--fg-teal)!important}
 .fg-rail .fg-mobile-destination{display:flex}.fg-rail [data-action=menu]{display:none!important}
 .fg-nav-swipe{display:block;position:fixed;right:8px;bottom:calc(69px + env(safe-area-inset-bottom));z-index:2200;pointer-events:none;border-radius:4px;background:#f6f7f2e8;color:#082f50;padding:2px 5px;font-size:9px}
 .fg-mobile-destination span{line-height:1.15;font-size:9px}.fg-mobile-destination.active{background:#d7eafa;color:#082f50}
}
@media(max-width:760px){body.fg-panel-expanded .fg-mobile-layers,body.fg-panel-expanded .fg-map-tools{display:none}.fg-rail{padding-left:0}#fgMobileLayers .mapkey summary{color:var(--fg-ink)!important;background:transparent!important;text-shadow:none!important}#fgMobileLayersToggle[aria-expanded=true]{background:var(--fg-teal);color:white}}
@media(max-width:760px){#fgMobileLayers .chip{justify-content:flex-start!important}}

/* v1.3.4 — map-attached cards, explicit expansion, unified navigation. */
#fgDrawer .fg-drawer-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}
#fgDetailType{min-width:0;overflow-wrap:anywhere;letter-spacing:.7px}
#fgDrawer .fg-drawer-head>div{display:flex;gap:4px;align-items:center;flex-shrink:0}
#fgDrawer #fgCardExpand,.fg-panel-bar button,.fg-view-expand{display:inline-flex!important;align-items:center;justify-content:center;background:#0868ab!important;color:#fff!important;border:1px solid #082f50!important;border-radius:7px!important;min-height:36px!important;width:auto!important;height:auto!important;padding:7px 9px!important;font-size:12px!important;font-weight:700!important;letter-spacing:0;white-space:nowrap}
#fgDrawer [data-action=close-detail]{min-width:36px;min-height:36px;display:grid;place-items:center;border-radius:7px;background:#e7f1fa}
#fgDrawer .fg-drawer-head .fg-save{padding:5px;min-width:32px}
#fgDrawer.fg-card-collapsed #fgDetail>div:not(.predictionStructured):not(.fishermanPopup)>:not(:first-child):not(.predictionTargetFishButton){display:none}
#fgDrawer.fg-card-collapsed #fgDetail .predictionSources,#fgDrawer.fg-card-collapsed #fgDetail .fg-secondary{display:none}
#fgDetail .predictionRegulationsTop{display:block!important;margin:8px 0;padding:7px 0;border-bottom:1px solid var(--fg-line)}
#fgDetail .predictionRegulationsTop>b{display:inline!important}
#fgDetail .predictionTargetFishButton{background:var(--fg-teal)!important;color:white!important;padding:9px 12px;min-height:40px;border:0;border-radius:7px;cursor:pointer}
#fgDetail .spotPopupActions{display:flex;gap:8px}#fgDetail .spotPopupActions button{flex:1;min-height:40px}
#fgDrawer .fg-secondary summary,#fgDrawer .predictionSources summary{color:#082f50;font-weight:700;padding:7px 0}
#fgExploreViews[hidden]{display:none!important}
.fg-layers-close{width:100%;min-height:38px;margin-top:10px;border:0;border-radius:7px;background:var(--fg-teal);color:white;font-weight:700}
#fgLayersContent .mapkey summary{list-style:none;border:1px solid #99bdd8;border-radius:7px;padding:9px!important;background:#e7f1fa!important;color:#082f50!important;font-weight:700}
#fgLayersContent .mapkey summary::after{content:' +';float:right}#fgLayersContent .mapkey[open] summary::after{content:' −'}
#fgLayersContent .fg-period{gap:8px;align-items:center}#fgLayersContent #period{display:block!important;min-height:36px;color:#082f50!important;background:#fff!important}
#fgLogHost .privateLogNotice:not([hidden]){display:block!important;font-size:10px;line-height:1.4;margin:7px 0;color:#59788f}
@media(max-width:760px){.fg-rail .fg-nav[data-mode=explore]{flex-basis:78px;min-width:78px}.fg-explorer.open.fg-expanded{height:calc(var(--bitb-visible-height,100dvh) - var(--fg-top) - var(--fg-nav-height,67px) - env(safe-area-inset-bottom));top:var(--fg-top)}body>.fg-view-expanded>.card,body>.fg-view-expanded>.targetFishPanel,body>.fg-view-expanded>.habitatPanel,body>.fg-view-expanded>.areaPanel,body>.fg-view-expanded>.fishingStylePanel,body>.fg-view-expanded>.fishRegsCard{height:calc(var(--bitb-visible-height,100dvh) - var(--fg-top) - var(--fg-nav-height,67px) - env(safe-area-inset-bottom))!important;max-height:calc(var(--bitb-visible-height,100dvh) - var(--fg-top) - var(--fg-nav-height,67px) - env(safe-area-inset-bottom))!important}.fg-menu-head{gap:8px;flex-wrap:wrap}.fg-menu-head h2{flex:1;min-width:0}}
@media(max-width:760px){body.fg-popup-open .fg-mobile-layers,body.fg-popup-open .fg-map-tools{display:none}} #fgDrawer{background:var(--fg-paper)}
#fgDrawer{font-family:var(--panel-font)!important;border-radius:14px}#fgDrawer .fg-drawer-head{border-radius:14px 14px 0 0}
#fgMobileLayers .fg-layers-close{position:sticky;bottom:0;box-shadow:0 -5px 8px var(--fg-paper);flex-shrink:0}
.fg-section-browser{margin:10px 0}.fg-section-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#fgDrawer .fg-section-button{display:flex;align-items:center;justify-content:space-between;gap:5px;text-align:left;min-height:38px!important;padding:7px 8px;border:1px solid #99bdd8;border-radius:7px;background:#e7f1fa;color:#082f50;font-weight:650;cursor:pointer}
.leaflet-container .leaflet-popup-content.leaflet-popup-content.leaflet-popup-content .fg-section-button span{font-size:10px!important;line-height:1.3!important}
#fgDrawer .fg-section-button.active{background:#0868ab;color:white;border-color:#0868ab}.fg-section-arrow{flex-shrink:0}
#fgDrawer .fg-section-panel{margin-top:7px;padding:9px;background:#fff;border:1px solid #c9ddec;border-radius:8px;box-sizing:border-box;height:256px}
#fgDrawer .fg-section-heading{display:block;min-height:32px;line-height:1.3!important;font-size:11px!important}
#fgDrawer .fg-section-content{height:170px;overflow:visible}
#fgDrawer .fg-section-page{display:flow-root}#fgDrawer .fg-section-page p{margin:5px 0}#fgDrawer .fg-section-page ul{margin:4px 0;padding-left:16px}#fgDrawer .fg-section-page .predictionFactor{padding:4px 0!important}
#fgDrawer .fg-section-pager{height:30px;display:flex;align-items:center;justify-content:space-between;gap:6px}#fgDrawer .fg-section-pager[hidden]{display:none}
#fgDrawer .fg-section-pager button{min-height:28px!important;padding:4px 7px;border:1px solid #c9ddec;border-radius:5px;background:#e7f1fa;color:#082f50;font-size:10px!important}#fgDrawer .fg-section-pager button:disabled{opacity:.35}
#fgDrawer.fg-card-collapsed .fg-section-browser{display:none}
#fgDrawer.fg-weather-card #fgCardExpand{display:none!important}
#fgDrawer .fg-weather-close{width:100%;min-height:40px;margin-top:10px;border:0;border-radius:7px;background:#0868ab;color:white;font-weight:700}
#fgOverlay[data-kind=layers] .fg-menu-head{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:12px}#fgOverlay[data-kind=layers] .fg-menu-head h2{flex:1;min-width:0}
#fgOverlay[data-kind=layers] [data-action=close-menu]{margin-left:auto;flex-shrink:0;width:auto;height:auto;min-height:36px;padding:8px 12px;border-radius:7px;background:#0868ab;color:white;font-size:12px;font-weight:700}
/* v1.3.6: stronger primary tabs and denser habitat/outlook cards. */
#fgDetailTabs{padding:5px 8px;gap:6px;background:#e7f1fa}
#fgDetailTabs button{min-height:34px!important;padding:6px 8px!important;border:1px solid #0868ab;border-radius:7px;background:#fff;color:#0868ab;font-weight:750!important;font-size:12px!important;box-shadow:none}
#fgDetailTabs button.active{background:#0868ab;color:#fff;border-color:#0868ab;box-shadow:inset 0 -3px 0 #082f50}
#fgDrawer:has(.predictionStructured) .fg-drawer-head{padding:4px 8px;gap:4px}
#fgDrawer:has(.predictionStructured) #fgCardExpand,#fgDrawer:has(.predictionStructured) [data-action=close-detail]{min-height:30px!important;padding:5px 7px!important}
#fgDrawer:has(.predictionStructured) #fgDetail{padding:8px}
#fgDrawer .predictionStructured,#fgDrawer .predictionStructured *{font-size:11px!important;line-height:1.25!important}
#fgDrawer #fgDetail .predictionPlace{font-size:15px!important;line-height:1.2!important;margin-bottom:4px}
#fgDrawer #fgDetail .predictionTarget{font-size:12px!important;margin:5px 0!important}
#fgDrawer #fgDetail .predictionHabitat{margin:3px 0!important}
#fgDrawer #fgDetail .predictionCoords{margin:2px 0!important}
#fgDrawer #fgDetail .predictionRegulationsTop{margin:4px 0!important;padding:4px 0!important}
#fgDrawer #fgDetail .predictionSection{margin-top:4px!important}
#fgDrawer #fgDetail .predictionStatusLine{padding:3px 0!important}
#fgDrawer .fg-section-browser{margin:6px 0}
#fgDrawer .fg-section-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
#fgDrawer .fg-section-button{width:100%;height:30px;min-height:30px!important;padding:5px 6px!important;gap:3px;box-sizing:border-box;text-transform:none;letter-spacing:0}
#fgDrawer .fg-section-button span:first-child{white-space:nowrap}
/* Browse beside the map; rows select markers, markers open details. */
body.fg-panel-minimized #fgExplorer{display:none!important}
body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgPanelExpand{display:block}
@media(max-width:760px){
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-explorer.open{height:min(46dvh,390px)!important;max-height:calc(100dvh - var(--fg-top) - 190px);top:auto!important;bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;box-shadow:0 -4px 18px #052f5726}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring #map{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom) + min(46dvh,390px))!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-popup-open #map,body.fg-panel-minimized #map{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important}
 body[data-fg-mode=saved] #fgSavedDetail{display:none!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook]) .fg-filterrow{margin-top:3px}
}
/* Shared rhythm for weather, observations, access points, and saved/log cards. */
#fgDrawer #fgDetail{padding:8px;overflow-wrap:anywhere}
#fgDrawer #fgDetail :is(.popTitle,.npTitle,.accessPopupName,.fg-collection-popup h3){font-size:15px!important;line-height:1.25!important;margin:0 0 5px!important}
#fgDrawer #fgDetail :is(.popRow,.npRow){margin:3px 0!important;line-height:1.35!important}
#fgDrawer #fgDetail :is(.fg-collection-popup p,.bitbPop p){margin:5px 0;line-height:1.35}
#fgDrawer #fgDetail button{text-transform:none!important;letter-spacing:0}
#fgDrawer #fgDetail>button:not(.fg-weather-close){min-height:32px;padding:6px 8px;margin:4px 3px 4px 0;border:1px solid #b5d0e3;border-radius:7px;background:#e7f1fa;color:#07528b;font-size:11px;cursor:pointer}
#fgDrawer #fgDetail summary{padding:6px 8px!important;margin:5px 0;border:1px solid #b5d0e3;border-radius:6px;background:#e7f1fa;color:#07528b;font-weight:700;cursor:pointer;line-height:1.3}
#fgDrawer #fgDetail :is(.popSources,.accessVerify){overflow-wrap:anywhere}
@media(max-width:760px){body.fg-popup-open #fgExplorer{visibility:hidden}body.fg-popup-open.fg-exploring #map{bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important}}
#fgDrawer .predictionStructured .fg-section-button span{font-size:10px!important;line-height:1.2!important}
#fgDrawer .fg-section-panel{height:210px;margin-top:5px;padding:6px 7px}
#fgDrawer .fg-section-heading{min-height:20px;font-size:10px!important}
#fgDrawer .fg-section-content{height:146px}
#fgDrawer .fg-section-page p{margin:3px 0}#fgDrawer .fg-section-page ul{margin:3px 0;padding-left:14px}
#fgDrawer .fg-section-pager{height:26px}#fgDrawer .fg-section-pager button{min-height:24px!important;padding:3px 6px}
#fgDrawer #fgDetail .predictionPopupActions,#fgDrawer #fgDetail .spotPopupActions{display:flex;gap:6px;margin-top:6px}
#fgDrawer #fgDetail .predictionPopupActions button,#fgDrawer #fgDetail .spotPopupActions button{flex:1;min-height:34px!important;padding:6px 8px!important;margin:0!important;font-size:10px!important}
/* Ocean theme — drawn from the installed app icon. */
:root{--fg-ink:#082f50;--fg-muted:#59788f;--fg-paper:#f4f8fc;--fg-line:#c9ddec;--fg-teal:#0868ab;--fg-accent:#3a9fdd;--ocean-navy:#052f57;--ocean-blue:#0868ab;--ocean-soft:#e7f1fa}
body{background:#f4f8fc;color:#082f50}::selection{background:#bfe2fa;color:#052f57}
.fg-header{background:linear-gradient(110deg,#042747,#074575);color:white;border-bottom:1px solid #2176aa;box-shadow:0 2px 12px #052f571a}
.fg-header .fg-brand small,.fg-header-right{color:#c4e1f6}.fg-header .fg-brand strong{color:#fff}.fg-app-mark{object-fit:contain;border-radius:11px;background:transparent;border:1px solid #ffffff35;box-shadow:0 2px 7px #0002}
.fg-header .fg-report{background:#087bbf!important;border:1px solid #45a5d4;box-shadow:0 2px 5px #0002}.fg-header .fg-report:hover{background:#1491d1!important}
.fg-rail{background:#edf5fc;border-color:#c9ddec}.fg-nav{color:#52738f}.fg-nav.active,.fg-mobile-destination.active{background:#d7eafa!important;color:#053d67!important;box-shadow:inset 0 -3px 0 #087bbf}.fg-nav.fg-back,.fg-nav.fg-back:hover{background:#052f57!important;color:#fff!important}
.fg-shell button:hover{background:#dceefb}.fg-shell button:focus-visible,.fg-drawer button:focus-visible,body input:focus-visible,body select:focus-visible,body textarea:focus-visible{outline:2px solid #32a4ed;outline-offset:2px}
.fg-explorer,.fg-panel-bar,.fg-drawer-head,.fg-menu,#fgDrawer{background:#f4f8fc}.fg-explorer-footer{background:#e7f1fa}.fg-selected-card,.fg-placecard.fg-selected,#fgLogHost .privateLogEntry.fg-selected{background:#e5f2fc;border-color:#acd1ec}
.fg-search{background:#e5f0f9}.fg-search input{color:#082f50}.fg-search input::placeholder{color:#638299}.fg-selection{background:#fff;border-color:#bfd7e8}.fg-filterrow button{background:#fff;border-color:#b6d1e5;color:#07528b}
.fg-map-tools button,#fgMobileLayersToggle{background:#fff;color:#07528b;border-color:#b8d2e6}.fg-map-tools button:hover{background:#e5f2fc}#fgMobileLayersToggle[aria-expanded=true]{background:#0868ab;color:#fff}
#map .leaflet-tile-pane{filter:none}.leaflet-control-zoom a{color:#07528b!important;background:#fff!important}
#fgDetailTabs{background:#e1effa;border-bottom:1px solid #bcd7eb}#fgDetailTabs button{border-color:#0868ab;color:#07528b}#fgDetailTabs button.active{color:#fff;background:#0868ab;border-color:#0868ab;box-shadow:inset 0 -3px 0 #052f57}
#fgDrawer .fg-drawer-head{border-bottom:1px solid #c9ddec}#fgDrawer #fgCardExpand{background:#0868ab!important;border-color:#07528b!important}#fgDrawer [data-action=close-detail]{background:#e1effa;color:#07528b}
#fgDrawer .fg-section-button{color:#07528b;background:#e7f1fa;border-color:#b5d0e3}#fgDrawer .fg-section-button.active{color:#fff;background:#0868ab;border-color:#0868ab}
#fgDrawer .fg-section-panel{height:auto;padding:6px 7px;border-color:#c3dbea;background:#fff}#fgDrawer .fg-section-content{height:auto;overflow:visible}#fgDrawer .fg-section-heading{min-height:0;margin-bottom:4px;color:#07528b}
#fgDrawer .fg-section-page-source{display:flow-root}#fgDrawer .fg-section-page-source p{margin:3px 0}#fgDrawer .fg-section-page-source ul{margin:3px 0;padding-left:14px}#fgDrawer .fg-section-page-source li{margin:2px 0}
#fgDrawer .fg-section-page-source .predictionFactor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 6px;padding:4px 0!important;border-bottom:1px solid #e0ebf4;align-items:start}
#fgDrawer .fg-section-page-source .predictionFactor>div{grid-column:1/-1;line-height:1.25!important}#fgDrawer .fg-section-page-source .predictionFactor>strong{padding:2px 5px;border-radius:4px}#fgDrawer .fg-section-page-source .predictionFactor:last-child{border-bottom:0}
#fgDrawer .fg-section-content a{color:#076aa9;text-decoration:underline;text-underline-offset:2px}#fgDrawer .predictionRegulationsTop{border-color:#c9ddec}
body :is(.modal,.sheetwrap,.targetFishSheet,.habitatSheet,.areaSheet,.fishingStyleSheet,.fishRegsModal){background-color:#052f5770}
body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard,.privateLogDialog){color:#082f50!important;background:#f4f8fc!important;border-color:#c9ddec!important}
body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard) :is(h2,h3){color:#082f50!important}
body :is(.habitatApply,.submit,.fishRegsDone,.predictionFocusButton,.spotPopupReportFish,.fg-chart-switch,.fg-layers-close,.privateLogPrimary){background:#0868ab!important;color:white!important;border-color:#07528b!important}
body :is(.targetClear,.fishRegsBtn,.cancel,.fishRegsCloseX,.bitbUniversalCloseX){background:#e1effa!important;color:#07528b!important;border-color:#b6d1e5!important}
body :is(.targetFishChoice,.habitatChoice,.areaChoice,.fishingStyleChoice,.checks label,.subChoices label){background:#fff!important;border-color:#c9ddec!important;color:#082f50!important}body :is(.targetFishChoice,.habitatChoice,.areaChoice,.fishingStyleChoice).checked{background:#dceefb!important;border-color:#0868ab!important}
body input[type=checkbox],body input[type=radio]{accent-color:#0868ab}body :is(.card,.sheet,.fg-shell,.privateLogDialog) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:#b6d1e5!important;color:#082f50!important}
body .bitbUniversalCloseBottom{background:#052f57!important;color:white!important}#fgLogHost .privateLogNotice{background:#e7f1fa;border-color:#bed8eb;color:#526f85}#fgLogHost .privateLogLocation{color:#07528b!important}#fgLogHost #privateLogExport{color:#07528b!important;border-color:#b6d1e5!important}
#fgLayersContent .mapkey summary{background:#e1effa!important;color:#07528b!important;border-color:#b6d1e5}#fgMobileLayers .chip{color:#082f50!important}#fgLayersContent #period{color:#082f50!important;border-color:#b6d1e5}
.fg-overlay{background:#052f5766}.fg-toast{background:#052f57;color:#fff}.fg-nav-swipe{background:#f4f8fce8;color:#52738f}
@media(max-width:760px){.fg-rail .fg-nav[data-mode=map]{background:#edf5fc}.fg-rail .fg-nav[data-mode=map].active{background:#d7eafa}.fg-rail .fg-nav.fg-back{background:#052f57!important}.fg-header{box-shadow:none}}
@media(min-width:761px){body>:is(.modal,.targetFishSheet,.habitatSheet,.areaSheet,.fishingStyleSheet,.fishRegsModal):not(.fg-view-expanded)>:is(.card,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard){max-height:43dvh!important}.fg-menu:not(.fg-view-expanded){max-height:43dvh}.fg-menu.fg-view-expanded{max-height:85dvh}}

#fgDrawer #fgDetail .predictionTarget{font-size:15px!important;font-weight:800!important;line-height:1.25!important;margin:7px 0!important}#fgDrawer #fgDetail .predictionTarget *{font-size:inherit!important;font-weight:inherit!important}#fgDrawer .predictionStructured button{text-transform:none!important;letter-spacing:0}#fgDrawer .fg-section-heading{text-transform:none;letter-spacing:0}
.fg-browse-open{position:fixed;left:var(--fg-rail);top:calc(var(--fg-top) + 12px);z-index:1100;min-height:34px;padding:7px 10px;border:1px solid #b5d0e3;border-radius:0 7px 7px 0;background:#fff;color:#07528b;font-size:11px;font-weight:700;cursor:pointer}.fg-browse-open[hidden]{display:none}
@media(max-width:760px){
 .fg-browse-open{left:0;top:calc(var(--fg-top) + 60px)}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer.open{left:0!important;right:auto!important;width:50vw!important;max-width:50vw!important;min-width:0!important;top:var(--fg-top)!important;bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important;height:auto!important;max-height:none!important;border-radius:0 10px 10px 0;border-right:1px solid #c9ddec;box-shadow:3px 0 12px #052f5720}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring #map{left:50vw!important;bottom:calc(var(--fg-nav-height,67px) + env(safe-area-inset-bottom))!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-popup-open #map,body.fg-panel-minimized #map{left:0!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer .fg-panel-bar{padding:6px;gap:3px;min-height:38px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgPanelName{font-size:11px;line-height:1.2;min-width:0}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgPanelExpand{font-size:10px;min-height:30px;padding:4px 5px;white-space:nowrap;flex-shrink:0}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer .fg-explorer-head{padding:5px 6px}
 #fgExploreViews{padding:4px;gap:3px}#fgExploreViews button{min-width:0;font-size:10px;padding:5px 3px;min-height:30px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgTarget{padding:5px;min-width:0;width:100%;overflow:hidden}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgTarget strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-search{padding:5px;gap:3px;min-width:0}.fg-search input{min-width:0}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-search input{font-size:10px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-filterrow{display:grid;grid-template-columns:1fr 1fr;gap:3px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-filterrow button{min-width:0;padding:4px 3px;font-size:9px;overflow:hidden}.fg-filterrow .fg-icon{width:11px;height:11px;margin-right:2px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-filterrow button:last-child{grid-column:1/-1}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-listheading{padding:5px 6px;font-size:9px}#fgListOrder{display:none}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-list{padding:0 4px 8px;overflow-y:auto;min-height:0}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-placeopen{padding:7px 4px;min-width:0}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-placeopen strong{font-size:11px;line-height:1.2}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-placeopen small{font-size:9px;line-height:1.2}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-placecard>.fg-save{padding:5px;min-width:26px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) .fg-explorer-footer{display:none}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring .fg-map-tools{left:calc(50vw + 6px)}
}
/* Readable phone type with compact spacing and a half-width drawer. */
@media(max-width:760px){
 :root{--fg-top:52px;--fg-nav-height:52px}
 .fg-header{padding:7px 10px!important;gap:8px}.fg-brand{gap:6px}.fg-brand strong{font-size:13px!important;letter-spacing:0}.fg-brand small{font-size:7px!important;letter-spacing:.5px}.fg-header .fg-app-mark{width:28px!important;height:28px!important}.fg-report{min-height:32px!important;padding:7px 9px!important;font-size:10px!important;gap:4px}.fg-header .fg-icon{width:14px;height:14px}
 .fg-rail{height:52px!important;min-height:52px!important;padding:0 4px!important;gap:3px}.fg-rail .fg-nav{min-height:48px!important;min-width:54px!important;max-width:68px!important;flex:0 0 60px!important;padding:4px!important;gap:4px}.fg-rail .fg-nav[data-mode=map]{min-width:72px!important;max-width:72px!important;flex-basis:72px!important}.fg-rail .fg-icon{width:16px;height:16px}.fg-rail .fg-nav span{font-size:9px!important;line-height:1.15!important}.fg-nav-swipe{bottom:54px;font-size:8px;padding:1px 3px}
 body #fgExplorer .fg-panel-bar{min-height:36px!important;padding:5px!important;gap:4px}body #fgPanelName{font-size:11px!important}body #fgPanelExpand{font-size:10px!important;min-height:28px!important;padding:5px!important}
 body #fgExplorer .fg-explorer-head{padding:5px!important}body #fgExploreViews{padding:3px;gap:3px}body #fgExploreViews button{font-size:11px!important;min-height:28px!important;padding:5px!important}
 body #fgExplorer .fg-selection{min-height:28px!important;padding:5px!important}body #fgExplorer .fg-selection strong{font-size:11px!important}body #fgExplorer .fg-search{padding:5px!important;margin-top:4px}body #fgExplorer .fg-search input{font-size:11px!important}
 body #fgExplorer .fg-filterrow button{min-height:27px!important;font-size:10px!important;padding:4px!important}
 body #fgExplorer .fg-listheading{font-size:10px!important;padding:5px!important}body #fgExplorer .fg-list{padding:0 3px 6px!important}body #fgExplorer .fg-placeopen{padding:7px 4px!important}body #fgExplorer .fg-placeopen strong{font-size:12px!important;line-height:1.2!important;margin-bottom:3px}body #fgExplorer .fg-placeopen small{font-size:10px!important;line-height:1.3!important}body #fgExplorer .fg-placecard>.fg-save{min-width:28px!important;padding:5px!important}body #fgExplorer .fg-placecard .fg-icon{width:15px;height:15px}
 .fg-browse-open{min-height:30px;font-size:11px;padding:6px 8px;top:calc(var(--fg-top) + 50px)}
 .fg-map-tools{top:calc(var(--fg-top) + 6px)!important;left:auto!important;right:6px!important;width:auto;gap:4px}.fg-map-tools button{font-size:10px!important;min-height:30px!important;min-width:30px!important;padding:6px!important}.fg-map-tools .fg-icon{width:15px;height:15px}
 .fg-mobile-layers{top:calc(var(--fg-top) + 6px);left:6px}#fgMobileLayersToggle{font-size:10px;min-height:30px;padding:6px;gap:4px}#fgMobileLayersToggle .fg-icon{width:14px;height:14px}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring .fg-mobile-layers{left:calc(50vw + 6px)}
}

.fg-screen-close{display:block;margin:0 0 8px auto;min-height:30px;padding:5px 9px;border:1px solid #b5d0e3;border-radius:6px;background:#0868ab;color:#fff;font-size:11px;font-weight:700;cursor:pointer}
#fgDrawer [data-action=close-detail]{width:auto;min-width:42px;padding:5px 8px;font-size:11px;font-weight:700}
@media(max-width:760px){
 body .fg-mobile-layers,body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring .fg-mobile-layers{left:50%!important;top:calc(var(--fg-top) + 6px)!important;transform:translateX(-50%)}
 #fgLogHost #privateLogSelected{display:none!important}#fgLogHost .privateLogCoordinates{flex-direction:column;gap:3px}#fgLogHost :is(input,select,textarea){min-width:0;width:100%;max-width:100%}#fgLogHost .privateLogTopActions{flex-wrap:wrap}
}

.fg-view-expanded .bitbUniversalCloseX,.fg-view-expanded .fishRegsCloseX{display:none!important}
@media(max-width:760px){.fg-browse-open{left:0;top:calc(var(--fg-top) + 6px)}}
@media(max-width:760px){body #fgExplorer .fg-panel-bar{flex-direction:column;align-items:flex-start;gap:5px}body #fgPanelExpand{order:-1;margin:0}body #fgPanelName{padding:2px 0}}

.fg-layer-copy{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.fg-layer-count{font-size:10px;font-weight:400;line-height:1.25;color:#59788f}
#fgMobileLayers .chip{height:auto!important;min-height:40px!important}.fg-layer-copy>span{font-weight:700}
@media(max-width:760px){#fgMobileLayers{transform:translateX(-50%);left:50%;width:min(280px,calc(100vw - 20px))!important;max-width:calc(100vw - 20px)!important}.fg-layer-count{font-size:10px}}

.fg-live-map-key{font-size:11px;line-height:1.35}.fg-key-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid #dce8f0}.fg-key-symbol{width:42px;min-width:42px;height:42px;position:relative;display:flex;align-items:center;justify-content:center}.fg-key-symbol>div{flex-shrink:0}.fg-key-symbol .namedPointPin,.fg-key-symbol .windIcon,.fg-key-symbol .privateLogSavedPin{position:relative}.fg-key-age{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.fg-key-age>b{width:100%}.fg-key-age>span{display:flex;align-items:center;gap:4px}.fg-key-age i{display:inline-block;width:13px;height:13px;border:3px solid;border-radius:50%;box-sizing:border-box}.fg-live-map-key>small{display:block;font-size:10px;margin-top:7px}
/* Desktop exposes the same destinations, labels and icons as the phone rail. */
@media(min-width:761px){
 .fg-rail{padding:8px 6px;gap:3px;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin}
 .fg-rail .fg-mobile-destination{display:flex}
 .fg-rail [data-action=menu]{display:none!important}
 .fg-rail .fg-nav{flex:0 0 auto;min-height:42px;padding:5px 3px!important;gap:3px;justify-content:center;line-height:1.15;border-radius:8px}
 .fg-rail .fg-icon{width:16px;height:16px;flex-shrink:0}
 .fg-rail .fg-nav span{font-size:10px;line-height:1.15}
}

.subAreas{border:0;margin:12px 0;padding:0;min-width:0}.subAreas legend{font-size:12px;font-weight:900;color:#365d70;margin-bottom:6px}.subAreaChoices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.subForm .subAreaChoices label{display:flex;align-items:center;gap:7px;margin:0;padding:8px;border:1px solid #c9ddec;border-radius:8px;background:#fff;font-size:12px;line-height:1.3;cursor:pointer}.subAreaChoices input{flex-shrink:0;accent-color:#0868ab}.subAreaChoices label:has(input:checked){background:#dceefb;border-color:#0868ab}@media(max-width:480px){.subAreaChoices{grid-template-columns:1fr}}

#emailUsModal textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #c9ddec;border-radius:10px;padding:10px;background:#fff;color:#082f50;font:inherit;resize:vertical;min-height:130px}

.fg-menu-grid button.fg-report-birds{background:#b42332!important;border-color:#b42332!important;color:#fff!important}.fg-menu-grid button.fg-report-catch{background:#0868ab!important;border-color:#0868ab!important;color:#fff!important}.fg-menu-grid :is(.fg-report-birds,.fg-report-catch) small{color:#fff!important}.fg-menu-grid :is(.fg-report-birds,.fg-report-catch):hover{filter:brightness(1.08)}

/* Layer labels share a fixed checkbox column; text wraps inside each tile. */
#fgLayerControls .chips{grid-template-columns:repeat(2,minmax(0,1fr))}
#fgLayerControls .chip,#fgMobileLayers .chip{display:grid!important;grid-template-columns:16px minmax(0,1fr);align-items:center;justify-content:start!important;gap:8px!important;padding:10px!important;min-width:0;box-sizing:border-box;white-space:normal!important;text-align:left}
#fgLayerControls .chip input[type=checkbox],#fgMobileLayers .chip input[type=checkbox]{width:16px;height:16px;margin:0;justify-self:start}
.fg-layer-copy{width:100%;overflow-wrap:anywhere;white-space:normal;line-height:1.25}
.fg-layer-copy>span{font-size:12px}.fg-layer-count{display:block}

.bitbBoatRampTriangle{display:block;width:18px;height:18px;filter:drop-shadow(0 1px 2px #18354980)}
.fg-layer-name{display:flex;align-items:center;gap:5px;min-width:0}.fg-layer-name>span:last-child{min-width:0}
.fg-layer-symbol{width:20px;height:24px;flex:0 0 20px;display:flex;align-items:center;justify-content:center;position:relative}
.fg-layer-symbol>span{display:flex;align-items:center;justify-content:center;transform:scale(.65);transform-origin:center;flex-shrink:0}
.fg-layer-symbol .namedPointPin,.fg-layer-symbol .windIcon{position:relative}.fg-layer-report-symbol{width:28px;height:28px;border-radius:50%;border:3px solid #00b050;box-sizing:border-box}
@media(max-width:380px){#fgLayerControls .chips{grid-template-columns:minmax(0,1fr)!important}}

.fg-layer-symbol{height:20px}@media(max-width:760px){#fgMobileLayers .chip{padding:6px 8px!important}}

/* v1.3.16: compact My Log sidebar, including add/edit forms. */
#fgLogHost{padding:0 8px 10px;font-size:11px;line-height:1.35}
#fgLogHost .privateLogDialog{font-size:11px;line-height:1.35}
#fgLogHost :is(p,details,summary,.sub,small){font-size:11px!important;line-height:1.35}
#fgLogHost p{margin:5px 0}#fgLogHost details{margin:5px 0}#fgLogHost summary{padding:4px 0}
#fgLogHost .privateLogNotice{padding:7px;border-radius:6px}
#fgLogHost :is(h3,.privateLogEntry h3,#privateLogFormTitle){font-size:13px!important;line-height:1.3;margin:5px 0}
#fgLogHost #privateLogForm label{font-size:11px;margin:5px 0}
#fgLogHost #privateLogForm :is(input,select,textarea){font-size:12px;line-height:1.3;min-height:32px;padding:5px 6px;margin-top:3px;border-radius:5px;min-width:0;width:100%;max-width:100%;box-sizing:border-box}
#fgLogHost #privateLogForm textarea{min-height:48px;height:48px}
#fgLogHost :is(button,#privateLogAdd,#privateLogExport,.privateLogLocation,.privateLogCancel),#fgLogHost #privateLogForm .privateLogActions button,#fgLogHost .privateLogEntry>button:not(.privateLogLocation){font-size:11px!important;line-height:1.25!important;min-height:30px!important;padding:5px 7px!important;margin:2px 0!important;border-radius:5px!important;text-transform:none!important;overflow-wrap:anywhere;max-width:100%;box-sizing:border-box}
#fgLogHost #privateLogForm .privateLogActions{gap:5px;padding:4px 0;margin-top:5px}
#fgLogHost .privateLogTopActions{padding-top:4px;gap:5px;margin:3px 0}
#fgLogHost .privateLogEntry{padding:7px 3px}
#fgLogHost .privateLogFishHead{flex-wrap:wrap;gap:3px}
#fgLogHost .privateLogFishHead .privateLogConditions{max-width:100%}
#fgLogHost .privateLogFishHead .privateLogConditions :is(summary,div){white-space:normal;min-width:0;overflow-wrap:anywhere}
#fgLogHost #privateLogMessage:empty{display:none}
@media(max-width:760px){
 #fgLogHost .privateLogFishRow{grid-template-columns:minmax(0,1fr);gap:0}
 #fgLogHost #privateLogForm .privateLogActions{grid-template-columns:minmax(0,1fr)}
 #fgLogHost #privateLogForm input[type=datetime-local]{font-size:11px;padding-inline:3px}
}

/* Shared finger/mouse/keyboard resize handle for Explore, Saved Spots and My Log. */
body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer.open{width:var(--fg-user-panel-width,354px)!important;max-width:calc(100vw - 64px)!important}
.fg-panel-resize{position:absolute;right:0;top:45%;width:18px;height:68px;z-index:8;display:flex;align-items:center;justify-content:center;cursor:ew-resize;touch-action:none;user-select:none;border:1px solid #92bada;border-right:0;border-radius:7px 0 0 7px;background:#e1effa;color:#0868ab;font:700 16px/1 Arial,sans-serif;box-shadow:-2px 0 5px #082f5014}
.fg-panel-resize:hover,.fg-panel-resize:focus-visible{background:#cce6fa;outline:2px solid #0868ab;outline-offset:-2px}
body.fg-resizing-panel,body.fg-resizing-panel *{cursor:ew-resize!important;user-select:none!important}
@media(max-width:760px){body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer.open{width:var(--fg-user-panel-width,50vw)!important}}

#hourlySummaryModal h2{overflow-wrap:anywhere;line-height:1.25}

#fgLogHost #privateLogForm :is(input,select,textarea){font-size:12px!important}#fgLogHost .privateLogDialog{font-size:11px!important}@media(max-width:760px){#fgLogHost #privateLogForm input[type=datetime-local]{font-size:11px!important}}

.focusWindowRow{padding:6px 0;border-bottom:1px solid #d9e6f0;font-size:12px;line-height:1.4}.focusWindowRow small{font-size:10px;color:#526f85}

#fgExploreViews button[aria-pressed="true"],#fgExploreViews button[aria-pressed="true"]:hover{background:#083b65!important;color:#fff!important;border:1px solid #052f57!important;box-shadow:none!important}
#fgExploreViews button[aria-pressed="false"]{background:transparent;color:#07528b;border:1px solid transparent}

/* v1.3.17: visible selections, two-column layers, standalone key, continuous map resize. */
.fg-rail .fg-nav .fg-filter-check{font:900 11px/1 Arial,sans-serif;color:#16803c;position:static;flex:none;height:11px;margin-top:1px}.fg-filter-check[hidden]{display:none!important}
#fgExplorer .fg-search{background:#fff!important;border:1px solid #88abc5!important;box-shadow:0 0 0 1px #fff inset}#fgExplorer .fg-search:focus-within{outline:2px solid #0868ab;outline-offset:1px}#fgExplorer .fg-search input{background:#fff!important}
body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring:not(.fg-panel-minimized):not(.fg-popup-open) #map{left:calc(var(--fg-rail) + var(--fg-user-panel-width,354px))!important;right:0!important}
@media(max-width:760px){
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]).fg-exploring:not(.fg-panel-minimized):not(.fg-popup-open) #map{left:var(--fg-user-panel-width,50vw)!important}
 body #fgMobileLayers{position:fixed;width:min(400px,calc(100vw - 12px))!important;max-width:calc(100vw - 12px)!important;padding:9px;left:50%;top:40px}
 #fgMobileLayers .chips,#fgLayerControls .chips{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 #fgMobileLayers .chip{grid-template-columns:16px minmax(0,1fr);gap:5px!important;padding:7px 5px!important;min-height:64px!important;border:1px solid #c9ddec!important}
 #fgMobileLayers .fg-layer-name{gap:3px;font-size:11px}#fgMobileLayers .fg-layer-symbol{flex-basis:17px;width:17px}#fgMobileLayers .fg-layer-count{font-size:10px;line-height:1.25}
 .fg-mobile-layers{display:flex;align-items:center;gap:5px}#fgMobileKeyToggle{display:flex;align-items:center;gap:4px;background:#fff;color:#07528b;border:1px solid #b8d2e6;border-radius:7px;font-size:10px;min-height:30px;padding:6px;white-space:nowrap}#fgMobileKeyToggle .fg-icon{width:14px;height:14px}
 .fg-map-tools>[data-action=key]{display:none}
 .leaflet-marker-pane .fg-bookmark-symbol{width:10px;height:12px;border-width:1px;border-radius:2px 2px 4px 4px}.leaflet-marker-pane .fg-bookmark-symbol .fg-icon{width:7px;height:9px}
 .leaflet-marker-pane .privateLogSavedPin{box-sizing:border-box;width:16px;height:18px;border-width:1px;border-radius:3px 3px 5px 5px}.leaflet-marker-pane .privateLogSavedPin svg{width:10px;height:12px}.leaflet-marker-pane .privateLogSavedPin span{width:9px;line-height:9px;font-size:6px;right:-3px;bottom:-2px}
}
.privateLogMarkerHit{display:grid;place-items:center;background:transparent;border:0}
#fgOverlay[data-kind=report]{background:transparent;backdrop-filter:none;display:block;padding:0;pointer-events:none}
#fgOverlay[data-kind=report] .fg-menu{position:fixed;top:calc(var(--fg-top) - 2px);right:10px;width:200px!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:calc(100vw - 20px)!important;padding:6px!important;border:1px solid #c9ddec;border-radius:9px;box-shadow:0 5px 18px #082f5030;pointer-events:auto}
#fgOverlay[data-kind=report] .fg-menu-head{display:none}#fgOverlay[data-kind=report] .fg-report-birds{width:100%;min-height:40px;border:0;border-radius:6px;background:#b42332;color:white;font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px;padding:8px}
#fgOverlay[data-kind=key] .mapkey{display:block!important;position:static!important;width:100%!important;max-width:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}#fgOverlay[data-kind=key] .mapkey>summary{display:none}
#hourlySummaryModal h2{padding-right:0!important;overflow-wrap:normal!important}#hourlySummaryModal .fg-focus-title{display:block;font-size:18px;line-height:1.2;margin-bottom:4px}#hourlySummaryModal .fg-focus-fish{display:block;font-size:clamp(18px,5vw,22px);line-height:1.25;overflow-wrap:normal;word-break:normal}

.getAppPlatform{margin:10px 0}.getAppPlatform>summary{cursor:pointer;list-style:none;background:#e1effa;color:#083b65;border:1px solid #8cb5d4;border-radius:7px;padding:12px;font-size:13px;font-weight:700}.getAppPlatform>summary::after{content:" ▾"}.getAppPlatform[open]>summary::after{content:" ▴"}.getAppSteps{font-size:12px;line-height:1.5;padding-left:22px}.getAppSteps li{margin:7px 0}

.fg-nav-symbol{display:inline-flex;align-items:center;justify-content:center;gap:4px;height:16px;flex-shrink:0}.fg-rail .fg-nav .fg-filter-check{margin:0}

#fgOverlay[hidden]{display:none!important}

body:has(#fgOverlay:not([hidden])) .fg-map-tools{z-index:11001}

/* v1.3.18: shared Watch token and transparent prediction markers. */
:root{--bitb-watch:#fff2a8;--bitb-watch-ink:#62520b;--bitb-close:#e8ebee}
body .fg-badge.watch,body .fg-watch-label{background:var(--bitb-watch)!important;color:var(--bitb-watch-ink)!important;border-radius:4px;padding:1px 4px}
:is(#map,.fg-live-map-key) .predIcon{box-sizing:border-box!important;width:36px!important;height:36px!important;margin:2px!important;background:var(--bitb-watch)!important;border:2px solid #62520b!important;opacity:.52!important;box-shadow:none!important;color:#62520b!important}
:is(#map,.fg-live-map-key) .predIcon.predMed{background:#ff8a00!important;border-color:#dc6500!important;color:white!important}
:is(#map,.fg-live-map-key) .predIcon.predHigh{background:#c53e3e!important;border-color:#822727!important;color:white!important}
.predIcon .fg-bullseye{border-color:currentColor!important}.predIcon .fg-bullseye::after{background:currentColor!important}
/* The same close affordances on forms, map cards, menus and filter sheets. */
.fg-popup-chrome:not(.fg-drawer):not(#fgMobileLayers){position:relative}
body .fg-popup-chrome .fg-popup-x{display:grid!important;place-items:center;flex:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;margin:0 0 8px auto!important;border:1px solid #cbd2d8!important;border-radius:7px!important;background:var(--bitb-close)!important;color:#18354b!important;font:24px/1 Arial,sans-serif!important;cursor:pointer;letter-spacing:0!important;text-transform:none!important}
body .fg-popup-chrome .fg-popup-bottom{display:block!important;background:var(--bitb-close)!important;color:#18354b!important;border:1px solid #cbd2d8!important;box-shadow:none!important;border-radius:7px!important;min-height:36px!important;padding:8px 12px!important;font-size:12px!important;font-weight:700!important;text-transform:none!important;cursor:pointer}
body .fg-popup-chrome>.fg-popup-bottom{width:100%;margin:10px 0 0!important}
body .fg-popup-chrome .fg-popup-x:focus-visible,body .fg-popup-chrome .fg-popup-bottom:focus-visible{outline:2px solid #0868ab;outline-offset:2px}
body .fg-drawer-head .fg-popup-x,body #fgMobileLayers header .fg-popup-x,body .fg-menu-head .fg-popup-x{margin:0!important}
#fgOverlay[data-kind=report] .fg-menu-head{display:flex!important;margin-bottom:6px}#fgOverlay[data-kind=report] .fg-menu-head h2{font-size:14px;margin:0}

body:has(#fgOverlay:not([hidden])[data-kind=key]) .fg-map-tools{z-index:1100}
@media(max-width:760px){body:has(#fgOverlay:not([hidden])) .fg-map-tools{z-index:1100}}

body .predIcon.predLow{background:var(--bitb-watch)!important}
.fg-detail>.fg-popup-bottom{width:100%;margin-top:10px!important}

body .predIcon.predLow{background:var(--bitb-watch)!important}
.fg-detail>.fg-popup-bottom{width:100%;margin-top:10px!important}

/* Catch count follows the species; the conditions disclosure gets its own row. */
#fgLogHost .privateLogFishHead{display:flex;flex-direction:column;align-items:stretch;gap:2px}
#fgLogHost .privateLogFishName{display:block;width:100%}
#fgLogHost .privateLogFishName h3{font-size:12px!important;line-height:1.35;margin:2px 0!important;overflow-wrap:normal}
#fgLogHost .privateLogFishHead .privateLogConditions{display:block;width:100%;max-width:100%;margin:0 0 3px}
#fgLogHost .privateLogFishHead .privateLogConditions summary{font-size:11px!important;line-height:1.4;padding:3px 0;cursor:pointer}

body #fgDrawer .fg-popup-x,body #fgMobileLayers .fg-popup-x,body #fgOverlay .fg-popup-x{font-size:24px!important;line-height:1!important}

#fgLayersContent>.fg-period{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:10px 0 12px;font-size:12px}

/* Map Key owns one scroll area; the embedded details never scroll separately. */
#fgOverlay[data-kind=key] .fg-menu{overflow-y:auto!important;overflow-x:hidden!important}
#fgOverlay[data-kind=key] :is(#fgMenuBody,#fgKeySlot,.mapkey,.keyline){max-height:none!important;height:auto!important;overflow:visible!important}
#fgOverlay[data-kind=key] .fg-menu-head{position:sticky;top:0;z-index:2;background:var(--fg-paper);padding:4px 0 8px}
/* The report form header must not cover its top Close control. */
#modal .reporthead{position:static!important;top:auto!important;margin:0!important;padding:0!important}

@media(max-width:760px){
 #fgOverlay[data-kind=key] .fg-menu{padding:10px 12px!important}
 #fgOverlay[data-kind=key] .fg-menu-head{margin-bottom:4px;padding:0 0 5px;gap:8px}
 #fgOverlay[data-kind=key] .fg-menu-head h2{font-size:18px;line-height:1.2;margin:0}
 #fgOverlay[data-kind=key] .mapkey{padding:0!important}
 #fgOverlay[data-kind=key] .fg-live-map-key{font-size:11px;line-height:1.25}
 #fgOverlay[data-kind=key] .fg-key-row{padding:2px 0;gap:7px;min-height:34px}
 #fgOverlay[data-kind=key] .fg-key-symbol{width:32px;min-width:32px;height:32px}
 #fgOverlay[data-kind=key] .fg-key-symbol>div{transform:scale(.76);transform-origin:center}
 #fgOverlay[data-kind=key] .fg-key-age{gap:4px;margin:6px 0}
 #fgOverlay[data-kind=key] .fg-key-age i{width:11px;height:11px}
 #fgOverlay[data-kind=key] .fg-live-map-key>small{font-size:10px;line-height:1.3;margin-top:5px}
}

.fg-brand,.fg-brand>div{min-width:0}.fg-brand .fg-app-mark{flex-shrink:0}.fg-brand small{white-space:normal}

/* v1.3.21: brighter orange Medium and lighter prediction overlays. */
.predIcon{opacity:.52!important}
:is(#map,.fg-live-map-key) .predIcon.predMed,.predIcon.predMed{background:#ff8a00!important;border-color:#dc6500!important}

/* Compact depth controls; do not alter global type scale. */
.depthFilters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 4px}.depthFilters label{font-size:12px;font-weight:700;min-width:0}.depthFilters input{display:block;width:100%;box-sizing:border-box;margin-top:5px;padding:8px;border:1px solid #accde7;border-radius:7px;font:inherit;background:white;color:#093454}#depth-error{color:#a32020;font-size:12px;margin:4px 0}

/* Stable checkbox / illustration / label columns, including an unavailable image. */
body #targetFishGrid .targetFishChoice{display:grid!important;grid-template-columns:18px 40px minmax(0,1fr)!important;align-items:center!important;gap:6px!important}
body #targetFishGrid .targetFishChoice input{margin:0!important;width:18px!important;height:18px!important}
body #targetFishGrid .targetFishChoice img{width:40px!important;height:28px!important;object-fit:contain;font-size:0;color:transparent}
body #targetFishGrid .targetFishChoice span{min-width:0;overflow-wrap:normal!important;word-break:normal;hyphens:auto}
@media(max-width:380px){body #targetFishGrid .targetFishChoice{grid-template-columns:16px 28px minmax(0,1fr)!important;gap:4px!important}body #targetFishGrid .targetFishChoice img{width:28px!important;height:24px!important}body #targetFishGrid .targetFishChoice input{width:16px!important;height:16px!important}}

/* v1.3.29 NAV LOCK: viewport geometry is independent of persisted panel width. */
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:760px){
 :root{--fg-nav-extra:0px;--fg-nav-bottom:calc(env(safe-area-inset-bottom,0px) + var(--fg-nav-extra));--fg-nav-total:calc(var(--fg-nav-height,52px) + var(--fg-nav-bottom))} :root.bitb-installed-app{--fg-nav-extra:8px}
 body .fg-shell{transform:none!important;filter:none!important;perspective:none!important}
 body .fg-rail{position:fixed!important;left:var(--bitb-visible-left,0px)!important;right:auto!important;top:calc(var(--bitb-visible-top,0px) + var(--bitb-visible-height,100vh) - var(--fg-nav-total))!important;bottom:auto!important;width:var(--bitb-visible-width,100vw)!important;max-width:var(--bitb-visible-width,100vw)!important;height:var(--fg-nav-total)!important;min-height:var(--fg-nav-total)!important;box-sizing:border-box!important;padding:0 max(4px,env(safe-area-inset-right,0px)) var(--fg-nav-bottom) max(4px,env(safe-area-inset-left,0px))!important;transform:none!important;z-index:1000001!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;touch-action:pan-x;overscroll-behavior-x:contain}
 body .fg-rail .fg-nav{flex-shrink:0!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer.open{width:var(--fg-user-panel-width,50vw)!important;max-width:calc(var(--bitb-visible-width,100vw) - 64px)!important;min-width:0!important;top:var(--fg-top)!important;bottom:auto!important;height:max(0px,calc(var(--bitb-visible-height,100vh) + var(--bitb-visible-top,0px) - var(--fg-top) - var(--fg-nav-total)))!important;max-height:max(0px,calc(var(--bitb-visible-height,100vh) + var(--bitb-visible-top,0px) - var(--fg-top) - var(--fg-nav-total)))!important;overflow-x:hidden}
 body #fgPlacesHost,body #fgLogHost{min-width:0;min-height:0;overflow-x:hidden}
 body :is(.modal,.sheetwrap,.targetFishSheet,.habitatSheet,.areaSheet,.fishingStyleSheet,.fishRegsModal){top:var(--bitb-visible-top,0px)!important;bottom:auto!important;height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total))!important;box-sizing:border-box}
 body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard,.privateLogDialog){max-height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total) - 24px)!important}
 body #fgOverlay{top:var(--bitb-visible-top,0px)!important;bottom:auto!important;height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total))!important}
 body #fgOverlay .fg-menu{max-height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total) - 16px)!important}
 body #fgMobileLayers{max-height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total) - 52px)!important;overflow-y:auto!important}
}

@media(max-width:760px){
 :root{--fg-top:calc(52px + env(safe-area-inset-top,0px))}
 body .fg-header{padding-top:env(safe-area-inset-top,0px)!important;height:var(--fg-top)!important}
 body #map,body.fg-exploring #map,body.fg-popup-open #map{bottom:var(--fg-nav-total)!important}
 body .fg-nav-swipe{bottom:calc(var(--fg-nav-total) + 2px)!important}
}
@media(max-width:760px){body #fgMobileLayers{top:calc(var(--bitb-visible-top,0px) + var(--fg-top) + 6px)!important;max-height:calc(var(--bitb-visible-height,100vh) - var(--fg-nav-total) - var(--fg-top) - 12px)!important}}
@media(max-width:760px){body .fg-mobile-layers,body.fg-exploring .fg-mobile-layers{left:0!important;right:0!important;width:100%!important;transform:none!important;justify-content:center;pointer-events:none}body .fg-mobile-layers>*{pointer-events:auto}}

/* v1.3.30: one measured exclusion zone for navigation and critical notices. */
.fg-nav-frame{display:contents}.fg-nav-next{display:none}#bitbNoticeDock{display:contents}
@media(max-width:760px){
 :root{--bitb-bottom-reserve:var(--fg-nav-total);--bitb-usable-height:max(64px,calc(var(--bitb-visible-height,100vh) - var(--bitb-bottom-reserve)))}
 body .fg-nav-swipe{display:none!important}
 body .fg-nav-frame{display:block;position:fixed;left:var(--bitb-visible-left,0px);top:calc(var(--bitb-visible-top,0px) + var(--bitb-visible-height,100vh) - var(--fg-nav-total));width:var(--bitb-visible-width,100vw);height:var(--fg-nav-total);z-index:1000001;background:#edf5fc;box-sizing:border-box}
 body .fg-nav-frame .fg-rail{position:absolute!important;left:0!important;top:0!important;width:calc(100% - 40px)!important;max-width:calc(100% - 40px)!important;right:40px!important;scroll-padding-right:4px}
 body .fg-nav-next{display:grid;place-items:center;position:absolute;right:0;top:0;width:40px;height:var(--fg-nav-height,52px);padding:0;border:0;border-left:1px solid #b6d1e5;border-radius:0;background:#edf5fc;color:#053d67;font:700 34px/1 Arial,sans-serif;z-index:3;cursor:pointer;touch-action:manipulation}
 body .fg-nav-next[hidden]{display:none!important}
 body #bitbNoticeDock{display:flex;flex-direction:column;gap:0;position:fixed;left:calc(var(--bitb-visible-left,0px) + 8px);width:calc(var(--bitb-visible-width,100vw) - 16px);top:calc(var(--bitb-visible-top,0px) + var(--bitb-visible-height,100vh) - var(--fg-nav-total) - 4px);transform:translateY(-100%);max-height:calc(var(--bitb-visible-height,100vh)*.48);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:1000003;box-sizing:border-box}
 body #bitbNoticeDock :is(.privacyBanner,.updateToast){position:relative!important;inset:auto!important;transform:none!important;box-sizing:border-box;width:100%!important;max-width:none!important;flex-shrink:0;margin:0!important;z-index:auto!important}
 body #bitbNoticeDock .privacyBanner{border-radius:10px}.privacyActions button{min-height:36px}
 body #map,body.fg-exploring #map,body.fg-popup-open #map{bottom:calc(var(--bitb-bottom-reserve) + max(0px,calc(100vh - var(--bitb-visible-height,100vh) - var(--bitb-visible-top,0px))))!important}
 body:is([data-fg-mode=explore],[data-fg-mode=plan],[data-fg-mode=outlook],[data-fg-mode=saved],[data-fg-mode=log]) #fgExplorer.open{height:max(40px,calc(var(--bitb-usable-height) + var(--bitb-visible-top,0px) - var(--fg-top)))!important;max-height:max(40px,calc(var(--bitb-usable-height) + var(--bitb-visible-top,0px) - var(--fg-top)))!important}
 body :is(.modal,.sheetwrap,.targetFishSheet,.habitatSheet,.areaSheet,.fishingStyleSheet,.fishRegsModal),body #fgOverlay{height:var(--bitb-usable-height)!important}
 body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard,.privateLogDialog),body #fgOverlay .fg-menu{max-height:max(40px,calc(var(--bitb-usable-height) - 24px))!important}
 body #fgMobileLayers{max-height:max(40px,calc(var(--bitb-usable-height) - var(--fg-top) - 12px))!important}
 body .fg-toast{bottom:calc(var(--bitb-bottom-reserve) + 8px)!important}
}
@media(max-width:760px){body .leaflet-popup-content{max-height:max(40px,calc(var(--bitb-usable-height) - var(--fg-top) - 80px))!important;overflow-y:auto!important;overflow-x:hidden!important}}

/* v1.3.31: long cards scroll internally; touch content never drags the map. */
body .leaflet-popup-content{box-sizing:border-box;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;touch-action:pan-y!important;-webkit-overflow-scrolling:touch;scroll-padding-top:60px;scroll-padding-bottom:20px;padding-bottom:16px!important}
body #fgDrawer{touch-action:pan-y!important;cursor:default}
body #fgDrawer .fg-drawer-head{position:sticky;top:0;z-index:20;flex-shrink:0;background:#f4f8fc}
body #fgMove{touch-action:none!important;cursor:move}
body #fgDetail{overflow:visible!important;padding-bottom:20px!important}
body .fg-popup-chrome:not(.fg-drawer)>.fg-popup-x{position:sticky!important;top:0;z-index:20;background:#e8ecef!important}
body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard,.privateLogDialog,.fg-menu){overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scroll-padding-bottom:20px;padding-bottom:20px!important}
@media(max-width:760px){
 body :is(.modal,.sheetwrap,.targetFishSheet,.habitatSheet,.areaSheet,.fishingStyleSheet,.fishRegsModal),body #fgOverlay{top:max(var(--fg-top),var(--bitb-visible-top,0px))!important;height:max(0px,calc(var(--bitb-usable-height) + var(--bitb-visible-top,0px) - max(var(--fg-top),var(--bitb-visible-top,0px))))!important}
 body :is(.card,.sheet,.targetFishPanel,.habitatPanel,.areaPanel,.fishingStylePanel,.fishRegsCard,.privateLogDialog),body #fgOverlay .fg-menu{max-height:max(0px,calc(var(--bitb-usable-height) + var(--bitb-visible-top,0px) - max(var(--fg-top),var(--bitb-visible-top,0px)) - 16px))!important}
}
/* Use the measured visible viewport directly; retain the full nav/safe-area clearance. */
@media(max-width:760px){body #map,body.fg-exploring #map,body.fg-popup-open #map{top:max(var(--fg-top),var(--bitb-visible-top,0px))!important;bottom:auto!important;height:max(0px,calc(var(--bitb-visible-top,0px) + var(--bitb-visible-height,100dvh) - var(--fg-nav-total) - max(var(--fg-top),var(--bitb-visible-top,0px))))!important}}
/* v1.3.32: separate result actions from the resize strip. */
body #fgExplorer #fgList{box-sizing:border-box}
body #fgExplorer .fg-placecard>.fg-save{position:relative;z-index:1;flex:0 0 44px;min-width:44px!important;min-height:44px!important;padding:10px!important;box-sizing:border-box;display:flex;align-items:center;justify-content:center;pointer-events:auto;touch-action:pan-y}
body #fgExplorer .fg-placecard>.fg-save .fg-icon{pointer-events:none}
body .fg-save[aria-pressed=true]{color:#082f50!important}
body .fg-save[aria-pressed=true] svg{fill:#082f50!important;stroke:#082f50!important}
/* Place the resize tab outside the list, on the map side of the panel edge. */
body #fgExplorer #fgPanelResize{position:fixed;left:calc(var(--fg-rail) + var(--fg-user-panel-width,354px));right:auto;top:45%;width:22px;border-left:0;border-right:1px solid #92bada;border-radius:0 7px 7px 0;box-shadow:2px 0 5px #082f5014}
body #fgExplorer #fgList{padding-right:14px!important}
@media(max-width:760px){body #fgExplorer #fgList{padding-right:3px!important}}

/* Area Outlook: isolated summary view; existing cards and popups are unchanged. */
#fgExploreViews button{min-width:0;white-space:normal}
.fg-outlook-note{font-size:11px;line-height:1.5;color:#52738a;margin:12px 0}
.fg-outlook-area{border:1px solid #c5dced;border-radius:10px;margin:0 0 12px;background:#fff;overflow:hidden}
.fg-outlook-area summary{cursor:pointer;padding:14px 12px;color:#0b385a;list-style-position:inside}
.fg-outlook-area summary strong{font-size:13px;line-height:1.5}
.fg-outlook-area summary small{display:block;font-size:11px;color:#52738a;margin-top:8px}
.fg-outlook-counts{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.fg-outlook-level{display:inline-block;font-size:10px;font-weight:800;padding:4px 6px;border-radius:4px;background:#fff0bb;color:#6d5010}
.fg-outlook-level.hot{background:#ffdad2;color:#922b19}
.fg-outlook-level.medium{background:#dceafb;color:#064c87}
.fg-outlook-place{display:block;width:100%;text-align:left;border:0;border-top:1px solid #d8e5ee;background:#fff;padding:12px;color:#123e5d;cursor:pointer}
.fg-outlook-place strong{display:block;margin-bottom:7px;font-size:13px}
.fg-outlook-place small{display:block;font-size:11px;line-height:1.5;margin-top:5px;color:#52738a}
.fg-outlook-place:hover,.fg-outlook-place[aria-pressed="true"]{background:#edf6fe}
.fg-outlook-area>div>.fg-outlook-note{padding:0 12px}
.fg-outlook-area summary:focus-visible,.fg-outlook-place:focus-visible{outline:3px solid #0080b7;outline-offset:-3px}

/* Independent Focus columns: conditions fill the space under current areas. */
#hourlySummaryModal .hourlySummaryGrid{column-count:initial;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;align-items:start}
#hourlySummaryModal .focusSummaryColumn{display:flex;flex-direction:column;gap:7px;min-width:0}
#hourlySummaryModal .focusSummaryColumn>.hourlySummaryBox{display:block;width:100%;box-sizing:border-box;min-width:0;margin:0;overflow-wrap:anywhere}
/* Preserve the existing phone breakpoint, formatting and card order. */
@media(max-width:430px){
 #hourlySummaryModal .hourlySummaryGrid{grid-template-columns:minmax(0,1fr)}
 #hourlySummaryModal .focusSummaryColumn{display:contents}
 #hourlySummaryModal .focusSummaryColumn:first-child>.hourlySummaryBox:nth-child(1){order:1}
 #hourlySummaryModal .focusSummaryColumn:first-child>.hourlySummaryBox:nth-child(2){order:2}
 #hourlySummaryModal .focusSummaryColumn:last-child>.hourlySummaryBox{order:3}
 #hourlySummaryModal .focusSummaryColumn:first-child>.hourlySummaryBox:nth-child(3){order:4}
}

/* Bookmark actual Fishing Focus locations using the shared Saved Spots store. */
.focusSpotBookmark{box-sizing:border-box;min-height:0;float:right;display:inline-grid;place-items:center;width:28px;height:28px;min-width:28px;padding:6px;margin:0 0 4px 4px;border:0;border-radius:5px;background:transparent;color:#527990;cursor:pointer}
.focusSpotBookmark .fg-icon{width:14px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.focusSpotBookmark[aria-pressed="true"]{background:transparent;color:#725133}
.focusSpotBookmark[aria-pressed="true"] .fg-icon{fill:#725133}
.focusSpotBookmark:focus-visible{outline:2px solid #0075b6;outline-offset:2px}
.focusWindowRow:after,.focusAreaRow:after{content:"";display:block;clear:both}
@media(max-width:760px){.focusSpotBookmark{width:32px;height:32px;min-width:32px}}

.fg-outlook-location{display:flex;align-items:flex-start;border-bottom:1px solid #d9e6f0}.fg-outlook-location .fg-outlook-place{flex:1;min-width:0;width:auto;border-bottom:0}.fg-outlook-location .focusSpotBookmark{float:none;flex:none;margin:8px 6px 0 0}

body #fgToast{z-index:2147483646;pointer-events:none}

body button.focusSpotBookmark{min-height:0!important}

