/* DBZ Mietrechner. Nutzt die Farben des Themes (v2), mit eigenen Ersatzwerten. */
.dbz-calc{--c-gold:var(--gold,#e8c547);--c-ink:var(--paper-ink,#0a0a0a);--c-paper:var(--paper,#f5f3ee);--c-pmute:var(--paper-mute,#4a4943);--c-bg:var(--bg,#0a0a0a);--c-card:var(--surface,#121211);--c-line:var(--line-2,rgba(245,243,238,.14));--c-line3:var(--line-3,rgba(245,243,238,.28));--c-text:var(--text,#f5f3ee);--c-muted:var(--muted,#aba79d);--c-dim:var(--dim,#8e8a80);--c-mono:var(--f-mono,ui-monospace,Menlo,monospace);--c-r:var(--r-btn,8px);--c-rc:var(--r-card,16px);
	color:var(--c-text);font-size:16px;line-height:1.5}
.dbz-calc *,.dbz-calc *::before,.dbz-calc *::after{box-sizing:border-box}
.dbz-calc button{font:inherit;cursor:pointer}
.dbz-calc__empty{color:var(--c-muted)}
.dbz-calc__lab{margin:0 0 4px;font:500 11px/1.3 var(--c-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-pmute)}

/* Zeitraum */
.dbz-calc__when{margin:0 0 20px;padding:22px 24px;border:1px solid var(--c-line);border-radius:var(--c-rc);background:var(--c-card)}
.dbz-calc__dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end}
.dbz-calc__dates label{display:flex;flex-direction:column;gap:6px;margin:0}
.dbz-calc__dates label>span{font:500 11px/1.3 var(--c-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--c-dim)}
.dbz-calc__dates input{width:100%;height:54px;padding:0 14px;border:1px solid var(--c-line);border-radius:var(--c-r);background:var(--c-bg);color:var(--c-text);font-size:17px;font-weight:600;color-scheme:dark}
.dbz-calc__dates input:focus{outline:0;border-color:var(--c-gold)}
/* Gestaltete Datumsauswahl des Themes (datepicker.js): gleicher Auftritt wie das Feld, Kalender öffnet per Klick */
.dbz-calc__dates .dbz-dp{display:block;width:100%}
.dbz-calc__dates .dbz-dp .dbz-dp__field{height:54px;font-family:var(--f-sans,inherit);padding:0 14px;border:1px solid var(--c-line);border-radius:var(--c-r);background:var(--c-bg);color:var(--c-text);font-size:17px;font-weight:600}
.dbz-calc__dates .dbz-dp .dbz-dp__field:hover{border-color:var(--c-line3)}
.dbz-calc__dates .dbz-dp .dbz-dp__field:focus-visible,.dbz-calc__dates .dbz-dp.is-open .dbz-dp__field{border-color:var(--c-gold);box-shadow:0 0 0 3px rgba(232,197,71,.18)}
.dbz-calc__dates .dbz-dp__wd{color:var(--c-gold)}
.dbz-calc__dates .dbz-dp__ico{color:var(--c-gold)}
.dbz-calc__days{display:flex;align-items:baseline;gap:8px;height:54px;padding:0 18px;border-radius:var(--c-r);background:var(--c-gold);color:var(--c-ink)}
.dbz-calc__days b{font-size:40px;font-weight:800;letter-spacing:-.05em;line-height:54px}
.dbz-calc__days span{font:500 11px/1.3 var(--c-mono);letter-spacing:.08em;text-transform:uppercase}
.dbz-calc__quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.dbz-calc__quick button{padding:8px 14px;border:1px solid var(--c-line);border-radius:var(--c-r);background:var(--c-bg);color:var(--c-text);font-size:14px;font-weight:600}
.dbz-calc__quick button:hover,.dbz-calc__quick button.is-on{border-color:var(--c-gold);color:var(--c-gold)}
.dbz-calc__tier{display:inline-flex;align-items:center;padding:8px 10px;border-radius:var(--c-r);font:500 12px/1.2 var(--c-mono);color:var(--c-dim)}
.dbz-calc__tier:first-of-type{margin-left:auto}
.dbz-calc__tier.is-on{background:rgba(232,197,71,.14);color:var(--c-gold)}
.dbz-calc__note{margin:12px 0 0;font-size:13px;color:var(--c-dim)}
.dbz-calc__note.is-warn{color:#f2a65a}

/* Produkte */
.dbz-calc__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,380px);gap:20px;align-items:start}
.dbz-calc__main{min-width:0}
.dbz-calc__cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.dbz-calc__cats button{flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--c-line);border-radius:var(--c-r);background:var(--c-card);color:var(--c-muted);font-size:14px;font-weight:600;white-space:nowrap}
.dbz-calc__cats button:hover{color:var(--c-text);border-color:var(--c-line3)}
.dbz-calc__cats [aria-selected="true"]{background:var(--c-gold);border-color:var(--c-gold);color:var(--c-ink)}
.dbz-calc__cats i{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--c-ink);color:var(--c-gold);font:600 11px/1 var(--c-mono);font-style:normal}
.dbz-calc__prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px}
.dbz-calc__p{display:flex;flex-direction:column;border:1px solid var(--c-line);border-radius:var(--c-rc);background:var(--c-card);overflow:hidden;transition:border-color .2s}
.dbz-calc__p.is-on{border-color:var(--c-gold);box-shadow:inset 0 0 0 1px var(--c-gold)}
.dbz-calc__img{aspect-ratio:16/10;background:var(--c-paper)}
.dbz-calc__img img{display:block;width:100%;height:100%;object-fit:cover}
.dbz-calc__pb{display:flex;flex-direction:column;gap:6px;flex:1;padding:16px 18px 18px}
.dbz-calc__pb h3{margin:0;font-size:18px;font-weight:700;letter-spacing:-.015em;line-height:1.25;color:var(--c-text)}
.dbz-calc__pb p{margin:0;font-size:14px;line-height:1.45;color:var(--c-dim)}
.dbz-calc__tag{align-self:flex-start;padding:3px 8px;border-radius:5px;background:rgba(242,166,90,.14);color:#f2a65a;font:500 11px/1.4 var(--c-mono);letter-spacing:.04em;text-transform:uppercase}
.dbz-calc__tag.is-out{background:rgba(232,83,71,.14);color:#ff8a7f}
.dbz-calc__tag.is-gold{background:var(--c-gold);color:var(--c-ink)}
.dbz-calc__pf{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px}
.dbz-calc__price{font-size:14px;color:var(--c-muted);line-height:1.3}
.dbz-calc__price b{font-size:20px;font-weight:800;letter-spacing:-.03em;color:var(--c-text)}
.dbz-calc__pp{white-space:nowrap}
.dbz-calc__price small{display:block;font-size:12px;color:var(--c-dim)}
.dbz-calc__add{flex:none;min-height:42px;padding:0 16px;border:1px solid var(--c-gold);border-radius:var(--c-r);background:none;color:var(--c-gold);font-size:14px;font-weight:600}
.dbz-calc__add:hover{background:var(--c-gold);color:var(--c-ink)}
.dbz-calc__add:disabled{opacity:.35;cursor:default;background:none;color:var(--c-gold)}
.dbz-calc__qty{flex:none;display:inline-flex;align-items:center;height:42px;border-radius:var(--c-r);background:var(--c-gold);color:var(--c-ink)}
.dbz-calc__qty button{width:38px;height:100%;border:0;background:none;color:inherit;font-size:20px}
.dbz-calc__qty button:disabled{opacity:.35;cursor:default}
.dbz-calc__qty output{min-width:20px;text-align:center;font:700 16px/1 var(--c-mono)}

/* Zusammenfassung */
.dbz-calc__sum{position:sticky;top:calc(var(--hdr,70px) + 16px)}
.dbz-calc__card{padding:22px 24px;border-radius:var(--c-rc);background:var(--c-paper);color:var(--c-ink)}
.dbz-calc__range{margin:0 0 14px;font-weight:700;font-size:16px}
.dbz-calc__hint{margin:0 0 16px;color:var(--c-pmute);font-size:15px}
.dbz-calc__line{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid rgba(10,10,10,.1);font-size:15px}
.dbz-calc__line span{color:var(--c-ink)}
.dbz-calc__line small{display:block;font-size:12px;color:var(--c-pmute)}
.dbz-calc__line b{white-space:nowrap}
.dbz-calc__line.is-reb b,.dbz-calc__line.is-reb span{color:#1f7a3f}
.dbz-calc__line.is-min span{color:var(--c-pmute)}
.dbz-calc__total{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-top:6px;padding:14px 0 4px;border-top:2px solid var(--c-ink)}
.dbz-calc__total span{font-weight:700}
.dbz-calc__total small{display:block;margin-top:2px;font:500 11px/1.4 var(--c-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--c-pmute)}
.dbz-calc__total b{flex:none;white-space:nowrap;font-size:clamp(30px,2.6vw,40px);font-weight:800;letter-spacing:-.05em;line-height:1}
.dbz-calc__perday{margin:0 0 12px;text-align:right;font:500 12px/1.3 var(--c-mono);color:var(--c-pmute)}
.dbz-calc__nudge{margin:0 0 12px;padding:10px 12px;border-radius:var(--c-r);background:rgba(232,197,71,.35);font-size:14px;font-weight:600}
.dbz-calc__rack{margin:0 0 12px;padding:12px;border:1px dashed rgba(10,10,10,.3);border-radius:var(--c-r);font-size:14px}
.dbz-calc__rack p{margin:0 0 8px}
.dbz-calc__rack button{padding:8px 12px;border:0;border-radius:var(--c-r);background:var(--c-ink);color:var(--c-gold);font-size:14px;font-weight:600}
.dbz-calc__cta{display:flex;align-items:center;justify-content:center;min-height:56px;margin-top:4px;border-radius:var(--c-r);background:var(--c-ink);color:var(--c-gold)!important;font-weight:700;font-size:17px;text-decoration:none!important}
.dbz-calc__cta:hover{background:#262522}
.dbz-calc__cta.is-off{opacity:.5;cursor:default}
.dbz-calc__small{margin:10px 0 0;font-size:13px;line-height:1.5;color:var(--c-pmute)}

/* Preisleiste am Handy (ersetzt dort die Buchungsleiste des Themes, solange sie sichtbar ist) */
.dbz-calc__mini{display:none}
@media (max-width:900px){
	.dbz-calc__mini.has-items.is-on{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;display:flex;gap:8px;padding:8px;border-radius:12px;background:var(--c-paper);box-shadow:0 16px 40px rgba(0,0,0,.5)}
	.dbz-calc__mini button{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:4px 10px;border:0;background:none;color:var(--c-ink);text-align:left}
	.dbz-calc__mini small{font:500 11px/1.3 var(--c-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--c-pmute)}
	.dbz-calc__mini b{font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1.1}
	.dbz-calc__mini a{display:flex;align-items:center;padding:0 20px;border-radius:var(--c-r);background:var(--c-ink);color:var(--c-gold)!important;font-weight:700;text-decoration:none!important}
	body:has(.dbz-calc__mini.has-items.is-on) .dbz-mbar{display:none!important}
}
@media (max-width:900px){
	.dbz-calc__grid{grid-template-columns:minmax(0,1fr)}
	.dbz-calc__sum{position:static}
	.dbz-calc__tier:first-of-type{margin-left:0}
}
@media (max-width:560px){
	.dbz-calc__when{padding:18px}
	.dbz-calc__dates{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
	.dbz-calc__days{grid-column:1/-1}
	.dbz-calc__cats{flex-wrap:nowrap;overflow-x:auto;margin-right:calc(var(--pad,20px) * -1);padding-bottom:4px;scrollbar-width:none}
}
/* 1.31 – kompakt ([dbz_suche], ersetzt das RentWare-Suchfeld) */
.dbz-calc--kompakt{padding:20px;border:1px solid var(--c-line);border-radius:var(--c-rc);background:var(--c-bg);text-align:left}
.dbz-calc__k-title{margin:0 0 12px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--c-gold)}
.dbz-calc--kompakt .dbz-calc__when{margin-bottom:14px}
.dbz-calc--kompakt .dbz-calc__grid{grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:16px}
.dbz-calc--kompakt .dbz-calc__prods{grid-template-columns:minmax(0,1fr);gap:8px}
.dbz-calc--kompakt .dbz-calc__p{flex-direction:row}
.dbz-calc--kompakt .dbz-calc__pb{padding:12px 14px;width:100%}
.dbz-calc--kompakt .dbz-calc__pb h3{font-size:15px;margin:0 0 4px}
.dbz-calc--kompakt .dbz-calc__sum{position:static}
.dbz-calc--kompakt .dbz-calc__card{padding:18px 20px}
@media (max-width:900px){.dbz-calc--kompakt .dbz-calc__grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.dbz-calc--kompakt{padding:14px}}
.dbz-calc--mini{background:rgba(10,10,10,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.dbz-calc--mini .dbz-calc__cats{margin:0 0 12px}
.dbz-calc__minirow{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;padding:14px 16px;border-radius:12px;background:var(--c-paper);color:var(--c-ink)}
.dbz-calc__ministate{font-weight:700}
.dbz-calc__minirow.is-out .dbz-calc__ministate{color:#b3261e}
.dbz-calc__miniprice b{font-size:18px}
.dbz-calc__minirow .dbz-calc__cta{margin:0 0 0 auto;width:auto;padding:0 22px}
@media (max-width:560px){.dbz-calc__minirow .dbz-calc__cta{margin:0;width:100%}}
.dbz-calc--mini .dbz-calc__note{display:none}
@media (max-width:560px){.dbz-calc--mini .dbz-calc__quick{display:none}.dbz-calc--mini .dbz-calc__when{margin-bottom:10px}}
@media (max-width:560px){.dbz-calc__dates .dbz-dp .dbz-dp__field{padding:0 12px;font-size:16px}}
