:root{color-scheme:dark;--bg:#041018;--surface:#081c26;--surface-2:#0d2733;--line:rgba(139,211,230,.15);--text:#f4fbfd;--muted:#91aab5;--cyan:#39c8ed;--blue:#087ab7;--green:#a6ee45;--amber:#f7af45;--red:#ff6c72;--shadow:0 18px 60px rgba(0,0,0,.34)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(23,142,181,.23),transparent 36rem),linear-gradient(180deg,#020a10,var(--bg) 44%,#020b11);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.app-shell{width:min(100%,480px);min-height:100vh;margin:auto;padding:14px 16px calc(108px + env(safe-area-inset-bottom));position:relative}
.topbar{display:grid;grid-template-columns:58px 1fr 42px;gap:12px;align-items:center;padding:6px 0 18px}.brand-mark{width:58px;height:58px;object-fit:cover;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
h1,h2,h3,p{margin-top:0}h1{font-size:1.28rem;margin:0}h2{font-size:1.55rem;line-height:1.15;margin-bottom:7px}h3{font-size:1rem;margin-bottom:7px}.eyebrow{margin:0 0 4px;color:var(--green);font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.muted,.water-card p,.feed-card p,.feedback-card p,.factor-list p,.method-card p,.empty-state p{color:var(--muted);line-height:1.45}
.icon-button,.text-button,.mini-button,.chip,.nav-item,.feed-actions button,.back-button{border:0;color:var(--text)}.icon-button{width:42px;height:42px;border-radius:50%;background:var(--surface-2);color:var(--green)}.text-button{padding:7px 11px;border-radius:999px;background:rgba(57,200,237,.11);color:#dff9ff;font-size:.8rem}.mini-button{padding:9px 12px;border-radius:10px;background:rgba(57,200,237,.13);color:var(--cyan);font-weight:750}.back-button{padding:8px 0;background:transparent;color:var(--cyan);margin-bottom:12px}
.screen{display:none;animation:rise .2s ease}.screen.active{display:block}
.hero-panel{display:grid;grid-template-columns:1fr 112px;gap:14px;align-items:center;padding:20px;min-height:210px;border:1px solid rgba(57,200,237,.2);border-radius:24px;background:linear-gradient(145deg,rgba(7,25,35,.95),rgba(8,48,59,.94)),radial-gradient(circle at 90% 10%,rgba(166,238,69,.24),transparent 13rem);box-shadow:var(--shadow)}.live-label{display:inline-block;margin-bottom:20px;color:var(--cyan);font-size:.67rem;font-weight:800}.score-ring{--score:50;display:grid;place-items:center;width:108px;height:108px;border-radius:50%;background:radial-gradient(circle at center,#0a2530 58%,transparent 60%),conic-gradient(var(--green) calc(var(--score)*1%),rgba(255,255,255,.08) 0);box-shadow:0 0 28px rgba(166,238,69,.14)}.score-ring span{font-size:2.1rem;font-weight:850}.score-ring small{margin-top:-24px;color:var(--muted);font-size:.65rem;text-transform:uppercase}.score-ring.large{width:128px;height:128px;flex:0 0 auto}
.conditions-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin:12px 0;overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--line)}.conditions-strip div{padding:12px 6px;text-align:center;background:rgba(8,28,38,.96)}.conditions-strip span,.conditions-strip small{display:block;color:var(--muted);font-size:.63rem}.conditions-strip strong{display:block;margin:4px 0;font-size:.76rem}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:13px 0}.quick-action,.primary-button{border:0;border-radius:14px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#fff;font-weight:800}.quick-action{min-height:68px}.quick-action.secondary{background:linear-gradient(135deg,#173745,#0e2731)}.quick-action span{display:block;color:var(--green);font-size:1.35rem}.primary-button{width:100%;min-height:52px;padding:0 18px}.content-block,.catch-form,.factor-list article,.method-card,.score-detail,.feed-card{border:1px solid var(--line);border-radius:20px;background:rgba(8,28,38,.84)}.content-block{padding:16px;margin-top:14px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 14px}.section-head.compact{margin:0 0 8px}.section-head h2,.section-head h3{margin-bottom:0}.sticky-head{position:sticky;top:0;z-index:4;padding:8px 0;background:linear-gradient(180deg,var(--bg) 75%,transparent)}
.card-stack{display:grid;gap:10px}.water-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(13,39,51,.72);text-align:left;color:inherit}.water-card h3,.water-card p{margin-bottom:4px}.water-card p{font-size:.82rem}.water-card .score{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:rgba(57,200,237,.12);color:var(--green);font-weight:850}.water-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:.7rem}.status{display:inline-flex;align-items:center;gap:5px}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--amber)}.status.sensitive:before{background:var(--red)}.skeleton{height:76px;border-radius:16px;background:linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.09),rgba(255,255,255,.04));background-size:200% 100%;animation:shimmer 1.3s infinite}
.feedback-card{background:linear-gradient(145deg,rgba(14,43,52,.9),rgba(8,28,38,.9))}.feedback-actions{display:flex;gap:7px;flex-wrap:wrap}.feedback-actions button{border:1px solid var(--line);border-radius:999px;padding:8px 10px;background:rgba(255,255,255,.05);color:var(--text);font-size:.76rem}.feedback-actions button.selected{border-color:var(--green);background:rgba(166,238,69,.12);color:var(--green)}
.confidence,.pill{padding:8px 10px;border-radius:999px;background:rgba(247,175,69,.12);color:var(--amber);font-size:.7rem;white-space:nowrap}.score-detail{display:flex;align-items:center;gap:18px;padding:18px}.factor-list{display:grid;gap:9px;margin:12px 0}.factor-list article{display:flex;gap:12px;padding:14px}.factor-list h3,.factor-list p{margin-bottom:3px}.factor-list p{font-size:.82rem}.factor-icon{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:13px;font-size:.78rem;font-weight:850}.factor-icon.positive{background:rgba(166,238,69,.12);color:var(--green)}.factor-icon.neutral{background:rgba(247,175,69,.12);color:var(--amber)}.method-card{padding:16px;margin-bottom:12px}.method-card span{display:block;color:var(--muted);font-size:.7rem}.method-card strong{display:block;margin:4px 0;color:var(--green)}
.search-box{display:flex;align-items:center;gap:9px;padding:0 12px;border:1px solid var(--line);border-radius:14px;background:#061821}.search-box input{border:0;background:transparent}.filter-row{display:flex;gap:8px;overflow:auto;padding:11px 0;scrollbar-width:none}.chip{flex:0 0 auto;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06)}.chip.active{background:rgba(166,238,69,.14);color:var(--green)}
.map-panel{position:relative;height:225px;overflow:hidden;margin-bottom:12px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(5,23,31,.96),rgba(8,48,57,.9)),repeating-linear-gradient(45deg,transparent 0 22px,rgba(255,255,255,.03) 22px 23px)}.river-line{position:absolute;inset:-45px 43%;width:70px;transform:rotate(13deg);border-radius:60px;background:linear-gradient(180deg,rgba(57,200,237,.18),rgba(57,200,237,.65),rgba(8,122,183,.22))}.map-pin{position:absolute;z-index:2;width:42px;height:42px;border:3px solid rgba(166,238,69,.65);border-radius:50%;background:#09222d;color:var(--text);font-size:.75rem;font-weight:850}.pin-a{left:26px;top:45px}.pin-b{right:38px;top:72px}.pin-c{left:88px;bottom:38px}.pin-d{right:52px;bottom:32px}.map-label{position:absolute;color:rgba(244,251,253,.45);font-size:.62rem}.map-label.lu{left:12px;top:12px}.map-label.ma{right:12px;top:18px}.map-label.sp{left:35px;bottom:12px}.empty-state{padding:28px 18px;text-align:center;color:var(--muted)}.empty-state span,.empty-state strong{display:block;margin-bottom:8px}.empty-state span{font-size:2rem}
.water-hero{padding:22px;min-height:220px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(3,16,24,.15),rgba(3,16,24,.94)),radial-gradient(circle at 80% 20%,rgba(57,200,237,.28),transparent 12rem),var(--surface-2)}.water-hero .score{font-size:2.5rem;color:var(--green);font-weight:850}.detail-grid,.mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}.detail-grid div,.mini-stats div{padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(8,28,38,.84)}.detail-grid span,.mini-stats span{display:block;color:var(--muted);font-size:.65rem}.detail-grid strong,.mini-stats strong{display:block;margin-top:4px;font-size:.83rem}.warning-box,.spot-promise{display:flex;gap:10px;padding:13px;border:1px solid rgba(247,175,69,.24);border-radius:14px;background:rgba(247,175,69,.08);color:#f9dfb8}.warning-box p,.spot-promise p{margin:0;font-size:.8rem;line-height:1.4}
.step-indicator{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:12px}.step-indicator span{height:4px;border-radius:4px;background:rgba(255,255,255,.08)}.step-indicator span.active{background:var(--green)}.step-indicator small{grid-column:1/-1;color:var(--muted)}.catch-form{display:grid;gap:13px;padding:16px}label{display:grid;gap:7px;color:#d9edf4;font-size:.82rem;font-weight:700}input,select,textarea{width:100%;min-height:47px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:#04141d;color:var(--text)}textarea{padding:12px;resize:vertical}.split-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.photo-drop{display:grid;place-items:center;min-height:100px;border:1px dashed rgba(57,200,237,.35);border-radius:15px;background:rgba(57,200,237,.04)}.photo-drop span{font-size:1.4rem;color:var(--cyan)}.photo-drop small{color:var(--muted)}.privacy-box{display:grid;gap:8px;margin:0;padding:12px;border:1px solid var(--line);border-radius:15px}.privacy-box legend{padding:0 5px;font-weight:800}.privacy-option{grid-template-columns:20px 1fr;align-items:start;padding:10px;border:1px solid transparent;border-radius:12px}.privacy-option.selected{border-color:rgba(166,238,69,.28);background:rgba(166,238,69,.06)}.privacy-option input{min-height:auto;margin-top:4px}.privacy-option strong,.privacy-option small{display:block}.privacy-option small{margin-top:3px;color:var(--muted);font-weight:500;line-height:1.35}.spot-promise{border-color:rgba(166,238,69,.2);background:rgba(166,238,69,.06);color:#dff9bf}.catch-card{display:grid;grid-template-columns:50px 1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:16px;background:rgba(13,39,51,.72)}.catch-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:rgba(57,200,237,.12);font-size:1.5rem}.catch-card h3,.catch-card p{margin-bottom:3px}.catch-card p{color:var(--muted);font-size:.77rem}.delete-catch{border:0;background:transparent;color:var(--red)}
.feed-card{display:flex;align-items:flex-start;gap:12px;padding:15px;margin-top:10px}.avatar{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:50%;background:var(--green);color:#07131a;font-weight:850}.avatar.ai{background:var(--cyan)}.feed-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:.7rem}.feed-meta strong{color:var(--text)}.location-tag{display:inline-block;color:var(--cyan);font-size:.74rem}.feed-actions{display:flex;gap:7px;margin-top:11px}.feed-actions button{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.06);font-size:.72rem}.feed-actions .liked{color:var(--green);background:rgba(166,238,69,.1)}
.bottom-nav{position:fixed;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));z-index:10;display:grid;grid-template-columns:1fr 1fr 58px 1fr 1fr;gap:3px;width:min(calc(100% - 20px),460px);padding:7px;border:1px solid var(--line);border-radius:19px;background:rgba(2,11,17,.96);transform:translateX(-50%);box-shadow:var(--shadow);backdrop-filter:blur(15px)}.nav-item{min-height:52px;border-radius:13px;background:transparent;color:var(--muted);font-size:.62rem}.nav-item span{display:block;margin-bottom:3px;font-size:1rem}.nav-item.active{background:rgba(57,200,237,.1);color:var(--cyan)}.nav-item.central{transform:translateY(-18px);min-height:58px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--cyan));color:#041017;font-size:0;box-shadow:0 12px 28px rgba(57,200,237,.25)}.nav-item.central span{margin:0;font-size:1.7rem}
.toast{position:fixed;left:50%;bottom:105px;z-index:20;width:max-content;max-width:calc(100% - 32px);padding:12px 16px;border-radius:999px;background:var(--green);color:#041017;font-weight:800;opacity:0;pointer-events:none;transform:translate(-50%,14px);transition:.18s ease}.toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes shimmer{to{background-position:-200% 0}}
@media(min-width:760px){.app-shell{padding-top:24px}}@media(max-width:370px){.hero-panel{grid-template-columns:1fr}.score-ring{width:94px;height:94px}.conditions-strip{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr 1fr}}

/* V0.4 product layout: expressive headings and separate desktop workspace */
h1,h2,h3,.desktop-brand strong{font-family:"Bahnschrift Condensed","Arial Narrow",Impact,sans-serif;font-stretch:condensed;letter-spacing:.025em}
button{font-family:inherit}.web-app{min-height:100vh}.desktop-sidebar{display:none}.setup-page{width:min(680px,calc(100% - 32px));margin:8vh auto;padding:32px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.setup-page img{width:86px;border-radius:18px}.setup-page li{margin:.8rem 0;line-height:1.5}.setup-page code{color:var(--green)}
.desktop-dashboard{display:grid;gap:14px}.desktop-toolbar{display:grid;gap:10px}.waters-grid,.catches-grid{display:grid;gap:10px}.secondary-button,.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:0 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2);color:var(--text);text-decoration:none;font-weight:750}.primary-link{background:linear-gradient(135deg,var(--cyan),var(--blue));color:white}.empty-compact{padding:18px;border:1px dashed var(--line);border-radius:14px;color:var(--muted);text-align:center}.gps-fields{padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(57,200,237,.035)}.data-trust{display:grid;gap:4px}.data-trust p{margin-bottom:0;color:var(--muted);line-height:1.5}.toast.error{background:var(--red);color:white}.bottom-nav{grid-template-columns:repeat(4,1fr)}
@media(min-width:800px){
  body{background:linear-gradient(125deg,#020a10,#061923 55%,#031019)}
  .web-app{display:grid;grid-template-columns:248px minmax(0,1fr)}
  .desktop-sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:24px 18px;border-right:1px solid var(--line);background:rgba(3,14,21,.92)}
  .desktop-brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.desktop-brand img{width:52px;height:52px;object-fit:cover;border-radius:14px}.desktop-brand strong,.desktop-brand small{display:block}.desktop-brand strong{font-size:1.25rem}.desktop-brand small{margin-top:3px;color:var(--muted);font-size:.67rem;line-height:1.3}
  .desktop-sidebar nav{display:grid;gap:7px}.desktop-sidebar .nav-item{display:flex;align-items:center;gap:13px;min-height:50px;padding:0 14px;text-align:left;font-size:.9rem}.desktop-sidebar .nav-item span{margin:0;font-size:1.1rem}.desktop-sidebar .admin-link{margin-top:auto;padding:13px;border:1px solid var(--line);border-radius:13px;color:var(--muted);text-decoration:none}
  .app-shell{width:100%;max-width:1440px;margin:0;padding:24px 32px 48px}.topbar{grid-template-columns:1fr 48px;margin-bottom:16px}.topbar .brand-mark{display:none}.topbar h1{font-size:1.8rem}.topbar .eyebrow{font-size:.77rem}
  .bottom-nav{display:none}.desktop-dashboard{grid-template-columns:minmax(0,1.5fr) minmax(320px,.75fr);align-items:start}.desktop-top-waters{margin-top:0;min-height:100%}
  .hero-panel{min-height:270px;padding:30px;grid-template-columns:1fr 150px}.hero-panel h2{font-size:2.35rem}.score-ring{width:142px;height:142px}.score-ring span{font-size:2.75rem}
  .conditions-strip div{padding:18px 10px}.conditions-strip strong{font-size:1rem}.quick-action{min-height:82px;font-size:1rem}
  .content-block{padding:22px}.section-head h2{font-size:2rem}.desktop-toolbar{grid-template-columns:minmax(320px,1fr) auto}.filter-row{padding:14px 0}
  .waters-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.water-card{min-height:104px;padding:18px}.water-card h3{font-size:1.18rem}
  .catch-form{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px}.catch-form>fieldset,.catch-form>.gps-fields,.catch-form>.spot-promise,.catch-form>.primary-button,.catch-form>label:has(textarea){grid-column:1/-1}
  .catches-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.water-hero{min-height:300px;padding:34px}.water-hero h2{font-size:2.4rem}.detail-grid{grid-template-columns:repeat(3,1fr)}.data-trust{grid-template-columns:1fr 1.5fr;align-items:center}
  .toast{bottom:30px}
}
@media(min-width:1200px){.web-app{grid-template-columns:280px minmax(0,1fr)}.app-shell{padding-inline:48px}.waters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.water-open{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left}.favorite-button{align-self:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.04);color:var(--muted);font-size:1.35rem}.favorite-button.active{border-color:rgba(166,238,69,.35);background:rgba(166,238,69,.1);color:var(--green)}.ranking-card{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;width:100%;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(13,39,51,.72);color:var(--text);text-align:left}.ranking-card.active{border-color:rgba(166,238,69,.4);background:rgba(166,238,69,.07)}.ranking-card strong,.ranking-card small{display:block}.ranking-card small{margin-top:3px;color:var(--muted);font-size:.68rem}.rank-badge{padding:6px 8px;border-radius:8px;background:rgba(57,200,237,.11);color:var(--cyan);font-size:.67rem;font-weight:800}.rank-score{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(166,238,69,.1);color:var(--green);font-weight:850}.favorite-hint{margin:10px 0 0;color:var(--muted);font-size:.75rem;line-height:1.4}.detail-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:12px}.favorite-detail{white-space:nowrap}
@media(max-width:430px){.detail-actions{grid-template-columns:1fr}.favorite-detail{width:100%}}

.bottom-nav{grid-template-columns:repeat(5,1fr)}.account-grid{display:grid;gap:14px}.account-card{display:grid;gap:13px;padding:20px;border:1px solid var(--line);border-radius:20px;background:rgba(8,28,38,.84)}.account-card h3{font-size:1.35rem}.account-card>small{color:var(--muted);line-height:1.45}.profile-card-app{grid-template-columns:auto 1fr auto;align-items:center}.profile-avatar{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,var(--green),var(--cyan));color:#041017;font-weight:900;font-size:1.25rem}
@media(min-width:800px){.account-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px}.account-card{padding:28px}.profile-card-app{max-width:800px}}
@media(max-width:520px){.profile-card-app{grid-template-columns:auto 1fr}.profile-card-app .secondary-button{grid-column:1/-1;width:100%}}

.toast{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:650;letter-spacing:0}.auth-gate{width:min(1050px,calc(100% - 28px));margin:0 auto;padding:clamp(24px,6vh,70px) 0}.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:clamp(30px,7vh,70px)}.auth-brand img{width:68px;height:68px;object-fit:cover;border-radius:18px}.auth-brand h1{margin:0;font-size:1.6rem}.auth-intro{max-width:650px;margin-bottom:24px}.auth-intro h2{font-size:clamp(2rem,6vw,4rem)}.auth-intro p{color:var(--muted);font-size:1.05rem;line-height:1.55}.registration-closed{align-content:center;border-color:rgba(247,175,69,.3)}.registration-closed p{color:var(--muted);line-height:1.5}.password-card{margin-top:14px;max-width:720px}.password-card .primary-button{margin-top:4px}

/* Mobile app polish */
html,body{max-width:100%;overflow-x:hidden}img{max-width:100%}.screen,.content-block,.water-card,.catch-form{min-width:0}
@media(max-width:799px){
  .app-shell{width:100%;max-width:none;padding:10px 14px calc(112px + env(safe-area-inset-bottom))}
  .topbar{position:sticky;top:0;z-index:7;grid-template-columns:52px minmax(0,1fr) 44px;margin:0 -14px 14px;padding:10px 14px;background:rgba(3,16,24,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(139,211,230,.08)}
  .brand-mark{width:52px;height:52px;border-radius:14px}.topbar h1{font-size:1.38rem}.topbar .eyebrow{font-size:.67rem}
  h2{font-size:1.65rem}h3{font-size:1.08rem}.screen{padding-bottom:8px}
  .hero-panel{grid-template-columns:minmax(0,1fr) 104px;min-height:220px;padding:20px;border-radius:22px}.hero-panel h2{font-size:1.75rem}.live-label{margin-bottom:24px}
  .score-ring{width:100px;height:100px}.score-ring span{font-size:2rem}
  .conditions-strip{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:18px}.conditions-strip div{display:grid;align-content:center;min-height:78px;padding:12px;text-align:left}.conditions-strip strong{font-size:1rem}.conditions-strip span,.conditions-strip small{font-size:.7rem}
  .quick-grid{gap:10px}.quick-action{min-height:78px;border-radius:16px;font-size:.9rem}
  .content-block{padding:18px;border-radius:19px}.section-head{align-items:flex-start}.section-head>div{min-width:0}.section-head h2{font-size:1.65rem}
  .waters-grid,.catches-grid{gap:12px}.water-card{min-height:98px;padding:16px;border-radius:17px}.water-open h3{font-size:1.08rem}.favorite-button{width:46px;height:46px}
  input,select,textarea{min-height:52px;font-size:16px}.catch-form{gap:15px;padding:17px;border-radius:20px}.privacy-option{padding:13px 10px}.gps-fields{padding:15px}
  .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid>div:last-child{grid-column:1/-1}.water-hero{min-height:235px;padding:22px}.water-hero h2{font-size:1.9rem}
  .bottom-nav{left:0;bottom:0;width:100%;max-width:none;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:20px 20px 0 0;transform:none}.nav-item{min-height:58px;font-size:.66rem}.nav-item span{font-size:1.12rem}.nav-item.central{min-height:60px;transform:translateY(-10px)}
  .toast{bottom:calc(88px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);border-radius:14px;text-align:center}
  .account-card{padding:19px}.auth-gate{padding-top:24px}.auth-brand{margin-bottom:36px}.auth-intro h2{font-size:2.35rem}
}
@media(max-width:390px){
  .app-shell{padding-inline:11px}.topbar{margin-inline:-11px;padding-inline:11px}.hero-panel{grid-template-columns:1fr 88px;padding:17px}.score-ring{width:86px;height:86px}.score-ring span{font-size:1.75rem}.split-fields{grid-template-columns:1fr}.bottom-nav{padding-inline:4px}.nav-item{font-size:.6rem}
}


/* Gewässerkarte und gepflegter Fischbestand */
.water-map-panel{margin:18px 0 24px;padding:18px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(13,39,51,.95),rgba(5,20,29,.92));box-shadow:var(--shadow)}
.map-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:14px}.map-heading h3{margin:2px 0 0}.map-legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.78rem}.map-legend span{display:flex;gap:6px;align-items:center}.map-legend i{width:9px;height:9px;border-radius:50%;background:var(--cyan)}.map-legend i.verified{background:#72d63c}.map-legend i.research{background:#f7af45}.map-legend i.restricted{background:#ff7a45}
.leaflet-map{width:100%;min-height:320px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#08202a;color:#10242c}.global-water-map{height:430px}.detail-water-map{height:340px;margin-top:12px}.leaflet-container{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.leaflet-tooltip{border:0;border-radius:10px;background:#071923;color:#f4fbfd;box-shadow:0 8px 30px rgba(0,0,0,.3)}.map-empty{display:grid;place-items:center;min-height:320px;color:var(--muted)}
.species-chips{display:flex;flex-wrap:wrap;gap:9px}.species-chips span,.species-check span{padding:9px 13px;border:1px solid rgba(57,200,237,.25);border-radius:999px;background:rgba(57,200,237,.09);color:#dff8ff}
.profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.profile-facts div{padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.profile-facts span{display:block;color:var(--muted);font-size:.76rem;margin-bottom:4px}.profile-facts strong{font-size:.93rem}
.species-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.species-check{position:relative;cursor:pointer}.species-check input{position:absolute;opacity:0;pointer-events:none}.species-check span{display:block;text-align:center}.species-check input:checked+span{color:#041018;background:var(--green);border-color:var(--green);font-weight:800}

@media(max-width:720px){.water-map-panel{padding:12px;margin-inline:-2px}.map-heading{display:block}.map-legend{margin-top:10px}.global-water-map{height:350px}.detail-water-map{height:300px}.profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.species-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.admin-water-map{height:390px;margin-top:14px}.coordinate-status{margin:10px 2px 0;color:var(--muted);font-size:.82rem}.coordinate-editor .leaflet-marker-icon{filter:drop-shadow(0 6px 8px rgba(0,0,0,.45))}
@media(max-width:720px){.admin-water-map{height:330px}}

.private-map-panel{margin:18px 0 24px;padding:18px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(13,39,51,.95),rgba(5,20,29,.92));box-shadow:var(--shadow)}.private-catch-map{height:430px}.privacy-lock{padding:8px 11px;border:1px solid rgba(166,238,69,.25);border-radius:999px;background:rgba(166,238,69,.08);color:var(--green);font-size:.78rem;font-weight:800}.private-map-filters{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:12px;margin-bottom:14px}.private-map-filters label{color:var(--muted);font-size:.78rem}.private-map-filters select{display:block;width:100%;margin-top:5px}.spot-protection-note{margin:10px 2px 0;color:var(--muted);font-size:.82rem;line-height:1.5}
@media(max-width:720px){.private-map-panel{padding:12px;margin-inline:-2px}.private-catch-map{height:350px}.private-map-filters{grid-template-columns:1fr 1fr}.privacy-lock{display:inline-flex;margin-top:10px}}


/* Schneller Fang, Zugangsinfos und zugängliche Darstellung */
.topbar{grid-template-columns:58px 1fr 42px}.hero-panel{position:relative}.hero-detail-link{position:absolute;left:20px;bottom:17px;border:0;background:transparent;color:var(--cyan);font-weight:800;padding:0}.hero-detail-link:hover{text-decoration:underline}
.ranking-card{display:block;padding:0;overflow:hidden}.ranking-main{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;width:100%;padding:12px;border:0;background:transparent;color:var(--text);text-align:left}.ranking-details{width:100%;padding:8px 12px;border:0;border-top:1px solid var(--line);background:rgba(57,200,237,.06);color:var(--cyan);text-align:right;font-weight:750}
.access-overview{border-left:4px solid var(--amber)}.access-overview.public{border-left-color:var(--green)}.access-overview.day_ticket{border-left-color:var(--cyan)}.access-overview.members_only,.access-overview.permission_required{border-left-color:var(--amber)}.access-overview.closed{border-left-color:var(--red)}.compact-link{display:inline-flex;margin-top:8px}
.quick-catch-intro{display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid rgba(166,238,69,.22);border-radius:16px;background:rgba(166,238,69,.07)}.quick-catch-intro>span{font-size:1.45rem}.quick-catch-intro p{margin:3px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.catch-location-status{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025)}.catch-location-status>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface-2);color:var(--muted);font-weight:900}.catch-location-status p{margin:0;color:var(--muted);font-size:.79rem;line-height:1.4}.catch-location-status[data-mode="verified"]{border-color:rgba(166,238,69,.35);background:rgba(166,238,69,.06)}.catch-location-status[data-mode="verified"]>span{background:var(--green);color:#07131a}.optional-catch-fields{border:1px solid var(--line);border-radius:16px;padding:0 13px 13px}.optional-catch-fields summary{cursor:pointer;padding:13px 0;font-weight:800;color:var(--cyan)}.optional-catch-fields summary small{float:right;color:var(--muted);font-weight:500}.form-actions{display:flex;justify-content:flex-end;gap:10px}.edit-window-note{margin:0;color:var(--amber);font-size:.78rem}.catch-card-actions{display:flex;align-items:center;gap:6px}.edit-catch{padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--cyan);font-size:.75rem}
.leaflet-tooltip span{color:#c5d9df;font-size:.78rem}


@media(max-width:720px){.catch-location-status{grid-template-columns:28px 1fr}.catch-location-status .text-button{grid-column:1/-1;width:100%}.catch-card-actions{flex-direction:column}.hero-detail-link{left:16px;bottom:14px}}

.dashboard-water-access{display:grid;grid-template-columns:34px 1fr auto;gap:11px;align-items:center;margin-top:12px;padding:13px;border:1px solid var(--line);border-radius:16px;background:rgba(57,200,237,.055)}.dashboard-water-access>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(57,200,237,.12);color:var(--cyan)}.dashboard-water-access p{margin:3px 0 0;color:var(--muted);font-size:.78rem}.dashboard-water-access button{border:0;background:transparent;color:var(--cyan);font-weight:800}
@media(max-width:430px){.dashboard-water-access{grid-template-columns:34px 1fr}.dashboard-water-access button{grid-column:2;text-align:left;padding:0}}

.view-catch{padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:rgba(57,200,237,.08);color:var(--cyan);font-size:.75rem}.catch-detail-hero{display:grid;grid-template-columns:minmax(180px,42%) 1fr;gap:20px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:24px;background:rgba(8,28,38,.84)}.catch-detail-hero img,.catch-photo-placeholder{width:100%;height:280px;border-radius:18px;object-fit:cover;background:var(--surface-2)}.catch-photo-placeholder{display:grid;place-items:center;font-size:4rem}.weather-snapshot{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0}.weather-snapshot span{padding:9px 12px;border:1px solid rgba(57,200,237,.22);border-radius:999px;background:rgba(57,200,237,.08);color:#dff8ff}.optional-catch-fields input[type="file"]{padding:10px}.optional-catch-fields label>small{display:block;margin-top:5px;color:var(--muted);font-size:.72rem}
@media(max-width:620px){.catch-detail-hero{grid-template-columns:1fr}.catch-detail-hero img,.catch-photo-placeholder{height:240px}}

.session-panel{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(13,39,51,.96),rgba(8,28,38,.96));box-shadow:var(--shadow)}
.session-form{display:grid;gap:13px;margin-top:16px}.session-form label{display:grid;gap:7px;color:var(--muted);font-size:.88rem}.session-form input,.session-form select,.session-form textarea{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text)}.session-form small{color:var(--muted)}
.sessions-list{display:grid;gap:9px;margin-top:18px}.session-card{display:grid;grid-template-columns:minmax(0,1fr) auto 34px;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(4,16,24,.62)}.session-card div{display:grid;gap:3px;min-width:0}.session-card small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-card>span{padding:6px 9px;border-radius:999px;font-size:.75rem;font-weight:800}.session-success{background:rgba(166,238,69,.14);color:var(--green)}.session-blank{background:rgba(247,175,69,.14);color:var(--amber)}.session-card button{width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,108,114,.12);color:var(--red)}
@media(min-width:900px){.session-form{grid-template-columns:1fr 1fr}.session-form>label:nth-last-of-type(1),.session-form>button,.session-panel>.muted{grid-column:1/-1}}

.topbar>div{min-width:0;width:100%}.topbar h1{display:block;width:100%;max-width:none;white-space:normal}.preference-card{margin-top:14px;max-width:720px}.target-species-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px;margin:14px 0}.target-species-options label{display:flex;gap:9px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}

.topbar>div{width:min(500px,calc(100vw - 130px))}.topbar h1{white-space:nowrap;overflow:visible}
.session-quick{padding:0;margin-top:16px}.session-quick summary{display:grid;grid-template-columns:36px 1fr 28px;gap:10px;align-items:center;padding:15px;cursor:pointer;list-style:none}.session-quick summary::-webkit-details-marker{display:none}.session-quick summary>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(247,175,69,.14);color:var(--amber)}.session-quick summary div{display:grid;gap:2px}.session-quick summary small{color:var(--muted)}.session-quick summary>b{font-size:1.35rem;color:var(--green)}.session-quick .session-form{padding:0 15px 15px;margin-top:0}.privacy-note{color:var(--muted);font-size:.82rem}
.catch-species-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:12px 0 18px}.catch-species-stats article{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.catch-species-stats article>span{font-size:1.5rem}.catch-species-stats article div{display:grid}.catch-species-stats small{color:var(--muted)}
.target-species-options label{cursor:pointer;transition:.18s ease}.target-species-options label:has(input:checked){border-color:var(--green);background:rgba(166,238,69,.1);box-shadow:0 0 0 1px rgba(166,238,69,.18)}.target-species-options input{accent-color:var(--green);width:18px;height:18px}
@media(max-width:380px){.topbar>div{width:calc(100vw - 116px)}.topbar h1{font-size:1.18rem}}

.species-visual-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;margin-top:12px}.species-visual-grid article{display:grid;place-items:center;gap:7px;min-height:104px;padding:13px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(57,200,237,.09),rgba(8,28,38,.8));text-align:center}.species-visual-grid article>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:rgba(57,200,237,.13);color:var(--cyan);font-size:1.7rem;font-weight:900}.species-visual-grid strong{font-size:.9rem}
.profile-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.profile-visual{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.profile-symbol{display:grid;place-items:center;min-width:62px;height:48px;border-radius:13px;background:rgba(166,238,69,.09);color:var(--green);font-size:1.18rem;letter-spacing:-.12em;padding-right:.12em}.profile-visual div{display:grid;gap:3px}.profile-visual small{color:var(--muted)}.profile-visual.level-0 .profile-symbol{color:var(--muted);background:rgba(145,170,181,.08)}.profile-visual.clarity .profile-symbol{color:var(--cyan);background:rgba(57,200,237,.1)}
.missing-access-owner{display:block;padding:10px 12px;border-radius:12px;background:rgba(247,175,69,.12);color:var(--amber)}
@media(max-width:390px){.species-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-visual-grid{grid-template-columns:1fr}}

.location-notice{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;margin:-8px 0 14px;padding:10px 12px;border:1px solid rgba(247,175,69,.28);border-radius:13px;background:rgba(247,175,69,.09);color:var(--amber);font-size:.82rem}.location-notice p{margin:0;line-height:1.35}.location-notice>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(247,175,69,.12);font-weight:900}.location-notice.good{border-color:rgba(166,238,69,.24);background:rgba(166,238,69,.07);color:var(--green)}

.fish-photo{display:block;background-image:url("../assets/fish/freshwater-species.png");background-repeat:no-repeat;background-size:500% 200%;background-color:transparent}
.fish-barsch{background-position:0% 0%}.fish-zander{background-position:25% 0%}.fish-hecht{background-position:50% 0%}.fish-karpfen{background-position:75% 0%}.fish-forelle{background-position:100% 0%}
.fish-wels{background-position:0% 100%}.fish-aal{background-position:25% 100%}.fish-doebel{background-position:50% 100%}.fish-brasse{background-position:75% 100%}.fish-schleie{background-position:100% 100%}.fish-generic{background-position:0% 0%}
.species-visual-grid article>.fish-photo{width:100%;height:74px;border-radius:0;background-color:transparent;font-size:0}
.catch-species-stats article>.fish-photo{width:64px;height:42px;flex:0 0 64px;font-size:0}
.target-species-options label{display:grid;grid-template-columns:22px 72px 1fr;min-height:72px}.target-species-options .fish-photo{width:72px;height:48px}.target-species-options strong{font-size:.88rem}

.water-card-fish{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.water-card-fish>span{display:grid;grid-template-columns:42px auto;gap:5px;align-items:center;padding:4px 7px 4px 3px;border:1px solid var(--line);border-radius:999px;background:rgba(57,200,237,.06)}.water-card-fish .fish-photo{width:42px;height:27px}.water-card-fish small{color:var(--text);font-size:.68rem;font-weight:700}.water-card-fish>b{align-self:center;color:var(--muted);font-size:.72rem}
@media(max-width:390px){.water-card-fish small{display:none}.water-card-fish>span{grid-template-columns:42px;padding-right:3px}}

/* Browserstabile Sprite-Ausschnitte über echte Bilder */
.fish-photo{position:relative;display:block;overflow:hidden;background-image:none!important}
.fish-photo img{position:absolute;width:500%;height:200%;max-width:none;object-fit:fill;pointer-events:none}
.fish-barsch img{left:0%;top:0%}.fish-zander img{left:-100%;top:0%}.fish-hecht img{left:-200%;top:0%}.fish-karpfen img{left:-300%;top:0%}.fish-forelle img{left:-400%;top:0%}
.fish-wels img{left:0%;top:-100%}.fish-aal img{left:-100%;top:-100%}.fish-doebel img{left:-200%;top:-100%}.fish-brasse img{left:-300%;top:-100%}.fish-schleie img{left:-400%;top:-100%}.fish-generic img{left:0;top:0}

.profile-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.profile-actions .secondary-button{white-space:nowrap}@media(max-width:560px){.profile-actions{grid-column:1/-1;width:100%}.profile-actions .secondary-button{flex:1}}

.fish-photo{background:none!important}.fish-photo img{position:static;width:100%;height:100%;max-width:100%;object-fit:contain}
.app-preloader{position:fixed;inset:0;z-index:9999;display:grid;place-content:center;justify-items:center;gap:10px;background:radial-gradient(circle,rgba(23,142,181,.25),transparent 24rem),#020b11;transition:opacity .28s ease,visibility .28s ease}.app-preloader img{width:min(42vw,220px);aspect-ratio:1;object-fit:cover;border-radius:30px;box-shadow:0 24px 80px rgba(0,0,0,.45)}.app-preloader strong{font-size:1.35rem}.app-preloader small{color:var(--muted)}.app-preloader.hidden{opacity:0;visibility:hidden;pointer-events:none}

.fishing-loader{position:relative;width:190px;height:52px;margin:4px 0 2px;overflow:hidden}.fishing-line{position:absolute;left:12px;top:5px;width:116px;height:54px;border-top:2px solid var(--cyan);border-radius:50%;transform-origin:left top;animation:cast-line 1.15s cubic-bezier(.25,.8,.3,1) infinite}.fishing-float{position:absolute;left:142px;top:20px;width:9px;height:20px;border-radius:7px 7px 5px 5px;background:linear-gradient(var(--amber) 0 45%,#f4fbfd 45% 72%,var(--red) 72%);animation:float-bob .75s ease-in-out infinite alternate}.water-ripple{position:absolute;left:121px;right:7px;bottom:6px;height:13px;border-top:2px solid rgba(57,200,237,.58);border-radius:50%;animation:ripple 1.15s ease-out infinite}
@keyframes cast-line{0%{transform:rotate(35deg) scaleX(.35);opacity:.35}55%,100%{transform:rotate(0) scaleX(1);opacity:1}}@keyframes float-bob{to{transform:translateY(5px) rotate(4deg)}}@keyframes ripple{0%{transform:scaleX(.25);opacity:0}35%{opacity:1}100%{transform:scaleX(1);opacity:0}}
@media(prefers-reduced-motion:reduce){.fishing-loader i{animation:none}.fishing-line{transform:none}}

/* Simplify-Durchgang: klare Ebenen statt gleichgewichteter Karten */
.dashboard-disclosure,.detail-disclosure{border:1px solid var(--line);border-radius:18px;background:rgba(8,28,38,.58);overflow:hidden}.dashboard-disclosure summary,.detail-disclosure summary{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:15px 17px;cursor:pointer;list-style:none}.dashboard-disclosure summary::-webkit-details-marker,.detail-disclosure summary::-webkit-details-marker{display:none}.dashboard-disclosure summary div,.detail-disclosure summary div{display:grid;gap:3px}.dashboard-disclosure summary span,.detail-disclosure summary small{color:var(--muted);font-size:.76rem}.dashboard-disclosure summary strong,.detail-disclosure summary strong{font-size:.96rem}.dashboard-disclosure summary>b,.detail-disclosure summary>b{color:var(--cyan);font-size:.78rem}.dashboard-disclosure[open] summary>b{font-size:0}.dashboard-disclosure[open] summary>b:after{content:"schließen";font-size:.78rem}.dashboard-disclosure-body,.detail-disclosure-body{padding:0 17px 17px}.dashboard-disclosure-body>.text-button{margin:0 0 10px auto;display:block}
.detail-disclosure{margin:12px 0;background:rgba(8,28,38,.46)}.detail-disclosure summary{grid-template-columns:34px 1fr 24px}.detail-disclosure summary>span{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(57,200,237,.09);color:var(--cyan);font-size:1rem}.detail-disclosure summary>b{font-size:1.15rem}.detail-disclosure[open] summary>b{transform:rotate(45deg)}.detail-disclosure-body p:last-child{margin-bottom:0}
#waterDetail>.content-block{box-shadow:none}.conditions-strip{box-shadow:none}.quick-grid{margin-top:14px}.dashboard-water-access{margin-top:14px}
@media(min-width:900px){.desktop-dashboard{grid-template-columns:minmax(0,1fr) minmax(280px,.55fr)}.desktop-top-waters{min-height:0}}

/* UX-Qualitätsdurchgang */
.score-ring{display:grid;place-content:center;text-align:center}.score-ring span{line-height:1}.score-ring small{display:block;max-width:72px;margin:5px auto 0;font-size:.68rem;line-height:1.05;text-align:center}
.condition-card{position:relative}.condition-card>i{display:block;margin-bottom:4px;color:var(--muted);font-style:normal;font-size:1.05rem}.condition-card[data-tone="good"]{background:linear-gradient(180deg,rgba(166,238,69,.08),transparent)}.condition-card[data-tone="good"]>i,.condition-card[data-tone="good"]>strong{color:var(--green)}.condition-card[data-tone="warn"]{background:linear-gradient(180deg,rgba(247,175,69,.09),transparent)}.condition-card[data-tone="warn"]>i,.condition-card[data-tone="warn"]>strong{color:var(--amber)}.condition-card[data-tone="bad"]{background:linear-gradient(180deg,rgba(255,108,114,.1),transparent)}.condition-card[data-tone="bad"]>i,.condition-card[data-tone="bad"]>strong{color:var(--red)}
.water-hero{position:relative}.water-hero-favorite{position:absolute;right:18px;top:18px;z-index:2;width:46px;height:46px;font-size:1.45rem}.water-key-metrics{grid-template-columns:minmax(120px,.7fr) repeat(2,minmax(170px,1fr))}.water-key-metrics>div{min-height:108px;display:grid;align-content:center}.water-key-metrics .metric-catches strong,.water-key-metrics .metric-distance strong{font-size:clamp(1.55rem,4vw,2.35rem);color:var(--cyan)}.water-key-metrics small{color:var(--muted);font-size:.72rem}
.species-visual-grid article>small{color:var(--muted);font-size:.7rem}.species-visual-grid article>.fish-photo{height:96px}
.topbar{isolation:isolate}.topbar>div{width:min(500px,calc(100vw - 150px));padding-right:6px}.topbar .icon-button{position:relative;z-index:3}.optional-catch-fields select{width:100%}
@media(max-width:700px){.water-key-metrics{grid-template-columns:1fr 1fr}.water-key-metrics>div:first-child{grid-column:1/-1;min-height:72px}.species-visual-grid article>.fish-photo{height:76px}}
@media(max-width:380px){.topbar>div{width:calc(100vw - 132px)}.topbar h1{white-space:normal;line-height:1.08}.water-key-metrics{grid-template-columns:1fr}}

/* Seitentitel steht ausschließlich in der globalen Kopfzeile */
.screen[data-screen="waters"]>.section-head>div,.screen[data-screen="log"]>.section-head>div,.screen[data-screen="catches"]>.section-head>div,.screen[data-screen="account"]>.section-head>div{display:none}
.screen[data-screen="waters"]>.section-head,.screen[data-screen="log"]>.section-head,.screen[data-screen="catches"]>.section-head,.screen[data-screen="account"]>.section-head{justify-content:flex-end;min-height:36px;margin-bottom:10px}
.private-map-disclosure{padding:0;overflow:hidden}.private-map-disclosure>summary{display:grid;grid-template-columns:36px 1fr 28px;gap:11px;align-items:center;padding:15px 17px;cursor:pointer;list-style:none}.private-map-disclosure>summary::-webkit-details-marker{display:none}.private-map-disclosure>summary>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(57,200,237,.1);color:var(--cyan)}.private-map-disclosure>summary div{display:grid;gap:3px}.private-map-disclosure>summary small{color:var(--muted)}.private-map-disclosure>summary>b{color:var(--cyan);font-size:1.2rem}.private-map-disclosure[open]>summary>b{transform:rotate(45deg)}.private-map-body{padding:0 17px 17px}.private-map-body .map-heading{margin-top:4px}

/* Schneller Fang-Flow */
.catch-form{gap:14px}.catch-core-grid{display:grid;grid-template-columns:1.15fr 1fr .9fr;gap:10px}.catch-core-grid label{display:grid;gap:7px}.catch-core-grid label>span{color:var(--muted);font-size:.76rem;font-weight:800}.catch-core-grid select,.catch-core-grid input{min-height:52px;font-weight:700}.catch-location-status{padding:10px 12px}.compact-privacy{display:grid;grid-template-columns:1fr 1fr;gap:8px}.compact-privacy legend{grid-column:1/-1}.compact-privacy .privacy-option{margin:0;min-height:76px}.spot-promise.compact{padding:9px 11px}.spot-promise.compact p{margin:0;font-size:.78rem}
.catch-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:rgba(8,28,38,.48)}.catch-table{width:100%;min-width:760px;border-collapse:collapse}.catch-table th,.catch-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.catch-table th{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;background:rgba(13,39,51,.72)}.catch-table tbody tr:last-child td{border-bottom:0}.catch-table tbody tr:hover{background:rgba(57,200,237,.035)}.catch-table-species{display:flex;align-items:center;gap:9px}.catch-table-species .fish-photo{width:58px;height:34px;flex:0 0 58px}.catch-status{display:inline-block;padding:5px 8px;border-radius:999px;font-size:.7rem;font-weight:800}.catch-status.verified{background:rgba(166,238,69,.12);color:var(--green)}.catch-status.private{background:rgba(145,170,181,.1);color:var(--muted)}.catch-table-actions{display:flex;gap:5px;justify-content:flex-end}.catch-table-actions button{padding:7px 9px;border:0;border-radius:8px;background:var(--surface-2);color:var(--text);font-size:.72rem}.catch-table-actions .danger{color:var(--red)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:720px){.catch-core-grid{grid-template-columns:1fr 1fr}.catch-time-field{grid-column:1/-1}.compact-privacy{grid-template-columns:1fr}.catch-table-wrap{margin-inline:-2px}.catch-table{min-width:680px}}
@media(max-width:420px){.catch-core-grid{grid-template-columns:1fr}.catch-time-field{grid-column:auto}.catch-core-grid select,.catch-core-grid input{min-height:56px}.quick-catch-intro p{font-size:.8rem}}

/* Fang und Schneidertag als dynamische Modals */
.entry-dialog{width:min(920px,calc(100vw - 28px));max-height:min(90vh,900px);padding:0;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 30px 100px rgba(0,0,0,.68);overflow:hidden}.entry-dialog::backdrop{background:rgba(0,7,11,.76);backdrop-filter:blur(5px)}.entry-dialog-shell{max-height:90vh;overflow:auto;padding:20px}.entry-dialog-head{position:sticky;top:-20px;z-index:4;display:flex;justify-content:space-between;align-items:center;margin:-20px -20px 18px;padding:18px 20px 14px;background:rgba(8,28,38,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.entry-dialog-head h2{margin:0}.entry-dialog-head button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:1.5rem}.entry-dialog .catch-form{margin:0;box-shadow:none}.entry-dialog .session-panel{margin:0;box-shadow:none}.entry-dialog .session-panel>summary{display:none}.entry-dialog .session-form{padding:4px 0 0}.nav-subitem{margin-top:-6px;padding-left:24px;font-size:.76rem;color:var(--muted)}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:720px){.entry-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.entry-dialog-shell{max-height:100dvh;padding:16px}.entry-dialog-head{top:-16px;margin:-16px -16px 14px;padding:14px 16px}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid .quick-action:last-child{grid-column:1/-1}}

.entry-dialog [hidden]{display:none!important}

#catchesList{display:block;width:100%;max-width:none}#catchesList .catch-table-wrap{width:100%;max-width:none}#catchesList .catch-table{width:100%}
.advisor-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:start;margin:12px 0;padding:15px;border:1px solid rgba(166,238,69,.22);border-radius:17px;background:linear-gradient(135deg,rgba(166,238,69,.08),rgba(8,28,38,.88))}.advisor-card[hidden]{display:none}.advisor-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:rgba(166,238,69,.12);font-size:1.35rem}.advisor-card h3,.advisor-card p{margin-bottom:5px}.advisor-card p{color:var(--text);font-size:.82rem;line-height:1.4}.advisor-card small{display:block;color:var(--muted);font-size:.7rem;line-height:1.4}.advisor-card>span{padding:6px 8px;border-radius:999px;background:rgba(247,175,69,.12);color:var(--amber);font-size:.65rem;white-space:nowrap}@media(max-width:520px){.advisor-card{grid-template-columns:42px 1fr}.advisor-card>span{grid-column:2;justify-self:start}.advisor-icon{width:40px;height:40px}}
.forecast-feedback{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:12px 0;padding:13px 15px;border:1px solid var(--line);border-radius:15px;background:rgba(8,28,38,.72)}.forecast-feedback[hidden]{display:none}.forecast-feedback strong,.forecast-feedback small{display:block}.forecast-feedback small{margin-top:3px;color:var(--muted);font-size:.7rem}@media(max-width:620px){.forecast-feedback{grid-template-columns:1fr}.forecast-feedback .feedback-actions{display:grid;grid-template-columns:repeat(3,1fr)}.forecast-feedback .feedback-actions button{padding-inline:5px}}
.forecast-feedback{grid-template-columns:1fr}.forecast-feedback>section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:5px 0}.forecast-feedback>section+section{padding-top:13px;border-top:1px solid var(--line)}@media(max-width:700px){.forecast-feedback>section{grid-template-columns:1fr}}
.location-notice{grid-template-columns:30px minmax(0,1fr) auto}.location-notice button{padding:7px 10px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font-size:.7rem;font-weight:800}#locateButton{display:none}.location-results{display:grid;gap:7px}.location-results button{display:flex;justify-content:space-between;gap:10px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2);color:var(--text);text-align:left}.location-results small{color:var(--muted)}@media(max-width:520px){.location-notice{grid-template-columns:30px 1fr}.location-notice button{grid-column:2;justify-self:start}}
.ranking-card em{display:block;margin-top:4px;color:var(--green);font-size:.66rem;font-style:normal}

/* Persönliches Angelziel: dauerhaftes Profil plus aktuelle 24-Stunden-Auswahl */
.fishing-mode-bar{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;width:100%;margin:0 0 12px;padding:11px 14px;border:1px solid var(--line);border-radius:16px;background:rgba(8,28,38,.82);color:var(--text);text-align:left}.fishing-mode-bar>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(57,200,237,.12);color:var(--cyan);font-size:1.25rem}.fishing-mode-bar div{display:grid;gap:2px}.fishing-mode-bar small{color:var(--muted);font-size:.68rem}.fishing-mode-bar strong{font-size:.94rem}.fishing-mode-bar>b{color:var(--cyan);font-size:.72rem}
body[data-fishing-mode="predator"] .fishing-mode-bar{border-color:rgba(247,175,69,.3);background:linear-gradient(100deg,rgba(247,175,69,.1),rgba(8,28,38,.88))}body[data-fishing-mode="predator"] .fishing-mode-bar>span{background:rgba(247,175,69,.14);color:var(--amber)}body[data-fishing-mode="predator"] .hero-panel{background:linear-gradient(145deg,rgba(7,25,35,.96),rgba(32,38,31,.94)),radial-gradient(circle at 85% 15%,rgba(247,175,69,.22),transparent 13rem)}
body[data-fishing-mode="coarse"] .fishing-mode-bar{border-color:rgba(57,200,237,.3);background:linear-gradient(100deg,rgba(57,200,237,.1),rgba(8,28,38,.88))}body[data-fishing-mode="coarse"] .hero-panel{background:linear-gradient(145deg,rgba(5,26,35,.96),rgba(7,48,59,.94)),radial-gradient(circle at 85% 15%,rgba(57,200,237,.24),transparent 13rem)}
.intent-dialog{width:min(780px,calc(100vw - 24px));max-height:92vh;padding:0;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 32px 110px rgba(0,0,0,.7)}.intent-dialog::backdrop{background:rgba(0,7,11,.82);backdrop-filter:blur(6px)}.intent-shell{display:grid;gap:20px;max-height:92vh;padding:22px;overflow:auto}.intent-shell>header{display:flex;justify-content:space-between;gap:15px}.intent-shell>header p:last-child{margin:0;color:var(--muted);line-height:1.45}.intent-shell>header button{flex:0 0 42px;height:42px;border:0;border-radius:12px;background:var(--surface-2);color:var(--text);font-size:1.45rem}.intent-shell fieldset{margin:0;padding:0;border:0}.intent-shell legend{margin-bottom:10px;font-weight:850}.intent-choice-grid{display:grid;gap:9px}.intent-choice-grid.three{grid-template-columns:repeat(3,1fr)}.intent-choice-grid.two{grid-template-columns:repeat(2,1fr)}.intent-choice-grid label,.daily-species-options label{display:grid;place-items:center;gap:5px;min-height:100px;padding:12px;border:1px solid var(--line);border-radius:15px;background:rgba(4,20,29,.72);text-align:center;cursor:pointer}.intent-choice-grid input,.daily-species-options input{position:absolute;opacity:0}.intent-choice-grid label:has(input:checked),.daily-species-options label:has(input:checked){border-color:var(--green);background:rgba(166,238,69,.09);box-shadow:0 0 0 1px rgba(166,238,69,.14)}.intent-choice-grid label>span{font-size:1.4rem;color:var(--cyan)}.intent-choice-grid small,.daily-species-options small{color:var(--muted);font-size:.69rem}.daily-species-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.daily-species-options label{min-height:76px}.daily-species-options .all-species{border-style:dashed}.intent-duration{display:grid;grid-template-columns:1fr 1fr;gap:9px}.intent-duration label{display:grid;grid-template-columns:20px 1fr;gap:9px;padding:12px;border:1px solid var(--line);border-radius:13px}.intent-duration input{width:18px;min-height:auto;accent-color:var(--green)}.intent-duration strong,.intent-duration small{display:block}.intent-duration small{margin-top:3px;color:var(--muted);font-weight:500}
@media(max-width:620px){.intent-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0}.intent-shell{max-height:100dvh;padding:16px}.intent-choice-grid.three{grid-template-columns:1fr}.intent-choice-grid.three label{grid-template-columns:38px 1fr;justify-items:start;min-height:70px;text-align:left}.intent-choice-grid.three label small{grid-column:2}.intent-duration{grid-template-columns:1fr}.daily-species-options{grid-template-columns:repeat(2,1fr)}}

/* Unsichtbare Radios dürfen keine versetzten Klickflächen über dem Dialog bilden. */
.intent-choice-grid label,.daily-species-options label{position:relative}.intent-choice-grid input,.daily-species-options input{width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap;pointer-events:none}
.intent-choice-grid label,.daily-species-options label,.intent-duration label{width:100%;cursor:pointer;user-select:none}.intent-choice-grid label>*:not(input),.daily-species-options label>*:not(input),.intent-duration label>*:not(input){pointer-events:none}
