:root{--dmship-bg:#06061c;--dmship-accent:#3e68ff;--dmship-accent-hover:#2f52d6;--dmship-danger:#ef3e63}

.dmship-rate-subtitle{font-size:12px;color:#6b7280;margin-top:3px}

/* ⚠ THE PRICE LINE IS READ, NOT DECORATED, and it needs its own colour token.
   It carries no font-size, so it inherits the checkout's body size ⇒ WCAG asks 4.5:1, not the
   3:1 that large text gets. MEASURED: the shipped accent on a white panel is ~4.48:1, i.e. just
   under; on a dark checkout panel it fell to 4.10:1. The accent itself is NOT the problem — it is
   correct on the buttons, where white ink sits on top of it rather than beside it.
   So the colour becomes overridable on its own, WITHOUT being declared in the :root block above.
   Two consequences, both deliberate:
     - no site changes by construction (the fallback is exactly the previous value), and
     - a host theme can set it at ANY specificity, because there is no plugin :root rule to beat.
       Adding it to :root would have recreated the specificity fight the theme already has to win
       with `html:root` elsewhere in this line.
   ⚠ The shipped DEFAULT is deliberately left at the accent (owner's call, 2026-09-06): changing it
   would alter every existing store's checkout. The ~4.48:1 therefore still stands for any buyer
   who does not set this token — known, recorded, not forgotten. */
.dmship-cod-price{font-weight:700;color:var(--dmship-cod-price-color,var(--dmship-accent))}

.dmship-co-btn{display:block;width:100%;border:0;border-radius:8px;padding:13px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;background:var(--dmship-accent);color:#fff;margin-top:6px;transition:background .15s ease}
.dmship-co-btn:hover{background:var(--dmship-accent-hover)}
.dmship-co-hint{font-size:12px;color:#6b7280;text-align:center;margin-top:6px}

.dmship-slot-field{margin-top:8px}
.dmship-slot-field .dmship-slot-lbl{font-size:12px;color:#6b7280;margin-bottom:6px}

.dmship-modal-back{position:fixed;inset:0;background:rgba(20,22,30,.5);display:flex;align-items:center;justify-content:center;z-index:99999;padding:16px}
.dmship-modal{width:100%;max-width:400px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 12px 40px rgba(6,6,28,.25);direction:rtl}
.dmship-modal-h{background:#06061c;color:#fff;padding:13px 16px;display:flex;justify-content:space-between;align-items:center}
.dmship-modal-h b{font-size:15px}
.dmship-modal-h .x{cursor:pointer;display:inline-flex;opacity:.75;transition:opacity .15s ease}
.dmship-modal-h .x:hover{opacity:1}
.dmship-modal-b{padding:16px;max-height:60vh;overflow:auto}
.dmship-modal-b p{margin:0 0 14px;font-size:13px;color:#39414f;line-height:1.8}
.dmship-slot-lbl{font-size:12px;color:#6b7280;margin-bottom:8px}
.dmship-ts-daypick{margin-bottom:10px}
.dmship-ts-daypick .dmship-input,.dmship-ts-daypick select{width:100%;border:1px solid #e3e6eb;border-radius:8px;padding:9px 10px;font:inherit;font-size:13px;background:#fff}
.dmship-ts-list{display:flex;flex-direction:column;gap:8px}
.dmship-ts-opt{display:flex;align-items:center;gap:10px;border:1px solid #e3e6eb;border-radius:8px;padding:11px 12px;cursor:pointer;font-size:13px}
.dmship-ts-opt.sel{border-color:var(--dmship-accent);background:#eef2ff}
.dmship-ts-opt input{margin:0}
.dmship-req{font-size:12px;color:var(--dmship-danger);margin-top:10px;display:none}
.dmship-req.show{display:block}
.dmship-modal-f{padding:14px 16px;border-top:1px solid #e3e6eb;display:flex;gap:10px}
.dmship-modal-f .confirm{flex:1;background:var(--dmship-accent);color:#fff;border:0;border-radius:8px;padding:12px;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s ease}
.dmship-modal-f .confirm:hover{background:var(--dmship-accent-hover)}
.dmship-modal-f .cancel{background:#fff;border:1px solid #e3e6eb;border-radius:8px;padding:12px 18px;font:inherit;cursor:pointer}

/* ── زمان تحویل: سه حالت ──────────────────────────────────────────────
   ⚠ ظاهرِ پیش‌فرضِ خودِ افزونه است، عمداً خنثی: روی هر قالبی که خریدار دارد
   باید قابلِ قبول باشد. قالبی که ظاهرِ خودش را می‌خواهد، همین کلاس‌ها را
   بازنویسی می‌کند — مارک‌آپ یکی است.
   ⚠ پنل‌ها فقط با ویژگیِ hidden پنهان می‌شوند و همین یک مکانیزم همه‌جا:
   ویژگیِ hidden وزنِ ۰-۱-۰ دارد و بدونِ این نرمال‌سازی، هر قانونی که display
   بدهد آن را می‌بازد و پنلِ «پنهان» کاملاً دیده می‌شود. */
.dmship-dt{margin:18px 0;position:relative}
.dmship-dt [hidden]{display:none!important}
/* حالتِ انتظارِ رفت‌وبرگشتِ ووکامرس — بدونِ پوششِ خاکستری، فقط کم‌رنگ و غیرقابلِ کلیک */
.dmship-dt.is-busy{opacity:.5;pointer-events:none}
.dmship-dt.is-busy .dmship-dt__head::after{content:"";display:inline-block;vertical-align:middle;margin-inline-start:8px;width:13px;height:13px;border:2px solid var(--dmship-accent);border-top-color:transparent;border-radius:50%;animation:dmship-dt-spin .7s linear infinite}
@keyframes dmship-dt-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.dmship-dt.is-busy .dmship-dt__head::after{animation:none}}
.dmship-dt__head{margin-bottom:10px}
.dmship-dt__title{display:block;font-weight:700;font-size:14px}
.dmship-dt__hint{display:block;font-size:12px;color:#6b7280;margin-top:2px}
.dmship-dt__cards{display:flex;gap:12px;flex-wrap:wrap}
.dmship-dt-card{flex:1 1 190px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e3e6eb;border-radius:12px;padding:12px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}
.dmship-dt-card:hover{border-color:var(--dmship-accent)}
.dmship-dt-card.is-selected{border-color:var(--dmship-accent);box-shadow:inset 0 0 0 1px var(--dmship-accent)}
.dmship-dt-card__radio{margin:0;flex:0 0 auto}
.dmship-dt-card__icon{display:flex;color:var(--dmship-accent);flex:0 0 auto}
.dmship-dt-card__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.dmship-dt-card__title{font-weight:700;font-size:13px}
.dmship-dt-card__line{font-size:11.5px;color:#6b7280}
.dmship-dt-panel{margin-top:12px;border:1px solid #e3e6eb;border-radius:12px;padding:12px}
.dmship-dt-panel__label{display:block;font-size:12px;font-weight:700;margin-bottom:6px}
.dmship-dt-slots{display:flex;flex-wrap:wrap;gap:8px}
.dmship-dt-slot{display:flex;align-items:center;gap:6px;border:1px solid #e3e6eb;border-radius:8px;padding:8px 10px;font-size:12px;cursor:pointer}
.dmship-dt-field{margin:0 0 10px}
.dmship-dt-select{width:100%;max-width:320px}
@media(max-width:600px){.dmship-dt__cards{flex-direction:column}}
