/* iFix Cellfone — Scheduling System v12.4
   ifsc-* = customer widget · isa-* = admin page */

:root{
  --sc-brand:#1860f0;--sc-brand-lite:#e8f2ff;--sc-brand-glow:rgba(24,96,240,.15);
  --sc-green:#059669;--sc-green-lite:#d1fae5;
  --sc-amber:#d97706;--sc-amber-lite:#fef3c7;
  --sc-red:#dc2626;--sc-red-lite:#fee2e2;
  --sc-gray-50:#f8fafc;--sc-gray-100:#f1f5f9;--sc-gray-200:#e2e8f0;
  --sc-gray-400:#94a3b8;--sc-gray-500:#64748b;--sc-gray-700:#334155;--sc-gray-900:#0f172a;
  --sc-radius:13px;--sc-radius-sm:8px;
  --sc-shadow:0 2px 10px rgba(15,23,42,.08),0 1px 3px rgba(15,23,42,.05);
  --sc-shadow-lg:0 10px 36px rgba(15,23,42,.13);
  --sc-font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
@keyframes sc-spin{to{transform:rotate(360deg);}}
@keyframes sc-step-in{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

/* ═══ CUSTOMER WIDGET ═════════════════════════════════════════════ */
.ifix-sched-mount,.ifix-sched-mount-panel{margin-top:0;text-align:left;}
.ifsc-wrap{background:#fff!important;border:1.5px solid var(--sc-gray-200);border-radius:var(--sc-radius);box-shadow:var(--sc-shadow-lg);font-family:var(--sc-font);font-size:14px;color:var(--sc-gray-900)!important;overflow:hidden;-webkit-font-smoothing:antialiased;text-align:left;max-width:100%;box-sizing:border-box;color-scheme:light;}
.ifsc-wrap *,.ifsc-wrap *::before,.ifsc-wrap *::after{box-sizing:border-box;color-scheme:light;}
.ifsc-wrap input,.ifsc-wrap textarea,.ifsc-wrap select,.ifsc-wrap button{font-family:var(--sc-font);}
.ifsc-hdr{position:relative;overflow:hidden;background:linear-gradient(130deg,#1860f0 0%,#4f46e5 55%,#7c3aed 100%);}
.ifsc-hdr::before,.ifsc-hdr::after{content:'';position:absolute;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none;}
.ifsc-hdr::before{width:160px;height:160px;top:-60px;right:-40px;}
.ifsc-hdr::after{width:90px;height:90px;bottom:-30px;left:60px;}
.ifsc-hdr-inner{position:relative;display:flex;align-items:center;gap:14px;padding:22px 24px 20px;z-index:1;}
.ifsc-hdr-ico{font-size:30px;line-height:1;flex-shrink:0;}
.ifsc-hdr-title{font-size:18px;font-weight:800;color:#fff;letter-spacing:-.3px;}
.ifsc-hdr-sub{font-size:12px;color:rgba(255,255,255,.8);margin-top:3px;}
/* .ifsc-step in the INDICATOR BAR — styled by .ifsc-steps .ifsc-step below */
/* Content panels use .ifsc-panel (added in the critical rules section below) */
.ifsc-step-label{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:15px;font-weight:700;color:var(--sc-gray-900);flex-wrap:wrap;}
.ifsc-step-num{width:26px;height:26px;border-radius:50%;background:var(--sc-brand);color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 3px 10px var(--sc-brand-glow);}
.ifsc-chosen-badge{margin-left:auto;font-size:12px;color:var(--sc-brand);font-weight:600;background:var(--sc-brand-lite);padding:3px 10px;border-radius:99px;}
.ifsc-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.ifsc-cal-nav-title{font-size:15px;font-weight:700;color:var(--sc-gray-900);}
.ifsc-cal-nav-btn{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--sc-gray-200);background:#fff;font-size:17px;line-height:1;color:var(--sc-gray-700);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;-webkit-tap-highlight-color:transparent;}
.ifsc-cal-nav-btn:hover{background:var(--sc-brand-lite);border-color:var(--sc-brand);color:var(--sc-brand);}
.ifsc-cal-nav-btn:disabled{opacity:.38;cursor:not-allowed;transform:none;box-shadow:none;}
.ifsc-cal-nav-btn:disabled:hover{background:#fff;border-color:var(--sc-gray-200);color:var(--sc-gray-700);}
.ifsc-cal-grid-wrap{overflow:hidden;}
.ifsc-cal-row-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:4px;}
.ifsc-cal-dow{text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--sc-gray-400);padding:5px 2px 3px;}
.ifsc-cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.ifsc-day{position:relative;width:100%;padding-bottom:100%;border-radius:8px;border:1.5px solid transparent;cursor:pointer;transition:all .15s;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;}
.ifsc-day-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:13px;font-weight:600;gap:2px;}
.ifsc-day-dot{width:4px;height:4px;border-radius:50%;background:var(--sc-green);display:block;}
.ifsc-dot-amber{background:var(--sc-amber);}
.ifsc-day-empty{cursor:default;pointer-events:none;background:transparent;}
.ifsc-day-past,.ifsc-day-unavailable{background:var(--sc-gray-50);color:var(--sc-gray-400);cursor:not-allowed;pointer-events:none;}
.ifsc-day-full{background:var(--sc-red-lite);color:#991b1b;cursor:not-allowed;pointer-events:none;}
.ifsc-day-limited{background:var(--sc-amber-lite);color:#78350f;border-color:#fde68a;font-weight:700;}
.ifsc-day-limited:hover,.ifsc-day-limited:focus{background:#fde68a;transform:scale(1.06);outline:none;}
.ifsc-day-available{background:var(--sc-green-lite);color:#065f46;border-color:#a7f3d0;font-weight:700;}
.ifsc-day-available:hover,.ifsc-day-available:focus{background:#a7f3d0;transform:scale(1.08);box-shadow:0 4px 14px rgba(5,150,105,.2);outline:none;}
.ifsc-day-today{border-color:var(--sc-brand)!important;font-weight:800!important;}
.ifsc-day-selected{background:var(--sc-brand)!important;color:#fff!important;border-color:var(--sc-brand)!important;transform:scale(1.10)!important;box-shadow:0 6px 20px rgba(24,96,240,.35)!important;font-weight:800!important;}
.ifsc-day-selected .ifsc-day-dot{background:rgba(255,255,255,.8);}
.ifsc-cal-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:11px;color:var(--sc-gray-500);align-items:center;}
.ifsc-cal-legend-item{display:flex;align-items:center;gap:5px;}
.sc-dot{width:8px;height:8px;border-radius:50%;display:inline-block;}
.sc-dot-avail{background:var(--sc-green);}
.sc-dot-limited{background:var(--sc-amber);}
.sc-dot-full{background:var(--sc-red);}
.sc-dot-off{background:var(--sc-gray-400);}
.ifsc-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:8px;margin-bottom:14px;}
.ifsc-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 10px;border-radius:var(--sc-radius-sm);border:1.5px solid var(--sc-gray-200);background:#fff;cursor:pointer;font-family:var(--sc-font);transition:all .15s;-webkit-tap-highlight-color:transparent;gap:2px;min-height:62px;}
.ifsc-slot-start{font-size:13px;font-weight:700;color:var(--sc-gray-900);line-height:1.2;}
.ifsc-slot-sep{font-size:10px;color:var(--sc-gray-400);line-height:1;}
.ifsc-slot-end{font-size:11px;font-weight:500;color:var(--sc-gray-500);line-height:1.2;}
.ifsc-slot:not([disabled]):hover{background:var(--sc-brand-lite);border-color:var(--sc-brand);transform:translateY(-2px);box-shadow:0 6px 16px var(--sc-brand-glow);}
.ifsc-slot:not([disabled]):hover .ifsc-slot-start{color:var(--sc-brand);}
.ifsc-slot-selected{background:linear-gradient(135deg,#1860f0,#4f46e5)!important;border-color:var(--sc-brand)!important;box-shadow:0 8px 24px rgba(24,96,240,.32)!important;transform:translateY(-2px)!important;}
.ifsc-slot-selected .ifsc-slot-start,.ifsc-slot-selected .ifsc-slot-sep,.ifsc-slot-selected .ifsc-slot-end{color:#fff!important;}
.ifsc-slot-taken,.ifsc-slot-past{background:var(--sc-gray-50);color:var(--sc-gray-400);cursor:not-allowed;opacity:.7;}
.ifsc-slot-taken .ifsc-slot-start,.ifsc-slot-past .ifsc-slot-start{text-decoration:line-through;color:var(--sc-gray-400);}
.ifsc-no-slots{grid-column:1/-1;text-align:center;padding:24px;color:var(--sc-gray-500);font-size:14px;}
.ifsc-back{background:none;border:none;color:var(--sc-gray-500);font-size:13px;cursor:pointer;padding:6px 0;font-family:var(--sc-font);display:inline-flex;align-items:center;gap:5px;transition:color .14s;-webkit-tap-highlight-color:transparent;margin-top:4px;}
.ifsc-back:hover{color:var(--sc-brand);}
.ifsc-zone-banner{display:flex;align-items:flex-start;gap:10px;background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;border-radius:var(--sc-radius-sm);padding:13px 15px;margin-bottom:16px;font-size:13px;color:#1d4ed8;line-height:1.55;}
.ifsc-zone-icon{width:18px;height:18px;flex-shrink:0;margin-top:1px;stroke:#1d4ed8;}
.ifsc-addr-field{position:relative;}
.ifsc-addr-wrap{position:relative;display:flex;align-items:center;border:1.5px solid var(--sc-gray-200);border-radius:var(--sc-radius-sm);background:#fff;transition:all .15s;overflow:hidden;}
.ifsc-addr-wrap:focus-within{border-color:var(--sc-brand);box-shadow:0 0 0 3px var(--sc-brand-glow);}
.ifsc-addr-pin{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--sc-gray-400);pointer-events:none;flex-shrink:0;z-index:2;}
.ifsc-addr-input{width:100%;padding:13px 13px 13px 40px;border:none;font-size:14px;font-family:var(--sc-font);color:var(--sc-gray-900)!important;-webkit-text-fill-color:var(--sc-gray-900)!important;background:#fff!important;outline:none;-webkit-appearance:none;color-scheme:light;}
.ifsc-addr-input:-webkit-autofill,.ifsc-addr-input:-webkit-autofill:hover,.ifsc-addr-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--sc-gray-900)!important;box-shadow:0 0 0 1000px #fff inset!important;transition:background-color 9999s ease-out 0s!important;}
.ifsc-addr-input::placeholder{color:var(--sc-gray-400);}
.ifsc-addr-clear-wrap{padding-right:8px;}
.ifsc-addr-clear{background:none;border:none;cursor:pointer;color:var(--sc-gray-400);font-size:16px;padding:4px 6px;border-radius:4px;display:flex;align-items:center;transition:color .12s;-webkit-tap-highlight-color:transparent;}
.ifsc-addr-clear:hover{color:var(--sc-red);background:var(--sc-red-lite);}
.ifsc-sugg{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1.5px solid var(--sc-gray-200);border-radius:var(--sc-radius-sm);box-shadow:var(--sc-shadow-lg);z-index:9999;max-height:280px;overflow-y:auto;-webkit-overflow-scrolling:touch;display:none;}
.ifsc-sugg.is-open{display:block;animation:sc-step-in .16s ease;}
.ifsc-sugg-item{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;cursor:pointer;border-bottom:1px solid var(--sc-gray-100);transition:background .12s;-webkit-tap-highlight-color:transparent;}
.ifsc-sugg-item:last-child{border-bottom:none;}
.ifsc-sugg-item:hover{background:var(--sc-gray-50);}
.ifsc-sugg-pin{width:17px;height:17px;stroke:var(--sc-brand);flex-shrink:0;margin-top:1px;}
.ifsc-sugg-body{flex:1;min-width:0;}
.ifsc-sugg-name{font-size:13px;font-weight:600;color:var(--sc-gray-900);word-break:break-word;line-height:1.4;}
.ifsc-sugg-sub{font-size:11px;color:var(--sc-gray-500);margin-top:2px;line-height:1.35;}
.ifsc-sugg-loading{padding:12px 14px;font-size:12px;font-weight:700;color:var(--sc-brand);display:flex;align-items:center;gap:8px;}
.ifsc-sugg-badge{display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;border-radius:99px;margin-top:4px;}
.sc-in-zone{background:var(--sc-green-lite);color:#065f46;}
.sc-out-zone{background:var(--sc-amber-lite);color:#78350f;}
.ifsc-addr-selected{display:flex;align-items:center;gap:10px;padding:13px 15px;background:var(--sc-green-lite);border:1.5px solid #a7f3d0;border-radius:var(--sc-radius-sm);margin-top:8px;font-size:13px;font-weight:600;color:#065f46;}
.ifsc-addr-selected[hidden]{display:none;}
.ifsc-addr-change{margin-left:auto;background:none;border:none;cursor:pointer;color:#065f46;font-size:12px;font-weight:700;padding:3px 8px;border-radius:4px;font-family:var(--sc-font);text-decoration:underline;flex-shrink:0;}
.ifsc-out-zone-warn{padding:11px 14px;background:var(--sc-amber-lite);border:1.5px solid #fde68a;border-radius:var(--sc-radius-sm);font-size:13px;color:#78350f;margin-top:8px;line-height:1.5;}
.ifsc-out-zone-warn[hidden]{display:none;}
.ifsc-confirm-bar{padding:20px 24px;background:linear-gradient(to bottom,var(--sc-gray-50),#fff);border-top:1px solid var(--sc-gray-200);}
.ifsc-confirm-bar[hidden]{display:none;}
.ifsc-confirm-card{background:#fff;border:1.5px solid var(--sc-brand);border-radius:var(--sc-radius-sm);padding:15px 17px;margin-bottom:14px;font-size:14px;color:var(--sc-gray-700);line-height:1.75;}
.ifsc-confirm-card strong{color:var(--sc-gray-900);}
.ifsc-confirm-btn{width:100%;padding:15px;background:linear-gradient(135deg,var(--sc-green),#047857);color:#fff;border:none;border-radius:var(--sc-radius-sm);font-size:15px;font-weight:700;font-family:var(--sc-font);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .18s;box-shadow:0 6px 22px rgba(5,150,105,.3);-webkit-tap-highlight-color:transparent;}
.ifsc-confirm-btn:hover:not(:disabled){background:linear-gradient(135deg,#047857,#065f46);transform:translateY(-1px);box-shadow:0 10px 30px rgba(5,150,105,.4);}
.ifsc-confirm-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none;}
@keyframes sc-btn-spin{to{transform:rotate(360deg);}}
.ifsc-btn-spinner{width:16px;height:16px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:sc-btn-spin .6s linear infinite;flex-shrink:0;}
.ifsc-confirm-err{margin-top:10px;font-size:13px;font-weight:600;color:var(--sc-red);text-align:center;min-height:18px;}
.ifsc-booked-wrap{padding:36px 24px;text-align:center;animation:sc-step-in .3s ease;}
.ifsc-booked-wrap[hidden]{display:none;}
.ifsc-booked-ico{font-size:52px;display:block;margin-bottom:14px;}
.ifsc-booked-title{font-size:22px;font-weight:800;color:var(--sc-gray-900);letter-spacing:-.3px;margin-bottom:14px;}
.ifsc-booked-detail{background:var(--sc-green-lite);border:1.5px solid #a7f3d0;border-radius:var(--sc-radius-sm);padding:15px 20px;font-size:14px;color:#065f46;font-weight:600;line-height:1.75;max-width:440px;margin:0 auto 14px;}
.ifsc-booked-sms{font-size:13px;color:var(--sc-gray-500);}
.ifsc-loading{display:flex;align-items:center;justify-content:center;padding:28px;gap:10px;color:var(--sc-gray-500);font-size:13px;}
.ifsc-spinner{width:22px;height:22px;border:3px solid var(--sc-brand-lite);border-top-color:var(--sc-brand);border-radius:50%;animation:sc-spin .7s linear infinite;flex-shrink:0;}
.tp-square-note{text-align:center;font-size:12px;color:var(--sc-gray-400);margin-top:10px;}
@media(max-width:500px){
  .ifsc-hdr-inner{padding:18px 16px 16px;}.ifsc-hdr-title{font-size:16px;}
  .ifsc-step{padding:18px 16px;}.ifsc-slots{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));}
  .ifsc-slot{min-height:56px;padding:10px 8px;}.ifsc-cal-days{gap:3px;}
}

/* Current customer widget markup */
.ifsc-header{position:relative;overflow:hidden;background:linear-gradient(128deg,#020617 0%,#1e3a8a 42%,#0d9488 88%,#134e4a 100%);}
.ifsc-header::before{content:'';position:absolute;inset:auto -70px -90px auto;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.1);}
.ifsc-header-glow{position:absolute;inset:-40% -20% auto -30%;height:85%;background:radial-gradient(ellipse 70% 55% at 50% 0%,rgba(255,255,255,.22) 0%,transparent 65%);pointer-events:none;z-index:0;}
.ifsc-header-inner{position:relative;z-index:1;display:flex;align-items:center;gap:16px;padding:26px 24px 24px;}
.ifsc-header-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.06));display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 12px 28px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.18);}
.ifsc-header-icon svg{stroke:#fff;color:#fff;opacity:.95;}
.ifsc-header-kicker{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-bottom:6px;}
.ifsc-header-title{font-size:21px;font-weight:850;color:#fff;letter-spacing:-.35px;line-height:1.12;}
.ifsc-header-sub{font-size:13px;color:rgba(255,255,255,.82);margin-top:6px;line-height:1.45;max-width:36em;}
.ifsc-addr-card{margin-top:4px;margin-bottom:4px;padding:18px 18px 16px;border-radius:16px;border:1px solid rgba(24,96,240,.12);background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);box-shadow:0 14px 36px rgba(15,23,42,.06),inset 0 1px 0 #fff;}
.ifsc-addr-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px;}
.ifsc-addr-label{font-size:14px;font-weight:800;color:var(--sc-gray-900);letter-spacing:-.2px;cursor:pointer;}
.ifsc-addr-pill{font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:99px;background:linear-gradient(135deg,#e0f2fe,#dbeafe);color:#1d4ed8;border:1px solid #bfdbfe;white-space:nowrap;}
.ifsc-addr-hint{font-size:12px;color:var(--sc-gray-500);line-height:1.55;margin:0 0 14px;}
.ifsc-addr-hint strong{color:var(--sc-gray-700);font-weight:700;}
.ifsc-addr-kbd-hint{display:block;margin-top:6px;font-size:11px;font-weight:650;color:var(--sc-gray-400);letter-spacing:.01em;}
.ifsc-cal-month{font-size:16px;font-weight:800;color:var(--sc-gray-900);letter-spacing:0;}
.ifsc-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px;}
.ifsc-dot-avail{background:var(--sc-green);}
.ifsc-dot-limited{background:var(--sc-amber);}
.ifsc-dot-full{background:var(--sc-red);}
.ifsc-dot-closed{background:var(--sc-gray-400);}
.ifsc-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));gap:10px;margin-bottom:14px;}
.ifsc-addr-input-wrap{position:relative;display:flex;align-items:center;border:1.5px solid var(--sc-gray-200);border-radius:14px;background:#fff!important;transition:border-color .18s,box-shadow .18s,transform .18s;overflow:visible;box-shadow:0 2px 8px rgba(15,23,42,.05),inset 0 1px 0 rgba(255,255,255,.9);color-scheme:light;isolation:isolate;}
.ifsc-addr-input-wrap::before{content:'';position:absolute;inset:0;background:#fff;border-radius:13px;z-index:0;}
.ifsc-addr-input-wrap:focus-within{border-color:#93c5fd;box-shadow:0 0 0 4px rgba(59,130,246,.18),0 10px 28px rgba(24,96,240,.12);}
.ifsc-addr-input,.ifsc-addr-clear-wrap{position:relative;z-index:1;}
.ifsc-addr-input{min-height:50px;}
.ifsc-suggestions{position:absolute;left:0;right:0;top:calc(100% + 10px);background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 22px 50px rgba(15,23,42,.12),0 0 0 1px rgba(255,255,255,.6) inset;z-index:9999;max-height:min(52vh,320px);overflow-y:auto;-webkit-overflow-scrolling:touch;animation:ifsc-sugg-in .2s ease;}
.ifsc-suggestions[hidden]{display:none!important;}
@keyframes ifsc-sugg-in{from{opacity:0;transform:translateY(-6px) scale(.985);}to{opacity:1;transform:none;}}
.ifsc-sugg-item{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;cursor:pointer;border-bottom:1px solid #f1f5f9;transition:background .14s,box-shadow .14s;-webkit-tap-highlight-color:transparent;}
.ifsc-sugg-item:hover,.ifsc-sugg-item:focus{background:linear-gradient(90deg,#f8fafc,#f0f9ff);outline:none;box-shadow:inset 3px 0 0 #1860f0;}
.ifsc-sugg-item.ifsc-sugg-keyfocus{background:linear-gradient(90deg,#eff6ff,#eef2ff);outline:none;box-shadow:inset 4px 0 0 #1860f0,0 1px 0 rgba(24,96,240,.06);}
.ifsc-sugg-item.ifsc-sugg-keyfocus .ifsc-sugg-ico{background:linear-gradient(145deg,#dbeafe,#bfdbfe);}
.ifsc-sugg-manual{border-bottom:1px dashed #e2e8f0;}
.ifsc-sugg-ico{width:36px;height:36px;border-radius:11px;background:linear-gradient(145deg,#f1f5f9,#e2e8f0);display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1;flex-shrink:0;margin-top:1px;box-shadow:inset 0 1px 0 #fff;}
.ifsc-sugg-item:hover .ifsc-sugg-ico{background:linear-gradient(145deg,#e0f2fe,#dbeafe);}
.ifsc-sugg-loading{padding:14px 16px;font-size:12px;font-weight:700;color:var(--sc-brand);display:flex;align-items:center;gap:10px;border-top:1px solid #f1f5f9;}
.pac-container{z-index:100000!important;border:1px solid #dbe7f5;border-radius:14px;box-shadow:0 18px 44px rgba(15,23,42,.14);padding:6px;background:#fff;font-family:var(--sc-font);}
.pac-item{padding:10px 12px;font-size:13px;color:#0f172a;border-top:1px solid #eef4fb;}
.pac-item:first-child{border-top:none;}
.pac-item:hover,.pac-item-selected{background:#eef5ff;}
.pac-icon{display:none;}
.ifsc-sugg-badge.ifsc-badge-in{background:var(--sc-green-lite);color:#065f46;}
.ifsc-sugg-badge.ifsc-badge-out{background:var(--sc-amber-lite);color:#78350f;}
.ifsc-addr-confirmed{display:flex;align-items:flex-start;gap:10px;padding:14px 15px;background:linear-gradient(135deg,#ecfdf5,#f0fdfa);border:1.5px solid #a7f3d0;border-radius:12px;margin-top:10px;font-size:13px;font-weight:650;color:#065f46;line-height:1.45;}
.ifsc-addr-confirmed[hidden]{display:none!important;}
.ifsc-addr-confirmed span{min-width:0;word-break:break-word;flex:1;}
.ifsc-panel .ifsc-confirm-card{background:linear-gradient(180deg,#ffffff 0%,#f8fafc 55%,#f1f5f9 100%);border:1px solid #e2e8f0;border-radius:16px;padding:6px 4px;margin-bottom:16px;box-shadow:0 16px 40px rgba(15,23,42,.07),inset 0 1px 0 #fff;}
.ifsc-confirm-row{display:grid;grid-template-columns:118px 1fr;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(226,232,240,.85);}
.ifsc-confirm-row:last-child{border-bottom:none;}
.ifsc-cr-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.65px;color:var(--sc-gray-500);}
.ifsc-cr-val{font-size:14px;font-weight:700;color:var(--sc-gray-900);line-height:1.45;word-break:break-word;}
.ifsc-panel .ifsc-confirm-btn{border-radius:14px;padding:16px;font-size:15px;letter-spacing:-.2px;background:linear-gradient(135deg,#059669,#047857);box-shadow:0 10px 32px rgba(5,150,105,.32),inset 0 1px 0 rgba(255,255,255,.2);}
.ifsc-panel .ifsc-confirm-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 38px rgba(5,150,105,.4),inset 0 1px 0 rgba(255,255,255,.25);}

@media(max-width:560px){
  .ifsc-header-inner{padding:20px 18px;}
  .ifsc-header-title{font-size:18px;}
  .ifsc-slots-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ifsc-confirm-row{grid-template-columns:1fr;gap:3px;}
}

/* ═══ ADMIN SCHEDULING PAGE ════════════════════════════════════════ */
.ifix-sched-admin{max-width:1320px;font-family:var(--sc-font);padding:8px 8px 28px;color:#0f172a!important;color-scheme:light;}
.ifix-sched-admin *{color-scheme:light;}
.ifix-sched-admin input,.ifix-sched-admin select,.ifix-sched-admin textarea{background:#fff!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;border-color:#dbe7f5!important;}
.isa-kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:0 0 18px;}
.isa-kpi-card{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid #dbe7f5;border-radius:16px;padding:18px 18px;box-shadow:0 12px 34px rgba(15,23,42,.07);}
.isa-kpi-label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:#64748b;margin-bottom:8px;}
.isa-kpi-value{display:block;font-size:28px;line-height:1;font-weight:900;color:#0f172a;letter-spacing:-.5px;margin-bottom:6px;}
.isa-kpi-meta{display:block;font-size:12px;color:#64748b;line-height:1.4;}
.isa-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:14px;padding:18px 20px;border:1px solid #dce7f5;border-radius:20px;background:linear-gradient(135deg,#ffffff 0%,#f6f9ff 60%,#eef6ff 100%);box-shadow:0 18px 46px rgba(15,23,42,.07);}
.isa-page-title{font-size:28px;font-weight:900;color:#0f172a;margin:0 0 5px;letter-spacing:-.7px;line-height:1.1;}
.isa-page-sub{font-size:14px;color:#64748b;margin:0;line-height:1.6;}
.isa-mode-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:99px;font-size:12px;font-weight:700;}
.mode-native{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0;}
.mode-square{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;}
.isa-layout{display:grid;grid-template-columns:minmax(360px,430px) minmax(0,1fr);gap:22px;align-items:start;}
@media(max-width:1060px){.isa-layout{grid-template-columns:1fr;}}
.isa-col-left,.isa-col-right{display:flex;flex-direction:column;gap:14px;}
.isa-card{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);border:1px solid #deebf7;border-radius:20px;box-shadow:0 18px 44px rgba(15,23,42,.06);padding:22px 24px;transition:transform .16s,box-shadow .2s,border-color .2s;}
.isa-card:hover{box-shadow:0 22px 52px rgba(15,23,42,.09);border-color:#cfe0f4;}
.isa-card-title{font-size:15px;font-weight:800;color:#0f172a;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #edf3f9;letter-spacing:-.2px;}
.isa-card-head-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #edf3f9;flex-wrap:wrap;gap:8px;}
.isa-card-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.isa-input-search{min-width:260px;}
.isa-count-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:700;background:#e8f2ff;color:#1860f0;}
.isa-mode-group{display:flex;flex-direction:column;gap:10px;}
.isa-mode-opt{display:flex;align-items:flex-start;gap:14px;padding:17px;border:1px solid #d9e6f3;border-radius:14px;cursor:pointer;transition:all .15s;position:relative;background:#fff;}
.isa-mode-opt:hover{border-color:#1860f0;background:#e8f2ff;}
.isa-mode-opt.is-sel{border-color:#1860f0;background:linear-gradient(135deg,#eef5ff,#f5f3ff);box-shadow:0 0 0 4px rgba(24,96,240,.08),0 18px 30px rgba(24,96,240,.08);}
.isa-mode-ico{font-size:24px;flex-shrink:0;margin-top:2px;}
.isa-mode-name{font-size:14px;font-weight:700;color:#0f172a;display:block;margin-bottom:3px;}
.isa-mode-desc{font-size:12px;color:#64748b;line-height:1.5;}
.isa-mode-radio{position:absolute;top:16px;right:16px;width:16px;height:16px;accent-color:#1860f0;cursor:pointer;}
.isa-rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin-bottom:16px;}
@media(max-width:560px){.isa-rules-grid{grid-template-columns:1fr;}}
.isa-field{display:flex;flex-direction:column;gap:5px;}
.isa-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#64748b;}
.isa-hint{font-size:11px;color:#94a3b8;margin:0;}
.isa-hint-inline{font-size:11px;color:#94a3b8;font-weight:400;text-transform:none;letter-spacing:0;}
.isa-input{border:1px solid #d4e0ee;border-radius:12px;padding:11px 13px;font-size:13px;font-family:var(--sc-font);color:#0f172a;background:#fff;width:100%;transition:all .15s;box-shadow:inset 0 1px 2px rgba(15,23,42,.03);}
.isa-input:focus{border-color:#1860f0;outline:none;box-shadow:0 0 0 4px rgba(24,96,240,.1);}
.isa-textarea{resize:vertical;min-height:76px;}
.isa-toggle{display:inline-flex;cursor:pointer;}
.isa-toggle input{position:absolute;opacity:0;width:0;height:0;}
.isa-toggle-knob{position:relative;display:block;width:42px;height:23px;border-radius:12px;background:#cbd5e1;transition:background .2s;}
.isa-toggle-knob::after{content:'';position:absolute;top:3px;left:3px;width:17px;height:17px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:transform .2s;}
.isa-toggle input:checked+.isa-toggle-knob{background:linear-gradient(135deg,#10b981,#059669);}
.isa-toggle input:checked+.isa-toggle-knob::after{transform:translateX(19px);}
.isa-form-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.isa-msg{font-size:12px;font-weight:700;min-height:18px;}
.isa-msg.ok{color:#059669;}.isa-msg.err{color:#dc2626;}
.isa-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:11px;font-size:13px;font-weight:700;font-family:var(--sc-font);cursor:pointer;border:1px solid transparent;transition:all .15s;white-space:nowrap;-webkit-tap-highlight-color:transparent;}
.isa-btn-primary{background:linear-gradient(135deg,#1860f0,#4f46e5);color:#fff;border-color:#1860f0;box-shadow:0 4px 14px rgba(24,96,240,.28);}
.isa-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(24,96,240,.38);}
.isa-btn:not(.isa-btn-primary):not(.isa-btn-danger):not(.isa-btn-icon){background:#fff;color:#334155;border-color:#d9e6f3;box-shadow:0 8px 18px rgba(15,23,42,.04);}
.isa-btn:not(.isa-btn-primary):not(.isa-btn-danger):not(.isa-btn-icon):hover{background:#f8fafc;border-color:#cbd5e1;}
.isa-btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#dc2626;}
.isa-btn-danger:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(220,38,38,.32);}
.isa-btn-icon{width:30px;height:30px;border-radius:50%;background:#fff;border:1.5px solid #e2e8f0;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:all .15s;padding:0;}
.isa-btn-icon:hover{background:#e8f2ff;border-color:#1860f0;color:#1860f0;}
.isa-btn-icon:disabled{opacity:.38;cursor:not-allowed;}
.isa-btn-icon:disabled:hover{background:#fff;border-color:#e2e8f0;color:inherit;}
.isa-btn-sm{padding:5px 12px;font-size:12px;}.isa-btn-xs{padding:4px 10px;font-size:11px;border-radius:6px;}
.isa-week-grid{display:flex;flex-direction:column;}
.isa-day-row{display:grid;grid-template-columns:48px minmax(120px,1fr) auto;grid-template-areas:"toggle name badge" "toggle controls slot";align-items:center;gap:10px 12px;padding:14px 14px;margin-bottom:10px;border:1px solid #e6eef8;border-radius:16px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);box-shadow:0 10px 24px rgba(15,23,42,.04);transition:transform .12s,box-shadow .12s,border-color .12s;}
.isa-day-row:last-child{margin-bottom:0;}
.isa-day-row.is-off{opacity:.62;background:#f8fafc;}
.isa-day-row:hover{border-color:#cfe0f4;box-shadow:0 14px 32px rgba(15,23,42,.06);transform:translateY(-1px);}
.isa-day-row .isa-toggle{grid-area:toggle;}
.isa-day-name{grid-area:name;font-size:14px;font-weight:700;color:#0f172a;}
.isa-day-times{grid-area:controls;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;min-width:260px;}
.isa-time{border:1px solid #d4e0ee;border-radius:10px;padding:9px 34px 9px 10px;font-size:12px;font-family:var(--sc-font);color:#0f172a;background:#fff;width:100%;min-width:0;transition:all .15s;box-shadow:inset 0 1px 2px rgba(15,23,42,.03);}
.isa-time:focus{border-color:#1860f0;outline:none;box-shadow:0 0 0 4px rgba(24,96,240,.1);}
.isa-time-arrow{color:#94a3b8;font-size:11px;}
.isa-slot-sel{grid-area:slot;border:1px solid #d4e0ee;border-radius:10px;padding:9px 34px 9px 10px;font-size:12px;font-family:var(--sc-font);color:#334155;background:#fff;cursor:pointer;width:132px;max-width:100%;box-shadow:inset 0 1px 2px rgba(15,23,42,.03);}
.isa-time,.isa-slot-sel{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;}
.isa-badge-on{background:#d1fae5;color:#065f46;border-radius:99px;padding:2px 8px;font-size:10px;font-weight:700;}
.isa-badge-off{background:#f1f5f9;color:#64748b;border-radius:99px;padding:2px 8px;font-size:10px;font-weight:700;}
.isa-day-badge{grid-area:badge;justify-self:end;}
@media(max-width:760px){.isa-day-row{grid-template-columns:48px minmax(0,1fr);grid-template-areas:"toggle name" "controls controls" "slot slot";}.isa-day-times{min-width:0;}.isa-slot-sel{width:100%;max-width:220px;}.isa-day-badge{display:none;}}
@media(max-width:540px){.isa-day-row{grid-template-columns:44px minmax(0,1fr);}.isa-day-times{grid-template-columns:1fr;}.isa-time-arrow{display:none;}.isa-slot-sel{width:100%;max-width:none;}.isa-day-badge{display:none;}}
/* Today's appointments */
.isa-today-list{display:flex;flex-direction:column;gap:10px;}
.isa-apt-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:14px 16px;transition:all .15s;}
.isa-apt-card:hover{border-color:#1860f0;background:#e8f2ff;}
.isa-apt-time{font-size:12px;font-weight:700;color:#1860f0;margin-bottom:5px;}
.isa-apt-name{font-size:14px;font-weight:700;color:#0f172a;}
.isa-apt-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px;font-size:12px;color:#64748b;}
.isa-apt-addr{font-size:12px;color:#64748b;margin-top:4px;word-break:break-word;}
.isa-apt-actions{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap;}
/* Calendar */
.isa-cal-wrap{}
.isa-cal-nav{display:flex;align-items:center;gap:8px;}
.isa-cal-month-label{font-size:14px;font-weight:700;color:#0f172a;min-width:140px;text-align:center;}
.isa-cal-grid-inner{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:12px;user-select:none;}
.isa-cal-dh{text-align:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:#64748b;padding:4px 0;}
.isa-cal-d{position:relative;width:100%;padding-bottom:100%;border-radius:8px;cursor:pointer;transition:all .15s;border:1.5px solid transparent;-webkit-tap-highlight-color:transparent;}
.isa-cal-d-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;font-weight:600;gap:2px;}
.isa-cal-d.ac-empty{cursor:default;pointer-events:none;}
.isa-cal-d.ac-today{border-color:#1860f0!important;font-weight:800;}
.isa-cal-d.ac-blocked{background:#fee2e2!important;color:#991b1b!important;border-color:#ef4444!important;box-shadow:inset 0 0 0 1px rgba(239,68,68,.25);}
.isa-cal-d.ac-blocked:hover{background:#fecaca!important;}
.isa-cal-d.ac-full{background:#fee2e2;color:#991b1b;border-color:#fecaca;}.isa-cal-d.ac-full:hover{background:#fecaca;}
.isa-cal-d.ac-closed{background:#f1f5f9;color:#94a3b8;cursor:pointer;pointer-events:auto;}
.isa-cal-d.ac-open{background:#d1fae5;color:#065f46;}.isa-cal-d.ac-open:hover{background:#a7f3d0;border-color:#10b981;}
.isa-cal-d.is-selected{box-shadow:0 0 0 3px rgba(24,96,240,.18),0 10px 24px rgba(24,96,240,.18);border-color:#1860f0;transform:translateY(-1px);}
.isa-cal-d.ac-has-apts::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:5px;height:5px;border-radius:50%;background:#1860f0;}
.isa-cal-day-num{font-size:13px;line-height:1;}.isa-cal-day-cnt{font-size:9px;opacity:.75;}
.isa-day-view{margin-top:14px;padding:18px;border:1px solid #deebf7;border-radius:18px;background:linear-gradient(180deg,#fbfdff 0%,#fff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.6);}
.isa-day-view-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
.isa-day-view-label{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:#64748b;margin-bottom:4px;}
.isa-day-view-title{font-size:15px;font-weight:800;color:#0f172a;line-height:1.3;}
.isa-day-view-count{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:#eff6ff;color:#1860f0;font-size:11px;font-weight:800;}
.isa-day-appts{display:flex;flex-direction:column;gap:10px;}
.isa-day-apt{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 15px;border:1px solid #e3eef8;border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.05);}
.isa-day-apt-main{min-width:0;flex:1;}
.isa-day-apt-time{font-size:12px;font-weight:800;color:#1860f0;margin-bottom:4px;}
.isa-day-apt-name{font-size:14px;font-weight:800;color:#0f172a;line-height:1.3;}
.isa-day-apt-meta{font-size:12px;color:#64748b;line-height:1.5;margin-top:3px;word-break:break-word;}
.isa-status-pill{display:inline-flex;align-items:center;width:max-content;margin-top:5px;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border:1px solid transparent;}
.isa-status-pending{background:#fffbeb;color:#92400e;border-color:#fde68a;}
.isa-status-confirmed{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe;}
.isa-status-completed{background:#ecfdf5;color:#047857;border-color:#a7f3d0;}
.isa-btn-confirm{background:#059669!important;border-color:#059669!important;color:#fff!important;box-shadow:0 10px 20px rgba(5,150,105,.18);}
.isa-day-apt-actions{display:flex;gap:6px;flex-wrap:wrap;flex-shrink:0;}
.isa-block-form{margin-top:14px;padding:15px;background:#fef3c7;border:1.5px solid #fde68a;border-radius:9px;}
.isa-block-title{font-size:13px;font-weight:700;color:#92400e;margin-bottom:10px;}
.isa-cal-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:11px;color:#64748b;align-items:center;}
.isa-leg{display:flex;align-items:center;gap:5px;}.isa-dot{width:8px;height:8px;border-radius:50%;display:inline-block;}
.dot-avail{background:#10b981;}.dot-full{background:#dc2626;}.dot-blocked{background:#dc2626;}.dot-off{background:#94a3b8;}
/* Month appointments — NEW premium card style */
#isa-month-apts{max-height:420px;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:10px;padding:2px 0;}
.isa-month-apt-card{display:flex;align-items:center;gap:14px;padding:15px 16px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border:1px solid #e3eef8;border-radius:16px;transition:all .15s;box-shadow:0 10px 24px rgba(15,23,42,.05);}
.isa-month-apt-card:hover{border-color:#cfe0f4;background:#f5f9ff;box-shadow:0 14px 32px rgba(15,23,42,.07);}
.isa-mac-time{flex-shrink:0;min-width:52px;text-align:center;}
.isa-mac-date{font-size:12px;font-weight:800;color:#1860f0;line-height:1.2;}
.isa-mac-clock{font-size:11px;color:#64748b;margin-top:2px;}
.isa-mac-body{flex:1;min-width:0;}
.isa-mac-name{font-size:13px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.isa-mac-dev{font-size:11px;color:#64748b;margin-top:2px;}
.isa-mac-addr{font-size:11px;color:#64748b;margin-top:1px;word-break:break-word;}
.isa-mac-actions{display:flex;gap:5px;flex-shrink:0;}
/* Empty / Loading */
.isa-empty{display:flex;flex-direction:column;align-items:center;padding:28px 20px;text-align:center;color:#64748b;font-size:13px;}
.isa-empty-ico{font-size:34px;margin-bottom:10px;}
.isa-loading{display:flex;justify-content:center;align-items:center;gap:8px;padding:26px;color:#64748b;font-size:13px;}
.isa-spinner{width:18px;height:18px;border:3px solid #e2e8f0;border-top-color:#1860f0;border-radius:50%;animation:sc-spin .7s linear infinite;}


/* Customer scheduling structure */

/* Hide panels — this is the core visibility toggle */
.ifsc-hidden { display: none !important; }

/* Content panels — the actual date/time/address/confirm sections */
.ifsc-panel {
  padding: 24px;
  border-bottom: 1px solid var(--sc-gray-100);
  animation: sc-step-in .22s ease;
}
.ifsc-panel:last-of-type { border-bottom: none; }

/* Step indicator item */
.ifsc-steps .ifsc-step {
  padding: 0;
  border-bottom: none;
  animation: none;
  display: flex;
  align-items: center;
  gap: 7px;
  flex-shrink: 0;
}

/* The step indicator container — horizontal flex row */
.ifsc-steps {
  display: flex;
  align-items: center;
  padding: 14px 24px;
  background: var(--sc-gray-50);
  border-bottom: 1px solid var(--sc-gray-200);
  gap: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Connecting line between step dots */
.ifsc-step-line {
  flex: 1;
  height: 2px;
  background: var(--sc-gray-200);
  margin: 0 8px;
  min-width: 12px;
  border-radius: 99px;
  transition: background .3s;
}

/* Step indicator dot */
.ifsc-steps .ifsc-step-num {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--sc-gray-200);
  color: var(--sc-gray-500);
  font-size: 12px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all .25s;
}
.ifsc-steps .ifsc-step.is-active .ifsc-step-num {
  background: var(--sc-brand);
  color: #fff;
  box-shadow: 0 4px 12px var(--sc-brand-glow);
}
.ifsc-steps .ifsc-step.is-done .ifsc-step-num {
  background: var(--sc-green);
  color: #fff;
}

/* Step label text */
.ifsc-steps .ifsc-step-lbl {
  font-size: 11px;
  font-weight: 600;
  color: var(--sc-gray-400);
  white-space: nowrap;
  transition: color .2s;
}
.ifsc-steps .ifsc-step.is-active .ifsc-step-lbl { color: var(--sc-brand); }
.ifsc-steps .ifsc-step.is-done   .ifsc-step-lbl { color: var(--sc-green); }

/* Panel header */
.ifsc-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
  flex-wrap: wrap;
  gap: 8px;
}
.ifsc-panel-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 700;
  color: var(--sc-gray-900);
}
.ifsc-panel-num {
  width: 26px; height: 26px;
  border-radius: 50%;
  background: var(--sc-brand);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 3px 10px var(--sc-brand-glow);
}

/* Confirm bar (step 4 inside widget) */
.ifsc-confirm-bar {
  padding: 20px 24px;
  background: linear-gradient(to bottom, var(--sc-gray-50), #fff);
  border-top: 1px solid var(--sc-gray-200);
}
.ifsc-confirm-bar[hidden] { display: none; }
.ifsc-confirm-card {
  background: #fff;
  border: 1.5px solid var(--sc-brand);
  border-radius: var(--sc-radius-sm);
  padding: 15px 17px;
  margin-bottom: 14px;
  font-size: 14px;
  color: var(--sc-gray-700);
  line-height: 1.75;
}
.ifsc-confirm-card strong { color: var(--sc-gray-900); }
.ifsc-confirm-btn {
  width: 100%;
  padding: 15px;
  background: linear-gradient(135deg, var(--sc-green), #047857);
  color: #fff;
  border: none;
  border-radius: var(--sc-radius-sm);
  font-size: 15px;
  font-weight: 700;
  font-family: var(--sc-font);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all .18s;
  box-shadow: 0 6px 22px rgba(5,150,105,.3);
  -webkit-tap-highlight-color: transparent;
}
.ifsc-confirm-btn:hover:not(:disabled) {
  background: linear-gradient(135deg, #047857, #065f46);
  transform: translateY(-1px);
}
.ifsc-confirm-btn:disabled { opacity: .6; cursor: not-allowed; transform: none; box-shadow: none; }
.ifsc-confirm-err {
  margin-top: 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--sc-red);
  text-align: center;
  min-height: 18px;
}

/* Success screen inside widget (transitional before step 8) */
.ifsc-success {
  padding: 32px 24px;
  text-align: center;
}
.ifsc-success-icon { width: 64px; height: 64px; margin: 0 auto 14px; }
.ifsc-success-icon svg { width: 64px; height: 64px; display: block; }
@keyframes ifsc-check-circle { to { stroke-dashoffset: 0; } }
@keyframes ifsc-check-tick    { to { stroke-dashoffset: 0; } }
.ifsc-success-circle {
  stroke: var(--sc-green); stroke-width: 2; fill: none;
  stroke-dasharray: 166; stroke-dashoffset: 166;
  animation: ifsc-check-circle .6s ease .1s forwards;
}
.ifsc-success-tick {
  stroke: var(--sc-green); stroke-width: 2.8; fill: none;
  stroke-linecap: round; stroke-linejoin: round;
  stroke-dasharray: 48; stroke-dashoffset: 48;
  animation: ifsc-check-tick .35s ease .75s forwards;
}
.ifsc-success-title { font-size: 20px; font-weight: 800; color: var(--sc-gray-900); margin-bottom: 12px; }
.ifsc-success-detail {
  background: var(--sc-green-lite);
  border: 1.5px solid #a7f3d0;
  border-radius: var(--sc-radius-sm);
  padding: 13px 17px;
  font-size: 14px;
  font-weight: 600;
  color: #065f46;
  line-height: 1.7;
  margin-bottom: 12px;
}
.ifsc-success-sms { font-size: 13px; color: var(--sc-gray-500); }
.ifsc-suc-row { display: flex; align-items: flex-start; gap: 8px; margin-bottom: 4px; }

/* Back button inside scheduling widget */
.ifsc-back-btn {
  background: none;
  border: none;
  color: var(--sc-gray-500);
  font-size: 13px;
  cursor: pointer;
  padding: 8px 0;
  font-family: var(--sc-font);
  display: inline-flex;
  align-items: center;
  gap: 5px;
  transition: color .14s;
  -webkit-tap-highlight-color: transparent;
  margin-top: 6px;
}
.ifsc-back-btn:hover { color: var(--sc-brand); }
.ifsc-skip-addr-btn {
  width: 100%;
  margin-top: 14px;
  padding: 12px 16px;
  border: 1.5px solid var(--sc-brand);
  border-radius: var(--sc-radius-sm);
  background: var(--sc-brand-lite);
  color: var(--sc-brand);
  font-family: var(--sc-font);
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
  transition: all .15s;
}
.ifsc-skip-addr-btn:hover { background: #dbeafe; transform: translateY(-1px); }

@media (max-width: 400px) {
  .ifsc-steps .ifsc-step-lbl { display: none; }
  .ifsc-steps { padding: 12px 16px; }
}
@media(max-width:760px){
  .isa-card-tools{width:100%;}
  .isa-input-search{min-width:0;flex:1;}
  .isa-day-apt{flex-direction:column;}
  .isa-day-apt-actions{width:100%;}
  .isa-head{padding:16px 16px 18px;}
  .isa-page-title{font-size:24px;}
}

/* v12.6.3 aggressive admin refresh: no crushed weekly-hour controls */
.ifix-sched-admin{max-width:100%!important;padding:12px 18px 36px!important;background:#f4f7fb!important;border-radius:0!important;}
.ifix-sched-admin .isa-layout{grid-template-columns:minmax(430px,520px) minmax(720px,1fr)!important;gap:24px!important;align-items:start!important;}
.ifix-sched-admin .isa-card{border-radius:18px!important;padding:22px!important;overflow:visible!important;}
.ifix-sched-admin .isa-week-grid{gap:12px!important;}
.ifix-sched-admin .isa-day-row{display:grid!important;grid-template-columns:52px minmax(120px,1fr) auto!important;grid-template-areas:"toggle name badge" "controls controls controls" "slot slot slot"!important;gap:12px!important;padding:16px!important;overflow:visible!important;}
.ifix-sched-admin .isa-day-times{grid-area:controls!important;display:grid!important;grid-template-columns:minmax(150px,1fr) 22px minmax(150px,1fr)!important;gap:10px!important;min-width:0!important;width:100%!important;}
.ifix-sched-admin .isa-time,.ifix-sched-admin .isa-slot-sel{height:44px!important;min-height:44px!important;width:100%!important;min-width:0!important;font-size:13px!important;line-height:1.2!important;color:#0f172a!important;background-color:#fff!important;opacity:1!important;}
.ifix-sched-admin .isa-slot-sel{grid-area:slot!important;max-width:none!important;}
.ifix-sched-admin .isa-day-badge{align-self:center!important;}
.ifix-sched-admin .isa-cal-grid-inner{gap:8px!important;}
.ifix-sched-admin .isa-cal-d{min-height:78px!important;padding-bottom:0!important;border-radius:12px!important;}
.ifix-sched-admin .isa-cal-d-inner{position:static!important;min-height:78px!important;padding:10px 6px!important;}
.ifix-sched-admin #isa-month-apts{max-height:none!important;min-height:260px!important;}
.ifix-sched-admin .isa-card-tools{justify-content:flex-end!important;}
.ifix-sched-admin .isa-input-search{min-width:min(360px,100%)!important;}
@media(max-width:1280px){
  .ifix-sched-admin .isa-layout{grid-template-columns:1fr!important;}
}
@media(max-width:620px){
  .ifix-sched-admin{padding:8px!important;}
  .ifix-sched-admin .isa-day-row{grid-template-columns:48px minmax(0,1fr)!important;grid-template-areas:"toggle name" "controls controls" "slot slot"!important;}
  .ifix-sched-admin .isa-day-times{grid-template-columns:1fr!important;}
  .ifix-sched-admin .isa-time-arrow{display:none!important;}
}

@media(max-width:640px){
  #techpro-booking-widget .ifsc-wrap,
  #techpro-booking-widget .ifsc-wrap *,
  #techpro-booking-widget .ifsc-panel,
  #techpro-booking-widget .ifsc-panel *,
  #techpro-booking-widget .ifsc-confirm-card,
  #techpro-booking-widget .ifsc-confirm-card *{
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
  #techpro-booking-widget .ifsc-header-inner{padding:22px 18px!important;align-items:flex-start!important;}
  #techpro-booking-widget .ifsc-header-title{font-size:22px!important;line-height:1.12!important;}
  #techpro-booking-widget .ifsc-header-sub{font-size:14px!important;max-width:100%!important;}
  #techpro-booking-widget .ifsc-steps{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:8px!important;
    padding:12px 10px!important;
    overflow:hidden!important;
  }
  #techpro-booking-widget .ifsc-steps .ifsc-step{
    min-width:0!important;
    width:100%!important;
    gap:6px!important;
    justify-content:center!important;
  }
  #techpro-booking-widget .ifsc-steps .ifsc-step-lbl{
    display:none!important;
  }
  #techpro-booking-widget .ifsc-step-line{
    display:none!important;
  }
  #techpro-booking-widget .ifsc-panel{
    padding:22px 16px!important;
    overflow:hidden!important;
  }
  #techpro-booking-widget .ifsc-panel .ifsc-confirm-card,
  #techpro-booking-widget .ifsc-addr-card{
    max-width:100%!important;
    width:100%!important;
    overflow:hidden!important;
  }
  #techpro-booking-widget .ifsc-confirm-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    padding:14px 12px!important;
  }
  #techpro-booking-widget .ifsc-confirm-btn{
    width:100%!important;
    white-space:normal!important;
    text-align:center!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  #techpro-booking-widget .ifsc-back-btn{
    white-space:normal!important;
  }
}

/* Defeat site theme html.dark form overrides inside the scheduling widgets. */
html.dark .ifsc-wrap,
html.dark .ifsc-wrap *,
html.dark .ifix-sched-admin,
html.dark .ifix-sched-admin *{color-scheme:light!important;}
html.dark .ifsc-wrap{background:#fff!important;color:#0f172a!important;border-color:#e2e8f0!important;}
html.dark .ifsc-wrap p,
html.dark .ifsc-wrap span,
html.dark .ifsc-wrap div,
html.dark .ifsc-panel-title,
html.dark .ifsc-cal-month,
html.dark .ifsc-slot-start,
html.dark .ifsc-cr-val{color:#0f172a!important;}
html.dark .ifsc-header *,
html.dark .ifsc-confirm-btn,
html.dark .ifsc-confirm-btn *,
html.dark .ifsc-day-selected *,
html.dark .ifsc-slot-selected *{color:#fff!important;}
html.dark .ifsc-addr-hint,
html.dark .ifsc-addr-kbd-hint,
html.dark .ifsc-cal-legend,
html.dark .ifsc-slot-end,
html.dark .ifsc-cr-label,
html.dark .ifsc-sugg-sub{color:#64748b!important;}
html.dark .ifsc-addr-input,
html.dark .ifsc-wrap input,
html.dark .ifix-sched-admin input,
html.dark .ifix-sched-admin select,
html.dark .ifix-sched-admin textarea{background:#fff!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;border-color:#dbe7f5!important;}
html.dark .ifsc-suggestions,
html.dark .ifsc-sugg-item,
html.dark .ifsc-addr-card,
html.dark .ifsc-panel .ifsc-confirm-card{background:#fff!important;color:#0f172a!important;}

/* v12.6.4 customer schedule uses the same dark surface as the wizard. */
.ifsc-day-limited,.ifsc-day-limited:hover,.ifsc-day-limited:focus{background:var(--sc-green-lite)!important;color:#065f46!important;border-color:#a7f3d0!important;}
.ifsc-dot-limited,.ifsc-dot-amber,.sc-dot-limited{background:var(--sc-green)!important;}
html.dark #techpro-booking-widget .ifsc-wrap,
html.dark .ifsc-wrap{background:#07111f!important;color:#f8fafc!important;border-color:#334155!important;color-scheme:dark!important;}
html.dark #techpro-booking-widget .ifsc-wrap *,
html.dark .ifsc-wrap *{color-scheme:dark!important;}
html.dark #techpro-booking-widget .ifsc-panel,
html.dark .ifsc-panel,
html.dark #techpro-booking-widget .ifsc-steps,
html.dark .ifsc-steps{background:#07111f!important;border-color:#334155!important;color:#f8fafc!important;}
html.dark #techpro-booking-widget .ifsc-header,
html.dark .ifsc-header{background:linear-gradient(128deg,#0f172a 0%,#111827 58%,#0f172a 100%)!important;}
html.dark #techpro-booking-widget .ifsc-header *,
html.dark .ifsc-header *,
html.dark #techpro-booking-widget .ifsc-header-title,
html.dark #techpro-booking-widget .ifsc-header-sub,
html.dark #techpro-booking-widget .ifsc-header-kicker{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html.dark #techpro-booking-widget .ifsc-panel-title,
html.dark #techpro-booking-widget .ifsc-cal-month,
html.dark #techpro-booking-widget .ifsc-day-num,
html.dark #techpro-booking-widget .ifsc-slot-start,
html.dark #techpro-booking-widget .ifsc-cr-val,
html.dark #techpro-booking-widget .ifsc-addr-label,
html.dark #techpro-booking-widget .ifsc-sugg-name{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html.dark #techpro-booking-widget .ifsc-cal-dow,
html.dark #techpro-booking-widget .ifsc-cal-legend,
html.dark #techpro-booking-widget .ifsc-slot-end,
html.dark #techpro-booking-widget .ifsc-slot-sep,
html.dark #techpro-booking-widget .ifsc-back-btn,
html.dark #techpro-booking-widget .ifsc-addr-hint,
html.dark #techpro-booking-widget .ifsc-addr-kbd-hint,
html.dark #techpro-booking-widget .ifsc-cr-label,
html.dark #techpro-booking-widget .ifsc-sugg-sub{color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;}
html.dark #techpro-booking-widget .ifsc-day-past,
html.dark #techpro-booking-widget .ifsc-day-unavailable,
html.dark #techpro-booking-widget .ifsc-slot-taken,
html.dark #techpro-booking-widget .ifsc-slot-past{background:#111827!important;color:#94a3b8!important;border-color:#334155!important;}
html.dark #techpro-booking-widget .ifsc-day-available,
html.dark #techpro-booking-widget .ifsc-day-limited{background:#052e1c!important;color:#bbf7d0!important;border-color:#059669!important;}
html.dark #techpro-booking-widget .ifsc-slot,
html.dark #techpro-booking-widget .ifsc-addr-card,
html.dark #techpro-booking-widget .ifsc-panel .ifsc-confirm-card,
html.dark #techpro-booking-widget .ifsc-suggestions,
html.dark #techpro-booking-widget .ifsc-sugg-item{background:#0f172a!important;color:#f8fafc!important;border-color:#334155!important;box-shadow:none!important;}
html.dark #techpro-booking-widget .ifsc-zone-banner,
html.dark #techpro-booking-widget .ifsc-addr-confirmed{background:#052e1c!important;color:#bbf7d0!important;border-color:#059669!important;}
html.dark #techpro-booking-widget .ifsc-zone-banner *,
html.dark #techpro-booking-widget .ifsc-zone-banner span,
html.dark #techpro-booking-widget .ifsc-zone-banner svg,
html.dark #techpro-booking-widget .ifsc-zone-icon,
html.dark #techpro-booking-widget .ifsc-addr-confirmed *,
html.dark #techpro-booking-widget .ifsc-addr-confirmed span{color:#bbf7d0!important;stroke:#60a5fa!important;-webkit-text-fill-color:#bbf7d0!important;}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-zone-banner,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-confirmed{background:#052e1c!important;color:#bbf7d0!important;border-color:#059669!important;}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-zone-banner *,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-zone-banner span,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-zone-banner svg,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-zone-icon,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-confirmed *,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-confirmed span{color:#bbf7d0!important;stroke:#60a5fa!important;-webkit-text-fill-color:#bbf7d0!important;}
html.dark #techpro-booking-widget .ifsc-addr-input-wrap,
html.dark #techpro-booking-widget .ifsc-addr-input-wrap::before{background:#0f172a!important;border-color:#475569!important;}
html.dark #techpro-booking-widget .ifsc-addr-input{background:#0f172a!important;color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html.dark #techpro-booking-widget .ifsc-addr-input::placeholder{color:#94a3b8!important;-webkit-text-fill-color:#94a3b8!important;}
html.dark #techpro-booking-widget .ifsc-cal-nav-btn{background:#0f172a!important;color:#f8fafc!important;border-color:#475569!important;}
html.dark #techpro-booking-widget .ifsc-step-line{background:#334155!important;}
html.dark .pac-container{background:#0f172a!important;border-color:#334155!important;box-shadow:0 22px 50px rgba(0,0,0,.45)!important;}
html.dark .pac-item{background:#0f172a!important;color:#f8fafc!important;border-top-color:#334155!important;}
html.dark .pac-item:hover,
html.dark .pac-item-selected{background:#172033!important;}
html.dark .pac-item-query,
html.dark .pac-matched,
html.dark .pac-item span{color:#f8fafc!important;}

/* v12.6.8 match device/system dark mode even when the theme does not add html.dark. */
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-wrap,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-panel,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-steps{
  background:#07111f!important;
  color:#f8fafc!important;
  border-color:#334155!important;
  color-scheme:dark!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-wrap *{
  color-scheme:dark!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-header{
  background:linear-gradient(128deg,#0f172a 0%,#111827 58%,#0f172a 100%)!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-header *,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-header-title,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-header-sub,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-header-kicker,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-panel-title,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cal-month,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-day-num,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot-start,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cr-val,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-label,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-sugg-name{
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cal-dow,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cal-legend,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot-end,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot-sep,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-back,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-back-btn,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-hint,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-kbd-hint,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cr-label,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-sugg-sub{
  color:#cbd5e1!important;
  -webkit-text-fill-color:#cbd5e1!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-day-past,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-day-unavailable,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot-taken,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot-past{
  background:#111827!important;
  color:#94a3b8!important;
  border-color:#334155!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-day-available,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-day-limited{
  background:#052e1c!important;
  color:#bbf7d0!important;
  border-color:#059669!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-slot,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-card,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-panel .ifsc-confirm-card,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-suggestions,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-sugg-item{
  background:#0f172a!important;
  color:#f8fafc!important;
  border-color:#334155!important;
  box-shadow:none!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-input-wrap,
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-input-wrap::before{
  background:#0f172a!important;
  border-color:#475569!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-input{
  background:#0f172a!important;
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-addr-input::placeholder{
  color:#94a3b8!important;
  -webkit-text-fill-color:#94a3b8!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-cal-nav-btn{
  background:#0f172a!important;
  color:#f8fafc!important;
  border-color:#475569!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-step-line{
  background:#334155!important;
}
@media (prefers-color-scheme: dark){
  .pac-container{background:#0f172a!important;border-color:#334155!important;box-shadow:0 22px 50px rgba(0,0,0,.45)!important;}
  .pac-item{background:#0f172a!important;color:#f8fafc!important;border-top-color:#334155!important;}
  .pac-item:hover,
  .pac-item-selected{background:#172033!important;}
  .pac-item-query,
  .pac-matched,
  .pac-item span{color:#f8fafc!important;}
}

/* v12.8.2 - premium scheduling finish */
.ifsc-wrap{
  border-radius:18px!important;
  box-shadow:0 22px 64px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.65)!important;
}
.ifsc-header{
  background:
    radial-gradient(circle at 86% 16%,rgba(255,255,255,.18),transparent 30%),
    linear-gradient(128deg,#07111f 0%,#1e3a8a 48%,#0f766e 100%)!important;
}
.ifsc-panel{
  background:
    radial-gradient(circle at 100% 0%,rgba(24,96,240,.07),transparent 28%),
    linear-gradient(180deg,#fff 0%,#f8fafc 100%)!important;
}
.ifsc-day,
.ifsc-slot,
.ifsc-addr-card,
.ifsc-confirm-card{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
}
.ifsc-day-available,
.ifsc-day-limited{
  background:linear-gradient(180deg,#ecfdf5,#d1fae5)!important;
  border-color:#86efac!important;
  color:#065f46!important;
}
.ifsc-day-selected{
  background:linear-gradient(135deg,#1860f0,#4f46e5)!important;
}
.ifsc-slot:not([disabled]){
  border-color:#dbe7f5;
}
.ifsc-slot:not([disabled]):hover{
  box-shadow:0 12px 26px rgba(24,96,240,.18)!important;
}
.ifix-sched-admin{
  background:
    radial-gradient(circle at 10% 0%,rgba(239,35,60,.055),transparent 26%),
    radial-gradient(circle at 100% 0%,rgba(24,96,240,.09),transparent 30%),
    linear-gradient(180deg,#f8fafc 0%,#eef3f8 100%)!important;
}
.ifix-sched-admin .isa-card{
  border-radius:20px!important;
  border-color:rgba(15,23,42,.10)!important;
  box-shadow:0 18px 46px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.68)!important;
}
.ifix-sched-admin .isa-day-row{
  border-color:rgba(15,23,42,.08)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}

/* v14.6.0 - premium future-only weekly scheduler */
#techpro-booking-widget.ifix-customer-wizard .ifsc-wrap,
#techpro-booking-widget .ifsc-wrap{
  background:var(--cw-surface,#fff)!important;
  border-color:var(--cw-line,#e5e7eb)!important;
  border-radius:var(--cw-card-radius,8px)!important;
  box-shadow:var(--cw-shadow,0 16px 42px rgba(15,23,42,.08))!important;
  color:var(--cw-ink,#111827)!important;
  width:100%!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-header,
#techpro-booking-widget .ifsc-header{
  background:linear-gradient(135deg,var(--cw-ink,#0f172a) 0%,var(--cw-blue,#2563eb) 52%,var(--cw-green,#059669) 100%)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-panel,
#techpro-booking-widget .ifsc-panel{
  background:linear-gradient(180deg,var(--cw-surface,#fff) 0%,var(--cw-surface-soft,#f9fafb) 100%)!important;
  color:var(--cw-ink,#111827)!important;
  padding:clamp(20px,2.6vw,34px)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav,
#techpro-booking-widget .ifsc-cal-nav{
  align-items:center!important;
  border:1px solid var(--cw-line,#e5e7eb)!important;
  border-radius:var(--cw-card-radius,8px)!important;
  background:var(--cw-surface-soft,#f9fafb)!important;
  gap:12px!important;
  margin-bottom:16px!important;
  padding:10px!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-month,
#techpro-booking-widget .ifsc-cal-month{
  color:var(--cw-ink,#111827)!important;
  flex:1 1 auto!important;
  font-size:clamp(17px,2vw,22px)!important;
  font-weight:900!important;
  line-height:1.2!important;
  text-align:center!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn,
#techpro-booking-widget .ifsc-cal-nav-btn{
  background:var(--cw-surface,#fff)!important;
  border-color:var(--cw-line-strong,#cbd5e1)!important;
  border-radius:var(--cw-btn-radius,8px)!important;
  color:var(--cw-ink,#111827)!important;
  flex:0 0 44px!important;
  font-size:25px!important;
  height:44px!important;
  width:44px!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn:hover:not(:disabled),
#techpro-booking-widget .ifsc-cal-nav-btn:hover:not(:disabled){
  background:var(--cw-blue,#2563eb)!important;
  border-color:var(--cw-blue,#2563eb)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap,
#techpro-booking-widget .ifsc-cal-grid-wrap{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 10px!important;
  -webkit-overflow-scrolling:touch!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days,
#techpro-booking-widget .ifsc-cal-days{
  display:grid!important;
  gap:12px!important;
  grid-template-columns:repeat(7,minmax(112px,1fr))!important;
  min-width:760px!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day,
#techpro-booking-widget .ifsc-day{
  align-items:flex-start!important;
  aspect-ratio:auto!important;
  background:var(--cw-surface,#fff)!important;
  border:1px solid var(--cw-line,#e5e7eb)!important;
  border-radius:var(--cw-card-radius,8px)!important;
  box-shadow:0 10px 28px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.65)!important;
  color:var(--cw-ink,#111827)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:126px!important;
  padding:14px!important;
  transform:none!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day:hover,
#techpro-booking-widget .ifsc-day:hover{
  box-shadow:0 14px 34px rgba(15,23,42,.1)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-dow,
#techpro-booking-widget .ifsc-day-dow{
  color:var(--cw-muted,#64748b)!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1!important;
  text-transform:uppercase!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-main,
#techpro-booking-widget .ifsc-day-main{
  align-items:baseline!important;
  display:flex!important;
  gap:6px!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-num,
#techpro-booking-widget .ifsc-day-num{
  align-items:baseline!important;
  display:inline-flex!important;
  font-size:34px!important;
  font-weight:900!important;
  gap:0!important;
  inset:auto!important;
  line-height:.95!important;
  position:static!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-month,
#techpro-booking-widget .ifsc-day-month{
  color:var(--cw-muted,#64748b)!important;
  font-size:13px!important;
  font-weight:800!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-status,
#techpro-booking-widget .ifsc-day-status{
  align-items:center!important;
  border-radius:999px!important;
  display:inline-flex!important;
  font-size:11px!important;
  font-weight:850!important;
  gap:6px!important;
  margin-top:auto!important;
  padding:6px 9px!important;
  width:max-content!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-status-dot,
#techpro-booking-widget .ifsc-day-status-dot{
  background:currentColor!important;
  border-radius:999px!important;
  height:7px!important;
  width:7px!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-available,
#techpro-booking-widget .ifsc-day-available{
  background:linear-gradient(180deg,var(--cw-surface,#fff),rgba(5,150,105,.08))!important;
  border-color:rgba(5,150,105,.34)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-available .ifsc-day-status,
#techpro-booking-widget .ifsc-day-available .ifsc-day-status{
  background:rgba(5,150,105,.12)!important;
  color:var(--cw-green,#059669)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-limited,
#techpro-booking-widget .ifsc-day-limited{
  background:linear-gradient(180deg,var(--cw-surface,#fff),rgba(180,83,9,.1))!important;
  border-color:rgba(180,83,9,.38)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-limited .ifsc-day-status,
#techpro-booking-widget .ifsc-day-limited .ifsc-day-status{
  background:rgba(180,83,9,.13)!important;
  color:var(--cw-amber,#b45309)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-full,
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-unavailable,
#techpro-booking-widget .ifsc-day-full,
#techpro-booking-widget .ifsc-day-unavailable{
  background:var(--cw-surface-soft,#f9fafb)!important;
  color:var(--cw-muted,#64748b)!important;
  opacity:.82!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-full .ifsc-day-status,
#techpro-booking-widget .ifsc-day-full .ifsc-day-status{
  background:rgba(220,38,38,.12)!important;
  color:var(--cw-red,#dc2626)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-unavailable .ifsc-day-status,
#techpro-booking-widget .ifsc-day-unavailable .ifsc-day-status{
  background:rgba(100,116,139,.12)!important;
  color:var(--cw-muted,#64748b)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-today,
#techpro-booking-widget .ifsc-day-today{
  border-color:var(--cw-blue,#2563eb)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.13),0 12px 30px rgba(37,99,235,.12)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-selected,
#techpro-booking-widget .ifsc-day-selected{
  background:linear-gradient(135deg,var(--cw-blue,#2563eb),var(--cw-blue-dark,#1d4ed8))!important;
  border-color:var(--cw-blue,#2563eb)!important;
  color:#fff!important;
  box-shadow:0 18px 42px rgba(37,99,235,.28)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-selected *,
#techpro-booking-widget .ifsc-day-selected *{
  color:#fff!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-day-selected .ifsc-day-status,
#techpro-booking-widget .ifsc-day-selected .ifsc-day-status{
  background:rgba(255,255,255,.18)!important;
}
#techpro-booking-widget.ifix-customer-wizard .ifsc-cal-legend,
#techpro-booking-widget .ifsc-cal-legend{
  color:var(--cw-muted,#64748b)!important;
  font-size:12px!important;
  justify-content:center!important;
  margin-top:6px!important;
}
#techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-wrap,
html.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap,
.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap,
.dark-mode #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap,
[data-theme="dark"] #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap{
  background:var(--cw-surface,#111827)!important;
  color:var(--cw-ink,#f8fafc)!important;
  color-scheme:dark!important;
}
#techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-panel,
html.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-panel,
.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-panel,
.dark-mode #techpro-booking-widget.ifix-customer-wizard .ifsc-panel,
[data-theme="dark"] #techpro-booking-widget.ifix-customer-wizard .ifsc-panel,
#techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-cal-nav,
html.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav,
.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav,
.dark-mode #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav,
[data-theme="dark"] #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav{
  background:var(--cw-surface-soft,#0f172a)!important;
  border-color:var(--cw-line,#334155)!important;
}
#techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-day,
html.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-day,
.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-day,
.dark-mode #techpro-booking-widget.ifix-customer-wizard .ifsc-day,
[data-theme="dark"] #techpro-booking-widget.ifix-customer-wizard .ifsc-day,
#techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-cal-nav-btn,
html.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn,
.dark #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn,
.dark-mode #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn,
[data-theme="dark"] #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn{
  background:var(--cw-surface,#1e293b)!important;
  border-color:var(--cw-line,#334155)!important;
  color:var(--cw-ink,#f8fafc)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
@media(max-width:760px){
  #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days,
  #techpro-booking-widget .ifsc-cal-days{
    grid-template-columns:repeat(7,minmax(104px,1fr))!important;
    min-width:728px!important;
  }
  #techpro-booking-widget.ifix-customer-wizard .ifsc-day,
  #techpro-booking-widget .ifsc-day{
    min-height:116px!important;
    padding:12px!important;
  }
}
.ifix-sched-admin .isa-cal-d{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68);
}
.ifix-sched-admin .isa-cal-d.ac-blocked{
  background:linear-gradient(180deg,#fee2e2,#fecaca)!important;
  border-color:#ef4444!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-panel{
  background:
    radial-gradient(circle at 100% 0%,rgba(59,130,246,.12),transparent 28%),
    linear-gradient(180deg,#07111f 0%,#0f172a 100%)!important;
}
#techpro-booking-widget[data-color-scheme="dark"] .ifsc-wrap{
  box-shadow:0 26px 80px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.05)!important;
}

/* v14.6.1 - final full-frame calendar and truthful light/dark alignment */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap {
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header {
  background: linear-gradient(135deg, var(--cw-blue, #2563eb), var(--cw-green, #059669)) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
  overflow-x: visible !important;
  padding: 0 0 10px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  gap: clamp(10px, 1.3vw, 16px) !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  min-width: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day {
  border-radius: 8px !important;
  min-height: clamp(130px, 14vw, 168px) !important;
  padding: clamp(14px, 1.6vw, 20px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-num {
  font-size: clamp(34px, 4vw, 48px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slots-grid,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slots {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-wrap,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-panel,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-steps,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cal-nav,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-slot,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-addr-card,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-confirm-card,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-suggestions,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-sugg-item {
  background: var(--cw-surface, #ffffff) !important;
  border-color: var(--cw-line, #e5e7eb) !important;
  color: var(--cw-ink, #111827) !important;
  color-scheme: light !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-panel,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-steps,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cal-nav {
  background: var(--cw-surface-soft, #f8fafc) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-panel-title,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cal-month,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-num,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-slot-start,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cr-val,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-addr-label,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-sugg-name {
  color: var(--cw-ink, #111827) !important;
  -webkit-text-fill-color: var(--cw-ink, #111827) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-dow,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-month,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cal-legend,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-slot-end,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-slot-sep,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-back-btn,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-addr-hint,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-cr-label,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-sugg-sub {
  color: var(--cw-muted, #64748b) !important;
  -webkit-text-fill-color: var(--cw-muted, #64748b) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-available {
  background: linear-gradient(180deg, #ffffff, #ecfdf5) !important;
  border-color: rgba(5, 150, 105, .28) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-limited {
  background: linear-gradient(180deg, #ffffff, #fffbeb) !important;
  border-color: rgba(180, 83, 9, .32) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-selected {
  background: linear-gradient(135deg, var(--cw-blue, #2563eb), var(--cw-blue-dark, #1d4ed8)) !important;
  color: #ffffff !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="light"] .ifsc-day-selected * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

@media (max-width: 760px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
    overflow-x: auto !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(7, minmax(112px, 1fr)) !important;
    min-width: 820px !important;
  }
}

/* v14.6.2 refined normal-size calendar */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-wrap {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header {
  background: var(--cw-surface) !important;
  border-bottom: 1px solid var(--cw-line) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header-inner {
  display: block !important;
  padding: 24px clamp(18px, 3vw, 32px) 18px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header-kicker {
  color: var(--cw-blue-dark) !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header-title {
  color: var(--cw-ink) !important;
  font-size: clamp(22px, 2.2vw, 30px) !important;
  line-height: 1.08 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-header-sub {
  color: var(--cw-muted) !important;
  font-size: 14px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-steps {
  background: var(--cw-surface) !important;
  border-bottom: 1px solid var(--cw-line) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel {
  background: var(--cw-surface) !important;
  padding: clamp(18px, 2.5vw, 30px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-month {
  color: var(--cw-ink) !important;
  font-size: 18px !important;
  font-weight: 850 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn {
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-ink) !important;
  flex-basis: 38px !important;
  font-size: 21px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  width: 38px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
  overflow: visible !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  gap: 8px !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  min-width: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day {
  border-radius: 8px !important;
  box-shadow: none !important;
  gap: 7px !important;
  min-height: 108px !important;
  padding: 12px 10px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day:hover {
  box-shadow: 0 8px 20px rgba(15, 23, 42, .08) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-num {
  font-size: clamp(26px, 2.6vw, 34px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-month,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-dow {
  font-size: 11px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-status {
  font-size: 10px !important;
  padding: 5px 7px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-legend {
  justify-content: flex-start !important;
  margin-top: 14px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-header,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-steps,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-panel,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-cal-nav {
  background: var(--cw-surface) !important;
  border-color: var(--cw-line) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-day {
  background: var(--cw-surface-soft) !important;
  border-color: var(--cw-line) !important;
  color: var(--cw-ink) !important;
}

@media (max-width: 760px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
    overflow-x: auto !important;
    padding-bottom: 6px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(7, 96px) !important;
    min-width: 720px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day {
    min-height: 104px !important;
  }
}

/* v14.6.3 date/time board: clean 2026 booking flow */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel-title {
  color: var(--cw-ink) !important;
  font-size: clamp(22px, 2.2vw, 30px) !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel-num {
  background: #eef5ff !important;
  border: 1px solid #dbeafe !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  color: var(--cw-blue-dark) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  display: grid !important;
  gap: 0 !important;
  overflow: hidden !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day {
  align-items: center !important;
  background: var(--cw-surface) !important;
  border: 0 !important;
  border-right: 1px solid var(--cw-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--cw-ink) !important;
  display: flex !important;
  gap: 8px !important;
  justify-content: center !important;
  min-height: 122px !important;
  overflow: hidden !important;
  padding: 14px 8px !important;
  text-align: center !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day:last-child {
  border-right: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day:hover {
  background: #f8fbff !important;
  box-shadow: inset 0 0 0 1px #bfdbfe !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-dow {
  color: var(--cw-muted) !important;
  display: block !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-main {
  align-items: center !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  justify-content: center !important;
  line-height: 1 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-num {
  color: var(--cw-ink) !important;
  display: block !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: .95 !important;
  position: static !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-month {
  color: var(--cw-muted) !important;
  display: block !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-status {
  border-radius: 999px !important;
  display: inline-flex !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  gap: 5px !important;
  line-height: 1 !important;
  margin: 0 !important;
  max-width: 100% !important;
  min-height: 22px !important;
  padding: 6px 8px !important;
  white-space: nowrap !important;
  width: auto !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-today {
  box-shadow: inset 0 3px 0 var(--cw-blue) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-selected {
  background: var(--cw-blue) !important;
  box-shadow: none !important;
  color: #ffffff !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-selected .ifsc-day-status {
  background: rgba(255, 255, 255, .18) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-unavailable,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day-full {
  background: var(--cw-surface-soft) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-time {
  background: var(--cw-surface) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 16px 36px rgba(15, 23, 42, .06) !important;
  margin-top: 18px !important;
  padding: clamp(16px, 2vw, 22px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-time[hidden] {
  display: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-time-head {
  align-items: center !important;
  display: flex !important;
  gap: 12px !important;
  justify-content: space-between !important;
  margin-bottom: 14px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-kicker {
  color: var(--cw-muted) !important;
  display: block !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  margin-bottom: 6px !important;
  text-transform: uppercase !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard #ifsc-inline-date {
  color: var(--cw-ink) !important;
  display: block !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-change {
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-blue-dark) !important;
  cursor: pointer !important;
  font: inherit !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  min-height: 36px !important;
  padding: 0 12px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-time-placeholder,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-no-slots {
  background: var(--cw-surface-soft) !important;
  border: 1px dashed var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-muted) !important;
  font-size: 14px !important;
  padding: 18px !important;
  text-align: center !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slots-grid {
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: repeat(auto-fit, minmax(138px, 1fr)) !important;
  margin: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slot {
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  min-height: 58px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slot:not([disabled]):hover {
  background: #eff6ff !important;
  border-color: #bfdbfe !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-slot-selected {
  background: var(--cw-blue) !important;
  border-color: var(--cw-blue) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-cal-days,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-inline-time,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-time-placeholder,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-no-slots,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-slot {
  background: var(--cw-surface-soft) !important;
  border-color: var(--cw-line) !important;
  color: var(--cw-ink) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-day {
  background: var(--cw-surface) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-day:hover {
  background: var(--cw-surface-soft) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-slot:not([disabled]):hover {
  background: var(--cw-surface) !important;
  border-color: var(--cw-blue) !important;
}

@media (max-width: 760px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(7, 86px) !important;
    min-width: 602px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-day {
    min-height: 112px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-time-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* v14.6.4 isolated premium calendar cards. These do not use legacy ifsc-day classes. */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  display: grid !important;
  gap: 10px !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  min-width: 0 !important;
  overflow: visible !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card {
  appearance: none !important;
  -webkit-appearance: none !important;
  align-items: stretch !important;
  background: var(--cw-surface) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .055) !important;
  color: var(--cw-ink) !important;
  cursor: pointer !important;
  display: flex !important;
  flex-direction: column !important;
  font: inherit !important;
  gap: 12px !important;
  justify-content: space-between !important;
  min-height: 132px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 14px !important;
  position: relative !important;
  text-align: left !important;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease, background-color .16s ease !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card:hover:not(:disabled),
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card:focus-visible {
  border-color: var(--cw-blue) !important;
  box-shadow: 0 16px 34px rgba(37, 99, 235, .14) !important;
  outline: none !important;
  transform: translateY(-1px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card:disabled {
  cursor: not-allowed !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-top,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-main,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status {
  min-width: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-top {
  align-items: center !important;
  display: flex !important;
  gap: 6px !important;
  justify-content: space-between !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-dow {
  color: var(--cw-muted) !important;
  display: block !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-today {
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 999px !important;
  color: var(--cw-blue-dark) !important;
  display: inline-flex !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  padding: 4px 6px !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-main {
  display: block !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-num {
  color: var(--cw-ink) !important;
  display: block !important;
  font-size: 34px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: .9 !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-month {
  color: var(--cw-muted) !important;
  display: block !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  margin-top: 7px !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status {
  align-items: center !important;
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 999px !important;
  color: var(--cw-muted) !important;
  display: inline-flex !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  gap: 6px !important;
  justify-content: center !important;
  line-height: 1 !important;
  max-width: 100% !important;
  padding: 7px 9px !important;
  white-space: nowrap !important;
  width: max-content !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status-dot {
  background: currentColor !important;
  border-radius: 99px !important;
  display: inline-block !important;
  flex: 0 0 7px !important;
  height: 7px !important;
  width: 7px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-available {
  border-color: rgba(5, 150, 105, .24) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-available .ifsc-date-status {
  background: #ecfdf5 !important;
  border-color: #bbf7d0 !important;
  color: var(--cw-green, #059669) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-limited {
  border-color: rgba(245, 158, 11, .26) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-limited .ifsc-date-status {
  background: #fffbeb !important;
  border-color: #fde68a !important;
  color: var(--cw-amber, #b45309) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-full,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-unavailable {
  background: var(--cw-surface-soft) !important;
  box-shadow: none !important;
  opacity: .82 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-full .ifsc-date-status {
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-unavailable .ifsc-date-status {
  background: #f1f5f9 !important;
  color: #94a3b8 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-today {
  box-shadow: inset 0 3px 0 var(--cw-blue), 0 10px 24px rgba(15, 23, 42, .055) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected {
  background: linear-gradient(180deg, var(--cw-blue), var(--cw-blue-dark)) !important;
  border-color: var(--cw-blue) !important;
  box-shadow: 0 18px 42px rgba(37, 99, 235, .22) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected *,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-dow,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-num,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-month {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-status,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-today {
  background: rgba(255, 255, 255, .16) !important;
  border-color: rgba(255, 255, 255, .28) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-card {
  background: var(--cw-surface) !important;
  border-color: var(--cw-line) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .18) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-status,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-today {
  background: var(--cw-surface-soft) !important;
  border-color: var(--cw-line) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-available .ifsc-date-status {
  color: #34d399 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-limited .ifsc-date-status {
  color: #fbbf24 !important;
}

@media (max-width: 900px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
    overflow-x: auto !important;
    padding-bottom: 8px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(7, 118px) !important;
    min-width: 884px !important;
  }
}

/* v14.6.5 integrated date + time premium board */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel-header {
  margin-bottom: 20px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav {
  align-items: center !important;
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  display: grid !important;
  grid-template-columns: 44px 1fr 44px !important;
  margin-bottom: 14px !important;
  padding: 8px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-month {
  color: var(--cw-ink) !important;
  font-size: clamp(18px, 2vw, 22px) !important;
  font-weight: 900 !important;
  text-align: center !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn {
  background: var(--cw-surface) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-blue-dark) !important;
  font-size: 24px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  width: 44px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
  overflow-x: auto !important;
  padding: 2px 2px 12px !important;
  scrollbar-color: var(--cw-line) transparent !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  display: grid !important;
  gap: 14px !important;
  grid-template-columns: repeat(7, minmax(148px, 1fr)) !important;
  min-width: 1100px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card {
  background: linear-gradient(180deg, var(--cw-surface) 0%, var(--cw-surface-soft) 100%) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .07) !important;
  gap: 14px !important;
  min-height: 310px !important;
  padding: 16px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card:hover {
  transform: translateY(-2px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-main {
  border-bottom: 1px solid var(--cw-line) !important;
  display: block !important;
  padding-bottom: 12px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-num {
  font-size: 42px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-times {
  display: grid !important;
  gap: 8px !important;
  grid-template-columns: 1fr !important;
  margin-top: auto !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time {
  appearance: none !important;
  -webkit-appearance: none !important;
  align-items: center !important;
  background: var(--cw-surface) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-ink) !important;
  cursor: pointer !important;
  display: flex !important;
  font: inherit !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  justify-content: center !important;
  line-height: 1 !important;
  min-height: 38px !important;
  padding: 0 10px !important;
  transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time:hover,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time:focus-visible {
  background: #eff6ff !important;
  border-color: #bfdbfe !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
  color: var(--cw-blue-dark) !important;
  outline: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time.is-selected {
  background: var(--cw-blue) !important;
  border-color: var(--cw-blue) !important;
  color: #ffffff !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-no-times {
  align-items: center !important;
  background: transparent !important;
  border: 1px dashed var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-muted) !important;
  display: flex !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  justify-content: center !important;
  min-height: 72px !important;
  padding: 10px !important;
  text-align: center !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-inline-time {
  display: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-legend {
  gap: 16px !important;
  margin-top: 12px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-card {
  background: linear-gradient(180deg, var(--cw-surface), var(--cw-surface-soft)) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time {
  background: var(--cw-surface) !important;
  border-color: var(--cw-line) !important;
  color: var(--cw-ink) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time:hover,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time:focus-visible {
  background: var(--cw-surface-soft) !important;
  border-color: var(--cw-blue) !important;
  color: var(--cw-ink) !important;
}

@media (max-width: 760px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(7, 164px) !important;
    min-width: 1190px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card {
    min-height: 300px !important;
  }
}

/* v14.6.7 A-Z visual QA: premium integrated calendar board */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel#ifsc-panel-date {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-panel#ifsc-panel-date .ifsc-panel-header {
  align-items: center !important;
  display: flex !important;
  justify-content: space-between !important;
  margin: 0 0 18px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav {
  background: var(--cw-surface-soft) !important;
  border: 1px solid rgba(37, 99, 235, .16) !important;
  border-radius: 8px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72), 0 10px 24px rgba(15, 23, 42, .045) !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: 46px minmax(0, 1fr) 46px !important;
  margin: 0 0 16px !important;
  padding: 10px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-month {
  align-items: center !important;
  color: var(--cw-ink) !important;
  display: flex !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  min-width: 0 !important;
  text-align: center !important;
  white-space: normal !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn {
  align-items: center !important;
  appearance: none !important;
  background: var(--cw-surface) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .055) !important;
  color: var(--cw-blue) !important;
  display: inline-flex !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  height: 46px !important;
  justify-content: center !important;
  line-height: 1 !important;
  min-height: 46px !important;
  padding: 0 !important;
  width: 46px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn:disabled {
  cursor: not-allowed !important;
  opacity: .42 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid-wrap {
  overflow: visible !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-grid {
  min-width: 0 !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
  min-width: 0 !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card {
  align-content: start !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(255, 255, 255, .52)),
    var(--cw-surface) !important;
  border: 1px solid rgba(37, 99, 235, .16) !important;
  border-radius: 8px !important;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .07) !important;
  display: grid !important;
  gap: 12px !important;
  grid-template-rows: auto auto auto 1fr !important;
  min-height: 292px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 14px !important;
  position: relative !important;
  transform: translateZ(0) !important;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card:hover {
  border-color: rgba(37, 99, 235, .36) !important;
  box-shadow: 0 20px 42px rgba(15, 23, 42, .1) !important;
  transform: translateY(-2px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-top,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-main,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-times {
  min-width: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-top {
  align-items: center !important;
  display: flex !important;
  gap: 8px !important;
  justify-content: space-between !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-dow {
  color: var(--cw-muted) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-today {
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 999px !important;
  color: var(--cw-blue-dark) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  padding: 6px 8px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-main {
  border: 0 !important;
  display: flex !important;
  gap: 7px !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-num {
  color: var(--cw-ink) !important;
  font-size: 42px !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  line-height: .95 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-month {
  color: var(--cw-muted) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
  padding-top: 5px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status {
  align-items: center !important;
  background: var(--cw-surface-soft) !important;
  border: 1px solid var(--cw-line) !important;
  border-radius: 999px !important;
  color: var(--cw-muted) !important;
  display: inline-flex !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  gap: 7px !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 8px 10px !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-status-dot {
  background: #94a3b8 !important;
  border-radius: 999px !important;
  box-shadow: 0 0 0 4px rgba(148, 163, 184, .13) !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  height: 7px !important;
  width: 7px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-available .ifsc-date-status,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-limited .ifsc-date-status {
  background: #ecfdf5 !important;
  border-color: #bbf7d0 !important;
  color: #047857 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-limited .ifsc-date-status {
  background: #fffbeb !important;
  border-color: #fde68a !important;
  color: #b45309 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-available .ifsc-date-status-dot {
  background: #059669 !important;
  box-shadow: 0 0 0 4px rgba(5, 150, 105, .13) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-limited .ifsc-date-status-dot {
  background: #f59e0b !important;
  box-shadow: 0 0 0 4px rgba(245, 158, 11, .14) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-times {
  align-self: stretch !important;
  display: grid !important;
  gap: 8px !important;
  grid-auto-rows: minmax(38px, auto) !important;
  grid-template-columns: 1fr !important;
  margin: 0 !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time {
  align-items: center !important;
  appearance: none !important;
  background: var(--cw-surface) !important;
  border: 1px solid rgba(37, 99, 235, .14) !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .72) inset !important;
  color: var(--cw-ink) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  min-height: 38px !important;
  overflow: hidden !important;
  padding: 0 9px !important;
  text-align: center !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time:hover,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-time:focus-visible {
  background: #eff6ff !important;
  border-color: rgba(37, 99, 235, .45) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .14) !important;
  color: var(--cw-blue-dark) !important;
  outline: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected {
  background: linear-gradient(180deg, var(--cw-blue), var(--cw-blue-dark)) !important;
  border-color: var(--cw-blue) !important;
  box-shadow: 0 22px 48px rgba(37, 99, 235, .28) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card.is-selected .ifsc-date-time.is-selected {
  background: #ffffff !important;
  border-color: rgba(255, 255, 255, .92) !important;
  color: var(--cw-blue-dark) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-full,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-unavailable {
  opacity: .78 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-no-times {
  align-items: center !important;
  background: var(--cw-surface-soft) !important;
  border: 1px dashed var(--cw-line) !important;
  border-radius: 8px !important;
  color: var(--cw-muted) !important;
  display: flex !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  justify-content: center !important;
  min-height: 58px !important;
  padding: 10px !important;
  text-align: center !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-legend {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px 18px !important;
  margin-top: 14px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-legend span {
  align-items: center !important;
  color: var(--cw-muted) !important;
  display: inline-flex !important;
  font-size: 13px !important;
  font-weight: 750 !important;
  gap: 7px !important;
  line-height: 1 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-cal-nav {
  background: var(--cw-surface-soft) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .2) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .018)),
    var(--cw-surface) !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .24) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time {
  background: rgba(255, 255, 255, .08) !important;
  box-shadow: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time:hover,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-time:focus-visible {
  background: rgba(37, 99, 235, .18) !important;
  border-color: rgba(96, 165, 250, .5) !important;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, .18) !important;
  color: #ffffff !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-available .ifsc-date-status {
  background: rgba(5, 150, 105, .16) !important;
  border-color: rgba(52, 211, 153, .25) !important;
  color: #6ee7b7 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-date-limited .ifsc-date-status {
  background: rgba(245, 158, 11, .16) !important;
  border-color: rgba(251, 191, 36, .25) !important;
  color: #fcd34d !important;
}

@media (max-width: 1180px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav {
    grid-template-columns: 42px minmax(0, 1fr) 42px !important;
    gap: 8px !important;
    padding: 8px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-month {
    font-size: 18px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-nav-btn {
    height: 42px !important;
    min-height: 42px !important;
    width: 42px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-cal-days {
    grid-template-columns: 1fr !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-card {
    min-height: 0 !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-date-times {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* v14.7.1 premium service-address redesign */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard #ifsc-panel-addr {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard #ifsc-panel-addr .ifsc-panel-header {
  align-items: center !important;
  display: flex !important;
  gap: 16px !important;
  justify-content: space-between !important;
  margin: 0 0 18px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-chosen-badge {
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 999px !important;
  color: var(--cw-blue-dark, #1d4ed8) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  min-height: 34px !important;
  padding: 8px 12px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 250, 252, .98)),
    var(--cw-surface, #ffffff) !important;
  border: 1px solid rgba(37, 99, 235, .14) !important;
  border-radius: 8px !important;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .08), inset 0 1px 0 rgba(255, 255, 255, .9) !important;
  margin: 0 0 14px !important;
  overflow: visible !important;
  padding: clamp(18px, 2.4vw, 26px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-head {
  align-items: flex-start !important;
  display: flex !important;
  gap: 14px !important;
  margin-bottom: 22px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-icon {
  align-items: center !important;
  background: linear-gradient(180deg, #eff6ff, #ffffff) !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 26px rgba(37, 99, 235, .12) !important;
  color: var(--cw-blue, #2563eb) !important;
  display: inline-flex !important;
  flex: 0 0 58px !important;
  height: 58px !important;
  justify-content: center !important;
  width: 58px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-icon .ifsc-addr-pin {
  height: 30px !important;
  margin: 0 !important;
  position: static !important;
  transform: none !important;
  width: 30px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-title {
  color: var(--cw-ink, #0f172a) !important;
  font-size: clamp(22px, 2.4vw, 30px) !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  line-height: 1.05 !important;
  margin: 0 0 6px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-sub {
  color: var(--cw-muted, #64748b) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  max-width: 620px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-label-row {
  align-items: center !important;
  display: flex !important;
  justify-content: space-between !important;
  margin-bottom: 9px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-label {
  color: var(--cw-ink, #0f172a) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-pill {
  align-items: center !important;
  background: #ecfdf5 !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 999px !important;
  color: #047857 !important;
  display: inline-flex !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  gap: 7px !important;
  letter-spacing: 0 !important;
  min-height: 30px !important;
  padding: 0 10px !important;
  text-transform: none !important;
  white-space: nowrap !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-spark {
  height: 15px !important;
  width: 15px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-field {
  position: relative !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap {
  align-items: center !important;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .055), inset 0 1px 0 rgba(255, 255, 255, .92) !important;
  display: flex !important;
  min-height: 62px !important;
  overflow: visible !important;
  padding: 0 12px 0 16px !important;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap::before {
  display: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap:focus-within {
  border-color: #60a5fa !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, .13), 0 16px 36px rgba(37, 99, 235, .12) !important;
  transform: translateY(-1px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap > .ifsc-addr-pin {
  color: #2563eb !important;
  flex: 0 0 auto !important;
  height: 24px !important;
  left: auto !important;
  margin: 0 12px 0 0 !important;
  pointer-events: none !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
  width: 24px !important;
  z-index: 1 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #0f172a !important;
  flex: 1 1 auto !important;
  font-size: 17px !important;
  font-weight: 760 !important;
  min-height: 60px !important;
  padding: 0 !important;
  position: relative !important;
  -webkit-text-fill-color: #0f172a !important;
  z-index: 1 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input::placeholder {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-clear {
  background: #f1f5f9 !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 999px !important;
  color: #475569 !important;
  flex: 0 0 auto !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  position: relative !important;
  z-index: 1 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-zone-banner {
  align-items: flex-start !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  color: #475569 !important;
  display: flex !important;
  font-size: 13px !important;
  gap: 10px !important;
  line-height: 1.45 !important;
  margin: 16px 0 0 !important;
  padding: 13px 14px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-zone-icon {
  color: #2563eb !important;
  flex: 0 0 auto !important;
  height: 18px !important;
  margin-top: 1px !important;
  stroke: currentColor !important;
  width: 18px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-suggestions {
  background: #ffffff !important;
  border: 1px solid rgba(37, 99, 235, .16) !important;
  border-radius: 8px !important;
  box-shadow: 0 24px 58px rgba(15, 23, 42, .16) !important;
  max-height: min(52vh, 360px) !important;
  overflow: auto !important;
  top: calc(100% + 12px) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-sugg-item {
  border-bottom: 1px solid #f1f5f9 !important;
  gap: 13px !important;
  padding: 15px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-sugg-ico {
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  border-radius: 8px !important;
  height: 40px !important;
  width: 40px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-sugg-name {
  color: #0f172a !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-sugg-sub {
  color: #64748b !important;
  font-size: 12px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-confirmed {
  align-items: center !important;
  background: #ecfdf5 !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 28px rgba(5, 150, 105, .09) !important;
  color: #065f46 !important;
  display: flex !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  gap: 12px !important;
  margin: 12px 0 0 !important;
  padding: 14px 16px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-confirmed svg {
  background: #059669 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  flex: 0 0 24px !important;
  height: 24px !important;
  padding: 5px !important;
  stroke: currentColor !important;
  width: 24px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-confirmed-text,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard #ifsc-addr-confirmed-text {
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-change {
  background: #ffffff !important;
  border: 1px solid #bbf7d0 !important;
  border-radius: 999px !important;
  color: #047857 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  margin-left: auto !important;
  min-height: 32px !important;
  padding: 0 12px !important;
  text-decoration: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-chosen-badge {
  background: rgba(37, 99, 235, .18) !important;
  border-color: rgba(96, 165, 250, .32) !important;
  color: #bfdbfe !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .025)), var(--cw-surface, #0b1220) !important;
  border-color: rgba(148, 163, 184, .24) !important;
  box-shadow: 0 18px 46px rgba(0, 0, 0, .28) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-card-icon,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-sugg-ico {
  background: rgba(37, 99, 235, .16) !important;
  border-color: rgba(96, 165, 250, .3) !important;
  color: #93c5fd !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-card-title,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-label,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-sugg-name {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-card-sub,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-sugg-sub {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-input-wrap,
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-suggestions {
  background: #111827 !important;
  border-color: rgba(148, 163, 184, .28) !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-addr-input {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard[data-color-scheme="dark"] .ifsc-zone-banner {
  background: rgba(148, 163, 184, .08) !important;
  border-color: rgba(148, 163, 184, .2) !important;
  color: #cbd5e1 !important;
}

@media (max-width: 700px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard #ifsc-panel-addr .ifsc-panel-header,
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-head,
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-label-row,
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-confirmed {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-card-icon {
    flex-basis: 52px !important;
    height: 52px !important;
    width: 52px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap {
    min-height: 58px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input {
    font-size: 16px !important;
    min-height: 56px !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-change {
    margin-left: 0 !important;
  }
}

/* v14.7.3 mobile address cleanup: compact clear control, no service-area banner. */
body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-zone-banner {
  display: none !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap {
  gap: 10px !important;
  overflow: hidden !important;
  padding: 0 10px 0 16px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input {
  min-width: 0 !important;
  padding-right: 4px !important;
  width: 100% !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-clear {
  align-items: center !important;
  aspect-ratio: 1 / 1 !important;
  display: inline-flex !important;
  flex: 0 0 38px !important;
  font-size: 0 !important;
  height: 38px !important;
  justify-content: center !important;
  line-height: 1 !important;
  max-height: 38px !important;
  max-width: 38px !important;
  min-height: 38px !important;
  min-width: 38px !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-align: center !important;
  white-space: nowrap !important;
  width: 38px !important;
}

body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-clear::before {
  content: "\00d7" !important;
  display: block !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

@media (max-width: 700px) {
  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) 38px !important;
    padding: 0 9px 0 14px !important;
    width: 100% !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input-wrap > .ifsc-addr-pin {
    margin: 0 !important;
  }

  body:not(.wp-admin) #techpro-booking-widget.ifix-customer-wizard .ifsc-addr-input {
    font-size: 16px !important;
    line-height: 1.25 !important;
  }
}
