/* =========================================
   0. FIX NUCLEAR: OCULTAR RADIO BUTTONS DUPLICADOS
   (Esto elimina el nativo y el del tema)
   ========================================= */

/* 1. Ocultar el Input Nativo del navegador */
li:has(.gdos-shipping-card) input[type="radio"],
label:has(.gdos-shipping-card) input[type="radio"],
input[value*="gdos_v2"] { 
    opacity: 0 !important;
    position: absolute !important;
    width: 0 !important; 
    height: 0 !important;
    z-index: -999 !important;
    visibility: hidden !important;
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* 2. Ocultar los "Falsos" Radio Buttons del Tema (Pseudo-elementos) */
/* Muchos temas dibujan un círculo usando ::before o ::after en el label */
label:has(.gdos-shipping-card)::before,
label:has(.gdos-shipping-card)::after,
li.shipping_method:has(.gdos-shipping-card)::before,
li.shipping_method:has(.gdos-shipping-card)::after {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    border: none !important;
    background: none !important;
}

/* 3. Resetear márgenes del Label para que no quede hueco */
label:has(.gdos-shipping-card) {
    padding-left: 0 !important;
    margin-left: 0 !important;
    width: 100% !important;
}

/* =========================================
   1. CORE & MODAL (No tocar)
   ========================================= */
#gdos-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,0.6);z-index:9999999;display:none;backdrop-filter:blur(3px)}#gdos-modal-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;width:90%;max-width:500px;border-radius:12px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);overflow:hidden;animation:gdosPopIn .4s cubic-bezier(.175,.885,.32,1.275) forwards}.gdos-modal-header{padding:25px 20px 15px 20px;text-align:center;background:#fff}.gdos-modal-header h3{margin:0;color:#111;font-size:22px;font-weight:700;line-height:1.2}.gdos-modal-subtitle{margin-top:8px;color:#666;font-size:15px;line-height:1.4}#gdos-flash-map-canvas{width:100%;height:320px;background:#f0f0f0}.gdos-modal-footer{padding:15px 20px;background:#fff;text-align:center;border-top:1px solid #f0f0f0}#gdos-confirm-btn{background:#000;color:#fff;border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .1s,background .2s;width:100%;display:block;box-shadow:0 4px 6px rgba(0,0,0,0.1)}#gdos-confirm-btn:hover{background:#333;transform:translateY(-1px)}#gdos-confirm-btn:active{transform:translateY(1px)}@keyframes gdosPopIn{0%{opacity:0;transform:translate(-50%,-40%) scale(.95)}100%{opacity:1;transform:translate(-50%,-50%) scale(1)}}.pac-container{background-color:#fff;border:1px solid #f0f0f0;border-top:none;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,0.05);font-family:inherit;margin-top:2px;padding:5px 0;z-index:999999999!important}.pac-item{padding:8px 15px;cursor:pointer;border:none;line-height:1.4;display:flex;align-items:center;color:#999;transition:background .1s ease}.pac-item:hover,.pac-item-selected{background-color:#fafafa}

/* =========================================
   2. ESTRUCTURA WOOCOMMERCE
   ========================================= */
ul#shipping_method, ul.woocommerce-shipping-methods { width: 100% !important; padding: 0 !important; margin: 0 !important; list-style: none !important; display: flex !important; flex-direction: column; gap: 16px; }
ul.woocommerce-shipping-methods li.shipping_method { width: 100% !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.wfacp_single_shipping:has(.gdos-shipping-card) .wfacp_shipping_price, label:has(.gdos-shipping-card) > .woocommerce-Price-amount, label:has(.gdos-shipping-card) > .amount { display: none !important; }

/* =========================================
   3. TARJETA MINIMALISTA (ESTILO APPLE/STRIPE)
   ========================================= */
.gdos-shipping-card {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 20px;
    
    background: #ffffff;
    border: 1px solid #e5e5e5; /* Gris muy suave */
    border-radius: 8px;
    
    transition: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1);
    position: relative; /* Contexto de apilamiento */
}

/* Hover */
label:hover .gdos-shipping-card {
    border-color: #d4d4d4;
    background-color: #fafafa;
}

/* Estado Seleccionado (Borde negro fino) */
input[type="radio"]:checked + label .gdos-shipping-card,
.shipping_method.checked label .gdos-shipping-card {
    border-color: #000;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    background-color: #fff;
    z-index: 2;
}

/* =========================================
   4. TU RADIO BUTTON PERSONALIZADO
   ========================================= */
.gdos-radio-col {
    padding-top: 2px;
    flex-shrink: 0;
}
.gdos-custom-radio {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 1px solid #ccc;
    background: #fff;
    position: relative;
    transition: all 0.2s;
}
/* Punto interior */
input[type="radio"]:checked + label .gdos-custom-radio::after,
.shipping_method.checked label .gdos-custom-radio::after {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: 8px; height: 8px;
    background: #000;
    border-radius: 50%;
}
input[type="radio"]:checked + label .gdos-custom-radio,
.shipping_method.checked label .gdos-custom-radio {
    border-color: #000;
}

/* =========================================
   5. GRID LAYOUT (CONTENIDO)
   ========================================= */
.gdos-content-col {
    flex: 1;
    display: grid;
    /* Grid de 2 columnas: Título a la izq, Precio a la der */
    grid-template-columns: 1fr auto; 
    grid-template-areas: 
        "title price"
        "desc desc";
    
    align-items: flex-start;
    row-gap: 6px;
    column-gap: 12px;
}

/* TÍTULO */
.gdos-title {
    grid-area: title;
    font-size: 15px;
    font-weight: 500;
    color: #111;
    margin: 0;
    line-height: 1.3;
}

/* PRECIO (A la derecha) */
.gdos-price-wrapper {
    grid-area: price;
    text-align: right;
    margin-top: 1px;
}

/* Estilo de texto del precio (Minimalista puro) */
.gdos-price-free, .gdos-price-cod, .gdos-price-amount {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #111 !important;
    padding: 0;
    background: transparent;
    border: none;
    text-transform: none; 
    white-space: nowrap;
}
.gdos-price-free {
    color: #16a34a !important; /* Verde sutil solo en texto */
    font-weight: 600 !important;
}

/* DESCRIPCIÓN (Abajo) */
.gdos-description {
    grid-area: desc;
    font-size: 13px;
    font-weight: 400;
    color: #666;
    line-height: 1.5;
    margin-top: 2px;
    max-width: 95%; 
}

/* =========================================
   6. MÓVIL (AJUSTES FINOS)
   ========================================= */
@media (max-width: 600px) {
    .gdos-shipping-card {
        padding: 16px;
        gap: 12px;
    }
    
    .gdos-custom-radio { width: 16px; height: 16px; }
    input[type="radio"]:checked + label .gdos-custom-radio::after { width: 6px; height: 6px; }

    .gdos-title { font-size: 14px; }
    
    .gdos-price-free, .gdos-price-cod, .gdos-price-amount { font-size: 12px !important; }
    
    .gdos-description {
        font-size: 12px;
        color: #777;
        line-height: 1.4;
    }
}