/* Kalameh consultation modal: standalone and scoped */
.kmc-overlay[hidden]{display:none!important}.kmc-overlay{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:16px;font-family:IRANSansXFaNum,Tahoma,sans-serif;direction:rtl}.kmc-backdrop{position:absolute;inset:0;background:rgba(9,18,45,.68);backdrop-filter:blur(7px)}.kmc-panel{position:relative;width:min(100%,560px);max-height:min(94dvh,850px);overflow-y:auto;padding:34px;background:#fff;border:1px solid rgba(216,226,247,.8);border-radius:26px;box-shadow:0 30px 95px rgba(2,11,46,.28);animation:kmc-in .25s ease both;color:#101936}.kmc-close{position:absolute;top:18px;left:18px;width:37px;height:37px;border-radius:12px;border:1px solid #e4eaf5;background:#f8faff;font-size:25px;line-height:1;color:#5e6982}.kmc-kicker{display:inline-flex;background:#edf2ff;color:#012bf9;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:500}.kmc-intro h2{margin:14px 0 6px;font-size:clamp(22px,3vw,28px);font-weight:700;line-height:1.45}.kmc-intro p{margin:0 0 22px;font-size:13px;color:#637089;line-height:1.9}.kmc-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.kmc-field{display:grid;gap:8px;font-size:13px;font-weight:500}.kmc-field span{color:#26344f}.kmc-field input,.kmc-field select{display:block;width:100%;height:49px;border:1px solid #dfe6f3;border-radius:12px;background:#fbfcff;padding:0 13px;font:inherit;font-size:13px;outline:none;color:#192844;transition:border-color .2s,box-shadow .2s}.kmc-field input:focus,.kmc-field select:focus{border-color:#012bf9;box-shadow:0 0 0 3px rgba(1,43,249,.08)}.kmc-span{grid-column:1/-1}.kmc-slots{border:0;padding:0;margin:20px 0 0}.kmc-slots legend{font-size:13px;font-weight:600;color:#26344f;margin-bottom:12px}.kmc-slot-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kmc-slot-row label{cursor:pointer}.kmc-slot-row input{position:absolute;opacity:0;width:1px;height:1px}.kmc-slot-row span{display:grid;place-items:center;border:1px solid #dfe6f3;border-radius:12px;min-height:47px;color:#4f5d78;font-size:13px;transition:background .15s,color .15s,border-color .15s}.kmc-slot-row input:checked+span{border-color:#012bf9;background:#eff3ff;color:#012bf9;font-weight:600}.kmc-slot-row input:focus-visible+span{outline:3px solid #9fb5ff}.kmc-hint{font-size:11px;color:#7e8799;margin:12px 0 18px}.kmc-submit{display:flex;align-items:center;justify-content:center;gap:15px;width:100%;border:0;border-radius:14px;background:#012bf9;color:#fff;padding:15px 18px;font-size:14px;font-weight:500;box-shadow:0 12px 26px rgba(1,43,249,.18);transition:transform .2s,background .2s}.kmc-submit:hover{transform:translateY(-2px);background:#0023d1}.kmc-submit:disabled{opacity:.65;cursor:wait;transform:none}.kmc-feedback{font-size:13px;line-height:1.8}.kmc-feedback:not(:empty){margin-bottom:12px;padding:10px 12px;background:#eef9f2;border-radius:10px;color:#176136}.kmc-feedback[data-error="true"]{background:#fff0f0;color:#a11f2e}.kmc-honeypot{position:absolute!important;left:-10000px!important}.kmc-lock{overflow:hidden}@keyframes kmc-in{from{opacity:0;transform:translateY(15px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:580px){.kmc-panel{padding:26px 20px;border-radius:22px}.kmc-grid{grid-template-columns:1fr}.kmc-span{grid-column:auto}.kmc-slot-row{gap:7px}}@media(prefers-reduced-motion:reduce){.kmc-panel{animation:none}.kmc-submit{transition:none}}

/* v1.0.1 - keep consultation time choices in one horizontal row on all screens */
.kmc-overlay .kmc-panel .kmc-slot-row{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px;width:100%;direction:rtl}
.kmc-overlay .kmc-panel .kmc-slot-row label{display:block!important;min-width:0;margin:0;cursor:pointer}
.kmc-overlay .kmc-panel .kmc-slot-row label span{width:100%;min-width:0;white-space:nowrap;text-align:center;padding:10px 2px;min-height:46px;font-size:clamp(11px,2.7vw,13px);line-height:1.3}
@media(max-width:360px){.kmc-overlay .kmc-panel{padding-inline:14px}.kmc-overlay .kmc-panel .kmc-slot-row{gap:5px}}

/* v1.2.5 — GPU-friendly letter-to-mailbox success animation */
.kmc-success-scene[hidden]{display:none!important}
.kmc-panel.kmc-panel-sent{overflow:hidden;min-height:340px;display:grid;align-items:center;justify-items:center;transition:min-height .2s ease}
.kmc-success-scene{position:relative;width:100%;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate;text-align:center}
.kmc-mailbox{position:absolute;top:48px;left:50%;width:104px;height:79px;transform:translateX(-50%) scale(.85);opacity:0;background:linear-gradient(145deg,#133dfb,#001c99);border-radius:18px 18px 13px 13px;box-shadow:0 14px 26px rgba(1,43,249,.18);will-change:transform,opacity}
.kmc-mailbox:before{content:"";position:absolute;inset:-15px 11px auto;height:29px;border-radius:16px 16px 3px 3px;background:#ced9ff;z-index:-1}
.kmc-mailbox-slot{position:absolute;top:19px;left:21px;right:21px;height:8px;background:#071849;border-radius:6px;box-shadow:inset 0 2px 4px rgba(0,0,0,.3)}
.kmc-mailbox-check{position:absolute;top:37px;left:0;right:0;color:#fff;font-size:25px;font-weight:700}
.kmc-flying-letter{position:absolute;top:165px;left:50%;width:132px;height:87px;margin-left:-66px;border-radius:10px;background:linear-gradient(160deg,#fff,#e6edff);border:1px solid #cad7fa;box-shadow:0 14px 30px rgba(13,36,100,.16);transform-origin:center;opacity:0;will-change:transform,opacity}
.kmc-letter-fold{position:absolute;inset:0;overflow:hidden;border-radius:9px}
.kmc-letter-fold:after{content:"";position:absolute;top:-58px;left:19px;width:91px;height:91px;border-right:2px solid #bccbf4;border-bottom:2px solid #bccbf4;transform:rotate(45deg);background:linear-gradient(135deg,#f8faff,#dce7ff)}
.kmc-success-message{opacity:0;transform:translateY(14px);width:100%;padding:128px 10px 8px;transition:opacity .4s ease,transform .4s ease}
.kmc-success-check{display:grid;place-items:center;margin:0 auto 14px;width:40px;height:40px;border-radius:50%;background:#e7f9ed;color:#168a47;font-size:24px}
.kmc-success-message h2{font-size:clamp(21px,3vw,26px);line-height:1.5;color:#102045;margin:0 0 8px}
.kmc-success-message p{font-size:14px;line-height:2;color:#576781;margin:0 auto 20px;max-width:350px}
.kmc-success-dismiss{background:#012bf9;color:#fff;border:0;border-radius:12px;padding:10px 26px;font:inherit;font-size:13px;cursor:pointer}
.kmc-success-scene.is-playing .kmc-flying-letter{animation:kmc-letter-flight 1.32s cubic-bezier(.24,.72,.21,1) both}
.kmc-success-scene.is-playing .kmc-mailbox{animation:kmc-mailbox-appear 1.25s ease both}
.kmc-success-scene.is-complete .kmc-success-message{opacity:1;transform:translateY(0)}
.kmc-success-scene.is-complete .kmc-mailbox{opacity:1;transform:translateX(-50%) scale(.8)}
.kmc-success-scene.is-complete .kmc-flying-letter{opacity:0}
@keyframes kmc-letter-flight{0%{opacity:1;transform:translateY(0) scale(1) rotate(0)}22%{opacity:1;transform:translateY(-13px) scale(.92) rotate(-6deg)}52%{opacity:1;transform:translateY(-41px) scale(.64) rotate(7deg)}78%{opacity:1;transform:translateY(-89px) scale(.34) rotate(0)}100%{opacity:0;transform:translateY(-108px) scale(.14) rotate(0)}}
@keyframes kmc-mailbox-appear{0%{opacity:0;transform:translateX(-50%) scale(.65)}20%,100%{opacity:1;transform:translateX(-50%) scale(.85)}}
@media(prefers-reduced-motion:reduce){.kmc-success-scene *{animation:none!important;transition:none!important}.kmc-success-scene.is-reduced .kmc-mailbox{opacity:1;transform:translateX(-50%) scale(.8)}.kmc-success-scene.is-reduced .kmc-success-message{opacity:1;transform:none}}

/* v1.2.10 — consultation service list: consistent Persian font and readable hover */
.kmc-overlay .kmc-service-field{position:relative;min-width:0}
.kmc-overlay .kmc-service-field>label{color:#26344f;font-family:'IRANSansXFaNum',Tahoma,sans-serif}
.kmc-overlay .kmc-service-field.kmc-field-select-open{z-index:30}
/* Native fallback has explicit contrast, even without JS. */
.kmc-overlay .kmc-service-field select,
.kmc-overlay .kmc-service-field select option,
.kmc-overlay .kmc-service-field select optgroup{
 font-family:'IRANSansXFaNum',Tahoma,sans-serif!important;
 font-size:13px!important;font-weight:500!important;
 color:#14213d!important;background-color:#fff!important;color-scheme:light!important;
}
.kmc-overlay .kmc-service-field select option:checked{color:#092bc5!important;background:#eaf0ff!important}
.kmc-overlay .kmc-service-field select option:hover,
.kmc-overlay .kmc-service-field select option:focus{color:#102456!important;background:#edf2ff!important}
.kmc-overlay .kmc-service-field select.kmc-native-enhanced{
 position:absolute!important;left:auto!important;right:0!important;bottom:0!important;
 width:1px!important;height:1px!important;min-width:0!important;
 padding:0!important;border:0!important;opacity:0!important;
 pointer-events:none!important;clip-path:inset(50%)!important;
}
.kmc-overlay .kmc-custom-select{position:relative;width:100%;font-family:'IRANSansXFaNum',Tahoma,sans-serif!important}
.kmc-overlay .kmc-select-trigger{
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 width:100%!important;min-height:49px!important;gap:12px!important;
 background:#fbfcff!important;border:1px solid #dfe6f3!important;
 border-radius:12px!important;padding:0 13px!important;
 text-align:right!important;color:#192844!important;outline:none;
 box-shadow:none!important;font-family:'IRANSansXFaNum',Tahoma,sans-serif!important;
 font-size:13px!important;font-weight:500!important;line-height:1.6!important;
 transition:border-color .18s ease,box-shadow .18s ease;
}
.kmc-overlay .kmc-select-trigger:hover{background:#f4f7ff!important;border-color:#aabdea!important;color:#192844!important}
.kmc-overlay .kmc-select-trigger:focus-visible,
.kmc-overlay .kmc-field-select-open .kmc-select-trigger{border-color:#012bf9!important;box-shadow:0 0 0 3px rgba(1,43,249,.10)!important}
.kmc-overlay .kmc-select-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.kmc-overlay .kmc-select-chevron{display:grid;place-items:center;flex:0 0 20px;color:#667997;transition:transform .18s ease}
.kmc-overlay .kmc-field-select-open .kmc-select-chevron{transform:rotate(180deg)}
.kmc-overlay .kmc-select-list{
 position:fixed;z-index:1000000;
 padding:6px;margin:0;max-height:258px;overflow-y:auto;overscroll-behavior:contain;
 border:1px solid #dce5f5;border-radius:15px;background:#fff!important;
 color:#192844!important;box-shadow:0 14px 42px rgba(14,39,97,.15);
 direction:rtl;scrollbar-width:thin;scrollbar-color:#c2d0ed transparent;
}
.kmc-overlay .kmc-select-list[hidden]{display:none!important}
.kmc-overlay .kmc-select-option{
 display:flex!important;align-items:center!important;justify-content:space-between!important;
 width:100%!important;min-height:39px!important;padding:8px 10px!important;
 margin:0!important;border:0!important;border-radius:9px!important;
 background:#fff!important;color:#192844!important;box-shadow:none!important;
 text-align:right!important;font-family:'IRANSansXFaNum',Tahoma,sans-serif!important;
 font-weight:500!important;font-size:13px!important;line-height:1.65!important;
 cursor:pointer;transition:background-color .12s ease,color .12s ease;
}
.kmc-overlay .kmc-select-option:hover,
.kmc-overlay .kmc-select-option:focus-visible{
 background:#eaf0ff!important;color:#0124bb!important;outline:none!important;
}
.kmc-overlay .kmc-select-option.is-selected{background:#f1f5ff!important;color:#012bf9!important;font-weight:600!important}
.kmc-overlay .kmc-select-option.is-selected:hover,
.kmc-overlay .kmc-select-option.is-selected:focus-visible{background:#e5edff!important;color:#0024bb!important}
.kmc-overlay .kmc-select-check{opacity:0;color:#012bf9;font-weight:700;margin-right:8px}
.kmc-overlay .kmc-select-option.is-selected .kmc-select-check{opacity:1}
@media(prefers-reduced-motion:reduce){.kmc-overlay .kmc-select-trigger,.kmc-overlay .kmc-select-chevron,.kmc-overlay .kmc-select-option{transition:none}}

/* v1.2.15: readable duplicate-mobile validation without disrupting the modal. */
.kmc-overlay .kmc-field input.kmc-phone-duplicate,
.kmc-overlay .kmc-field input.kmc-phone-duplicate:focus{border-color:#d64455!important;box-shadow:0 0 0 3px rgba(214,68,85,.1)!important}
.kmc-overlay .kmc-feedback[data-duplicate="true"]{border:1px solid rgba(214,68,85,.24);background:#fff3f4;color:#a21e32}
