/* Mobile-first product details modal; uses the existing dark storefront palette. */
body.dg-modal-open{overflow:hidden!important}
.dg-order-modal[hidden]{display:none!important}
.dg-order-modal{position:fixed;z-index:2147483000;inset:0;background:rgba(0,0,0,.82);
 display:flex;align-items:center;justify-content:center;padding:16px;direction:rtl;color:#f4ebfb}
.dg-modal-panel{position:relative;width:min(620px,100%);max-height:min(92dvh,940px);
 overflow-y:auto;overscroll-behavior:contain;border:1px solid #68417c;border-radius:22px;
 padding:30px 20px 22px;background:linear-gradient(150deg,#24152e,#120f1d 67%);
 box-shadow:0 20px 80px rgba(0,0,0,.7);text-align:right;scrollbar-color:#773f96 #20162b}
.dg-modal-close{position:sticky;top:0;float:left;z-index:2;background:#4b2c60;border:1px solid #ab6dd2;
 border-radius:50%;width:40px;height:40px;color:#fff;font-size:25px;cursor:pointer}
.dg-modal-header{display:flex;gap:16px;align-items:center;clear:both;margin:8px 0 20px}
.dg-modal-image{width:110px;height:88px;object-fit:contain;background:#110e19;border-radius:12px}
.dg-modal-title{font-size:clamp(21px,4vw,26px);font-weight:800;line-height:1.5;margin:0}
.dg-modal-muted{color:#c7b8d3;font-size:13px;margin:6px 0;line-height:1.7}
.dg-modal-description{font-size:15px;line-height:1.8;color:#eee3f7;overflow-wrap:anywhere}
.dg-modal-section{padding:16px 0;border-top:1px solid #4d3758;margin-top:14px}
.dg-modal-subtitle{font-size:18px;font-weight:800;color:#fff;margin:0 0 12px}
.dg-modal-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.dg-modal-option{background:#30203d;border:1px solid #65477b;color:#eee3f7;border-radius:11px;
 min-height:73px;padding:10px 8px;cursor:pointer;display:flex;flex-direction:column;gap:5px;
 justify-content:center;align-items:center;font-size:13px;overflow-wrap:anywhere}
.dg-modal-option strong{font-size:14px}
.dg-modal-option small{font-size:12px}
.dg-modal-option.is-selected{border-color:#ff7300;background:#44304c;box-shadow:inset 0 0 0 1px #ff7300}
.dg-modal-option:focus-visible,.dg-modal-close:focus-visible,.dg-modal-retry:focus-visible{outline:3px solid #fb9e36;outline-offset:3px}
.dg-modal-unavailable{color:#ddb5b5}
.dg-modal-price-row{display:flex;justify-content:space-between;gap:12px;font-size:17px;color:#f2e6fa}
.dg-modal-form-label{display:block;margin:14px 0 8px;font-size:14px;color:#f1eaf4}
.dg-modal-input{display:block;width:100%;height:43px;box-sizing:border-box;margin-top:7px;
 border:1px solid #77588a;border-radius:9px;color:#fff;background:#261b35;padding:8px 12px;
 font:inherit;direction:auto;min-width:0}
.dg-modal-input:disabled{opacity:.62}
.dg-modal-total{color:#e0ffd0;font-size:17px;font-weight:800;margin:12px 0}
.dg-modal-terms{border:1px solid #60446f;border-radius:9px;padding:12px;margin:12px 0}
.dg-modal-terms summary{cursor:pointer;font-weight:700}
.dg-modal-terms p{white-space:pre-line;line-height:1.7;overflow-wrap:anywhere;font-size:13px}
.dg-modal-notice{background:#3b293e;color:#ffddc2;border:1px solid #ae7c63;border-radius:11px;
 padding:13px;line-height:1.8;font-size:13px;margin:14px 0}
.dg-modal-checkout{background:#6f38ad;width:100%;min-height:49px;border-radius:12px;border:0;
 color:#fff;font-size:17px;font-weight:800}
.dg-modal-checkout:disabled{cursor:not-allowed;opacity:.62}
.dg-modal-error{color:#ffc5c5;line-height:1.7}
.dg-modal-retry{background:#64259b;color:#fff;border:0;border-radius:9px;padding:12px 17px;cursor:pointer}
.dg-modal-message{text-align:center;padding:40px 10px}
.dg-preview-card[data-product-id]{cursor:pointer}
@media(max-width:540px){
 .dg-order-modal{padding:0;align-items:flex-end}
 .dg-modal-panel{width:100%;max-height:94dvh;border-radius:22px 22px 0 0;padding:19px 16px 27px}
 .dg-modal-image{width:88px;height:78px}
 .dg-modal-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Customer-owned order details: prevent close button overlapping form fields. */
.dg-modal-close{position:absolute;top:15px;left:16px;float:none;display:grid;place-items:center}
.dg-modal-panel{padding-top:65px}
.dg-modal-headings{min-width:0;overflow-wrap:anywhere}
.dg-modal-product-name{color:#e4cffa;font-size:14px;line-height:1.6;margin:6px 0}
.dg-modal-static-country{color:#fff;font-weight:750;font-size:17px;margin:4px 0}
.dg-modal-option{transition:border-color .15s,background .15s}
.dg-modal-option:focus-visible,.dg-modal-input:focus-visible{outline:2px solid #fb9e36;outline-offset:2px}
.dg-modal-section .dg-modal-price-row{align-items:flex-start;padding:7px 0;border-bottom:1px solid #453251}
.dg-modal-price-row strong{max-width:65%;text-align:left;direction:auto;overflow-wrap:anywhere}
.dg-modal-form-label{font-weight:650}
.dg-modal-country{direction:auto;text-align:start}
.dg-modal-notice{background:#30233e;color:#f1d4b7;font-size:14px;line-height:1.85}
.dg-modal-input{height:48px}
.dg-modal-checkout{background:linear-gradient(110deg,#7932b4,#572593)}
.dg-modal-description,.dg-modal-terms p{white-space:pre-line}
@media(max-width:540px){
 .dg-modal-panel{padding:64px 17px 26px}
 .dg-modal-close{left:15px;top:13px}
 .dg-modal-option{min-height:76px}
 .dg-modal-section{padding:14px 0}
}
