/* ---- v3 effects (lightweight; disabled under reduced motion) ---- */
.sp-ic{display:inline-flex;width:30px;height:30px;border-radius:9px;align-items:center;justify-content:center;vertical-align:middle;margin-right:10px;flex:none;background:var(--lake2);color:#0b5f8f}
.sp-ic.h{background:#fde6db;color:#9a3b12}.sp-ic svg{width:22px;height:22px}.sp-ic img{width:26px;height:26px;display:block}.sp-ic{background:#fffaf3;box-shadow:inset 0 0 0 1px #ecdcc8}.sp-ic.h{background:#fff4ec}
td .sp-ic{width:28px;height:28px}
/* hero scenery */
.hero{position:relative;overflow:hidden;isolation:isolate}
.scene{position:absolute;inset:auto 0 0 0;height:190px;z-index:-1;pointer-events:none}
.scene svg{position:absolute;left:0;bottom:0;width:100%;height:100%;will-change:transform}
.sunorb{position:absolute;left:50%;top:-40px;width:520px;height:520px;margin-left:-260px;border-radius:50%;background:radial-gradient(circle,rgba(255,196,140,.55) 0,rgba(255,196,140,0) 62%);z-index:-2;pointer-events:none;animation:breathe 9s ease-in-out infinite}
@keyframes breathe{50%{transform:scale(1.06);opacity:.85}}
.fishlayer{position:absolute;left:0;right:0;bottom:12px;height:120px;z-index:-1;pointer-events:none}
.fish{position:absolute;left:-80px;width:46px;color:rgba(11,111,164,.55);animation:swim linear infinite;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.fish svg{display:block;width:100%;animation:wiggle 1.1s ease-in-out infinite;transform-origin:70% 50%}
.fish.scatter svg{animation-duration:.25s}
@keyframes swim{from{left:-80px}to{left:calc(100% + 80px)}}
@keyframes wiggle{50%{transform:rotate(4deg) translateY(2px)}}
/* map shimmer + ripple */
.mapbox:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.18) 45%,transparent 60%);background-size:250% 100%;animation:shimmer 7s linear infinite;mix-blend-mode:soft-light}
@keyframes shimmer{from{background-position:120% 0}to{background-position:-120% 0}}
.rip{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;border:2px solid rgba(11,111,164,.75);pointer-events:none;animation:rip 1.1s cubic-bezier(.1,.6,.3,1) forwards}
.rip.r2{animation-delay:.18s}.rip.r3{animation-delay:.36s}
@keyframes rip{from{transform:scale(1);opacity:1}to{transform:scale(7);opacity:0}}
/* sunrise countdown */
.cd{margin:12px 0 4px}.cd .tr{position:relative;height:10px;border-radius:9px;background:linear-gradient(90deg,#2f4a6b,#7c5a8a 35%,#e88a5a 70%,#ffd27a);overflow:visible}
.cd .mask{position:absolute;right:0;top:0;bottom:0;background:#efe8e0;border-radius:0 9px 9px 0;transition:width 1.4s cubic-bezier(.2,.8,.2,1)}
.cd .sun{position:absolute;top:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:radial-gradient(circle,#fff6c9 0,#ffc04d 55%,#f08a24 100%);box-shadow:0 0 0 4px rgba(255,192,77,.25),0 0 16px rgba(255,170,60,.7);transition:left 1.4s cubic-bezier(.2,.8,.2,1)}
.cd .lab{display:flex;justify-content:space-between;font-size:12px;color:#5b6b7a;margin-top:6px}.cd .lab b{color:var(--ink)}
/* temp card */
.tempc{position:relative;overflow:hidden;transition:background 1s}
.tempc.warm{background:linear-gradient(160deg,#fff 30%,#ffe9d6)}.tempc.cool{background:linear-gradient(160deg,#fff 30%,#dcefff)}
.thermo{position:absolute;right:18px;top:18px;width:26px;height:86px}
.thermo .merc{transform-origin:50% 100%;animation:fill 1.6s cubic-bezier(.2,.8,.2,1) both}
@keyframes fill{from{transform:scaleY(.05)}}
.tempc .wave{position:absolute;left:0;right:0;bottom:-6px;height:28px;opacity:.5}
.tempc .wave path{animation:wv 6s linear infinite}
@keyframes wv{to{transform:translateX(-50%)}}
@media(max-width:860px){.fish:nth-child(n+3){display:none}.mapbox:after{animation-duration:12s}.scene{height:120px}}
@media(prefers-reduced-motion:reduce){.fish,.fishlayer,.mapbox:after{display:none!important}.sunorb,.scene svg{animation:none!important;transform:none!important}}

.tabs a[href='#fishing']::before,.tabs a[href='#hunting']::before,.tabs a[href='#licenses']::before{content:'';display:inline-block;width:22px;height:22px;vertical-align:-6px;margin-right:6px;background:center/contain no-repeat}.tabs a[href='#fishing']::before{background-image:url(/sp/largemouth-bass.svg)}.tabs a[href='#hunting']::before{background-image:url(/sp/white-tailed-deer.svg)}.tabs a[href='#licenses']::before{background-image:url(/sp/license.svg)}.tabs a.on::before{background-color:#fffaf3;border-radius:6px}
