/* WholeDesk enterprise experience system — Release 00393 scoped workspace and field-experience candidate.
   This final layer deliberately removes the accumulated decorative palette.
   Colour now communicates brand, focus, AI assistance or operational state. */

:root {
  --wd-font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --wd-font-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI Variable Display","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --wd-type-display:2.125rem;
  --wd-type-title:1.5rem;
  --wd-type-section:1.0625rem;
  --wd-type-body:.875rem;
  --wd-type-action:.8125rem;
  --wd-type-small:.75rem;
  --wd-type-label:.6875rem;
  --wd-page:#f5f6f8;
  --wd-surface:#ffffff;
  --wd-surface-subtle:#f8f9fb;
  --wd-ink:#172033;
  --wd-ink-soft:#38445a;
  --wd-muted:#6b7587;
  --wd-line:#dfe3e8;
  --wd-line-strong:#cdd3db;
  --wd-action:#2e63d8;
  --wd-action-hover:#224fb5;
  --wd-focus:#82a7ff;
  --wd-success:#138764;
  --wd-success-soft:#eaf7f2;
  --wd-warning:#a66300;
  --wd-warning-soft:#fff5e4;
  --wd-danger:#bc3747;
  --wd-danger-soft:#fceef0;
  --wd-ai:#6557c8;
  --wd-ai-soft:#f1effc;
  --wd-rail:#151c2b;
  --wd-rail-muted:#9fa8b8;
  --wd-shadow-sm:0 1px 2px rgba(20,29,46,.04),0 5px 18px rgba(20,29,46,.05);
  --wd-shadow-md:0 18px 54px rgba(20,29,46,.14);
  color-scheme:light;
  font-family:var(--wd-font-sans);
}

*,*::before,*::after { box-sizing:border-box; }
html,body,button,input,select,textarea { font-family:var(--wd-font-sans); }
html,body { max-width:100%; overflow-x:clip; }
html {
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
body { margin:0; background:var(--wd-page); color:var(--wd-ink); font-kerning:normal; letter-spacing:0; }
button,input,select,textarea { font-size:.9rem; }
button { transition:border-color .16s ease,background-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease; }
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible {
  outline:3px solid color-mix(in srgb,var(--wd-focus) 56%,transparent);
  outline-offset:2px;
}

/* Application shell and navigation */
.app {
  display:grid;
  grid-template-columns:224px minmax(0,1fr);
  min-height:100vh;
  background:var(--wd-page);
}
.app > aside.wd-app-rail {
  position:sticky;
  top:0;
  z-index:30;
  display:flex;
  flex-direction:column;
  height:100dvh;
  min-height:0;
  padding:22px 14px 16px;
  overflow-y:auto;
  color:#fff;
  background:
    radial-gradient(circle at 105% 6%,color-mix(in srgb,var(--tenant-primary,#ff8a00) 22%,transparent),transparent 31%),
    radial-gradient(circle at -25% 78%,rgba(72,105,160,.18),transparent 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--tenant-secondary,#102f48) 88%,#050a12),var(--tenant-secondary,#102f48));
  border-right:1px solid rgba(255,255,255,.09);
  box-shadow:10px 0 34px rgba(9,20,34,.14);
}
.wd-mobile-nav-close,
.wd-mobile-nav-backdrop { display:none; }
.wd-app-rail .sidebar-brand { min-height:44px; padding:0 8px 18px; margin:0; }
.wd-app-rail .sidebar-brand img { flex:0 0 36px; width:36px; height:36px; }
.wd-app-rail .sidebar-brand-copy strong { font-size:1.0625rem; font-weight:750; letter-spacing:.015em; }
.wd-app-rail .sidebar-brand-copy span { color:var(--wd-rail-muted); font-size:.75rem; letter-spacing:0; }
.wd-rail-command {
  display:grid;
  grid-template-columns:18px 1fr auto;
  align-items:center;
  gap:8px;
  width:100%;
  min-height:40px;
  margin:0 0 19px;
  padding:8px 10px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:9px;
  color:#f5f7fa;
  background:rgba(255,255,255,.055);
  text-align:left;
  cursor:pointer;
}
.wd-rail-command:hover { border-color:rgba(255,255,255,.28); background:rgba(255,255,255,.095); }
.wd-rail-command { font-size:.8125rem; font-weight:550; letter-spacing:0; }
.wd-rail-command kbd,.wd-global-command kbd { font:600 .6875rem var(--wd-font-sans); color:inherit; opacity:.64; }
.app > aside.wd-app-rail nav {
  display:grid;
  flex:1 1 auto;
  min-height:0;
  gap:18px;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.wd-nav-group { display:grid; gap:2px; }
.wd-nav-label {
  padding:0 10px 6px;
  color:#7f899b;
  font-size:var(--wd-type-label);
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.app > aside.wd-app-rail nav .wd-nav-group > button {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  min-height:36px;
  padding:8px 10px 8px 13px;
  border:1px solid transparent;
  border-radius:8px;
  color:#bdc5d2;
  background:transparent;
  font-size:var(--wd-type-action);
  font-weight:600;
  letter-spacing:0;
  line-height:1.25;
  text-align:left;
  box-shadow:none;
}
.app > aside.wd-app-rail nav .wd-nav-group > button::after {
  content:"›";
  margin-left:auto;
  color:var(--tenant-primary,#ff8a00);
  font-size:1rem;
  line-height:1;
  opacity:0;
  transform:translateX(-5px);
  transition:opacity .16s ease,transform .16s ease;
}
.app > aside.wd-app-rail nav .wd-nav-group > button:hover {
  color:#fff;
  background:linear-gradient(90deg,rgba(255,255,255,.09),rgba(255,255,255,.045));
  border-color:rgba(255,255,255,.08);
  transform:translateX(2px);
}
.app > aside.wd-app-rail nav .wd-nav-group > button:hover::after,
.app > aside.wd-app-rail nav .wd-nav-group > button:focus-visible::after,
.app > aside.wd-app-rail nav .wd-nav-group > button.active::after {
  opacity:1;
  transform:translateX(0);
}
.app > aside.wd-app-rail nav .wd-nav-group > button.active {
  color:#fff;
  background:linear-gradient(90deg,color-mix(in srgb,var(--tenant-primary,#ff8a00) 27%,rgba(255,255,255,.08)),rgba(255,255,255,.055));
  border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 24%,rgba(255,255,255,.1));
  box-shadow:0 8px 20px rgba(3,12,23,.16);
}
.app > aside.wd-app-rail nav .wd-nav-group > button.active::before {
  content:"";
  position:absolute;
  inset:8px auto 8px 0;
  width:2px;
  border-radius:2px;
  background:var(--tenant-primary,#ff8a00);
}
.wd-nav-support { padding-top:4px; border-top:1px solid rgba(255,255,255,.08); }
.wd-app-rail .aside-footer { display:grid; flex:0 0 auto; gap:3px; margin-top:16px; padding:14px 10px 0; border-color:rgba(255,255,255,.1); }
.wd-app-rail .aside-footer strong { font-size:.875rem; font-weight:700; }
.wd-app-rail .aside-footer span,.wd-app-rail .aside-footer button { color:var(--wd-rail-muted); font-size:.75rem; }
.wd-app-rail .aside-footer button { justify-self:start; margin-top:7px; padding:0; border:0; background:transparent; }

.content { min-width:0; }
.wd-command-bar {
  position:sticky;
  top:0;
  z-index:25;
  display:grid;
  grid-template-columns:minmax(150px,240px) minmax(320px,640px) minmax(140px,1fr);
  align-items:center;
  gap:24px;
  height:70px;
  padding:0 28px;
  background:rgba(255,255,255,.92);
  border-bottom:1px solid var(--wd-line);
  backdrop-filter:blur(18px);
}
.wd-command-tenant strong { color:var(--wd-ink); font-size:.875rem; font-weight:700; }
.wd-command-tenant .tenant-label { color:var(--wd-muted); font-size:.75rem; }
.wd-command-account { display:flex; justify-content:flex-end; align-items:center; gap:12px; min-width:0; }
.wd-global-command {
  display:grid;
  grid-template-columns:30px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  width:100%;
  padding:7px 11px;
  border:1px solid var(--wd-line);
  border-radius:10px;
  color:var(--wd-ink-soft);
  background:var(--wd-surface-subtle);
  text-align:left;
  cursor:pointer;
}
.wd-global-command:hover { border-color:#bfc8d6; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-global-command span:nth-child(2) { display:grid; gap:1px; }
.wd-global-command strong { font-size:.8125rem; font-weight:650; letter-spacing:0; }
.wd-global-command small { color:var(--wd-muted); font-size:.6875rem; letter-spacing:0; }
.wd-command-orb {
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  object-fit:contain;
  border-radius:8px;
  color:#fff;
  background:#fff;
  font-weight:750;
}
.role-pill { color:#485468; background:#f1f3f6; border:1px solid var(--wd-line); font-size:.75rem; font-weight:650; letter-spacing:0; }
main { width:100%; max-width:none; padding:28px clamp(20px,2.6vw,42px) 64px; }
#workspace-navigation { display:none !important; }

/* Type and page hierarchy */
h1,h2,h3,h4 { font-family:var(--wd-font-display); letter-spacing:-.025em; }
strong { letter-spacing:-.01em; }
h2 { color:var(--wd-ink); font-size:clamp(1.75rem,2.2vw,2.25rem); font-weight:720; line-height:1.08; }
h3 { color:var(--wd-ink); }
.wd-eyebrow {
  color:#697386;
  font-size:var(--wd-type-label);
  font-weight:700;
  letter-spacing:.115em;
  text-transform:uppercase;
}
.wd-studio-hero,
.wd-studio-hero:not(.wd-calendar-hero),
#customers-view > .wd-studio-hero,
#service-operations-view > .wd-studio-hero,
.wd-field-app-hero {
  position:relative;
  overflow:hidden;
  min-height:0;
  margin:0 0 20px;
  padding:30px;
  color:#fff;
  background:
    radial-gradient(circle at 82% 18%,color-mix(in srgb,var(--tenant-primary,#ff8a00) 24%,transparent),transparent 35%),
    linear-gradient(128deg,var(--tenant-secondary,#102f48) 0%,color-mix(in srgb,var(--tenant-secondary,#102f48) 78%,var(--tenant-primary,#ff8a00)) 100%);
  border:1px solid color-mix(in srgb,var(--tenant-primary,#ff8a00) 18%,transparent);
  border-radius:18px;
  box-shadow:0 20px 52px rgba(15,36,55,.15);
}
.wd-studio-hero::after {
  display:block !important;
  content:"" !important;
  position:absolute;
  inset:auto -80px -130px auto;
  width:300px;
  height:300px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:50%;
}
.wd-studio-hero h2,.wd-studio-hero:not(.wd-calendar-hero) h2 {
  color:#fff;
  font-family:var(--wd-font-display);
  font-size:var(--wd-type-display);
  font-weight:720;
  line-height:1.08;
  letter-spacing:-.03em;
}
.wd-studio-hero .intro,.wd-studio-hero:not(.wd-calendar-hero) .intro {
  max-width:720px;
  margin:8px 0 0;
  color:rgba(235,243,248,.8);
  font-size:.9375rem;
  line-height:1.55;
}
.wd-studio-hero .wd-eyebrow { color:var(--tenant-primary,#ff9a1c); }
.wd-studio-hero > .wd-hero-actions { align-self:center; }
.wd-operations-hero .wd-hero-actions { align-self:flex-start; }
.wd-operations-chips { margin-top:12px; }
.wd-operations-chips span {
  padding:5px 8px;
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.2);
  border-radius:999px;
  font-size:.75rem;
  font-weight:600;
  letter-spacing:0;
}

/* Buttons have one clear hierarchy and visible interaction. */
button.primary,.primary {
  color:#fff;
  background:linear-gradient(135deg,var(--tenant-primary,#ff8a00),color-mix(in srgb,var(--tenant-primary,#ff8a00) 82%,#9b4300));
  border:1px solid var(--tenant-primary,#ff8a00);
  border-radius:10px;
  box-shadow:0 8px 20px color-mix(in srgb,var(--tenant-primary,#ff8a00) 24%,transparent);
  font-weight:650;
  letter-spacing:0;
}
button.primary:hover,.primary:hover { filter:brightness(.97); box-shadow:0 11px 24px color-mix(in srgb,var(--tenant-primary,#ff8a00) 30%,transparent); transform:translateY(-1px); }
button.secondary,.secondary {
  color:var(--wd-ink);
  background:#fff;
  border:1px solid var(--wd-line-strong);
  border-radius:8px;
  box-shadow:none;
  font-weight:620;
  letter-spacing:0;
}
button.secondary:hover,.secondary:hover { border-color:#9aa6b5; background:#f8f9fb; }
.wd-studio-hero .secondary { color:#fff; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.26); }
.wd-studio-hero .secondary:hover { color:#fff; background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.42); }
.wd-assist-dialog .primary { background:var(--wd-ai); border-color:var(--wd-ai); box-shadow:0 8px 20px rgba(101,87,200,.22); }

/* Operational summaries keep the depth and artwork that make WholeDesk feel
   premium. Their accent colours identify destinations or genuine state; dense
   record registers below use a quieter, unified-row treatment. */
.wd-operations-metrics {
  gap:12px;
  margin:0 0 18px;
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.wd-operations-metric,
.wd-metric-grid .metric,
.wd-field-summary > button {
  --wd-summary-accent:#b9c1cc;
  position:relative;
  min-height:118px;
  padding:16px;
  overflow:hidden;
  color:var(--wd-ink);
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:11px;
  box-shadow:var(--wd-shadow-sm);
  text-align:left;
}
.wd-operations-metrics .wd-operations-metric {
  min-height:150px;
  border:1px solid var(--wd-line);
  border-bottom:4px solid var(--wd-metric-tone,var(--wd-action));
  border-radius:15px;
  box-shadow:var(--wd-shadow-sm);
}
.wd-operations-metric::before,
.wd-metric-grid .metric::after,.wd-field-summary > button::after { display:none !important; content:none !important; }
.wd-operations-metric::after {
  display:block !important;
  content:"" !important;
  position:absolute;
  top:-35px;
  right:-32px;
  width:82px;
  height:82px;
  border-radius:50%;
  background:color-mix(in srgb,var(--wd-metric-tone,var(--wd-action)) 9%,transparent);
}
.wd-operations-metric > span:first-child {
  color:#697386;
  font-size:var(--wd-type-label);
  font-weight:700;
  line-height:1.35;
  letter-spacing:.065em;
}
.wd-operations-metric strong {
  color:var(--wd-ink);
  font-family:var(--wd-font-display);
  font-size:1.625rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.025em;
}
.wd-operations-metric small { color:var(--wd-muted); font-size:var(--wd-type-small); line-height:1.4; letter-spacing:0; }
.wd-operations-metric-action { margin-top:auto; color:var(--wd-action); font-size:.75rem; font-weight:650; letter-spacing:0; }
.wd-operations-metric:hover,.wd-field-summary > button:hover {
  border-color:#aeb8c7;
  background:#fbfcff;
  box-shadow:0 9px 25px rgba(20,29,46,.09);
  transform:translateY(-1px);
}
.wd-operations-metrics .wd-operations-metric:hover,
.wd-operations-metrics .wd-operations-metric:focus-visible {
  z-index:1;
  border-color:color-mix(in srgb,var(--wd-metric-tone,var(--wd-action)) 44%,var(--wd-line));
  background:#fff;
  box-shadow:0 13px 28px rgba(16,44,70,.12);
  transform:translateY(-2px);
}
.wd-operations-metric.wd-semantic-info { --wd-metric-tone:var(--wd-action); }
.wd-operations-metric.wd-semantic-danger { --wd-metric-tone:var(--wd-danger); background:linear-gradient(180deg,#fff,var(--wd-danger-soft)); }
.wd-semantic-danger .wd-operations-metric-action { color:var(--wd-danger); }
.wd-operations-metric.wd-semantic-success { --wd-metric-tone:var(--wd-success); }
.wd-semantic-success .wd-operations-metric-action { color:var(--wd-success); }
.wd-tone-blue { --wd-metric-tone:#3b82f6; }
.wd-tone-orange { --wd-metric-tone:var(--tenant-primary,#ff9818); }
.wd-tone-green { --wd-metric-tone:#28b864; }
.wd-tone-red { --wd-metric-tone:var(--wd-danger); }
.wd-tone-purple { --wd-metric-tone:#7c5ce7; }

.wd-operations-panel,.wd-table-shell,.customer-table,.wd-field-sidebar,.wd-field-queue-header {
  border:1px solid var(--wd-line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--wd-shadow-sm);
}
.wd-scope-note {
  display:flex;
  align-items:center;
  gap:11px;
  margin:-6px 0 16px;
  padding:11px 13px;
  color:var(--wd-ink-soft);
  background:#eef3ff;
  border:1px solid #d7e1fb;
  border-radius:9px;
}
.wd-scope-note > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:5px 10px; }
.wd-scope-note strong { font-size:.76rem; }
.wd-scope-note span { color:#5d6d88; font-size:.72rem; line-height:1.45; }
.wd-scope-icon { display:grid; place-items:center; flex:0 0 26px; width:26px; height:26px; color:var(--wd-action) !important; background:#fff; border-radius:7px; font-size:.92rem !important; }
.wd-operations-layout { gap:16px; }
.wd-operations-layout > aside { padding:0; color:inherit; background:transparent; }
.wd-panel-heading,.wd-table-heading { border-color:var(--wd-line); }
.wd-connected-list strong,.wd-live-status { color:var(--wd-success); background:var(--wd-success-soft); }
.wd-planned-status { color:var(--wd-warning); background:var(--wd-warning-soft); }
.wd-dashboard-health-grid { gap:12px; padding:16px; }
.wd-dashboard-health-card {
  min-height:144px;
  padding:17px;
  border:1px solid var(--wd-line);
  border-top:4px solid var(--wd-health-tone,var(--wd-action));
  border-radius:13px;
  background:linear-gradient(180deg,#fff,var(--wd-surface-subtle));
  box-shadow:0 6px 18px rgba(16,44,70,.055);
}
.wd-dashboard-health-card span { color:var(--wd-muted); font-size:var(--wd-type-label); font-weight:700; letter-spacing:.055em; }
.wd-dashboard-health-card strong {
  font-family:var(--wd-font-display);
  font-size:1.75rem;
  font-weight:700;
  letter-spacing:-.025em;
}
.wd-dashboard-health-card.wd-health-green span { color:var(--wd-success); }
.wd-dashboard-health-card.wd-health-red span { color:var(--wd-danger); }
.wd-dashboard-health-card.wd-health-orange span { color:var(--wd-warning); }
.wd-dashboard-health-card.wd-health-blue span { color:var(--wd-action); }
.wd-dashboard-attention {
  width:100%;
  color:var(--wd-ink);
  font:inherit;
  text-align:left;
  cursor:pointer;
}
.wd-dashboard-attention:hover,
.wd-dashboard-attention:focus-visible {
  border-color:#bac7da;
  background:#f3f6fc;
  box-shadow:inset 3px 0 var(--wd-action);
}

/* One record is one row. Static facts no longer masquerade as five buttons. */
.wd-register-heading {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  padding:18px 20px 14px;
  border-bottom:1px solid var(--wd-line);
}
.wd-register-heading h3 { margin:2px 0 0; font-size:1.0625rem; font-weight:700; letter-spacing:-.018em; }
.wd-register-heading p:last-child { max-width:520px; margin:0; color:var(--wd-muted); font-size:.8125rem; line-height:1.5; letter-spacing:0; }
.customer-table,.wd-customer-table { overflow:hidden; }
.wd-segmented-register,
.wd-customer-register-table,
.wd-service-register-table,
.wd-history-job-table {
  min-width:980px;
  width:100%;
  border-collapse:separate;
  border-spacing:0 10px;
}
.wd-segmented-register thead th {
  padding:10px 14px 7px;
  color:#7a8495;
  background:transparent;
  border-bottom:0;
  font-size:var(--wd-type-label);
  font-weight:700;
  line-height:1.35;
  letter-spacing:.075em;
}
.wd-segmented-register tbody tr {
  height:auto;
  cursor:default;
  outline:0;
  background:transparent;
  filter:none;
  transform:none;
}
.wd-segmented-register tbody td,
.wd-segmented-register tbody td:first-child,
.wd-segmented-register tbody td:last-child {
  padding:0 !important;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  transition:background .2s ease;
}
.wd-segmented-register tbody td:first-child {
  position:relative;
  border-radius:18px 0 0 18px;
}
.wd-segmented-register tbody td:first-child::before {
  content:"";
  position:absolute;
  z-index:3;
  top:18px;
  bottom:18px;
  left:0;
  width:3px;
  border-radius:999px;
  background:var(--tenant-primary,#ff8a00);
  box-shadow:0 0 14px color-mix(in srgb,var(--tenant-primary,#ff8a00) 24%,transparent);
}
.wd-segmented-register tbody td:last-child {
  border-radius:0 18px 18px 0;
}
.wd-segmented-register tbody tr:hover td,
.wd-segmented-register tbody tr:focus-visible td,
.wd-segmented-register tbody tr:focus-within td {
  background:transparent;
}
.wd-segmented-register tbody tr:hover,
.wd-segmented-register tbody tr:focus-visible,
.wd-segmented-register tbody tr:focus-within {
  background:transparent;
  filter:none;
  transform:none;
}
.wd-segmented-register tbody tr:hover td:first-child,
.wd-segmented-register tbody tr:focus-visible td:first-child,
.wd-segmented-register tbody tr:focus-within td:first-child {
  box-shadow:none;
}
.wd-register-control,.wd-workspace-status-action {
  --wd-control-tone:#727d8e;
  position:relative;
  display:grid;
  align-content:center;
  gap:3px;
  width:100%;
  min-height:78px;
  padding:12px 14px;
  overflow:visible;
  color:var(--wd-ink);
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  text-align:left;
  transform:none;
}
.wd-segmented-register .wd-register-control {
  min-height:82px;
  height:auto;
  border-radius:16px;
  transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.wd-segmented-register .wd-register-control-kicker { display:none; }
.wd-register-control::after,.wd-workspace-status-action::after { display:none !important; content:none !important; }
button.wd-register-control { cursor:pointer; }
button.wd-register-control:hover {
  color:var(--wd-action);
  background:linear-gradient(180deg,rgba(46,99,216,.075),rgba(46,99,216,.035));
  border:0;
  box-shadow:inset 0 0 0 1px rgba(46,99,216,.24),0 4px 12px rgba(46,99,216,.08);
  transform:none;
}
.wd-register-field { cursor:pointer; }
.wd-segmented-register .wd-register-control:hover,
.wd-segmented-register .wd-register-control:focus-visible {
  z-index:2;
  color:color-mix(in srgb,var(--wd-control-tone) 72%,var(--wd-ink));
  background:linear-gradient(145deg,#fff 54%,color-mix(in srgb,var(--wd-control-tone) 9%,#fff));
  border:0;
  box-shadow:0 18px 36px rgba(16,44,70,.14),0 10px 28px color-mix(in srgb,var(--wd-control-tone) 16%,transparent);
  transform:translateY(-3px) scale(1.018);
}
.wd-register-control-kicker { color:#7a8495; font-size:var(--wd-type-label); font-weight:700; letter-spacing:.075em; }
.wd-register-control-value { color:var(--wd-ink); font-size:var(--wd-type-body); font-weight:650; letter-spacing:0; }
.wd-segmented-register .wd-register-control-value {
  transform-origin:left center;
  transition:color .16s ease,transform .16s ease;
}
.wd-segmented-register .wd-register-control:hover .wd-register-control-value,
.wd-segmented-register .wd-register-control:focus-visible .wd-register-control-value {
  color:color-mix(in srgb,var(--wd-control-tone) 76%,var(--wd-ink));
  transform:scale(1.025);
}
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+1) { --wd-control-tone:#3b82f6; }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+2) { --wd-control-tone:#28b864; }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+3) { --wd-control-tone:var(--tenant-primary,#ff8a00); }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+4) { --wd-control-tone:#7c5ce7; }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+5) { --wd-control-tone:#3b82f6; }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(6n+6) { --wd-control-tone:#28b864; }
.wd-segmented-register.wd-field-card-register tbody td:nth-child(7) { --wd-control-tone:var(--tenant-primary,#ff8a00); }
.wd-segmented-register tbody td:not(:has(.wd-register-control)) {
  position:relative;
  min-height:82px;
  padding:15px 14px !important;
  border-radius:16px;
  transition:color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}
.wd-segmented-register tbody td:not(:has(.wd-register-control)):hover,
.wd-segmented-register tbody td:not(:has(.wd-register-control)):focus-within {
  z-index:2;
  color:color-mix(in srgb,var(--wd-control-tone,#3b82f6) 72%,var(--wd-ink));
  background:linear-gradient(145deg,#fff 54%,color-mix(in srgb,var(--wd-control-tone,#3b82f6) 9%,#fff));
  box-shadow:0 18px 36px rgba(16,44,70,.14),0 10px 28px color-mix(in srgb,var(--wd-control-tone,#3b82f6) 16%,transparent);
  transform:translateY(-3px) scale(1.018);
}
.wd-register-control-detail { color:var(--wd-muted); font-size:var(--wd-type-small); line-height:1.4; letter-spacing:0; }
.wd-register-job .wd-register-control-value { font-size:.9rem; }
.wd-customer-register-table th:nth-child(1) { width:25%; }
.wd-customer-register-table th:nth-child(2) { width:17%; }
.wd-customer-register-table th:nth-child(3) { width:25%; }
.wd-customer-register-table th:nth-child(4) { width:12%; }
.wd-customer-register-table th:nth-child(5) { width:21%; }
.wd-customer-register-table .wd-register-status .wd-register-control-value { color:var(--wd-ink); }
.wd-customer-register-table .wd-register-open {
  min-height:44px;
  width:calc(100% - 20px);
  margin:10px;
  padding:9px 12px;
  color:var(--wd-ink-soft);
  background:transparent;
  border:0;
  border-radius:12px;
  box-shadow:none;
  text-align:center;
}
.wd-customer-register-table .wd-register-open .wd-register-control-kicker,
.wd-customer-register-table .wd-register-open .wd-register-control-detail { display:none; }
.wd-customer-register-table .wd-register-open .wd-register-control-value { color:var(--wd-ink); }
.wd-customer-register-table .wd-register-open:hover,
.wd-customer-register-table .wd-register-open:focus-visible {
  color:color-mix(in srgb,var(--wd-control-tone) 76%,var(--wd-ink));
  background:linear-gradient(145deg,#fff 54%,color-mix(in srgb,var(--wd-control-tone) 9%,#fff));
  border:0;
  box-shadow:0 18px 36px rgba(16,44,70,.14),0 10px 28px color-mix(in srgb,var(--wd-control-tone) 16%,transparent);
}
.wd-customer-register-table .wd-register-open:hover .wd-register-control-value,
.wd-customer-register-table .wd-register-open:focus-visible .wd-register-control-value {
  color:color-mix(in srgb,var(--wd-control-tone) 76%,var(--wd-ink));
}
.wd-clickable-row { outline:0; }

/* Search and filter bars stay legible at normal laptop widths. */
.wd-search-bar {
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:7px;
  background:linear-gradient(180deg,#fff,#fafbfd);
  border:1px solid #d8e0e8;
  border-radius:16px;
  box-shadow:0 8px 24px rgba(16,44,70,.07),inset 0 1px 0 rgba(255,255,255,.8);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.wd-search-bar:focus-within {
  border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 45%,#cbd5df);
  box-shadow:0 12px 30px rgba(16,44,70,.11),0 0 0 4px color-mix(in srgb,var(--tenant-primary,#ff8a00) 10%,transparent);
  transform:translateY(-1px);
}
.wd-search-icon {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  color:var(--tenant-secondary,#102f48);
  background:color-mix(in srgb,var(--tenant-primary,#ff8a00) 10%,#fff);
  border-radius:11px;
}
.wd-search-icon svg { width:17px; height:17px; }
.wd-search-bar input {
  width:100%;
  min-width:0;
  min-height:42px;
  padding:7px 5px;
  color:var(--wd-ink);
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  font-size:.9rem;
}
.wd-search-bar input:focus { outline:0; box-shadow:none; }
.wd-search-bar .wd-search-submit {
  min-height:40px;
  padding:9px 16px;
  color:#fff;
  background:var(--tenant-secondary,#102f48);
  border-color:var(--tenant-secondary,#102f48);
  border-radius:11px;
  box-shadow:0 5px 14px rgba(16,47,72,.16);
}
.wd-search-bar .wd-search-submit:hover {
  color:#fff;
  background:color-mix(in srgb,var(--tenant-secondary,#102f48) 90%,#fff);
  border-color:var(--tenant-secondary,#102f48);
  transform:translateY(-1px);
}

/* A focused action preview stays attached to the control being inspected.
   Static row facts never spawn floating cards or obscure neighbouring cells. */
.wd-hover-insight {
  position:fixed;
  z-index:120;
  display:grid;
  gap:7px;
  width:min(286px,calc(100vw - 28px));
  padding:12px 13px 12px 15px;
  color:var(--wd-ink);
  background:#fff;
  border:1px solid #d7dee7;
  border-radius:11px;
  box-shadow:0 14px 34px rgba(16,44,70,.16),0 3px 8px rgba(16,44,70,.08);
  pointer-events:none;
  opacity:0;
  transform:translateY(3px) scale(.992);
  transition:opacity .14s ease,transform .14s ease;
}
.wd-hover-insight[data-actionable="true"] { pointer-events:auto; cursor:pointer; }
.wd-hover-insight[hidden] { display:none; }
.wd-hover-insight.wd-hover-insight-visible { opacity:1; transform:translateY(0) scale(1); }
.wd-hover-insight .wd-eyebrow { margin:0; color:#a95e00; font-size:.6rem; }
.wd-hover-insight-title { color:var(--wd-ink); font-size:.86rem; line-height:1.3; }
.wd-hover-insight-facts {
  display:grid;
  gap:0;
  overflow:hidden;
  background:#f6f8fb;
  border:1px solid #e5eaf0;
  border-radius:8px;
}
.wd-hover-insight-facts span {
  max-width:100%;
  padding:6px 8px;
  color:var(--wd-ink-soft);
  border-bottom:1px solid #e5eaf0;
  font-size:.66rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.wd-hover-insight-facts span:last-child { border-bottom:0; }
.wd-hover-insight small { color:var(--wd-muted); font-size:.67rem; line-height:1.4; }
.wd-hover-insight[data-actionable="true"] small::after {
  content:"  Open →";
  color:var(--wd-action);
  font-weight:750;
}

/* Inline editing is visible but does not turn every fact into a coloured card. */
.wd-service-register-table button.wd-register-control:hover .wd-register-control-detail { color:var(--wd-action); }
.wd-register-inline-editor { border:1px solid var(--wd-focus); border-radius:9px; box-shadow:0 10px 28px rgba(20,29,46,.12); }
.wd-service-register-table tbody tr[title] { position:relative; }

/* Record context appears above the current workspace and dismisses from the backdrop. */
dialog.wd-dialog::backdrop,
.wd-assist-dialog::backdrop {
  background:rgba(17,24,39,.3);
  backdrop-filter:blur(7px) saturate(.78);
}
.wd-record-drawer {
  width:min(880px,calc(100vw - 224px));
  border:0;
  border-left:1px solid var(--wd-line);
  border-radius:14px 0 0 14px;
  box-shadow:var(--wd-shadow-md);
}
.wd-record-drawer .wd-record-dialog-head,
.wd-record-dialog .wd-record-dialog-head {
  position:relative;
  overflow:hidden;
  min-height:112px;
  padding:25px 28px;
  color:#fff;
  background:
    radial-gradient(circle at 88% 15%,color-mix(in srgb,var(--tenant-primary,#ff8a00) 24%,transparent),transparent 34%),
    linear-gradient(128deg,var(--tenant-secondary,#102f48) 0%,color-mix(in srgb,var(--tenant-secondary,#102f48) 74%,var(--tenant-primary,#ff8a00)) 100%);
  border-bottom:0;
  box-shadow:0 12px 30px rgba(15,36,55,.13);
}
.wd-record-dialog-head::before { display:none !important; content:none !important; }
.wd-record-dialog-head::after {
  display:block !important;
  content:"" !important;
  position:absolute;
  right:-66px;
  bottom:-138px;
  width:270px;
  height:270px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:50%;
  pointer-events:none;
}
.wd-record-dialog-head > * { position:relative; z-index:1; }
.wd-record-dialog-head h3 { color:#fff; }
.wd-record-dialog-head p:not(.wd-eyebrow) { color:rgba(235,243,248,.8); }
.wd-record-dialog-head .wd-eyebrow { color:var(--tenant-primary,#ff9a1c); }
.wd-record-dialog-head .secondary,
.wd-record-dialog-head .wd-dialog-close {
  color:#fff;
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.28);
}
.wd-record-dialog-head .secondary:hover,
.wd-record-dialog-head .wd-dialog-close:hover {
  color:#fff;
  background:rgba(255,255,255,.15);
  border-color:rgba(255,255,255,.48);
}
.wd-dialog-back { min-width:0; }

.wd-context-overlay {
  position:fixed;
  inset:0;
  z-index:75;
  display:flex;
  justify-content:flex-end;
  background:rgba(17,24,39,.3);
  backdrop-filter:blur(7px) saturate(.78);
}
body.wd-context-open { overflow:hidden; }
.wd-context-overlay .wd-visit-workspace {
  width:min(1180px,calc(100vw - 224px));
  height:100dvh;
  max-height:100dvh;
  margin:0;
  overflow:auto;
  border:0;
  border-left:1px solid var(--wd-line);
  border-radius:14px 0 0 14px;
  background:var(--wd-page);
  box-shadow:var(--wd-shadow-md);
  animation:wd-context-enter .2s ease-out both;
}
@keyframes wd-context-enter { from { opacity:.7; transform:translateX(24px); } to { opacity:1; transform:translateX(0); } }
.wd-context-overlay .wd-visit-workspace-head {
  position:sticky;
  top:0;
  z-index:4;
  margin:0;
  padding:21px 24px;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 88% 15%,color-mix(in srgb,var(--tenant-primary,#ff8a00) 22%,transparent),transparent 34%),
    linear-gradient(128deg,var(--tenant-secondary,#102f48) 0%,color-mix(in srgb,var(--tenant-secondary,#102f48) 76%,var(--tenant-primary,#ff8a00)) 100%);
  border:0;
  border-bottom:0;
  border-radius:0;
  backdrop-filter:blur(14px);
}
.wd-context-overlay .wd-visit-workspace-head h3 { color:#fff; }
.wd-context-overlay .wd-visit-workspace-head p { color:rgba(235,243,248,.8); }
.wd-context-overlay .wd-visit-workspace-head .wd-eyebrow { color:var(--tenant-primary,#ff9a1c); }
.wd-context-overlay .wd-visit-workspace-head .secondary { color:#fff; background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.28); }
.wd-context-overlay .wd-visit-workspace-grid { padding:18px; }
.wd-context-close::before { content:"×"; margin-right:7px; font-size:1rem; }
.wd-workspace-status-action {
  width:180px;
  min-height:48px;
  padding:8px 12px;
  color:var(--wd-ink);
  background:#fff;
  border:1px solid var(--wd-line-strong);
  border-radius:8px;
}

/* WholeDesk Assist is a truthful command and navigation layer. */
.wd-assist-dialog {
  width:min(760px,calc(100vw - 32px));
  max-width:none;
  padding:0;
  border:1px solid rgba(255,255,255,.2);
  border-radius:16px;
  background:#fff;
  box-shadow:0 30px 90px rgba(17,24,39,.28);
}
.wd-assist-shell > header {
  display:flex;
  height:auto;
  min-height:92px;
  padding:20px 22px;
  background:#fff;
  border-bottom:1px solid var(--wd-line);
}
.wd-assist-shell > header > div { display:flex; align-items:center; gap:12px; }
.wd-assist-shell h2 { margin:2px 0 0; font-size:1.3rem; }
.wd-assist-shell .wd-eyebrow { margin:0; color:var(--wd-ai); }
.wd-icon-button {
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  padding:0;
  border:1px solid var(--wd-line);
  border-radius:8px;
  color:var(--wd-ink);
  background:#fff;
  cursor:pointer;
  font-size:1.2rem;
}
.wd-icon-button:hover { background:#f4f5f7; }
#wholedesk-assist-form { padding:22px; }
#wholedesk-assist-form > label { display:block; margin-bottom:8px; color:var(--wd-ink-soft); font-size:.76rem; font-weight:650; }
.wd-assist-input-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; }
.wd-assist-input-row input {
  width:100%;
  min-height:46px;
  padding:10px 12px;
  border:1px solid var(--wd-line-strong);
  border-radius:8px;
  color:var(--wd-ink);
  background:#fff;
}
.wd-assist-shortcuts { display:flex; flex-wrap:wrap; gap:7px; padding:0 22px 18px; }
.wd-assist-shortcuts button,.wd-assist-suggestion {
  padding:8px 11px;
  border:1px solid var(--wd-line);
  border-radius:999px;
  color:var(--wd-ink-soft);
  background:#f8f9fb;
  cursor:pointer;
  font-weight:620;
}
.wd-assist-shortcuts button:hover,.wd-assist-suggestion:hover { color:var(--wd-ai); border-color:#bdb5ed; background:var(--wd-ai-soft); }
.wd-assist-result { min-height:92px; margin:0 22px 20px; padding:16px; border:1px solid #ddd9f5; border-radius:10px; background:var(--wd-ai-soft); }
.wd-assist-result p { margin:0; color:#4f4a76; font-size:.84rem; line-height:1.5; }
.wd-assist-result strong { display:block; margin-bottom:5px; color:var(--wd-ink); }
.wd-assist-result button { margin-top:12px; }
.wd-assist-shell > footer { padding:13px 22px; color:var(--wd-muted); background:#f8f9fb; border-top:1px solid var(--wd-line); font-size:.7rem; }

/* Field and calendar use the same restrained meaning system. */
.wd-field-workspace { gap:14px; }
.wd-field-sidebar { overflow:hidden; }
.wd-field-view-nav button { border-radius:7px; }
.wd-field-view-nav button.active { color:var(--wd-action); background:#eef3ff; border-color:#cddaff; }
.wd-field-sidebar-guide { color:var(--wd-ink-soft); background:#f4f6f9; border:1px solid var(--wd-line); }
.wd-field-visit-card { border:1px solid var(--wd-line); border-top:2px solid var(--wd-line-strong); box-shadow:var(--wd-shadow-sm); }
.wd-field-visit-card:nth-child(n) { --wd-visit-tone:var(--wd-line-strong); }
.wd-field-visit-actions .primary { background:var(--wd-action); border-color:var(--wd-action); }
.wd-field-visit-actions button:not(.primary):hover { border-color:#9aa6b5; background:#f8f9fb; }

.sr-only {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

@media (max-width:1100px) {
  .wd-command-bar { grid-template-columns:minmax(150px,1fr) minmax(260px,1.6fr) auto; }
  .wd-global-command small { display:none; }
  .wd-operations-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (min-width:901px) and (max-width:1280px) {
  .wd-studio-hero:not(.wd-operations-hero):not(.wd-calendar-hero) {
    flex-direction:row;
    align-items:center;
  }
  .wd-studio-hero:not(.wd-operations-hero):not(.wd-calendar-hero) > .wd-hero-actions {
    display:flex;
    flex:0 0 auto;
    width:auto;
  }
}

@media (max-width:900px) {
  .app { grid-template-columns:1fr; }
  body.wd-mobile-navigation-open { overflow:hidden; }
  .app > aside.wd-app-rail {
    position:fixed;
    inset:0 auto 0 0;
    z-index:80;
    display:flex;
    width:min(86vw,320px);
    height:100dvh;
    padding:20px 14px calc(18px + env(safe-area-inset-bottom));
    visibility:hidden;
    pointer-events:none;
    transform:translateX(-104%);
    transition:transform .2s ease,visibility .2s ease;
  }
  .app.wd-mobile-nav-open > aside.wd-app-rail {
    visibility:visible;
    pointer-events:auto;
    transform:translateX(0);
  }
  .wd-mobile-nav-close {
    position:absolute;
    top:13px;
    right:12px;
    z-index:2;
    display:grid;
    width:42px;
    height:42px;
    place-items:center;
    padding:0;
    color:#fff;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.18);
    border-radius:11px;
    cursor:pointer;
    font-size:1.35rem;
  }
  .wd-mobile-nav-close:hover { background:rgba(255,255,255,.14); }
  .app > aside.wd-app-rail .sidebar-brand { padding-right:48px; }
  .app > aside.wd-app-rail nav .wd-nav-group > button { min-height:44px; }
  .wd-mobile-nav-backdrop {
    position:fixed;
    inset:0;
    z-index:70;
    display:block;
    visibility:hidden;
    padding:0;
    border:0;
    background:rgba(8,18,29,.48);
    opacity:0;
    pointer-events:none;
    backdrop-filter:blur(3px);
    transition:opacity .2s ease,visibility .2s ease;
  }
  .app.wd-mobile-nav-open > .wd-mobile-nav-backdrop {
    visibility:visible;
    opacity:1;
    pointer-events:auto;
  }
  .wd-command-bar { grid-template-columns:1fr auto; height:auto; min-height:66px; padding:10px 16px; }
  .wd-global-command { grid-row:2; grid-column:1/-1; }
  .wd-command-account { grid-column:2; grid-row:1; }
  .tenant-mode .wd-mobile-tenant-nav,
  .wd-mobile-tenant-nav {
    position:fixed;
    z-index:60;
    right:12px;
    bottom:max(10px,env(safe-area-inset-bottom));
    left:12px;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:4px;
    padding:6px;
    background:color-mix(in srgb,var(--tenant-secondary,#102f48) 94%,#fff);
    border:1px solid rgba(255,255,255,.13);
    border-radius:17px;
    box-shadow:0 18px 50px rgba(8,20,34,.28);
    transition:transform .18s ease,opacity .18s ease;
  }
  .wd-mobile-tenant-nav.wd-mobile-dock-hidden,
  .wd-mobile-tenant-nav.wd-mobile-dock-keyboard {
    transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)));
    opacity:0;
    pointer-events:none;
  }
  .app > .content > main {
    padding-bottom:calc(var(--wd-mobile-dock-height,66px) + 32px + env(safe-area-inset-bottom));
  }
  html { scroll-padding-bottom:calc(98px + env(safe-area-inset-bottom)); }
  .wd-mobile-nav-action {
    display:grid;
    min-width:0;
    min-height:52px;
    place-items:center;
    align-content:center;
    gap:2px;
    padding:5px 3px;
    color:#cbd5df;
    background:transparent;
    border:0;
    border-radius:11px;
    box-shadow:none;
    cursor:pointer;
    font-size:.62rem;
    font-weight:720;
    line-height:1.1;
  }
  .wd-mobile-nav-action > span:first-child { color:var(--tenant-primary,#ff8a00); font-size:1.02rem; line-height:1; }
  .wd-mobile-nav-action:hover,
  .wd-mobile-nav-action[aria-current="page"] {
    color:#fff;
    background:rgba(255,255,255,.1);
  }
  .wd-mobile-nav-action[aria-current="page"] { box-shadow:inset 0 -2px var(--tenant-primary,#ff8a00); }
  main { padding:22px 16px calc(94px + env(safe-area-inset-bottom)); }
  .wd-record-drawer,.wd-context-overlay .wd-visit-workspace { width:100vw; border-radius:0; }
  .wd-studio-hero { align-items:flex-start; }
}

@media (max-width:680px) {
  .wd-command-tenant { min-width:0; }
  .wd-command-account .role-pill { display:none; }
  .wd-operations-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-studio-hero,.wd-studio-hero:not(.wd-calendar-hero) { display:grid; gap:14px; padding:22px 18px; border-radius:16px; }
  .wd-studio-hero > .wd-hero-actions,
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-content:stretch;
    width:100%;
    max-width:none;
    overflow:visible;
  }
  .wd-studio-hero > .wd-hero-actions > button,
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > button,
  .wd-studio-hero > .wd-hero-actions > .wd-workspace-navigation,
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > .wd-workspace-navigation,
  .wd-studio-hero > .wd-hero-actions .wd-workspace-navigation button { width:100%; min-width:0; }
  .wd-operations-chips { display:flex; flex-direction:row; flex-wrap:wrap; gap:6px; }
  .wd-operations-metrics .wd-operations-metric { min-height:132px; padding:14px; }
  .wd-operations-metric strong { font-size:1.35rem; }
  .wd-dashboard-health-grid { grid-template-columns:repeat(2,minmax(0,1fr)); padding:12px; }
  .wd-dashboard-health-card { min-height:128px; padding:14px; }
  .wd-operations-layout { gap:12px; }
  .wd-operations-panel { border-radius:15px; }
  .wd-quick-action-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; }
  .wd-quick-action-buttons button { width:100%; min-width:0; }
  .wd-register-heading { display:block; }
  .wd-register-heading p:last-child { margin-top:8px; }
  .wd-table-wrap {
    contain:inline-size;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  .wd-assist-input-row { grid-template-columns:1fr; }
  .wd-search-bar { grid-template-columns:36px minmax(0,1fr); }
  .wd-search-bar .wd-search-submit { grid-column:1/-1; }
  .wd-hover-insight { display:none !important; }
  .wd-context-overlay .wd-visit-workspace-grid { padding:10px; }
  .wd-context-overlay .wd-visit-workspace-head { align-items:flex-start; padding:16px; }
  .wd-context-overlay .wd-visit-workspace-actions { width:100%; }
  .wd-record-dialog-actions { display:grid; grid-template-columns:1fr; }
  .wd-record-dialog-actions button { width:100%; min-height:48px; }
}

@media (max-width:420px) {
  .wd-command-bar { gap:9px; padding:9px 12px; }
  .wd-command-tenant strong {
    display:block;
    max-width:260px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .wd-global-command { min-height:46px; }
  main { padding:16px 12px calc(92px + env(safe-area-inset-bottom)); }
  .wd-studio-hero,.wd-studio-hero:not(.wd-calendar-hero) { margin-bottom:14px; padding:20px 16px; }
  .wd-studio-hero h2,.wd-studio-hero:not(.wd-calendar-hero) h2 { font-size:1.65rem; }
  .wd-studio-hero .intro,.wd-studio-hero:not(.wd-calendar-hero) .intro { font-size:.82rem; }
  .wd-studio-hero > .wd-hero-actions { gap:8px; }
  .wd-studio-hero > .wd-hero-actions button { min-height:46px; padding:9px 8px; font-size:.75rem; }
  .wd-operations-metrics { gap:8px; margin-bottom:12px; }
  .wd-operations-metrics .wd-operations-metric { min-height:124px; padding:12px; border-radius:13px; }
  .wd-operations-metric > span:first-child { font-size:var(--wd-type-label); }
  .wd-operations-metric small { margin-top:7px; font-size:.72rem; }
  .wd-operations-metric-action { margin-top:8px; font-size:.7rem; }
  .wd-dashboard-health-grid { gap:8px; padding:9px; }
  .wd-dashboard-health-card { min-height:118px; padding:12px; }
  .wd-dashboard-week-grid { padding:8px; }
  .wd-panel-heading,.wd-table-heading { padding:14px; }
  .wd-quick-actions { padding:16px; }
  .wd-quick-action-buttons { gap:7px; }
  .wd-quick-action-buttons button { min-height:46px; padding:9px 8px; font-size:.7rem; }
  .tenant-mode .wd-mobile-tenant-nav,
  .wd-mobile-tenant-nav { right:8px; bottom:max(7px,env(safe-area-inset-bottom)); left:8px; }
  .wd-mobile-nav-action { min-height:50px; font-size:.625rem; }
  .wd-record-drawer .wd-record-dialog-head,
  .wd-record-dialog .wd-record-dialog-head { min-height:0; padding:18px 16px; }
  .wd-record-dialog-head { align-items:flex-start; gap:12px; }
  .wd-customer-dialog-identity { min-width:0; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto !important; transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
}

/* Release 00393: sharper navigation, compact record workspaces and exact-control
   previews. These rules intentionally sit last so the experience layer remains
   authoritative over legacy component geometry. */
.app > aside.wd-app-rail nav .wd-nav-group > button {
  min-height:38px;
  font-size:.875rem;
}
.app > aside.wd-app-rail nav .wd-nav-label { font-size:.7rem; }

.wd-customer-register-table .wd-register-open {
  width:100%;
  min-height:50px;
  margin:0;
  padding:11px 14px;
  border:1px solid #d9e0e8;
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#f7f9fc);
  box-shadow:0 7px 18px rgba(20,29,46,.07);
}
.wd-customer-register-table .wd-register-open .wd-register-control-detail {
  display:block;
  margin-top:3px;
  font-size:.68rem;
}

/* Registers read as unified records. Static facts belong to the row; only
   actual controls receive a restrained control hover treatment. */
.wd-segmented-register tbody td,
.wd-segmented-register tbody td:first-child,
.wd-segmented-register tbody td:last-child {
  background:#fff;
  border-top:1px solid #e1e6ec;
  border-bottom:1px solid #e1e6ec;
}
.wd-segmented-register tbody td:first-child {
  border-left:1px solid #e1e6ec;
  border-radius:14px 0 0 14px;
}
.wd-segmented-register tbody td:last-child {
  border-right:1px solid #e1e6ec;
  border-radius:0 14px 14px 0;
}
.wd-segmented-register tbody tr.wd-clickable-row { cursor:pointer; }
.wd-segmented-register tbody tr:hover td,
.wd-segmented-register tbody tr:focus-visible td,
.wd-segmented-register tbody tr:focus-within td {
  background:#fbfcfe;
  border-color:#d3dbe5;
}
.wd-segmented-register .wd-register-field { cursor:inherit; }
.wd-segmented-register .wd-register-field:hover,
.wd-segmented-register .wd-register-field:focus-visible,
.wd-segmented-register .wd-register-field:hover .wd-register-control-value,
.wd-segmented-register .wd-register-field:focus-visible .wd-register-control-value {
  color:inherit;
  background:transparent;
  box-shadow:none;
  transform:none;
}
.wd-segmented-register button.wd-register-control:hover,
.wd-segmented-register button.wd-register-control:focus-visible {
  z-index:2;
  background:color-mix(in srgb,var(--wd-action) 6%,#fff);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--wd-action) 25%,transparent);
  transform:none;
}
.wd-segmented-register button.wd-register-control:hover .wd-register-control-value,
.wd-segmented-register button.wd-register-control:focus-visible .wd-register-control-value {
  color:var(--wd-action);
  transform:none;
}
.wd-segmented-register tbody td:first-child::before { top:12px; bottom:12px; }

/* Customer register: one calm record row. The field under the pointer lifts
   into a temporary control, matching the approved customer reference. */
#customers-view .wd-search-bar,
#customers-view .wd-customer-table { width:100%; margin-inline:0; }
.wd-customer-register-table th:nth-child(1) { width:25%; }
.wd-customer-register-table th:nth-child(2) { width:17%; }
.wd-customer-register-table th:nth-child(3) { width:25%; }
.wd-customer-register-table th:nth-child(4) { width:14%; }
.wd-customer-register-table th:nth-child(5) { width:19%; }
.wd-customer-register-table tbody tr,
.wd-customer-register-table tbody tr:hover,
.wd-customer-register-table tbody tr:focus-visible,
.wd-customer-register-table tbody tr:focus-within { filter:none; transform:none; }
.wd-customer-register-table tbody td,
.wd-customer-register-table tbody td:first-child,
.wd-customer-register-table tbody td:last-child,
.wd-customer-register-table tbody tr:hover td,
.wd-customer-register-table tbody tr:focus-visible td,
.wd-customer-register-table tbody tr:focus-within td {
  padding:0 !important;
  background:#fff;
  border-top:1px solid #e0e6ed;
  border-bottom:1px solid #e0e6ed;
  border-radius:0;
}
.wd-customer-register-table tbody td:first-child { border-left:1px solid #e0e6ed; border-radius:14px 0 0 14px; }
.wd-customer-register-table tbody td:last-child { border-right:1px solid #e0e6ed; border-radius:0 14px 14px 0; }
.wd-customer-register-table tbody td:first-child::before { top:17px; bottom:17px; left:0; }
.wd-customer-register-table .wd-register-control {
  min-height:80px;
  padding:13px 15px;
  background:transparent;
  border:0;
  border-radius:13px;
  box-shadow:none;
  transition:color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.wd-customer-register-table td:nth-child(1) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-customer-register-table td:nth-child(2) .wd-register-control { --wd-control-tone:#28b864; }
.wd-customer-register-table td:nth-child(3) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff8a00); }
.wd-customer-register-table td:nth-child(4) .wd-register-control { --wd-control-tone:#7c5ce7; }
.wd-customer-register-table td:nth-child(5) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-customer-register-table .wd-register-control-value { color:var(--wd-ink); font-size:.82rem; font-weight:700; }
.wd-customer-register-table .wd-register-control-detail { font-size:.7rem; }
.wd-customer-register-table .wd-register-status .wd-register-control-value {
  display:block;
  width:auto;
  padding:0;
  color:var(--wd-ink);
  background:transparent;
  border:0;
  border-radius:0;
  font-size:.82rem;
}
.wd-customer-register-table .wd-register-field:hover,
.wd-customer-register-table .wd-register-field:focus-visible,
.wd-customer-register-table .wd-register-open:hover,
.wd-customer-register-table .wd-register-open:focus-visible {
  z-index:4;
  color:var(--wd-ink);
  background:linear-gradient(145deg,#fff 52%,color-mix(in srgb,var(--wd-control-tone) 9%,#fff));
  box-shadow:0 18px 36px rgba(16,44,70,.15),0 10px 28px color-mix(in srgb,var(--wd-control-tone) 15%,transparent);
  transform:translateY(-3px) scale(1.018);
}
.wd-customer-register-table .wd-register-field:hover .wd-register-control-value,
.wd-customer-register-table .wd-register-field:focus-visible .wd-register-control-value,
.wd-customer-register-table .wd-register-open:hover .wd-register-control-value,
.wd-customer-register-table .wd-register-open:focus-visible .wd-register-control-value {
  color:color-mix(in srgb,var(--wd-control-tone) 72%,var(--wd-ink));
  transform:none;
}
.wd-customer-register-table .wd-register-open {
  width:calc(100% - 18px);
  min-height:50px;
  margin:15px 9px;
  padding:10px 12px;
  color:var(--wd-ink);
  background:transparent;
  border:0;
  border-radius:12px;
  box-shadow:none;
  text-align:center;
}
.wd-customer-register-table .wd-register-open .wd-register-control-kicker,
.wd-customer-register-table .wd-register-open .wd-register-control-detail { display:none; }
.wd-customer-register-table .wd-register-open .wd-register-control-value { color:var(--wd-ink); font-size:.8rem; }

.wd-hover-insight { width:min(286px,calc(100vw - 28px)); }
.wd-hover-insight[data-surface="register"] {
  gap:6px;
  width:min(300px,calc(100vw - 28px));
  padding:12px;
  color:#fff;
  background:linear-gradient(145deg,#102f48 0%,#183a55 72%,#2d3f49 100%);
  border-color:rgba(255,255,255,.13);
  border-radius:12px;
  box-shadow:0 20px 42px rgba(7,25,40,.28),0 7px 18px rgba(7,25,40,.17);
}
.wd-hover-insight[data-surface="register"] .wd-eyebrow { color:var(--tenant-primary,#ff8a00); }
.wd-hover-insight[data-surface="register"] .wd-hover-insight-title { color:#fff; }
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts {
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:0;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts span,
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts a {
  width:auto;
  padding:4px 6px;
  color:#dce7ef;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  font-size:.55rem;
  white-space:nowrap;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts a {
  text-decoration:none;
  cursor:pointer;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts a:hover,
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts a:focus-visible {
  color:#fff;
  background:color-mix(in srgb,var(--tenant-primary,#ff8a00) 34%,rgba(255,255,255,.12));
  border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 68%,#fff);
  outline:2px solid rgba(255,255,255,.3);
  outline-offset:1px;
}
.wd-hover-insight-call::before { content:"☎"; margin-right:4px; }
.wd-hover-insight[data-surface="register"] small { color:#c3d0da; font-size:.61rem; line-height:1.35; }
.wd-hover-insight[data-surface="register"][data-actionable="true"] small::after { color:#fff; }
.wd-hover-insight::before {
  content:"";
  position:absolute;
  width:4px;
  height:24px;
  background:var(--tenant-primary,#ff8a00);
  border-radius:999px;
  transform:none;
}
.wd-hover-insight[data-placement="right"]::before { left:-4px; top:13px; }
.wd-hover-insight[data-placement="left"]::before { right:-4px; top:13px; }
.wd-hover-insight[data-placement="below"]::before,
.wd-hover-insight[data-placement="above"]::before { width:24px; height:4px; left:14px; }
.wd-hover-insight[data-placement="below"]::before { top:-4px; }
.wd-hover-insight[data-placement="above"]::before { bottom:-4px; }

.wd-scope-note.wd-customer-scope-active {
  background:linear-gradient(105deg,#fff8ed,#fff);
  border-color:#f1d0a4;
  box-shadow:0 8px 24px rgba(131,75,14,.07);
}
.wd-scope-note.wd-customer-scope-active .wd-scope-icon {
  color:#fff !important;
  background:var(--tenant-primary,#ff8a00);
}
.wd-scope-note .wd-clear-customer-scope {
  flex:0 0 auto;
  min-height:38px;
  margin-left:auto;
  padding:8px 12px;
}

.wd-customer-jobs-panel {
  background:linear-gradient(140deg,#fff 62%,#f7f9fc);
}
.wd-customer-job-metrics {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.wd-customer-job-metric {
  display:grid;
  min-width:0;
  min-height:96px;
  align-content:start;
  gap:5px;
  padding:12px;
  color:var(--wd-ink);
  text-align:left;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:12px;
  box-shadow:none;
}
.wd-customer-job-metric:hover {
  border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 45%,var(--wd-line));
  background:#fffaf3;
  box-shadow:0 9px 22px rgba(20,29,46,.08);
  transform:translateY(-1px);
}
.wd-customer-job-metric > span {
  color:var(--wd-muted);
  font-size:.66rem;
  font-weight:750;
  text-transform:uppercase;
}
.wd-customer-job-metric > strong { font-size:1.4rem; }
.wd-customer-job-metric > small { margin-top:auto; color:var(--wd-action); font-size:.66rem; font-weight:750; }

/* Drawers are inset workspaces sized to their content. They no longer become
   empty full-height pages when the selected record is concise. */
.wd-record-drawer {
  inset:14px 14px auto auto;
  width:min(780px,calc(100vw - 260px));
  height:auto;
  max-height:calc(100dvh - 36px);
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.28);
  border-radius:20px;
  box-shadow:0 30px 90px rgba(9,25,40,.27);
}
.wd-record-drawer.wd-customer-dialog {
  width:min(680px,calc(100vw - 260px));
  border-left:4px solid var(--tenant-primary,#ff8a00);
}
.wd-record-drawer.wd-customer-dialog .wd-customer-workspace {
  grid-template-columns:1fr;
}
.wd-record-drawer.wd-customer-dialog .wd-customer-panel-wide,
.wd-record-drawer.wd-customer-dialog .wd-customer-panel-expand { grid-column:auto; }
.wd-record-drawer.wd-customer-dialog .wd-customer-job-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wd-record-drawer .wd-record-dialog-shell {
  height:auto;
  max-height:calc(100dvh - 36px);
}
.wd-record-drawer .wd-record-dialog-head { min-height:96px; padding:20px 22px; }
.wd-record-drawer .wd-customer-workspace,
.wd-record-drawer .wd-record-sections {
  flex:0 1 auto;
  max-height:calc(100dvh - 250px);
}
.wd-record-drawer .wd-record-dialog-actions { position:relative; }

.wd-context-overlay {
  align-items:flex-start;
  padding:18px;
}
.wd-context-overlay .wd-visit-workspace {
  display:flex;
  flex-direction:column;
  width:min(960px,calc(100vw - 278px));
  height:auto;
  max-height:calc(100dvh - 36px);
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.25);
  border-radius:20px;
  box-shadow:0 30px 90px rgba(9,25,40,.27);
}
.wd-context-overlay .wd-visit-workspace-head {
  position:relative;
  flex:0 0 auto;
  padding:19px 22px;
  border-radius:0;
}
.wd-context-overlay .wd-job-tabs { flex:0 0 auto; padding:8px 12px; gap:6px; }
.wd-context-overlay .wd-job-tabs button {
  min-height:38px;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:9px;
  font-size:.75rem;
}
.wd-context-overlay .wd-job-tabs button[aria-selected="true"] {
  border-color:#f1d6b4;
  background:#fff7ed;
}
.wd-context-overlay .wd-visit-workspace-grid {
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding:14px;
}
.wd-context-overlay .wd-visit-workspace [data-job-panel] { padding:0; }
.wd-context-overlay .wd-visit-panel > .wd-table-heading,
.wd-context-overlay .wd-visit-panel > .form-title { padding:16px 18px; }
.wd-context-overlay .wd-visit-panel:not(#job-panel-overview) {
  overflow:hidden;
  border:1px solid var(--wd-line);
  border-radius:15px;
  background:#fff;
  box-shadow:var(--wd-shadow-sm);
}
.wd-workspace-status-action { width:154px; min-height:48px; border-radius:11px; }

.wd-job-overview-lead {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px 18px;
  margin-bottom:12px;
  padding:18px;
  color:#fff;
  background:linear-gradient(125deg,var(--tenant-secondary,#102f48),#294354 68%,#6a4d2d);
  border-radius:15px;
  box-shadow:0 14px 34px rgba(16,47,72,.16);
}
.wd-job-overview-lead-copy h4 { margin:5px 0; color:#fff; font-size:1.1rem; }
.wd-job-overview-lead-copy p { margin:0; color:rgba(235,243,248,.78); font-size:.75rem; }
.wd-job-overview-status {
  display:grid;
  align-content:center;
  gap:4px;
  min-width:132px;
  padding:10px 12px;
  color:var(--wd-ink);
  background:#fff;
  border-radius:11px;
}
.wd-job-overview-status span,.wd-job-overview-metrics span { color:var(--wd-muted); font-size:.6rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.wd-job-overview-status strong { font-size:.82rem; text-transform:capitalize; }
.wd-job-overview-metrics {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  border-radius:11px;
}
.wd-job-overview-metrics > div { display:grid; gap:4px; padding:10px 12px; border-right:1px solid rgba(255,255,255,.12); }
.wd-job-overview-metrics > div:last-child { border-right:0; }
.wd-job-overview-metrics span { color:rgba(235,243,248,.67); }
.wd-job-overview-metrics strong { overflow-wrap:anywhere; color:#fff; font-size:.76rem; }
#job-panel-overview > .wd-job-facts {
  gap:0;
  margin:0;
  padding:4px 16px;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:14px;
}
#job-panel-overview > .wd-job-facts .wd-job-fact { padding:13px 10px; border-bottom:1px solid var(--wd-line); }
#job-panel-overview > .wd-job-block {
  margin:10px 0 0;
  padding:14px 16px;
  border:1px solid var(--wd-line);
  border-radius:13px;
  background:#fff;
}

/* Field App: a technician-first journey with contained cards and an obvious
   progression from confirmed attendance to completed field record. */
#field-app-view { width:100%; max-width:1500px; margin-inline:auto; }
.wd-field-app-hero { margin-bottom:0; }
.wd-field-daybar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 17px;
  color:var(--wd-text);
  background:linear-gradient(110deg,#fff 0%,#f8fafc 100%);
  border:1px solid var(--wd-line);
  border-radius:14px;
  box-shadow:var(--wd-shadow-sm);
}
.wd-field-daybar > div { display:grid; gap:3px; min-width:0; }
.wd-field-daybar p,.wd-field-daybar strong,.wd-field-daybar span { margin:0; }
.wd-field-daybar strong { overflow-wrap:anywhere; color:var(--wd-ink); font-size:.94rem; }
.wd-field-daybar > div > span { overflow:hidden; color:var(--wd-muted); font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-field-connectivity {
  flex:0 0 auto;
  padding:7px 10px;
  color:#087657;
  background:#eaf8f1;
  border:1px solid #ccebdc;
  border-radius:999px;
  font-size:.7rem;
  font-weight:800;
}
.wd-field-connectivity.offline { color:#8a5a00; background:#fff6d7; border-color:#f0d98b; }
.wd-field-summary { gap:10px; }
.wd-field-summary-button { min-height:118px; padding:16px; }
.wd-field-summary-button[aria-pressed="true"] { border-color:color-mix(in srgb,var(--wd-metric-tone,var(--wd-action)) 48%,var(--wd-line)); box-shadow:0 0 0 2px color-mix(in srgb,var(--wd-metric-tone,var(--wd-action)) 12%,transparent),var(--wd-shadow-sm); }
.wd-field-workspace { grid-template-columns:250px minmax(0,1fr); gap:16px; }
.wd-field-sidebar { top:76px; border-radius:16px; }
.wd-field-sidebar-heading { padding:18px 17px 14px; }
.wd-field-view-nav { padding:9px; }
.wd-field-view-nav button { min-height:54px; }
.wd-field-queue-header { min-height:82px; padding:15px 17px; }
.wd-field-visit-list {
  grid-template-columns:repeat(auto-fit,minmax(min(100%,540px),1fr));
  gap:12px;
}
.wd-field-visit-card {
  gap:12px;
  padding:18px;
  border-top-width:3px;
  border-radius:16px;
  box-shadow:0 10px 28px rgba(20,29,46,.07);
}
.wd-field-visit-card:hover { border-color:#cfd7e1; box-shadow:0 15px 38px rgba(20,29,46,.1); transform:translateY(-1px); }
.wd-field-visit-brief { display:grid; gap:4px; padding:11px 12px; color:var(--wd-text); background:color-mix(in srgb,var(--wd-field-tone) 5%,#fff); border-left:3px solid var(--wd-field-tone); border-radius:0 10px 10px 0; }
.wd-field-visit-brief strong { color:var(--wd-soft); font-size:.62rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.wd-field-visit-brief span { overflow-wrap:anywhere; font-size:.78rem; line-height:1.45; }
.wd-field-journey {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
}
.wd-field-journey li { position:relative; display:grid; justify-items:center; gap:5px; color:#8b95a4; text-align:center; }
.wd-field-journey li::before { content:""; position:absolute; z-index:0; top:11px; right:50%; left:-50%; height:2px; background:#e0e5eb; }
.wd-field-journey li:first-child::before { display:none; }
.wd-field-journey li > span { position:relative; z-index:1; display:grid; width:23px; height:23px; place-items:center; border:2px solid #dbe1e8; border-radius:50%; background:#fff; font-size:.61rem; font-weight:800; }
.wd-field-journey li > strong { font-size:.61rem; font-weight:700; }
.wd-field-journey li.complete::before,.wd-field-journey li.current::before { background:var(--wd-success); }
.wd-field-journey li.complete > span { color:#fff; border-color:var(--wd-success); background:var(--wd-success); }
.wd-field-journey li.current > span { color:var(--wd-field-tone); border-color:var(--wd-field-tone); box-shadow:0 0 0 4px color-mix(in srgb,var(--wd-field-tone) 13%,transparent); }
.wd-field-journey li.current > strong { color:var(--wd-ink); }
.wd-field-visit-facts { background:#f8fafc; }
.wd-field-actions button,.wd-field-supporting-actions button { min-height:48px; border-radius:10px; font-weight:750; }
.wd-field-actions::before { grid-column:1/-1; content:"Next field action"; color:var(--wd-muted); font-size:.6rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.wd-field-actions .primary { grid-column:1/-1; }
.wd-field-camera-action { order:-1; }

@media (max-width:1050px) {
  .wd-customer-job-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wd-context-overlay .wd-visit-workspace { width:min(900px,calc(100vw - 36px)); }
  .wd-field-workspace { grid-template-columns:1fr; }
  .wd-field-sidebar { position:relative; top:auto; }
  .wd-field-sidebar-heading { padding-bottom:12px; }
  .wd-field-view-nav { display:flex; overflow-x:auto; }
  .wd-field-view-nav button { flex:0 0 190px; }
  .wd-field-sidebar-guide { display:none; }
}

@media (max-width:900px) {
  .wd-record-drawer,.wd-record-drawer.wd-invoice-dialog {
    inset:auto 10px calc(10px + env(safe-area-inset-bottom)) 10px;
    width:auto;
    height:auto;
    max-height:calc(100dvh - 20px - env(safe-area-inset-bottom));
    border-radius:19px;
  }
  .wd-record-drawer .wd-record-dialog-shell { max-height:calc(100dvh - 20px - env(safe-area-inset-bottom)); }
  .wd-record-drawer .wd-customer-workspace,.wd-record-drawer .wd-record-sections { max-height:none; }
  .wd-context-overlay { align-items:flex-end; padding:10px; }
  .wd-context-overlay .wd-visit-workspace {
    width:100%;
    max-height:calc(100dvh - 20px);
    border-radius:19px;
  }
}

@media (max-width:680px) {
  .wd-scope-note { align-items:flex-start; flex-wrap:wrap; }
  .wd-scope-note > div { flex:1 1 calc(100% - 40px); display:grid; }
  .wd-scope-note .wd-clear-customer-scope { width:100%; margin:0; }
  .wd-customer-job-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-customer-job-metric { min-height:88px; }
  .wd-context-overlay .wd-visit-workspace-head { display:grid; gap:13px; padding:16px; }
  .wd-context-overlay .wd-visit-workspace-actions { display:grid; grid-template-columns:1fr 1fr; }
  .wd-context-overlay .wd-visit-workspace-actions button { width:100%; min-width:0; }
  .wd-job-overview-lead { grid-template-columns:1fr; padding:15px; }
  .wd-job-overview-status { grid-row:auto; }
  .wd-job-overview-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-job-overview-metrics > div:nth-child(2) { border-right:0; }
  .wd-job-overview-metrics > div:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.12); }
  .wd-field-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-field-summary-button { min-height:108px; padding:13px; }
  .wd-field-view-nav button { flex-basis:164px; }
  .wd-field-queue-header { align-items:flex-start; flex-direction:column; }
  .wd-field-queue-controls { width:100%; justify-content:stretch; }
  .wd-field-queue-controls label { flex:1 1 auto; }
  .wd-field-queue-controls select { width:100%; min-width:0; }
  .wd-field-visit-card { padding:15px; }
  .wd-field-daybar { align-items:flex-start; }
  .wd-field-daybar > div > span { white-space:normal; }
  .wd-field-visit-identity h3 { font-size:1rem; }
  .wd-field-journey li > strong { font-size:.56rem; }
  .wd-field-actions,.wd-field-supporting-actions { grid-template-columns:1fr; }
  .wd-field-actions .primary { grid-column:auto; }
}

@media (max-width:480px) {
  .wd-field-daybar { align-items:flex-start; flex-direction:column; }
  .wd-field-connectivity { align-self:flex-start; }
  .wd-field-journey li > strong { font-size:.52rem; }
}

/* Platform consistency: the approved customer register is the interaction
   standard for every record register. Records stay visually whole; the exact
   field under the pointer becomes the temporary, elevated point of action. */
.wd-segmented-register tbody tr,
.wd-segmented-register tbody tr:hover,
.wd-segmented-register tbody tr:focus-visible,
.wd-segmented-register tbody tr:focus-within {
  filter:none;
  transform:none;
}
.wd-segmented-register tbody td,
.wd-segmented-register tbody td:first-child,
.wd-segmented-register tbody td:last-child,
.wd-segmented-register tbody tr:hover td,
.wd-segmented-register tbody tr:focus-visible td,
.wd-segmented-register tbody tr:focus-within td {
  padding:0 !important;
  background:#fff;
  border-top:1px solid #e0e6ed;
  border-bottom:1px solid #e0e6ed;
  border-radius:0;
}
.wd-segmented-register tbody td:first-child {
  border-left:1px solid #e0e6ed;
  border-radius:14px 0 0 14px;
}
.wd-segmented-register tbody td:last-child {
  border-right:1px solid #e0e6ed;
  border-radius:0 14px 14px 0;
}
.wd-segmented-register .wd-register-control {
  min-height:80px;
  padding:13px 15px;
  color:var(--wd-ink);
  background:transparent;
  border:0;
  border-radius:13px;
  box-shadow:none;
  transition:color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.wd-segmented-register td:nth-child(6n+1) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-segmented-register td:nth-child(6n+2) .wd-register-control { --wd-control-tone:#28b864; }
.wd-segmented-register td:nth-child(6n+3) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff8a00); }
.wd-segmented-register td:nth-child(6n+4) .wd-register-control { --wd-control-tone:#7c5ce7; }
.wd-segmented-register td:nth-child(6n+5) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-segmented-register td:nth-child(6n+6) .wd-register-control { --wd-control-tone:#28b864; }
.wd-segmented-register td:nth-child(7) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff8a00); }
.wd-segmented-register .wd-register-control-value {
  color:var(--wd-ink);
  font-size:.82rem;
  font-weight:700;
}
.wd-segmented-register .wd-register-control-detail { color:var(--wd-muted); font-size:.7rem; }
.wd-segmented-register .wd-register-field { cursor:inherit; }
.wd-segmented-register .wd-register-field:hover,
.wd-segmented-register .wd-register-field:focus-visible,
.wd-segmented-register button.wd-register-control:hover,
.wd-segmented-register button.wd-register-control:focus-visible {
  z-index:4;
  color:var(--wd-ink);
  background:linear-gradient(145deg,#fff 52%,color-mix(in srgb,var(--wd-control-tone) 9%,#fff));
  border:0;
  box-shadow:0 18px 36px rgba(16,44,70,.15),0 10px 28px color-mix(in srgb,var(--wd-control-tone) 15%,transparent);
  transform:translateY(-3px) scale(1.018);
}
.wd-segmented-register .wd-register-field:hover .wd-register-control-value,
.wd-segmented-register .wd-register-field:focus-visible .wd-register-control-value,
.wd-segmented-register button.wd-register-control:hover .wd-register-control-value,
.wd-segmented-register button.wd-register-control:focus-visible .wd-register-control-value {
  color:color-mix(in srgb,var(--wd-control-tone) 72%,var(--wd-ink));
  transform:none;
}

/* Shared page furniture follows the same measured geometry and surface depth. */
.wd-table-shell,
.customer-table,
.wd-operations-panel,
.wd-field-sidebar,
.wd-field-queue-header,
.wd-units-panel,
.wd-visit-panel {
  border-color:#dde3ea;
  border-radius:16px;
  background:#fff;
  box-shadow:0 1px 2px rgba(20,29,46,.035),0 10px 28px rgba(20,29,46,.055);
}
.wd-table-heading,
.wd-register-heading,
.wd-panel-heading {
  min-height:64px;
  padding:15px 18px;
}
.wd-table-heading h3,
.wd-table-heading h4,
.wd-register-heading h3,
.wd-panel-heading h3 {
  margin:2px 0 0;
  font-size:1.025rem;
  font-weight:720;
  letter-spacing:-.02em;
}
.wd-search-bar,
.wd-toolbar,
.wd-filter-toolbar {
  border-color:#d8e0e8;
  border-radius:14px;
  background:linear-gradient(180deg,#fff,#fafbfd);
  box-shadow:0 7px 22px rgba(16,44,70,.06),inset 0 1px 0 rgba(255,255,255,.8);
}
.wd-record-drawer,
.wd-context-overlay .wd-visit-workspace {
  border-radius:18px;
  box-shadow:0 30px 90px rgba(9,25,40,.27);
}

@media (max-width:680px) {
  .wd-segmented-register .wd-register-control { min-height:70px; padding:11px 12px; }
  .wd-table-heading,.wd-register-heading,.wd-panel-heading { min-height:56px; padding:13px 14px; }
}

@media (max-width:900px) {
  html,body { width:100%; overflow-x:hidden; }
  .wd-table-wrap { contain:inline-size layout paint; overflow-x:auto; }
}

/* Service Operations keeps the same page rhythm as Customers, while every
   column label is a discrete, readable part of the register. */
#service-operations-summary,
#preview-service > .wd-field-summary {
  margin-bottom:18px;
}
.wd-service-register-table thead th,
.preview-service-register-head {
  padding-top:8px;
  padding-bottom:8px;
}
.wd-service-register-table thead th > span,
.preview-service-register-head > span {
  display:flex;
  min-height:38px;
  align-items:center;
  padding:8px 10px;
  color:#6f7b8d;
  background:linear-gradient(180deg,#f9fbfd,#f4f7fa);
  border:1px solid #e0e6ed;
  border-radius:10px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.wd-service-register-table thead th { padding-inline:5px; }

/* The customer register is intentionally open on the page. Its individual
   records remain white, bounded surfaces; the redundant white outer card is
   removed so the hierarchy is lighter and the page has less dead space. */
#customers-view .wd-customer-table,
#preview-customers .wd-customer-table {
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
#customers-view .wd-customer-table .wd-register-heading,
#preview-customers .wd-customer-table .wd-register-heading {
  min-height:0;
  padding:14px 4px 10px;
  background:transparent;
  border-bottom:0;
}
#customers-view .wd-customer-table .wd-table-wrap,
#preview-customers .wd-customer-table .wd-table-wrap {
  padding-inline:0;
}
#customers-view .wd-customer-register-table,
#preview-customers .wd-customer-register-table {
  border-spacing:0 12px;
}

@media (max-width:680px) {
  #service-operations-summary,
  #preview-service > .wd-field-summary { margin-bottom:14px; }
  #customers-view .wd-customer-table .wd-register-heading,
  #preview-customers .wd-customer-table .wd-register-heading { padding-inline:2px; }
}

/* Quick previews can launch governed WholeDesk actions. Calling stays inside
   the communication workspace instead of handing the number to the device. */
.wd-hover-insight[data-surface="register"] {
  gap:9px;
  width:min(326px,calc(100vw - 28px));
  padding:15px;
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.18),transparent 38%),
    linear-gradient(145deg,#0d2a42 0%,#173d59 70%,#203b4e 100%);
  border-color:rgba(255,255,255,.18);
  border-radius:16px;
  box-shadow:0 24px 54px rgba(7,25,40,.32),0 8px 20px rgba(7,25,40,.2);
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-title {
  font-size:.96rem;
  letter-spacing:-.015em;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts span,
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts a,
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts button {
  box-sizing:border-box;
  width:auto;
  min-height:27px;
  padding:5px 8px;
  color:#dce7ef;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  font:700 .61rem/1.25 inherit;
  white-space:nowrap;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts .wd-hover-insight-call {
  flex:1 0 100%;
  justify-content:center;
  color:#fff;
  background:linear-gradient(135deg,var(--tenant-primary,#ff8a00),#f57800);
  border-color:rgba(255,255,255,.24);
  box-shadow:0 8px 18px rgba(255,126,0,.24);
  cursor:pointer;
}
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts .wd-hover-insight-call:hover,
.wd-hover-insight[data-surface="register"] .wd-hover-insight-facts .wd-hover-insight-call:focus-visible {
  filter:brightness(1.06);
  outline:2px solid rgba(255,255,255,.45);
  outline-offset:2px;
  transform:translateY(-1px);
}

/* Service register furniture is separated into floating surfaces. The heading
   and every record keep their own boundary; there is no enclosing white card. */
#service-operations-view .wd-floating-register-shell,
#preview-service .wd-floating-register-shell {
  overflow:visible;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
}
#service-operations-view .wd-floating-register-shell > .wd-table-heading,
#preview-service .wd-floating-register-shell > .wd-table-heading {
  margin-bottom:14px;
  background:linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid #dce3ea;
  border-radius:15px;
  box-shadow:0 1px 2px rgba(20,29,46,.03),0 9px 24px rgba(20,29,46,.055);
}
#service-operations-view .wd-floating-register-shell > .wd-table-wrap,
#preview-service .wd-floating-register-shell > .preview-service-register {
  padding-inline:0;
  background:transparent;
}
#service-operations-view .wd-floating-register-shell .wd-service-register-table,
#preview-service .wd-floating-register-shell .preview-service-register {
  border-spacing:0 12px;
}

/* The job workspace now has a clear command header, an editable working record
   and individually elevated facts instead of one broad, flat white surface. */
.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  color:#fff;
  background:
    radial-gradient(circle at 94% 0,rgba(255,138,0,.22),transparent 34%),
    linear-gradient(125deg,var(--tenant-secondary,#102f48),#294354 70%,#654727);
  border-bottom:0;
}
.wd-context-overlay .wd-visit-workspace-head h3,
.preview-job-overlay .wd-visit-workspace-head h3 { color:#fff; }
.wd-context-overlay .wd-visit-workspace-head p:not(.wd-eyebrow),
.preview-job-overlay .wd-visit-workspace-head p:not(.wd-eyebrow) { color:rgba(235,243,248,.8); }
.wd-context-overlay .wd-visit-workspace-head .wd-eyebrow,
.preview-job-overlay .wd-visit-workspace-head .wd-eyebrow { color:var(--tenant-primary,#ff9a1c); }
.wd-visit-workspace-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.wd-visit-workspace-actions > button { min-height:46px; padding-inline:12px; }
.wd-context-overlay .wd-visit-workspace-head .secondary,
.preview-job-overlay .wd-visit-workspace-head .secondary {
  color:#fff;
  background:rgba(255,255,255,.09);
  border-color:rgba(255,255,255,.27);
}
.wd-workspace-call {
  color:#fff !important;
  background:linear-gradient(135deg,var(--tenant-primary,#ff8a00),#f57800) !important;
  border-color:transparent !important;
  box-shadow:0 9px 22px rgba(255,126,0,.25);
}
.wd-workspace-status-action {
  width:142px;
  color:var(--wd-ink);
  background:#fff;
  border-color:rgba(255,255,255,.8);
  box-shadow:0 7px 20px rgba(8,25,39,.16);
}
.wd-job-overview-lead { gap:15px; padding:20px; border-radius:17px; }
.wd-job-overview-status { border:1px solid rgba(255,255,255,.55); box-shadow:0 8px 20px rgba(7,25,40,.15); }
.wd-job-overview-metrics { gap:8px; overflow:visible; background:transparent; border:0; }
.wd-job-overview-metrics > div {
  min-height:58px;
  padding:10px 12px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:10px;
}
#job-panel-overview > .wd-job-facts { gap:10px; padding:0; background:transparent; border:0; }
#job-panel-overview > .wd-job-facts .wd-job-fact {
  padding:14px;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:12px;
  box-shadow:0 7px 20px rgba(16,44,70,.055);
}
.preview-job-body > .wd-job-facts { gap:10px; padding:0; background:transparent; border:0; }
.preview-job-body > .wd-job-facts .wd-job-fact {
  padding:14px;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:12px;
  box-shadow:0 7px 20px rgba(16,44,70,.055);
}
.wd-job-edit-form {
  margin:14px;
  padding:18px;
  overflow:auto;
  background:linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid var(--wd-line);
  border-radius:15px;
  box-shadow:0 12px 34px rgba(16,44,70,.09);
}
.wd-job-edit-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:16px; }
.wd-job-edit-head h4 { margin:3px 0 4px; font-size:1.08rem; }
.wd-job-edit-head p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); font-size:.76rem; }
.wd-job-edit-form .form-actions { display:flex; gap:8px; margin-top:14px; }
.wd-job-edit-form .wd-form-note { margin-bottom:0; }
.wd-job-edit-form .wd-form-note.error { color:var(--wd-danger); }

.wd-platform-call-dialog {
  width:min(560px,calc(100vw - 28px));
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:20px;
  box-shadow:0 30px 90px rgba(9,25,40,.3);
}
.wd-platform-call-dialog::backdrop { background:rgba(11,28,43,.48); backdrop-filter:blur(7px) saturate(.8); }
.wd-platform-call-shell { display:grid; background:#f5f7fa; }
.wd-platform-call-shell > header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:22px;
  color:#fff;
  background:
    radial-gradient(circle at 95% 0,rgba(255,138,0,.24),transparent 38%),
    linear-gradient(130deg,var(--tenant-secondary,#102f48),#284052 70%,#604526);
}
.wd-platform-call-shell > header h3 { margin:4px 0; color:#fff; font-size:1.25rem; }
.wd-platform-call-shell > header p:not(.wd-eyebrow) { margin:0; color:rgba(235,243,248,.78); font-size:.74rem; }
.wd-platform-call-shell > header .wd-eyebrow { color:var(--tenant-primary,#ff8a00); }
.wd-platform-call-shell > header .secondary { color:#fff; background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.28); }
.wd-platform-call-shell > main { display:grid; gap:14px; padding:20px 22px; }
.wd-platform-call-contact {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:14px;
  box-shadow:0 8px 22px rgba(16,44,70,.06);
}
.wd-platform-call-contact > div { display:grid; gap:3px; }
.wd-platform-call-contact strong { color:var(--wd-ink); }
.wd-platform-call-contact span:not(.wd-customer-avatar):not(.status-pill) { color:var(--wd-muted); font-size:.76rem; }
.wd-platform-call-shell label { display:grid; gap:6px; color:var(--wd-soft); font-size:.72rem; font-weight:750; }
.wd-platform-call-shell input,.wd-platform-call-shell textarea { box-sizing:border-box; width:100%; padding:10px 11px; border:1px solid var(--wd-line); border-radius:10px; background:#fff; font:inherit; }
.wd-platform-call-shell textarea { min-height:92px; resize:vertical; }
.wd-platform-call-shell main > p { margin:0; color:var(--wd-muted); font-size:.72rem; line-height:1.5; }
.wd-platform-call-shell > footer { display:flex; gap:9px; padding:0 22px 22px; }
.wd-platform-call-shell > footer button { flex:1; min-height:46px; }

@media (max-width:680px) {
  .wd-platform-call-shell > header { padding:18px; }
  .wd-platform-call-shell > main { padding:16px 18px; }
  .wd-platform-call-shell > footer { padding:0 18px 18px; }
}

@media (min-width:681px) {
  .wd-context-overlay .wd-visit-workspace-head,
  .preview-job-overlay .wd-visit-workspace-head {
    display:grid;
    grid-template-columns:minmax(250px,1fr) auto;
  }
  .wd-visit-workspace-actions { flex-wrap:nowrap; }
}

@media (max-width:680px) {
  .preview-job-overlay .wd-visit-workspace-head { display:grid; gap:13px; padding:16px; }
  .preview-job-overlay .wd-visit-workspace-actions { display:grid; grid-template-columns:1fr 1fr; }
  .preview-job-overlay .wd-visit-workspace-actions button { width:100%; min-width:0; }
}

@media (max-width:900px) {
  .preview-job-overlay { align-items:end; padding:10px; }
  .preview-job-overlay .wd-visit-workspace {
    width:100%;
    max-height:calc(100dvh - 20px);
    border-radius:19px;
  }
}

@media (max-width:680px) {
  .wd-job-edit-form { margin:10px; padding:14px; }
  .wd-job-edit-head { flex-direction:column; }
  .wd-job-edit-head button { width:100%; }
  .wd-job-overview-metrics > div:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.14); }
}

/* Shared cloud tiles: the quiet colour edge and soft top-right bloom used by
   the Operations overview now identify compact summaries across the product. */
.wd-field-summary > button,
.wd-customer-job-metric,
#job-panel-overview > .wd-job-facts .wd-job-fact,
.preview-job-body > .wd-job-facts .wd-job-fact {
  --wd-tile-tone:var(--wd-metric-tone,var(--tenant-primary,#ff8a00));
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 10%,transparent) 0 38px,transparent 39px),
    linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
  border:1px solid #dbe3e9;
  border-bottom:3px solid var(--wd-tile-tone);
  border-radius:15px;
  box-shadow:0 8px 22px rgba(16,44,70,.06);
}
.wd-field-summary > button::after {
  display:block !important;
  content:"" !important;
  position:absolute;
  top:-34px;
  right:-30px;
  width:82px;
  height:82px;
  border-radius:50%;
  background:color-mix(in srgb,var(--wd-tile-tone) 8%,transparent);
  pointer-events:none;
}
.wd-field-summary > button > *,
.wd-customer-job-metric > *,
#job-panel-overview > .wd-job-facts .wd-job-fact > *,
.preview-job-body > .wd-job-facts .wd-job-fact > * { position:relative; z-index:1; }
.wd-field-summary > button:nth-child(6n+1),
.wd-customer-job-metric:nth-child(6n+1) { --wd-tile-tone:#3b82f6; }
.wd-field-summary > button:nth-child(6n+2),
.wd-customer-job-metric:nth-child(6n+2) { --wd-tile-tone:var(--tenant-primary,#ff8a00); }
.wd-field-summary > button:nth-child(6n+3),
.wd-customer-job-metric:nth-child(6n+3) { --wd-tile-tone:#3b82f6; }
.wd-field-summary > button:nth-child(6n+4),
.wd-customer-job-metric:nth-child(6n+4) { --wd-tile-tone:#28b864; }
.wd-field-summary > button:nth-child(6n+5),
.wd-customer-job-metric:nth-child(6n+5) { --wd-tile-tone:#7c5ce7; }
.wd-field-summary > button:nth-child(6n+6),
.wd-customer-job-metric:nth-child(6n+6) { --wd-tile-tone:#dc3545; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+1),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+1) { --wd-tile-tone:#3b82f6; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+2),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+2) { --wd-tile-tone:#28b864; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+3),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+3) { --wd-tile-tone:var(--tenant-primary,#ff8a00); }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+4),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+4) { --wd-tile-tone:#7c5ce7; }

.wd-dashboard-health-card {
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-health-tone,#3b82f6) 9%,transparent) 0 36px,transparent 37px),
    linear-gradient(180deg,#fff,var(--wd-surface-subtle));
}
.wd-dashboard-health-card > * { position:relative; z-index:1; }

/* Release 00401: complete records, one communications workspace and a neutral
   card surface standard. Colour is an accent, never the whole card. */
.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  background:
    radial-gradient(circle at 94% 0,rgba(255,138,0,.16),transparent 34%),
    linear-gradient(125deg,#253337 0%,#39403d 58%,#5b442b 100%);
}
.wd-job-overview-lead {
  color:var(--wd-ink);
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.095) 0 76px,transparent 77px),
    linear-gradient(180deg,#fff,#fbfaf8);
  border:1px solid #d8e0e5;
  border-left:3px solid var(--tenant-primary,#ff8a00);
  box-shadow:0 10px 28px rgba(34,44,48,.075);
}
.wd-job-overview-lead-copy h4 { color:var(--wd-ink); }
.wd-job-overview-lead-copy p { color:var(--wd-muted); }
.wd-job-overview-lead .wd-eyebrow { color:#94600b; }
.wd-job-overview-status {
  border:1px solid #d8e0e5;
  background:#fff;
  box-shadow:0 6px 18px rgba(34,44,48,.07);
}
.wd-job-overview-metrics > div {
  color:var(--wd-ink);
  background:rgba(248,247,244,.9);
  border:1px solid #dde3e7 !important;
}
.wd-job-overview-metrics span { color:var(--wd-muted); }
.wd-job-overview-metrics strong { color:var(--wd-ink); }

.wd-customer-record-sections { display:grid; gap:12px; padding:16px; }
.wd-customer-record-sections fieldset {
  margin:0;
  padding:14px;
  border:1px solid #dce4ea;
  border-radius:13px;
  background:linear-gradient(180deg,#fff,#fbfcfd);
}
.wd-customer-record-sections legend {
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 6px;
  color:var(--wd-ink);
  font-size:.72rem;
  font-weight:800;
}
.wd-customer-record-sections legend span {
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  color:#fff;
  background:var(--tenant-primary,#ff8a00);
  border-radius:8px;
  font-size:.62rem;
}
.wd-customer-record-sections .form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.wd-customer-record-sections select,
.wd-customer-subview select { box-sizing:border-box; width:100%; min-height:43px; padding:10px 11px; border:1px solid #cbd7e0; border-radius:10px; background:#fff; font:inherit; }

.wd-prior-visit-files {
  display:grid;
  grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(220px,1fr));
  align-items:stretch;
  gap:9px;
  padding:13px;
  border:1px solid #d9e2e8;
  border-radius:13px;
  background:#f8fafb;
}
.wd-prior-visit-files h5 { margin:3px 0; color:var(--wd-ink); font-size:.82rem; }
.wd-prior-visit-files > div > p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); font-size:.66rem; line-height:1.4; }
.wd-prior-visit-files article { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:9px; padding:10px; border:1px solid #dce4ea; border-radius:11px; background:#fff; }
.wd-prior-visit-files article > div { display:grid; gap:3px; min-width:0; }
.wd-prior-visit-files article strong { overflow:hidden; color:var(--wd-ink); font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-prior-visit-files article small { color:var(--wd-muted); font-size:.59rem; line-height:1.35; }
.wd-prior-visit-files .wd-attachment-document-icon { width:32px; height:38px; font-size:.54rem; }
.wd-prior-visit-files .wd-attachment-document-icon.pdf { background:#9c5b31; }
.wd-prior-visit-files [role="status"] { grid-column:1/-1; margin:0; color:#087657; font-size:.66rem; }

.wd-communications-dialog { width:min(820px,calc(100vw - 28px)); }
.wd-communications-dialog .wd-platform-call-shell { max-height:calc(100dvh - 28px); overflow:auto; }
.wd-communication-channel-tabs { display:grid; grid-template-columns:repeat(4,1fr); gap:7px; }
.wd-communication-channel-tabs button {
  min-height:42px;
  color:#4d5d68;
  background:#fff;
  border:1px solid #d7e0e6;
  border-radius:10px;
  font-weight:800;
}
.wd-communication-channel-tabs button[aria-pressed="true"] {
  color:#fff;
  background:linear-gradient(135deg,#3b403e,#6a4b2c);
  border-color:#6a4b2c;
  box-shadow:0 7px 18px rgba(72,55,34,.15);
}
#preview-communication-form { display:grid; gap:12px; padding:14px; border:1px solid #dce4ea; border-radius:14px; background:#fff; }
.wd-communication-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.wd-communication-form-grid .span-2 { grid-column:1/-1; }
.wd-communication-submit-row { display:flex; gap:8px; }
.wd-communication-submit-row button { min-height:44px; }
.wd-communication-mini-history { display:grid; gap:8px; padding:13px; border:1px solid #dce4ea; border-radius:14px; background:#fff; }
.wd-communication-mini-history h4 { margin:3px 0; color:var(--wd-ink); }
.wd-communication-mini-history article { display:grid; grid-template-columns:56px 1fr; align-items:center; gap:10px; padding:9px 10px; border:1px solid #e1e7eb; border-radius:10px; background:#fafbfc; }
.wd-communication-mini-history article > span { color:#94600b; font-size:.58rem; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.wd-communication-mini-history article > div { display:grid; gap:2px; }
.wd-communication-mini-history article strong { color:var(--wd-ink); font-size:.7rem; }
.wd-communication-mini-history article small { color:var(--wd-muted); font-size:.61rem; }

@media (max-width:760px) {
  .wd-customer-record-sections .form-grid { grid-template-columns:1fr; }
  .wd-customer-record-sections .span-2 { grid-column:auto; }
  .wd-prior-visit-files { grid-template-columns:1fr; }
  .wd-prior-visit-files [role="status"] { grid-column:auto; }
  .wd-communication-form-grid { grid-template-columns:1fr; }
  .wd-communication-form-grid .span-2 { grid-column:auto; }
}
@media (max-width:520px) {
  .wd-communication-channel-tabs { grid-template-columns:repeat(2,1fr); }
  .wd-communications-dialog { width:calc(100vw - 20px); }
  .wd-platform-call-contact { grid-template-columns:auto minmax(0,1fr); }
  .wd-platform-call-contact .status-pill { grid-column:1/-1; justify-self:start; }
}

/* Register headings use the same cloud language and align to the exact column
   geometry below, rather than floating between two columns. */
.wd-service-register-table thead th { padding:0 5px 10px; vertical-align:top; }
.wd-service-register-table thead th > span,
#preview-service .preview-service-register-head > span {
  --wd-heading-tone:#3b82f6;
  box-sizing:border-box;
  width:100%;
  min-height:48px;
  justify-content:flex-start;
  padding:10px 12px;
  overflow:hidden;
  color:color-mix(in srgb,var(--wd-heading-tone) 62%,#26364a);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-heading-tone) 12%,transparent) 0 30px,transparent 31px),
    linear-gradient(180deg,#fff,#f8fafc);
  border:1px solid #dce4ec;
  border-bottom:3px solid var(--wd-heading-tone);
  border-radius:12px;
  box-shadow:0 6px 16px rgba(16,44,70,.05);
}
.wd-service-register-table thead th:nth-child(6n+1) > span,
#preview-service .preview-service-register-head > span:nth-child(4n+1) { --wd-heading-tone:#3b82f6; }
.wd-service-register-table thead th:nth-child(6n+2) > span,
#preview-service .preview-service-register-head > span:nth-child(4n+2) { --wd-heading-tone:#28b864; }
.wd-service-register-table thead th:nth-child(6n+3) > span,
#preview-service .preview-service-register-head > span:nth-child(4n+3) { --wd-heading-tone:var(--tenant-primary,#ff8a00); }
.wd-service-register-table thead th:nth-child(6n+4) > span,
#preview-service .preview-service-register-head > span:nth-child(4n+4) { --wd-heading-tone:#7c5ce7; }
.wd-service-register-table thead th:nth-child(6n+5) > span { --wd-heading-tone:#3b82f6; }
.wd-service-register-table thead th:nth-child(6n+6) > span { --wd-heading-tone:#28b864; }
#preview-service .preview-service-register-head {
  grid-template-columns:1.4fr 1.05fr .6fr .7fr;
  gap:0;
  padding:0 0 10px;
}
#preview-service .preview-service-register-head > span { margin-inline:5px; }

.wd-job-overview-metrics > div {
  --wd-dark-tile-tone:#3b82f6;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-dark-tile-tone) 22%,transparent) 0 28px,transparent 29px),
    rgba(255,255,255,.09);
  border-bottom:2px solid color-mix(in srgb,var(--wd-dark-tile-tone) 72%,#fff) !important;
}
.wd-job-overview-metrics > div:nth-child(4n+2) { --wd-dark-tile-tone:#28b864; }
.wd-job-overview-metrics > div:nth-child(4n+3) { --wd-dark-tile-tone:var(--tenant-primary,#ff8a00); }
.wd-job-overview-metrics > div:nth-child(4n+4) { --wd-dark-tile-tone:#7c5ce7; }

/* The cloud treatment is a platform primitive, not a page-specific effect.
   These are the reusable compact surfaces used by People, Integrations,
   Service, Field, Calendar, Reports and the WholeDesk Guide. */
.wd-unit-card,
.wd-access-option,
.wd-availability-card,
.wd-scope-option,
.wd-report-card,
.wd-visit-card,
.wd-evidence-item,
.wd-communication-item,
.wd-dashboard-attention,
.wd-calendar-attention-item,
.wd-conversation-card,
.wd-capability-intent-grid article,
.wd-field-work-summary,
.wd-visit-work-record {
  --wd-tile-tone:var(--tenant-primary,#ff8a00);
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 11%,transparent) 0 32px,transparent 33px),
    linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
  border-color:#dbe3e9;
  border-bottom:3px solid var(--wd-tile-tone);
  box-shadow:0 8px 22px rgba(16,44,70,.055);
}
.wd-unit-card > *,
.wd-access-option > *,
.wd-availability-card > *,
.wd-scope-option > *,
.wd-report-card > *,
.wd-visit-card > *,
.wd-evidence-item > *,
.wd-communication-item > *,
.wd-dashboard-attention > *,
.wd-calendar-attention-item > *,
.wd-conversation-card > *,
.wd-capability-intent-grid article > *,
.wd-field-work-summary > *,
.wd-visit-work-record > * { position:relative; z-index:1; }
.wd-unit-card:nth-child(4n+1),
.wd-access-option:nth-child(4n+1),
.wd-scope-option:nth-child(4n+1),
.wd-report-card:nth-child(4n+1),
.wd-visit-card:nth-child(4n+1),
.wd-evidence-item:nth-child(4n+1),
.wd-communication-item:nth-child(4n+1),
.wd-dashboard-attention:nth-child(4n+1),
.wd-calendar-attention-item:nth-child(4n+1),
.wd-conversation-card:nth-child(4n+1),
.wd-capability-intent-grid article:nth-child(4n+1) { --wd-tile-tone:#3b82f6; }
.wd-unit-card:nth-child(4n+2),
.wd-access-option:nth-child(4n+2),
.wd-scope-option:nth-child(4n+2),
.wd-report-card:nth-child(4n+2),
.wd-visit-card:nth-child(4n+2),
.wd-evidence-item:nth-child(4n+2),
.wd-communication-item:nth-child(4n+2),
.wd-dashboard-attention:nth-child(4n+2),
.wd-calendar-attention-item:nth-child(4n+2),
.wd-conversation-card:nth-child(4n+2),
.wd-capability-intent-grid article:nth-child(4n+2) { --wd-tile-tone:#28b864; }
.wd-unit-card:nth-child(4n+3),
.wd-access-option:nth-child(4n+3),
.wd-scope-option:nth-child(4n+3),
.wd-report-card:nth-child(4n+3),
.wd-visit-card:nth-child(4n+3),
.wd-evidence-item:nth-child(4n+3),
.wd-communication-item:nth-child(4n+3),
.wd-dashboard-attention:nth-child(4n+3),
.wd-calendar-attention-item:nth-child(4n+3),
.wd-conversation-card:nth-child(4n+3),
.wd-capability-intent-grid article:nth-child(4n+3) { --wd-tile-tone:var(--tenant-primary,#ff8a00); }
.wd-unit-card:nth-child(4n+4),
.wd-access-option:nth-child(4n+4),
.wd-scope-option:nth-child(4n+4),
.wd-report-card:nth-child(4n+4),
.wd-visit-card:nth-child(4n+4),
.wd-evidence-item:nth-child(4n+4),
.wd-communication-item:nth-child(4n+4),
.wd-dashboard-attention:nth-child(4n+4),
.wd-calendar-attention-item:nth-child(4n+4),
.wd-conversation-card:nth-child(4n+4),
.wd-capability-intent-grid article:nth-child(4n+4) { --wd-tile-tone:#7c5ce7; }
.wd-availability-card { --wd-tile-tone:#28b864; border-left-color:#28b864; }
.wd-field-work-summary { --wd-tile-tone:#28b864; }
.wd-visit-work-record { --wd-tile-tone:#7c5ce7; }
.wd-conversation-card.active {
  --wd-tile-tone:var(--tenant-primary,#ff8a00);
  border-color:#ffad53;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 14%,transparent) 0 32px,transparent 33px),
    linear-gradient(180deg,#fffaf3,#fff7ec);
}
.wd-calendar-attention-list { gap:8px; padding:12px; }
.wd-calendar-attention-item {
  border:1px solid #dbe3e9;
  border-bottom:3px solid var(--wd-tile-tone);
  border-radius:11px;
}
.wd-calendar-attention-item:first-child { border-top:1px solid #dbe3e9; }

/* Larger cards keep their established edge colour and gain only the quiet
   corner bloom, preserving hierarchy between a page panel and a compact tile. */
.wd-structure-card,
.wd-provider-card,
.wd-health-card,
.wd-tenant-card,
.wd-field-visit-card,
.wd-capability-card,
.wd-record-section,
.wd-import-card,
.wd-integration-intro,
.wd-leave-actions,
.wd-customer-communication-intro {
  --wd-cloud-tone:var(--wd-provider-accent,var(--wd-field-tone,var(--tenant-accent,var(--tenant-primary,#ff8a00))));
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-cloud-tone) 10%,transparent) 0 46px,transparent 47px),
    linear-gradient(180deg,#fff 0%,#fcfdfe 100%);
}
.wd-structure-card > *,
.wd-provider-card > *,
.wd-health-card > *,
.wd-tenant-card > *,
.wd-field-visit-card > *,
.wd-capability-card > *,
.wd-record-section > *,
.wd-import-card > *,
.wd-integration-intro > *,
.wd-leave-actions > *,
.wd-customer-communication-intro > * { position:relative; z-index:1; }
.wd-capability-card:nth-child(4n+1),.wd-record-section:nth-child(4n+1) { --wd-cloud-tone:#3b82f6; }
.wd-capability-card:nth-child(4n+2),.wd-record-section:nth-child(4n+2) { --wd-cloud-tone:#28b864; }
.wd-capability-card:nth-child(4n+3),.wd-record-section:nth-child(4n+3) { --wd-cloud-tone:var(--tenant-primary,#ff8a00); }
.wd-capability-card:nth-child(4n+4),.wd-record-section:nth-child(4n+4) { --wd-cloud-tone:#7c5ce7; }

/* Previously connected fact strips now read as individual, coloured tiles. */
.wd-dashboard-week-grid {
  gap:10px;
  padding:16px;
}
.wd-dashboard-week-grid > div,
.wd-field-visit-facts > div {
  --wd-tile-tone:#3b82f6;
  position:relative;
  overflow:hidden;
  border:1px solid #dbe3e9 !important;
  border-bottom:3px solid var(--wd-tile-tone) !important;
  border-radius:12px;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 10%,transparent) 0 28px,transparent 29px),
    linear-gradient(180deg,#fff,#fbfcfd);
  box-shadow:0 6px 17px rgba(16,44,70,.045);
}
.wd-dashboard-week-grid > div:nth-child(5n+2),.wd-field-visit-facts > div:nth-child(4n+2) { --wd-tile-tone:#28b864; }
.wd-dashboard-week-grid > div:nth-child(5n+3),.wd-field-visit-facts > div:nth-child(4n+3) { --wd-tile-tone:var(--tenant-primary,#ff8a00); }
.wd-dashboard-week-grid > div:nth-child(5n+4),.wd-field-visit-facts > div:nth-child(4n+4) { --wd-tile-tone:#7c5ce7; }
.wd-dashboard-week-grid > div:nth-child(5n+5) { --wd-tile-tone:#dc3545; }
.wd-field-visit-facts {
  gap:8px;
  overflow:visible;
  border:0;
  background:transparent;
}
.wd-field-visit-facts > div { min-height:58px; }

/* Calendar items already use semantic colours. Their cloud follows the same
   status rather than introducing a competing palette. */
.wd-calendar-booking {
  --wd-tile-tone:var(--tenant-primary,var(--wd-green-600));
  position:relative;
  overflow:hidden;
  border-bottom:2px solid var(--wd-tile-tone);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 12%,transparent) 0 23px,transparent 24px),
    color-mix(in srgb,var(--wd-tile-tone) 7%,white);
}
.wd-calendar-booking.project { --wd-tile-tone:#3b82f6; }
.wd-calendar-booking.breakdown,.wd-calendar-booking.has-conflict { --wd-tile-tone:#dc3545; }

@media (hover:hover) {
  .wd-unit-card,
  .wd-access-option,
  .wd-scope-option,
  .wd-report-card,
  .wd-visit-card,
  .wd-dashboard-attention,
  .wd-calendar-attention-item,
  .wd-conversation-card,
  .wd-capability-intent-grid article,
  .wd-capability-card { transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease; }
  .wd-access-option:hover,
  .wd-scope-option:hover,
  .wd-dashboard-attention:hover,
  .wd-capability-card:hover { transform:translateY(-1px); box-shadow:0 12px 26px rgba(16,44,70,.09); }
  .wd-calendar-attention-item:hover,
  .wd-conversation-card:hover {
    background:
      radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 14%,transparent) 0 32px,transparent 33px),
      linear-gradient(180deg,#fff,#f8fbfd);
  }
  .wd-conversation-card.active:hover {
    background:
      radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 14%,transparent) 0 32px,transparent 33px),
      linear-gradient(180deg,#fffaf3,#fff7ec);
  }
}

@media (max-width:700px) {
  .wd-dashboard-week-grid { gap:8px; }
  .wd-dashboard-week-grid > div,
  .wd-dashboard-week-grid > div:last-child { grid-column:auto; border:1px solid #dbe3e9 !important; border-bottom:3px solid var(--wd-tile-tone) !important; }
}

@media (max-width:520px) {
  .wd-field-visit-facts { gap:7px; }
  .wd-field-visit-facts > div,
  .wd-field-visit-facts > div:nth-child(2n),
  .wd-field-visit-facts > div:nth-last-child(-n+2),
  .wd-field-visit-facts > div:last-child { border:1px solid #dbe3e9 !important; border-bottom:3px solid var(--wd-tile-tone) !important; }
}

/* Release 00395: focused job commands and field actions use the same calm
   hierarchy as the approved Service Operations register. */
.wd-context-overlay .wd-visit-workspace,
.preview-job-overlay .wd-visit-workspace {
  overflow:hidden;
  border:1px solid #cfd9e1;
  border-top:0;
  border-radius:20px;
  background:#f4f7fa;
  box-shadow:0 30px 80px rgba(9,25,40,.26);
}
.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  min-height:112px;
  padding:18px 20px;
  background:
    radial-gradient(circle at 94% 2%,rgba(255,138,0,.18),transparent 34%),
    linear-gradient(122deg,#17364d 0%,#2c414f 64%,#654927 100%);
  box-shadow:inset 0 3px 0 var(--tenant-primary,#ff8a00);
}
.wd-context-overlay .wd-visit-workspace-head h3,
.preview-job-overlay .wd-visit-workspace-head h3 {
  max-width:650px;
  font-size:1.06rem;
  line-height:1.35;
}
.wd-visit-workspace-actions { align-items:center; gap:7px; }
.wd-visit-workspace-actions > button,
.wd-context-overlay .wd-visit-workspace-head .secondary,
.preview-job-overlay .wd-visit-workspace-head .secondary {
  box-sizing:border-box;
  width:auto;
  min-width:84px;
  min-height:42px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:10px;
  color:#fff;
  background:rgba(255,255,255,.09);
  box-shadow:none;
  font-size:.72rem;
  font-weight:750;
}
.wd-workspace-call {
  min-width:112px !important;
  min-height:42px !important;
  box-shadow:0 7px 18px rgba(255,126,0,.18) !important;
}
.wd-workspace-status-action {
  display:grid;
  align-content:center;
  gap:2px;
  width:136px;
  min-height:42px;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.48);
  border-radius:10px;
  color:#fff;
  background:rgba(255,255,255,.13);
  box-shadow:none;
  text-align:left;
}
.wd-workspace-status-action .wd-register-control-kicker,
.wd-workspace-status-action > span { color:rgba(238,244,248,.74); font-size:.58rem; font-weight:750; letter-spacing:.07em; text-transform:uppercase; }
.wd-workspace-status-action .wd-register-control-value,
.wd-workspace-status-action > strong { color:#fff; font-size:.76rem; }

.wd-job-overview-lead {
  background:
    radial-gradient(circle at 94% 0,rgba(255,138,0,.13),transparent 31%),
    linear-gradient(122deg,#17384f,#2d4452 70%,#624827);
  box-shadow:0 12px 28px rgba(16,47,72,.13);
}
.wd-job-overview-metrics > div {
  --wd-dark-tile-tone:#9fb1bf !important;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.14) !important;
  border-bottom:1px solid rgba(255,255,255,.22) !important;
  box-shadow:none;
}
#job-panel-overview > .wd-job-facts .wd-job-fact,
.preview-job-body > .wd-job-facts .wd-job-fact {
  --wd-tile-tone:#7f91a0 !important;
  background:
    radial-gradient(circle at 100% 0,rgba(41,83,112,.07) 0 35px,transparent 36px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid #d8e1e8;
  border-bottom:1px solid #d8e1e8;
  box-shadow:0 5px 14px rgba(16,44,70,.045);
}

/* Job editing is a real responsive form, with readable groups and consistent
   inputs instead of browser-default controls falling into a single line. */
.wd-job-edit-form {
  margin:16px;
  padding:0;
  overflow:auto;
  border:1px solid #d6e0e7;
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 28px rgba(16,44,70,.075);
}
.wd-job-edit-head {
  min-height:88px;
  margin:0;
  padding:17px 19px;
  border-bottom:1px solid #dce4ea;
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.1) 0 44px,transparent 45px),
    linear-gradient(180deg,#fff,#fbfcfd);
}
.wd-job-edit-head h4 { margin:4px 0; color:var(--wd-ink); font-size:1.05rem; }
.wd-job-edit-form > .form-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  padding:18px 19px;
}
.wd-job-edit-form > .form-grid > label,
.wd-job-edit-form > label {
  display:grid;
  align-content:start;
  gap:7px;
  min-width:0;
  color:#5f7081;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.035em;
}
.wd-job-edit-form > .form-grid > label.span-2 { grid-column:1/-1; }
.wd-job-edit-form input,
.wd-job-edit-form select,
.wd-job-edit-form textarea {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:44px;
  border:1px solid #cbd7e0;
  border-radius:10px;
  padding:10px 11px;
  color:var(--wd-ink);
  background:#fff;
  font:500 .82rem var(--wd-font-sans);
  letter-spacing:0;
}
.wd-job-edit-form textarea { min-height:108px; resize:vertical; line-height:1.5; }
.wd-job-edit-form input:focus,
.wd-job-edit-form select:focus,
.wd-job-edit-form textarea:focus { outline:3px solid color-mix(in srgb,var(--tenant-primary,#ff8a00) 19%,transparent); border-color:var(--tenant-primary,#ff8a00); }
.wd-job-edit-form .form-actions {
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  padding:15px 19px 18px;
  border-top:1px solid #e1e7ec;
  background:#fbfcfd;
}
.wd-job-edit-form .form-actions > button { min-height:42px; padding:9px 15px; }
.wd-job-edit-form > .wd-form-note { min-height:0; margin:0; padding:0 19px 16px; }
.wd-job-edit-form > label { margin:18px 19px 0; }

.wd-job-status-options {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0;
  padding:18px 19px;
  border:0;
}
.wd-job-status-options legend { grid-column:1/-1; margin:0 0 2px; padding:0; color:#5f7081; font-size:.68rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.wd-job-status-option {
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr;
  align-items:center;
  gap:10px;
  min-height:58px;
  padding:11px 12px;
  border:1px solid #d8e1e8;
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  cursor:pointer;
}
.wd-job-status-option:has(input:checked) { border-color:var(--tenant-primary,#ff8a00); background:#fff8ef; box-shadow:0 0 0 2px rgba(255,138,0,.11); }
.wd-job-status-option input { width:18px; min-height:18px; margin:0; padding:0; accent-color:var(--tenant-primary,#ff8a00); }
.wd-job-status-option span { display:grid; gap:2px; color:var(--wd-ink); font-size:.78rem; font-weight:750; }
.wd-job-status-option small { color:var(--wd-muted); font-size:.65rem; font-weight:500; line-height:1.35; }
.wd-register-inline-editor { min-width:230px; padding:12px; border-radius:13px; background:#fff; }
.wd-register-inline-editor select { min-height:42px; border-radius:9px; }

/* Field actions stay obvious without becoming four full-width colour bars. */
.wd-field-actions { display:flex; align-items:flex-end; justify-content:flex-start; flex-wrap:wrap; gap:8px; }
.wd-field-actions::before { flex:1 0 100%; grid-column:auto; }
.wd-field-actions .primary {
  grid-column:auto;
  width:auto;
  min-width:220px;
  min-height:44px;
  padding:9px 18px;
}
.wd-field-supporting-actions { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.wd-field-actions button,.wd-field-supporting-actions button { min-height:42px; border-radius:10px; box-shadow:none; }
.wd-field-camera-action {
  order:0;
  color:#245fae !important;
  border-color:#c6d9f5 !important;
  background:#f2f7ff !important;
}
.wd-field-camera-action:hover { color:#174d91 !important; border-color:#8fb4e8 !important; background:#e9f2ff !important; }
.wd-field-record-action { background:#f1faf5 !important; }
.wd-field-evidence-action { background:#f7f9ff !important; }
.wd-field-open-action { background:#faf8ff !important; }
.wd-field-sidebar-guide {
  position:relative;
  grid-template-columns:28px 1fr;
  padding:13px;
  border:1px dashed #bfd3e2;
  color:#35566f;
  background:#f5f9fc;
  box-shadow:none;
}
.wd-field-sidebar-guide::before { content:"i"; display:grid; grid-row:1/3; place-items:center; width:28px; height:28px; border-radius:50%; color:#fff; background:#5c7f98; font-weight:850; }
.wd-field-sidebar-guide strong,.wd-field-sidebar-guide span { grid-column:2; }
.wd-field-view-nav button { border:1px solid transparent; background:transparent; }
.wd-field-view-nav button:hover { border-color:#d7e1e8; background:#f8fafc; }

.wd-field-action-dialog {
  width:min(680px,calc(100vw - 28px));
  max-height:calc(100dvh - 28px);
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:20px;
  background:#f4f7fa;
  box-shadow:0 30px 90px rgba(9,25,40,.3);
}
.wd-field-action-dialog::backdrop { background:rgba(11,28,43,.48); backdrop-filter:blur(7px); }
.wd-field-action-shell { display:grid; max-height:calc(100dvh - 28px); overflow:auto; }
.wd-field-action-shell > header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; min-height:0; height:auto; padding:20px; color:#fff; background:linear-gradient(122deg,#17364d,#2d4452 68%,#644827); }
.wd-field-action-shell > header h3 { margin:4px 0; color:#fff; }
.wd-field-action-shell > header p:not(.wd-eyebrow) { margin:0; color:rgba(235,243,248,.78); font-size:.72rem; }
.wd-field-action-shell > header .secondary { color:#fff; background:rgba(255,255,255,.09); border-color:rgba(255,255,255,.28); }
.wd-field-action-shell > main { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; padding:19px 20px; }
.wd-field-action-shell label { display:grid; gap:6px; color:#5f7081; font-size:.68rem; font-weight:800; }
.wd-field-action-shell label.span-2 { grid-column:1/-1; }
.wd-field-action-shell input,.wd-field-action-shell textarea { box-sizing:border-box; width:100%; min-height:44px; border:1px solid #cbd7e0; border-radius:10px; padding:10px 11px; background:#fff; font:inherit; }
.wd-field-action-shell textarea { min-height:100px; resize:vertical; }
.wd-field-action-shell > footer { display:flex; justify-content:flex-end; gap:8px; padding:15px 20px 19px; border-top:1px solid #dce4ea; background:#fff; }
.wd-field-action-status { grid-column:1/-1; min-height:18px; margin:0; color:#087657; font-size:.72rem; }

@media (max-width:900px) {
  .wd-field-supporting-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:680px) {
  .wd-context-overlay .wd-visit-workspace-head,
  .preview-job-overlay .wd-visit-workspace-head { min-height:0; }
  .wd-context-overlay .wd-visit-workspace-actions,
  .preview-job-overlay .wd-visit-workspace-actions { grid-template-columns:1fr 1fr; }
  .wd-visit-workspace-actions > button { width:100%; min-width:0; }
  .wd-job-edit-form > .form-grid,.wd-job-status-options { grid-template-columns:1fr; }
  .wd-job-edit-form > .form-grid > label.span-2 { grid-column:auto; }
  .wd-field-actions .primary { width:100%; min-width:0; }
  .wd-field-action-shell > main { grid-template-columns:1fr; }
  .wd-field-action-shell label.span-2 { grid-column:auto; }
}

@media (max-width:520px) {
  .wd-field-supporting-actions { grid-template-columns:1fr; }
}

/* Release 00400: customer and job workspaces carry complete operational
   context, while register headings share one exact tile geometry. */
.wd-customer-register-table thead th {
  padding:0 5px 10px;
  vertical-align:top;
}
.wd-customer-register-table thead th > span {
  --wd-heading-tone:#3b82f6;
  box-sizing:border-box;
  display:flex;
  width:100%;
  min-height:48px;
  align-items:center;
  justify-content:flex-start;
  padding:10px 12px;
  overflow:hidden;
  color:color-mix(in srgb,var(--wd-heading-tone) 62%,#26364a);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-heading-tone) 12%,transparent) 0 30px,transparent 31px),
    linear-gradient(180deg,#fff,#f8fafc);
  border:1px solid #dce4ec;
  border-bottom:3px solid var(--wd-heading-tone);
  border-radius:12px;
  box-shadow:0 6px 16px rgba(16,44,70,.05);
}
.wd-customer-register-table thead th:nth-child(5n+2) > span { --wd-heading-tone:#28b864; }
.wd-customer-register-table thead th:nth-child(5n+3) > span { --wd-heading-tone:var(--tenant-primary,#ff8a00); }
.wd-customer-register-table thead th:nth-child(5n+4) > span { --wd-heading-tone:#7c5ce7; }
.wd-customer-register-table thead th:nth-child(5n+5) > span { --wd-heading-tone:#3b82f6; }

.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) 270px;
  align-items:stretch;
  gap:22px;
  min-height:176px;
  padding:22px;
}
.wd-job-head-copy { display:grid; align-content:start; gap:7px; min-width:0; }
.wd-job-head-label { display:flex; align-items:center; gap:12px; }
.wd-job-head-label .wd-eyebrow { margin:0; }
.wd-job-head-live {
  padding:4px 8px;
  border:1px solid rgba(129,226,191,.24);
  border-radius:999px;
  color:#a8efd4;
  background:rgba(20,143,104,.16);
  font-size:.58rem;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.wd-context-overlay .wd-visit-workspace-head h3,
.preview-job-overlay .wd-visit-workspace-head h3 {
  max-width:720px;
  margin:0;
  font-size:1.28rem;
  line-height:1.25;
  letter-spacing:-.025em;
}
.wd-job-head-copy > p:not(.wd-eyebrow) { max-width:690px; margin:0; line-height:1.45; }
.wd-job-head-meta {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
  margin-top:5px;
}
.wd-job-head-meta > span {
  display:grid;
  gap:2px;
  min-width:0;
  padding:8px 9px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px;
  background:rgba(255,255,255,.075);
}
.wd-job-head-meta small { color:rgba(232,241,247,.66); font-size:.55rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.wd-job-head-meta strong { overflow:hidden; color:#fff; font-size:.69rem; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.wd-context-overlay .wd-job-head-meta { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wd-visit-workspace-actions {
  display:grid;
  grid-template-columns:1fr 1fr;
  align-content:center;
  gap:8px;
}
.wd-visit-workspace-actions > button,
.wd-context-overlay .wd-visit-workspace-head .secondary,
.preview-job-overlay .wd-visit-workspace-head .secondary {
  width:100%;
  min-width:0;
  min-height:46px;
}
.wd-workspace-call { min-width:0 !important; min-height:46px !important; }
.wd-workspace-status-action { width:100%; min-height:46px; }

.wd-job-edit-attachment {
  padding:13px;
  border:1px dashed #bfcfdb;
  border-radius:12px;
  background:#f7fafc;
}
.wd-job-edit-attachment > span { color:#52677a; font-size:.72rem; font-weight:650; letter-spacing:0; }
.wd-job-save-confirmation {
  margin:0;
  padding:10px 12px;
  color:#087657;
  border:1px solid #bfe5d4;
  border-radius:11px;
  background:#edf9f3;
  font-size:.75rem;
  font-weight:700;
}
.wd-job-detail-strip {
  display:grid;
  grid-template-columns:1fr 1.45fr 1fr;
  gap:9px;
}
.wd-job-detail-strip > div {
  display:grid;
  align-content:start;
  gap:5px;
  min-width:0;
  padding:12px;
  border:1px solid #d9e2e9;
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#f8fafc);
}
.wd-job-detail-strip span { color:#6a7a8b; font-size:.59rem; font-weight:800; letter-spacing:.065em; text-transform:uppercase; }
.wd-job-detail-strip strong { color:var(--wd-ink); font-size:.72rem; font-weight:650; line-height:1.45; }

.preview-customer-dialog .wd-record-dialog-shell {
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto auto;
  height:min(860px,calc(100dvh - 36px));
}
.preview-customer-dialog .wd-customer-workspace { min-height:0; }
.wd-customer-workspace-view { display:grid; gap:12px; }
.preview-customer-dialog .wd-customer-job-panel { order:1; }
.preview-customer-dialog .wd-customer-current-work { order:2; }
.preview-customer-dialog .preview-customer-panel { order:3; }
.preview-customer-dialog.wd-record-drawer .wd-customer-job-metrics { grid-template-columns:repeat(5,minmax(0,1fr)); }
.preview-customer-dialog .wd-customer-job-metric { min-height:82px; padding:10px; }
.wd-customer-current-work {
  display:grid;
  gap:12px;
  padding:15px;
  border:1px solid #d8e2e9;
  border-left:3px solid var(--tenant-primary,#ff8a00);
  border-radius:15px;
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.09) 0 54px,transparent 55px),
    linear-gradient(180deg,#fff,#fbfcfd);
  box-shadow:0 8px 22px rgba(16,44,70,.055);
}
.wd-customer-current-work-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.wd-customer-current-work-head h3 { margin:3px 0; font-size:.98rem; }
.wd-customer-current-work-head div > span { color:var(--wd-muted); font-size:.7rem; }
.wd-customer-current-work-head-actions { display:flex; align-items:center; gap:8px; }
.wd-customer-current-work-head-actions .status-pill { white-space:nowrap; }
.wd-customer-current-work-head-actions .primary { min-height:38px; padding:8px 11px; white-space:nowrap; }
.wd-customer-current-work-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.wd-customer-current-work-grid > div {
  display:grid;
  gap:4px;
  padding:10px;
  border:1px solid #e0e7ed;
  border-radius:10px;
  background:rgba(248,250,252,.84);
}
.wd-customer-current-work-grid > .span-2 { grid-column:1/-1; }
.wd-customer-current-work-grid span { color:#6b7a8b; font-size:.57rem; font-weight:800; letter-spacing:.065em; text-transform:uppercase; }
.wd-customer-current-work-grid strong { color:var(--wd-ink); font-size:.72rem; line-height:1.4; }
.wd-customer-current-work-actions { display:flex; justify-content:flex-end; gap:8px; }
.wd-customer-current-work-actions button { min-height:40px; }

.wd-customer-subview {
  overflow:hidden;
  border:1px solid #d7e1e8;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,44,70,.055);
}
.wd-customer-subview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:16px; border-bottom:1px solid #dce4ea; background:linear-gradient(180deg,#fff,#fafcfd); }
.wd-customer-subview-head h3 { margin:3px 0; }
.wd-customer-subview-head p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); font-size:.72rem; }
.wd-customer-subview > .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:16px; }
.wd-customer-subview label { display:grid; gap:6px; color:#5f7081; font-size:.67rem; font-weight:800; }
.wd-customer-subview label.span-2 { grid-column:1/-1; }
.wd-customer-subview input,.wd-customer-subview textarea { box-sizing:border-box; width:100%; min-height:43px; padding:10px 11px; border:1px solid #cbd7e0; border-radius:10px; font:inherit; }
.wd-customer-subview textarea { min-height:92px; resize:vertical; }
.wd-customer-subview > .form-actions { display:flex; justify-content:flex-end; gap:8px; margin:0; padding:14px 16px; border-top:1px solid #dce4ea; background:#fbfcfd; }
.wd-customer-subview > [role="status"] { min-height:0; margin:0; padding:0 16px 14px; color:#087657; font-size:.72rem; }
.wd-customer-history-list { display:grid; gap:9px; padding:16px; }
.wd-customer-history-list article { display:grid; grid-template-columns:128px 1fr auto; align-items:center; gap:12px; padding:12px; border:1px solid #dfe6ec; border-radius:11px; background:#fbfcfd; }
.wd-customer-history-list time { color:#6f7e8e; font-size:.65rem; font-weight:700; }
.wd-customer-history-list strong { color:var(--wd-ink); font-size:.77rem; }
.wd-customer-history-list p { margin:3px 0 0; color:var(--wd-muted); font-size:.68rem; }
.wd-customer-attachment-detail { display:flex; align-items:center; gap:12px; margin:0 16px 14px; padding:13px; border:1px solid #cbdcf0; border-radius:12px; background:#f4f8fd; }
.wd-attachment-document-icon { display:grid; place-items:center; width:42px; height:48px; border-radius:8px; color:#fff; background:#356da8; font-size:.62rem; font-weight:850; }
.wd-customer-attachment-detail > div:last-child { display:grid; gap:2px; }
.wd-customer-attachment-detail span { color:#5f7081; font-size:.57rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.wd-customer-attachment-detail strong { color:var(--wd-ink); font-size:.78rem; }
.wd-customer-attachment-detail p { margin:0; color:var(--wd-muted); font-size:.66rem; }
#preview-customer-history-status { margin:0; padding:0 16px 14px; color:#087657; font-size:.71rem; }

#preview-service .preview-service-register-head,
#preview-service .preview-service-row { grid-template-columns:1.4fr 1.05fr .6fr .7fr; }
#preview-service .preview-service-row { gap:0; padding:11px 5px; }
#preview-service .preview-service-row > .wd-register-control { box-sizing:border-box; width:calc(100% - 10px); min-width:0; margin-inline:5px; padding-inline:11px; }

@media (max-width:760px) {
  .preview-customer-dialog.wd-record-drawer {
    inset:auto auto calc(10px + env(safe-area-inset-bottom)) 10px;
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
    margin:0;
  }
  .wd-context-overlay .wd-visit-workspace-head,
  .preview-job-overlay .wd-visit-workspace-head { grid-template-columns:1fr; min-height:0; gap:15px; }
  .wd-job-head-meta,.wd-context-overlay .wd-job-head-meta { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-job-detail-strip { grid-template-columns:1fr; }
  .wd-customer-current-work-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .preview-customer-dialog.wd-record-drawer .wd-customer-job-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-customer-subview > .form-grid { grid-template-columns:1fr; }
  .wd-customer-subview label.span-2 { grid-column:auto; }
  .wd-customer-history-list article { grid-template-columns:1fr; }
  #preview-service .preview-service-register-head { display:none; }
  #preview-service .preview-service-register { min-width:0; width:100%; }
  #preview-service .preview-service-row { grid-template-columns:1fr; min-width:0; width:100%; }
  #preview-service .preview-service-row > .wd-register-control { width:calc(100% - 10px); }
  #preview-service .wd-studio-hero { min-width:0; overflow:hidden; }
  #preview-service .wd-studio-hero > div:first-child,
  #preview-service .wd-studio-hero .wd-hero-actions { min-width:0; }
  #preview-service .wd-studio-hero .wd-hero-actions button { width:100%; min-width:0; }
  #preview-service .wd-field-summary-button { min-width:0; overflow:hidden; white-space:normal; }
}

/* Release 00402: final card-surface precedence. The layout stays intact while
   large record cards remain warm-neutral instead of becoming blocks of blue. */
.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  background:
    radial-gradient(circle at 94% 0,rgba(255,138,0,.14),transparent 34%),
    linear-gradient(125deg,#303534 0%,#413f38 58%,#5b442b 100%);
}
.wd-job-overview-lead {
  color:var(--wd-ink);
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.095) 0 76px,transparent 77px),
    linear-gradient(180deg,#fff,#fbfaf8);
  border:1px solid #d8e0e5;
  border-left:3px solid var(--tenant-primary,#ff8a00);
  box-shadow:0 10px 28px rgba(34,44,48,.075);
}
.wd-job-overview-lead .wd-job-overview-lead-copy h4 { color:var(--wd-ink); }
.wd-job-overview-lead .wd-job-overview-lead-copy p { color:var(--wd-muted); }
.wd-job-overview-lead .wd-eyebrow { color:#94600b; }
.wd-job-overview-lead .wd-job-overview-status {
  color:var(--wd-ink);
  border:1px solid #d8e0e5;
  background:#fff;
  box-shadow:0 6px 18px rgba(34,44,48,.07);
}
.wd-job-overview-lead .wd-job-overview-metrics > div {
  color:var(--wd-ink);
  background:#f8f7f4;
  border:1px solid #dde3e7 !important;
}
.wd-job-overview-lead .wd-job-overview-metrics span { color:var(--wd-muted); }
.wd-job-overview-lead .wd-job-overview-metrics strong { color:var(--wd-ink); }

@media (max-width:520px) {
  .wd-customer-current-work-grid { grid-template-columns:1fr; }
  .wd-customer-current-work-grid > .span-2 { grid-column:auto; }
  .wd-customer-current-work-head { display:grid; }
  .wd-customer-current-work-head-actions { justify-content:space-between; }
  .wd-customer-current-work-actions { display:grid; grid-template-columns:1fr; }
}

/* Release 00403: customer editors and job workspaces use the same typography,
   alignment, colour accents and responsive geometry as the Field App. */
.preview-customer-dialog,
.preview-job-overlay,
.wd-context-overlay { font-family:var(--wd-font-sans); }
.preview-customer-dialog .wd-customer-workspace {
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
}
.preview-customer-dialog .wd-customer-subview { overflow:visible; }
.wd-customer-subview label { font-family:var(--wd-font-sans); font-weight:750; }
.wd-customer-subview input,
.wd-customer-subview select,
.wd-customer-subview textarea {
  font-family:var(--wd-font-sans);
  font-size:.78rem;
  font-weight:600;
  letter-spacing:0;
}
.wd-customer-subview input:focus,
.wd-customer-subview select:focus,
.wd-customer-subview textarea:focus { font-weight:600; }

.wd-context-overlay .wd-visit-workspace-head,
.preview-job-overlay .wd-visit-workspace-head {
  align-items:center;
  background:
    radial-gradient(circle at 94% 0,rgba(255,138,0,.2),transparent 35%),
    linear-gradient(125deg,var(--tenant-secondary,#102f48),#294354 70%,#654727);
}
.wd-visit-workspace-actions {
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,46px);
  align-content:center;
  gap:8px;
}
.wd-visit-workspace-actions > button,
.wd-context-overlay .wd-visit-workspace-actions > button,
.preview-job-overlay .wd-visit-workspace-actions > button {
  box-sizing:border-box;
  width:100%;
  height:46px;
  min-height:46px;
  margin:0;
  padding:7px 10px;
  align-self:stretch;
  border-width:1px;
  border-radius:10px;
  font-family:var(--wd-font-sans);
  font-size:.72rem;
  line-height:1.2;
}
.wd-workspace-status-action {
  display:grid;
  align-content:center;
  justify-items:start;
  gap:2px;
}
.wd-workspace-status-action span,
.wd-workspace-status-action strong { line-height:1.05; }

.wd-job-overview-lead {
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.1) 0 76px,transparent 77px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid #d9e2e8;
  border-left:3px solid var(--tenant-primary,#ff8a00);
}
.wd-job-overview-lead .wd-job-overview-metrics > div {
  --wd-tile-tone:#3b82f6;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 11%,transparent) 0 32px,transparent 33px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid #dce4ea !important;
  border-bottom:3px solid var(--wd-tile-tone) !important;
}
.wd-job-overview-lead .wd-job-overview-metrics > div:nth-child(2) { --wd-tile-tone:#28b864; }
.wd-job-overview-lead .wd-job-overview-metrics > div:nth-child(3) { --wd-tile-tone:var(--tenant-primary,#ff8a00); }
.wd-job-overview-lead .wd-job-overview-metrics > div:nth-child(4) { --wd-tile-tone:#7c5ce7; }
.wd-job-overview-lead .wd-job-overview-status { border-bottom:3px solid #28b864; }
#job-panel-overview > .wd-job-facts .wd-job-fact,
.preview-job-body > .wd-job-facts .wd-job-fact {
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-tile-tone) 12%,transparent) 0 38px,transparent 39px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-bottom:3px solid var(--wd-tile-tone);
}
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+1),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+1) { --wd-tile-tone:#3b82f6 !important; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+2),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+2) { --wd-tile-tone:#28b864 !important; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+3),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+3) { --wd-tile-tone:var(--tenant-primary,#ff8a00) !important; }
#job-panel-overview > .wd-job-facts .wd-job-fact:nth-child(4n+4),
.preview-job-body > .wd-job-facts .wd-job-fact:nth-child(4n+4) { --wd-tile-tone:#7c5ce7 !important; }
.wd-job-detail-strip > div {
  --wd-detail-tone:#3b82f6;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-detail-tone) 9%,transparent) 0 34px,transparent 35px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-bottom:3px solid var(--wd-detail-tone);
}
.wd-job-detail-strip > div:nth-child(2) { --wd-detail-tone:var(--tenant-primary,#ff8a00); }
.wd-job-detail-strip > div:nth-child(3) { --wd-detail-tone:#7c5ce7; }

.wd-prior-visit-files {
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.wd-job-edit-form > .form-grid > .wd-prior-visit-files { grid-column:1/-1; }
.wd-prior-visit-files > div:first-child,
.wd-prior-visit-files > [role="status"] { grid-column:1/-1; }
.wd-prior-visit-files article {
  grid-template-columns:auto minmax(0,1fr) 82px;
  min-width:0;
}
.wd-prior-visit-files article strong {
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:anywhere;
}
.wd-prior-visit-files article button { box-sizing:border-box; width:82px; min-height:38px; margin:0; }

@media (max-width:620px) {
  .wd-prior-visit-files { grid-template-columns:1fr; }
  .wd-prior-visit-files > div:first-child,
  .wd-prior-visit-files > [role="status"] { grid-column:auto; }
}

/* Release 00405: roomier records, lighter form typography and colour-balanced
   communications complete the shared Field App visual language. */
.preview-customer-dialog.wd-record-drawer {
  width:min(820px,calc(100vw - 36px));
  max-width:min(820px,calc(100vw - 36px));
}
.wd-customer-record-sections .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wd-customer-record-sections label,
.wd-customer-subview label { font-weight:650; }
.wd-customer-subview input,
.wd-customer-subview select,
.wd-customer-subview textarea {
  font-size:.8rem;
  font-weight:450;
}
.wd-customer-subview input:focus,
.wd-customer-subview select:focus,
.wd-customer-subview textarea:focus { font-weight:450; }

@media (min-width:761px) {
  .wd-visit-workspace-actions { align-content:end; }
}

.wd-communications-dialog { width:min(860px,calc(100vw - 28px)); }
.wd-communications-dialog .wd-platform-call-shell > header {
  box-sizing:border-box;
  min-height:108px;
  align-items:center;
  padding:20px 22px;
}
.wd-communications-dialog .wd-platform-call-shell > header h3 { margin:6px 0 3px; line-height:1.25; }
.wd-communications-dialog .wd-platform-call-shell > header p:not(.wd-eyebrow) { max-width:620px; line-height:1.4; }
.wd-communications-dialog .wd-platform-call-shell > header .secondary { align-self:center; min-height:42px; }
.wd-communications-dialog .wd-platform-call-contact {
  background:
    radial-gradient(circle at 100% 0,rgba(40,184,100,.09) 0 42px,transparent 43px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-left:3px solid var(--tenant-primary,#ff8a00);
  border-bottom:3px solid #28b864;
}
.wd-communications-dialog .wd-platform-call-contact strong { font-weight:650; }
.wd-communication-channel-tabs button {
  --wd-channel-tone:#3b82f6;
  overflow:hidden;
  color:color-mix(in srgb,var(--wd-channel-tone) 68%,#26364a);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-channel-tone) 10%,transparent) 0 28px,transparent 29px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid #d7e0e6;
  border-bottom:3px solid var(--wd-channel-tone);
  font-weight:650;
}
.wd-communication-channel-tabs button:nth-child(2) { --wd-channel-tone:#28b864; }
.wd-communication-channel-tabs button:nth-child(3) { --wd-channel-tone:var(--tenant-primary,#ff8a00); }
.wd-communication-channel-tabs button:nth-child(4) { --wd-channel-tone:#7c5ce7; }
.wd-communication-channel-tabs button[aria-pressed="true"] {
  color:color-mix(in srgb,var(--wd-channel-tone) 82%,#162333);
  background:color-mix(in srgb,var(--wd-channel-tone) 12%,#fff);
  border-color:color-mix(in srgb,var(--wd-channel-tone) 42%,#d7e0e6);
  border-bottom-color:var(--wd-channel-tone);
  box-shadow:0 7px 18px color-mix(in srgb,var(--wd-channel-tone) 13%,transparent);
}
.wd-communications-dialog #preview-communication-form {
  background:
    radial-gradient(circle at 100% 0,rgba(59,130,246,.075) 0 58px,transparent 59px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-left:3px solid var(--tenant-primary,#ff8a00);
}
.wd-communications-dialog label { font-weight:650; }
.wd-communications-dialog input,
.wd-communications-dialog textarea {
  font-family:var(--wd-font-sans);
  font-size:.8rem;
  font-weight:450;
  letter-spacing:0;
}
.wd-communications-dialog #preview-call-status { font-weight:400; }
.wd-communications-dialog .wd-communication-mini-history {
  background:
    radial-gradient(circle at 100% 0,rgba(124,92,231,.08) 0 54px,transparent 55px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-bottom:3px solid #7c5ce7;
}
.wd-communications-dialog .wd-communication-mini-history h4,
.wd-communications-dialog .wd-communication-mini-history article strong { font-weight:600; }

@media (max-width:760px) {
  .preview-customer-dialog.wd-record-drawer {
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
  }
  .wd-customer-record-sections .form-grid { grid-template-columns:1fr; }
  .wd-customer-record-sections .span-2 { grid-column:auto; }
}
@media (max-width:520px) {
  .wd-communications-dialog .wd-platform-call-shell > header { min-height:0; align-items:flex-start; padding:18px; }
}

/* Release 00406: align job commands to the record baseline and retain
   customer-specific context throughout the communications workspace. */
@media (min-width:761px) {
  .wd-context-overlay .wd-visit-workspace-actions,
  .preview-job-overlay .wd-visit-workspace-actions { align-self:end; }
}

/* Release 00407: carry the approved record width, lighter typography and
   coloured channel controls into the live data-backed workspaces. */
.wd-record-drawer.wd-customer-dialog {
  width:min(820px,calc(100vw - 260px));
  max-width:min(820px,calc(100vw - 260px));
}
.onboarding-form label,
.wd-customer-communication-dialog label { font-weight:650; }
.onboarding-form input,
.onboarding-form select,
.onboarding-form textarea,
.wd-customer-communication-dialog input,
.wd-customer-communication-dialog select,
.wd-customer-communication-dialog textarea {
  font-family:var(--wd-font-sans);
  font-size:.8rem;
  font-weight:450;
  letter-spacing:0;
}
.wd-record-drawer.wd-customer-communication-dialog {
  width:min(860px,calc(100vw - 260px));
  max-width:min(860px,calc(100vw - 260px));
}
.wd-customer-communication-dialog .wd-record-dialog-head {
  box-sizing:border-box;
  min-height:108px;
  align-items:center;
  padding:20px 22px;
}
.wd-customer-communication-intro {
  background:
    radial-gradient(circle at 100% 0,rgba(40,184,100,.09) 0 48px,transparent 49px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-left:3px solid var(--tenant-primary,#ff8a00);
  border-bottom:3px solid #28b864;
}
.wd-customer-communication-dialog .wd-compact-form {
  background:
    radial-gradient(circle at 100% 0,rgba(59,130,246,.075) 0 58px,transparent 59px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-left:3px solid var(--tenant-primary,#ff8a00);
}
.wd-customer-communication-history {
  background:
    radial-gradient(circle at 100% 0,rgba(124,92,231,.08) 0 54px,transparent 55px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border-bottom:3px solid #7c5ce7;
}
.wd-communication-channel-select { display:none !important; }

@media (max-width:760px) {
  .wd-record-drawer.wd-customer-dialog,
  .wd-record-drawer.wd-customer-communication-dialog {
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
  }
}

/* Release 00408: a tenant-native feedback workspace for verified testers. */
.wd-feedback #feedback-summary { margin-bottom:18px; }
.wd-feedback #feedback-summary .metric {
  min-height:112px;
  border-bottom:3px solid var(--wd-feedback-tone,#3b82f6);
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-feedback-tone,#3b82f6) 10%,transparent) 0 48px,transparent 49px),
    linear-gradient(180deg,#fff,#fbfcfd);
}
.wd-feedback #feedback-summary .metric:nth-child(2) { --wd-feedback-tone:var(--tenant-primary,#ff8a00); }
.wd-feedback #feedback-summary .metric:nth-child(3) { --wd-feedback-tone:#7c5ce7; }
.wd-feedback #feedback-summary .metric:nth-child(4) { --wd-feedback-tone:#28b864; }
.wd-feedback-layout {
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(460px,1.18fr);
  align-items:start;
  gap:18px;
}
.wd-feedback-form { margin:0; }
.wd-feedback-form fieldset { padding:22px 24px 24px; }
.wd-feedback-form .form-title { padding:22px 24px; }
.wd-feedback-form textarea { min-height:112px; font-weight:450; }
.wd-feedback-form label:has(textarea[name="steps_to_reproduce"]) textarea { min-height:90px; }
.wd-feedback-form .wd-optional { color:var(--wd-muted); font-weight:450; }
.wd-feedback-register {
  overflow:hidden;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:14px;
  box-shadow:var(--wd-shadow-sm);
}
.wd-feedback-list { display:grid; gap:12px; padding:16px; }
.wd-feedback-card {
  --wd-feedback-card-tone:#64748b;
  position:relative;
  overflow:hidden;
  padding:17px 18px 16px;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-feedback-card-tone) 9%,transparent) 0 54px,transparent 55px),
    linear-gradient(180deg,#fff,#fbfcfd);
  border:1px solid var(--wd-line);
  border-left:3px solid var(--wd-feedback-card-tone);
  border-radius:12px;
}
.wd-feedback-card.wd-feedback-bug { --wd-feedback-card-tone:#e0642b; }
.wd-feedback-card.wd-feedback-usability { --wd-feedback-card-tone:#7c5ce7; }
.wd-feedback-card.wd-feedback-idea { --wd-feedback-card-tone:#28a868; }
.wd-feedback-card.wd-feedback-performance { --wd-feedback-card-tone:#3b82f6; }
.wd-feedback-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.wd-feedback-card h4 { margin:5px 0 0; font-size:1rem; font-weight:650; line-height:1.35; }
.wd-feedback-kind {
  color:var(--wd-feedback-card-tone);
  font-size:var(--wd-type-label);
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.wd-feedback-status {
  flex:0 0 auto;
  padding:5px 9px;
  color:#586476;
  background:#f0f3f7;
  border:1px solid #dce2ea;
  border-radius:999px;
  font-size:.7rem;
  font-weight:650;
}
.wd-feedback-status-reviewing,.wd-feedback-status-responded,.wd-feedback-status-approved,.wd-feedback-status-planned,.wd-feedback-status-build_queued,.wd-feedback-status-candidate_ready { color:#6c50c4; background:#f2effc; border-color:#ddd4fa; }
.wd-feedback-status-resolved,.wd-feedback-status-released,.wd-feedback-status-closed { color:#087657; background:#eaf8f3; border-color:#cbece0; }
.wd-feedback-details { margin:12px 0; color:var(--wd-ink); font-size:.82rem; font-weight:450; line-height:1.55; white-space:pre-wrap; }
.wd-feedback-facts { display:flex; flex-wrap:wrap; gap:7px; }
.wd-feedback-facts span {
  display:inline-flex;
  gap:5px;
  padding:5px 8px;
  color:var(--wd-muted);
  background:#f4f6f9;
  border-radius:7px;
  font-size:.7rem;
}
.wd-feedback-facts strong { color:#4b586a; font-weight:650; }
.wd-feedback-card details { margin-top:12px; padding-top:10px; border-top:1px solid var(--wd-line); }
.wd-feedback-card summary { color:var(--wd-feedback-card-tone); cursor:pointer; font-size:.76rem; font-weight:650; }
.wd-feedback-card details p { margin:9px 0 0; color:var(--wd-muted); font-size:.78rem; line-height:1.5; white-space:pre-wrap; }
.wd-feedback-thread { display:grid; gap:8px; margin-top:14px; padding:12px; background:#eef8f4; border:1px solid #cbe8dc; border-radius:10px; }
.wd-feedback-thread > strong { color:#087657; font-size:.76rem; }
.wd-feedback-thread > div { padding-top:8px; border-top:1px solid #d8ebe4; }
.wd-feedback-thread p { margin:0; color:var(--wd-ink); font-size:.82rem; line-height:1.5; white-space:pre-wrap; }
.wd-feedback-thread time { display:block; margin-top:4px; color:var(--wd-muted); font-size:.68rem; }
.wd-platform-feedback-inbox { margin-top:28px; padding:22px; background:#fff; border:1px solid var(--wd-line); border-radius:16px; box-shadow:var(--wd-shadow-sm); }
.wd-platform-feedback-inbox #platform-feedback-summary { margin:16px 0; }
.wd-platform-release-control {
  --wd-release-state-tone:var(--tenant-secondary,#102f48);
  position:relative;
  isolation:isolate;
  display:grid;
  gap:14px;
  margin:18px 0 20px;
  padding:20px;
  overflow:hidden;
  background:
    radial-gradient(circle at 100% 0,color-mix(in srgb,var(--wd-release-state-tone) 9%,transparent) 0 76px,transparent 77px),
    linear-gradient(145deg,#fff 0%,#fbfdfc 100%);
  border:1px solid color-mix(in srgb,var(--wd-release-state-tone) 25%,var(--wd-line));
  border-top:3px solid var(--wd-release-state-tone);
  border-radius:14px;
  box-shadow:var(--wd-shadow-sm);
}
.wd-platform-release-control::after {
  position:absolute;
  z-index:-1;
  right:-72px;
  bottom:-112px;
  width:210px;
  height:210px;
  border:1px solid color-mix(in srgb,var(--tenant-primary,#ff8a00) 18%,transparent);
  border-radius:50%;
  content:"";
  pointer-events:none;
}
.wd-platform-release-control[data-state="waiting"],
.wd-platform-release-control[data-release-state="waiting"] { --wd-release-state-tone:var(--wd-warning); }
.wd-platform-release-control[data-state="selection_required"],
.wd-platform-release-control[data-release-state="selection_required"] { --wd-release-state-tone:var(--wd-action); }
.wd-platform-release-control[data-state="executor_inactive"],
.wd-platform-release-control[data-release-state="executor_inactive"] { --wd-release-state-tone:var(--wd-warning); }
.wd-platform-release-control[data-state="ready"],
.wd-platform-release-control[data-release-state="ready"] { --wd-release-state-tone:var(--wd-success); }
.wd-platform-release-control[data-state="blocked"],
.wd-platform-release-control[data-release-state="blocked"] { --wd-release-state-tone:var(--wd-danger); }
.wd-platform-release-control > header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.wd-platform-release-control > header h4 {
  margin:3px 0 0;
  color:var(--tenant-secondary,#102f48);
  font-family:var(--wd-font-display);
  font-size:1.08rem;
  font-weight:720;
  line-height:1.3;
}
.wd-platform-release-control > header .wd-eyebrow { margin:0; color:var(--wd-success); }
.wd-release-control-status {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 11px;
  color:#435064;
  background:#f1f4f7;
  border:1px solid #d7dde5;
  border-radius:999px;
  font-size:.72rem;
  font-weight:720;
  line-height:1.25;
}
.wd-release-control-status::before {
  width:7px;
  height:7px;
  margin-right:7px;
  background:currentColor;
  border-radius:50%;
  content:"";
}
.wd-release-control-status[data-state="locked"],
.wd-release-control-status-locked { color:#536071; background:#f1f4f7; border-color:#d7dde5; }
.wd-release-control-status[data-state="waiting"],
.wd-release-control-status-waiting { color:#8b5800; background:var(--wd-warning-soft); border-color:#efd49f; }
.wd-release-control-status[data-state="selection_required"],
.wd-release-control-status-selection_required { color:#2455bb; background:#edf3ff; border-color:#cbdafd; }
.wd-release-control-status[data-state="executor_inactive"],
.wd-release-control-status-executor_inactive { color:#8b5800; background:var(--wd-warning-soft); border-color:#efd49f; }
.wd-release-control-status[data-state="ready"],
.wd-release-control-status-ready { color:#087657; background:var(--wd-success-soft); border-color:#bfe5d7; }
.wd-release-control-status[data-state="blocked"],
.wd-release-control-status-blocked { color:#9e2938; background:var(--wd-danger-soft); border-color:#efc7ce; }
.wd-release-control-reason {
  margin:0;
  color:var(--wd-ink-soft);
  font-size:.82rem;
  line-height:1.55;
}
.wd-release-control-actions {
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(250px,auto);
  align-items:end;
  gap:12px;
  padding:14px;
  background:color-mix(in srgb,var(--tenant-secondary,#102f48) 3%,#fff);
  border:1px solid color-mix(in srgb,var(--tenant-secondary,#102f48) 14%,var(--wd-line));
  border-radius:11px;
}
.wd-release-control-actions label {
  display:grid;
  min-width:0;
  gap:7px;
  color:var(--wd-ink-soft);
  font-size:.75rem;
  font-weight:700;
}
.wd-release-control-actions select {
  width:100%;
  min-width:0;
  min-height:44px;
  padding:9px 38px 9px 11px;
  color:var(--wd-ink);
  background:#fff;
  border:1px solid var(--wd-line-strong);
  border-radius:9px;
  font-weight:550;
}
.wd-release-control-actions button,
.wd-release-confirm-dialog .form-actions button { min-height:44px; }
.wd-release-control-actions button { min-width:250px; padding:10px 16px; }
.wd-release-control-actions button[disabled],
.wd-release-confirm-dialog button[disabled] {
  cursor:not-allowed;
  filter:none;
  opacity:.58;
  box-shadow:none;
  transform:none;
}
.wd-release-control-actions button[disabled]:hover,
.wd-release-confirm-dialog button[disabled]:hover { filter:none; box-shadow:none; transform:none; }
.wd-release-control-details {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin:0;
}
.wd-release-control-details:empty { display:none; }
.wd-release-control-details > div {
  min-width:0;
  padding:10px 11px;
  background:#f7f9fb;
  border:1px solid var(--wd-line);
  border-radius:9px;
}
.wd-release-control-details dt {
  margin:0 0 4px;
  color:var(--wd-muted);
  font-size:.62rem;
  font-weight:750;
  letter-spacing:.075em;
  line-height:1.35;
  text-transform:uppercase;
}
.wd-release-control-details dd {
  min-width:0;
  margin:0;
  color:var(--wd-ink);
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  font-size:.72rem;
  font-weight:600;
  line-height:1.45;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.wd-release-control-gates {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.wd-release-control-gates:empty { display:none; }
.wd-release-control-gates li {
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:8px;
  min-width:0;
  padding:9px 10px;
  color:#596678;
  background:#f5f7fa;
  border:1px solid var(--wd-line);
  border-radius:9px;
  font-size:.75rem;
  font-weight:620;
  line-height:1.4;
  overflow-wrap:anywhere;
}
.wd-release-control-gates li::before {
  display:none;
  content:none;
}
.wd-release-control-gates li > span:first-child {
  display:grid;
  width:24px;
  height:24px;
  place-items:center;
  color:#536071;
  background:#e8edf2;
  border-radius:50%;
  font-size:.7rem;
  font-weight:800;
}
.wd-release-control-gates li[data-state="pass"],
.wd-release-control-gates li[data-passed="true"],
.wd-release-control-gates .is-pass,
.wd-release-control-gates .wd-release-gate-pass { color:#087657; background:var(--wd-success-soft); border-color:#c6e8dc; }
.wd-release-control-gates li[data-state="pass"] > span:first-child,
.wd-release-control-gates li[data-passed="true"] > span:first-child,
.wd-release-control-gates .is-pass > span:first-child,
.wd-release-control-gates .wd-release-gate-pass > span:first-child { color:#fff; background:var(--wd-success); }
.wd-release-control-gates li[data-state="wait"],
.wd-release-control-gates li[data-state="waiting"],
.wd-release-control-gates .is-waiting,
.wd-release-control-gates .wd-release-gate-wait { color:#865600; background:var(--wd-warning-soft); border-color:#efd7a8; }
.wd-release-control-gates li[data-state="wait"] > span:first-child,
.wd-release-control-gates li[data-state="waiting"] > span:first-child,
.wd-release-control-gates .is-waiting > span:first-child,
.wd-release-control-gates .wd-release-gate-wait > span:first-child { color:#fff; background:var(--wd-warning); }
.wd-release-control-gates li[data-state="blocked"],
.wd-release-control-gates .is-blocked,
.wd-release-control-gates .wd-release-gate-blocked { color:#992c3a; background:var(--wd-danger-soft); border-color:#edc9cf; }
.wd-release-control-gates li[data-state="blocked"] > span:first-child,
.wd-release-control-gates .is-blocked > span:first-child,
.wd-release-control-gates .wd-release-gate-blocked > span:first-child { color:#fff; background:var(--wd-danger); }
.wd-release-control-boundary {
  margin:0;
  padding:10px 12px;
  color:#4f5d70;
  background:color-mix(in srgb,var(--tenant-secondary,#102f48) 5%,#fff);
  border-left:3px solid var(--tenant-secondary,#102f48);
  border-radius:0 8px 8px 0;
  font-size:.72rem;
  line-height:1.5;
}
.wd-release-confirm-dialog {
  width:min(720px,calc(100vw - 32px));
  max-width:720px;
  max-height:calc(100dvh - 32px);
  padding:0;
  overflow:auto;
  color:var(--wd-ink);
  background:#fff;
  border:1px solid color-mix(in srgb,var(--wd-success) 30%,var(--wd-line));
  border-top:4px solid var(--wd-success);
  border-radius:16px;
  box-shadow:var(--wd-shadow-md);
}
.wd-release-confirm-shell { display:grid; gap:18px; padding:24px; }
.wd-release-confirm-shell > .form-title { padding:0; }
.wd-release-confirm-shell > .form-title h3 { margin:5px 0 7px; color:var(--tenant-secondary,#102f48); }
.wd-release-confirm-shell > .form-title p:last-child { margin:0; color:var(--wd-muted); font-size:.84rem; line-height:1.5; }
.wd-release-confirm-dialog .wd-release-control-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
.wd-release-confirm-warning {
  position:relative;
  margin:0;
  padding:13px 14px 13px 42px;
  color:#714900;
  background:var(--wd-warning-soft);
  border:1px solid #efd39c;
  border-radius:10px;
  font-size:.78rem;
  font-weight:550;
  line-height:1.5;
}
.wd-release-confirm-warning::before {
  position:absolute;
  top:12px;
  left:14px;
  display:grid;
  width:20px;
  height:20px;
  place-items:center;
  color:#fff;
  background:var(--wd-warning);
  border-radius:50%;
  content:"!";
  font-size:.7rem;
  font-weight:800;
}
.wd-release-confirm-dialog .form-actions {
  display:flex;
  justify-content:flex-end;
  gap:9px;
  margin:0;
  padding-top:2px;
}
.wd-release-confirm-dialog .form-actions button { min-width:154px; padding:10px 15px; }
.wd-platform-feedback-card { max-width:none; }
.wd-platform-feedback-actions { display:grid; grid-template-columns:minmax(260px,1fr) auto; align-items:end; gap:10px; margin-top:14px; padding-top:14px; border-top:1px solid var(--wd-line); }
.wd-platform-feedback-actions textarea { min-height:78px; width:100%; resize:vertical; }
.wd-platform-feedback-actions .wd-form-note,.wd-feedback-release-note { grid-column:1/-1; margin:0; }
.wd-platform-feedback-actions button[disabled] { cursor:not-allowed; opacity:.55; }
.wd-feedback-register .workflow-empty { margin:0 16px 16px; padding:32px; }
.wd-dashboard-message.wd-dashboard-success { color:#087657; }

@media (max-width:1040px) {
  .wd-feedback-layout { grid-template-columns:1fr; }
}
@media (max-width:680px) {
  .wd-feedback-layout { gap:14px; }
  .wd-feedback-form .three-col { grid-template-columns:1fr; }
  .wd-feedback-card-head { align-items:flex-start; }
  .wd-feedback-facts { display:grid; grid-template-columns:1fr 1fr; }
  .wd-platform-release-control { gap:12px; padding:16px; }
  .wd-platform-release-control > header { display:grid; gap:10px; }
  .wd-release-control-status { justify-self:start; }
  .wd-release-control-actions { grid-template-columns:minmax(0,1fr); padding:12px; }
  .wd-release-control-actions button { width:100%; min-width:0; }
  .wd-release-control-details,
  .wd-release-confirm-dialog .wd-release-control-details,
  .wd-release-control-gates { grid-template-columns:minmax(0,1fr); }
  .wd-release-confirm-dialog { width:calc(100vw - 20px); max-height:calc(100dvh - 20px); border-radius:14px; }
  .wd-release-confirm-shell { gap:15px; padding:18px 16px; }
  .wd-release-confirm-dialog .form-actions { display:grid; grid-template-columns:minmax(0,1fr); }
  .wd-release-confirm-dialog .form-actions button { width:100%; min-width:0; }
  .wd-platform-feedback-actions { grid-template-columns:minmax(0,1fr); }
  .wd-platform-feedback-actions button { width:100%; }
}

/* Release 00410: restore complete floating records, readable operational
   density and compact register controls across the ILS production workspace. */
.wd-register-pagination {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:8px;
  margin:12px 0;
  padding:8px 10px;
  background:#fff;
  border:1px solid var(--wd-line);
  border-radius:12px;
  box-shadow:var(--wd-shadow-sm);
}
.wd-register-pagination-label {
  min-width:0;
  color:var(--wd-muted);
  font-size:.76rem;
  font-weight:650;
  white-space:nowrap;
}
.wd-register-pagination > button,
.wd-job-pager > button {
  width:auto;
  min-width:88px;
  min-height:38px;
  padding:8px 12px;
}
.wd-job-pager { align-items:center; gap:8px; }
.wd-job-pager span { color:var(--wd-muted); font-size:.76rem; font-weight:650; }

.wd-floating-record-form {
  position:fixed;
  z-index:1500;
  inset:18px 18px 18px auto;
  width:min(760px,calc(100vw - 270px));
  max-height:calc(100vh - 36px);
  margin:0;
  overflow:auto;
  border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 50%,var(--wd-line));
  border-radius:18px;
  box-shadow:0 0 0 100vmax rgba(11,26,40,.42),0 30px 80px rgba(8,25,43,.25);
}
.wd-floating-record-form .form-title {
  position:sticky;
  z-index:2;
  top:0;
  color:#fff;
  background:linear-gradient(110deg,#12324b,#263d4a 58%,#765020);
}
.wd-floating-record-form .form-title h3,
.wd-floating-record-form .form-title p { color:#fff; }
.wd-floating-record-form .sticky-actions { position:sticky; bottom:0; z-index:2; }

.wd-service-work-form { margin-top:18px; }
.wd-service-work-form .wd-ai-service-controls {
  grid-column:1/-1;
  display:flex;
  align-items:end;
  gap:8px;
  min-width:0;
}
.wd-service-work-form .wd-ai-service-controls label { flex:1 1 220px; min-width:160px; }
.wd-service-work-form .wd-ai-service-controls select { box-sizing:border-box; width:100%; min-width:0; }
.wd-service-work-form .wd-ai-service-controls button { flex:0 0 auto; white-space:nowrap; }
.wd-service-work-form .wd-form-context {
  display:grid;
  align-content:center;
  gap:4px;
  min-height:72px;
  padding:12px 14px;
  color:var(--wd-muted);
  background:#f5f8fc;
  border:1px solid var(--wd-line);
  border-radius:10px;
  font-size:.76rem;
  line-height:1.45;
}
.wd-service-work-form .wd-form-context strong { color:var(--wd-ink); }
#service-last-serviced[readonly] { background:#f3f6f9; color:#435268; }

.wd-context-overlay .wd-job-edit-form,
.preview-job-overlay .wd-job-edit-form {
  max-width:none;
  margin:12px;
  border:1px solid var(--wd-line);
  border-radius:14px;
  box-shadow:0 18px 48px rgba(8,25,43,.12);
}
.wd-job-edit-form > .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }

.wd-field-visit-list {
  grid-template-columns:minmax(0,1fr) !important;
  align-items:start;
}
.wd-field-visit-card { max-width:none; padding:18px; }
.wd-field-visit-brief {
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:6px 14px;
  align-items:start;
  line-height:1.5;
}
.wd-field-brief-summary { color:#334155; }
.wd-field-brief-details { grid-column:2; }
.wd-field-brief-details summary {
  width:max-content;
  color:#2459a8;
  cursor:pointer;
  font-size:.76rem;
  font-weight:650;
}
.wd-field-brief-details p { max-width:110ch; margin:10px 0 0; color:#435268; white-space:pre-wrap; }
.wd-field-technician { min-height:42px; }
.wd-field-technician strong { font-size:.9rem; }

.wd-chat-context {
  color:#edf5fb;
  background:linear-gradient(180deg,#12324b,#0f2d46);
}
.wd-chat-context .wd-eyebrow { color:#ffad46; }
.wd-chat-context h3,
.wd-chat-context h4,
.wd-chat-context dt { color:#fff; }
.wd-chat-context dd,
.wd-chat-context .wd-chat-empty { color:#d7e4ee; opacity:1; }
.wd-chat-context dl > div { border-bottom-color:rgba(255,255,255,.22); }
.wd-chat-context-actions { display:grid; grid-template-columns:1fr; gap:8px; }
.wd-chat-context-actions button { width:100%; min-height:38px; }
.wd-chat-context #communications-channel-status > div { gap:8px; }
.wd-chat-context #communications-channel-status .badge { color:#173047; background:#f1f6f8; }

#conversation-reply-form > .wd-reply-contact-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
#conversation-reply-form > .wd-reply-method-row {
  display:grid;
  grid-template-columns:minmax(150px,180px) minmax(0,1fr);
  gap:8px;
}
#conversation-reply-form .wd-reply-contact-grid label,
#conversation-reply-form .wd-reply-method-row label {
  display:grid;
  gap:4px;
  min-width:0;
  color:#617386;
  font-size:.62rem;
  font-weight:780;
  letter-spacing:.04em;
  text-transform:uppercase;
}
#conversation-reply-form .wd-reply-contact-grid input[readonly] {
  color:#42566a !important;
  background:#f4f7fa;
}
#conversation-reply-form .wd-reply-method-row select,
#conversation-reply-form .wd-reply-method-row input,
#conversation-reply-form .wd-ai-review-controls select,
#conversation-reply-form .wd-ai-review-controls button,
#conversation-reply-form .wd-reply-actions button {
  box-sizing:border-box;
  height:40px;
  min-height:40px;
  margin:0;
}
#conversation-reply-form > .wd-ai-review-controls {
  display:grid;
  grid-template-columns:minmax(140px,180px) max-content;
  align-items:end;
  gap:8px;
}
#conversation-reply-form .wd-ai-review-controls label { min-width:0; }
#conversation-reply-form .wd-ai-review-controls select { width:100%; min-width:0; }
#conversation-reply-form .wd-ai-review-controls button,
#conversation-reply-form .wd-reply-actions button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}
#conversation-reply-form > .wd-reply-actions { display:flex; align-items:center; gap:8px; }

.wd-collaboration-shell { min-height:540px; }
.wd-collaboration-thread {
  min-width:0;
  container-name:team-conversation;
  container-type:inline-size;
}
.wd-collaboration-context { color:#345249; }
.wd-collaboration-context h3 { color:#173a30; }

@media (max-width:980px) {
  .wd-floating-record-form { width:calc(100vw - 36px); }
  .wd-service-work-form .three-col { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-service-work-form .span-2 { grid-column:1/-1; }
}
@media (max-width:680px) {
  .wd-register-pagination { grid-template-columns:1fr 1fr; }
  .wd-register-pagination-label { grid-column:1/-1; }
  .wd-register-pagination > button { width:100%; }
  .wd-service-work-form .three-col,
  .wd-job-edit-form > .form-grid { grid-template-columns:1fr; }
  .wd-service-work-form .span-2,
  .wd-job-edit-form > .form-grid > label.span-2 { grid-column:auto; }
  .wd-service-work-form .wd-ai-service-controls { align-items:stretch; flex-direction:column; }
  .wd-service-work-form .wd-ai-service-controls label { min-width:0; }
  .wd-service-work-form .wd-ai-service-controls button { width:100%; }
  #conversation-reply-form > .wd-reply-contact-grid,
  #conversation-reply-form > .wd-reply-method-row,
  #conversation-reply-form > .wd-ai-review-controls { grid-template-columns:1fr; }
  #conversation-reply-form .wd-ai-review-controls button,
  #conversation-reply-form .wd-reply-actions button { width:100%; }
  #conversation-reply-form > .wd-reply-actions { align-items:stretch; flex-direction:column; }
  .wd-field-visit-brief { grid-template-columns:1fr; }
  .wd-field-brief-details { grid-column:1; }
}

/* Release 00414: size the Feedback workspace from its available content area,
   not the browser viewport. The persistent application rail can leave a wide
   viewport with a narrow workspace; viewport-only breakpoints consequently
   squeezed three controls into a small form column and clipped the banner
   action. */
.wd-feedback {
  container-name:feedback-workspace;
  container-type:inline-size;
}
.wd-feedback-hero > div:first-child,
.wd-feedback-layout,
.wd-feedback-form,
.wd-feedback-register { min-width:0; }

@container feedback-workspace (max-width:1120px) {
  .wd-feedback-hero,
  .wd-feedback-hero:not(.wd-calendar-hero) {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    gap:18px;
  }
  .wd-feedback-hero > .wd-hero-actions,
  .wd-feedback-hero:not(.wd-calendar-hero) > .wd-hero-actions {
    display:flex;
    width:100%;
    max-width:none;
    justify-content:flex-start;
  }
  #feedback-view .wd-feedback-hero > .wd-hero-actions > button { flex:0 0 auto; width:auto; min-width:168px; }
  .wd-feedback #feedback-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-feedback-layout { grid-template-columns:minmax(0,1fr); }
}

@container feedback-workspace (max-width:720px) {
  .wd-feedback-form .three-col { grid-template-columns:minmax(0,1fr); }
  .wd-feedback-form .form-title,
  .wd-feedback-form fieldset { padding:20px 18px; }
  .wd-feedback-form .sticky-actions { padding:16px 18px 20px; }
  .wd-feedback-form select,
  .wd-feedback-form input,
  .wd-feedback-form textarea { min-width:0; max-width:100%; }
  .wd-feedback-register .wd-register-heading { display:block; }
  .wd-feedback-register .wd-register-heading > p { margin-top:8px; text-align:left; }
}

@container feedback-workspace (max-width:520px) {
  .wd-feedback #feedback-summary { grid-template-columns:minmax(0,1fr); gap:10px; }
  .wd-feedback-hero > .wd-hero-actions,
  .wd-feedback-hero:not(.wd-calendar-hero) > .wd-hero-actions { display:grid; }
  #feedback-view .wd-feedback-hero > .wd-hero-actions > button { width:100%; min-width:0; }
  .wd-feedback-form .form-actions { display:grid; grid-template-columns:1fr; }
  .wd-feedback-form .form-actions button { width:100%; }
  .wd-feedback-facts { grid-template-columns:minmax(0,1fr); }
  .wd-feedback-card-head { flex-direction:column; }
}

/* Release 00415: service creation is a focused, accessible workspace. The
   customer chooser owns its result list so imported contact details remain
   searchable without leaking into the selected customer label. */
html.wd-modal-open { overflow:hidden; }
.wd-form-overlay {
  position:fixed;
  z-index:1490;
  inset:0;
  display:flex;
  justify-content:flex-end;
  padding:18px;
  background:rgba(11,26,40,.46);
  backdrop-filter:blur(3px) saturate(.85);
}
.wd-form-overlay[hidden],
.wd-customer-combobox-results[hidden] { display:none !important; }
#service-work-form-overlay > #service-work-form {
  position:relative;
  z-index:1;
  inset:auto;
  width:min(860px,calc(100vw - 270px));
  max-height:calc(100dvh - 36px);
  margin:0;
  overflow:auto;
  box-shadow:0 30px 80px rgba(8,25,43,.28);
}
.wd-customer-field {
  display:grid;
  gap:8px;
  min-width:0;
  color:#344152;
  font-size:.82rem;
  font-weight:650;
}
.wd-customer-combobox { position:relative; min-width:0; }
.wd-customer-combobox > input { width:100%; margin:0 !important; }
.wd-customer-combobox-results {
  position:absolute;
  z-index:12;
  top:calc(100% + 6px);
  right:0;
  left:0;
  display:grid;
  max-height:min(360px,42vh);
  overflow:auto;
  padding:6px;
  background:#fff;
  border:1px solid #cfd9e3;
  border-radius:12px;
  box-shadow:0 18px 42px rgba(12,34,52,.2);
}
.wd-customer-combobox-results button {
  display:grid;
  gap:3px;
  width:100%;
  min-height:54px;
  padding:10px 12px;
  color:var(--wd-ink);
  background:#fff;
  border:0;
  border-radius:9px;
  box-shadow:none;
  text-align:left;
}
.wd-customer-combobox-results button:hover,
.wd-customer-combobox-results button[aria-selected="true"] {
  color:#fff;
  background:var(--tenant-secondary,#12324b);
}
.wd-customer-combobox-results strong { font-size:.84rem; }
.wd-customer-combobox-results small { color:inherit; opacity:.78; font-size:.7rem; }
.wd-customer-combobox-empty { margin:0; padding:14px; color:var(--wd-muted); font-size:.76rem; }
.wd-customer-field > small { color:var(--wd-muted); font-size:.7rem; line-height:1.4; }

@media (max-width:980px) {
  #service-work-form-overlay > #service-work-form { width:min(860px,calc(100vw - 36px)); }
}
@media (max-width:680px) {
  .wd-form-overlay { padding:0; }
  #service-work-form-overlay > #service-work-form {
    width:100vw;
    max-height:100dvh;
    border-radius:0;
  }
}

/* Shared interaction layer: search, typography and selected controls use one
   semantic treatment regardless of the workspace rendering them. */
:root {
  --wd-font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI Variable Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --wd-font-display:var(--wd-font-sans);
  --wd-selected-bg:var(--tenant-secondary,#102f48);
  --wd-selected-fg:#fff;
  --wd-selected-border:var(--tenant-secondary,#102f48);
}
html,
body,
button,
input,
select,
textarea { font-family:var(--wd-font-sans); }

.wd-search-bar {
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  width:100%;
  min-width:0;
}
.wd-search-bar.wd-platform-tools { grid-template-columns:36px minmax(0,1fr) minmax(170px,220px); }
.wd-search-bar > input { min-width:0; }
.wd-search-bar > select {
  width:100%;
  min-width:0;
  min-height:42px;
  border:1px solid var(--wd-line);
  border-radius:10px;
  padding:9px 11px;
  color:var(--wd-text);
  background:#fff;
}

.wd-metric-button[aria-pressed="true"],
.wd-calendar-summary-button[aria-pressed="true"],
.wd-field-summary-button[aria-pressed="true"] {
  --wd-selected-surface:color-mix(in srgb,var(--wd-metric-tone,var(--wd-selected-bg)) 56%,#102f48);
  color:var(--wd-selected-fg);
  background:var(--wd-selected-surface);
  border-color:var(--wd-selected-surface);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--wd-selected-surface) 24%,transparent),var(--wd-shadow-sm);
}
.wd-metric-button[aria-pressed="true"] :is(.wd-metric-label,.wd-metric-value,.wd-metric-note,.wd-metric-action),
.wd-calendar-summary-button[aria-pressed="true"] :is(.wd-metric-label,.wd-metric-value,.wd-metric-note,.wd-metric-action),
.wd-field-summary-button[aria-pressed="true"] :is(.wd-metric-label,.wd-metric-value,.wd-metric-note,.wd-metric-action) { color:inherit; }

.wd-communication-channel-tabs button[aria-pressed="true"] {
  --wd-selected-surface:color-mix(in srgb,var(--wd-channel-tone,var(--wd-selected-bg)) 56%,#102f48);
  color:var(--wd-selected-fg);
  background:var(--wd-selected-surface);
  border-color:var(--wd-selected-surface);
  border-bottom-color:var(--wd-selected-surface);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--wd-selected-surface) 22%,transparent),0 7px 18px color-mix(in srgb,var(--wd-selected-surface) 18%,transparent);
}

.wd-context-overlay .wd-job-tabs button[aria-selected="true"],
.wd-invoice-tab[aria-selected="true"],
.wd-studio-tabs button.active:not([aria-disabled="true"]),
.wd-field-view-nav button.active,
.wd-chat-inbox-tabs button.active {
  color:var(--wd-selected-fg);
  background:var(--wd-selected-bg);
  border-color:var(--wd-selected-border);
  box-shadow:0 0 0 2px color-mix(in srgb,var(--wd-selected-bg) 20%,transparent);
}
.wd-invoice-tab[aria-selected="true"] > span { color:var(--wd-selected-bg); background:var(--wd-selected-fg); }

@media (max-width:680px) {
  .wd-search-bar { grid-template-columns:36px minmax(0,1fr); }
  .wd-search-bar .wd-search-submit,
  .wd-search-bar.wd-platform-tools > select { grid-column:1/-1; width:100%; }
}

/* Release 00420: live job, communication and Team workspaces advance together.
   These rules target the production DOM, not a detached design preview. */
.wd-context-overlay .wd-visit-workspace-head {
  grid-template-columns:minmax(0,1fr) 286px;
  min-height:164px;
  padding:20px 22px;
}
.wd-context-overlay .wd-job-head-meta { grid-template-columns:repeat(5,minmax(0,1fr)); }
.wd-context-overlay .wd-job-head-meta > span { min-height:46px; align-content:center; }
#job-panel-overview {
  display:grid;
  min-width:0;
  gap:13px;
  container-name:job-overview;
  container-type:inline-size;
}
#job-panel-overview > .wd-job-facts { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; }
.wd-job-detail-strip { grid-template-columns:1.15fr 1fr 1.55fr 1fr; gap:10px; }
.wd-job-detail-strip > div:nth-child(4) { --wd-detail-tone:#28b864; }
.wd-job-detail-strip strong { overflow-wrap:anywhere; }

.wd-job-edit-form { container-type:inline-size; }
.wd-job-edit-form .wd-job-edit-section {
  display:block;
  margin:0;
  padding:17px 19px 19px;
  border:0;
  border-bottom:1px solid #e1e7ec;
}
.wd-job-edit-form .wd-job-edit-section > legend {
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  margin:0 0 14px;
  padding:0;
  color:var(--wd-ink);
  font-size:.78rem;
  font-weight:820;
}
.wd-job-edit-form .wd-job-edit-section > legend > span {
  display:grid;
  width:27px;
  height:27px;
  place-items:center;
  border:1px solid #ffd8ad;
  border-radius:999px;
  color:#c66a00;
  background:#fff7ee;
  font-size:.66rem;
}
.wd-job-edit-form .wd-job-edit-section .form-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
}
.wd-job-edit-form .wd-job-edit-section .span-2 { grid-column:span 2; }
.wd-job-edit-form .wd-job-edit-section .span-3 { grid-column:1/-1; }
.wd-job-edit-form .wd-job-edit-section label {
  display:grid;
  align-content:start;
  gap:7px;
  min-width:0;
  color:#5f7081;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.035em;
}
.wd-job-edit-form .wd-job-edit-section label > span:first-child { display:inline-flex; gap:4px; align-items:baseline; }
.wd-job-edit-form .wd-job-edit-section label b { display:inline; color:#b42318; }
.wd-job-edit-form input[readonly] { color:#435268; background:#f3f6f9; }
.wd-job-edit-summary {
  display:grid;
  align-content:center;
  gap:4px;
  min-width:0;
  min-height:68px;
  padding:12px 13px;
  border:1px solid #d8e2e9;
  border-radius:11px;
  background:linear-gradient(180deg,#fff,#f8fafc);
}
.wd-job-edit-summary strong { color:var(--wd-ink); font-size:.75rem; overflow-wrap:anywhere; }
.wd-job-edit-summary span { color:var(--wd-muted); font-size:.68rem; line-height:1.45; overflow-wrap:anywhere; }
.wd-job-edit-linked-actions { display:flex; flex-wrap:wrap; gap:8px; }
.wd-job-edit-linked-actions button { min-height:40px; }
.wd-job-edit-form .wd-form-context { margin:0; }
.wd-job-edit-form .wd-prior-visit-files { grid-column:1/-1; }

.wd-conversation-form .span-3 { grid-column:1/-1; }
.wd-conversation-customer-search { position:relative; display:grid; align-content:start; gap:7px; min-width:0; }
.wd-conversation-customer-search > label { color:#5f7081; font-size:.68rem; font-weight:800; letter-spacing:.035em; }
.wd-conversation-customer-search .wd-customer-combobox-results {
  top:calc(100% + 5px);
  right:0;
  left:0;
  width:auto;
  max-height:290px;
}
.wd-conversation-customer-search .wd-customer-combobox-results button { text-align:left; }
#new-conversation-recipient-note.error { color:#8f3d16; border-color:#f3c596; background:#fff8ee; }

/* A wide browser can still leave a narrow conversation between the Team rail
   and its context panel. Size the welcome from that conversation, not the
   viewport, and keep both children inside the available content width. */
.wd-collaboration-thread > .wd-collaboration-welcome {
  grid-template-columns:minmax(0,1fr);
  align-items:center;
  justify-items:stretch;
  min-width:0;
  width:100%;
  max-width:980px;
  gap:24px;
  padding:24px;
  text-align:left;
}
.wd-collaboration-thread > .wd-collaboration-welcome > * { min-width:0; }
.wd-collaboration-welcome-copy { display:grid; justify-items:start; gap:12px; }
.wd-collaboration-kicker { color:var(--wd-green-700); font-size:.63rem; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.wd-collaboration-welcome-copy .wd-collaboration-welcome-mark { width:58px; height:58px; }
.wd-collaboration-welcome-copy h3 { font-size:1.6rem; letter-spacing:-.025em; }
.wd-collaboration-welcome-copy p { max-width:640px; color:#5d746b; font-size:.8rem; }
.wd-collaboration-welcome-actions { display:flex; flex-wrap:wrap; gap:8px; }
.wd-collaboration-welcome-actions button { min-height:41px; }
.wd-collaboration-capabilities { display:grid; gap:9px; }
.wd-collaboration-capabilities article {
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:13px;
  border:1px solid #d6e5dd;
  border-radius:13px;
  background:linear-gradient(180deg,#fff,#f6faf8);
  box-shadow:0 7px 20px rgba(24,62,48,.06);
}
.wd-collaboration-capabilities article > span { display:grid; width:38px; height:38px; place-items:center; border-radius:11px; color:#0f6d52; background:#e4f5ed; font-weight:850; }
.wd-collaboration-capabilities article > div { display:grid; gap:3px; }
.wd-collaboration-capabilities strong { color:#173a30; font-size:.74rem; }
.wd-collaboration-capabilities small { color:#60766d; font-size:.64rem; line-height:1.4; }
.wd-collaboration-capabilities b { padding:4px 7px; border-radius:999px; color:#087657; background:#eaf8f1; font-size:.55rem; text-transform:uppercase; }
.wd-collaboration-capabilities b.unavailable { color:#8a5b00; background:#fff3cf; }

@container team-conversation (min-width:760px) {
  .wd-collaboration-thread > .wd-collaboration-welcome {
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    gap:28px;
    padding:32px;
  }
}

@container (max-width:820px) {
  .wd-job-edit-form .wd-job-edit-section .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-job-edit-form .wd-job-edit-section .span-3 { grid-column:1/-1; }
}
@media (max-width:1000px) {
  .wd-context-overlay .wd-job-head-meta { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .wd-job-detail-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .wd-context-overlay .wd-job-head-meta,
  #job-panel-overview > .wd-job-facts,
  .wd-job-detail-strip,
  .wd-job-edit-form .wd-job-edit-section .form-grid { grid-template-columns:1fr; }
  .wd-job-edit-form .wd-job-edit-section .span-2,
  .wd-job-edit-form .wd-job-edit-section .span-3 { grid-column:auto; }
  .wd-job-edit-linked-actions { display:grid; }
  .wd-collaboration-thread > .wd-collaboration-welcome { padding:22px 18px; }
  .wd-collaboration-welcome-actions { display:grid; width:100%; }
  .wd-collaboration-capabilities article { grid-template-columns:38px minmax(0,1fr); }
  .wd-collaboration-capabilities article > b { grid-column:2; width:max-content; }
}

/* The live job overview is one working record, not the legacy stack of
   dashboard cards. Section dividers organise the reconciled customer, lift and
   attendance context without turning every value into a competing tile. */
.wd-job-overview-record {
  min-width:0;
  overflow:hidden;
  border:1px solid #d8e2e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 12px 32px rgba(18,48,72,.08);
}
.wd-job-overview-record-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);
  align-items:center;
  gap:22px;
  box-sizing:border-box;
  width:auto;
  height:auto;
  min-height:0;
  padding:20px 22px;
  border-top:3px solid var(--tenant-primary,#ff8a00);
  border-bottom:1px solid #dde5eb;
  background:
    radial-gradient(circle at 100% 0,rgba(255,138,0,.08) 0 74px,transparent 75px),
    linear-gradient(135deg,#fff 0%,#f7fafc 100%);
}
.wd-job-overview-record-title { display:grid; min-width:0; gap:5px; }
.wd-job-overview-record-title .wd-eyebrow { color:#a25c08; }
.wd-job-overview-record-title h4 {
  margin:0;
  color:var(--wd-ink);
  font-size:1.08rem;
  letter-spacing:-.012em;
  overflow-wrap:anywhere;
}
.wd-job-overview-record-title p { margin:0; color:#607486; font-size:.74rem; line-height:1.45; }
.wd-job-overview-record-state {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  border:1px solid #dbe4ea;
  border-radius:12px;
  background:rgba(255,255,255,.88);
}
.wd-job-overview-record-state > span {
  display:grid;
  align-content:center;
  gap:4px;
  min-width:0;
  min-height:58px;
  padding:9px 10px;
  border-left:1px solid #e1e7ec;
}
.wd-job-overview-record-state > span:first-child { border-left:0; }
.wd-job-overview-record-state small,
.wd-job-overview-fields dt {
  color:#6a7a8b;
  font-size:.58rem;
  font-weight:820;
  letter-spacing:.065em;
  text-transform:uppercase;
}
.wd-job-overview-record-state strong {
  color:var(--wd-ink);
  font-size:.72rem;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.wd-job-overview-groups { display:grid; min-width:0; }
.wd-job-overview-group {
  display:grid;
  grid-template-columns:190px minmax(0,1fr);
  gap:22px;
  min-width:0;
  padding:19px 22px;
  border-top:1px solid #e3e9ee;
}
.wd-job-overview-group:first-child { border-top:0; }
.wd-job-overview-group > header {
  display:grid;
  align-content:start;
  justify-content:stretch;
  gap:5px;
  box-sizing:border-box;
  width:auto;
  height:auto;
  min-height:0;
  padding:0;
}
.wd-job-overview-group h5 { margin:0; color:var(--wd-ink); font-size:.79rem; }
.wd-job-overview-group > header p { margin:0; color:#6b7d8d; font-size:.66rem; line-height:1.45; }
.wd-job-overview-fields {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(142px,1fr));
  gap:15px 20px;
  margin:0;
}
.wd-job-overview-fields .wd-job-fact { min-width:0; }
.wd-job-overview-fields .wd-job-fact dt { margin-bottom:5px; }
.wd-job-overview-fields .wd-job-fact dd {
  margin:0;
  color:var(--wd-ink);
  font-size:.74rem;
  font-weight:650;
  line-height:1.45;
  overflow-wrap:anywhere;
}

/* The job workspace is a desktop drawer, so its usable width can be much
   narrower than the viewport. Adapt to that drawer instead of the page. */
@container job-overview (max-width:960px) {
  .wd-job-overview-record-head {
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    gap:16px;
  }
  .wd-job-overview-record-title p { max-width:72ch; }
}
@container job-overview (max-width:760px) {
  .wd-job-overview-record-head,
  .wd-job-overview-group { padding:16px; }
  .wd-job-overview-record-state { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-job-overview-record-state > span:nth-child(odd) { border-left:0; }
  .wd-job-overview-record-state > span:nth-child(n+3) { border-top:1px solid #e1e7ec; }
  .wd-job-overview-group { grid-template-columns:minmax(0,1fr); gap:13px; }
  .wd-job-overview-fields { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 18px; }
}
@container job-overview (max-width:480px) {
  .wd-job-overview-fields { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:680px) {
  .wd-job-overview-record-head,
  .wd-job-overview-group { padding:16px; }
  .wd-job-overview-record-state { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-job-overview-record-state > span:nth-child(odd) { border-left:0; }
  .wd-job-overview-record-state > span:nth-child(n+3) { border-top:1px solid #e1e7ec; }
  .wd-job-overview-group { grid-template-columns:1fr; gap:13px; }
  .wd-job-overview-fields { grid-template-columns:1fr; gap:12px; }
}

/* Keep the job title and actions in separate rows on narrow screens. */
@media (max-width:820px) {
  .wd-context-overlay .wd-visit-workspace-head {
    grid-template-columns:minmax(0,1fr);
    min-height:0;
    gap:12px;
    padding:16px;
  }
  .wd-context-overlay .wd-job-head-copy { width:100%; min-width:0; }
  .wd-context-overlay .wd-visit-workspace-head h3 { font-size:1.05rem; overflow-wrap:anywhere; }
  .wd-context-overlay .wd-job-head-meta { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  .wd-context-overlay .wd-job-head-meta > span { min-height:0; padding:7px 9px; }
  .wd-context-overlay .wd-visit-workspace-actions { width:100%; min-width:0; align-self:stretch; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-context-overlay .wd-job-head-label { flex-wrap:wrap; }
}

#job-panel-activity { padding:18px; }
#job-panel-activity #job-source-history { padding:0 0 18px; }
.wd-job-event-list { display:grid; gap:12px; padding:16px; min-width:0; }
.wd-job-event-card { padding:16px 18px; border:1px solid #dce4eb; border-left:3px solid var(--tenant-primary,#ff8a00); border-radius:12px; background:#fff; min-width:0; }
.wd-job-event-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 18px; align-items:baseline; }
.wd-job-event-heading h4 { margin:0; font-size:1rem; line-height:1.4; color:#173247; }
.wd-job-event-date,.wd-job-event-origin { color:#526274; font-size:.8rem; line-height:1.5; }
.wd-job-event-card .wd-job-event-origin { margin:6px 0; }
.wd-job-event-summary { white-space:pre-wrap; overflow-wrap:anywhere; font-size:.9rem; line-height:1.6; margin:10px 0; }
.wd-job-event-card summary { cursor:pointer; padding:10px 0; color:#35576e; font-size:.8rem; }
.wd-job-event-card pre { white-space:pre-wrap; overflow-wrap:anywhere; padding:12px; background:#f5f7fa; border-radius:8px; font-size:.75rem; line-height:1.5; }
@media(max-width:600px) { #job-panel-activity { padding:10px; } .wd-job-event-list { padding:10px; } .wd-job-event-card { padding:14px; } .wd-job-event-date { flex-basis:100%; } }

/* Mobile record review: one scrolling surface, with readable report copy. */
@media (max-width:700px) {
  #service-workspace-overlay .wd-visit-workspace {
    display:block; overflow-y:auto; max-height:calc(100dvh - 20px);
    overscroll-behavior:contain;
  }
  #service-workspace-overlay .wd-visit-workspace-head { position:relative; }
  #service-workspace-overlay .wd-visit-workspace-grid { overflow:visible; flex:none; }
  #service-workspace-overlay .wd-job-tabs { position:sticky; top:0; z-index:3; background:#fff; }
  #service-workspace-overlay .wd-report-card { display:flex; flex-direction:column; align-items:stretch; gap:16px; }
  #service-workspace-overlay .wd-report-card > div { width:100%; min-width:0; }
  #service-workspace-overlay .wd-report-card p { overflow-wrap:anywhere; white-space:pre-wrap; }
  #service-workspace-overlay .wd-report-actions { display:flex; flex-wrap:wrap; width:100%; }
  #service-workspace-overlay .wd-report-actions > button { width:100%; min-height:44px; }
  #customer-record-dialog { overflow-y:auto; max-height:calc(100dvh - 20px); overscroll-behavior:contain; }
  #customer-record-dialog .wd-record-dialog-shell { display:block; max-height:none; height:auto; overflow:visible; }
  #customer-record-dialog .wd-record-dialog-head { display:flex; flex-direction:column; align-items:stretch; gap:12px; }
  #customer-record-dialog .wd-customer-dialog-identity { width:100%; }
  #customer-record-dialog .wd-customer-dialog-identity h3,
  #customer-record-dialog .wd-customer-dialog-identity p { white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; }
  #customer-record-dialog .wd-customer-workspace { overflow:visible; }
  #customer-record-dialog .wd-record-dialog-actions { position:static; display:grid; grid-template-columns:1fr 1fr; }
  #customer-record-dialog .wd-record-dialog-actions button { min-width:0; white-space:normal; }
}


/* Internal report review: document-width content, separate workflow controls. */
.wd-report-card { display:flex; flex-direction:column; align-items:stretch; gap:20px; }
.wd-report-copy { width:100%; min-width:0; }
.wd-report-card-title { margin:0 0 10px; color:#123449; font-size:1.25rem; }
.wd-report-wording-details { margin-top:16px; }
.wd-report-wording-details summary { cursor:pointer; color:#34526a; font-weight:600; padding:8px 0; }
.wd-report-actions { display:flex; flex-wrap:wrap; gap:10px; align-items:flex-start; border-top:1px solid #dce4eb; padding-top:16px; }
.wd-report-preview:not([hidden]) { display:block; margin-top:20px; border:1px solid #dce4eb; border-radius:16px; overflow:hidden; background:#fff; box-shadow:0 8px 28px #1234490a; padding:0 28px 28px; }
.wd-report-preview .wd-report-masthead { position:static; display:block; height:auto; min-height:0; max-height:none; margin:0 -28px 24px; padding:28px; background:#123449; border-top:5px solid #ff8900; color:#fff; }
.wd-report-eyebrow { font-size:.72rem; font-weight:750; letter-spacing:.16em; color:#ffc06e; }
.wd-report-preview .wd-report-masthead h4 { margin:10px 0 8px; color:#fff; font-size:1.8rem; line-height:1.2; }
.wd-report-preview .wd-report-masthead p { color:#d6e4ee; font-size:.85rem; }
.wd-report-preview .wd-report-review-notice { background:#f0f5f9; border-radius:8px; padding:14px 16px; color:#486176; font-size:.85rem; }
.wd-report-preview h5 { margin:28px 0 12px; padding-bottom:10px; border-bottom:1px solid #dce4eb; color:#123449; font-size:1rem; }
.wd-report-preview p { line-height:1.7; color:#34485a; overflow-wrap:anywhere; }
.wd-report-preview .wd-report-time { padding:12px 16px; margin-top:16px; background:#f6f8fa; border-radius:8px; font-weight:650; }
.wd-report-checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.wd-report-check { display:flex; justify-content:space-between; gap:16px; padding:14px; background:#f6f8fa; border-radius:8px; font-size:.9rem; }
.wd-report-check strong { white-space:nowrap; color:#123449; }
.wd-report-preview .wd-report-signature-statement { margin-top:16px; padding:16px; border-left:3px solid #ff8900; background:#fff8ee; }
.wd-report-preview button { margin-top:12px; }
@media(max-width:600px) {
  .wd-report-preview:not([hidden]) { padding:0 16px 20px; }
  .wd-report-preview .wd-report-masthead { margin:0 -16px 20px; padding:22px 16px; }
  .wd-report-checks { grid-template-columns:1fr; }
  .wd-report-actions > button { flex:1 1 160px; }
}
