/* DockFlow Guest Profile Drawer — canonical V2 cascade owner
   v0.6.1073
   Guest keeps its CRM controller/content. This late-loaded bridge repeats the SAME
   shared DockFlow V2 chassis/tokens already defined in df-ui-v2.css so historical
   inline Guest overrides can no longer win the cascade. No second design system. */

/* Outer drawer + underlay: same operational drawer behavior as Fleet/Calendar. */
html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{
  position:fixed !important;
  inset:0 0 0 auto !important;
  width:var(--dfd-drawer-w-l,clamp(640px,52vw,920px)) !important;
  max-width:100vw !important;
  height:100dvh !important;
  max-height:100dvh !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:-22px 0 60px rgba(15,23,42,.14) !important;
  opacity:0 !important;
  visibility:visible !important;
  transform:translate3d(104%,0,0) !important;
  pointer-events:none !important;
  overflow:hidden !important;
  transition:transform .22s cubic-bezier(.22,1,.36,1),opacity .16s ease !important;
  will-change:transform !important;
  z-index:10005 !important;
}
html body.dfd-app.dfd-guestdrawer-open #dfd-guest-drawer.df-ui-drawer--guest-v2,
html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2.is-open{
  opacity:1 !important;
  transform:translate3d(0,0,0) !important;
  pointer-events:auto !important;
}
html body.dfd-app [data-dfd-guest-overlay]{
  position:fixed !important;
  inset:0 !important;
  z-index:10000 !important;
  display:block !important;
  background:rgba(6,12,24,.28) !important;
  -webkit-backdrop-filter:blur(1px) saturate(1.02) !important;
  backdrop-filter:blur(1px) saturate(1.02) !important;
  opacity:0 !important;
  visibility:visible !important;
  pointer-events:none !important;
  transition:opacity .18s ease !important;
}
html body.dfd-app.dfd-guestdrawer-open [data-dfd-guest-overlay]{opacity:1 !important;pointer-events:auto !important;}
@media (max-width:960px){html.dfd-guestdrawer-open,html.dfd-guestdrawer-open body{overflow:hidden !important;overscroll-behavior:none !important;}}

html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__panel.df-ui-drawer__panel{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:var(--df-drawer-v2-canvas) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__form{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  margin:0 !important;
  background:var(--df-drawer-v2-canvas) !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:none !important;
  grid-template-rows:var(--df-drawer-v2-header-h) minmax(0,1fr) var(--df-drawer-v2-footer-h) !important;
  background:var(--df-drawer-v2-canvas) !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active{display:grid !important;}

/* Header chrome is owned exclusively by df-ui-v2.css. Guest uses the same
   df-ui-drawer-header-v2 classes and Lucide X as Fleet/Calendar. */
/* Canonical pale V2 work surface with restrained CRM cards. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2:not(.df-ui-drawer-body-v2--fullbleed){
  min-width:0 !important;
  min-height:0 !important;
  display:grid !important;
  align-content:start !important;
  gap:14px !important;
  margin:0 !important;
  padding:18px 20px 28px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  background:var(--df-drawer-v2-body-bg) !important;
  scrollbar-width:thin !important;
  scrollbar-color:#aebdb5 #eef3f0 !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar{width:8px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar-track{background:#eef3f0 !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar-thumb{border:2px solid #eef3f0 !important;border-radius:999px !important;background:#aebdb5 !important;background-clip:padding-box !important;}
html body.dfd-app #dfd-guest-drawer :is(.dfd-guestdrawer__hero,.dfd-guestdrawer__section,.dfd-guestdrawer__triphero,.dfd-guestdrawer__qrpanel){
  margin:0 !important;
  padding:18px !important;
  border:1px solid rgba(15,23,42,.07) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(15,23,42,.025) !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__hero--snapshot{background:radial-gradient(circle at 88% 16%,rgba(var(--df-drawer-v2-accent-rgb),.08),transparent 34%),#fff !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__snapshotgrid{gap:10px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__snapcard{border-radius:15px !important;border-color:rgba(15,23,42,.07) !important;background:#fff !important;box-shadow:none !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sectioneyebrow{color:var(--df-drawer-v2-accent-deep) !important;font-size:10px !important;font-weight:800 !important;letter-spacing:.08em !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sectionhead h3{color:var(--df-drawer-v2-ink-strong) !important;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;font-size:18px !important;font-weight:700 !important;letter-spacing:-.025em !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__field input,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__field select,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__field textarea{border-radius:12px !important;border-color:rgba(15,23,42,.10) !important;background:#fff !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__field :is(input,select,textarea):focus{border-color:var(--df-drawer-v2-accent-focus) !important;box-shadow:0 0 0 3px rgba(var(--df-drawer-v2-accent-rgb),.10) !important;}

/* Canonical V2 footer/actions. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__foot.df-ui-drawer-footer-v2{
  position:relative !important;
  z-index:50 !important;
  min-height:var(--df-drawer-v2-footer-h) !important;
  height:var(--df-drawer-v2-footer-h) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:var(--df-drawer-v2-footer-action-gap) !important;
  width:100% !important;
  margin:0 !important;
  padding:var(--df-drawer-v2-footer-pad-y) var(--df-drawer-v2-footer-pad-x) !important;
  border:0 !important;
  border-top:1px solid var(--df-drawer-v2-line) !important;
  background:rgba(255,255,255,.97) !important;
  box-shadow:0 -14px 36px rgba(25,59,43,.055) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__footmeta{display:none !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__footactions.df-ui-drawer-footer-v2__actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:var(--df-drawer-v2-footer-action-gap) !important;
  width:auto !important;
  margin:0 0 0 auto !important;
}
/* Canonical text-button visuals are owned exclusively by shared .df-ui-drawer-action-v2. */

/* Async state stays inside the drawer surface. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__loading,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__loaderror{
  width:100% !important;
  height:100% !important;
  min-height:100dvh !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  padding:32px !important;
  text-align:center !important;
  color:var(--df-drawer-v2-copy) !important;
  background:var(--df-drawer-v2-body-bg) !important;
  font:500 13px/1.5 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__loaderror strong{color:var(--df-drawer-v2-ink-strong) !important;font-size:18px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__loaderror p{max-width:34ch;margin:0 0 6px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__loaderroricon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#fff5e7;color:#c87508;font-weight:800;}

@media (max-width:960px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{
    inset:0 !important;
    width:100vw !important;
    max-width:100vw !important;
    height:100dvh !important;
    max-height:100dvh !important;
    border-left:0 !important;
    box-shadow:none !important;
  }
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view{grid-template-rows:105px minmax(0,1fr) var(--df-drawer-v2-footer-h) !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2:not(.df-ui-drawer-body-v2--fullbleed){gap:12px !important;padding:14px 14px calc(24px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-drawer :is(.dfd-guestdrawer__hero,.dfd-guestdrawer__section,.dfd-guestdrawer__triphero,.dfd-guestdrawer__qrpanel){padding:15px !important;border-radius:16px !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__snapshotgrid{grid-template-columns:1fr !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__grid{grid-template-columns:1fr !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__field--full{grid-column:auto !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__foot.df-ui-drawer-footer-v2{padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__footactions.df-ui-drawer-footer-v2__actions{width:100% !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__footactions .df-ui-drawer-action-v2{flex:1 1 0 !important;min-width:0 !important;}
}

/* ========================================================================== 
   v0.6.1066 Guest Profile V2 — CRM composition on the canonical drawer chassis
   Shared chassis/background/footer/actions/tabs/KPIs/sheets remain V2 primitives.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body--snapshot.df-ui-drawer-body-v2.df-ui-drawer-body-v2--fullbleed{
  display:block !important;
  gap:0 !important;
  background:var(--df-drawer-v2-body-bg) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2 *,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2 *::before,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2 *::after{box-sizing:border-box !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2{
  --df-guest-v2-ink:#101815;
  --df-guest-v2-copy:#65766d;
  --df-guest-v2-muted:#84918b;
  --df-guest-v2-line:var(--df-drawer-v2-line);
  width:100% !important;
  min-width:0 !important;
  color:var(--df-guest-v2-ink) !important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}

/* Guest identity hero: calm, full-bleed Calendar-style identity surface.
   Relationship/VIP/restriction/channel metadata lives in the Profile tab, not here. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__hero{
  position:relative !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:72px minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
  min-height:126px !important;
  margin:0 !important;
  padding:20px 22px !important;
  border:0 !important;
  border-bottom:1px solid var(--df-guest-v2-line) !important;
  border-radius:0 !important;
  background:radial-gradient(circle at 92% 28%,rgba(var(--df-drawer-v2-accent-rgb),.065),transparent 31%),linear-gradient(180deg,#fff 0%,#fbfdfc 100%) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__hero::after{display:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__avatarwrap{position:relative !important;z-index:1 !important;width:72px !important;height:72px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__avatar{
  width:72px !important;
  height:72px !important;
  min-width:72px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  margin:0 !important;
  border:1px solid var(--df-guest-avatar-border) !important;
  border-radius:50% !important;
  background:var(--df-guest-avatar-bg) !important;
  color:var(--df-guest-avatar-ink) !important;
  box-shadow:var(--df-guest-avatar-shadow) !important;
  font:800 19px/1 Inter,sans-serif !important;
  letter-spacing:.02em !important;
  object-fit:cover !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__avatar img{width:100% !important;height:100% !important;display:block !important;object-fit:cover !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__herocopy{position:relative !important;z-index:1 !important;display:block !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:16px !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading>div{min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading h3{margin:0 !important;color:var(--df-guest-v2-ink) !important;font:680 21px/1.14 Inter,sans-serif !important;letter-spacing:-.035em !important;overflow-wrap:anywhere !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading p{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:6px !important;margin:7px 0 0 !important;color:#6c7d74 !important;font:500 11.5px/1.35 Inter,sans-serif !important;overflow-wrap:anywhere !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading p span{color:#b0bbb5 !important;}

html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__metricrail{padding:14px 16px 12px !important;}

/* Smart attention strip: only appears when something needs operator action. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention{
  display:grid !important;
  grid-template-columns:30px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:11px !important;
  margin:0 16px 12px !important;
  padding:11px 12px !important;
  border:1px solid #dce8e2 !important;
  border-radius:13px !important;
  background:linear-gradient(90deg,#f6fbf8,#fbfdfc) !important;
  color:#355046 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention.is-warning{border-color:#f0dfad !important;background:linear-gradient(90deg,#fff9eb,#fffdf7) !important;color:#5d4a18 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attentionicon{width:30px !important;height:30px !important;display:grid !important;place-items:center !important;border-radius:10px !important;background:#e8f7ef !important;color:#19884a !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention.is-warning .df-guest-profile-v2__attentionicon{background:#ffefb6 !important;color:#9d6a08 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attentionicon svg{width:16px !important;height:16px !important;fill:none !important;stroke:currentColor !important;stroke-width:1.9 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention>div{min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention strong{display:block !important;margin:0 !important;color:inherit !important;font:650 11.5px/1.35 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention p{margin:2px 0 0 !important;color:#7c887f !important;font:500 9.5px/1.35 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention.is-warning p{color:#8a7952 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention>button{display:inline-flex !important;align-items:center !important;gap:7px !important;border:0 !important;background:transparent !important;padding:7px 1px !important;color:#119743 !important;font:650 10px/1 Inter,sans-serif !important;cursor:pointer !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention.is-warning>button{color:#8a5c0b !important;}

html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tabs{top:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panels{padding:16px 16px 28px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panel{display:grid !important;gap:12px !important;margin:0 !important;padding:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panel[hidden]{display:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro{display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:14px !important;padding:2px 2px 3px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro>div{min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__eyebrow{display:block !important;margin:0 0 5px !important;color:var(--df-drawer-v2-accent-deep) !important;font:800 9px/1 Inter,sans-serif !important;letter-spacing:.09em !important;text-transform:uppercase !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro h4,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__sheethead h4{margin:0 !important;color:var(--df-guest-v2-ink) !important;font:680 16px/1.18 Inter,sans-serif !important;letter-spacing:-.025em !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro>p{margin:0 !important;color:#84928b !important;font:520 10px/1.3 Inter,sans-serif !important;text-align:right !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__textaction{display:inline-flex !important;align-items:center !important;gap:5px !important;border:0 !important;background:transparent !important;padding:5px 0 !important;color:#159246 !important;font:650 10px/1 Inter,sans-serif !important;cursor:pointer !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__chevron{width:13px !important;height:13px !important;display:block !important;flex:0 0 13px !important;fill:none !important;stroke:currentColor !important;stroke-width:2 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer :is(.df-guest-profile-v2__textaction,.df-guest-profile-v2__attention>button,.df-guest-profile-v2__row,.df-guest-profile-v2__mailaction,.df-guest-profile-v2__arrowbutton):focus-visible{outline:2px solid rgba(var(--df-drawer-v2-accent-rgb),.34) !important;outline-offset:2px !important;}



/* v0.6.1073 Overview command center: next-trip readiness from canonical booking truth. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__nexttrip{position:relative !important;padding:16px !important;background:radial-gradient(circle at 96% 6%,rgba(var(--df-drawer-v2-accent-rgb),.08),transparent 38%),#fff !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__sheethead{display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:12px !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__sheethead>div{min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__sheettools{display:flex !important;align-items:center !important;gap:7px !important;flex:0 0 auto !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__status{min-height:24px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;padding:0 8px !important;border:1px solid #e0e8e4 !important;border-radius:999px !important;background:#f6f8f7 !important;color:#66756e !important;font:650 9px/1 Inter,sans-serif !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__status.is-green{border-color:rgba(30,215,96,.16) !important;background:rgba(30,215,96,.09) !important;color:#11823c !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__bookingref{margin:5px 0 0 !important;color:#96a29c !important;font:560 9.5px/1.2 Inter,sans-serif !important;letter-spacing:.035em !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripmeta{display:flex !important;flex-wrap:wrap !important;gap:8px 14px !important;margin-top:14px !important;color:#66776f !important;font:520 10.5px/1.3 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripmeta span{display:inline-flex !important;align-items:center !important;gap:6px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripmeta svg{width:14px !important;height:14px !important;fill:none !important;stroke:currentColor !important;stroke-width:1.8 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;margin-top:14px !important;border-top:1px solid #edf1ef !important;border-bottom:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>div,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>button{appearance:none !important;-webkit-appearance:none !important;min-width:0 !important;display:grid !important;gap:5px !important;margin:0 !important;padding:12px 11px !important;border:0 !important;border-left:1px solid #edf1ef !important;border-radius:0 !important;background:transparent !important;color:inherit !important;text-align:left !important;box-shadow:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>:first-child{padding-left:0 !important;border-left:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>button{cursor:pointer !important;transition:background 140ms ease !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>button:hover{background:rgba(var(--df-drawer-v2-accent-rgb),.035) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate>button:focus-visible{outline:2px solid rgba(var(--df-drawer-v2-accent-rgb),.32) !important;outline-offset:-3px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate span{color:#8a9891 !important;font:540 8.5px/1 Inter,sans-serif !important;text-transform:uppercase !important;letter-spacing:.07em !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate strong{overflow:hidden !important;color:#30473c !important;font:650 10.5px/1.3 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate strong.is-ready{color:#148a43 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tripstate strong.is-warning{color:#a66a08 !important;}

html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__recent,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__profilecard{padding:15px 16px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:0 !important;margin-top:12px !important;border-top:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows>div{min-width:0 !important;display:grid !important;gap:4px !important;padding:11px 8px 9px 0 !important;border-bottom:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows>div:nth-child(even){padding-left:10px !important;border-left:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows span{color:#88958f !important;font:520 9.5px/1.2 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows strong{overflow:hidden !important;color:#253a30 !important;font:650 10.5px/1.35 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows strong.is-warning{color:#a66a08 !important;}

/* Reusable CRM row language — compact, scannable, no giant cards. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rows{display:grid !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:100% !important;
  min-width:0 !important;
  min-height:64px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto 18px !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:10px 0 !important;
  border:0 !important;
  border-top:1px solid #edf1ef !important;
  border-radius:0 !important;
  background:transparent !important;
  color:inherit !important;
  box-shadow:none !important;
  text-align:left !important;
  cursor:pointer !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rows>.df-guest-profile-v2__row:first-child{border-top:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:hover{background:linear-gradient(90deg,rgba(var(--df-drawer-v2-accent-rgb),.025),transparent) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon{width:32px !important;height:32px !important;display:grid !important;place-items:center !important;border-radius:10px !important;background:#f1f4f2 !important;color:#64766c !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon.is-live{background:#e5f8ed !important;color:#087b4a !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon.is-green{background:#ecfbf2 !important;color:#149447 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon.is-blue{background:#eef4ff !important;color:#3569c8 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon.is-mint{background:#eaf9f5 !important;color:#0f8f70 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon svg{width:16px !important;height:16px !important;fill:none !important;stroke:currentColor !important;stroke-width:1.8 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowcopy{min-width:0 !important;display:grid !important;gap:4px !important;margin:0 !important;padding:0 !important;border:0 !important;background:transparent !important;color:inherit !important;text-align:left !important;cursor:pointer !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowcopy strong{overflow:hidden !important;color:#263d32 !important;font:650 11px/1.3 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowcopy small{overflow:hidden !important;color:#85928b !important;font:500 9.5px/1.3 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowvalue{color:#53665c !important;font:650 10.5px/1 Inter,sans-serif !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta{min-width:72px !important;display:grid !important;justify-items:end !important;gap:4px !important;text-align:right !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta strong{max-width:110px !important;overflow:hidden !important;color:#3b5146 !important;font:650 9.5px/1.2 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta strong.is-ready{color:#148a43 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta small{max-width:110px !important;overflow:hidden !important;color:#929e98 !important;font:500 8.5px/1.2 Inter,sans-serif !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta small.is-warning{color:#a96a05 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowarrow{width:16px !important;height:16px !important;display:grid !important;place-items:center !important;color:#a6b2ac !important;}html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowarrow svg{width:14px !important;height:14px !important;display:block !important;fill:none !important;stroke:currentColor !important;stroke-width:2 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listsection{padding:0 15px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listtitle{min-height:46px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;border-bottom:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listtitle>strong{color:#274035 !important;font:650 11.5px/1 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listtitle>span{min-width:20px !important;height:20px !important;display:inline-grid !important;place-items:center !important;padding:0 6px !important;border-radius:999px !important;background:#f1f4f2 !important;color:#7b8982 !important;font:700 8.5px/1 Inter,sans-serif !important;}

/* Sales rows use the canonical shared V2 metric-filter primitive above the ledger. */
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-sale-row][hidden]{display:none !important;}
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-sales-empty][hidden]{display:none !important;}

html body.dfd-app #dfd-guest-drawer [data-dfd-guest-trip-section][hidden],
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-trips-empty][hidden],
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-pass-group][hidden],
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-pass-row][hidden],
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-passes-empty][hidden]{display:none !important;}

html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{grid-template-columns:34px minmax(0,1fr) auto auto !important;cursor:default !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowactions{display:flex !important;align-items:center !important;gap:5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__mailaction,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__arrowbutton{width:30px !important;height:30px !important;display:grid !important;place-items:center !important;margin:0 !important;padding:0 !important;border:1px solid #e0e8e4 !important;border-radius:10px !important;background:#fff !important;color:#718078 !important;box-shadow:none !important;cursor:pointer !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__mailaction:hover,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__arrowbutton:hover{border-color:#cddbd4 !important;color:#149447 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__mailaction svg{width:14px !important;height:14px !important;fill:none !important;stroke:currentColor !important;stroke-width:1.8 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__arrowbutton svg{width:14px !important;height:14px !important;display:block !important;fill:none !important;stroke:currentColor !important;stroke-width:2 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}

/* Profile notes/tags. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tags{display:flex !important;flex-wrap:wrap !important;gap:6px !important;margin-top:12px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__tags span{min-height:23px !important;display:inline-flex !important;align-items:center !important;padding:0 8px !important;border-radius:999px !important;background:#f2f5f3 !important;color:#607269 !important;font:650 9px/1 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__note{margin-top:12px !important;padding:11px 12px !important;border:1px solid #e4ebe7 !important;border-radius:12px !important;background:#f8faf9 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__note span{display:block !important;color:#7f8d86 !important;font:650 9px/1 Inter,sans-serif !important;text-transform:uppercase !important;letter-spacing:.06em !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__note p{margin:6px 0 0 !important;color:#53655c !important;font:500 10px/1.5 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__profileactions{display:flex !important;justify-content:flex-end !important;gap:8px !important;}

/* Legacy compact empty anatomy only. Current Guest relationship zero-result states
   consume the shared Fleet/Experience .df-ui-empty-state-v2 primitive below. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__empty:not(.df-ui-empty-state-v2){min-height:86px !important;display:flex !important;align-items:center !important;gap:12px !important;padding:15px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__emptyicon{width:36px !important;height:36px !important;display:grid !important;place-items:center !important;border-radius:11px !important;background:#f1f5f3 !important;color:#73827a !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__emptyicon svg{width:17px !important;height:17px !important;fill:none !important;stroke:currentColor !important;stroke-width:1.8 !important;stroke-linecap:round !important;stroke-linejoin:round !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__empty:not(.df-ui-empty-state-v2) strong{display:block !important;color:#30463b !important;font:650 11.5px/1.2 Inter,sans-serif !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__empty:not(.df-ui-empty-state-v2) p{margin:4px 0 0 !important;color:#849189 !important;font:500 9.5px/1.4 Inter,sans-serif !important;}

@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__body--snapshot.df-ui-drawer-body-v2.df-ui-drawer-body-v2--fullbleed{padding:0 !important;gap:0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__hero{grid-template-columns:60px minmax(0,1fr) !important;gap:13px !important;min-height:122px !important;padding:16px 14px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__avatarwrap,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__avatar{width:60px !important;height:60px !important;min-width:60px !important;border-radius:50% !important;font-size:16px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading h3{font-size:18px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__heroheading{display:grid !important;gap:9px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__context{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__metricrail{padding:12px 10px 10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention{grid-template-columns:28px minmax(0,1fr) !important;margin:0 10px 10px !important;padding:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__attention>button{grid-column:2 !important;justify-self:start !important;padding:2px 0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panels{padding:14px 10px calc(24px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows{grid-template-columns:1fr !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__inforows>div:nth-child(even){padding-left:0 !important;border-left:0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row{grid-template-columns:32px minmax(0,1fr) 16px !important;gap:8px !important;min-height:60px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowvalue,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{grid-template-columns:32px minmax(0,1fr) auto !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowmeta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__profileactions{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__profileactions .df-ui-drawer-action-v2{width:100% !important;min-width:0 !important;}
}


/* ========================================================================== 
   v0.6.1070 Guest CRM async skeleton
   --------------------------------------------------------------------------
   The animation/color primitive is the existing shared .df-ui-skeleton from
   df-ui-v2.css. These rules only map that shared primitive onto the unique
   Guest Profile layout so loading preserves the real drawer anatomy.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-sr{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  margin:-1px !important;
  padding:0 !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  border:0 !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__form--skeleton .dfd-guestdrawer__view{
  display:grid !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-head .df-ui-drawer-header-v2__eyebrow,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-head .df-ui-drawer-header-v2__title,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-head .df-ui-drawer-header-v2__subtitle{
  display:flex !important;
  align-items:center !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-head-eyebrow{width:76px !important;height:8px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-head-title{width:min(190px,52vw) !important;height:19px !important;border-radius:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-head-subtitle{width:126px !important;height:9px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-avatar{
  width:72px !important;
  height:72px !important;
  border-radius:50% !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-hero-name{width:min(220px,48vw) !important;height:20px !important;border-radius:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-hero-meta{width:min(275px,56vw) !important;height:10px !important;margin-top:10px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-edit{width:86px !important;height:36px !important;border-radius:11px !important;flex:0 0 auto !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-kpi{pointer-events:none !important;cursor:default !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-kpi-icon{width:34px !important;height:34px !important;border-radius:11px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-kpi-label{width:64px !important;height:8px !important;margin-bottom:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-kpi-value{width:46px !important;height:17px !important;border-radius:6px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs{
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  gap:24px !important;
  padding:0 22px !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs>.df-ui-skeleton{width:58px !important;height:9px !important;border-radius:4px !important;flex:0 0 auto !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs>.df-ui-skeleton:nth-child(2){width:43px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs>.df-ui-skeleton:nth-child(3){width:42px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs>.df-ui-skeleton:nth-child(4){width:52px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs>.df-ui-skeleton:nth-child(5){width:49px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-sheet{padding:15px 16px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-sheet--primary{padding:16px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-sheet-head{display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:14px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-sheet-head>div{min-width:0 !important;display:grid !important;gap:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-sheet-kicker{width:62px !important;height:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-sheet-title{width:176px !important;height:15px !important;border-radius:6px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-sheet-title.is-short{width:138px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-state{width:68px !important;height:24px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-text-action{width:68px !important;height:8px !important;margin-top:4px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-meta{display:flex !important;gap:14px !important;margin-top:17px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-meta>.df-ui-skeleton{width:100px !important;height:10px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-meta>.df-ui-skeleton:nth-child(2){width:82px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-meta>.df-ui-skeleton:nth-child(3){width:64px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-finance{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:10px !important;margin-top:15px !important;padding-top:13px !important;border-top:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-finance>.df-ui-skeleton{width:76% !important;height:24px !important;border-radius:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-actions{display:flex !important;justify-content:flex-end !important;gap:8px !important;margin-top:15px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-actions>.df-ui-skeleton{width:104px !important;height:36px !important;border-radius:11px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-actions>.df-ui-skeleton:last-child{width:122px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row{min-height:58px !important;display:grid !important;grid-template-columns:32px minmax(0,1fr) 62px !important;align-items:center !important;gap:10px !important;border-top:1px solid #edf1ef !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row:first-of-type{margin-top:12px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>.df-ui-skeleton:first-child{width:32px !important;height:32px !important;border-radius:10px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>div{display:grid !important;gap:7px !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>div>.df-ui-skeleton:first-child{width:54% !important;height:9px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>div>.df-ui-skeleton:last-child{width:72% !important;height:8px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>.df-ui-skeleton:last-child{width:62px !important;height:9px !important;justify-self:end !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-footactions>.df-ui-skeleton{width:108px !important;height:var(--df-drawer-v2-action-h) !important;border-radius:var(--df-drawer-v2-action-radius) !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-footactions>.df-ui-skeleton:last-child{width:126px !important;}

@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-avatar{width:60px !important;height:60px !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-edit{width:78px !important;height:34px !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-tabs{gap:18px !important;padding:0 14px !important;overflow:hidden !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row{grid-template-columns:32px minmax(0,1fr) !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-row>.df-ui-skeleton:last-child{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-footactions{width:100% !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-footactions>.df-ui-skeleton{width:auto !important;flex:1 1 0 !important;}
}

/* ========================================================================== 
   v0.6.1074 Guest CRM relationship ledger
   --------------------------------------------------------------------------
   Shared V2 still owns the drawer, tabs, sheets, KPIs, actions and skeletons.
   These rules only describe Guest-specific information anatomy inside those
   shared primitives: operational trip states, grouped pass ledger and missing
   contact truth.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta strong.is-warning{
  color:#a66a08 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listtitle>span.is-ready{
  background:rgba(var(--df-drawer-v2-accent-rgb),.09) !important;
  color:var(--df-drawer-v2-accent-deep) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listtitle>span.is-warning{
  background:#fff5dc !important;
  color:#9a650a !important;
}

/* A pass history is a booking ledger, not a flat wall of ticket IDs. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passledger{
  padding:0 15px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgroups{
  display:grid !important;
  min-width:0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgroup{
  min-width:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgroup + .df-guest-profile-v2__passgroup{
  border-top:1px solid #e7eeea !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgrouphead{
  min-height:54px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:11px 0 8px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgrouphead>div{
  min-width:0 !important;
  display:grid !important;
  gap:4px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgrouphead strong{
  overflow:hidden !important;
  color:#1f352a !important;
  font:680 10.5px/1.25 Inter,sans-serif !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgrouphead small{
  overflow:hidden !important;
  color:#8a9790 !important;
  font:520 8.8px/1.25 Inter,sans-serif !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgrouphead>span{
  flex:0 0 auto !important;
  min-height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  padding:0 7px !important;
  border-radius:999px !important;
  background:#f1f5f3 !important;
  color:#708079 !important;
  font:700 8.5px/1 Inter,sans-serif !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgroup .df-guest-profile-v2__rows{
  padding-bottom:6px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passgroup .df-guest-profile-v2__row{
  min-height:58px !important;
  padding:8px 0 !important;
}


@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta{
    min-width:104px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta strong,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta small{
    max-width:138px !important;
  }
}

/* ========================================================================== 
   v0.6.1085 Guest CRM — real relationship activity timeline
   --------------------------------------------------------------------------
   Shared V2 continues to own the drawer, sheet and row primitives. These rules
   only describe Guest-specific event anatomy fed by persisted DockFlow evidence.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activity{
  position:relative !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activity .df-guest-profile-v2__sheethead{
  position:relative !important;
  z-index:2 !important;
  padding-bottom:10px !important;
  border-bottom:1px solid #edf1ef !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activityrows{
  position:relative !important;
  z-index:1 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activityrail{
  position:absolute !important;
  z-index:0 !important;
  top:73px !important;
  bottom:22px !important;
  left:31px !important;
  width:1px !important;
  background:linear-gradient(180deg,rgba(var(--df-drawer-v2-accent-rgb),.18),#e7eeea 45%,rgba(231,238,234,0)) !important;
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity{
  position:relative !important;
  min-height:66px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowicon{
  position:relative !important;
  z-index:2 !important;
  box-shadow:0 0 0 4px #fff !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowicon.is-warning{
  background:#fff5dc !important;
  color:#a96a05 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowcopy{
  gap:3px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowcopy small{
  max-width:100% !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowcopy em{
  overflow:hidden !important;
  color:#9aa59f !important;
  font:500 8.75px/1.3 Inter,sans-serif !important;
  font-style:normal !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activitytype{
  min-height:22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 7px !important;
  border:1px solid #e5ebe8 !important;
  border-radius:999px !important;
  background:#f8faf9 !important;
  color:#718078 !important;
  font:650 8.5px/1 Inter,sans-serif !important;
  white-space:nowrap !important;
}

@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activityrail{
    top:73px !important;
    left:31px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity{
    grid-template-columns:32px minmax(0,1fr) 16px !important;
    min-height:64px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__activitytype{
    display:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowcopy small,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-activity .df-guest-profile-v2__rowcopy em{
    white-space:normal !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
  }
}

/* ========================================================================== 
   v0.6.1086 Guest CRM — mobile information clarity
   --------------------------------------------------------------------------
   Shared V2 still owns the responsive drawer, tabs, KPIs, metrics, footer and
   action controls. These rules only keep Guest-specific operational row truth
   visible when the relationship CRM collapses to a phone-sized viewport.
   ========================================================================== */
@media (max-width:760px){
  /* Keep panel context calm on phones: title first, summary directly below. */
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panelintro>p{
    text-align:left !important;
  }

  /* Trips and passes must not lose payment / readiness truth just because the
     viewport is narrow. Put the existing metadata on a quiet second line. */
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass){
    grid-template-columns:32px minmax(0,1fr) 16px !important;
    grid-template-areas:
      "icon copy arrow"
      ". meta ." !important;
    column-gap:8px !important;
    row-gap:5px !important;
    min-height:68px !important;
    padding:10px 0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowicon{grid-area:icon !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowcopy{grid-area:copy !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowmeta{
    grid-area:meta !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    text-align:left !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowmeta strong,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowmeta small{
    max-width:none !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowmeta small::before{
    content:"•" !important;
    margin-right:7px !important;
    color:#c0c9c4 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row:is(.is-trip,.is-pass) .df-guest-profile-v2__rowarrow{grid-area:arrow !important;}

  /* Sales are navigation rows on phones too: identity + sale truth + one protected chevron. */
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{
    grid-template-columns:32px minmax(0,1fr) 18px !important;
    grid-template-areas:
      "icon copy arrow"
      ". meta arrow" !important;
    column-gap:8px !important;
    row-gap:5px !important;
    min-height:72px !important;
    padding:10px 0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowicon{
    grid-area:icon !important;
    width:32px !important;
    min-width:32px !important;
    height:32px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowcopy{grid-area:copy !important;min-width:0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowmeta{
    grid-area:meta !important;
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    text-align:left !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowmeta strong,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowmeta small{
    max-width:none !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowmeta small::before{
    content:"•" !important;
    margin-right:7px !important;
    color:#c0c9c4 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale .df-guest-profile-v2__rowarrow{
    grid-area:arrow !important;
    width:18px !important;
    min-width:18px !important;
    align-self:center !important;
    justify-self:end !important;
  }
}

@media (max-width:430px){
  /* Preserve touch targets and usable text at the narrowest supported widths. */
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__panels{padding-left:8px !important;padding-right:8px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__listsection,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__passledger{padding-left:12px !important;padding-right:12px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowactions{gap:4px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__mailaction,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__arrowbutton{width:36px !important;height:36px !important;}
}

/* ========================================================================== 
   Guest privacy + data anatomy
   Shared buttons/menu/confirmation remain owned by df-ui-v2.css. These rules
   only describe the Guest-specific information layout.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacy{
  display:grid !important;
  gap:16px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyhead{margin-bottom:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyintro{
  max-width:540px !important;
  margin:6px 0 0 !important;
  color:#73877c !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacystack{
  display:grid !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  padding:18px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard--danger{
  grid-template-columns:1fr !important;
  align-items:stretch !important;
  gap:14px !important;
  border-color:#eadedb !important;
  background:linear-gradient(135deg,#fff 0%,#fff 72%,#fff9f8 100%) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycardmain{
  min-width:0 !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:13px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycardmain > div{min-width:0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyicon{
  width:40px !important;
  height:40px !important;
  flex:0 0 40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  border:1px solid #dcebe3 !important;
  background:#f1f8f4 !important;
  color:#2d8158 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyicon--danger{
  border-color:#f0d3cf !important;
  background:#fff3f1 !important;
  color:#b42318 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyicon svg,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep li span svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykicker{
  display:block !important;
  margin:1px 0 4px !important;
  color:#4a8d6c !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard h4,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep h4{
  margin:0 !important;
  color:#17281f !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycardmain p{
  max-width:520px !important;
  margin:6px 0 0 !important;
  color:#71857a !important;
  font-size:12.5px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard > .df-ui-drawer-action-v2{
  justify-self:end !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked{
  max-width:none !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:28px minmax(0,1fr) !important;
  align-items:start !important;
  gap:8px !important;
  padding:10px 11px !important;
  border:1px solid #eddcb3 !important;
  border-radius:12px !important;
  background:#fffaf0 !important;
  color:#8a5a13 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked > span{
  width:28px !important;
  height:28px !important;
  display:grid !important;
  place-items:center !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked svg{
  width:17px !important;
  height:17px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked p{
  margin:0 !important;
  color:#86601f !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.42 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked strong{
  display:block !important;
  margin:0 0 2px !important;
  color:#765016 !important;
  font-size:12px !important;
  font-weight:750 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep{
  display:grid !important;
  gap:13px !important;
  padding:18px !important;
  background:#fbfdfc !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeephead{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep ul{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep li{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:9px 10px !important;
  border:1px solid #e7eeea !important;
  border-radius:11px !important;
  background:#fff !important;
  color:#566e61 !important;
  font-size:11.5px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep li span{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  display:grid !important;
  place-items:center !important;
  color:#2f8b5d !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep li span svg{width:14px !important;height:14px !important;stroke-width:2 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep > p{
  margin:0 !important;
  color:#819188 !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.45 !important;
}

@media (max-width:700px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard{
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:15px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacycard > .df-ui-drawer-action-v2{
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacyblocked{max-width:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep{padding:15px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__privacykeep ul{grid-template-columns:1fr !important;}
}

/* v0.6.1089 — Guest record export picker. The existing Privacy/Data card anatomy
   remains the owner; this only distinguishes the recommended human-readable format. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__exportcard.is-recommended{
  border-color:#cfe8da !important;
  background:linear-gradient(135deg,#ffffff 0%,#f7fcf9 100%) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__exportcard.is-recommended .df-guest-profile-v2__privacykicker{
  color:#25875a !important;
}

/* ========================================================================== 
   Guest hierarchy calm pass — compact temporal/financial filters
   Trips and Sales are relationship timelines, not another KPI dashboard. Keep
   the filter chrome quiet so the booking rows remain the primary information.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented{
  width:max-content !important;
  max-width:100% !important;
  display:flex !important;
  align-items:center !important;
  gap:3px !important;
  padding:3px !important;
  border:1px solid #e3eae6 !important;
  border-radius:12px !important;
  background:#f6f9f7 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button{
  min-width:0 !important;
  min-height:31px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  padding:7px 10px !important;
  border:0 !important;
  border-radius:9px !important;
  background:transparent !important;
  color:#6f8177 !important;
  box-shadow:none !important;
  font:620 9.5px/1 Inter,sans-serif !important;
  white-space:nowrap !important;
  cursor:pointer !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button strong{
  min-width:17px !important;
  height:17px !important;
  display:inline-grid !important;
  place-items:center !important;
  padding:0 5px !important;
  border-radius:999px !important;
  background:#e9efeb !important;
  color:#73847a !important;
  font:700 8px/17px Inter,sans-serif !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button:hover{
  color:#315542 !important;
  background:rgba(255,255,255,.65) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button.is-active,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button[aria-pressed="true"]{
  background:#fff !important;
  color:#244636 !important;
  box-shadow:0 1px 4px rgba(24,58,41,.08) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button.is-active strong,
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button[aria-pressed="true"] strong{
  background:#e9f8ef !important;
  color:#168c47 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button.has-warning strong{
  background:#fff3da !important;
  color:#a86b08 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button:focus-visible{
  outline:2px solid rgba(var(--df-drawer-v2-accent-rgb),.32) !important;
  outline-offset:2px !important;
}

@media (max-width:620px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented{
    width:100% !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented>button{
    flex:1 1 0 !important;
    padding-inline:7px !important;
  }
}

/* ========================================================================== 
   DockFlow Guest Relationship Surface — evolved from Workspace V3
   Guest identity + relationship navigation + Guest-scoped content remain together.
   Contextual Guest tasks and Booking Details hand off to dedicated sibling drawers on
   the shared spatial stack. Existing V2 tokens remain the source of truth.
   ========================================================================== */
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{
    width:clamp(1120px,86vw,1400px) !important;
  }
}
/* Guest Profile shell geometry — canonical base owner.
   Mobile keeps the simple header + body stack. From tablet upward, the later
   relationship-rail owner promotes identity/activity/work into one grid so the
   identity rail can span the full drawer height while the shared header starts
   at the light workspace. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#fff !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .df-ui-drawer-header-v2{
  flex:0 0 60px !important;
  min-height:60px !important;
  height:60px !important;
  margin:0 !important;
  padding:0 16px 0 22px !important;
  box-sizing:border-box !important;
  border-bottom:1px solid rgba(16,33,49,.08) !important;
  background:rgba(255,255,255,.97) !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
  z-index:30 !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__copy{
    opacity:.78 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__eyebrow{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__title{
    font-size:14px !important;
    font-weight:700 !important;
    letter-spacing:-.015em !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__subtitle{
    margin-top:1px !important;
    font-size:10px !important;
  }
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .dfd-guestdrawer__body{
  flex:1 1 auto !important;
  width:100% !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  display:block !important;
  align-self:stretch !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  background:#fff !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:286px 190px minmax(0,1fr) !important;
  grid-template-rows:minmax(0,1fr) !important;
  overflow:hidden !important;
  background:#fff !important;
}

/* Identity is the stable relationship anchor, not a second dashboard. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
  min-width:0 !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  grid-column:1 !important;
  grid-row:1 !important;
  overflow:auto !important;
  overscroll-behavior:contain !important;
  padding:18px 18px 16px !important;
  border-right:1px solid rgba(16,33,49,.08) !important;
  background:linear-gradient(180deg,#fff 0%,#fbfdfc 100%) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
  grid-template-columns:58px minmax(0,1fr) !important;
  min-height:0 !important;
  gap:13px !important;
  padding:4px 2px 18px !important;
  border:0 !important;
  background:transparent !important;
  overflow:visible !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatarwrap,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatar{
  width:58px !important;
  height:58px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading h3{
  font-size:18px !important;
  line-height:1.15 !important;
  letter-spacing:-.035em !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{
  display:grid !important;
  gap:2px !important;
  margin-top:6px !important;
  font-size:11px !important;
  line-height:1.3 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p > .df-guest-profile-v2__contactline{
  display:block !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__metricrail{
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpis-v2{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:2px !important;
  padding:12px 0 !important;
  border-top:1px solid rgba(16,33,49,.07) !important;
  border-bottom:1px solid rgba(16,33,49,.07) !important;
  background:transparent !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2{
  min-height:42px !important;
  display:grid !important;
  grid-template-columns:28px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:9px !important;
  padding:7px 7px !important;
  border:0 !important;
  border-radius:10px !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:left !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2:hover{background:#f3f8f5 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__icon{
  width:28px !important;
  height:28px !important;
  border-radius:8px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy{
  display:contents !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > span{
  font-size:11px !important;
  font-weight:650 !important;
  color:#617069 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{
  justify-self:end !important;
  font-size:13px !important;
  font-weight:760 !important;
  color:#101815 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
  display:grid !important;
  gap:9px !important;
  margin-top:auto !important;
  padding:18px 2px 0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking{
  width:100% !important;
  justify-content:center !important;
  text-decoration:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:8px !important;
  align-items:center !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary > .df-ui-drawer-menu-v2,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary > .df-ui-drawer-menu-v2 > .df-ui-drawer-action-v2{width:100% !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{
  margin:1px 2px 0 !important;
  color:#89958f !important;
  font-size:9.5px !important;
  line-height:1.35 !important;
}

/* Guest-level IA: four persistent destinations only. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav.df-ui-drawer-tabs-v2{
  grid-column:2 !important;
  grid-row:1 !important;
  position:relative !important;
  inset:auto !important;
  z-index:3 !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:5px !important;
  margin:0 !important;
  padding:22px 12px !important;
  border:0 !important;
  border-right:1px solid rgba(16,33,49,.08) !important;
  background:#fcfdfc !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
  width:100% !important;
  min-height:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:0 12px !important;
  border:0 !important;
  border-radius:11px !important;
  background:transparent !important;
  color:#405049 !important;
  font-size:12px !important;
  font-weight:680 !important;
  text-align:left !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button::after{display:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button:hover{background:#f0f6f2 !important;color:#14201a !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-active{
  background:#e9f8ee !important;
  color:#087b37 !important;
  box-shadow:inset 0 0 0 1px rgba(9,200,88,.09) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav .df-ui-drawer-tabcount-v2{
  min-width:22px !important;
  height:22px !important;
  padding:0 6px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  border-radius:999px !important;
  background:rgba(16,33,49,.055) !important;
  color:#65736c !important;
  font-size:10px !important;
  font-weight:750 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-active .df-ui-drawer-tabcount-v2{
  background:rgba(9,200,88,.12) !important;
  color:#087b37 !important;
}

/* Working content is the only area that changes while the Guest remains anchored. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
  grid-column:3 !important;
  grid-row:1 !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  background:var(--df-drawer-v2-body-bg,#f6f9f7) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__attention{
  flex:0 0 auto !important;
  margin:18px 24px 0 !important;
  border-radius:14px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{
  flex:1 1 auto !important;
  min-height:0 !important;
  width:100% !important;
  display:block !important;
  margin:0 !important;
  padding:24px 28px 38px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  scrollbar-width:thin !important;
  scrollbar-color:#aebdb5 #eef3f0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__attention + .df-guest-profile-v2__panels{padding-top:16px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels::-webkit-scrollbar{width:8px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels::-webkit-scrollbar-track{background:#eef3f0 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels::-webkit-scrollbar-thumb{border:2px solid #eef3f0 !important;border-radius:999px !important;background:#aebdb5 !important;background-clip:padding-box !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panel{
  width:min(100%,820px) !important;
  margin:0 auto !important;
  padding:0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro{margin:0 0 16px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-ui-drawer-sheet-v2{
  border-color:rgba(16,33,49,.07) !important;
  box-shadow:0 5px 18px rgba(15,23,42,.025) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__profilecard{
  border-radius:14px !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__segmented{
  position:sticky !important;
  top:-8px !important;
  z-index:4 !important;
  margin-bottom:14px !important;
  background:rgba(246,249,247,.94) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-cancelled{opacity:.82 !important;}

/* Retired pre-0.6.1158 embedded-secondary compatibility rules. Current Guest tasks
   no longer activate .is-secondary / .df-guest-workspace-v3__embedded-view; the
   dedicated #dfd-guest-task-drawer is the active owner. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__work > .df-guest-profile-v2__attention{display:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{
  padding:0 !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary [data-dfd-guest-workspace-content] > [data-dfd-guest-tab-panel]{display:none !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-rows:74px minmax(0,1fr) auto !important;
  background:var(--df-drawer-v2-body-bg,#f6f9f7) !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .df-ui-drawer-header-v2{
  min-height:74px !important;
  height:74px !important;
  border-bottom:1px solid rgba(16,33,49,.08) !important;
  background:#fff !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .dfd-guestdrawer__body{
  min-height:0 !important;
  overflow-y:auto !important;
  padding:22px 26px 32px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .dfd-guestdrawer__foot{
  position:relative !important;
  min-height:64px !important;
  height:auto !important;
}

/* Tablet: collapse Guest identity into a compact top band; keep nav + work spatially stable. */
@media (max-width:1180px) and (min-width:761px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{width:100vw !important;max-width:100vw !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:176px minmax(0,1fr) !important;
    grid-template-rows:122px minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-column:1 / -1 !important;
    grid-row:1 !important;
    display:grid !important;
    grid-template-columns:minmax(260px,1fr) minmax(340px,.95fr) auto !important;
    align-items:center !important;
    gap:16px !important;
    padding:12px 16px !important;
    overflow:visible !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.08) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{padding:0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpis-v2{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
    padding:0 !important;
    border:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2{
    grid-template-columns:1fr !important;
    justify-items:start !important;
    min-height:64px !important;
    padding:8px 10px !important;
    background:#f6faf7 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__icon{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy{display:grid !important;gap:3px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{justify-self:start !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{margin:0 !important;padding:0 !important;min-width:126px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary{display:flex !important;justify-content:flex-end !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav.df-ui-drawer-tabs-v2{grid-column:1 !important;grid-row:2 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{grid-column:2 !important;grid-row:2 !important;}
}

/* Tablet portrait: keep two spatial panes, but stack relationship metrics beneath
   the compact identity row so narrow tablets never squeeze three desktop columns. */
@media (max-width:900px) and (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:160px minmax(0,1fr) !important;
    grid-template-rows:170px minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-template-columns:minmax(0,1fr) auto !important;
    grid-template-rows:auto auto !important;
    gap:8px 14px !important;
    padding:10px 14px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
    grid-column:1 !important;
    grid-row:1 !important;
    min-width:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__metricrail{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    min-width:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2{
    min-height:48px !important;
    grid-template-columns:minmax(0,1fr) !important;
    padding:6px 9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
    grid-column:2 !important;
    grid-row:1 !important;
    align-self:center !important;
    min-width:118px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary > .df-ui-drawer-menu-v2 > .df-ui-drawer-action-v2{width:auto !important;}
}

/* Mobile: same IA, app-like stack. Guest root keeps compact identity + nav; nested
   booking/secondary screens become a full working stack with local Back and global X. */
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__eyebrow{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__title{font-size:14px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__subtitle{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-column:1 !important;grid-row:1 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px !important;
    padding:12px 14px 10px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.07) !important;
    overflow:visible !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
    grid-template-columns:46px minmax(0,1fr) !important;
    gap:11px !important;
    padding:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatarwrap,
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatar{width:46px !important;height:46px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading h3{font-size:16px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{margin-top:3px !important;font-size:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpis-v2{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:5px !important;
    padding:0 !important;
    border:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2{
    min-height:48px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:2px !important;
    padding:7px 8px !important;
    background:#f6faf7 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__icon{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy{display:grid !important;gap:2px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > span{font-size:9px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{justify-self:start !important;font-size:12px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
    grid-template-columns:minmax(0,1fr) auto !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary{display:flex !important;gap:6px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions .df-ui-drawer-action-v2:not(.df-ui-drawer-action-v2--icon-only){min-height:38px !important;padding:0 10px !important;font-size:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav.df-ui-drawer-tabs-v2{
    grid-column:1 !important;grid-row:2 !important;
    height:auto !important;
    min-height:50px !important;
    display:flex !important;
    flex-direction:row !important;
    gap:4px !important;
    padding:6px 10px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.08) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    background:#fff !important;
    scrollbar-width:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav::-webkit-scrollbar{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    width:auto !important;
    min-width:max-content !important;
    min-height:36px !important;
    padding:0 10px !important;
    border-radius:9px !important;
    font-size:10.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav .df-ui-drawer-tabcount-v2{height:19px !important;min-width:19px !important;font-size:9px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{grid-column:1 !important;grid-row:3 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__attention{margin:10px 12px 0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{padding:14px 12px calc(28px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panel{width:100% !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary{grid-template-rows:minmax(0,1fr) !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__identity,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__nav{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__work{grid-column:1 !important;grid-row:1 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__workheader{
    min-height:78px !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    gap:10px !important;
    padding:10px 12px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__back{min-height:34px !important;padding:0 8px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__worktitle h3{font-size:14px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__worktitle p{font-size:9.5px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view{grid-template-rows:70px minmax(0,1fr) auto !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .df-ui-drawer-header-v2{min-height:70px !important;height:70px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .dfd-guestdrawer__body{padding:14px 12px calc(26px + env(safe-area-inset-bottom,0px)) !important;}
}

@media (prefers-reduced-motion:reduce){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2,
  html body.dfd-app [data-dfd-guest-overlay],
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view{transition:none !important;animation:none !important;}
}

/* ========================================================================== 
   Guest Workspace V3 — legibility + profile restraint pass
   Keep the new spatial architecture premium and calm without falling into
   tiny enterprise typography. These rules stay scoped to the V3 work surface.
   ========================================================================== */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{
  font-size:12px !important;
  line-height:1.38 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > span{font-size:11.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{font-size:13.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{font-size:10.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
  min-height:44px !important;
  font-size:12.5px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro h4,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__sheethead h4{
  font-size:17px !important;
  line-height:1.2 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro > p{
  font-size:11px !important;
  line-height:1.35 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__row{
  min-height:68px !important;
  padding-top:12px !important;
  padding-bottom:12px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy strong{
  font-size:12.25px !important;
  line-height:1.32 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy small{
  font-size:10.5px !important;
  line-height:1.35 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowmeta strong{font-size:10.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowmeta small{font-size:9.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__listtitle > strong{font-size:12px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__listtitle > span{font-size:9.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__segmented > button{
  min-height:36px !important;
  font-size:10.5px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__segmented > button strong{
  height:19px !important;
  min-width:19px !important;
  font-size:9px !important;
  line-height:19px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__worktitle p{font-size:11.5px !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__back{font-size:11.5px !important;}

/* Profile is intentionally information-first, not another card dashboard. */
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__profilecard{
  margin:0 !important;
  padding:17px 2px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__profilecard + .df-guest-profile-v2__profilecard{
  border-top:1px solid rgba(16,33,49,.08) !important;
}
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__listtitle{
  min-height:38px !important;
  border-bottom:0 !important;
}
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows{
  margin-top:6px !important;
}
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows span{font-size:10.5px !important;}
html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows strong{font-size:11.75px !important;}

@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{font-size:11px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > span{font-size:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{font-size:13px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions .df-ui-drawer-action-v2{
    min-height:44px !important;
    font-size:11.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    min-height:44px !important;
    font-size:11.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav .df-ui-drawer-tabcount-v2{
    min-width:20px !important;
    height:20px !important;
    font-size:9.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__segmented > button{
    min-height:44px !important;
    font-size:10.75px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__back{
    min-height:44px !important;
    font-size:11.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__worktitle p{font-size:10.5px !important;}
}

/* Guest Workspace V3 — transition/skeleton parity + secondary Back ownership.
   Loading must preserve the exact workspace geometry so opening a guest never flashes
   the retired stacked-drawer composition. Secondary screens keep the one global X in
   the root header and move their local Back affordance to the left edge of work content. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .df-ui-drawer-header-v2{
  grid-template-columns:46px minmax(0,1fr) !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .df-ui-drawer-header-v2 > .df-ui-drawer-header-v2__copy{
  grid-column:2 !important;
  grid-row:1 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__embedded-view > .df-ui-drawer-header-v2 > .df-ui-drawer-header-v2__close[data-dfd-guest-view-back]{
  grid-column:1 !important;
  grid-row:1 !important;
  justify-self:start !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .dfd-guestdrawer__sk-avatar{
  width:58px !important;
  height:58px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions{
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > .df-ui-skeleton{
  width:100% !important;
  height:42px !important;
  border-radius:11px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > div{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 86px !important;
  gap:8px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > div > .df-ui-skeleton{
  width:100% !important;
  height:42px !important;
  border-radius:11px !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav.dfd-guestdrawer__skeleton-tabs{
    min-height:0 !important;
    height:100% !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:5px !important;
    padding:22px 12px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav.dfd-guestdrawer__skeleton-tabs > .df-ui-skeleton{
    width:100% !important;
    height:44px !important;
    min-height:44px !important;
    border-radius:11px !important;
  }
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .dfd-guestdrawer__sk-avatar{
    width:46px !important;
    height:46px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > .df-ui-skeleton,
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > div > .df-ui-skeleton{
    height:44px !important;
  }
}

/* ========================================================================== 
   Guest Workspace V3 — final optical scale pass
   --------------------------------------------------------------------------
   The workspace carries dense operational history, but dense must not mean
   miniature. Laptop/desktop copy gets one final legibility lift while the
   mobile stack keeps its compact app rhythm and touch-safe geometry.
   ========================================================================== */
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{font-size:12.25px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > span{font-size:12px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-ui-drawer-kpi-v2__copy > strong{font-size:14px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{font-size:13px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro h4,
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__sheethead h4{font-size:18px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro > p{font-size:11.5px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy strong{font-size:13px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy small{font-size:11px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowmeta strong{font-size:11.25px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowmeta small{font-size:10.25px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__listtitle > strong{font-size:12.75px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__listtitle > span{font-size:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__segmented > button{font-size:11.25px !important;}
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows span{font-size:11.5px !important;}
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows strong{font-size:13px !important;}
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy strong{font-size:12.75px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__rowcopy small{font-size:10.75px !important;}
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows span{font-size:11.25px !important;}
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-profile .df-guest-profile-v2__inforows strong{font-size:12.5px !important;}
}

/* ========================================================================== 
   DockFlow Guest Workspace — relationship rail refinement (0.6.1121)
   Desktop now has three explicit owners:
   1. Guest profile + direct actions
   2. Activity overview (Upcoming / Completed / Needs attention / Sales)
   3. Large working content pane
   ========================================================================== */
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{
    width:clamp(860px,62vw,1120px) !important;
    max-width:calc(100vw - 24px) !important;
  }
  /* 0.6.1162 — the identity rail now owns the complete left edge, including
     the space that used to sit beneath the shared Guest header. The light
     header begins at column two; body/profile wrappers become layout-neutral
     so identity, activity and work are siblings on one explicit grid. */
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root{
    display:grid !important;
    grid-template-columns:250px 205px minmax(0,1fr) !important;
    grid-template-rows:60px minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .df-ui-drawer-header-v2{
    grid-column:2 / -1 !important;
    grid-row:1 !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .dfd-guestdrawer__body,
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .dfd-guestdrawer__body > .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    display:contents !important;
  }
}

@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__copy{
    opacity:1 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__title{
    font-size:13px !important;
    font-weight:720 !important;
    color:#314139 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__root > .df-ui-drawer-header-v2 .df-ui-drawer-header-v2__subtitle{
    margin-top:1px !important;
    font-size:9.5px !important;
    color:#8a9790 !important;
  }
}

/* Column 1 — Guest identity rail. Desktop/tablet reuse the exact Dark Pass
   Detail atmosphere: near-black base, restrained green glow, light identity
   copy. Only this rail is dark; Activity and the working pane stay light. */
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    --df-guest-actions-trigger-bg:transparent;
    --df-guest-actions-trigger-border:rgba(255,255,255,.22);
    --df-guest-actions-trigger-color:#d4ddd7;
    --df-guest-actions-trigger-hover-bg:transparent;
    --df-guest-actions-trigger-hover-border:rgba(99,237,144,.48);
    --df-guest-actions-trigger-hover-color:#fff;
    padding:30px 22px 20px !important;
    border-right:1px solid rgba(0,0,0,.22) !important;
    background:
      radial-gradient(circle at 60% -10%,rgba(30,215,96,.17),transparent 30%),
      radial-gradient(circle at 100% 45%,rgba(24,164,77,.06),transparent 36%),
      #090c0a !important;
    color:#fff !important;
    scrollbar-width:thin !important;
    scrollbar-color:#333a35 transparent !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity::-webkit-scrollbar{width:7px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity::-webkit-scrollbar-track{background:transparent !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity::-webkit-scrollbar-thumb{border:2px solid transparent !important;border-radius:999px !important;background:#333a35 !important;background-clip:padding-box !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading h3{color:#fff !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p,
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p > .df-guest-profile-v2__contactline{color:#a2aca5 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-eyebrow{
    display:block !important;
    margin:0 0 8px !important;
    color:#27d965 !important;
    font:800 8px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
    letter-spacing:.14em !important;
    text-transform:uppercase !important;
  }
}
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-column:1 !important;
    grid-row:1 / -1 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:8px !important;
    padding:4px 0 20px !important;
    text-align:center !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatarwrap,
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatar{
    width:78px !important;
    height:78px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading{
    justify-content:center !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-eyebrow{text-align:center !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading h3{
    font-size:20px !important;
    line-height:1.16 !important;
    letter-spacing:-.035em !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__heroheading p{
    justify-items:center !important;
    margin-top:3px !important;
    font-size:11.5px !important;
    line-height:1.45 !important;
  }
}

html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
  display:flex !important;
  flex-direction:column !important;
  gap:9px !important;
  margin:0 !important;
  padding:16px 0 0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking{
  width:100% !important;
  min-height:44px !important;
  justify-content:center !important;
  margin-top:0 !important;
  text-decoration:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{
  margin:0 !important;
  padding-top:2px !important;
  text-align:center !important;
  color:#8b9791 !important;
  font-size:10px !important;
  line-height:1.45 !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{color:#8d9991 !important;}
}

/* Column 2 — relationship navigation replaces the extra Overview/Trips/Sales/Profile rail. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav{
  grid-column:2 !important;
  grid-row:2 !important;
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:8px !important;
  margin:0 !important;
  padding:24px 14px !important;
  border:0 !important;
  border-right:1px solid rgba(16,33,49,.08) !important;
  background:#fbfdfb !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead{
  display:grid !important;
  gap:3px !important;
  margin:0 4px 10px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead > span{
  color:#314139 !important;
  font-size:14px !important;
  font-weight:740 !important;
  letter-spacing:-.01em !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead > small{
  color:#929d97 !important;
  font-size:10.75px !important;
  font-weight:540 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:100% !important;
  min-height:61px !important;
  display:grid !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:8px 10px !important;
  border:1px solid rgba(16,33,49,.07) !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#304139 !important;
  box-shadow:0 1px 0 rgba(16,33,49,.02) !important;
  text-align:left !important;
  cursor:pointer !important;
  transition:background .14s ease,border-color .14s ease,box-shadow .14s ease !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button:hover{
  border-color:rgba(16,33,49,.12) !important;
  background:#f7faf8 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-in-progress{background:linear-gradient(180deg,#f7fffb 0,#edf9f2 100%) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-upcoming{background:linear-gradient(180deg,#fbfffc 0,#f4fbf6 100%) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-completed{background:linear-gradient(180deg,#fcfdff 0,#f5f8ff 100%) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-attention{background:linear-gradient(180deg,#fffefd 0,#fff9ef 100%) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-sales{background:linear-gradient(180deg,#fcfffe 0,#f2faf7 100%) !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-in-progress.is-active{border-color:rgba(9,154,88,.25) !important;background:#e5f8ed !important;color:#087744 !important;box-shadow:0 0 0 1px rgba(9,154,88,.04) inset !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-upcoming.is-active{border-color:rgba(22,179,83,.22) !important;background:#eaf8ef !important;color:#087b37 !important;box-shadow:0 0 0 1px rgba(22,179,83,.035) inset !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-completed.is-active{border-color:rgba(79,115,217,.20) !important;background:#eef4ff !important;color:#3559bd !important;box-shadow:0 0 0 1px rgba(79,115,217,.03) inset !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-attention.is-active{border-color:rgba(177,118,18,.22) !important;background:#fff6e5 !important;color:#98620a !important;box-shadow:0 0 0 1px rgba(177,118,18,.03) inset !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-sales.is-active{border-color:rgba(21,148,119,.20) !important;background:#eaf8f5 !important;color:#11775f !important;box-shadow:0 0 0 1px rgba(21,148,119,.03) inset !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.has-warning:not(.is-active) .df-guest-workspace-v3__navcopy strong,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.has-warning:not(.is-active) > b{
  color:#a76b0a !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon{
  width:34px !important;
  height:34px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:10px !important;
  background:#f0f4f2 !important;
  color:#617068 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon.is-live{background:#e2f8ec !important;color:#078b4c !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon.is-blue{background:#eef4ff !important;color:#4f73d9 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon.is-green{background:#eaf9ef !important;color:#19a351 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon.is-mint{background:#eaf8f5 !important;color:#159477 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon.is-warning{background:#fff6e5 !important;color:#b17612 !important;}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon svg{
  width:17px !important;
  height:17px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy{
  min-width:0 !important;
  display:grid !important;
  gap:3px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy strong{
  color:inherit !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:700 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy small{
  overflow:hidden !important;
  color:#8b9791 !important;
  font-size:10.25px !important;
  line-height:1.25 !important;
  font-weight:520 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button > b{
  max-width:94px !important;
  overflow:hidden !important;
  color:#1e2d26 !important;
  font-size:12px !important;
  font-weight:760 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-active > b{
  color:currentColor !important;
}

/* Column 3 — this is intentionally the largest surface. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
  grid-column:3 !important;
  grid-row:2 !important;
  background:#f6f9f7 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__attention{
  display:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{
  padding:26px 28px 38px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro{
  margin:0 0 16px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro h4{
  font-size:21px !important;
  letter-spacing:-.035em !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro > p{
  font-size:11.5px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip.has-attention .df-guest-profile-v2__rowmeta strong{
  color:#a76b0a !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-trips > .df-guest-profile-v2__segmented{
    display:none !important;
  }
}

/* Tablet: preserve three owners without squeezing the desktop proportions. */
@media (max-width:1180px) and (min-width:761px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{width:100vw !important;max-width:100vw !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root{
    display:grid !important;
    grid-template-columns:230px minmax(0,1fr) !important;
    grid-template-rows:60px auto minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .df-ui-drawer-header-v2{
    grid-column:2 !important;
    grid-row:1 !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .dfd-guestdrawer__body,
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__view.is-active.df-guest-workspace-v3__root > .dfd-guestdrawer__body > .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    display:contents !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-column:1 !important;
    grid-row:1 / -1 !important;
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:18px 16px !important;
    overflow-y:auto !important;
    border-right:1px solid rgba(0,0,0,.22) !important;
    border-bottom:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
    grid-template-columns:50px minmax(0,1fr) !important;
    padding:0 0 16px !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatarwrap,
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__avatar{width:50px !important;height:50px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{padding-top:14px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav{
    grid-column:2 !important;
    grid-row:2 !important;
    height:auto !important;
    min-height:78px !important;
    display:flex !important;
    flex-direction:row !important;
    gap:6px !important;
    padding:10px 12px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.08) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    background:#fff !important;
    scrollbar-width:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav::-webkit-scrollbar{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    flex:0 0 auto !important;
    width:170px !important;
    min-height:56px !important;
    grid-template-columns:28px minmax(0,1fr) auto !important;
    padding:7px 9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon{width:28px !important;height:28px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy small{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
    grid-column:2 !important;
    grid-row:3 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{padding:22px 22px 32px !important;}
}

/* Phone: profile first, relationship shortcuts second, content third. */
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-eyebrow{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto auto minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    grid-column:1 !important;
    grid-row:1 !important;
    display:block !important;
    padding:12px 13px 10px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.07) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    padding-top:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking{min-height:46px !important;margin:0 !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav{
    grid-column:1 !important;
    grid-row:2 !important;
    height:auto !important;
    min-height:54px !important;
    display:flex !important;
    flex-direction:row !important;
    gap:5px !important;
    padding:7px 9px !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.08) !important;
    background:#fff !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav::-webkit-scrollbar{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:max-content !important;
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
    padding:0 10px !important;
    border-radius:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy{display:block !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy strong{font-size:10.5px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy small{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button > b{font-size:10px !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
    grid-column:1 !important;
    grid-row:3 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{
    padding:14px 11px calc(28px + env(safe-area-inset-bottom,0px)) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__identity,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__nav{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2.is-secondary > .df-guest-workspace-v3__work{grid-column:1 !important;grid-row:1 !important;}
}

/* Guard the primary booking CTA against historical Guest button overrides. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking.df-ui-drawer-action-v2--primary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border:1px solid var(--df-drawer-v2-accent,#1ed760) !important;
  border-radius:11px !important;
  background:var(--df-drawer-v2-accent,#1ed760) !important;
  color:#07110b !important;
  box-shadow:0 10px 22px rgba(var(--df-drawer-v2-accent-rgb,30,215,96),.16) !important;
  font-size:12.5px !important;
  font-weight:760 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking.df-ui-drawer-action-v2--primary:hover{
  background:var(--df-drawer-v2-accent-hover,#1bc957) !important;
  border-color:var(--df-drawer-v2-accent-hover,#1bc957) !important;
}

/* ========================================================================== */
/* DockFlow Drawer Orchestration V1 — Guest → Booking handoff (0.6.1122)      */
/* ========================================================================== */
/*
 * The Guest profile is a relationship surface, not a container for Booking
 * Details. Desktop Guest geometry is intentionally medium-wide; selecting a
 * booking parks that surface and hands the single overlay/scroll owner to the
 * canonical Booking Details renderer inside its dedicated wide drawer.
 */

html body.dfd-app #dfd-guest-drawer{
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;
  height:100dvh !important;
  min-height:100dvh !important;
  margin:0 !important;
  border-radius:0 !important;
  transform:translate3d(104%,0,0) !important;
  will-change:transform !important;
  backface-visibility:hidden !important;
  -webkit-font-smoothing:antialiased !important;
}

/* Guest profile preset: large enough for 3 useful columns, still visibly a drawer. */
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer.df-ui-drawer--guest-v2{
    width:clamp(860px,62vw,1120px) !important;
    max-width:calc(100vw - 24px) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:250px 185px minmax(0,1fr) !important;
  }

  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity{
    padding:24px 18px 18px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-profile-v2__hero{
    padding:0 0 20px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
    padding-top:16px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking{
    min-height:44px !important;
    margin-top:14px !important;
  }

  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav{
    padding:20px 8px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navhead{
    padding:2px 8px 11px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    min-height:60px !important;
    grid-template-columns:28px minmax(0,1fr) auto !important;
    gap:7px !important;
    padding:8px 7px !important;
    border-radius:10px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navicon{
    width:30px !important;
    height:30px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy strong{
    font-size:11.5px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy small{
    font-size:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button > b{
    max-width:54px !important;
    font-size:11px !important;
  }

  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work > .df-guest-profile-v2__panels{
    padding:22px 16px 34px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro{
    margin-bottom:16px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work .df-guest-profile-v2__panelintro h4{
    font-size:20px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__list{
    gap:8px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row{
    gap:8px !important;
    padding:11px 10px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip{
    grid-template-columns:30px minmax(0,1fr) auto 16px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{
    grid-template-columns:30px minmax(0,1fr) auto 16px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowcopy strong{
    white-space:normal !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta{
    max-width:112px !important;
  }
}

/* The parent leaves cleanly. It is parked, not hidden or destroyed. */
html body.dfd-app #dfd-guest-drawer.is-df-drawer-parked,
html body.dfd-app.dfd-guestdrawer-open #dfd-guest-drawer.is-df-drawer-parked,
html body.dfd-app #dfd-guest-drawer[data-df-drawer-state="parked"]{
  transform:translate3d(104%,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
}

/* 0.6.1149: the original 0.6.1122 Booking child-shell geometry was retired here.
   The canonical contextual Booking / Sale stage is owned by the 0.6.1130+ block
   below plus DFBDrawerOrchestrator. Keeping only one active owner prevents tablet
   width, panel and underlay rules from competing inside this same stylesheet. */

@media (prefers-reduced-motion:reduce){
  html body.dfd-app #dfd-guest-drawer{
    transition-duration:1ms !important;
    animation-duration:1ms !important;
  }
}

/* Terminal state rules must win over all historical drawer geometry. */
html body.dfd-app.dfd-guestdrawer-open #dfd-guest-drawer:not(.is-df-drawer-parked){
  transform:translate3d(0,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}
html body.dfd-app.dfd-guestdrawer-open #dfd-guest-drawer.is-df-drawer-parked,
html body.dfd-app.dfd-guestdrawer-open #dfd-guest-drawer[data-df-drawer-state="parked"]{
  transform:translate3d(104%,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
}

/* 1122 density refinement: the relationship rail reads as metrics, not a second app menu. */
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2[data-dfd-guest-profile-v2]{
    grid-template-columns:250px 185px minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy small{
    display:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button > b{
    max-width:68px !important;
    font-size:10.75px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
    container-type:inline-size !important;
    container-name:df-guest-work !important;
  }
}

/* Narrow right-column fallback. Modern container queries let the Guest drawer
   stay relationship-focused without making 1366px laptops feel squeezed or website-like. */
@container df-guest-work (max-width:470px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented{
    width:100% !important;
    max-width:100% !important;
    justify-content:flex-start !important;
    overflow-x:auto !important;
    overscroll-behavior-x:contain !important;
    scrollbar-width:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented::-webkit-scrollbar{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__segmented > button{
    flex:0 0 auto !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{
    grid-template-columns:30px minmax(0,1fr) 16px !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip > .df-guest-profile-v2__rowicon,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowicon{
    grid-column:1 !important;
    grid-row:1 / span 2 !important;
    align-self:start !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip > .df-guest-profile-v2__rowcopy,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowcopy{
    grid-column:2 !important;
    grid-row:1 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip > .df-guest-profile-v2__rowmeta,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowmeta{
    grid-column:2 !important;
    grid-row:2 !important;
    justify-self:start !important;
    justify-items:start !important;
    min-width:0 !important;
    max-width:none !important;
    margin-top:3px !important;
    text-align:left !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-trip > .df-guest-profile-v2__rowarrow,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowarrow{
    grid-column:3 !important;
    grid-row:1 / span 2 !important;
    align-self:center !important;
  }
}

/* Width is part of the drawer language too: future compact/wide/immersive morphs
   can reuse the same shell without a hard snap. Spatial handoff timing is owned by
   DFBDrawerOrchestrator's shared `spatial` motion profile; these are fallback-only
   shell transitions for non-orchestrated/open-close states. */
html body.dfd-app #dfd-guest-drawer,
html body.dfd-app #dfd-guest-task-drawer,
html body.dfd-app #dfd-context-booking-drawer{
  transition-property:transform,width !important;
  transition-duration:280ms,320ms !important;
  transition-timing-function:cubic-bezier(.22,1,.36,1),cubic-bezier(.22,1,.36,1) !important;
}
@media (prefers-reduced-motion:reduce){
  html body.dfd-app #dfd-guest-drawer,
  html body.dfd-app #dfd-guest-task-drawer,
  html body.dfd-app #dfd-context-booking-drawer{
    transition-duration:1ms,1ms !important;
  }
}

/* 1122 final readability pass: operational warnings must read in full. A balance /
   waiver state is more important than preserving a perfectly single-line row. */
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta{
    min-width:116px !important;
    max-width:154px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta strong{
    max-width:154px !important;
    overflow:visible !important;
    text-overflow:clip !important;
    white-space:normal !important;
    line-height:1.28 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__rowmeta small{
    max-width:154px !important;
  }
}

/* 1122 final mobile legibility + swipe affordance.
   Keep tap targets compact without falling into enterprise-micro typography. */
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav{
    scroll-snap-type:x proximity !important;
    overscroll-behavior-x:contain !important;
    -webkit-overflow-scrolling:touch !important;
    padding-right:24px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button{
    scroll-snap-align:start !important;
    padding-inline:11px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__navcopy strong{
    font-size:11.25px !important;
    line-height:1.15 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button > b{
    font-size:10.75px !important;
  }
}

/* ========================================================================== */
/* 0.6.1123 — DockFlow drawer sets                                              */
/* Guest relationship → Booking → Payment. One stage, preserved parent state. */
/* ========================================================================== */

/* Guest Profile column fill remains here; shell geometry is owned by the
   canonical Guest Profile shell block above. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
  min-height:0 !important;
  height:100% !important;
  align-self:stretch !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__work{
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
}

/* ========================================================================== */
/* 0.6.1130+ — Contextual Booking drawer set + shared stage ownership          */
/* ========================================================================== */
/*
 * A contextual Booking opened from Guest is one child surface composed of:
 *   Guest context extension | canonical Booking work surface.
 *
 * The extension is NOT the parked Guest Profile. The orchestrator owns the
 * parent/child handoff and restores the original Guest only when the child is
 * closed with contextual POP semantics.
 */

html body.dfd-app #dfd-guest-task-drawer,
html body.dfd-app #dfd-context-booking-drawer,
html body.dfd-app #dfd-context-payment-drawer{
  position:fixed !important;
  inset:0 0 0 auto !important;
  z-index:10006 !important;
  max-width:calc(100vw - 24px) !important;
  height:100dvh !important;
  max-height:100dvh !important;
  margin:0 !important;
  display:block !important;
  overflow:hidden !important;
  background:#fff !important;
  border:0 !important;
  border-left:1px solid rgba(16,33,49,.10) !important;
  border-radius:0 !important;
  box-shadow:-22px 0 58px rgba(15,30,23,.17) !important;
  transform:translate3d(104%,0,0) !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:none !important;
  /* Fallback only. The shared orchestrator applies inline-important spatial
     transition timing during an actual stack handoff. */
  transition:transform 280ms cubic-bezier(.22,1,.36,1) !important;
  will-change:transform !important;
  backface-visibility:hidden !important;
  box-sizing:border-box !important;
}

/* Inactive stack surfaces can be physically hidden after handoff/reset. These
   explicit rules beat legacy display:flex !important owners. */
html body.dfd-app #dfd-guest-drawer[hidden],
html body.dfd-app #dfd-guest-task-drawer[hidden],
html body.dfd-app #dfd-context-booking-drawer[hidden],
html body.dfd-app #dfd-context-payment-drawer[hidden]{
  display:none !important;
}

html body.dfd-app #dfd-guest-task-drawer{
  width:clamp(620px,46vw,760px) !important;
}
html body.dfd-app #dfd-context-booking-drawer{
  width:clamp(900px,62vw,1040px) !important;
}
html body.dfd-app #dfd-context-payment-drawer{
  width:clamp(560px,38vw,640px) !important;
}

html body.dfd-app #dfd-guest-task-drawer.is-open,
html body.dfd-app #dfd-guest-task-drawer.is-df-drawer-open,
html body.dfd-app #dfd-guest-task-drawer[data-df-drawer-state="open"],
html body.dfd-app #dfd-context-booking-drawer.is-open,
html body.dfd-app #dfd-context-booking-drawer.is-df-drawer-open,
html body.dfd-app #dfd-context-booking-drawer[data-df-drawer-state="open"],
html body.dfd-app #dfd-context-payment-drawer.is-open,
html body.dfd-app #dfd-context-payment-drawer.is-df-drawer-open,
html body.dfd-app #dfd-context-payment-drawer[data-df-drawer-state="open"]{
  transform:translate3d(0,0,0) !important;
  pointer-events:auto !important;
}
html body.dfd-app #dfd-guest-task-drawer[data-df-drawer-state="opening"],
html body.dfd-app #dfd-context-booking-drawer[data-df-drawer-state="opening"],
html body.dfd-app #dfd-context-payment-drawer[data-df-drawer-state="opening"]{
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-task-drawer.is-df-drawer-parked,
html body.dfd-app #dfd-guest-task-drawer[data-df-drawer-state="parked"],
html body.dfd-app #dfd-context-booking-drawer.is-df-drawer-parked,
html body.dfd-app #dfd-context-booking-drawer[data-df-drawer-state="parked"],
html body.dfd-app #dfd-context-payment-drawer.is-df-drawer-parked,
html body.dfd-app #dfd-context-payment-drawer[data-df-drawer-state="parked"]{
  transform:translate3d(104%,0,0) !important;
  pointer-events:none !important;
}

/* Spatial crossover layer ownership is temporary and belongs to the shared
   orchestrator. Drawer-specific CSS must not pin parked surfaces above children. */

/* 0.6.1169 — Guest-on-Booking rail shares the same borderless outer edge as
   Guest Profile so the dark identity surface meets the underlay cleanly. */
html body.dfd-app #dfd-context-booking-drawer.df-ui-drawer{
  border-left:0 !important;
}

/* Booking SET = calm Guest context extension + task-focused Booking surface. */
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__panel{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:264px minmax(0,1fr) !important;
  grid-template-rows:minmax(0,1fr) !important;
  overflow:hidden !important;
  background:#fff !important;
}

html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext{
  min-width:0 !important;
  min-height:0 !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  padding:30px 22px 20px !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  border-right:1px solid rgba(0,0,0,.22) !important;
  background:
    radial-gradient(circle at 60% -10%,rgba(30,215,96,.17),transparent 30%),
    radial-gradient(circle at 100% 45%,rgba(24,164,77,.06),transparent 36%),
    #090c0a !important;
  color:#fff !important;
  box-sizing:border-box !important;
  scrollbar-width:thin !important;
  scrollbar-color:#333a35 transparent !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext::-webkit-scrollbar{width:7px !important;}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext::-webkit-scrollbar-track{background:transparent !important;}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext::-webkit-scrollbar-thumb{border:2px solid transparent !important;border-radius:999px !important;background:#333a35 !important;background-clip:padding-box !important;}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head{
  min-width:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  text-align:center !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestbadge{
  display:inline-flex !important;
  align-items:center !important;
  min-height:16px !important;
  margin:0 0 8px !important;
  color:#27d965 !important;
  font-size:9.5px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestavatar{
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  min-height:68px !important;
  max-width:68px !important;
  max-height:68px !important;
  flex:0 0 68px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 0 12px !important;
  overflow:hidden !important;
  border:1px solid var(--df-guest-avatar-border) !important;
  border-radius:50% !important;
  background:var(--df-guest-avatar-bg) !important;
  color:var(--df-guest-avatar-ink) !important;
  box-shadow:var(--df-guest-avatar-shadow) !important;
  font-size:19px !important;
  line-height:1 !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  box-sizing:border-box !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestavatar img{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:none !important;
  max-height:none !important;
  display:block !important;
  object-fit:cover !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext h3{
  width:100% !important;
  margin:0 !important;
  color:#fff !important;
  font-size:20px !important;
  line-height:1.25 !important;
  font-weight:780 !important;
  letter-spacing:-.02em !important;
  overflow-wrap:anywhere !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head p{
  width:100% !important;
  margin:5px 0 0 !important;
  color:#a2aca5 !important;
  font-size:11.5px !important;
  line-height:1.4 !important;
  font-weight:520 !important;
  overflow-wrap:anywhere !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta{
  width:100% !important;
  display:grid !important;
  gap:0 !important;
  margin:22px 0 0 !important;
  padding:0 !important;
  border-top:1px solid rgba(255,255,255,.10) !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta > div{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:72px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;
  min-height:46px !important;
  margin:0 !important;
  padding:9px 0 !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta dt,
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta dd{
  min-width:0 !important;
  margin:0 !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta dt{
  color:#8d9991 !important;
  font-size:9.5px !important;
  line-height:1.2 !important;
  font-weight:720 !important;
  letter-spacing:.045em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta dd{
  overflow:hidden !important;
  color:#d4ddd7 !important;
  font-size:11px !important;
  line-height:1.3 !important;
  font-weight:620 !important;
  text-align:right !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn{
  width:100% !important;
  min-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:9px !important;
  margin:auto 0 0 !important;
  padding:0 12px !important;
  border:1px solid rgba(16,33,49,.09) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.82) !important;
  color:#334d40 !important;
  box-shadow:none !important;
  font:680 10.5px/1 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  cursor:pointer !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn:hover{
  border-color:rgba(30,215,96,.24) !important;
  background:#fff !important;
  color:#137a43 !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn:focus-visible{
  outline:2px solid rgba(30,215,96,.42) !important;
  outline-offset:2px !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn-icon,
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn-icon svg{
  width:15px !important;
  height:15px !important;
  min-width:15px !important;
  min-height:15px !important;
  max-width:15px !important;
  max-height:15px !important;
  display:block !important;
  flex:0 0 15px !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn-icon svg{
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* Main Booking side owns the experience, status, tabs and operational content.
   Header/body/footer/action chrome is deliberately NOT owned here: the pane opts
   into .df-ui-drawer--chrome-v2 in the shared V2 design system. */
@media (min-width:1181px){
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestavatar{
    width:78px !important;
    height:78px !important;
    min-width:78px !important;
    min-height:78px !important;
    max-width:78px !important;
    max-height:78px !important;
    flex-basis:78px !important;
  }
}

html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__bookingpane,
html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__paymentpane{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-rows:var(--df-drawer-v2-header-h) minmax(0,1fr) var(--df-drawer-v2-footer-h) !important;
  overflow:hidden !important;
  background:#f6f8f7 !important;
  box-sizing:border-box !important;
}

/* Payment remains a focused standalone child for this baby-step release. */
html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__panel{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:block !important;
  overflow:hidden !important;
  background:#fff !important;
}


html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__body,
html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__body{
  min-width:0 !important;
  min-height:0 !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-gutter:stable !important;
  background:#f6f8f7 !important;
  box-sizing:border-box !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__body > .df-booking-v2,
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__body .df-booking-v2,
html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__body .df-booking-v2{
  width:100% !important;
  max-width:none !important;
  min-height:100% !important;
  margin:0 !important;
}

/* Canonical Booking renderer is told to render the experience-only hero. Keep
   its geometry explicit inside this narrower work surface. */
html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__hero--experience{
  grid-template-columns:56px minmax(0,1fr) !important;
  gap:15px !important;
  min-height:170px !important;
  padding:24px 22px 22px !important;
}
html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__experience-hero-icon{
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  min-height:56px !important;
  max-width:56px !important;
  max-height:56px !important;
  flex:0 0 56px !important;
}
html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__hero-title{
  font-size:22px !important;
  line-height:1.14 !important;
  letter-spacing:-.03em !important;
}
html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__tabs{
  overflow-x:auto !important;
  overscroll-behavior-x:contain !important;
  scrollbar-width:none !important;
  -webkit-overflow-scrolling:touch !important;
}
html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__tabs::-webkit-scrollbar{
  display:none !important;
}
html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__paymentcontent{
  min-height:100% !important;
  padding:20px 22px 30px !important;
  box-sizing:border-box !important;
}

html body.dfd-app #dfd-context-booking-drawer [data-dfd-context-booking-footer-status][hidden]{
  display:none !important;
}
html body.dfd-app #dfd-context-booking-drawer [data-dfd-context-booking-footer][data-dfd-booking-footer-state="settled"]{
  justify-content:flex-end !important;
}
html body.dfd-app #dfd-context-booking-drawer [data-dfd-context-booking-footer][data-dfd-booking-footer-state="balance-due"]{
  justify-content:space-between !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus{
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:auto auto !important;
  grid-template-areas:"label value" "helper helper" !important;
  align-items:baseline !important;
  justify-content:start !important;
  gap:2px 8px !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus > span{
  grid-area:label !important;
  color:#809087 !important;
  font-size:9px !important;
  line-height:1.2 !important;
  font-weight:720 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus > strong{
  grid-area:value !important;
  min-width:0 !important;
  overflow:hidden !important;
  color:#102119 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  font-weight:760 !important;
  letter-spacing:-.018em !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus > small{
  grid-area:helper !important;
  min-width:0 !important;
  overflow:hidden !important;
  color:#91a098 !important;
  font-size:9.5px !important;
  line-height:1.25 !important;
  font-weight:520 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

/* The underlay is one continuous session while contextual child navigation is active. */
html body.dfd-app.df-ui-drawer-handoff-active [data-dfd-guest-overlay]{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

/* Tablet: switch the whole contextual set to the app-width stage at the same
   breakpoint as the Guest workspace. The orchestrator now owns the matching
   inline width contract, so CSS and JS cannot disagree between 901–1180px. */
@media (max-width:1180px){
  html body.dfd-app #dfd-context-booking-drawer,
  html body.dfd-app #dfd-context-payment-drawer{
    width:100vw !important;
    max-width:100vw !important;
    border-left:0 !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__panel{
    grid-template-columns:220px minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext{
    padding:18px 16px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestavatar{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
    max-width:50px !important;
    max-height:50px !important;
    flex-basis:50px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext h3{font-size:16px !important;}
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head p{font-size:10px !important;}
}

/* Phone: the same Booking set becomes stacked app navigation, not a squeezed
   desktop pair. Guest context becomes a compact identity strip above Booking. */
@media (max-width:760px){
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__panel{
    grid-template-columns:minmax(0,1fr) !important;
    grid-template-rows:auto minmax(0,1fr) !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext{
    height:auto !important;
    min-height:86px !important;
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    gap:0 11px !important;
    padding:12px 14px !important;
    overflow:hidden !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(16,33,49,.08) !important;
    background:linear-gradient(180deg,#ffffff 0%,#f8fbf9 100%) !important;
    color:#102119 !important;
    scrollbar-width:auto !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head{
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) !important;
    grid-template-rows:auto auto auto !important;
    align-items:center !important;
    gap:1px 11px !important;
    grid-column:1 / -1 !important;
    text-align:left !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestbadge{
    grid-column:2 !important;
    min-height:16px !important;
    margin:0 !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestavatar{
    grid-column:1 !important;
    grid-row:1 / span 3 !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    max-width:46px !important;
    max-height:46px !important;
    margin:0 !important;
    font-size:13px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext h3{
    grid-column:2 !important;
    color:#102119 !important;
    font-size:14px !important;
    text-align:left !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head p{
    grid-column:2 !important;
    margin:1px 0 0 !important;
    color:#819089 !important;
    font-size:9.5px !important;
    text-align:left !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestcontext-head p[data-dfd-context-booking-guest-phone],
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestmeta,
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__guestreturn{
    display:none !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__bookingpane,
  html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__paymentpane{
    grid-template-rows:var(--df-drawer-v2-header-h) minmax(0,1fr) auto !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__hero--experience{
    grid-template-columns:44px minmax(0,1fr) !important;
    gap:11px !important;
    padding:17px 14px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__experience-hero-icon{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;
    max-width:44px !important;
    max-height:44px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .df-booking-v2__hero-title{
    font-size:18px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__body,
  html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__body{
    scrollbar-gutter:auto !important;
  }
  html body.dfd-app #dfd-context-payment-drawer .dfd-context-payment-drawer__paymentcontent{
    padding:16px 14px 24px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus{
    gap:1px 6px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus > strong{
    font-size:12px !important;
  }
  html body.dfd-app #dfd-context-booking-drawer .dfd-context-booking-drawer__footerstatus > small{
    display:none !important;
  }
}

@media (prefers-reduced-motion:reduce){
  html body.dfd-app #dfd-guest-drawer,
  html body.dfd-app #dfd-context-booking-drawer,
  html body.dfd-app #dfd-context-payment-drawer{
    transition-duration:1ms !important;
    animation-duration:1ms !important;
  }
}

/* ========================================================================== */
/* 0.6.1155–0.6.1157 — Guest identity actions + shared kebab standard        */
/* ========================================================================== */

/* The profile column has one obvious task: create a booking. Everything else
   lives behind a familiar vertical-kebab disclosure. The overflow stays a
   real accessible menu; only its visual trigger becomes icon-only. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
  --df-drawer-v2-action-h:44px;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) var(--df-drawer-v2-action-h) !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
  padding:16px 0 0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__newbooking{
  width:100% !important;
  min-width:0 !important;
  min-height:44px !important;
  justify-content:center !important;
  margin:0 !important;
  text-decoration:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary,
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions{
  width:var(--df-drawer-v2-action-h) !important;
  min-width:var(--df-drawer-v2-action-h) !important;
  max-width:var(--df-drawer-v2-action-h) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-secondary{
  display:block !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-trigger{
  background:var(--df-guest-actions-trigger-bg,rgba(255,255,255,.88)) !important;
  border-color:var(--df-guest-actions-trigger-border,rgba(16,33,49,.10)) !important;
  color:var(--df-guest-actions-trigger-color,#56675f) !important;
  box-shadow:0 1px 0 rgba(16,33,49,.02) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-trigger:hover{
  background:var(--df-guest-actions-trigger-hover-bg,#f8fcf9) !important;
  border-color:var(--df-guest-actions-trigger-hover-border,rgba(22,179,83,.24)) !important;
  color:var(--df-guest-actions-trigger-hover-color,#183b2a) !important;
}

/* 0.6.1163 — dark identity rail polish. The guest overflow action is an
   outline-only control on the dark rail; shared secondary-button fill must not
   leak back into this context. The outer Guest drawer edge is intentionally
   borderless so the rail meets the underlay cleanly without a light seam. */
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-workspace-v3__actions-trigger.df-ui-drawer-action-v2--secondary{
    background:transparent !important;
    border:1px solid rgba(255,255,255,.22) !important;
    color:#d4ddd7 !important;
    box-shadow:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-workspace-v3__actions-trigger.df-ui-drawer-action-v2--secondary:hover:not(:disabled){
    background:transparent !important;
    border-color:rgba(99,237,144,.48) !important;
    color:#fff !important;
    box-shadow:none !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity .df-guest-workspace-v3__actions-trigger .df-ui-drawer-action-v2__icon{
    color:inherit !important;
  }
}
/* 0.6.1165 — console-confirmed seam owner: the outer #dfd-guest-drawer
   itself still inherited .df-ui-drawer { border-left:1px ... !important }.
   The panel and identity rail were already borderless. Remove the border on
   the actual outer Guest drawer owner so the dark rail meets the overlay. */
html body.dfd-app #dfd-guest-drawer.df-ui-drawer.df-ui-drawer--guest-v2{
  border-left:0 !important;
}
html body.dfd-app #dfd-guest-drawer > .dfd-guestdrawer__panel,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__panel.dfd-ui-drawerpanel,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__panel.df-ui-drawer__panel{
  border-left:0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-chevron{display:none !important;}
/* 0.6.1166 — Guest Profile overflow menu now belongs visually to the dark
   identity rail. Keep the shared menu geometry/behavior, but theme only this
   popup with the same restrained near-black + DockFlow green language as the
   rail and Dark Pass Detail. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu{
  top:calc(100% + 8px) !important;
  right:0 !important;
  bottom:auto !important;
  left:auto !important;
  width:min(204px,calc(100vw - 28px)) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:
    radial-gradient(circle at 82% -18%,rgba(39,217,101,.13),transparent 38%),
    rgba(10,14,11,.985) !important;
  box-shadow:0 22px 54px rgba(0,0,0,.34),0 4px 14px rgba(0,0,0,.22) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item{
  grid-template-columns:30px minmax(0,1fr) !important;
  gap:8px !important;
  min-height:46px !important;
  padding:7px 8px !important;
  color:#eef4f0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item:hover{
  background:rgba(39,217,101,.09) !important;
  color:#fff !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item:focus-visible{
  outline:2px solid rgba(39,217,101,.38) !important;
  outline-offset:1px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item small{
  color:#8f9d95 !important;
  font-size:9.5px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__icon{
  background:rgba(39,217,101,.10) !important;
  color:#66e78f !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__divider{
  height:1px !important;
  margin:3px 7px !important;
  background:rgba(255,255,255,.10) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item.is-danger{
  color:#ff858d !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item.is-danger:hover{
  background:rgba(244,82,93,.10) !important;
  color:#ff9ba2 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu .df-ui-drawer-menu-v2__item.is-danger .df-ui-drawer-menu-v2__icon{
  background:rgba(244,82,93,.12) !important;
  color:#ff7c85 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-meta{
  grid-column:1 / -1 !important;
  margin:0 !important;
  padding-top:3px !important;
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__identity-actions{
    grid-template-columns:minmax(0,1fr) var(--df-drawer-v2-action-h) !important;
    gap:8px !important;
    padding-top:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__actions-menu{
    width:min(240px,calc(100vw - 24px)) !important;
  }
}
/* Skeleton mirrors the final two-control action row. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions{
  grid-template-columns:minmax(0,1fr) 44px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > .df-ui-skeleton:first-child{
  width:100% !important;
  height:44px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-action-icon{
  width:44px !important;
  height:44px !important;
  border-radius:11px !important;
}

/* A Sales row is now one navigation target, matching the Fresha hierarchy:
   profile ledger -> real Payment drawer. Inline receipt/email chrome is kept
   out of the narrow ledger row so amount, reference and chevron cannot crush. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{
  cursor:pointer !important;
}
@media (min-width:1181px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale{
    grid-template-columns:32px minmax(0,1fr) minmax(94px,120px) 18px !important;
    gap:10px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowmeta{
    width:100% !important;
    min-width:94px !important;
    max-width:120px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-sale > .df-guest-profile-v2__rowarrow{
    width:18px !important;
    min-width:18px !important;
    justify-self:end !important;
  }
}

/* ========================================================================== */
/* 0.6.1149 — Responsive stage truth + shell owner cleanup                    */
/* Guest/Booking/Sale now share the same 1180px tablet-stage breakpoint. The  */
/* orchestrator owns width; this stylesheet owns composition at that width.   */
/* ========================================================================== */

/* ========================================================================== */
/* 0.6.1148 — Smart Bookings rail + live/future relationship switch             */
/* ========================================================================== */

/* One relationship owner for current + future bookings. The card reports both
   truths without adding another KPI tile or hiding future work during a live
   departure. */
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-trips{
  grid-template-columns:34px minmax(0,1fr) !important;
  background:linear-gradient(180deg,#f7fffb 0,#eef9f2 100%) !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-trips.is-active{
  border-color:rgba(9,154,88,.25) !important;
  background:#e5f8ed !important;
  color:#087744 !important;
  box-shadow:0 0 0 1px rgba(9,154,88,.04) inset !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-trips .df-guest-workspace-v3__navcopy small{
  max-width:100% !important;
  text-overflow:clip !important;
}

/* Desktop relationship switch: only current/future belong here. Historical
   views continue to be owned by Completed / Needs attention in the rail. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next{
  display:none !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next:not([hidden]){
    width:max-content !important;
    max-width:100% !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:3px !important;
    margin:-3px 0 15px !important;
    padding:3px !important;
    border:1px solid rgba(16,33,49,.08) !important;
    border-radius:11px !important;
    background:rgba(255,255,255,.78) !important;
    box-shadow:0 1px 0 rgba(16,33,49,.02) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button{
    appearance:none !important;
    -webkit-appearance:none !important;
    min-height:34px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:7px 11px !important;
    border:0 !important;
    border-radius:8px !important;
    background:transparent !important;
    color:#6f7f77 !important;
    font:650 11.25px/1 Inter,sans-serif !important;
    cursor:pointer !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button strong{
    min-width:19px !important;
    height:19px !important;
    display:inline-grid !important;
    place-items:center !important;
    padding:0 5px !important;
    border-radius:999px !important;
    background:#eef3f0 !important;
    color:#67766f !important;
    font-size:9.5px !important;
    font-weight:760 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button:hover{
    color:#22342a !important;
    background:#f4f8f5 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button.is-active,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button[aria-pressed="true"]{
    background:#e9f8ef !important;
    color:#087744 !important;
    box-shadow:0 0 0 1px rgba(9,154,88,.07) inset !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button.is-active strong,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__now-next > button[aria-pressed="true"] strong{
    background:#dff4e7 !important;
    color:#087744 !important;
  }
}

/* The workspace already says Happening now; a healthy live row only needs
   party/reference context. Attention still earns the stronger right-side line. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-live:not(.has-attention) .df-guest-profile-v2__rowmeta{
  align-self:center !important;
  gap:0 !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__row.is-live:not(.has-attention) .df-guest-profile-v2__rowmeta small.is-live-meta{
  max-width:150px !important;
  color:#77867e !important;
  font-size:10.75px !important;
  font-weight:600 !important;
}
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-trips .df-guest-workspace-v3__navcopy small{
    display:grid !important;
    gap:1px !important;
    overflow:visible !important;
    white-space:normal !important;
    line-height:1.18 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-workspace-v3__nav > button.is-trips .df-guest-workspace-v3__navcopy small > span{
    display:block !important;
  }
}


/* ==========================================================================
   0.6.1151 — Product vocabulary + focused Booking workspace hierarchy
   Internal trip-state keys remain stable; operator-facing language is Booking.
   In focused live/upcoming views the title + switch already communicate state,
   so the repeated section heading is intentionally suppressed.
   ========================================================================== */
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-trips[data-current-filter="in_progress"] [data-dfd-guest-trip-section="in_progress"] > .df-guest-profile-v2__listtitle,
  html body.dfd-app #dfd-guest-drawer #dfd-guest-panel-trips[data-current-filter="upcoming"] [data-dfd-guest-trip-section="upcoming"] > .df-guest-profile-v2__listtitle{
    display:none !important;
  }
}

/* 0.6.1160 — Guest edit identity + country-aware phone control; task geometry still consumes canonical V2 chrome. */
/* 0.6.1159 — Guest Task consumes canonical V2 chrome; feature CSS only owns task-specific geometry/content. */
/* ========================================================================== */
/* 0.6.1158 — Guest Task Layer                                                */
/* Guest Profile remains the relationship workspace. Edit / note / restriction
   / privacy utilities are contextual child tasks on the shared spatial stack. */
/* ========================================================================== */
html body.dfd-app #dfd-guest-task-drawer{
  --df-guest-task-header-h:76px;
  --df-guest-task-footer-h:72px;
  --df-guest-task-body-bg:#f6f9f7;
  color:#102119 !important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guest-task-drawer__panel{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:block !important;
  overflow:hidden !important;
  background:var(--df-guest-task-body-bg) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  display:none !important;
  grid-template-rows:var(--df-guest-task-header-h) minmax(0,1fr) auto !important;
  overflow:hidden !important;
  background:var(--df-guest-task-body-bg) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view.is-active{
  display:grid !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view > .df-ui-drawer-header-v2{
  position:relative !important;
  z-index:5 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:var(--df-guest-task-header-h) !important;
  height:var(--df-guest-task-header-h) !important;
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:center !important;
  column-gap:12px !important;
  margin:0 !important;
  padding:0 22px 0 16px !important;
  border:0 !important;
  border-bottom:1px solid rgba(16,33,49,.08) !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:none !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view > .df-ui-drawer-header-v2 > .df-ui-drawer-header-v2__copy{
  grid-column:2 !important;
  grid-row:1 !important;
  min-width:0 !important;
  align-self:center !important;
  justify-self:stretch !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view > .df-ui-drawer-header-v2 > .df-ui-drawer-header-v2__close[data-dfd-guest-view-back]{
  grid-column:1 !important;
  grid-row:1 !important;
  position:relative !important;
  inset:auto !important;
  width:42px !important;
  min-width:42px !important;
  max-width:42px !important;
  height:42px !important;
  min-height:42px !important;
  max-height:42px !important;
  margin:0 !important;
  padding:0 !important;
  justify-self:start !important;
  border-radius:13px !important;
  transform:none !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view > .df-ui-drawer-header-v2 > .df-ui-drawer-header-v2__close[data-dfd-guest-view-back] svg{
  width:18px !important;
  height:18px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-ui-drawer-header-v2__eyebrow{
  margin:0 0 3px !important;
  color:#0a9b4c !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-ui-drawer-header-v2__title{
  margin:0 !important;
  color:#102119 !important;
  font-size:22px !important;
  font-weight:760 !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-ui-drawer-header-v2__subtitle{
  margin:3px 0 0 !important;
  color:#71827a !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.25 !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2{
  min-width:0 !important;
  min-height:0 !important;
  display:block !important;
  margin:0 !important;
  padding:26px 28px 36px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
  -webkit-overflow-scrolling:touch !important;
  background:var(--df-guest-task-body-bg) !important;
  scrollbar-width:thin !important;
  scrollbar-color:#aebdb5 #eef3f0 !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar{width:8px !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar-track{background:#eef3f0 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2::-webkit-scrollbar-thumb{border:2px solid #eef3f0 !important;border-radius:999px !important;background:#aebdb5 !important;background-clip:padding-box !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__section{
  width:min(100%,680px) !important;
  margin:0 auto !important;
  padding:20px !important;
  display:grid !important;
  gap:18px !important;
  border:1px solid rgba(16,33,49,.07) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(15,23,42,.025) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__sectionhead{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:16px !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__sectioneyebrow{
  margin:0 0 7px !important;
  color:#0b8d48 !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__sectionhead h3{
  margin:0 !important;
  color:#17281f !important;
  font-size:18px !important;
  font-weight:720 !important;
  line-height:1.15 !important;
  letter-spacing:-.025em !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field{
  min-width:0 !important;
  display:grid !important;
  gap:7px !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field[hidden],
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__statuschips[hidden],
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__toggle[hidden]{display:none !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field--full{grid-column:1 / -1 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field > span{
  color:#61736a !important;
  font-size:11.5px !important;
  font-weight:680 !important;
  line-height:1.2 !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field :is(input,select,textarea){
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  border:1px solid rgba(16,33,49,.11) !important;
  border-radius:12px !important;
  background:#fff !important;
  color:#142019 !important;
  font:500 14px/1.4 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  outline:0 !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field :is(input,select){height:46px !important;padding:0 13px !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field textarea{min-height:116px !important;padding:12px 13px !important;resize:vertical !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field :is(input,select,textarea):focus{
  border-color:#24a866 !important;
  box-shadow:0 0 0 3px rgba(18,168,96,.10) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__identity{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
  padding:2px 0 1px !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__avatarwrap{
  width:58px !important;
  height:58px !important;
  flex:0 0 58px !important;
  display:block !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__avatar{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  border:1px solid var(--df-guest-avatar-border) !important;
  border-radius:50% !important;
  background:var(--df-guest-avatar-bg) !important;
  color:var(--df-guest-avatar-ink) !important;
  box-shadow:var(--df-guest-avatar-shadow) !important;
  font:800 15px/1 Inter,sans-serif !important;
  letter-spacing:.02em !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__avatar img{width:100% !important;height:100% !important;display:block !important;object-fit:cover !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__identitycopy{min-width:0 !important;display:grid !important;gap:4px !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__identitycopy strong{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;color:#15271e !important;font-size:14px !important;font-weight:720 !important;line-height:1.2 !important;letter-spacing:-.015em !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__identitycopy small{color:#84928b !important;font-size:10.5px !important;font-weight:550 !important;line-height:1.2 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__field{position:relative !important;align-self:start !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone{position:relative !important;width:100% !important;min-width:0 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__control{
  width:100% !important;
  min-width:0 !important;
  height:46px !important;
  display:grid !important;
  grid-template-columns:auto auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:8px !important;
  padding:0 12px 0 6px !important;
  border:1px solid rgba(16,33,49,.11) !important;
  border-radius:12px !important;
  background:#fff !important;
  box-shadow:none !important;
  transition:border-color .16s ease,box-shadow .16s ease !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__control:focus-within{border-color:#24a866 !important;box-shadow:0 0 0 3px rgba(18,168,96,.10) !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__country{
  width:auto !important;
  min-width:48px !important;
  height:34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
  margin:0 !important;
  padding:0 6px !important;
  border:0 !important;
  border-radius:8px !important;
  background:transparent !important;
  color:#142019 !important;
  box-shadow:none !important;
  cursor:pointer !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__country:hover,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__country:focus-visible{background:rgba(16,33,49,.05) !important;outline:none !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__flag,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__optionflag{width:22px !important;height:22px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;overflow:hidden !important;flex:0 0 22px !important;border-radius:999px !important;background:#fff !important;box-shadow:0 1px 2px rgba(15,23,42,.10) !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__flag img,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__optionflag img{width:100% !important;height:100% !important;display:block !important;object-fit:cover !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__chev{width:11px !important;height:11px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;color:#839087 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__chev svg{width:11px !important;height:11px !important;display:block !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__code{position:relative !important;min-width:30px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;color:#1b2b22 !important;font-size:13px !important;font-weight:650 !important;line-height:1 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__code::before{content:'' !important;position:absolute !important;left:-4px !important;top:7px !important;bottom:7px !important;width:1px !important;background:rgba(16,33,49,.09) !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__input,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__input:hover,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__input:focus,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__input:focus-visible{
  width:100% !important;
  min-width:0 !important;
  height:44px !important;
  min-height:44px !important;
  margin:0 !important;
  padding:0 0 0 2px !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#142019 !important;
  font:500 14px/1.35 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__input::placeholder{color:#9aa69f !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__picker{
  position:absolute !important;
  z-index:25 !important;
  top:calc(100% + 8px) !important;
  right:0 !important;
  width:min(430px,calc(100vw - 48px)) !important;
  padding:10px !important;
  border:1px solid rgba(16,33,49,.09) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.99) !important;
  box-shadow:0 20px 44px rgba(16,33,49,.16) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__picker[hidden]{display:none !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__search{height:40px !important;display:flex !important;align-items:center !important;gap:8px !important;padding:0 11px !important;border:1px solid rgba(16,33,49,.09) !important;border-radius:11px !important;background:#fff !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__searchicon{width:18px !important;height:18px !important;flex:0 0 18px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;color:#6e7d75 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__searchicon svg{width:18px !important;height:18px !important;display:block !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__searchinput,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field input.dfd-guestphone__searchinput:focus{
  width:100% !important;height:auto !important;min-height:0 !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:transparent !important;box-shadow:none !important;outline:none !important;color:#142019 !important;font:500 13px/1.3 Inter,sans-serif !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__list{max-height:286px !important;margin-top:8px !important;padding:2px 0 !important;display:grid !important;gap:2px !important;overflow-y:auto !important;overscroll-behavior:contain !important;scrollbar-width:thin !important;scrollbar-color:#b5c0ba transparent !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__option{width:100% !important;min-width:0 !important;display:grid !important;grid-template-columns:22px minmax(0,1fr) auto !important;align-items:center !important;gap:11px !important;margin:0 !important;padding:9px 10px !important;border:0 !important;border-radius:9px !important;background:#fff !important;color:#142019 !important;box-shadow:none !important;text-align:left !important;cursor:pointer !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__option:hover,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__option:focus-visible,
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__option.is-active{background:#f1f7f3 !important;outline:none !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__optionname{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;font-size:12.5px !important;font-weight:620 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__optioncode{color:#718078 !important;font-size:11.5px !important;font-weight:650 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__empty{padding:18px 10px !important;color:#7a8981 !important;font-size:12px !important;text-align:center !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__statuschips{display:flex !important;flex-wrap:wrap !important;justify-content:flex-end !important;gap:7px !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__status{height:26px !important;padding:0 10px !important;border-radius:999px !important;font-size:10.5px !important;font-weight:750 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__toggle{display:flex !important;align-items:center !important;gap:9px !important;color:#53675d !important;font-size:12px !important;font-weight:600 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__toggle input{width:18px !important;height:18px !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__note{margin:0 !important;color:#76877f !important;font-size:11.5px !important;line-height:1.5 !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__foot.df-ui-drawer-footer-v2{
  position:relative !important;
  z-index:5 !important;
  min-height:var(--df-guest-task-footer-h) !important;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  width:100% !important;
  margin:0 !important;
  padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px)) !important;
  border:0 !important;
  border-top:1px solid rgba(16,33,49,.08) !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 -12px 30px rgba(25,59,43,.045) !important;
  backdrop-filter:blur(16px) !important;
  -webkit-backdrop-filter:blur(16px) !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__footmeta{display:none !important;}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__footactions.df-ui-drawer-footer-v2__actions{
  width:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  margin:0 0 0 auto !important;
}
html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__footactions .df-ui-drawer-action-v2--primary{
  min-width:132px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-task-view--note .dfd-guestdrawer__section{
  width:min(100%,600px) !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-task-view--note .dfd-guestdrawer__grid{
  grid-template-columns:1fr !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-task-view--note .dfd-guestdrawer__field textarea{
  min-height:230px !important;
}

@media (max-width:1180px){
  html body.dfd-app #dfd-guest-task-drawer{
    width:100vw !important;
    max-width:100vw !important;
    border-left:0 !important;
    box-shadow:none !important;
  }
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-task-drawer{--df-guest-task-header-h:72px;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__view > .df-ui-drawer-header-v2{
    grid-template-columns:42px minmax(0,1fr) !important;
    column-gap:10px !important;
    padding:0 14px 0 10px !important;
  }
  html body.dfd-app #dfd-guest-task-drawer .df-ui-drawer-header-v2__title{font-size:20px !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__body.df-ui-drawer-body-v2{padding:16px 12px calc(28px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__section{padding:16px !important;border-radius:16px !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__sectionhead{display:grid !important;gap:10px !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__statuschips{justify-content:flex-start !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__grid{grid-template-columns:1fr !important;gap:13px !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__avatarwrap,html body.dfd-app #dfd-guest-task-drawer .dfd-guesttask__avatar{width:52px !important;height:52px !important;min-width:52px !important;flex-basis:52px !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestphone__picker{left:0 !important;right:auto !important;width:min(430px,calc(100vw - 56px)) !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__field--full{grid-column:auto !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__foot.df-ui-drawer-footer-v2{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px)) !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__footactions.df-ui-drawer-footer-v2__actions{width:100% !important;}
  html body.dfd-app #dfd-guest-task-drawer .dfd-guestdrawer__footactions .df-ui-drawer-action-v2--primary{width:100% !important;min-width:0 !important;}
}

/* 0.6.1158: Privacy/export task content keeps the established Guest-specific anatomy. */
/* ========================================================================== 
   Guest privacy + data anatomy
   Shared buttons/menu/confirmation remain owned by df-ui-v2.css. These rules
   only describe the Guest-specific information layout.
   ========================================================================== */
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacy{
  display:grid !important;
  gap:16px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyhead{margin-bottom:0 !important;}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyintro{
  max-width:540px !important;
  margin:6px 0 0 !important;
  color:#73877c !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacystack{
  display:grid !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:18px !important;
  padding:18px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard--danger{
  grid-template-columns:1fr !important;
  align-items:stretch !important;
  gap:14px !important;
  border-color:#eadedb !important;
  background:linear-gradient(135deg,#fff 0%,#fff 72%,#fff9f8 100%) !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycardmain{
  min-width:0 !important;
  display:flex !important;
  align-items:flex-start !important;
  gap:13px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycardmain > div{min-width:0 !important;}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyicon{
  width:40px !important;
  height:40px !important;
  flex:0 0 40px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:12px !important;
  border:1px solid #dcebe3 !important;
  background:#f1f8f4 !important;
  color:#2d8158 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyicon--danger{
  border-color:#f0d3cf !important;
  background:#fff3f1 !important;
  color:#b42318 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyicon svg,
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep li span svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykicker{
  display:block !important;
  margin:1px 0 4px !important;
  color:#4a8d6c !important;
  font-size:10px !important;
  font-weight:800 !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard h4,
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep h4{
  margin:0 !important;
  color:#17281f !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycardmain p{
  max-width:520px !important;
  margin:6px 0 0 !important;
  color:#71857a !important;
  font-size:12.5px !important;
  font-weight:500 !important;
  line-height:1.5 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard > .df-ui-drawer-action-v2{
  justify-self:end !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked{
  max-width:none !important;
  width:100% !important;
  display:grid !important;
  grid-template-columns:28px minmax(0,1fr) !important;
  align-items:start !important;
  gap:8px !important;
  padding:10px 11px !important;
  border:1px solid #eddcb3 !important;
  border-radius:12px !important;
  background:#fffaf0 !important;
  color:#8a5a13 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked > span{
  width:28px !important;
  height:28px !important;
  display:grid !important;
  place-items:center !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked svg{
  width:17px !important;
  height:17px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked p{
  margin:0 !important;
  color:#86601f !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.42 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked strong{
  display:block !important;
  margin:0 0 2px !important;
  color:#765016 !important;
  font-size:12px !important;
  font-weight:750 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep{
  display:grid !important;
  gap:13px !important;
  padding:18px !important;
  background:#fbfdfc !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeephead{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep ul{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep li{
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  padding:9px 10px !important;
  border:1px solid #e7eeea !important;
  border-radius:11px !important;
  background:#fff !important;
  color:#566e61 !important;
  font-size:11.5px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep li span{
  width:18px !important;
  height:18px !important;
  flex:0 0 18px !important;
  display:grid !important;
  place-items:center !important;
  color:#2f8b5d !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep li span svg{width:14px !important;height:14px !important;stroke-width:2 !important;}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep > p{
  margin:0 !important;
  color:#819188 !important;
  font-size:11.5px !important;
  font-weight:500 !important;
  line-height:1.45 !important;
}

@media (max-width:700px){
  html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard{
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:15px !important;
  }
  html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacycard > .df-ui-drawer-action-v2{
    width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
  }
  html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacyblocked{max-width:none !important;}
  html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep{padding:15px !important;}
  html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__privacykeep ul{grid-template-columns:1fr !important;}
}

/* v0.6.1089 — Guest record export picker. The existing Privacy/Data card anatomy
   remains the owner; this only distinguishes the recommended human-readable format. */
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__exportcard.is-recommended{
  border-color:#cfe8da !important;
  background:linear-gradient(135deg,#ffffff 0%,#f7fcf9 100%) !important;
}
html body.dfd-app #dfd-guest-task-drawer .df-guest-profile-v2__exportcard.is-recommended .df-guest-profile-v2__privacykicker{
  color:#25875a !important;
}


/* ========================================================================== */
/* 0.6.1161 — Guest async skeleton = live workspace anatomy                  */
/* ========================================================================== */
/* Loading is no longer a generic stack of CRM cards. It uses the exact Guest
   workspace owners: identity column, activity rail and current Bookings pane.
   That keeps every placeholder where the real content will land and removes
   the visual jump when the AJAX response replaces the skeleton. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity{
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .dfd-guestdrawer__sk-avatar{
  width:78px !important;
  height:78px !important;
  border-radius:50% !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-identity-eyebrow{
  display:block !important;
  width:76px !important;
  height:7px !important;
  margin:0 auto 9px !important;
  border-radius:4px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-name{
  display:block !important;
  width:156px !important;
  max-width:100% !important;
  height:19px !important;
  margin:0 auto !important;
  border-radius:7px !important;
}
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-meta{
  display:block !important;
  width:136px !important;
  max-width:100% !important;
  height:9px !important;
  margin:7px auto 0 !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 44px !important;
  gap:8px !important;
  align-items:center !important;
  margin:0 !important;
  padding:16px 0 0 !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions > .df-ui-skeleton:first-child{
  width:100% !important;
  height:44px !important;
  border-radius:11px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-action-icon{
  width:44px !important;
  height:44px !important;
  border-radius:11px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-identity-meta{
  grid-column:1 / -1 !important;
  width:150px !important;
  height:8px !important;
  justify-self:start !important;
  margin-top:0 !important;
}

/* Activity overview column. These are shaped like the real nav rows rather
   than old tab pills, including icon/copy/value positions. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-nav{
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navhead{
  display:grid !important;
  gap:8px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navhead > .df-ui-skeleton:first-child{
  width:108px !important;
  height:13px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navhead > .df-ui-skeleton:last-child{
  width:62px !important;
  height:8px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navitem{
  width:100% !important;
  min-height:60px !important;
  display:grid !important;
  grid-template-columns:30px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:7px !important;
  padding:8px 7px !important;
  border-radius:10px !important;
  box-sizing:border-box !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navitem.is-active{
  background:#eef8f1 !important;
  box-shadow:inset 0 0 0 1px rgba(9,200,88,.06) !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navicon{
  width:30px !important;
  height:30px !important;
  border-radius:9px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy{
  min-width:0 !important;
  display:grid !important;
  gap:7px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy > .df-ui-skeleton:first-child{
  width:74px !important;
  height:10px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy > .df-ui-skeleton:last-child{
  width:58px !important;
  height:7px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navvalue{
  width:22px !important;
  height:10px !important;
  justify-self:end !important;
}

/* Work pane mirrors the initial Bookings destination because that is the view
   the controller activates when the Guest response arrives. */
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-work{
  pointer-events:none !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-panelintro{
  margin:0 0 16px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-panelintro > div{
  display:grid !important;
  gap:8px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-panelintro .df-ui-skeleton:first-child{
  width:72px !important;
  height:8px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-panelintro .df-ui-skeleton:last-child{
  width:188px !important;
  max-width:62% !important;
  height:20px !important;
  border-radius:7px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookinglist{
  padding:0 15px !important;
  overflow:hidden !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-listtitle{
  min-height:46px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-listtitle > .df-ui-skeleton:first-child{
  width:76px !important;
  height:11px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-listtitle > .df-ui-skeleton:last-child{
  width:22px !important;
  height:18px !important;
  border-radius:999px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingrow{
  min-height:73px !important;
  display:grid !important;
  grid-template-columns:30px minmax(0,1fr) minmax(74px,112px) 16px !important;
  align-items:center !important;
  gap:8px !important;
  padding:11px 10px !important;
  border-top:1px solid #edf1ef !important;
  box-sizing:border-box !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingicon{
  width:30px !important;
  height:30px !important;
  border-radius:9px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingcopy,
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingmeta{
  min-width:0 !important;
  display:grid !important;
  gap:7px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingcopy > .df-ui-skeleton:first-child{
  height:10px !important;
  max-width:180px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingcopy > .df-ui-skeleton:last-child{
  height:8px !important;
  max-width:220px !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingmeta{
  justify-items:end !important;
}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingmeta > .df-ui-skeleton:first-child{height:9px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingmeta > .df-ui-skeleton:last-child{height:7px !important;}
html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-chevron{
  width:7px !important;
  height:12px !important;
  justify-self:end !important;
  border-radius:3px !important;
}

/* Tablet follows the live Guest contract: identity stays left, nav becomes a
   horizontal rail above work. */
@media (max-width:1180px) and (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-avatar{
    width:50px !important;
    height:50px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-identity-eyebrow{
    margin-left:0 !important;
    margin-right:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-name,
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-meta{
    margin-left:0 !important;
    margin-right:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-identity-meta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navitem{
    flex:0 0 auto !important;
    width:170px !important;
    min-height:56px !important;
    grid-template-columns:28px minmax(0,1fr) auto !important;
    padding:7px 9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navicon{width:28px !important;height:28px !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy > .df-ui-skeleton:last-child{display:none !important;}
}

/* Phone mirrors the compact identity + horizontally discoverable activity rail
   + full-width bookings list. No desktop placeholder is allowed to hang offscreen. */
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-avatar{
    width:46px !important;
    height:46px !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-name{
    width:126px !important;
    height:15px !important;
    margin-left:0 !important;
    margin-right:0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .dfd-guestdrawer__sk-hero-meta{
    width:112px !important;
    height:8px !important;
    margin:5px 0 0 !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__skeleton-identity-actions{
    padding-top:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-identity-meta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navitem{
    flex:0 0 auto !important;
    width:92px !important;
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    gap:0 !important;
    padding:0 10px !important;
    border-radius:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navicon,
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navvalue,
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy > .df-ui-skeleton:last-child{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-navcopy > .df-ui-skeleton:first-child{
    width:62px !important;
    height:9px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-panelintro .df-ui-skeleton:last-child{
    width:158px !important;
    height:18px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookinglist{padding:0 10px !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingrow{
    min-height:64px !important;
    grid-template-columns:30px minmax(0,1fr) 14px !important;
    gap:8px !important;
    padding:9px 4px !important;
  }
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-bookingmeta{display:none !important;}
  html body.dfd-app #dfd-guest-drawer .dfd-guestdrawer__sk-chevron{grid-column:3 !important;}
}

/* 0.6.1162 — skeleton inherits the dark identity rail instead of flashing a light
   profile column before real Guest data arrives. */
@media (min-width:761px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .df-ui-skeleton{
    background:rgba(255,255,255,.12) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .df-ui-skeleton--green{
    background:rgba(30,215,96,.24) !important;
  }
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2--skeleton .df-guest-workspace-v3__identity .df-ui-skeleton::after{
    background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.18) 46%,transparent 100%) !important;
  }
}



/* 0.6.1167 — Guest relationship empty-state parity. Bookings, Completed, Needs
   attention and Sales now reuse the exact shared Fleet/Experience V2 empty-state
   anatomy instead of rendering small white alert cards. The Guest module owns only
   placement; icon/title/copy geometry remains canonical in df-ui-v2.css. */
html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__empty.df-ui-empty-state-v2{
  width:100% !important;
  min-height:300px !important;
  box-sizing:border-box !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-sales-ledger].is-empty{
  padding:0 !important;
  border-color:transparent !important;
  background:transparent !important;
  box-shadow:none !important;
}
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-sales-ledger].is-empty > .df-guest-profile-v2__listtitle,
html body.dfd-app #dfd-guest-drawer [data-dfd-guest-sales-ledger].is-empty > [data-dfd-guest-sales-rows]{
  display:none !important;
}
@media (max-width:760px){
  html body.dfd-app #dfd-guest-drawer .df-guest-profile-v2__empty.df-ui-empty-state-v2{
    min-height:240px !important;
  }
}
