:root {
  --wd-font-sans: Inter, "SF Pro Text", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --wd-type-display: 2rem;
  --wd-type-title: 1.5rem;
  --wd-type-section: 1rem;
  --wd-type-body: .875rem;
  --wd-type-action: .8125rem;
  --wd-type-small: .75rem;
  --wd-type-label: .6875rem;
  --wd-ink-950: #0d1117;
  --wd-ink-900: #0d1117;
  --wd-ink-800: #374151;
  --wd-green-700: #0f7a5c;
  --wd-green-600: #0f7a5c;
  --wd-green-500: #18a268;
  --wd-green-300: #34c38f;
  --wd-green-200: #6ed7a8;
  --wd-green-100: #d9f5e8;
  --wd-green-50: #eefaf5;
  --wd-text: #0d1117;
  --wd-muted: #687280;
  --wd-soft: #84909e;
  --wd-line: #e5e7eb;
  --wd-line-strong: #d1d5db;
  --wd-page: #f4f6f8;
  --wd-surface: #ffffff;
  --wd-surface-soft: #f7faf8;
  --wd-warning: #b7791f;
  --wd-warning-soft: #fff7df;
  --wd-danger: #b42318;
  --wd-danger-soft: #fff0ee;
  --wd-info: #2563a8;
  --wd-info-soft: #edf5ff;
  --wd-shadow-sm: 0 1px 2px rgba(7, 27, 24, .04), 0 8px 28px rgba(7, 27, 24, .035);
  --wd-shadow-md: 0 18px 50px rgba(7, 27, 24, .1);
  --wd-radius-sm: 8px;
  --wd-radius-md: 12px;
  --wd-radius-lg: 18px;
  --wd-focus: 0 0 0 3px rgba(24, 162, 104, .2);
  --navy: var(--wd-ink-900);
  --blue: var(--wd-green-600);
  --ink: var(--wd-text);
  --muted: var(--wd-muted);
  --line: var(--wd-line);
  --page: var(--wd-page);
}

body {
  font-family: var(--wd-font-sans);
  font-feature-settings: "cv02", "cv03", "cv04", "cv11";
  background: var(--wd-page);
  color: var(--wd-text);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
button, input, select, textarea { outline: none; font-family: var(--wd-font-sans); }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  border-color: var(--wd-green-500) !important;
  box-shadow: var(--wd-focus);
}
.primary { background: linear-gradient(135deg, var(--wd-green-600), var(--wd-green-700)); box-shadow: 0 8px 20px rgba(8, 116, 86, .18); }
.primary:hover { filter: brightness(.97); transform: translateY(-1px); }
.secondary:hover { border-color: var(--wd-line-strong); background: var(--wd-surface-soft); }
.app { grid-template-columns: 252px minmax(0, 1fr); }
aside { background: linear-gradient(180deg, var(--wd-ink-950) 0%, var(--wd-ink-900) 100%); padding: 26px 18px; }
.app > aside { min-height:0; }
.app > aside nav { min-height:0; }
.app > aside .aside-footer { flex:0 0 auto; }
@media(min-width:901px) {
  .app > aside {
    position:sticky;
    top:0;
    align-self:start;
    height:100vh;
    height:100dvh;
    max-height:100dvh;
    overflow:hidden;
  }
  .app > aside nav {
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.2) transparent;
  }
}
aside .wordmark { font-size: 1.65rem; letter-spacing: -.035em; }
.sidebar-brand { display:flex; align-items:center; gap:11px; min-height:76px; margin:0 2px 32px; color:#fff; white-space:nowrap; }
.sidebar-brand img { display:block; flex:0 0 51px; width:51px; height:51px; }
.sidebar-brand-copy { display:grid; gap:4px; min-width:0; }
.sidebar-brand-copy strong { color:#fff; font-size:1.47rem; font-weight:780; line-height:1; letter-spacing:-.045em; }
.sidebar-brand-copy span { display:none; }
.app.tenant-mode .sidebar-brand-copy strong { color:var(--tenant-primary,var(--wd-green-300)); letter-spacing:.02em; }
.app.tenant-mode .sidebar-brand-copy span { display:block; max-width:142px; overflow:hidden; color:#d7e3df; font-size:.7rem; line-height:1.2; text-overflow:ellipsis; }
nav { gap: 8px; }
nav button { color: #d7e3df; padding: 12px 14px; font-size:.94rem; font-weight:520; letter-spacing:-.005em; }
nav button:hover { color: #fff; background: rgba(255,255,255,.055); }
nav button.active { color:#fff; font-weight:700; background: linear-gradient(90deg, rgba(24,162,104,.3), rgba(24,162,104,.12)); box-shadow: inset 3px 0 var(--wd-green-300); }
.app.tenant-mode > aside { background:var(--tenant-secondary,var(--wd-ink-950)); }
.app.tenant-mode nav button.active { background:linear-gradient(90deg,color-mix(in srgb,var(--tenant-primary) 34%,transparent),color-mix(in srgb,var(--tenant-primary) 12%,transparent)); box-shadow:inset 3px 0 var(--tenant-primary); }
header { height: 72px; padding: 0 34px; }
main { width:100%; max-width:none; padding:34px clamp(26px,2vw,48px) 64px; }
.wd-workspace-navigation { display:flex; align-items:center; margin:0; }
.wd-workspace-navigation button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; font-weight:700; white-space:nowrap; }
.wd-hero-actions .wd-workspace-navigation { order:-1; }
.role-pill { color: var(--wd-green-700); background: var(--wd-green-50); border: 1px solid var(--wd-green-100); }
.stat, .module, .customer-form, .customer-table { border-color:var(--wd-line-strong); box-shadow: var(--wd-shadow-sm); }

h2 { font-weight:760; line-height:1.12; letter-spacing:-.04em; }
h3, h4 { font-weight:700; letter-spacing:-.022em; }
.intro { color:#526171; font-size:.98rem; line-height:1.55; }
.tenant-label { color:#5d6977; }
.aside-footer strong { font-size:.94rem; }
.aside-footer span { color:#bcc9c5; font-size:.82rem; }
.role-pill { font-weight:700; }

.auth-shell {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--tenant-primary, var(--wd-green-600)) 13%, transparent), transparent 36%),
    radial-gradient(circle at 90% 88%, color-mix(in srgb, var(--tenant-accent, var(--wd-green-300)) 12%, transparent), transparent 38%),
    var(--wd-page);
}
.auth-card { width:min(540px,100%); padding:44px; border-color:var(--wd-line-strong); box-shadow:0 26px 75px rgba(16,44,70,.13); }
.auth-tenant-lockup { display:flex; align-items:center; gap:18px; }
.auth-tenant-lockup > img { flex:0 0 72px; width:72px; height:72px; object-fit:contain; }
.auth-tenant-copy { display:grid; min-width:0; }
.auth-tenant-copy > span:first-child { color:var(--tenant-secondary,var(--wd-ink-900)); font-size:.9rem; font-weight:760; letter-spacing:.02em; }
.auth-tenant-copy .wordmark { margin:2px 0 0; color:var(--tenant-primary,var(--wd-green-600)); font-size:2.5rem; font-weight:820; line-height:1; letter-spacing:.035em; }
#auth-tenant-context { margin-top:7px; color:var(--wd-muted); font-size:.76rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.auth-card #auth-intro { margin:24px 0 26px; color:#526171; font-size:1rem; line-height:1.6; }
.auth-card #auth-intro[hidden] { display:none; }
.auth-card.tenant-branded #auth-intro[hidden] + #signin { margin-top:28px; }
.auth-card #signin { width:100%; min-height:50px; background:linear-gradient(135deg,var(--tenant-primary,var(--wd-green-600)),color-mix(in srgb,var(--tenant-primary,var(--wd-green-700)) 84%,#000)); box-shadow:0 10px 24px color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 24%,transparent); }
.auth-card #signin:disabled { cursor:wait; opacity:.7; transform:none; }
.auth-browser-help {
  display:grid;
  gap:8px;
  margin-top:14px;
  padding:16px;
  color:var(--wd-ink-800);
  background:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 7%,#fff);
  border:1px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 24%,var(--wd-line));
  border-radius:12px;
}
.auth-browser-help strong { color:var(--tenant-secondary,var(--wd-ink-900)); font-size:.92rem; }
.auth-browser-help span { color:#526171; font-size:.82rem; line-height:1.5; }
.auth-browser-help .secondary { justify-self:start; margin-top:4px; min-height:42px; }
.auth-card #message { min-height:24px; margin:14px 0 0; color:var(--wd-green-700); font-size:.88rem; }
.auth-card #message.auth-message-error { color:var(--wd-danger); }
.auth-powered-by { display:grid; justify-items:center; gap:8px; margin-top:28px; padding-top:24px; border-top:1px solid var(--wd-line); }
.auth-powered-by > span { color:var(--wd-muted); font-size:.68rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.auth-powered-lockup { display:flex; align-items:center; gap:9px; color:var(--wd-ink-900); }
.auth-powered-lockup img { width:29px; height:29px; }
.auth-powered-lockup strong { font-size:1.25rem; font-weight:790; letter-spacing:-.035em; }
@media(max-width:560px) {
  .auth-shell { padding:16px; }
  .auth-card { padding:32px 26px; border-radius:18px; }
  .auth-tenant-lockup > img { flex-basis:62px; width:62px; height:62px; }
  .auth-tenant-copy .wordmark { font-size:2.1rem; }
}

input, select, textarea {
  color:var(--wd-text) !important;
  font-size:.93rem !important;
  line-height:1.4;
  border-color:var(--wd-line-strong) !important;
}
input::placeholder, textarea::placeholder { color:#7a8490; opacity:1; }
.onboarding-form label { color:#344152; font-size:.82rem; font-weight:700; letter-spacing:.005em; }
.onboarding-form label input,
.onboarding-form label select,
.onboarding-form label textarea { margin-top:8px; min-height:45px; padding:12px 13px; }
.onboarding-form label textarea { min-height:92px; }
.form-title { padding:26px 28px; }
.form-title h3 { font-size:1.2rem; font-weight:750; }
.form-title p { color:#536170; font-size:.91rem; }
.form-title > .status-pill { display:inline-grid; place-items:center; align-self:stretch; min-width:94px; text-align:center; line-height:1.25; }
fieldset { padding:28px 28px 32px; }
fieldset legend { color:#17212d; font-size:.98rem; font-weight:750; }
fieldset > p.intro { max-width:980px; color:#526171; }
.sticky-actions { padding:20px 28px 26px; }
.primary, .secondary { min-height:44px; font-weight:700; }

.wd-studio-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 28px;
  padding: 30px;
  border: 1px solid rgba(24, 162, 104, .18);
  border-radius: var(--wd-radius-lg);
  color: #fff;
  background:
    radial-gradient(circle at 82% 20%, color-mix(in srgb,var(--tenant-primary,var(--wd-green-500)) 25%,transparent), transparent 35%),
    linear-gradient(135deg, var(--tenant-secondary,var(--wd-ink-950)), color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 82%,var(--tenant-primary,var(--wd-green-600))));
  box-shadow: var(--wd-shadow-md);
}
.wd-studio-hero::after { content:""; position:absolute; inset:auto -80px -130px auto; width:300px; height:300px; border:1px solid rgba(255,255,255,.09); border-radius:50%; }
.wd-eyebrow { margin: 0 0 8px; color: var(--tenant-primary,#8fe1be); font-size: .72rem; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.wd-studio-hero h2 { color: #fff; font-size: 2.05rem; letter-spacing: -.035em; }
.wd-studio-hero .intro { max-width: 720px; margin: 8px 0 0; color: #cfe0db; }
.wd-hero-actions { position: relative; z-index: 1; display: flex; align-items:center; gap: 10px; }
.wd-studio-hero .secondary { border-color: rgba(255,255,255,.25); color:#fff; background:rgba(255,255,255,.08); }

fieldset legend { float:left; width:100%; gap:16px !important; margin:0 0 22px !important; }
fieldset legend span { flex-basis:32px !important; width:32px !important; height:32px !important; color:var(--wd-green-700) !important; background:var(--wd-green-50) !important; border:1px solid var(--wd-green-100); }
fieldset > .form-grid, fieldset > h4, fieldset > p { clear:both; }

.wd-studio-tabs { display:flex; gap:6px; margin:20px 0; padding:6px; width:max-content; max-width:100%; overflow:auto; border:1px solid var(--wd-line-strong); border-radius:14px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-studio-tabs button { white-space:nowrap; border:0; border-radius:9px; padding:9px 14px; color:var(--wd-muted); background:transparent; cursor:pointer; }
.wd-studio-tabs button.active { color:var(--wd-green-700); background:var(--wd-green-50); font-weight:750; }
.wd-studio-tabs button[aria-disabled="true"] { opacity:.55; cursor:default; }

.wd-metric-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:18px 0; }
.wd-metric { min-height:116px; padding:18px 20px; border:1px solid var(--wd-line); border-radius:var(--wd-radius-md); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-metric-label { display:block; color:var(--wd-muted); font-size:.74rem; font-weight:750; letter-spacing:.055em; text-transform:uppercase; }
.wd-metric-value { display:block; margin-top:11px; color:var(--wd-ink-900); font-size:1.7rem; line-height:1; letter-spacing:-.04em; }
.wd-metric-note { display:block; margin-top:9px; color:var(--wd-soft); font-size:.78rem; }
.wd-metric-button { width:100%; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.wd-metric-button:hover { border-color:#aebdca; transform:translateY(-1px); box-shadow:0 12px 26px rgba(16,44,70,.1); }
.wd-metric-button[aria-pressed="true"] { border-color:var(--tenant-primary,#ff8a00); box-shadow:0 0 0 2px rgba(255,138,0,.16),var(--wd-shadow-sm); }
.wd-metric-button:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,#ff8a00) 35%,transparent); outline-offset:3px; }
.wd-service-summary-button { display:flex; flex-direction:column; align-items:flex-start; }
.wd-service-summary-button .wd-metric-action { display:block; margin-top:auto; padding-top:12px; color:var(--tenant-primary,#ff8a00); font-size:.77rem; font-weight:800; }
.wd-service-summary-button[aria-pressed="true"] .wd-metric-action { color:var(--wd-green-700); }

.wd-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) 190px 170px auto; gap:10px; align-items:end; margin:18px 0 14px; padding:16px; border:1px solid var(--wd-line); border-radius:var(--wd-radius-md); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-field { display:grid; gap:6px; }
.wd-field span { color:var(--wd-muted); font-size:.7rem; font-weight:750; letter-spacing:.055em; text-transform:uppercase; }
.wd-input, .wd-select { width:100%; min-height:42px; border:1px solid var(--wd-line-strong); border-radius:9px; padding:9px 11px; color:var(--wd-text); background:#fff; font:inherit; }
.wd-assets-toolbar { grid-template-columns:minmax(300px,1fr) 190px auto auto; }
.wd-finance { display:grid; gap:16px; }
.wd-finance[hidden] { display:none; }
.wd-finance .wd-studio-hero { margin-bottom:0; }
.wd-finance .wd-metric-grid,.wd-finance .wd-toolbar { margin-top:0; margin-bottom:0; }
.wd-finance-toolbar { grid-template-columns:minmax(300px,1fr) 190px 170px auto auto; }
.wd-finance-note { margin:0; border-left:4px solid var(--tenant-primary,var(--wd-green-600)); border-radius:9px; padding:12px 14px; color:var(--wd-muted); background:#fff; font-size:.8rem; line-height:1.5; box-shadow:var(--wd-shadow-sm); }
.wd-finance-note:empty { display:none; }
.wd-history { display:grid; gap:16px; }
.wd-history[hidden] { display:none; }
.wd-history .wd-studio-hero { margin-bottom:0; }
.wd-history .wd-toolbar { margin-top:0; margin-bottom:0; }
.wd-history-toolbar { grid-template-columns:minmax(320px,1fr) auto auto; }
.wd-history-table { min-width:1120px; }
.wd-history-table td:nth-child(3) { min-width:360px; }
.wd-history-activity { display:grid; gap:4px; max-width:620px; white-space:normal; }
.wd-history-activity strong { color:var(--wd-ink-900); }
.wd-history-activity span { color:var(--wd-text); line-height:1.45; }
.wd-history-activity small { color:var(--wd-soft); }
.wd-record-link { display:block; border:0; padding:0; color:#18476c; background:transparent; font:inherit; font-weight:750; text-align:left; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.wd-record-link:focus-visible { outline:2px solid #2879da; outline-offset:3px; border-radius:3px; }
.wd-row-open { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; }
.wd-row-open::after { content:"→"; transition:transform .16s ease; }
.wd-clickable-row { cursor:pointer; }
.wd-clickable-row:hover { background:#f6faf8!important; box-shadow:inset 3px 0 0 var(--tenant-primary,var(--wd-green-600)); }
.wd-clickable-row:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 42%,transparent); outline-offset:-3px; background:#f6faf8; }
.wd-clickable-row:hover .wd-row-open::after { transform:translateX(3px); }
.wd-history-row-actions { display:flex; flex-wrap:wrap; gap:7px; min-width:190px; }
.wd-history-dialog { width:min(880px, calc(100vw - 32px)); }
.wd-history-dialog form { padding:0; }
.wd-history-dialog #history-event-detail { padding:4px 28px 0; }
.wd-history-dialog .wd-job-facts { margin-top:20px; }
.wd-history-dialog .wd-history-dialog-files { margin:0 28px 22px; overflow:hidden; border:1px solid var(--wd-line); border-radius:12px; }
.wd-history-dialog .wd-history-dialog-files .wd-table-heading { padding:14px 16px; }
.wd-history-dialog .wd-history-dialog-files h4 { margin:0; color:var(--wd-ink-900); font-size:.9rem; }
.wd-history-dialog #history-event-files { padding:14px 16px; }
.wd-history-dialog #history-event-actions { padding:0 28px 8px; }
.wd-history-dialog #history-event-message { min-height:20px; margin:0; padding:0 28px 24px; color:#a32121; }
.wd-asset-pagination { display:flex; gap:8px; }
.wd-asset-table { min-width:1080px; }
.wd-asset-location { display:grid; gap:2px; }
.wd-table-shell { overflow:hidden; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-table-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; border-bottom:1px solid var(--wd-line); }
.wd-table-heading h3 { margin:0; font-size:1rem; }
.wd-table-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.wd-table-count { color:var(--wd-muted); font-size:.82rem; }
.wd-table-wrap { overflow-x:auto; }
.wd-table { min-width:860px; }
.wd-table th { padding:12px 16px; background:var(--wd-surface-soft); color:var(--wd-soft); font-size:.68rem; letter-spacing:.07em; }
.wd-table td { padding:17px 16px; vertical-align:middle; }
.wd-table tbody tr { transition:background .16s ease; }
.wd-table tbody tr:hover { background:#fbfdfc; }
.wd-record-title { display:block; color:var(--wd-ink-900); font-weight:750; }
.wd-record-subtitle { display:block; max-width:460px; margin-top:4px; color:var(--wd-muted); font-size:.8rem; line-height:1.4; }
.wd-record-code { display:block; margin-top:6px; color:var(--wd-soft); font:650 .69rem ui-monospace,SFMono-Regular,monospace; }
.wd-number { color:var(--wd-ink-900); font-weight:750; }
.wd-badge { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:6px 9px; font-size:.72rem; font-weight:750; text-transform:capitalize; }
.wd-badge::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }
.wd-badge-draft { color:var(--wd-warning); background:var(--wd-warning-soft); }
.wd-badge-published, .wd-badge-active { color:var(--wd-green-700); background:var(--wd-green-50); }
.wd-badge-archived, .wd-badge-neutral { color:var(--wd-muted); background:#eef2f0; }
.wd-empty { display:grid; justify-items:center; gap:8px; padding:52px 24px; text-align:center; }
.wd-empty-mark { display:grid; place-items:center; width:48px; height:48px; border-radius:14px; color:var(--wd-green-700); background:var(--wd-green-50); font-weight:850; }
.wd-empty h3 { margin:6px 0 0; }
.wd-empty p { max-width:480px; margin:0; color:var(--wd-muted); line-height:1.5; }
.wd-loading { display:grid; gap:10px; padding:20px; }
.wd-skeleton { height:62px; border-radius:10px; background:linear-gradient(90deg,#f0f4f2 25%,#f8faf9 50%,#f0f4f2 75%); background-size:220% 100%; animation:wd-shimmer 1.2s infinite; }
@keyframes wd-shimmer { to { background-position:-220% 0; } }

#workflows-message { min-height:0; margin:12px 2px; color:var(--wd-muted); }
#workflows-message:empty { display:none; }
#workflow-form { box-shadow:var(--wd-shadow-md); }

#workforce-message { min-height:0; margin:12px 2px; color:var(--wd-muted); }
#workforce-message:empty { display:none; }
#unit-form, #workforce-form, #leave-request-form, #availability-form, #leave-type-form { box-shadow:var(--wd-shadow-md); }
.wd-people-layout { display:grid; grid-template-columns:minmax(0,2fr) minmax(300px,.8fr); gap:18px; align-items:start; }
.wd-people-layout > * { min-width:0; }
.wd-people-layout .wd-table-shell { min-width:0; }
.wd-units-panel { overflow:hidden; color:var(--wd-text); padding:0; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-unit-list { display:grid; gap:10px; padding:14px; }
.wd-unit-card { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px; border:1px solid var(--wd-line); border-radius:12px; background:var(--wd-surface-soft); }
.wd-unit-heading, .wd-person { display:flex; align-items:center; gap:11px; min-width:0; }
.wd-unit-heading > div, .wd-person-copy { display:grid; min-width:0; }
.wd-unit-heading strong, .wd-person-copy strong { overflow:hidden; color:var(--wd-ink-900); text-overflow:ellipsis; white-space:nowrap; }
.wd-unit-heading small, .wd-person-copy small { overflow:hidden; margin-top:2px; color:var(--wd-muted); font-size:.75rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-unit-icon, .wd-avatar { display:grid; flex:0 0 38px; place-items:center; width:38px; height:38px; border-radius:11px; color:var(--wd-green-700); background:var(--wd-green-50); font-size:.78rem; font-weight:800; }
.wd-avatar { color:#fff; background:linear-gradient(145deg,var(--wd-green-500),var(--wd-green-700)); }
.wd-unit-members { white-space:nowrap; color:var(--wd-muted); font-size:.76rem; }
.wd-access-badges { display:flex; flex-wrap:wrap; gap:6px; }
.wd-badge-mobile, .wd-badge-remote { color:var(--wd-green-700); background:var(--wd-green-50); }
.wd-badge-restricted { color:var(--wd-muted); background:#eef2f0; }
.wd-access-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; clear:both; }
.wd-access-option { display:flex!important; align-items:flex-start; gap:12px; padding:17px; border:1px solid var(--wd-line); border-radius:12px; background:var(--wd-surface-soft); cursor:pointer; }
.wd-access-option input { flex:0 0 auto; width:18px!important; height:18px; margin:2px 0 0!important; accent-color:var(--wd-green-600); }
.wd-access-option span { display:grid; gap:4px; }
.wd-access-option strong { color:var(--wd-ink-900); font-size:.9rem; }
.wd-access-option small { color:var(--wd-muted); font-size:.78rem; font-weight:450; line-height:1.45; }
#new-workforce-profile:disabled { opacity:.55; cursor:not-allowed; filter:none; transform:none; }
.wd-member-status { display:flex; align-items:flex-start; gap:8px; flex-wrap:wrap; }
.wd-staff-mapping-table { min-width:1180px; }
.wd-staff-mapping-intro { margin-top:0; }
.wd-governance-note { margin:0 2px 16px; padding:12px 15px; border-left:4px solid var(--wd-warning); border-radius:8px; color:var(--wd-text); background:var(--wd-warning-soft); font-size:.82rem; line-height:1.5; }
.wd-staff-warning { display:block; margin-top:6px; color:#8a5a00; font-size:.73rem; font-weight:700; line-height:1.35; }
.wd-badge-invitation-ready, .wd-badge-invitation-prepared { color:#8a5a00; background:#fff4d6; }
.wd-badge-existing-member { color:var(--wd-green-700); background:var(--wd-green-50); }
.wd-badge-held, .wd-badge-conflict { color:var(--wd-danger, #a32121); background:#fdebec; }
.wd-badge-ordinary-member { color:#174f9c; background:#eaf2ff; }
.wd-text-action {
  appearance:none;
  border:0;
  background:transparent;
  color:var(--wd-danger, #a32121);
  cursor:pointer;
  font:inherit;
  font-size:12px;
  font-weight:700;
  line-height:1.4;
  padding:2px 0;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.wd-text-action:hover { color:#771616; }
.wd-text-action:focus-visible { border-radius:4px; outline:3px solid rgba(16,151,111,.25); outline-offset:2px; }
.wd-text-action:disabled { cursor:wait; opacity:.55; }
.wd-leave-actions { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:14px 0 18px; padding:22px 24px; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:linear-gradient(135deg,#fff 0%,var(--wd-green-50) 100%); box-shadow:var(--wd-shadow-sm); }
.wd-leave-actions h3 { margin:3px 0 5px; font-size:1.35rem; }
.wd-leave-actions p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); }
.wd-availability-list { display:grid; gap:10px; padding:14px; }
.wd-availability-card { display:grid; gap:7px; padding:15px; border:1px solid var(--wd-line); border-left:4px solid var(--wd-green-500); border-radius:12px; background:var(--wd-surface-soft); }
.wd-availability-card strong { color:var(--wd-ink-900); }
.wd-availability-card span { color:var(--wd-muted); font-size:.78rem; line-height:1.45; }
.wd-decision-actions { display:flex; gap:6px; }
.wd-decision-actions button { padding:7px 9px; font-size:.72rem; }
.wd-table .wd-compact-action { min-height:34px; padding:7px 12px; font-size:.75rem; }
.wd-leave-dot { display:inline-block; width:10px; height:10px; margin-right:8px; border-radius:50%; vertical-align:middle; }
.wd-badge-pending { color:#8a5a00; background:#fff4d6; }
.wd-badge-approved, .wd-badge-confirmed { color:var(--wd-green-700); background:var(--wd-green-50); }
.wd-badge-declined, .wd-badge-cancelled { color:#a32121; background:#fdecec; }
.wd-structure-shell { overflow:hidden; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-structure-tree { display:grid; gap:10px; padding:18px; background:linear-gradient(180deg,#fff,var(--wd-surface-soft)); }
.wd-structure-card { position:relative; display:grid; grid-template-columns:42px minmax(240px,1fr) minmax(360px,auto); align-items:center; gap:14px; margin-left:calc(var(--wd-tree-depth) * 34px); padding:17px 18px; border:1px solid var(--wd-line); border-radius:14px; background:#fff; box-shadow:0 4px 16px rgba(7,27,24,.035); }
.wd-structure-card::before { content:""; position:absolute; left:-18px; top:-11px; width:16px; height:34px; border-left:1px solid var(--wd-green-200); border-bottom:1px solid var(--wd-green-200); border-radius:0 0 0 8px; opacity:calc(var(--wd-tree-depth)); }
.wd-structure-copy { display:grid; min-width:0; }
.wd-structure-copy strong { color:var(--wd-ink-900); font-size:.96rem; }
.wd-structure-copy span { overflow:hidden; margin-top:3px; color:var(--wd-muted); font-size:.78rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-structure-facts { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:10px; color:var(--wd-muted); font-size:.76rem; }

.wd-people-manager-panel { display:grid; gap:18px; }
.wd-people-manager-panel[hidden] { display:none; }
.wd-manager-intro { margin-top:0; }
.wd-manager-filter { display:grid; grid-template-columns:150px 150px auto; align-items:end; gap:10px; }
.wd-manager-filter label { display:grid; gap:6px; color:var(--wd-muted); font-size:.72rem; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.wd-manager-filter input,.wd-manager-filter select { min-height:42px; border:1px solid var(--wd-line-strong); border-radius:9px; padding:9px 11px; color:var(--wd-text); background:#fff; font:inherit; font-weight:500; letter-spacing:normal; text-transform:none; }
.wd-manager-metrics { grid-template-columns:repeat(5,minmax(0,1fr)); margin:0; }
.wd-manager-board { overflow:hidden; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-manager-category-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; padding:18px; background:linear-gradient(180deg,#fff,var(--wd-surface-soft)); }
.wd-manager-category { --wd-manager-tone:#3b82f6; overflow:hidden; min-width:0; border:1px solid var(--wd-line); border-top:4px solid var(--wd-manager-tone); border-radius:14px; background:#fff; box-shadow:0 6px 18px rgba(16,44,70,.045); }
.wd-manager-category[data-category="achievements"] { --wd-manager-tone:#28b864; }
.wd-manager-category[data-category="outstanding"] { --wd-manager-tone:#3b82f6; }
.wd-manager-category[data-category="follow_ups"] { --wd-manager-tone:var(--tenant-primary,#ff9818); }
.wd-manager-category[data-category="help_needed"] { --wd-manager-tone:#7c5ce7; }
.wd-manager-category[data-category="blockers"] { --wd-manager-tone:#dc3545; }
.wd-manager-category > header { height:auto; min-height:64px; padding:14px 15px; border-bottom:1px solid var(--wd-line); background:#fff; }
.wd-manager-category > header h4 { margin:0; color:var(--wd-ink-900); font-size:.9rem; }
.wd-manager-category > header span { display:inline-grid; min-width:28px; min-height:28px; place-items:center; border-radius:999px; padding:4px 8px; color:color-mix(in srgb,var(--wd-manager-tone) 78%,#102c46); background:color-mix(in srgb,var(--wd-manager-tone) 12%,white); font-size:.74rem; font-weight:800; }
.wd-manager-category-list { display:grid; gap:9px; padding:12px; }
.wd-manager-evidence-item { display:grid; gap:4px; border:1px solid var(--wd-line); border-radius:10px; padding:11px; background:var(--wd-surface-soft); }
.wd-manager-evidence-item strong { overflow:hidden; color:var(--wd-ink-900); font-size:.8rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-manager-evidence-item span { color:var(--wd-text); font-size:.78rem; line-height:1.4; }
.wd-manager-evidence-item small { color:var(--wd-soft); font-size:.7rem; line-height:1.35; }
.wd-manager-not-reported { margin:0; padding:22px 14px; color:var(--wd-muted); font-size:.78rem; line-height:1.5; text-align:center; }
.wd-manager-privacy-note { margin:0; border-left:4px solid #7c5ce7; border-radius:9px; padding:13px 15px; color:var(--wd-muted); background:#f6f2ff; font-size:.8rem; line-height:1.55; box-shadow:var(--wd-shadow-sm); }
.wd-manager-cap-notice { margin:12px 0 18px; border-left:4px solid #b86b00; border-radius:9px; padding:13px 15px; color:#70430b; background:#fff7e8; font-size:.8rem; line-height:1.55; box-shadow:var(--wd-shadow-sm); }
.wd-manager-cap-notice[hidden] { display:none; }
.wd-help-request-list { display:grid; gap:12px; padding:18px; background:var(--wd-surface-soft); }
.wd-help-request-card { display:grid; gap:12px; border:1px solid var(--wd-line); border-left:4px solid #7c5ce7; border-radius:12px; padding:14px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-help-request-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.wd-help-request-heading { display:grid; gap:4px; min-width:0; }
.wd-help-request-heading strong { overflow-wrap:anywhere; color:var(--wd-ink-900); font-size:.9rem; }
.wd-help-request-heading small,.wd-help-request-actions span,.wd-help-request-actions small { color:var(--wd-soft); font-size:.72rem; }
.wd-help-request-card > p { margin:0; color:var(--wd-text); font-size:.8rem; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.wd-help-request-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px; padding-top:10px; border-top:1px solid var(--wd-line); }
.wd-help-request-actions > span { margin-right:auto; }
.wd-help-request-actions button { min-height:36px; padding:7px 11px; font-size:.74rem; }
.wd-manager-pagination { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px; }
.wd-manager-pagination span { margin-right:4px; color:var(--wd-muted); font-size:.75rem; }
.wd-manager-pagination button { min-height:36px; padding:7px 11px; font-size:.74rem; }
.wd-manager-pagination button:disabled { opacity:.5; cursor:not-allowed; }
.wd-review-pagination { border:1px solid var(--wd-line); border-radius:12px; padding:10px 12px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-manager-kpi-table { min-width:980px; }
.wd-manager-kpi-value { display:grid; gap:3px; }
.wd-manager-kpi-value strong { color:var(--wd-ink-900); font-size:1rem; }
.wd-manager-kpi-value small { color:var(--wd-soft); font-size:.71rem; }
.wd-staff-review-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:14px; }
.wd-staff-review-card { overflow:hidden; border:1px solid var(--wd-line); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-staff-review-card summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; cursor:pointer; list-style:none; }
.wd-staff-review-card summary::-webkit-details-marker { display:none; }
.wd-staff-review-card summary::after { content:"Review evidence ↓"; flex:0 0 auto; color:var(--wd-green-700); font-size:.74rem; font-weight:800; }
.wd-staff-review-card[open] summary::after { content:"Close ↑"; }
.wd-staff-review-person { display:grid; min-width:0; }
.wd-staff-review-person strong { overflow:hidden; color:var(--wd-ink-900); text-overflow:ellipsis; white-space:nowrap; }
.wd-staff-review-person span { margin-top:3px; color:var(--wd-muted); font-size:.78rem; }
.wd-staff-review-body { display:grid; gap:15px; border-top:1px solid var(--wd-line); padding:18px 20px 20px; background:var(--wd-surface-soft); }
.wd-staff-review-window { margin:0; color:var(--wd-muted); font-size:.78rem; }
.wd-staff-review-evidence { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.wd-staff-review-evidence div { display:grid; gap:4px; border:1px solid var(--wd-line); border-radius:10px; padding:11px; background:#fff; }
.wd-staff-review-evidence span { color:var(--wd-muted); font-size:.7rem; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.wd-staff-review-evidence strong { color:var(--wd-ink-900); font-size:1.1rem; }
.wd-staff-review-evidence small { color:var(--wd-soft); font-size:.7rem; }
.wd-staff-review-caution { margin:0; color:var(--wd-text); font-size:.78rem; line-height:1.5; }

@media(max-width:1050px) {
  .wd-manager-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-manager-filter { grid-template-columns:1fr 1fr; width:100%; }
  .wd-manager-filter button { grid-column:1/-1; }
}
@media(max-width:700px) {
  .wd-manager-metrics,.wd-manager-filter,.wd-staff-review-evidence { grid-template-columns:1fr; }
  .wd-manager-filter button { grid-column:auto; }
  .wd-manager-category-grid { grid-template-columns:1fr; padding:12px; }
  .wd-staff-review-list { grid-template-columns:1fr; }
  .wd-manager-pagination { width:100%; justify-content:stretch; }
  .wd-manager-pagination span { flex:1 0 100%; }
  .wd-manager-pagination button { flex:1; }
  .wd-help-request-card > header { align-items:stretch; flex-direction:column; }
  .wd-help-request-actions > span { flex:1 0 100%; }
  .wd-help-request-actions button { flex:1; }
}

#integrations-message { min-height:0; margin:12px 2px; }
#integrations-message:empty { display:none; }
.wd-integration-intro { display:flex; align-items:center; justify-content:space-between; gap:28px; margin:18px 0; padding:22px 24px; border:1px solid var(--wd-green-200); border-radius:var(--wd-radius-lg); background:linear-gradient(120deg,#fff 0%,var(--wd-green-50) 100%); box-shadow:var(--wd-shadow-sm); }
.wd-integration-intro h3 { margin:4px 0 6px; font-size:1.25rem; }
.wd-integration-intro p:not(.wd-eyebrow) { max-width:720px; margin:0; color:var(--wd-muted); line-height:1.5; }
.wd-security-seal { flex:0 0 auto; border:1px solid var(--wd-green-200); border-radius:999px; padding:10px 14px; color:var(--wd-green-700); background:#fff; font-size:.76rem; font-weight:750; }
.wd-section-heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin:28px 2px 14px; }
.wd-section-heading h3 { margin:4px 0 0; font-size:1.3rem; }
.wd-section-heading > p { max-width:470px; margin:0; color:var(--wd-muted); text-align:right; line-height:1.45; }
.wd-provider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.wd-provider-card { --wd-provider-accent:var(--wd-green-600); display:flex; min-width:0; min-height:278px; flex-direction:column; padding:22px; border:1px solid var(--wd-line); border-top:4px solid var(--wd-provider-accent); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); transition:transform .16s ease,box-shadow .16s ease; }
.wd-provider-card:hover { transform:translateY(-2px); box-shadow:var(--wd-shadow-md); }
.wd-provider-blue { --wd-provider-accent:#3975d7; }.wd-provider-cyan { --wd-provider-accent:#13a8c7; }.wd-provider-orange { --wd-provider-accent:#f28b22; }.wd-provider-amber { --wd-provider-accent:#d99b13; }.wd-provider-red { --wd-provider-accent:#c74634; }.wd-provider-purple { --wd-provider-accent:#7457c8; }.wd-provider-multi { --wd-provider-accent:#4285f4; }
.wd-provider-head,.wd-provider-identity,.wd-provider-footer,.wd-provider-facts { display:flex; align-items:center; }
.wd-provider-head { justify-content:space-between; gap:16px; }
.wd-provider-identity { min-width:0; gap:13px; }
.wd-provider-identity > div { min-width:0; }
.wd-provider-identity h3 { overflow:hidden; margin:0 0 3px; font-size:1.08rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-provider-identity span:not(.wd-provider-mark) { color:var(--wd-muted); font-size:.75rem; }
.wd-provider-mark { display:grid; flex:0 0 44px; place-items:center; width:44px; height:44px; border-radius:13px; color:#fff; background:linear-gradient(145deg,var(--wd-provider-accent),color-mix(in srgb,var(--wd-provider-accent),#081d19 24%)); font-size:.78rem; font-weight:850; box-shadow:0 8px 20px color-mix(in srgb,var(--wd-provider-accent),transparent 76%); }
.wd-provider-description { min-height:52px; margin:18px 0 15px; color:var(--wd-muted); line-height:1.5; }
.wd-provider-capabilities { display:flex; flex-wrap:wrap; gap:7px; }
.wd-provider-capabilities span { border-radius:999px; padding:6px 9px; color:var(--wd-soft); background:var(--wd-surface-soft); font-size:.71rem; font-weight:700; }
.wd-provider-footer { justify-content:space-between; gap:16px; margin-top:auto; padding-top:20px; }
.wd-provider-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px; }
.wd-provider-facts { flex-wrap:wrap; gap:12px; color:var(--wd-muted); font-size:.71rem; font-weight:650; }
.wd-provider-facts span::before { content:""; display:inline-block; width:6px; height:6px; margin-right:6px; border-radius:50%; background:var(--wd-provider-accent); vertical-align:1px; }
.wd-communication-connection-grid { margin-top:18px; }
.wd-channel-card { min-height:235px; }
.wd-channel-card .wd-provider-description { min-height:44px; }
#communication-connections-panel > .wd-metric-grid { margin-bottom:18px; }
#communication-connections-message { min-height:20px; }
.wd-health-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr)); gap:18px; }
.wd-health-card { --wd-provider-accent:var(--wd-green-600); overflow:hidden; border:1px solid var(--wd-line); border-top:4px solid var(--wd-provider-accent); border-radius:var(--wd-radius-lg); background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-health-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px; border-bottom:1px solid var(--wd-line); }
.wd-health-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; padding:8px 22px 18px; }
.wd-health-fact { display:flex; flex-direction:column; gap:4px; padding:14px 0; border-bottom:1px solid var(--wd-line); }
.wd-health-fact:nth-child(odd) { padding-right:18px; }
.wd-health-fact:nth-child(even) { padding-left:18px; border-left:1px solid var(--wd-line); }
.wd-health-fact dt { color:var(--wd-muted); font-size:.68rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.wd-health-fact dd { margin:0; color:var(--wd-ink-900); font-size:.86rem; font-weight:680; line-height:1.45; }
.wd-health-alert { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 22px 20px; padding:13px 15px; border:1px solid #f2c7c7; border-radius:10px; color:#8f2525; background:#fff5f5; }
.wd-setup-button { border:1px solid var(--wd-line); border-radius:9px; padding:9px 12px; color:var(--wd-muted); background:var(--wd-surface-soft); font:inherit; font-size:.74rem; font-weight:700; }
.wd-setup-button { cursor:pointer; color:var(--wd-green-700); border-color:var(--wd-green-200); background:var(--wd-green-50); }
.wd-connection-setup { margin:18px 0; box-shadow:var(--wd-shadow-md); }
.wd-scope-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.wd-scope-option { display:flex!important; align-items:center; gap:10px; padding:13px 14px; border:1px solid var(--wd-line); border-radius:10px; background:var(--wd-surface-soft); cursor:pointer; }
.wd-scope-option input { width:17px!important; height:17px; margin:0!important; accent-color:var(--wd-green-600); }
.wd-scope-option span { color:var(--wd-text); font-size:.8rem; font-weight:700; }
.wd-request-requirements { display:block!important; margin-top:16px; }
.wd-request-requirements textarea { min-height:118px; }
.wd-section-actions { display:flex; align-items:center; gap:16px; }
.wd-section-actions p { max-width:430px; margin:0; color:var(--wd-muted); text-align:right; }
.wd-form-note { margin:14px 0 0; color:var(--wd-muted); font-size:.78rem; line-height:1.5; }
.wd-service-filter { grid-template-columns:minmax(320px,1fr) auto auto; margin:18px 0; }
.wd-service-table { min-width:1180px; }
.wd-service-evidence { display:block; max-width:440px; overflow:hidden; color:var(--wd-muted); font:600 .72rem ui-monospace,SFMono-Regular,monospace; text-overflow:ellipsis; white-space:nowrap; }
.wd-service-id { color:var(--wd-soft); font:650 .72rem ui-monospace,SFMono-Regular,monospace; }
#service-job-list tr { cursor:pointer; }
#service-job-list tr:hover { background:#f7fafc; }
#service-job-list td { padding:10px 7px; }
#service-job-list td:first-child { padding-left:12px; }
#service-job-list td:last-child { padding-right:12px; }
#service-job-list td:nth-child(1) { width:34%; }
#service-job-list td:nth-child(2) { width:19%; }
#service-job-list td:nth-child(3) { width:13%; }
#service-job-list td:nth-child(4) { width:11%; }
#service-job-list td:nth-child(5) { width:16%; }
#service-job-list td:nth-child(6) { width:7%; }
.wd-report-shell { margin-top:18px; }
.wd-inline-report { display:grid; gap:14px; padding:18px 20px; border-bottom:1px solid var(--wd-line); background:var(--wd-surface-soft); }
.wd-inline-report label { display:grid; gap:7px; color:var(--wd-soft); font-size:.75rem; font-weight:700; }
.wd-inline-report textarea,.wd-inline-report input { box-sizing:border-box; width:100%; border:1px solid var(--wd-line); border-radius:9px; padding:11px 12px; background:#fff; font:inherit; }
.wd-inline-report textarea { min-height:140px; resize:vertical; }
.wd-inline-report select { box-sizing:border-box; width:100%; border:1px solid var(--wd-line); border-radius:9px; padding:11px 12px; background:#fff; font:inherit; }
.wd-ai-wording-controls { display:flex; align-items:end; gap:10px; }
.wd-ai-wording-controls label { min-width:150px; }
.wd-report-list { display:grid; gap:10px; padding:14px; }
.wd-report-card { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; padding:15px; border:1px solid var(--wd-line); border-radius:12px; background:#fff; }
.wd-report-card p { margin:7px 0 0; color:var(--wd-muted); line-height:1.5; white-space:pre-wrap; }
.wd-report-actions { display:flex; align-items:start; gap:8px; }
.wd-report-delivery { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; margin-top:16px; width:100%; max-width:680px; }
.wd-report-delivery-row { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; min-width:0; }
.wd-report-delivery-field { display:grid; gap:6px; flex:1 1 260px; min-width:0; margin:0; font-weight:600; }
.wd-report-delivery input { box-sizing:border-box; width:100%; min-width:0; height:46px; border:1px solid var(--wd-line); border-radius:8px; padding:10px 12px; font:inherit; font-size:16px; font-weight:400; background:#fff; }
.wd-report-delivery-row button { min-height:46px; margin:0; flex:0 0 auto; }
@media (max-width:600px) { .wd-report-delivery-row button { width:100%; } .wd-report-delivery-field { flex-basis:100%; } }
.wd-visit-workspace { margin-top:18px; overflow:hidden; border:1px solid var(--wd-line); border-top:4px solid var(--tenant-primary,var(--wd-green-600)); border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-visit-workspace-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px; border-bottom:1px solid var(--wd-line); background:linear-gradient(110deg,#fff 0%,color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 7%,#fff) 100%); }
.wd-visit-workspace-head h3 { margin:2px 0 5px; color:var(--wd-ink-900); font-size:1.2rem; }
.wd-visit-workspace-head p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); font-size:.78rem; }
.wd-visit-workspace-actions { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:flex-end; gap:10px; }
.wd-visit-workspace-actions > button { min-height:58px; }
.wd-visit-workspace-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; }
.wd-visit-panel { min-width:0; padding:18px 20px 20px; border-right:1px solid var(--wd-line); border-bottom:1px solid var(--wd-line); }
.wd-visit-panel:nth-child(2) { border-right:0; }
.wd-communication-panel { grid-column:1/-1; border-right:0; border-bottom:0; }
.wd-visit-panel .wd-table-heading { min-height:44px; padding:0 0 14px; }
.wd-visit-panel h4 { margin:0; color:var(--wd-ink-900); font-size:.94rem; }
.wd-visit-list,.wd-evidence-list,.wd-communication-list { display:grid; gap:9px; }
.wd-visit-list { grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); }
.wd-visit-card,.wd-evidence-item,.wd-communication-item { display:grid; gap:6px; padding:13px 14px; border:1px solid var(--wd-line); border-radius:11px; background:var(--wd-surface-soft); }
.wd-visit-card-head { display:flex; align-items:center; justify-content:space-between; gap:9px; }
.wd-visit-card p { margin:0; color:var(--wd-text); font-size:.76rem; }
.wd-visit-card small,.wd-evidence-item small,.wd-communication-item small { color:var(--wd-muted); font-size:.69rem; line-height:1.4; }
.wd-visit-assignment-summary { font-weight:700; }
.wd-visit-assignment { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:7px; margin-top:4px; }
.wd-visit-assignment select,.wd-visit-outcome-form select,.wd-visit-outcome-form textarea { box-sizing:border-box; width:100%; border:1px solid var(--wd-line); border-radius:8px; padding:8px 9px; background:#fff; font:inherit; }
.wd-visit-assignment button,.wd-visit-actions button { padding:8px 10px; font-size:.7rem; }
.wd-visit-actions { display:flex; flex-wrap:wrap; gap:7px; padding-top:4px; }
.wd-visit-outcome-form { display:grid; gap:9px; margin-top:5px; padding:11px; border:1px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 28%,var(--wd-line)); border-radius:9px; background:#fff; }
.wd-visit-outcome-form label { display:grid; gap:5px; color:var(--wd-soft); font-size:.7rem; font-weight:700; }
.wd-visit-outcome-form textarea { min-height:68px; resize:vertical; }
.wd-visit-outcome-form .check-row { display:flex; align-items:center; }
.wd-visit-outcome-form .check-row input { width:auto; }
.wd-visit-followup-fields { display:grid; gap:9px; }
.wd-visit-outcome-form .form-actions { display:flex; flex-wrap:wrap; gap:7px; }
.wd-visit-outcome { padding-top:5px; font-weight:650; }
.wd-visit-next-action { padding:7px 8px; border-radius:7px; color:#7a5100!important; background:#fff6d7; }
.wd-evidence-item { grid-template-columns:auto minmax(0,1fr) auto; align-items:center; }
.wd-evidence-item button { padding:7px 9px; font-size:.68rem; }
.wd-evidence-item small { grid-column:1/-1; }
.wd-communication-list { grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.wd-communication-item { grid-template-columns:minmax(0,1fr) auto; align-items:center; }
.wd-communication-item small { grid-column:1/-1; }
.wd-compact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:14px; padding:14px; border:1px solid var(--wd-line); border-radius:11px; background:var(--wd-surface-soft); }
.wd-compact-form label { display:grid; gap:6px; color:var(--wd-soft); font-size:.72rem; font-weight:700; }
.wd-compact-form input,.wd-compact-form select,.wd-compact-form textarea { box-sizing:border-box; width:100%; border:1px solid var(--wd-line); border-radius:8px; padding:9px 10px; background:#fff; font:inherit; }
.wd-compact-form textarea { min-height:88px; resize:vertical; }
.wd-compact-form .check-row { display:flex; align-items:center; }
.wd-compact-form .check-row input { width:auto; }
.wd-compact-form .form-actions,.wd-compact-form .wd-form-note { grid-column:1/-1; }
.wd-operations-dashboard { display:grid; gap:18px; }
.wd-operations-hero { align-items:center; padding:32px; background:linear-gradient(118deg,var(--tenant-secondary,var(--wd-ink-950)) 0%,color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 82%,var(--tenant-primary,var(--wd-green-600))) 100%); }
.wd-operations-hero .intro { margin-bottom:0; }
.wd-operations-hero .primary { background:var(--tenant-primary,var(--wd-green-600)); box-shadow:0 10px 28px color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 35%,transparent); }
.wd-operations-chips { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:8px; margin-top:17px; }
.wd-operations-chips span { border:1px solid rgba(255,255,255,.2); border-radius:999px; padding:6px 10px; color:#fff; background:rgba(255,255,255,.08); font-size:.7rem; font-weight:720; }
.wd-dashboard-message { min-height:0; margin:-2px 2px 0; color:var(--wd-muted); font-size:.82rem; }
.wd-dashboard-message:empty { display:none; }
.wd-dashboard-message.wd-dashboard-error { color:var(--wd-danger); }
.wd-operations-metrics { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; }
.wd-operations-metric { position:relative; overflow:hidden; width:100%; min-height:150px; padding:19px 18px; border:1px solid var(--wd-line); border-bottom:4px solid var(--wd-metric-tone,var(--tenant-primary,var(--wd-green-600))); border-radius:15px; color:inherit; background:#fff; box-shadow:var(--wd-shadow-sm); font:inherit; text-align:left; cursor:pointer; transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; }
.wd-operations-metric:hover { border-color:color-mix(in srgb,var(--wd-metric-tone) 44%,var(--wd-line)); box-shadow:0 13px 28px rgba(16,44,70,.12); transform:translateY(-2px); }
.wd-operations-metric:focus-visible { outline:3px solid color-mix(in srgb,var(--wd-metric-tone) 42%,transparent); outline-offset:3px; }
.wd-operations-metric:active { transform:translateY(0); }
.wd-operations-metric::after { content:""; position:absolute; top:-35px; right:-32px; width:82px; height:82px; border-radius:50%; background:color-mix(in srgb,var(--wd-metric-tone) 9%,transparent); }
.wd-operations-metric span,.wd-operations-metric strong,.wd-operations-metric small { position:relative; z-index:1; display:block; }
.wd-operations-metric span { color:var(--wd-muted); font-size:.69rem; font-weight:800; letter-spacing:.055em; text-transform:uppercase; }
.wd-operations-metric strong { margin-top:10px; color:var(--wd-ink-900); font-size:1.75rem; line-height:1; letter-spacing:-.045em; }
.wd-operations-metric small { margin-top:10px; color:var(--wd-soft); font-size:.71rem; line-height:1.35; }
.wd-operations-metric .wd-operations-metric-action { margin-top:12px; color:var(--wd-metric-tone); font-size:.68rem; letter-spacing:0; text-transform:none; }
#dashboard-attention-panel:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 38%,transparent); outline-offset:3px; }
.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:#dc3545; }.wd-tone-purple { --wd-metric-tone:#7c5ce7; }
.wd-operations-layout { display:grid; grid-template-columns:minmax(0,2.15fr) minmax(310px,.85fr); gap:18px; align-items:start; }
.wd-operations-column { display:grid; min-width:0; gap:18px; }
.wd-operations-panel { overflow:hidden; border:1px solid var(--wd-line); border-radius:18px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-panel-heading { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:78px; padding:17px 20px; border-bottom:1px solid var(--wd-line); }
.wd-panel-heading .wd-eyebrow { margin-bottom:3px; }
.wd-panel-heading h3 { margin:0; font-size:1.08rem; }
.wd-panel-heading button { min-height:38px; padding:8px 12px; font-size:.76rem; }
.wd-dashboard-health-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:16px; }
.wd-dashboard-health-card { position:relative; display:grid; gap:7px; min-height:144px; padding:17px; border:1px solid var(--wd-line); border-top:4px solid var(--wd-health-tone,#3b82f6); border-radius:13px; background:var(--wd-surface-soft); }
.wd-dashboard-health-card span { color:var(--wd-muted); font-size:.72rem; font-weight:760; text-transform:uppercase; }
.wd-dashboard-health-card strong { color:var(--wd-ink-900); font-size:1.85rem; letter-spacing:-.04em; }
.wd-dashboard-health-card small { align-self:end; color:var(--wd-soft); font-size:.71rem; line-height:1.4; }
.wd-health-green { --wd-health-tone:#28b864; }.wd-health-red { --wd-health-tone:#dc3545; }.wd-health-orange { --wd-health-tone:var(--tenant-primary,#ff9818); }.wd-health-blue { --wd-health-tone:#3b82f6; }
.wd-dashboard-loading { min-height:144px; border-radius:13px; background:linear-gradient(90deg,#f0f3f5 25%,#fafbfc 50%,#f0f3f5 75%); background-size:220% 100%; animation:wd-shimmer 1.2s infinite; }
.wd-dashboard-week-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:0; padding:15px 16px; }
.wd-dashboard-week-grid div { display:grid; justify-items:center; gap:7px; padding:17px 10px; border-right:1px solid var(--wd-line); text-align:center; }
.wd-dashboard-week-grid div:last-child { border-right:0; }
.wd-dashboard-week-grid span { color:var(--wd-muted); font-size:.69rem; font-weight:760; text-transform:uppercase; }
.wd-dashboard-week-grid strong { color:var(--wd-ink-900); font-size:1.55rem; }
.wd-attention-badge { display:grid; place-items:center; min-width:29px; height:29px; border-radius:50%; color:#885600; background:#fff1bf; font-size:.76rem; font-weight:800; }
.wd-dashboard-attention-list { display:grid; gap:10px; padding:15px; }
.wd-dashboard-attention { display:grid; grid-template-columns:10px 1fr; align-items:start; gap:11px; padding:14px; border:1px solid var(--wd-line); border-radius:12px; background:var(--wd-surface-soft); }
.wd-dashboard-attention div,.wd-dashboard-clear { display:grid; gap:3px; }
.wd-dashboard-attention strong,.wd-dashboard-clear strong { color:var(--wd-ink-900); font-size:.8rem; line-height:1.35; }
.wd-dashboard-attention small,.wd-dashboard-clear small { color:var(--wd-muted); font-size:.7rem; line-height:1.4; }
.wd-attention-dot { width:9px; height:9px; margin-top:4px; border-radius:50%; background:var(--tenant-primary,#ff9818); }
.wd-attention-red { background:#dc3545; }.wd-attention-orange { background:var(--tenant-primary,#ff9818); }
.wd-dashboard-clear { justify-items:center; padding:27px 14px; text-align:center; }
.wd-dashboard-clear > span { display:grid; place-items:center; width:34px; height:34px; margin-bottom:3px; border-radius:50%; color:#147f4a; background:#e8f8ef; font-weight:800; }
.wd-connected-list { display:grid; padding:7px 18px 15px; }
.wd-connected-list > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--wd-line); }
.wd-connected-list > div:last-child { border-bottom:0; }
.wd-connected-list span { color:var(--wd-text); font-size:.75rem; line-height:1.35; }
.wd-connected-list strong { flex:0 0 auto; border-radius:999px; padding:5px 8px; font-size:.64rem; }
.wd-live-status { color:#147f4a; background:#e8f8ef; }.wd-planned-status { color:#865b08; background:#fff4d6; }
.wd-quick-actions { display:flex; align-items:center; justify-content:space-between; gap:26px; padding:22px 24px; }
.wd-quick-actions h3 { margin:0; }
.wd-quick-actions p:not(.wd-eyebrow) { margin:4px 0 0; color:var(--wd-muted); font-size:.8rem; }
.wd-quick-action-buttons { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.wd-quick-action-buttons button { min-height:40px; padding:9px 12px; font-size:.76rem; }
.wd-dashboard-identity { margin:0 2px; color:var(--wd-soft); font-size:.72rem; text-align:right; }
.wd-dashboard-identity strong { color:var(--wd-muted); }
.wd-platform-hero { background:linear-gradient(120deg,#071b18 0%,#0a3b31 58%,#0f6a52 100%); }
.wd-platform-tools { display:grid; grid-template-columns:minmax(280px,1fr) 220px; }
.wd-platform-tools select { border:1px solid var(--wd-line); border-radius:9px; padding:11px 12px; background:#fff; font:inherit; }
.wd-tenant-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr)); gap:18px; }
.wd-tenant-card { overflow:hidden; border:1px solid var(--wd-line); border-top:4px solid var(--tenant-accent); border-radius:18px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-tenant-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:22px; border-bottom:1px solid var(--wd-line); }
.wd-tenant-card-head h3 { margin:3px 0 4px; font-size:1.25rem; }
.wd-tenant-card-head p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); font-size:.82rem; }
.wd-console-status { border-radius:999px; padding:7px 10px; background:#eaf8f3; color:#087657; font-size:.72rem; font-weight:750; text-transform:capitalize; }
.wd-console-attention,.wd-console-incident { color:#9a3412; background:#fff2df; }
.wd-tenant-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; padding:10px 22px 18px; }
.wd-tenant-facts div { padding:13px 0; border-bottom:1px solid var(--wd-line); }
.wd-tenant-facts div:nth-child(odd) { padding-right:18px; }.wd-tenant-facts div:nth-child(even) { padding-left:18px; border-left:1px solid var(--wd-line); }
.wd-tenant-facts dt { color:var(--wd-muted); font-size:.68rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.wd-tenant-facts dd { margin:5px 0 0; color:var(--wd-ink-900); font-weight:700; text-transform:capitalize; }
.wd-tenant-card-footer { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:18px 22px; color:var(--wd-muted); background:var(--wd-surface-soft); font-size:.78rem; }
.wd-console-link { color:var(--wd-green-700); text-decoration:none; white-space:nowrap; }
.wd-mobile-tenant-nav { display:none; align-items:center; gap:8px; }
.wd-mobile-tenant-nav button { min-height:42px; padding:9px 13px; }
.wd-field-app { display:grid; gap:16px; }
.wd-field-app[hidden] { display:none; }
.wd-field-app-hero { align-items:center; background:linear-gradient(118deg,var(--tenant-secondary,var(--wd-ink-950)) 0%,color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 82%,var(--tenant-primary,var(--wd-green-600))) 100%); }
.wd-field-app-hero .intro { max-width:720px; margin-bottom:0; }
.wd-field-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.wd-field-summary-button { display:flex; flex-direction:column; align-items:flex-start; min-height:132px; }
.wd-field-summary .wd-field-summary-button:nth-child(1) { --wd-metric-tone:#3b82f6; }
.wd-field-summary .wd-field-summary-button:nth-child(2) { --wd-metric-tone:var(--tenant-primary,#ff9818); }
.wd-field-summary .wd-field-summary-button:nth-child(3) { --wd-metric-tone:#28b864; }
.wd-field-summary .wd-field-summary-button:nth-child(4) { --wd-metric-tone:#dc3545; }
.wd-field-summary-button .wd-metric-action { position:relative; z-index:1; display:block; margin-top:auto; padding-top:12px; color:var(--tenant-primary,#ff8a00); font-size:.77rem; font-weight:800; }
.wd-field-summary-button[aria-pressed="true"] .wd-metric-action { color:var(--wd-green-700); }
.wd-field-workspace { display:grid; grid-template-columns:minmax(220px,248px) minmax(0,1fr); gap:18px; align-items:start; }
.wd-field-sidebar { position:sticky; top:84px; overflow:hidden; border:1px solid var(--wd-line); border-radius:18px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-field-sidebar-heading { padding:22px 20px 18px; border-bottom:1px solid var(--wd-line); background:linear-gradient(145deg,#fff 0%,var(--wd-surface-soft) 100%); }
.wd-field-sidebar-heading h3 { margin:5px 0 7px; color:var(--wd-ink-900); font-size:1.2rem; }
.wd-field-sidebar-heading p:last-child { margin:0; color:var(--wd-muted); font-size:.78rem; line-height:1.5; }
.wd-field-view-nav { display:grid; gap:6px; padding:12px; }
.wd-field-view-nav button { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:58px; padding:10px 12px; border:1px solid transparent; border-radius:11px; color:var(--wd-text); background:transparent; font:inherit; text-align:left; cursor:pointer; }
.wd-field-view-nav button:hover { border-color:var(--wd-line); background:var(--wd-surface-soft); }
.wd-field-view-nav button:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,#ff8a00) 34%,transparent); outline-offset:2px; }
.wd-field-view-nav button.active { border-color:color-mix(in srgb,var(--tenant-primary,#ff8a00) 36%,var(--wd-line)); color:var(--wd-ink-900); background:color-mix(in srgb,var(--tenant-primary,#ff8a00) 10%,#fff); box-shadow:inset 3px 0 0 var(--tenant-primary,#ff8a00); }
.wd-field-view-nav button > span:first-child { display:grid; gap:3px; }
.wd-field-view-nav strong { font-size:.8rem; }
.wd-field-view-nav small { color:var(--wd-muted); font-size:.68rem; line-height:1.3; }
.wd-field-view-nav button > span:last-child { color:var(--tenant-primary,#ff8a00); font-weight:850; }
.wd-field-sidebar-guide { display:grid; gap:6px; margin:0 12px 12px; padding:14px; border-radius:11px; color:#235478; background:#eef7ff; }
.wd-field-sidebar-guide strong { font-size:.76rem; }
.wd-field-sidebar-guide span { font-size:.7rem; line-height:1.5; }
.wd-field-main { display:grid; gap:14px; min-width:0; }
.wd-field-queue-header { display:flex; align-items:center; justify-content:space-between; gap:18px; min-height:92px; padding:18px 20px; border:1px solid var(--wd-line); border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-field-queue-header h3 { margin:4px 0 5px; color:var(--wd-ink-900); font-size:1.12rem; }
.wd-field-queue-header p:last-child { margin:0; color:var(--wd-muted); font-size:.78rem; }
.wd-field-queue-controls { display:flex; align-items:flex-end; justify-content:flex-end; gap:12px; flex:0 0 auto; }
.wd-field-queue-controls label { display:grid; gap:5px; color:var(--wd-muted); font-size:.64rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.wd-field-queue-controls select { min-width:190px; min-height:42px; border:1px solid var(--wd-line); border-radius:10px; padding:8px 34px 8px 11px; color:var(--wd-text); background:#fff; font:inherit; text-transform:none; }
.wd-field-queue-header .wd-table-count { flex:0 0 auto; margin-bottom:10px; }
.wd-field-main > .wd-search-bar { margin:0; }
.wd-field-visit-list { display:grid; grid-template-columns:1fr; gap:14px; }
.wd-field-visit-card { --wd-field-tone:#3b82f6; display:grid; align-content:start; gap:13px; min-width:0; padding:20px; border:1px solid var(--wd-line); border-top:4px solid var(--wd-field-tone); border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-field-tone-blue { --wd-field-tone:#3b82f6; }
.wd-field-tone-green { --wd-field-tone:#28b864; }
.wd-field-tone-orange { --wd-field-tone:var(--tenant-primary,#ff9818); }
.wd-field-tone-purple { --wd-field-tone:#7c5ce7; }
.wd-field-visit-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; }
.wd-field-visit-identity { min-width:0; }
.wd-field-job-number { display:block; color:var(--wd-field-tone); font:750 .68rem ui-monospace,SFMono-Regular,monospace; letter-spacing:.05em; text-transform:uppercase; }
.wd-field-visit-identity h3 { margin:4px 0; color:var(--wd-ink-900); font-size:1.05rem; line-height:1.3; }
.wd-field-visit-identity p { margin:0; color:var(--wd-muted); font-size:.76rem; }
.wd-field-visit-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:hidden; border:1px solid var(--wd-line); border-radius:11px; background:var(--wd-surface-soft); }
.wd-field-visit-facts div { display:grid; gap:3px; min-width:0; padding:11px 12px; border-right:1px solid var(--wd-line); border-bottom:1px solid var(--wd-line); }
.wd-field-visit-facts div:nth-child(2n) { border-right:0; }
.wd-field-visit-facts div:nth-last-child(-n+2) { border-bottom:0; }
.wd-field-visit-facts strong { color:var(--wd-soft); font-size:.64rem; letter-spacing:.06em; text-transform:uppercase; }
.wd-field-visit-facts span { overflow-wrap:anywhere; color:var(--wd-text); font-size:.79rem; font-weight:650; }
.wd-field-contact,.wd-field-assignment,.wd-field-return-reason,.wd-field-outcome,.wd-field-next-action { margin:0; color:var(--wd-muted); font-size:.78rem; line-height:1.5; }
.wd-field-assignment { font-weight:700; }
.wd-field-technician { display:grid; grid-template-columns:auto 1fr; align-items:center; justify-content:space-between; gap:5px 14px; padding:10px 12px; border-radius:10px; color:#3f5366; background:color-mix(in srgb,var(--wd-field-tone) 7%,#f7f9fb); }
.wd-field-technician span { font-size:.65rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.wd-field-technician strong { color:var(--wd-ink-900); font-size:.78rem; text-align:right; }
.wd-field-technician small { grid-column:1/-1; color:var(--wd-muted); font-size:.68rem; line-height:1.35; }
.wd-field-return-reason,.wd-field-next-action { padding:9px 11px; border-radius:8px; color:#7a5100; background:#fff6d7; }
.wd-field-outcome { padding:9px 11px; border-radius:8px; color:#146b4d; background:#ecf9f3; }
.wd-field-actions,.wd-field-supporting-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.wd-field-actions button,.wd-field-supporting-actions button { min-height:44px; white-space:normal; }
.wd-field-actions button:disabled,.wd-field-supporting-actions button:disabled { cursor:not-allowed; opacity:.65; }
.wd-field-camera-action { border-color:#3b82f6!important; background:#3b82f6!important; }
.wd-field-camera-action:hover { border-color:#2563eb!important; background:#2563eb!important; }
.wd-field-record-action { border-color:color-mix(in srgb,#28b864 42%,#fff)!important; color:#087657!important; background:#f5fcf8!important; }
.wd-field-evidence-action { border-color:color-mix(in srgb,#3b82f6 42%,#fff)!important; color:#2563a8!important; background:#f6f9ff!important; }
.wd-field-open-action { border-color:#c8bdf0!important; color:#5c45ad!important; background:#faf8ff!important; }
.wd-field-evidence-form,.wd-field-work-record-form { position:relative; z-index:2; margin:0; overflow:hidden; border:1px solid var(--wd-line); border-top:4px solid var(--tenant-primary,var(--wd-green-600)); border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-md); }
.wd-field-evidence-form .form-grid { padding:22px 26px; }
.wd-field-evidence-form > .form-actions,.wd-field-evidence-form > .wd-form-note,.wd-field-work-record-form > .wd-form-note { margin:0 26px 20px; }
.wd-field-work-summary { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:8px 10px; padding:10px 12px; border-radius:10px; background:#f4f7fb; color:var(--wd-muted); font-size:.75rem; }
.wd-field-work-summary small { grid-column:1/-1; color:#146b4d; }
.wd-field-material-list { display:grid; gap:9px; margin-bottom:12px; }
.wd-field-material-row { display:grid; grid-template-columns:90px 100px minmax(130px,.7fr) minmax(190px,1.4fr) auto; gap:8px; align-items:center; }
.wd-field-material-row input { width:100%; min-width:0; border:1px solid var(--wd-line); border-radius:9px; padding:10px; font:inherit; }
.wd-field-checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:4px 18px; margin-bottom:18px; }
.wd-field-checklist .check-row { min-height:44px; margin:0; }
.wd-visit-work-record { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:6px 10px; padding:10px 12px; border:1px solid var(--wd-line); border-radius:9px; background:#f7f9fc; }
.wd-visit-work-record p,.wd-visit-work-record small { grid-column:1/-1; margin:0; color:var(--wd-muted); font-size:.76rem; line-height:1.45; }
.wd-go-live { display:grid; gap:18px; }
.wd-go-live[hidden] { display:none; }
.wd-go-live-hero { background:linear-gradient(118deg,var(--tenant-secondary,var(--wd-ink-950)) 0%,color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 78%,var(--tenant-primary,var(--wd-green-600))) 100%); }
.wd-go-live-gates { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.wd-go-live-gate { position:relative; overflow:hidden; min-height:180px; padding:20px; border:1px solid var(--wd-line); border-top:4px solid #e6ad25; border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-go-live-gate::after { content:""; position:absolute; right:-32px; top:-32px; width:105px; height:105px; border-radius:50%; background:#fff3d0; }
.wd-go-live-gate.ready { border-top-color:#23a66d; }.wd-go-live-gate.ready::after { background:#e4f8ed; }
.wd-go-live-gate > span { color:var(--wd-soft); font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.wd-go-live-gate h3 { position:relative; z-index:1; margin:8px 0 16px; font-size:1.05rem; }
.wd-go-live-gate strong { position:relative; z-index:1; display:block; color:#966400; font-size:1.2rem; }.wd-go-live-gate.ready strong { color:#087657; }
.wd-go-live-gate p { position:relative; z-index:1; margin:7px 0 0; color:var(--wd-muted); font-size:.77rem; line-height:1.45; }
.wd-go-live-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); gap:18px; }
.wd-go-live-checklist { display:grid; padding:5px 20px 18px; }
.wd-go-live-check { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:14px 0; border-bottom:1px solid var(--wd-line); }
.wd-go-live-check:last-child { border-bottom:0; }.wd-go-live-check div { display:grid; gap:3px; }
.wd-go-live-check strong { color:var(--wd-ink-900); font-size:.82rem; }.wd-go-live-check span { color:var(--wd-muted); font-size:.72rem; }
.wd-go-live-check b { border-radius:999px; padding:6px 9px; color:#875d0d; background:#fff3d0; font-size:.65rem; text-transform:capitalize; }
.wd-check-ready b { color:#087657; background:#e4f8ed; }
.wd-launch-steps { display:grid; gap:0; margin:0; padding:3px 20px 18px; list-style:none; }
.wd-launch-steps li { display:grid; grid-template-columns:38px 1fr; gap:12px; align-items:center; padding:13px 0; border-bottom:1px solid var(--wd-line); }
.wd-launch-steps li:last-child { border-bottom:0; }.wd-launch-steps button { width:36px; height:36px; border:0; border-radius:50%; color:#fff; background:var(--tenant-primary,var(--wd-green-600)); font-weight:800; cursor:pointer; }
.wd-launch-steps div { display:grid; gap:3px; }.wd-launch-steps strong { color:var(--wd-ink-900); font-size:.82rem; }.wd-launch-steps span { color:var(--wd-muted); font-size:.72rem; line-height:1.4; }
.wd-import-panel { padding-bottom:20px; }.wd-import-panel .wd-panel-heading p:not(.wd-eyebrow) { max-width:760px; margin:5px 0 0; color:var(--wd-muted); font-size:.78rem; line-height:1.5; }
.wd-import-controls { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; padding:18px 20px 8px; border-top:1px solid var(--wd-line); }
.wd-file-picker { display:grid; flex:1 1 360px; gap:6px; color:var(--wd-muted); font-size:.72rem; font-weight:750; }
.wd-file-picker input { min-height:43px; padding:9px 10px; border:1px solid var(--wd-line); border-radius:9px; background:#fff; }
.wd-import-panel > .wd-form-note { margin:7px 20px 0; }.wd-import-preview { padding:14px 20px 0; }
.wd-import-preview .wd-metric-grid { margin-bottom:12px; }.wd-import-issue-list { margin:0; padding:13px 18px 13px 38px; border-radius:10px; color:#9e2c21; background:#fff0ee; font-size:.76rem; line-height:1.6; }
.wd-import-ready { margin:0; padding:13px 16px; border-radius:10px; color:#087657; background:#e9f8f1; font-size:.78rem; font-weight:700; }
.wd-last-import { margin:15px 20px 0; padding:12px 14px; border:1px solid var(--wd-line); border-radius:10px; color:var(--wd-muted); background:var(--wd-surface-soft); font-size:.75rem; line-height:1.45; }
.wd-operations-calendar { display:grid; gap:16px; }
.wd-operations-calendar[hidden] { display:none; }
.wd-calendar-hero { background:linear-gradient(118deg,var(--tenant-secondary,var(--wd-ink-950)) 0%,color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 76%,var(--tenant-primary,var(--wd-green-600))) 100%); }
.wd-calendar-hero .intro { max-width:760px; margin-bottom:0; }
.wd-calendar-toolbar { display:grid; grid-template-columns:repeat(3,minmax(150px,1fr)) auto; gap:12px; align-items:end; padding:14px 16px; border:1px solid var(--wd-line); border-radius:14px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-calendar-toolbar:has(#calendar-service-type-field:not([hidden])) { grid-template-columns:repeat(4,minmax(150px,1fr)) auto; }
.wd-calendar-toolbar label { display:grid; gap:6px; color:var(--wd-muted); font-size:.7rem; font-weight:750; letter-spacing:.04em; text-transform:uppercase; }
.wd-calendar-toolbar select { min-height:42px; border:1px solid var(--wd-line); border-radius:9px; padding:9px 11px; color:var(--wd-text); background:#fff; font:inherit; text-transform:none; }
.wd-calendar-metrics { grid-template-columns:repeat(7,minmax(0,1fr)); }
.wd-calendar-summary-button { display:flex; flex-direction:column; align-items:flex-start; }
.wd-calendar-summary-button .wd-metric-action { position:relative; z-index:1; display:block; margin-top:auto; padding-top:10px; color:var(--wd-metric-tone); font-size:.7rem; font-weight:800; }
.wd-calendar-summary-button[aria-pressed="true"] { border-color:var(--wd-metric-tone); box-shadow:0 0 0 2px color-mix(in srgb,var(--wd-metric-tone) 18%,transparent),var(--wd-shadow-sm); }
.wd-calendar-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,320px); gap:16px; align-items:start; }
.wd-calendar-primary { display:grid; min-width:0; gap:16px; }
.wd-calendar-panel,.wd-calendar-attention { overflow:hidden; border:1px solid var(--wd-line); border-radius:16px; background:#fff; box-shadow:var(--wd-shadow-sm); }
.wd-calendar-panel > .wd-table-heading,.wd-calendar-attention > .wd-table-heading { padding:18px 20px; }
.wd-calendar-panel .wd-table-heading h3,.wd-calendar-attention .wd-table-heading h3 { margin:2px 0 0; }
.wd-calendar-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.wd-calendar-legend span { display:inline-flex; align-items:center; gap:5px; color:var(--wd-muted); font-size:.67rem; font-weight:700; }
.wd-calendar-legend span::before { content:""; width:9px; height:9px; border-radius:3px; background:#dbe3ec; }
.wd-calendar-legend .service::before { background:var(--tenant-primary,var(--wd-green-600)); }
.wd-calendar-legend .breakdown::before { background:#e24a3b; }
.wd-calendar-legend .project::before { background:#3b82f6; }
.wd-calendar-legend .leave::before { background:#a855f7; }
.wd-calendar-legend .available::before { background:#31b66d; }
.wd-calendar-legend .conflict::before { background:#d92d20; }
.wd-calendar-week { display:grid; grid-template-columns:repeat(7,minmax(136px,1fr)); min-width:960px; border-top:1px solid var(--wd-line); }
.wd-calendar-panel:has(.wd-calendar-week) { overflow-x:auto; }
.wd-calendar-day { min-height:260px; border-right:1px solid var(--wd-line); background:linear-gradient(#fbfcfe,#fff 72px); }
.wd-calendar-day:last-child { border-right:0; }
.wd-calendar-day.today { background:linear-gradient(color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 9%,white),#fff 78px); }
.wd-calendar-day-head { position:sticky; top:0; z-index:1; display:grid; gap:2px; padding:12px 11px; border-bottom:1px solid var(--wd-line); background:inherit; }
.wd-calendar-day-head span { color:var(--wd-muted); font-size:.65rem; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.wd-calendar-day-head strong { color:var(--wd-ink-900); font-size:.95rem; }
.wd-calendar-day-items { display:grid; gap:7px; padding:9px; }
.wd-calendar-booking { display:grid; gap:3px; width:100%; min-width:0; padding:9px 10px; border:1px solid transparent; border-left:4px solid var(--tenant-primary,var(--wd-green-600)); border-radius:8px; color:inherit; background:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 8%,white); font:inherit; text-align:left; cursor:pointer; }
.wd-calendar-booking.project { border-left-color:#3b82f6; background:#eef5ff; }
.wd-calendar-booking.breakdown { border-left-color:#e24a3b; background:#fff1ef; }
.wd-calendar-booking.has-conflict { border-left-color:#d92d20; background:#fff0ee; }
.wd-calendar-booking strong { overflow:hidden; color:var(--wd-ink-900); font-size:.72rem; line-height:1.35; text-overflow:ellipsis; }
.wd-calendar-booking span { color:var(--wd-muted); font-size:.63rem; line-height:1.35; }
.wd-calendar-booking .wd-calendar-booking-action { margin-top:4px; color:#345d7a; font-weight:800; }
.wd-calendar-booking:hover { border-color:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 34%,var(--wd-line)); box-shadow:0 7px 15px rgba(16,44,70,.1); transform:translateY(-1px); }
.wd-calendar-booking:focus-visible,.wd-calendar-attention-item:focus-visible,.wd-resource-state:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,#ff9818) 34%,transparent); outline-offset:2px; }
.wd-calendar-empty-day { padding:18px 8px; color:var(--wd-soft); font-size:.67rem; text-align:center; }
.wd-resource-calendar { overflow-x:auto; border-top:1px solid var(--wd-line); }
.wd-resource-calendar-head,.wd-resource-calendar-row { display:grid; grid-template-columns:minmax(180px,1.35fr) repeat(7,minmax(92px,1fr)); min-width:860px; }
.wd-resource-calendar-head { color:var(--wd-soft); background:var(--wd-surface-soft); font-size:.65rem; font-weight:750; text-transform:uppercase; }
.wd-resource-calendar-head > div,.wd-resource-calendar-row > div,.wd-resource-calendar-row > button { min-width:0; padding:10px; border-right:1px solid var(--wd-line); }
.wd-resource-calendar-head > div:last-child,.wd-resource-calendar-row > div:last-child,.wd-resource-calendar-row > button:last-child { border-right:0; }
.wd-resource-calendar-row { border-top:1px solid var(--wd-line); }
.wd-resource-calendar-row:first-of-type { border-top:0; }
.wd-resource-person { display:grid; gap:3px; }
.wd-resource-person strong { overflow:hidden; color:var(--wd-ink-900); font-size:.75rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-resource-person span { color:var(--wd-muted); font-size:.64rem; }
.wd-resource-state { display:grid; place-items:center; min-height:45px; border-top:0; border-bottom:0; border-left:0; border-radius:8px; color:#087657; background:#e9f8f1; font-size:.62rem; font-weight:750; text-align:center; cursor:pointer; }
.wd-resource-state:hover { filter:saturate(1.08); box-shadow:inset 0 0 0 2px currentColor; }
.wd-resource-state.booked { color:#1d4f91; background:#edf4ff; }
.wd-resource-state.leave { color:#6b21a8; background:#f6edff; }
.wd-resource-state.unavailable { color:#8b4a00; background:#fff3df; }
.wd-resource-state.conflict { color:#b42318; background:#fff0ee; }
.wd-calendar-attention-list { display:grid; }
.wd-calendar-attention-item { display:grid; gap:4px; width:100%; padding:14px 16px; border:0; border-top:1px solid var(--wd-line); border-radius:0; color:inherit; background:#fff; font:inherit; text-align:left; cursor:pointer; }
.wd-calendar-attention-item:first-child { border-top:0; }
.wd-calendar-attention-item strong { color:var(--wd-ink-900); font-size:.76rem; }
.wd-calendar-attention-item span { color:var(--wd-muted); font-size:.68rem; line-height:1.45; }
.wd-calendar-attention-item .wd-calendar-attention-action { margin-top:4px; color:#345d7a; font-weight:800; }
.wd-calendar-attention-item:hover { background:#f8fbfd; }
.wd-calendar-attention-item.conflict { box-shadow:inset 4px 0 #d92d20; }
.wd-calendar-attention-item.attention { box-shadow:inset 4px 0 #f59e0b; }
.wd-calendar-empty { padding:24px 18px; color:var(--wd-muted); font-size:.75rem; line-height:1.5; text-align:center; }
.wd-calendar-availability-form { scroll-margin-top:18px; }

@media(min-width:1800px){
  .wd-studio-hero,.wd-leave-actions,.customer-form,.wd-table-shell,.wd-units-panel{border-radius:20px}
  .wd-people-layout{grid-template-columns:minmax(0,2.7fr) minmax(380px,.8fr)}
  .wd-metric-grid{gap:18px}
  .wd-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .form-grid{column-gap:20px}
}

@media(min-width:2400px){
  .wd-provider-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}

@media(max-width:1280px){ .app{grid-template-columns:210px minmax(0,1fr)} aside{padding-left:12px;padding-right:12px}.sidebar-brand{gap:8px}.sidebar-brand img{flex-basis:43px;width:43px;height:43px}.sidebar-brand-copy strong{font-size:1.25rem} header{padding-left:26px;padding-right:26px} main{padding-left:26px;padding-right:26px}.wd-people-layout{grid-template-columns:1fr}.wd-people-layout .wd-table{min-width:820px}.wd-operations-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.wd-dashboard-health-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-calendar-layout{grid-template-columns:1fr}.wd-calendar-attention{order:-1}.wd-calendar-metrics{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media(max-width:1050px){ .wd-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-toolbar{grid-template-columns:1fr 1fr}.wd-toolbar .wd-search-field{grid-column:1/-1}.three-col{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col .span-2{grid-column:1/-1}.wd-studio-tabs{width:100%}.wd-scope-options{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-operations-layout,.wd-go-live-layout{grid-template-columns:1fr}.wd-visit-workspace-grid{grid-template-columns:1fr}.wd-visit-panel,.wd-visit-panel:nth-child(2){border-right:0}.wd-communication-panel{grid-column:auto}.wd-field-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-calendar-toolbar{grid-template-columns:1fr 1fr}.wd-calendar-toolbar button{grid-column:1/-1}.wd-assets-toolbar{grid-template-columns:1fr 1fr} }
@media(max-width:1050px){ .wd-field-workspace{grid-template-columns:1fr}.wd-field-sidebar{position:static}.wd-field-view-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-field-sidebar-guide{margin-top:0} }
@media(max-width:900px){ .app{grid-template-columns:1fr} aside{display:none} header,main{padding-left:22px;padding-right:22px}header .role-pill{display:none}.tenant-mode .wd-mobile-tenant-nav{display:flex}.wd-studio-hero,.wd-leave-actions,.wd-integration-intro{align-items:flex-start;flex-direction:column;padding:24px}.wd-security-seal{flex:0 1 auto}.wd-hero-actions{width:100%;flex-wrap:wrap}.wd-hero-actions .wd-workspace-navigation{flex:1}.wd-hero-actions .wd-workspace-navigation button{width:100%}.wd-hero-actions button{flex:1}.wd-toolbar{grid-template-columns:1fr}.wd-toolbar .wd-search-field{grid-column:auto}.wd-provider-grid{grid-template-columns:1fr}.wd-section-heading{align-items:flex-start;flex-direction:column}.wd-section-heading>p{text-align:left}.wd-section-actions{width:100%;align-items:flex-start;flex-direction:column}.wd-section-actions p{text-align:left}.wd-operations-hero{align-items:flex-start}.wd-quick-actions{align-items:flex-start;flex-direction:column}.wd-quick-action-buttons{justify-content:flex-start} }
@media(max-width:700px){ header{height:auto;min-height:68px;gap:12px}.role-pill{text-align:center}.stats,.modules,.three-col,.form-grid,.wd-platform-tools,.wd-compact-form{grid-template-columns:1fr}.span-2,.three-col .span-2,.wd-compact-form .span-2{grid-column:auto}.wd-compact-form .form-actions,.wd-compact-form .wd-form-note{grid-column:auto}.wd-metric-grid{grid-template-columns:1fr 1fr}.wd-access-options{grid-template-columns:1fr}.wd-studio-tabs{border-radius:12px}.wd-table-heading{align-items:flex-start}.wd-people-layout .wd-table{min-width:720px}.wd-structure-card{grid-template-columns:38px 1fr;margin-left:calc(var(--wd-tree-depth) * 14px)}.wd-structure-facts{grid-column:2;justify-content:flex-start}.wd-tenant-card-footer,.wd-visit-workspace-head{align-items:flex-start;flex-direction:column}.wd-visit-workspace-actions{width:100%;justify-content:stretch}.wd-visit-workspace-actions>button{flex:1}.wd-operations-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-dashboard-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wd-dashboard-week-grid div{border-right:0;border-bottom:1px solid var(--wd-line)}.wd-dashboard-week-grid div:last-child{grid-column:1/-1;border-bottom:0}.wd-panel-heading{align-items:flex-start;flex-direction:column}.wd-dashboard-identity{text-align:left}.wd-go-live-gates{grid-template-columns:1fr}.wd-import-controls{align-items:stretch;flex-direction:column}.wd-import-controls>*{width:100%}.form-title > .status-pill{align-self:center;min-height:54px}.wd-asset-pagination{width:100%}.wd-asset-pagination button{flex:1} }
@media(max-width:520px){ header{padding:10px 14px}header>div:first-child{min-width:0}header>div:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wd-mobile-tenant-nav button{padding:8px 10px;font-size:.76rem}main{padding:20px 14px 44px}.wd-metric-grid,.wd-access-options,.wd-scope-options,.wd-operations-metrics,.wd-dashboard-health-grid,.wd-field-summary{grid-template-columns:1fr}.wd-studio-hero h2{font-size:1.7rem}.wd-operations-chips{align-items:flex-start;flex-direction:column}.wd-quick-action-buttons{width:100%}.wd-quick-action-buttons button{width:100%}.wd-field-visit-list{grid-template-columns:1fr}.wd-field-visit-card{padding:16px}.wd-field-toolbar{justify-content:stretch}.wd-field-toolbar label,.wd-field-toolbar select{width:100%}.wd-field-visit-facts{grid-template-columns:1fr}.wd-field-visit-facts div,.wd-field-visit-facts div:nth-child(2n),.wd-field-visit-facts div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--wd-line)}.wd-field-visit-facts div:last-child{border-bottom:0}.wd-field-actions,.wd-field-supporting-actions{grid-template-columns:1fr}.wd-field-evidence-form .form-grid{padding:18px}.wd-field-evidence-form>.form-actions,.wd-field-evidence-form>.wd-form-note,.wd-field-work-record-form>.wd-form-note{margin-left:18px;margin-right:18px}.wd-field-material-row{grid-template-columns:1fr 1fr}.wd-field-material-row input:nth-of-type(3),.wd-field-material-row input:nth-of-type(4),.wd-field-material-row button{grid-column:1/-1}.wd-field-checklist{grid-template-columns:1fr}.wd-field-work-summary,.wd-visit-work-record{grid-template-columns:1fr}.wd-field-work-summary small,.wd-visit-work-record p,.wd-visit-work-record small{grid-column:1} }
@media(max-width:520px){ .wd-field-view-nav{grid-template-columns:1fr}.wd-field-queue-header{align-items:flex-start;flex-direction:column}.wd-field-queue-controls{align-items:stretch;flex-direction:column;width:100%}.wd-field-queue-controls label,.wd-field-queue-controls select{width:100%}.wd-field-queue-header .wd-table-count{align-self:flex-start;margin-bottom:0}.wd-field-summary-button{min-height:120px} }
@media(max-width:640px){ .wd-health-facts{grid-template-columns:1fr}.wd-health-fact:nth-child(odd),.wd-health-fact:nth-child(even){padding-left:0;padding-right:0;border-left:0}.wd-health-card-head,.wd-health-alert{align-items:flex-start;flex-direction:column} }
@media(prefers-reduced-motion:reduce){ *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation-duration:.001ms!important;animation-iteration-count:1!important} }
.wd-console-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.wd-console-actions button { width:auto; }
.wd-dialog { width:min(680px, calc(100vw - 32px)); border:0; border-radius:18px; padding:0; box-shadow:0 24px 80px rgba(13,17,23,.28); }
.wd-dialog::backdrop { background:rgba(5,25,31,.55); backdrop-filter:blur(3px); }
.wd-dialog form { padding:24px; }
.wd-record-dialog { width:min(940px,calc(100vw - 32px)); max-height:min(900px,calc(100vh - 32px)); overflow:auto; color:var(--wd-text); }
.wd-record-dialog-shell { padding:0 28px 28px; }
.wd-record-dialog-head { position:sticky; top:0; z-index:2; display:flex; align-items:flex-start; justify-content:space-between; gap:22px; margin:0 -28px 24px; padding:26px 28px 22px; border-bottom:1px solid var(--wd-line); background:linear-gradient(135deg,#f9fbfa 0%,#fff 70%); }
.wd-record-dialog-head h3 { margin:3px 0 5px; color:var(--wd-ink-900); font-size:1.55rem; letter-spacing:-.025em; }
.wd-record-dialog-head p:not(.wd-eyebrow) { margin:0; color:var(--wd-muted); line-height:1.5; }
.wd-record-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.wd-record-section { min-width:0; padding:18px; border:1px solid var(--wd-line); border-radius:14px; background:#fff; box-shadow:0 7px 20px rgba(16,44,70,.045); }
.wd-record-section-wide { grid-column:1/-1; }
.wd-record-section h4 { margin:0 0 15px; color:var(--wd-ink-900); font-size:.95rem; }
.wd-record-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 18px; margin:0; }
.wd-record-fact { min-width:0; }
.wd-record-fact-wide { grid-column:1/-1; }
.wd-record-fact dt { margin:0 0 4px; color:var(--wd-soft); font-size:.67rem; font-weight:800; letter-spacing:.075em; text-transform:uppercase; }
.wd-record-fact dd { margin:0; color:var(--wd-ink-900); overflow-wrap:anywhere; white-space:pre-wrap; line-height:1.5; }
.wd-record-dialog-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; padding-top:20px; border-top:1px solid var(--wd-line); }
.wd-record-dialog-actions button { min-height:44px; }
.wd-dialog-message { min-height:20px; margin:14px 0 0; color:#a32121; }
.wd-dialog-message:empty { display:none; }
.wd-destructive-action { border-color:#dfb3b3!important; color:#a32121!important; background:#fff8f8!important; }
.wd-muted-record { color:var(--wd-muted); }
@media(max-width:700px){.wd-record-dialog-shell{padding:0 18px 20px}.wd-record-dialog-head{margin:0 -18px 18px;padding:20px 18px 18px}.wd-record-sections{grid-template-columns:1fr}.wd-record-section-wide{grid-column:auto}.wd-record-facts{grid-template-columns:1fr}.wd-record-fact-wide{grid-column:auto}}
/* Connected service job workspace; tabs keep complete records easy to scan. */
.wd-job-tabs{display:flex;gap:4px;overflow-x:auto;padding:12px 16px 0;border-bottom:1px solid #dfe5ec;background:#fff}
.wd-job-tabs button{flex:0 0 auto;border:0;border-bottom:3px solid transparent;background:transparent;color:#526274;padding:12px 14px;border-radius:0;font-size:13px;min-height:46px}
.wd-job-tabs button[aria-selected="true"]{color:#13334c;border-bottom-color:#ff8a00;font-weight:750;background:#fff8ef}
.wd-job-tabs button:focus-visible{outline:2px solid #2879da;outline-offset:-3px}
.wd-visit-workspace .wd-visit-workspace-grid{display:block}
.wd-visit-workspace [data-job-panel][hidden]{display:none!important}
.wd-visit-workspace [data-job-panel]{border:0;padding:22px}
.wd-job-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 24px;margin:0 0 22px}
.wd-job-fact dt{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#6c7b8b;margin-bottom:7px}
.wd-job-fact dd{margin:0;color:#14344e;font-size:14px;overflow-wrap:anywhere;line-height:1.5}
.wd-job-block{margin:20px 0;padding:18px 0;border-top:1px solid #e4e9ef}
.wd-job-block h4{margin:0 0 10px;color:#16364e;font-size:14px}
.wd-job-copy{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;color:#42556b;font-size:14px;margin:8px 0}
.wd-job-timeline-item{padding:14px 18px;margin:0 0 12px;border-left:3px solid #ef9c35;background:#f6f8fb;border-radius:0 8px 8px 0}
.wd-job-timeline-item small{color:#66778a;font-size:12px}
.wd-job-pager{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:18px 0}
.wd-job-unavailable{color:#8a5600}
.wd-service-job button{background:transparent;border:0;padding:0;text-align:left;color:#18476c;font-weight:750;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.wd-service-table td{vertical-align:top}
.wd-visit-workspace-head h3{font-size:19px;line-height:1.45}
.wd-visit-workspace-head p:not(.wd-eyebrow){font-size:14px;color:#42566b;line-height:1.6}
@media(max-width:1000px){.wd-job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.wd-job-facts{grid-template-columns:1fr}.wd-visit-workspace [data-job-panel]{padding:16px}.wd-job-tabs{padding-left:8px}.wd-job-tabs button{padding:12px 10px}}

/* Every workspace banner uses one action system. Controls, including the
   shared Home wrapper and role-specific actions, receive equal grid cells. */
.wd-studio-hero {
  flex-direction:column; align-items:stretch; gap:20px;
}
.wd-studio-hero > div:first-child {
  min-width:0;
}
.wd-studio-hero > .wd-hero-actions {
  display:grid; width:100%; min-width:0; align-items:stretch;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));
  grid-auto-rows:56px; gap:10px;
}
.wd-studio-hero > .wd-hero-actions > button,
.wd-studio-hero > .wd-hero-actions > .wd-workspace-navigation {
  width:100%; min-width:0; height:100%; margin:0;
}
.wd-studio-hero > .wd-hero-actions button {
  display:flex; align-items:center; justify-content:center;
  width:100%; min-width:0; min-height:56px; height:56px;
  padding:8px 12px; font-size:.875rem; line-height:1.2;
  white-space:normal; overflow-wrap:anywhere; text-align:center;
}

/* Staff-mapping actions use two equal columns and collapse cleanly on phones. */
.wd-staff-mapping-intro > div:first-child {
  min-width:0;
}
.wd-staff-mapping-intro {
  align-items:stretch; flex-direction:column; gap:18px;
}
.wd-staff-mapping-intro > .wd-hero-actions {
  display:grid; width:100%; min-width:0; align-items:stretch;
  grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;
}
.wd-staff-mapping-intro > .wd-hero-actions button {
  display:flex; align-items:center; justify-content:center;
  width:100%; min-width:0; min-height:52px; height:100%;
  padding:10px 16px; line-height:1.25;
  white-space:nowrap; text-align:center;
}
@media(max-width:520px) {
  .wd-staff-mapping-intro > .wd-hero-actions {
    grid-template-columns:1fr;
  }
  .wd-staff-mapping-intro > .wd-hero-actions button {
    white-space:normal;
  }
}

/* Unified application actions and record workspaces. */
.primary,
.secondary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:11px;
  padding:10px 16px;
  font-size:.86rem;
  font-weight:740;
  line-height:1.2;
  text-decoration:none;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}
.secondary { border:1px solid var(--wd-line-strong); color:var(--wd-ink-900); background:#fff; }
.secondary:hover { border-color:#b8c4cf; background:#f8fafb; box-shadow:0 6px 16px rgba(16,44,70,.07); transform:translateY(-1px); }
.primary:active,.secondary:active { transform:translateY(0); }

.wd-table-shell,
.customer-table {
  border-color:#dbe2e8;
  border-radius:18px;
  box-shadow:0 12px 34px rgba(16,44,70,.055);
}
.wd-table-heading { min-height:68px; padding:17px 20px; background:linear-gradient(180deg,#fff,#fbfcfd); }
.wd-table th,.wd-customer-table th { color:#718093; background:#f6f8fa; }
.wd-table td,.wd-customer-table td { padding-top:17px; padding-bottom:17px; }
.wd-customer-table { overflow:hidden; }
.wd-customer-table table { min-width:820px; }
.wd-customer-table tbody tr,.wd-table tbody tr { transition:background .16s ease,box-shadow .16s ease; }

.wd-record-link {
  display:inline-flex;
  align-items:center;
  gap:7px;
  max-width:100%;
  border:0;
  border-radius:7px;
  padding:3px 4px 3px 0;
  color:#153f61;
  background:transparent;
  font:inherit;
  font-weight:760;
  line-height:1.35;
  text-align:left;
  text-decoration:none;
  cursor:pointer;
  transition:color .16s ease,background .16s ease;
}
.wd-record-link::after { content:"›"; color:#91a0ad; font-size:1.15em; line-height:1; transition:transform .16s ease,color .16s ease; }
.wd-record-link:hover { color:var(--tenant-primary,var(--wd-green-700)); background:transparent; }
.wd-record-link:hover::after { color:currentColor; transform:translateX(2px); }
.wd-record-link:focus-visible { outline:2px solid #2879da; outline-offset:3px; border-radius:5px; }
.wd-row-open::after { content:"›"; }
.wd-table-action {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  border:1px solid #ced8e1;
  border-radius:10px;
  padding:8px 12px;
  color:#153f61;
  background:#fff;
  font:inherit;
  font-size:.8rem;
  font-weight:760;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 3px 9px rgba(16,44,70,.04);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;
}
.wd-table-action::after { content:"→"; color:#748698; transition:transform .16s ease; }
.wd-table-action:hover { border-color:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 45%,#cbd5df); background:#f8fbfa; box-shadow:0 7px 16px rgba(16,44,70,.08); transform:translateY(-1px); }
.wd-table-action:hover::after,.wd-clickable-row:hover .wd-table-action::after { transform:translateX(3px); }
.wd-table-action:focus-visible { outline:2px solid #2879da; outline-offset:2px; }
.wd-clickable-row:hover { background:#f7faf9!important; box-shadow:inset 3px 0 0 color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 72%,#fff); }
.wd-register-control,
.wd-workspace-status-action {
  box-sizing:border-box;
  display:grid;
  align-content:center;
  gap:3px;
  width:100%;
  min-height:62px;
  border:1px solid #4d6679;
  border-radius:11px;
  padding:9px 11px;
  color:#fff;
  background:linear-gradient(145deg,#1d3a52 0%,#29475d 100%);
  text-align:left;
  cursor:pointer;
  box-shadow:0 4px 10px rgba(16,44,70,.12),inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.wd-register-control:hover,
.wd-workspace-status-action:hover {
  border-color:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 74%,#7d8fa0);
  background:linear-gradient(145deg,#16344e 0%,#31516a 100%);
  box-shadow:0 8px 18px rgba(16,44,70,.2),0 0 0 1px color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 28%,transparent);
  transform:translateY(-1px);
}
.wd-register-control:focus-visible,
.wd-workspace-status-action:focus-visible { outline:3px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 48%,#fff); outline-offset:2px; }
.wd-register-control-kicker { color:#ffb45f; font-size:.58rem; font-weight:800; letter-spacing:.085em; line-height:1.2; text-transform:uppercase; }
.wd-register-control-value { overflow-wrap:anywhere; color:#fff; font-size:.78rem; font-weight:780; line-height:1.3; }
.wd-register-control-detail { overflow:hidden; color:#c8d5df; font-size:.66rem; font-weight:600; line-height:1.3; text-overflow:ellipsis; }
.wd-register-job .wd-register-control-value { font-size:.82rem; }
.wd-register-visits { text-align:center; }
.wd-register-visits .wd-register-control-value { font-size:1rem; }
.wd-register-attendance .wd-register-control-value { white-space:nowrap; }
.wd-workspace-status-action { width:190px; min-height:58px; padding-inline:15px; }
.wd-workspace-status-action:disabled { cursor:not-allowed; opacity:.68; transform:none; }
.wd-register-inline-editor { display:grid; gap:8px; min-width:150px; padding:10px; border:1px solid color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 60%,#c7d2dc); border-radius:11px; background:#fffaf3; box-shadow:0 9px 24px rgba(16,44,70,.15); }
.wd-register-editor-fields { display:grid; gap:7px; }
.wd-register-editor-fields label { display:grid; gap:4px; color:#5f6f7f; font-size:.62rem; font-weight:780; text-transform:uppercase; }
.wd-register-editor-fields select,
.wd-register-editor-fields input { box-sizing:border-box; width:100%; min-width:0; border:1px solid #bdcbd6; border-radius:8px; padding:8px 9px; color:#17344d; background:#fff; font:inherit; font-size:.73rem; }
.wd-register-editor-actions { display:flex; gap:6px; }
.wd-register-editor-actions button { min-height:31px; padding:6px 9px; font-size:.68rem; }
.wd-register-editor-message { color:#67798a; font-size:.65rem; line-height:1.35; }
.wd-register-editor-message.error { color:#a32121; }
.wd-visit-workspace-actions > .wd-register-inline-editor { width:min(360px,100%); }

/* Record rows already carry their own interaction state; reserve arrows for
   explicit action buttons so names read as application data, not web links. */
.wd-record-link::after,
.wd-register-control::after,
.wd-workspace-status-action::after { content:none; }
.wd-text-action { min-height:30px; border:1px solid #ead0d0; border-radius:8px; padding:5px 8px; color:var(--wd-danger,#a32121); background:#fffafa; text-decoration:none; }
.wd-text-action:hover { border-color:#dbaaaa; color:#7d1717; background:#fff3f3; }

.wd-record-dialog {
  width:min(1000px,calc(100vw - 32px));
  max-height:min(900px,calc(100vh - 32px));
  overflow:hidden;
  border:1px solid rgba(255,255,255,.22);
  border-radius:24px;
  background:#f3f6f8;
  box-shadow:0 36px 110px rgba(5,25,40,.34);
}
.wd-record-dialog-shell { display:flex; flex-direction:column; max-height:min(900px,calc(100vh - 32px)); padding:0; }
.wd-record-dialog-head {
  position:relative;
  top:auto;
  flex:0 0 auto;
  align-items:center;
  margin:0;
  padding:27px 30px;
  border:0;
  color:#fff;
  background:
    radial-gradient(circle at 88% 15%,rgba(255,153,24,.17),transparent 35%),
    linear-gradient(128deg,#102f48 0%,#263b49 62%,#66492f 100%);
}
.wd-record-dialog-head h3 { margin:3px 0 4px; color:#fff; font-size:1.65rem; }
.wd-record-dialog-head p:not(.wd-eyebrow) { color:rgba(235,243,248,.77); }
.wd-record-dialog-head .wd-eyebrow { color:#ff9a1c; }
.wd-dialog-close { border-color:rgba(255,255,255,.28); color:#fff; background:rgba(255,255,255,.09); box-shadow:none; }
.wd-dialog-close:hover { border-color:rgba(255,255,255,.48); color:#fff; background:rgba(255,255,255,.15); }
.wd-record-sections { flex:1 1 auto; overflow:auto; gap:16px; padding:24px 28px; }
.wd-record-section { padding:20px; border-color:#dbe3e9; border-radius:17px; box-shadow:0 9px 24px rgba(16,44,70,.055); }
.wd-record-section h4 { display:flex; align-items:center; gap:9px; margin-bottom:18px; font-size:1rem; }
.wd-record-section h4::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--tenant-primary,var(--wd-green-600)); box-shadow:0 0 0 5px color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 12%,transparent); }
.wd-record-facts { gap:17px 22px; }
.wd-record-fact dt { color:#788798; }
.wd-record-fact dd { font-size:.92rem; }
.wd-record-dialog-actions { flex:0 0 auto; margin:0; padding:17px 28px; border-top:1px solid #dce4ea; background:rgba(255,255,255,.95); box-shadow:0 -8px 24px rgba(16,44,70,.045); }
.wd-record-dialog-actions .primary:first-child { margin-right:auto; }
.wd-record-dialog .wd-dialog-message { flex:0 0 auto; min-height:0; margin:0; padding:0 28px 16px; background:#fff; }

.wd-customer-dialog { width:min(1080px,calc(100vw - 32px)); }
.wd-customer-dialog-identity { display:flex; align-items:center; gap:16px; min-width:0; }
.wd-customer-avatar {
  display:grid;
  flex:0 0 54px;
  width:54px;
  height:54px;
  place-items:center;
  border:1px solid rgba(255,255,255,.2);
  border-radius:16px;
  color:#fff;
  background:linear-gradient(145deg,#ff9c1b,#e36f00);
  box-shadow:0 10px 24px rgba(218,105,0,.28);
  font-size:1.2rem;
  font-weight:820;
}
.wd-customer-workspace {
  display:grid;
  flex:1 1 auto;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  overflow:auto;
  padding:24px 28px;
}
.wd-customer-panel {
  min-width:0;
  border:1px solid #dbe3e9;
  border-radius:18px;
  padding:20px;
  background:#fff;
  box-shadow:0 9px 24px rgba(16,44,70,.055);
}
.wd-customer-panel-wide { grid-column:1/-1; }
.wd-customer-panel-head { display:flex; align-items:flex-start; gap:12px; margin-bottom:19px; }
.wd-customer-panel-index {
  display:grid;
  flex:0 0 33px;
  width:33px;
  height:33px;
  place-items:center;
  border-radius:10px;
  color:#fff;
  background:#173a55;
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.07em;
}
.wd-customer-panel-head h4 { margin:0; color:var(--wd-ink-900); font-size:1rem; }
.wd-customer-panel-head p { margin:3px 0 0; color:var(--wd-muted); font-size:.78rem; line-height:1.45; }
.wd-customer-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 22px; margin:0; }
.wd-customer-fact dt { margin:0 0 5px; color:#788798; font-size:.66rem; font-weight:800; letter-spacing:.075em; text-transform:uppercase; }
.wd-customer-fact dd { margin:0; color:#183750; font-size:.92rem; line-height:1.5; overflow-wrap:anywhere; white-space:pre-wrap; }
.wd-customer-profile-meta { grid-column:1/-1; margin:0; padding:3px 4px 0; color:#83909d; font-size:.72rem; text-align:right; }

@media(max-width:700px) {
  .wd-record-dialog-shell { max-height:calc(100vh - 20px); }
  .wd-record-dialog-head { align-items:flex-start; margin:0; padding:21px 18px; }
  .wd-record-dialog-head h3 { font-size:1.35rem; }
  .wd-record-sections,.wd-customer-workspace { grid-template-columns:1fr; padding:18px; }
  .wd-record-section-wide,.wd-customer-panel-wide { grid-column:auto; }
  .wd-record-dialog-actions { padding:15px 18px; }
  .wd-record-dialog-actions .primary:first-child { margin-right:0; }
  .wd-customer-avatar { flex-basis:44px; width:44px; height:44px; border-radius:13px; }
  .wd-customer-facts { grid-template-columns:1fr; }
  .wd-customer-profile-meta { grid-column:auto; text-align:left; }
}

/* Calm application surfaces: the Operations Calendar remains the spatial
   benchmark while every other module uses compact, consistently sized actions. */
.wd-studio-hero:not(.wd-calendar-hero) {
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:28px 30px;
}
.wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions {
  display:flex;
  flex:0 0 auto;
  width:auto;
  max-width:62%;
  align-items:center;
  justify-content:flex-end;
  grid-template-columns:none;
  grid-auto-rows:auto;
  flex-wrap:wrap;
  gap:10px;
}
.wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > button,
.wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > .wd-workspace-navigation,
.wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions .wd-workspace-navigation button {
  width:auto;
  min-width:148px;
  min-height:46px;
  height:46px;
}

/* Reuse the quiet dashboard-card language for summaries across every module. */
.wd-metric {
  --wd-metric-tone:var(--tenant-primary,#ff9818);
  position:relative;
  overflow:hidden;
  min-height:112px;
  border-color:#dbe3e9;
  border-bottom:3px solid var(--wd-metric-tone);
  border-radius:16px;
  background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);
  box-shadow:0 8px 22px rgba(16,44,70,.055);
}
.wd-metric::after {
  content:"";
  position:absolute;
  top:-38px;
  right:-34px;
  width:86px;
  height:86px;
  border-radius:50%;
  background:color-mix(in srgb,var(--wd-metric-tone) 9%,transparent);
}
.wd-metric-grid .wd-metric:nth-child(6n+1) { --wd-metric-tone:#3b82f6; }
.wd-metric-grid .wd-metric:nth-child(6n+2) { --wd-metric-tone:var(--tenant-primary,#ff9818); }
.wd-metric-grid .wd-metric:nth-child(6n+3) { --wd-metric-tone:#3b82f6; }
.wd-metric-grid .wd-metric:nth-child(6n+4) { --wd-metric-tone:#28b864; }
.wd-metric-grid .wd-metric:nth-child(6n+5) { --wd-metric-tone:#dc3545; }
.wd-metric-grid .wd-metric:nth-child(6n+6) { --wd-metric-tone:#7c5ce7; }

/* Registers are spacious card rows rather than dense spreadsheet bands. */
.wd-table-shell,
.customer-table {
  border-radius:18px;
  background:#f4f7f9;
  box-shadow:0 10px 28px rgba(16,44,70,.05);
}
.wd-table-heading {
  min-height:64px;
  border-bottom:1px solid #e2e8ed;
  background:#fff;
}
.wd-table-wrap,
.customer-table {
  padding:0 12px 12px;
}
.wd-table,
.customer-table table {
  border-collapse:separate;
  border-spacing:0 10px;
}
.wd-table th,
.customer-table th,
.wd-customer-table th {
  border:0;
  padding:11px 14px 7px;
  color:#708092;
  background:transparent;
}
.wd-table tbody td,
.customer-table tbody td,
.wd-customer-table tbody td {
  padding:15px 14px;
  border-top:1px solid #dde5eb;
  border-bottom:1px solid #dde5eb;
  background:#fff;
}
.wd-table tbody td:first-child,
.customer-table tbody td:first-child,
.wd-customer-table tbody td:first-child {
  border-left:1px solid #dde5eb;
  border-radius:13px 0 0 13px;
}
.wd-table tbody td:last-child,
.customer-table tbody td:last-child,
.wd-customer-table tbody td:last-child {
  border-right:1px solid #dde5eb;
  border-radius:0 13px 13px 0;
}
.wd-table tbody tr:hover td,
.customer-table tbody tr:hover td,
.wd-customer-table tbody tr:hover td {
  border-color:color-mix(in srgb,var(--tenant-primary,var(--wd-green-600)) 30%,#d8e1e8);
  background:#fbfdfc;
}
.wd-clickable-row:hover {
  background:transparent!important;
  box-shadow:none;
}
.wd-clickable-row:hover td:first-child {
  box-shadow:inset 4px 0 var(--tenant-primary,var(--wd-green-600));
}
.wd-table-action {
  min-height:40px;
  border-radius:11px;
  background:linear-gradient(180deg,#fff,#f8fafb);
  box-shadow:0 4px 11px rgba(16,44,70,.055);
}

/* Service fields remain fully actionable but use the same light card language
   as the dashboard instead of repeating a wall of dark tiles. */
.wd-service-register-table {
  min-width:1180px;
  border-spacing:0 12px;
}
.wd-service-register-table tbody td,
.wd-service-register-table tbody td:first-child,
.wd-service-register-table tbody td:last-child,
.wd-service-register-table tbody tr:hover td {
  padding:0 5px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.wd-register-control,
.wd-workspace-status-action {
  --wd-control-tone:var(--tenant-primary,#ff9818);
  position:relative;
  overflow:hidden;
  min-height:72px;
  border:1px solid #d9e2e9;
  border-top:3px solid var(--wd-control-tone);
  border-radius:14px;
  padding:11px 13px;
  color:#17364f;
  background:linear-gradient(180deg,#fff 0%,#f8fafb 100%);
  box-shadow:0 6px 16px rgba(16,44,70,.07);
}
.wd-register-control::after,
.wd-workspace-status-action::after {
  content:"";
  position:absolute;
  top:-29px;
  right:-28px;
  width:62px;
  height:62px;
  border-radius:50%;
  background:color-mix(in srgb,var(--wd-control-tone) 9%,transparent);
}
.wd-service-register-table td:nth-child(1) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-service-register-table td:nth-child(2) .wd-register-control { --wd-control-tone:#28b864; }
.wd-service-register-table td:nth-child(3) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff9818); }
.wd-service-register-table td:nth-child(4) .wd-register-control { --wd-control-tone:#7c5ce7; }
.wd-service-register-table td:nth-child(5) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-service-register-table td:nth-child(6) .wd-register-control { --wd-control-tone:#28b864; }
.wd-register-control:hover,
.wd-workspace-status-action:hover {
  border-color:color-mix(in srgb,var(--wd-control-tone) 48%,#ced8e1);
  background:#fff;
  box-shadow:0 11px 24px rgba(16,44,70,.11),0 0 0 1px color-mix(in srgb,var(--wd-control-tone) 12%,transparent);
  transform:translateY(-1px);
}
.wd-register-control-kicker { color:var(--wd-control-tone); font-size:.61rem; }
.wd-register-control-value { color:#17364f; font-size:.82rem; }
.wd-register-control-detail { color:#6c7c8d; font-size:.69rem; }
.wd-register-job .wd-register-control-value { font-size:.88rem; }
.wd-register-visits .wd-register-control-value { font-size:1.08rem; }
.wd-workspace-status-action { width:190px; min-height:58px; --wd-control-tone:var(--tenant-primary,#ff9818); }

/* Customer records size to their actual content. Odd final panels span the
   second row instead of leaving a large blank half-card. */
.wd-customer-dialog { width:min(920px,calc(100vw - 32px)); }
.wd-customer-dialog .wd-record-dialog-head { padding:22px 24px; }
.wd-customer-workspace {
  align-content:start;
  gap:14px;
  padding:18px 20px;
}
.wd-customer-panel { padding:18px; border-radius:16px; }
.wd-customer-panel-wide,
.wd-customer-panel-expand { grid-column:1/-1; }
.wd-customer-dialog .wd-record-dialog-actions { padding:15px 20px; }
.wd-dialog-back { min-width:154px; }

/* Customer and History registers use the same field-level interaction model as
   Service Operations: every visible value is a clear, keyboard-ready control. */
.wd-customer-register-table,
.wd-history-job-table {
  min-width:1120px;
  border-spacing:0 12px;
}
.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 {
  padding:0 5px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.wd-customer-register-table td:nth-child(1) .wd-register-control,
.wd-history-job-table td:nth-child(1) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-customer-register-table td:nth-child(2) .wd-register-control,
.wd-history-job-table td:nth-child(2) .wd-register-control { --wd-control-tone:#28b864; }
.wd-customer-register-table td:nth-child(3) .wd-register-control,
.wd-history-job-table td:nth-child(3) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff9818); }
.wd-customer-register-table td:nth-child(4) .wd-register-control,
.wd-history-job-table td:nth-child(4) .wd-register-control { --wd-control-tone:#7c5ce7; }
.wd-customer-register-table td:nth-child(5) .wd-register-control,
.wd-history-job-table td:nth-child(5) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-history-job-table td:nth-child(6) .wd-register-control { --wd-control-tone:#28b864; }
.wd-customer-register-table th:nth-child(1) { width:27%; }
.wd-customer-register-table th:nth-child(2) { width:18%; }
.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:16%; }
.wd-history-job-table th:nth-child(1) { width:34%; }
.wd-history-job-table th:nth-child(2) { width:20%; }
.wd-history-job-table th:nth-child(3) { width:12%; }
.wd-history-job-table th:nth-child(4) { width:10%; }
.wd-history-job-table th:nth-child(5) { width:17%; }
.wd-history-job-table th:nth-child(6) { width:7%; }

/* One deliberate typography scale across dashboards, registers and record
   workspaces. Component hierarchy still changes weight, never font family. */
body,
button,
input,
select,
textarea,
table {
  font-family:var(--wd-font-sans);
}
body { font-size:var(--wd-type-body); }
.wd-studio-hero h2 {
  font-size:var(--wd-type-display);
  font-weight:780;
  line-height:1.12;
  letter-spacing:-.04em;
}
.wd-record-dialog-head h3 { font-size:var(--wd-type-title); font-weight:780; }
.wd-table-heading h3,
.wd-panel-heading h3,
.module h3,
.module h4 { font-size:var(--wd-type-section); font-weight:740; line-height:1.3; }
.intro,
.wd-studio-hero .intro { font-size:.9375rem; line-height:1.55; }
.primary,
.secondary,
.wd-table-action,
.wd-text-action,
.wd-studio-tabs button,
nav button { font-size:var(--wd-type-action); font-weight:720; }
.wd-table,
.customer-table table { font-size:var(--wd-type-body); line-height:1.45; }
.wd-table th,
.customer-table th,
.wd-customer-table th {
  font-size:var(--wd-type-label);
  font-weight:800;
  line-height:1.25;
  letter-spacing:.075em;
}
.wd-table td,
.customer-table td,
.wd-customer-table td { font-size:var(--wd-type-body); line-height:1.45; }
.wd-record-title,
.wd-register-control-value { font-size:var(--wd-type-body); font-weight:760; }
.wd-record-subtitle,
.wd-register-control-detail,
.wd-table-count,
.wd-metric-note { font-size:var(--wd-type-small); line-height:1.4; }
.wd-register-control-kicker,
.wd-metric-label,
.wd-field > span,
.wd-customer-fact dt,
.wd-record-fact dt { font-size:var(--wd-type-label); font-weight:800; letter-spacing:.075em; }
.wd-badge { font-size:var(--wd-type-label); font-weight:760; }

/* Segmented registers have a fixed visual rhythm. A long job title is clamped
   inside the tile, so every field in that record remains exactly the same size. */
.wd-service-register-table,
.wd-customer-register-table,
.wd-history-job-table { min-width:1180px; border-spacing:0 16px; }
.wd-segmented-register tbody tr { height:96px; }
.wd-segmented-register .wd-register-control {
  min-height:96px;
  height:96px;
  gap:5px;
  padding:14px 15px;
}
.wd-segmented-register .wd-register-control-value {
  display:-webkit-box;
  overflow:hidden;
  font-size:var(--wd-type-body);
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  line-clamp:2;
  line-height:1.35;
}
.wd-segmented-register .wd-register-control-detail {
  overflow:hidden;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.wd-segmented-register .wd-register-visits { align-content:center; }
#customers-view .wd-customer-register-table { border-spacing:0 16px; }
#service-job-list td,
#customer-rows td,
#history-job-rows td { padding:10px 7px; }

/* Customers follow the same generous vertical layout as Service Operations. */
#customers-view:not([hidden]) { display:grid; gap:18px; }
#customers-view > .wd-studio-hero,
#customers-view > .wd-search-bar,
#customers-view > .customer-table,
#customers-view > p { margin-top:0; margin-bottom:0; }
#customers-message:empty { display:none; }
#customers-view > .wd-search-bar {
  gap:10px;
  padding:14px;
  border:1px solid #dbe3e9;
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,44,70,.045);
}
#customers-view > .wd-search-bar input { min-height:44px; }
#customers-pagination { min-height:44px; align-items:center; }
.wd-customer-table { padding:0 14px 14px; }

/* Primary navigation remains comfortably readable even when the application is
   viewed on a dense desktop canvas. */
.app > aside nav { gap:9px; }
.app > aside nav button {
  min-height:46px;
  padding:13px 14px;
  font-size:.9375rem;
  font-weight:650;
  line-height:1.25;
}
.app > aside nav button.active { font-weight:760; }
.app > aside .aside-footer strong { font-size:.9375rem; }
.app > aside .aside-footer span,
.app > aside .aside-footer button { font-size:.8125rem; }
.app.tenant-mode .sidebar-brand-copy span { font-size:.75rem; }

/* Every primary register now uses the same light, field-level card language.
   Module identity comes from the restrained top-edge tones, not a different
   row layout or a competing type scale. */
.wd-project-register-table,
.wd-asset-register-table,
.wd-finance-register-table,
.wd-workforce-register-table,
.wd-workflow-register-table { border-spacing:0 16px; }
.wd-project-register-table,
.wd-finance-register-table { min-width:1120px; }
.wd-asset-register-table { min-width:1380px; }
.wd-finance-invoice-table,
.wd-finance-evidence-table { min-width:1320px; }
.wd-workforce-register-table { min-width:1260px; }
.wd-workflow-register-table { min-width:1180px; }

#project-rows td,
#asset-rows td,
#finance-invoice-rows td,
#finance-quote-rows td,
#finance-purchase-order-rows td,
#finance-evidence-rows td,
#workforce-list td,
#workflow-list td { padding:10px 7px; }

.wd-field-card-register td:nth-child(6n+1) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-field-card-register td:nth-child(6n+2) .wd-register-control { --wd-control-tone:#28b864; }
.wd-field-card-register td:nth-child(6n+3) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff9818); }
.wd-field-card-register td:nth-child(6n+4) .wd-register-control { --wd-control-tone:#7c5ce7; }
.wd-field-card-register td:nth-child(6n+5) .wd-register-control { --wd-control-tone:#3b82f6; }
.wd-field-card-register td:nth-child(6n+6) .wd-register-control { --wd-control-tone:#28b864; }
.wd-field-card-register td:nth-child(7) .wd-register-control { --wd-control-tone:var(--tenant-primary,#ff9818); }

.wd-register-action-card { cursor:default; gap:4px!important; padding:9px 10px!important; }
.wd-register-action-card:hover { transform:none; }
.wd-register-action-buttons {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px;
  position:relative;
  z-index:1;
  width:100%;
}
.wd-register-mini-action {
  min-height:24px;
  border:1px solid color-mix(in srgb,var(--wd-control-tone) 28%,#cbd6df);
  border-radius:8px;
  padding:3px 5px;
  color:#17364f;
  background:#fff;
  font-size:.625rem;
  font-weight:760;
  line-height:1.2;
  overflow-wrap:anywhere;
  white-space:normal;
  cursor:pointer;
}
.wd-register-mini-action:only-child { grid-column:1/-1; }
.wd-register-mini-action:hover { border-color:var(--wd-control-tone); background:#f8fafb; }
.wd-register-mini-action[data-invitation-action="cancel_invitation"] { color:#b42318; border-color:#f0c1bc; }

/* A generic page-header rule previously forced modal headers to 72px and
   clipped the customer identity. Record headers size to their content. */
.wd-record-dialog .wd-record-dialog-head {
  box-sizing:border-box;
  height:auto;
  min-height:102px;
}
.wd-customer-dialog .wd-record-dialog-head { padding:22px 24px; }
.wd-customer-dialog-identity > div { min-width:0; padding-block:2px; }
.wd-customer-dialog-identity .wd-eyebrow { margin-top:0; }
.wd-customer-dialog-identity h3,
.wd-customer-dialog-identity p { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wd-form-title-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }
.wd-form-title-actions .secondary { min-height:42px; }

@media(max-width:1280px) {
  .wd-studio-hero:not(.wd-calendar-hero) {
    flex-direction:column;
    align-items:stretch;
  }
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions {
    display:grid;
    width:100%;
    max-width:none;
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  }
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > button,
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions > .wd-workspace-navigation,
  .wd-studio-hero:not(.wd-calendar-hero) > .wd-hero-actions .wd-workspace-navigation button {
    width:100%;
  }
}

@media(max-width:700px) {
  .wd-table-wrap,
  .customer-table { padding:0 8px 8px; }
  .wd-customer-panel-wide,
  .wd-customer-panel-expand { grid-column:auto; }
}

/* Premium invoice workspace: a quiet in-record rail keeps finance depth
   visible without competing with ALTURA's main application navigation. */
.wd-invoice-dialog { width:min(1180px,calc(100vw - 32px)); }
.wd-invoice-dialog .wd-record-dialog-shell { height:min(860px,calc(100vh - 32px)); }
.wd-invoice-dialog .wd-record-dialog-head { min-height:112px; padding:25px 30px; }
.wd-invoice-workspace {
  display:grid;
  grid-template-columns:228px minmax(0,1fr);
  flex:1 1 auto;
  min-height:0;
  background:#f3f6f8;
}
.wd-invoice-sidebar {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:28px;
  padding:24px 18px;
  border-right:1px solid #d8e1e8;
  background:linear-gradient(180deg,#eaf0f4 0%,#f7f9fa 100%);
}
.wd-invoice-sidebar nav { display:grid; gap:7px; }
.wd-invoice-tab {
  display:grid;
  grid-template-columns:29px minmax(0,1fr);
  align-items:center;
  min-height:48px;
  padding:10px 12px;
  border:1px solid transparent;
  border-radius:12px;
  color:#496074;
  background:transparent;
  box-shadow:none;
  text-align:left;
  line-height:1.25;
}
.wd-invoice-tab > span {
  display:grid;
  width:24px;
  height:24px;
  place-items:center;
  border-radius:8px;
  color:#6d7d8c;
  background:#dce5eb;
  font-size:.63rem;
  font-weight:820;
}
.wd-invoice-tab:hover { border-color:#cad6df; color:#17364f; background:#fff; }
.wd-invoice-tab.active {
  border-color:#f2c894;
  color:#17364f;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,44,70,.08);
}
.wd-invoice-tab.active > span { color:#fff; background:#ff8a00; }
.wd-invoice-sidebar > div > .wd-eyebrow { margin:0 5px 10px; color:#6b7c8c; }
.wd-invoice-integration-status { display:grid; gap:8px; }
.wd-invoice-integration {
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px;
  border:1px solid #d8e1e8;
  border-radius:12px;
  background:rgba(255,255,255,.75);
}
.wd-invoice-integration > span {
  display:grid;
  flex:0 0 30px;
  width:30px;
  height:30px;
  place-items:center;
  border-radius:9px;
  color:#fff;
  background:#8493a0;
  font-size:.76rem;
  font-weight:850;
}
.wd-invoice-integration.connected > span { background:#16865e; }
.wd-invoice-integration div { display:grid; gap:2px; min-width:0; }
.wd-invoice-integration strong { color:#17364f; font-size:.76rem; }
.wd-invoice-integration small { color:#738394; font-size:.66rem; }
.wd-invoice-content { min-width:0; overflow:auto; padding:24px 26px 30px; }
.wd-invoice-content > .wd-dialog-message { padding:0; margin:0 0 12px; background:transparent; color:#287051; }
.wd-invoice-content > .wd-dialog-message.error { color:#a32121; }
.wd-invoice-content [data-invoice-panel][hidden] { display:none!important; }
.wd-invoice-status-band {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:16px;
  padding:15px 18px;
  border:1px solid #d7e1e8;
  border-left:4px solid #ff8a00;
  border-radius:14px;
  background:#fff;
}
.wd-invoice-status-band > div { display:grid; gap:3px; }
.wd-invoice-status-band .wd-eyebrow { color:#7a8795; }
.wd-invoice-status-band strong { color:#17364f; font-size:1.08rem; }
.wd-invoice-status-band p { margin:0; color:#627487; }
.wd-invoice-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.wd-invoice-metrics .metric { min-height:116px; }
.wd-invoice-overview-sections { padding:0; overflow:visible; }
.wd-invoice-source-action { margin-top:16px; }
.wd-invoice-section-heading {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.wd-invoice-section-heading .wd-eyebrow { margin:0 0 5px; }
.wd-invoice-section-heading h4 { margin:0; color:#17364f; font-size:1.12rem; }
.wd-invoice-section-heading p:not(.wd-eyebrow) { max-width:660px; margin:7px 0 0; color:#68798a; line-height:1.5; }
.wd-invoice-payment-metrics { grid-template-columns:repeat(3,minmax(0,1fr)); }
.wd-invoice-automation-note {
  display:grid;
  gap:4px;
  margin-bottom:16px;
  padding:14px 16px;
  border:1px solid #cce5d9;
  border-radius:13px;
  color:#506b60;
  background:#f2fbf6;
}
.wd-invoice-automation-note strong { color:#176947; }
.wd-invoice-dialog .wd-invoice-payment-form {
  margin-bottom:18px;
  padding:20px;
  border:1px solid #d7e1e8;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,44,70,.05);
}
.wd-invoice-payment-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.wd-invoice-payment-fields label { display:grid; gap:6px; color:#56687a; font-size:.74rem; font-weight:730; }
.wd-invoice-payment-fields label.span-2 { grid-column:1/-1; }
.wd-invoice-payment-fields input,
.wd-invoice-payment-fields select,
.wd-invoice-payment-fields textarea {
  box-sizing:border-box;
  width:100%;
  min-height:42px;
  border:1px solid #c8d4de;
  border-radius:10px;
  padding:10px 11px;
  color:#17364f;
  background:#fff;
  font:inherit;
  font-size:.82rem;
}
.wd-invoice-payment-fields textarea { min-height:72px; resize:vertical; }
.wd-invoice-form-actions { display:flex; align-items:center; gap:14px; margin-top:16px; }
.wd-invoice-form-actions span { color:#6a7a8a; font-size:.72rem; }
.wd-invoice-payment-table-wrap { overflow:auto; border:1px solid #d7e1e8; border-radius:15px; background:#fff; }
.wd-invoice-payment-table { width:100%; border-collapse:collapse; font-size:.78rem; }
.wd-invoice-payment-table th { padding:11px 13px; color:#768696; background:#f3f6f8; font-size:.62rem; letter-spacing:.06em; text-align:left; text-transform:uppercase; }
.wd-invoice-payment-table td { padding:13px; border-top:1px solid #e2e8ed; color:#253f55; vertical-align:middle; }
.wd-invoice-payment-table td strong,
.wd-invoice-payment-table td small { display:block; }
.wd-invoice-payment-table td small { margin-top:3px; color:#778797; font-size:.66rem; }
.wd-payment-source { display:inline-flex; align-items:center; min-height:25px; padding:3px 9px; border-radius:999px; color:#465b6e; background:#e8edf1; font-size:.68rem; font-weight:760; }
.wd-payment-source.stripe { color:#5539aa; background:#eeeaff; }
.wd-payment-source.xero { color:#086b81; background:#e1f7fb; }
.wd-payment-source.manual { color:#a15500; background:#fff0dd; }
.wd-source-invoice {
  max-width:800px;
  margin:0 auto;
  padding:28px;
  border:1px solid #d6e0e7;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(16,44,70,.08);
}
.wd-source-invoice > header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; height:auto; min-height:0; padding:0 0 24px; border-bottom:2px solid #17364f; }
.wd-source-invoice > header > div:first-child { display:flex; align-items:center; gap:10px; }
.wd-source-invoice > header > div:first-child > div { display:grid; gap:1px; }
.wd-source-invoice > header strong { color:#17364f; font-size:1rem; letter-spacing:.04em; }
.wd-source-invoice > header small { color:#768696; }
.wd-source-invoice-mark { display:grid; width:38px; height:38px; place-items:center; border-radius:11px; color:#fff; background:#ff8a00; font-weight:850; }
.wd-source-invoice-identity { text-align:right; }
.wd-source-invoice-identity .wd-eyebrow { color:#ff8a00; }
.wd-source-invoice-identity h4 { margin:4px 0; color:#17364f; font-size:1.35rem; }
.wd-source-invoice-identity p { margin:0; color:#657789; }
.wd-source-invoice-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:22px 0; }
.wd-source-invoice-lines { overflow:auto; }
.wd-source-invoice-lines table { width:100%; border-collapse:collapse; font-size:.78rem; }
.wd-source-invoice-lines th { padding:10px; border-bottom:1px solid #cad6df; color:#6a7b8b; background:#f5f7f9; font-size:.61rem; letter-spacing:.06em; text-align:right; text-transform:uppercase; }
.wd-source-invoice-lines th:first-child,
.wd-source-invoice-lines td:first-child { text-align:left; }
.wd-source-invoice-lines td { padding:11px 10px; border-bottom:1px solid #e2e8ed; text-align:right; }
.wd-source-invoice-empty { color:#748494; text-align:center!important; }
.wd-source-invoice-totals { width:min(320px,100%); margin:20px 0 0 auto; }
.wd-source-invoice-totals > div { display:flex; justify-content:space-between; gap:24px; padding:7px 0; }
.wd-source-invoice-totals dt { color:#657789; }
.wd-source-invoice-totals dd { margin:0; color:#17364f; font-weight:720; }
.wd-source-invoice-totals .emphasis { margin-top:4px; border-top:1px solid #ced8e1; font-size:.92rem; }
.wd-source-invoice-note { margin:22px 0 0; padding-top:15px; border-top:1px solid #e0e6eb; color:#728292; font-size:.68rem; line-height:1.5; }
.wd-invoice-activity-list { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.wd-invoice-activity-list li { display:grid; grid-template-columns:20px minmax(0,1fr) auto; gap:12px; padding:15px 0; border-bottom:1px solid #dde5eb; }
.wd-invoice-activity-dot { width:10px; height:10px; margin-top:5px; border-radius:50%; background:#7590a5; box-shadow:0 0 0 5px #e5ecf1; }
.wd-invoice-activity-list li.payment .wd-invoice-activity-dot { background:#ff8a00; box-shadow:0 0 0 5px #fff0dd; }
.wd-invoice-activity-list strong { color:#17364f; }
.wd-invoice-activity-list p { margin:4px 0 0; color:#657789; }
.wd-invoice-activity-list time { color:#7c8b99; font-size:.68rem; white-space:nowrap; }

@media(max-width:900px) {
  .wd-invoice-workspace { grid-template-columns:1fr; }
  .wd-invoice-sidebar { display:block; padding:12px 16px; border-right:0; border-bottom:1px solid #d8e1e8; }
  .wd-invoice-sidebar nav { display:flex; overflow-x:auto; }
  .wd-invoice-tab { flex:0 0 auto; min-width:145px; }
  .wd-invoice-sidebar > div { display:none; }
  .wd-invoice-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:620px) {
  .wd-invoice-dialog { width:calc(100vw - 12px); }
  .wd-invoice-dialog .wd-record-dialog-head { align-items:flex-start; flex-direction:column; padding:19px; }
  .wd-invoice-dialog .wd-dialog-back { width:100%; }
  .wd-invoice-content { padding:18px 14px 24px; }
  .wd-invoice-status-band,
  .wd-invoice-section-heading,
  .wd-invoice-form-actions { align-items:flex-start; flex-direction:column; }
  .wd-invoice-metrics,
  .wd-invoice-payment-fields { grid-template-columns:1fr; }
  .wd-invoice-payment-fields label.span-2 { grid-column:auto; }
  .wd-source-invoice { padding:18px 14px; }
  .wd-source-invoice > header { flex-direction:column; }
  .wd-source-invoice-identity { text-align:left; }
  .wd-source-invoice-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-invoice-activity-list li { grid-template-columns:20px minmax(0,1fr); }
  .wd-invoice-activity-list time { grid-column:2; }
}

/* Simple record workspaces use one consistent premium right-side drawer. The
   service job workspace intentionally remains in-page because its schedule,
   evidence, financials and communications need the full content width. */
.wd-record-drawer {
  position:fixed;
  inset:0 0 0 auto;
  box-sizing:border-box;
  width:min(880px,calc(100vw - 220px));
  height:100dvh;
  max-height:100dvh;
  margin:0;
  border-radius:24px 0 0 24px;
  transform-origin:right center;
}
.wd-record-drawer[open] { animation:wd-record-drawer-enter .2s ease-out both; }
.wd-record-drawer.wd-invoice-dialog { width:min(1100px,calc(100vw - 220px)); }
.wd-record-drawer .wd-record-dialog-shell { height:100%; max-height:none; }
.wd-record-drawer .wd-record-dialog-head { min-height:114px; padding:25px 28px; }
.wd-record-drawer .wd-record-sections,
.wd-record-drawer .wd-customer-workspace,
.wd-record-drawer .wd-invoice-content { scrollbar-gutter:stable; }
.wd-record-drawer .wd-record-sections,
.wd-record-drawer .wd-customer-workspace { align-content:start; }
.wd-record-drawer .wd-record-section,
.wd-record-drawer .wd-customer-panel,
.wd-record-drawer .wd-invoice-overview-sections > .wd-record-section,
.wd-record-drawer .metric {
  border:1px solid #d8e2e9;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(16,44,70,.055);
}
@keyframes wd-record-drawer-enter {
  from { opacity:.72; transform:translateX(24px); }
  to { opacity:1; transform:translateX(0); }
}
@media(max-width:900px) {
  .wd-record-drawer,
  .wd-record-drawer.wd-invoice-dialog {
    inset:0;
    width:100vw;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
  }
}

/* Communications is a first-class team inbox: the left pane is the queue, the
   centre is the durable message thread and the right pane keeps customer/job
   context visible while staff work. */
.wd-communications { display:grid; gap:16px; }
.wd-communications-hero { margin-bottom:0; }
.wd-communications-toolbar { grid-template-columns:minmax(280px,1fr) 170px 190px auto auto; }
.wd-chat-workspace {
  display:grid;
  grid-template-columns:minmax(260px,330px) minmax(420px,1fr) minmax(230px,285px);
  min-height:680px;
  height:calc(100dvh - 370px);
  border:1px solid #d6e0e8;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 14px 36px rgba(16,44,70,.075);
}
.wd-chat-inbox,.wd-chat-thread,.wd-chat-context { min-width:0; min-height:0; }
.wd-chat-inbox { display:flex; flex-direction:column; border-right:1px solid #dbe4eb; background:#fbfcfd; }
.wd-chat-inbox > header,.wd-chat-thread-head {
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  height:auto;
  min-height:76px;
  padding:17px 18px;
  border-bottom:1px solid #dbe4eb;
  background:#fff;
}
.wd-chat-inbox h3,.wd-chat-thread-head h3,.wd-chat-context h3 { margin:2px 0 0; font-size:1.05rem; }
.wd-chat-inbox-tabs { display:grid; grid-template-columns:repeat(5,1fr); padding:8px 10px; border-bottom:1px solid #e2e8ee; background:#fff; }
.wd-chat-inbox-tabs button { border:0; border-bottom:2px solid transparent; padding:9px 6px; color:#637486; background:transparent; font-size:.73rem; font-weight:760; cursor:pointer; }
.wd-chat-inbox-tabs button.active { border-bottom-color:var(--tenant-primary,#ff8a00); color:#17364f; }
.wd-conversation-list { flex:1 1 auto; overflow:auto; padding:8px; }
.wd-conversation-card {
  position:relative;
  display:grid;
  width:100%;
  gap:5px;
  margin:0 0 6px;
  border:1px solid transparent;
  border-radius:12px;
  padding:13px 12px;
  color:#21394f;
  background:transparent;
  text-align:left;
  cursor:pointer;
}
.wd-conversation-card:hover { border-color:#d4e0e9; background:#fff; }
.wd-conversation-card.active { border-color:#ffad53; background:#fff9f1; box-shadow:0 8px 18px rgba(16,44,70,.07); }
.wd-conversation-card-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.wd-conversation-card-head strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.82rem; }
.wd-conversation-card-head time,.wd-conversation-card-foot { color:#7b8a99; font-size:.62rem; }
.wd-conversation-subject { overflow:hidden; color:#334e65; font-size:.72rem; font-weight:680; text-overflow:ellipsis; white-space:nowrap; }
.wd-conversation-preview { overflow:hidden; color:#728293; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-conversation-unread { position:absolute; right:10px; bottom:10px; display:grid; width:20px; height:20px; place-items:center; border-radius:50%; color:#fff; background:#ff8a00; font-size:.62rem; font-weight:800; }
.wd-chat-thread { display:flex; flex-direction:column; background:#f6f8fb; }
.wd-chat-thread-head h3 { font-size:1.12rem; }
.wd-chat-thread-head p { margin:4px 0 0; color:#718294; font-size:.7rem; }
.wd-chat-thread-controls { display:flex; align-items:flex-end; gap:8px; }
.wd-chat-thread-controls label { display:grid; gap:4px; color:#708194; font-size:.58rem; font-weight:780; text-transform:uppercase; letter-spacing:.04em; }
.wd-chat-thread-head select { min-width:112px; max-width:170px; border:1px solid #cbd7e0; border-radius:9px; padding:8px 9px; color:#20384e; background:#fff; font:inherit; font-size:.72rem; text-transform:none; letter-spacing:0; }
.wd-chat-messages { display:flex; flex:1 1 auto; flex-direction:column; gap:11px; overflow:auto; padding:22px; }
.wd-chat-message { align-self:flex-start; width:min(78%,620px); border:1px solid #d9e1e8; border-radius:4px 15px 15px; padding:12px 14px; background:#fff; box-shadow:0 5px 15px rgba(16,44,70,.045); }
.wd-chat-message.outbound { align-self:flex-end; border-color:#c9ddff; border-radius:15px 4px 15px 15px; background:#edf4ff; }
.wd-chat-message-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; color:#718294; font-size:.61rem; }
.wd-chat-message p { margin:8px 0; color:#20384e; font-size:.78rem; line-height:1.5; white-space:pre-wrap; }
.wd-chat-message .status-pill { font-size:.58rem; }
.wd-chat-drafts { flex:0 0 auto; display:grid; gap:7px; max-height:180px; overflow:auto; padding:0 18px; }
.wd-chat-draft { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; border:1px solid #ffd39d; border-radius:11px; padding:10px 12px; background:#fff9f1; }
.wd-chat-draft p,.wd-chat-draft small { display:block; overflow:hidden; margin:4px 0 0; color:#6e7f90; font-size:.66rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-chat-draft-actions { display:flex; align-items:center; gap:6px; }
.wd-chat-draft-actions button { min-height:32px; padding:7px 9px; font-size:.64rem; }
.wd-chat-composer,.wd-chat-incoming-form { flex:0 0 auto; display:grid; gap:8px; border-top:1px solid #dbe4eb; padding:13px 16px; background:#fff; }
.wd-chat-composer > div:first-child { display:grid; grid-template-columns:120px 1fr; gap:8px; }
.wd-chat-composer select,.wd-chat-composer input,.wd-chat-composer textarea,.wd-chat-incoming-form select,.wd-chat-incoming-form textarea { box-sizing:border-box; width:100%; border:1px solid #cbd7e0; border-radius:9px; padding:9px 10px; background:#fff; font:inherit; font-size:.75rem; }
.wd-chat-composer textarea,.wd-chat-incoming-form textarea { min-height:62px; resize:vertical; }
.wd-chat-composer > div:not(:first-child),.wd-chat-incoming-form > div { display:flex; gap:8px; }
.wd-chat-composer button,.wd-chat-incoming-form button { min-height:34px; padding:8px 11px; font-size:.67rem; }
.wd-chat-composer .wd-form-note { margin:0; }
.wd-ai-review-controls { display:flex; align-items:flex-end; flex-wrap:wrap; gap:8px; }
.wd-ai-review-controls label { display:grid; gap:4px; color:#708194; font-size:.62rem; font-weight:780; text-transform:uppercase; letter-spacing:.04em; }
.wd-ai-review-controls select { min-width:110px; border:1px solid #cbd7e0; border-radius:9px; padding:8px 9px; color:#20384e; background:#fff; font:inherit; font-size:.72rem; text-transform:none; letter-spacing:0; }
.wd-ai-review-result { margin:0; color:#8a5b00; font-size:.68rem; line-height:1.45; white-space:pre-wrap; }
.wd-ai-review-result:empty { display:none; }
.wd-chat-context { overflow:auto; border-left:1px solid #dbe4eb; padding:20px 18px; background:#fff; }
.wd-chat-context dl { display:grid; gap:13px; margin:20px 0; }
.wd-chat-context dl div { display:grid; gap:3px; padding-bottom:10px; border-bottom:1px solid #edf1f4; }
.wd-chat-context dt { color:#758596; font-size:.61rem; font-weight:780; text-transform:uppercase; letter-spacing:.05em; }
.wd-chat-context dd { margin:0; color:#20384e; font-size:.74rem; line-height:1.45; overflow-wrap:anywhere; }
.wd-chat-context-actions { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:20px; }
.wd-chat-context-actions button { min-height:34px; padding:8px 10px; font-size:.67rem; }
.wd-chat-context section { border-top:1px solid #dbe4eb; padding-top:18px; }
.wd-chat-context section h4 { margin:0 0 10px; font-size:.76rem; }
#communications-channel-status { display:grid; gap:7px; }
#communications-channel-status > div { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:.7rem; }
.wd-chat-empty { display:grid; min-height:180px; place-items:center; padding:28px; color:#718294; text-align:center; font-size:.78rem; line-height:1.5; }
.wd-chat-thread > .wd-chat-empty { flex:1 1 auto; }
.wd-conversation-form { margin:0; }
.wd-customer-communication-workspace { flex:1 1 auto; overflow:auto; padding:20px; }
.wd-customer-communication-intro { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:16px; border:1px solid #d8e2e9; border-radius:15px; padding:17px 18px; background:#fff; }
.wd-customer-communication-intro h4 { margin:3px 0 5px; color:#17364f; }
.wd-customer-communication-intro p:not(.wd-eyebrow) { margin:0; color:#718294; font-size:.74rem; }
.wd-customer-communication-workspace > .wd-dialog-message { padding:0; margin:0 0 12px; background:transparent; color:#8a5b00; }
.wd-customer-communication-history { border:1px solid #d8e2e9; border-radius:15px; padding:17px; background:#fff; }
.wd-customer-communication-item .wd-communication-preview { overflow:hidden; margin:4px 0 0; color:#67798a; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-customer-communication-actions { display:flex; gap:6px; }
.wd-customer-communication-actions button { min-height:32px; padding:7px 9px; font-size:.65rem; }
.wd-heading-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.wd-camera-picker { border:2px dashed #ffb35d; border-radius:13px; padding:14px; color:#17364f!important; background:#fff8ef; font-size:.9rem!important; text-align:center; cursor:pointer; }
.wd-camera-picker input { width:100%; margin-top:10px!important; }
.wd-ai-attachment-label { display:grid; gap:4px; margin-top:8px; border-left:3px solid #ff8a00; padding:7px 9px; color:#29445c; background:#fff8ef; }
.wd-ai-attachment-label strong { font-size:.75rem; }
.wd-ai-attachment-label span,.wd-ai-attachment-label small { color:#6b7c8d; font-size:.66rem; line-height:1.4; }
.wd-ai-attachment-actions { display:flex; flex-wrap:wrap; gap:6px; }
.wd-ai-attachment-actions button { min-height:32px; padding:7px 9px; font-size:.65rem; }

@media(max-width:1180px) {
  .wd-chat-workspace { grid-template-columns:290px minmax(420px,1fr); }
  .wd-chat-context { display:none; }
}
@media(max-width:820px) {
  .wd-communications-toolbar { grid-template-columns:1fr 1fr; }
  .wd-communications-toolbar .wd-search-field { grid-column:1/-1; }
  .wd-chat-workspace { display:block; height:auto; min-height:0; overflow:visible; }
  .wd-chat-inbox { max-height:420px; border-right:0; border-bottom:1px solid #dbe4eb; }
  .wd-chat-thread { min-height:620px; }
  .wd-chat-message { width:88%; }
  .wd-customer-communication-intro { align-items:stretch; flex-direction:column; }
}

/* WholeDesk Guide exposes reviewed product capability and delivery state. It is
   intentionally a read-only discovery surface; ordinary workspaces remain the
   only places where released records and commands can be used. */
.wd-capabilities { display:grid; gap:20px; }
.wd-capabilities-hero {
  margin-bottom:0;
  background:
    radial-gradient(circle at 92% 10%, color-mix(in srgb,var(--tenant-primary,var(--wd-green-500)) 30%,transparent), transparent 38%),
    linear-gradient(125deg,var(--tenant-secondary,var(--wd-ink-950)) 0%,color-mix(in srgb,var(--tenant-secondary,var(--wd-ink-950)) 78%,var(--tenant-primary,var(--wd-green-600))) 100%);
}
.wd-capability-intents,
.wd-capability-browser {
  border:1px solid var(--wd-line-strong);
  border-radius:var(--wd-radius-lg);
  padding:24px;
  background:var(--wd-surface);
  box-shadow:var(--wd-shadow-sm);
}
.wd-capability-intents > .wd-section-heading,
.wd-capability-browser > .wd-section-heading { margin-bottom:20px; }
.wd-capability-intent-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.wd-capability-intent-grid article {
  display:grid;
  align-content:start;
  gap:8px;
  min-height:160px;
  border:1px solid #dce5eb;
  border-radius:15px;
  padding:19px;
  background:#fbfcfd;
}
.wd-capability-intent-grid article > span { color:var(--tenant-primary,var(--wd-green-600)); font-size:.68rem; font-weight:800; letter-spacing:.12em; }
.wd-capability-intent-grid h4 { margin:0; color:#17364f; font-size:1rem; }
.wd-capability-intent-grid p { margin:0 0 4px; color:#68798a; font-size:.78rem; line-height:1.55; }
.wd-capability-state,
.wd-capability-access {
  display:inline-flex;
  width:max-content;
  align-items:center;
  border:1px solid transparent;
  border-radius:999px;
  padding:5px 8px;
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.035em;
  line-height:1;
  text-transform:uppercase;
}
.wd-state-production_ready { border-color:#b9e7d1; color:#087657; background:#eaf9f2; }
.wd-state-foundation { border-color:#bad7ff; color:#255f9f; background:#edf5ff; }
.wd-state-beta { border-color:#d8c7fa; color:#6741a5; background:#f4efff; }
.wd-state-planned { border-color:#ead99d; color:#896400; background:#fff8dc; }
.wd-capability-access.available { border-color:#cfe4d8; color:#236a50; background:#f1faf5; }
.wd-capability-access.restricted { border-color:#e2d9d1; color:#785d4b; background:#faf7f4; }
.wd-capability-toolbar {
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(180px,240px) auto;
  align-items:end;
  gap:12px;
  margin-bottom:14px;
  border:1px solid #dce5eb;
  border-radius:14px;
  padding:14px;
  background:#f8fafb;
}
.wd-capability-access-filter { display:flex; min-height:44px; align-items:center; gap:9px; padding:0 8px; color:#3d5366; font-size:.75rem; font-weight:700; }
.wd-capability-access-filter input { width:18px; height:18px; margin:0; accent-color:var(--tenant-primary,var(--wd-green-600)); }
.wd-capability-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:16px; }
.wd-capability-card {
  display:grid;
  align-content:start;
  gap:15px;
  min-width:0;
  border:1px solid #d7e1e8;
  border-radius:16px;
  padding:19px;
  background:#fff;
  box-shadow:0 8px 24px rgba(16,44,70,.045);
}
.wd-capability-card > header { display:flex; height:auto; align-items:flex-start; justify-content:space-between; gap:14px; padding:0; }
.wd-capability-card h3 { margin:2px 0 0; color:#17364f; font-size:1rem; }
.wd-capability-card .wd-eyebrow { margin:0; }
.wd-capability-badges { display:flex; flex:0 0 auto; flex-direction:column; align-items:flex-end; gap:6px; }
.wd-capability-summary { min-height:44px; margin:0; color:#596d7e; font-size:.78rem; line-height:1.55; }
.wd-capability-intent-status { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin:0; }
.wd-capability-intent-status > div { display:grid; gap:3px; border-radius:9px; padding:8px 9px; background:#f6f8fa; }
.wd-capability-intent-status dt { color:#6d7d8d; font-size:.6rem; font-weight:750; text-transform:uppercase; }
.wd-capability-intent-status dd { margin:0; font-size:.7rem; font-weight:800; }
.wd-intent-available { color:#087657; }
.wd-intent-foundation { color:#255f9f; }
.wd-intent-planned { color:#896400; }
.wd-capability-card details { border-top:1px solid #e7edf1; padding-top:12px; color:#68798a; font-size:.72rem; }
.wd-capability-card details summary { width:max-content; color:#35536b; font-weight:750; cursor:pointer; }
.wd-capability-card details ul { margin:10px 0 0; padding-left:19px; }
.wd-capability-card details li + li { margin-top:7px; }
.wd-capability-card > footer { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:auto; border-top:1px solid #edf1f4; padding-top:13px; }
.wd-capability-card code { overflow:hidden; color:#788795; font-size:.61rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-capability-card footer button { flex:0 0 auto; min-height:36px; padding:8px 11px; font-size:.67rem; }

@media(max-width:980px) {
  .wd-capability-toolbar { grid-template-columns:1fr 1fr; }
  .wd-capability-toolbar .wd-search-field { grid-column:1/-1; }
  .wd-capability-access-filter { padding:0; }
  .wd-capability-list { grid-template-columns:1fr; }
}
@media(max-width:680px) {
  .wd-capability-intents,
  .wd-capability-browser { padding:17px 14px; }
  .wd-capability-intent-grid,
  .wd-capability-toolbar { grid-template-columns:1fr; }
  .wd-capability-toolbar .wd-search-field { grid-column:auto; }
  .wd-capability-card > header { flex-direction:column; }
  .wd-capability-badges { align-items:flex-start; }
  .wd-capability-intent-status { grid-template-columns:1fr; }
  .wd-capability-card > footer { align-items:flex-start; flex-direction:column; }
  .wd-capability-card footer button { width:100%; }
}

/* WholeDesk Team Workspace. The interaction model is deliberately familiar to
   users of mature collaboration apps while retaining durable For-you state. */
.wd-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; overflow:hidden!important; clip:rect(0 0 0 0)!important; white-space:nowrap!important; }
.wd-collaboration { position:relative; display:grid; gap:10px; width:100%; max-width:none; }
.wd-collaboration > .wd-metric-grid { display:none; }
.wd-collaboration-appbar {
  display:grid; grid-template-columns:minmax(230px,.8fr) minmax(300px,1.4fr) auto;
  height:auto; min-height:88px; gap:20px; align-items:center; padding:16px 20px;
  border:1px solid #d5e6dd; border-radius:18px;
  color:#173a30; background:linear-gradient(118deg,#fff 0%,#f4fbf7 72%,#eef8f3 100%);
  box-shadow:0 10px 28px rgba(31,72,56,.08);
}
.wd-collaboration-title { display:flex; min-width:0; align-items:center; gap:12px; }
.wd-collaboration-title > img { flex:0 0 44px; width:44px; height:44px; }
.wd-collaboration-title > div { min-width:0; }
.wd-collaboration-appbar h2 { margin:1px 0 2px; color:#173a30; font-size:1.45rem; }
.wd-collaboration-appbar p { margin:0; color:#5d746b; font-size:.76rem; }
.wd-collaboration-appbar .wd-eyebrow { color:var(--wd-green-700); }
#collaboration-search-form { display:flex; min-width:0; gap:7px; }
#collaboration-search-form input { width:100%; min-height:42px; border:1px solid #cbded4; border-radius:10px; padding:10px 13px; color:#173a30; background:#fff; }
#collaboration-search-form input::placeholder { color:#72867e; }
#collaboration-search-form button { min-height:42px; border-color:#c6dbd0; color:#285348; background:#fff; }
.wd-collaboration-app-actions { display:flex; align-items:center; gap:8px; }
.wd-collaboration-app-actions .wd-icon-button { border-color:#c6dbd0; color:#285348; background:#fff; }
.wd-collaboration-space-form {
  position:fixed; z-index:1200; top:50%; left:50%; width:min(680px,calc(100vw - 32px));
  max-height:calc(100vh - 40px); margin:0; overflow:auto; transform:translate(-50%,-50%);
  border-color:#c9ddd2; border-radius:20px; box-shadow:0 28px 90px rgba(18,56,43,.24);
}
.wd-team-form-title,.wd-team-chooser-title,.wd-video-call-identity { display:flex; min-width:0; align-items:center; gap:12px; }
.wd-team-form-title > img,.wd-team-chooser-title > img,.wd-video-call-identity > img { flex:0 0 42px; width:42px; height:42px; }
.wd-collaboration-space-form .form-grid { padding:22px 24px 4px; }
.wd-collaboration-space-form > .wd-form-note { margin:14px 24px 0; }
.wd-collaboration-space-form > .form-actions { padding:0 24px 24px; }
.wd-collaboration-people-picker-field { display:grid; gap:7px; }
.wd-collaboration-people-picker-field > small { color:#667a72; font-size:.68rem; line-height:1.45; }
.wd-field-label { color:#445d54; font-size:.8rem; font-weight:700; }
.wd-field-label b { color:#b42318; }
.wd-field-error { color:#a32121; font-size:.69rem; font-weight:700; }
.wd-collaboration-people-picker { position:relative; }
.wd-collaboration-people-picker > summary { min-height:44px; border:1px solid #cfdcd6; border-radius:10px; padding:11px 42px 11px 12px; color:#52675f; background:#fff; list-style:none; cursor:pointer; }
.wd-collaboration-people-picker > summary::-webkit-details-marker { display:none; }
.wd-collaboration-people-picker > summary::after { position:absolute; top:13px; right:14px; content:"⌄"; color:#557168; font-size:1rem; }
.wd-collaboration-people-picker > summary.has-selection { color:#173a30; font-weight:700; }
.wd-collaboration-people-picker[open] > summary { border-color:var(--wd-green-600); box-shadow:0 0 0 3px rgba(15,122,92,.12); }
.wd-collaboration-people-options { display:grid; max-height:240px; gap:2px; margin-top:6px; overflow:auto; border:1px solid #d5e2dc; border-radius:12px; padding:6px; background:#fff; box-shadow:0 16px 34px rgba(23,58,48,.14); }
.wd-collaboration-person-option { display:flex!important; align-items:center; gap:10px; border-radius:8px; padding:9px 10px; cursor:pointer; }
.wd-collaboration-person-option:hover { background:var(--wd-green-50); }
.wd-collaboration-person-option input { flex:0 0 auto; width:18px!important; height:18px; margin:0!important; accent-color:var(--wd-green-600); }
.wd-collaboration-person-option > span { display:grid; min-width:0; gap:2px; }
.wd-collaboration-person-option strong { color:#24483d; font-size:.74rem; }
.wd-collaboration-person-option small { color:#687c74; font-size:.65rem; }
.wd-team-chooser-dialog,.wd-team-action-dialog { width:min(600px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); border:0; border-radius:22px; padding:0; overflow:auto; color:#233f36; background:#fff; box-shadow:0 28px 90px rgba(18,56,43,.25); }
.wd-team-chooser-dialog::backdrop,.wd-team-action-dialog::backdrop { background:rgba(24,48,40,.48); backdrop-filter:blur(5px); }
.wd-team-chooser,.wd-team-action-form { display:grid; gap:0; }
.wd-team-chooser > header,.wd-team-action-form > header { display:flex; height:auto; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid #deebe4; padding:20px 22px; background:linear-gradient(120deg,#fff,#f1faf5); }
.wd-team-chooser h2,.wd-team-action-form h2 { margin:2px 0 0; color:#173a30; font-size:1.35rem; }
.wd-team-chooser .wd-eyebrow,.wd-team-action-form .wd-eyebrow { margin:0; color:var(--wd-green-700); }
.wd-team-chooser > p,.wd-team-action-form > p { margin:0; padding:19px 22px 8px; color:#5c7169; font-size:.78rem; line-height:1.55; }
.wd-team-chooser > label { padding:10px 22px 0; color:#38564c; font-size:.72rem; font-weight:800; }
.wd-team-chooser > select { width:auto; min-height:46px; margin:7px 22px 0; border:1px solid #cbded4; border-radius:10px; padding:10px 12px; color:#173a30; background:#fff; font:inherit; }
.wd-team-chooser-help { min-height:22px; padding:8px 22px 0!important; color:#657970!important; font-size:.69rem!important; }
.wd-team-chooser-actions { display:flex; flex-wrap:wrap; gap:9px; padding:18px 22px; }
.wd-team-chooser-actions button { min-height:43px; }
.wd-team-chooser-new { display:flex; align-items:center; justify-content:space-between; gap:14px; border-top:1px solid #e1ebe6; padding:16px 22px; color:#60746c; background:#f8fbf9; font-size:.72rem; }
.wd-team-action-source { display:grid; gap:3px; margin:10px 22px 2px; border-left:4px solid var(--wd-green-500); border-radius:8px; padding:11px 13px; background:var(--wd-green-50); }
.wd-team-action-source span { color:var(--wd-green-700); font-size:.59rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.wd-team-action-source strong { color:#173a30; font-size:.78rem; }
.wd-team-action-source small { color:#60746c; font-size:.66rem; }
.wd-team-snooze-item { overflow-wrap:anywhere; white-space:pre-wrap; }
.wd-team-snooze-presets { display:flex; flex-wrap:wrap; gap:10px; margin:16px 22px; padding:12px; border:1px solid #d5e4dc; border-radius:12px; }
.wd-team-snooze-presets legend { color:#38564c; font-size:.78rem; font-weight:750; }
.wd-team-snooze-presets label { display:flex; align-items:center; gap:8px; min-height:48px; padding:8px 12px; border-radius:10px; background:#f1faf5; color:#24483b; cursor:pointer; }
.wd-team-snooze-presets input { width:18px; height:18px; margin:0; accent-color:var(--wd-green-600); }
.wd-team-snooze-return { display:grid; gap:8px; margin:0 22px; padding:16px; border-radius:12px; background:#eff8f3; overflow-wrap:anywhere; }
.wd-team-snooze-return p { margin:0; font-size:.85rem; line-height:1.55; color:#24483b; }
.wd-team-snooze-return small { color:#61766d; font-size:.72rem; }
.wd-team-snooze-dialog #collaboration-snooze-status { color:#9e2525; min-height:30px; }
.wd-team-snooze-dialog .wd-team-chooser-actions button { min-height:48px; }
.wd-team-action-form > .wd-team-snooze-boundary { padding:0 22px 20px; font-size:.72rem; }
.wd-team-action-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; padding:16px 22px 2px; }
.wd-team-action-grid label { display:grid; gap:6px; color:#3d584f; font-size:.71rem; font-weight:750; }
.wd-team-action-grid input,.wd-team-action-grid select,.wd-team-action-grid textarea { width:100%; min-height:44px; border:1px solid #cbded4; border-radius:10px; padding:10px 11px; color:#213c33; background:#fff; font:inherit; }
.wd-team-action-grid textarea { min-height:112px; resize:vertical; }
.wd-collaboration-shell {
  display:grid; grid-template-columns:minmax(250px,280px) minmax(430px,1fr) minmax(260px,310px);
  height:clamp(650px,calc(100vh - 210px),820px); min-height:650px; overflow:hidden;
  border:1px solid #d4e1da; border-radius:18px; background:#fff; box-shadow:0 14px 34px rgba(24,62,48,.08);
}
.wd-collaboration-shell.context-closed { grid-template-columns:minmax(250px,280px) minmax(430px,1fr); }
.wd-collaboration-rail { display:flex; min-width:0; overflow:auto; flex-direction:column; border-right:1px solid #dce7e1; padding:0 10px 16px; color:#294a40; background:linear-gradient(180deg,#f8fbf9,#f1f7f4); }
.wd-collaboration-team { position:sticky; z-index:2; top:0; display:flex; align-items:center; gap:10px; margin:0 -10px 8px; padding:16px; border-bottom:1px solid #dce8e1; background:rgba(255,255,255,.96); }
.wd-team-mark { display:block; flex:0 0 38px; width:38px; height:38px; }
.wd-collaboration-team div { display:grid; min-width:0; gap:2px; }
.wd-collaboration-team strong { overflow:hidden; color:#173a30; font-size:.82rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-team small { color:#6a7f77; font-size:.66rem; }
.wd-collaboration-nav-button { display:grid; grid-template-columns:24px 1fr auto; align-items:center; gap:7px; width:100%; min-height:40px; border:0; border-radius:9px; padding:8px 10px; color:#35584d; background:transparent; text-align:left; }
.wd-collaboration-nav-button:hover,.wd-collaboration-nav-button.active { color:#0d664c; background:#e5f5ed; }
.wd-collaboration-nav-button .wd-attention-badge { min-width:23px; min-height:23px; padding:3px 6px; color:#0d664c; background:#fff; }
.wd-collaboration-panel { min-width:0; border:1px solid #dce5eb; border-radius:12px; padding:12px; color:#243f55; background:#fff; }
.wd-collaboration-panel > header,.wd-collaboration-thread-head { display:flex; height:auto; align-items:flex-start; justify-content:space-between; gap:12px; padding:0; }
.wd-collaboration-panel h3 { margin:2px 0 0; color:#17364f; font-size:.92rem; }
.wd-collaboration-panel > p { margin:8px 0 10px; color:#657786; font-size:.68rem; line-height:1.45; }
.wd-for-you-panel { margin:4px 0 10px; }
.wd-collaboration-attention-list { display:grid; gap:8px; }
.wd-collaboration-attention { display:grid; gap:6px; border:1px solid #dce5eb; border-radius:9px; padding:10px; color:#24445d; background:#fff; }
.wd-collaboration-attention > span { overflow:hidden; color:#566b7c; font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-attention-meta,.wd-collaboration-attention-actions { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
.wd-collaboration-attention-priority { border-radius:999px; padding:4px 7px; color:#526779; background:#edf2f5; font-size:.58rem; font-weight:800; text-transform:uppercase; }
.wd-collaboration-attention-priority.high { color:#8a5a00; background:#fff3cf; }
.wd-collaboration-attention-priority.urgent { color:#a32121; background:#fff0f0; }
.wd-collaboration-attention-actions button { min-height:30px; padding:6px 8px; font-size:.61rem; }
.wd-collaboration-space-list { display:grid; gap:12px; margin-top:8px; }
.wd-collaboration-space-group > header,.wd-collaboration-people > header { display:flex; height:auto; align-items:center; justify-content:space-between; padding:6px 8px; color:#687d75; background:transparent; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.wd-collaboration-add { border:0; padding:2px 5px; color:#1a765a; background:transparent; font-size:1rem; }
.wd-collaboration-space-group-list { display:grid; gap:2px; }
.wd-collaboration-group-empty { padding:7px 10px; color:#7a8d86; font-size:.67rem; }
.wd-collaboration-space-button { display:grid; grid-template-columns:30px minmax(0,1fr) auto; width:100%; min-width:0; align-items:center; gap:8px; border:0; border-radius:9px; padding:7px 9px; color:#34554a; background:transparent; font:inherit; text-align:left; }
.wd-collaboration-space-button:hover,.wd-collaboration-space-button.active { color:#0e684e; background:#e3f4ec; }
.wd-collaboration-space-icon { display:grid; place-items:center; width:29px; height:29px; border-radius:8px; color:#0f7456; background:#e2f3eb; font-size:.64rem; font-weight:900; }
.wd-collaboration-space-copy { display:grid; min-width:0; gap:2px; }
.wd-collaboration-space-copy strong,.wd-collaboration-space-copy > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-space-copy strong { display:block; color:inherit; font-size:.75rem; font-weight:700; line-height:1.25; letter-spacing:0; }
.wd-collaboration-space-copy > span { display:block; color:#72867e; font-size:.63rem; font-weight:500; line-height:1.35; letter-spacing:0; }
.wd-collaboration-space-badges { display:flex; gap:4px; }
.wd-collaboration-space-badges b,.wd-collaboration-space-badges i { display:grid; min-width:20px; height:20px; place-items:center; border-radius:999px; color:#0f684f; background:#fff; font-size:.58rem; font-style:normal; }
.wd-collaboration-space-badges i { color:#fff; background:#e67800; }
.wd-collaboration-people { margin-top:auto; border-top:1px solid #d9e6df; padding-top:8px; }
#collaboration-people-list { display:grid; gap:2px; }
.wd-collaboration-person { display:flex; width:100%; min-width:0; align-items:center; gap:9px; border:0; border-radius:8px; padding:7px 8px; color:#29465d; background:transparent; text-align:left; }
button.wd-collaboration-person:hover { background:#e9f0f4; }
.wd-collaboration-person.compact { color:#36584d; }
button.wd-collaboration-person.compact:hover { color:#0f684f; background:#e3f4ec; }
.wd-collaboration-person > span:last-child { display:grid; min-width:0; gap:1px; }
.wd-collaboration-person strong,.wd-collaboration-person small { overflow:hidden; color:inherit; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-person strong { font-size:.7rem; }
.wd-collaboration-person small { color:#6c7f8e; font-size:.59rem; }
.wd-collaboration-person.compact small { color:#71857d; }
.wd-collaboration-avatar { position:relative; display:grid; flex:0 0 34px; place-items:center; width:34px; height:34px; border-radius:9px; color:#fff; background:linear-gradient(145deg,var(--wd-green-500),var(--wd-green-700)); font-size:.66rem; font-weight:850; }
.wd-collaboration-thread { display:flex; min-width:0; min-height:0; flex-direction:column; background:#fff; }
#collaboration-thread { display:flex; min-height:0; flex:1; flex-direction:column; }
#collaboration-thread[hidden] { display:none; }
.wd-collaboration-welcome { display:grid; max-width:470px; place-items:center; gap:10px; margin:auto; padding:34px; color:#607486; text-align:center; }
.wd-collaboration-welcome h3 { margin:0; color:#173a30; font-size:1.35rem; }
.wd-collaboration-welcome p { margin:0 0 8px; line-height:1.55; }
.wd-collaboration-welcome-mark { display:block; width:64px; height:64px; }
.wd-collaboration-thread-head { flex:0 0 auto; align-items:center; border-bottom:1px solid #dfe6eb; padding:15px 18px; }
.wd-collaboration-thread-head h3 { margin:1px 0 0; color:#173a30; font-size:1.05rem; }
.wd-collaboration-thread-head p { max-width:720px; margin:4px 0 0; overflow:hidden; color:#697d75; font-size:.68rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-thread-actions { display:flex; align-items:center; gap:8px; }
.wd-collaboration-messages { display:flex; min-height:0; flex:1 1 auto; flex-direction:column; overflow:auto; padding:14px 0 24px; background:#fff; }
.wd-team-refresh-status { margin:8px 2px 12px; color:#47645a; font-size:11px; line-height:1.5; }
.wd-team-refresh-status[data-state="stale"], .wd-team-refresh-status[data-state="offline"] { color:#85521c; }
.wd-team-history-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 20px; border-bottom:1px solid #e3ece7; background:#f8fbf9; }
.wd-team-history-controls p { margin:0; color:#567064; font-size:10px; line-height:1.5; }
.wd-team-history-controls button { flex-shrink:0; }
.wd-thread-context-note { display:block; margin:0 0 6px; color:#687e74; font-size:10px; }
@media (max-width:600px) { .wd-team-history-controls { flex-wrap:wrap; padding:9px 14px; } }
.wd-internal-message { position:relative; display:grid; grid-template-columns:38px minmax(0,1fr); width:100%; gap:10px; padding:8px 18px; background:#fff; }
.wd-internal-message:hover { background:#f6f8fa; }
.wd-internal-message.own { background:#fbfdfc; }
.wd-internal-message.compact { grid-template-columns:34px minmax(0,1fr); padding:8px 0; }
.wd-internal-message-content { min-width:0; }
.wd-internal-message-content > header { display:flex; height:auto; align-items:baseline; gap:8px; padding:0; border:0; background:transparent; }
.wd-internal-message strong { color:#23463b; font-size:.76rem; }
.wd-internal-message time,.wd-internal-message header small { color:#85939e; font-size:.59rem; }
.wd-internal-message p { margin:2px 0 0; color:#314940; font-size:.78rem; line-height:1.5; white-space:pre-wrap; overflow-wrap:anywhere; }
.wd-internal-message-flags { display:flex; flex-wrap:wrap; gap:5px; margin-top:6px; }
.wd-internal-message-flags span { border-radius:999px; padding:3px 7px; color:#27634f; background:#eaf7f1; font-size:.56rem; font-weight:800; text-transform:uppercase; }
.wd-internal-message-actions { display:flex; align-items:center; gap:7px; min-height:26px; margin-top:4px; opacity:0; transition:opacity .15s ease; }
.wd-internal-message:hover .wd-internal-message-actions,.wd-internal-message:focus-within .wd-internal-message-actions { opacity:1; }
.wd-internal-message-actions button { min-height:25px; border-radius:6px; padding:3px 7px; font-size:.6rem; }
.wd-thread-count { border:0; padding:3px 6px; color:#0f7658; background:transparent; font-size:.64rem; font-weight:750; }
.wd-collaboration-composer { display:grid; flex:0 0 auto; gap:0; margin:0 14px 14px; border:1px solid #afc6ba; border-radius:12px; padding:0; overflow:hidden; background:#fff; box-shadow:0 3px 10px rgba(24,62,48,.05); }
.wd-collaboration-composer:focus-within { border-color:var(--wd-green-600); box-shadow:0 0 0 3px rgba(15,122,92,.12); }
.wd-collaboration-composer textarea { min-height:78px; border:0; border-radius:0; padding:13px 14px 8px; outline:0; resize:vertical; box-shadow:none; }
.wd-collaboration-composer-bar { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:7px 9px; border-top:1px solid #edf1f4; }
.wd-collaboration-composer-bar > div { display:flex; align-items:center; gap:6px; }
.wd-collaboration-compose-actions button { min-height:30px; padding:5px 8px; border:0; border-radius:7px; color:#425d70; background:transparent; font-size:.64rem; }
.wd-collaboration-compose-actions button:hover,.wd-collaboration-compose-actions button.active { color:#0f6d52; background:#e9f6f0; }
.wd-composer-hint { color:#8896a1; font-size:.59rem; }
.wd-collaboration-composer-bar .primary { min-height:32px; padding:7px 13px; }
.wd-collaboration-composer-options { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; padding:10px 12px; border-top:1px solid #e3e9ed; background:#f8fafb; }
.wd-collaboration-composer label { display:grid; gap:5px; color:#42586b; font-size:.66rem; font-weight:750; }
.wd-collaboration-composer select[multiple] { min-height:84px; }
.wd-collaboration-composer-options > label > select,
.wd-collaboration-composer-options > label > input,
.wd-collaboration-composer-options summary { min-height:42px; box-sizing:border-box; }
.wd-collaboration-composer-options > label { min-width:0; }
.wd-collaboration-composer-options > label > select,
.wd-collaboration-composer-options > label > input { width:100%; min-width:0; border:1px solid #cfdcd6; border-radius:9px; padding:9px 10px; color:#24483d; background:#fff; font:inherit; font-size:.78rem; font-weight:500; }
#collaboration-due-field { grid-column:1/-1; }
.wd-team-recipient-menu { margin-top:6px; border:1px solid #d5e2dc; border-radius:12px; padding:10px; background:#fff; }
.wd-team-recipient-menu > input { width:100%; min-height:40px; margin-top:6px; box-sizing:border-box; }
.wd-team-recipient-menu .wd-collaboration-people-options { border:0; box-shadow:none; padding:2px; }
.wd-collaboration-person-option.unavailable { color:#a32121; background:#fff2ef; }
.wd-team-composer-help,.wd-team-composer-error { margin:0; padding:0 12px 12px; font-size:.69rem; line-height:1.5; color:#5c7169; }
.wd-team-composer-error { color:#a32121; }
@media(max-width:600px) {
  .wd-collaboration-composer-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wd-collaboration-composer-options .span-2 { grid-column:1/-1; }
  .wd-collaboration-composer-options > label { min-width:0; }
  .wd-collaboration-composer-options select,.wd-collaboration-composer-options input { width:100%; min-width:0; }
  .wd-collaboration-composer-bar { flex-wrap:wrap; }
}
.wd-collaboration-reply-banner { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 12px; border-bottom:1px solid #dce6ec; background:#edf6fa; }
.wd-collaboration-reply-banner > div { display:grid; min-width:0; gap:1px; }
.wd-collaboration-reply-banner strong { color:#194765; font-size:.64rem; }
.wd-collaboration-reply-banner span { overflow:hidden; color:#5b7283; font-size:.62rem; text-overflow:ellipsis; white-space:nowrap; }
.wd-collaboration-context { display:flex; min-width:0; min-height:0; overflow:auto; flex-direction:column; gap:14px; border-left:1px solid #dce7e1; padding:16px; color:#345249; background:#f7faf8; }
.wd-collaboration-context > header { display:flex; height:auto; align-items:flex-start; justify-content:space-between; padding:0 0 12px; border-bottom:1px solid #dfe6eb; background:transparent; }
.wd-collaboration-context h3 { margin:2px 0 0; color:#173a30; font-size:1rem; }
.wd-collaboration-context h4 { margin:18px 0 7px; color:#345249; font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.wd-collaboration-context p { color:#657970; font-size:.7rem; line-height:1.5; }
.wd-collaboration-member-list,.wd-collaboration-thread-replies { display:grid; gap:3px; }
.wd-collaboration-boundary { display:grid; gap:6px; margin-top:18px; border-radius:10px; padding:12px; background:#eaf6f0; }
.wd-collaboration-boundary strong { color:#235543; font-size:.7rem; }
.wd-collaboration-boundary span { color:#687c74; font-size:.66rem; line-height:1.45; }

/* Team video calls use the light WholeDesk surface system while media tiles
   retain the darker canvas needed for camera and shared-screen contrast. */
.wd-video-call-dialog {
  width:min(1180px,calc(100vw - 32px));
  height:min(820px,calc(100dvh - 32px));
  max-width:none;
  max-height:none;
  border:0;
  border-radius:22px;
  padding:0;
  overflow:hidden;
  color:#263f37;
  background:#fff;
  box-shadow:0 32px 100px rgba(15,52,39,.3);
}
.wd-video-call-dialog::backdrop { background:rgba(24,48,40,.55); backdrop-filter:blur(7px) saturate(.88); }
.wd-video-call-shell { display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; min-height:100%; background:#f3f8f5; }
.wd-video-call-head {
  display:flex;
  height:auto;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid #dce9e2;
  padding:21px 24px 19px;
  color:#173a30;
  background:linear-gradient(128deg,#fff,#f0faf5 76%,#e5f5ed);
}
.wd-video-call-head h2 { margin:2px 0 4px; color:#173a30; font-size:1.45rem; }
.wd-video-call-head p:not(.wd-eyebrow) { margin:0; color:#60756d; font-size:.72rem; }
.wd-video-call-head .wd-eyebrow { margin:0; color:var(--wd-green-700); }
.wd-video-call-head .wd-icon-button { flex:0 0 auto; border-color:#c9ddd2; color:#285348; background:#fff; }
.wd-video-call-status { min-height:40px; margin:0; border-bottom:1px solid #dce8e2; padding:11px 24px; color:#48645a; background:#f7fbf9; font-size:.72rem; line-height:1.5; }
.wd-video-call-status[data-tone="error"] { color:#8f2c31; background:#fff1f1; }
.wd-video-call-status[data-tone="warning"] { color:#805614; background:#fff7e7; }
.wd-video-participant-grid { display:grid; min-height:0; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); grid-auto-rows:minmax(190px,1fr); gap:12px; overflow:auto; padding:16px; background:#eef5f1; }
.wd-video-participant {
  position:relative;
  display:grid;
  min-height:190px;
  place-items:center;
  overflow:hidden;
  border:1px solid #c9d9d1;
  border-radius:17px;
  background:linear-gradient(145deg,#2e5145,#1d3c32);
  box-shadow:0 12px 28px rgba(17,55,42,.16);
}
.wd-video-participant video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:#0a1b29; }
.wd-video-participant video[data-screen-track="true"] { object-fit:contain; background:#07151f; }
.wd-video-participant audio { display:none; }
.wd-video-participant-avatar { display:grid; width:74px; height:74px; place-items:center; border-radius:22px; color:#fff; background:linear-gradient(145deg,var(--wd-green-500),var(--wd-green-700)); font-size:1.25rem; font-weight:850; }
.wd-video-participant-name { position:absolute; right:10px; bottom:10px; left:10px; width:max-content; max-width:calc(100% - 20px); border-radius:999px; padding:6px 10px; overflow:hidden; color:#fff; background:rgba(5,20,30,.76); font-size:.68rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; backdrop-filter:blur(4px); }
.wd-video-call-empty { display:grid; grid-row:3; place-items:center; min-height:0; padding:28px; color:#5f766d; background:#eef5f1; text-align:center; }
.wd-video-participant-grid:not(:empty) + .wd-video-call-empty { display:none; }
.wd-video-call-controls { display:flex; height:auto; align-items:center; justify-content:center; flex-wrap:wrap; gap:9px; border-top:1px solid #d7e4dd; padding:15px 18px calc(15px + env(safe-area-inset-bottom)); background:#fff; }
.wd-video-call-controls button { min-height:43px; border-color:#c9ddd2; color:#285348; background:#f7fbf9; box-shadow:none; }
.wd-video-call-controls button:hover:not(:disabled) { border-color:#8eb9a7; color:#124c3a; background:#edf8f2; }
.wd-video-call-controls button[aria-pressed="true"] { border-color:var(--wd-green-700); color:#fff; background:var(--wd-green-700); box-shadow:0 0 0 2px rgba(15,122,92,.16); }
.wd-video-call-controls button:disabled { opacity:.48; cursor:not-allowed; }
.wd-video-call-controls .wd-video-leave { border:1px solid #cf4349; border-radius:10px; padding:11px 18px; color:#fff; background:#b52d35; font-weight:750; }
.wd-video-call-controls .wd-video-leave:hover { border-color:#ed6670; background:#c83841; }

@media(max-width:1180px) {
  .wd-collaboration-shell { grid-template-columns:minmax(240px,270px) minmax(430px,1fr); }
  .wd-collaboration-context { position:fixed; z-index:1100; top:90px; right:18px; bottom:18px; width:min(340px,calc(100vw - 36px)); border:1px solid #ccd8e0; border-radius:14px; box-shadow:0 20px 60px rgba(14,38,56,.24); }
  .wd-collaboration-context:not(.open) { display:none; }
}
@media(max-width:900px) {
  .wd-collaboration-appbar { grid-template-columns:1fr auto; }
  #collaboration-search-form { grid-column:1/-1; grid-row:2; }
  .wd-collaboration-shell { grid-template-columns:minmax(220px,250px) minmax(360px,1fr); height:720px; }
}
@media(max-width:640px) {
  .wd-collaboration-appbar { grid-template-columns:1fr; padding:14px; }
  .wd-collaboration-title > img { width:38px; height:38px; }
  .wd-collaboration-app-actions { justify-content:space-between; }
  .wd-collaboration-shell,.wd-collaboration-shell.context-closed { display:block; height:auto; min-height:0; overflow:visible; }
  .wd-collaboration-rail { max-height:390px; border-radius:0; }
  .wd-collaboration-thread { min-height:610px; }
  .wd-collaboration-thread-head { align-items:flex-start; flex-direction:column; padding:13px 14px; }
  .wd-internal-message { padding:8px 13px; }
  .wd-internal-message-actions { opacity:1; }
  .wd-collaboration-composer { margin:0 10px 10px; }
  .wd-collaboration-composer-bar { align-items:flex-start; flex-direction:column; }
  .wd-collaboration-composer-bar > div:last-child { width:100%; justify-content:flex-end; }
  .wd-collaboration-composer-options { grid-template-columns:1fr; }
  .wd-team-action-grid { grid-template-columns:1fr; }
  .wd-team-action-grid .span-2 { grid-column:auto; }
  .wd-team-chooser-new { align-items:stretch; flex-direction:column; }
  .wd-team-chooser-actions { display:grid; }
  .wd-video-call-dialog { width:calc(100vw - 12px); height:calc(100dvh - 12px); border-radius:18px; }
  .wd-video-call-head { padding:17px 16px; }
  .wd-video-call-status { padding:10px 16px; }
  .wd-video-participant-grid { grid-template-columns:1fr; grid-auto-rows:minmax(210px,1fr); padding:10px; }
  .wd-video-call-controls { display:grid; grid-template-columns:1fr 1fr; padding:11px 10px calc(11px + env(safe-area-inset-bottom)); }
  .wd-video-call-controls .wd-video-leave { grid-column:1/-1; }
}

@media print {
  body * { visibility:hidden!important; }
  .wd-invoice-dialog[open],
  .wd-invoice-dialog[open] #invoice-panel-source,
  .wd-invoice-dialog[open] #invoice-source-document,
  .wd-invoice-dialog[open] .wd-source-invoice,
  .wd-invoice-dialog[open] .wd-source-invoice * { visibility:visible!important; }
  .wd-invoice-dialog[open] { position:absolute; inset:0; width:100%; height:auto; max-height:none; margin:0; overflow:visible; border:0; border-radius:0; background:#fff; box-shadow:none; }
  .wd-invoice-dialog[open] .wd-record-dialog-shell { height:auto; overflow:visible; }
  .wd-invoice-dialog[open] .wd-record-dialog-head,
  .wd-invoice-dialog[open] .wd-invoice-sidebar,
  .wd-invoice-dialog[open] .wd-invoice-section-heading,
  .wd-invoice-dialog[open] [data-invoice-panel]:not(#invoice-panel-source) { display:none!important; }
  .wd-invoice-dialog[open] .wd-invoice-workspace { display:block; background:#fff; }
  .wd-invoice-dialog[open] .wd-invoice-content { overflow:visible; padding:0; }
  .wd-invoice-dialog[open] .wd-source-invoice { max-width:none; border:0; border-radius:0; box-shadow:none; }
}
