/* =============================================================
   Nigerian Shipping — Frontend Styles
   assets/css/shipping-ui.css
   ============================================================= */

/* ── Hide native WC shipping radio list only ──────────────── */
.woocommerce-shipping-methods,
ul.shipping_method,
.woocommerce table.shop_table .shipping ul,
.woocommerce-checkout #shipping_method { display: none !important; }

.woocommerce table.shop_table tr.shipping td,
.woocommerce-checkout-review-order-table tr.shipping td { display: table-cell !important; }

.woocommerce .shipping-calculator-button { display: none !important; }

/* ── Billing state detection (checkout) ──────────────────── */
.abuja-state-detected {
    margin: 0 0 12px;
    font-size: 13px;
    color: #374151;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 7px;
    padding: 8px 12px;
}
.abuja-state-detected strong { color: #166534; }
.abuja-state-prompt {
    margin: 0 0 12px;
    font-size: 13px;
    color: #9ca3af;
    font-style: italic;
}

/* ── Selector wrapper ─────────────────────────────────────── */
#abuja-shipping-selector {
    background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    padding: 16px 18px 14px;
    margin-bottom: 16px;
    font-family: inherit;
}
.abuja-selector-title {
    margin: 0 0 14px;
    font-size: 14px;
    font-weight: 700;
    color: #111827;
    letter-spacing: -.01em;
}
.abuja-field-row { margin-bottom: 12px; }
.abuja-field-row label {
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #6b7280;
    margin-bottom: 5px;
}
.abuja-select-wrap { position: relative; }
.abuja-select-wrap::after {
    content: "\25BE";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: #6b7280;
    font-size: 12px;
}
.abuja-select-wrap select {
    width: 100%;
    padding: 10px 34px 10px 12px;
    border: 1.5px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
    color: #111827;
    background: #f9fafb;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: border-color .15s, background .15s;
}
.abuja-select-wrap select:focus {
    outline: none;
    border-color: #2563eb;
    background: #fff;
}

/* ── Rider tag (Abuja FCT) ────────────────────────────────── */
#abuja-shipping-selector .abuja-rider-tag {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 8px;
    padding: 12px 14px;
    margin-top: 10px;
    font-size: 13px;
    color: #92400e;
}
#abuja-shipping-selector .abuja-rider-icon {
    font-size: 20px;
    flex-shrink: 0;
    line-height: 1.4;
    margin-top: 1px;
}
#abuja-shipping-selector .abuja-rider-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
}
#abuja-shipping-selector .abuja-rider-main {
    font-weight: 500;
    line-height: 1.5;
    color: #7c2d12;
    font-style: normal;
}
#abuja-shipping-selector .abuja-rider-main strong {
    font-size: 15px;
    font-style: normal;
}
#abuja-shipping-selector .abuja-rider-days-row {
    display: flex;
    align-items: center;
    gap: 6px;
}
#abuja-shipping-selector .abuja-rider-days-label {
    font-size: 11px;
    color: #92400e;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-style: normal;
}
#abuja-shipping-selector .abuja-rider-days {
    font-size: 11px;
    background: #dcfce7;
    color: #166534;
    padding: 2px 9px;
    border-radius: 20px;
    font-weight: 600;
    white-space: nowrap;
    font-style: normal;
}

/* ── NOTICE — high-specificity rules to beat theme resets ─── */
#abuja-shipping-selector .abuja-rider-notice,
#abuja-shipping-selector .abuja-rider-notice * {
    font-style: italic;
}
#abuja-shipping-selector .abuja-rider-notice {
    margin-top: 6px;
    font-size: 11.5px !important;
    color: #92400e !important;
    font-style: italic !important;
    line-height: 1.6 !important;
    border-top: 1px solid #fde68a;
    border-left: 3px solid #f59e0b;
    padding: 7px 0 0 9px !important;
    opacity: .9;
    background: transparent !important;
    display: block !important;
}

/* ── Courier info box (interstate) ───────────────────────── */
#abuja-shipping-selector .abuja-courier-info-box {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    padding: 12px 14px;
    margin-top: 10px;
    font-size: 13px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
#abuja-shipping-selector .abuja-courier-info-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
#abuja-shipping-selector .abuja-courier-info-label {
    font-weight: 600;
    color: #374151;
    min-width: 140px;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
}
#abuja-shipping-selector .abuja-courier-info-price {
    font-weight: 700;
    font-size: 15px;
    color: #1e40af;
}
#abuja-shipping-selector .abuja-courier-info-days {
    font-size: 11px;
    background: #dcfce7;
    color: #166534;
    padding: 3px 9px;
    border-radius: 20px;
    font-weight: 600;
}
#abuja-shipping-selector .abuja-courier-info-note {
    font-size: 11px;
    color: #6b7280;
    font-style: italic;
}

/* ── Status bar ───────────────────────────────────────────── */
#abuja-shipping-selector .abuja-status-bar {
    margin-top: 10px;
    padding: 8px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 500;
    background: #dcfce7;
    color: #166534;
}
#abuja-shipping-selector .abuja-status-bar.error {
    background: #fee2e2;
    color: #991b1b;
}

/* ── WC totals row labels ─────────────────────────────────── */
.abuja-placeholder-lbl { color: #9ca3af; font-style: italic; font-size: 13px; }
.abuja-lbl-loc  { font-weight: 600; }
.abuja-lbl-zone {
    display: inline-block;
    background: #e8f0fe;
    color: #1a56db;
    font-size: 11px;
    padding: 1px 8px;
    border-radius: 20px;
    font-weight: 600;
    margin: 0 4px;
    vertical-align: middle;
}
.abuja-lbl-is   { background: #fef3c7; color: #92400e; }
.abuja-lbl-days { color: #166534; font-size: 12px; font-weight: 500; margin: 0 3px; }
.abuja-lbl-rider {
    display: inline-block;
    background: #fff7ed;
    color: #9a3412;
    border: 1px solid #fed7aa;
    font-size: 11px;
    padding: 1px 8px;
    border-radius: 20px;
    font-weight: 500;
    margin-left: 4px;
    vertical-align: middle;
}
