/*
 * Digibit B2B Pricing — frontend stili
 * Kompatibilno: WooCommerce, Blocksy, Astra, Storefront
 *
 * Strategija: ne prepisujemo stilov teme. Vse barve in radiji
 * sledijo temi prek CSS custom properties (fallback na WC vrednosti).
 * Edini lastni stili so layout in B2B-specifični elementi.
 */

/* =========================================================
   CENE NA PRODUKTNI STRANI IN V LOOPU
   ========================================================= */

.dbp-price-box {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin: 4px 0;
    line-height: 1.5;
}

.dbp-price-row {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px;
}

/* Label besedilo (npr. "Priporočena cena:") */
.dbp-label {
    font-size: .8em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #666));
    flex-shrink: 0;
    font-weight: normal;
}

/* RRP brez DDV — subtilna, ni poudarjena */
.dbp-rrp .dbp-amount {
    font-size: .9em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #555));
}

/* Maloprodajna cena z DDV — prečrtana pri B2B */
.dbp-retail .dbp-strikethrough {
    text-decoration: line-through;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #999));
    opacity: .65;
    font-size: .9em;
}

/* ── VAŠA CENA (B2B glavna cena) ─────────────────────── */
.dbp-b2b-price .dbp-highlight {
    font-size: 1.4em;
    font-weight: 700;
    /* Barva teme — Blocksy: --theme-palette-color-1, Astra: --ast-global-color-0 */
    color: var(--theme-palette-color-1,
           var(--ast-global-color-0,
           var(--ct-color-primary,
           #2271b1)));
}

/* Popust % značka */
.dbp-discount-badge {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 3px;
    font-size: .72em;
    font-weight: 700;
    vertical-align: middle;
    background: var(--theme-palette-color-1,
                var(--ast-global-color-0,
                #2271b1));
    color: #fff;
    line-height: 1.6;
}

/* Cena z DDV pod B2B ceno — drobno */
.dbp-b2b-inc .dbp-small,
.dbp-rrp-info .dbp-small,
.dbp-small {
    font-size: .78em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #888));
    line-height: 1.4;
}

/* Artikel brez pogodbene cene */
.dbp-no-contract .dbp-small {
    font-style: italic;
    opacity: .6;
}

/* ── GOST (neprijavljen) ──────────────────────────────── */
.dbp-price-guest .dbp-main-price {
    font-size: 1.3em;
    font-weight: 600;
}

/* ── LOOP (product cards) — kompaktnejši ─────────────── */
.products .dbp-price-box  { gap: 2px; }
.products .dbp-label      { font-size: .74em; }
.products .dbp-b2b-price .dbp-highlight { font-size: 1.1em; }

/* =========================================================
   REGISTRACIJSKI OBRAZEC
   Vse klase so WooCommerce-native (form-row, input-text, woocommerce-Button).
   Tu dodamo samo minimalne popravke za sekcijsko ločilo in razmike.
   ========================================================= */

.dbp-register-wrap {
    /* Brez lastnega ozadja ali bordure — prevzame container teme */
}

/* Ločilna vrstica med osebnimi in podjetniškimi polji */
.dbp-b2b-form .dbp-section-divider,
.woocommerce-form-register .dbp-section-divider {
    margin-top: 1.4em;
    margin-bottom: .2em;
    padding-top: 1em;
    border-top: 1px solid var(--ast-border-color,
                            var(--ct-color-border,
                            rgba(0,0,0,.1)));
}

.dbp-b2b-form .dbp-section-divider strong,
.woocommerce-form-register .dbp-section-divider strong {
    font-size: .95em;
    /* Barva teme — Blocksy: --theme-palette-color-1, Astra: --ast-global-color-0 */
    color: var(--theme-palette-color-1,
           var(--ast-global-color-0,
           inherit));
}

/* Uspešno sporočilo po registraciji — WC stil se poskrbi, samo razmik */
.dbp-register-wrap .woocommerce-message {
    margin-bottom: 1em;
}

/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 480px) {
    .dbp-b2b-price .dbp-highlight { font-size: 1.2em; }
    .dbp-price-row { flex-direction: column; gap: 2px; }
    /* WC form-row-first/last — na mobilnem so full width (WC to že naredi,
       tu samo zagotovimo da naši wrapper-ji ne motijo) */
    .dbp-register-wrap .form-row-first,
    .dbp-register-wrap .form-row-last {
        width: 100%;
        float: none;
        clear: both;
    }
}

/* =========================================================
   LOOP (kartice) — B2B
   Prikazujemo SAMO "Vaša cena" — čisto, brez labelov
   ========================================================= */

.dbp-loop-b2b-price {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

/* Na karticah je highlight cena enako velika kot WC standardna cena */
.dbp-loop-b2b-price .dbp-highlight {
    font-size: 1em;
    font-weight: 700;
    color: var(--theme-palette-color-1,
           var(--ast-global-color-0,
           var(--ct-color-primary,
           inherit)));
}

/* Badge na kartici — kompaktnejši */
.dbp-loop-b2b-price .dbp-discount-badge {
    font-size: .7em;
    padding: 1px 5px;
}

/* =========================================================
   TAX OZNAKE
   ========================================================= */

/* "z DDV" oznaka za goste v neto+mixed načinu */
.dbp-guest-price {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
}

.dbp-tax-label {
    font-size: .75em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #888));
    font-weight: normal;
}

/* "vključuje DDV" opomba ob maloprodajni ceni */
.dbp-tax-note {
    font-size: .72em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #aaa));
    font-style: italic;
}

/* =========================================================
   KOŠARICA — B2B prikaz brez DDV
   ========================================================= */

/* DDV vrstica v rekapitulaciji */
.dbp-tax-total-row th,
.dbp-tax-total-row td {
    font-weight: 600;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #555));
    border-top: 1px dashed var(--ast-border-color, rgba(0,0,0,.1));
    padding-top: 8px !important;
}

/* "brez DDV" oznaka pri cenah v košarici */
.woocommerce-cart .dbp-tax-label,
.woocommerce-mini-cart .dbp-tax-label,
.wc-block-cart .dbp-tax-label {
    font-size: .72em;
    color: var(--ast-body-color, var(--ct-color-secondary-text, #999));
    font-weight: normal;
    display: inline-block;
    margin-left: 2px;
}

/* =========================================================
   KALKULATOR PO ZNAKIH
   ========================================================= */

.dbp-charcalc-wrap {
    margin: 16px 0 20px;
    padding: 16px;
    border: 1px solid var(--ast-border-color, var(--ct-color-border, rgba(0,0,0,.12)));
    border-radius: 6px;
    background: var(--ast-global-color-5, #f9f9f9);
}

.dbp-charcalc-label {
    margin: 0 0 10px;
    font-size: .95em;
}

.dbp-charcalc-row {
    display: flex;
    gap: 8px;
    align-items: stretch; /* stretch = enaka višina */
    flex-wrap: wrap;
}

.dbp-charcalc-input {
    flex: 1;
    min-width: 180px;
    max-width: 320px;
    font-size: 1.05em;
    letter-spacing: .05em;
    /* Enaka višina kot gumb — match WC input visino */
    height: auto;
    box-sizing: border-box;
}

/* Gumb — prevzame stil teme (.button.alt) + vertikalna poravnava */
.dbp-charcalc-btn.button.alt,
.dbp-charcalc-btn {
    flex-shrink: 0;
    align-self: stretch;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    cursor: pointer;
    /* Blocksy in Astra imata različne padding vrednosti — normaliziramo */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    min-height: 44px;
}

/* Rezultat */
.dbp-charcalc-result {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px dashed var(--ast-border-color, rgba(0,0,0,.12));
}

.dbp-cc-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 3px 0;
    gap: 12px;
}

.dbp-cc-lbl {
    color: var(--ast-body-color, #555);
    font-size: .88em;
}

.dbp-cc-val {
    font-size: .92em;
    text-align: right;
}

.dbp-cc-total-row .dbp-cc-lbl,
.dbp-cc-total-row .dbp-cc-val {
    font-size: 1.1em;
    padding-top: 6px;
    border-top: 1px solid var(--ast-border-color, rgba(0,0,0,.1));
    margin-top: 4px;
}

.dbp-cc-total-row strong {
    color: var(--theme-palette-color-1, var(--ast-global-color-0, #1a7a3c));
    font-size: 1.15em;
}

.dbp-cc-sub-row .dbp-cc-lbl,
.dbp-cc-sub-row .dbp-cc-val,
.dbp-cc-small {
    font-size: .78em !important;
    color: #999 !important;
}

.dbp-cc-notice {
    font-size: .75em;
    color: #aaa;
    margin: 8px 0 0;
    font-style: italic;
}

/* Napaka */
.dbp-charcalc-error {
    margin-top: 8px;
    padding: 8px 12px;
    background: #fff3f3;
    border-left: 3px solid #cc1818;
    color: #cc1818;
    font-size: .88em;
    border-radius: 0 4px 4px 0;
}

/* Skrij WC variation price spodaj — prikazujemo zgoraj */
.single-product .woocommerce-variation-price {
    display: none !important;
}
