﻿:root{--bg:#07120f;--panel:#0d1f19;--panel2:#132a22;--text:#eef8f2;--muted:#9db7aa;--accent:#6ee7a8;--accent2:#a7f3d0;--danger:#ff7b7b;--border:rgba(255,255,255,.09);--shadow:0 20px 80px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#164534 0,#07120f 42%,#050807 100%);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:18px 5vw;background:rgba(7,18,15,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:12px;font-weight:800}.brand-mark{width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--accent),#2dd4bf);box-shadow:0 10px 30px rgba(110,231,168,.25)}.nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.nav a{color:var(--muted);font-weight:700}.nav a.active,.nav a:hover{color:var(--text)}.wrap{width:min(1180px,90vw);margin:0 auto}.hero{padding:68px 0 32px}.eyebrow{color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem}.hero h1{font-size:clamp(2.2rem,7vw,5.5rem);line-height:.92;margin:12px 0;max-width:900px}.lead{color:var(--muted);font-size:1.1rem;line-height:1.65;max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.btn{border:1px solid var(--border);background:var(--panel2);color:var(--text);padding:12px 18px;border-radius:999px;font-weight:800;cursor:pointer}.btn.primary{background:linear-gradient(135deg,var(--accent),#34d399);color:#042016;border:0}.grid{display:grid;gap:18px}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:24px 0 34px}.stat,.card,.filterbox{background:linear-gradient(180deg,rgba(19,42,34,.92),rgba(13,31,25,.94));border:1px solid var(--border);border-radius:28px;padding:22px;box-shadow:var(--shadow)}.stat strong{font-size:2rem;display:block}.stat span,.muted{color:var(--muted)}.toolbar{display:grid;grid-template-columns:1.4fr repeat(4,1fr) auto;gap:12px;margin:20px 0}.toolbar input,.toolbar select{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:16px;padding:12px 14px}.products{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));padding:12px 0 60px}.product-card{overflow:hidden;padding:0}.product-image{height:150px;background:linear-gradient(135deg,#1a3d30,#0b1713);display:flex;align-items:center;justify-content:center;color:var(--muted)}.product-image img{width:100%;height:100%;object-fit:cover}.product-body{padding:18px}.product-title{font-weight:900;font-size:1.05rem;margin:0 0 6px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.chip{font-size:.78rem;padding:7px 9px;border-radius:999px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.22);color:var(--accent2);font-weight:800}.price{font-size:1.35rem;font-weight:900;color:var(--accent);margin-top:12px}.detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:22px;margin:28px 0 70px}.kv{display:grid;grid-template-columns:160px 1fr;gap:8px 14px;border-top:1px solid var(--border);padding-top:18px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:700}.offers{display:grid;gap:12px}.offer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.03)}.footer{padding:34px 5vw;color:var(--muted);border-top:1px solid var(--border)}.notice{padding:14px 16px;border-radius:16px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.22);margin:16px 0}.error{background:rgba(255,123,123,.12);border-color:rgba(255,123,123,.3);color:#ffd3d3}@media(max-width:850px){.toolbar{grid-template-columns:1fr}.detail{grid-template-columns:1fr}.topbar{align-items:flex-start;gap:12px;flex-direction:column}.kv{grid-template-columns:1fr}.hero{padding-top:38px}}
.admin-form{display:grid;gap:14px}.admin-form label{display:grid;gap:7px;color:var(--muted);font-weight:800}.admin-form input,.admin-form textarea{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:16px;padding:12px 14px;font:inherit}.admin-form textarea{min-height:280px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.compact{padding-bottom:18px}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;background:radial-gradient(circle at 30% 30%,rgba(110,231,168,.22),rgba(7,18,15,.96))!important;border:1px solid rgba(110,231,168,.28);box-shadow:0 12px 32px rgba(110,231,168,.16),inset 0 1px 0 rgba(255,255,255,.08);background-image:url('assets/weedwatch_logo.png')!important;background-position:center!important;background-repeat:no-repeat!important;background-size:78% auto!important}.brand-mark img{width:78%;height:78%;object-fit:contain;display:block;filter:drop-shadow(0 6px 18px rgba(110,231,168,.2))}.notice pre{white-space:pre-wrap;overflow:auto;margin:10px 0 0;color:var(--accent2);font-size:.82rem}
.finder{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(240px,1.2fr) auto auto;gap:12px;align-items:center;margin-top:24px}.finder input,.finder select,.app-search{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:18px;padding:14px 16px;font:inherit}.compact{padding-bottom:18px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:22px}.card-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.offer-actions{text-align:right;display:grid;justify-items:end;gap:5px}.mini-link{color:var(--accent2);font-size:.82rem;font-weight:800}.result-btn{text-align:left}.phone-shell{width:min(520px,94vw);margin:0 auto;padding:24px 0 70px}.phone-card{background:linear-gradient(180deg,rgba(19,42,34,.98),rgba(7,18,15,.98));border:1px solid var(--border);border-radius:34px;padding:22px;box-shadow:var(--shadow);position:sticky;top:86px;z-index:4}.phone-card select{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:18px;padding:14px 16px;font:inherit;margin-bottom:12px}.quick-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.quick-tabs a{padding:10px 8px;text-align:center;border-radius:999px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.2);font-weight:900;color:var(--accent2)}.phone-section{margin-top:24px}.phone-section .products{grid-template-columns:1fr;padding-bottom:10px}.phone-section .product-card{display:grid;grid-template-columns:116px 1fr}.phone-section .product-image{height:100%;min-height:142px}.admin-form{display:grid;gap:14px}.admin-form label{display:grid;gap:7px;color:var(--muted);font-weight:800}.admin-form input,.admin-form textarea{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:16px;padding:12px 14px;font:inherit}.admin-form textarea{min-height:280px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.brand-mark{background:#07120f url('assets/weedwatch_logo.png') center/contain no-repeat!important;border:1px solid rgba(110,231,168,.24)}.notice pre{white-space:pre-wrap;overflow:auto;margin:10px 0 0;color:var(--accent2);font-size:.82rem}@media(max-width:850px){.finder{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.phone-card{top:12px}.phone-section .product-card{grid-template-columns:104px 1fr}.phone-section .product-body{padding:14px}.phone-section .product-image{min-height:132px}}
.filter-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0;padding:18px;border:1px solid var(--border);border-radius:28px;background:linear-gradient(180deg,rgba(19,42,34,.92),rgba(13,31,25,.94));box-shadow:var(--shadow)}.filter-panel label{display:grid;gap:7px;color:var(--muted);font-weight:900;font-size:.82rem}.filter-panel input,.filter-panel select{width:100%;border:1px solid var(--border);background:#081510;color:var(--text);border-radius:16px;padding:12px 14px;font:inherit}.filter-actions{display:flex;gap:10px;align-items:end;grid-column:span 2}.load-more-wrap{display:flex;justify-content:center;padding:12px 0 70px}.load-more-wrap .btn{min-width:180px}.products:empty::before{content:'Keine Treffer';display:block;padding:18px;border:1px solid var(--border);border-radius:18px;color:var(--muted)}@media(max-width:1100px){.filter-panel{grid-template-columns:repeat(2,1fr)}.filter-actions{grid-column:span 2}}@media(max-width:700px){.filter-panel{grid-template-columns:1fr}.filter-actions{align-items:stretch;grid-column:span 1}.filter-actions .btn{width:100%}}
.finder{grid-template-columns:minmax(260px,1.2fr) minmax(220px,1fr) minmax(180px,.7fr) auto auto}.finder-field{position:relative;display:block}.finder-field input[type="hidden"]{display:none}.finder input[list]{padding-right:18px}.finder select#homeSort{min-width:180px}.load-more-wrap #homeLoadMore{min-width:200px}@media(max-width:1050px){.finder{grid-template-columns:1fr 1fr 1fr}}@media(max-width:850px){.finder{grid-template-columns:1fr}.finder select#homeSort,.finder .btn{width:100%}}
.summary-strip{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.fact-pill,.status-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;font-weight:900;border:1px solid var(--border);background:rgba(255,255,255,.04)}.fact-pill{color:var(--text)}.status-dot{width:10px;height:10px;border-radius:999px;display:inline-block}.status-available{background:rgba(110,231,168,.14);border-color:rgba(110,231,168,.35);color:var(--accent2)}.status-available .status-dot{background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.14)}.status-low{background:rgba(251,191,36,.14);border-color:rgba(251,191,36,.35);color:#fde68a}.status-low .status-dot{background:#fbbf24;box-shadow:0 0 0 4px rgba(251,191,36,.14)}.status-out{background:rgba(255,123,123,.14);border-color:rgba(255,123,123,.35);color:#fecaca}.status-out .status-dot{background:#f87171;box-shadow:0 0 0 4px rgba(248,113,113,.14)}.status-unknown{background:rgba(157,183,170,.14);border-color:rgba(157,183,170,.28);color:#d7e7de}.status-unknown .status-dot{background:#9db7aa;box-shadow:0 0 0 4px rgba(157,183,170,.12)}.status-new{background:rgba(96,165,250,.14);border-color:rgba(96,165,250,.38);color:#bfdbfe}.status-new .status-dot{background:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.16)}.detail-image{height:320px;border-radius:22px;overflow:hidden;margin-bottom:18px}.product-detail-card h2,.offer-card h2{margin-top:0}.offer-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.offer-card .offers{margin-top:16px}.kv dd{line-height:1.5}.offer .muted{margin-top:6px}.product-card .status-badge{padding:8px 11px;font-size:.76rem}.product-status-stack{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.product-footer{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}.product-pharmacy,.product-price{display:grid;gap:4px}.product-pharmacy strong{font-size:.95rem;line-height:1.3}.product-price{text-align:right}.product-price .price{margin-top:0}@media(max-width:640px){.product-footer{align-items:flex-start;flex-direction:column}.product-price{text-align:left}.product-status-stack{align-items:flex-start}}

body{font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.product-card{display:grid;grid-template-rows:154px 1fr;border-radius:30px}.product-card .product-body{display:grid;gap:12px;align-content:start;height:100%}.product-title{line-height:1.25;min-height:2.6em}.chips-grid{margin-top:0}.chips-grid .chip{min-height:34px;display:inline-flex;align-items:center}.product-price .price,.offer-actions .price{font-size:1.2rem}.product-pharmacy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.summary-strip{margin-top:20px}.product-detail-card,.offer-card{padding:24px}.product-meta-stack{display:grid;gap:16px}.meta-section{display:grid;gap:10px;padding:16px 0;border-top:1px solid rgba(255,255,255,.08)}.meta-section:first-child{padding-top:0;border-top:0}.meta-section h3{margin:0;font-size:1rem}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-fact{display:grid;gap:5px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06)}.detail-fact span{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.detail-fact strong{font-size:.98rem;line-height:1.35}.detail-copy{margin:0;color:var(--text);line-height:1.65}.icon-tag-list{display:flex;flex-wrap:wrap;gap:8px}.mini-icon-tag{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);font-weight:700}.mini-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px;background:rgba(110,231,168,.14);color:var(--accent2);font-size:.8rem}.type-meter{display:grid;gap:8px;padding:12px 14px;margin-top:2px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}.type-meter-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;font-size:.82rem}.type-meter-head strong{text-align:center;font-size:.92rem}.type-side{color:var(--muted);font-weight:700}.type-side:last-child{text-align:right}.type-track{position:relative;height:10px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.type-fill{display:block;height:100%;width:100%;background:linear-gradient(90deg,#2563eb 0 calc(var(--left) * 1%),#34d399 50%,#f59e0b calc(var(--right) * 1%),#f59e0b 100%);opacity:.95}.type-indica .type-fill{background:linear-gradient(90deg,#3b82f6 0%,#60a5fa 30%,#1f2937 100%)}.type-sativa .type-fill{background:linear-gradient(90deg,#1f2937 0%,#f59e0b 55%,#fde68a 100%)}.type-hybrid .type-fill{background:linear-gradient(90deg,#3b82f6 0%,#34d399 50%,#f59e0b 100%)}.filter-shell{display:grid;gap:14px;margin:24px 0}.filter-topbar,.filter-panel,.filter-accordion{background:linear-gradient(180deg,rgba(19,42,34,.94),rgba(13,31,25,.96));border:1px solid var(--border);border-radius:28px;box-shadow:var(--shadow)}.filter-topbar{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(220px,1fr) minmax(190px,.8fr) auto;gap:12px;padding:16px}.filter-inline{display:grid;gap:7px;color:var(--muted);font-weight:900;font-size:.82rem}.filter-inline input,.filter-inline select,.filter-pharmacy-field input,.filter-panel input,.filter-panel select{width:100%;border:1px solid rgba(255,255,255,.08);background:#081510;color:var(--text);border-radius:18px;padding:14px 16px;font:inherit}.filter-top-actions{display:flex;gap:10px;align-items:end}.filter-accordion summary{list-style:none;cursor:pointer;padding:18px 20px;font-weight:900}.filter-accordion summary::-webkit-details-marker{display:none}.filter-accordion summary::after{content:'+';float:right;color:var(--accent2);font-size:1.2rem}.filter-accordion[open] summary::after{content:'–'}.filter-accordion .filter-panel{box-shadow:none;border:0;border-top:1px solid rgba(255,255,255,.06);border-radius:0 0 28px 28px;margin:0;padding:16px 20px;grid-template-columns:repeat(4,minmax(0,1fr))}.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}.offer{border-radius:22px;padding:16px}.detail-image{height:340px;border-radius:24px}.offer-card .muted{line-height:1.55}.offer-head strong{font-size:1rem}.finder-field,.filter-pharmacy-field{position:relative}.finder-field::after,.filter-pharmacy-field::after{content:'⌕';position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.filter-pharmacy-field input{padding-right:40px}.product-card:hover,.offer:hover,.detail-fact:hover{transform:translateY(-1px);transition:transform .18s ease}.filter-topbar .btn,.filter-top-actions .btn{height:50px}.filter-top-actions .btn{min-width:120px}.offer-card h2,.product-detail-card h2{margin-bottom:6px}.kv{display:none}@media(max-width:1100px){.filter-topbar{grid-template-columns:1fr 1fr}.filter-top-actions{grid-column:1/-1}.filter-accordion .filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.detail-facts{grid-template-columns:1fr}.filter-topbar,.filter-accordion .filter-panel{grid-template-columns:1fr}.filter-top-actions{flex-direction:column;align-items:stretch}.product-card{grid-template-rows:144px 1fr}.detail-image{height:280px}}

/* WeedWatch UI refresh 2026-06: clean UTF-8, modern filters, bars and price list */
.product-subtitle{min-height:1.25em;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.icon-chip{gap:7px;font-size:.86rem}.icon-chip span{font-size:1.05rem}.cannabinoid-bars{display:grid;gap:10px;padding:14px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.085)}.cannabinoid-bars.compact{padding:12px;gap:8px}.cannabinoid-row{display:grid;gap:7px}.cannabinoid-label{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:8px;font-size:.86rem}.cannabinoid-label b{text-align:right;color:var(--text);font-size:.95rem}.big-symbol{width:30px;height:30px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-weight:1000;font-size:1rem;background:linear-gradient(135deg,rgba(110,231,168,.22),rgba(58,134,255,.13));color:var(--accent2);border:1px solid rgba(110,231,168,.25)}.cbd .big-symbol,.big-symbol.cbd{background:linear-gradient(135deg,rgba(96,165,250,.23),rgba(110,231,168,.12));color:#93c5fd}.canna-track{height:11px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.canna-track span{display:block;height:100%;min-width:4px;border-radius:999px;background:linear-gradient(90deg,#10b981,#a7f3d0)}.cannabinoid-row.cbd .canna-track span{background:linear-gradient(90deg,#3b82f6,#bfdbfe)}.product-card .product-image{min-height:168px}.product-card .product-body{gap:13px}.product-card .card-row{align-items:flex-start;gap:10px}.product-card .status-badge{white-space:nowrap}.offer-card{position:sticky;top:18px;align-self:start}.offer-card .offers{display:grid;gap:12px}.offer-clean{display:grid;grid-template-columns:1fr auto;grid-template-areas:"main actions" "status actions";gap:10px 16px;align-items:center;border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.09)}.offer-main{grid-area:main;min-width:0}.offer-status{grid-area:status;justify-self:start}.offer-actions{grid-area:actions;display:grid;gap:7px;text-align:right;justify-items:end}.offer-title-line{display:flex;align-items:center;gap:10px;min-width:0}.offer-title-line strong{font-size:1.03rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis}.offer-icon{width:38px;height:38px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;font-size:1.35rem;background:rgba(110,231,168,.12);border:1px solid rgba(110,231,168,.18);flex:0 0 auto}.offer-meta{margin-top:6px}.offer .status-badge{padding:8px 12px}.offer .price{font-size:1.35rem}.modern-filter-panel{align-items:stretch}.range-filter{display:grid;gap:12px;padding:14px;border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.075)}.range-filter-wide{grid-column:span 2}.range-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.range-title strong{font-size:1rem}.range-title small{color:var(--muted);font-weight:800}.big-filter-icon{width:38px;height:38px;border-radius:15px;display:inline-flex;align-items:center;justify-content:center;font-weight:1000;font-size:1.05rem;background:linear-gradient(135deg,rgba(110,231,168,.2),rgba(17,24,39,.28));color:var(--accent2);border:1px solid rgba(110,231,168,.24)}.big-filter-icon.cbd{color:#93c5fd;background:linear-gradient(135deg,rgba(96,165,250,.22),rgba(17,24,39,.28));border-color:rgba(96,165,250,.24)}.range-pills{display:flex;flex-wrap:wrap;gap:8px}.range-pill{border:1px solid rgba(255,255,255,.1);background:rgba(8,21,16,.78);color:var(--text);border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;transition:.16s ease}.range-pill:hover{border-color:rgba(110,231,168,.35);transform:translateY(-1px)}.range-pill.active{background:linear-gradient(135deg,rgba(110,231,168,.22),rgba(110,231,168,.08));border-color:rgba(110,231,168,.48);color:var(--accent2);box-shadow:0 0 0 4px rgba(110,231,168,.07)}.filter-panel.modern-filter-panel{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1100px){.range-filter-wide{grid-column:span 2}.filter-panel.modern-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.offer-clean{grid-template-columns:1fr;grid-template-areas:"main" "status" "actions"}.offer-actions{text-align:left;justify-items:start}.range-filter-wide{grid-column:span 1}.filter-panel.modern-filter-panel{grid-template-columns:1fr}.product-card .product-image{min-height:150px}.cannabinoid-label{grid-template-columns:auto auto 1fr}.offer-card{position:static}}

/* UI update: moderne Suche, Apothekenwahl und klickbare Filter */
.search-console{display:grid;gap:16px;background:linear-gradient(180deg,rgba(12,31,24,.88),rgba(6,18,14,.92));border:1px solid rgba(110,231,168,.16);box-shadow:0 20px 60px rgba(0,0,0,.28);border-radius:28px;padding:18px;margin-top:22px}.home-search-console{grid-template-columns:1.08fr 1.35fr;align-items:stretch}.catalog-search-console{grid-template-columns:1.15fr 1.35fr;align-items:stretch}.pharmacy-picker{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:14px;display:grid;gap:12px;min-height:116px}.compact-picker{margin:14px 0 18px;min-height:auto}.picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.picker-kicker{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.14em;color:var(--accent2);font-weight:900;margin-bottom:3px}.picker-head strong{display:block;font-size:1.02rem;line-height:1.18}.picker-head small{display:block;color:var(--muted);margin-top:3px}.picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.picker-apply{height:48px;align-self:stretch;padding-inline:18px}.chip-button{border:1px solid rgba(110,231,168,.18);background:rgba(110,231,168,.08);color:var(--accent2);border-radius:999px;padding:9px 12px;font-weight:900;cursor:pointer;white-space:nowrap}.chip-button.subtle{background:rgba(255,255,255,.045);color:var(--text);border-color:rgba(255,255,255,.1)}.chip-button[hidden]{display:none}.search-main{position:relative;display:flex;align-items:center;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:0 12px;height:64px;align-self:stretch}.wide-search{min-width:0}.search-main input{width:100%;height:100%;background:transparent!important;border:0!important;outline:0;color:var(--text);font-weight:850;font-size:1.02rem;padding:0 40px 0 8px}.search-main input::placeholder{color:rgba(218,233,225,.55)}.search-icon{font-size:1.5rem;color:var(--accent2);opacity:.9}.field-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:var(--text);font-size:1.3rem;line-height:1;cursor:pointer}.quick-pills{display:flex;flex-wrap:wrap;gap:8px;align-items:center;grid-column:1/-1}.sort-pills{margin-top:-2px}.quick-pill{border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);color:var(--muted);border-radius:999px;padding:10px 14px;font-weight:900;cursor:pointer;transition:.16s ease}.quick-pill:hover,.quick-pill.active{background:linear-gradient(135deg,rgba(110,231,168,.2),rgba(110,231,168,.07));color:var(--accent2);border-color:rgba(110,231,168,.42);transform:translateY(-1px)}.search-actions{display:flex;flex-wrap:wrap;gap:10px;grid-column:1/-1}.filter-shell{display:grid;gap:16px}.filter-topbar{display:none}.chip-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.profile-chip-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.choice-filter,.range-filter{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:14px}.wide-choice{grid-column:span 1}.choice-filter .range-pills,.range-filter .range-pills{max-height:142px;overflow:auto;padding-bottom:2px}.choice-filter .range-pills::-webkit-scrollbar,.range-filter .range-pills::-webkit-scrollbar{height:8px;width:8px}.choice-filter .range-pills::-webkit-scrollbar-thumb,.range-filter .range-pills::-webkit-scrollbar-thumb{background:rgba(110,231,168,.26);border-radius:99px}.range-title{align-items:center;gap:10px;margin-bottom:12px}.range-title strong{font-size:1rem}.range-title small{color:var(--muted);font-weight:700}.big-filter-icon{width:38px;height:38px;border-radius:14px;display:inline-grid;place-items:center;background:linear-gradient(135deg,rgba(110,231,168,.22),rgba(110,231,168,.07));border:1px solid rgba(110,231,168,.26);color:var(--accent2);font-weight:1000;font-size:1.1rem}.big-filter-icon.cbd{color:#a7d8ff}.big-filter-icon.price-icon{color:#f6d56f}.big-filter-icon.ok{color:#8df6b3}.range-pill{font-size:.92rem;line-height:1}.range-pill.active::before,.quick-pill.active::before{content:"✓";margin-right:6px}.products .product-card{min-height:100%;border-radius:28px}.product-card .product-image{border-radius:22px;margin:8px 8px 0;overflow:hidden}.product-body{padding:14px 16px 16px}.icon-chip{font-size:.9rem;padding:9px 10px}.icon-chip span{font-size:1.18rem}.big-symbol{font-size:1.08rem}.product-title{font-size:1.05rem}.product-footer{align-items:end}.product-pharmacy strong{font-size:.92rem}.offer-card{align-self:start}.offer-clean{align-items:center}.offer-status{justify-self:center}.offer-actions{min-width:92px}.offer-title-line{align-items:center}.offer-icon{width:34px;height:34px;border-radius:12px;display:inline-grid;place-items:center;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.18);font-size:1.15rem}.status-badge{white-space:nowrap}.summary-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.fact-pill{font-size:.92rem;padding:9px 12px}.detail .product-detail-card{overflow:hidden}.product-meta-stack .cannabinoid-bars{margin:14px 0}.sr-hidden-select{display:none!important}
.mobile-offer-panel{border:0}
.mobile-offer-panel summary{list-style:none;cursor:pointer;display:grid;gap:4px}
.mobile-offer-panel summary::-webkit-details-marker{display:none}
.mobile-offer-panel summary span{font-size:1.35rem;font-weight:900}
.mobile-offer-panel summary small{color:var(--muted)}
.mobile-offer-body{padding-top:14px}
@media(max-width:800px){.mobile-offer-panel:not([open]) .mobile-offer-body{display:none}.mobile-offer-panel[open] summary{padding-bottom:8px}}
@media(max-width:1100px){.home-search-console,.catalog-search-console{grid-template-columns:1fr}.profile-chip-panel,.chip-filter-grid{grid-template-columns:1fr!important}.search-main{height:58px}.picker-row{grid-template-columns:1fr}.picker-apply{height:46px}.search-actions{justify-content:stretch}.search-actions .btn{flex:1;text-align:center}.choice-filter .range-pills,.range-filter .range-pills{max-height:180px}}
@media(max-width:720px){.search-console{border-radius:22px;padding:13px}.pharmacy-picker,.choice-filter,.range-filter{border-radius:18px}.picker-head{align-items:flex-start}.picker-head strong{font-size:.98rem}.quick-pill,.range-pill{padding:9px 11px;font-size:.86rem}.search-main input{font-size:.94rem}.offer-clean{gap:10px}.offer-status{justify-self:start}.offer-actions{justify-items:start;text-align:left}}

/* FIX_CARD_IMAGE_OVERLAY_20260606
   Basis: weedwatch_own_test_environment_ui_modern_filters_pharmacy.zip
   Trennt Bild, Produkttext und Verfügbarkeitsbadge sauber voneinander. */
.products > .product-card {
  display: flex !important;
  flex-direction: column !important;
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.products > .product-card .product-image {
  position: relative !important;
  z-index: 1;
  flex: 0 0 auto;
  height: 190px !important;
  min-height: 190px !important;
  max-height: 190px;
  margin: 10px 10px 0 !important;
  border-radius: 22px !important;
  overflow: hidden;
}
.products > .product-card .product-body {
  position: relative !important;
  z-index: 2;
  margin-top: 0 !important;
  padding: 16px 16px 18px !important;
  display: grid;
  gap: 12px;
  background: linear-gradient(180deg, rgba(19,42,34,.97), rgba(9,24,18,.98));
}
.products > .product-card .card-row {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start !important;
  gap: 10px;
  min-height: 0;
}
.products > .product-card .product-title {
  margin: 0 !important;
  line-height: 1.18;
  min-width: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.products > .product-card .status-badge {
  position: static !important;
  transform: none !important;
  align-self: start;
  justify-self: end;
  max-width: 100%;
  white-space: nowrap;
  font-size: .76rem;
  line-height: 1;
  padding: 8px 10px;
  flex: 0 0 auto;
}
.products > .product-card .product-subtitle {
  margin-top: -4px;
}
.products > .product-card .chips {
  margin: 0;
}
.products > .product-card .product-footer {
  margin-top: 2px;
}

@media (max-width: 700px) {
  .products > .product-card .product-image {
    height: 172px !important;
    min-height: 172px !important;
    max-height: 172px;
  }
  .products > .product-card .card-row {
    grid-template-columns: 1fr;
  }
  .products > .product-card .status-badge {
    justify-self: start;
  }
}

/* Startseiten-App-Karten behalten links/rechts, aber auch dort keine Ueberlagerung. */
.phone-section .products > .product-card {
  display: grid !important;
  grid-template-columns: 116px 1fr !important;
}
.phone-section .products > .product-card .product-image {
  height: auto !important;
  min-height: 142px !important;
  max-height: none;
  margin: 10px 0 10px 10px !important;
}
.phone-section .products > .product-card .product-body {
  margin: 0 !important;
  padding: 14px 14px 14px !important;
}
.phone-section .products > .product-card .card-row {
  grid-template-columns: 1fr;
}
.phone-section .products > .product-card .status-badge {
  justify-self: start;
}
@media (max-width: 850px) {
  .phone-section .products > .product-card {
    grid-template-columns: 104px 1fr !important;
  }
}


/* FIX_IMPRESSUM_EFFECT_FILTERS_20260606
   Basis: weedwatch_own_test_environment_ui_card_layout_fix.zip
   Ergaenzt Impressum, App-Hinweise und Filter nach Wirkung/medizinischer Wirkung. */
.effect-preview{display:flex;flex-wrap:wrap;gap:7px;margin-top:-2px}
.effect-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:var(--text);border-radius:999px;padding:7px 9px;font-size:.78rem;font-weight:900;line-height:1.1}
.effect-chip.medical{border-color:rgba(110,231,168,.22);background:rgba(110,231,168,.08);color:var(--accent2)}
.app-info-section{margin:26px 0}.app-info-card{display:grid;gap:14px;background:linear-gradient(135deg,rgba(110,231,168,.10),rgba(255,255,255,.035));border-color:rgba(110,231,168,.18)}
.app-info-card h2{margin:0;font-size:clamp(1.4rem,2vw,2.1rem)}.app-info-card p{color:var(--muted);max-width:860px}.app-hint-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.app-hint-grid>div,.app-hint-grid.cards-three>.card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:20px;padding:14px}.app-hint-grid strong{display:block;margin-bottom:5px}.app-hint-grid span,.app-hint-grid p{color:var(--muted);font-size:.94rem}.cards-three{margin-top:20px}.legal-wrap .hero{margin-bottom:20px}.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.legal-card h2{font-size:1.05rem;margin-top:0}.legal-card p{color:var(--muted);line-height:1.7}.legal-card.wide{grid-column:1/-1}.footer a,.legal-card a{color:var(--accent2);text-decoration:none;font-weight:900}.nav a.active{color:var(--accent2)}
@media(max-width:800px){.app-hint-grid,.legal-grid{grid-template-columns:1fr}.app-info-card{border-radius:22px}.effect-chip{font-size:.74rem}}

/* Admin Cockpit Update */
.admin-wrap .filterbox { margin-bottom: 22px; }
.admin-login-card { display: grid; grid-template-columns: 1fr minmax(280px, 520px); gap: 18px; align-items: end; }
.admin-login-row { display: flex; gap: 10px; align-items: center; }
.admin-login-row input { flex: 1; }
.admin-control-card .admin-action-grid { display: grid; grid-template-columns: minmax(260px, 1.4fr) repeat(3, minmax(150px, .7fr)); gap: 12px; align-items: end; }
.admin-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.admin-pretty-list { display: grid; gap: 10px; }
.admin-kv { display: flex; justify-content: space-between; gap: 12px; padding: 11px 13px; border: 1px solid rgba(255,255,255,.10); border-radius: 14px; background: rgba(255,255,255,.045); }
.admin-kv span { color: var(--muted); }
.admin-mini-card { padding: 12px 14px; border: 1px solid rgba(255,255,255,.10); border-radius: 16px; background: rgba(255,255,255,.045); }
.admin-mini-card pre, .notice pre { overflow: auto; max-height: 240px; white-space: pre-wrap; }
.admin-row-actions { display: flex; gap: 10px; align-items: center; justify-content: flex-end; flex-wrap: wrap; text-align: right; }
.admin-source-row, .admin-product-row { align-items: center; }
.admin-product-filters { display: grid; grid-template-columns: 1fr 220px auto; gap: 12px; margin-bottom: 14px; }
.btn.small { padding: 8px 11px; font-size: .88rem; }
.small-line { max-width: 640px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.status-available { border-color: rgba(73, 222, 128, .35) !important; }
.status-out { border-color: rgba(248, 113, 113, .35) !important; }
.status-unknown { border-color: rgba(250, 204, 21, .35) !important; }
@media (max-width: 920px) {
  .admin-login-card, .admin-two-col, .admin-control-card .admin-action-grid, .admin-product-filters { grid-template-columns: 1fr; }
  .admin-login-row { flex-direction: column; align-items: stretch; }
  .admin-row-actions { justify-content: flex-start; text-align: left; }
}
.danger-zone{border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.06)}
.btn.danger{background:#ef4444;color:white;border-color:#ef4444}

/* Admin Hotfix */
#adminProtected{display:none}
.error-card{border-color:rgba(239,68,68,.35);background:rgba(239,68,68,.06)}
.danger{border-color:rgba(239,68,68,.45)!important;color:#fecaca!important}
.admin-row-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.admin-pharmacy-row,.admin-source-row,.admin-product-row{align-items:center;gap:1rem}
.admin-login-card{position:relative;z-index:2}

/* Info-only start page + collapsible admin blocks */
.info-only-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.info-route-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}
.info-route-grid .card{display:grid;gap:10px;align-content:start}
.info-route-grid .card h2{margin:0;font-size:1.15rem}
.admin-collapsible{position:relative}
.admin-collapsible-head{cursor:pointer;gap:12px}
.admin-collapsible .admin-toggle{margin-left:auto;white-space:nowrap}
.admin-collapsible[data-collapsed="true"] > :not(.section-head):not(h2){display:none!important}
.admin-collapsible[data-collapsed="true"] > h2{margin-bottom:0}
.admin-login-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(180px,1fr) auto auto;gap:10px;align-items:center}
.admin-management-grid{align-items:start}
.admin-management-grid .filterbox{margin-bottom:0}
.admin-compact-list{max-height:520px;overflow:auto;padding-right:4px}
.admin-compact-list .offer{padding:12px;gap:10px}
.admin-compact-list .muted{font-size:.82rem}
.admin-management-grid .admin-product-filters{grid-template-columns:1fr 150px auto}
.admin-management-grid input,.admin-management-grid select{min-width:0}
.admin-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.admin-queue-grid h3{margin:0}
@media(max-width:920px){
  .info-route-grid{grid-template-columns:1fr}
  .info-only-actions{align-items:stretch}
  .info-only-actions .btn{width:100%;justify-content:center}
  .admin-login-row{grid-template-columns:1fr}
  .admin-management-grid .admin-product-filters{grid-template-columns:1fr}
  .admin-queue-grid{grid-template-columns:1fr}
}

/* UNIFIED_PLATFORM_20260613: App-Seite, Vergleich und Admin als eine WeedWatch-Webplattform */
.unified-page {
  background:
    radial-gradient(circle at 12% 8%, rgba(110,231,168,.22), transparent 34%),
    radial-gradient(circle at 84% 18%, rgba(45,212,191,.13), transparent 30%),
    linear-gradient(135deg, #07120f 0%, #0b1d17 46%, #050807 100%);
}
.unified-topbar {
  background: rgba(7, 18, 15, .84);
  border-bottom-color: rgba(110,231,168,.14);
}

/* Pharmacy metadata + map */
.logo-fallback{width:100%;height:100%;display:grid;place-items:center;font-weight:1000;color:var(--accent2);background:rgba(110,231,168,.08);border-radius:inherit}
.pharmacy-map-card{border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;background:rgba(255,255,255,.03);min-height:240px}
.pharmacy-map-frame{width:100%;height:280px;border:0;display:block}
.pharmacy-location-console{display:grid;grid-template-columns:minmax(0,1fr) 120px auto auto;gap:10px;align-items:center;margin-top:10px}
.pharmacy-location-info{margin-top:8px;font-weight:700}
.unified-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  gap: 24px;
  align-items: stretch;
}
.unified-hero .hero-copy {
  align-self: center;
}
.hero-device-card {
  border: 1px solid rgba(110,231,168,.18);
  border-radius: 34px;
  padding: 24px;
  background: linear-gradient(180deg, rgba(19,42,34,.88), rgba(8,21,16,.96));
  box-shadow: var(--shadow);
  display: grid;
  align-content: center;
  gap: 12px;
  min-height: 320px;
}
.hero-device-card img {
  width: min(180px, 70%);
  justify-self: center;
  filter: drop-shadow(0 20px 38px rgba(0,0,0,.35));
}
.hero-device-card .full {
  text-align: center;
}
.unified-route-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 28px 0;
}
.route-card {
  display: grid;
  gap: 10px;
  align-content: start;
}
.route-card h2,
.unified-note h2,
.app-download-card h2 {
  margin: 0;
}
.unified-note {
  margin: 28px 0 70px;
  border-color: rgba(110,231,168,.18);
}
.app-feature-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 8px 0 28px;
}
.app-landing-page .phone-shell {
  width: min(980px, 94vw);
}
.app-landing-page .phone-card {
  position: relative;
  top: auto;
}
.admin-wrap .topbar,
.admin-wrap .filterbox,
.admin-wrap .card {
  border-color: rgba(110,231,168,.14);
}
.nav a[href="admin/"] {
  color: var(--accent2);
}
@media (max-width: 980px) {
  .unified-hero,
  .unified-route-grid,
  .app-feature-grid {
    grid-template-columns: 1fr;
  }
  .hero-device-card {
    min-height: 0;
  }
}

/* LIVE_APP_STYLE_FIX_20260613: App-Landingpage-Farbwelt als gemeinsame Basis */
:root {
  --bg: #07120d;
  --panel: rgba(255,255,255,.075);
  --panel2: rgba(255,255,255,.115);
  --text: #eef8f0;
  --muted: #b5c6bb;
  --accent: #74f28b;
  --accent2: #baf7c5;
  --green: #74f28b;
  --green-2: #20c060;
  --border: rgba(255,255,255,.14);
  --shadow: 0 20px 80px rgba(0,0,0,.35);
}
body,
.unified-page {
  background:
    radial-gradient(circle at 20% 10%, rgba(116,242,139,.18), transparent 30%),
    radial-gradient(circle at 80% 0%, rgba(32,192,96,.12), transparent 28%),
    radial-gradient(circle at top left, #1a3a25 0, #07120d 45%, #030604 100%);
}
.topbar.unified-topbar,
.topbar-wrap {
  position: sticky;
  top: 0;
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  padding: 20px 0;
  background: rgba(7,18,13,.72);
  border-bottom: 0;
}
.card,
.stat,
.filterbox,
.hero-device-card,
.info-card,
.download-card,
.change-card,
.support-card {
  background: linear-gradient(180deg, rgba(255,255,255,.105), rgba(255,255,255,.055));
  border-color: rgba(255,255,255,.14);
}
.btn.primary {
  background: linear-gradient(135deg, #74f28b, #20c060);
  color: #031308;
}
.brand-logo {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  object-fit: cover;
  box-shadow: var(--shadow);
  background: rgba(255,255,255,.08);
}
.app-site-hero,
.app-site-main,
.app-download-page .footer {
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
}
.app-download-page .topbar {
  width: 100%;
}
.app-download-hero-content,
.hero-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: 28px;
  align-items: stretch;
  padding: 42px 0 24px;
}
.app-version-card,
.hero-card {
  border: 1px solid var(--border);
  border-radius: 32px;
  padding: 26px;
  background: linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,.06));
  box-shadow: var(--shadow);
  align-self: stretch;
  display: grid;
  align-content: center;
  gap: 12px;
}
.status-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 8px rgba(116,242,139,.12);
}
.section {
  padding: 34px 0;
}
.section-title {
  max-width: 780px;
  margin-bottom: 18px;
}
.section-title h2,
.support-card h2,
.download-card h3,
.change-card h3 {
  margin: 0 0 8px;
}
.info-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.info-card {
  border: 1px solid var(--border);
  border-radius: 24px;
  padding: 20px;
}
.info-card.wide {
  grid-column: span 2;
}
.download-list,
.changelog-list {
  display: grid;
  gap: 14px;
}
.download-card,
.change-card,
.support-card {
  border: 1px solid var(--border);
  border-radius: 26px;
  padding: 22px;
  box-shadow: var(--shadow);
}
.download-card,
.support-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.download-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}
.badge {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 6px 10px;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
}
.badge.good {
  color: #061607;
  background: var(--green);
  border-color: transparent;
}
.badge.warn {
  color: #271700;
  background: #ffd166;
  border-color: transparent;
}
.change-card ul {
  margin: 10px 0 0;
  padding-left: 20px;
  color: var(--text);
}
.empty {
  color: var(--muted);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 18px;
  background: rgba(255,255,255,.05);
}
.full {
  text-align: center;
}
.unified-note {
  display: none !important;
}
.footer {
  color: var(--muted);
}
@media(max-width: 860px) {
  .app-download-hero-content,
  .hero-content,
  .info-grid,
  .download-card,
  .support-card {
    grid-template-columns: 1fr;
    flex-direction: column;
    align-items: stretch;
  }
  .info-card.wide {
    grid-column: span 1;
  }
}

/* PUBLIC_NAV_AND_ADMIN_TABS_FIX_20260613 */
.topbar.unified-topbar,
.topbar-wrap,
.app-download-page .topbar,
body > .topbar {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 18px 5vw;
}
.app-site-hero {
  width: 100%;
  max-width: none;
}
.app-download-hero-content,
.app-site-main {
  width: min(1120px, calc(100% - 32px));
  margin-left: auto;
  margin-right: auto;
}
.unified-hero {
  padding-top: 52px;
}
.admin-tabs {
  position: sticky;
  top: 76px;
  z-index: 8;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 0 18px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: rgba(7,18,13,.86);
  backdrop-filter: blur(16px);
}
.admin-tabs a {
  padding: 10px 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
  color: var(--text);
  font-weight: 900;
}
.admin-tabs a:hover {
  border-color: rgba(116,242,139,.42);
  color: var(--accent2);
}
.app-admin-grid {
  align-items: start;
}
.admin-check-row {
  display: flex !important;
  grid-template-columns: auto 1fr !important;
  align-items: center;
  gap: 10px !important;
}
.admin-check-row input {
  width: auto !important;
}
@media(max-width: 780px) {
  .topbar.unified-topbar,
  .app-download-page .topbar,
  body > .topbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .admin-tabs {
    position: static;
  }
}

/* APP_HEADER_STICKY_TOP_FIX_20260613 */
.app-download-page .app-site-hero {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 32px !important;
}
.app-download-page .app-site-hero > .topbar.unified-topbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 18px 5vw !important;
  border-bottom: 1px solid rgba(255,255,255,.14) !important;
  background: rgba(5, 17, 12, .86) !important;
  backdrop-filter: blur(18px) !important;
}
.app-download-page .app-download-hero-content {
  padding-top: 52px !important;
}
@media(max-width: 780px) {
  .app-download-page .app-site-hero > .topbar.unified-topbar {
    position: sticky !important;
    top: 0 !important;
  }
}

/* WEB_ACCOUNT_COMMUNITY_20260614: Web-Login, Favoriten, Bewertungen und Kommentare */
.nav-account {
  border: 1px solid rgba(116,242,139,.22);
  background: rgba(116,242,139,.08);
  color: var(--accent2);
  border-radius: 999px;
  padding: 9px 13px;
  font-weight: 900;
  cursor: pointer;
}
.nav-account.active {
  background: linear-gradient(135deg, rgba(116,242,139,.24), rgba(32,192,96,.10));
  color: var(--text);
}
.account-modal[hidden],
.account-form[hidden] {
  display: none !important;
}
.account-modal {
  position: fixed;
  inset: 0;
  z-index: 999;
  display: grid;
  place-items: center;
  padding: 18px;
}
.account-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.62);
  backdrop-filter: blur(12px);
}
.account-panel {
  position: relative;
  width: min(560px, 100%);
  max-height: calc(100vh - 36px);
  overflow: auto;
  display: grid;
  gap: 14px;
}
.account-panel h2 {
  margin: 0;
}
.account-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.08);
  color: var(--text);
  font-size: 1.3rem;
  cursor: pointer;
}
.account-summary {
  display: grid;
  gap: 4px;
  padding: 14px;
  border: 1px solid rgba(116,242,139,.18);
  border-radius: 18px;
  background: rgba(116,242,139,.07);
}
.account-summary span {
  color: var(--muted);
}
.account-tabs {
  display: flex;
  gap: 8px;
  padding: 6px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 999px;
  background: rgba(255,255,255,.04);
}
.account-tabs button {
  flex: 1;
  border: 0;
  border-radius: 999px;
  padding: 10px 12px;
  background: transparent;
  color: var(--muted);
  font-weight: 900;
  cursor: pointer;
}
.account-tabs button.active {
  background: linear-gradient(135deg, #74f28b, #20c060);
  color: #031308;
}
.account-form {
  display: grid;
  gap: 12px;
}
.account-form label,
.web-rating-form label {
  display: grid;
  gap: 7px;
  color: var(--muted);
  font-weight: 900;
}
.account-form input,
.web-rating-form input,
.web-rating-form select,
.web-rating-form textarea {
  width: 100%;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(3,13,8,.72);
  color: var(--text);
  border-radius: 16px;
  padding: 12px 14px;
  font: inherit;
}
.password-label {
  display: grid;
  gap: 7px;
}
.password-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}
.password-field input {
  min-width: 0;
}
.password-toggle,
.link-button {
  border: 1px solid rgba(116,242,139,.24);
  background: rgba(116,242,139,.08);
  color: var(--accent2);
  border-radius: 999px;
  padding: 10px 13px;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}
.password-toggle {
  white-space: nowrap;
}
.link-button {
  justify-self: start;
  background: transparent;
  border-color: transparent;
  padding-left: 0;
  padding-right: 0;
}
.password-toggle:hover,
.link-button:hover {
  color: var(--text);
  border-color: rgba(116,242,139,.38);
}
.account-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.account-favorites {
  display: grid;
  gap: 8px;
}
.account-favorite-row {
  display: grid;
  gap: 3px;
  padding: 11px 13px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 15px;
  background: rgba(255,255,255,.045);
}
.account-favorite-row span {
  color: var(--muted);
  font-size: .88rem;
}
.btn.danger-soft {
  border-color: rgba(248,113,113,.32);
  color: #fecaca;
}
.web-product-card {
  position: relative;
}
.web-product-card .product-card-link {
  display: contents;
}
.favorite-button {
  border: 1px solid rgba(116,242,139,.28);
  background: rgba(5,17,12,.84);
  color: var(--accent2);
  border-radius: 999px;
  padding: 9px 12px;
  font-weight: 1000;
  cursor: pointer;
}
.web-product-card > .favorite-button {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 5;
  box-shadow: 0 10px 26px rgba(0,0,0,.28);
}
.favorite-button.active {
  background: linear-gradient(135deg, #74f28b, #20c060);
  color: #031308;
  border-color: transparent;
}
.community-grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 22px;
  margin: -34px 0 70px;
}
.account-product-card,
.comments-card {
  display: grid;
  gap: 14px;
  align-content: start;
}
.account-product-card h2,
.comments-card h2 {
  margin: 0;
}
.detail-favorite {
  justify-self: start;
}
.web-rating-form {
  display: grid;
  gap: 14px;
}
.rating-badge,
.rating-summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--text);
  font-weight: 900;
}
.rating-badge {
  justify-self: start;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  font-size: .88rem;
}
.rating-badge small,
.rating-summary small {
  color: var(--muted);
}
.rating-details {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: rgba(255,255,255,.035);
  padding: 12px;
}
.rating-details summary {
  cursor: pointer;
  color: var(--accent2);
  font-weight: 1000;
}
.rating-details .rating-grid {
  margin-top: 12px;
}
.rating-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.check-line {
  display: flex !important;
  grid-template-columns: auto 1fr !important;
  align-items: center;
  gap: 10px !important;
}
.check-line input {
  width: auto !important;
}
.comment-list {
  display: grid;
  gap: 12px;
}
.community-comment {
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  border-radius: 18px;
  padding: 14px;
}
.community-comment p {
  margin: 10px 0;
  color: var(--text);
  line-height: 1.55;
}
.comment-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.stars {
  color: rgba(255,255,255,.24);
  letter-spacing: .08em;
  font-weight: 900;
}
.stars .filled {
  color: #ffd166;
}
.account-page-grid {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(320px, 1.1fr);
  gap: 22px;
  align-items: start;
}
.account-page-card {
  display: grid;
  gap: 14px;
}
.account-page-card h2 {
  margin: 0;
}
.account-page-card:nth-child(3) {
  grid-column: 1 / -1;
}
.account-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.account-stats > div {
  display: grid;
  gap: 3px;
  padding: 13px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
}
.account-stats strong {
  color: var(--accent2);
  font-size: 1.05rem;
}
.account-stats span {
  color: var(--muted);
  font-size: .86rem;
}
.account-list {
  display: grid;
  gap: 10px;
}
.account-list-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.045);
  border-radius: 17px;
  padding: 12px 14px;
}
.account-list-row a {
  display: grid;
  gap: 4px;
}
.account-list-row span {
  color: var(--muted);
}
@media(max-width: 860px) {
  .community-grid,
  .rating-grid,
  .account-page-grid,
  .account-stats {
    grid-template-columns: 1fr;
  }
  .account-page-card:nth-child(3) {
    grid-column: auto;
  }
  .account-list-row {
    grid-template-columns: 1fr;
  }
  .community-grid {
    margin-top: -18px;
  }
  .account-actions {
    flex-direction: column;
  }
  .password-field {
    grid-template-columns: 1fr;
  }
  .password-toggle {
    width: 100%;
  }
}


.admin-queue-section .notice.warning,
.notice.warning {
  border-color: rgba(245, 158, 11, 0.35);
  background: rgba(245, 158, 11, 0.08);
}
.queue-job-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.queue-job-card {
  border-left: 4px solid rgba(148, 163, 184, 0.35);
}
.queue-state-active { border-left-color: rgba(245, 158, 11, 0.75); }
.queue-state-delayed { border-left-color: rgba(59, 130, 246, 0.75); }
.queue-state-failed { border-left-color: rgba(239, 68, 68, 0.75); }
.queue-state-completed { border-left-color: rgba(34, 197, 94, 0.75); }

.queue-status-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.ww-progress {
  height: 8px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(255,255,255,.10);
  margin: 8px 0 6px;
}
.ww-progress-fill {
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(34,197,94,.85), rgba(20,184,166,.95));
  transition: width .25s ease;
}

/* Admin modal overlay fix */
.admin-modal.hidden { display: none !important; }
.admin-modal { position: fixed !important; inset: 0 !important; z-index: 99999 !important; display: grid !important; place-items: center !important; padding: 18px !important; }
.admin-modal-backdrop { position: absolute !important; inset: 0 !important; background: rgba(2, 6, 23, 0.72) !important; backdrop-filter: blur(5px); }
.admin-modal-card { position: relative !important; width: min(760px, 96vw) !important; max-height: 90vh !important; overflow: auto !important; background: #0f172a !important; border: 1px solid rgba(148, 163, 184, 0.35) !important; border-radius: 22px !important; box-shadow: 0 24px 80px rgba(0,0,0,0.45) !important; color: #e5e7eb !important; }
.admin-modal-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; border-bottom: 1px solid rgba(148, 163, 184, 0.2); }
.admin-modal-head h3 { margin: 0; }
.admin-modal-x { border: 0; background: transparent; color: #e5e7eb; font-size: 28px; cursor: pointer; }
.admin-modal-body { padding: 18px 20px; }
.admin-modal-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.admin-modal-fields label { display: grid; gap: 6px; font-weight: 700; color: #cbd5e1; }
.admin-modal-fields input, .admin-modal-fields textarea, .admin-modal-fields select { width: 100%; border-radius: 12px; border: 1px solid rgba(148, 163, 184, 0.35); background: rgba(15, 23, 42, 0.9); color: #f8fafc; padding: 10px 12px; }
.admin-modal-fields textarea, .admin-confirm-word { grid-column: 1 / -1; }
.admin-check { display: flex !important; align-items: center; gap: 8px; }
.admin-check input { width: auto !important; }
.admin-modal-actions { display: flex; justify-content: flex-end; gap: 10px; padding: 16px 20px; border-top: 1px solid rgba(148, 163, 184, 0.2); }
.admin-floating-notice { position: fixed; right: 18px; bottom: 18px; z-index: 100000; width: min(520px, calc(100vw - 36px)); }
@media (max-width: 720px) { .admin-modal-fields { grid-template-columns: 1fr; } }

/* Patch: Admin layout cleanup + pharmacy detail page */
.admin-management-stack { display: grid; grid-template-columns: 1fr; gap: 18px; align-items: start; }
.admin-management-stack > .filterbox { width: 100%; margin-bottom: 0; }
.admin-management-stack .admin-product-filters { display: grid; grid-template-columns: minmax(260px, 1fr) 170px auto auto auto; gap: 12px; align-items: center; }
.small-notice { padding: 10px 12px; margin: 0 0 12px; font-size: .92rem; }
.admin-collapsible-head { position: relative; padding-right: 8px; }
.admin-collapsible .admin-toggle { border-color: rgba(110,231,168,.42); background: rgba(110,231,168,.12); color: var(--accent2); font-weight: 1000; box-shadow: 0 0 0 1px rgba(110,231,168,.08) inset; }
.admin-collapsible[data-collapsed="true"] { border-style: dashed; border-color: rgba(110,231,168,.24); }
.admin-collapsible[data-collapsed="true"] .admin-toggle { background: linear-gradient(135deg, rgba(110,231,168,.22), rgba(110,231,168,.08)); }
.admin-collapsible[data-collapsed="true"] > :not(.section-head):not(h2) { display: none !important; }
.admin-collapsible[data-collapsed="true"] > h2 { margin-bottom: 0; }
.pharmacy-directory-console { grid-template-columns: minmax(280px, 1fr) auto; align-items: center; }
.pharmacy-directory-layout { display: grid; grid-template-columns: minmax(280px, .85fr) minmax(0, 1.4fr); gap: 18px; align-items: start; margin: 18px 0; }
.pharmacy-directory-listbox { max-height: 720px; overflow: auto; }
.pharmacy-directory-item { width: 100%; border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.035); color: var(--text); border-radius: 18px; padding: 14px; display: flex; justify-content: space-between; gap: 12px; align-items: center; text-align: left; cursor: pointer; margin-bottom: 10px; }
.pharmacy-directory-item:hover, .pharmacy-directory-item.active { border-color: rgba(110,231,168,.46); background: rgba(110,231,168,.09); transform: translateY(-1px); }
.pharmacy-directory-item strong { display: block; line-height: 1.25; }
.pharmacy-directory-item small { display: block; color: var(--muted); margin-top: 4px; }
.pharmacy-detail-card { display: grid; gap: 16px; }
.pharmacy-detail-head { display: flex; gap: 16px; align-items: center; }
.pharmacy-detail-head img, .pharmacy-logo-placeholder { width: 76px; height: 76px; border-radius: 22px; object-fit: contain; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.09); display: grid; place-items: center; font-weight: 1000; color: var(--accent2); }
.pharmacy-detail-head h2 { margin: 0; }
.pharmacy-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pharmacy-catalog-panel { margin-top: 18px; }
@media(max-width: 980px) {
  .admin-management-stack .admin-product-filters, .pharmacy-directory-console, .pharmacy-directory-layout { grid-template-columns: 1fr; }
  .pharmacy-facts { grid-template-columns: 1fr; }
}

/* Patch: Produktkontrolle entzerren */
.admin-product-result-count { margin-bottom: 14px; }
#adminProductList { display: grid; gap: 14px; }
#adminProductList .offer.admin-product-row { display: none; }
.admin-product-card-clean {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.025));
  overflow: hidden;
}
.admin-product-head-clean {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.admin-product-title-clean > strong {
  display: block;
  font-size: 1.08rem;
  line-height: 1.25;
  margin-bottom: 5px;
}
.admin-product-facts-clean {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 9px;
}
.admin-product-facts-clean span {
  font-size: .82rem;
  color: var(--accent2);
  background: rgba(110,231,168,.08);
  border: 1px solid rgba(110,231,168,.18);
  border-radius: 999px;
  padding: 6px 9px;
  font-weight: 850;
}
.admin-product-main-actions-clean {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
  align-items: flex-start;
  max-width: 440px;
}
.admin-offer-list-clean {
  display: grid;
  gap: 9px;
}
.admin-offer-line-clean {
  display: grid;
  grid-template-columns: 120px 90px minmax(220px, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 18px;
  background: rgba(0,0,0,.13);
}
.admin-offer-state,
.admin-offer-price,
.admin-offer-meta,
.admin-offer-buttons { min-width: 0; }
.admin-offer-price strong { font-size: 1.02rem; white-space: nowrap; }
.admin-offer-meta strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .94rem;
}
.admin-offer-meta small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: 2px;
}
.admin-offer-buttons {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: nowrap;
}
.admin-offer-buttons .btn.small,
.admin-product-main-actions-clean .btn.small { padding: 10px 13px; white-space: nowrap; }
.admin-empty-offers { padding: 6px 0; }
@media (max-width: 1050px) {
  .admin-product-head-clean { grid-template-columns: 1fr; }
  .admin-product-main-actions-clean { justify-content: flex-start; max-width: none; }
  .admin-offer-line-clean { grid-template-columns: 110px 80px minmax(0,1fr); }
  .admin-offer-buttons { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 720px) {
  .admin-offer-line-clean { grid-template-columns: 1fr; align-items: start; }
  .admin-offer-meta strong,
  .admin-offer-meta small { white-space: normal; }
}


/* Datenschutz / Cookie / Konzept Seiten */
.legal-hero{padding-bottom:18px}.privacy-grid{margin:8px 0 70px}.legal-list{color:var(--muted);line-height:1.75;margin:0;padding-left:20px}.legal-list li{margin:8px 0}.legal-note{border-color:rgba(110,231,168,.24);background:linear-gradient(180deg,rgba(16,54,39,.92),rgba(10,28,22,.94))}.checklist-list li::marker{color:var(--accent)}.concept-grid .legal-card h2,.privacy-grid .legal-card h2{color:var(--text)}.footer a{margin:0 4px}

/* Admin Live-Status: uebersichtlicher Fortschritt */
.ww-live-progress-card {
  border: 1px solid rgba(110, 231, 168, .20);
  background: linear-gradient(180deg, rgba(15, 23, 42, .92), rgba(8, 15, 28, .94));
  border-radius: 18px;
  padding: 13px 14px;
  margin: 11px 0;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.ww-progress {
  overflow: hidden;
}
.ww-progress-animated {
  width: var(--ww-progress-to);
  animation: ww-progress-glide 1.9s linear forwards;
  will-change: width;
}
@keyframes ww-progress-glide {
  from { width: var(--ww-progress-from); }
  to { width: var(--ww-progress-to); }
}
@media (prefers-reduced-motion: reduce) {
  .ww-progress-animated { animation: none; }
}
.ww-live-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 14px;
  margin-bottom: 3px;
}
.ww-live-head span,
.ww-live-label {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.ww-live-head strong {
  color: var(--accent);
  font-size: 1.25rem;
}
.ww-live-subline {
  color: var(--muted);
  font-size: .9rem;
  margin-top: 2px;
}
.ww-live-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
  margin-top: 11px;
}
.ww-live-box {
  border: 1px solid rgba(255,255,255,.08);
  background: rgba(0,0,0,.16);
  border-radius: 15px;
  padding: 11px 12px;
  min-width: 0;
}
.ww-live-box strong {
  display: block;
  margin: 4px 0 4px;
  overflow-wrap: anywhere;
}
.ww-live-product {
  margin-top: 8px;
  color: var(--accent2);
  font-size: .9rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.ww-live-counter-row {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 8px;
  align-items: center;
  margin-top: 8px;
  color: var(--muted);
  font-size: .9rem;
}
.ww-live-counter-row strong {
  display: inline-block;
  margin: 0;
  color: var(--text);
  background: rgba(110,231,168,.08);
  border: 1px solid rgba(110,231,168,.16);
  border-radius: 999px;
  padding: 4px 8px;
  white-space: nowrap;
}
@media (max-width: 820px) {
  .ww-live-grid { grid-template-columns: 1fr; }
  .ww-live-counter-row { grid-template-columns: 1fr; }
}

/* Admin action outputs: each module keeps its own result/log area */
.admin-action-output { margin-top: 12px; }
.admin-action-output:empty { display: none; }
.admin-action-output pre { max-height: 360px; overflow: auto; white-space: pre-wrap; word-break: break-word; }
.admin-legacy-output[hidden] { display: none !important; }

/* Bereinigte Flowzz-Beschreibungen behalten sinnvolle Absatzumbrüche. */
.detail-copy { white-space: pre-line; }

/* Admin Queue: completed jobs stay readable while live refresh only touches the active card */
.admin-cron-card {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.queue-state-completed,
.queue-state-completed * {
  min-width: 0;
}
.queue-state-completed pre,
.admin-completed-result pre,
.admin-completed-json pre {
  max-width: 100%;
  max-height: 420px;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.45;
  font-size: .82rem;
}
.admin-completed-result details {
  margin-top: 10px;
}
.admin-new-products {
  border: 1px solid rgba(110, 231, 168, .18);
  background: rgba(4, 20, 14, .34);
  border-radius: 14px;
  padding: 8px 10px;
  margin-top: 10px;
}
.admin-new-products summary {
  cursor: pointer;
  font-weight: 800;
}
.admin-new-product-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border-top: 1px solid rgba(255,255,255,.07);
  padding: 8px 0;
}
.admin-new-product-row .admin-row-actions {
  justify-content: flex-end;
}
.ww-live-box strong,
.ww-live-product,
.ww-live-subline,
.ww-live-counter-row {
  overflow-wrap: anywhere;
  word-break: normal;
}
.ww-live-grid {
  grid-template-columns: minmax(260px, 1.15fr) minmax(260px, .85fr);
}
.ww-live-counter-row {
  grid-template-columns: minmax(120px, 1fr) max-content max-content;
}
@media (max-width: 700px) {
  .admin-new-product-row { grid-template-columns: 1fr; }
  .ww-live-grid { grid-template-columns: 1fr; }
  .ww-live-counter-row { grid-template-columns: 1fr; }
}

/* UPDATE_ADMIN_QUEUE_LAYOUT_SPACING: Queue-Bereich entzerrt */
.admin-queue-layout-clean {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}
.admin-queue-layout-clean > .admin-queue-panel {
  min-width: 0;
  width: 100%;
  overflow: hidden;
}
.admin-queue-layout-clean > .queue-full {
  grid-column: 1 / -1;
}
.admin-queue-layout-clean .section-head {
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.admin-queue-layout-clean .admin-pretty-list {
  display: grid;
  gap: 12px;
  min-width: 0;
}
.admin-queue-layout-clean .queue-job-card {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
.admin-queue-layout-clean .queue-job-card > *,
.admin-queue-layout-clean details,
.admin-queue-layout-clean summary,
.admin-queue-layout-clean pre {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
.admin-queue-layout-clean pre {
  display: block;
  width: 100%;
}
.admin-queue-layout-clean .admin-row-actions {
  flex-wrap: wrap;
  gap: 8px;
}
.admin-queue-active-panel .ww-live-progress-card {
  margin: 12px 0 4px;
}
.admin-queue-active-panel .ww-live-grid {
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
}
.admin-queue-active-panel .ww-live-box {
  min-width: 0;
  padding: 12px 14px;
}
.admin-queue-active-panel .ww-live-counter-row {
  grid-template-columns: minmax(0, 1fr) max-content max-content;
}
.admin-queue-delayed-panel .queue-job-card,
.admin-queue-waiting-panel .queue-job-card {
  padding: 13px 14px;
}
.admin-queue-completed-panel .queue-job-card {
  padding: 15px;
}
.admin-queue-completed-panel .admin-completed-result {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.admin-queue-completed-panel .admin-completed-json,
.admin-queue-completed-panel .admin-completed-json pre {
  width: 100%;
  max-width: 100%;
}
.admin-queue-completed-panel .admin-completed-json pre {
  max-height: 520px;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.admin-queue-completed-panel .admin-new-product-row {
  grid-template-columns: minmax(0, 1fr) minmax(180px, auto);
}
.admin-queue-failed-panel {
  margin-top: 2px;
}
@media (max-width: 920px) {
  .admin-queue-layout-clean {
    grid-template-columns: 1fr;
  }
  .admin-queue-layout-clean > .queue-full {
    grid-column: auto;
  }
  .admin-queue-active-panel .ww-live-grid,
  .admin-queue-active-panel .ww-live-counter-row,
  .admin-queue-completed-panel .admin-new-product-row {
    grid-template-columns: 1fr;
  }
}

.admin-users-card { width: 100%; grid-column: 1 / -1; }
.admin-user-summary { display: grid; grid-template-columns: repeat(5, minmax(120px, 1fr)); gap: 10px; margin-bottom: 12px; }
.admin-user-row { align-items: flex-start; grid-template-columns: minmax(0, 1fr) auto; }
.admin-user-row > div:first-child { min-width: 0; overflow-wrap: anywhere; }
.admin-user-badges { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; max-width: 360px; }
@media (max-width: 760px) { .admin-user-summary { grid-template-columns: 1fr 1fr; } .admin-user-row { grid-template-columns: 1fr; } .admin-user-badges { justify-content: flex-start; max-width: none; } }


/* UPDATE_PUBLIC_HOME_AND_PHARMACY_CATALOG_20260618
   Basis: weedwatch_own_test_environment_latest_admin_user_section.zip
   Startseite ohne Admin-Kachel, moderner Flowzz/Weed.de-inspirierter Einstieg und Apothekenkatalog im Kartenraster. */
.landing-page .wrap{width:min(1240px,92vw)}
.landing-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:32px;align-items:center;padding:72px 0 28px}
.landing-copy h1{font-size:clamp(2.5rem,6.8vw,5.8rem);letter-spacing:-.05em;line-height:.88;margin:10px 0 18px}
.landing-search-card{margin-top:28px;border:1px solid rgba(110,231,168,.18);border-radius:30px;background:linear-gradient(180deg,rgba(13,31,25,.9),rgba(5,15,11,.94));box-shadow:0 24px 80px rgba(0,0,0,.32);padding:18px;display:grid;gap:14px;overflow:hidden}
.landing-search-main{height:70px;border-radius:24px;background:rgba(255,255,255,.06)}
.landing-search-actions{display:flex;flex-wrap:wrap;gap:10px}.landing-search-actions .btn{min-width:170px;text-align:center}
.landing-orbit-card{position:relative;min-height:430px;border:1px solid rgba(110,231,168,.18);border-radius:38px;background:radial-gradient(circle at 25% 15%,rgba(110,231,168,.28),transparent 32%),linear-gradient(145deg,rgba(14,48,34,.92),rgba(3,13,10,.96));box-shadow:0 30px 110px rgba(0,0,0,.38);padding:26px;overflow:hidden;isolation:isolate}
.orbit-glow{position:absolute;inset:30px;border-radius:50%;background:radial-gradient(circle,rgba(110,231,168,.18),transparent 62%);filter:blur(4px);animation:wwPulse 5s ease-in-out infinite;z-index:-1}
.orbit-card-main{position:relative;z-index:2;max-width:300px}.orbit-card-main h2{font-size:2rem;line-height:1;margin:12px 0}.orbit-card-main p{color:var(--muted);line-height:1.55}.landing-badge{display:inline-flex;border:1px solid rgba(110,231,168,.3);background:rgba(110,231,168,.12);color:var(--accent2);border-radius:999px;padding:8px 11px;font-weight:900;font-size:.78rem}
.mini-dashboard-card{position:absolute;display:grid;gap:4px;min-width:190px;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(6,20,14,.78);backdrop-filter:blur(14px);padding:16px;box-shadow:0 18px 50px rgba(0,0,0,.25);animation:wwFloat 7s ease-in-out infinite}.mini-dashboard-card strong{font-size:1.08rem}.mini-dashboard-card span{color:var(--muted);font-size:.88rem}.mini-dashboard-card.one{right:34px;top:115px}.mini-dashboard-card.two{left:34px;bottom:98px;animation-delay:-1.6s}.mini-dashboard-card.three{right:46px;bottom:42px;animation-delay:-3s}
.landing-stats .stat{position:relative;overflow:hidden}.landing-stats .stat::after{content:"";position:absolute;inset:auto -30px -45px auto;width:130px;height:130px;border-radius:50%;background:rgba(110,231,168,.08)}
.landing-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:14px 0 34px}.info-card{transition:transform .18s ease,border-color .18s ease}.info-card:hover{transform:translateY(-4px);border-color:rgba(110,231,168,.25)}.info-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:18px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.18);color:var(--accent2);font-size:1.35rem;font-weight:1000}.info-card h2{margin:14px 0 8px}.info-card p{line-height:1.55}
.landing-split-section,.landing-pharmacy-strip{margin-top:18px}.landing-products{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));padding-bottom:24px}.landing-flow{margin:28px 0 64px}.flow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.flow-steps div{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);border-radius:22px;padding:18px}.flow-steps strong{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#34d399);color:#042016}.flow-steps h3{margin:12px 0 6px}.home-pharmacy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin:12px 0 36px}.home-pharmacy-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"icon text count" "icon text label";gap:4px 12px;align-items:center;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(19,42,34,.92),rgba(13,31,25,.94));border-radius:24px;padding:14px;box-shadow:var(--shadow);transition:transform .16s ease,border-color .16s ease}.home-pharmacy-card:hover{transform:translateY(-3px);border-color:rgba(110,231,168,.28)}.home-pharmacy-icon{grid-area:icon;width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.2);color:var(--accent2);font-weight:1000;overflow:hidden}.home-pharmacy-icon img{width:100%;height:100%;object-fit:contain}.home-pharmacy-card span:nth-child(2){grid-area:text;min-width:0}.home-pharmacy-card strong,.home-pharmacy-card small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-pharmacy-card small{color:var(--muted);margin-top:4px}.home-pharmacy-card b{grid-area:count;color:var(--accent);font-size:1.35rem;text-align:right}.home-pharmacy-card em{grid-area:label;color:var(--muted);font-style:normal;font-size:.8rem;text-align:right;font-weight:800}
.pharmacy-directory-modern{display:grid!important;grid-template-columns:1fr!important;gap:18px}.pharmacy-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px;margin-top:14px}.pharmacy-directory-card{width:100%;display:grid!important;grid-template-columns:52px minmax(0,1fr);grid-template-areas:"logo body" "logo stats";align-items:center;text-align:left;gap:8px 12px;border-radius:24px!important;padding:14px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.1)!important;color:var(--text);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.pharmacy-directory-card:hover,.pharmacy-directory-card.active{transform:translateY(-2px);border-color:rgba(110,231,168,.34)!important;background:linear-gradient(180deg,rgba(110,231,168,.12),rgba(255,255,255,.035))!important}.pharmacy-card-logo{grid-area:logo;width:52px;height:52px;border-radius:18px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.18);display:grid;place-items:center;color:var(--accent2);font-weight:1000;overflow:hidden}.pharmacy-card-logo img{width:100%;height:100%;object-fit:contain}.pharmacy-card-body{grid-area:body;min-width:0}.pharmacy-card-body strong,.pharmacy-card-body small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pharmacy-card-body small{color:var(--muted);margin-top:4px}.pharmacy-card-stats{grid-area:stats;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pharmacy-card-stats small{color:var(--muted);font-weight:800}.pharmacy-detail-panel{width:100%}.pharmacy-detail-card{display:grid;gap:16px}.pharmacy-detail-card .pharmacy-detail-head{display:flex;align-items:center;gap:14px}.pharmacy-detail-card .pharmacy-detail-head img,.pharmacy-logo-placeholder{width:58px;height:58px;border-radius:20px;background:rgba(110,231,168,.1);border:1px solid rgba(110,231,168,.2);display:grid;place-items:center;object-fit:contain;color:var(--accent2);font-weight:1000}.catalog-like-panel{overflow:hidden}.catalog-like-panel .products{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(255px,1fr))!important;gap:18px;padding:12px 0 24px}.catalog-like-panel .admin-product-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.35fr) auto;gap:10px;align-items:center}.catalog-like-panel .admin-product-filters input,.catalog-like-panel .admin-product-filters select{min-width:0}
.pharmacy-distance-chip{background:rgba(110,231,168,.12);border:1px solid rgba(110,231,168,.25);color:var(--accent2)}
.reveal-on-load{animation:wwReveal .55s ease both}@keyframes wwReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes wwFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes wwPulse{0%,100%{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.05)}}
@media(max-width:1050px){.landing-hero{grid-template-columns:1fr}.landing-orbit-card{min-height:360px}.landing-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-like-panel .admin-product-filters{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.landing-hero{padding-top:42px}.landing-copy h1{font-size:clamp(2.25rem,13vw,3.7rem)}.landing-search-card{border-radius:24px;padding:13px}.landing-search-actions .btn{width:100%}.landing-orbit-card{min-height:430px;border-radius:30px}.mini-dashboard-card{min-width:160px}.mini-dashboard-card.one{right:18px;top:120px}.mini-dashboard-card.two{left:18px;bottom:120px}.mini-dashboard-card.three{right:18px;bottom:34px}.landing-info-grid,.flow-steps{grid-template-columns:1fr}.home-pharmacy-grid,.pharmacy-card-grid,.catalog-like-panel .products{grid-template-columns:1fr!important}.catalog-like-panel .admin-product-filters,.pharmacy-location-console{grid-template-columns:1fr}.pharmacy-detail-card .pharmacy-detail-head{align-items:flex-start}}

/* Update: public landing polish, app focus, cleaner hero orbit */
.landing-orbit-card{overflow:visible;min-height:455px;padding:30px 32px}
.landing-orbit-card::before{content:"";position:absolute;inset:20px;border-radius:34px;background:linear-gradient(130deg,rgba(110,231,168,.08),transparent 46%,rgba(45,212,191,.07));z-index:-1;animation:wwSoftSweep 8s ease-in-out infinite}
.orbit-card-main{max-width:360px;padding-right:130px}.orbit-card-main h2{max-width:340px}.orbit-card-main p{max-width:330px}
.mini-dashboard-card{z-index:3}.mini-dashboard-card.one{right:28px;top:112px;max-width:190px}.mini-dashboard-card.two{left:32px;bottom:88px}.mini-dashboard-card.three{right:38px;bottom:32px}
.landing-info-grid .info-card{animation:wwCardIn .7s ease both}.landing-info-grid .info-card:nth-child(2){animation-delay:.05s}.landing-info-grid .info-card:nth-child(3){animation-delay:.1s}.landing-info-grid .info-card:nth-child(4){animation-delay:.15s}
.landing-app-focus{position:relative;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:24px;align-items:center;margin:10px 0 34px;padding:30px;overflow:hidden;background:radial-gradient(circle at 88% 18%,rgba(110,231,168,.22),transparent 26%),linear-gradient(135deg,rgba(19,42,34,.96),rgba(6,20,14,.98))}
.landing-app-focus::after{content:"";position:absolute;right:-110px;bottom:-150px;width:330px;height:330px;border-radius:50%;background:rgba(110,231,168,.08);filter:blur(2px);animation:wwPulse 6s ease-in-out infinite}
.app-focus-copy{position:relative;z-index:2}.app-focus-copy h2{font-size:clamp(1.65rem,3vw,2.55rem);line-height:1.05;margin:8px 0 12px;letter-spacing:-.035em}.app-focus-copy p{max-width:720px;line-height:1.65}.app-focus-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.app-focus-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.app-focus-visual{position:relative;min-height:320px;display:grid;place-items:center}.app-phone-mock{position:relative;width:min(320px,92%);min-height:480px;border:1px solid rgba(110,231,168,.2);border-radius:38px;background:linear-gradient(180deg,rgba(8,26,18,.96),rgba(2,10,7,.98));box-shadow:0 28px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08);padding:26px 18px 20px;display:grid;gap:12px;align-content:start;animation:wwFloat 6.5s ease-in-out infinite}.app-phone-mock::before{content:"";position:absolute;inset:10px;border-radius:31px;border:1px solid rgba(255,255,255,.06);pointer-events:none}.phone-dot{width:56px;height:8px;border-radius:999px;background:rgba(255,255,255,.12);justify-self:center;margin-bottom:4px}.app-phone-mock strong{font-size:1.35rem}.app-phone-mock small{color:var(--muted);font-weight:800}.app-phone-screen{position:relative;overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);min-height:330px}.app-phone-shot{display:block;width:100%;height:330px;object-fit:cover;object-position:top center}.phone-pill-row{display:flex;gap:8px;margin-top:8px}.phone-pill-row i{width:52px;height:28px;border-radius:999px;background:rgba(110,231,168,.12);border:1px solid rgba(110,231,168,.16)}.app-focus-floating{position:absolute;display:grid;gap:4px;max-width:180px;padding:12px 14px;border-radius:20px;background:rgba(7,18,15,.86);border:1px solid rgba(110,231,168,.22);box-shadow:0 18px 46px rgba(0,0,0,.26);backdrop-filter:blur(12px);animation:wwCardIn .5s ease both}.app-focus-floating b{font-size:.9rem;color:var(--accent2)}.app-focus-floating span{font-size:.82rem;color:var(--muted);line-height:1.4}.app-focus-floating.one{right:-8px;top:28px}.app-focus-floating.two{left:-12px;bottom:32px}
.landing-products .product-card{animation:wwCardIn .55s ease both}.landing-products .product-card:nth-child(2n){animation-delay:.04s}.landing-products .product-card:nth-child(3n){animation-delay:.08s}
@keyframes wwSoftSweep{0%,100%{opacity:.45;transform:translate3d(0,0,0)}50%{opacity:1;transform:translate3d(-8px,6px,0)}}
@keyframes wwCardIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:1050px){.orbit-card-main{padding-right:0;max-width:420px}.mini-dashboard-card.one{right:28px;top:160px}.landing-app-focus{grid-template-columns:1fr}.app-focus-floating.one{right:6px;top:16px}.app-focus-floating.two{left:6px;bottom:18px}}
@media(max-width:720px){.landing-orbit-card{overflow:hidden;min-height:450px;padding:24px}.orbit-card-main{padding-right:0}.mini-dashboard-card.one{right:16px;top:170px}.mini-dashboard-card.two{left:16px;bottom:126px}.mini-dashboard-card.three{right:16px;bottom:34px}.landing-app-focus{padding:20px;border-radius:28px}.app-focus-actions .btn{width:100%;text-align:center}.app-focus-visual{min-height:280px}.app-phone-mock{width:min(280px,92%);min-height:420px;padding:24px 16px 18px}.app-phone-screen{min-height:286px}.app-phone-shot{height:286px}.app-focus-floating{display:none}}


/* Update: hübscher Apotheken-Scroller auf der Startseite */
.landing-pharmacy-carousel-section{position:relative;margin-top:26px;padding:4px 0 12px}
.pharmacy-strip-head{align-items:flex-end}
.pharmacy-strip-head .muted{margin:8px 0 0;max-width:680px;line-height:1.55}
.pharmacy-strip-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.pharmacy-scroll-btn{width:40px;height:40px;border-radius:999px;padding:0;display:grid;place-items:center;font-size:1.25rem;line-height:1;background:rgba(255,255,255,.055);border-color:rgba(110,231,168,.16)}
.pharmacy-scroll-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}
.home-pharmacy-carousel-wrap{position:relative;margin:14px -4px 36px;padding:4px;overflow:hidden}
.home-pharmacy-carousel-wrap::before,.home-pharmacy-carousel-wrap::after{content:"";position:absolute;top:0;bottom:0;width:70px;pointer-events:none;z-index:2}
.home-pharmacy-carousel-wrap::before{left:0;background:linear-gradient(90deg,var(--bg),rgba(2,10,7,0))}
.home-pharmacy-carousel-wrap::after{right:0;background:linear-gradient(270deg,var(--bg),rgba(2,10,7,0))}
.home-pharmacy-carousel{display:flex!important;grid-template-columns:none!important;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding:8px;padding:6px 6px 14px;margin:0;scrollbar-width:thin}
.home-pharmacy-carousel::-webkit-scrollbar{height:9px}
.home-pharmacy-carousel::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:999px}
.home-pharmacy-carousel::-webkit-scrollbar-thumb{background:rgba(110,231,168,.32);border-radius:999px}
.home-pharmacy-carousel .home-pharmacy-card{flex:0 0 clamp(250px,24vw,330px);scroll-snap-align:start;min-height:88px;position:relative;overflow:hidden}
.home-pharmacy-carousel .home-pharmacy-card::after{content:"";position:absolute;inset:auto -30px -46px auto;width:110px;height:110px;border-radius:999px;background:rgba(110,231,168,.065);transition:transform .2s ease,opacity .2s ease}
.home-pharmacy-carousel .home-pharmacy-card:hover::after{transform:scale(1.25);opacity:.9}
.home-pharmacy-carousel .notice{min-width:100%}
@media(max-width:720px){.pharmacy-strip-head{align-items:flex-start}.pharmacy-strip-actions{justify-content:flex-start}.home-pharmacy-carousel-wrap{margin-left:-2px;margin-right:-2px}.home-pharmacy-carousel-wrap::before,.home-pharmacy-carousel-wrap::after{width:34px}.home-pharmacy-carousel .home-pharmacy-card{flex-basis:82vw}.pharmacy-scroll-btn{display:none}}

.support-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:18px;align-items:start}
.support-ticket-card{display:grid;gap:14px}
.support-ticket-row{display:grid;gap:10px}
.support-ticket-row p{margin:0;line-height:1.55;white-space:pre-wrap}
.support-ticket-row textarea{width:100%;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:var(--text);padding:10px 12px}
.comment-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.account-settings-form{max-width:760px}
.account-settings-form select{width:100%;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:var(--text);padding:12px 14px}
@media(max-width:820px){.support-layout{grid-template-columns:1fr}}

/* Fix: Katalog-Apothekenbutton wieder kompakt halten */
.catalog-search-console .picker-apply,
.catalog-search-console #catalogPharmacyApply {
  align-self: center;
  min-height: 42px;
  height: 42px;
  padding: 0 16px;
  border-radius: 14px;
  white-space: nowrap;
}
.catalog-search-console .picker-row {
  align-items: center;
}
@media (max-width: 720px) {
  .catalog-search-console .picker-apply,
  .catalog-search-console #catalogPharmacyApply {
    width: 100%;
  }
}

.admin-dashboard-card { position: relative; overflow: hidden; }
.admin-module-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; margin-top: 14px; }
.admin-module-card { display: grid; gap: 6px; padding: 16px; border-radius: 20px; border: 1px solid rgba(110,231,168,.16); background: rgba(255,255,255,.04); color: var(--text); text-decoration: none; transition: transform .16s ease, border-color .16s ease, background .16s ease; }
.admin-module-card:hover { transform: translateY(-2px); border-color: rgba(110,231,168,.35); background: rgba(110,231,168,.09); }
.admin-module-card strong { font-size: 1rem; }
.admin-module-card span { color: var(--muted); font-size: .88rem; line-height: 1.35; }

/* Admin module pages: echte URLs, gleiche Admin-App, sichtbarer Block pro Modul */
body[data-admin-module] #adminProtected > section,
body[data-admin-module] #adminProtected > .grid.stats,
body[data-admin-module] #adminProtected > .admin-management-stack {
  display: none;
}
body[data-admin-module] #adminProtected > .admin-tabs { display: flex; }
body[data-admin-module="dashboard"] #admin-dashboard,
body[data-admin-module="app"] #admin-app,
body[data-admin-module="app"] #admin-push,
body[data-admin-module="scraper"] #admin-scraper,
body[data-admin-module="scraper"] #sourceStats,
body[data-admin-module="scraper"] #admin-sources,
body[data-admin-module="sources"] #admin-sources,
body[data-admin-module="queue"] #admin-queue,
body[data-admin-module="queue"] #admin-last-jobs,
body[data-admin-module="queue"] #admin-errors,
body[data-admin-module="import"] #admin-import,
body[data-admin-module="import"] #admin-danger,
body[data-admin-module="pharmacies"] #admin-data,
body[data-admin-module="products"] #admin-data,
body[data-admin-module="users"] #admin-data,
body[data-admin-module="support"] #admin-data {
  display: block;
}
body[data-admin-module] #admin-data > .filterbox { display: none; }
body[data-admin-module="pharmacies"] #admin-pharmacies,
body[data-admin-module="products"] #admin-products,
body[data-admin-module="users"] #admin-users,
body[data-admin-module="support"] #admin-support {
  display: grid;
}
body[data-admin-module] .admin-tabs a { opacity: .72; }
body[data-admin-module="app"] .admin-tabs a[data-admin-nav="app"],
body[data-admin-module="scraper"] .admin-tabs a[data-admin-nav="scraper"],
body[data-admin-module="queue"] .admin-tabs a[data-admin-nav="queue"],
body[data-admin-module="pharmacies"] .admin-tabs a[data-admin-nav="pharmacies"],
body[data-admin-module="products"] .admin-tabs a[data-admin-nav="products"],
body[data-admin-module="users"] .admin-tabs a[data-admin-nav="users"],
body[data-admin-module="support"] .admin-tabs a[data-admin-nav="support"],
body[data-admin-module="import"] .admin-tabs a[data-admin-nav="import"] {
  opacity: 1;
  border-color: rgba(110,231,168,.38);
  background: rgba(110,231,168,.11);
}
body[data-admin-module="dashboard"] .admin-tabs a[data-admin-nav="dashboard"] {
  opacity: 1;
  border-color: rgba(110,231,168,.38);
  background: rgba(110,231,168,.11);
}

/* Fix: Admin-Modulseiten wirklich sichtbar machen, trotz generischer Hide-Regel */
body[data-admin-module="dashboard"] #adminProtected > #admin-dashboard,
body[data-admin-module="app"] #adminProtected > #admin-app,
body[data-admin-module="app"] #adminProtected > #admin-push,
body[data-admin-module="scraper"] #adminProtected > #admin-scraper,
body[data-admin-module="scraper"] #adminProtected > #sourceStats,
body[data-admin-module="scraper"] #adminProtected > #admin-sources,
body[data-admin-module="sources"] #adminProtected > #admin-sources,
body[data-admin-module="queue"] #adminProtected > #admin-queue,
body[data-admin-module="queue"] #adminProtected > #admin-last-jobs,
body[data-admin-module="queue"] #adminProtected > #admin-errors,
body[data-admin-module="import"] #adminProtected > #admin-import,
body[data-admin-module="import"] #adminProtected > #admin-danger,
body[data-admin-module="pharmacies"] #adminProtected > #admin-data,
body[data-admin-module="products"] #adminProtected > #admin-data,
body[data-admin-module="users"] #adminProtected > #admin-data,
body[data-admin-module="support"] #adminProtected > #admin-data {
  display: block !important;
}
body[data-admin-module="pharmacies"] #admin-data > #admin-pharmacies,
body[data-admin-module="products"] #admin-data > #admin-products,
body[data-admin-module="users"] #admin-data > #admin-users,
body[data-admin-module="support"] #admin-data > #admin-support {
  display: grid !important;
}

/* Fix: Produktseite im Admin als saubere Kartenliste rendern */
body[data-admin-module="products"] #admin-products {
  gap: 16px !important;
}
body[data-admin-module="products"] #adminProductList {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  width: 100%;
}
body[data-admin-module="products"] #adminProductList .admin-product-card-clean {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  width: 100%;
  min-width: 0;
}
body[data-admin-module="products"] #adminProductList .admin-product-head-clean {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(280px, auto) !important;
  gap: 14px !important;
  align-items: start !important;
}
body[data-admin-module="products"] #adminProductList .admin-product-title-clean,
body[data-admin-module="products"] #adminProductList .admin-product-title-clean .muted {
  min-width: 0;
  overflow-wrap: anywhere;
}
body[data-admin-module="products"] #adminProductList .admin-product-main-actions-clean {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  max-width: 460px;
}
body[data-admin-module="products"] #adminProductList .admin-product-main-actions-clean .btn,
body[data-admin-module="products"] #adminProductList .admin-offer-buttons .btn {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1.1;
}
body[data-admin-module="products"] #adminProductList .admin-offer-list-clean {
  display: grid !important;
  gap: 9px !important;
}
body[data-admin-module="products"] #adminProductList .admin-offer-line-clean {
  display: grid !important;
  grid-template-columns: 120px 94px minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
}
body[data-admin-module="products"] #adminProductList .admin-offer-buttons {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  gap: 8px !important;
}
@media (max-width: 1050px) {
  body[data-admin-module="products"] #adminProductList .admin-product-head-clean {
    grid-template-columns: 1fr !important;
  }
  body[data-admin-module="products"] #adminProductList .admin-product-main-actions-clean {
    justify-content: flex-start !important;
    max-width: none;
  }
  body[data-admin-module="products"] #adminProductList .admin-offer-line-clean {
    grid-template-columns: 112px 84px minmax(0, 1fr) !important;
  }
  body[data-admin-module="products"] #adminProductList .admin-offer-buttons {
    grid-column: 1 / -1;
    justify-content: flex-start !important;
  }
}
@media (max-width: 720px) {
  body[data-admin-module="products"] #adminProductList .admin-offer-line-clean {
    grid-template-columns: 1fr !important;
  }
}

/* Final Fix: Admin-Produktübersicht lesbar statt gedrückte Tabellenzeilen */
#adminProductList.admin-compact-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  align-items: stretch !important;
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}
#adminProductList .admin-product-card-clean {
  min-height: 0 !important;
  padding: 18px !important;
  border-radius: 26px !important;
}
#adminProductList .admin-product-head-clean {
  grid-template-columns: 1fr !important;
  gap: 16px !important;
}
#adminProductList .admin-product-title-clean > strong {
  font-size: 1.18rem !important;
  line-height: 1.35 !important;
}
#adminProductList .admin-product-title-clean .muted {
  line-height: 1.45 !important;
  white-space: normal !important;
}
#adminProductList .admin-product-main-actions-clean {
  width: 100% !important;
  max-width: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) !important;
  gap: 10px !important;
  justify-content: stretch !important;
}
#adminProductList .admin-product-main-actions-clean .btn {
  width: 100% !important;
  min-height: 44px !important;
  white-space: normal !important;
  text-align: center !important;
}
#adminProductList .admin-offer-list-clean {
  gap: 12px !important;
}
#adminProductList .admin-offer-line-clean {
  grid-template-columns: 1fr !important;
  gap: 9px !important;
  align-items: stretch !important;
  min-height: auto !important;
  padding: 14px !important;
  border-radius: 20px !important;
}
#adminProductList .admin-offer-state,
#adminProductList .admin-offer-price,
#adminProductList .admin-offer-meta,
#adminProductList .admin-offer-buttons {
  width: 100% !important;
}
#adminProductList .admin-offer-price strong {
  font-size: 1.16rem !important;
}
#adminProductList .admin-offer-meta strong,
#adminProductList .admin-offer-meta small {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  line-height: 1.35 !important;
}
#adminProductList .admin-offer-buttons {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(130px, 1fr)) !important;
  gap: 10px !important;
  justify-content: stretch !important;
}
#adminProductList .admin-offer-buttons .btn {
  width: 100% !important;
  min-height: 42px !important;
  white-space: normal !important;
}
@media (max-width: 780px) {
  #adminProductList .admin-product-main-actions-clean,
  #adminProductList .admin-offer-buttons {
    grid-template-columns: 1fr !important;
  }
}
