/* ═══════════════════════════════════════════════════════════
   Playtix Cart CEP Calculator — Apple UX
   ═══════════════════════════════════════════════════════════ */
.woocommerce-shipping-calculator > .shipping-calculator-form { display: none !important; }

/* ── "Digite seu CEP aqui" trigger button ── */
.playtix-cep-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 12px 16px;
    border: 1.5px dashed #0071e3;
    border-radius: 10px;
    background: rgba(0, 113, 227, 0.04);
    color: #0071e3;
    font-size: 14px;
    font-weight: 500;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'SF Pro Display', sans-serif;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    box-sizing: border-box;
    margin-top: 4px;
}
.playtix-cep-trigger:hover {
    background: rgba(0, 113, 227, 0.08);
    border-color: #0077ed;
    color: #0077ed;
    text-decoration: none;
}
.playtix-cep-trigger svg { margin-right: 6px; flex-shrink: 0; }

/* ── CEP input row ── */
.playtix-cep-input-row { position: relative; display: flex; align-items: center; }
.playtix-cep-input {
    width: 100%; height: 44px;
    border: 1.5px solid #d2d2d7; border-radius: 10px;
    padding: 0 40px 0 14px; font-size: 15px;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'SF Pro Display', sans-serif;
    color: #1d1d1f; background: #fff; outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    box-sizing: border-box;
}
.playtix-cep-input::placeholder { color: #636366; }
.playtix-cep-input:focus { border-color: #0071e3; box-shadow: 0 0 0 3px rgba(0,113,227,0.15); }
.playtix-cep-input:disabled { background: #f5f5f7; color: #636366; }
.playtix-cep-spinner { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); }
.playtix-spin-svg { width: 20px; height: 20px; animation: playtix-spin 0.8s linear infinite; }
.playtix-spin-svg circle { fill: none; stroke: #0071e3; stroke-width: 2.5; stroke-dasharray: 30; stroke-dashoffset: 10; stroke-linecap: round; }
@keyframes playtix-spin { 100% { transform: rotate(360deg); } }

/* ═══════════════════════════════════════════════════════════
   Shipping Methods — Cards matching reference screenshot
   ═══════════════════════════════════════════════════════════ */
.woocommerce-shipping-methods {
    list-style: none !important;
    padding: 0 !important;
    margin: 8px 0 0 0 !important;
}
.woocommerce-shipping-methods li {
    display: flex !important;
    align-items: center !important;
    gap: 8px;
    border: 1px solid #e8e8ed;
    border-radius: 10px;
    margin-bottom: 8px;
    padding: 10px 12px;
    background: #f5f5f7;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    box-sizing: border-box;
}
.woocommerce-shipping-methods li:last-child { margin-bottom: 0; }
.woocommerce-shipping-methods li:has(input:checked) {
    border-color: #0071e3;
    box-shadow: none;
    background: #f5f5f7;
}
/* Hide Correios <p> delivery time (already in our label) */
.woocommerce-shipping-methods li > p { display: none !important; }

/* Radio */
.woocommerce-shipping-methods li input[type="radio"] {
    width: 18px; height: 18px; accent-color: #0071e3;
    flex-shrink: 0; margin: 0 !important; padding: 0 !important;
    cursor: pointer; align-self: center;
    position: relative; top: -1px;
}

/* Label: info + price in one row */
.woocommerce-shipping-methods li label.playtix-shipping-label {
    display: flex; align-items: center; gap: 4px;
    padding: 0; margin: 0; cursor: pointer;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'SF Pro Display', sans-serif;
    flex: 1; min-width: 0;
}

/* Info: name + delivery time SAME LINE */
.playtix-ship-info {
    display: flex; flex-direction: row; align-items: baseline;
    gap: 4px; flex: 1; min-width: 0; flex-wrap: nowrap;
    overflow: hidden;
}
.playtix-ship-name {
    font-size: 13px; font-weight: 600; color: #1d1d1f;
    line-height: 1.4; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis;
}
.playtix-ship-time {
    font-size: 12px; font-weight: 400; color: #0071e3;
    line-height: 1.4; white-space: nowrap; flex-shrink: 0;
}

/* Price right-aligned */
.playtix-ship-price {
    font-size: 13px; font-weight: 600; color: #2e6bc6;
    white-space: nowrap; flex-shrink: 0; margin-left: auto;
}

/* Shipping destination */
.woocommerce-shipping-destination {
    font-size: 13px; color: #333; margin: 12px 0 4px 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'SF Pro Display', sans-serif;
    line-height: 1.5;
}
.woocommerce-shipping-destination strong { font-weight: 600; }

/* "Mudar endereco" link - visible and blue */
a.shipping-calculator-button {
    display: inline-block !important;
    color: #0071e3 !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', 'SF Pro Display', sans-serif !important;
    margin-top: 4px;
    cursor: pointer;
}
a.shipping-calculator-button:hover { text-decoration: underline !important; color: #0077ed !important; }

/* Hide the default WC calculator FORM (not the link) inside the native WC calculator */
.woocommerce-shipping-calculator .shipping-calculator-form { display: none !important; }

/* But show our custom CEP calculator form when it's inside the shipping calculator */
.playtix-cep-calculator { margin-top: 0; }
.playtix-cep-calculator .shipping-calculator-button { display: none !important; }

/* Pickup scheduling note */
.woocommerce-shipping-methods li:has(.playtix-ship-note) {
    flex-wrap: wrap !important;
}
.playtix-ship-note {
    display: block;
    width: 100%;
    font-size: 11px;
    color: #0071e3;
    margin-top: -2px;
    padding-left: 26px;
    text-align: left;
    font-style: normal;
    font-weight: 400;
    line-height: 1.3;
}

/* ── Spacing: "Frete" label → cards (checkout only) ── */
.woocommerce-checkout .woocommerce-shipping-totals {
    flex-wrap: wrap !important;
    margin-top: 4px !important;
}
.woocommerce-checkout .woocommerce-shipping-totals th {
    padding-top: 14px !important;
    padding-bottom: 6px !important;
    vertical-align: top !important;
    width: 100% !important;
    display: block !important;
}
.woocommerce-checkout .woocommerce-shipping-totals td {
    padding-top: 0 !important;
    vertical-align: top !important;
    width: 100% !important;
    display: block !important;
}

/* Shipping card prices — match site blue */
.woocommerce-shipping-methods li label .woocommerce-Price-amount {
    color: #2e6bc6 !important;
    font-weight: 600;
}