:root{--text:#2a2230;--muted:#6f6874;--bg:#fff8f1;--surface:#fff;--purple:#6b3fa0;--deep:#542b82;--lilac:#e9d9f6;--lavender:#f3ecfa;--border:#e6e1e8;font-family:"Poppins",Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg);line-height:1.5}
*{box-sizing:border-box}html,body{max-width:100%}body{margin:0;overflow-wrap:anywhere}header{background:var(--purple);color:#fff;padding:1rem max(12px,calc((100% - 1200px)/2));display:flex;justify-content:space-between;gap:1rem}.brand,h1,h2{font-family:"Playfair Display",Georgia,"Times New Roman",serif}.brand{font-size:1.6rem;letter-spacing:.04em}.brand::first-letter{color:#ffc83d}main{max-width:1200px;min-width:0;margin:auto;padding:16px}.step,.lookup{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:clamp(1rem,3vw,2rem);margin:1rem 0;box-shadow:0 4px 14px rgba(42,34,48,.08)}.step[hidden],[hidden]{display:none!important}.eyebrow{color:var(--purple);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;margin:0}.progress{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.75rem;align-items:center}.progress progress{width:100%;height:.75rem;accent-color:var(--purple)}h1,h2{line-height:1.2}h1{font-size:clamp(1.75rem,5vw,2.25rem)}label{display:block;margin:.75rem 0;font-weight:650}input,select,button{font:inherit;min-width:0;max-width:100%;min-height:48px;padding:.7rem;border:1px solid var(--muted);border-radius:10px;width:100%}button{background:var(--purple);color:#fff;font-weight:750;border:0;cursor:pointer}button:hover{background:var(--deep)}button:disabled{background:#eeeaf0;color:#a8a2ac;cursor:not-allowed}.secondary{background:#fff;color:var(--purple);border:1px solid var(--purple)}.link-button{background:transparent;color:var(--purple);text-decoration:underline;margin-top:.5rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:1rem}.card{position:relative;border:2px solid var(--border);padding:.75rem;border-radius:14px;text-align:center;background:#fff;color:inherit;text-decoration:none;overflow:hidden}.card:hover{border-color:var(--purple)}.card:has(input:checked),.card.selected{border-color:var(--purple);box-shadow:0 0 0 2px var(--purple)}.choice-card input{position:absolute;opacity:0;pointer-events:none}.tile-image,.summary-image,#photo-preview{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin:0 auto .75rem;border-radius:9px}.summary-image{max-width:320px}.image-placeholder{display:grid;place-items:center;aspect-ratio:4/3;background:var(--lavender);border-radius:9px;font-size:3rem}.card b,.card span,.card small{display:block}.surcharge{font-weight:800;color:var(--purple);margin-top:.35rem}.component-area{border:0;padding:0;margin:1.5rem 0}.component-area legend{font-size:1.15rem;font-weight:800;margin-bottom:.75rem}.tier-card span{margin-top:.4rem}.actions{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.5rem}.grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.notice{padding:.8rem;background:var(--lavender);border-radius:10px}details{border:1px solid var(--border);border-radius:10px;padding:.8rem;margin:1rem 0}details summary{font-weight:800;cursor:pointer}.acceptance{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start}.acceptance input{width:24px;min-height:24px;margin:0}.summary-line{margin:.45rem 0}.price-total{font-size:1.5rem}.error{color:#c62828}.lookup{margin-top:2rem}.customer-paths{display:flex;justify-content:flex-end;margin:.5rem 0}.compact-link{display:inline-block;padding:.65rem .9rem;border:1px solid var(--purple);border-radius:10px;color:var(--purple);font-weight:750}.summary-groups{display:grid;gap:1rem}.summary-group{border:1px solid var(--border);border-radius:12px;padding:1rem;margin:1rem 0}.summary-group h3{margin-top:0}#photo-preview{max-width:320px}:focus-visible{outline:3px solid var(--deep);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(max-width:767px){header{display:block}.grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr;gap:.65rem}.card{padding:.55rem}.actions{position:sticky;bottom:max(.5rem,env(safe-area-inset-bottom));background:#fff;padding:.5rem 0;z-index:2}}@media(max-width:374px){main{padding:12px}.cards,.actions{grid-template-columns:1fr}}@media(min-width:768px){main{padding:24px}}@media(min-width:1024px){main{padding:32px}.step{max-width:920px;margin:1rem auto}}
/* Das bestätigte Logo wird als Originalbild verwendet, nicht typografisch nachgebaut. */
.ingredient-drawer{position:sticky;bottom:.5rem;z-index:3;background:#fff;box-shadow:0 6px 24px rgba(42,34,48,.14)}
.ingredient-dropdown>summary{color:var(--purple)}
.personalization-subsection{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1rem}
.app-version{font-size:.8rem;color:var(--muted);text-align:center;padding:1rem}
.brand img{display:block;width:auto;height:52px;object-fit:contain}
/* V3.8: durchsuchbare Geschäftsauswahl und eindeutiger Bestellabschluss */
.shop-suggestions { display:grid; gap:.35rem; margin:.35rem 0 1rem; padding:.5rem; border:1px solid #d7cde7; border-radius:12px; background:#fff; box-shadow:0 8px 24px rgba(61,35,90,.12); }
.shop-suggestions button { width:100%; text-align:left; background:#f7f2fb; color:#342440; border:1px solid transparent; }
.shop-suggestions button:hover,.shop-suggestions button:focus-visible { border-color:#7b3fa0; background:#efe3f7; }
.submit-guidance { margin:.75rem 0 0; padding:.8rem 1rem; border-left:4px solid #7b3fa0; background:#f7f2fb; font-weight:700; }
 .maintenance-customer{display:grid;place-items:center;align-content:center;min-height:100vh;max-width:42rem;margin:auto;padding:2rem;text-align:center}.maintenance-customer img{max-width:220px;height:auto}.maintenance-customer h1{color:#542b82}
