/* Letwork Shipping — Warenkorb-Vorschau
   Dezente Inline-Vorschau in der Warenkorb-Summen-Tabelle. */

/* Standard-WooCommerce-Versandzeile ausblenden – die eigene Vorschau ersetzt sie.
   Der Versand fließt aber weiterhin in die Gesamtsumme ein. */
.cart_totals tr.woocommerce-shipping-totals,
.cart_totals tr.shipping:not(.lws-shipping-preview) {
    display: none !important;
}

/* Das Theme setzt .cart_totals tr auf display:flex (für th/td-Ausrichtung).
   Damit wird unsere einzelne Zelle zum Flex-Item und füllt die Breite nicht.
   Lösung: Flex-Zeile beibehalten (Abstände bleiben), aber die Zelle die volle
   Breite einnehmen lassen, damit der Float-Preis bündig rechts steht. */
.lws-shipping-preview__cell {
    flex: 1 0 100%;
    width: 100%;
    text-align: left;
    white-space: normal;
    /* Globales .shop_table td-Padding aufheben (links/rechts 0), damit Labels und
       der rechtsbündige Preis bündig mit den übrigen Zeilen stehen. */
    padding: 9px 0 !important;
}

.lws-shipping-preview__title {
    display: block;
    margin-bottom: 0.5em;
    font-weight: 700;
}

.lws-shipping-preview__inner {
    position: relative;
    font-size: 0.875rem;
    line-height: 1.5;
}

.lws-shipping-preview__inner.is-loading {
    opacity: 0.5;
    pointer-events: none;
}

/* ── Eingabe-Form (schmal begrenzt) ── */

.lws-shipping-preview__form {
    max-width: 24em;
}

.lws-shipping-preview__hint {
    display: block;
    margin: 0 0 0.6em;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: #777;
    white-space: normal;
    overflow-wrap: break-word;
    word-wrap: break-word;
    hyphens: auto;
}

.lws-shipping-preview__input-row {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.55em;
}

.lws-shipping-preview .lws-shipping-preview__input {
    display: block;
    width: 100% !important;
    max-width: 100%;
    margin: 0;
    padding: 0.45em 0.6em;
    font-size: 0.9375rem;
    line-height: 1.3;
    border: 1px solid #d2d2d2;
    border-radius: 3px;
    background: #fff;
    box-shadow: none;
}

.lws-shipping-preview .lws-shipping-preview__input:focus {
    border-color: #f08000;
    outline: none;
    box-shadow: 0 0 0 2px rgba(240, 128, 0, 0.15);
}

/* ── Links statt Buttons ── */

.lws-shipping-preview__link {
    display: inline-block;
    align-self: flex-start;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    box-shadow: none;
    color: #f08000;
    font: inherit;
    line-height: inherit;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
}

.lws-shipping-preview__link:hover,
.lws-shipping-preview__link:focus {
    color: #c96a00;
    text-decoration: none;
    background: none;
}

/* ── Ergebnis-Ansicht ── */

.lws-shipping-preview__result {
    display: block;
}

.lws-shipping-preview__rates {
    margin: 0;
    padding: 0;
    list-style: none;
}

.lws-shipping-preview__rates li {
    display: block;
    width: 100%;
    margin: 0 0 0.15em;
    overflow: hidden; /* enthält die Floats */
}

.lws-shipping-preview__method {
    float: left;
    font-weight: 400;
    color: #555;
}

.lws-shipping-preview__rates li .woocommerce-Price-amount {
    float: right;
    font-weight: 600;
    white-space: nowrap;
}

/* Kleinmengenzuschlag: kompakte Info-Zeile ohne Float-Ausrichtung */
.lws-shipping-preview__rates li.lws-shipping-preview__surcharge {
    margin: 0.1em 0 0;
    font-size: 0.8125rem;
    line-height: 1.4;
    color: #777;
    overflow: visible;
}

.lws-shipping-preview__rates li.lws-shipping-preview__surcharge .woocommerce-Price-amount {
    float: none;
    font-weight: 400;
}

.lws-shipping-preview__small-qty,
.lws-shipping-preview__free {
    margin: 0.4em 0 0;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: #777;
}

.lws-shipping-preview__info {
    margin: 0.35em 0 0;
    font-size: 0.8125rem;
    line-height: 1.45;
}

.lws-shipping-preview__info a {
    color: #f08000;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.lws-shipping-preview__info a:hover,
.lws-shipping-preview__info a:focus {
    color: #c96a00;
    text-decoration: none;
}

.lws-shipping-preview__free {
    color: #2e7d32;
}

.lws-shipping-preview__error {
    margin: 0;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: #b3261e;
}

.lws-shipping-preview__edit {
    margin: 0.55em 0 0;
    font-size: 0.8125rem;
    line-height: 1.45;
    color: #999;
}

.lws-shipping-preview__plz {
    color: #555;
}
