/* Qura Sad Rad V2 — premium customer errand experience. */
#sadDialog{
  --sad-v2-brown:var(--q-brand-brown);
  --sad-v2-brown-2:var(--q-brand-brown);
  --sad-v2-orange:var(--q-brand-orange);
  --sad-v2-orange-2:var(--q-brand-orange);
  --sad-v2-cream:var(--q-brand-cream);
  --sad-v2-cream-2:var(--q-brand-cream);
  --sad-v2-line:#eadcc8;
  --sad-v2-text:var(--q-primary-text);
  --sad-v2-muted:#8b7968;
  --sad-v2-green:#347451;
  --sad-v2-green-soft:#edf7f0;
  width:min(820px,100%)!important;
  max-width:none!important;
  height:min(96dvh,920px)!important;
  max-height:none!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 100% 0,rgba(218,113,5,.08),transparent 30%),
    linear-gradient(180deg,#fffdf8 0,#fff8ed 100%)!important;
  box-shadow:0 28px 90px rgba(55,32,17,.27)!important;
  color:var(--q-primary-text)!important;
}

#sadDialog::backdrop{
  background:rgba(43,29,20,.48)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

#sadDialog [data-qura-ai-head="sad_rad"],
#sadDialog .qura-ai-inline-btn[data-qura-ai-head]{
  display:none!important;
}

#sadDialog .sad-top{
  position:sticky!important;
  top:0;
  z-index:30!important;
  min-height:82px;
  padding:max(12px,env(safe-area-inset-top)) 16px 12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  border-bottom:1px solid rgba(225,207,183,.85)!important;
  background:rgba(255,251,244,.96)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 5px 22px rgba(76,45,24,.035);
}

#sadDialog .sad-brand{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}

#sadDialog .sad-brand>div{
  min-width:0;
}

#sadDialog .sad-kicker{
  display:block;
  margin-bottom:1px;
  color:var(--sad-v2-orange);
  font:900 9px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
}

#sadDialog .sad-top h2{
  margin:0!important;
  color:var(--q-primary-text)!important;
  font-size:20px!important;
  line-height:1.35;
  font-weight:850!important;
}

#sadDialog .sad-top p{
  margin:2px 0 0!important;
  color:var(--sad-v2-muted)!important;
  font-size:10px!important;
  line-height:1.4;
}

#sadDialog .sad-icon-box{
  display:grid;
  place-items:center;
  flex:0 0 auto;
}

#sadDialog .sad-brand-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  background:linear-gradient(145deg,#fff1d9,#f4d19b);
  color:var(--q-primary-text);
  border:1px solid #ebc99b;
  box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(112,63,22,.08);
}

#sadDialog .sad-brand-mark svg{
  width:23px;
  height:23px;
}

#sadDialog .sad-close{
  width:42px!important;
  height:42px!important;
  padding:0!important;
  display:grid!important;
  place-items:center;
  border:1px solid #e9dece!important;
  border-radius:14px!important;
  background:#fff!important;
  color:var(--q-primary-text)!important;
  box-shadow:0 4px 13px rgba(73,43,22,.055);
}

#sadDialog .sad-close svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
}

#sadDialog .sad-body{
  min-height:0!important;
  flex:1 1 auto;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  padding:14px 15px calc(22px + env(safe-area-inset-bottom))!important;
}

#sadDialog .sad-error{
  top:82px!important;
  padding:9px 15px!important;
  background:#fff0e9!important;
  color:#a24835!important;
  border-bottom:1px solid #f1d4ca;
  font-size:10.5px!important;
}

/* Home */
#sadDialog .sad-hero{
  position:relative;
  overflow:hidden;
  min-height:205px;
  margin:0 0 18px!important;
  padding:25px 22px!important;
  border-radius:23px!important;
  background:
    radial-gradient(circle at 12% 105%,rgba(255,205,130,.18),transparent 33%),
    linear-gradient(135deg,#6b3517 0,#a6530c 58%,#cf7408 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 34px rgba(92,45,12,.16);
}

#sadDialog .sad-hero::before{
  content:'';
  position:absolute;
  width:190px;
  height:190px;
  inset-inline-end:-77px;
  top:-95px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 0 0 25px rgba(255,255,255,.025),0 0 0 55px rgba(255,255,255,.018);
}

#sadDialog .sad-hero-art{
  position:absolute;
  inset-inline-start:22px;
  bottom:20px;
  width:82px;
  height:82px;
  display:grid;
  place-items:center;
  border-radius:26px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.12);
  color:#ffd69a;
  transform:rotate(-5deg);
}

#sadDialog .sad-hero-art svg{
  width:50px;
  height:50px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.45;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-hero-kicker{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:4px 9px;
  margin-bottom:9px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:999px;
  background:rgba(255,255,255,.09);
  color:#ffe5bd;
  font-size:9px;
  font-weight:800;
}

#sadDialog .sad-hero h3{
  position:relative;
  z-index:1;
  max-width:540px;
  margin:0!important;
  color:#fff!important;
  font-size:29px!important;
  line-height:1.45;
  font-weight:850!important;
}

#sadDialog .sad-hero p{
  position:relative;
  z-index:1;
  max-width:540px;
  margin:7px 0 18px!important;
  color:#f7e7d6!important;
  font-size:11.5px!important;
  line-height:1.8;
}

#sadDialog .sad-hero-action{
  position:relative;
  z-index:1;
  width:auto!important;
  min-height:49px!important;
  padding:8px 13px!important;
  display:inline-flex!important;
  align-items:center;
  gap:8px!important;
  border:1px solid rgba(255,255,255,.68)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#713a16!important;
  box-shadow:0 8px 20px rgba(65,31,10,.17);
  font-weight:850!important;
}

#sadDialog .sad-hero-action .sad-icon-box{
  width:28px;
  height:28px;
  border-radius:9px;
  background:#fff1dc;
  color:#a55915;
}

#sadDialog .sad-hero-action svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
}

#sadDialog .sad-section-bar{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  margin:0 2px 10px;
}

#sadDialog .sad-section-eyebrow{
  display:block;
  color:var(--sad-v2-orange);
  font-size:8.5px;
  font-weight:850;
}

#sadDialog .sad-section-bar h3{
  margin:1px 0 0!important;
  color:var(--q-primary-text)!important;
  font-size:16px!important;
}

#sadDialog .sad-refresh-btn{
  min-height:36px!important;
  padding:6px 10px!important;
  gap:5px!important;
  border-radius:11px!important;
  background:#fff!important;
}

#sadDialog .sad-refresh-btn svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

/* Compact trip cards */
#sadDialog .sad-history{
  display:grid;
  gap:9px;
}

#sadDialog .sad-trip-card{
  position:relative;
  overflow:hidden;
  margin:0!important;
  padding:12px 12px 10px!important;
  border:1px solid var(--sad-v2-line)!important;
  border-radius:17px!important;
  background:linear-gradient(180deg,#fff,#fffdfa)!important;
  box-shadow:0 7px 22px rgba(67,42,23,.05)!important;
  text-align:start!important;
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}

#sadDialog .sad-trip-card::before{
  content:'';
  position:absolute;
  inset-block:0;
  inset-inline-start:0;
  width:3px;
  background:var(--sad-v2-orange);
}

#sadDialog .sad-trip-card[data-phase="delivered"]::before{background:#4b8a65}
#sadDialog .sad-trip-card[data-phase="cancelled"]::before{background:#c66b58}

#sadDialog .sad-trip-card:active{
  transform:scale(.992);
}

#sadDialog .sad-trip-main{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 28px;
  gap:9px;
  align-items:center;
}

#sadDialog .sad-trip-icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#fff2df;
  color:#985316;
  border:1px solid #eed4ad;
}

#sadDialog .sad-trip-icon svg,
#sadDialog .sad-trip-arrow svg,
#sadDialog .sad-trip-meta svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-trip-icon svg{width:20px;height:20px}

#sadDialog .sad-trip-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:5px;
}

#sadDialog .sad-trip-title{
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
}

#sadDialog .sad-trip-title strong{
  color:var(--q-primary-text);
  font-size:13px!important;
  white-space:nowrap;
}

#sadDialog .sad-trip-title .sad-tag{
  min-width:0;
  max-width:55%;
  padding:3px 7px!important;
  font-size:8.8px!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#sadDialog .sad-tag.cancelled{
  background:#fff0ec!important;
  color:#a34735!important;
}

#sadDialog .sad-trip-place{
  color:var(--sad-v2-muted);
  font-size:9.5px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

#sadDialog .sad-trip-arrow{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border:1px solid #eadcc8;
  border-radius:9px;
  background:#fff7eb;
  color:#af6216;
}

#sadDialog .sad-trip-arrow svg{
  width:15px;
  height:15px;
}

#sadDialog .sad-trip-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:9px;
  padding-top:8px;
  border-top:1px solid #f1e7da;
}

#sadDialog .sad-trip-bottom>span:first-child{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

#sadDialog .sad-trip-bottom b{
  color:#3d2a1f;
  font-size:11.5px;
}

#sadDialog .sad-trip-bottom small{
  color:var(--sad-v2-muted);
  font-size:8.5px;
}

#sadDialog .sad-trip-meta{
  display:flex;
  align-items:center;
  gap:4px;
  color:#94765e;
  white-space:nowrap;
}

#sadDialog .sad-trip-meta svg{width:12px;height:12px}

#sadDialog .sad-trip-unread{
  display:inline-flex;
  margin-top:7px;
  padding:3px 7px;
  border-radius:999px;
  background:#fff1d9;
  color:#a65d15;
  font-size:8px;
  font-weight:800;
}

/* Shared steps */
#sadDialog .sad-create-form{
  display:grid;
  gap:11px;
}

#sadDialog .sad-step-card{
  margin:0!important;
  padding:16px!important;
  border:1px solid var(--sad-v2-line);
  border-radius:20px;
  background:rgba(255,255,255,.98);
  box-shadow:0 8px 28px rgba(70,44,24,.05);
}

#sadDialog .sad-step-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:13px;
}

#sadDialog .sad-step-number{
  width:35px;
  height:35px;
  flex:0 0 35px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:linear-gradient(145deg,#fff0d7,#f6d8a7);
  color:#7e4214;
  border:1px solid #ebc99a;
  font-size:13px;
  font-weight:900;
}

#sadDialog .sad-step-head h3{
  margin:0!important;
  color:var(--q-primary-text)!important;
  font-size:15px!important;
}

#sadDialog .sad-step-head p{
  margin:2px 0 0!important;
  color:var(--sad-v2-muted)!important;
  font-size:9.5px!important;
  line-height:1.45;
}

/* Location controls */
#sadDialog .sad-map-controls{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:8px!important;
  margin:0 0 12px!important;
}

#sadDialog .sad-location-tab{
  min-height:63px!important;
  padding:8px 9px!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr);
  align-items:center;
  justify-content:start!important;
  gap:8px!important;
  border:1px solid #e4d9ca!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#715542!important;
  text-align:start!important;
}

#sadDialog .sad-location-tab.selected{
  border:2px solid var(--sad-v2-orange)!important;
  background:linear-gradient(145deg,#fff9ef,#fff0d5)!important;
  color:var(--q-primary-text)!important;
  box-shadow:0 6px 16px rgba(187,102,13,.08);
}

#sadDialog .sad-location-tab .sad-icon-box{
  width:34px;
  height:34px;
  border-radius:11px;
  background:#fff2df;
  color:#995418;
}

#sadDialog .sad-location-tab.selected .sad-icon-box{
  background:linear-gradient(145deg,var(--sad-v2-orange-2),var(--sad-v2-orange));
  color:var(--q-on-orange);
}

#sadDialog .sad-location-tab svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-location-tab>span:last-child{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}

#sadDialog .sad-location-tab strong{
  font-size:10.5px;
}

#sadDialog .sad-location-tab small{
  color:var(--sad-v2-muted);
  font-size:8px;
}

#sadDialog .sad-field{
  gap:6px!important;
  margin:10px 0!important;
  color:#574438!important;
  font-size:10.5px!important;
  font-weight:750!important;
}

#sadDialog .sad-field-label{
  display:flex;
  align-items:center;
  gap:6px;
}

#sadDialog .sad-field-label .sad-icon-box{
  width:25px;
  height:25px;
  border-radius:8px;
  background:#fff3df;
  color:#945119;
}

#sadDialog .sad-field-label svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-search-input{
  position:relative;
}

#sadDialog .sad-search-input>span{
  position:absolute;
  inset-inline-start:11px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  color:#a16a39;
  pointer-events:none;
}

#sadDialog .sad-search-input svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

#sadDialog .sad-search-input input{
  padding-inline-start:38px!important;
}

#sadDialog .sad-field input,
#sadDialog .sad-field textarea{
  min-height:45px!important;
  margin:0!important;
  border:1px solid #e2d8cc!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--q-primary-text)!important;
  font:650 11.5px/1.55 inherit!important;
  outline:none!important;
  box-shadow:none!important;
}

#sadDialog .sad-field input{
  padding:9px 11px!important;
}

#sadDialog .sad-field textarea{
  min-height:90px!important;
  padding:10px 11px!important;
}

#sadDialog .sad-field input:focus,
#sadDialog .sad-field textarea:focus{
  border-color:#d49347!important;
  box-shadow:0 0 0 3px rgba(218,113,5,.09)!important;
}

#sadDialog .sad-map-wrap{
  position:relative;
  overflow:hidden;
  border:1px solid #e8dccd;
  border-radius:17px;
  background:#eee9e3;
}

#sadDialog .sad-map{
  height:290px!important;
  border-radius:0!important;
}

#sadDialog .sad-map-tip{
  position:absolute;
  top:9px;
  left:50%;
  transform:translateX(-50%);
  z-index:9;
  min-height:31px;
  padding:5px 9px;
  display:flex;
  align-items:center;
  gap:5px;
  border:1px solid rgba(111,72,40,.13);
  border-radius:999px;
  background:rgba(255,255,255,.93);
  color:#715541;
  box-shadow:0 5px 14px rgba(52,34,24,.10);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  font-size:8.7px;
  font-weight:750;
  white-space:nowrap;
  pointer-events:none;
}

#sadDialog .sad-map-tip svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:var(--sad-v2-orange);
  stroke-width:1.8;
  stroke-linecap:round;
}

#sadDialog .sad-map-status{
  min-height:0!important;
  margin:7px 2px 10px!important;
  color:var(--sad-v2-muted)!important;
  font-size:9.5px!important;
  line-height:1.5;
}

#sadDialog .sad-current-location{
  min-height:44px!important;
  border-style:dashed!important;
  border-color:#e0bc86!important;
  background:#fffaf2!important;
  color:#7c4518!important;
}

#sadDialog .sad-current-location .sad-icon-box{
  width:27px;
  height:27px;
  border-radius:9px;
  background:#fff0d7;
}

#sadDialog .sad-current-location svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

#sadDialog .sad-nearby{
  min-height:59px;
  margin:10px 0!important;
  padding:10px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr);
  gap:9px!important;
  border:1px solid #d6e7d9!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#f0f8f2,#eaf6ed)!important;
  color:#285c3d!important;
}

#sadDialog .sad-nearby-icon{
  width:38px;
  height:38px;
  border-radius:12px;
  background:#fff;
  color:#357651;
  border:1px solid #d5e8da;
}

#sadDialog .sad-nearby-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

#sadDialog .sad-nearby b{
  font-size:10.5px!important;
  line-height:1.45;
}

#sadDialog .sad-nearby small{
  margin-top:2px;
  color:#60806c;
  font-size:8.7px!important;
  line-height:1.45;
}

#sadDialog .sad-address-grid,
#sadDialog .sad-contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
}

/* Categories */
#sadDialog .sad-category{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  gap:7px!important;
}

#sadDialog .sad-category-option{
  position:relative;
  min-height:83px;
  padding:9px 5px!important;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  border:1px solid #e7ddd0!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#6d5747;
  cursor:pointer;
  transition:.15s ease;
}

#sadDialog .sad-category-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

#sadDialog .sad-category-icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:#fff4e4;
  color:#975216;
}

#sadDialog .sad-category-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-category-option strong{
  font-size:9.5px;
  font-weight:800;
}

#sadDialog .sad-category-check{
  position:absolute;
  top:7px;
  inset-inline-end:7px;
  width:14px;
  height:14px;
  border:1px solid #d9cfc4;
  border-radius:50%;
  background:#fff;
}

#sadDialog .sad-category-option:has(input:checked){
  border:2px solid var(--sad-v2-orange)!important;
  background:linear-gradient(145deg,#fff9ee,#fff0d6)!important;
  color:var(--q-primary-text)!important;
  box-shadow:0 5px 15px rgba(183,101,13,.08);
}

#sadDialog .sad-category-option:has(input:checked) .sad-category-icon{
  color:var(--q-on-orange);
  background:linear-gradient(145deg,var(--sad-v2-orange-2),var(--sad-v2-orange));
}

#sadDialog .sad-category-option:has(input:checked) .sad-category-check{
  border:4px solid var(--sad-v2-orange);
}

#sadDialog .sad-fee-note{
  display:grid;
  grid-template-columns:35px minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:9px 10px;
  border:1px solid #ecdcc4;
  border-radius:13px;
  background:#fff9ef;
}

#sadDialog .sad-fee-note .sad-icon-box{
  width:35px;
  height:35px;
  border-radius:11px;
  color:#8c4b15;
  background:#fff0d9;
}

#sadDialog .sad-fee-note svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

#sadDialog .sad-fee-note p{
  margin:0!important;
  color:#725c49!important;
  font-size:9.3px!important;
  line-height:1.6;
}

#sadDialog .sad-service-summary{
  margin:9px 0!important;
  padding:8px 10px;
  border:1px solid #eee2d3;
  border-radius:12px;
  background:#fffdfa;
}

#sadDialog .sad-service-summary>div{
  padding:2px 0!important;
}

#sadDialog .sad-service-summary dt,
#sadDialog .sad-service-summary dd{
  font-size:10px!important;
}

#sadDialog .sad-submit-trip{
  min-height:58px!important;
  margin-top:12px;
  padding:8px 10px!important;
  display:grid!important;
  grid-template-columns:39px minmax(0,1fr) 28px;
  align-items:center;
  gap:9px!important;
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#5c321c,var(--sad-v2-brown))!important;
  color:var(--q-on-brown)!important;
  box-shadow:0 9px 22px rgba(75,42,24,.23);
}

#sadDialog .sad-submit-icon{
  width:39px;
  height:39px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:linear-gradient(145deg,#ffdba4,#efb35e);
  color:#5b3019;
}

#sadDialog .sad-submit-icon svg,
#sadDialog .sad-submit-arrow svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-submit-trip>span:nth-child(2){
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}

#sadDialog .sad-submit-trip strong{
  font-size:11.5px;
}

#sadDialog .sad-submit-trip small{
  color:#ead9ce;
  font-size:8px;
}

#sadDialog .sad-submit-arrow{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:rgba(255,255,255,.09);
}

/* Interactive map markers */
#sadDialog .sad-pin{
  position:relative!important;
  width:44px!important;
  height:52px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:0!important;
  cursor:pointer!important;
  outline:none!important;
  overflow:visible!important;
  transform-origin:50% 100%;
}

#sadDialog .sad-pin-core{
  position:absolute;
  left:50%;
  top:0;
  width:42px;
  height:42px;
  transform:translateX(-50%);
  display:grid;
  place-items:center;
  border:3px solid #fff;
  border-radius:14px;
  background:linear-gradient(145deg,#fff0d2,#efc27a);
  color:#713711;
  box-shadow:0 7px 18px rgba(75,42,20,.22);
  z-index:3;
}

#sadDialog .sad-pin-core svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

#sadDialog .sad-pin-tail{
  position:absolute;
  left:50%;
  top:35px;
  width:13px;
  height:13px;
  transform:translateX(-50%) rotate(45deg);
  border-right:3px solid #fff;
  border-bottom:3px solid #fff;
  border-radius:2px;
  background:#e8b967;
  z-index:2;
}

#sadDialog .sad-pin.delivery .sad-pin-core{
  background:linear-gradient(145deg,#f2a029,var(--q-brand-orange));
  color:var(--q-on-orange);
  border-radius:50% 50% 50% 12px;
  transform:translateX(-50%) rotate(-45deg);
}

#sadDialog .sad-pin.delivery .sad-pin-core svg{
  transform:rotate(45deg);
}

#sadDialog .sad-pin.delivery .sad-pin-tail{display:none}

#sadDialog .sad-pin.courier .sad-pin-core{
  border-radius:50%;
  background:linear-gradient(145deg,#6d391e,#4b2a18);
  color:#ffd59a;
}

#sadDialog .sad-pin.courier .sad-pin-tail{
  background:#4b2a18;
}

#sadDialog .sad-pin-pulse{
  position:absolute;
  left:50%;
  top:21px;
  width:43px;
  height:43px;
  transform:translate(-50%,-50%);
  border:2px solid rgba(218,113,5,.25);
  border-radius:50%;
  opacity:0;
}

#sadDialog .sad-pin.courier .sad-pin-pulse{
  animation:sadV2MapPulse 2s ease-out infinite;
}

@keyframes sadV2MapPulse{
  0%{transform:translate(-50%,-50%) scale(.75);opacity:.8}
  75%,100%{transform:translate(-50%,-50%) scale(1.45);opacity:0}
}

#sadDialog .sad-mapbox-popup .mapboxgl-popup-content{
  padding:7px 9px!important;
  border:1px solid #eadcca;
  border-radius:12px!important;
  box-shadow:0 8px 22px rgba(63,38,21,.15)!important;
  font-family:inherit!important;
}

#sadDialog .sad-map-popup{
  display:flex;
  align-items:center;
  gap:7px;
  direction:rtl;
}

#sadDialog .sad-map-popup-icon{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#fff1da;
  color:#965116;
}

#sadDialog .sad-map-popup-icon.courier{
  background:#4b2a18;
  color:#ffd59a;
}

#sadDialog .sad-map-popup-icon.delivery{
  background:var(--q-brand-orange);
  color:var(--q-on-orange);
}

#sadDialog .sad-map-popup-icon svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

#sadDialog .sad-map-popup>span:last-child{
  max-width:180px;
  color:#3e2b20;
  font-size:9.5px;
  font-weight:750;
  line-height:1.45;
}

/* Existing detail cards inherit the visual system. */
#sadDialog .sad-card:not(.sad-trip-card){
  border-color:var(--sad-v2-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 7px 24px rgba(66,41,23,.045);
}

#sadDialog .sad-btn{
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;
}

#sadDialog .sad-btn:active:not(:disabled){
  transform:translateY(1px);
}

@media(max-width:680px){
  #sadDialog{
    width:100%!important;
    height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    border-radius:0!important;
  }

  #sadDialog .sad-top{
    min-height:76px;
    padding-inline:12px!important;
  }

  #sadDialog .sad-brand-mark{
    width:39px;
    height:39px;
    border-radius:12px;
  }

  #sadDialog .sad-close{
    width:39px!important;
    height:39px!important;
    border-radius:12px!important;
  }

  #sadDialog .sad-body{
    padding:12px 12px calc(18px + env(safe-area-inset-bottom))!important;
  }

  #sadDialog .sad-hero{
    min-height:200px;
    padding:21px 18px!important;
    border-radius:20px!important;
  }

  #sadDialog .sad-hero h3{
    max-width:80%;
    font-size:24px!important;
  }

  #sadDialog .sad-hero p{
    max-width:78%;
    font-size:10.5px!important;
  }

  #sadDialog .sad-hero-art{
    width:72px;
    height:72px;
    inset-inline-start:17px;
    bottom:18px;
    border-radius:22px;
  }

  #sadDialog .sad-hero-art svg{
    width:43px;
    height:43px;
  }

  #sadDialog .sad-step-card{
    padding:14px!important;
    border-radius:18px;
  }

  #sadDialog .sad-map{
    height:255px!important;
  }

  #sadDialog .sad-address-grid,
  #sadDialog .sad-contact-grid{
    grid-template-columns:1fr;
    gap:0;
  }

  #sadDialog .sad-category{
    gap:6px!important;
  }

  #sadDialog .sad-category-option{
    min-height:77px;
  }
}

@media(max-width:390px){
  #sadDialog .sad-category{
    grid-template-columns:repeat(2,1fr)!important;
  }

  #sadDialog .sad-map-controls{
    grid-template-columns:1fr!important;
  }

  #sadDialog .sad-location-tab{
    min-height:56px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  #sadDialog *,
  #sadDialog *::before,
  #sadDialog *::after{
    transition:none!important;
    animation:none!important;
  }
}
