/* RepairCRM — clean default styles */
.repaircrm-wizard{--rc-primary:#2563eb;--rc-bg:#fff;--rc-fg:#0f172a;--rc-muted:#64748b;--rc-border:#e2e8f0;--rc-radius:10px;
	max-width:840px;margin:2rem auto;padding:1.5rem;background:var(--rc-bg);border:1px solid var(--rc-border);border-radius:var(--rc-radius);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--rc-fg)}
.repaircrm-progress{margin-bottom:1.5rem}
.repaircrm-progress-bar{background:#f1f5f9;height:6px;border-radius:99px;overflow:hidden;margin-bottom:.75rem}
.repaircrm-progress-bar span{display:block;height:100%;background:var(--rc-primary);transition:width .3s}
.repaircrm-progress ol{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin:0;padding:0;font-size:.8rem;color:var(--rc-muted)}
.repaircrm-progress li{display:flex;align-items:center;gap:.4rem}
.repaircrm-progress li span{width:24px;height:24px;border-radius:50%;background:#f1f5f9;display:inline-flex;align-items:center;justify-content:center;font-weight:600}
.repaircrm-progress li.active{color:var(--rc-fg)}
.repaircrm-progress li.active span{background:var(--rc-primary);color:#fff}
.repaircrm-step{display:none;border:0;padding:0;margin:0}
.repaircrm-step.active{display:block;animation:rcfade .2s}
@keyframes rcfade{from{opacity:0;transform:translateY(4px)}to{opacity:1}}
.repaircrm-step legend{font-size:1.25rem;font-weight:600;margin-bottom:1rem}
.repaircrm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1rem}
@media (max-width:600px){.repaircrm-grid{grid-template-columns:1fr}}
.repaircrm-grid label,.repaircrm-block{display:block;font-size:.85rem;color:var(--rc-muted)}
.repaircrm-grid input,.repaircrm-grid select,.repaircrm-block textarea,.repaircrm-block input,.repaircrm-collection input,.repaircrm-collection select{
	width:100%;padding:.6rem .75rem;margin-top:.25rem;border:1px solid var(--rc-border);border-radius:8px;font-size:1rem;color:var(--rc-fg);background:#fff;box-sizing:border-box}
.repaircrm-grid input:focus,.repaircrm-grid select:focus,.repaircrm-block textarea:focus{outline:2px solid var(--rc-primary);outline-offset:2px;border-color:var(--rc-primary)}
.repaircrm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}
.repaircrm-cards-sm{grid-template-columns:repeat(2,1fr)}
@media (max-width:600px){.repaircrm-cards{grid-template-columns:repeat(2,1fr)}.repaircrm-cards-sm{grid-template-columns:1fr}}
.repaircrm-card{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:1rem;border:1px solid var(--rc-border);border-radius:10px;cursor:pointer;text-align:center;transition:.15s;background:#fff}
.repaircrm-card:hover{border-color:var(--rc-primary)}
.repaircrm-card input{position:absolute;opacity:0;pointer-events:none}
.repaircrm-card:has(input:checked){border-color:var(--rc-primary);box-shadow:0 0 0 3px rgba(37,99,235,.15)}
.repaircrm-card-icon{width:36px;height:36px;background:#eef2ff url('../../assets/images/device.svg') center/60% no-repeat;border-radius:8px}
.repaircrm-card-label{font-weight:500;font-size:.9rem}
.repaircrm-checks label,.repaircrm-step > label{display:block;margin:.4rem 0;font-size:.95rem}
.repaircrm-photos{margin-top:1rem;font-size:.85rem;color:var(--rc-muted)}
.repaircrm-collection{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1rem;padding:1rem;background:#f8fafc;border-radius:10px}
@media (max-width:600px){.repaircrm-collection{grid-template-columns:1fr}}
.repaircrm-summary{background:#f8fafc;border-radius:10px;padding:1rem;margin-bottom:1rem}
.repaircrm-summary h4{margin:0 0 .5rem}
.repaircrm-summary dl{display:grid;grid-template-columns:140px 1fr;gap:.25rem .75rem;margin:0;font-size:.9rem}
.repaircrm-summary dt{color:var(--rc-muted)}
.repaircrm-signature{margin-top:1rem}
#repaircrm-sigpad{border:1px dashed var(--rc-border);border-radius:8px;background:#fff;display:block;width:100%;max-width:500px;touch-action:none}
.repaircrm-sig-clear{margin-top:.5rem;background:transparent;border:1px solid var(--rc-border);padding:.4rem .75rem;border-radius:6px;cursor:pointer}
.repaircrm-actions{display:flex;justify-content:space-between;margin-top:1.5rem;gap:.5rem}
.repaircrm-actions button{padding:.7rem 1.4rem;border-radius:8px;border:0;font-size:1rem;cursor:pointer;font-weight:600}
.repaircrm-back{background:#f1f5f9;color:var(--rc-fg)}
.repaircrm-next,.repaircrm-submit{background:var(--rc-primary);color:#fff;margin-left:auto}
.repaircrm-back:disabled{opacity:.4;cursor:not-allowed}
.repaircrm-thanks{text-align:center;padding:2rem 1rem}
.repaircrm-thanks h2{color:var(--rc-primary)}
.repaircrm-docket{font-weight:600;font-size:1.1rem}
.repaircrm-status-link{color:var(--rc-primary);text-decoration:underline}

/* Status lookup + estimate approval shared bits */
.repaircrm-status-form,.repaircrm-estimate-page,.repaircrm-portal{max-width:720px;margin:2rem auto;padding:1.5rem;background:#fff;border:1px solid var(--rc-border);border-radius:10px;font-family:system-ui,sans-serif}
.repaircrm-chip{display:inline-block;padding:.25rem .65rem;border-radius:99px;font-size:.8rem;color:#fff}
.repaircrm-cost-table{width:100%;border-collapse:collapse;margin:.5rem 0}
.repaircrm-cost-table th,.repaircrm-cost-table td{border-bottom:1px solid var(--rc-border);padding:.5rem;text-align:left;font-size:.9rem}
.repaircrm-cost-table tfoot td{font-weight:600}
.repaircrm-btn{display:inline-block;padding:.6rem 1.2rem;border-radius:8px;border:0;font-weight:600;cursor:pointer;text-decoration:none}
.repaircrm-btn-primary{background:var(--rc-primary);color:#fff}
.repaircrm-btn-success{background:#10b981;color:#fff}
.repaircrm-btn-danger{background:#ef4444;color:#fff}
