/* Wibsy’s Mobile Feinschliff V4 – scoped overrides */
.catalog-variant{position:relative;margin-top:26px!important}
.catalog-variant legend{display:block;max-width:100%;white-space:normal!important;line-height:1.35!important;padding:0 10px!important;margin:0 0 8px!important;font-size:clamp(15px,3.8vw,19px)!important}
.catalog-variant legend span{display:block!important;font-size:12px!important;white-space:normal!important;margin-top:3px!important}
.selection-price-summary>div:first-child{align-items:flex-start!important}
.selection-price-summary #selectionVariantLabel{min-width:0;overflow-wrap:anywhere;font-size:13px!important;line-height:1.45!important}
.design-mode label,.custom-tag-options label{min-width:0;box-sizing:border-box}
.custom-tag-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.custom-tag-options label{min-height:74px;padding:12px!important;display:flex!important;align-items:center!important;gap:10px!important}
.custom-tag-options label input{width:20px!important;height:20px!important;min-width:20px!important;flex:none!important;margin:0!important}
.custom-tag-options label span{font-size:14px;line-height:1.35;overflow-wrap:anywhere}
#sharedUpload .upload-title{margin:0 0 10px;font-weight:750}
#sharedUpload .upload-box{width:100%;min-width:0}
@media(max-width:520px){.custom-tag-options{grid-template-columns:1fr}.catalog-variant{margin-top:22px!important}.selection-price-summary>div:first-child{gap:8px}}
[hidden]{display:none!important}

/* V5: custom designs via direct contact only */
.custom-contact-note{margin:20px 0 24px;padding:18px 20px;background:#fff7f1;border:1px solid #ead8cc;border-radius:20px;color:#27364d}
.custom-contact-note strong{display:block;font-size:clamp(16px,3.8vw,19px);line-height:1.4}
.custom-contact-note p{margin:7px 0 12px;color:#68758a;font-size:14px;line-height:1.65}
.custom-contact-note a{color:#c86d59;font-weight:750;text-decoration:underline;text-underline-offset:3px}

/* V7: mobile alignment fixes */
.catalog-variant-heading{margin:24px 0 10px!important;padding:0!important;font-size:clamp(18px,4.5vw,24px);line-height:1.3;color:#27364d;font-weight:800}
.catalog-variant{margin-top:0!important;min-width:0!important}
.catalog-variant-caption{margin:0 0 16px!important;color:#9c6e60;font-size:14px;font-weight:700;line-height:1.4}
.tag-customization label .required-mark{display:inline!important;position:static!important;margin-left:3px!important;white-space:nowrap!important;vertical-align:baseline!important}
#desiredDate{display:block!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;-webkit-appearance:none;appearance:none}
#desiredDate::-webkit-date-and-time-value{text-align:left}
#desiredDate::-webkit-datetime-edit{min-width:0}
@media(max-width:520px){.catalog-variant{margin-top:0!important}.catalog-variant-heading{margin-top:22px!important}}

/* V8: Pflichtstern direkt an QR-Code-Beschriftung */
.tag-customization label .qr-label-heading{display:block!important;font-weight:inherit!important;line-height:1.4!important}
.tag-customization label .qr-label-heading b{display:inline!important;color:#e88c7c!important;font-weight:800!important;margin-left:2px!important}

/* V9: Nur der Pflichtstern ist korallfarben; die Beschriftung bleibt dunkelblau. */
.tag-customization label .qr-label-heading{color:#24344c!important;}
.tag-customization label .qr-label-heading b{color:#e88c7c!important;}
