/*
 * RopeBunny Configurator 0.7.3
 *
 * Zentrale, bewusst sprechende Klassen:
 * .rb-configurator                 kompletter Rahmen
 * .rb-intro                        Einleitung
 * .rb-service-note                 Maßband-Servicehinweis
 * .rb-flow                         Felderbereich
 * .rb-question                     einzelner Abschnitt
 * .rb-question--measurement        Maßabschnitt
 * .rb-question--neck               Halsumfang
 * .rb-question--material           Material
 * .rb-question--color              Farbe
 * .rb-question--inscription        Beschriftung
 * .rb-question--wishes             Freitext
 * .rb-input-unit                   kompaktes Maßfeld inklusive Einheit
 * .rb-options / .rb-option         Materialauswahl
 * .rb-swatches / .rb-swatch        Farbauswahl
 */
.rb-configurator{
  --rb-ink:#1d1d1d;
  --rb-muted:#6f6f6f;
  --rb-border:#2b2b2b;
  --rb-line:#e2e2e2;
  --rb-field:#a8a8a8;
  --rb-soft:#f5f5f4;
  --rb-accent:#36506b;
  --rb-radius:12px;
  --rb-padding:24px;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--rb-ink)!important;
  margin:22px 0 16px!important;
  padding:var(--rb-padding)!important;
  border:2px solid var(--rb-border)!important;
  border-radius:var(--rb-radius)!important;
  background:#fff!important;
  line-height:1.45!important;
}
.rb-configurator,.rb-configurator *{box-sizing:border-box!important}
.rb-configurator svg{display:none!important}
.rb-intro{margin:0!important;padding:0 0 20px!important;border-bottom:1px solid var(--rb-line)!important}
.rb-intro>strong{display:block!important;margin:0 0 5px!important;font-size:1.05rem!important;line-height:1.3!important;font-weight:700!important}
.rb-intro>p{margin:0!important;color:#454545!important;font-size:.95rem!important}
.rb-service-note{margin-top:13px!important;padding:0!important}
.rb-service-note strong,.rb-service-note span{display:block!important}
.rb-service-note strong{margin-bottom:3px!important;font-weight:700!important}
.rb-flow{display:block!important}
.rb-question{margin:0!important;padding:20px 0!important;border:0!important;border-bottom:1px solid var(--rb-line)!important}
.rb-question--last{padding-bottom:0!important;border-bottom:0!important}
.rb-question__label{display:block!important;margin:0 0 9px!important;padding:0!important;color:var(--rb-ink)!important;font-size:1rem!important;font-weight:500!important;line-height:1.35!important}
.rb-configurator input[type=text],.rb-configurator textarea{display:block!important;height:auto!important;margin:0!important;border:1.5px solid var(--rb-field)!important;border-radius:var(--rb-radius)!important;padding:11px 13px!important;background:#fff!important;color:var(--rb-ink)!important;font:inherit!important;line-height:1.4!important;box-shadow:none!important;appearance:none!important}
.rb-configurator input[type=text]{width:100%!important}
.rb-configurator textarea{width:100%!important;min-height:92px!important;resize:vertical!important}
.rb-configurator input:focus,.rb-configurator textarea:focus{outline:3px solid rgba(54,80,107,.13)!important;border-color:var(--rb-accent)!important}
.rb-input-unit{display:inline-flex!important;width:auto!important;max-width:100%!important;align-items:stretch!important;border:1.5px solid var(--rb-field)!important;border-radius:var(--rb-radius)!important;background:#fff!important;overflow:hidden!important;transition:border-color .15s ease,box-shadow .15s ease!important}
.rb-input-unit:focus-within{border-color:var(--rb-accent)!important;box-shadow:0 0 0 3px rgba(54,80,107,.13)!important}
.rb-input-unit .rb-measurement-input{width:76px!important;min-width:76px!important;max-width:76px!important;height:44px!important;margin:0!important;padding:9px 8px 9px 12px!important;border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;text-align:right!important;font-variant-numeric:tabular-nums!important}
.rb-input-unit .rb-measurement-input:focus{outline:0!important;border:0!important;box-shadow:none!important}
.rb-input-unit__suffix{display:flex!important;align-items:center!important;justify-content:center!important;min-width:43px!important;height:44px!important;margin:0!important;padding:0 11px!important;border-left:1px solid var(--rb-line)!important;background:var(--rb-soft)!important;color:var(--rb-ink)!important;font-size:.9rem!important;font-weight:600!important;user-select:none!important}
.rb-options,.rb-swatches{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0!important;padding:0!important}
.rb-option,.rb-swatch{position:relative!important;display:inline-flex!important;align-items:center!important;margin:0!important;padding:0!important;cursor:pointer!important}
.rb-option input,.rb-swatch input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.rb-option>span{display:inline-flex!important;align-items:center!important;min-height:40px!important;padding:8px 14px!important;border:1.5px solid var(--rb-field)!important;border-radius:999px!important;background:#fff!important;color:var(--rb-ink)!important;font-size:.92rem!important;line-height:1.2!important;font-weight:500!important;transition:.15s ease!important}
.rb-option input:checked+span{border-color:var(--rb-ink)!important;background:var(--rb-ink)!important;color:#fff!important}
.rb-option input:focus-visible+span,.rb-swatch input:focus-visible+.rb-swatch__dot{outline:3px solid rgba(54,80,107,.22)!important;outline-offset:2px!important}
.rb-swatch{gap:7px!important;padding:5px 8px 5px 5px!important;border:1.5px solid transparent!important;border-radius:999px!important;color:var(--rb-ink)!important;font-size:.9rem!important;line-height:1.2!important}
.rb-swatch:has(input:checked){border-color:var(--rb-ink)!important}
.rb-swatch__dot{display:block!important;width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;border-radius:50%!important;background:var(--rb-swatch)!important;border:1px solid #777!important;box-shadow:inset 0 0 0 2px #fff!important}
.rb-swatch input:checked+.rb-swatch__dot{outline:2px solid var(--rb-ink)!important;outline-offset:2px!important}
.rb-cart-confirmation{margin-top:6px;font-weight:600}
.woocommerce-cart-form .variation dt:first-child,.woocommerce-checkout-review-order .variation dt:first-child{font-weight:700}
.single_add_to_cart_button.button.alt{border-radius:6px!important;font-weight:600!important;min-height:48px!important;padding-left:18px!important;padding-right:18px!important}
.rb-configurator+.quantity{margin-top:5px!important}
@media(max-width:480px){
  .rb-configurator{--rb-padding:18px;margin-top:18px!important}
  .rb-question{padding:17px 0!important}
  .rb-option>span{padding:8px 13px!important}
  .rb-swatch{font-size:.86rem!important}
}

.rb-cart-edit {
  margin-top: 10px;
}

.rb-cart-edit__button.button {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 6px 14px;
  border: 1px solid currentColor;
  border-radius: 6px;
  font-size: 0.9em;
  line-height: 1.2;
  text-decoration: none;
}

/* 0.6.0: zentrale Material- und Farbbibliothek */
.rb-choice-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;gap:10px!important}.rb-choice-card{position:relative!important;display:flex!important;align-items:center!important;gap:10px!important;min-height:62px!important;margin:0!important;padding:8px!important;border:1.5px solid var(--rb-field)!important;border-radius:12px!important;background:#fff!important;cursor:pointer!important;overflow:hidden!important}.rb-choice-card input{position:absolute!important;opacity:0!important;pointer-events:none!important}.rb-choice-card:has(input:checked){border-color:var(--rb-ink)!important;box-shadow:inset 0 0 0 1px var(--rb-ink)!important}.rb-choice-card:has(input:focus-visible){outline:3px solid rgba(54,80,107,.22)!important;outline-offset:2px!important}.rb-choice-card__preview{display:block!important;width:46px!important;height:46px!important;min-width:46px!important;border:1px solid #777!important;border-radius:9px!important;background-color:var(--rb-choice-preview,#e5e5e5)!important;background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important}.rb-choice-card__preview--image{background-position:center!important;background-size:cover!important}.rb-choice-card__content{display:grid!important;gap:2px!important;min-width:0!important}.rb-choice-card__content strong{font-size:.92rem!important;line-height:1.2!important}.rb-choice-card__content small{color:var(--rb-muted)!important;font-size:.78rem!important;line-height:1.25!important}@media(max-width:480px){.rb-choice-grid{grid-template-columns:1fr 1fr!important}.rb-choice-card{align-items:flex-start!important}.rb-choice-card__preview{width:40px!important;height:40px!important;min-width:40px!important}}


/* 0.7.1: Vorschaubilder dürfen nicht durch die HEX-Hintergrundregel überschrieben werden. */
.rb-choice-card__preview--image{background-color:#e5e5e5!important;background-repeat:no-repeat!important;background-position:center!important;background-size:cover!important}
.rb-choice-card__content small{overflow-wrap:anywhere!important;word-break:normal!important}
@media(max-width:480px){
  .rb-choice-card{min-width:0!important}
  .rb-choice-card__content{overflow:hidden!important}
}


/* 0.7.3: mobile Karten bleiben auch bei längeren Namen und Beschreibungen lesbar. */
.rb-choice-card__content{
  width:100%!important;
  max-width:100%!important;
}
.rb-choice-card__content strong,
.rb-choice-card__content small{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
}
@media(max-width:480px){
  .rb-choice-card{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    align-items:start!important;
    column-gap:9px!important;
    padding:8px 9px!important;
  }
  .rb-choice-card__content{
    min-width:0!important;
    padding-right:1px!important;
  }
  .rb-choice-card__content strong{
    font-size:.88rem!important;
    line-height:1.18!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .rb-choice-card__content small{
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:4!important;
    line-clamp:4!important;
    font-size:.75rem!important;
    line-height:1.24!important;
    overflow:hidden!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}
@media(max-width:360px){
  .rb-choice-card{
    grid-template-columns:36px minmax(0,1fr)!important;
    column-gap:8px!important;
    padding:7px 8px!important;
  }
  .rb-choice-card__preview{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
  }
  .rb-choice-card__content strong{font-size:.84rem!important}
  .rb-choice-card__content small{font-size:.72rem!important}
}
