/* ============================================================
   Logotex DTF Shop — „Werkbank“
   Folienweiß-Fläche, Tiefschwarz, Logotex-Rot als Schnittkante.
   Maße & Preise immer in Mono — wie auf dem Messschieber.
   ============================================================ */
:root{
  --paper:#F5F4F1;
  --panel:#FFFFFF;
  --ink:#17181C;
  --ink-soft:#4A4C52;
  --steel:#9A9DA3;
  --line:#E3E1DC;
  --red:#C51A1B;
  --red-dark:#9B1213;
  --warn-bg:#FFF6E0;
  --warn-ink:#8A5A00;
  --ok-bg:#EAF6EC;
  --ok-ink:#1D6B33;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --sans:'Inter',system-ui,sans-serif;
  --disp:'Archivo',var(--sans);
  --radius:6px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55}
a{color:inherit}
h1,h2,h3{font-family:var(--disp);font-weight:800;letter-spacing:-.01em;line-height:1.15;margin:0 0 .5em}
h1{font-size:1.9rem}
h2{font-size:1.25rem}
.mono{font-family:var(--mono)}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}

/* ---------- Kopfzeile ---------- */
:root{--topbar-h:104px}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  height:var(--topbar-h);padding:0 1.6rem;background:var(--ink);color:#fff;
  position:sticky;top:0;z-index:50}
.brand{text-decoration:none;display:flex;align-items:baseline;gap:.7rem}
.brand-mark{font-family:var(--disp);font-weight:800;letter-spacing:.14em;font-size:1.05rem}
.brand-sub{font-family:var(--mono);font-size:.72rem;color:var(--steel)}
.topbar nav{display:flex;gap:1.1rem;flex-wrap:wrap}
.topbar nav a{color:#fff;text-decoration:none;font-size:.9rem;opacity:.85}
.topbar nav a:hover{opacity:1}
.badge{background:var(--red);border-radius:999px;padding:.05rem .45rem;font-family:var(--mono);font-size:.75rem}

main{max-width:1240px;margin:0 auto;padding:1.6rem 1.4rem 4rem}
.footer{border-top:1px solid var(--line);padding:1.2rem 1.4rem;display:flex;justify-content:space-between;
  gap:1rem;flex-wrap:wrap;font-size:.82rem;color:var(--ink-soft)}
.footer nav{display:flex;gap:1rem}
.footer a{color:var(--ink-soft)}

.flashes{max-width:1240px;margin:1rem auto 0;padding:0 1.4rem}
.flash{padding:.6rem .9rem;border-radius:var(--radius);margin-bottom:.5rem;font-size:.9rem}
.flash-ok{background:var(--ok-bg);color:var(--ok-ink)}
.flash-error{background:#FDEBEC;color:var(--red-dark)}

/* ---------- Konfigurator-Layout ---------- */
.config-grid{display:grid;grid-template-columns:400px 1fr;gap:1.4rem;align-items:start}
@media(max-width:980px){.config-grid{grid-template-columns:1fr}}
.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem}
.panel + .panel{margin-top:1rem}
.panel h2{display:flex;align-items:center;gap:.5rem}
.hint{font-size:.82rem;color:var(--ink-soft)}

/* Upload-Zone */
.dropzone{border:2px dashed var(--steel);border-radius:var(--radius);padding:1.6rem 1rem;text-align:center;
  color:var(--ink-soft);transition:border-color .15s,background .15s;cursor:pointer}
.dropzone.drag{border-color:var(--red);background:#FFF7F7}
.dropzone input{display:none}
.dropzone .formats{font-family:var(--mono);font-size:.75rem;margin-top:.4rem;color:var(--steel)}

/* Logo-Liste */
.logo-card{display:grid;grid-template-columns:64px 1fr auto;gap:.8rem;align-items:start;
  border:1px solid var(--line);border-radius:var(--radius);padding:.7rem;margin-top:.7rem;background:#fff}
.logo-thumb{width:64px;height:64px;object-fit:contain;background:
  repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/14px 14px;border-radius:4px;border:1px solid var(--line)}
.logo-name{font-size:.85rem;font-weight:600;word-break:break-all}
.logo-kind{font-family:var(--mono);font-size:.7rem;color:var(--steel);text-transform:uppercase}
.dims{display:flex;gap:.5rem;margin-top:.4rem;flex-wrap:wrap;align-items:center}
.dim{display:flex;flex-direction:column;gap:.15rem}
.dim label{font-family:var(--mono);font-size:.68rem;color:var(--ink-soft)}
.dim input{width:5.2rem;padding:.35rem .4rem;border:1px solid var(--line);border-radius:4px;
  font-family:var(--mono);font-size:.9rem}
.dim input:focus{border-color:var(--ink)}
.lock{align-self:flex-end;background:none;border:none;color:var(--steel);font-size:.9rem;padding:.35rem .2rem}
.logo-remove{background:none;border:none;color:var(--steel);font-size:1.1rem;line-height:1}
.logo-remove:hover{color:var(--red)}
.logo-warn{grid-column:1/-1;background:var(--warn-bg);color:var(--warn-ink);
  border-radius:4px;padding:.45rem .6rem;font-size:.8rem}

/* Leuchttisch (Signature) */
.lighttable{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);
  padding:1.1rem 1.2rem;position:sticky;top:74px}
.lt-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
.lt-stats{display:flex;gap:1.4rem;font-family:var(--mono);font-size:.85rem;flex-wrap:wrap}
.lt-stats b{font-size:1.05rem}
.lt-stats .cut b{color:var(--red)}
.canvas-wrap{margin-top:.8rem;overflow:auto;max-height:70vh;border:1px solid var(--line);
  border-radius:4px;background:#EDECE8}
canvas{display:block}
.empty-canvas{padding:3.5rem 1rem;text-align:center;color:var(--steel)}

/* Preis & Aktionen */
.price-box{margin-top:1rem;border-top:2px solid var(--ink);padding-top:.8rem}
.price-row{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.9rem;padding:.15rem 0}
.price-row.total{font-size:1.15rem;font-weight:600;border-top:1px solid var(--line);margin-top:.4rem;padding-top:.5rem}
.tier-tag{background:var(--ink);color:#fff;font-family:var(--mono);font-size:.72rem;
  padding:.1rem .5rem;border-radius:3px}
.qty-line{display:flex;align-items:center;gap:.6rem;margin-top:.8rem}
.qty-line input{width:5rem;padding:.45rem;border:1px solid var(--line);border-radius:4px;
  font-family:var(--mono);font-size:1rem}
.btn{display:inline-block;border:none;border-radius:var(--radius);padding:.65rem 1.2rem;
  font-weight:600;font-size:.95rem;text-decoration:none;text-align:center}
.btn-primary{background:var(--red);color:#fff}
.btn-primary:hover{background:var(--red-dark)}
.btn-ghost{background:none;border:1px solid var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn-block{width:100%;margin-top:.8rem}
.error-box{background:#FDEBEC;color:var(--red-dark);border-radius:4px;padding:.6rem .8rem;
  font-size:.86rem;margin-top:.7rem}

/* ---------- Formulare / Tabellen ---------- */
.form-narrow{max-width:460px;margin:0 auto}
.field{margin-bottom:.9rem}
.field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.25rem}
.field input,.field select{width:100%;padding:.55rem .6rem;border:1px solid var(--line);
  border-radius:4px;font:inherit}
.field input:focus{border-color:var(--ink)}
table.data{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);overflow:hidden}
table.data th{font-family:var(--mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;
  text-align:left;color:var(--ink-soft);padding:.6rem .8rem;border-bottom:2px solid var(--ink)}
table.data td{padding:.6rem .8rem;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:middle}
table.data .num{font-family:var(--mono);text-align:right;white-space:nowrap}
.status{font-family:var(--mono);font-size:.72rem;padding:.15rem .5rem;border-radius:3px;background:var(--line)}
.status-bezahlt,.status-versendet{background:var(--ok-bg);color:var(--ok-ink)}
.status-offen{background:var(--warn-bg);color:var(--warn-ink)}
.status-storniert{background:#FDEBEC;color:var(--red-dark)}

.pay-option{display:flex;gap:.7rem;align-items:flex-start;border:1px solid var(--line);
  border-radius:var(--radius);padding:.8rem .9rem;margin-bottom:.6rem;background:#fff;cursor:pointer}
.pay-option:has(input:checked){border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
.pay-option small{display:block;color:var(--ink-soft)}

.legal{max-width:760px}
.legal h1{margin-top:0}
.notice{background:var(--warn-bg);color:var(--warn-ink);border-radius:var(--radius);
  padding:.8rem 1rem;font-size:.88rem;margin-bottom:1.2rem}

@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}

/* Drehen & Auto-Rotation */
.rotate-btn{align-self:flex-end;background:none;border:1px solid var(--line);border-radius:4px;
  padding:.3rem .55rem;font-family:var(--mono);font-size:.78rem;color:var(--ink)}
.rotate-btn:hover{border-color:var(--ink)}
.auto-rot{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--ink-soft);margin-top:.4rem}
.logo-thumb{transition:transform .15s}

/* Weißer-Kasten-Hinweis */
.logo-whitebox{grid-column:1/-1;background:#EEF3FB;color:#1D3F6E;border-radius:4px;
  padding:.5rem .6rem;font-size:.8rem;line-height:1.45}
.wb-actions{display:inline-flex;gap:.4rem;margin-left:.3rem}
.btn-mini{border:none;background:var(--ink);color:#fff;border-radius:3px;
  padding:.2rem .6rem;font-size:.75rem;font-weight:600}
.btn-mini.ghost{background:none;border:1px solid var(--steel);color:var(--ink)}

.brand-logo{height:58px;width:auto;display:block}
@media(max-width:640px){.brand-sub{display:none}}

/* ---------- Kategorieleiste ---------- */
.subnav{background:var(--red);display:flex;gap:.2rem;flex-wrap:wrap;align-items:center;
  padding:.45rem 1.6rem;position:sticky;top:var(--topbar-h);z-index:40}
.subnav a,.subnav-soon{color:#fff;text-decoration:none;font-size:.82rem;font-weight:600;
  letter-spacing:.03em;text-transform:uppercase;padding:.3rem .7rem;border-radius:4px}
.subnav-hot{background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.28);
  border-radius:6px;transition:background .15s,color .15s,transform .12s,box-shadow .15s}
.subnav a:hover{background:#fff;color:var(--red);transform:translateY(-2px);
  box-shadow:0 4px 10px rgba(0,0,0,.25)}
.subnav-active{background:#fff !important;color:var(--red) !important;
  border-color:#fff;box-shadow:inset 0 -3px 0 var(--red)}
.subnav-soon{opacity:.55;cursor:default}

/* ---------- Startseite ---------- */
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:2.2rem;align-items:center;
  padding:1.6rem 0 2rem}
@media(max-width:900px){.hero{grid-template-columns:1fr}}
.hero-visual svg{width:100%;height:auto;display:block;border-radius:10px;
  box-shadow:0 12px 34px rgba(23,24,28,.16)}
.eyebrow{font-family:var(--mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);display:block;margin-bottom:.5rem}
.hero-copy h1{font-size:2.3rem;margin-bottom:.6rem}
.hero-copy p{max-width:52ch}
.hero-actions{display:flex;gap:.7rem;margin-top:1.1rem;flex-wrap:wrap}

.usps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:1rem 0 2.4rem}
@media(max-width:820px){.usps{grid-template-columns:repeat(2,1fr)}}
.usp{background:var(--panel);padding:1rem 1.1rem;font-size:.82rem;color:var(--ink-soft);line-height:1.45}
.usp-num{display:block;font-family:var(--mono);font-weight:600;font-size:1.15rem;
  color:var(--ink);margin-bottom:.25rem}

.section-title{font-size:1.5rem;margin:0 0 1rem}
.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.1rem}
.product-card{background:var(--panel);border:2px solid var(--red);border-radius:var(--radius);
  padding:1rem;display:flex;flex-direction:column;gap:.5rem;transition:box-shadow .16s,transform .16s}
.product-card:hover{box-shadow:0 14px 30px rgba(197,26,27,.18);transform:translateY(-5px)}
.product-card h3{font-family:var(--disp);font-weight:800;font-size:1.02rem;margin:0}
.product-card p{font-size:.85rem;color:var(--ink-soft);margin:0;flex:1}
.pc-visual{background:repeating-conic-gradient(#f0efec 0 25%,#fff 0 50%) 0 0/16px 16px;
  border:1px solid var(--line);border-radius:4px;min-height:130px;display:flex;
  align-items:center;justify-content:center}
.pc-visual svg{width:100%;height:auto;display:block}
.pc-foot{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.3rem}
.pc-price{font-family:var(--mono);font-weight:600}
.pc-price small{color:var(--ink-soft);font-weight:400}
.product-card.soon{opacity:.75;border-color:var(--red)}
.soon-tag{font-family:var(--mono);font-size:.72rem;background:var(--ink);color:#fff;
  padding:.25rem .7rem;border-radius:999px}

.staffel-band{margin-top:2.6rem}
.staffel-row{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
@media(max-width:720px){.staffel-row{grid-template-columns:repeat(2,1fr)}}
.staffel-cell{background:var(--panel);padding:.9rem;text-align:center}
.staffel-label{display:block;font-family:var(--mono);font-size:.72rem;color:var(--ink-soft);
  text-transform:uppercase;letter-spacing:.06em}
.staffel-price{font-family:var(--mono);font-weight:600;font-size:1.05rem}

/* DTF-Transfer Formatseite */
.fmt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.1rem;margin-top:1rem}
.fmt-head{display:flex;justify-content:space-between;align-items:baseline}
.fmt-size{color:var(--ink-soft);font-size:.85rem}
.fmt-ratio{position:relative;width:100%;background:repeating-conic-gradient(#f0efec 0 25%,#fff 0 50%) 0 0/14px 14px;
  border:1px solid var(--line);border-radius:4px;height:0;padding-bottom:min(var(--ratio),45%);
  margin:.5rem 0;display:flex}
.fmt-ratio span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:.85rem;color:var(--steel)}
table.fmt-prices{width:100%;border-collapse:collapse;margin:.4rem 0}
table.fmt-prices th{font-family:var(--mono);font-size:.68rem;color:var(--ink-soft);
  border-bottom:1px solid var(--ink);padding:.25rem .2rem;text-align:right}
table.fmt-prices td{font-size:.82rem;text-align:right;padding:.3rem .2rem;border-bottom:1px solid var(--line)}
.fmt-templates{font-size:.82rem;display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin:.5rem 0}
.tpl-btn{font-family:var(--mono);font-size:.75rem;border:1px solid var(--line);border-radius:4px;
  padding:.2rem .55rem;text-decoration:none}
.tpl-btn:hover{border-color:var(--ink)}
.dz-small{padding:.9rem .8rem;margin-top:.3rem;display:block}
.fmt-preview{width:100%;max-height:130px;object-fit:contain;margin-top:.6rem;border:1px solid var(--line);
  border-radius:4px;background:repeating-conic-gradient(#f0efec 0 25%,#fff 0 50%) 0 0/14px 14px}
.fmt-ok{color:var(--ok-ink);font-size:.85rem;margin:.4rem 0}

/* Info-Chips (Designer) */
.info-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:0 0 1.2rem}
@media(max-width:820px){.info-chips{grid-template-columns:1fr}}
.chip{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--red);
  border-radius:var(--radius);padding:.7rem .85rem;font-size:.82rem;color:var(--ink-soft);line-height:1.45}
.chip strong{display:block;color:var(--ink);margin-bottom:.15rem}

/* Header-Icons */
.topnav{display:flex;align-items:center;gap:1.2rem}
.topnav a{color:#fff;text-decoration:none;font-size:.92rem;opacity:.85}
.topnav a:hover{opacity:1}
.icon-link{position:relative;display:flex;align-items:center}
.icon-link svg{width:26px;height:26px}
.cart-badge{position:absolute;top:-7px;right:-10px}
@media(max-width:640px){:root{--topbar-h:78px}.brand-logo{height:42px}.topnav{gap:.8rem}}

/* WA-Transfer */
.wa-colors{display:flex;align-items:center;gap:.5rem;margin-top:.3rem}
.swatches{display:inline-flex;gap:.3rem}
.swatch{width:20px;height:20px;border-radius:4px;border:1px solid rgba(0,0,0,.15);display:inline-block}
.wa-colorsel{padding:.35rem .4rem;border:1px solid var(--line);border-radius:4px;font:inherit}
table.fmt-prices td:first-child{color:var(--ink-soft);font-size:.72rem}

/* DTF-Übersicht: gleich große Banner mit roter Outline + Hover-Hervorhebung */
.banner-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.2rem;margin-top:1.2rem}
.banner-card{display:flex;flex-direction:column;background:var(--panel);
  border:2px solid var(--red);border-radius:var(--radius);overflow:hidden;
  text-decoration:none;color:var(--ink);min-height:340px;
  transition:transform .16s,box-shadow .16s}
.banner-card:hover,.banner-card:focus-visible{transform:translateY(-5px);
  box-shadow:0 14px 30px rgba(197,26,27,.18);outline:none}
.banner-card:active{transform:translateY(-2px)}
.banner-visual{background:repeating-conic-gradient(#f0efec 0 25%,#fff 0 50%) 0 0/16px 16px;
  border-bottom:2px solid var(--red);padding:.8rem}
.banner-visual svg{width:100%;height:auto;display:block}
.banner-body{padding:1rem 1.2rem 1.2rem;display:flex;flex-direction:column;flex:1}
.banner-body h2{margin:0 0 .35rem;font-size:1.2rem}
.banner-body p{margin:0;font-size:.9rem;color:var(--ink-soft);flex:1}
.banner-cta{margin-top:.9rem;font-weight:600;color:var(--red)}
.banner-card:hover .banner-cta span{margin-left:.3rem;transition:margin .16s}

/* WA-Größenfindung */
.wa-size-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.1rem;margin-top:1.2rem}
.wa-size-card{min-height:300px}
.wa-size-visual{display:flex;align-items:flex-end;gap:6%;height:170px;padding:1rem}
.wa-size-box{position:relative;background:#fff;border:2px solid var(--ink);border-radius:3px;height:0}
.wa-size-box:first-child{border-color:var(--red)}
.wa-size-box span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--mono);font-size:.62rem;color:var(--ink-soft);text-align:center;padding:2px}
table.wa-pricetable td:first-child{white-space:nowrap;color:var(--ink-soft);font-size:.82rem}

/* DTF-Größenfindung: Bogenstreifen maßstäblich */
.dtf-strip-visual{display:flex;align-items:flex-end;height:170px;padding:1rem}
.dtf-strip{width:100%;background:#fff;border:2px solid var(--red);border-radius:3px;
  display:flex;align-items:center;justify-content:center;min-height:18px}
.dtf-strip span{font-family:var(--mono);font-size:.68rem;color:var(--ink-soft)}

/* SEO-/Infoblock mit Aufklapp-Reitern */
.seo-block{margin-top:2.4rem;max-width:900px}
.seo-block h2{font-size:1.3rem}
.seo-usps{margin:.6rem 0 1.2rem;padding-left:1.2rem;color:var(--ink-soft)}
.seo-usps li{margin:.25rem 0}
.seo-fold{border:1px solid var(--line);border-radius:var(--radius);margin:.5rem 0;
  background:var(--panel);overflow:hidden}
.seo-fold summary{cursor:pointer;padding:.7rem 1rem;font-weight:600;list-style:none;
  display:flex;justify-content:space-between;align-items:center}
.seo-fold summary::-webkit-details-marker{display:none}
.seo-fold summary::after{content:"+";color:var(--red);font-weight:700;font-size:1.1rem}
.seo-fold[open] summary::after{content:"–"}
.seo-fold[open] summary{border-bottom:1px solid var(--line)}
.seo-fold p{padding:0 1rem;margin:.7rem 0;font-size:.92rem;color:var(--ink-soft);line-height:1.55}
.seo-fold p:last-child{padding-bottom:.9rem}

/* Digital-Transfer */
.digital-visual{display:flex;align-items:center;justify-content:center;gap:.8rem;height:120px}
.digital-icon{font-size:2.6rem}
.digital-code{font-size:1.5rem;font-weight:700;color:var(--red);letter-spacing:.05em}
.dg-mode,.dg-nutzen,.dg-format{padding:.4rem;border:1px solid var(--line);border-radius:4px;font:inherit;width:100%}
.price-tab table{font-size:.78rem}

.btn-danger{border-color:var(--red);color:var(--red)}
.btn-danger:hover{background:var(--red);color:#fff}
.status-storniert{background:#efe9e6;color:#8a4b3b;text-decoration:line-through}

/* Farbangabe je erkannter Farbe */
.colormode{padding:.4rem;border:1px solid var(--line);border-radius:4px;font:inherit;width:100%}
.colorlist{margin-top:.4rem;display:flex;flex-direction:column;gap:.35rem}
.color-row{display:flex;align-items:center;gap:.5rem}
.color-row .swatch{flex:0 0 22px;height:22px}
.color-input{flex:1;padding:.35rem .5rem;border:1px solid var(--line);border-radius:4px;font:inherit}

/* Logo-Check & Preisvergleich */
.qc-section{margin-top:2.6rem}
.qc-panel{max-width:860px}
.qc-verdict{border-radius:var(--radius);padding:.8rem 1rem;margin:.8rem 0;font-size:.92rem;line-height:1.5}
.qc-ok{background:#eaf5ec;border:1px solid #bfe0c6;color:#1d5c2a}
.qc-warn{background:#fdf3e7;border:1px solid #f0d9b6;color:#8a5b1d}
.qc-info{background:#eef2f7;border:1px solid #ccd8e4;color:#2c4a66}
.qc-configure{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.qc-configure img{max-width:140px;max-height:110px;border:1px solid var(--line);border-radius:6px;
  background:repeating-conic-gradient(#f0efec 0 25%,#fff 0 50%) 0 0/14px 14px;padding:6px}
.qc-configure .dims{flex:1;min-width:280px}
.qc-option{display:flex;justify-content:space-between;gap:1rem;align-items:center;
  border:2px solid var(--line);border-radius:var(--radius);padding:.8rem 1rem;margin:.5rem 0;
  text-decoration:none;color:var(--ink);transition:transform .14s,box-shadow .14s,border-color .14s}
.qc-option:hover{border-color:var(--red);transform:translateY(-3px);
  box-shadow:0 10px 22px rgba(197,26,27,.14)}
.qc-best{border-color:var(--red)}
.qc-badge{background:var(--red);color:#fff;font-size:.68rem;padding:.15rem .5rem;border-radius:999px;
  vertical-align:2px;margin-left:.4rem}
.qc-opt-price{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem;white-space:nowrap}
.qc-opt-price strong{font-size:1.05rem}
.qc-cta{color:var(--red);font-size:.8rem;font-weight:600}
.qc-unavail{margin-top:.6rem}
@media(max-width:640px){.qc-option{flex-direction:column;align-items:stretch}
  .qc-opt-price{flex-direction:row;justify-content:space-between;align-items:center}}

/* Drag-Hover einheitlich fuer alle Upload-Zonen */
.dropzone.drag{border-color:var(--red);background:rgba(197,26,27,.05)}

/* Preisliste in voller Breite unter der Konfiguration — nie mehr abgeschnitten */
.pricelist-full{margin-top:1.4rem;background:#fff;border:2px solid rgba(197,26,27,.28);
  border-radius:var(--radius);padding:1.1rem 1.2rem;overflow-x:auto}
.pricelist-full h2{margin-top:0}
.pricelist-full table{width:100%;min-width:640px}

/* Admin-Bereich: Seitenleiste links mit Reitern */
.admin-wrap{display:grid;grid-template-columns:210px 1fr;gap:1.6rem;align-items:start}
.admin-side{position:sticky;top:120px;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:.7rem;display:flex;flex-direction:column;gap:.3rem}
.admin-side-title{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
  color:var(--soft);padding:.2rem .6rem .5rem}
.admin-tab{display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border-radius:8px;
  color:var(--ink);text-decoration:none;font-weight:600;font-size:.9rem;
  border-left:3px solid transparent;transition:background .14s,border-color .14s,transform .12s}
.admin-tab:hover{background:#f6f2f0;transform:translateX(2px)}
.admin-tab.active{background:#fdf0f0;color:var(--red);border-left-color:var(--red)}
.admin-ico{font-size:1rem}
.admin-side-foot{margin-top:.6rem;padding:.5rem .6rem 0;border-top:1px solid var(--line);font-size:.8rem}
.admin-main{min-width:0}
.admin-main h1{margin-top:0}
@media(max-width:860px){.admin-wrap{grid-template-columns:1fr}
  .admin-side{position:static;flex-direction:row;flex-wrap:wrap}
  .admin-side-title,.admin-side-foot{display:none}}
