/* ─── iDROID Repair Estimator v1.4.0 ─── */
.multi-step-form { --bg:#121212; --card:#1a1a1a; --card-2:#171717; --text:rgba(255,255,255,1); --muted:rgba(255,255,255,.68); --border:rgba(255,255,255,.10); --green-border:rgba(0,255,120,0.12); --accent:rgb(42,247,95); --accent-2:rgba(42,247,95,.18); --danger:#ff4d4f; }
.multi-step-form { font-family:Play,sans-serif !important; color:var(--text); width:100%; max-width:100%; border:1px solid var(--green-border); border-radius:16px; box-shadow:0 0 15px 0 var(--green-border); box-sizing:border-box; }
.multi-step-form *, .multi-step-form *::before, .multi-step-form *::after { box-sizing:border-box; }
.multi-step-form form { display:block; background:none; margin:0 auto; padding:28px; }
.multi-step-form .hidden { display:none !important; }

/* Title */
.multi-step-form h2.form-title, .multi-step-form form h2.form-title { margin:0 0 12px 0 !important; padding:0 !important; color:var(--text) !important; font-family:Play,sans-serif !important; font-size:28px !important; font-weight:700 !important; line-height:1.3 !important; text-align:left !important; border:none !important; background:none !important; }

/* Step labels */
.multi-step-form h3, .multi-step-form form h3, .multi-step-form fieldset h3, .multi-step-form form fieldset h3 { margin:0 0 10px 0 !important; padding:0 !important; font-family:Play,sans-serif !important; font-size:16px !important; font-weight:600 !important; color:rgba(255,255,255,.68) !important; line-height:1.4 !important; text-align:left !important; text-transform:none !important; letter-spacing:normal !important; border:none !important; background:none !important; }

/* Fieldsets */
.multi-step-form fieldset { display:flex; flex-direction:column; gap:10px; padding:0; margin:0; border:none; }

/* Inputs */
.multi-step-form select, .multi-step-form input[type="text"] { background:var(--card-2); color:var(--text); border:1px solid var(--border); border-radius:12px; padding:12px; outline:none; font-family:inherit; font-size:14px; width:100%; }
.multi-step-form select:focus, .multi-step-form input[type="text"]:focus { border-color:rgba(42,247,95,.55); box-shadow:0 0 0 3px var(--accent-2); }
.multi-step-form select { -webkit-appearance:none; -moz-appearance:none; appearance:none; padding-right:44px; background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.7) 50%),linear-gradient(135deg,rgba(255,255,255,.7) 50%,transparent 50%); background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%; background-size:6px 6px,6px 6px; background-repeat:no-repeat; }

/* Button group — override WP admin .wp-core-ui .button-group { font-size:0 } */
.multi-step-form .button-group { display:flex !important; gap:10px; justify-content:space-between; margin-top:8px; position:static !important; white-space:normal !important; font-size:14px !important; vertical-align:baseline !important; }

/* Shared button & anchor-button base */
.multi-step-form .btn-primary,
.multi-step-form .btn-secondary {
    border-radius:12px !important;
    padding:12px 14px !important;
    font-weight:700 !important;
    cursor:pointer;
    font-family:Play,sans-serif !important;
    font-size:14px !important;
    line-height:1.2 !important;
    transition:all .15s ease;
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    text-decoration:none !important;
    box-sizing:border-box;
    -webkit-appearance:none;
}

/* Primary (green) */
.multi-step-form .btn-primary { background:var(--accent) !important; color:#08150c !important; border:1px solid rgba(0,0,0,.2) !important; }
.multi-step-form .btn-primary:hover { filter:brightness(1.05); color:#08150c !important; text-decoration:none !important; }
.multi-step-form .btn-primary:visited { color:#08150c !important; }
.multi-step-form .btn-primary:focus { outline:2px solid var(--accent); outline-offset:2px; }

/* Secondary (outline) */
.multi-step-form .btn-secondary { background:transparent !important; color:var(--text) !important; border:1px solid var(--border) !important; }
.multi-step-form .btn-secondary:hover { border-color:rgba(42,247,95,.35) !important; }

/* Disabled */
.multi-step-form button:disabled, .multi-step-form .btn-primary[disabled], .multi-step-form .btn-secondary[disabled] { opacity:.45; cursor:not-allowed; }

/* Price display */
.multi-step-form .idre-price-display { margin-top:8px; }
.multi-step-form .idre-total-price { font-weight:800; font-size:18px; text-align:left; }
.multi-step-form .map-text { margin-top:10px; color:var(--muted); font-size:14px; text-align:left; }
.multi-step-form .map-text a, .multi-step-form .idre-error-message a { color:var(--accent) !important; text-decoration:none; font-weight:700; font-size:14px !important; display:inline !important; padding:0 !important; border:none !important; background:none !important; border-radius:0 !important; }
.multi-step-form .map-text a:hover, .multi-step-form .idre-error-message a:hover { text-decoration:underline; }
.multi-step-form .idre-error-message { color:var(--danger); font-size:14px; margin-top:4px; }
.multi-step-form .button-group.cta-row { justify-content:flex-end; flex-wrap:wrap; margin-top:14px; }
.multi-step-form .button-group.cta-row .btn-secondary:first-child { margin-right:auto; }

/* Seasonal pricing - strikethrough old price */
.multi-step-form .idre-old-price { text-decoration:line-through; opacity:.55; margin-right:6px; font-weight:400; }

/* Mobile */
@media (max-width:600px) {
    .multi-step-form form { padding:14px; }
    .multi-step-form .button-group { flex-direction:column; }
}
