:root{--bg:#f5f7fb;--card:#fff;--ink:#111827;--muted:#667085;--line:#e5e9f0;--orange:#ff4f18;--orange2:#ff7a45;--green:#16a34a;--blue:#0b63ce;--shadow:0 16px 42px rgba(17,24,39,.08);--radius:18px}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{text-decoration:none;color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:292px 1fr;max-width:1680px;margin:0 auto;background:#fff;box-shadow:0 30px 90px rgba(15,23,42,.08)}
.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:28px 24px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--orange);color:#fff;font-size:42px;font-weight:900;line-height:.65;transform:rotate(180deg)}.brand strong{display:block;font:800 30px/1 Manrope,sans-serif;letter-spacing:-.06em}.brand small{display:block;font-size:10px;letter-spacing:.12em;font-weight:800;color:#344054}.side-nav{display:grid;gap:7px}.side-nav a,.side-nav button{height:46px;border:0;border-radius:12px;background:transparent;color:#111827;font-weight:800;font-size:14px;display:flex;align-items:center;gap:14px;padding:0 14px;cursor:pointer;text-align:left}.side-nav a span,.side-nav button span:first-child{width:22px;text-align:center;color:#111827}.side-nav a.active{background:#ffe9df;color:var(--orange);box-shadow:inset 4px 0 0 var(--orange)}.side-nav.secondary{padding-top:18px;border-top:1px solid var(--line)}.account-avatar{width:24px!important;height:24px;border-radius:50%;background:#ffe9df;color:var(--orange)!important;display:grid;place-items:center}.side-bottom{margin-top:auto;display:grid;gap:14px}.mini-card{border:1px solid var(--line);border-radius:12px;background:#fff;padding:14px;display:grid;gap:4px;text-align:left;color:#344054;position:relative}.mini-card strong{font-size:15px;color:#111827}.mini-card em{font-style:normal;font-size:13px;color:#667085}.mini-card .dot{width:9px;height:9px;background:#20c65a;border-radius:50%;display:inline-block;box-shadow:0 0 0 5px #e8f9ee}.mini-card b{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:26px}.login-card{cursor:pointer}
.content{padding:22px 24px 32px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px}.top-search{height:48px;max-width:470px;flex:1;display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 16px;box-shadow:0 4px 18px rgba(15,23,42,.03)}.top-search span{font-size:24px;color:#667085}.top-search input{border:0;outline:0;width:100%;background:transparent;color:#101828}.top-actions{display:flex;gap:12px;align-items:center}.cart-button,.profile-pill{height:48px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:0 14px;display:flex;align-items:center;gap:9px;font-weight:800;cursor:pointer}.cart-button{position:relative;color:var(--orange)}.cart-button i{position:absolute;top:-7px;left:24px;background:var(--orange);color:#fff;border-radius:50%;font-style:normal;font-size:10px;width:18px;height:18px;display:grid;place-items:center}.profile-pill span{width:30px;height:30px;border-radius:50%;background:#ffe8dc;display:grid;place-items:center}.profile-pill small{color:#667085}
.hero{min-height:306px;border-radius:16px;padding:38px;background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.6)),url('/kaefer-imbiss/uploads/generated-pizza.png');background-size:cover;background-position:center;display:grid;grid-template-columns:1.1fr minmax(360px,520px);gap:28px;align-items:center;color:#fff;overflow:hidden}.eyebrow{margin:0 0 10px;color:var(--orange2);font-weight:900;font-size:14px}.hero h1{font:800 clamp(34px,4vw,52px)/1.04 Manrope,sans-serif;letter-spacing:-.05em;margin:0}.hero h1 em{font-style:normal;color:#ff7a45}.hero-copy>p:not(.eyebrow){font-size:18px;line-height:1.5;color:#fff;margin:18px 0 18px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}.hero-actions button{height:42px;border-radius:11px;padding:0 16px;font-weight:900;cursor:pointer}.hero-action-primary{border:0;background:var(--orange);color:#fff}.hero-action-secondary{border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.13);color:#fff;backdrop-filter:blur(8px)}.hero-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:800px}.hero-benefits span{font-size:12px;font-weight:800;display:flex;gap:8px;align-items:center}
.hero-search-card{background:#fff;color:#111827;border-radius:17px;padding:28px;box-shadow:0 22px 70px rgba(0,0,0,.22)}.hero-search-card h2{font:800 24px Manrope,sans-serif;margin:0 0 5px}.hero-search-card p{margin:0 0 18px;color:#667085}.hero-search-card label{display:flex;gap:10px}.hero-search-card input{height:52px;border:1px solid var(--line);border-radius:12px;padding:0 16px;outline:0;flex:1}.hero-search-card button{border:0;cursor:pointer}.hero-search-card label button{width:56px;border-radius:12px;background:var(--orange);color:#fff;font-size:24px}.hero-gastro-cta{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}.hero-gastro-cta strong{font-size:13px}.hero-gastro-cta span{grid-column:1;color:#667085;font-size:12px;line-height:1.35}.hero-gastro-cta button{grid-column:2;grid-row:1/3;height:36px;border-radius:9px;background:#111827;color:#fff;padding:0 13px;font-size:12px;font-weight:900}.quick-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.quick-tags button,.filter-tabs button{height:32px;padding:0 14px;border-radius:999px;border:1px solid transparent;background:#f1f3f6;color:#344054;font-weight:800;font-size:12px}.quick-tags button:hover,.filter-tabs button.active,.filter-tabs button:hover{background:var(--orange);color:#fff}
.shops-panel{padding:26px 0 18px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:14px}.section-head h2{font:800 20px Manrope,sans-serif;margin:0}.section-head p{margin:4px 0 0;color:#667085;font-size:13px}.section-head>a{font-size:13px;color:var(--orange);font-weight:900}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.shop-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.shop-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(15,23,42,.04);transition:.2s transform,.2s box-shadow}.shop-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.shop-image{height:132px;display:block;position:relative;background:#1f2937;overflow:hidden}.shop-image img{width:100%;height:100%;object-fit:cover}.shop-image:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}.shop-status{position:absolute;left:10px;top:10px;background:#eaf8ef;color:#117a33;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:900;z-index:2}.shop-status:not(.open){background:#fff3df;color:#a35b00}.shop-fav{position:absolute;right:10px;top:10px;background:rgba(0,0,0,.62);color:#fff;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;z-index:2}.shop-logo{position:absolute;left:16px;bottom:-25px;z-index:3;width:58px;height:58px;border-radius:50%;background:#fff;padding:6px;object-fit:contain;border:1px solid var(--line);box-shadow:0 6px 18px rgba(0,0,0,.16)}
.shop-body{padding:36px 14px 14px}.shop-category{margin:0 0 8px;color:#667085;font-size:12px}.shop-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:2px 7px}.shop-title-row h3{font:800 16px Manrope,sans-serif;margin:0 0 4px}.shop-title-row>a{display:none}
.shop-rating{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:800;color:#b8860b;margin-bottom:4px}.shop-rating small{color:#667085;font-weight:700}.shop-rating.is-new{color:#667085;font-weight:700}.shop-description{display:none}.shop-meta{display:grid;grid-template-columns:1fr auto;gap:6px;color:#667085;font-size:12px;margin:12px 0}.shop-meta span{white-space:nowrap}.shop-meta b{font-weight:700;color:#667085}.shop-cta{height:38px;border:1px solid var(--orange);color:var(--orange);border-radius:9px;display:grid;place-items:center;font-weight:900;font-size:13px}.shop-card:hover .shop-cta{background:var(--orange);color:#fff}.skeleton{height:278px;background:linear-gradient(110deg,#eef1f5 8%,#fff 18%,#eef1f5 33%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{to{background-position-x:-200%}}
.empty-state{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:42px}.empty-state span{font-size:40px}.empty-state h3{margin:10px 0 4px;font:800 22px Manrope,sans-serif}.empty-state p{color:#667085}.empty-state button{border:0;background:var(--orange);color:#fff;border-radius:10px;padding:12px 18px;font-weight:900;cursor:pointer}
.promo-banner{display:flex;align-items:center;gap:14px;background:linear-gradient(90deg,var(--orange),var(--orange2));color:#fff;border-radius:14px;padding:14px 20px;margin:0 0 18px;box-shadow:0 12px 30px rgba(255,79,24,.25)}.promo-banner .promo-icon{font-size:22px;flex-shrink:0}.promo-banner .promo-text{flex:1;font-size:14px;font-weight:700;line-height:1.4}.promo-banner .promo-text b{font-size:16px}.promo-banner button[data-action="own-shop"]{border:0;background:#fff;color:var(--orange);border-radius:10px;height:38px;padding:0 16px;font-weight:900;cursor:pointer;white-space:nowrap;flex-shrink:0}.promo-banner .promo-close{border:0;background:rgba(255,255,255,.22);color:#fff;width:30px;height:30px;border-radius:50%;font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center;flex-shrink:0}@media(max-width:720px){.promo-banner{flex-wrap:wrap}}
.benefit-strip{margin:0 0 18px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.04);display:grid;grid-template-columns:1.15fr repeat(5,1fr);overflow:hidden}.benefit-strip h2{font:800 19px/1.25 Manrope,sans-serif;margin:0;padding:26px 20px}.benefit-strip article{padding:24px 18px;border-left:1px solid var(--line);display:grid;gap:6px}.benefit-strip span{width:38px;height:38px;border-radius:50%;background:#fff2eb;color:var(--orange);display:grid;place-items:center}.benefit-strip strong{font-size:14px}.benefit-strip p{margin:0;color:#667085;font-size:12px;line-height:1.35}.dashboard{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:14px}.dash-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:0 10px 30px rgba(15,23,42,.04);min-height:170px}.dash-card h3{font:800 16px Manrope,sans-serif;margin:0 0 12px}.dash-card small{display:inline-block;background:#eaf2ff;color:#0b63ce;border-radius:9px;padding:5px 10px;font-weight:800;font-size:12px}.dash-card h4{font:800 18px Manrope,sans-serif;margin:18px 0 7px}.dash-card p{color:#667085;font-size:13px;line-height:1.45;margin:0 0 18px}.dash-card strong{display:block;color:var(--orange);font-size:32px;line-height:1;margin-bottom:12px}.dash-card strong span{font-size:12px;color:#344054}.dash-card button,.dash-card a{border:1px solid var(--line);background:#fff;border-radius:9px;height:38px;padding:0 14px;display:inline-grid;place-items:center;font-weight:900;font-size:13px;cursor:pointer}.status-card button{background:var(--orange);border-color:var(--orange);color:#fff}.progress{height:8px;background:#edf0f4;border-radius:99px;overflow:hidden}.progress i{display:block;width:50%;height:100%;background:var(--orange);border-radius:inherit}
.account-dialog{border:0;padding:0;background:transparent;width:min(960px,calc(100vw - 28px));max-width:none}.account-dialog::backdrop{background:rgba(8,11,16,.74);backdrop-filter:blur(8px)}.dialog-shell{min-height:620px;background:#fff;border-radius:24px;overflow:hidden;display:grid;grid-template-columns:39% 61%;position:relative;box-shadow:0 40px 120px rgba(0,0,0,.42)}.dialog-close{position:absolute;right:18px;top:16px;z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:26px;line-height:1;cursor:pointer}.dialog-aside{background:#111827;color:#fff;padding:62px 44px;position:relative;overflow:hidden}.dialog-aside h2{font:800 48px/1 Manrope,sans-serif;letter-spacing:-.06em;margin:80px 0 20px}.dialog-aside>p:not(.eyebrow){color:#cbd5e1;line-height:1.6}.aside-orb{width:150px;height:150px;border-radius:50%;background:#ffefe7;color:var(--orange);font-size:44px;display:grid;place-items:center;position:absolute;bottom:-35px;right:-24px}.dialog-content{padding:58px clamp(30px,5vw,68px);overflow:auto;max-height:min(760px,90vh)}.auth-tabs{display:flex;border-bottom:1px solid #e3e7ee;margin-bottom:34px}.auth-tabs button{border:0;background:transparent;padding:13px 5px;margin-right:28px;color:#8a8e96;font-weight:800;cursor:pointer;position:relative}.auth-tabs button.active{color:var(--ink)}.auth-tabs button.active:after{content:"";position:absolute;height:3px;left:0;right:0;bottom:-2px;background:var(--orange)}.auth-intro h3,.account-welcome h3{font:800 29px/1.15 Manrope,sans-serif;letter-spacing:-.04em;margin:0}.auth-intro p{color:#667085;font-size:14px;line-height:1.5;margin:9px 0 28px}.form-field{display:block;margin:0 0 16px}.form-field>span{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.form-field input{width:100%;height:51px;border:1px solid #d9dfe8;border-radius:13px;padding:0 15px;outline:0;background:#fbfcfe}.check-field{display:flex;align-items:start;gap:9px;color:#667085;font-size:12px;line-height:1.4;margin:4px 0 16px}.form-feedback{min-height:18px;font-size:12px;margin:4px 0 8px;color:#bd3217}.submit-button{width:100%;border:0;background:var(--orange);color:#fff;border-radius:13px;height:48px;font-weight:900;display:grid;place-items:center}.auth-switch{text-align:center;color:#667085;font-size:12px;margin:18px 0 0}.auth-switch button{border:0;background:transparent;color:var(--orange);font-weight:800;cursor:pointer}.account-welcome{display:flex;align-items:center;gap:14px;margin:22px 0}.account-welcome>span{width:58px;height:58px;border-radius:18px;background:#ffe9df;display:grid;place-items:center;font:800 22px Manrope}.account-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.account-stats p{background:#f4f6f9;border-radius:15px;padding:17px;margin:0;display:flex;flex-direction:column}.recent-order,.no-orders{border:1px solid var(--line);border-radius:13px;padding:12px 14px;margin-top:8px;display:grid}.logout-button{width:100%;border:0;background:transparent;color:#8a8f96;font-size:12px;font-weight:700;padding:15px;cursor:pointer}
.recent-order-wrap{display:grid;gap:0}.recent-order-wrap .recent-order{margin-top:8px}.review-cta{justify-self:start;margin:8px 0 0;border:1px solid var(--orange);color:var(--orange);background:#fff;border-radius:9px;height:30px;padding:0 12px;font-size:11px;font-weight:900;cursor:pointer}.review-done{justify-self:start;margin:8px 0 0;color:#22a744;font-size:11px;font-weight:800}
.review-composer{margin-top:16px;border:1px solid var(--line);border-radius:15px;padding:16px;background:#fbfcfe;position:relative}.review-composer-close{position:absolute;right:10px;top:10px;width:26px;height:26px;border:0;background:transparent;font-size:18px;line-height:1;cursor:pointer;color:#8a8f96}.review-composer-shop{margin:0 26px 10px 0;font-weight:800;font-size:13px}.star-picker{display:flex;gap:4px;margin-bottom:10px}.star-picker button{border:0;background:transparent;font-size:26px;line-height:1;color:#d9dfe8;cursor:pointer;padding:0}.star-picker button.active{color:#ff9d0b}.review-composer textarea{width:100%;min-height:64px;border:1px solid #d9dfe8;border-radius:11px;padding:9px 12px;font:inherit;resize:vertical;outline:0;background:#fff;margin-bottom:10px}.review-composer .submit-button{width:auto;padding:0 18px;height:40px}
@media(max-width:1300px){.shop-grid{grid-template-columns:repeat(3,1fr)}.benefit-strip{grid-template-columns:1fr 1fr 1fr}.dashboard{grid-template-columns:repeat(2,1fr)}}@media(max-width:980px){.app-shell{display:block}.sidebar{position:relative;height:auto;border-right:0;border-bottom:1px solid var(--line)}.side-bottom{display:none}.content{padding:16px}.hero{grid-template-columns:1fr}.hero-benefits{grid-template-columns:repeat(2,1fr)}.shop-grid{grid-template-columns:repeat(2,1fr)}.topbar{flex-direction:column;align-items:stretch}.top-actions{justify-content:space-between}.benefit-strip{grid-template-columns:1fr 1fr}.dialog-shell{grid-template-columns:1fr}.dialog-aside{display:none}}@media(max-width:620px){.sidebar{padding:20px}.side-nav{grid-template-columns:1fr 1fr}.side-nav.secondary{grid-template-columns:1fr}.hero{padding:24px}.hero h1{font-size:34px}.hero-search-card{padding:20px}.shop-grid,.dashboard,.benefit-strip{grid-template-columns:1fr}.section-head{align-items:start}.profile-pill strong{display:none}}
.fallback-dish{height:100%;display:grid;place-items:center;font-size:54px;background:linear-gradient(135deg,#1f2937,#475467)}.text-logo{display:grid!important;place-items:center;font:900 15px Manrope,sans-serif;color:#111827}
.section-head>button{border:0;background:transparent;color:var(--orange);font-size:13px;font-weight:900;cursor:pointer;padding:0}.side-nav button:hover,.side-nav a:hover{background:#f8fafc}.side-bottom button{cursor:pointer;font-family:inherit}
.live-panel{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;display:grid;grid-template-columns:minmax(260px,.9fr) 1.4fr;gap:24px;box-shadow:0 10px 30px rgba(15,23,42,.04)}.panel-kicker{margin:0 0 8px;color:var(--orange);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.live-panel h2{font:800 24px Manrope,sans-serif;margin:0 0 8px}.live-panel p{color:#667085;line-height:1.5;margin:0}.panel-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.panel-item{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;gap:12px;background:#fbfcfe}.panel-item>span{width:34px;height:34px;border-radius:10px;background:#fff2eb;color:var(--orange);display:grid;place-items:center;font-weight:900;flex:0 0 auto}.panel-item strong{display:block;font-size:14px}.panel-item small{display:block;color:#667085;margin-top:3px;line-height:1.35}.shop-fav{border:0;cursor:pointer;font:900 17px/1 system-ui}.shop-fav.active{background:var(--orange);color:#fff}.shop-image .shop-fav{position:absolute;right:10px;top:10px;z-index:4}@media(max-width:900px){.live-panel{grid-template-columns:1fr}.panel-list{grid-template-columns:1fr}}
.side-nav button.active{background:#ffe9df;color:var(--orange);box-shadow:inset 4px 0 0 var(--orange)}.side-nav button{width:100%}.side-nav.secondary button{justify-content:flex-start}
.mp-icon{--i:none;width:20px;height:20px;display:inline-block;position:relative;color:currentColor;font-size:0;line-height:1;flex:0 0 auto}
.mp-icon:before{content:""!important;display:block;width:100%;height:100%;background:currentColor;-webkit-mask:var(--i) center/contain no-repeat;mask:var(--i) center/contain no-repeat}
.mp-icon.home{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 11 9-8 9 8'/%3E%3Cpath d='M5 10v10h14V10'/%3E%3Cpath d='M9 20v-6h6v6'/%3E%3C/svg%3E")}
.mp-icon.bag{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12l1 12H5L6 8Z'/%3E%3Cpath d='M9 8a3 3 0 0 1 6 0'/%3E%3C/svg%3E")}
.mp-icon.receipt{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12v18l-3-2-3 2-3-2-3 2V3Z'/%3E%3Cpath d='M9 8h6M9 12h6M9 16h4'/%3E%3C/svg%3E")}
.mp-icon.star{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.7 5.5 6.1.9-4.4 4.3 1 6L12 16.8l-5.4 2.9 1-6-4.4-4.3 6.1-.9L12 3Z'/%3E%3C/svg%3E")}
.mp-icon.ticket{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v3a2 2 0 0 0 0 4v3a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-3a2 2 0 0 0 0-4V7Z'/%3E%3Cpath d='m9 15 6-6M9.5 9.5h.01M14.5 14.5h.01'/%3E%3C/svg%3E")}
.mp-icon.heart{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.8 5.8a5.4 5.4 0 0 0-7.6 0L12 7l-1.2-1.2a5.4 5.4 0 0 0-7.6 7.6L12 22l8.8-8.6a5.4 5.4 0 0 0 0-7.6Z'/%3E%3C/svg%3E")}
.mp-icon.chat{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-8 8H8l-5 3 1.6-5A8 8 0 1 1 21 12Z'/%3E%3Cpath d='M8 11h8M8 15h5'/%3E%3C/svg%3E")}
.mp-icon.user{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3C/svg%3E")}
.mp-icon.search{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.8' cy='10.8' r='6.6'/%3E%3Cpath d='m15.7 15.7 4.7 4.7'/%3E%3C/svg%3E")}
.mp-icon.cart{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2l2.3 11.2a2 2 0 0 0 2 1.6h7.9a2 2 0 0 0 2-1.5L21 8H7'/%3E%3Ccircle cx='10' cy='20' r='1.5'/%3E%3Ccircle cx='18' cy='20' r='1.5'/%3E%3C/svg%3E")}
.mp-icon.crown{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.15' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 8 4 4 4-7 4 7 4-4-2 11H6L4 8Z'/%3E%3Cpath d='M6 19h12'/%3E%3C/svg%3E")}
.mp-icon.gear{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3.2'/%3E%3Cpath d='M19.4 13.6a1.7 1.7 0 0 0 .35 1.9l.05.05a2 2 0 1 1-2.9 2.9l-.05-.05a1.7 1.7 0 0 0-1.9-.35 1.7 1.7 0 0 0-1 1.55V20a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.55 1.7 1.7 0 0 0-1.9.35l-.05.05a2 2 0 1 1-2.9-2.9l.05-.05a1.7 1.7 0 0 0 .35-1.9 1.7 1.7 0 0 0-1.55-1H4a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.55-1.1 1.7 1.7 0 0 0-.35-1.9l-.05-.05a2 2 0 1 1 2.9-2.9l.05.05a1.7 1.7 0 0 0 1.9.35H10a1.7 1.7 0 0 0 1-1.55V4a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.55 1.7 1.7 0 0 0 1.9-.35l.05-.05a2 2 0 1 1 2.9 2.9l-.05.05a1.7 1.7 0 0 0-.35 1.9V10a1.7 1.7 0 0 0 1.55 1H20a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1.6Z'/%3E%3C/svg%3E")}
.mp-icon.wallet{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2-2h13a1 1 0 0 1 1 1v2'/%3E%3Cpath d='M3 7v11a2 2 0 0 0 2 2h14a1 1 0 0 0 1-1v-3'/%3E%3Crect x='15' y='11' width='6' height='5' rx='1.3'/%3E%3Ccircle cx='17.4' cy='13.5' r='.6' fill='black' stroke='none'/%3E%3C/svg%3E")}
.mp-icon.grid{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='3.5' width='7.5' height='7.5' rx='1.6'/%3E%3Crect x='13' y='3.5' width='7.5' height='7.5' rx='1.6'/%3E%3Crect x='3.5' y='13' width='7.5' height='7.5' rx='1.6'/%3E%3Crect x='13' y='13' width='7.5' height='7.5' rx='1.6'/%3E%3C/svg%3E")}
.mp-icon.bolt{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2 4 14h6l-1 8 9-12h-6l1-8Z'/%3E%3C/svg%3E")}
.mp-icon.check-circle{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12.5 2.7 2.7L16 9.5'/%3E%3C/svg%3E")}
.side-nav .mp-icon{width:20px;height:20px}
.mini-card .mp-icon{width:20px;height:20px}
.top-search .mp-icon{width:20px;height:20px;color:#667085}
.cart-button .mp-icon{width:20px;height:20px}
.profile-pill .mp-icon{width:18px;height:18px}
.hero-benefits .mp-icon{width:16px;height:16px;color:#fff}
.benefit-strip .mp-icon{width:20px;height:20px}
.side-nav a:focus,.side-nav button:focus{outline:none}.side-nav a:focus-visible,.side-nav button:focus-visible{outline:2px solid rgba(255,79,24,.45);outline-offset:2px}.side-nav a.active,.side-nav button.active{background:#ffe9df;color:var(--orange);box-shadow:inset 4px 0 0 var(--orange)}
.side-nav [data-action].active{background:#ffe9df!important;color:var(--orange)!important;box-shadow:inset 4px 0 0 var(--orange)!important}.live-panel{scroll-margin-top:22px}.side-nav a,.side-nav button{user-select:none}
.brand-logo{width:44px;height:44px;object-fit:contain;border-radius:12px;display:block}.brand-copy{display:grid;gap:1px}.brand .brand-mark{display:none}
.verbund-mark{width:39px;height:39px;display:grid;place-items:center;color:var(--orange);font:900 40px/1 Manrope,sans-serif;letter-spacing:-13px;padding-right:10px;transform:translateX(-4px)}.cart-symbol{background:transparent!important;color:var(--ink);font-size:20px}.more-shops-card{display:none}

/* Desktop: komplette Bestellübersicht in einem Viewport. */
@media(min-width:981px){
  html,body{height:100%;overflow:hidden}.app-shell{height:100dvh;min-height:0;grid-template-columns:228px minmax(0,1fr)}
  .sidebar{height:100dvh;padding:16px 15px;gap:12px}.brand-logo{width:38px;height:38px}.brand strong{font-size:25px}.side-nav{gap:3px}.side-nav a,.side-nav button{height:34px;padding:0 10px;font-size:12px;gap:9px}.side-nav.secondary{padding-top:9px}.side-bottom{gap:7px}.side-bottom .login-card,.side-bottom .app-card{display:none}.mini-card{padding:10px}.mini-card em{font-size:11px}.mini-card strong{font-size:13px}
  .content{height:100dvh;min-height:0;overflow:hidden;padding:12px 14px 14px;display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);grid-template-rows:44px minmax(0,1fr) 158px;grid-template-areas:"top top" "hero shops" "dash dash";gap:11px 13px;background:var(--bg)}
  .topbar{grid-area:top;margin:0;min-width:0}.top-search,.cart-button,.profile-pill{height:42px}.top-search{max-width:420px}.hero{grid-area:hero;min-height:0;height:100%;padding:24px;display:flex;align-items:flex-end;border-radius:15px}.hero-search-card{display:none}.hero h1{font-size:clamp(31px,3.4vw,48px)}.hero-copy>p:not(.eyebrow){font-size:14px;line-height:1.4;margin:12px 0 12px}.hero-actions{margin-bottom:15px}.hero-actions button{height:34px;padding:0 12px;font-size:11px}.hero-benefits{grid-template-columns:1fr 1fr;gap:9px 12px}.hero-benefits span{font-size:11px}.eyebrow{font-size:11px;margin-bottom:7px}
  .shops-panel{grid-area:shops;min-height:0;height:100%;padding:0;display:grid;grid-template-rows:auto auto minmax(0,1fr)}.section-head{margin:0 0 7px}.section-head h2{font-size:18px}.section-head p{font-size:11px}.filter-tabs{margin:0 0 8px;gap:5px}.filter-tabs button{height:27px;padding:0 10px;font-size:10px}.shop-grid{min-height:0;height:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.shop-card{min-height:0;height:100%;display:grid;grid-template-rows:minmax(82px,1fr) auto}.shop-image{height:auto;min-height:82px}.shop-logo{width:42px;height:42px;left:11px;bottom:-18px}.shop-body{padding:24px 10px 9px}.shop-title-row h3{font-size:14px}.shop-category{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-meta{font-size:11px;margin:7px 0;display:flex;justify-content:space-between;gap:4px}.shop-cta{height:30px;font-size:11px}.shop-status{left:7px;top:7px;font-size:9px;padding:4px 7px}.shop-image .shop-fav{right:7px;top:7px;width:26px;height:26px}.fallback-dish{font-size:40px}.empty-state{padding:20px}
  .benefit-strip{display:none}.dashboard{grid-area:dash;min-height:0;grid-template-columns:1.25fr repeat(4,1fr);gap:9px}.dash-card{min-height:0;height:158px;padding:11px 12px;display:flex;flex-direction:column}.dash-card h3{font-size:12px;margin:0 0 6px}.dash-card small{font-size:9px;padding:3px 7px}.dash-card h4{font-size:13px;margin:7px 0 3px}.dash-card strong{font-size:22px;margin-bottom:6px}.dash-card strong span{font-size:9px}.dash-card p{font-size:10px;line-height:1.25;margin:0 0 6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-card button,.dash-card a{height:28px;padding:0 9px;font-size:10px;margin-top:auto;align-self:flex-start}
  .live-panel{position:fixed;z-index:20;right:18px;bottom:18px;width:min(720px,calc(100vw - 264px));max-height:calc(100dvh - 36px);overflow:auto;margin:0;padding:25px;grid-template-columns:minmax(220px,.8fr) 1.2fr;transform:translateY(calc(100% + 32px));opacity:0;visibility:hidden;transition:.22s ease;box-shadow:0 28px 90px rgba(15,23,42,.24)}.live-panel.is-open{transform:none;opacity:1;visibility:visible}.panel-close{position:absolute;right:11px;top:9px;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:20px;cursor:pointer}.panel-list{gap:8px}.panel-item{padding:10px}.panel-item small{font-size:11px}
  .dialog-shell{height:min(640px,calc(100dvh - 24px));min-height:0}.dialog-content{padding:30px 48px;max-height:none;overflow:auto}.dialog-aside{padding:42px 36px}.dialog-aside h2{font-size:42px;margin:54px 0 18px}.auth-tabs{margin-bottom:18px}.auth-intro p{margin:6px 0 15px}.form-field{margin-bottom:10px}.form-field input{height:44px}.check-field{margin:2px 0 7px}.submit-button{height:44px}.auth-switch{margin-top:10px}
}

/* Große Desktopansicht nach KFR-Verbundsystem-Vorlage. */
@media(min-width:1200px) and (min-height:850px){
  :root{--bg:#f6f7f9;--orange:#ff4b0b;--line:#e6e9ee}.app-shell{grid-template-columns:236px minmax(0,1fr);padding:8px;gap:8px;background:var(--bg);box-shadow:none}.sidebar{height:calc(100dvh - 16px);margin:0;border:1px solid var(--line);border-radius:12px;padding:18px 16px;background:#fff}.brand{padding:2px 4px 12px}.brand strong{font-size:28px}.brand small{font-size:10px}.side-nav{gap:4px}.side-nav a,.side-nav button{height:40px;font-size:12px}.side-nav.secondary{padding-top:12px}.side-bottom .app-card{display:grid}.mini-card{padding:13px}.content{height:calc(100dvh - 16px);border:1px solid var(--line);border-radius:12px;padding:16px 18px;grid-template-columns:1fr;grid-template-rows:44px 274px 278px 90px minmax(0,1fr);grid-template-areas:"top" "hero" "shops" "benefits" "dash";gap:12px;background:#fff}
  .top-search{max-width:385px}.hero{display:grid;grid-template-columns:1.25fr minmax(360px,.85fr);align-items:center;padding:30px 32px;background:linear-gradient(90deg,rgba(6,8,11,.92),rgba(6,8,11,.38)),url('/uploads/generated-pizza.png');background-size:cover;background-position:center}.hero-search-card{display:block;padding:24px}.hero h1{font-size:32px}.hero-copy>p:not(.eyebrow){font-size:16px;margin:14px 0 14px}.hero-actions{margin-bottom:18px}.hero-actions button{height:35px}.hero-benefits{grid-template-columns:repeat(4,1fr);gap:12px}.hero-benefits span{font-size:10px;color:#fff}.hero-search-card h2{font-size:17px}.hero-search-card p{font-size:12px;margin-bottom:14px}.hero-search-card input{height:40px}.hero-search-card label button{width:44px}.hero-gastro-cta{margin-top:14px;padding-top:13px}.hero-gastro-cta span{font-size:10px}.hero-gastro-cta button{height:31px;font-size:10px}.quick-tags{margin-top:13px}.quick-tags button{height:25px;padding:0 11px;font-size:10px}
  .shops-panel{grid-template-rows:auto minmax(0,1fr)}.filter-tabs{display:none}.section-head{margin-bottom:8px}.section-head h2{font-size:15px}.section-head p{display:none}.shop-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.shop-card{grid-template-rows:118px auto}.shop-body{padding:25px 12px 10px}.shop-title-row h3{font-size:15px}.shop-category{font-size:11px}.shop-meta{font-size:11px}.more-shops-card{display:grid;place-items:center;align-content:center;text-align:center;border:1px dashed #cfd5dd;border-radius:15px;background:#fff;gap:8px}.more-shops-card>span{width:42px;height:42px;border:1px solid #cfd5dd;border-radius:50%;display:grid;place-items:center;font-size:26px}.more-shops-card strong{font-size:13px}.more-shops-card p{font-size:10px;line-height:1.5;color:var(--muted);margin:0}.more-shops-card button{height:30px;padding:0 17px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--orange);font-size:10px;font-weight:800}
  .benefit-strip{display:grid;grid-area:benefits;grid-template-columns:1.25fr repeat(5,1fr);margin:0;height:90px}.benefit-strip h2{font-size:14px;padding:19px 16px}.benefit-strip article{padding:14px 12px;grid-template-columns:32px 1fr;grid-template-rows:auto auto;gap:1px 8px}.benefit-strip span{width:32px;height:32px;grid-row:1/3}.benefit-strip strong{font-size:10px}.benefit-strip p{font-size:9px}.dashboard{grid-template-columns:1.35fr repeat(4,1fr);gap:10px}.dash-card{height:100%;min-height:0;padding:14px}.dash-card h3{font-size:12px}.dash-card strong{font-size:25px}.dash-card p{font-size:10px}.dash-card button,.dash-card a{height:30px}.dialog-shell{height:min(650px,calc(100dvh - 30px))}
}

/* Kompakter Desktop für Retina-Displays bei 100 % Browser-Zoom. */
@media (min-width:981px) and (max-width:1399px), (min-width:981px) and (max-height:849px){
  .app-shell{grid-template-columns:178px minmax(0,1fr)}
  .sidebar{padding:9px 8px;height:100dvh;gap:5px}.brand{gap:6px;padding:0 4px 5px}.verbund-mark{width:27px;height:27px;font-size:28px}.brand strong{font-size:19px}.brand small{font-size:7px}.side-nav{gap:1px}.side-nav a,.side-nav button{height:27px;padding:0 7px;font-size:9px;gap:5px}.side-nav a span,.side-nav button span:first-child{width:16px}.side-nav.secondary{padding-top:4px}.account-avatar{width:18px!important;height:18px}.side-bottom{display:none}
  .content{padding:8px;height:100dvh;grid-template-columns:minmax(245px,.62fr) minmax(0,1.38fr);grid-template-rows:36px minmax(0,1fr) 116px;gap:7px 9px}.topbar{height:36px}.top-search,.cart-button,.profile-pill{height:34px;border-radius:10px}.top-search{max-width:330px;padding:0 11px;font-size:11px}.top-search span{font-size:17px}.cart-button,.profile-pill{padding:0 10px;font-size:10px}.profile-pill span{width:23px;height:23px}
  .hero{padding:14px;min-width:0}.hero h1{font-size:20px;line-height:1.02;letter-spacing:-.045em}.eyebrow{font-size:8px;margin-bottom:4px}.hero-copy>p:not(.eyebrow){font-size:10px;line-height:1.3;margin:7px 0 8px}.hero-actions{gap:5px;margin-bottom:9px}.hero-actions button{height:25px;padding:0 8px;font-size:7.5px;border-radius:7px}.hero-benefits{grid-template-columns:1fr 1fr;gap:5px 7px}.hero-benefits span{font-size:7.5px;line-height:1.2;gap:3px}
  .shops-panel{grid-template-rows:auto auto minmax(0,1fr)}.section-head{margin-bottom:4px}.section-head h2{font-size:12px}.section-head p{font-size:8px}.section-head>button{font-size:8px}.filter-tabs{gap:3px;margin-bottom:4px}.filter-tabs button{height:20px;padding:0 7px;font-size:7px}.shop-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.shop-card{grid-template-rows:minmax(72px,1fr) auto}.shop-image{min-height:72px}.shop-logo{width:30px;height:30px;left:7px;bottom:-13px;padding:4px}.shop-body{padding:17px 6px 5px}.shop-title-row h3{font-size:12px}.shop-category{font-size:9px;margin-bottom:3px}.shop-meta{font-size:9px;margin:4px 0;gap:2px}.shop-status{font-size:8px;padding:3px 5px}.shop-image .shop-fav{width:20px;height:20px;font-size:11px}.shop-cta{height:23px;font-size:7px}.more-shops-card{display:none!important}
  .dashboard{grid-template-columns:1.25fr repeat(4,1fr);gap:5px}.dash-card{height:116px;padding:7px}.dash-card h3{font-size:9px;margin-bottom:3px}.dash-card small{font-size:6px;padding:2px 5px}.dash-card h4{font-size:9px;margin:4px 0 2px}.dash-card strong{font-size:17px;margin-bottom:3px}.dash-card strong span{font-size:6px}.dash-card p{font-size:7px;line-height:1.2;margin-bottom:3px;-webkit-line-clamp:2}.dash-card button,.dash-card a{height:22px;padding:0 6px;font-size:7px}
  .live-panel{right:8px;bottom:8px;width:min(620px,calc(100vw - 194px));max-height:calc(100dvh - 16px);padding:18px}.dialog-shell{height:calc(100dvh - 14px)}.dialog-content{padding:18px 30px}.dialog-aside{padding:28px}.dialog-aside h2{font-size:31px;margin:35px 0 14px}
  .side-nav .mp-icon{width:15px;height:15px}.profile-pill .mp-icon{width:14px;height:14px}.top-search .mp-icon{width:15px;height:15px}
}

/* Paketuebersicht und aufgeraeumte Shop-Kacheln */
.shop-card{position:relative;display:flex;flex-direction:column;min-width:0}
.shop-visual-wrap{position:relative;min-width:0}
.shop-visual-wrap .shop-fav{position:absolute;right:10px;top:10px;z-index:5;border:0}
.shop-image{isolation:isolate}
.shop-image img,.shop-image .fallback-dish{position:absolute;inset:0}
.shop-image img{z-index:1}
.shop-image .fallback-dish{z-index:0}
.shop-logo.logo-image{z-index:4}
.shop-logo.text-logo{z-index:3}
.shop-body{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1}
.shop-title-row{justify-content:space-between;align-items:flex-start}
.shop-title-row h3{min-width:0;max-width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.shop-description{display:-webkit-box;color:#667085;font-size:12px;line-height:1.35;margin:0;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.shop-category{display:none}
.shop-tags{display:flex;gap:5px;flex-wrap:wrap;min-height:24px}
.shop-tags span{display:inline-flex;align-items:center;height:22px;border:1px solid #edf0f4;background:#f8fafc;border-radius:999px;padding:0 8px;color:#344054;font-size:10px;font-weight:800;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.shop-meta{display:grid;grid-template-columns:1fr;gap:5px;margin:0}
.shop-meta span{display:flex;align-items:center;min-height:24px;border-radius:8px;background:#f6f7f9;color:#4b5563;padding:4px 8px;font-size:10px;font-weight:800;white-space:normal;line-height:1.25}
.shop-cta{margin-top:auto}
.more-shops-card{min-height:100%;padding:16px}
.live-panel{position:relative}
.panel-close{position:absolute;right:12px;top:12px;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#111827;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:3}
.live-panel.is-wide{grid-template-columns:1fr;width:min(1040px,calc(100vw - 264px))}
.live-panel.is-wide .panel-list{grid-template-columns:1fr}
.shop-system-story{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.shop-system-story article{border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px}
.shop-system-story h3{font:800 15px Manrope,sans-serif;margin:0 0 8px;color:#111827}
.shop-system-story p{margin:0;color:#475467;font-size:12px;line-height:1.55}
.gastro-benefit-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.gastro-benefit-strip article{border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px;min-height:100%}
.gastro-benefit-strip strong{display:block;color:#111827;font-size:13px;font-weight:900;margin-bottom:5px}
.gastro-benefit-strip span{display:block;color:#667085;font-size:11px;line-height:1.45}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.package-card{border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:100%}
.package-card.is-featured{border-color:rgba(255,79,24,.55);box-shadow:0 14px 34px rgba(255,79,24,.12)}
.package-card p{margin:0;color:var(--orange);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.package-card .package-badge{align-self:flex-start;border:1px solid rgba(255,79,24,.28);border-radius:999px;background:#fff2eb;color:#c2410c;padding:4px 8px;font-size:10px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.package-card .package-badge.promo{background:var(--orange);border-color:var(--orange);color:#fff}
.package-card h3{font:800 30px/1 Manrope,sans-serif;margin:0;letter-spacing:-.04em;color:#111827}
.package-card .promo-old-price{font-size:16px;font-weight:700;color:#98a2b3;text-decoration:line-through;margin-right:6px}
.package-card h3 span{font-size:12px;color:#667085;letter-spacing:0;margin-left:3px}
.package-card small{color:#667085;line-height:1.45}
.package-card ul,.legal-overview ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}
.package-card li,.legal-overview li{position:relative;padding-left:18px;color:#344054;font-size:12px;line-height:1.45}
.package-card li:before,.legal-overview li:before{content:"✓";position:absolute;left:0;top:0;color:#16a34a;font-weight:900}
.package-card a{height:36px;margin-top:auto;border-radius:9px;background:var(--orange);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}
.package-matrix{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:#fff}
.package-matrix>div{display:grid;grid-template-columns:minmax(190px,1.5fr) repeat(3,minmax(80px,.6fr));align-items:center;border-top:1px solid var(--line)}
.package-matrix>div:first-child{border-top:0;background:#f8fafc}
.package-matrix span,.package-matrix strong,.package-matrix b,.package-matrix i{padding:10px 12px;font-size:12px;border-left:1px solid var(--line)}
.package-matrix span,.package-matrix strong:first-child{border-left:0}
.package-matrix strong{font-weight:900;color:#111827}
.package-matrix b{color:#16a34a;font-style:normal;text-align:center}
.package-matrix i{color:#98a2b3;font-style:normal;text-align:center}
.gastro-decision-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.gastro-decision-panel article{border:1px solid var(--line);border-radius:15px;background:#fbfcfe;padding:16px}
.gastro-decision-panel h3{font:800 15px Manrope,sans-serif;margin:0 0 10px;color:#111827}
.gastro-decision-panel ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}
.gastro-decision-panel li{position:relative;padding-left:18px;color:#344054;font-size:12px;line-height:1.45}
.gastro-decision-panel li:before{content:"✓";position:absolute;left:0;top:0;color:#16a34a;font-weight:900}
.own-shop-terms{display:grid;gap:12px}
.own-shop-section-head{display:grid;gap:4px}
.own-shop-section-head p{margin:0;color:var(--orange);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.own-shop-section-head h3{font:800 22px/1.15 Manrope,sans-serif;margin:0;color:#111827}
.own-shop-section-head span{color:#667085;font-size:12px;line-height:1.45}
.detail-actions{padding-top:2px}
.legal-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.legal-overview article{border:1px solid var(--line);border-radius:15px;background:#fbfcfe;padding:16px}
.legal-overview h3{font:800 15px Manrope,sans-serif;margin:0 0 10px}
.package-note{margin:0;color:#667085;font-size:12px;line-height:1.5}
.terms-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.terms-summary article{border:1px solid var(--line);border-radius:14px;background:#fbfcfe;padding:14px}
.terms-summary strong{display:block;font:800 28px/1 Manrope,sans-serif;color:#111827}
.terms-summary span{display:block;margin-top:5px;color:#667085;font-size:12px;font-weight:800}
.terms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.terms-card{border:1px solid var(--line);border-radius:15px;background:#fff;padding:16px;min-width:0}
.terms-card h3{font:800 16px Manrope,sans-serif;margin:0 0 10px;color:#111827}
.terms-card ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.terms-card li{position:relative;padding-left:18px;color:#344054;font-size:12px;line-height:1.45}
.terms-card li:before{content:"✓";position:absolute;left:0;top:0;color:#16a34a;font-weight:900}
.terms-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.terms-flow article{border:1px solid var(--line);border-radius:14px;background:#fbfcfe;padding:13px;display:grid;gap:6px}
.terms-flow span{width:28px;height:28px;border-radius:50%;background:#fff2eb;color:var(--orange);display:grid;place-items:center;font-weight:900}
.terms-flow strong{font-size:13px}
.terms-flow small{color:#667085;line-height:1.35}
.terms-actions{display:flex;flex-wrap:wrap;gap:8px}
.terms-actions button{height:34px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#111827;padding:0 14px;font-size:12px;font-weight:900;cursor:pointer}
.terms-actions button:hover{border-color:var(--orange);color:var(--orange);background:#fff7f3}
.terms-checklist{display:flex;flex-wrap:wrap;gap:8px}
.terms-checklist span{border:1px solid #dce3ed;background:#f8fafc;border-radius:999px;padding:7px 10px;color:#344054;font-size:12px;font-weight:900}
.terms-matrix{margin-bottom:0}
@media(min-width:981px){
  .shop-grid{align-items:stretch}
  .shop-card{height:100%;min-height:0}
  .shop-image{height:128px}
  .shop-body{padding-bottom:12px}
}
@media(min-width:1200px) and (min-height:850px){
  .shop-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .more-shops-card{display:none!important}
  .shop-image{height:112px}
  .shop-description{-webkit-line-clamp:1}
  .shop-tags span{height:20px;font-size:9px;padding:0 7px}
  .shop-meta{grid-template-columns:1fr;gap:4px}
  .shop-meta span{min-height:21px;font-size:9px;padding:3px 7px}
}
@media (min-width:981px) and (max-width:1399px), (min-width:981px) and (max-height:849px){
  .side-nav a,.side-nav button{font-size:8.5px;gap:4px}
  .shop-description{display:none}
  .shop-tags{display:none}
  .shop-image{height:auto;min-height:72px}
  .shop-body{gap:4px}
  .shop-title-row h3{-webkit-line-clamp:1}
  .shop-meta{gap:2px}
  .shop-meta span{min-height:17px;padding:2px 5px;font-size:7px}
  .live-panel.is-wide{width:min(820px,calc(100vw - 194px))}
  .gastro-benefit-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .gastro-benefit-strip article,.gastro-decision-panel article{padding:11px}
  .gastro-benefit-strip span,.gastro-decision-panel li{font-size:9px}
  .package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .package-card{padding:11px;gap:6px}
  .package-card h3{font-size:20px}
  .package-card small,.package-card li,.legal-overview li,.package-note{font-size:9px}
  .package-matrix span,.package-matrix strong,.package-matrix b,.package-matrix i{padding:6px 8px;font-size:9px}
  .legal-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .legal-overview article{padding:11px}
}
@media(max-width:760px){
  .live-panel.is-wide{width:auto}
  .package-grid,.legal-overview,.terms-grid,.terms-summary,.terms-flow,.gastro-decision-panel{grid-template-columns:1fr}
  .gastro-benefit-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shop-system-story{grid-template-columns:1fr}
  .package-matrix{overflow:visible}
  .package-matrix>div{min-width:0;grid-template-columns:minmax(132px,1fr) repeat(3,48px)}
  .package-matrix span,.package-matrix strong,.package-matrix b,.package-matrix i{padding:9px 6px;font-size:10px}
  .package-matrix strong:not(:first-child){font-size:9px}
}

/* Mobile refresh */
@media(max-width:760px){
  html,body{overflow-x:hidden;background:#f4f6f9}
  body{font-size:14px}
  .app-shell{display:block;max-width:none;background:#f4f6f9;box-shadow:none}
  .sidebar{position:sticky;top:0;z-index:30;height:auto;padding:10px 14px 8px;border:0;border-bottom:1px solid rgba(226,232,240,.9);background:rgba(255,255,255,.96);backdrop-filter:blur(14px);gap:9px}
  .brand{height:38px;gap:9px}
  .verbund-mark{width:28px;height:28px;font-size:30px;letter-spacing:-10px;padding-right:7px;transform:translateX(-2px)}
  .brand strong{font-size:24px;letter-spacing:-.05em}
  .brand small{font-size:8px;letter-spacing:.1em}
  .side-nav:first-of-type{display:flex;grid-template-columns:none;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;margin:0;padding:0 2px 2px;scrollbar-width:none}
  .side-nav:first-of-type::-webkit-scrollbar,.filter-tabs::-webkit-scrollbar,.package-grid::-webkit-scrollbar{display:none}
  .side-nav a,.side-nav button{flex:0 0 auto;width:auto;height:36px;border:1px solid #edf0f4;border-radius:999px;background:#fff;color:#111827;box-shadow:0 4px 14px rgba(15,23,42,.05);font-size:12px;gap:7px;padding:0 12px;scroll-snap-align:start}
  .side-nav a span,.side-nav button span:first-child{width:16px}
  .side-nav a.active,.side-nav button.active{background:#fff2eb!important;color:var(--orange)!important;border-color:#ffd4c4;box-shadow:none!important}
  .side-nav [data-action="own-shop"]{order:-1;background:#111827!important;color:#fff!important;border-color:#111827}
  .side-nav [data-action="own-shop"] .mp-icon{color:#fff}
  .side-nav.secondary,.side-bottom{display:none!important}
  .content{display:flex;flex-direction:column;padding:12px 14px 88px;background:#f4f6f9}
  .topbar{order:1;margin:0 0 12px;gap:8px;display:grid;grid-template-columns:1fr;align-items:stretch}
  .top-search{height:42px;max-width:none;border-radius:999px;padding:0 13px;box-shadow:0 10px 24px rgba(15,23,42,.06)}
  .top-search span{font-size:18px}
  .top-search input{font-size:14px}
  .top-actions{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}
  .cart-button,.profile-pill{height:44px;border-radius:13px;justify-content:center;box-shadow:0 8px 20px rgba(15,23,42,.04)}
  .cart-button small,.profile-pill strong,.profile-pill small{display:none}
  .profile-pill{width:44px;padding:0}
  .profile-pill span{width:26px;height:26px}
  .hero{order:2;min-height:178px;margin-bottom:16px;border-radius:22px;padding:20px;display:flex;align-items:flex-end;background:linear-gradient(180deg,rgba(5,8,12,.18),rgba(5,8,12,.88)),url('/kaefer-imbiss/uploads/generated-pizza.png');background-size:cover;background-position:center;color:#fff}
  .hero h1{font-size:30px;line-height:1.02;letter-spacing:-.04em}
  .eyebrow{font-size:11px;margin-bottom:6px}
  .hero-copy>p:not(.eyebrow){font-size:13px;line-height:1.35;margin:8px 0 10px}
  .hero-actions{gap:8px;margin-bottom:12px}
  .hero-actions button{height:34px;padding:0 12px;font-size:11px;border-radius:10px}
  .hero-search-card{display:none}
  .hero-benefits{display:flex;grid-template-columns:none;gap:7px;overflow-x:auto;margin:0 -4px;padding:0 4px 2px;scrollbar-width:none}
  .hero-benefits::-webkit-scrollbar{display:none}
  .hero-benefits span{flex:0 0 auto;padding:7px 9px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.13);font-size:10px;line-height:1;backdrop-filter:blur(8px)}
  .hero-benefits .mp-icon{width:13px;height:13px}
  .shops-panel{order:4;padding:2px 0 16px}
  .section-head{align-items:flex-start;margin-bottom:10px}
  .section-head h2{font-size:18px;line-height:1.15}
  .section-head p{font-size:12px}
  .section-head>button{height:32px;white-space:nowrap;font-size:12px}
  .filter-tabs{display:flex;gap:7px;overflow-x:auto;margin:0 -14px 12px;padding:0 14px 2px;scrollbar-width:none}
  .filter-tabs button{flex:0 0 auto;height:34px;border-color:#e5e9f0;background:#fff;padding:0 13px}
  .shop-grid{grid-template-columns:1fr;gap:10px}
  .shop-card{display:grid;grid-template-columns:112px minmax(0,1fr);min-height:142px;border-radius:18px;box-shadow:0 12px 28px rgba(15,23,42,.06)}
  .shop-card:hover{transform:none}
  .shop-visual-wrap{min-height:100%}
  .shop-image{height:100%;min-height:142px;border-radius:0}
  .shop-image:after{inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.58))}
  .shop-status{left:8px;top:8px;font-size:9px;padding:4px 7px}
  .shop-visual-wrap .shop-fav{right:8px;top:8px;width:28px;height:28px;font-size:15px}
  .shop-logo{left:8px;bottom:8px;width:34px;height:34px;border-radius:11px;padding:4px}
  .shop-body{padding:12px;gap:6px}
  .shop-title-row{gap:4px;align-items:flex-start}
  .shop-title-row h3{font-size:15px;line-height:1.15;margin:0;-webkit-line-clamp:2}
  .shop-rating{font-size:11px;margin:0}
  .shop-description{display:-webkit-box;font-size:11px;line-height:1.3;-webkit-line-clamp:2}
  .shop-tags{min-height:0;gap:4px;flex-wrap:nowrap;overflow:hidden}
  .shop-tags span{height:20px;padding:0 7px;font-size:9px}
  .shop-meta{gap:4px}
  .shop-meta span{min-height:20px;padding:3px 6px;font-size:9px}
  .shop-meta span:nth-child(3){display:none}
  .shop-cta{height:32px;border-radius:10px;font-size:12px}
  .more-shops-card{order:-1;display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;min-height:0;padding:14px;border:0;border-radius:18px;background:linear-gradient(135deg,#111827,#253145);color:#fff;box-shadow:0 16px 34px rgba(17,24,39,.16);text-align:left}
  .more-shops-card>span{grid-row:1/4;width:42px;height:42px;border-radius:13px;background:#fff2eb;color:var(--orange);display:grid;place-items:center;font-size:26px}
  .more-shops-card strong{font-size:14px}
  .more-shops-card p{margin:0;color:#d7deeb;font-size:12px;line-height:1.35}
  .more-shops-card button{height:34px;justify-self:start;border:0;border-radius:10px;background:var(--orange);color:#fff;padding:0 14px;font-size:12px;font-weight:900}
  .benefit-strip{order:5;display:grid;grid-template-columns:1fr;gap:10px;margin:4px 0 14px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
  .benefit-strip h2{padding:0;font-size:18px}
  .benefit-strip article{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;grid-template-columns:auto 1fr;align-items:center}
  .benefit-strip article p{grid-column:2}
  .benefit-strip span{width:32px;height:32px}
  .dashboard{order:6;grid-template-columns:1fr;gap:10px}
  .dash-card{min-height:0;border-radius:18px;padding:16px}
  .dash-card strong{font-size:28px}
  .live-panel{order:3;display:none;grid-template-columns:1fr;margin:0 0 16px;padding:18px 14px 20px;border-radius:22px;gap:16px;box-shadow:0 16px 36px rgba(15,23,42,.08)}
  .live-panel.is-open{display:grid}
  .live-panel.is-wide{width:100%}
  .live-panel h2{font-size:23px;line-height:1.12}
  .panel-kicker{font-size:11px}
  .panel-close{right:10px;top:10px;width:34px;height:34px}
  .gastro-benefit-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .gastro-benefit-strip article,.gastro-decision-panel article{border-radius:18px;padding:15px}
  .gastro-decision-panel{grid-template-columns:1fr;gap:10px}
  .package-grid{display:flex;grid-template-columns:none;gap:10px;overflow-x:auto;margin:0 -14px;padding:1px 14px 12px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .shop-system-story{gap:10px}
  .shop-system-story article{border-radius:18px;padding:15px}
  .package-card{flex:0 0 84%;scroll-snap-align:start;border-radius:18px;padding:16px;box-shadow:0 10px 28px rgba(15,23,42,.06)}
  .package-card h3{font-size:34px}
  .package-card a{height:42px;border-radius:12px}
  .package-matrix{overflow:visible;border-radius:16px}
  .package-matrix>div{min-width:0;grid-template-columns:minmax(132px,1fr) repeat(3,48px)}
  .package-matrix span,.package-matrix strong,.package-matrix b,.package-matrix i{padding:9px 6px;font-size:10px;line-height:1.25}
  .package-matrix strong:not(:first-child){font-size:9px;line-height:1.15}
  .legal-overview{grid-template-columns:1fr;gap:10px}
  .legal-overview article{border-radius:18px;padding:15px;background:#fff}
  .package-note{font-size:11px}
  .account-dialog{width:calc(100vw - 20px)}
  .dialog-shell{min-height:0;border-radius:22px}
  .dialog-content{padding:24px 18px;max-height:calc(100dvh - 20px)}
}
@media(max-width:430px){
  .content{padding-inline:12px}
  .sidebar{padding-inline:12px}
  .side-nav:first-of-type{margin-inline:0;padding-inline:2px}
  .hero h1{font-size:28px}
  .section-head{display:grid;gap:5px}
  .section-head>button{justify-self:start}
  .shop-card{grid-template-columns:104px minmax(0,1fr)}
  .package-card{flex-basis:88%}
}

/* Desktop: eigener Shop als grosser rechter Einblender */
@media(min-width:981px){
  .live-panel.is-wide{
    position:fixed;
    z-index:45;
    top:16px;
    right:16px;
    bottom:16px;
    left:auto;
    width:min(1160px,calc(100vw - 284px));
    height:calc(100dvh - 32px);
    max-height:none;
    margin:0;
    padding:30px;
    overflow:auto;
    display:grid;
    grid-template-columns:1fr;
    align-content:start;
    gap:18px;
    border-radius:22px;
    box-shadow:0 34px 110px rgba(15,23,42,.28);
    transform:translateX(calc(100% + 32px));
    opacity:0;
    visibility:hidden;
  }
  .live-panel.is-wide.is-open{
    transform:none;
    opacity:1;
    visibility:visible;
  }
  .live-panel.is-wide .panel-close{
    position:absolute;
    top:18px;
    right:18px;
    width:38px;
    height:38px;
    font-size:24px;
  }
  .live-panel.is-wide .panel-kicker{font-size:12px}
  .live-panel.is-wide h2{font-size:31px;line-height:1.08}
  .live-panel.is-wide>div:first-of-type{padding-right:54px}
  .live-panel.is-wide .shop-system-story{gap:14px}
  .live-panel.is-wide .shop-system-story article{padding:18px}
  .live-panel.is-wide .gastro-benefit-strip{gap:14px}
  .live-panel.is-wide .gastro-benefit-strip article{padding:16px}
  .live-panel.is-wide .gastro-decision-panel{gap:14px}
  .live-panel.is-wide .package-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .live-panel.is-wide .package-card{padding:20px;border-radius:17px}
  .live-panel.is-wide .package-card h3{font-size:34px}
  .live-panel.is-wide .package-card a{height:42px}
  .live-panel.is-wide .legal-overview{gap:14px}
}
@media(min-width:981px) and (max-width:1240px){
  .live-panel.is-wide{
    width:min(900px,calc(100vw - 210px));
    padding:24px;
  }
  .live-panel.is-wide h2{font-size:26px}
  .live-panel.is-wide .package-grid{gap:10px}
  .live-panel.is-wide .package-card{padding:14px}
  .live-panel.is-wide .package-card h3{font-size:27px}
}

.lead-dialog{border:0;padding:0;background:transparent;width:min(480px,calc(100vw - 28px));max-width:none;border-radius:24px}
.lead-dialog::backdrop{background:rgba(8,11,16,.74);backdrop-filter:blur(8px)}
.lead-dialog-shell{position:relative;background:#fff;border-radius:24px;padding:36px;box-shadow:0 40px 120px rgba(0,0,0,.42)}
.lead-dialog-shell .dialog-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:22px;line-height:1;cursor:pointer}
.lead-dialog-shell h2{font:800 26px Manrope,sans-serif;letter-spacing:-.03em;margin:6px 0 8px}
.lead-dialog-shell>p:not(.eyebrow){color:#667085;font-size:14px;line-height:1.5;margin:0 0 22px}
.lead-dialog-shell form{display:grid;gap:2px}
.lead-success{text-align:center;padding:20px 0}
.lead-success p{color:#117a33;font-weight:800;font-size:15px;line-height:1.5}
