:root {
  --bg: #07090f;
  --bg-soft: #0c0f18;
  --panel: rgba(17, 21, 32, .78);
  --panel-strong: rgba(19, 24, 37, .96);
  --panel-soft: rgba(255,255,255,.035);
  --line: rgba(255,255,255,.105);
  --line-bright: rgba(94,229,255,.28);
  --text: #f6f8ff;
  --muted: #9299ad;
  --muted-2: #656c80;
  --cyan: #5ee5ff;
  --accent: #5ee5ff;
  --violet: #9b7dff;
  --pink: #ff6eb7;
  --green: #64efae;
  --amber: #ffbd65;
  --red: #ff6d87;
  --shadow: 0 30px 80px rgba(0,0,0,.42);
}

* { box-sizing: border-box; }
html { color-scheme: dark; }
body {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 8% -10%, rgba(155,125,255,.18), transparent 36%),
    radial-gradient(circle at 100% 15%, rgba(94,229,255,.11), transparent 33%),
    linear-gradient(180deg, #0a0c14 0%, var(--bg) 55%);
  color: var(--text);
  font-family: "Space Grotesk", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
button, input, select, textarea { font: inherit; }
button { color: inherit; }
a { color: inherit; }
[hidden] { display: none !important; }

.ambient { position: fixed; pointer-events: none; border-radius: 50%; filter: blur(80px); opacity: .18; z-index: 0; }
.ambient-a { width: 420px; height: 420px; left: -180px; top: 18%; background: var(--violet); }
.ambient-b { width: 360px; height: 360px; right: -160px; bottom: 8%; background: var(--cyan); opacity: .1; }
.grid-noise {
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: linear-gradient(#000, transparent 94%);
}
.glass {
  background: linear-gradient(145deg, rgba(24,29,45,.92), rgba(11,14,23,.92));
  border: 1px solid var(--line);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045), var(--shadow);
  backdrop-filter: blur(22px);
}
.glass-subtle { background: rgba(255,255,255,.025); border: 1px solid var(--line); }

.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; font-size: 14px; font-weight: 700; letter-spacing: .12em; }
.brand > span:last-child > span { color: var(--cyan); }
.brand-mark { position: relative; width: 26px; height: 26px; transform: rotate(45deg); border: 1px solid rgba(94,229,255,.55); box-shadow: inset 0 0 12px rgba(94,229,255,.14), 0 0 18px rgba(94,229,255,.09); }
.brand-mark i { position: absolute; width: 1px; background: var(--cyan); box-shadow: 0 0 10px var(--cyan); }
.brand-mark i:first-child { height: 16px; left: 8px; top: 5px; }
.brand-mark i:last-child { height: 11px; right: 7px; bottom: 5px; }
.micro-label { color: var(--cyan); font: 500 10px/1.2 "DM Mono", monospace; letter-spacing: .21em; text-transform: uppercase; }

.login-screen { position: relative; z-index: 2; min-height: 100vh; display: grid; place-items: center; padding: 72px 24px; }
.login-brand { position: absolute; top: 28px; left: 32px; }
.login-card { position: relative; overflow: hidden; width: min(570px, 100%); border-radius: 28px; padding: 46px; }
.login-card::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle at 85% 0%, rgba(94,229,255,.11), transparent 35%), radial-gradient(circle at 0 100%, rgba(155,125,255,.13), transparent 40%); }
.login-card > * { position: relative; z-index: 1; }
.login-card h1 { margin: 22px 0 17px; font-size: clamp(38px, 7vw, 58px); line-height: .98; letter-spacing: -.055em; }
.login-card h1 em { font-style: normal; color: transparent; background: linear-gradient(90deg, #d8cdff, var(--violet), var(--cyan)); background-clip: text; -webkit-background-clip: text; }
.login-card > p { margin: 0 0 30px; color: var(--muted); line-height: 1.65; }
.login-card label { display: grid; gap: 10px; font-size: 13px; color: #c9cede; }
.password-wrap { position: relative; display: block; }
.password-wrap input { padding-right: 52px; }
.password-wrap .icon-button { position: absolute; top: 50%; right: 8px; translate: 0 -50%; }
.login-button { width: 100%; margin-top: 14px; }
.form-message { min-height: 22px; margin-top: 12px; color: var(--red); font-size: 13px; }
.login-foot { display: flex; justify-content: space-between; gap: 16px; margin-top: 26px; padding-top: 19px; border-top: 1px solid var(--line); color: var(--muted-2); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .12em; }
.login-foot span { display: inline-flex; align-items: center; gap: 8px; }
.login-foot i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 10px var(--green); }
.login-orbit { position: absolute; width: 180px; height: 180px; right: -50px; top: -55px; border: 1px solid rgba(94,229,255,.12); border-radius: 50%; }
.login-orbit span { position: absolute; border-radius: 50%; border: 1px solid rgba(155,125,255,.13); inset: 20px; }
.login-orbit span:nth-child(2) { inset: 44px; }
.login-orbit span:nth-child(3) { inset: 70px; background: rgba(94,229,255,.07); box-shadow: 0 0 32px rgba(94,229,255,.12); }

input, select, textarea {
  width: 100%; min-height: 48px; border: 1px solid rgba(255,255,255,.12); border-radius: 13px; outline: 0;
  background: rgba(3,5,10,.58); color: var(--text); padding: 12px 14px;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
textarea { min-height: 110px; resize: vertical; line-height: 1.5; }
input:focus, select:focus, textarea:focus { border-color: rgba(94,229,255,.48); box-shadow: 0 0 0 3px rgba(94,229,255,.08); background: rgba(6,9,15,.8); }
input::placeholder, textarea::placeholder { color: #5e6577; }

.primary-button, .secondary-button, .danger-button, .quiet-button, .icon-button, .chip-button {
  border: 0; cursor: pointer; transition: transform .16s ease, border-color .2s ease, background .2s ease, opacity .2s ease;
}
.primary-button, .secondary-button, .danger-button { min-height: 44px; border-radius: 12px; padding: 0 16px; font-weight: 600; }
.primary-button { background: linear-gradient(110deg, rgba(155,125,255,.78), rgba(94,229,255,.45)); border: 1px solid rgba(94,229,255,.38); box-shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 13px 30px rgba(75,87,210,.16); }
.primary-button:hover, .secondary-button:hover, .danger-button:hover { transform: translateY(-1px); }
.secondary-button { background: rgba(255,255,255,.045); border: 1px solid var(--line); color: #d6daea; }
.secondary-button:hover { border-color: rgba(94,229,255,.28); background: rgba(94,229,255,.055); }
.danger-button { background: rgba(255,109,135,.11); border: 1px solid rgba(255,109,135,.32); color: #ff9eb0; }
.quiet-button { min-height: 38px; display: flex; align-items: center; gap: 8px; background: transparent; padding: 7px 4px; text-align: left; color: var(--muted); }
.quiet-button:hover { color: var(--text); }
.danger-text { color: #d47b8b; }
.icon-button { display: inline-grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: rgba(255,255,255,.045); border: 1px solid var(--line); }
.icon-button:hover { border-color: rgba(94,229,255,.3); background: rgba(94,229,255,.06); }
button:disabled { opacity: .42; cursor: not-allowed; transform: none !important; }

.office-app { position: relative; z-index: 2; min-height: 100vh; display: grid; grid-template-columns: 218px minmax(0, 1fr); transition: grid-template-columns .22s ease; }
.sidebar { position: sticky; top: 0; height: 100dvh; display: flex; flex-direction: column; padding: 18px 12px 14px; background: rgba(7,9,15,.9); border-right: 1px solid var(--line); backdrop-filter: blur(22px); z-index: 30; transition: padding .22s ease; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
.sidebar-head { position: relative; min-height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 2px 0 6px; }
.sidebar-collapse-button { position: static; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 9px; background: rgba(255,255,255,.04); box-shadow: none; font-size: 18px; }
.sidebar-action-icon { width: 24px; display: inline-grid; place-items: center; color: var(--cyan); font: 500 17px/1 "DM Mono", monospace; }
.sidebar-action-label { min-width: 0; }
.workspace-label { margin: 16px 6px 13px; padding: 11px 12px; border-radius: 12px; border: 1px solid rgba(94,229,255,.12); background: linear-gradient(135deg, rgba(94,229,255,.055), rgba(155,125,255,.045)); }
.workspace-label span { display: block; color: var(--cyan); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .18em; }
.workspace-label b { display: block; margin-top: 6px; font-size: 13px; }
.main-nav { display: grid; gap: 3px; }
.nav-item { width: 100%; min-height: 41px; display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: center; gap: 7px; padding: 0 9px; border-radius: 11px; border: 1px solid transparent; background: transparent; color: var(--muted); text-align: left; cursor: pointer; }
.nav-item:hover { background: rgba(255,255,255,.03); color: #dfe3f2; }
.nav-item.active { background: linear-gradient(100deg, rgba(155,125,255,.12), rgba(94,229,255,.055)); border-color: rgba(155,125,255,.22); color: var(--text); }
.nav-icon { color: var(--cyan); font: 500 16px/1 "DM Mono", monospace; }
.nav-item small { display: none; }
.sidebar-bottom { margin-top: auto; display: grid; padding: 10px 6px 0; border-top: 1px solid var(--line); }
.security-chip { display: flex; align-items: center; gap: 8px; margin-top: 8px; color: #6f778c; font: 500 8px/1 "DM Mono", monospace; letter-spacing: .14em; }
.security-chip i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 9px var(--green); }

.workspace { min-width: 0; padding: 0 34px 54px; }
.topbar { position: sticky; top: 0; z-index: 20; min-height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 0; background: linear-gradient(180deg, rgba(7,9,15,.96) 64%, rgba(7,9,15,0)); backdrop-filter: blur(16px); }
.topbar-left { display: flex; align-items: center; gap: 12px; }
.topbar h2 { margin: 7px 0 0; font-size: 26px; letter-spacing: -.04em; }
.topbar-actions { display: flex; align-items: center; gap: 10px; }
.global-search { width: min(340px, 30vw); position: relative; }
.global-search > span { position: absolute; left: 14px; top: 50%; translate: 0 -50%; color: var(--muted); }
.global-search input { min-height: 44px; padding-left: 38px; }
.view-root { width: min(1500px, 100%); margin: 0 auto; }
.module-load-state { min-height: 220px; display: flex; align-items: center; justify-content: center; gap: 18px; padding: 34px; border-radius: 20px; text-align: left; }
.module-load-state h3 { margin: 7px 0 5px; font-size: 21px; }
.module-load-state p { max-width: 520px; margin: 0; color: var(--muted); line-height: 1.55; }
.module-load-state .secondary-button { margin-top: 14px; }
.module-load-spinner { width: 32px; height: 32px; flex: 0 0 32px; border-radius: 50%; border: 2px solid rgba(94,229,255,.16); border-top-color: var(--cyan); animation: module-spin .8s linear infinite; }
@keyframes module-spin { to { transform: rotate(360deg); } }

.hero-strip { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr); gap: 17px; margin-bottom: 18px; }
.hero-panel { position: relative; min-height: 220px; overflow: hidden; border-radius: 23px; padding: 28px; }
.hero-panel::after { content: ""; position: absolute; width: 330px; height: 330px; right: -80px; top: -120px; border-radius: 50%; background: radial-gradient(circle, rgba(94,229,255,.14), transparent 65%); }
.hero-panel > * { position: relative; z-index: 1; }
.hero-panel h3 { margin: 18px 0 11px; max-width: 700px; font-size: clamp(28px, 4vw, 48px); line-height: 1.04; letter-spacing: -.05em; }
.hero-panel h3 em { font-style: normal; color: var(--cyan); }
.hero-panel p { max-width: 660px; margin: 0; color: var(--muted); line-height: 1.65; }
.hero-actions { display: flex; gap: 10px; margin-top: 24px; }
.check-panel { border-radius: 23px; padding: 24px; display: flex; flex-direction: column; justify-content: space-between; }
.check-orbit { width: 74px; height: 74px; display: grid; place-items: center; border-radius: 22px; color: var(--green); background: rgba(100,239,174,.07); border: 1px solid rgba(100,239,174,.18); font-size: 25px; box-shadow: inset 0 0 26px rgba(100,239,174,.05); }
.check-panel strong { display: block; margin-top: 24px; font-size: 28px; }
.check-panel p { margin: 7px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; }

.stat-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.stat-card { min-height: 118px; border-radius: 18px; padding: 18px; }
.stat-card .stat-label { color: var(--muted); font-size: 12px; }
.stat-card strong { display: block; margin-top: 17px; font-size: 28px; letter-spacing: -.04em; }
.stat-card small { display: block; margin-top: 4px; color: var(--muted-2); font-size: 11px; }
.stat-card.critical strong { color: #ff8fa3; }
.stat-card.warning strong { color: var(--amber); }

.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(340px, .75fr); gap: 18px; }
.panel { border-radius: 21px; overflow: hidden; }
.panel-head { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.panel-head h3 { margin: 6px 0 0; font-size: 20px; letter-spacing: -.035em; }
.panel-body { padding: 12px; }

.alert-list { display: grid; gap: 8px; }
.alert-row { display: grid; grid-template-columns: 9px minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 13px; border: 1px solid transparent; border-radius: 13px; background: rgba(255,255,255,.025); cursor: pointer; }
.alert-row:hover { border-color: rgba(255,255,255,.1); background: rgba(255,255,255,.038); }
.alert-dot { width: 8px; height: 8px; border-radius: 50%; }
.alert-row.critical .alert-dot { background: var(--red); box-shadow: 0 0 12px rgba(255,109,135,.7); }
.alert-row.warning .alert-dot { background: var(--amber); box-shadow: 0 0 12px rgba(255,189,101,.6); }
.alert-row strong { display: block; font-size: 13px; }
.alert-row span { display: block; margin-top: 4px; color: var(--muted); font-size: 11px; }
.alert-row time { color: var(--muted-2); font: 500 10px/1 "DM Mono", monospace; }

.activity-list { display: grid; gap: 8px; }
.activity-row { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 11px; padding: 11px; border-radius: 12px; }
.activity-icon { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 10px; background: rgba(94,229,255,.055); color: var(--cyan); font-size: 12px; }
.activity-row strong { display: block; font-size: 12px; }
.activity-row span { display: block; margin-top: 4px; color: var(--muted-2); font-size: 10px; }

.module-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 15px; }
.module-tabs { display: inline-flex; padding: 4px; border-radius: 13px; background: rgba(255,255,255,.035); border: 1px solid var(--line); }
.module-tabs button { min-height: 35px; border: 0; border-radius: 9px; padding: 0 13px; background: transparent; color: var(--muted); cursor: pointer; }
.module-tabs button.active { color: var(--text); background: rgba(255,255,255,.07); }
.record-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.record-card { position: relative; min-height: 235px; display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; padding: 19px; cursor: pointer; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.record-card:hover { transform: translateY(-3px); border-color: rgba(94,229,255,.24); box-shadow: 0 25px 60px rgba(0,0,0,.28); }
.record-card::after { content: ""; position: absolute; width: 180px; height: 180px; right: -80px; top: -80px; border-radius: 50%; background: radial-gradient(circle, rgba(94,229,255,.08), transparent 68%); }
.record-card > * { position: relative; z-index: 1; }
.record-card-top { display: flex; justify-content: space-between; gap: 14px; }
.record-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 14px; background: linear-gradient(145deg, rgba(94,229,255,.08), rgba(155,125,255,.08)); border: 1px solid rgba(94,229,255,.14); color: var(--cyan); font-size: 18px; }
.status-pill { align-self: start; border-radius: 999px; padding: 6px 9px; text-transform: uppercase; font: 500 8px/1 "DM Mono", monospace; letter-spacing: .13em; }
.status-pill.active { color: var(--green); border: 1px solid rgba(100,239,174,.2); background: rgba(100,239,174,.07); }
.status-pill.inactive { color: #8e96aa; border: 1px solid var(--line); background: rgba(255,255,255,.03); }
.status-pill.pending { color: var(--amber); border: 1px solid rgba(255,189,101,.2); background: rgba(255,189,101,.07); }
.status-pill.out-of-service { color: var(--red); border: 1px solid rgba(255,109,135,.22); background: rgba(255,109,135,.07); }
.record-card h3 { margin: 22px 0 5px; font-size: 21px; letter-spacing: -.04em; }
.record-card .record-subtitle { color: var(--muted); font-size: 12px; }
.record-meta { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: auto; padding-top: 20px; }
.record-meta span { display: block; color: var(--muted-2); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.record-meta b { display: block; margin-top: 5px; font-size: 12px; font-weight: 500; color: #dfe3ef; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.record-alert-count { position: absolute; right: 18px; bottom: 18px; min-width: 25px; height: 25px; display: grid; place-items: center; border-radius: 999px; background: rgba(255,109,135,.11); border: 1px solid rgba(255,109,135,.22); color: #ff9bad; font: 500 9px/1 "DM Mono", monospace; }

.empty-state { min-height: 300px; display: grid; place-items: center; align-content: center; text-align: center; border-radius: 22px; padding: 30px; }
.empty-icon { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; border: 1px solid rgba(94,229,255,.18); background: rgba(94,229,255,.055); color: var(--cyan); font-size: 25px; }
.empty-state h3 { margin: 18px 0 7px; }
.empty-state p { margin: 0; color: var(--muted); }

.detail-shell { display: grid; gap: 16px; }
.detail-hero { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 18px; border-radius: 22px; padding: 22px; }
.detail-avatar { width: 74px; height: 74px; display: grid; place-items: center; border-radius: 20px; background: linear-gradient(145deg, rgba(94,229,255,.09), rgba(155,125,255,.11)); border: 1px solid rgba(94,229,255,.18); color: var(--cyan); font-size: 28px; }
.detail-title h3 { margin: 7px 0 5px; font-size: 29px; letter-spacing: -.045em; }
.detail-title p { margin: 0; color: var(--muted); }
.detail-actions { display: flex; gap: 9px; }
.detail-tabs { display: flex; gap: 6px; overflow-x: auto; padding: 5px; border-radius: 15px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.detail-tabs button { flex: 0 0 auto; min-height: 38px; border: 0; border-radius: 10px; padding: 0 15px; background: transparent; color: var(--muted); cursor: pointer; }
.detail-tabs button.active { color: var(--text); background: rgba(255,255,255,.07); }
.detail-content { border-radius: 21px; padding: 19px; }
.info-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 11px; }
.info-item { min-height: 82px; border-radius: 14px; padding: 14px; background: rgba(255,255,255,.025); border: 1px solid rgba(255,255,255,.065); }
.info-item span { display: block; color: var(--muted-2); font-size: 9px; text-transform: uppercase; letter-spacing: .12em; }
.info-item b { display: block; margin-top: 9px; color: #e1e5f1; font-size: 13px; font-weight: 500; word-break: break-word; }
.section-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 4px 0 14px; }
.section-head h4 { margin: 0; font-size: 17px; }
.section-head p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }

.table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 15px; }
table { width: 100%; border-collapse: collapse; min-width: 760px; }
th { padding: 12px 13px; text-align: left; color: var(--muted-2); font: 500 9px/1 "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; background: rgba(255,255,255,.025); }
td { padding: 13px; border-top: 1px solid rgba(255,255,255,.065); color: #dfe3ef; font-size: 12px; vertical-align: middle; }
td.muted { color: var(--muted); }
.table-actions { display: flex; justify-content: flex-end; gap: 6px; }
.table-actions .icon-button { width: 32px; height: 32px; border-radius: 9px; }
.money { font-variant-numeric: tabular-nums; }
.document-name { display: flex; align-items: center; gap: 10px; }
.file-icon { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: rgba(155,125,255,.08); border: 1px solid rgba(155,125,255,.15); color: #c5b8ff; }

.modal { width: min(850px, calc(100% - 28px)); max-height: calc(100vh - 28px); padding: 0; border: 0; background: transparent; color: var(--text); }
.modal::backdrop { background: rgba(2,4,9,.78); backdrop-filter: blur(12px); }
.modal-shell { width: 100%; max-height: calc(100vh - 28px); display: flex; flex-direction: column; border-radius: 24px; overflow: hidden; }
.modal-head { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 21px; border-bottom: 1px solid var(--line); }
.modal-head h3 { margin: 7px 0 0; font-size: 23px; letter-spacing: -.04em; }
.modal-body { min-height: 120px; overflow-y: auto; padding: 21px; }
.modal-actions { display: flex; justify-content: flex-end; gap: 9px; padding: 16px 21px; border-top: 1px solid var(--line); background: rgba(5,7,12,.4); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 15px; }
.form-grid .full { grid-column: 1 / -1; }
.form-grid .span-3 { grid-column: span 1; }
.form-section { grid-column: 1 / -1; margin-top: 8px; padding-top: 18px; border-top: 1px solid var(--line); }
.form-section:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.form-section h4 { margin: 0 0 4px; font-size: 16px; }
.form-section p { margin: 0 0 14px; color: var(--muted); font-size: 12px; }
.field { display: grid; align-content: start; gap: 8px; color: #c9cede; font-size: 12px; }
.field small { color: var(--muted-2); }
.checkbox-field { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 10px 13px; border-radius: 13px; background: rgba(255,255,255,.025); border: 1px solid var(--line); }
.checkbox-field input { width: 20px; min-height: 20px; accent-color: var(--cyan); }
.form-divider { grid-column: 1 / -1; height: 1px; background: var(--line); margin: 3px 0; }
.confirm-modal { width: min(470px, calc(100% - 28px)); }
.confirm-modal .modal-shell > p { padding: 0 21px 10px; color: var(--muted); line-height: 1.6; }

.toast-stack { position: fixed; right: 24px; top: 105px; z-index: 80; width: min(360px, calc(100% - 34px)); display: grid; gap: 9px; }
.toast { display: grid; grid-template-columns: 8px 1fr auto; gap: 11px; align-items: center; padding: 14px; border-radius: 14px; background: rgba(18,22,34,.96); border: 1px solid var(--line); box-shadow: var(--shadow); animation: toast-in .25s ease both; }
.toast i { width: 8px; height: 8px; border-radius: 50%; background: var(--green); }
.toast.error i { background: var(--red); }
.toast span { font-size: 12px; }
.toast button { border: 0; background: transparent; color: var(--muted); cursor: pointer; }
@keyframes toast-in { from { opacity: 0; transform: translateY(-8px); } }

.sidebar-scrim { display: none; }
.mobile-only { display: none; }
.desktop-only { display: inline-grid; }

@media (min-width: 901px) {
  body.sidebar-collapsed .office-app { grid-template-columns: 68px minmax(0, 1fr); }
  body.sidebar-collapsed .sidebar { padding-inline: 8px; }
  body.sidebar-collapsed .sidebar-head { min-height: 80px; flex-direction: column; justify-content: flex-start; gap: 7px; padding-inline: 0; }
  body.sidebar-collapsed .brand { justify-content: center; gap: 0; }
  body.sidebar-collapsed .brand-label,
  body.sidebar-collapsed .workspace-label,
  body.sidebar-collapsed .nav-item > span:not(.nav-icon),
  body.sidebar-collapsed .nav-item > small,
  body.sidebar-collapsed .sidebar-action-label,
  body.sidebar-collapsed .security-chip > span { display: none; }
  body.sidebar-collapsed .main-nav { gap: 4px; }
  body.sidebar-collapsed .nav-item { min-height: 41px; grid-template-columns: 1fr; place-items: center; padding: 0; }
  body.sidebar-collapsed .nav-icon { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 11px; text-align: center; }
  body.sidebar-collapsed .sidebar-bottom { align-items: center; justify-items: center; padding-inline: 0; }
  body.sidebar-collapsed .quiet-button { width: 40px; min-height: 38px; justify-content: center; padding: 0; border-radius: 10px; }
  body.sidebar-collapsed .sidebar-action-icon { width: 38px; height: 38px; }
  body.sidebar-collapsed .security-chip { justify-content: center; margin-top: 12px; }
  body.sidebar-collapsed .sidebar-collapse-button { position: static; width: 40px; height: 31px; margin: 0; }
}

@media (max-width: 1220px) {
  .stat-grid { grid-template-columns: repeat(3, 1fr); }
  .record-grid { grid-template-columns: repeat(2, 1fr); }
  .info-grid { grid-template-columns: repeat(3, 1fr); }
  .topbar-actions .secondary-button { display: none; }
}

@media (max-width: 900px) {
  .office-app, body.sidebar-collapsed .office-app { grid-template-columns: 1fr; }
  .sidebar, body.sidebar-collapsed .sidebar { position: fixed; left: 0; top: 0; width: min(300px, 86vw); padding: 25px 18px; transform: translateX(-105%); transition: transform .25s ease; box-shadow: 30px 0 70px rgba(0,0,0,.45); }
  body.sidebar-open .sidebar { transform: translateX(0); }
  .sidebar-scrim { display: block; position: fixed; inset: 0; z-index: 25; background: rgba(1,3,8,.7); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
  body.sidebar-open .sidebar-scrim { opacity: 1; pointer-events: auto; }
  .mobile-only { display: inline-grid; }
  .desktop-only { display: none !important; }
  .workspace { padding: 0 20px 44px; }
  .hero-strip, .dashboard-grid { grid-template-columns: 1fr; }
  .global-search { width: min(340px, 45vw); }
  .info-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 680px) {
  .login-screen { padding: 82px 14px 30px; }
  .login-brand { left: 20px; top: 22px; }
  .login-card { padding: 28px 20px; border-radius: 22px; }
  .login-foot { align-items: flex-start; flex-direction: column; }
  .workspace { padding: 0 14px 38px; }
  .topbar { align-items: flex-start; min-height: 122px; flex-direction: column; gap: 12px; padding: 16px 0 20px; }
  .topbar-actions { width: 100%; }
  .global-search { flex: 1; width: auto; }
  .topbar-actions #context-add-button { padding: 0 13px; }
  .topbar-actions #context-add-button span:first-child { display: none; }
  .hero-panel { padding: 22px; min-height: 245px; }
  .hero-actions { flex-direction: column; }
  .stat-grid { grid-template-columns: repeat(2, 1fr); }
  .stat-card { min-height: 104px; }
  .record-grid { grid-template-columns: 1fr; }
  .detail-hero { grid-template-columns: auto minmax(0,1fr); }
  .detail-actions { grid-column: 1 / -1; }
  .detail-actions button { flex: 1; }
  .info-grid { grid-template-columns: 1fr 1fr; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid .full, .form-section, .form-divider { grid-column: auto; }
  .modal { width: 100%; max-height: 100dvh; margin: auto 0 0; }
  .modal-shell { max-height: 94dvh; border-radius: 22px 22px 0 0; }
  .module-toolbar { align-items: flex-start; flex-direction: column; }
  .module-tabs { max-width: 100%; overflow-x: auto; }
}

@media (max-width: 420px) {
  .stat-grid { grid-template-columns: 1fr; }
  .info-grid { grid-template-columns: 1fr; }
  .topbar-actions #context-add-button { width: 48px; padding: 0; font-size: 0; }
  .topbar-actions #context-add-button span { font-size: 18px; }
}

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

/* v4.1 — fast visual polish, filtering, list views, exports and previews */
body { background-attachment: fixed; }
.ambient { filter: blur(68px); opacity: .13; }
.workspace { padding-top: 1px; }
.topbar {
  top: 10px;
  min-height: 78px;
  margin: 10px auto 18px;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background:
    radial-gradient(circle at 12% 0%, rgba(155,125,255,.11), transparent 34%),
    radial-gradient(circle at 92% 0%, rgba(94,229,255,.085), transparent 38%),
    linear-gradient(135deg, rgba(16,20,31,.95), rgba(8,11,18,.94));
  box-shadow: 0 16px 45px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.045);
  backdrop-filter: blur(12px);
  overflow: hidden;
}
.topbar::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 42%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(155,125,255,.7), rgba(94,229,255,.72), transparent);
  pointer-events: none;
}
.topbar-left, .topbar-actions { position: relative; z-index: 1; }
.view-root { margin-top: 0; }

.hero-panel { background-image: linear-gradient(145deg, rgba(27,32,49,.94), rgba(11,14,23,.94)), radial-gradient(circle at 100% 0%, rgba(94,229,255,.12), transparent 36%); }
.hero-spark { position: absolute; right: 45px; top: 34px; width: 110px; height: 80px; opacity: .72; }
.hero-spark i { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 14px rgba(94,229,255,.75); }
.hero-spark i:nth-child(1) { right: 8px; top: 8px; }
.hero-spark i:nth-child(2) { right: 65px; top: 28px; width: 3px; height: 3px; background: var(--violet); box-shadow: 0 0 12px rgba(155,125,255,.72); }
.hero-spark i:nth-child(3) { right: 34px; top: 64px; width: 2px; height: 2px; }
.check-panel { position: relative; width: 100%; color: inherit; text-align: left; cursor: pointer; transition: transform .18s ease, border-color .18s ease; }
.check-panel:hover { transform: translateY(-2px); border-color: rgba(100,239,174,.24); }
.stat-card {
  position: relative;
  width: 100%;
  color: inherit;
  text-align: left;
  cursor: pointer;
  overflow: hidden;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.stat-card::before { content: ""; position: absolute; inset: auto -35px -55px auto; width: 110px; height: 110px; border-radius: 50%; background: radial-gradient(circle, rgba(94,229,255,.07), transparent 68%); }
.stat-card:hover { transform: translateY(-2px); border-color: rgba(94,229,255,.22); background: rgba(94,229,255,.035); }
.stat-arrow { position: absolute; right: 15px; top: 14px; color: var(--muted-2); font-size: 13px; }
.check-panel .stat-arrow { right: 20px; top: 20px; }
.stat-card:hover .stat-arrow, .check-panel:hover .stat-arrow { color: var(--cyan); }

.activity-row.clickable { cursor: pointer; transition: background .16s ease, transform .16s ease; }
.activity-row.clickable:hover { background: rgba(94,229,255,.045); transform: translateX(2px); }
.activity-row span { line-height: 1.4; }

.module-toolbar-stack { display: grid; align-items: stretch; gap: 12px; }
.module-toolbar-main { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.module-toolbar-meta { display: flex; align-items: center; gap: 13px; }
.record-filter-bar { display: grid; grid-template-columns: minmax(230px, 1fr) minmax(155px, .35fr) minmax(165px, .35fr) auto; gap: 10px; align-items: end; padding: 11px; border-radius: 16px; }
.section-search { position: relative; display: block; }
.section-search > span { position: absolute; left: 14px; top: 50%; translate: 0 -50%; color: var(--muted); z-index: 1; }
.section-search input { min-height: 42px; padding-left: 38px; }
.compact-field { display: grid; gap: 6px; }
.compact-field > span { color: var(--muted-2); font: 500 8px/1 "DM Mono", monospace; letter-spacing: .13em; text-transform: uppercase; padding-left: 3px; }
.compact-field select { min-height: 42px; padding: 9px 35px 9px 12px; }
.filter-reset { min-height: 42px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255,255,255,.035); color: var(--muted); cursor: pointer; }
.filter-reset:hover { color: var(--text); border-color: rgba(94,229,255,.24); }
.view-toggle { flex: 0 0 auto; display: inline-grid; grid-auto-flow: column; gap: 3px; padding: 3px; border-radius: 11px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.view-toggle button { width: 35px; height: 33px; display: grid; place-items: center; border: 0; border-radius: 8px; background: transparent; color: var(--muted-2); cursor: pointer; font-size: 15px; }
.view-toggle button.active { color: var(--cyan); background: rgba(94,229,255,.085); box-shadow: inset 0 0 0 1px rgba(94,229,255,.11); }
.record-collection.record-list { display: grid; grid-template-columns: 1fr; gap: 9px; }
.record-list .record-card { min-height: 105px; display: grid; grid-template-columns: 58px minmax(190px, 1.1fr) minmax(340px, 1.8fr) auto; align-items: center; gap: 18px; padding: 15px 18px; }
.record-list .record-card-top { display: contents; }
.record-list .record-icon { grid-column: 1; grid-row: 1; }
.record-list .status-pill { grid-column: 4; grid-row: 1; margin-right: 38px; }
.record-list .record-card-copy { grid-column: 2; grid-row: 1; min-width: 0; }
.record-list .record-card h3 { margin: 0 0 6px; font-size: 18px; }
.record-list .record-meta { grid-column: 3; grid-row: 1; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin: 0; padding: 0; }
.record-list .record-alert-count { right: 18px; bottom: 14px; }
.record-open-arrow { display: none; position: absolute; right: 18px; top: 50%; translate: 0 -50%; color: var(--muted-2); }
.record-list .record-open-arrow { display: block; }
.record-list .record-card::after { width: 130px; height: 130px; right: -55px; top: -65px; }

.detail-nav-row { display: flex; align-items: center; gap: 10px; }
.detail-nav-row .detail-tabs { flex: 1; min-width: 0; }
.info-grid.list-view { grid-template-columns: 1fr; gap: 7px; }
.info-grid.list-view .info-item { min-height: 52px; display: grid; grid-template-columns: minmax(160px, .36fr) minmax(0, 1fr); align-items: center; gap: 18px; padding: 11px 14px; }
.info-grid.list-view .info-item b { margin: 0; text-align: left; }

.spend-summary { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 16px; }
.spend-summary > div { padding: 16px; border-radius: 14px; border: 1px solid var(--line); background: rgba(255,255,255,.025); }
.spend-summary span { display: block; color: var(--muted); font-size: 11px; }
.spend-summary strong { display: block; margin-top: 9px; font-size: 23px; }

.export-grid { display: grid; gap: 10px; }
.export-option { width: 100%; display: grid; grid-template-columns: 56px minmax(0,1fr) auto; align-items: center; gap: 15px; padding: 15px; border-radius: 16px; border: 1px solid var(--line); background: rgba(255,255,255,.025); color: inherit; text-align: left; cursor: pointer; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.export-option:hover { transform: translateY(-1px); border-color: rgba(94,229,255,.25); background: rgba(94,229,255,.04); }
.export-icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 14px; background: linear-gradient(145deg, rgba(155,125,255,.1), rgba(94,229,255,.08)); border: 1px solid rgba(94,229,255,.15); color: var(--cyan); font: 500 10px/1 "DM Mono", monospace; }
.export-option strong { display: block; font-size: 15px; }
.export-option p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.export-option b { color: var(--muted); font-size: 11px; }
.export-progress { margin-top: 15px; display: grid; grid-template-columns: 10px 1fr; gap: 12px; align-items: center; padding: 14px; border-radius: 13px; border: 1px solid rgba(94,229,255,.14); background: rgba(94,229,255,.04); }
.export-progress > span { width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
.export-progress strong { display: block; font-size: 12px; }
.export-progress p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }

.file-preview-modal { width: min(1180px, calc(100% - 28px)); height: min(880px, calc(100dvh - 28px)); padding: 0; border: 0; background: transparent; color: var(--text); }
.file-preview-modal::backdrop { background: rgba(2,4,9,.84); backdrop-filter: blur(10px); }
.file-preview-shell { width: 100%; height: 100%; display: grid; grid-template-rows: auto minmax(0,1fr) auto; border-radius: 24px; overflow: hidden; }
.file-preview-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 17px 20px; border-bottom: 1px solid var(--line); }
.file-preview-head h3 { margin: 7px 0 3px; font-size: 21px; }
.file-preview-head p { margin: 0; color: var(--muted); font-size: 11px; }
.file-preview-body { min-height: 0; overflow: auto; background: #080b12; }
.file-preview-actions { display: flex; justify-content: flex-end; gap: 9px; padding: 13px 18px; border-top: 1px solid var(--line); background: rgba(7,9,15,.92); }
.preview-loading { min-height: 320px; display: grid; place-items: center; align-content: center; gap: 15px; color: var(--muted); }
.preview-loading i { width: 18px; height: 18px; border-radius: 50%; border: 2px solid rgba(94,229,255,.2); border-top-color: var(--cyan); animation: preview-spin .8s linear infinite; }
@keyframes preview-spin { to { transform: rotate(360deg); } }
.image-preview { min-height: 100%; display: grid; place-items: center; padding: 20px; }
.image-preview img { max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 10px; box-shadow: 0 25px 70px rgba(0,0,0,.45); }
.pdf-preview { width: 100%; height: 100%; min-height: 620px; border: 0; background: #fff; }
.docx-preview { min-height: 100%; padding: 30px 18px 60px; background: #20242d; color: #17191f; }
.docx-page { width: min(820px, 100%); min-height: 980px; margin: 0 auto; padding: 68px 72px; background: #fff; box-shadow: 0 18px 55px rgba(0,0,0,.38); font-family: Arial, sans-serif; line-height: 1.55; }
.docx-page p { margin: 0 0 12px; white-space: pre-wrap; }
.text-preview { min-height: 100%; margin: 0; padding: 22px; color: #dbe1ef; white-space: pre-wrap; word-break: break-word; font: 12px/1.6 "DM Mono", monospace; }
.preview-unavailable { min-height: 420px; display: grid; place-items: center; align-content: center; text-align: center; padding: 28px; }
.preview-unavailable > div { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 18px; border: 1px solid rgba(155,125,255,.2); background: rgba(155,125,255,.07); color: #c8bcff; font-size: 23px; }
.preview-unavailable h4 { margin: 18px 0 7px; font-size: 18px; }
.preview-unavailable p { max-width: 520px; margin: 0; color: var(--muted); line-height: 1.55; }

@media (max-width: 1220px) {
  .record-filter-bar { grid-template-columns: minmax(210px, 1fr) repeat(2, minmax(145px, .4fr)) auto; }
  .record-list .record-card { grid-template-columns: 58px minmax(170px, .8fr) minmax(300px, 1.5fr) auto; }
}

@media (max-width: 900px) {
  .topbar { top: 7px; margin-top: 7px; }
  .record-filter-bar { grid-template-columns: 1fr 1fr; }
  .section-search { grid-column: 1 / -1; }
  .filter-reset { align-self: end; }
  .record-list .record-card { grid-template-columns: 52px minmax(0,1fr) auto; min-height: 130px; }
  .record-list .record-icon { grid-column: 1; }
  .record-list .record-card-copy { grid-column: 2; }
  .record-list .status-pill { grid-column: 3; margin-right: 28px; }
  .record-list .record-meta { grid-column: 1 / -1; grid-row: 2; grid-template-columns: repeat(4, 1fr); padding-left: 0; }
  .spend-summary { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .topbar { min-height: auto; margin-bottom: 14px; padding: 13px; border-radius: 16px; }
  .topbar-actions { flex-wrap: wrap; }
  .module-toolbar-main { align-items: flex-start; flex-direction: column; }
  .module-toolbar-meta { width: 100%; justify-content: space-between; }
  .record-filter-bar { grid-template-columns: 1fr; }
  .section-search { grid-column: auto; }
  .detail-nav-row { align-items: stretch; flex-direction: column; }
  .detail-nav-row .view-toggle { align-self: flex-end; }
  .info-grid.list-view .info-item { grid-template-columns: 1fr; gap: 7px; }
  .record-list .record-card { grid-template-columns: 46px minmax(0,1fr); gap: 12px; }
  .record-list .status-pill { position: absolute; right: 14px; top: 14px; margin: 0; }
  .record-list .record-card-copy { padding-right: 82px; }
  .record-list .record-meta { grid-template-columns: 1fr 1fr; }
  .record-list .record-open-arrow { display: none; }
  .export-option { grid-template-columns: 48px minmax(0,1fr); }
  .export-option b { grid-column: 2; }
  .file-preview-modal { width: 100%; height: 100dvh; max-height: none; margin: 0; }
  .file-preview-shell { border-radius: 0; }
  .file-preview-actions { padding-bottom: calc(13px + env(safe-area-inset-bottom)); }
  .docx-preview { padding: 15px 8px 35px; }
  .docx-page { min-height: 700px; padding: 34px 26px; }
  .pdf-preview { min-height: 100%; }
}

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

/* v4.2 — compact filters, saved appearance modes, and mobile hardening */
html, body { max-width: 100%; }
.office-app, .workspace, .view-root, .detail-shell, .detail-content, .panel, .module-toolbar-stack { min-width: 0; max-width: 100%; }
.topbar .micro-label { white-space: nowrap; }
.module-toolbar-stack { position: relative; gap: 0; }
.module-toolbar-main { min-width: 0; }
.module-toolbar-meta { flex: 0 0 auto; }
.record-count { white-space: nowrap; }

.filter-button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border-radius: 11px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.025);
  color: var(--muted);
  cursor: pointer;
}
.filter-button:hover, .filter-button.active { color: var(--text); border-color: rgba(94,229,255,.25); background: rgba(94,229,255,.055); }
.filter-button span { color: var(--cyan); font-size: 14px; }
.filter-button b { font-size: 12px; font-weight: 600; }
.filter-button i { min-width: 20px; height: 20px; display: grid; place-items: center; border-radius: 999px; background: rgba(94,229,255,.12); color: var(--cyan); font: 500 9px/1 "DM Mono", monospace; font-style: normal; }
.filter-layer { position: absolute; right: 0; top: calc(100% + 9px); z-index: 45; width: min(820px, 100%); }
.filter-scrim { display: none; }
.record-filter-popover { width: 100%; padding: 16px; border-radius: 18px; box-shadow: 0 24px 70px rgba(0,0,0,.44); }
.filter-popover-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 14px; }
.filter-popover-head h4 { margin: 6px 0 0; font-size: 18px; }
.record-filter-fields { display: grid; grid-template-columns: minmax(260px, 1fr) 180px 225px; gap: 10px; align-items: end; }
.record-filter-fields input, .record-filter-fields select { width: 100%; min-width: 0; }
.filter-popover-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }

.appearance-intro h4 { margin: 0 0 7px; font-size: 19px; }
.appearance-intro p { margin: 0; color: var(--muted); line-height: 1.6; }
.theme-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; margin-top: 20px; }
.theme-choice { position: relative; display: grid; gap: 14px; padding: 14px; border-radius: 18px; border: 1px solid var(--line); background: rgba(255,255,255,.025); color: inherit; text-align: left; cursor: pointer; }
.theme-choice:hover { border-color: rgba(94,229,255,.28); }
.theme-choice.selected { border-color: rgba(94,229,255,.5); box-shadow: 0 0 0 3px rgba(94,229,255,.07); }
.theme-choice > span:nth-child(2) strong { display: block; font-size: 15px; }
.theme-choice > span:nth-child(2) small { display: block; margin-top: 5px; color: var(--muted); line-height: 1.45; }
.theme-check { position: absolute; top: 12px; right: 12px; width: 25px; height: 25px; display: none; place-items: center; border-radius: 999px; background: var(--cyan); color: #061018; font-style: normal; font-size: 13px; }
.theme-choice.selected .theme-check { display: grid; }
.theme-preview { position: relative; height: 130px; display: block; overflow: hidden; border-radius: 13px; border: 1px solid var(--line); }
.theme-preview::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 24%; }
.theme-preview i, .theme-preview b, .theme-preview em, .theme-preview small { position: absolute; display: block; border-radius: 5px; }
.theme-preview i { left: 29%; right: 6%; top: 10%; height: 15%; }
.theme-preview b { left: 29%; width: 20%; top: 33%; height: 27%; }
.theme-preview em { left: 52%; right: 6%; top: 33%; height: 27%; }
.theme-preview small { left: 29%; right: 6%; top: 69%; height: 21%; }
.theme-preview-studio { background: #080b13; }
.theme-preview-studio::before { background: #0c0f19; border-right: 1px solid rgba(255,255,255,.08); }
.theme-preview-studio i { background: linear-gradient(90deg, rgba(155,125,255,.4), rgba(94,229,255,.22)); }
.theme-preview-studio b, .theme-preview-studio em, .theme-preview-studio small { background: #151a28; border: 1px solid rgba(255,255,255,.08); }
.theme-preview-business { background: #f3f6fb; }
.theme-preview-business::before { background: #fff; border-right: 1px solid #e4e9f1; }
.theme-preview-business i { background: #fff; border: 1px solid #e4e9f1; }
.theme-preview-business b, .theme-preview-business em, .theme-preview-business small { background: #fff; border: 1px solid #dfe5ee; box-shadow: 0 4px 10px rgba(16,24,40,.05); }

.table-wrap { max-width: 100%; min-width: 0; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
.detail-tabs { max-width: 100%; min-width: 0; scrollbar-width: thin; }
.file-preview-shell, .file-preview-body, .pdf-preview { max-width: 100%; min-width: 0; }

/* Business Classic: intentionally conventional, lightweight CRM styling. */
html[data-office-theme="business"] {
  color-scheme: light;
  --bg: #f3f6fb;
  --bg-soft: #eef2f7;
  --panel: #ffffff;
  --panel-strong: #ffffff;
  --panel-soft: #f8fafc;
  --line: #e3e8ef;
  --line-bright: #c8d7ee;
  --text: #172033;
  --muted: #667085;
  --muted-2: #98a2b3;
  --cyan: #2563eb;
  --accent: #2563eb;
  --violet: #4f46e5;
  --pink: #db2777;
  --green: #079455;
  --amber: #dc6803;
  --red: #d92d20;
  --shadow: 0 10px 30px rgba(16,24,40,.08);
}
html[data-office-theme="business"] body {
  background: #f3f6fb;
  color: var(--text);
}
html[data-office-theme="business"] .ambient { display: none; }
html[data-office-theme="business"] .grid-noise {
  opacity: .42;
  background-image: linear-gradient(#e9eef5 1px, transparent 1px), linear-gradient(90deg, #e9eef5 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(#000, transparent 90%);
}
html[data-office-theme="business"] .glass,
html[data-office-theme="business"] .glass-subtle {
  background: #fff;
  border-color: var(--line);
  box-shadow: var(--shadow);
  backdrop-filter: none;
}
html[data-office-theme="business"] .glass-subtle { box-shadow: 0 4px 18px rgba(16,24,40,.045); }
html[data-office-theme="business"] .micro-label { color: #2563eb; }
html[data-office-theme="business"] .brand > span:last-child > span,
html[data-office-theme="business"] .nav-icon { color: #2563eb; }
html[data-office-theme="business"] input,
html[data-office-theme="business"] select,
html[data-office-theme="business"] textarea {
  color: #172033;
  background: #fff;
  border-color: #d9e0e9;
}
html[data-office-theme="business"] input:focus,
html[data-office-theme="business"] select:focus,
html[data-office-theme="business"] textarea:focus { background: #fff; border-color: #84adff; box-shadow: 0 0 0 3px rgba(37,99,235,.1); }
html[data-office-theme="business"] input::placeholder,
html[data-office-theme="business"] textarea::placeholder { color: #98a2b3; }
html[data-office-theme="business"] .global-search input { background: #fff !important; color: #172033 !important; }
html[data-office-theme="business"] .field,
html[data-office-theme="business"] .login-card label { color: #344054; }
html[data-office-theme="business"] .primary-button { background: #2563eb; border-color: #2563eb; color: #fff; box-shadow: 0 4px 12px rgba(37,99,235,.2); }
html[data-office-theme="business"] .secondary-button,
html[data-office-theme="business"] .icon-button,
html[data-office-theme="business"] .filter-button,
html[data-office-theme="business"] .view-toggle,
html[data-office-theme="business"] .module-tabs { background: #fff; border-color: #dfe5ec; color: #475467; }
html[data-office-theme="business"] .secondary-button:hover,
html[data-office-theme="business"] .icon-button:hover,
html[data-office-theme="business"] .filter-button:hover { background: #f8fafc; border-color: #b8c7dc; color: #172033; }
html[data-office-theme="business"] .danger-button { background: #fff5f5; border-color: #f5b8b4; color: #b42318; }
html[data-office-theme="business"] .sidebar { background: #fff; border-color: #e3e8ef; backdrop-filter: none; box-shadow: 4px 0 20px rgba(16,24,40,.035); }
html[data-office-theme="business"] .sidebar-collapse-button { background: #f8fafc; border-color: #dfe5ec; box-shadow: none; }
html[data-office-theme="business"] .workspace-label { background: #f8fafc; border-color: #e3e8ef; }
html[data-office-theme="business"] .nav-item:hover { background: #f8fafc; color: #344054; }
html[data-office-theme="business"] .nav-item.active { color: #1d4ed8; background: #eff6ff; border-color: #cfe0ff; }
html[data-office-theme="business"] .nav-item small { color: #667085; background: #f2f4f7; }
html[data-office-theme="business"] .topbar {
  background: #fff;
  border-color: #e3e8ef;
  box-shadow: 0 8px 24px rgba(16,24,40,.06);
  backdrop-filter: none;
}
html[data-office-theme="business"] .topbar::before { background: linear-gradient(90deg, transparent, #7aa7f8, transparent); opacity: .55; }
html[data-office-theme="business"] .hero-panel { background: linear-gradient(135deg, #fff, #f8fbff); }
html[data-office-theme="business"] .hero-spark { display: none; }
html[data-office-theme="business"] .check-panel,
html[data-office-theme="business"] .stat-card,
html[data-office-theme="business"] .panel,
html[data-office-theme="business"] .record-card,
html[data-office-theme="business"] .detail-hero,
html[data-office-theme="business"] .detail-content { background: #fff; }
html[data-office-theme="business"] .stat-card::before,
html[data-office-theme="business"] .record-card::after { opacity: .25; }
html[data-office-theme="business"] .stat-card:hover,
html[data-office-theme="business"] .record-card:hover { background: #fff; border-color: #bfd0e7; box-shadow: 0 12px 28px rgba(16,24,40,.08); }
html[data-office-theme="business"] .record-icon,
html[data-office-theme="business"] .detail-avatar,
html[data-office-theme="business"] .empty-icon,
html[data-office-theme="business"] .activity-icon,
html[data-office-theme="business"] .export-icon { color: #2563eb; background: #eff6ff; border-color: #cfe0ff; }
html[data-office-theme="business"] .record-meta b,
html[data-office-theme="business"] .info-item b,
html[data-office-theme="business"] td { color: #344054; }
html[data-office-theme="business"] .module-tabs button.active,
html[data-office-theme="business"] .detail-tabs button.active,
html[data-office-theme="business"] .view-toggle button.active { color: #1d4ed8; background: #eff6ff; box-shadow: none; }
html[data-office-theme="business"] .detail-tabs,
html[data-office-theme="business"] .info-item,
html[data-office-theme="business"] .alert-row,
html[data-office-theme="business"] .checkbox-field,
html[data-office-theme="business"] .spend-summary > div,
html[data-office-theme="business"] .export-option,
html[data-office-theme="business"] .theme-choice { background: #f8fafc; border-color: #e3e8ef; }
html[data-office-theme="business"] th { background: #f8fafc; color: #667085; }
html[data-office-theme="business"] td { border-color: #edf0f4; }
html[data-office-theme="business"] .modal-actions,
html[data-office-theme="business"] .file-preview-actions { background: #fff; }
html[data-office-theme="business"] .toast { background: #fff; color: #172033; }
html[data-office-theme="business"] .file-preview-body { background: #eef2f7; }
html[data-office-theme="business"] .text-preview { color: #172033; background: #fff; }
html[data-office-theme="business"] .login-card { background: #fff; }
html[data-office-theme="business"] .login-card h1 em { background: linear-gradient(90deg, #4f46e5, #2563eb); background-clip: text; -webkit-background-clip: text; }
html[data-office-theme="business"] .filter-scrim { background: rgba(15,23,42,.3); }

@media (max-width: 900px) {
  .filter-layer { position: fixed; inset: 0; width: auto; z-index: 70; display: grid; align-items: end; }
  .filter-scrim { display: block; position: absolute; inset: 0; width: 100%; border: 0; background: rgba(1,3,8,.72); }
  .record-filter-popover { position: relative; width: 100%; max-height: min(78dvh, 650px); overflow: auto; border-radius: 22px 22px 0 0; padding: 19px 18px calc(18px + env(safe-area-inset-bottom)); }
  .record-filter-fields { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  body { overflow-x: hidden; }
  .workspace { width: 100%; padding: 0 12px calc(30px + env(safe-area-inset-bottom)); overflow: clip; }
  .view-root { width: 100%; }
  .topbar { width: 100%; align-items: stretch; gap: 13px; }
  .topbar-left { min-width: 0; }
  .topbar-left > div { min-width: 0; }
  .topbar h2 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .topbar .micro-label { max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
  .topbar-actions { display: grid; grid-template-columns: minmax(0,1fr) 50px; gap: 9px; }
  .global-search { width: 100%; min-width: 0; }
  .topbar-actions #context-add-button { width: 50px; min-width: 50px; padding: 0; font-size: 0; }
  .topbar-actions #context-add-button::before { content: "+"; font-size: 24px; line-height: 1; }
  .topbar-actions #context-add-button span { display: none; }
  .module-toolbar-main { width: 100%; gap: 13px; }
  .module-tabs { width: 100%; max-width: 100%; }
  .module-tabs button { flex: 1 0 auto; }
  .module-toolbar-meta { width: 100%; justify-content: flex-end; }
  .record-count { margin-right: auto; }
  .filter-button { min-width: 42px; padding: 0 11px; }
  .filter-button b { display: none; }
  .filter-button i { position: absolute; margin: -28px 0 0 25px; }
  .detail-hero { width: 100%; grid-template-columns: 72px minmax(0,1fr); padding: 17px; overflow: hidden; }
  .detail-avatar { width: 62px; height: 62px; border-radius: 17px; }
  .detail-title { min-width: 0; }
  .detail-title h3, .detail-title p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .detail-actions { width: 100%; display: grid; grid-template-columns: .8fr 1.15fr 1fr; }
  .detail-actions button { min-width: 0; padding: 0 9px; }
  .detail-nav-row { width: 100%; min-width: 0; }
  .detail-tabs { width: 100%; }
  .detail-content { width: 100%; min-width: 0; padding: 14px; overflow: hidden; }
  .section-head { align-items: flex-start; }
  .section-head > button { flex: 0 0 auto; }
  .table-wrap { width: 100%; max-width: 100%; overflow-x: auto; border-radius: 13px; }
  table { min-width: 700px; }
  .file-preview-modal { max-width: 100vw; overflow: hidden; }
  .file-preview-head { padding: calc(15px + env(safe-area-inset-top)) 16px 15px; }
  .file-preview-head > div { min-width: 0; }
  .file-preview-head h3, .file-preview-head p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .file-preview-actions { display: grid; grid-template-columns: 1fr auto; }
  .pdf-preview { width: 100%; min-height: 100%; }
  .theme-choice-grid { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
  .record-count { font-size: 8px; letter-spacing: .13em; }
  .module-toolbar-meta { gap: 7px; }
  .view-toggle button { width: 34px; }
  .detail-actions { grid-template-columns: 1fr 1fr; }
  .detail-actions [data-back] { grid-column: 1 / -1; }
  .file-preview-actions { grid-template-columns: 1fr 1fr; }
  .file-preview-actions button { min-width: 0; padding: 0 10px; }
}

/* v4.3 — mobile drawer/form repairs and secure preview zoom */
.file-preview-actions {
  align-items: center;
  justify-content: space-between;
}
.file-preview-zoom {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(255,255,255,.035);
}
.file-preview-zoom[hidden] { display: none !important; }
.file-preview-zoom .icon-button { width: 36px; height: 36px; }
.file-preview-zoom span {
  min-width: 54px;
  text-align: center;
  color: var(--muted);
  font: 500 11px/1 "DM Mono", monospace;
  font-variant-numeric: tabular-nums;
}
.file-preview-action-buttons { display: flex; justify-content: flex-end; gap: 9px; }
.file-preview-body { overscroll-behavior: contain; touch-action: pan-x pan-y pinch-zoom; }
.image-preview { min-width: 100%; box-sizing: border-box; transition: width .16s ease; }
.image-preview img { max-width: 100%; width: auto; height: auto; transition: width .16s ease; }

html[data-office-theme="business"] .file-preview-zoom {
  border-color: #dfe5ee;
  background: #f8fafc;
}

@media (max-width: 900px) {
  .sidebar {
    height: 100dvh;
    max-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding-bottom: calc(22px + env(safe-area-inset-bottom));
  }
  .sidebar-head { flex: 0 0 auto; }
  .workspace-label, .main-nav { flex: 0 0 auto; }
  .sidebar-bottom {
    flex: 0 0 auto;
    margin-top: auto;
    padding-bottom: max(8px, env(safe-area-inset-bottom));
  }
}

@media (max-width: 680px) {
  .modal {
    position: fixed;
    inset: max(8px, env(safe-area-inset-top)) 0 0 0;
    width: 100vw !important;
    max-width: none !important;
    height: calc(100dvh - max(8px, env(safe-area-inset-top)));
    max-height: none;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  .modal-shell {
    width: 100%;
    height: 100%;
    max-height: none;
    min-height: 0;
    border-radius: 22px 22px 0 0;
  }
  .modal-head {
    flex: 0 0 auto;
    min-height: auto;
    align-items: flex-start;
    padding: 20px 22px 16px;
  }
  .modal-head > div { min-width: 0; padding-top: 1px; }
  .modal-head .micro-label {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    line-height: 1.35;
  }
  .modal-head h3 {
    margin-top: 8px;
    line-height: 1.08;
    overflow-wrap: anywhere;
  }
  .modal-head .icon-button { flex: 0 0 auto; }
  .modal-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    padding: 22px 22px 36px;
  }
  .modal-actions {
    flex: 0 0 auto;
    padding: 14px 22px calc(14px + env(safe-area-inset-bottom));
  }
  .modal-actions button { min-width: 0; }

  .file-preview-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 11px 14px calc(11px + env(safe-area-inset-bottom));
  }
  .file-preview-zoom { width: 100%; justify-content: center; }
  .file-preview-action-buttons { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .file-preview-action-buttons button { min-width: 0; padding-inline: 9px; }
}

@media (max-width: 430px) {
  .modal-head { padding-inline: 18px; }
  .modal-body { padding-inline: 18px; }
  .modal-actions { padding-inline: 18px; }
}

/* v4.4 — NYC violations, OATH monitoring and charge statements */
.violation-command {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  overflow: hidden;
  border-radius: 22px;
  padding: 27px 29px;
}
.violation-command::before {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  right: -150px;
  top: -190px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(94,229,255,.18), transparent 66%);
  pointer-events: none;
}
.violation-command > * { position: relative; z-index: 1; }
.violation-command h3 { margin: 8px 0 8px; font-size: clamp(24px, 3.3vw, 38px); letter-spacing: -.045em; }
.violation-command p { max-width: 760px; margin: 0; color: var(--muted); line-height: 1.6; }
.violation-command-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; flex-wrap: wrap; }
.violation-sync-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 13px; margin-top: 17px; color: var(--muted-2); font: 500 9px/1.3 "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.violation-sync-meta span { display: inline-flex; align-items: center; gap: 7px; }
.violation-sync-meta i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 9px var(--green); }
.violation-sync-meta .sync-error { color: var(--red); text-transform: none; letter-spacing: 0; }
.violation-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.violation-stat { position: relative; min-height: 126px; display: grid; align-content: center; gap: 7px; padding: 20px; border-radius: 17px; text-align: left; cursor: pointer; color: var(--text); overflow: hidden; }
.violation-stat::after { content: ""; position: absolute; width: 100px; height: 100px; right: -48px; bottom: -55px; border-radius: 50%; background: rgba(94,229,255,.09); filter: blur(7px); }
.violation-stat span { color: var(--muted); font-size: 12px; }
.violation-stat strong { font-size: 25px; letter-spacing: -.04em; }
.violation-stat small { color: var(--muted-2); }
.violation-stat > i { position: absolute; top: 16px; right: 16px; color: var(--muted-2); font-style: normal; }
.violation-stat.warning strong { color: var(--amber); }
.violation-stat.ready strong { color: var(--green); }
.violation-stat:hover { border-color: var(--line-bright); background: rgba(94,229,255,.045); transform: translateY(-1px); }
.violation-panel { border-radius: 20px; overflow: visible; }
.violation-toolbar { display: grid; gap: 12px; padding: 17px; border-bottom: 1px solid var(--line); }
.violation-filter-row { display: grid; grid-template-columns: minmax(260px, 1.65fr) repeat(4, minmax(135px, .72fr)); gap: 9px; }
.violation-filter-row select { min-width: 0; }
.violation-bulk-row { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.violation-bulk-row .micro-label { margin-right: auto; }
.violation-table-wrap { border: 0; border-radius: 0 0 20px 20px; }
.violation-table { min-width: 1320px; }
.violation-table td { vertical-align: middle; }
.violation-table td > b { display: block; color: var(--text); font-size: 12px; }
.violation-table td > small { display: block; max-width: 260px; margin-top: 5px; color: var(--muted-2); font-size: 10px; line-height: 1.35; }
.violation-table input[type="checkbox"] { width: 17px; height: 17px; min-height: 0; padding: 0; accent-color: var(--cyan); }
.source-badge { display: inline-flex; width: max-content; margin: 0 0 7px; padding: 5px 7px; border-radius: 999px; font: 500 8px/1 "DM Mono", monospace; letter-spacing: .1em; text-transform: uppercase; border: 1px solid rgba(94,229,255,.25); color: var(--cyan); background: rgba(94,229,255,.06); }
.source-badge.oath { color: #c9b6ff; border-color: rgba(155,125,255,.3); background: rgba(155,125,255,.08); }
.violation-status { display: inline-flex; align-items: center; justify-content: center; min-height: 27px; padding: 5px 9px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); font: 500 8px/1.2 "DM Mono", monospace; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.violation-status.ready { color: var(--green); border-color: rgba(100,239,174,.26); background: rgba(100,239,174,.07); }
.violation-status.charged { color: var(--cyan); border-color: rgba(94,229,255,.26); background: rgba(94,229,255,.07); }
.violation-status.review { color: var(--amber); border-color: rgba(255,189,101,.25); background: rgba(255,189,101,.07); }
.violation-status.ignored, .violation-status.void { color: var(--muted-2); }
.violation-status.disputed { color: var(--pink); border-color: rgba(255,110,183,.25); background: rgba(255,110,183,.07); }
.violations-loading { min-height: 280px; display: grid; place-items: center; align-content: center; gap: 10px; border-radius: 22px; text-align: center; }
.violations-loading.compact { min-height: 180px; box-shadow: none; background: transparent; }
.violations-loading h3 { margin: 0; }
.violations-loading p { margin: 0; color: var(--muted); }
.loader-ring { width: 30px; height: 30px; border: 2px solid rgba(94,229,255,.14); border-top-color: var(--cyan); border-radius: 50%; animation: mm-spin .8s linear infinite; }
@keyframes mm-spin { to { transform: rotate(360deg); } }
.violation-review-head { margin-bottom: 17px; }
.violation-review-head h4 { margin: 3px 0 5px; font-size: 22px; }
.violation-review-head p { margin: 0; color: var(--muted); }
.violation-money-grid, .spend-summary { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 9px; margin-bottom: 18px; }
.violation-money-grid > div { padding: 15px; border-radius: 14px; border: 1px solid var(--line); background: var(--panel-soft); }
.violation-money-grid span { display: block; color: var(--muted); font-size: 11px; }
.violation-money-grid b { display: block; margin-top: 5px; font-size: 18px; }
.external-ticket-link { display: inline-flex; align-items: center; margin-top: 15px; text-decoration: none; }
.notice-box { padding: 16px; border: 1px solid rgba(94,229,255,.14); border-radius: 14px; background: rgba(94,229,255,.035); color: var(--muted); line-height: 1.55; }
.notice-box b { color: var(--text); }
.notice-box p { margin: 5px 0 0; }
.check-field { display: flex; align-items: flex-start; gap: 11px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--panel-soft); }
.check-field input { width: 18px; height: 18px; min-height: 0; margin-top: 1px; accent-color: var(--cyan); }
.check-field span { display: grid; gap: 3px; }
.check-field small { color: var(--muted); line-height: 1.4; }
.policy-manager-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 16px; }
.policy-manager-head h4 { margin: 0 0 5px; }
.policy-manager-head p { margin: 0; color: var(--muted); line-height: 1.55; }
.policy-list, .statement-list { display: grid; gap: 10px; }
.policy-card, .statement-card { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 15px; padding: 16px; border: 1px solid var(--line); border-radius: 15px; background: var(--panel-soft); }
.policy-card h4, .statement-card h4 { margin: 5px 0; }
.policy-card p, .statement-card p { margin: 0; color: var(--muted); }
.policy-card small { color: var(--muted-2); }
.policy-card > div:last-child, .statement-actions { display: flex; gap: 7px; flex-wrap: wrap; justify-content: flex-end; }
.policy-rule-editor { min-height: 250px; font-family: "DM Mono", monospace; font-size: 11px; line-height: 1.65; }
.assignment-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; max-height: 230px; overflow: auto; padding: 4px; }
.assignment-check-grid label { display: flex; align-items: center; gap: 9px; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel-soft); }
.assignment-check-grid input { width: 17px; height: 17px; min-height: 0; accent-color: var(--cyan); }
.statement-preview-summary { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 12px; margin-bottom: 18px; padding: 17px; border: 1px solid var(--line); border-radius: 15px; background: var(--panel-soft); }
.statement-preview-summary span { color: var(--muted); }
.statement-preview-summary strong { font-size: 22px; color: var(--green); }
.statement-card > strong { font-size: 20px; color: var(--green); }
.statement-card.void { opacity: .62; }
.detail-violation-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.related-violation-table .source-badge { margin-right: 7px; margin-bottom: 0; }

html[data-office-theme="business"] .violation-command,
html[data-office-theme="business"] .violation-panel { background: #fff; }
html[data-office-theme="business"] .violation-stat,
html[data-office-theme="business"] .violation-money-grid > div,
html[data-office-theme="business"] .notice-box,
html[data-office-theme="business"] .check-field,
html[data-office-theme="business"] .policy-card,
html[data-office-theme="business"] .statement-card,
html[data-office-theme="business"] .assignment-check-grid label,
html[data-office-theme="business"] .statement-preview-summary { background: #f8fafc; border-color: #e2e8f0; }
html[data-office-theme="business"] .violation-stat:hover { background: #fff; border-color: #bfdbfe; box-shadow: 0 10px 25px rgba(15,23,42,.07); }
html[data-office-theme="business"] .source-badge { color: #2563eb; border-color: #bfdbfe; background: #eff6ff; }
html[data-office-theme="business"] .source-badge.oath { color: #6d28d9; border-color: #ddd6fe; background: #f5f3ff; }
html[data-office-theme="business"] .violation-status.review { color: #b45309; background: #fffbeb; border-color: #fde68a; }
html[data-office-theme="business"] .violation-status.ready { color: #047857; background: #ecfdf5; border-color: #a7f3d0; }
html[data-office-theme="business"] .violation-status.charged { color: #1d4ed8; background: #eff6ff; border-color: #bfdbfe; }

@media (max-width: 1180px) {
  .violation-filter-row { grid-template-columns: minmax(260px, 1.3fr) repeat(2, minmax(150px, .7fr)); }
  .violation-filter-row select:nth-of-type(3), .violation-filter-row select:nth-of-type(4) { grid-row: 2; }
  .violation-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .violation-command { align-items: stretch; flex-direction: column; padding: 21px; }
  .violation-command-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .violation-command-actions .primary-button { grid-column: 1 / -1; }
  .violation-stats { grid-template-columns: 1fr 1fr; gap: 9px; }
  .violation-stat { min-height: 112px; padding: 15px; }
  .violation-stat strong { font-size: 20px; }
  .violation-filter-row { grid-template-columns: 1fr; }
  .violation-filter-row select:nth-of-type(3), .violation-filter-row select:nth-of-type(4) { grid-row: auto; }
  .violation-bulk-row { align-items: stretch; display: grid; grid-template-columns: 1fr 1fr; }
  .violation-bulk-row .micro-label { grid-column: 1 / -1; }
  .violation-table-wrap { overflow: visible; }
  .violation-table { display: block; min-width: 0; }
  .violation-table thead { display: none; }
  .violation-table tbody { display: grid; gap: 10px; padding: 12px; }
  .violation-table tr { position: relative; display: grid; grid-template-columns: 32px minmax(0,1fr); gap: 0 11px; padding: 15px; border: 1px solid var(--line); border-radius: 16px; background: var(--panel-soft); }
  .violation-table td { display: block; grid-column: 2; padding: 8px 0; border: 0; }
  .violation-table td:first-child { grid-column: 1; grid-row: 1 / span 9; padding-top: 10px; }
  .violation-table td:last-child { position: absolute; right: 30px; margin-top: 1px; }
  .violation-table td::before { content: attr(data-label); display: block; margin-bottom: 4px; color: var(--muted-2); font: 500 8px/1 "DM Mono", monospace; letter-spacing: .12em; text-transform: uppercase; }
  .violation-table td:first-child::before, .violation-table td:last-child::before { display: none; }
  .violation-table td > small { max-width: none; }
  .violation-money-grid { grid-template-columns: 1fr; }
  .policy-manager-head { flex-direction: column; }
  .policy-manager-head button { width: 100%; }
  .policy-card, .statement-card { grid-template-columns: 1fr; }
  .policy-card > div:last-child, .statement-actions { justify-content: flex-start; }
  .assignment-check-grid { grid-template-columns: 1fr; }
  .statement-preview-summary { grid-template-columns: 1fr auto; }
  .statement-preview-summary span:nth-of-type(2) { text-align: right; }
  .detail-violation-actions { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
}

@media (max-width: 430px) {
  .violation-command-actions { grid-template-columns: 1fr; }
  .violation-command-actions .primary-button { grid-column: auto; }
  .violation-stats { grid-template-columns: 1fr; }
  .violation-bulk-row { grid-template-columns: 1fr; }
  .violation-bulk-row .micro-label { grid-column: auto; }
  .detail-violation-actions { grid-template-columns: 1fr; }
}

/* v4.5 — live CityPay scanning + violation pagination */
.violation-command-actions .live-citypay-button {
  border-color: rgba(255, 189, 101, .34);
  background: rgba(255, 189, 101, .08);
  color: var(--amber);
}
.violation-command-actions .live-citypay-button:hover {
  border-color: rgba(255, 189, 101, .58);
  background: rgba(255, 189, 101, .13);
}
.violation-sync-meta .citypay-live-meta i {
  background: var(--amber);
  box-shadow: 0 0 9px var(--amber);
}
.violation-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 16px 18px 18px;
  border-top: 1px solid var(--line);
}
.violation-pagination span {
  min-width: 130px;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
}
.violation-pagination span b { color: var(--text); }
.violation-pagination.compact {
  padding: 14px 0 0;
  border-top: 0;
}
.citypay-scan-intro {
  margin-bottom: 15px;
  padding: 16px;
  border: 1px solid rgba(255, 189, 101, .22);
  border-radius: 15px;
  background: rgba(255, 189, 101, .055);
}
.citypay-scan-intro b { display: block; margin-bottom: 5px; color: var(--text); }
.citypay-scan-intro p { margin: 0; color: var(--muted); line-height: 1.55; }
.citypay-vehicle-list {
  display: grid;
  gap: 9px;
  max-height: min(48vh, 430px);
  margin-bottom: 15px;
  padding-right: 4px;
  overflow: auto;
}
.citypay-vehicle-option {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: var(--panel-soft);
  cursor: pointer;
}
.citypay-vehicle-option:hover { border-color: var(--line-bright); }
.citypay-vehicle-option input {
  width: 18px;
  height: 18px;
  min-height: 0;
  flex: 0 0 auto;
  padding: 0;
  accent-color: var(--amber);
}
.citypay-vehicle-option span { min-width: 0; }
.citypay-vehicle-option b,
.citypay-vehicle-option small { display: block; }
.citypay-vehicle-option b { color: var(--text); }
.citypay-vehicle-option small { margin-top: 3px; color: var(--muted-2); }
.citypay-progress-head { margin-bottom: 14px; }
.citypay-progress-head h4 { margin: 9px 0 5px; font-size: 22px; letter-spacing: -.035em; }
.citypay-progress-head p { margin: 0; color: var(--muted); }
.citypay-job-status {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: 5px 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--muted);
  font: 600 8px/1 "DM Mono", monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.citypay-job-status.queued,
.citypay-job-status.running { color: var(--amber); border-color: rgba(255,189,101,.28); background: rgba(255,189,101,.07); }
.citypay-job-status.completed { color: var(--green); border-color: rgba(100,239,174,.28); background: rgba(100,239,174,.07); }
.citypay-job-status.completed_with_errors,
.citypay-job-status.failed { color: var(--red); border-color: rgba(255,100,124,.28); background: rgba(255,100,124,.07); }
.citypay-progress-track {
  height: 9px;
  margin-bottom: 15px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--panel-soft);
}
.citypay-progress-track i {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--amber), var(--cyan));
  transition: width .25s ease;
}
.citypay-result-list {
  display: grid;
  gap: 8px;
  max-height: min(48vh, 410px);
  overflow: auto;
}
.citypay-result {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: var(--panel-soft);
}
.citypay-result > span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  color: var(--green);
  background: rgba(100,239,174,.09);
}
.citypay-result.error > span { color: var(--red); background: rgba(255,100,124,.09); }
.citypay-result b,
.citypay-result small,
.citypay-result p { display: block; }
.citypay-result small { margin-top: 2px; color: var(--muted-2); }
.citypay-result p { margin: 6px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }
.notice-box.danger { border-color: rgba(255,100,124,.25); background: rgba(255,100,124,.06); }
html[data-office-theme="business"] .violation-command-actions .live-citypay-button {
  color: #b45309;
  border-color: #fde68a;
  background: #fffbeb;
}
html[data-office-theme="business"] .citypay-scan-intro {
  border-color: #fde68a;
  background: #fffbeb;
}
html[data-office-theme="business"] .citypay-vehicle-option,
html[data-office-theme="business"] .citypay-result,
html[data-office-theme="business"] .citypay-progress-track { background: #f8fafc; }

@media (max-width: 760px) {
  .violation-command-actions { grid-template-columns: 1fr 1fr; }
  .violation-command-actions .primary-button { grid-column: auto; }
  .violation-pagination { gap: 8px; padding: 13px 12px 15px; }
  .violation-pagination .secondary-button { min-width: 0; padding-inline: 12px; }
  .violation-pagination span { min-width: 90px; font-size: 10px; }
  .citypay-vehicle-list,
  .citypay-result-list { max-height: 42vh; }
}

@media (max-width: 470px) {
  .violation-command-actions { grid-template-columns: 1fr; }
  .violation-pagination { display: grid; grid-template-columns: 1fr 1fr; }
  .violation-pagination span { grid-column: 1 / -1; grid-row: 1; }
  .citypay-progress-head h4 { font-size: 19px; }
}

/* ================================
   SAMSARA LIVE FLEET MAP — v4.6
   ================================ */
.samsara-setup {
  min-height: min(640px, calc(100dvh - 150px));
  display: grid;
  grid-template-columns: minmax(260px, 420px) minmax(0, 580px);
  align-items: center;
  justify-content: center;
  gap: clamp(34px, 7vw, 90px);
  padding: clamp(34px, 6vw, 76px);
  border-radius: 26px;
  overflow: hidden;
  position: relative;
}
.samsara-setup::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 23% 52%, rgba(94,229,255,.1), transparent 34%), radial-gradient(circle at 88% 12%, rgba(155,125,255,.1), transparent 30%); }
.samsara-setup > * { position:relative; z-index:1; }
.samsara-setup h3 { margin: 12px 0; font-size: clamp(32px, 5vw, 54px); letter-spacing:-.055em; }
.samsara-setup p { max-width: 620px; color:var(--muted); line-height:1.7; }
.samsara-setup-art { aspect-ratio:1; width:min(100%,390px); position:relative; display:grid; place-items:center; border-radius:50%; background:radial-gradient(circle, rgba(94,229,255,.11), rgba(155,125,255,.03) 46%, transparent 67%); }
.samsara-setup-art span { position:absolute; inset:9%; border:1px solid rgba(94,229,255,.15); border-radius:50%; }
.samsara-setup-art span:nth-child(2) { inset:24%; border-color:rgba(155,125,255,.2); }
.samsara-setup-art span:nth-child(3) { inset:39%; border-color:rgba(94,229,255,.24); box-shadow:0 0 55px rgba(94,229,255,.09); }
.samsara-setup-art i { width:92px; height:92px; display:grid; place-items:center; border-radius:28px; background:rgba(7,10,18,.82); border:1px solid rgba(94,229,255,.32); color:var(--cyan); font-style:normal; font-size:38px; box-shadow:0 18px 60px rgba(0,0,0,.4), 0 0 40px rgba(94,229,255,.11); }
.samsara-scope-list { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.samsara-scope-list span { padding:8px 11px; border-radius:999px; background:rgba(100,239,174,.07); border:1px solid rgba(100,239,174,.19); color:#a9f7d0; font:500 10px/1 "DM Mono", monospace; }

.fleet-map-page { display:grid; gap:14px; }
.fleet-map-command { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:19px 21px; border-radius:20px; }
.fleet-map-command-copy h3 { margin:6px 0 4px; font-size:21px; letter-spacing:-.035em; }
.fleet-map-command-copy p { margin:0; display:flex; align-items:center; gap:8px; color:var(--muted); font-size:12px; }
.fleet-live-dot { flex:0 0 auto; width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 12px var(--green); }
.fleet-live-dot.error { background:var(--red); box-shadow:0 0 12px var(--red); }
.fleet-map-command-actions, .integration-head-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }

.fleet-map-summary { display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:8px; }
.fleet-summary-card { min-width:0; min-height:70px; display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; align-content:center; column-gap:10px; padding:10px 13px; border-radius:15px; border:1px solid var(--line); background:rgba(255,255,255,.025); color:var(--text); cursor:pointer; text-align:left; transition:border-color .18s ease, transform .18s ease, background .18s ease; }
.fleet-summary-card:hover { transform:translateY(-1px); border-color:rgba(94,229,255,.25); }
.fleet-summary-card.active { border-color:rgba(94,229,255,.34); background:linear-gradient(120deg, rgba(94,229,255,.075), rgba(155,125,255,.07)); }
.fleet-summary-card i { grid-row:1 / 3; align-self:center; width:8px; height:8px; border-radius:50%; background:var(--muted); box-shadow:0 0 11px currentColor; }
.fleet-summary-card i.moving { background:var(--green); color:var(--green); }
.fleet-summary-card i.short-stop, .fleet-summary-card i.stopped { background:var(--amber); color:var(--amber); }
.fleet-summary-card i.long-stop { background:#ff7a59; color:#ff7a59; }
.fleet-summary-card i.parked { background:var(--violet); color:var(--violet); }
.fleet-summary-card i.unlinked { background:var(--pink); color:var(--pink); }
.fleet-summary-card b { font-size:20px; line-height:1; }
.fleet-summary-card span { margin-top:4px; color:var(--muted); font-size:10px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

.fleet-map-shell { position:relative; display:block; height:clamp(820px, calc(100dvh - 120px), 1180px); min-height:820px; overflow:hidden; border-radius:22px; }
.fleet-map-list-panel { position:absolute; z-index:9; left:0; top:0; bottom:0; width:min(390px, calc(100% - 62px)); min-width:0; display:flex; flex-direction:column; overflow:hidden; padding:18px; background:rgba(8,11,18,.97); border-right:1px solid var(--line); box-shadow:24px 0 70px rgba(0,0,0,.46); translate:-105% 0; transition:translate .24s cubic-bezier(.2,.8,.2,1); }
.fleet-map-list-panel.open { translate:0 0; }
.fleet-map-drawer-scrim { position:absolute; inset:0; z-index:8; border:0; background:rgba(3,5,9,.24); backdrop-filter:blur(1px); cursor:pointer; }
.fleet-map-drawer-scrim[hidden] { display:none; }
.fleet-list-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:3px 2px 13px; }
.fleet-list-head h4 { margin:5px 0 0; font-size:22px; }
.fleet-list-close { display:grid; }
.fleet-search { position:relative; display:block; }
.fleet-search > span { position:absolute; left:13px; top:50%; translate:0 -50%; z-index:1; color:var(--muted); }
.fleet-search input { min-height:43px; padding-left:37px; }
.fleet-list-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 2px 9px; color:var(--muted); font-size:10px; }
.fleet-list-meta button { border:0; background:transparent; color:var(--cyan); cursor:pointer; font-size:10px; }
.fleet-vehicle-list { flex:1 1 auto; height:0; min-height:0; overflow:auto; overscroll-behavior:contain; touch-action:pan-y; -webkit-overflow-scrolling:touch; display:grid; align-content:start; gap:6px; padding-right:3px; scrollbar-width:thin; }
.fleet-vehicle-row { position:relative; width:100%; min-height:70px; display:grid; grid-template-columns:12px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 10px; border-radius:13px; border:1px solid transparent; background:transparent; color:var(--text); text-align:left; cursor:pointer; }
.fleet-vehicle-row:hover { background:rgba(255,255,255,.035); }
.fleet-vehicle-row.selected { background:linear-gradient(110deg, rgba(94,229,255,.075), rgba(155,125,255,.065)); border-color:rgba(94,229,255,.22); }
.fleet-vehicle-row > i { position:relative; width:8px; height:8px; border-radius:50%; background:var(--fleet-status); color:var(--fleet-status); box-shadow:0 0 11px currentColor; }
.fleet-vehicle-row > i.warn::after { content:"!"; position:absolute; right:-8px; top:-9px; width:12px; height:12px; display:grid; place-items:center; border-radius:50%; background:var(--red); border:2px solid rgba(8,11,18,.96); color:#fff; font:900 7px/1 system-ui; }
.fleet-vehicle-main, .fleet-vehicle-state { min-width:0; display:grid; gap:4px; }
.fleet-vehicle-main b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.fleet-vehicle-main small { color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:10px; }
.fleet-vehicle-state { text-align:right; }
.fleet-vehicle-state b { font-size:10px; white-space:nowrap; }
.fleet-vehicle-state small { color:var(--muted-2); font-size:9px; white-space:nowrap; }
.fleet-vehicle-row em { position:absolute; right:9px; bottom:5px; color:var(--green); font:500 7px/1 "DM Mono", monospace; letter-spacing:.08em; font-style:normal; }
.fleet-vehicle-row em.unlinked { color:var(--pink); }
.fleet-empty { min-height:180px; display:grid; place-items:center; align-content:center; gap:5px; color:var(--muted); text-align:center; }
.fleet-empty b { color:var(--text); }
.fleet-empty span { font-size:11px; }

.fleet-map-stage { position:absolute; inset:0; min-width:0; min-height:0; overflow:hidden; background:#080b12; }
html[data-office-theme="business"] .fleet-map-stage { background:#eef2f7; }
.samsara-map { position:absolute; inset:0; }

.fleet-map-status { position:absolute; z-index:7; left:50%; top:50%; translate:-50% -50%; width:min(390px, calc(100% - 34px)); display:flex; align-items:center; gap:12px; padding:14px 15px; border-radius:15px; border:1px solid rgba(94,229,255,.2); background:rgba(8,11,18,.9); color:#fff; box-shadow:0 18px 55px rgba(0,0,0,.45); backdrop-filter:blur(16px); }
.fleet-map-status[hidden] { display:none; }
.fleet-map-status > i { width:12px; height:12px; flex:0 0 auto; border-radius:50%; border:2px solid rgba(94,229,255,.24); border-top-color:var(--cyan); animation:fleetMapSpin .8s linear infinite; }
.fleet-map-status > div { min-width:0; display:grid; gap:3px; }
.fleet-map-status b { font-size:12px; }
.fleet-map-status span { color:rgba(255,255,255,.66); font-size:10px; line-height:1.45; }
.fleet-map-status .secondary-button { flex:0 0 auto; margin-left:auto; min-height:34px; padding-inline:11px; }
.fleet-map-status.error { border-color:rgba(255,109,135,.28); }
.fleet-map-status.error > i { border-color:rgba(255,109,135,.25); border-top-color:var(--red); }
.fleet-map-status.notice { left:14px; top:auto; bottom:14px; translate:0; width:min(430px, calc(100% - 28px)); border-color:rgba(255,189,101,.25); }
.fleet-map-status.notice > i { border:0; width:8px; height:8px; background:var(--amber); animation:none; box-shadow:0 0 11px var(--amber); }
@keyframes fleetMapSpin { to { rotate:360deg; } }
html[data-office-theme="business"] .fleet-map-status { color:#172033; background:rgba(255,255,255,.94); border-color:#bfdbfe; }
html[data-office-theme="business"] .fleet-map-status span { color:#64748b; }

.fleet-map-tools { position:absolute; z-index:4; top:14px; right:14px; display:flex; gap:7px; }
.fleet-drawer-tab { position:absolute; z-index:6; left:0; top:50%; translate:0 -50%; min-height:112px; width:42px; display:grid; place-items:center; align-content:center; gap:8px; padding:10px 6px; border:1px solid rgba(255,255,255,.16); border-left:0; border-radius:0 14px 14px 0; background:rgba(8,11,18,.9); color:#fff; box-shadow:10px 0 26px rgba(0,0,0,.32); backdrop-filter:blur(14px); cursor:pointer; }
.fleet-drawer-tab span { font-size:16px; line-height:1; }
.fleet-drawer-tab b { writing-mode:vertical-rl; rotate:180deg; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.fleet-map-shell.list-open .fleet-drawer-tab { opacity:0; pointer-events:none; }
.fleet-map-tools .secondary-button { min-height:38px; padding:0 12px; background:rgba(8,11,18,.86); color:#fff; border-color:rgba(255,255,255,.16); backdrop-filter:blur(13px); }
html[data-office-theme="business"] .fleet-map-tools .secondary-button { background:rgba(255,255,255,.94); color:#172033; border-color:#d6deea; box-shadow:0 5px 18px rgba(15,23,42,.1); }
html[data-office-theme="business"] .fleet-drawer-tab { background:rgba(255,255,255,.96); color:#172033; border-color:#d6deea; box-shadow:10px 0 26px rgba(15,23,42,.12); }

.samsara-marker { width:1px; height:1px; padding:0; border:0; background:transparent; position:relative; overflow:visible; cursor:pointer; pointer-events:auto; outline:none; }
.samsara-marker:hover, .samsara-marker.hovering, .samsara-marker.selected { z-index:1000 !important; }
.samsara-marker-pin { position:absolute; left:0; top:0; width:16px; height:16px; display:grid; place-items:center; transform:translate(-50%,-50%); border-radius:50%; background:var(--fleet-status); border:2px solid rgba(7,9,13,.94); color:#fff; font:900 8px/1 system-ui; box-shadow:0 0 0 7px color-mix(in srgb, var(--fleet-status) 17%, transparent), 0 5px 18px rgba(0,0,0,.45); transition:transform .18s ease, box-shadow .18s ease; }
.samsara-marker:hover .samsara-marker-pin, .samsara-marker.hovering .samsara-marker-pin, .samsara-marker.selected .samsara-marker-pin { transform:translate(-50%,-50%) scale(1.25); box-shadow:0 0 0 9px color-mix(in srgb, var(--fleet-status) 23%, transparent), 0 8px 24px rgba(0,0,0,.55); }
.samsara-unlinked-mark { display:grid; place-items:center; width:100%; height:100%; }
.samsara-marker-warning { position:absolute; right:-7px; top:-8px; width:13px; height:13px; display:grid; place-items:center; border-radius:50%; background:var(--red); border:2px solid #090b11; color:#fff; font:1000 7px/1 system-ui; }
.samsara-marker-label { position:absolute; left:0; top:12px; transform:translateX(-50%); display:block; min-width:max-content; max-width:150px; padding:3px 6px 4px; border-radius:6px; background:rgba(7,9,13,.84); border:1px solid rgba(255,255,255,.13); color:#fff; font:800 10px/1 system-ui; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; text-shadow:0 1px 3px #000; box-shadow:0 4px 12px rgba(0,0,0,.28); pointer-events:none; }
.samsara-marker.selected .samsara-marker-label { background:#f2f6ff; color:#0a0e16; border-color:#fff; text-shadow:none; }
.samsara-marker-hover { position:absolute; left:0; bottom:20px; width:285px; transform:translate(-50%,7px) scale(.98); transform-origin:50% 100%; display:block; padding:13px 14px; border-radius:15px; background:rgba(10,12,17,.97); border:1px solid rgba(255,255,255,.13); box-shadow:0 20px 60px rgba(0,0,0,.52); backdrop-filter:blur(20px) saturate(150%); text-align:left; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .14s ease, transform .18s ease, visibility .14s; }
.samsara-marker:hover .samsara-marker-hover, .samsara-marker.hovering .samsara-marker-hover, .samsara-marker:focus-visible .samsara-marker-hover { opacity:1; visibility:visible; transform:translate(-50%,0) scale(1); }
.samsara-marker-hover-head { display:flex; align-items:center; gap:8px; }
.samsara-marker-hover-head i { width:9px; height:9px; flex:0 0 auto; border-radius:50%; background:var(--fleet-status); color:var(--fleet-status); box-shadow:0 0 13px currentColor; }
.samsara-marker-hover-head strong { color:#fff; font-size:13px; line-height:1.2; }
.samsara-marker-hover-status { display:block; margin-top:8px; color:#e2e7f0; font-size:12px; font-weight:750; }
.samsara-marker-hover-address { display:block; margin-top:7px; color:#a9b2c2; font-size:11px; line-height:1.45; white-space:normal; }
.samsara-marker-hover-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:10px; padding-top:9px; border-top:1px solid rgba(255,255,255,.09); color:#8e99aa; font-size:9px; }
.samsara-marker-hover-meta b { color:#fff; font-size:10px; }

.fleet-map-detail { position:absolute; z-index:5; right:14px; bottom:24px; width:min(390px, calc(100% - 28px)); padding:18px; border-radius:18px; background:linear-gradient(145deg, rgba(18,23,36,.96), rgba(8,11,18,.96)); border:1px solid rgba(255,255,255,.14); box-shadow:0 25px 70px rgba(0,0,0,.52); backdrop-filter:blur(20px); }
.fleet-detail-close { position:absolute; top:10px; right:10px; width:30px; height:30px; border-radius:9px; border:1px solid var(--line); background:rgba(255,255,255,.04); color:var(--muted); cursor:pointer; }
.fleet-detail-status { display:flex; align-items:center; gap:7px; padding-right:36px; color:var(--muted); font-size:10px; }
.fleet-detail-status i { width:7px; height:7px; border-radius:50%; background:var(--fleet-status); color:var(--fleet-status); box-shadow:0 0 10px currentColor; }
.fleet-map-detail h4 { margin:10px 0 5px; font-size:23px; letter-spacing:-.04em; }
.fleet-map-detail > p { margin:0; color:var(--muted); line-height:1.4; font-size:11px; }
.fleet-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:15px 0; }
.fleet-detail-grid > div { padding:10px; border-radius:11px; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.07); }
.fleet-detail-grid span { display:block; color:var(--muted-2); font-size:8px; text-transform:uppercase; letter-spacing:.1em; }
.fleet-detail-grid b { display:block; margin-top:5px; font-size:11px; }
.fleet-link-line { display:grid; gap:4px; padding:10px 12px; border-radius:11px; background:rgba(255,110,183,.06); border:1px solid rgba(255,110,183,.15); }
.fleet-link-line.linked { background:rgba(100,239,174,.06); border-color:rgba(100,239,174,.17); }
.fleet-link-line span { color:var(--muted); font-size:9px; }
.fleet-link-line b { font-size:11px; }
.fleet-detail-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:13px; }

.samsara-credential-status { display:flex; align-items:center; gap:11px; padding:13px 14px; border-radius:13px; background:rgba(255,109,135,.055); border:1px solid rgba(255,109,135,.16); }
.samsara-credential-status.connected { background:rgba(100,239,174,.055); border-color:rgba(100,239,174,.17); }
.samsara-credential-status > i { width:9px; height:9px; flex:0 0 auto; border-radius:50%; background:var(--red); box-shadow:0 0 11px var(--red); }
.samsara-credential-status.connected > i { background:var(--green); box-shadow:0 0 11px var(--green); }
.samsara-credential-status div { display:grid; gap:3px; }
.samsara-credential-status b { font-size:12px; }
.samsara-credential-status span { color:var(--muted); font-size:10px; }
.samsara-disconnect-button { margin-right:auto; }
.samsara-link-preview { padding:16px; border-radius:15px; background:linear-gradient(120deg, rgba(94,229,255,.06), rgba(155,125,255,.07)); border:1px solid rgba(94,229,255,.16); }
.samsara-link-preview h4 { margin:8px 0 4px; font-size:20px; }
.samsara-link-preview p { margin:0; color:var(--muted); font-size:11px; }
.integration-status-card { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:17px; margin-bottom:15px; border-radius:15px; background:rgba(255,109,135,.045); border:1px solid rgba(255,109,135,.14); }
.integration-status-card.connected { background:rgba(100,239,174,.045); border-color:rgba(100,239,174,.16); }
.integration-status-card h4 { margin:6px 0 3px; }
.integration-status-card p { margin:0; color:var(--muted); font-size:11px; }
.integration-status-pill { flex:0 0 auto; padding:7px 10px; border-radius:999px; background:rgba(255,255,255,.045); color:var(--muted); font-size:10px; }
.integration-status-card.connected .integration-status-pill { color:var(--green); background:rgba(100,239,174,.07); }
.integration-note { border-radius:15px; padding:17px; margin-top:18px; color:var(--muted); line-height:1.6; font-size:13px; }
.integration-note b { color:var(--text); }

html[data-office-theme="business"] .samsara-setup,
html[data-office-theme="business"] .fleet-map-command,
html[data-office-theme="business"] .fleet-map-shell { background:#fff; }
html[data-office-theme="business"] .samsara-setup::before { opacity:.45; }
html[data-office-theme="business"] .samsara-setup-art i { background:#fff; color:#2563eb; border-color:#bfdbfe; }
html[data-office-theme="business"] .fleet-summary-card { background:#fff; border-color:#e3e8ef; color:#172033; }
html[data-office-theme="business"] .fleet-summary-card.active { background:#eff6ff; border-color:#bfdbfe; }
html[data-office-theme="business"] .fleet-map-list-panel { background:#fff; border-color:#e3e8ef; }
html[data-office-theme="business"] .fleet-vehicle-row { color:#172033; }
html[data-office-theme="business"] .fleet-vehicle-row:hover { background:#f8fafc; }
html[data-office-theme="business"] .fleet-vehicle-row.selected { background:#eff6ff; border-color:#bfdbfe; }
html[data-office-theme="business"] .fleet-map-detail { background:rgba(255,255,255,.97); border-color:#dbe3ef; color:#172033; }
html[data-office-theme="business"] .fleet-detail-grid > div,
html[data-office-theme="business"] .integration-status-card,
html[data-office-theme="business"] .samsara-link-preview,
html[data-office-theme="business"] .samsara-credential-status { background:#f8fafc; border-color:#e3e8ef; }
html[data-office-theme="business"] .fleet-link-line { background:#fff7ed; border-color:#fed7aa; }
html[data-office-theme="business"] .fleet-link-line.linked { background:#ecfdf5; border-color:#a7f3d0; }
html[data-office-theme="business"] .integration-note { background:#f8fafc; border-color:#e3e8ef; }

/* Keep required map attribution compact and out of the dispatch workflow. */
.samsara-map .maplibregl-ctrl-attrib { max-width:220px; font-size:8px; line-height:1.15; opacity:.58; transition:opacity .15s ease; }
.samsara-map .maplibregl-ctrl-attrib:hover, .samsara-map .maplibregl-ctrl-attrib:focus-within { opacity:1; }
.samsara-map .maplibregl-ctrl-attrib.maplibregl-compact { min-height:24px; min-width:24px; border-radius:8px; overflow:hidden; }
.samsara-map .maplibregl-ctrl-bottom-left { left:7px; bottom:6px; }
.samsara-map .maplibregl-ctrl-bottom-right { right:8px; bottom:8px; }
html[data-office-theme="studio"] .samsara-map .maplibregl-ctrl-group, html[data-office-theme="studio"] .samsara-map .maplibregl-ctrl-attrib { background:rgba(8,11,18,.82); color:#d8dfeb; border:1px solid rgba(255,255,255,.12); }
html[data-office-theme="studio"] .samsara-map .maplibregl-ctrl button .maplibregl-ctrl-icon { filter:invert(1); opacity:.82; }
html[data-office-theme="business"] .samsara-map .maplibregl-ctrl-group, html[data-office-theme="business"] .samsara-map .maplibregl-ctrl-attrib { background:rgba(255,255,255,.92); color:#334155; border:1px solid #dbe3ef; }


@media (max-width: 1180px) {
  .fleet-map-summary { grid-template-columns:repeat(3, minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .samsara-setup { grid-template-columns:1fr; text-align:center; }
  .samsara-setup-art { margin:auto; width:min(280px,75vw); }
  .samsara-scope-list { justify-content:center; }
  .fleet-map-command { align-items:flex-start; }
  .fleet-map-command-actions { max-width:340px; }
  .fleet-map-shell { height:min(900px, calc(100dvh - 120px)); min-height:700px; }
  .fleet-map-list-panel { width:min(370px, calc(100% - 54px)); }
}

@media (max-width: 680px) {
  .fleet-map-command { display:grid; padding:15px; }
  .fleet-map-command-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; max-width:none; }
  .fleet-map-command-actions .primary-button { grid-column:1 / -1; }
  .fleet-map-summary { grid-template-columns:repeat(3, 1fr); gap:6px; }
  .fleet-summary-card { min-height:62px; padding:8px 9px; }
  .fleet-summary-card b { font-size:17px; }
  .fleet-map-shell { height:78dvh; min-height:650px; border-radius:17px; }
  .fleet-map-list-panel { width:min(350px, calc(100% - 44px)); padding:15px; }
  .fleet-drawer-tab { width:40px; min-height:104px; }
  .fleet-map-tools { top:9px; right:9px; left:9px; justify-content:flex-end; overflow-x:auto; }
  .fleet-map-tools .secondary-button { flex:0 0 auto; min-height:36px; }
  .fleet-map-detail { right:8px; bottom:18px; width:calc(100% - 16px); max-height:70%; overflow:auto; padding:15px; }
  .fleet-detail-actions { display:grid; grid-template-columns:1fr 1fr; }
  .fleet-detail-actions button { width:100%; }
  .samsara-marker-label { display:none; }
  .samsara-marker-hover { width:min(270px, calc(100vw - 40px)); }
  .integration-head-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }
  .integration-status-card { align-items:flex-start; flex-direction:column; }
}

@media (max-width: 430px) {
  .fleet-map-summary { grid-template-columns:repeat(2, 1fr); }
  .fleet-map-shell { min-height:620px; height:76dvh; }
  .fleet-map-command-actions { grid-template-columns:1fr; }
  .fleet-map-command-actions .primary-button { grid-column:auto; }
  .fleet-detail-grid { gap:6px; }
  .fleet-map-detail h4 { font-size:20px; }
  .samsara-disconnect-button { width:100%; margin:0 0 8px; }
}

/* v4.6.7 violation ledger refinements */
.violation-table td[data-label="Plate"] { min-width: 132px; }
.violation-table td[data-label="Violation"] { min-width: 190px; }
.external-ticket-link { border: 1px solid var(--line-bright); }


/* v4.6.9 — fit the violation ledger without horizontal scrolling */
@media (min-width: 761px) {
  .violation-table-wrap { width: 100%; max-width: 100%; overflow-x: hidden !important; }
  .violation-table { width: 100%; min-width: 0 !important; table-layout: fixed; }
  .violation-table .vcol-check { width: 3%; }
  .violation-table .vcol-ticket { width: 13%; }
  .violation-table .vcol-issued { width: 8%; }
  .violation-table .vcol-violation { width: 20%; }
  .violation-table .vcol-plate { width: 11%; }
  .violation-table .vcol-assignment { width: 12%; }
  .violation-table .vcol-amount { width: 9%; }
  .violation-table .vcol-charge { width: 10%; }
  .violation-table .vcol-status { width: 10%; }
  .violation-table .vcol-action { width: 4%; }
  .violation-table th, .violation-table td { min-width: 0; padding-left: 9px; padding-right: 9px; overflow-wrap: anywhere; }
  .violation-table td > b, .violation-table td > small { max-width: 100%; white-space: normal; }
  .violation-table .violation-status { max-width: 100%; white-space: normal; text-align: center; }
}

/* Official ticket opens fitted to the viewer. It only becomes scrollable after zooming above 100%. */
.file-preview-body.ticket-preview-fit { overflow: hidden; }
.file-preview-body.ticket-preview-fit .image-preview { width: 100% !important; height: 100%; min-height: 0; padding: 12px; overflow: hidden; }
.file-preview-body.ticket-preview-fit .image-preview img { max-width: 100%; max-height: 100%; width: auto !important; height: auto; object-fit: contain; }
.file-preview-body.ticket-preview-fit.ticket-preview-zoomed { overflow: auto; }
.file-preview-body.ticket-preview-fit.ticket-preview-zoomed .image-preview { height: auto; min-height: 100%; overflow: visible; }

/* v4.7.1 — full-height Fleet Map, push drawer, and stable NYC opening camera */
body.fleet-map-active { overflow:hidden; }
body.fleet-map-active .office-app { height:100dvh; min-height:0; }
body.fleet-map-active .workspace { height:100dvh; min-height:0; padding-bottom:10px; overflow:hidden; }
body.fleet-map-active .view-root { height:calc(100dvh - 116px); min-height:0; }
body.fleet-map-active .fleet-map-page { display:block; height:100%; min-height:0; }
body.fleet-map-active .fleet-map-shell { height:100%; min-height:0; border-radius:22px; }

/* The telematics controls now float over the map so the map starts immediately. */
.fleet-map-stage { left:0; transition:left .24s cubic-bezier(.2,.8,.2,1); }
.fleet-map-stage > .fleet-map-command {
  position:absolute; z-index:7; top:12px; left:58px; right:12px;
  min-height:62px; padding:9px 11px; border-radius:16px;
  background:rgba(8,11,18,.88); border:1px solid rgba(255,255,255,.13);
  box-shadow:0 12px 34px rgba(0,0,0,.28); backdrop-filter:blur(18px) saturate(145%);
}
.fleet-map-stage > .fleet-map-command .fleet-map-command-copy { min-width:0; display:flex; align-items:center; gap:16px; }
.fleet-map-stage > .fleet-map-command .fleet-map-command-copy > div { min-width:max-content; }
.fleet-map-stage > .fleet-map-command .fleet-map-command-copy h3 { margin:3px 0 0; font-size:18px; }
.fleet-map-stage > .fleet-map-command .fleet-map-command-copy p { min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fleet-map-stage > .fleet-map-command .primary-button,
.fleet-map-stage > .fleet-map-command .secondary-button { min-height:36px; padding:0 12px; font-size:11px; }

.fleet-map-stage > .fleet-map-summary {
  position:absolute; z-index:7; top:84px; left:58px; right:12px;
  display:flex; gap:6px; overflow-x:auto; overflow-y:hidden; padding:0 0 2px;
  scrollbar-width:none; overscroll-behavior-x:contain;
}
.fleet-map-stage > .fleet-map-summary::-webkit-scrollbar { display:none; }
.fleet-map-stage > .fleet-map-summary .fleet-summary-card {
  flex:1 1 0; min-width:108px; min-height:52px; padding:7px 10px; border-radius:13px;
  background:rgba(8,11,18,.84); border-color:rgba(255,255,255,.13);
  box-shadow:0 8px 24px rgba(0,0,0,.2); backdrop-filter:blur(15px);
}
.fleet-map-stage > .fleet-map-summary .fleet-summary-card b { font-size:17px; }
.fleet-map-stage > .fleet-map-summary .fleet-summary-card span { margin-top:2px; font-size:9px; }
.fleet-map-stage > .fleet-map-summary .fleet-summary-card.active { background:linear-gradient(120deg, rgba(32,47,65,.92), rgba(39,31,65,.9)); }

.fleet-map-tools { top:145px; right:12px; }
.fleet-map-tools .secondary-button { min-height:36px; }

html[data-office-theme="business"] .fleet-map-stage > .fleet-map-command,
html[data-office-theme="business"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card {
  background:rgba(255,255,255,.93); border-color:#dbe3ef; box-shadow:0 10px 28px rgba(15,23,42,.12);
}
html[data-office-theme="business"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card.active { background:#eff6ff; }

/* Desktop drawer pushes the map aside instead of covering it. */
@media (min-width:901px) {
  .fleet-map-list-panel { width:390px; }
  .fleet-map-shell.list-open .fleet-map-stage { left:390px; }
  .fleet-map-drawer-scrim { display:none !important; }
}

@media (min-width:901px) and (max-width:1180px) {
  .fleet-map-list-panel { width:340px; }
  .fleet-map-shell.list-open .fleet-map-stage { left:340px; }
  .fleet-map-stage > .fleet-map-command { left:54px; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy .micro-label { display:none; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy > div { min-width:auto; }
}

@media (max-width:900px) {
  .dispatch-route-address { flex-direction:column; gap:5px; }
  body.fleet-map-active { overflow:auto; }
  body.fleet-map-active .office-app,
  body.fleet-map-active .workspace { height:auto; min-height:100dvh; overflow:visible; }
  body.fleet-map-active .view-root { height:auto; min-height:0; }
  body.fleet-map-active .fleet-map-page { height:auto; }
  body.fleet-map-active .fleet-map-shell { height:calc(100dvh - 150px); min-height:650px; }
  .fleet-map-stage { left:0 !important; }
  .fleet-map-drawer-scrim { display:block; }
  .fleet-map-stage > .fleet-map-command { left:50px; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy .micro-label { display:none; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy > div { min-width:auto; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy p { display:none; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-actions { flex-wrap:nowrap; overflow-x:auto; justify-content:flex-start; }
}

@media (max-width:680px) {
  body.fleet-map-active .fleet-map-shell { height:calc(100dvh - 164px); min-height:590px; }
  .fleet-map-stage > .fleet-map-command {
    top:8px; left:48px; right:8px; min-height:auto; display:grid; gap:8px; padding:9px;
  }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy { justify-content:space-between; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-copy h3 { font-size:16px; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-actions { width:100%; display:flex; gap:6px; }
  .fleet-map-stage > .fleet-map-command .fleet-map-command-actions button { flex:0 0 auto; min-height:34px; padding:0 10px; font-size:10px; }
  .fleet-map-stage > .fleet-map-summary { top:100px; left:48px; right:8px; }
  .fleet-map-stage > .fleet-map-summary .fleet-summary-card { flex:0 0 102px; min-width:102px; min-height:48px; }
  .fleet-map-tools { top:157px; right:8px; max-width:calc(100% - 56px); }
  .fleet-map-tools .secondary-button { min-height:34px; padding:0 10px; font-size:10px; }
}

/* =========================================================
   CRM LEADS · v4.8.1
   ========================================================= */
.lead-loading { min-height:220px; display:flex; align-items:center; justify-content:center; gap:16px; border-radius:24px; }
.lead-loading > span { width:28px; height:28px; border-radius:50%; border:3px solid rgba(126,249,255,.18); border-top-color:var(--cyan); animation:spin .8s linear infinite; }
.lead-loading b { display:block; font-size:18px; }
.lead-loading p { margin:4px 0 0; color:var(--muted); }

.lead-command { display:grid; grid-template-columns:minmax(280px,1fr) minmax(360px,.9fr); gap:24px; align-items:center; padding:24px 26px; border-radius:24px; overflow:hidden; position:relative; }
.lead-command::after { content:""; position:absolute; width:260px; height:260px; border-radius:50%; right:-90px; top:-120px; background:radial-gradient(circle,rgba(83,223,242,.18),transparent 68%); pointer-events:none; }
.lead-command h3 { margin:6px 0 5px; font-size:clamp(25px,2.6vw,40px); }
.lead-command p { margin:0; color:var(--muted); }
.lead-search-box { min-height:58px; display:flex; align-items:center; gap:12px; padding:0 18px; border:1px solid var(--line); border-radius:18px; background:var(--input-bg); position:relative; z-index:1; }
.lead-search-box span { color:var(--cyan); font-size:20px; }
.lead-search-box input { width:100%; border:0; padding:0; background:transparent; box-shadow:none; font-size:16px; }

.lead-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:14px 0; }
.lead-mini-stat { min-height:92px; padding:16px 18px; border-radius:20px; text-align:left; position:relative; }
.lead-mini-stat span { display:block; color:var(--muted); font-size:12px; }
.lead-mini-stat strong { display:block; margin-top:9px; font-size:26px; }
.lead-mini-stat i { position:absolute; top:14px; right:16px; font-style:normal; opacity:.55; }
.lead-mini-stat.active { border-color:rgba(91,221,241,.55); box-shadow:0 0 0 1px rgba(91,221,241,.12),0 14px 38px rgba(0,0,0,.18); }

.lead-list-panel { border-radius:24px; overflow:hidden; }
.lead-filter-row { display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)) auto; gap:10px; padding:16px 18px; border-bottom:1px solid var(--line); }
.lead-filter-row select,.lead-filter-row button { min-height:44px; }
.lead-list-head { display:flex; justify-content:space-between; align-items:center; padding:13px 18px; font-family:"DM Mono",monospace; font-size:11px; letter-spacing:.12em; color:var(--cyan); border-bottom:1px solid var(--line); }
.lead-list-head small { color:var(--muted); }
.lead-table-header,.lead-table-row { display:grid; grid-template-columns:1.05fr 1.35fr 1.25fr 1.15fr .95fr .9fr 36px; gap:14px; align-items:center; }
.lead-table-header { padding:12px 18px; color:var(--muted); font-family:"DM Mono",monospace; font-size:10px; letter-spacing:.12em; text-transform:uppercase; background:rgba(255,255,255,.018); }
.lead-table-row { width:100%; padding:16px 18px; border:0; border-top:1px solid var(--line); background:transparent; color:inherit; text-align:left; cursor:pointer; transition:.18s ease; }
.lead-table-row:hover { background:rgba(89,217,239,.055); transform:translateX(2px); }
.lead-table-row > span { min-width:0; }
.lead-table-row b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.lead-table-row small { display:block; margin-top:4px; color:var(--muted); font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lead-number b { color:var(--cyan); font-family:"DM Mono",monospace; }
.lead-open-arrow { text-align:right; color:var(--muted); font-size:18px; }
.lead-pagination { display:flex; justify-content:center; align-items:center; gap:18px; padding:18px; border-top:1px solid var(--line); }
.lead-pagination span { color:var(--muted); font-size:12px; }

.lead-status { display:inline-flex; align-items:center; justify-content:center; min-height:28px; padding:0 10px; border-radius:999px; border:1px solid var(--line); font-family:"DM Mono",monospace; font-size:9px; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.lead-status.new { color:#75f6ff; border-color:rgba(69,223,244,.36); background:rgba(69,223,244,.08); }
.lead-status.contacted,.lead-status.estimate { color:#b7b3ff; border-color:rgba(156,141,255,.38); background:rgba(156,141,255,.08); }
.lead-status.follow-up,.lead-status.on-hold { color:#ffc777; border-color:rgba(255,177,74,.38); background:rgba(255,177,74,.08); }
.lead-status.booked { color:#65eab2; border-color:rgba(63,220,152,.38); background:rgba(63,220,152,.08); }
.lead-status.lost,.lead-status.cancelled { color:#ff8fa6; border-color:rgba(255,100,132,.38); background:rgba(255,100,132,.08); }

.lead-detail-hero { position:relative; z-index:12; overflow:visible; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:22px 24px; border-radius:24px; }
.lead-detail-ident { display:flex; align-items:center; gap:16px; min-width:0; }
.lead-detail-ident h3 { margin:5px 0 2px; font-size:clamp(23px,2.6vw,36px); overflow:hidden; text-overflow:ellipsis; }
.lead-detail-ident p { margin:0; color:var(--muted); }
.lead-detail-actions,.lead-action-group { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.lead-finance-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:12px 0; }
.lead-metric { min-height:78px; padding:14px 16px; border:1px solid var(--line); border-radius:18px; background:var(--panel-soft); }
.lead-metric span { display:block; color:var(--muted); font-size:11px; }
.lead-metric strong { display:block; margin-top:8px; font-size:19px; }
.lead-metric.warning strong { color:var(--orange); }
.lead-tabs { overflow-x:auto; scrollbar-width:none; }
.lead-tabs::-webkit-scrollbar { display:none; }
.lead-tabs button { white-space:nowrap; }
.lead-detail-body { padding:22px; border-radius:0 0 24px 24px; min-height:360px; }
.lead-overview-grid { display:grid; gap:18px; }
.lead-section { padding:18px; border:1px solid var(--line); border-radius:20px; background:var(--panel-soft); }
.lead-section .section-head { margin-bottom:14px; }
.lead-note-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.lead-note-grid article { min-height:150px; padding:18px; border:1px solid var(--line); border-radius:20px; background:linear-gradient(145deg,rgba(120,99,255,.07),rgba(58,213,232,.035)); }
.lead-note-grid span,.quote-card > span,.payroll-card > div:first-child > span { color:var(--cyan); font-family:"DM Mono",monospace; font-size:10px; letter-spacing:.14em; }
.lead-note-grid p { margin:12px 0 0; white-space:pre-wrap; line-height:1.65; color:var(--text-soft); }

.route-timeline { display:grid; gap:12px; position:relative; }
.route-timeline::before { content:""; position:absolute; left:22px; top:28px; bottom:28px; width:1px; background:linear-gradient(var(--cyan),transparent); }
.route-card { display:grid; grid-template-columns:46px 1fr; gap:16px; padding:18px; border:1px solid var(--line); border-radius:20px; background:var(--panel-soft); position:relative; }
.route-order { width:34px; height:34px; border-radius:12px; display:grid; place-items:center; background:rgba(63,220,235,.1); border:1px solid rgba(63,220,235,.32); color:var(--cyan); font-family:"DM Mono",monospace; z-index:1; }
.route-card span { color:var(--cyan); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.route-card h4 { margin:4px 0; font-size:18px; }
.route-card p { margin:0; color:var(--muted); }
.route-card small { display:block; margin-top:10px; color:var(--text-soft); }
.route-flags { display:flex; gap:7px; flex-wrap:wrap; margin-top:11px; }
.route-flags b { padding:5px 8px; border-radius:8px; background:rgba(255,255,255,.045); border:1px solid var(--line); font-size:10px; font-weight:500; }

.inventory-room-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:14px; }
.inventory-room-card { border:1px solid var(--line); border-radius:20px; background:var(--panel-soft); overflow:hidden; }
.inventory-room-card header { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:16px; border-bottom:1px solid var(--line); }
.inventory-room-card header span { color:var(--cyan); font:10px "DM Mono",monospace; letter-spacing:.12em; }
.inventory-room-card h4 { margin:3px 0 0; }
.inventory-room-card header strong { color:var(--cyan); }
.inventory-room-card > div { padding:8px 16px 14px; }
.inventory-line { display:grid; grid-template-columns:1fr auto auto; gap:10px; align-items:center; padding:9px 0; border-bottom:1px solid rgba(255,255,255,.05); }
.inventory-line small { color:var(--muted); }

.pricing-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:20px; align-items:start; }
.pricing-summary-grid,.payment-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:18px; }
.mini-ledger { margin-top:14px; border:1px solid var(--line); border-radius:18px; overflow:hidden; }
.mini-ledger h5 { margin:0; padding:13px 15px; background:rgba(255,255,255,.025); border-bottom:1px solid var(--line); }
.mini-ledger > div { display:flex; justify-content:space-between; gap:16px; padding:11px 15px; border-top:1px solid rgba(255,255,255,.045); }
.mini-ledger p { margin:0; padding:14px; color:var(--muted); }
.quote-card { position:sticky; top:14px; padding:22px; border:1px solid rgba(77,220,235,.34); border-radius:22px; background:linear-gradient(145deg,rgba(76,65,136,.22),rgba(28,92,104,.18)); }
.quote-card > strong { display:block; margin:12px 0 3px; font-size:36px; }
.quote-card p { margin:0 0 20px; color:var(--muted); }
.quote-card > div { display:flex; justify-content:space-between; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.quote-card small { display:block; margin-top:16px; color:var(--muted); line-height:1.5; }
.pci-note { margin-top:16px; padding:14px 16px; border:1px solid rgba(81,218,231,.22); border-radius:14px; background:rgba(81,218,231,.045); color:var(--muted); line-height:1.55; }
.related-job-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:12px; }
.related-job-grid article { padding:17px; border:1px solid var(--line); border-radius:18px; background:var(--panel-soft); }
.related-job-grid span { color:var(--cyan); font:10px "DM Mono",monospace; letter-spacing:.1em; }
.related-job-grid h4 { margin:8px 0 4px; }
.related-job-grid p,.related-job-grid small { color:var(--muted); }
.related-job-grid article .secondary-button { margin-top:12px; width:max-content; }
.lead-related-linked { display:grid; grid-template-columns:minmax(180px,.9fr) minmax(220px,1.4fr) minmax(180px,1fr) auto auto; gap:8px; align-items:center; padding:9px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.lead-related-linked > select,.lead-related-linked > input { min-width:0; min-height:42px; }
.lead-related-target { min-width:0; min-height:42px; display:grid; align-content:center; gap:3px; padding:7px 11px; border:1px solid rgba(94,229,255,.18); border-radius:10px; background:rgba(94,229,255,.045); }
.lead-related-target span { color:var(--cyan); font:600 8px/1 "DM Mono",monospace; letter-spacing:.09em; text-transform:uppercase; }
.lead-related-target b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.payroll-card { display:grid; grid-template-columns:260px 1fr; gap:18px; padding:20px; border:1px solid var(--line); border-radius:20px; background:var(--panel-soft); }
.payroll-card > div:first-child > strong { display:block; font-size:34px; margin:12px 0 4px; }
.payroll-card p { color:var(--muted); }
.payroll-breakdown { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.lead-activity-list { display:grid; gap:9px; }
.lead-activity-list article { display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:center; padding:13px 15px; border:1px solid var(--line); border-radius:16px; background:var(--panel-soft); }
.lead-activity-list i { width:36px; height:36px; border-radius:12px; display:grid; place-items:center; background:rgba(65,219,237,.08); color:var(--cyan); font-style:normal; }
.lead-activity-list p { margin:3px 0 0; color:var(--muted); }
.lead-activity-list time { color:var(--muted); font-size:11px; }

/* Full CRM lead editor */
body.lead-editor-open { overflow:hidden; }
.modal.lead-editor-modal { width:min(1280px,calc(100vw - 28px)); max-width:none; }
.modal.lead-editor-modal .modal-shell { width:100%; max-width:none; height:min(92dvh,980px); padding:0; overflow:hidden; display:grid; grid-template-rows:auto 1fr auto; }
.modal.lead-editor-modal .modal-head { padding:18px 22px; border-bottom:1px solid var(--line); }
.modal.lead-editor-modal .modal-body { padding:0; overflow:hidden; max-height:none; }
.modal.lead-editor-modal .modal-actions { padding:14px 20px; border-top:1px solid var(--line); background:var(--panel); }
.lead-editor-shell { height:100%; min-height:0; display:grid; grid-template-columns:190px 1fr; }
.lead-editor-nav { padding:18px 12px; border-right:1px solid var(--line); background:rgba(255,255,255,.014); display:flex; flex-direction:column; gap:6px; overflow:auto; }
.lead-editor-nav button { min-height:42px; padding:0 12px; border:1px solid transparent; border-radius:12px; background:transparent; color:var(--muted); text-align:left; }
.lead-editor-nav button.active,.lead-editor-nav button:hover { color:var(--text); border-color:var(--line); background:rgba(92,207,233,.07); }
.lead-editor-content { overflow:auto; scroll-behavior:smooth; padding:0 24px 40px; }
.lead-edit-section { padding-top:22px; scroll-margin-top:16px; }
.lead-edit-section + .lead-edit-section { margin-top:12px; border-top:1px solid var(--line); }
.lead-repeat-block { margin-top:16px; padding:16px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.014); }
.lead-repeat-head { display:flex; justify-content:space-between; gap:14px; align-items:center; margin-bottom:12px; }
.lead-repeat-head h5 { margin:0; font-size:15px; }
.lead-repeat-head p { margin:3px 0 0; color:var(--muted); font-size:12px; }
.lead-inline-row { display:grid; grid-template-columns:140px minmax(180px,1fr) 110px 42px; gap:9px; align-items:center; margin-top:8px; }
.lead-inline-row.four { grid-template-columns:repeat(4,minmax(120px,1fr)) 42px; }
.lead-inline-row.five { grid-template-columns:repeat(5,minmax(105px,1fr)) 42px; }
.lead-inline-row input,.lead-inline-row select,.lead-route-editor input,.lead-route-editor select,.lead-route-editor textarea,.lead-room-editor input,.lead-room-editor textarea,.inventory-edit-row input { min-height:42px; }
.lead-primary-check { min-height:42px; display:flex; align-items:center; gap:7px; padding:0 10px; border:1px solid var(--line); border-radius:12px; color:var(--muted); font-size:11px; }
.lead-primary-check input { width:auto; min-height:auto; }
.lead-row-remove { width:42px; height:42px; }
.lead-route-editor,.lead-room-editor { margin-top:10px; padding:14px; border:1px solid var(--line); border-radius:16px; background:var(--panel-soft); }
.lead-route-editor header,.lead-room-editor header { display:flex; gap:9px; align-items:center; }
.lead-route-editor header input,.lead-room-editor header input { flex:1; }
.lead-route-fields { display:grid; grid-template-columns:2fr 1fr 1fr 80px 90px 90px; gap:8px; margin-top:9px; }
.lead-check-row { display:flex; gap:8px; flex-wrap:wrap; margin:9px 0; }
.lead-check-row label { min-height:38px; display:flex; align-items:center; gap:7px; padding:0 11px; border:1px solid var(--line); border-radius:10px; color:var(--muted); }
.lead-check-row input { width:auto; min-height:auto; }
.lead-route-editor textarea,.lead-room-editor textarea { width:100%; min-height:70px; resize:vertical; }
.inventory-edit-list { margin-top:10px; }
.inventory-edit-row { display:grid; grid-template-columns:1.4fr 80px 100px 130px 1fr 42px; gap:8px; margin-top:8px; }
.lead-room-editor footer { display:flex; justify-content:flex-end; gap:12px; padding-top:12px; color:var(--muted); }
.lead-room-editor footer b { color:var(--cyan); }
.lead-live-total { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; margin-top:16px; }
.lead-live-total > div { padding:13px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.lead-live-total span { display:block; color:var(--muted); font-size:10px; }
.lead-live-total b { display:block; margin-top:6px; }

html[data-office-theme="business"] .lead-command::after { opacity:.45; }
html[data-office-theme="business"] .lead-table-row:hover { background:#f0f7ff; }
html[data-office-theme="business"] .lead-editor-nav { background:#f7f9fc; }
html[data-office-theme="business"] .quote-card { background:linear-gradient(145deg,#f5f1ff,#edfaff); }

@media (max-width:1100px) {
  .lead-table-header,.lead-table-row { grid-template-columns:1fr 1.3fr 1.1fr 1fr .85fr 34px; }
  .lead-table-header span:nth-child(5),.lead-table-row > span:nth-child(5) { display:none; }
  .lead-filter-row { grid-template-columns:repeat(2,minmax(0,1fr)) auto; }
  .lead-filter-row select:nth-child(4) { grid-column:2; }
  .lead-finance-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .pricing-layout { grid-template-columns:1fr; }
  .quote-card { position:static; }
  .lead-inline-row.five { grid-template-columns:repeat(2,minmax(0,1fr)) 42px; }
  .lead-route-fields { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .inventory-edit-row { grid-template-columns:1.2fr 70px 90px 120px 42px; }
  .inventory-edit-row input:nth-child(5) { display:none; }
}

@media (max-width:760px) {
  .lead-command { grid-template-columns:1fr; padding:18px; }
  .lead-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-filter-row { grid-template-columns:1fr 1fr; padding:12px; }
  .lead-filter-row button { grid-column:1/-1; }
  .lead-table-header { display:none; }
  .lead-table-row { grid-template-columns:1fr auto; gap:12px; padding:15px; }
  .lead-table-row > span { display:block !important; }
  .lead-table-row > span:nth-child(3),.lead-table-row > span:nth-child(4),.lead-table-row > span:nth-child(5) { grid-column:1; }
  .lead-table-row > span:nth-child(6) { grid-column:2; grid-row:1; }
  .lead-table-row > span:nth-child(7) { grid-column:2; grid-row:2/5; align-self:center; }
  .lead-detail-hero { align-items:flex-start; flex-direction:column; }
  .lead-detail-actions { width:100%; justify-content:flex-start; }
  .lead-finance-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-note-grid,.payroll-card { grid-template-columns:1fr; }
  .payroll-breakdown { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .pricing-summary-grid,.payment-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .modal.lead-editor-modal { width:100vw; max-width:none; height:100dvh; margin:0; }
  .modal.lead-editor-modal .modal-shell { height:100dvh; max-height:none; border-radius:0; }
  .lead-editor-shell { grid-template-columns:1fr; }
  .lead-editor-nav { position:sticky; top:0; z-index:3; flex-direction:row; overflow-x:auto; overflow-y:hidden; border-right:0; border-bottom:1px solid var(--line); padding:9px; }
  .lead-editor-nav button { flex:0 0 auto; }
  .lead-editor-content { padding:0 14px 34px; }
  .lead-inline-row,.lead-inline-row.four,.lead-inline-row.five { grid-template-columns:1fr 1fr 42px; }
  .lead-inline-row > :nth-last-child(2):not(.lead-row-remove) { grid-column:1/3; }
  .lead-route-editor header,.lead-room-editor header { flex-wrap:wrap; }
  .lead-route-editor header input,.lead-room-editor header input { flex-basis:calc(100% - 52px); }
  .lead-route-fields { grid-template-columns:1fr 1fr; }
  .inventory-edit-row { grid-template-columns:1fr 70px 90px 42px; }
  .inventory-edit-row input:nth-child(4),.inventory-edit-row input:nth-child(5) { display:none; }
  .lead-live-total { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-activity-list article { grid-template-columns:38px 1fr; }
  .lead-activity-list time { grid-column:2; }
}

/* =========================================================
   CRM LEADS · v4.8.1 simplified lead window
   ========================================================= */
.lead-stat-grid-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.lead-filter-row-simple { grid-template-columns:repeat(4,minmax(150px,1fr)) auto; }
.lead-detail-ident h3 span { color:var(--cyan); font-family:"DM Mono",monospace; font-size:.55em; font-weight:500; white-space:nowrap; }
.booked-button { min-height:44px; padding:0 16px; border:1px solid rgba(66,225,159,.45); border-radius:13px; background:rgba(66,225,159,.12); color:#6aefb6; font-weight:700; }

.lead-summary-banner { position:relative; z-index:1; display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; margin:12px 0; padding:18px 88px 18px 20px; border:1px solid rgba(255,190,90,.28); border-radius:20px; background:linear-gradient(120deg,rgba(255,177,70,.08),rgba(101,78,164,.08)); overflow:hidden; }
.lead-summary-banner.booked { border-color:rgba(73,218,150,.32); background:linear-gradient(120deg,rgba(57,193,126,.1),rgba(80,151,121,.07)); }
.lead-summary-banner > div { min-width:0; }
.lead-summary-banner span { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.lead-summary-banner b { display:block; margin-top:5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.lead-summary-banner p { grid-column:1/-1; margin:2px 0 0; color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lead-summary-banner > strong { position:absolute; top:0; right:0; bottom:0; width:72px; display:grid; place-items:center; background:rgba(255,175,58,.14); color:var(--orange); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.lead-summary-banner.booked > strong { color:#68e8ac; background:rgba(58,206,137,.17); }

.lead-window-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:12px; align-items:start; }
.lead-window-nav { position:sticky; top:12px; padding:9px; border-radius:20px; display:flex; flex-direction:column; gap:4px; }
.lead-window-nav button { width:100%; min-height:42px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 12px; border:1px solid transparent; border-radius:12px; background:transparent; color:var(--muted); text-align:left; }
.lead-window-nav button:hover,.lead-window-nav button.active { color:var(--text); background:rgba(91,215,237,.08); border-color:rgba(91,215,237,.2); }
.lead-window-nav button i { font-style:normal; opacity:.5; }
.lead-detail-body { border-radius:20px; min-height:480px; }
.lead-general-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.lead-long-note { margin:0; color:var(--text-soft); white-space:pre-wrap; line-height:1.65; }
.lead-contact-layout { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.lead-contact-layout .lead-section:first-child { grid-column:1/-1; }
.contact-list { display:grid; gap:8px; margin-top:12px; }
.contact-list > div { display:flex; justify-content:space-between; gap:16px; padding:11px 0; border-top:1px solid var(--line); }
.contact-list span { color:var(--muted); font-size:11px; }
.lead-job-note { margin-top:16px; }

.lead-notes-rail { position:fixed; z-index:42; right:0; top:48%; transform:translateY(-50%); min-height:128px; width:38px; padding:10px 0; border:1px solid rgba(112,100,255,.36); border-right:0; border-radius:14px 0 0 14px; background:linear-gradient(180deg,rgba(84,68,155,.96),rgba(19,29,44,.96)); color:#fff; box-shadow:-10px 12px 36px rgba(0,0,0,.3); }
.lead-notes-rail span { writing-mode:vertical-rl; transform:rotate(180deg); font:10px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.lead-notes-rail b { display:block; margin-top:8px; color:var(--cyan); }
.lead-notes-drawer { position:fixed; z-index:55; top:118px; right:18px; bottom:18px; width:min(360px,calc(100vw - 36px)); display:flex; flex-direction:column; gap:14px; padding:18px; border:1px solid var(--line); border-radius:22px; background:var(--panel); box-shadow:-25px 30px 80px rgba(0,0,0,.42); transform:translateX(calc(100% + 36px)); opacity:0; pointer-events:none; transition:transform .22s ease,opacity .22s ease; }
.lead-notes-drawer.open { transform:translateX(0); opacity:1; pointer-events:auto; }
.lead-notes-drawer header { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.lead-notes-drawer header span { color:var(--cyan); font:10px "DM Mono",monospace; letter-spacing:.12em; }
.lead-notes-drawer h4 { margin:4px 0 0; font-size:24px; }
.lead-notes-drawer textarea { flex:1; min-height:240px; resize:none; }
.lead-notes-scrim { position:fixed; inset:0; z-index:50; border:0; background:rgba(1,4,11,.38); backdrop-filter:blur(2px); }

.simple-ledger { border:1px solid var(--line); border-radius:18px; overflow:hidden; }
.simple-ledger > header,.simple-ledger > div { display:grid; grid-template-columns:minmax(0,1fr) 80px 120px 130px; gap:12px; align-items:center; padding:12px 15px; }
.simple-ledger > header { background:rgba(255,255,255,.025); color:var(--muted); font:10px "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.simple-ledger > div { border-top:1px solid var(--line); }
.simple-ledger small { display:block; margin-top:3px; color:var(--muted); }
.simple-ledger strong { text-align:right; }
.lead-price-total { margin-top:14px; display:flex; justify-content:flex-end; align-items:center; gap:18px; padding:16px; border:1px solid rgba(73,217,235,.27); border-radius:16px; background:rgba(73,217,235,.045); }
.lead-price-total span { color:var(--muted); }
.lead-price-total strong { font-size:26px; }
.lead-placeholder { min-height:300px; display:grid; place-content:center; text-align:center; padding:28px; border:1px dashed var(--line); border-radius:20px; background:var(--panel-soft); }
.lead-placeholder.compact { min-height:110px; margin-top:18px; }
.lead-placeholder span { color:var(--cyan); font:10px "DM Mono",monospace; letter-spacing:.16em; }
.lead-placeholder h3 { margin:10px 0 4px; }
.lead-placeholder p { color:var(--muted); }

.modal.quick-lead-modal { width:min(690px,calc(100vw - 28px)); }
.modal.quick-lead-modal .modal-shell { width:100%; }
.quick-lead-form > p { margin:0 0 18px; color:var(--muted); line-height:1.55; }
.quick-lead-form .form-grid { grid-template-columns:1fr 1fr; }
.quick-lead-form .field:last-child { grid-column:1/-1; }
.lead-generated-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:16px; }
.lead-generated-row > div { padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.lead-generated-row span { display:block; color:var(--muted); font:9px "DM Mono",monospace; letter-spacing:.12em; }
.lead-generated-row b { display:block; margin-top:7px; }
.lead-route-add-actions { display:flex; gap:8px; flex-wrap:wrap; }
.lead-route-type { display:inline-flex; align-items:center; justify-content:center; min-height:38px; min-width:82px; padding:0 10px; border-radius:10px; color:var(--cyan); background:rgba(57,211,232,.08); border:1px solid rgba(57,211,232,.25); font:10px "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.lead-route-type.delivery { color:#b7a4ff; background:rgba(142,115,255,.08); border-color:rgba(142,115,255,.25); }
.lead-route-editor header { justify-content:space-between; }
.inventory-catalog-add { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; margin-top:10px; }
.inventory-catalog-add input { min-width:0; }
.lead-live-total { grid-template-columns:repeat(6,minmax(0,1fr)); }

html[data-office-theme="business"] .lead-summary-banner { background:#fffaf0; border-color:#ead8b5; }
html[data-office-theme="business"] .lead-summary-banner.booked { background:#f0fbf5; border-color:#bfe7cf; }
html[data-office-theme="business"] .lead-window-nav button:hover,
html[data-office-theme="business"] .lead-window-nav button.active { background:#eef6ff; }
html[data-office-theme="business"] .lead-notes-drawer { background:#fff; }

@media (max-width:1180px) {
  .lead-summary-banner { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .lead-window-layout { grid-template-columns:190px minmax(0,1fr); }
  .lead-live-total { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .lead-window-layout { grid-template-columns:1fr; }
  .lead-window-nav { position:static; flex-direction:row; overflow-x:auto; scrollbar-width:none; }
  .lead-window-nav::-webkit-scrollbar { display:none; }
  .lead-window-nav button { flex:0 0 auto; width:auto; }
  .lead-contact-layout { grid-template-columns:1fr; }
  .lead-contact-layout .lead-section:first-child { grid-column:auto; }
  .lead-general-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-summary-banner { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-filter-row-simple { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-filter-row-simple button { grid-column:1/-1; }
}
@media (max-width:760px) {
  .lead-stat-grid-three { grid-template-columns:1fr 1fr; }
  .lead-stat-grid-three .lead-mini-stat:first-child { grid-column:1/-1; }
  .lead-summary-banner { padding:16px 68px 16px 16px; gap:12px; }
  .lead-summary-banner > strong { width:58px; }
  .lead-summary-banner p { white-space:normal; }
  .lead-detail-ident h3 span { display:block; margin-top:5px; }
  .lead-notes-rail { top:auto; bottom:92px; }
  .lead-notes-drawer { top:72px; right:8px; bottom:8px; width:calc(100vw - 16px); }
  .simple-ledger > header { display:none; }
  .simple-ledger > div { grid-template-columns:1fr auto; }
  .simple-ledger > div > span:first-child { grid-column:1/-1; }
  .simple-ledger > div > span:nth-child(2)::before { content:"Qty: "; color:var(--muted); }
  .simple-ledger > div > span:nth-child(3) { text-align:right; }
  .lead-generated-row,.quick-lead-form .form-grid { grid-template-columns:1fr; }
  .quick-lead-form .field:last-child { grid-column:auto; }
  .inventory-catalog-add { grid-template-columns:1fr; }
  .lead-live-total { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* =========================================================
   CRM LEADS · focused tab + inline edit update
   ========================================================= */
.lead-booking-toggle { position:relative; min-width:132px; overflow:hidden; }
.lead-booking-toggle .booking-hover { display:none; }
.lead-booking-toggle:hover { border-color:rgba(255,112,112,.5); background:rgba(255,92,92,.12); color:#ff9c9c; }
.lead-booking-toggle:hover .booking-default { display:none; }
.lead-booking-toggle:hover .booking-hover { display:inline; }
.lead-save-top { min-width:132px; }
.lead-save-top:disabled { opacity:.45; cursor:not-allowed; }

.lead-summary-banner { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:14px; padding:18px 82px 18px 20px; }
.lead-summary-details { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px 18px; min-width:0; }
.lead-summary-details > div { min-width:0; }
.lead-summary-details span,.lead-summary-financials span,.lead-summary-route > span { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.lead-summary-details b { display:block; margin-top:5px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.lead-summary-financials { display:grid; grid-template-columns:1fr 1fr; gap:10px; align-self:stretch; }
.lead-summary-financials > div { display:flex; flex-direction:column; justify-content:center; padding:13px 14px; border:1px solid rgba(82,213,235,.2); border-radius:15px; background:rgba(82,213,235,.05); }
.lead-summary-financials > div.open-balance { border-color:rgba(255,178,76,.28); background:rgba(255,178,76,.075); }
.lead-summary-financials > div.paid-balance { border-color:rgba(69,213,145,.28); background:rgba(69,213,145,.07); }
.lead-summary-financials strong { margin-top:6px; font-size:21px; }
.lead-summary-route { grid-column:1/-1; min-width:0; padding-top:2px; }
.lead-summary-route p { margin:5px 0 0; color:var(--text-soft); white-space:normal; line-height:1.45; }
.lead-summary-state { position:absolute; top:0; right:0; bottom:0; width:68px; display:grid; place-items:center; background:rgba(255,175,58,.14); color:var(--orange); font-size:10px; text-transform:uppercase; letter-spacing:.08em; writing-mode:vertical-rl; transform:none; }
.lead-summary-banner.booked .lead-summary-state { color:#68e8ac; background:rgba(58,206,137,.17); }

.lead-window-layout { display:block; }
.lead-window-nav { position:sticky; z-index:18; top:0; display:flex; flex-direction:row; gap:6px; margin-bottom:12px; padding:8px; overflow-x:auto; border-radius:18px; scrollbar-width:none; }
.lead-window-nav::-webkit-scrollbar { display:none; }
.lead-window-nav button { flex:0 0 auto; width:auto; min-height:40px; padding:0 14px; justify-content:center; white-space:nowrap; }
.lead-window-nav button.active { box-shadow:inset 0 -2px 0 var(--cyan); }
.lead-detail-body { min-height:480px; }

.lead-inline-form { display:grid; gap:16px; }
.lead-inline-form .section-head { margin-bottom:0; }
.lead-inline-form .lead-repeat-block { margin-top:0; }
.lead-edit-readonly { margin-bottom:14px; padding:12px 14px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); color:var(--muted); }
.lead-inline-total { display:flex; align-items:center; justify-content:flex-end; gap:18px; padding:15px 17px; border:1px solid rgba(76,214,235,.24); border-radius:15px; background:rgba(76,214,235,.05); }
.lead-inline-total span { color:var(--muted); }
.lead-inline-total b { font-size:22px; }

.lead-route-fields label,.lead-room-editor header label,.inventory-catalog-add label,.inventory-room-note,.inventory-edit-row label { display:grid; gap:6px; min-width:0; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.lead-route-fields label input,.lead-room-editor header label input,.inventory-catalog-add label input,.inventory-edit-row label input { min-width:0; width:100%; }
.lead-room-editor header label { flex:1; }
.inventory-catalog-add { align-items:end; }
.inventory-room-note { margin-top:10px; }
.inventory-room-note textarea { min-height:74px; }
.inventory-column-head { display:grid; grid-template-columns:minmax(160px,1.4fr) 80px 110px minmax(130px,1fr) 42px; gap:8px; margin-top:14px; padding:0 2px 5px; color:var(--muted); font:9px "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }
.inventory-edit-row { grid-template-columns:minmax(160px,1.4fr) 80px 110px minmax(130px,1fr) 42px; align-items:end; }
.inventory-edit-row > label > span { display:block; }
.inventory-edit-row .lead-row-remove { margin-bottom:1px; }
.inventory-line { grid-template-columns:minmax(0,1fr) auto auto; }
.inventory-line b { text-align:right; }

.lead-notes-drawer { overflow:hidden; }
.lead-notes-drawer header { align-items:flex-start; }
.lead-notes-drawer header p { margin:5px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
.lead-note-composer { display:grid; gap:9px; padding-bottom:14px; border-bottom:1px solid var(--line); }
.lead-note-composer textarea,.lead-notes-drawer .lead-note-composer textarea { flex:none; min-height:92px; max-height:150px; resize:vertical; }
.lead-note-stack { flex:1; min-height:0; display:grid; align-content:start; gap:13px; overflow-y:auto; padding:4px 6px 20px 2px; }
.lead-post-it { position:relative; padding:18px 17px 14px; border:0; border-radius:3px 3px 12px 3px; background:linear-gradient(145deg,#ffe99a,#f5cf62); color:#342b13; box-shadow:0 12px 24px rgba(0,0,0,.2); transform:rotate(-.35deg); }
.lead-post-it.note-1 { background:linear-gradient(145deg,#d7f4ff,#8fd7ee); transform:rotate(.3deg); }
.lead-post-it.note-2 { background:linear-gradient(145deg,#eadcff,#bea5ee); transform:rotate(-.15deg); }
.lead-post-it::after { content:""; position:absolute; right:0; bottom:0; width:20px; height:20px; background:linear-gradient(135deg,rgba(0,0,0,.12),rgba(255,255,255,.38)); clip-path:polygon(100% 0,0 100%,100% 100%); border-radius:0 0 10px 0; }
.lead-post-it p { margin:0; white-space:pre-wrap; line-height:1.55; }
.lead-post-it footer { display:grid; gap:3px; margin-top:14px; padding-top:9px; border-top:1px solid rgba(51,43,20,.16); }
.lead-post-it footer b { font-size:11px; }
.lead-post-it footer time { font-size:10px; opacity:.7; }
.lead-note-empty { padding:28px 12px; text-align:center; color:var(--muted); }

.lead-activity-list article { align-items:start; }
.lead-activity-list ul { display:grid; gap:6px; margin:10px 0 0; padding:10px 12px 10px 28px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.025); color:var(--text-soft); }
.lead-activity-list li { line-height:1.45; }
.lead-activity-list i.note { color:#ffd66d; background:rgba(255,214,109,.09); }

html[data-office-theme="business"] .lead-summary-financials > div { background:#f3fbfd; }
html[data-office-theme="business"] .lead-summary-financials > div.open-balance { background:#fff8ea; }
html[data-office-theme="business"] .lead-summary-financials > div.paid-balance { background:#effaf4; }
html[data-office-theme="business"] .lead-window-nav { background:#fff; }
html[data-office-theme="business"] .lead-activity-list ul { background:#f7f9fc; }

@media (max-width:1080px) {
  .lead-summary-banner { grid-template-columns:1fr; }
  .lead-summary-financials { grid-template-columns:1fr 1fr; }
}
@media (max-width:820px) {
  .lead-summary-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .inventory-column-head { display:none; }
  .inventory-edit-row { grid-template-columns:minmax(0,1fr) 78px 100px 42px; }
  .inventory-edit-row > label > span { display:block; }
  .inventory-edit-row > label:nth-child(4) { grid-column:1/-2; }
}
@media (max-width:620px) {
  .lead-detail-actions { width:100%; }
  .lead-detail-actions > button { flex:1; }
  .lead-summary-banner { padding:16px 58px 16px 14px; }
  .lead-summary-details,.lead-summary-financials { grid-template-columns:1fr; }
  .lead-summary-state { width:48px; }
  .lead-window-nav { top:0; border-radius:14px; }
  .lead-window-nav button { min-height:38px; padding:0 12px; }
  .inventory-edit-row { grid-template-columns:minmax(0,1fr) 72px 42px; padding:12px; border:1px solid var(--line); border-radius:13px; }
  .inventory-edit-row > label:nth-child(3),.inventory-edit-row > label:nth-child(4) { grid-column:1/-1; }
  .inventory-edit-row .lead-row-remove { grid-column:3; grid-row:1; }
  .lead-notes-drawer { top:64px; }
}
.lead-summary-state { margin:0; overflow:visible; white-space:normal; font-family:inherit; font-weight:700; }
@media (min-width:761px) {
  .lead-window-nav { flex-wrap:wrap; overflow-x:visible; }
}
@media (max-width:760px) {
  .lead-window-nav { flex-wrap:nowrap; overflow-x:auto; }
}

/* v4.8.2 lead-window cache-safe inline editing */
.lead-detail-actions .lead-save-top:not(:disabled) { box-shadow:0 0 0 1px rgba(77,221,239,.18),0 10px 30px rgba(77,221,239,.15); }
.lead-inline-form input,.lead-inline-form select,.lead-inline-form textarea { transition:border-color .16s ease,box-shadow .16s ease,background .16s ease; }
.lead-inline-form input:focus,.lead-inline-form select:focus,.lead-inline-form textarea:focus { border-color:rgba(83,222,241,.55); box-shadow:0 0 0 3px rgba(83,222,241,.09); }
.inventory-column-head span:nth-child(3) { color:var(--cyan); font-weight:700; }

/* =========================================================
   CRM LEADS · v4.8.4 workspace refinement
   ========================================================= */
.lead-detail-shell { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; align-items:start; min-width:0; }
.lead-detail-main { min-width:0; }
.lead-notes-scrim { display:none; }

.lead-summary-banner {
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:18px;
  padding:16px 18px;
  overflow:visible;
}
.lead-summary-content { min-width:0; display:grid; gap:12px; }
.lead-summary-details { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 18px; }
.lead-summary-route { grid-column:auto; padding-top:0; }
.lead-summary-side { display:flex; align-items:stretch; gap:9px; }
.lead-summary-financials { display:grid; grid-template-columns:repeat(2,minmax(128px,1fr)); gap:9px; }
.lead-summary-financials > div { min-width:128px; padding:11px 13px; }
.lead-summary-financials strong { font-size:19px; }
.lead-summary-booking {
  min-width:116px;
  min-height:100%;
  padding:0 14px;
  border:1px solid rgba(255,181,78,.34);
  border-radius:14px;
  background:rgba(255,181,78,.09);
  color:var(--orange);
  font-weight:700;
  white-space:nowrap;
}
.lead-summary-booking.booked { border-color:rgba(66,225,159,.42); background:rgba(66,225,159,.1); color:#69eeb6; }
.lead-summary-booking .booking-hover { display:none; }
.lead-summary-booking.booked:hover { border-color:rgba(255,112,112,.5); background:rgba(255,92,92,.12); color:#ff9c9c; }
.lead-summary-booking.booked:hover .booking-default { display:none; }
.lead-summary-booking.booked:hover .booking-hover { display:inline; }

.lead-record-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.lead-record-meta > div { padding:12px 14px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.lead-record-meta span { display:block; color:var(--muted); font:9px "DM Mono",monospace; text-transform:uppercase; letter-spacing:.09em; }
.lead-record-meta b { display:block; margin-top:6px; }

.lead-route-list { display:grid; grid-template-columns:minmax(0,1fr); gap:14px; }
.lead-route-editor { width:100%; margin:0; padding:18px; }
.lead-route-heading { display:flex; align-items:center; gap:10px; }
.lead-route-heading > b { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--line); border-radius:10px; color:var(--text); background:var(--panel); }
.lead-route-fields { grid-template-columns:minmax(240px,2fr) minmax(130px,1fr) minmax(150px,1fr); gap:10px; }
.lead-route-fields .route-address-main { grid-column:auto; }
.lead-route-notes { display:grid; gap:6px; margin-top:10px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.lead-route-notes textarea { text-transform:none; letter-spacing:normal; }

.inventory-workspace { display:grid; grid-template-columns:minmax(240px,300px) minmax(0,1fr); gap:16px; align-items:start; }
.inventory-catalog-panel { position:sticky; top:62px; display:grid; gap:12px; padding:16px; border:1px solid var(--line); border-radius:18px; background:var(--panel-soft); min-width:0; }
.inventory-catalog-search,.inventory-target-room { display:grid; gap:6px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.inventory-catalog-search input,.inventory-target-room select { width:100%; min-width:0; }
.inventory-catalog-list { display:grid; gap:7px; max-height:480px; overflow-y:auto; padding-right:4px; }
.inventory-catalog-list button { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 10px; align-items:center; min-height:52px; padding:9px 11px; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--text); text-align:left; }
.inventory-catalog-list button:hover { border-color:rgba(83,222,241,.42); background:rgba(83,222,241,.07); }
.inventory-catalog-list button span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:700; }
.inventory-catalog-list button small { color:var(--muted); }
.inventory-catalog-list button b { grid-column:2; grid-row:1/3; color:var(--cyan); font-size:19px; }
.inventory-rooms-panel { min-width:0; }
.inventory-rooms-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.inventory-rooms-head h5 { margin:4px 0 0; font-size:18px; }
.inventory-no-rooms { padding:36px 20px; border:1px dashed var(--line); border-radius:16px; text-align:center; color:var(--muted); }
.inventory-no-rooms h5 { margin:0 0 6px; color:var(--text); }
.inventory-room-accordion { margin:0 0 10px; padding:0; overflow:hidden; transition:border-color .16s ease,box-shadow .16s ease; }
.inventory-room-accordion.active { border-color:rgba(83,222,241,.4); box-shadow:0 0 0 1px rgba(83,222,241,.08); }
.inventory-room-accordion > header { display:grid; grid-template-columns:38px minmax(160px,1fr) auto auto 42px; gap:9px; align-items:end; padding:12px; }
.inventory-room-toggle { align-self:center; width:36px; height:36px; border:1px solid var(--line); border-radius:10px; background:var(--panel); color:var(--muted); }
.inventory-room-toggle span { display:block; transition:transform .16s ease; }
.inventory-room-accordion.open .inventory-room-toggle span { transform:rotate(180deg); }
.inventory-room-target { align-self:end; min-height:42px; padding:0 11px; border:1px solid var(--line); border-radius:11px; background:transparent; color:var(--muted); white-space:nowrap; }
.inventory-room-target.active { border-color:rgba(83,222,241,.4); background:rgba(83,222,241,.08); color:var(--cyan); }
.inventory-room-accordion > header > strong { align-self:center; color:var(--cyan); white-space:nowrap; }
.inventory-room-body { display:none; padding:0 14px 15px; border-top:1px solid var(--line); }
.inventory-room-accordion.open .inventory-room-body { display:block; }
.inventory-room-empty { margin-top:10px; padding:18px 12px; border:1px dashed var(--line); border-radius:12px; color:var(--muted); text-align:center; }
.inventory-edit-row { grid-template-columns:minmax(150px,1.35fr) 86px 105px minmax(120px,1fr) 42px; }

@media (min-width:1101px) {
  .lead-detail-shell.notes-open { grid-template-columns:minmax(0,1fr) minmax(310px,350px); }
  .lead-detail-shell .lead-notes-drawer {
    position:sticky;
    z-index:12;
    top:112px;
    right:auto;
    bottom:auto;
    width:100%;
    height:calc(100dvh - 130px);
    display:none;
    transform:none;
    opacity:1;
    pointer-events:auto;
    box-shadow:0 20px 55px rgba(0,0,0,.26);
  }
  .lead-detail-shell.notes-open .lead-notes-drawer { display:flex; }
  .lead-notes-rail.open { display:none; }
}

html[data-office-theme="business"] .inventory-catalog-panel,
html[data-office-theme="business"] .inventory-catalog-list button,
html[data-office-theme="business"] .inventory-room-toggle { background:#fff; }
html[data-office-theme="business"] .lead-summary-booking { background:#fff8ea; }
html[data-office-theme="business"] .lead-summary-booking.booked { background:#effaf4; }

@media (max-width:1300px) {
  .lead-summary-banner { grid-template-columns:1fr; }
  .lead-summary-side { justify-content:flex-start; }
}
@media (max-width:1100px) {
  .lead-detail-shell { display:block; }
  .lead-detail-shell .lead-notes-drawer { position:fixed; z-index:55; top:90px; right:12px; bottom:12px; width:min(360px,calc(100vw - 24px)); height:auto; display:flex; transform:translateX(calc(100% + 36px)); opacity:0; pointer-events:none; }
  .lead-detail-shell .lead-notes-drawer.open { transform:translateX(0); opacity:1; pointer-events:auto; }
  .lead-notes-scrim { display:block; position:fixed; inset:0; z-index:50; border:0; background:rgba(1,4,11,.38); backdrop-filter:blur(2px); }
  .inventory-workspace { grid-template-columns:260px minmax(0,1fr); }
}
@media (max-width:860px) {
  .lead-summary-details { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-summary-side { flex-wrap:wrap; }
  .lead-summary-booking { min-height:48px; }
  .lead-route-fields { grid-template-columns:1fr 1fr; }
  .inventory-workspace { grid-template-columns:1fr; }
  .inventory-catalog-panel { position:static; }
  .inventory-catalog-list { grid-template-columns:repeat(2,minmax(0,1fr)); max-height:300px; }
  .inventory-room-accordion > header { grid-template-columns:38px minmax(0,1fr) auto 42px; }
  .inventory-room-target { grid-column:2/4; }
  .inventory-room-accordion > header > strong { grid-column:3; grid-row:1; }
}
@media (max-width:620px) {
  .lead-record-meta { grid-template-columns:1fr; }
  .lead-summary-banner { padding:14px; }
  .lead-summary-details,.lead-summary-financials { grid-template-columns:1fr; }
  .lead-summary-side { display:grid; }
  .lead-summary-booking { min-height:46px; }
  .lead-route-fields { grid-template-columns:1fr; }
  .inventory-catalog-list { grid-template-columns:1fr; }
  .inventory-room-accordion > header { grid-template-columns:36px minmax(0,1fr) 42px; align-items:center; }
  .inventory-room-accordion > header label { grid-column:2; }
  .inventory-room-target { grid-column:1/3; grid-row:2; }
  .inventory-room-accordion > header > strong { grid-column:2; grid-row:3; justify-self:start; }
  .inventory-room-accordion > header .lead-row-remove { grid-column:3; grid-row:1; }
}

/* =========================================================
   DISPATCH · v4.8.5 daily truck + booked job board
   ========================================================= */
.dispatch-shell { display:grid; gap:16px; min-width:0; }
.dispatch-command { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:20px 22px; border-radius:22px; }
.dispatch-command h3 { margin:6px 0 4px; font-size:27px; letter-spacing:-.04em; }
.dispatch-command p { margin:0; color:var(--muted); }
.dispatch-date-controls { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.dispatch-date-controls input { width:170px; min-height:42px; }
.dispatch-date-controls .secondary-button { min-height:42px; }
.dispatch-summary-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.dispatch-summary-card { min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 18px; border-radius:17px; }
.dispatch-summary-card span { color:var(--muted); font-size:12px; }
.dispatch-summary-card strong { font-size:30px; letter-spacing:-.05em; }
.dispatch-summary-card.attention strong { color:var(--amber); }
.dispatch-board { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr); gap:16px; min-width:0; align-items:start; }
.dispatch-fleet-column,.dispatch-jobs-column { min-width:0; display:grid; gap:12px; }
.dispatch-column-head { min-height:54px; display:flex; align-items:end; justify-content:space-between; gap:14px; padding:0 3px; }
.dispatch-column-head h3 { margin:5px 0 0; font-size:20px; }
.dispatch-column-head > small { color:var(--muted); }
.dispatch-vehicle-list,.dispatch-job-list { display:grid; gap:12px; min-width:0; }
.dispatch-vehicle-card { overflow:hidden; border-radius:19px; }
.dispatch-vehicle-head { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:14px; align-items:center; padding:16px; border-bottom:1px solid var(--line); }
.dispatch-unit { min-width:86px; display:grid; gap:3px; }
.dispatch-unit span,.dispatch-job-number span { color:var(--cyan); font:500 9px/1 "DM Mono",monospace; letter-spacing:.15em; }
.dispatch-unit strong { font-size:24px; line-height:1; letter-spacing:-.04em; }
.dispatch-vehicle-identity { min-width:0; display:grid; gap:4px; }
.dispatch-vehicle-identity b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dispatch-vehicle-identity small { color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dispatch-job-count { align-self:center; padding:7px 10px; border:1px solid var(--line); border-radius:999px; background:var(--panel-soft); color:var(--muted); font:500 10px/1 "DM Mono",monospace; white-space:nowrap; }
.dispatch-driver-row { display:grid; grid-template-columns:minmax(145px,.75fr) minmax(210px,1.25fr); gap:12px; align-items:center; padding:13px 16px; background:rgba(255,255,255,.018); border-bottom:1px solid var(--line); }
.dispatch-driver-row > div { min-width:0; display:grid; gap:3px; }
.dispatch-driver-row span { font-size:12px; font-weight:700; }
.dispatch-driver-row small { color:var(--muted); font-size:10px; }
.dispatch-driver-select { min-height:40px; padding:8px 11px; border-radius:11px; }
.dispatch-drop-zone { min-height:108px; display:grid; gap:10px; padding:12px; transition:border-color .16s ease,background .16s ease,box-shadow .16s ease; }
.dispatch-drop-zone.has-jobs { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.dispatch-drop-zone.drag-over { background:rgba(94,229,255,.07); box-shadow:inset 0 0 0 2px rgba(94,229,255,.35); }
.dispatch-drop-empty { min-height:82px; display:grid; place-items:center; align-content:center; gap:4px; border:1px dashed rgba(255,255,255,.14); border-radius:13px; color:var(--muted); text-align:center; }
.dispatch-drop-empty > span { color:var(--cyan); font-size:20px; line-height:1; }
.dispatch-drop-empty b { color:var(--text); font-size:12px; }
.dispatch-drop-empty small { color:var(--muted-2); }
.dispatch-assigned-job { min-width:0; display:grid; gap:10px; align-content:start; padding:12px; border:1px solid rgba(94,229,255,.16); border-radius:14px; background:linear-gradient(105deg,rgba(94,229,255,.055),rgba(155,125,255,.035)); cursor:grab; }
.dispatch-assigned-job.expanded { grid-column:1/-1; }
.dispatch-assigned-job.dragging { opacity:.45; }
.dispatch-assigned-head { min-width:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:start; }
.dispatch-assigned-title { min-width:0; display:grid; gap:4px; }
.dispatch-assigned-title > span { color:var(--cyan); font:500 9px/1 "DM Mono",monospace; letter-spacing:.06em; }
.dispatch-assigned-title > b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
.dispatch-assigned-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid var(--line); border-radius:10px; overflow:hidden; }
.dispatch-assigned-facts > span { min-width:0; display:grid; gap:4px; padding:8px 9px; border-right:1px solid var(--line); }
.dispatch-assigned-facts > span:last-child { border-right:0; }
.dispatch-assigned-facts small { color:var(--muted-2); font:500 8px/1.2 "DM Mono",monospace; letter-spacing:.08em; }
.dispatch-assigned-facts b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.dispatch-assigned-job .dispatch-route-summary { padding-top:1px; }
.dispatch-assigned-job .dispatch-route-summary-row { grid-template-columns:66px minmax(0,1fr); }
.dispatch-assigned-job .dispatch-route-summary-row b { font-size:10.5px; }
.dispatch-assigned-expanded { display:grid; gap:10px; padding-top:2px; border-top:1px solid var(--line); }
.dispatch-assigned-actions { display:flex; align-items:center; justify-content:flex-end; gap:6px; padding-top:2px; }
.dispatch-assigned-actions .secondary-button { min-height:34px; padding:0 10px; font-size:10px; }
.dispatch-assigned-actions .icon-button { width:34px; height:34px; }
.dispatch-job-card { overflow:hidden; border:1px solid var(--line); border-radius:18px; background:linear-gradient(145deg,rgba(24,29,45,.72),rgba(11,14,23,.72)); box-shadow:inset 0 1px 0 rgba(255,255,255,.035); cursor:grab; transition:border-color .16s ease,transform .16s ease,opacity .16s ease; }
.dispatch-job-card:hover { border-color:rgba(94,229,255,.24); transform:translateY(-1px); }
.dispatch-job-card.dragging { opacity:.45; transform:scale(.99); }
.dispatch-job-card.assigned { border-color:rgba(100,239,174,.2); }
.dispatch-job-main { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:start; padding:15px 15px 10px; }
.dispatch-job-number { min-width:62px; display:grid; gap:4px; }
.dispatch-job-number strong { font-size:17px; }
.dispatch-job-copy { min-width:0; display:grid; gap:8px; }
.dispatch-job-title { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; }
.dispatch-job-title h4 { min-width:0; margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:16px; }
.dispatch-route-summary { display:grid; gap:5px; min-width:0; }
.dispatch-route-summary-row { min-width:0; display:grid; grid-template-columns:72px minmax(0,1fr); gap:9px; align-items:start; padding-top:5px; border-top:1px solid rgba(255,255,255,.055); }
.dispatch-route-summary-row:first-child { padding-top:0; border-top:0; }
.dispatch-route-summary-row span,.dispatch-route-summary.empty span { color:var(--muted-2); font:500 8px/1.35 "DM Mono",monospace; letter-spacing:.09em; }
.dispatch-route-summary-row.pickup span { color:var(--cyan); }
.dispatch-route-summary-row.delivery span { color:#c4b6ff; }
.dispatch-route-summary-row b,.dispatch-route-summary.empty b { min-width:0; color:var(--muted); font-size:11px; font-weight:500; line-height:1.45; white-space:normal; overflow-wrap:anywhere; }
.dispatch-route-address { min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.dispatch-route-address > b { flex:1 1 auto; }
.dispatch-route-access { flex:0 0 auto; display:inline-flex; align-items:center; gap:5px; padding-top:1px; }
.dispatch-access-badge { min-height:21px; display:inline-flex; align-items:center; gap:4px; padding:3px 6px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.035); color:var(--text-soft); white-space:nowrap; }
.dispatch-access-badge svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.dispatch-access-badge b { color:inherit; font:600 9px/1 "DM Mono",monospace; white-space:nowrap; }
.dispatch-access-badge.stairs { color:#ffcb7a; border-color:rgba(255,195,105,.2); background:rgba(255,195,105,.055); }
.dispatch-access-badge.coi { color:var(--cyan); border-color:rgba(94,229,255,.2); background:rgba(94,229,255,.055); }
.dispatch-route-summary.empty { grid-template-columns:72px minmax(0,1fr); gap:9px; }
.dispatch-assignment-pill { flex:0 0 auto; padding:5px 8px; border-radius:999px; font:500 9px/1 "DM Mono",monospace; white-space:nowrap; }
.dispatch-assignment-pill.unassigned { color:var(--amber); border:1px solid rgba(255,189,101,.28); background:rgba(255,189,101,.08); }
.dispatch-assignment-pill.assigned { color:var(--green); border:1px solid rgba(100,239,174,.25); background:rgba(100,239,174,.075); }
.dispatch-expand-button { width:34px; height:34px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); color:var(--muted); cursor:pointer; }
.dispatch-expand-button:hover { color:var(--cyan); border-color:rgba(94,229,255,.3); }
.dispatch-job-facts { display:grid; grid-template-columns:1.15fr .9fr 1.1fr .55fr; gap:0; margin:0 15px 12px; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.dispatch-job-facts > span { min-width:0; display:grid; gap:4px; padding:9px 10px; border-right:1px solid var(--line); }
.dispatch-job-facts > span:last-child { border-right:0; }
.dispatch-job-facts small,.dispatch-expanded-grid span,.dispatch-notes > span,.dispatch-stop > span { color:var(--muted); font:500 8px/1.2 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.dispatch-job-facts b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.dispatch-job-expanded { display:grid; gap:12px; padding:2px 15px 14px; }
.dispatch-expanded-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.dispatch-expanded-grid > div { min-width:0; display:grid; gap:5px; padding:10px 11px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); }
.dispatch-expanded-grid b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.dispatch-route-list { display:grid; gap:7px; }
.dispatch-stop { display:grid; gap:5px; padding:10px 11px; border-left:2px solid rgba(94,229,255,.35); border-radius:0 10px 10px 0; background:rgba(94,229,255,.035); }
.dispatch-stop b { font-size:12px; }
.dispatch-stop small { color:var(--muted); }
.dispatch-stop p { margin:1px 0 0; color:var(--muted); font-size:11px; line-height:1.45; }
.dispatch-notes { padding:11px 12px; border:1px solid rgba(255,189,101,.18); border-radius:11px; background:rgba(255,189,101,.045); }
.dispatch-notes p { margin:6px 0 0; color:var(--text); font-size:12px; line-height:1.5; white-space:pre-wrap; }
.dispatch-job-actions { display:flex; justify-content:flex-end; gap:8px; padding:11px 15px 14px; border-top:1px solid var(--line); }
.dispatch-job-actions .primary-button,.dispatch-job-actions .secondary-button { min-height:38px; padding:0 12px; font-size:11px; }
.dispatch-assign-modal { display:grid; gap:16px; }
.dispatch-assign-modal > div:first-child { display:grid; gap:4px; padding:13px 14px; border:1px solid var(--line); border-radius:13px; background:var(--panel-soft); }
.dispatch-assign-modal > div:first-child span { color:var(--muted); font:500 9px/1 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }
.dispatch-assign-modal > div:first-child small { color:var(--muted); line-height:1.45; }

html[data-office-theme="business"] .dispatch-job-card { background:#fff; box-shadow:0 8px 24px rgba(24,39,75,.06); }
html[data-office-theme="business"] .dispatch-driver-row { background:#f8fafc; }
html[data-office-theme="business"] .dispatch-assigned-job { background:#f4fbff; }
html[data-office-theme="business"] .dispatch-drop-empty { border-color:#d9e0ea; }
html[data-office-theme="business"] .dispatch-stop { background:#f3f9fc; }
html[data-office-theme="business"] .dispatch-route-summary-row { border-top-color:#e8edf3; }
html[data-office-theme="business"] .dispatch-access-badge { background:#f8fafc; }
html[data-office-theme="business"] .dispatch-notes { background:#fff9ed; }

@media (max-width:1240px) {
  .dispatch-board { grid-template-columns:minmax(0,1fr); }
  .dispatch-jobs-column { order:-1; }
  .dispatch-job-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .dispatch-drop-zone.has-jobs { grid-template-columns:1fr; }
  .dispatch-assigned-job.expanded { grid-column:auto; }
  .dispatch-command { align-items:flex-start; flex-direction:column; }
  .dispatch-date-controls { width:100%; }
  .dispatch-date-controls input { flex:1; width:auto; }
  .dispatch-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dispatch-job-list { grid-template-columns:1fr; }
}
@media (max-width:680px) {
  .dispatch-command { padding:16px; }
  .dispatch-date-controls { flex-wrap:wrap; }
  .dispatch-date-controls input { min-width:160px; }
  .dispatch-summary-card { min-height:72px; padding:13px 14px; }
  .dispatch-summary-card strong { font-size:25px; }
  .dispatch-vehicle-head { grid-template-columns:minmax(0,1fr) auto; }
  .dispatch-unit { grid-column:1; }
  .dispatch-vehicle-identity { grid-column:1; grid-row:2; }
  .dispatch-job-count { grid-column:2; grid-row:1/3; }
  .dispatch-driver-row { grid-template-columns:1fr; }
  .dispatch-job-main { grid-template-columns:auto minmax(0,1fr) auto; }
  .dispatch-job-title { align-items:flex-start; flex-direction:column; }
  .dispatch-job-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dispatch-job-facts > span:nth-child(2) { border-right:0; }
  .dispatch-job-facts > span:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .dispatch-expanded-grid { grid-template-columns:1fr; }
  .dispatch-job-actions { display:grid; grid-template-columns:1fr 1fr; }
}


/* =====================================
   STORAGE COMMAND CENTER — v4.9.0
   ===================================== */
.storage-shell { display:grid; gap:16px; min-width:0; }
.storage-command { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:20px 22px; }
.storage-command h3,.storage-section h3 { margin:4px 0 4px; font-size:21px; }
.storage-command p,.storage-section-head p { margin:0; color:var(--muted); line-height:1.55; max-width:820px; }
.storage-command-badges { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.storage-command-badges span { padding:8px 10px; border:1px solid var(--line); border-radius:999px; color:var(--text-soft); font:500 10px/1 "DM Mono",monospace; white-space:nowrap; }
.storage-tabs { display:flex; gap:5px; padding:7px; overflow-x:auto; scrollbar-width:thin; }
.storage-tab { min-height:40px; display:flex; align-items:center; gap:7px; padding:0 13px; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--muted); white-space:nowrap; cursor:pointer; }
.storage-tab:hover { color:var(--text); background:var(--panel-soft); }
.storage-tab.active { color:var(--text); border-color:rgba(94,229,255,.26); background:rgba(94,229,255,.075); box-shadow:inset 0 0 18px rgba(94,229,255,.035); }
.storage-tab small { min-width:19px; height:19px; display:grid; place-items:center; padding:0 5px; border-radius:999px; background:rgba(255,255,255,.07); font:600 9px/1 "DM Mono",monospace; }
.storage-view { min-width:0; }
.storage-overview,.storage-moveout-layout { display:grid; gap:16px; }
.storage-metric-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.storage-metric { min-height:105px; display:grid; align-content:center; gap:5px; padding:15px 16px; }
.storage-metric > span { color:var(--muted); font:500 9px/1.2 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.storage-metric strong { font-size:25px; letter-spacing:-.035em; }
.storage-metric small { color:var(--muted-2); line-height:1.35; }
.storage-metric.incoming strong { color:var(--cyan); }
.storage-metric.attention strong { color:var(--amber); }
.storage-capacity-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.storage-capacity-card { min-width:0; display:grid; gap:12px; padding:15px; text-align:left; cursor:pointer; transition:transform .16s ease,border-color .16s ease; }
.storage-capacity-card:hover { transform:translateY(-1px); border-color:rgba(94,229,255,.24); }
.storage-capacity-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.storage-capacity-head h4 { margin:4px 0 0; font-size:15px; }
.storage-capacity-head > strong { color:var(--cyan); font-size:17px; }
.storage-capacity-bar { height:8px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.055); }
.storage-capacity-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--cyan),#9b7dff); box-shadow:0 0 16px rgba(94,229,255,.24); }
.storage-capacity-foot { display:flex; justify-content:space-between; gap:8px; flex-wrap:wrap; color:var(--muted-2); font-size:10px; }
.storage-overview-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
.storage-mini-list,.storage-forecast-list,.storage-record-list,.storage-moveout-list,.storage-completed-list,.storage-attention-list { display:grid; gap:8px; }
.storage-mini-list article { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 0; border-bottom:1px solid var(--line); }
.storage-mini-list article:last-child { border-bottom:0; }
.storage-mini-list article > div { min-width:0; display:grid; gap:3px; }
.storage-mini-list small { color:var(--muted); }
.storage-completed-card { overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--panel-soft); }
.storage-completed-card summary { list-style:none; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:13px 14px; cursor:pointer; }
.storage-completed-card summary::-webkit-details-marker { display:none; }
.storage-completed-card summary:hover { background:rgba(255,255,255,.018); }
.storage-completed-card summary > div { min-width:0; display:grid; gap:4px; }
.storage-completed-card summary b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.storage-completed-card summary small { color:var(--muted); }
.storage-completed-date { flex:0 0 auto; display:grid; grid-template-columns:auto auto; align-items:center; justify-items:end; gap:3px 8px; color:var(--text-soft); }
.storage-completed-date small { grid-column:1/-1; color:var(--muted-2)!important; font:500 8px/1 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.storage-completed-date i { font-style:normal; color:var(--cyan); transition:transform .16s ease; }
.storage-completed-card[open] .storage-completed-date i { transform:rotate(180deg); }
.storage-completed-details { display:grid; gap:11px; padding:13px 14px 14px; border-top:1px solid var(--line); }
.storage-completed-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); overflow:hidden; border:1px solid var(--line); border-radius:10px; }
.storage-completed-facts > span { min-width:0; display:grid; gap:4px; padding:9px 10px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.storage-completed-facts > span:nth-child(3n) { border-right:0; }
.storage-completed-facts > span:nth-last-child(-n+3) { border-bottom:0; }
.storage-completed-facts small,.storage-completed-note small { color:var(--muted-2); font:500 8px/1.2 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.storage-completed-facts b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.storage-completed-note { display:grid; gap:5px; padding:10px 11px; border-left:2px solid rgba(94,229,255,.25); background:rgba(94,229,255,.035); border-radius:0 9px 9px 0; }
.storage-completed-note p { margin:0; color:var(--muted); line-height:1.45; }
.storage-completed-details footer { display:flex; justify-content:flex-end; gap:8px; }
.storage-forecast-list article { display:grid; grid-template-columns:95px minmax(0,1fr) auto; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); }
.storage-forecast-list article:last-child { border-bottom:0; }
.storage-forecast-list time { color:var(--text-soft); font-weight:600; }
.storage-forecast-list article > div { display:flex; gap:7px; flex-wrap:wrap; }
.storage-forecast-list article > div span { padding:5px 7px; border:1px solid var(--line); border-radius:8px; color:var(--muted); font-size:10px; }
.storage-forecast-list article > small { color:var(--muted-2); text-align:right; }

.storage-overview-forecast { min-width:0; }
.storage-week-forecast { display:grid; gap:10px; }
.storage-week-toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; padding:11px 12px; border:1px solid var(--line); border-radius:12px; background:var(--panel-soft); }
.storage-week-toolbar > div:first-child { display:grid; gap:5px; }
.storage-week-toolbar > div:first-child > b { font-size:13px; }
.storage-week-controls { display:flex; align-items:end; gap:7px; }
.storage-week-controls label { display:grid; gap:5px; color:var(--muted); font-size:9px; }
.storage-week-controls input { min-height:38px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--text); padding:0 10px; }
.storage-week-controls .secondary-button { min-height:38px; padding-inline:10px; }
.storage-week-days { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:7px; }
.storage-week-day { min-width:0; overflow:hidden; display:grid; gap:9px; padding:11px; border:1px solid var(--line); border-radius:12px; background:var(--panel-soft); }
.storage-week-day.today { border-color:rgba(94,229,255,.3); box-shadow:inset 0 0 22px rgba(94,229,255,.035); }
.storage-week-day time { display:flex; align-items:baseline; justify-content:space-between; gap:6px; }
.storage-week-day time strong { color:var(--cyan); font:700 9px/1 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.storage-week-day time span { color:var(--text-soft); font-size:11px; font-weight:600; }
.storage-week-warehouses { display:grid; gap:5px; }
.storage-week-warehouses > span { min-width:0; overflow:hidden; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,max-content); gap:2px 4px; padding:6px 6px; border:1px solid rgba(255,255,255,.055); border-radius:8px; background:rgba(255,255,255,.018); }
.storage-week-warehouses > span > * { min-width:0; }
.storage-week-warehouses b { overflow:hidden; text-overflow:ellipsis; color:var(--muted); font:600 8px/1 "DM Mono",monospace; letter-spacing:.04em; }
.storage-week-warehouses strong { justify-self:end; max-width:100%; overflow:hidden; color:var(--text); font-size:10px; line-height:1; white-space:nowrap; }
.storage-week-warehouses small { grid-column:1/-1; color:var(--muted-2); font-size:8px; }
.storage-week-unallocated,.storage-week-clear { min-height:26px; display:flex; align-items:center; padding:5px 7px; border-radius:8px; font-size:8px; line-height:1.3; }
.storage-week-unallocated { color:var(--amber); background:rgba(255,189,101,.065); border:1px solid rgba(255,189,101,.14); }
.storage-week-clear { color:var(--muted-2); background:rgba(255,255,255,.018); border:1px solid rgba(255,255,255,.045); }
.storage-week-forecast.compact .storage-week-toolbar { padding:9px 10px; }
.storage-week-forecast.compact .storage-week-days { gap:6px; }
.storage-week-forecast.compact .storage-week-day { padding:9px; }
.storage-section { min-width:0; padding:18px; }
.storage-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:15px; }
.storage-date-filter { min-width:190px; display:grid; gap:6px; color:var(--muted); font-size:10px; }
.storage-date-filter input,.storage-search input,.storage-settings-form input,.storage-moveout-actions input { min-height:40px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); color:var(--text); padding:0 11px; }
.storage-filter-note { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:9px 11px; margin:-4px 0 12px; border:1px solid rgba(94,229,255,.15); border-radius:10px; background:rgba(94,229,255,.04); color:var(--muted); }
.storage-intake-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.storage-intake-card { display:grid; gap:11px; padding:15px; }
.storage-intake-head,.storage-record-main,.storage-moveout-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.storage-intake-head h4,.storage-record-main h4,.storage-moveout-head h4 { margin:4px 0 2px; font-size:16px; }
.storage-status-pill { flex:0 0 auto; padding:6px 8px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font:600 9px/1 "DM Mono",monospace; white-space:nowrap; }
.storage-status-pill.active { color:var(--green); border-color:rgba(100,239,174,.24); background:rgba(100,239,174,.06); }
.storage-status-pill.incoming { color:var(--cyan); border-color:rgba(94,229,255,.24); background:rgba(94,229,255,.06); }
.storage-status-pill.scheduled { color:#c4b6ff; border-color:rgba(155,125,255,.26); background:rgba(155,125,255,.07); }
.storage-status-pill.moved { color:var(--muted); background:rgba(255,255,255,.035); }
.storage-intake-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid var(--line); border-radius:10px; }
.storage-intake-facts span { min-width:0; display:grid; gap:4px; padding:8px 9px; border-right:1px solid var(--line); }
.storage-intake-facts span:last-child { border-right:0; }
.storage-intake-facts small,.storage-record-grid small,.storage-moveout-job span { color:var(--muted-2); font:500 8px/1.2 "DM Mono",monospace; letter-spacing:.08em; text-transform:uppercase; }
.storage-intake-facts b,.storage-record-grid b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }
.storage-route-line,.storage-intake-note { margin:0; color:var(--muted); font-size:11px; line-height:1.5; }
.storage-intake-note { padding:8px 9px; border-left:2px solid rgba(255,189,101,.3); background:rgba(255,189,101,.035); }
.storage-intake-card footer,.storage-record-card footer { display:flex; justify-content:flex-end; gap:7px; padding-top:2px; }
.storage-search { min-width:260px; display:flex; align-items:center; gap:8px; padding-left:11px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); color:var(--muted); }
.storage-search input { min-width:0; flex:1; border:0; background:transparent; padding-left:0; }
.storage-record-card { display:grid; gap:12px; padding:14px; }
.storage-record-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); overflow:hidden; border:1px solid var(--line); border-radius:10px; }
.storage-record-grid span { min-width:0; display:grid; gap:4px; padding:8px 9px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.storage-record-grid span:nth-child(4n) { border-right:0; }
.storage-record-grid span:nth-last-child(-n+4) { border-bottom:0; }
.storage-subsection-title { display:flex; justify-content:space-between; align-items:end; gap:12px; margin:22px 0 10px; padding-top:16px; border-top:1px solid var(--line); }
.storage-subsection-title h4 { margin:4px 0 0; }
.storage-subsection-title > small { color:var(--muted); }
.storage-moveout-card { display:grid; gap:12px; padding:14px; }
.storage-moveout-job { display:grid; gap:5px; padding:10px 11px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); }
.storage-moveout-actions { display:grid; grid-template-columns:minmax(170px,1fr) auto auto auto; gap:8px; align-items:end; }
.storage-moveout-actions label { display:grid; gap:5px; color:var(--muted); font-size:10px; }
.storage-forecast-table,.storage-billing-table { min-width:0; overflow-x:auto; border:1px solid var(--line); border-radius:12px; }
.storage-forecast-table > header,.storage-forecast-table > div { min-width:760px; display:grid; grid-template-columns:130px repeat(4,minmax(110px,1fr)) minmax(120px,1fr); }
.storage-forecast-table > header,.storage-billing-table > header { background:var(--panel-soft); color:var(--muted); font:500 9px/1.2 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.06em; }
.storage-forecast-table > header span,.storage-forecast-table > div > * { padding:10px 11px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.storage-forecast-table > header span:last-child,.storage-forecast-table > div > *:last-child { border-right:0; }
.storage-forecast-table > div:last-child > * { border-bottom:0; }
.storage-forecast-table > div span { display:grid; gap:3px; }
.storage-forecast-table small { color:var(--muted-2); }
.storage-billing-table > header,.storage-billing-table > div { min-width:1040px; display:grid; grid-template-columns:115px minmax(220px,1.4fr) minmax(130px,.8fr) minmax(210px,1.1fr) 110px 110px minmax(185px,1fr); align-items:center; }
.storage-billing-table > header > span,.storage-billing-table > div > * { min-width:0; padding:10px 11px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.storage-billing-table > header > span:last-child,.storage-billing-table > div > *:last-child { border-right:0; }
.storage-billing-table > div:last-child > * { border-bottom:0; }
.storage-billing-table > div > span { display:grid; gap:3px; }
.storage-billing-table small { color:var(--muted-2); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.storage-payment { width:max-content; padding:5px 7px!important; border:1px solid var(--line)!important; border-radius:999px; font-size:10px; }
.storage-payment.paid,.storage-payment.free { color:var(--green); }
.storage-payment.unpaid,.storage-payment.late,.storage-payment.partial,.storage-payment.disputed { color:var(--amber); }
.storage-billing-actions { display:flex!important; align-items:center; justify-content:flex-end; gap:6px; }
.storage-attention-list article { display:grid; grid-template-columns:32px minmax(0,1fr) auto auto; align-items:center; gap:10px; padding:12px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); }
.storage-attention-list article > span:first-child { width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:rgba(255,189,101,.08); color:var(--amber); }
.storage-attention-list article.critical > span:first-child { background:rgba(255,104,104,.09); color:#ff8585; }
.storage-attention-list p { margin:3px 0 0; color:var(--muted); line-height:1.4; }
.storage-settings-form { max-width:760px; display:grid; gap:14px; }
.storage-settings-note,.storage-modal-callout,.storage-modal-summary { padding:12px 13px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); color:var(--muted); line-height:1.5; }
.storage-settings-note b,.storage-modal-callout b,.storage-modal-summary b { color:var(--text); }
.storage-modal-callout p { margin:5px 0 0; }
.storage-modal-summary { display:grid; gap:4px; margin-bottom:14px; }
.storage-modal-summary > b { font-size:15px; }
.storage-modal-summary small { color:var(--muted-2); }

html[data-office-theme="business"] .storage-capacity-bar { background:#e8edf3; }
html[data-office-theme="business"] .storage-tab.active { background:#edfaff; }
html[data-office-theme="business"] .storage-status-pill.incoming { background:#edfaff; }
html[data-office-theme="business"] .storage-status-pill.active { background:#effaf4; }

@media (max-width:1280px) {
  .storage-metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .storage-week-days { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .lead-related-linked { grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr) 1fr auto; }
  .lead-related-linked > .lead-row-remove { grid-column:4; }
  .storage-capacity-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-record-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-record-grid span:nth-child(4n) { border-right:1px solid var(--line); }
  .storage-record-grid span:nth-child(2n) { border-right:0; }
  .storage-record-grid span:nth-last-child(-n+4) { border-bottom:1px solid var(--line); }
  .storage-record-grid span:nth-last-child(-n+2) { border-bottom:0; }
}
@media (max-width:980px) {
  .storage-command,.storage-section-head { flex-direction:column; align-items:stretch; }
  .storage-week-toolbar { align-items:stretch; flex-direction:column; }
  .storage-week-controls { justify-content:space-between; }
  .storage-week-days { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-billing-controls { justify-content:flex-start; }
  .lead-related-linked { grid-template-columns:1fr 1fr; }
  .lead-related-linked .lead-related-target { grid-column:2; }
  .lead-related-linked > input[data-field="notes"] { grid-column:1/-1; }
  .lead-related-linked > .secondary-button { width:100%; }
  .lead-related-linked > .lead-row-remove { grid-column:auto; }
  .storage-command-badges { justify-content:flex-start; }
  .storage-overview-grid,.storage-intake-grid { grid-template-columns:1fr; }
  .storage-moveout-actions { grid-template-columns:1fr 1fr; }
  .storage-completed-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-completed-facts > span:nth-child(3n) { border-right:1px solid var(--line); }
  .storage-completed-facts > span:nth-child(2n) { border-right:0; }
  .storage-completed-facts > span:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }
  .storage-completed-facts > span:nth-last-child(-n+2) { border-bottom:0; }
  .storage-date-filter,.storage-search { min-width:0; width:100%; }
}
@media (max-width:680px) {
  .storage-metric-grid,.storage-capacity-grid { grid-template-columns:1fr; }
  .storage-week-days { grid-template-columns:1fr; }
  .storage-week-controls { display:grid; grid-template-columns:1fr; }
  .storage-week-controls .secondary-button,.storage-week-controls label { width:100%; }
  .storage-week-controls input { width:100%; }
  .storage-billing-controls,.storage-billing-date { width:100%; }
  .storage-billing-date input { width:100%; }
  .lead-related-linked { grid-template-columns:1fr; }
  .lead-related-linked .lead-related-target,.lead-related-linked > input[data-field="notes"],.lead-related-linked > .lead-row-remove { grid-column:auto; }
  .lead-related-linked > .secondary-button { width:100%; }
  .storage-intake-facts,.storage-record-grid { grid-template-columns:1fr 1fr; }
  .storage-intake-facts span:nth-child(2n),.storage-record-grid span:nth-child(2n) { border-right:0; }
  .storage-intake-facts span:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .storage-intake-card footer,.storage-record-card footer { display:grid; grid-template-columns:1fr; }
  .storage-moveout-actions { grid-template-columns:1fr; }
  .storage-completed-card summary { align-items:flex-start; }
  .storage-completed-date { grid-template-columns:auto auto; }
  .storage-completed-facts { grid-template-columns:1fr; }
  .storage-completed-facts > span,.storage-completed-facts > span:nth-child(2n),.storage-completed-facts > span:nth-child(3n) { border-right:0; border-bottom:1px solid var(--line); }
  .storage-completed-facts > span:last-child { border-bottom:0; }
  .storage-completed-details footer { display:grid; grid-template-columns:1fr; }
  .storage-attention-list article { grid-template-columns:32px minmax(0,1fr); }
  .storage-attention-list article button { grid-column:2; width:100%; }
  .storage-forecast-list article { grid-template-columns:1fr; }
  .storage-forecast-list article > small { text-align:left; }
}

.storage-compare-controls { display:flex; align-items:end; gap:10px; margin-bottom:10px; }
.storage-compare-controls > span { padding-bottom:11px; color:var(--muted-2); font:600 9px/1 "DM Mono",monospace; text-transform:uppercase; }
.storage-compare-controls label,.storage-month-controls label { display:grid; gap:5px; color:var(--muted); font-size:10px; }
.storage-compare-controls input,.storage-month-controls input { min-height:40px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); color:var(--text); padding:0 11px; }
.storage-compare-grid { display:grid; grid-template-columns:1fr .8fr 1fr; gap:9px; }
.storage-compare-grid article { display:grid; gap:5px; padding:13px 14px; text-align:center; }
.storage-compare-grid span { color:var(--muted); font:500 9px/1 "DM Mono",monospace; letter-spacing:.07em; }
.storage-compare-grid strong { font-size:20px; }
.storage-compare-grid small { color:var(--muted-2); }
.storage-compare-change strong { color:var(--cyan); }
.storage-compare-warehouses { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:8px; }
.storage-compare-warehouses article { display:grid; gap:4px; padding:10px 11px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); }
.storage-compare-warehouses span { color:var(--muted); font-size:10px; }
.storage-compare-warehouses small { color:var(--muted-2); }
.storage-compare-warehouses small.up { color:var(--amber); }
.storage-compare-warehouses small.down { color:var(--green); }
.storage-month-controls { display:flex; align-items:end; gap:7px; }
.storage-month-controls .icon-button { margin-bottom:1px; }
.storage-billing-controls { display:flex; align-items:end; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.storage-billing-date { display:grid; gap:5px; color:var(--muted); font-size:10px; }
.storage-billing-date input { min-height:40px; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); color:var(--text); padding:0 11px; }
.storage-selected-due-count { align-self:end; padding:6px 9px; border:1px solid rgba(94,229,255,.18); border-radius:999px; color:var(--cyan); font:600 9px/1 "DM Mono",monospace; }
.storage-calendar-title { display:flex; justify-content:space-between; gap:12px; margin:2px 0 8px; color:var(--muted); }
.storage-calendar-title b { color:var(--text); }
.storage-calendar-weekdays,.storage-due-calendar { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }
.storage-calendar-weekdays { border:1px solid var(--line); border-bottom:0; border-radius:11px 11px 0 0; overflow:hidden; background:var(--panel-soft); }
.storage-calendar-weekdays span { padding:8px; border-right:1px solid var(--line); color:var(--muted-2); text-align:center; font:500 8px/1 "DM Mono",monospace; text-transform:uppercase; }
.storage-calendar-weekdays span:last-child { border-right:0; }
.storage-due-calendar { border:1px solid var(--line); border-radius:0 0 11px 11px; overflow:hidden; }
.storage-calendar-day { min-height:92px; display:grid; align-content:start; gap:5px; padding:8px; border:0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:transparent; color:var(--text); text-align:left; }
.storage-calendar-day:nth-child(7n) { border-right:0; }
.storage-calendar-day.empty { background:rgba(255,255,255,.012); }
.storage-calendar-day > span { width:24px; height:24px; display:grid; place-items:center; border-radius:7px; color:var(--muted); font-weight:600; }
.storage-calendar-day.today > span { background:rgba(94,229,255,.12); color:var(--cyan); }
.storage-calendar-day.has-due { background:rgba(255,189,101,.025); }
.storage-calendar-day.selected { background:rgba(94,229,255,.07); box-shadow:inset 0 0 0 1px rgba(94,229,255,.35); }
.storage-calendar-day.selected > span { background:var(--cyan); color:#07131a; }
.storage-due-count { width:max-content; max-width:100%; padding:5px 7px; border:1px solid rgba(255,189,101,.18); border-radius:999px; background:rgba(255,189,101,.075); color:var(--amber); font:700 9px/1 "DM Mono",monospace; }
@media (max-width:980px) {
  .storage-compare-warehouses { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .storage-calendar-day { min-height:76px; }
}
@media (max-width:680px) {
  .storage-compare-controls,.storage-month-controls,.storage-billing-controls { align-items:stretch; flex-direction:column; }
  .storage-compare-controls > span { padding:0; text-align:center; }
  .storage-compare-grid { grid-template-columns:1fr; }
  .storage-compare-warehouses { grid-template-columns:1fr 1fr; }
  .storage-calendar-weekdays,.storage-due-calendar { min-width:700px; }
  .storage-section:has(.storage-due-calendar) { overflow-x:auto; }
}

/* =========================================================
   v4.9.5 — Dashboard, user access, calm search + compact logs
   ========================================================= */

/* Named Office session */
.session-user {
  margin: 0 4px 4px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: color-mix(in srgb, var(--panel) 78%, transparent);
  min-width: 0;
}
.session-user b,
.session-user span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.session-user b { font-size: 12px; color: var(--text); }
.session-user span { margin-top: 2px; font: 500 9px/1.2 "DM Mono", monospace; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
body.sidebar-collapsed .session-user { display: none; }

/* Dashboard operational pulse */
.dashboard-operations { padding: 20px; margin-bottom: 18px; }
.dashboard-operations .panel-head { margin-bottom: 14px; }
.dashboard-operations .panel-head small { color: var(--muted); }
.dashboard-ops-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; }
.dashboard-ops-card {
  position: relative;
  min-width: 0;
  text-align: left;
  border: 1px solid var(--line);
  border-radius: 15px;
  padding: 14px;
  background: color-mix(in srgb, var(--panel-soft) 90%, transparent);
  color: var(--text);
  cursor: pointer;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.dashboard-ops-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); }
.dashboard-ops-card > span { display: block; color: var(--muted); font-size: 11px; }
.dashboard-ops-card strong { display: block; margin-top: 8px; font-size: clamp(20px, 2vw, 28px); line-height: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-ops-card small { display: block; margin-top: 7px; color: var(--muted); line-height: 1.25; }
.dashboard-ops-card i { position: absolute; top: 12px; right: 12px; color: var(--muted); font-style: normal; }
.dashboard-ops-card.warning { border-color: color-mix(in srgb, #f5a524 38%, var(--line)); }

/* Admin */
.admin-shell { display: grid; gap: 16px; }
.admin-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px; }
.admin-hero h3 { margin: 5px 0 6px; font-size: clamp(24px, 3vw, 36px); }
.admin-hero p { max-width: 760px; margin: 0; color: var(--muted); }
.admin-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.admin-stat-grid > div { border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; background: var(--panel); }
.admin-stat-grid span { display: block; color: var(--muted); font-size: 11px; }
.admin-stat-grid b { display: block; margin-top: 6px; font-size: 20px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-users-panel { padding: 20px; }
.admin-user-list { display: grid; gap: 9px; margin-top: 12px; }
.admin-user-card { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 13px; align-items: center; padding: 13px; border: 1px solid var(--line); border-radius: 14px; background: var(--panel-soft); }
.admin-user-card.disabled { opacity: .58; }
.admin-user-avatar { width: 42px; height: 42px; border-radius: 13px; display: grid; place-items: center; background: color-mix(in srgb, var(--accent) 14%, var(--panel)); border: 1px solid color-mix(in srgb, var(--accent) 24%, var(--line)); font-weight: 700; }
.admin-user-main { min-width: 0; }
.admin-user-main h4 { display: flex; align-items: center; gap: 8px; margin: 0; }
.admin-user-main h4 small { padding: 2px 6px; border-radius: 999px; background: color-mix(in srgb, var(--accent) 14%, transparent); color: var(--accent); font-size: 9px; text-transform: uppercase; }
.admin-user-main > p { margin: 2px 0 7px; color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-user-main > div { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; color: var(--muted); font-size: 10px; }
.admin-role, .admin-status { padding: 3px 7px; border: 1px solid var(--line); border-radius: 999px; font: 500 9px/1 "DM Mono", monospace; letter-spacing: .04em; text-transform: uppercase; }
.admin-role.admin { color: var(--accent); border-color: color-mix(in srgb, var(--accent) 30%, var(--line)); }
.admin-status.active { color: #41c987; }
.admin-status.disabled { color: var(--muted); }
.admin-user-actions { display: flex; gap: 7px; }
.admin-first-user { padding: 26px; text-align: center; border: 1px dashed var(--line); border-radius: 14px; color: var(--muted); }
.admin-first-user h4 { color: var(--text); margin: 0 0 6px; }

/* Related-job creation */
.lead-related-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.related-create-preview { margin-bottom: 16px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: var(--panel-soft); }
.related-create-preview > span { display: block; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.related-create-preview b { display: block; margin: 4px 0 7px; }
.related-create-preview p { margin: 0; color: var(--muted); line-height: 1.5; }

/* Calm server-side search. Existing results stay in place while this thin bar moves. */
.lead-command { position: relative; overflow: hidden; }
.search-progress-line { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; overflow: hidden; opacity: 0; transition: opacity .15s ease; }
.search-progress-line.active { opacity: 1; }
.search-progress-line i { display: block; height: 100%; width: 36%; background: linear-gradient(90deg, transparent, var(--accent), transparent); transform: translateX(-120%); }
.search-progress-line.active i { animation: office-search-progress 1s ease-in-out infinite; }
@keyframes office-search-progress { to { transform: translateX(360%); } }
.view-root.search-loading .lead-list-panel { opacity: .82; transition: opacity .15s ease; }
.lead-search-box input[aria-busy="true"] { cursor: progress; }

/* Action list: 20 rows/page and visually tighter */
.lead-activity-shell { display: grid; gap: 12px; }
.lead-activity-head { align-items: end; }
.lead-activity-search { display: flex; align-items: center; gap: 8px; min-width: min(330px, 45vw); border: 1px solid var(--line); border-radius: 12px; padding: 0 11px; background: var(--panel-soft); }
.lead-activity-search span { color: var(--muted); }
.lead-activity-search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--text); padding: 10px 0; }
.lead-activity-list.lead-activity-compact { gap: 6px; }
.lead-activity-list.lead-activity-compact article { padding: 10px 11px; min-height: 0; }
.lead-activity-list.lead-activity-compact article > i { width: 30px; height: 30px; min-width: 30px; }
.lead-activity-list.lead-activity-compact article p { margin: 2px 0; }
.lead-activity-list.lead-activity-compact article ul { margin: 5px 0 0; }
.lead-activity-pagination { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-top: 3px; }
.lead-activity-pagination span { color: var(--muted); font-size: 11px; text-align: center; }

/* Storage local searches filter cards in-place, without rerender flashes. */
.storage-local-search-empty { margin-top: 12px; padding: 18px; border: 1px dashed var(--line); border-radius: 14px; text-align: center; color: var(--muted); }
[data-storage-active-searchable][hidden], [data-storage-moveout-searchable][hidden] { display: none !important; }

@media (max-width: 1180px) {
  .dashboard-ops-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .dashboard-ops-grid, .admin-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-hero { align-items: stretch; flex-direction: column; }
  .admin-user-card { grid-template-columns: auto minmax(0,1fr); }
  .admin-user-actions { grid-column: 1 / -1; }
  .lead-activity-head { align-items: stretch; flex-direction: column; }
  .lead-activity-search { min-width: 0; width: 100%; }
}
@media (max-width: 560px) {
  .dashboard-ops-grid, .admin-stat-grid { grid-template-columns: 1fr; }
  .lead-activity-pagination { flex-wrap: wrap; }
  .lead-activity-pagination span { order: -1; width: 100%; }
}

/* Search progress bars that live in normal document flow rather than inside the Leads search box. */
.module-local-search-progress,
.violation-search-progress {
  position: relative;
  left: auto;
  right: auto;
  bottom: auto;
  width: 100%;
  height: 2px;
}

/* =========================================================
   v4.10.0 — Driver payroll + Corporate CRM user appearance
   ========================================================= */

/* Appearance controls */
.theme-choice-grid-three { grid-template-columns: repeat(3,minmax(0,1fr)); }
.theme-preview-corporate { background:#f6f7f9; }
.theme-preview-corporate::before { background:#fff; border-right:1px solid #dfe3e8; }
.theme-preview-corporate i { background:#fff; border:1px solid #d8dde4; box-shadow:0 1px 3px rgba(16,24,40,.04); }
.theme-preview-corporate b,
.theme-preview-corporate em,
.theme-preview-corporate small { background:#fff; border:1px solid #dde2e8; box-shadow:0 1px 2px rgba(16,24,40,.03); }
.appearance-accent-panel { margin-top:16px; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.appearance-accent-panel > div:first-child { display:grid; gap:3px; }
.appearance-accent-panel strong { font-size:13px; }
.appearance-accent-panel small { color:var(--muted); line-height:1.4; }
.accent-choice-row { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.accent-choice { display:inline-flex; align-items:center; gap:7px; min-height:34px; padding:0 10px; border:1px solid var(--line); border-radius:9px; background:var(--panel); color:var(--muted); cursor:pointer; }
.accent-choice:hover,.accent-choice.selected { border-color:color-mix(in srgb,var(--accent) 50%,var(--line)); color:var(--text); }
.accent-choice.selected { box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 12%,transparent); }
.accent-choice i { width:10px; height:10px; border-radius:50%; background:var(--accent); }
.accent-choice[data-accent-choice="navy"] i { background:#334155; }
.accent-choice[data-accent-choice="blue"] i { background:#2563eb; }
.accent-choice[data-accent-choice="teal"] i { background:#0f766e; }
.accent-choice[data-accent-choice="green"] i { background:#15803d; }
.accent-choice[data-accent-choice="burgundy"] i { background:#9f1239; }
.accent-choice[data-accent-choice="purple"] i { background:#7e22ce; }

/* Driver weekly payroll */
.driver-payroll-shell { display:grid; gap:18px; }
.driver-payroll-head { align-items:flex-start; }
.driver-payroll-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.driver-payroll-summary > div { min-width:0; padding:15px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.driver-payroll-summary > div.warning { border-color:color-mix(in srgb,var(--amber) 36%,var(--line)); }
.driver-payroll-summary span,.driver-payroll-summary small { display:block; color:var(--muted); }
.driver-payroll-summary span { font-size:11px; }
.driver-payroll-summary strong { display:block; margin:7px 0 5px; font-size:24px; line-height:1; }
.driver-payroll-summary small { font-size:10px; line-height:1.35; }
.driver-payroll-week,.driver-payroll-statements { padding-top:2px; }
.driver-payroll-table { min-width:760px; }
.driver-payroll-table td { vertical-align:middle; }
.driver-payroll-table .payroll-open-job { min-height:34px; padding:0 10px; white-space:nowrap; }
.payroll-missing-amount span { display:inline-flex; align-items:center; min-height:24px; padding:0 7px; border-radius:999px; border:1px solid color-mix(in srgb,var(--amber) 36%,var(--line)); color:var(--amber); background:color-mix(in srgb,var(--amber) 8%,transparent); font-size:10px; font-weight:700; }
.driver-payroll-loading { min-height:280px; display:grid; place-items:center; align-content:center; gap:8px; text-align:center; color:var(--muted); }
.driver-payroll-loading h3 { margin:4px 0 0; color:var(--text); }
.driver-payroll-loading p { margin:0; }
.payroll-statement-list { display:grid; gap:9px; }
.payroll-statement-card { position:relative; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); overflow:hidden; }
.payroll-statement-card.final { border-left:3px solid color-mix(in srgb,var(--green) 70%,var(--line)); }
.payroll-statement-card.to-date { border-left:3px solid color-mix(in srgb,var(--accent) 70%,var(--line)); }
.payroll-statement-summary { width:100%; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:12px; padding:14px 132px 14px 14px; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.payroll-statement-summary:hover { background:color-mix(in srgb,var(--accent) 4%,transparent); }
.payroll-statement-chevron { width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--line); border-radius:8px; color:var(--muted); font-size:17px; }
.payroll-statement-summary h4 { margin:3px 0 3px; }
.payroll-statement-summary p { margin:0; color:var(--muted); font-size:11px; }
.payroll-statement-total { min-width:115px; text-align:right; }
.payroll-statement-total strong,.payroll-statement-total small { display:block; }
.payroll-statement-total strong { font-size:18px; }
.payroll-statement-total small { margin-top:4px; color:var(--muted); font-size:10px; }
.payroll-statement-actions { position:absolute; top:50%; right:12px; transform:translateY(-50%); }
.payroll-statement-breakdown { padding:0 14px 14px; border-top:1px solid var(--line); }
.payroll-statement-breakdown .table-wrap { padding-top:12px; }

/* Lead payroll manual-entry phase */
.lead-payroll-shell { display:grid; gap:14px; }
.lead-payroll-total-card { padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--panel-soft); }
.lead-payroll-total-card span,.lead-payroll-total-card small { display:block; color:var(--muted); }
.lead-payroll-total-card strong { display:block; margin:8px 0 5px; font-size:30px; }
.lead-payroll-editor { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(320px,1.3fr); gap:14px; }
.lead-payroll-editor .field small { display:block; margin-top:6px; color:var(--muted); font-size:10px; line-height:1.4; }
.lead-payroll-preview { margin-top:14px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.lead-payroll-preview span,.lead-payroll-preview p { color:var(--muted); }
.lead-payroll-preview span { display:block; font-size:11px; }
.lead-payroll-preview strong { display:block; margin-top:5px; font-size:23px; }
.lead-payroll-preview p { margin:6px 0 0; font-size:11px; line-height:1.45; }

/* Corporate CRM — deliberately quiet, typography-first and dense. */
html[data-office-theme="corporate"] {
  color-scheme:light;
  --bg:#f5f6f8;
  --bg-soft:#eef0f3;
  --panel:#ffffff;
  --panel-strong:#ffffff;
  --panel-soft:#f8f9fb;
  --line:#dfe3e8;
  --line-bright:#cbd2db;
  --text:#1d2733;
  --muted:#687383;
  --muted-2:#98a1ae;
  --cyan:var(--accent);
  --violet:var(--accent);
  --pink:#a33b63;
  --green:#247a52;
  --amber:#9a6700;
  --red:#b42318;
  --shadow:0 1px 2px rgba(16,24,40,.035),0 5px 18px rgba(16,24,40,.035);
}
html[data-office-theme="corporate"][data-office-accent="navy"] { --accent:#334155; }
html[data-office-theme="corporate"][data-office-accent="blue"] { --accent:#2563eb; }
html[data-office-theme="corporate"][data-office-accent="teal"] { --accent:#0f766e; }
html[data-office-theme="corporate"][data-office-accent="green"] { --accent:#15803d; }
html[data-office-theme="corporate"][data-office-accent="burgundy"] { --accent:#9f1239; }
html[data-office-theme="corporate"][data-office-accent="purple"] { --accent:#7e22ce; }
html[data-office-theme="corporate"] body { background:var(--bg); color:var(--text); font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:0; }
html[data-office-theme="corporate"] .ambient,
html[data-office-theme="corporate"] .grid-noise { display:none; }
html[data-office-theme="corporate"] .glass,
html[data-office-theme="corporate"] .glass-subtle { background:#fff; border-color:var(--line); box-shadow:var(--shadow); backdrop-filter:none; }
html[data-office-theme="corporate"] .glass-subtle { box-shadow:0 1px 3px rgba(16,24,40,.035); }
html[data-office-theme="corporate"] .micro-label { color:var(--accent); font-family:"Inter",system-ui,sans-serif; font-weight:700; letter-spacing:.08em; }
html[data-office-theme="corporate"] .brand > span:last-child > span,
html[data-office-theme="corporate"] .nav-icon,
html[data-office-theme="corporate"] .sidebar-action-icon { color:var(--accent); }
html[data-office-theme="corporate"] .brand { letter-spacing:.08em; }
html[data-office-theme="corporate"] .brand-mark { border-color:color-mix(in srgb,var(--accent) 50%,var(--line)); box-shadow:none; }
html[data-office-theme="corporate"] .brand-mark i { background:var(--accent); box-shadow:none; }
html[data-office-theme="corporate"] input,
html[data-office-theme="corporate"] select,
html[data-office-theme="corporate"] textarea { min-height:42px; border-radius:8px; background:#fff; border-color:#d6dbe2; color:var(--text); }
html[data-office-theme="corporate"] textarea { min-height:96px; }
html[data-office-theme="corporate"] input:focus,
html[data-office-theme="corporate"] select:focus,
html[data-office-theme="corporate"] textarea:focus { background:#fff; border-color:color-mix(in srgb,var(--accent) 70%,#fff); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent); }
html[data-office-theme="corporate"] .primary-button,
html[data-office-theme="corporate"] .secondary-button,
html[data-office-theme="corporate"] .danger-button { min-height:38px; border-radius:8px; font-weight:600; box-shadow:none; }
html[data-office-theme="corporate"] .primary-button { background:var(--accent); border:1px solid var(--accent); color:#fff; }
html[data-office-theme="corporate"] .secondary-button,
html[data-office-theme="corporate"] .icon-button,
html[data-office-theme="corporate"] .filter-button,
html[data-office-theme="corporate"] .view-toggle,
html[data-office-theme="corporate"] .module-tabs { background:#fff; border-color:var(--line); color:#4d5968; box-shadow:none; }
html[data-office-theme="corporate"] .secondary-button:hover,
html[data-office-theme="corporate"] .icon-button:hover,
html[data-office-theme="corporate"] .filter-button:hover { background:#f7f8fa; border-color:#cbd2db; color:var(--text); transform:none; }
html[data-office-theme="corporate"] .danger-button { background:#fff; border:1px solid #efc7c2; color:#9d241a; }
html[data-office-theme="corporate"] .icon-button { border-radius:8px; }
html[data-office-theme="corporate"] .office-app { grid-template-columns:218px minmax(0,1fr); }
html[data-office-theme="corporate"] .sidebar { background:#fff; border-color:var(--line); backdrop-filter:none; box-shadow:none; }
html[data-office-theme="corporate"] .sidebar-collapse-button { background:#f7f8fa; border-color:var(--line); }
html[data-office-theme="corporate"] .workspace-label { background:#f8f9fb; border-color:var(--line); border-radius:8px; }
html[data-office-theme="corporate"] .workspace-label span { color:var(--accent); font-family:"Inter",system-ui,sans-serif; font-weight:700; letter-spacing:.08em; }
html[data-office-theme="corporate"] .nav-item { min-height:39px; border-radius:7px; font-size:13px; }
html[data-office-theme="corporate"] .nav-item:hover { background:#f6f7f9; color:var(--text); }
html[data-office-theme="corporate"] .nav-item.active { background:color-mix(in srgb,var(--accent) 8%,#fff); border-color:color-mix(in srgb,var(--accent) 18%,var(--line)); color:color-mix(in srgb,var(--accent) 85%,#111827); }
html[data-office-theme="corporate"] .session-user { border-radius:8px; background:#f8f9fb; }
html[data-office-theme="corporate"] .session-user span { font-family:"Inter",system-ui,sans-serif; letter-spacing:.04em; }
html[data-office-theme="corporate"] .topbar { min-height:78px; background:#fff; border-bottom:1px solid var(--line); box-shadow:none; backdrop-filter:none; }
html[data-office-theme="corporate"] .topbar::before { display:none; }
html[data-office-theme="corporate"] .workspace { padding-left:28px; padding-right:28px; }
html[data-office-theme="corporate"] .hero-panel { background:#fff; }
html[data-office-theme="corporate"] .hero-spark { display:none; }
html[data-office-theme="corporate"] .hero-panel,
html[data-office-theme="corporate"] .panel,
html[data-office-theme="corporate"] .stat-card,
html[data-office-theme="corporate"] .record-card,
html[data-office-theme="corporate"] .detail-hero,
html[data-office-theme="corporate"] .detail-content,
html[data-office-theme="corporate"] .violation-command,
html[data-office-theme="corporate"] .violation-panel,
html[data-office-theme="corporate"] .fleet-map-command,
html[data-office-theme="corporate"] .fleet-map-shell,
html[data-office-theme="corporate"] .samsara-setup,
html[data-office-theme="corporate"] .lead-command,
html[data-office-theme="corporate"] .lead-editor-nav,
html[data-office-theme="corporate"] .lead-window-nav,
html[data-office-theme="corporate"] .lead-notes-drawer,
html[data-office-theme="corporate"] .dispatch-job-card,
html[data-office-theme="corporate"] .storage-section { background:#fff; box-shadow:var(--shadow); }
html[data-office-theme="corporate"] .panel,
html[data-office-theme="corporate"] .record-card,
html[data-office-theme="corporate"] .stat-card,
html[data-office-theme="corporate"] .detail-hero,
html[data-office-theme="corporate"] .detail-content,
html[data-office-theme="corporate"] .lead-command,
html[data-office-theme="corporate"] .dispatch-job-card,
html[data-office-theme="corporate"] .storage-section { border-radius:10px; }
html[data-office-theme="corporate"] .stat-card:hover,
html[data-office-theme="corporate"] .record-card:hover { background:#fff; border-color:#cbd2db; box-shadow:0 2px 9px rgba(16,24,40,.055); transform:none; }
html[data-office-theme="corporate"] .record-icon,
html[data-office-theme="corporate"] .detail-avatar,
html[data-office-theme="corporate"] .empty-icon,
html[data-office-theme="corporate"] .activity-icon,
html[data-office-theme="corporate"] .export-icon { color:var(--accent); background:color-mix(in srgb,var(--accent) 7%,#fff); border-color:color-mix(in srgb,var(--accent) 17%,var(--line)); box-shadow:none; }
html[data-office-theme="corporate"] .module-tabs button.active,
html[data-office-theme="corporate"] .detail-tabs button.active,
html[data-office-theme="corporate"] .view-toggle button.active { color:var(--accent); background:color-mix(in srgb,var(--accent) 7%,#fff); box-shadow:none; }
html[data-office-theme="corporate"] .detail-tabs,
html[data-office-theme="corporate"] .info-item,
html[data-office-theme="corporate"] .alert-row,
html[data-office-theme="corporate"] .checkbox-field,
html[data-office-theme="corporate"] .spend-summary > div,
html[data-office-theme="corporate"] .export-option,
html[data-office-theme="corporate"] .theme-choice,
html[data-office-theme="corporate"] .driver-payroll-summary > div,
html[data-office-theme="corporate"] .payroll-statement-card,
html[data-office-theme="corporate"] .lead-payroll-total-card,
html[data-office-theme="corporate"] .lead-payroll-preview { background:#f8f9fb; border-color:var(--line); }
html[data-office-theme="corporate"] .info-item { border-radius:8px; }
html[data-office-theme="corporate"] th { background:#f6f7f9; color:#596575; font-family:"Inter",system-ui,sans-serif; font-size:10px; letter-spacing:.04em; }
html[data-office-theme="corporate"] td { color:#354151; border-color:#edf0f3; }
html[data-office-theme="corporate"] table { font-size:12px; }
html[data-office-theme="corporate"] .status-pill { border-radius:999px; }
html[data-office-theme="corporate"] .lead-summary-banner { background:#fff; border-color:var(--line); box-shadow:var(--shadow); }
html[data-office-theme="corporate"] .lead-summary-banner.booked { background:#fff; border-color:color-mix(in srgb,var(--green) 25%,var(--line)); }
html[data-office-theme="corporate"] .lead-summary-financials > div { background:#f8f9fb; }
html[data-office-theme="corporate"] .lead-summary-financials > div.open-balance { background:#fbf8f1; }
html[data-office-theme="corporate"] .lead-summary-financials > div.paid-balance { background:#f3f8f5; }
html[data-office-theme="corporate"] .lead-window-nav button:hover,
html[data-office-theme="corporate"] .lead-window-nav button.active { background:color-mix(in srgb,var(--accent) 7%,#fff); color:var(--accent); }
html[data-office-theme="corporate"] .quote-card { background:#f8f9fb; }
html[data-office-theme="corporate"] .inventory-catalog-panel,
html[data-office-theme="corporate"] .inventory-catalog-list button,
html[data-office-theme="corporate"] .inventory-room-toggle,
html[data-office-theme="corporate"] .dispatch-driver-row,
html[data-office-theme="corporate"] .dispatch-assigned-job,
html[data-office-theme="corporate"] .dispatch-stop,
html[data-office-theme="corporate"] .dispatch-access-badge,
html[data-office-theme="corporate"] .storage-tab.active { background:#f8f9fb; }
html[data-office-theme="corporate"] .dispatch-notes { background:#fbf8f1; }
html[data-office-theme="corporate"] .storage-capacity-bar { background:#e9edf1; }
html[data-office-theme="corporate"] .storage-capacity-fill { background:var(--accent); }
html[data-office-theme="corporate"] .login-card { background:#fff; border-radius:14px; box-shadow:0 18px 44px rgba(16,24,40,.10); }
html[data-office-theme="corporate"] .login-card::after,
html[data-office-theme="corporate"] .login-orbit { display:none; }
html[data-office-theme="corporate"] .login-card h1 { letter-spacing:-.045em; }
html[data-office-theme="corporate"] .login-card h1 em { color:var(--accent); background:none; -webkit-text-fill-color:initial; }
html[data-office-theme="corporate"] .toast { background:#fff; color:var(--text); border-radius:9px; }
html[data-office-theme="corporate"] .file-preview-body { background:#eef0f3; }
html[data-office-theme="corporate"] .modal-actions,
html[data-office-theme="corporate"] .file-preview-actions { background:#fff; }
html[data-office-theme="corporate"] .search-progress-line i { background:linear-gradient(90deg,transparent,var(--accent),transparent); }

@media (max-width:1080px) {
  .theme-choice-grid-three { grid-template-columns:1fr; }
  .driver-payroll-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .payroll-statement-summary { padding-right:14px; grid-template-columns:auto minmax(0,1fr); }
  .payroll-statement-total { grid-column:2; text-align:left; }
  .payroll-statement-actions { position:static; transform:none; padding:0 14px 14px 54px; }
}
@media (max-width:720px) {
  .driver-payroll-summary { grid-template-columns:1fr 1fr; }
  .lead-payroll-editor { grid-template-columns:1fr; }
  .accent-choice-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:520px) {
  .driver-payroll-summary { grid-template-columns:1fr; }
  .payroll-statement-summary { grid-template-columns:auto minmax(0,1fr); }
  .payroll-statement-actions { padding-left:14px; }
}


/* =========================================================
   v4.10.1 — persistent opened leads, vehicle drivers, map polish
   ========================================================= */
.opened-leads-bar {
  min-height:48px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:7px 0 7px;
  border-bottom:1px solid var(--line);
  overflow:hidden;
}
.opened-leads-bar[hidden] { display:none !important; }
.opened-leads-label {
  flex:0 0 auto;
  display:flex;
  flex-direction:column;
  gap:1px;
  padding:0 4px 0 2px;
}
.opened-leads-label b { font-size:11px; letter-spacing:.02em; }
.opened-leads-label span { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.opened-leads-scroll {
  min-width:0;
  flex:1;
  display:flex;
  align-items:center;
  gap:7px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:2px 2px 3px;
  scrollbar-width:thin;
}
.opened-lead-pill {
  flex:0 0 auto;
  min-height:32px;
  max-width:260px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 6px 0 11px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--input-bg);
  color:var(--text);
  cursor:pointer;
  font:inherit;
  box-shadow:none;
}
.opened-lead-pill:hover { border-color:var(--line-bright); background:var(--panel-soft); }
.opened-lead-pill.active { border-color:color-mix(in srgb,var(--accent, var(--cyan)) 45%,var(--line)); background:color-mix(in srgb,var(--accent, var(--cyan)) 8%,var(--input-bg)); }
.opened-lead-pill > span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
  font-weight:650;
}
.opened-lead-pill small { color:var(--muted); font-size:9px; font-weight:500; }
.opened-lead-pill i {
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  border-radius:6px;
  color:var(--muted);
  font-style:normal;
  font-size:14px;
}
.opened-lead-pill i:hover { background:rgba(255,90,90,.09); color:var(--red); }

.vehicle-driver-assignment-card {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-bottom:20px;
  padding:20px 22px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--input-bg);
}
.vehicle-driver-assignment-card h4 { margin:5px 0 5px; font-size:22px; }
.vehicle-driver-assignment-card p { max-width:760px; margin:0; color:var(--muted); line-height:1.55; }
.legacy-assignment-history { margin-top:20px; border-top:1px solid var(--line); padding-top:16px; }
.legacy-assignment-history > summary { cursor:pointer; color:var(--muted); font-size:11px; font-weight:650; }
.legacy-assignment-history .table-wrap { margin-top:12px; }

/* Corporate/Business map overlays need light surfaces AND dark readable text. */
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-command,
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card {
  background:rgba(255,255,255,.95);
  border-color:#d8dee7;
  color:#1f2937;
  box-shadow:0 10px 28px rgba(15,23,42,.12);
}
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-command h3,
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card b { color:#172033; }
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-command p,
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card span { color:#667085; }
html[data-office-theme="corporate"] .fleet-map-stage > .fleet-map-summary .fleet-summary-card.active {
  background:color-mix(in srgb,var(--accent) 8%,#fff);
  border-color:color-mix(in srgb,var(--accent) 28%,#d8dee7);
}
html[data-office-theme="corporate"] .fleet-map-list-panel,
html[data-office-theme="corporate"] .fleet-map-detail {
  background:rgba(255,255,255,.97);
  color:#1f2937;
  border-color:#d8dee7;
}
html[data-office-theme="corporate"] .fleet-map-list-panel input,
html[data-office-theme="corporate"] .fleet-map-tools .secondary-button,
html[data-office-theme="corporate"] .fleet-drawer-tab {
  background:#fff;
  color:#344054;
  border-color:#d8dee7;
}
html[data-office-theme="corporate"] .maplibregl-ctrl-group,
html[data-office-theme="corporate"] .maplibregl-ctrl-attrib {
  background:rgba(255,255,255,.94) !important;
  color:#344054 !important;
}
html[data-office-theme="corporate"] .maplibregl-ctrl button { filter:none; }

body.fleet-map-active.has-open-leads .view-root { height:calc(100dvh - 164px); }

@media (max-width:900px) {
  .opened-leads-bar { padding-left:2px; }
  .opened-leads-label span { display:none; }
  .opened-lead-pill { max-width:210px; }
  .vehicle-driver-assignment-card { align-items:flex-start; flex-direction:column; gap:14px; }
  .vehicle-driver-assignment-card .primary-button { width:100%; }
  body.fleet-map-active.has-open-leads .view-root { height:auto; }
}

/* =========================================================
   v4.10.2 — roles, opened-lead window, dispatch/entity audit
   ========================================================= */
.dashboard-grid.dashboard-grid-single { grid-template-columns:minmax(0,1fr); }

/* Opened Leads now behaves like a compact saved-work tray instead of a horizontal rail. */
.opened-leads-bar {
  display:block;
  min-height:0;
  padding:7px 0 8px;
  overflow:visible;
}
.opened-leads-label {
  min-height:30px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-direction:row;
  gap:12px;
  padding:0 2px 6px;
}
.opened-leads-label > div:first-child { display:flex; align-items:baseline; gap:8px; min-width:0; }
.opened-leads-label > div:first-child span { white-space:nowrap; }
.opened-leads-controls { display:flex; align-items:center; gap:6px; flex:0 0 auto; }
.quiet-mini-button,
.opened-leads-toggle {
  min-height:27px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--input-bg);
  color:var(--muted);
  font-size:9px; font-weight:600; line-height:1; font-family:inherit;
  cursor:pointer;
}
.quiet-mini-button { padding:0 9px; }
.opened-leads-toggle { width:30px; display:grid; place-items:center; font-size:13px; }
.quiet-mini-button:hover,.opened-leads-toggle:hover { color:var(--text); border-color:var(--line-bright); background:var(--panel-soft); }
.opened-leads-window {
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-content:flex-start;
  gap:6px;
  max-height:34px;
  overflow:hidden;
  transition:max-height .2s ease;
}
.opened-leads-bar.expanded .opened-leads-window {
  max-height:144px;
  overflow-y:auto;
  padding-right:3px;
  scrollbar-width:thin;
}
.opened-lead-pill { flex:0 1 auto; max-width:245px; min-width:135px; }
body.fleet-map-active.has-open-leads-expanded .view-root { height:calc(100dvh - 258px); }

/* Dispatch mode tabs and selected-date audit trail. */
.dispatch-view-tabs {
  display:flex;
  align-items:center;
  gap:4px;
  width:max-content;
  max-width:100%;
  padding:4px;
  border-radius:12px;
}
.dispatch-view-tabs button {
  min-height:36px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 13px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:var(--muted);
  font-size:11px; font-weight:650; line-height:1; font-family:inherit;
  cursor:pointer;
}
.dispatch-view-tabs button span { min-width:20px; padding:3px 6px; border-radius:999px; background:var(--panel-soft); font-size:9px; }
.dispatch-view-tabs button.active { background:var(--panel-soft); color:var(--text); }
.dispatch-activity-panel { padding:20px; border-radius:18px; }
.dispatch-activity-head { align-items:flex-end; }
.dispatch-activity-list article i.dispatch { color:var(--accent,var(--cyan)); }
.dispatch-jobs-column { border:1px solid transparent; border-radius:18px; transition:border-color .16s ease,background .16s ease,box-shadow .16s ease; }
.dispatch-jobs-column.drag-over {
  border-color:color-mix(in srgb,var(--accent,var(--cyan)) 44%,var(--line));
  background:color-mix(in srgb,var(--accent,var(--cyan)) 5%,transparent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent,var(--cyan)) 18%,transparent);
}
.dispatch-assigned-actions { flex-wrap:wrap; }
.dispatch-assigned-actions [data-dispatch-reassign] { color:var(--accent,var(--cyan)); }

/* Entity action list shares Lead action-list density but remains record-scoped. */
.entity-activity-shell { min-height:280px; }

/* Seven named operational roles. Keep the chips readable rather than overly colorful. */
.admin-role.sales,.admin-role.claims,.admin-role.dispatch,.admin-role.foreman,.admin-role.payroll { color:var(--text); }
.admin-role.administrator { color:var(--accent); border-color:color-mix(in srgb,var(--accent) 28%,var(--line)); }
.admin-role.super_admin,.admin-role.admin { color:var(--accent); border-color:color-mix(in srgb,var(--accent) 48%,var(--line)); background:color-mix(in srgb,var(--accent) 7%,transparent); }
.admin-stat-grid b small { color:var(--muted); font-size:9px; font-weight:600; }

/* Corporate CRM: make Dispatch feel like the same neutral system on desktop and mobile. */
html[data-office-theme="corporate"] .dispatch-command,
html[data-office-theme="corporate"] .dispatch-summary-card,
html[data-office-theme="corporate"] .dispatch-vehicle-card,
html[data-office-theme="corporate"] .dispatch-job-card,
html[data-office-theme="corporate"] .dispatch-activity-panel,
html[data-office-theme="corporate"] .dispatch-view-tabs {
  background:#fff;
  border-color:#dfe3e8;
  box-shadow:0 1px 3px rgba(16,24,40,.04);
  border-radius:9px;
}
html[data-office-theme="corporate"] .dispatch-summary-card { box-shadow:none; }
html[data-office-theme="corporate"] .dispatch-driver-row { background:#f8f9fb; }
html[data-office-theme="corporate"] .dispatch-drop-zone { background:#fff; }
html[data-office-theme="corporate"] .dispatch-assigned-job {
  background:#fff;
  border-color:#dfe3e8;
  border-radius:8px;
}
html[data-office-theme="corporate"] .dispatch-assigned-job:hover { border-color:#cbd2db; }
html[data-office-theme="corporate"] .dispatch-assigned-title > span,
html[data-office-theme="corporate"] .dispatch-unit span,
html[data-office-theme="corporate"] .dispatch-job-number span { color:var(--accent); font-family:"Inter",system-ui,sans-serif; font-weight:700; letter-spacing:.04em; }
html[data-office-theme="corporate"] .dispatch-assigned-facts,
html[data-office-theme="corporate"] .dispatch-expanded-grid > div,
html[data-office-theme="corporate"] .dispatch-job-facts { background:#f8f9fb; border-color:#e3e7ec; }
html[data-office-theme="corporate"] .dispatch-stop { background:#f8f9fb; border-left-color:color-mix(in srgb,var(--accent) 35%,#dfe3e8); }
html[data-office-theme="corporate"] .dispatch-route-summary-row { border-top-color:#edf0f3; }
html[data-office-theme="corporate"] .dispatch-access-badge { background:#f8f9fb; border-color:#dfe3e8; color:#4d5968; }
html[data-office-theme="corporate"] .dispatch-drop-empty { border-color:#d8dee6; background:#fafbfc; }
html[data-office-theme="corporate"] .dispatch-drop-zone.drag-over,
html[data-office-theme="corporate"] .dispatch-jobs-column.drag-over { background:color-mix(in srgb,var(--accent) 5%,#fff); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,#dfe3e8); }
html[data-office-theme="corporate"] .dispatch-view-tabs button.active { background:color-mix(in srgb,var(--accent) 8%,#fff); color:var(--accent); }
html[data-office-theme="corporate"] .opened-leads-toggle,
html[data-office-theme="corporate"] .quiet-mini-button { background:#fff; border-color:#dfe3e8; color:#596575; }

@media (max-width:900px) {
  .opened-leads-label { align-items:center; }
  .opened-leads-label > div:first-child span { display:none; }
  .opened-leads-bar.expanded .opened-leads-window { max-height:180px; }
  .opened-lead-pill { max-width:calc(50% - 3px); min-width:0; flex:1 1 calc(50% - 3px); }
  body.fleet-map-active.has-open-leads-expanded .view-root { height:auto; }
}

@media (max-width:680px) {
  .opened-leads-bar { padding:6px 0; }
  .opened-leads-label { padding-bottom:5px; }
  .opened-leads-label b { font-size:10px; }
  .opened-lead-pill { max-width:100%; flex-basis:100%; }
  .opened-leads-window { max-height:33px; }
  .opened-leads-bar.expanded .opened-leads-window { max-height:210px; }
  .dispatch-view-tabs { width:100%; }
  .dispatch-view-tabs button { flex:1; justify-content:center; }
  .dispatch-activity-panel { padding:13px; }
  .dispatch-activity-head { align-items:stretch; }
  .dispatch-activity-head .lead-activity-search { width:100%; }
  .dispatch-assigned-actions { display:grid; grid-template-columns:1fr 1fr auto; gap:6px; }
  .dispatch-assigned-actions .secondary-button { width:100%; }

  /* v4.10.3: Corporate CRM intentionally uses the exact same mobile
     Dispatch geometry as Studio/Business. Theme-specific rules above only
     change surfaces, borders and accent colors — never mobile sizing/layout. */
}

/* v4.10.2 opened tray expander mirrors a compact CRM tab shelf. */
.opened-leads-bar { position:relative; padding-bottom:13px; }
.opened-leads-toggle {
  position:absolute;
  left:50%;
  bottom:-10px;
  transform:translateX(-50%);
  width:38px;
  min-height:20px;
  height:20px;
  border-radius:0 0 8px 8px;
  z-index:3;
}
.opened-leads-toggle:hover { transform:translateX(-50%); }
@media (max-width:680px) {
  .opened-leads-bar { padding-bottom:12px; }
}

/* =============================================================
   v4.10.3.1 — Corporate mobile shell parity hotfix
   The Corporate desktop grid/padding rules have higher specificity than
   the generic mobile rules. Without these explicit mobile overrides,
   Corporate keeps a phantom 218px sidebar column on phones, squeezing the
   workspace into the remaining half of the viewport. Keep Corporate's
   visual theme, but make its mobile shell geometry identical to the other
   Office appearances.
   ============================================================= */
@media (max-width: 900px) {
  html[data-office-theme="corporate"] .office-app,
  html[data-office-theme="corporate"] body.sidebar-collapsed .office-app {
    grid-template-columns: 1fr;
  }

  html[data-office-theme="corporate"] .workspace {
    padding: 0 20px 44px;
  }
}

@media (max-width: 680px) {
  html[data-office-theme="corporate"] .workspace {
    width: 100%;
    padding: 0 12px calc(30px + env(safe-area-inset-bottom));
    overflow: clip;
  }

  html[data-office-theme="corporate"] .topbar {
    min-height: 122px;
  }
}


/* =========================================================
   v4.11.0 — Foreman mobile workspace
   ========================================================= */

.admin-foreman-driver-field[hidden],
.admin-foreman-help[hidden] { display:none !important; }
.admin-foreman-driver-field label { display:grid; gap:7px; color:var(--text); }
.admin-foreman-driver-field small { color:var(--muted); font-weight:400; line-height:1.4; }
.admin-foreman-link { color:var(--accent) !important; }

.foreman-app {
  position:relative;
  z-index:2;
  min-height:100dvh;
  color:var(--text);
}
.foreman-topbar {
  position:sticky;
  top:0;
  z-index:30;
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px max(18px, env(safe-area-inset-right)) 12px max(18px, env(safe-area-inset-left));
  background:color-mix(in srgb,var(--bg) 88%,transparent);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(20px);
}
.foreman-brand { letter-spacing:.09em; }
.foreman-brand .brand-mark { width:24px; height:24px; }
.foreman-top-actions { display:flex; gap:8px; }
.foreman-top-button { width:40px; height:40px; }

.foreman-main {
  width:min(900px,100%);
  margin:0 auto;
  padding:22px max(18px, env(safe-area-inset-right)) calc(52px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
}
.foreman-welcome {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
}
.foreman-welcome h1 {
  margin:7px 0 2px;
  font-size:clamp(27px,7vw,38px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.foreman-welcome p { margin:0; color:var(--muted); font-size:13px; }
.foreman-profile-chip {
  min-width:0;
  max-width:46%;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel);
  text-align:right;
}
.foreman-profile-chip span,
.foreman-profile-chip small {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.foreman-profile-chip span { font-size:12px; font-weight:700; }
.foreman-profile-chip small { margin-top:3px; color:var(--muted); font-size:10px; }

.foreman-root { min-width:0; }
.foreman-dashboard { display:grid; gap:14px; }
.foreman-today-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 42%),
    var(--panel);
  box-shadow:var(--shadow);
}
.foreman-today-summary h2 { margin:8px 0 4px; font-size:25px; letter-spacing:-.04em; }
.foreman-today-summary p { margin:0; color:var(--muted); line-height:1.45; font-size:12px; }
.foreman-refresh-button {
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:14px;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));
  background:color-mix(in srgb,var(--accent) 8%,var(--panel));
  color:var(--accent);
  font-size:20px;
  cursor:pointer;
}
.foreman-stat-row {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.foreman-stat-row > div {
  min-width:0;
  padding:13px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel);
}
.foreman-stat-row span { display:block; color:var(--muted); font-size:10px; }
.foreman-stat-row b { display:block; margin-top:5px; font-size:21px; }

.foreman-tabs {
  position:sticky;
  top:78px;
  z-index:15;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:4px;
  padding:4px;
  border:1px solid var(--line);
  border-radius:14px;
  background:color-mix(in srgb,var(--panel) 94%,transparent);
  backdrop-filter:blur(16px);
}
.foreman-tabs button {
  min-height:42px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--muted);
  font-weight:650;
  cursor:pointer;
}
.foreman-tabs button.active {
  background:color-mix(in srgb,var(--accent) 10%,var(--panel));
  color:var(--accent);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,var(--line));
}
.foreman-list-area { min-width:0; }
.foreman-job-list { display:grid; gap:12px; }

.foreman-job-card {
  min-width:0;
  overflow:hidden;
  padding:17px;
  border:1px solid var(--line);
  border-radius:19px;
  background:var(--panel);
  box-shadow:0 8px 24px color-mix(in srgb,#000 9%,transparent);
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease;
}
.foreman-job-card:active { transform:scale(.992); }
.foreman-job-card:focus-visible { outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent); outline-offset:2px; }
.foreman-job-card-top { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; }
.foreman-job-card-top > div { min-width:0; }
.foreman-job-number {
  display:block;
  margin-bottom:4px;
  color:var(--accent);
  font:700 10px/1.2 "DM Mono",monospace;
  letter-spacing:.06em;
}
.foreman-job-card h3 {
  margin:0;
  font-size:21px;
  line-height:1.08;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
.foreman-job-card h3 + p { margin:4px 0 0; color:var(--muted); font-size:11px; }
.foreman-time-chip {
  flex:0 0 auto;
  max-width:44%;
  padding:7px 9px;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 8%,var(--panel-soft));
  border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));
  color:var(--text);
  font-size:10px;
  font-weight:700;
  text-align:center;
}
.foreman-job-meta {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:13px 0;
}
.foreman-job-meta span,
.foreman-detail-pills span,
.foreman-access-badges span {
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:4px 8px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--panel-soft);
  color:var(--muted);
  font-size:9px;
  font-weight:650;
}
.foreman-route-preview {
  display:grid;
  gap:7px;
  padding:11px;
  border-radius:13px;
  background:var(--panel-soft);
}
.foreman-route-preview > div {
  min-width:0;
  display:grid;
  grid-template-columns:27px minmax(0,1fr);
  align-items:center;
  gap:9px;
}
.foreman-route-preview i,
.foreman-detail-route-head i {
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:color-mix(in srgb,var(--accent) 10%,var(--panel));
  border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));
  color:var(--accent);
  font-style:normal;
  font-size:10px;
  font-weight:800;
}
.foreman-route-preview small { display:block; color:var(--muted-2); font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.foreman-route-preview b {
  display:block;
  margin-top:2px;
  color:var(--text);
  font-size:11px;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.foreman-route-mini-badges {
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin-top:6px;
  font-style:normal;
}
.foreman-route-mini-badges span {
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:3px 6px;
  border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 6%,var(--panel));
  color:var(--text);
  font-size:8px;
  font-weight:700;
  line-height:1;
}
.foreman-job-card-actions {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin-top:13px;
}
.foreman-job-card-actions a {
  color:var(--accent);
  font-size:11px;
  font-weight:700;
  text-decoration:none;
}
.foreman-job-card-actions button {
  min-height:36px;
  border:0;
  border-radius:10px;
  padding:0 12px;
  background:color-mix(in srgb,var(--accent) 10%,var(--panel));
  color:var(--accent);
  font-size:11px;
  font-weight:750;
  cursor:pointer;
}
.foreman-day-group { display:grid; gap:9px; margin-bottom:18px; }
.foreman-day-heading {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  padding:4px 3px;
}
.foreman-day-heading span { display:block; font-size:14px; font-weight:750; }
.foreman-day-heading small { display:block; margin-top:2px; color:var(--muted); font-size:9px; }
.foreman-day-heading b { color:var(--muted); font-size:10px; }
.foreman-range-note { margin:1px 3px 0; color:var(--muted-2); font-size:9px; text-align:center; }

.foreman-history-view { display:grid; gap:14px; }
.foreman-history-calendar {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:19px;
  background:var(--panel);
  box-shadow:0 8px 24px color-mix(in srgb,#000 7%,transparent);
}
.foreman-history-toolbar {
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 42px;
  align-items:center;
  gap:10px;
  padding:13px;
  border-bottom:1px solid var(--line);
}
.foreman-history-toolbar > div { min-width:0; text-align:center; }
.foreman-history-toolbar h3 { margin:4px 0 0; font-size:17px; letter-spacing:-.025em; }
.foreman-history-toolbar button {
  width:42px;
  height:42px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel-soft);
  color:var(--text);
  font-size:17px;
  cursor:pointer;
}
.foreman-history-toolbar button:disabled { opacity:.32; cursor:not-allowed; }
.foreman-calendar-weekdays,
.foreman-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }
.foreman-calendar-weekdays { padding:8px 8px 4px; }
.foreman-calendar-weekdays span {
  text-align:center;
  color:var(--muted-2);
  font-size:7px;
  font-weight:750;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.foreman-calendar-grid { gap:4px; padding:4px 8px 10px; }
.foreman-calendar-blank { min-height:54px; }
.foreman-calendar-day {
  min-width:0;
  min-height:54px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  padding:5px 2px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:var(--muted);
  cursor:pointer;
}
.foreman-calendar-day > span { font-size:11px; font-weight:700; }
.foreman-calendar-day b {
  min-width:20px;
  height:20px;
  display:grid;
  place-items:center;
  padding:0 5px;
  border-radius:999px;
  background:color-mix(in srgb,var(--accent) 12%,var(--panel-soft));
  color:var(--accent);
  font-size:9px;
}
.foreman-calendar-day small { color:var(--muted-2); font-size:6px; line-height:1; }
.foreman-calendar-day.has-jobs {
  border-color:color-mix(in srgb,var(--accent) 22%,var(--line));
  background:color-mix(in srgb,var(--accent) 5%,var(--panel-soft));
  color:var(--text);
}
.foreman-calendar-day.selected {
  border-color:color-mix(in srgb,var(--accent) 62%,var(--line));
  background:color-mix(in srgb,var(--accent) 12%,var(--panel));
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent);
}
.foreman-calendar-day:disabled { opacity:.28; cursor:not-allowed; }
.foreman-history-selection { min-width:0; }
.foreman-history-prompt {
  min-height:150px;
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  padding:24px;
  border:1px dashed var(--line);
  border-radius:17px;
  background:color-mix(in srgb,var(--panel) 72%,transparent);
}
.foreman-history-prompt > span { color:var(--accent); font-size:20px; }
.foreman-history-prompt h3 { margin:7px 0 4px; font-size:15px; }
.foreman-history-prompt p { max-width:330px; margin:0; color:var(--muted); font-size:10px; line-height:1.5; }

.foreman-loading,
.foreman-job-loading,
.foreman-empty,
.foreman-link-required {
  display:grid;
  place-items:center;
  align-content:center;
  text-align:center;
  min-height:260px;
  padding:30px 22px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--panel);
}
.foreman-loading > span,
.foreman-job-loading > span {
  width:32px;
  height:32px;
  border:2px solid color-mix(in srgb,var(--accent) 20%,var(--line));
  border-top-color:var(--accent);
  border-radius:50%;
  animation:module-spin .8s linear infinite;
}
.foreman-loading h3,
.foreman-job-loading h3,
.foreman-empty h3,
.foreman-link-required h2 { margin:14px 0 5px; }
.foreman-loading p,
.foreman-job-loading p,
.foreman-empty p,
.foreman-link-required p { max-width:520px; margin:0; color:var(--muted); line-height:1.55; }
.foreman-empty > div,
.foreman-link-icon {
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:17px;
  color:var(--accent);
  background:color-mix(in srgb,var(--accent) 8%,var(--panel-soft));
  border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));
  font-size:21px;
}
.foreman-link-required { min-height:420px; }
.foreman-link-required .micro-label { margin-top:18px; }
.foreman-link-required .secondary-button { margin-top:18px; }

.foreman-job-dialog {
  width:100%;
  max-width:none;
  height:100%;
  max-height:none;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--text);
}
.foreman-job-dialog::backdrop { background:rgba(0,0,0,.55); backdrop-filter:blur(5px); }
.foreman-job-dialog-shell {
  width:min(780px,100%);
  min-height:100dvh;
  margin-left:auto;
  background:var(--bg);
  border-left:1px solid var(--line);
}
.foreman-job-dialog-bar {
  position:sticky;
  top:0;
  z-index:10;
  min-height:64px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 44px;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb,var(--bg) 92%,transparent);
  backdrop-filter:blur(20px);
}
.foreman-job-dialog-bar > div { text-align:center; }
.foreman-job-dialog-bar span { display:block; font-size:12px; font-weight:750; }
.foreman-job-dialog-bar small { display:block; margin-top:2px; color:var(--muted); font-size:8px; }
.foreman-job-close {
  width:40px;
  height:40px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel);
  color:var(--text);
  font-size:18px;
  cursor:pointer;
}
.foreman-job-body {
  width:min(720px,100%);
  margin:0 auto;
  padding:18px 18px calc(54px + env(safe-area-inset-bottom));
}
.foreman-job-detail { display:grid; gap:14px; }
.foreman-job-detail-hero {
  padding:20px;
  border:1px solid var(--line);
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 45%),
    var(--panel);
}
.foreman-job-detail-hero h2 { margin:8px 0 4px; font-size:30px; line-height:1.02; letter-spacing:-.045em; }
.foreman-job-detail-hero > p { margin:0; color:var(--muted); font-size:11px; }
.foreman-detail-pills { display:flex; flex-wrap:wrap; gap:6px; margin-top:14px; }

.foreman-contact-actions {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.foreman-contact-actions a {
  min-width:0;
  min-height:78px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:10px 6px;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--panel);
  text-decoration:none;
  text-align:center;
}
.foreman-contact-actions a > span { color:var(--accent); font-size:18px; }
.foreman-contact-actions b { margin-top:4px; font-size:11px; }
.foreman-contact-actions small {
  width:100%;
  margin-top:2px;
  color:var(--muted);
  font-size:8px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.foreman-detail-section {
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:var(--panel);
}
.foreman-detail-section-title {
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:10px;
  align-items:start;
  margin-bottom:14px;
}
.foreman-detail-section-title > span {
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:var(--accent);
  background:color-mix(in srgb,var(--accent) 8%,var(--panel-soft));
  font:700 9px/1 "DM Mono",monospace;
}
.foreman-detail-section-title h3 { margin:0; font-size:18px; }
.foreman-detail-section-title p { margin:3px 0 0; color:var(--muted); font-size:10px; line-height:1.35; }
.foreman-detail-route-list { display:grid; gap:10px; }
.foreman-detail-route {
  padding:13px;
  border:1px solid var(--line);
  border-radius:15px;
  background:var(--panel-soft);
}
.foreman-detail-route-head {
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:start;
}
.foreman-detail-route-head span { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.foreman-detail-route-head h4 { margin:3px 0 0; font-size:13px; line-height:1.35; }
.foreman-access-badges { display:flex; flex-wrap:wrap; gap:5px; margin:10px 0 0 40px; }

.foreman-route-access-summary {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin:12px 0 0 40px;
}
.foreman-route-access-summary > div {
  min-width:0;
  padding:8px 9px;
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel);
}
.foreman-route-access-summary > div.active {
  border-color:color-mix(in srgb,var(--accent) 38%,var(--line));
  background:color-mix(in srgb,var(--accent) 7%,var(--panel));
}
.foreman-route-access-summary span {
  display:block;
  color:var(--muted-2);
  font-size:8px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.foreman-route-access-summary b {
  display:block;
  margin-top:3px;
  color:var(--text);
  font-size:11px;
  line-height:1.25;
}
.foreman-route-notes,
.foreman-room-note {
  margin:10px 0 0 40px;
  padding:9px 10px;
  border-left:2px solid color-mix(in srgb,var(--accent) 45%,var(--line));
  background:var(--panel);
  color:var(--muted);
  font-size:10px;
  line-height:1.5;
  white-space:pre-wrap;
}
.foreman-map-button {
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:11px 0 0 40px;
  padding:0 11px;
  border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,var(--accent) 7%,var(--panel));
  color:var(--accent);
  font-size:10px;
  font-weight:750;
  text-decoration:none;
}
.foreman-important-note {
  padding:14px;
  border:1px solid color-mix(in srgb,var(--amber) 35%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--amber) 7%,var(--panel-soft));
}
.foreman-important-note b { display:block; color:var(--text); font-size:11px; }
.foreman-important-note p { margin:7px 0 0; color:var(--text); line-height:1.55; font-size:12px; white-space:pre-wrap; }
.foreman-special-section {
  border-color:color-mix(in srgb,var(--amber) 30%,var(--line));
  background:linear-gradient(180deg,color-mix(in srgb,var(--amber) 4%,var(--panel)),var(--panel));
}
.foreman-special-section .foreman-detail-section-title > span {
  color:var(--amber);
  background:color-mix(in srgb,var(--amber) 9%,var(--panel-soft));
}
.foreman-posted-notes { display:grid; gap:8px; margin-top:9px; }
.foreman-posted-notes article {
  padding:11px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel-soft);
}
.foreman-posted-notes p { margin:0; font-size:11px; line-height:1.5; white-space:pre-wrap; }
.foreman-posted-notes small { display:block; margin-top:6px; color:var(--muted); font-size:8px; }

.foreman-inventory-rooms { display:grid; gap:8px; }
.foreman-inventory-rooms details {
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:13px;
  background:var(--panel-soft);
}
.foreman-inventory-rooms summary {
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 12px;
  cursor:pointer;
  list-style:none;
}
.foreman-inventory-rooms summary::-webkit-details-marker { display:none; }
.foreman-inventory-rooms summary span { font-size:12px; font-weight:700; }
.foreman-inventory-rooms summary b { color:var(--accent); font-size:10px; }
.foreman-inventory-rooms details > div { display:grid; border-top:1px solid var(--line); }
.foreman-inventory-rooms article {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 10px;
  padding:10px 12px;
  border-bottom:1px solid var(--line);
}
.foreman-inventory-rooms article:last-child { border-bottom:0; }
.foreman-inventory-rooms article b { font-size:10px; }
.foreman-inventory-rooms article span { color:var(--muted); font-size:9px; }
.foreman-inventory-rooms article small { grid-column:1/-1; color:var(--muted); font-size:8px; line-height:1.4; }

.foreman-supply-list { display:grid; gap:7px; }
.foreman-supply-list article {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--panel-soft);
}
.foreman-supply-list span { display:block; color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.07em; }
.foreman-supply-list b { display:block; margin-top:2px; font-size:11px; }
.foreman-supply-list small { display:block; margin-top:3px; color:var(--muted); font-size:8px; }
.foreman-supply-list strong { color:var(--accent); font-size:12px; }

html[data-office-theme="business"] .foreman-topbar,
html[data-office-theme="corporate"] .foreman-topbar,
html[data-office-theme="business"] .foreman-job-dialog-bar,
html[data-office-theme="corporate"] .foreman-job-dialog-bar {
  background:color-mix(in srgb,var(--bg) 94%,transparent);
}
html[data-office-theme="business"] .foreman-job-card,
html[data-office-theme="business"] .foreman-today-summary,
html[data-office-theme="business"] .foreman-detail-section,
html[data-office-theme="business"] .foreman-job-detail-hero,
html[data-office-theme="corporate"] .foreman-job-card,
html[data-office-theme="corporate"] .foreman-today-summary,
html[data-office-theme="corporate"] .foreman-detail-section,
html[data-office-theme="corporate"] .foreman-job-detail-hero {
  box-shadow:0 2px 10px rgba(16,24,40,.045);
}
html[data-office-theme="corporate"] .foreman-job-card,
html[data-office-theme="corporate"] .foreman-today-summary,
html[data-office-theme="corporate"] .foreman-detail-section,
html[data-office-theme="corporate"] .foreman-job-detail-hero,
html[data-office-theme="corporate"] .foreman-profile-chip,
html[data-office-theme="corporate"] .foreman-stat-row > div {
  border-radius:10px;
}
html[data-office-theme="corporate"] .foreman-tabs { border-radius:9px; }
html[data-office-theme="corporate"] .foreman-tabs button { border-radius:6px; }
html[data-office-theme="corporate"] .foreman-history-calendar { border-radius:10px; box-shadow:0 2px 10px rgba(16,24,40,.045); }
html[data-office-theme="corporate"] .foreman-calendar-day { border-radius:6px; }
html[data-office-theme="corporate"] .foreman-job-card h3,
html[data-office-theme="corporate"] .foreman-job-detail-hero h2,
html[data-office-theme="corporate"] .foreman-welcome h1 { font-family:"Inter",system-ui,sans-serif; }
html[data-office-theme="corporate"] .foreman-job-number { font-family:"Inter",system-ui,sans-serif; font-weight:750; letter-spacing:.035em; }

@media (min-width:760px) {
  .foreman-main { padding-top:30px; }
  .foreman-job-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .foreman-day-group .foreman-job-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:520px) {
  .foreman-topbar { min-height:62px; padding-top:max(10px,env(safe-area-inset-top)); }
  .foreman-brand { font-size:12px; gap:9px; }
  .foreman-brand .brand-mark { width:22px; height:22px; }
  .foreman-main { padding-top:17px; }
  .foreman-welcome { align-items:flex-start; }
  .foreman-profile-chip { max-width:48%; padding:8px 9px; }
  .foreman-profile-chip span { font-size:10px; }
  .foreman-profile-chip small { font-size:8px; }
  .foreman-today-summary { padding:17px; border-radius:18px; }
  .foreman-today-summary h2 { font-size:22px; }
  .foreman-tabs { top:70px; }
  .foreman-job-card { padding:15px; border-radius:16px; }
  .foreman-job-card h3 { font-size:19px; }
  .foreman-job-card-actions { grid-template-columns:1fr auto; }
  .foreman-job-dialog-shell { width:100%; border-left:0; }
  .foreman-job-body { padding-left:14px; padding-right:14px; }
  .foreman-job-detail-hero,
  .foreman-detail-section { padding:15px; border-radius:17px; }
  .foreman-job-detail-hero h2 { font-size:26px; }
  .foreman-history-toolbar { grid-template-columns:38px minmax(0,1fr) 38px; padding:10px; }
  .foreman-history-toolbar button { width:38px; height:38px; }
  .foreman-history-toolbar h3 { font-size:15px; }
  .foreman-calendar-weekdays { padding-left:5px; padding-right:5px; }
  .foreman-calendar-grid { gap:3px; padding:3px 5px 8px; }
  .foreman-calendar-day, .foreman-calendar-blank { min-height:50px; }
  .foreman-calendar-day > span { font-size:10px; }
  .foreman-calendar-day b { min-width:18px; height:18px; font-size:8px; }
}

@media (max-width: 520px) {
  .foreman-route-access-summary { margin-left:0; grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* ========================================
   v4.12.0 — Email Center / Settings
   ======================================== */
.settings-shell { display:grid; gap:18px; }
.settings-hero { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:26px; border-radius:22px; }
.settings-hero h3 { margin:8px 0 7px; font-size:28px; letter-spacing:-.045em; }
.settings-hero p { max-width:760px; margin:0; color:var(--muted); line-height:1.55; }
.settings-hero-actions { display:flex; gap:9px; flex:0 0 auto; }
.settings-panel { overflow:hidden; border-radius:21px; }
.settings-panel .panel-head p { margin:5px 0 0; color:var(--muted); font-size:12px; line-height:1.5; }
.settings-panel .panel-head code { color:var(--accent); font-family:"DM Mono",monospace; }
.settings-form-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding:20px; }
.settings-form-grid label,
.gmail-config-card label,
.email-designer-meta label,
.email-compose-fields label { display:grid; gap:7px; color:var(--muted); font-size:11px; }
.settings-form-grid label > span,
.gmail-config-card label > span,
.email-designer-meta label > span,
.email-compose-fields label > span { color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.settings-form-grid .wide { grid-column:span 2; }
.settings-form-action { display:flex; align-items:end; justify-content:flex-end; }
.gmail-setup-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.75fr); gap:18px; padding:20px; border-bottom:1px solid var(--line); }
.gmail-config-card { display:grid; gap:12px; align-content:start; padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--panel-soft); }
.gmail-config-card .secondary-button { justify-self:start; }
.gmail-redirect-box { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:6px 10px; align-items:center; padding:12px; border-radius:11px; background:rgba(94,229,255,.045); border:1px solid var(--line-bright); }
.gmail-redirect-box > span { grid-column:1/-1; color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.gmail-redirect-box code { min-width:0; overflow:hidden; text-overflow:ellipsis; color:var(--text); font:500 10px/1.45 "DM Mono",monospace; }
.gmail-setup-help { padding:18px; border-radius:16px; border:1px solid var(--line); background:var(--panel-soft); }
.gmail-setup-help > b { font-size:15px; }
.gmail-setup-help ol { margin:12px 0; padding-left:20px; color:var(--muted); font-size:12px; line-height:1.65; }
.gmail-setup-help p { margin:0; color:var(--muted); font-size:11px; line-height:1.55; }
.gmail-senders-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px 12px; }
.gmail-senders-head h4 { margin:0; font-size:16px; }
.gmail-senders-head p { margin:4px 0 0; color:var(--muted); font-size:11px; }
.gmail-sender-list { display:grid; gap:9px; padding:0 20px 20px; }
.gmail-sender-card { display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; gap:13px; padding:14px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.gmail-avatar { width:44px; height:44px; display:grid; place-items:center; border-radius:12px; color:var(--accent); background:color-mix(in srgb,var(--accent) 10%,transparent); border:1px solid color-mix(in srgb,var(--accent) 24%,transparent); font-size:16px; font-weight:800; }
.gmail-sender-card h4 { margin:0; font-size:14px; }
.gmail-sender-card p { margin:3px 0; color:var(--muted); font-size:11px; }
.gmail-sender-card span { color:var(--muted-2); font-size:9px; }
.gmail-sender-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.gmail-sender-actions .secondary-button,
.gmail-sender-actions .danger-button { min-height:36px; padding:0 11px; font-size:10px; }
.email-template-list { display:grid; gap:10px; padding:20px; }
.email-template-card { display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:14px; padding:15px; border:1px solid var(--line); border-radius:15px; background:var(--panel-soft); }
.email-template-card.inactive { opacity:.62; }
.email-template-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:13px; background:color-mix(in srgb,var(--accent) 10%,transparent); color:var(--accent); border:1px solid color-mix(in srgb,var(--accent) 22%,transparent); font-size:18px; }
.email-template-title { display:flex; flex-wrap:wrap; gap:7px; align-items:center; }
.email-template-title h4 { margin:0; font-size:15px; }
.email-template-title span { display:inline-flex; min-height:20px; align-items:center; padding:0 7px; border-radius:999px; background:var(--panel-soft); border:1px solid var(--line); color:var(--muted); font-size:8px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.email-template-title span.on { color:var(--green); }
.email-template-title span.off { color:var(--amber); }
.email-template-card p { margin:5px 0; color:var(--muted); font-size:11px; }
.email-template-card code { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; max-width:760px; color:var(--muted-2); font:500 9px/1.4 "DM Mono",monospace; }
.email-template-actions { display:flex; gap:7px; }
.email-template-actions button { min-height:38px; font-size:10px; }
.settings-empty { padding:28px; border:1px dashed var(--line); border-radius:14px; text-align:center; }
.settings-empty b { display:block; font-size:15px; }
.settings-empty p { margin:6px auto 0; max-width:580px; color:var(--muted); font-size:11px; line-height:1.55; }


.lead-move-time-field { min-width:0; }
.lead-move-time-control { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:stretch; }
.lead-move-time-control > input[type="text"] { min-width:0; }
.lead-meridiem-toggle { display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:4px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); }
.lead-meridiem-toggle button { min-width:48px; min-height:38px; padding:0 10px; border:0; border-radius:8px; background:transparent; color:var(--muted); font-size:11px; font-weight:800; cursor:pointer; }
.lead-meridiem-toggle button.active { background:color-mix(in srgb,var(--accent) 16%,transparent); color:var(--text); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 34%,transparent); }
.lead-move-time-field small { display:block; margin-top:6px; color:var(--muted); font-size:9px; line-height:1.4; }
.email-compose-design-label { display:flex; align-items:center; gap:8px; }
.email-compose-design-label b { font-size:10px; }
.email-compose-design-label span { color:var(--muted); font-size:9px; }

.lead-email-action { position:relative; z-index:90; }
.lead-email-action > .secondary-button { white-space:nowrap; }
.lead-email-action > .secondary-button span { margin-left:6px; color:var(--muted); }
.lead-email-menu { position:absolute; right:0; top:calc(100% + 8px); z-index:120; width:min(340px,80vw); max-height:440px; overflow:auto; padding:7px; border-radius:14px; border:1px solid var(--line); background:var(--panel-strong); box-shadow:0 24px 55px rgba(0,0,0,.28); }
.lead-email-menu-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 9px 9px; border-bottom:1px solid var(--line); }
.lead-email-menu-head b { font-size:12px; }
.lead-email-menu-head span { color:var(--muted); font-size:9px; }
.lead-email-menu > button { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 10px; align-items:center; padding:11px 10px; border:0; border-radius:10px; background:transparent; text-align:left; cursor:pointer; }
.lead-email-menu > button:hover { background:var(--panel-soft); }
.lead-email-menu > button span { font-size:12px; font-weight:700; }
.lead-email-menu > button small { grid-column:1; color:var(--muted); font-size:9px; line-height:1.35; }
.lead-email-menu > button i { grid-column:2; grid-row:1/3; color:var(--accent); font-style:normal; }
.lead-email-menu-loading,
.lead-email-menu-empty { padding:18px 12px; color:var(--muted); font-size:10px; line-height:1.5; text-align:center; }
.lead-email-menu-loading span { display:inline-block; width:12px; height:12px; margin-right:7px; border-radius:50%; border:2px solid var(--line); border-top-color:var(--accent); animation:module-spin .7s linear infinite; vertical-align:-2px; }

.email-workspace-dialog { width:100%; max-width:none; height:100%; max-height:none; margin:0; padding:0; border:0; background:transparent; color:var(--text); }
.email-workspace-dialog::backdrop { background:rgba(2,4,9,.72); backdrop-filter:blur(4px); }
.email-workspace-shell { width:min(1180px,calc(100vw - 36px)); height:min(880px,calc(100dvh - 36px)); margin:18px auto; display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:var(--panel-strong); box-shadow:0 40px 100px rgba(0,0,0,.45); }
.email-workspace-head { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 20px; border-bottom:1px solid var(--line); }
.email-workspace-head h3 { margin:6px 0 0; font-size:21px; letter-spacing:-.035em; }
.email-workspace-head p { margin:4px 0 0; color:var(--muted); font-size:10px; }
.email-workspace-body { min-height:0; overflow:auto; padding:18px; }
.email-workspace-actions { min-height:70px; display:flex; align-items:center; justify-content:flex-end; gap:10px; padding:12px 18px; border-top:1px solid var(--line); background:color-mix(in srgb,var(--panel-strong) 94%,transparent); }
.email-send-summary { margin-right:auto; display:grid; gap:2px; }
.email-send-summary span { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.08em; }
.email-send-summary b { font-size:11px; }
.email-designer-meta { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(160px,.35fr); gap:11px; margin-bottom:13px; }
.email-designer-meta .wide { grid-column:1/-1; }
.email-editor-commandbar { display:flex; align-items:center; gap:12px; min-height:52px; padding:7px; border:1px solid var(--line); border-bottom:0; border-radius:13px 13px 0 0; background:var(--panel-soft); }
.email-editor-tabs { display:flex; align-items:center; gap:3px; padding:3px; border-radius:9px; border:1px solid var(--line); background:color-mix(in srgb,var(--bg) 30%,transparent); }
.email-editor-tabs button { min-height:30px; padding:0 11px; border:0; border-radius:6px; background:transparent; color:var(--muted); cursor:pointer; font-size:9px; font-weight:700; }
.email-editor-tabs button.active { background:color-mix(in srgb,var(--accent) 14%,transparent); color:var(--text); }
.email-editor-tools { display:flex; gap:3px; }
.email-editor-tools button { width:30px; height:30px; border:1px solid var(--line); border-radius:7px; background:transparent; color:var(--text); cursor:pointer; }
.email-variable-picker { margin-left:auto; display:flex; align-items:center; gap:8px; }
.email-variable-picker span { color:var(--muted); font-size:9px; font-weight:700; }
.email-variable-picker select { width:min(330px,34vw); min-height:34px; padding:5px 9px; border-radius:8px; font-size:9px; }
.email-designer-workarea,
.email-compose-editor { min-height:0; }
.email-design-frame { display:block; width:100%; height:520px; border:1px solid #d8dde6; border-radius:0 0 13px 13px; background:#eef1f5; }
.email-code-editor { display:block; width:100%; height:520px; min-height:520px; padding:18px; border-radius:0 0 13px 13px; border:1px solid var(--line); background:#070a10; color:#d9e4f1; font:500 11px/1.65 "DM Mono",monospace; tab-size:2; white-space:pre; }
.email-designer-hint { margin-top:12px; padding:12px 14px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); }
.email-designer-hint b { font-size:11px; }
.email-designer-hint p { margin:5px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.email-designer-hint code { color:var(--accent); }

.email-compose-fields { display:grid; grid-template-columns:minmax(260px,.65fr) minmax(300px,1.35fr); gap:10px; margin-bottom:12px; }
.email-compose-fields .wide { grid-column:1/-1; }
.email-more-recipients { grid-column:1/-1; border:1px solid var(--line); border-radius:10px; background:var(--panel-soft); }
.email-more-recipients summary { cursor:pointer; padding:10px 12px; color:var(--muted); font-size:9px; font-weight:700; }
.email-more-recipients > div { display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:0 10px 10px; }
.email-compose-warning { margin-bottom:12px; padding:12px 14px; border:1px solid color-mix(in srgb,var(--amber) 38%,transparent); border-radius:11px; background:color-mix(in srgb,var(--amber) 8%,transparent); }
.email-compose-warning b { font-size:11px; }
.email-compose-warning p { margin:4px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.email-editor-commandbar.compose { justify-content:space-between; }
.email-editor-commandbar.compose > span { color:var(--muted); font-size:9px; padding-right:8px; }
.email-design-frame.compose,
.email-code-editor.compose { height:510px; min-height:510px; }
.email-compose-loading { min-height:440px; display:grid; place-items:center; align-content:center; gap:7px; text-align:center; }
.email-compose-loading span { width:30px; height:30px; border-radius:50%; border:2px solid var(--line); border-top-color:var(--accent); animation:module-spin .8s linear infinite; }
.email-compose-loading h4 { margin:5px 0 0; }
.email-compose-loading p { margin:0; color:var(--muted); font-size:10px; }

html[data-office-theme="business"] .email-workspace-shell,
html[data-office-theme="corporate"] .email-workspace-shell { box-shadow:0 22px 70px rgba(16,24,40,.18); }
html[data-office-theme="business"] .email-code-editor,
html[data-office-theme="corporate"] .email-code-editor { background:#111827; color:#e5edf7; }
html[data-office-theme="corporate"] .settings-hero,
html[data-office-theme="corporate"] .settings-panel,
html[data-office-theme="corporate"] .email-workspace-shell,
html[data-office-theme="corporate"] .email-template-card,
html[data-office-theme="corporate"] .gmail-sender-card { border-radius:10px; }

@media (max-width:900px) {
  .settings-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gmail-setup-grid { grid-template-columns:1fr; }
  .email-template-card { grid-template-columns:42px minmax(0,1fr); }
  .email-template-actions { grid-column:1/-1; padding-left:56px; }
  .email-compose-fields { grid-template-columns:1fr; }
  .email-compose-fields .wide,
  .email-more-recipients { grid-column:1; }
}

@media (max-width:680px) {
  .settings-hero { align-items:flex-start; flex-direction:column; padding:18px; }
  .settings-hero h3 { font-size:23px; }
  .settings-hero-actions { width:100%; }
  .settings-hero-actions button { flex:1; }
  .settings-panel .panel-head { align-items:flex-start; flex-direction:column; }
  .settings-form-grid { grid-template-columns:1fr; padding:14px; }
  .settings-form-grid .wide { grid-column:1; }
  .settings-form-action { justify-content:stretch; }
  .settings-form-action button { width:100%; }
  .gmail-setup-grid { padding:14px; gap:12px; }
  .gmail-senders-head { align-items:flex-start; flex-direction:column; padding:14px 14px 10px; }
  .gmail-senders-head button { width:100%; }
  .gmail-sender-list { padding:0 14px 14px; }
  .gmail-sender-card { grid-template-columns:38px minmax(0,1fr); }
  .gmail-avatar { width:38px; height:38px; }
  .gmail-sender-actions { grid-column:1/-1; justify-content:stretch; }
  .gmail-sender-actions button { flex:1; }
  .email-template-list { padding:14px; }
  .email-template-card { grid-template-columns:38px minmax(0,1fr); padding:12px; }
  .email-template-icon { width:38px; height:38px; }
  .email-template-actions { padding-left:0; }
  .email-template-actions button { flex:1; }
  .lead-detail-actions { flex-wrap:wrap; }
  .lead-email-action { order:-1; width:100%; }
  .lead-email-action > .secondary-button { width:100%; }
  .lead-email-menu { left:0; right:auto; width:min(360px,calc(100vw - 40px)); }
  .email-workspace-shell { width:100%; height:100dvh; margin:0; border-radius:0; border-left:0; border-right:0; }
  .email-workspace-head { min-height:66px; padding:12px 14px; }
  .email-workspace-body { padding:12px; }
  .email-workspace-actions { min-height:66px; padding:10px 12px; }
  .email-designer-meta { grid-template-columns:1fr; }
  .email-designer-meta .wide { grid-column:1; }
  .email-editor-commandbar { flex-wrap:wrap; }
  .email-variable-picker { width:100%; margin-left:0; }
  .email-variable-picker select { flex:1; width:auto; }
  .email-design-frame,
  .email-code-editor,
  .email-design-frame.compose,
  .email-code-editor.compose { height:60dvh; min-height:420px; }
  .email-more-recipients > div { grid-template-columns:1fr; }
  .email-editor-commandbar.compose { align-items:flex-start; }
  .email-editor-commandbar.compose > span { width:100%; padding:0 4px 3px; }
  .email-send-summary { display:none; }
  .email-workspace-actions > button { flex:1; }
}

/* =========================================================
   v4.13.0 — Consolidated Settings + Foreman Contract Signing
   ========================================================= */
.settings-consolidated { display:grid; gap:14px; }
.settings-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:8px; border:1px solid var(--line); border-radius:16px; background:var(--panel); box-shadow:var(--shadow-soft); }
.settings-tabs button { min-width:0; display:grid; gap:3px; text-align:left; padding:12px 14px; border:1px solid transparent; border-radius:11px; background:transparent; color:var(--muted); cursor:pointer; }
.settings-tabs button b { color:var(--text); font-size:12px; }
.settings-tabs button span { font-size:9px; line-height:1.35; }
.settings-tabs button:hover { border-color:var(--line); background:var(--panel-2); }
.settings-tabs button.active { border-color:color-mix(in srgb,var(--accent) 45%,var(--line)); background:color-mix(in srgb,var(--accent) 9%,var(--panel)); box-shadow:inset 0 -2px 0 var(--accent); }
.settings-tab-body { display:grid; gap:14px; }
.settings-appearance-body,.settings-export-body { padding:18px; }
.settings-accent-panel { margin-top:16px; }
.settings-load-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px; }
.settings-load-panel h3 { margin:3px 0 5px; }
.settings-load-panel p { margin:0; color:var(--muted); }
.settings-export-grid { padding:0; }

.contract-workflow-explainer { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:center; gap:9px; padding:16px 18px; border-bottom:1px solid var(--line); }
.contract-workflow-explainer > div { display:flex; align-items:center; gap:10px; min-width:0; }
.contract-workflow-explainer > div > b { width:30px; height:30px; flex:0 0 auto; display:grid; place-items:center; border-radius:9px; background:color-mix(in srgb,var(--accent) 13%,var(--panel-2)); color:var(--accent); font-size:11px; }
.contract-workflow-explainer strong,.contract-workflow-explainer small { display:block; }
.contract-workflow-explainer strong { font-size:10px; color:var(--text); }
.contract-workflow-explainer small { margin-top:2px; color:var(--muted); font-size:8px; line-height:1.35; }
.contract-workflow-explainer > i { color:var(--muted); font-style:normal; }
.contract-template-list { display:grid; gap:10px; padding:16px 18px 18px; }
.contract-template-card { display:grid; grid-template-columns:70px minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px; border:1px solid var(--line); border-radius:13px; background:var(--panel-2); }
.contract-template-card.inactive { opacity:.62; }
.contract-template-order { min-height:64px; display:grid; place-items:center; align-content:center; gap:2px; border:1px solid var(--line); border-radius:10px; background:var(--panel); }
.contract-template-order span { font-size:7px; letter-spacing:.12em; color:var(--accent); font-weight:800; }
.contract-template-order b { font-size:20px; }
.contract-template-title { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.contract-template-title h4 { margin:0; font-size:13px; }
.contract-template-copy p { margin:4px 0 7px; color:var(--muted); font-size:9px; line-height:1.45; }
.contract-template-meta { display:flex; flex-wrap:wrap; gap:5px; }
.contract-template-meta span { padding:4px 7px; border:1px solid var(--line); border-radius:999px; color:var(--muted); font-size:7px; }
.contract-template-actions { display:flex; gap:7px; flex-wrap:wrap; justify-content:flex-end; }
.contract-storage-note .panel-head { padding-bottom:16px; }

.contract-workspace-dialog,.contract-sign-dialog,.signature-pad-dialog { padding:0; border:0; background:transparent; color:var(--text); max-width:none; max-height:none; }
.contract-workspace-dialog::backdrop,.contract-sign-dialog::backdrop,.signature-pad-dialog::backdrop { background:rgba(3,6,12,.76); backdrop-filter:blur(9px); }
.contract-workspace-shell { width:min(1480px,96vw); height:min(94dvh,980px); display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--panel); box-shadow:0 32px 90px rgba(0,0,0,.45); }
.contract-workspace-head,.contract-sign-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:15px 18px; border-bottom:1px solid var(--line); background:var(--panel); }
.contract-workspace-head h3,.contract-sign-head h3 { margin:2px 0 2px; font-size:18px; }
.contract-workspace-head p,.contract-sign-head p { margin:0; color:var(--muted); font-size:9px; }
.contract-designer-layout { min-height:0; display:grid; grid-template-columns:310px minmax(0,1fr); }
.contract-designer-sidebar { min-height:0; overflow:auto; padding:14px; border-right:1px solid var(--line); background:var(--panel-2); }
.contract-designer-pages { min-height:0; overflow:auto; display:grid; justify-items:center; align-content:start; gap:24px; padding:24px; background:color-mix(in srgb,var(--bg) 74%,#9097a4); }
.contract-workspace-actions { display:flex; justify-content:flex-end; gap:9px; padding:12px 16px; border-top:1px solid var(--line); background:var(--panel); }
.contract-designer-loading { min-height:160px; display:grid; place-items:center; align-content:center; gap:8px; color:var(--muted); text-align:center; }
.contract-designer-loading span { width:28px; height:28px; border:2px solid var(--line); border-top-color:var(--accent); border-radius:50%; animation:module-spin .8s linear infinite; }
.contract-designer-loading p { margin:0; max-width:300px; font-size:9px; line-height:1.45; }
.contract-designer-toolbox,.contract-field-list-panel,.contract-field-inspector { display:grid; gap:10px; padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--panel); }
.contract-field-list-panel,.contract-field-inspector { margin-top:12px; }
.contract-designer-toolbox h4,.contract-field-inspector h4 { margin:0; }
.contract-designer-toolbox p,.contract-field-inspector p { margin:0; color:var(--muted); font-size:9px; line-height:1.45; }
.contract-designer-toolbox label,.contract-field-inspector label { display:grid; gap:5px; }
.contract-designer-toolbox label > span,.contract-field-inspector label > span { color:var(--muted); font-size:8px; font-weight:700; }
.contract-designer-toolbox select,.contract-field-inspector select,.contract-field-inspector input { width:100%; min-height:38px; border:1px solid var(--line); border-radius:8px; background:var(--input); color:var(--text); padding:8px 9px; }
.contract-manual-field-buttons { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.contract-placement-status { display:grid; gap:4px; padding:10px; border:1px dashed color-mix(in srgb,var(--accent) 55%,var(--line)); border-radius:9px; background:color-mix(in srgb,var(--accent) 7%,transparent); }
.contract-placement-status b { font-size:9px; color:var(--accent); }
.contract-placement-status span { font-size:9px; }
.contract-placement-status button { justify-self:start; border:0; background:transparent; color:var(--muted); padding:2px 0; cursor:pointer; font-size:8px; text-decoration:underline; }
.contract-field-list { display:grid; gap:6px; }
.contract-field-list > p { margin:0; color:var(--muted); font-size:9px; }
.contract-field-list button { width:100%; min-width:0; display:grid; grid-template-columns:42px minmax(0,1fr); gap:8px; align-items:center; text-align:left; padding:8px; border:1px solid var(--line); border-radius:9px; background:var(--panel-2); color:var(--text); cursor:pointer; }
.contract-field-list button.active { border-color:var(--accent); background:color-mix(in srgb,var(--accent) 8%,var(--panel)); }
.contract-field-list button i { font-style:normal; font-size:7px; font-weight:900; color:var(--accent); }
.contract-field-list button b,.contract-field-list button small { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.contract-field-list button b { font-size:9px; }
.contract-field-list button small { margin-top:2px; color:var(--muted); font-size:7px; }
.contract-inspector-grid { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.contract-field-type-note { display:grid; gap:3px; padding:9px; border-radius:8px; background:color-mix(in srgb,var(--accent) 7%,var(--panel-2)); }
.contract-field-type-note b { font-size:9px; }
.contract-field-type-note span { color:var(--muted); font-size:8px; line-height:1.4; }

.contract-pdf-page,.contract-sign-page { position:relative; flex:none; width:min(900px,100%); overflow:hidden; background:white; box-shadow:0 12px 32px rgba(0,0,0,.2); }
.contract-pdf-page canvas,.contract-sign-page canvas { display:block; width:100%!important; height:100%!important; }
.contract-page-number,.contract-sign-page-label { position:absolute; z-index:5; top:8px; right:8px; padding:4px 7px; border-radius:6px; background:rgba(17,24,39,.76); color:#fff; font-size:7px; pointer-events:none; }
.contract-field-layer,.contract-sign-layer { position:absolute; inset:0; z-index:4; }
.contract-field-box { position:absolute; display:flex; align-items:center; gap:5px; overflow:hidden; padding:3px 5px; border:1.5px solid rgba(37,99,235,.85); background:rgba(219,234,254,.78); color:#1e3a8a; cursor:grab; user-select:none; touch-action:none; text-align:left; }
.contract-field-box.signature { border-color:#16a34a; background:rgba(220,252,231,.82); color:#14532d; }
.contract-field-box.initials { border-color:#9333ea; background:rgba(243,232,255,.82); color:#581c87; }
.contract-field-box.selected { outline:2px solid var(--accent); outline-offset:1px; }
.contract-field-box > span { flex:none; font-size:6px; font-weight:900; }
.contract-field-box > b { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:7px; }

.contract-sign-shell { width:min(1020px,96vw); height:min(96dvh,1080px); display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--panel); box-shadow:0 32px 90px rgba(0,0,0,.5); }
.contract-sign-pages { min-height:0; overflow:auto; display:grid; justify-items:center; align-content:start; gap:18px; padding:18px; background:#8d929a; }
.contract-sign-field { position:absolute; overflow:hidden; border:0; background:transparent; color:#111827; }
.contract-sign-field.auto { display:flex; align-items:flex-start; line-height:1.2; font-family:Arial,Helvetica,sans-serif; overflow:hidden; pointer-events:none; white-space:normal; }
.contract-sign-field.ink { display:grid; place-items:center; border:2px dashed #2563eb; border-radius:3px; background:rgba(239,246,255,.76); color:#1d4ed8; cursor:pointer; font-weight:800; font-size:clamp(8px,1.6vw,12px); }
.contract-sign-field.ink.initials { border-color:#9333ea; background:rgba(250,245,255,.8); color:#7e22ce; }
.contract-sign-field.ink.filled { border-style:solid; background:rgba(255,255,255,.86); }
.contract-sign-field.ink img { width:100%; height:100%; object-fit:contain; }
.contract-sign-field.initials-text span { width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-align:center; font-family:Arial,Helvetica,sans-serif; font-size:clamp(10px,2vw,18px); letter-spacing:.08em; }
.contract-sign-actions { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:70px; padding:11px 16px; border-top:1px solid var(--line); background:var(--panel); }
.contract-sign-actions > div { display:grid; gap:2px; }
.contract-sign-actions > div b { font-size:10px; }
.contract-sign-actions > div span { color:var(--muted); font-size:8px; }

.signature-pad-shell { width:min(760px,94vw); display:grid; gap:0; overflow:hidden; border:1px solid var(--line); border-radius:18px; background:var(--panel); box-shadow:0 30px 80px rgba(0,0,0,.5); }
.signature-pad-shell header { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:14px 16px; border-bottom:1px solid var(--line); }
.signature-pad-shell header h3 { margin:2px 0; }
.signature-pad-shell header p { margin:0; color:var(--muted); font-size:9px; }
#signature-pad-canvas { width:calc(100% - 28px); height:230px; margin:14px; border:1px solid var(--line); border-radius:12px; background:#fff; touch-action:none; cursor:crosshair; }
.signature-initials-wrap { margin:14px; padding:22px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.signature-initials-wrap[hidden] { display:none !important; }
.signature-initials-wrap label { display:grid; gap:8px; }
.signature-initials-wrap label span { color:var(--muted); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.signature-initials-wrap input { width:100%; min-height:86px; border:1px solid var(--line-strong); border-radius:12px; background:var(--input); color:var(--text); text-align:center; font-size:clamp(34px,8vw,62px); font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.signature-initials-wrap p { margin:10px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }
.signature-pad-shell footer { display:flex; justify-content:flex-end; gap:9px; padding:0 14px 14px; }

.foreman-workflow-card { margin:18px 0; padding:16px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line)); border-radius:16px; background:color-mix(in srgb,var(--accent) 6%,var(--panel)); }
.foreman-workflow-head { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; }
.foreman-workflow-head h3 { margin:3px 0 4px; font-size:20px; }
.foreman-workflow-head p { margin:0; color:var(--muted); font-size:11px; line-height:1.45; }
.foreman-workflow-head > span { min-width:46px; height:46px; display:grid; place-items:center; border-radius:13px; background:var(--accent); color:#fff; font-size:9px; font-weight:900; letter-spacing:.08em; }
.foreman-contract-checklist { margin-top:13px; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--panel); }
.foreman-contract-checklist summary { display:flex; align-items:center; justify-content:space-between; padding:12px; cursor:pointer; font-size:11px; font-weight:800; }
.foreman-contract-checklist > div { display:grid; gap:7px; padding:0 12px 12px; }
.foreman-contract-checklist h5 { margin:7px 0 0; color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.12em; }
.foreman-contract-check-row { display:grid; grid-template-columns:26px minmax(0,1fr); gap:8px; align-items:center; padding:8px; border-radius:9px; background:var(--panel-2); }
.foreman-contract-check-row i { width:26px; height:26px; display:grid; place-items:center; border-radius:50%; background:color-mix(in srgb,var(--amber) 14%,transparent); color:var(--amber); font-style:normal; }
.foreman-contract-check-row.done i { background:color-mix(in srgb,var(--green) 14%,transparent); color:var(--green); }
.foreman-contract-check-row b,.foreman-contract-check-row small { display:block; }
.foreman-contract-check-row b { font-size:10px; }
.foreman-contract-check-row small { margin-top:2px; color:var(--muted); font-size:8px; }
.foreman-workflow-button { width:100%; min-height:54px; margin-top:13px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; border:0; border-radius:12px; background:var(--accent); color:#fff; font-weight:900; font-size:13px; cursor:pointer; }
.foreman-workflow-button.finish { background:color-mix(in srgb,var(--green) 85%,var(--accent)); }
.foreman-workflow-button:disabled { opacity:.55; cursor:wait; }
.foreman-workflow-complete { margin-top:13px; display:grid; gap:3px; padding:11px 12px; border-radius:10px; background:color-mix(in srgb,var(--green) 10%,var(--panel-2)); }
.foreman-workflow-complete b { color:var(--green); }
.foreman-workflow-complete span { color:var(--muted); font-size:9px; }

.lead-documents-shell { display:grid; gap:14px; }
.lead-document-list { display:grid; gap:9px; }
.lead-document-card { display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:12px; align-items:center; padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--panel-2); }
.lead-document-card.signed { border-color:color-mix(in srgb,var(--green) 34%,var(--line)); }
.lead-document-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:10px; background:color-mix(in srgb,var(--accent) 10%,var(--panel)); color:var(--accent); font-weight:900; }
.lead-document-card.signed .lead-document-icon { color:var(--green); background:color-mix(in srgb,var(--green) 10%,var(--panel)); }
.lead-document-card span { color:var(--muted); font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.lead-document-card h5 { margin:3px 0; font-size:11px; }
.lead-document-card p,.lead-document-card small { margin:0; color:var(--muted); font-size:8px; line-height:1.4; }
.lead-document-actions { display:flex; gap:7px; }

html[data-office-theme="business"] .contract-workspace-shell,
html[data-office-theme="business"] .contract-sign-shell,
html[data-office-theme="business"] .signature-pad-shell,
html[data-office-theme="corporate"] .contract-workspace-shell,
html[data-office-theme="corporate"] .contract-sign-shell,
html[data-office-theme="corporate"] .signature-pad-shell { box-shadow:0 24px 70px rgba(16,24,40,.2); }
html[data-office-theme="corporate"] .settings-tabs,
html[data-office-theme="corporate"] .contract-template-card,
html[data-office-theme="corporate"] .contract-workspace-shell,
html[data-office-theme="corporate"] .contract-sign-shell { border-radius:9px; }

@media (max-width:1000px) {
  .settings-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .contract-workflow-explainer { grid-template-columns:1fr 1fr; }
  .contract-workflow-explainer > i { display:none; }
  .contract-template-card { grid-template-columns:62px minmax(0,1fr); }
  .contract-template-actions { grid-column:1/-1; justify-content:flex-start; padding-left:76px; }
  .contract-designer-layout { grid-template-columns:250px minmax(0,1fr); }
}
@media (max-width:760px) {
  .settings-tabs { grid-template-columns:1fr; border-radius:12px; }
  .settings-tabs button { grid-template-columns:1fr auto; align-items:center; }
  .settings-tabs button span { text-align:right; }
  .settings-appearance-body,.settings-export-body { padding:13px; }
  .settings-load-panel { align-items:flex-start; flex-direction:column; }
  .settings-load-panel button { width:100%; }
  .contract-workflow-explainer { grid-template-columns:1fr; padding:13px; }
  .contract-template-list { padding:13px; }
  .contract-template-card { grid-template-columns:52px minmax(0,1fr); gap:10px; }
  .contract-template-actions { padding-left:0; }
  .contract-template-actions button { flex:1; }
  .contract-designer-layout { grid-template-columns:1fr; }
  .contract-designer-sidebar { max-height:38dvh; border-right:0; border-bottom:1px solid var(--line); }
  .contract-designer-pages { padding:10px; gap:14px; }
  .contract-workspace-shell { width:100vw; height:100dvh; border-radius:0; border-left:0; border-right:0; }
  .contract-workspace-actions { padding-bottom:max(12px,env(safe-area-inset-bottom)); }
  .contract-sign-shell { width:100vw; height:100dvh; border-radius:0; border-left:0; border-right:0; }
  .contract-sign-head { padding:11px 12px; }
  .contract-sign-pages { padding:8px; gap:10px; }
  .contract-sign-actions { align-items:stretch; flex-direction:column; padding:9px 10px max(10px,env(safe-area-inset-bottom)); }
  .contract-sign-actions button { width:100%; min-height:50px; }
  .contract-sign-field.ink { border-width:1.5px; }
  .signature-pad-shell { width:100vw; border-radius:16px 16px 0 0; }
  #signature-pad-canvas { height:210px; }
  .lead-document-card { grid-template-columns:36px minmax(0,1fr); }
  .lead-document-icon { width:36px; height:36px; }
  .lead-document-actions { grid-column:1/-1; }
  .lead-document-actions button { flex:1; }
}

/* v4.13.4 — completed Storage history + Foreman start/sign window */
.completed-storage-badge {
  display:inline-flex;
  align-items:center;
  margin-left:10px;
  padding:5px 9px;
  border:1px solid color-mix(in srgb,var(--orange) 42%,var(--line));
  border-radius:999px;
  background:color-mix(in srgb,var(--orange) 10%,var(--panel));
  color:var(--orange);
  font:700 9px "DM Mono",monospace;
  font-style:normal;
  letter-spacing:.08em;
  text-transform:uppercase;
  vertical-align:middle;
}
.lead-history-warning {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:12px 0;
  padding:13px 16px;
  border:1px solid color-mix(in srgb,var(--orange) 36%,var(--line));
  border-radius:16px;
  background:color-mix(in srgb,var(--orange) 7%,var(--panel));
}
.lead-history-warning div { min-width:0; }
.lead-history-warning b { display:block; margin-bottom:4px; }
.lead-history-warning span { display:block; color:var(--muted); font-size:12px; line-height:1.5; }
.lead-history-warning strong { flex:0 0 auto; color:var(--orange); font:700 9px "DM Mono",monospace; letter-spacing:.12em; }
.lead-foreman-anytime {
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-soft);
  cursor:pointer;
}
.lead-foreman-anytime input { width:18px; height:18px; margin:1px 0 0; accent-color:var(--accent); }
.lead-foreman-anytime span { display:block; min-width:0; }
.lead-foreman-anytime b { display:block; margin-bottom:4px; }
.lead-foreman-anytime small { display:block; color:var(--muted); font-size:11px; line-height:1.45; }
.foreman-start-window.detail {
  display:grid;
  gap:5px;
  margin:14px 0;
  padding:13px 14px;
  border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));
  border-radius:14px;
  background:color-mix(in srgb,var(--accent) 7%,var(--panel));
}
.foreman-start-window.detail b { font-size:13px; }
.foreman-start-window.detail span { color:var(--muted); font-size:11px; line-height:1.45; }
.foreman-start-window.detail.expired,
.foreman-workflow-expired {
  border-color:color-mix(in srgb,var(--red) 45%,var(--line));
  background:color-mix(in srgb,var(--red) 8%,var(--panel));
}
.foreman-start-window.detail.expired b,
.foreman-workflow-expired b { color:var(--red); }
.foreman-start-window.detail.anytime {
  border-color:color-mix(in srgb,var(--green) 38%,var(--line));
  background:color-mix(in srgb,var(--green) 7%,var(--panel));
}
.foreman-start-window.detail.anytime b { color:var(--green); }
.foreman-workflow-expired {
  display:grid;
  gap:5px;
  margin-top:14px;
  padding:14px;
  border:1px solid color-mix(in srgb,var(--red) 45%,var(--line));
  border-radius:14px;
}
.foreman-workflow-expired span { color:var(--muted); font-size:11px; line-height:1.45; }
@media (max-width:680px) {
  .completed-storage-badge { margin:7px 0 0; width:max-content; }
  .lead-history-warning { align-items:flex-start; }
}

.storage-tracking-mini {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(86px, 1fr));
  gap: 10px;
  margin: 14px 0 0;
}
.storage-tracking-mini span,
.storage-qr-summary article,
.storage-qr-batches article,
.storage-item-card,
.storage-item-note-banner,
.storage-manager-missing {
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background: rgba(7,16,30,.45);
}
.storage-tracking-mini span {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
}
.storage-tracking-mini small,
.storage-item-meta small,
.storage-qr-summary article span,
.storage-qr-summary article small { color: var(--muted); }
.storage-item-list { display: grid; gap: 12px; margin-top: 16px; }
.storage-item-card { padding: 14px; display: grid; gap: 10px; }
.storage-item-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.storage-item-head div { display:grid; gap:4px; }
.storage-item-head small { color: var(--muted); }
.storage-item-meta { display:grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap:10px; }
.storage-item-meta span { display:grid; gap:4px; }
.storage-item-note { margin:0; color: var(--muted); }
.storage-item-card footer { display:flex; justify-content:flex-end; }
.storage-item-note-banner { padding: 10px 12px; color: var(--muted); }
.storage-qr-summary { display:grid; grid-template-columns: repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin-bottom:18px; }
.storage-qr-summary article, .storage-qr-batches article { display:grid; gap:4px; padding:14px; }
.storage-qr-batches { display:grid; gap:10px; margin-top:16px; }
.storage-modal-items { margin-top: 22px; display:grid; gap:14px; }
.foreman-storage-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.foreman-storage-summary { margin-top:14px; }
.storage-manager-missing { display:grid; gap:8px; padding:14px; margin:14px 0; }
.storage-manager-missing label { display:flex; gap:10px; align-items:flex-start; color: var(--text); }
.storage-manager-confirm-form { display:grid; gap:14px; }
.qr-scan-dialog {
  width: min(520px, calc(100vw - 24px));
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px;
  padding: 0;
  background: linear-gradient(180deg, rgba(8,18,33,.98), rgba(7,16,30,.98));
  color: var(--text);
}
.qr-scan-dialog::backdrop { background: rgba(2,6,14,.72); }
.qr-scan-shell { display:grid; gap:16px; padding:18px; }
.qr-scan-shell header { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.qr-video-wrap { position:relative; border-radius:20px; overflow:hidden; background:#050c18; aspect-ratio:3/4; }
.qr-video-wrap video { width:100%; height:100%; object-fit:cover; display:block; }
.qr-scan-overlay { position:absolute; inset:12%; border:2px solid rgba(255,255,255,.7); border-radius:24px; box-shadow:0 0 0 9999px rgba(0,0,0,.18) inset; }
.qr-status { color: var(--muted); font-size: 13px; border:1px solid transparent; border-radius:14px; padding:10px 12px; background:rgba(255,255,255,.025); }
.qr-status.working { color: var(--text); border-color: rgba(111,205,255,.22); }
.qr-status.success { color:#a9efc7; border-color:rgba(87,214,142,.38); background:rgba(87,214,142,.10); }
.qr-status.error { color:#ffb5b5; border-color:rgba(255,105,105,.38); background:rgba(255,105,105,.10); }
.qr-scan-shell footer { display:flex; gap:10px; justify-content:flex-end; flex-wrap:wrap; }

.qr-live-result {
  min-height: 44px;
  padding: 11px 13px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 14px;
  background: rgba(255,255,255,.04);
  color: var(--muted);
  font-weight: 700;
  line-height: 1.35;
}
.qr-live-result.working { color: var(--text); }
.qr-live-result.success { border-color: rgba(87,214,142,.38); background: rgba(87,214,142,.10); color: #a9efc7; }
.qr-live-result.error { border-color: rgba(255,105,105,.38); background: rgba(255,105,105,.10); color: #ffb5b5; }
.storage-qr-batches article { grid-template-columns: minmax(0,1fr) auto; align-items:center; gap:14px; }
.storage-qr-batches article > div { min-width:0; display:grid; gap:4px; }
.storage-admin-override { margin-top: 4px; }
@media (max-width: 700px) {
  .storage-qr-batches article { grid-template-columns: 1fr; }
  .storage-qr-batches article button { width:100%; }
  .foreman-storage-actions > button { flex:1 1 140px; }
  .storage-item-meta { grid-template-columns:1fr; }
}

/* v4.14.1 — isolated Storage QR loading / recovery */
.settings-error-inline {
  margin-top: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(255, 105, 105, .32);
  border-radius: 14px;
  background: rgba(120, 26, 26, .14);
  display: grid;
  gap: 4px;
}
.settings-error-inline p { margin: 0; color: var(--muted); }
.settings-error-inline.warning {
  border-color: rgba(255, 191, 72, .28);
  background: rgba(120, 79, 13, .13);
  margin-bottom: 14px;
}

/* v4.14.3 — Storage QR layout + mobile scan refresh polish */
.storage-qr-settings-panel .panel-head {
  align-items: flex-start;
  gap: 20px;
}
.storage-qr-settings-panel .panel-head > div:first-child {
  min-width: 0;
}
.storage-qr-settings-panel .panel-head p {
  max-width: 760px;
}
.storage-qr-settings-panel .storage-qr-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 18px;
}
.storage-qr-settings-panel .storage-qr-summary article {
  min-height: 94px;
  padding: 16px 18px;
  justify-content: center;
}
.storage-qr-settings-panel .storage-qr-summary strong {
  font-size: clamp(19px, 2vw, 25px);
  letter-spacing: .01em;
}
.storage-qr-print-form {
  display: grid;
  grid-template-columns: minmax(250px, 360px) minmax(320px, 1fr);
  gap: 14px 18px;
  align-items: stretch;
  margin-top: 18px;
}
.storage-qr-print-form > .form-grid {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
}
.storage-qr-print-form > .storage-settings-note {
  grid-column: 2;
  grid-row: 1 / span 2;
  margin: 0;
  min-height: 100%;
  display: flex;
  align-items: center;
}
.storage-qr-print-form > .primary-button {
  grid-column: 1;
  grid-row: 2;
  width: 100%;
  min-height: 46px;
}
.storage-qr-batches article {
  padding: 16px 18px;
}
.storage-qr-batches article b {
  font-size: 15px;
}
.storage-qr-batches article small,
.storage-qr-batches article span {
  overflow-wrap: anywhere;
}
@media (max-width: 820px) {
  .storage-qr-settings-panel .storage-qr-summary {
    grid-template-columns: 1fr;
  }
  .storage-qr-print-form {
    grid-template-columns: 1fr;
  }
  .storage-qr-print-form > .form-grid,
  .storage-qr-print-form > .storage-settings-note,
  .storage-qr-print-form > .primary-button {
    grid-column: 1;
    grid-row: auto;
  }
  .storage-qr-settings-panel .panel-head > button {
    flex: 0 0 auto;
  }
}
@media (max-width: 520px) {
  .storage-qr-settings-panel .panel-head {
    align-items: stretch;
  }
  .storage-qr-settings-panel .panel-head > button {
    width: 100%;
  }
  .storage-item-card {
    padding: 12px;
    border-radius: 14px;
  }
  .storage-item-head {
    gap: 8px;
  }
  .storage-item-head .storage-status-pill {
    flex: 0 0 auto;
    max-width: 48%;
    text-align: center;
  }
  .storage-tracking-mini {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .storage-tracking-mini span {
    padding: 9px 10px;
  }
  .foreman-storage-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .foreman-storage-actions > button {
    width: 100%;
    min-width: 0;
  }
}
.qr-live-items {
  display: grid;
  gap: 8px;
}
.qr-live-items[hidden] { display: none; }
.qr-live-items > div {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  padding: 9px 11px;
  border: 1px solid rgba(87,214,142,.22);
  border-radius: 12px;
  background: rgba(87,214,142,.07);
}
.qr-live-items > div > span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(87,214,142,.14);
  color: #a9efc7;
  font-weight: 800;
}
.qr-live-items > div > div { min-width: 0; display: grid; gap: 2px; }
.qr-live-items b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.qr-live-items small { color: var(--muted); }

/* v4.14.4 — QR spacing, storage discrepancy overrides, Settings accounts */
.settings-consolidated .settings-tabs {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}
.storage-qr-settings-panel > .storage-qr-summary {
  margin: 18px 20px 0;
}
.storage-qr-settings-panel > .storage-qr-print-form {
  margin: 18px 20px 20px;
}
.storage-qr-history-panel .storage-qr-batches {
  margin-top: 0;
  padding: 0 20px 20px;
}
.storage-qr-history-panel .settings-empty {
  margin: 0 20px 20px;
}
.settings-accounts-shell {
  display: grid;
  gap: 14px;
}
.settings-accounts-shell .admin-users-panel {
  padding: 0;
}
.settings-accounts-shell .admin-user-list {
  margin: 0;
  padding: 16px 20px 20px;
}
.storage-manager-missing-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 4px;
}
.storage-manager-missing-head .quiet-button {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 6px 10px;
}
.storage-confirm-error {
  padding: 11px 13px;
  border: 1px solid rgba(255, 105, 105, .34);
  border-radius: 12px;
  background: rgba(120, 26, 26, .16);
  color: #ffb3b3;
  font-size: 12px;
  line-height: 1.45;
}
.storage-expected-overrides {
  display: grid;
  gap: 10px;
  margin-top: 16px;
}
.storage-expected-overrides > .micro-label {
  margin-bottom: 2px;
}
.storage-item-card.missing-expected {
  border-color: rgba(255, 105, 105, .22);
}
@media (max-width: 820px) {
  .storage-qr-settings-panel > .storage-qr-summary {
    margin-left: 14px;
    margin-right: 14px;
  }
  .storage-qr-settings-panel > .storage-qr-print-form {
    margin-left: 14px;
    margin-right: 14px;
    margin-bottom: 14px;
  }
  .storage-qr-history-panel .storage-qr-batches {
    padding: 0 14px 14px;
  }
  .storage-qr-history-panel .settings-empty {
    margin: 0 14px 14px;
  }
  .settings-accounts-shell .admin-user-list {
    padding: 13px;
  }
}
@media (max-width: 520px) {
  .storage-manager-missing-head {
    align-items: stretch;
    flex-direction: column;
  }
  .storage-manager-missing-head .quiet-button {
    width: 100%;
  }
}

/* v4.14.5 — storage billing source-of-truth + mobile discrepancy polish */
.storage-qr-settings-panel > .storage-qr-summary {
  margin-left: 30px;
  margin-right: 30px;
}
.storage-qr-settings-panel > .storage-qr-print-form {
  margin-left: 30px;
  margin-right: 30px;
  margin-bottom: 26px;
}
.storage-qr-history-panel .storage-qr-batches {
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 26px;
}
.storage-qr-history-panel .settings-empty {
  margin-left: 30px;
  margin-right: 30px;
  margin-bottom: 26px;
}

.storage-manager-missing {
  gap: 12px;
  padding: 14px;
}
.storage-manager-missing-head {
  align-items: flex-start;
  margin-bottom: 0;
}
.storage-manager-missing-head > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}
.storage-manager-missing-head > div small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.4;
}
.storage-manager-missing-head .storage-mark-all-button {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 12px;
  white-space: nowrap;
}
.storage-missing-options {
  display: grid;
  gap: 8px;
}
.storage-manager-missing label.storage-missing-option {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  padding: 10px 11px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
  cursor: pointer;
}
.storage-manager-missing label.storage-missing-option:hover {
  border-color: var(--line-bright);
  background: rgba(94,229,255,.035);
}
.storage-manager-missing label.storage-missing-option input[type="checkbox"] {
  width: 18px;
  height: 18px;
  min-height: 0;
  margin: 1px 0 0;
  padding: 0;
  accent-color: var(--cyan);
  cursor: pointer;
}
.storage-manager-missing label.storage-missing-option > span {
  min-width: 0;
  display: grid;
  gap: 2px;
}
.storage-manager-missing label.storage-missing-option b {
  font-size: 12px;
  line-height: 1.35;
}
.storage-manager-missing label.storage-missing-option small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.lead-storage-billing-summary,
.lead-storage-billing-editor,
.storage-manager-billing-source {
  border: 1px solid rgba(94,229,255,.18);
  background: rgba(94,229,255,.045);
  border-radius: 16px;
}
.lead-storage-billing-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 16px;
  margin-bottom: 16px;
}
.lead-storage-billing-summary > div { min-width: 0; display: grid; gap: 4px; }
.lead-storage-billing-summary h5 { margin: 0; font-size: 18px; }
.lead-storage-billing-summary p { margin: 0; color: var(--muted); font-size: 11px; }
.storage-billing-required {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}
.storage-billing-required.ready {
  color: #a9efc7;
  border: 1px solid rgba(87,214,142,.28);
  background: rgba(87,214,142,.08);
}
.storage-billing-required.missing {
  color: #ffd88a;
  border: 1px solid rgba(255,191,72,.28);
  background: rgba(255,191,72,.08);
}
.lead-storage-billing-editor {
  display: grid;
  gap: 14px;
  padding: 16px;
  margin-bottom: 18px;
}
.lead-storage-billing-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}
.lead-storage-billing-head > div { min-width: 0; }
.lead-storage-billing-head h5 { margin: 4px 0 4px; font-size: 16px; }
.lead-storage-billing-head p { margin: 0; max-width: 760px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.lead-storage-billing-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.lead-storage-billing-fields > label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 10px;
}
.lead-storage-billing-fields > label > span {
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.storage-billing-preview {
  display: grid;
  align-content: center;
  gap: 3px;
  padding: 11px 13px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: var(--panel-soft);
}
.storage-billing-preview span { color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.storage-billing-preview b { font-size: 14px; }
.storage-billing-preview small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.storage-manager-billing-source {
  display: grid;
  gap: 7px;
  padding: 13px 14px;
  margin: 14px 0;
}
.storage-manager-billing-source > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}
.storage-manager-billing-source > div span,
.storage-manager-billing-source small {
  color: var(--muted);
  font-size: 10px;
  line-height: 1.45;
}

@media (max-width: 820px) {
  .storage-qr-settings-panel > .storage-qr-summary {
    margin-left: 18px;
    margin-right: 18px;
  }
  .storage-qr-settings-panel > .storage-qr-print-form {
    margin-left: 18px;
    margin-right: 18px;
    margin-bottom: 18px;
  }
  .storage-qr-history-panel .storage-qr-batches {
    padding-left: 18px;
    padding-right: 18px;
    padding-bottom: 18px;
  }
  .storage-qr-history-panel .settings-empty {
    margin-left: 18px;
    margin-right: 18px;
    margin-bottom: 18px;
  }
  .lead-storage-billing-fields { grid-template-columns: 1fr 1fr; }
  .storage-billing-preview { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .storage-manager-missing-head {
    gap: 9px;
  }
  .storage-manager-missing-head .storage-mark-all-button {
    width: 100%;
  }
  .storage-manager-missing label.storage-missing-option {
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 9px;
  }
  .lead-storage-billing-summary,
  .lead-storage-billing-head,
  .storage-manager-billing-source > div {
    align-items: stretch;
    flex-direction: column;
  }
  .lead-storage-billing-fields { grid-template-columns: 1fr; }
  .storage-billing-preview { grid-column: auto; }
  .storage-billing-required { align-self: flex-start; }
}
.lead-storage-billing-fields [hidden] { display: none !important; }

/* v4.15.0 — Customer Inventory Request lead details */
.customer-move-details { margin-top: 18px; }
.customer-move-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:12px 0; }
.customer-move-detail-grid > div { border:1px solid var(--line); border-radius:14px; padding:12px 14px; background:var(--panel-soft); display:grid; gap:4px; }
.customer-move-detail-grid span,.customer-move-note span { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.customer-move-note { margin-top:10px; border-left:3px solid var(--accent); padding:9px 12px; background:var(--panel-soft); border-radius:0 12px 12px 0; }
.customer-move-note p { margin:4px 0 0; white-space:pre-wrap; line-height:1.55; }
.customer-move-edit { grid-column:1/-1; margin:8px 0 4px; padding:16px; border:1px solid var(--line); border-radius:16px; background:var(--panel-soft); }
@media (max-width:720px) { .customer-move-detail-grid { grid-template-columns:1fr; } .customer-move-edit { padding:13px; } }

/* =========================================================
   v4.15.1 — compact office workspace + printable lead emails
   ========================================================= */
body.lead-detail-active .topbar-left > div:last-child { display:none; }
body.lead-detail-active .topbar-actions { flex:1; justify-content:flex-end; }
body.lead-detail-active .global-search { width:min(560px,50vw); }

.lead-save-actions { display:flex; align-items:center; gap:8px; padding-left:10px; margin-left:2px; border-left:1px solid var(--line); }
.lead-save-actions > button { min-height:40px; }
.lead-detail-hero { gap:14px; padding:15px 17px; border-radius:19px; }
.lead-detail-ident { gap:12px; }
.lead-detail-ident h3 { margin-top:3px; font-size:clamp(21px,2.1vw,31px); }
.lead-detail-ident p { font-size:11px; }
.lead-detail-actions { gap:8px; }
.lead-detail-actions .secondary-button,
.lead-detail-actions .danger-button,
.lead-detail-actions .primary-button { min-height:40px; padding-inline:13px; }
.lead-save-top { min-width:118px; }

.lead-summary-banner { gap:13px; margin:10px 0; padding:12px 14px; border-radius:17px; }
.lead-summary-content { gap:9px; }
.lead-summary-details { gap:9px 16px; }
.lead-summary-details b { margin-top:3px; }
.lead-summary-route p { margin-top:3px; line-height:1.35; }
.lead-summary-side { align-items:center; gap:8px; }
.lead-summary-financials { align-self:auto; gap:8px; }
.lead-summary-financials > div { min-width:118px; padding:9px 11px; border-radius:13px; }
.lead-summary-financials strong { margin-top:4px; font-size:17px; }
.lead-summary-booking { min-width:108px; min-height:42px; height:42px; padding:0 13px; align-self:center; }
.lead-window-nav { margin-bottom:10px; padding:6px; }
.lead-window-nav button { min-height:37px; padding-inline:12px; }

.storage-overview-grid > .panel { min-width:0; }
.storage-overview-grid .storage-mini-list { padding:0 18px 8px; }
.storage-overview-grid .storage-mini-list article { padding:10px 0; }
.storage-overview-grid .storage-mini-list .primary-button { flex:0 0 auto; min-height:40px; margin-left:10px; padding-inline:14px; }
.storage-overview-forecast .storage-week-forecast { padding:0 16px 16px; }
.storage-overview-grid .panel-head { min-height:64px; padding:14px 18px; }
.storage-overview-grid .panel-head .secondary-button { min-height:40px; padding-inline:13px; }

@media (min-width:901px) {
  .workspace { padding-left:28px; padding-right:28px; padding-bottom:44px; }
  .topbar { top:8px; min-height:68px; margin:8px auto 12px; padding:10px 13px; gap:18px; }
  .topbar h2 { margin-top:4px; font-size:23px; }
  .topbar .global-search input,
  .topbar .secondary-button,
  .topbar .primary-button { min-height:40px; }
  .opened-leads-bar { padding-top:5px; padding-bottom:11px; }
  .opened-leads-label { min-height:26px; padding-bottom:4px; }
  .opened-lead-pill { min-height:30px; }
}

@media (min-width:681px) {
  .email-compose-shell { width:min(1240px,calc(100vw - 24px)); height:min(920px,calc(100dvh - 24px)); margin:12px auto; }
  .email-compose-shell .email-workspace-head { min-height:58px; padding:9px 16px; }
  .email-compose-shell .email-workspace-head h3 { margin-top:3px; font-size:19px; }
  .email-compose-shell .email-workspace-head p { margin-top:2px; }
  .email-compose-shell .email-workspace-body { display:flex; flex-direction:column; overflow:hidden; padding:11px 16px; }
  .email-compose-shell .email-compose-fields { flex:0 0 auto; gap:7px 9px; margin-bottom:8px; }
  .email-compose-shell .email-compose-fields label { gap:4px; }
  .email-compose-shell .email-compose-fields input,
  .email-compose-shell .email-compose-fields select { min-height:39px; padding:7px 11px; border-radius:9px; }
  .email-compose-shell .email-more-recipients summary { padding:7px 10px; }
  .email-compose-shell .email-more-recipients > div { padding:0 9px 9px; }
  .email-compose-shell .email-editor-commandbar.compose { flex:0 0 auto; min-height:40px; padding:5px 7px; }
  .email-compose-shell .email-compose-editor { flex:1 1 auto; min-height:260px; }
  .email-compose-shell .email-design-frame.compose { height:100%; min-height:100%; }
  .email-compose-shell .email-workspace-actions { min-height:60px; padding:9px 16px; }
  .email-compose-shell .email-workspace-actions > button { min-height:40px; }
}

@media (max-width:680px) {
  body.lead-detail-active .global-search { width:100%; }
  .lead-save-actions { flex:1; padding-left:0; margin-left:0; border-left:0; }
  .lead-save-actions > button { flex:1; }
  .lead-summary-booking { height:auto; min-height:42px; }
  .storage-overview-grid .storage-mini-list { padding-inline:14px; }
  .storage-overview-forecast .storage-week-forecast { padding:0 12px 12px; }
  .email-workspace-actions { flex-wrap:wrap; }
}

/* =========================================================
   v4.16.0 — configurable automatic Driver payroll
   ========================================================= */
.payroll-rule-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.payroll-rule-card {
  min-width:0;
  border:1px solid var(--line);
  border-radius:17px;
  padding:15px;
  background:var(--panel-soft);
  display:grid;
  gap:14px;
}
.payroll-rule-card > header { display:flex; align-items:flex-start; gap:11px; }
.payroll-rule-card h4 { margin:0 0 4px; font-size:15px; }
.payroll-rule-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.payroll-rule-switch { position:relative; flex:0 0 auto; width:42px; height:24px; margin-top:1px; cursor:pointer; }
.payroll-rule-switch input { position:absolute; opacity:0; pointer-events:none; }
.payroll-rule-switch span { position:absolute; inset:0; border:1px solid var(--line); border-radius:999px; background:var(--panel); transition:.16s ease; }
.payroll-rule-switch span::after { content:""; position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:var(--muted); transition:.16s ease; }
.payroll-rule-switch input:checked + span { background:color-mix(in srgb,var(--accent) 20%,var(--panel)); border-color:color-mix(in srgb,var(--accent) 55%,var(--line)); }
.payroll-rule-switch input:checked + span::after { left:21px; background:var(--accent); }
.payroll-rule-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
.payroll-rule-fields label { display:grid; gap:5px; min-width:0; }
.payroll-rule-fields label > span { color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.payroll-rule-fields input { width:100%; min-width:0; }
.payroll-material-settings-head,
.payroll-material-settings-row {
  display:grid;
  grid-template-columns:minmax(150px,1.35fr) minmax(120px,.75fr) minmax(180px,1.25fr) minmax(130px,.85fr) 38px;
  gap:9px;
  align-items:center;
}
.payroll-material-settings-head { padding:9px 4px 7px; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.payroll-material-settings-row { padding:9px 0; border-top:1px solid var(--line); }
.payroll-material-settings-row input,
.payroll-material-settings-row select { width:100%; min-width:0; }
.payroll-material-settings-row .icon-button { width:36px; height:36px; }
.payroll-settings-actions { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.payroll-settings-actions > div:first-child { max-width:760px; }
.payroll-settings-actions > div:first-child p { margin:4px 0 0; color:var(--muted); line-height:1.5; }
.payroll-settings-actions > div:last-child { display:flex; align-items:center; gap:9px; flex:0 0 auto; }
.hourly-job-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:8px 0 14px; }
.hourly-job-grid label { display:grid; gap:6px; }
.hourly-job-grid label > span { color:var(--muted); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.lead-payroll-auto-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:10px 0 14px; }
.lead-payroll-auto-summary > div { min-width:0; border:1px solid var(--line); border-radius:14px; padding:11px 12px; background:var(--panel-soft); display:grid; gap:4px; }
.lead-payroll-auto-summary > div span { color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.lead-payroll-auto-summary > div strong { font-size:20px; }
.lead-payroll-auto-summary.hourly { grid-template-columns:repeat(3,minmax(0,1fr)); }
.payroll-breakdown-list { display:grid; gap:8px; margin:11px 0 14px; }
.payroll-breakdown-list article { display:flex; align-items:center; justify-content:space-between; gap:16px; border:1px solid var(--line); border-radius:13px; padding:10px 12px; background:var(--panel-soft); }
.payroll-breakdown-list article > div { min-width:0; display:grid; gap:3px; }
.payroll-breakdown-list b { font-size:13px; }
.payroll-breakdown-list small { color:var(--muted); line-height:1.4; overflow-wrap:anywhere; }
.payroll-breakdown-list strong { flex:0 0 auto; }
.driver-payroll-table .muted { margin-top:3px; font-size:10px; line-height:1.3; }

@media (max-width:900px) {
  .payroll-rule-grid { grid-template-columns:1fr; }
  .payroll-material-settings-head { display:none; }
  .payroll-material-settings-row { grid-template-columns:1fr 1fr; padding:12px 0; }
  .payroll-material-settings-row select { grid-column:1 / -1; }
  .payroll-material-settings-row .icon-button { justify-self:end; }
  .payroll-settings-actions { align-items:stretch; flex-direction:column; }
  .payroll-settings-actions > div:last-child { justify-content:flex-end; }
}
@media (max-width:680px) {
  .hourly-job-grid,
  .lead-payroll-auto-summary,
  .lead-payroll-auto-summary.hourly,
  .payroll-rule-fields { grid-template-columns:1fr; }
  .payroll-material-settings-row { grid-template-columns:1fr; }
  .payroll-material-settings-row select { grid-column:auto; }
  .payroll-material-settings-row .icon-button { justify-self:start; }
  .payroll-settings-actions > div:last-child { flex-direction:column; align-items:stretch; }
  .payroll-breakdown-list article { align-items:flex-start; }
}

/* =========================================================
   v4.16.2 — Office layout, modal, related-job and PDF polish
   ========================================================= */
@keyframes mm-spin { to { transform:rotate(360deg); } }
.lead-loading > span { animation:mm-spin .78s linear infinite !important; transform-origin:center; }

html.dialog-open, body.dialog-open { overflow:hidden !important; overscroll-behavior:none; }
dialog[open] { overscroll-behavior:contain; }
.modal-body,.file-preview-body,.contract-designer-pages,.contract-sign-pages,.foreman-job-body { overscroll-behavior:contain; }

/* Shared field helpers keep controls aligned even when one field has helper copy. */
.field { display:grid; grid-template-rows:auto auto auto; align-content:start; gap:6px; min-width:0; }
.field > .field-label { display:block; min-height:16px; color:var(--text-soft); font-size:11px; line-height:16px; }
.field > input,.field > select,.field > textarea { width:100%; min-width:0; }
.field > small { display:block; min-height:0; margin:0; color:var(--muted); font-size:9px; line-height:1.35; }
.form-grid { align-items:start; }

/* Lead header: one efficient information card. */
body.lead-detail-active .topbar-left > div { display:none !important; }
body.lead-detail-active .topbar-left { flex:0 0 auto; min-width:0; }
body.lead-detail-active .topbar-actions { width:100%; flex:1 1 auto; }
body.lead-detail-active .global-search { margin-left:auto; }
.lead-detail-hero { display:block; padding:16px 18px; overflow:visible; }
.lead-detail-hero.booked { border-color:color-mix(in srgb,var(--green) 30%,var(--line)); }
.lead-detail-hero-head { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.lead-detail-overview { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:stretch; margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
.lead-overview-main { min-width:0; display:grid; gap:12px; }
.lead-overview-facts { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px 18px; }
.lead-overview-facts > div { min-width:0; }
.lead-overview-facts span,.lead-overview-route span,.lead-summary-financials span { display:block; color:var(--muted); font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.lead-overview-facts b { display:block; margin-top:4px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; line-height:1.35; }
.lead-overview-routes { display:grid; gap:7px; }
.lead-overview-route { display:grid; grid-template-columns:76px minmax(0,1fr); gap:12px; align-items:start; padding:8px 10px; border:1px solid var(--line); border-radius:11px; background:var(--panel-soft); }
.lead-overview-route span { padding-top:2px; color:var(--accent); }
.lead-overview-route b { min-width:0; font-size:12px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.lead-overview-route.empty b { color:var(--muted); font-weight:500; }
.lead-summary-side { display:flex; align-items:stretch; gap:9px; min-width:360px; }
.lead-summary-financials { align-self:stretch; }
.lead-summary-financials > div { min-width:120px; padding:10px 12px; }
.lead-summary-financials strong { font-size:18px; }
.lead-summary-booking { min-width:112px; height:auto; min-height:48px; border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line)); border-radius:13px; box-shadow:0 7px 18px color-mix(in srgb,var(--accent) 13%,transparent); transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease; }
.lead-summary-booking.open { background:var(--accent); color:#fff; }
.lead-summary-booking.booked { background:color-mix(in srgb,var(--green) 10%,var(--panel)); color:var(--green); border-color:color-mix(in srgb,var(--green) 45%,var(--line)); box-shadow:0 7px 18px color-mix(in srgb,var(--green) 10%,transparent); }
.lead-summary-booking:hover { transform:translateY(-1px); box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 18%,transparent); }
.lead-summary-booking.booked:hover { color:var(--red); border-color:color-mix(in srgb,var(--red) 45%,var(--line)); background:color-mix(in srgb,var(--red) 7%,var(--panel)); }

/* Keep every Lead section on one desktop row. Horizontal scroll takes over before wrapping. */
.lead-window-nav { flex-wrap:nowrap !important; overflow-x:auto !important; overflow-y:hidden; gap:4px; padding:6px 7px; }
.lead-window-nav button { flex:1 0 auto; min-width:max-content; min-height:38px; padding:0 10px; font-size:12px; }
@media (min-width:1180px) { .lead-window-nav button { flex:1 1 auto; min-width:0; padding-inline:7px; font-size:11.5px; } }

/* Buttons should feel intentional across light and dark themes. */
.primary-button,.secondary-button,.danger-button,.icon-button { transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease,color .15s ease; }
.primary-button:not(:disabled) { box-shadow:0 7px 18px color-mix(in srgb,var(--accent) 18%,transparent); }
.secondary-button:not(:disabled),.icon-button:not(:disabled) { box-shadow:0 3px 9px rgba(15,23,42,.055); }
.danger-button:not(:disabled) { box-shadow:0 4px 11px rgba(190,40,40,.08); }
.primary-button:not(:disabled):hover,.secondary-button:not(:disabled):hover,.danger-button:not(:disabled):hover,.icon-button:not(:disabled):hover { transform:translateY(-1px); }
.primary-button:not(:disabled):active,.secondary-button:not(:disabled):active,.danger-button:not(:disabled):active,.icon-button:not(:disabled):active { transform:translateY(0); box-shadow:none; }

/* Opened Leads is an obvious saved-work tray instead of tiny utility copy. */
.opened-leads-bar { margin:3px 0 10px; padding:8px 10px 10px; border:1px solid color-mix(in srgb,var(--accent) 15%,var(--line)); border-radius:14px; background:color-mix(in srgb,var(--accent) 3%,var(--panel)); box-shadow:0 7px 20px rgba(15,23,42,.055); }
.opened-leads-label { min-height:31px; padding:0 2px 7px; }
.opened-leads-label b { font-size:12px; }
.opened-leads-label span { font-size:9px; }
.opened-leads-toggle { width:38px; min-height:29px; border-radius:9px; box-shadow:0 3px 9px rgba(15,23,42,.07); }
.opened-lead-pill { box-shadow:0 3px 8px rgba(15,23,42,.04); }

/* Link-existing Lead search. */
.related-link-search { display:grid; gap:9px; margin-bottom:14px; }
.related-search-results { display:grid; gap:6px; max-height:300px; overflow:auto; padding:2px; }
.related-search-help { padding:14px; border:1px dashed var(--line); border-radius:11px; color:var(--muted); text-align:center; font-size:11px; }
.related-search-help.loading::before { content:""; display:inline-block; width:11px; height:11px; margin-right:7px; border:2px solid var(--line); border-top-color:var(--accent); border-radius:50%; animation:mm-spin .7s linear infinite; vertical-align:-2px; }
.related-search-help.error { color:var(--red); }
.related-search-result { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border:1px solid var(--line); border-radius:11px; background:var(--input-bg); color:var(--text); text-align:left; cursor:pointer; }
.related-search-result span { min-width:0; display:grid; gap:3px; }
.related-search-result b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.related-search-result small { color:var(--muted); }
.related-search-result i { color:var(--accent); font-style:normal; font-size:10px; white-space:nowrap; }
.related-search-result:hover,.related-search-result.selected { border-color:color-mix(in srgb,var(--accent) 45%,var(--line)); background:color-mix(in srgb,var(--accent) 7%,var(--input-bg)); }
.related-selected-job { display:grid; gap:3px; padding:10px 12px; border:1px solid color-mix(in srgb,var(--green) 40%,var(--line)); border-radius:11px; background:color-mix(in srgb,var(--green) 7%,var(--panel)); }
.related-selected-job span { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.07em; }

/* Light-mode Storage confirmation and tracking should stay light/readable. */
html[data-office-theme="business"] .storage-tracking-mini span,
html[data-office-theme="business"] .storage-item-card,
html[data-office-theme="business"] .storage-item-note-banner,
html[data-office-theme="business"] .storage-manager-missing,
html[data-office-theme="business"] .storage-qr-summary article,
html[data-office-theme="business"] .storage-qr-batches article,
html[data-office-theme="corporate"] .storage-tracking-mini span,
html[data-office-theme="corporate"] .storage-item-card,
html[data-office-theme="corporate"] .storage-item-note-banner,
html[data-office-theme="corporate"] .storage-manager-missing,
html[data-office-theme="corporate"] .storage-qr-summary article,
html[data-office-theme="corporate"] .storage-qr-batches article { background:#fff; border-color:#dbe3ec; color:#182235; box-shadow:0 3px 10px rgba(15,23,42,.035); }
html[data-office-theme="business"] .storage-tracking-mini small,
html[data-office-theme="business"] .storage-item-card small,
html[data-office-theme="corporate"] .storage-tracking-mini small,
html[data-office-theme="corporate"] .storage-item-card small { color:#667085; }

/* Storage QR Settings narrative: compact form, compact warning, breathing room in history. */
.storage-qr-settings-panel > .storage-qr-summary { margin-left:22px; margin-right:22px; }
.storage-qr-settings-panel > .storage-qr-print-form { grid-template-columns:minmax(170px,220px) minmax(240px,300px) minmax(300px,1fr); gap:12px 16px; align-items:end; margin:18px 22px 22px; }
.storage-qr-print-form > .form-grid { grid-column:1; grid-row:1; }
.storage-qr-print-form > .primary-button { grid-column:2; grid-row:1; min-height:46px; }
.storage-qr-print-form > .storage-settings-note { grid-column:3; grid-row:1; min-height:46px; height:auto; padding:10px 13px; align-items:center; font-size:11px; line-height:1.45; }
.storage-qr-history-panel .storage-qr-batches { padding:15px 22px 22px; }
.storage-qr-batches article { margin:0; }

/* Payroll settings need a real content gutter. */
.payroll-settings-form .settings-panel > .payroll-rule-grid { margin:0; padding:18px 20px 22px; }
.payroll-material-settings-head { margin:0 20px; padding-top:13px; }
[data-payroll-material-list] { display:block; padding:0 20px 18px; }
.payroll-material-settings-row { padding:10px 0; }
.payroll-settings-actions { padding:17px 20px 20px; }
.payroll-rule-card { padding:16px; }

/* Appearance motion preference. */
.appearance-motion-panel { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:14px; padding:14px 16px; border:1px solid var(--line); border-radius:14px; background:var(--panel-soft); }
.appearance-motion-panel > div { display:grid; gap:4px; }
.appearance-motion-panel small { color:var(--muted); line-height:1.45; }
body.smooth-page-transitions .view-root > * { animation:mm-view-enter .18s cubic-bezier(.2,.75,.25,1) both; }
@keyframes mm-view-enter { from { opacity:.72; transform:translateY(5px); } to { opacity:1; transform:none; } }

@media (prefers-reduced-motion:reduce) {
  body.smooth-page-transitions .view-root > * { animation:none; }
  .primary-button,.secondary-button,.danger-button,.icon-button { transition:none; }
}

@media (max-width:1050px) {
  .lead-detail-overview { grid-template-columns:1fr; }
  .lead-summary-side { min-width:0; justify-content:flex-end; }
  .lead-overview-facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .storage-qr-settings-panel > .storage-qr-print-form { grid-template-columns:minmax(170px,220px) minmax(220px,1fr); }
  .storage-qr-print-form > .storage-settings-note { grid-column:1 / -1; grid-row:2; }
}
@media (max-width:720px) {
  .lead-detail-hero-head { align-items:flex-start; flex-direction:column; }
  .lead-overview-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lead-overview-route { grid-template-columns:64px minmax(0,1fr); }
  .lead-summary-side { flex-direction:column; }
  .lead-summary-financials { width:100%; }
  .lead-summary-booking { width:100%; }
  .opened-leads-bar { margin-inline:0; padding-inline:8px; }
  .storage-qr-settings-panel > .storage-qr-print-form { grid-template-columns:1fr; margin-inline:18px; }
  .storage-qr-print-form > .form-grid,.storage-qr-print-form > .primary-button,.storage-qr-print-form > .storage-settings-note { grid-column:1; grid-row:auto; }
  .payroll-settings-form .settings-panel > .payroll-rule-grid { padding:14px; }
  .payroll-material-settings-head { margin-inline:14px; }
  [data-payroll-material-list] { padding-inline:14px; }
  .payroll-settings-actions { padding-inline:14px; }
}

/* =========================================================
   v4.16.3 — density polish for Lead header, composer and QR printing
   ========================================================= */
/* Lead finance controls should stay compact and centered instead of stretching to route height. */
.lead-summary-side {
  align-items:center;
  align-self:center;
  min-width:330px;
  gap:8px;
}
.lead-summary-financials {
  align-self:center !important;
  grid-template-columns:repeat(2,minmax(104px,112px));
  gap:8px;
}
.lead-summary-financials > div {
  min-width:104px;
  min-height:70px;
  height:70px;
  padding:8px 10px;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:12px;
}
.lead-summary-financials span { font-size:9px; }
.lead-summary-financials strong { margin-top:4px; font-size:18px; line-height:1.05; }
.lead-summary-booking {
  width:108px;
  min-width:108px;
  height:70px;
  min-height:70px;
  padding:0 12px;
  display:grid;
  place-items:center;
  font-weight:750;
  text-align:center;
}
/* Explicit light-theme booking colors avoid the open-state class being visually washed out. */
.lead-summary-booking.open,
html[data-office-theme="business"] .lead-summary-booking.open,
html[data-office-theme="corporate"] .lead-summary-booking.open {
  background:var(--accent) !important;
  color:#fff !important;
  border-color:color-mix(in srgb,var(--accent) 70%,#fff) !important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 24%,transparent) !important;
}
.lead-summary-booking.open:hover,
html[data-office-theme="business"] .lead-summary-booking.open:hover,
html[data-office-theme="corporate"] .lead-summary-booking.open:hover {
  background:color-mix(in srgb,var(--accent) 88%,#000) !important;
  color:#fff !important;
  border-color:var(--accent) !important;
}

/* Opened Leads: wide single-row desktop shelf, not a tall card. */
@media (min-width:901px) {
  .opened-leads-bar {
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    column-gap:12px;
    min-height:52px;
    margin:3px 0 10px;
    padding:7px 12px 10px;
  }
  .opened-leads-label { display:contents; }
  .opened-leads-label > div:first-child {
    grid-column:1;
    display:flex;
    align-items:baseline;
    gap:7px;
    white-space:nowrap;
  }
  .opened-leads-label b { font-size:12px; }
  .opened-leads-label span { font-size:8px; }
  .opened-leads-controls { grid-column:3; }
  .opened-leads-window {
    grid-column:2;
    min-width:0;
    max-height:32px;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
  }
  .opened-leads-window::-webkit-scrollbar { display:none; }
  .opened-lead-pill {
    flex:0 0 auto;
    min-width:150px;
    max-width:210px;
    min-height:30px;
  }
  .opened-leads-bar.expanded .opened-leads-window {
    max-height:98px;
    flex-wrap:wrap;
    overflow-x:hidden;
    overflow-y:auto;
    scrollbar-width:thin;
  }
}

/* Email composer: give the document the space, not the chrome around it. */
@media (min-width:681px) {
  .email-compose-shell {
    width:min(1360px,calc(100vw - 16px));
    height:min(980px,calc(100dvh - 12px));
    margin:6px auto;
  }
  .email-compose-shell .email-workspace-head {
    min-height:48px;
    padding:6px 14px;
  }
  .email-compose-shell .email-workspace-head .micro-label { font-size:8px; }
  .email-compose-shell .email-workspace-head h3 { margin-top:1px; font-size:18px; line-height:1.05; }
  .email-compose-shell .email-workspace-head p { margin-top:1px; font-size:9px; }
  .email-compose-shell .email-workspace-body { padding:7px 14px; }
  .email-compose-shell .email-compose-fields { gap:5px 8px; margin-bottom:5px; }
  .email-compose-shell .email-compose-fields label { gap:2px; font-size:9px; }
  .email-compose-shell .email-compose-fields label > span { font-size:8px; }
  .email-compose-shell .email-compose-fields input,
  .email-compose-shell .email-compose-fields select {
    min-height:34px;
    height:34px;
    padding:5px 10px;
  }
  .email-compose-shell .email-more-recipients summary { padding:5px 9px; font-size:9px; }
  .email-compose-shell .email-more-recipients > div { padding:0 8px 6px; }
  .email-compose-shell .email-editor-commandbar.compose { min-height:34px; padding:3px 6px; }
  .email-compose-shell .email-compose-editor { min-height:330px; }
  .email-compose-shell .email-workspace-actions {
    min-height:50px;
    padding:6px 14px;
  }
  .email-compose-shell .email-workspace-actions > button { min-height:36px; }
}

/* Storage QR printing: deliberate three-part narrative on desktop. */
.storage-qr-settings-panel > .storage-qr-print-form {
  grid-template-columns:minmax(220px,1fr) minmax(230px,300px) minmax(260px,1fr);
  gap:18px;
  align-items:center;
  margin:18px 22px 24px;
}
.storage-qr-print-form > .form-grid {
  grid-column:1;
  grid-row:1;
  min-height:100px;
  padding:13px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--panel-soft);
  align-content:center;
}
.storage-qr-print-form > .form-grid .field {
  grid-template-columns:minmax(0,1fr) 92px;
  grid-template-rows:auto auto;
  column-gap:14px;
  align-items:center;
}
.storage-qr-print-form > .form-grid .field-label {
  grid-column:1;
  grid-row:1;
  align-self:end;
}
.storage-qr-print-form > .form-grid input {
  grid-column:2;
  grid-row:1 / span 2;
  min-height:42px;
  text-align:center;
  font-weight:700;
}
.storage-qr-print-form > .form-grid small {
  grid-column:1;
  grid-row:2;
  max-width:260px;
  padding-top:2px;
  line-height:1.4;
}
.storage-qr-print-form > .primary-button {
  grid-column:2;
  grid-row:1;
  width:100%;
  min-height:52px;
  align-self:center;
}
.storage-qr-print-form > .storage-settings-note {
  grid-column:3;
  grid-row:1;
  min-height:100px;
  height:100px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:13px 16px;
  border-radius:14px;
  text-align:left;
  line-height:1.5;
}
.storage-qr-print-form > .storage-settings-note b { flex:0 0 auto; margin-right:4px; }

@media (max-width:1050px) {
  .lead-summary-side { min-width:0; }
  .lead-summary-financials { grid-template-columns:repeat(2,minmax(110px,1fr)); }
  .storage-qr-settings-panel > .storage-qr-print-form {
    grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);
  }
  .storage-qr-print-form > .storage-settings-note { grid-column:1 / -1; grid-row:2; height:auto; min-height:72px; }
}
@media (max-width:720px) {
  .lead-summary-side { align-items:stretch; }
  .lead-summary-financials { width:100%; grid-template-columns:1fr 1fr; }
  .lead-summary-financials > div { height:auto; min-height:66px; }
  .lead-summary-booking { width:100%; min-width:0; height:48px; min-height:48px; }
  .storage-qr-settings-panel > .storage-qr-print-form { grid-template-columns:1fr; gap:10px; margin-inline:18px; }
  .storage-qr-print-form > .form-grid,
  .storage-qr-print-form > .primary-button,
  .storage-qr-print-form > .storage-settings-note { grid-column:1; grid-row:auto; }
  .storage-qr-print-form > .form-grid .field { grid-template-columns:minmax(0,1fr) 84px; }
  .storage-qr-print-form > .storage-settings-note { min-height:0; height:auto; }
}


/* =========================================================
   v4.16.4 — restore opened-Lead tray + simplify QR printing
   ========================================================= */
/* Restore the v4.16.2 opened-Lead tray geometry. Only the center
   expand/collapse tab is intentionally wider; it stays short. */
@media (min-width:901px) {
  .opened-leads-bar {
    position:relative;
    display:block;
    min-height:0;
    margin:3px 0 10px;
    padding:8px 10px 13px;
    overflow:visible;
  }
  .opened-leads-label {
    min-height:31px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-direction:row;
    gap:12px;
    padding:0 2px 7px;
  }
  .opened-leads-label > div:first-child {
    display:flex;
    align-items:baseline;
    gap:8px;
    min-width:0;
  }
  .opened-leads-label > div:first-child span { white-space:nowrap; }
  .opened-leads-label b { font-size:12px; }
  .opened-leads-label span { font-size:9px; }
  .opened-leads-controls { display:flex; align-items:center; gap:6px; flex:0 0 auto; }
  .opened-leads-window {
    min-width:0;
    display:flex;
    flex-wrap:wrap;
    align-content:flex-start;
    gap:6px;
    max-height:34px;
    overflow:hidden;
    transition:max-height .2s ease;
    scrollbar-width:thin;
  }
  .opened-leads-bar.expanded .opened-leads-window {
    max-height:144px;
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:3px;
  }
  .opened-lead-pill {
    flex:0 1 auto;
    min-width:135px;
    max-width:245px;
    min-height:30px;
  }
  .opened-leads-toggle {
    position:absolute;
    left:50%;
    bottom:-10px;
    transform:translateX(-50%);
    width:76px;
    min-width:76px;
    height:20px;
    min-height:20px;
    padding:0;
    border-radius:0 0 9px 9px;
    display:grid;
    place-items:center;
    font-size:13px;
    z-index:3;
    box-shadow:0 3px 9px rgba(15,23,42,.07);
  }
  .opened-leads-toggle:hover { transform:translateX(-50%); }
}

/* QR printing is intentionally a simple vertical control:
   pages -> explanation -> generate button. */
.storage-qr-settings-panel > .storage-qr-print-form {
  display:grid;
  grid-template-columns:minmax(0,460px);
  gap:10px;
  align-items:start;
  justify-content:start;
  margin:18px 22px 24px;
}
.storage-qr-print-form > .form-grid {
  grid-column:1;
  grid-row:auto;
  min-height:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  align-content:start;
}
.storage-qr-print-form > .form-grid .field {
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:auto auto auto;
  gap:6px;
  align-items:start;
}
.storage-qr-print-form > .form-grid .field-label {
  grid-column:1;
  grid-row:1;
  align-self:auto;
}
.storage-qr-print-form > .form-grid input {
  grid-column:1;
  grid-row:2;
  width:100%;
  min-height:42px;
  text-align:left;
  font-weight:650;
}
.storage-qr-print-form > .form-grid small {
  grid-column:1;
  grid-row:3;
  max-width:460px;
  padding:0;
  line-height:1.45;
}
.storage-qr-print-form > .primary-button {
  grid-column:1;
  grid-row:auto;
  width:100%;
  min-height:46px;
  margin:2px 0 0;
}
.storage-qr-print-form > .storage-settings-note { display:none !important; }

@media (max-width:720px) {
  .storage-qr-settings-panel > .storage-qr-print-form {
    grid-template-columns:1fr;
    margin:16px 18px 22px;
  }
}

/* =========================================================
   v4.17.0 — Foremen, Drivers & onboarding
   ========================================================= */
.crew-module-shell{display:grid;gap:14px}.crew-module-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}.crew-module-head h3{margin:3px 0 5px;font-size:21px}.crew-module-head p{margin:0;max-width:760px;color:var(--muted);line-height:1.5}.crew-module-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.crew-module-tabs{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);overflow:auto}.crew-module-tabs button{border:0;background:transparent;color:var(--muted);min-height:38px;padding:8px 17px;border-radius:10px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:8px}.crew-module-tabs button:hover{background:var(--panel);color:var(--text)}.crew-module-tabs button.active{background:var(--panel);color:var(--text);box-shadow:0 5px 15px rgba(15,23,42,.08)}.crew-module-tabs small{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--accent);font-size:10px}.crew-profile-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0}.crew-profile-toolbar .section-search{flex:1;max-width:500px}.crew-profile-card-wrap{position:relative}.crew-profile-card-wrap>.record-card{height:100%}.crew-role-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 9px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.02em;border:1px solid var(--line);background:var(--panel);color:var(--muted)}.crew-role-badge.foreman{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.crew-profile-card-wrap>.crew-role-badge{position:absolute;top:13px;left:48px;z-index:2}.crew-promote-button{position:absolute;right:12px;bottom:12px;z-index:2;min-height:34px;padding:6px 10px;font-size:11px}.crew-profile-status{display:flex;align-items:center;gap:7px}.crew-application-group{padding:18px 20px}.crew-application-list{display:grid;gap:9px;margin-top:12px}.crew-group-count{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;background:var(--panel-soft);border:1px solid var(--line);font-weight:800}.crew-application-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.crew-application-card.pending{border-color:color-mix(in srgb,#d97706 36%,var(--line));background:color-mix(in srgb,#f59e0b 5%,var(--panel))}.crew-application-main{min-width:0;flex:1}.crew-application-heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.crew-application-heading h4{margin:0;font-size:14px}.crew-application-main>p{margin:3px 0 7px;color:var(--muted);font-size:12px}.crew-application-meta{display:flex;gap:7px 14px;flex-wrap:wrap;color:var(--muted);font-size:10px}.crew-application-status{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:var(--panel);border:1px solid var(--line)}.crew-application-status.pending{color:#b45309;background:color-mix(in srgb,#f59e0b 9%,var(--panel))}.crew-application-status.approved{color:#087a53;background:color-mix(in srgb,#10b981 8%,var(--panel))}.crew-application-status.rejected,.crew-application-status.expired{color:#b42318}.crew-application-actions{display:flex;gap:7px;flex:0 0 auto}.crew-application-create .crew-new-driver{grid-column:1/-1;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.crew-review-shell{display:grid;gap:18px}.crew-review-status{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);font-size:12px;font-weight:750}.crew-review-section{display:grid;gap:9px}.crew-review-section h4{margin:0}.crew-review-files{display:flex;flex-wrap:wrap;gap:7px}.crew-review-pdfs{display:grid;gap:7px}.crew-review-pdfs article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.crew-review-pdfs article>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.crew-review-pdfs b{font-size:12px}.crew-review-pdfs span{font-size:10px;color:var(--muted)}.crew-review-audit{display:grid;gap:0;border:1px solid var(--line);border-radius:11px;overflow:hidden}.crew-review-audit>div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:9px 11px;border-bottom:1px solid var(--line);font-size:11px}.crew-review-audit>div:last-child{border-bottom:0}.crew-review-audit time{color:var(--muted)}.crew-review-audit p{margin:0}.onboarding-template-card .contract-template-order span{font-size:7px;line-height:1.25;text-align:center}.crew-template-required{display:inline-flex;padding:2px 6px;border-radius:999px;font-size:9px;font-weight:800;border:1px solid var(--line)}.crew-template-required.required{color:#b45309;background:color-mix(in srgb,#f59e0b 8%,var(--panel))}.crew-template-required.optional{color:var(--muted)}.onboarding-field-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.contract-field-box.onboarding{border-style:solid}.contract-field-box.onboarding.signature,.contract-field-box.onboarding.initials{background:color-mix(in srgb,#8b5cf6 12%,var(--panel));border-color:color-mix(in srgb,#8b5cf6 60%,var(--line))}.contract-field-box.onboarding.checkbox{background:color-mix(in srgb,#f59e0b 12%,var(--panel));border-color:color-mix(in srgb,#f59e0b 60%,var(--line))}.contract-field-box.onboarding.text,.contract-field-box.onboarding.date{background:color-mix(in srgb,#0ea5e9 9%,var(--panel));border-color:color-mix(in srgb,#0ea5e9 55%,var(--line))}.onboarding-workflow-explainer{margin-top:14px}
@media(max-width:760px){.crew-module-head{align-items:flex-start;flex-direction:column}.crew-module-actions{width:100%;justify-content:stretch}.crew-module-actions button{flex:1}.crew-profile-toolbar{align-items:stretch;flex-direction:column}.crew-profile-toolbar .section-search{max-width:none}.crew-application-card{align-items:flex-start;flex-direction:column}.crew-application-actions{width:100%}.crew-application-actions button{flex:1}.crew-review-audit>div{grid-template-columns:1fr;gap:2px}.crew-review-pdfs article{align-items:flex-start;flex-direction:column}.onboarding-field-buttons{grid-template-columns:1fr}.crew-profile-card-wrap>.crew-role-badge{left:auto;right:12px;top:45px}}

/* v4.17.1 — onboarding email delivery state */
.toast.warning i { background: var(--amber); }
.crew-application-email-warning {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 9px;
  width:max-content;
  max-width:100%;
  margin-top:9px;
  padding:7px 9px;
  border:1px solid color-mix(in srgb,var(--amber) 34%,var(--line));
  border-radius:9px;
  background:color-mix(in srgb,var(--amber) 8%,transparent);
  color:var(--amber);
  font-size:10px;
}
.crew-application-email-warning b { font-size:10px; }
.crew-application-email-warning span { color:var(--muted); }

/* v4.17.2 — onboarding review corrections + modal cleanup */
.crew-application-card.changes-requested {
  border-color: color-mix(in srgb,#f59e0b 40%,var(--line));
  background: color-mix(in srgb,#f59e0b 6%,var(--panel));
}
.crew-application-status.changes-requested {
  color:#b45309;
  background:color-mix(in srgb,#f59e0b 10%,var(--panel));
}
.crew-application-revision,
.crew-review-revision {
  margin-top:9px;
  padding:9px 11px;
  border:1px solid color-mix(in srgb,#f59e0b 35%,var(--line));
  border-radius:10px;
  background:color-mix(in srgb,#f59e0b 7%,var(--panel));
  color:var(--text);
}
.crew-application-revision { display:grid; gap:3px; width:min(720px,100%); font-size:10px; }
.crew-application-revision b,
.crew-review-revision b { color:#b45309; }
.crew-application-revision span { color:var(--muted); line-height:1.45; }
.crew-review-revision { display:grid; gap:5px; margin-top:0; }
.crew-review-revision p { margin:0; color:var(--muted); line-height:1.5; }
.crew-correction-request { display:grid; gap:13px; }
.crew-correction-request > p { margin:0; color:var(--muted); line-height:1.5; }
.crew-correction-request textarea { min-height:130px; }

/* v4.17.3 — onboarding correction modal + document fit */
.file-preview-body.crew-preview-fit:not(.crew-preview-zoomed){overflow:hidden;display:grid;place-items:center;}
.file-preview-body.crew-preview-fit:not(.crew-preview-zoomed) .image-preview{width:100% !important;height:100%;min-height:0;padding:16px;overflow:hidden;}
.file-preview-body.crew-preview-fit:not(.crew-preview-zoomed) .image-preview img{display:block;width:100% !important;height:100% !important;max-width:100%;max-height:100%;object-fit:contain;}
.file-preview-body.crew-preview-fit.crew-preview-zoomed{overflow:auto;}
.crew-correction-request .field{margin:0;}
.crew-correction-request textarea{width:100%;min-height:150px;resize:vertical;}

/* v4.18.0 · Rates, Suggested Price, email job targeting */
.lead-summary-financials{align-items:stretch}
.lead-suggested-price{display:flex;flex-direction:column;justify-content:center;gap:5px;min-width:150px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2,rgba(255,255,255,.035))}
.lead-suggested-price>span:first-child{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lead-suggested-price>span:last-child{display:flex;align-items:center;gap:5px}
.lead-suggested-price i{font-style:normal;font-weight:800;color:var(--muted)}
.lead-suggested-price input{width:100%;min-width:0;border:0;background:transparent;color:var(--text);font:inherit;font-size:18px;font-weight:850;outline:0;padding:0}

.email-template-scope{display:inline-flex;margin:5px 0 8px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.035em;color:var(--muted);background:var(--panel-2,rgba(255,255,255,.03))}
.email-template-job-scope{display:grid;grid-template-columns:minmax(170px,.6fr) minmax(0,2fr);gap:14px;align-items:start;padding:14px 16px;margin:0 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2,rgba(255,255,255,.025))}
.email-template-job-scope>div:first-child{display:grid;gap:4px}.email-template-job-scope b{font-size:13px}.email-template-job-scope small{color:var(--muted);line-height:1.45}
.email-template-job-scope>div:last-child{display:flex;flex-wrap:wrap;gap:7px}
.email-template-job-scope label{display:flex;align-items:center;gap:7px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;font-size:11px;font-weight:750;cursor:pointer;background:var(--panel,rgba(255,255,255,.025))}
.email-template-job-scope input{accent-color:var(--accent)}

.rates-page{display:grid;gap:14px;min-width:0}
.rates-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}
.rates-hero h3{margin:3px 0 5px;font-size:25px}.rates-hero p{margin:0;color:var(--muted);max-width:720px}
.rates-truck-total{min-width:150px;text-align:right;display:grid;gap:1px}.rates-truck-total span,.rates-truck-total small{color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.rates-truck-total strong{font-size:34px;line-height:1}
.rates-calendar-shell{padding:14px;overflow:hidden}
.rates-calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.rates-legend{display:flex;gap:7px;flex-wrap:wrap}.rates-legend span{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:850;border:1px solid var(--line)}
.rates-legend span:before{content:"";width:8px;height:8px;border-radius:50%}.rates-legend .blue:before{background:#4b8cff}.rates-legend .green:before{background:#33b56d}.rates-legend .orange:before{background:#e99a31}.rates-legend .unavailable:before{background:#d64f5c}
.rates-month-actions{display:flex;gap:7px}
.rate-week-head,.rate-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.rate-week-head{margin-bottom:7px}.rate-week-head span{text-align:center;padding:5px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.rate-day-card,.rate-calendar-blank{min-height:142px;border-radius:13px}
.rate-calendar-blank{border:1px dashed color-mix(in srgb,var(--line) 65%, transparent);opacity:.38}
.rate-day-card{appearance:none;text-align:left;border:1px solid var(--line);background:var(--panel-2,rgba(255,255,255,.025));padding:9px;display:grid;grid-template-rows:auto 1fr;gap:8px;color:var(--text);cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.rate-day-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 8px 26px rgba(0,0,0,.12)}
.rate-day-card.today{outline:2px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:-2px}
.rate-day-head{display:flex;align-items:center;gap:6px;min-width:0}.rate-day-head strong{font-size:15px}.rate-day-head span,.rate-day-head small{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;padding:3px 5px;border-radius:6px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--text)}.rate-day-head small{margin-left:auto;color:var(--muted);background:transparent}
.rate-day-periods{display:grid;gap:5px;align-content:start}.rate-period-row{min-width:0;border-radius:8px;padding:7px 8px;display:flex;justify-content:space-between;align-items:center;gap:5px;border:1px solid transparent}.rate-period-row span{font-size:9px;font-weight:950;letter-spacing:.07em}.rate-period-row b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rate-period-row.blue{background:rgba(75,140,255,.13);border-color:rgba(75,140,255,.27)}.rate-period-row.green{background:rgba(51,181,109,.13);border-color:rgba(51,181,109,.27)}.rate-period-row.orange{background:rgba(233,154,49,.14);border-color:rgba(233,154,49,.3)}.rate-period-row.unavailable{background:rgba(214,79,92,.14);border-color:rgba(214,79,92,.3)}
.rate-modal-slots{display:grid;gap:8px}.rate-modal-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(120px,.8fr) auto;align-items:center;gap:12px;padding:10px 11px;border:1px solid var(--line);border-radius:11px}.rate-modal-row>div{display:grid;gap:2px}.rate-modal-row>div small,.rate-modal-row label>span{font-size:10px;color:var(--muted)}.rate-modal-row label{display:grid;gap:4px}.rate-modal-row input[type=number]{width:100%}
.rate-availability-toggle{display:flex!important;align-items:center!important;gap:7px!important;padding:8px 9px;border:1px solid var(--line);border-radius:9px;white-space:nowrap}.rate-availability-toggle input{accent-color:var(--accent)}.rate-availability-toggle span{font-size:11px!important;font-weight:800;color:var(--text)!important}
.rate-change-history{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.rate-change-history>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.rate-change-history>div:first-child small{color:var(--muted)}.rate-change-history article{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:8px 0;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.rate-change-history article span{font-size:10px;color:var(--muted)}.rate-change-history article p{grid-column:1/-1;margin:2px 0 0;color:var(--muted);font-size:11px}
.rate-settings-stack{display:grid;gap:14px}.rate-settings-defaults{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.rate-settings-default{display:grid;grid-template-columns:1fr minmax(110px,.7fr);gap:9px;align-items:end;padding:12px;border:1px solid var(--line);border-radius:12px}.rate-settings-default>div{grid-column:1/-1;display:grid;gap:2px}.rate-settings-default>div small{color:var(--muted);font-size:10px}.rate-settings-default>label:not(.rate-availability-toggle){display:grid;gap:4px}.rate-settings-default>label>span{font-size:10px;color:var(--muted)}
.rate-rule-form{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px;align-items:end}.rate-rule-form>label:not(.rate-availability-toggle){display:grid;gap:5px}.rate-rule-form>label>span{font-size:10px;color:var(--muted);font-weight:800}.rate-rule-periods{grid-column:1/-1;display:flex;gap:7px;flex-wrap:wrap}.rate-rule-periods label{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;font-size:11px;font-weight:800}.rate-rule-periods input{accent-color:var(--accent)}
.rate-rule-list{display:grid;gap:7px}.rate-rule-list article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 11px;border:1px solid var(--line);border-radius:11px}.rate-rule-list article>div{display:grid;gap:3px}.rate-rule-list article span,.rate-rule-list article small{color:var(--muted);font-size:11px}

@media(max-width:1100px){.rate-day-card,.rate-calendar-blank{min-height:124px}.rate-period-row{display:grid;gap:2px}.rate-settings-defaults{grid-template-columns:1fr}.rate-rule-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.rates-hero{align-items:flex-start}.rates-truck-total{text-align:left;min-width:auto}.rate-week-head{display:none}.rate-calendar-grid{grid-template-columns:1fr}.rate-calendar-blank{display:none}.rate-day-card{min-height:auto}.rate-day-periods{grid-template-columns:repeat(3,minmax(0,1fr))}.rate-period-row{display:flex}.rates-month-actions{width:100%}.rates-month-actions button{flex:1}.rate-modal-row{grid-template-columns:1fr}.rate-rule-form{grid-template-columns:1fr}.email-template-job-scope{grid-template-columns:1fr}.lead-summary-financials{flex-wrap:wrap}}
.rate-effective-last{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:center;margin-bottom:10px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2,rgba(255,255,255,.025))}.rate-effective-last span{font-size:10px;color:var(--muted)}.rate-effective-last b{grid-row:1/3;grid-column:2;font-size:12px}.rate-effective-last small{font-size:10px;color:var(--muted)}
.rate-settings-history{display:grid;gap:7px}
.rate-settings-history article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;align-items:start;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-2,rgba(255,255,255,.02))}
.rate-settings-history article>div{display:grid;gap:3px;min-width:0}.rate-settings-history article b{font-size:12px}.rate-settings-history article span{font-size:11px;color:var(--muted);line-height:1.45}.rate-settings-history article>small{font-size:10px;color:var(--muted);white-space:nowrap}
@media(max-width:760px){.rate-settings-history article{grid-template-columns:1fr}.rate-settings-history article>small{white-space:normal}}

/* v4.18.1 · UI polish for Rates, Lead financial header, and Email template designer */
.email-template-shell .email-workspace-head{padding:18px 22px}
.email-template-shell .email-workspace-body{padding:20px 22px 18px}
.email-template-shell .email-workspace-actions{padding:14px 22px}
.email-template-shell .email-designer-meta{gap:12px 14px;margin-bottom:16px}
.email-template-shell .email-editor-commandbar{padding:8px 10px;min-height:54px;border-radius:14px 14px 0 0}
.email-template-shell .email-editor-tools button{width:32px;height:32px;border-radius:8px}
.email-template-shell .email-variable-picker select{min-height:36px;border-radius:9px;font-size:10px}
.email-template-shell .email-designer-hint{margin-top:14px;padding:13px 15px;border-radius:13px}
.email-template-job-scope{grid-template-columns:minmax(190px,.72fr) minmax(0,1.9fr);gap:16px;padding:16px 18px;border-radius:16px;margin:0 0 16px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 82%,transparent),color-mix(in srgb,var(--panel-2,rgba(255,255,255,.03)) 100%,transparent))}
.email-template-job-copy{display:grid;gap:5px;align-content:start}
.email-template-job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.email-template-job-chip{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:10px;min-height:50px;padding:0 13px;border:1px solid var(--line);border-radius:12px;background:var(--panel,rgba(255,255,255,.025));cursor:pointer;transition:border-color .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease;overflow:hidden}
.email-template-job-chip:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 36%,var(--line));box-shadow:0 8px 20px rgba(0,0,0,.08)}
.email-template-job-chip input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.email-template-job-chip-mark{width:18px;height:18px;border-radius:6px;border:1px solid color-mix(in srgb,var(--line) 92%,transparent);display:grid;place-items:center;font-size:11px;font-weight:900;color:transparent;background:color-mix(in srgb,var(--bg) 38%,transparent);transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}
.email-template-job-chip-label{display:block;font-size:11px;font-weight:800;line-height:1.25;color:var(--text)}
.email-template-job-chip input:checked + .email-template-job-chip-mark{color:#fff;background:color-mix(in srgb,var(--accent) 78%,transparent);border-color:color-mix(in srgb,var(--accent) 72%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}
.email-template-job-chip input:checked ~ .email-template-job-chip-label{color:var(--text)}
.email-template-job-chip:has(input:checked){border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--panel));box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 10%,transparent)}

.lead-detail-hero-head{gap:16px;align-items:flex-start}
.lead-detail-actions{gap:10px;align-items:center}
.lead-save-actions{gap:9px;padding-left:12px;margin-left:4px}
.lead-detail-overview{grid-template-columns:minmax(0,1fr) minmax(350px,auto);gap:20px;align-items:start;margin-top:16px;padding-top:16px}
.lead-overview-facts{gap:12px 16px}
.lead-summary-side{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;min-width:420px}
.lead-summary-financials{grid-template-columns:repeat(3,minmax(118px,1fr));gap:10px;align-self:stretch}
.lead-summary-financials>div,
.lead-summary-financials>label{min-width:0;min-height:84px;padding:14px 15px;border-radius:16px;border:1px solid var(--line);background:var(--panel-2,rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.lead-summary-financials>div:first-child{border-color:rgba(82,213,235,.22);background:rgba(82,213,235,.055)}
.lead-summary-financials>div.open-balance{border-color:rgba(255,178,76,.26);background:rgba(255,178,76,.075)}
.lead-summary-financials>div.paid-balance{border-color:rgba(69,213,145,.3);background:rgba(69,213,145,.075)}
.lead-summary-financials span{font-size:9px;font-weight:800;letter-spacing:.09em}
.lead-summary-financials strong{margin-top:6px;font-size:24px;line-height:1.05}
.lead-suggested-price{gap:8px}
.lead-suggested-price>span:last-child{gap:6px;align-items:flex-end}
.lead-suggested-price i{font-size:14px;line-height:1.2;padding-bottom:2px}
.lead-suggested-price input{font-size:24px;line-height:1.05}
.lead-summary-booking{min-width:128px;min-height:84px;padding:0 16px;border-radius:16px;align-self:stretch;display:grid;place-items:center}
.lead-summary-booking span{font-size:13px;font-weight:850;letter-spacing:.01em}

.rate-field-stack{display:grid;gap:6px}
.rate-field-stack>span,.rate-periods-label{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rate-field-stack input,.rate-rule-form input[type="date"],.rate-rule-form input[type="number"],.rate-settings-default input[type="number"]{min-height:42px}
.rates-calendar-shell{padding:18px}
.rates-calendar-toolbar{margin-bottom:14px}
.rate-day-card{padding:10px;border-radius:15px}
.rate-period-row{padding:8px 9px;border-radius:10px}
.rate-settings-stack{gap:16px}
.rate-settings-defaults{gap:14px;padding:0 18px 18px}
.rate-settings-default{grid-template-columns:1fr;gap:12px;padding:16px;border-radius:16px;background:var(--panel-2,rgba(255,255,255,.025))}
.rate-settings-default-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.rate-settings-default-head>div{display:grid;gap:3px;min-width:0}
.rate-settings-default-head>div b{font-size:17px;letter-spacing:-.02em}
.rate-settings-default-head>div small{color:var(--muted);font-size:10px;line-height:1.45}
.rate-toggle-inline{display:inline-flex!important;align-items:center!important;justify-content:center;gap:8px!important;min-height:42px;padding:0 12px;border-radius:11px;background:var(--panel,rgba(255,255,255,.03));white-space:nowrap}
.rate-toggle-inline input{accent-color:var(--accent)}
.rate-toggle-inline span{font-size:11px!important;font-weight:800;color:var(--text)!important}
.rate-rule-form{gap:14px;padding:0 18px 18px;grid-template-columns:1fr;align-items:stretch}
.rate-rule-main-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rate-rule-lower{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.rate-rule-period-wrap{display:grid;gap:8px;min-width:0}
.rate-rule-periods{grid-column:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rate-rule-periods label{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:11px;background:var(--panel,rgba(255,255,255,.025));transition:border-color .16s ease,background .16s ease,transform .16s ease;cursor:pointer}
.rate-rule-periods label:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 34%,var(--line))}
.rate-rule-periods input{accent-color:var(--accent)}
.rate-rule-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.rate-rule-actions .primary-button{min-height:44px;padding-inline:18px;white-space:nowrap}
.rate-rule-list,.rate-settings-history{padding:0 18px 18px}
.rate-rule-list article,.rate-settings-history article{padding:12px 13px;border-radius:13px;background:var(--panel-2,rgba(255,255,255,.02))}
.rate-modal-row{grid-template-columns:minmax(120px,1fr) minmax(160px,.95fr) auto;gap:14px;padding:12px 13px;border-radius:13px;background:var(--panel-2,rgba(255,255,255,.02))}
.rate-modal-row-copy{display:grid;gap:3px}
.rate-change-history article{padding:10px 0}
.rate-effective-last{padding:11px 12px;border-radius:12px}

@media (max-width:1100px){
  .email-template-job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lead-detail-overview{grid-template-columns:1fr}
  .lead-summary-side{min-width:0}
  .lead-summary-financials{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rate-rule-main-fields{grid-template-columns:1fr 1fr 1fr}
  .rate-rule-lower{grid-template-columns:1fr}
  .rate-rule-actions{justify-content:flex-start}
}
@media (max-width:760px){
  .email-template-shell .email-workspace-body{padding:14px}
  .email-template-shell .email-workspace-actions{padding:10px 14px}
  .email-template-job-scope{grid-template-columns:1fr;padding:14px}
  .email-template-job-grid{grid-template-columns:1fr 1fr}
  .lead-detail-overview{gap:14px}
  .lead-summary-side{grid-template-columns:1fr;gap:10px}
  .lead-summary-financials{grid-template-columns:1fr 1fr;gap:9px}
  .lead-summary-financials>div,.lead-summary-financials>label{min-height:72px;padding:12px 13px}
  .lead-summary-financials strong,.lead-suggested-price input{font-size:20px}
  .lead-summary-booking{width:100%;min-width:0;min-height:50px}
  .rate-settings-defaults,.rate-rule-form,.rate-rule-list,.rate-settings-history{padding:0 14px 14px}
  .rate-settings-defaults{grid-template-columns:1fr}
  .rate-settings-default-head{flex-direction:column;align-items:stretch}
  .rate-rule-main-fields{grid-template-columns:1fr}
  .rate-rule-periods{grid-template-columns:1fr}
  .rate-rule-actions{flex-direction:column;align-items:stretch}
  .rate-rule-actions .primary-button,.rate-toggle-inline{width:100%}
}
@media (max-width:540px){
  .email-template-job-grid{grid-template-columns:1fr}
  .lead-summary-financials{grid-template-columns:1fr}
}

/* v4.18.1.1 · corrective polish after live v4.18.1 review */
/* Keep native checkboxes compact; global Office input sizing must never turn them into 48px controls. */
.rate-settings-stack input[type="checkbox"],
.rate-day-modal input[type="checkbox"]{
  appearance:auto;
  -webkit-appearance:checkbox;
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  padding:0!important;
  margin:0!important;
  border-radius:4px!important;
  box-shadow:none!important;
  accent-color:var(--accent);
  flex:0 0 16px;
}
.rate-toggle-inline{
  width:auto!important;
  min-width:104px;
  min-height:40px;
  padding:0 11px!important;
  justify-content:flex-start;
  gap:8px!important;
}
.rate-settings-default-head .rate-toggle-inline{min-width:108px}
.rate-rule-periods label{
  justify-content:flex-start;
  min-height:42px;
  padding:0 12px;
  gap:8px;
}
.rate-rule-periods input[type="checkbox"]{flex:0 0 16px}
.rate-rule-actions{align-items:flex-end}

/* Lead summary: compact fixed-width pricing cluster; never crush customer/job facts. */
.lead-detail-overview{
  grid-template-columns:minmax(0,1fr) 520px;
  gap:18px;
  align-items:start;
}
.lead-overview-main{min-width:0;width:100%}
.lead-overview-facts{grid-template-columns:repeat(5,minmax(86px,1fr));gap:10px 14px}
.lead-summary-side{
  width:520px;
  min-width:0;
  max-width:520px;
  grid-template-columns:minmax(0,1fr) 112px;
  gap:9px;
  align-items:stretch;
  justify-self:end;
}
.lead-summary-financials{
  width:100%;
  min-width:0;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.lead-summary-financials>div,
.lead-summary-financials>label{
  min-width:0;
  min-height:70px;
  height:70px;
  padding:10px 11px;
  border-radius:13px;
  justify-content:center;
}
.lead-summary-financials strong{margin-top:5px;font-size:19px;line-height:1.05}
.lead-suggested-price{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0;
  min-width:0;
  background:var(--panel-2,rgba(255,255,255,.035));
}
.lead-suggested-price>strong{
  display:block;
  margin-top:5px;
  font-size:19px;
  line-height:1.05;
  color:var(--text);
  white-space:nowrap;
}
.lead-summary-booking{
  width:112px;
  min-width:112px;
  min-height:70px;
  height:70px;
  padding:0 10px;
  border-radius:13px;
}

@media (max-width:1280px){
  .lead-detail-overview{grid-template-columns:1fr}
  .lead-summary-side{width:min(100%,520px);max-width:520px;justify-self:end}
}
@media (max-width:760px){
  .lead-summary-side{width:100%;max-width:none;grid-template-columns:1fr}
  .lead-summary-financials{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lead-summary-booking{width:100%;min-width:0;height:48px;min-height:48px}
  .rate-toggle-inline{width:auto!important;min-width:0}
  .rate-rule-actions{flex-direction:row;align-items:center}
  .rate-rule-actions .primary-button{flex:1}
}
@media (max-width:540px){
  .lead-summary-financials{grid-template-columns:1fr}
  .lead-summary-financials>div,.lead-summary-financials>label{height:auto;min-height:64px}
  .rate-rule-actions{flex-direction:column;align-items:stretch}
  .rate-toggle-inline{width:100%!important}
}

/* v4.18.1.3 · secure-session startup transition */
html.office-session-pending #login-screen{display:none!important}
html.office-session-pending #session-loading{display:grid!important}
.session-loading{position:relative;z-index:3;min-height:100vh;place-items:center;padding:72px 24px}
.session-loading-brand{position:absolute;top:28px;left:32px}
.session-loading-card{position:relative;width:min(430px,100%);overflow:hidden;padding:42px 40px 36px;border-radius:24px;text-align:center;animation:session-card-in .32s cubic-bezier(.2,.75,.3,1) both}
.session-loading-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 0%,rgba(94,229,255,.10),transparent 38%),radial-gradient(circle at 12% 100%,rgba(155,125,255,.11),transparent 42%)}
.session-loading-card>*{position:relative;z-index:2}
.session-loading-mark{width:62px;height:62px;margin:0 auto 22px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--accent) 7%,var(--panel));box-shadow:0 16px 40px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.05);animation:session-mark-float 2.2s ease-in-out infinite}
.session-loading-mark .brand-mark{width:28px;height:28px}
.session-loading-card h1{margin:12px 0 7px;font-size:27px;line-height:1.08;letter-spacing:-.04em}
.session-loading-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.session-loading-progress{height:3px;margin:25px 0 16px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--line) 80%,transparent)}
.session-loading-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--accent));box-shadow:0 0 14px color-mix(in srgb,var(--accent) 30%,transparent);animation:session-progress 1.25s ease-in-out infinite}
.session-loading-dots{height:12px;display:flex;align-items:center;justify-content:center;gap:7px}
.session-loading-dots i{width:5px;height:5px;border-radius:50%;background:var(--muted-2);animation:session-dot 1.15s ease-in-out infinite}
.session-loading-dots i:nth-child(2){animation-delay:.14s}.session-loading-dots i:nth-child(3){animation-delay:.28s}
.session-loading-orbit{position:absolute!important;z-index:1!important;width:230px;height:230px;left:50%;top:-155px;translate:-50% 0;border:1px solid rgba(94,229,255,.11);border-radius:50%;animation:session-orbit 8s linear infinite}
.session-loading-orbit i{position:absolute;border:1px solid rgba(155,125,255,.11);border-radius:50%;inset:24px}
.session-loading-orbit i:nth-child(2){inset:52px;border-color:rgba(94,229,255,.11)}
.session-loading-orbit i:nth-child(3){inset:80px;background:rgba(94,229,255,.025)}
@keyframes session-card-in{from{opacity:0;transform:translateY(7px) scale(.992)}to{opacity:1;transform:none}}
@keyframes session-mark-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes session-progress{0%{transform:translateX(-115%)}55%{transform:translateX(105%)}100%{transform:translateX(235%)}}
@keyframes session-dot{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.15);background:var(--accent)}}
@keyframes session-orbit{to{rotate:360deg}}
html[data-office-theme="business"] .session-loading-card,html[data-office-theme="corporate"] .session-loading-card{background:#fff;box-shadow:0 22px 70px rgba(16,24,40,.14)}
html[data-office-theme="corporate"] .session-loading-card{border-radius:14px}
html[data-office-theme="business"] .session-loading-mark,html[data-office-theme="corporate"] .session-loading-mark{background:#f7f9fc;box-shadow:0 12px 32px rgba(16,24,40,.08)}
@media(max-width:680px){.session-loading{padding:82px 18px 30px}.session-loading-brand{top:22px;left:20px}.session-loading-card{padding:36px 24px 30px;border-radius:20px}.session-loading-card h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){.session-loading-card,.session-loading-mark,.session-loading-progress span,.session-loading-dots i,.session-loading-orbit{animation:none!important}.session-loading-progress span{width:100%;opacity:.55}}

/* v4.18.2 · Lead inventory workflow and density */
@media (min-width:761px) {
  .inventory-edit-row > .inventory-item-field > span { display:none; }
  .inventory-edit-list { margin-top:4px; }
  .inventory-edit-row { margin-top:6px; align-items:center; }
}
.inventory-room-accordion { position:relative; }
.inventory-room-accordion.active {
  border-color:color-mix(in srgb,var(--accent) 78%,var(--line));
  background:color-mix(in srgb,var(--accent) 7%,var(--panel));
  box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent),0 12px 30px color-mix(in srgb,var(--accent) 9%,transparent);
}
.inventory-room-accordion.active::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:var(--accent);
  box-shadow:0 0 16px color-mix(in srgb,var(--accent) 75%,transparent);
}
.inventory-room-accordion.active > header {
  background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 72%);
}
.inventory-room-target.active {
  border-color:color-mix(in srgb,var(--accent) 72%,var(--line));
  background:color-mix(in srgb,var(--accent) 18%,var(--panel));
  color:var(--text);
  box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent);
}
.inventory-item-bumped { animation:inventory-item-bump .34s ease; }
@keyframes inventory-item-bump {
  0% { background:color-mix(in srgb,var(--accent) 22%,transparent); box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent); }
  100% { background:transparent; box-shadow:none; }
}
@media (prefers-reduced-motion:reduce) {
  .inventory-item-bumped { animation:none; }
}

/* v4.18.3 · Dispatch booked-job paging and wider fleet workspace */
.dispatch-board{grid-template-columns:minmax(0,1.35fr) minmax(390px,.75fr);gap:18px}
.dispatch-jobs-column{align-content:start}
.dispatch-booked-pagination{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);position:sticky;bottom:10px;z-index:4;box-shadow:0 12px 34px rgba(0,0,0,.14)}
.dispatch-booked-pagination>button{width:42px;height:38px;min-height:38px;padding:0;display:grid;place-items:center;font-size:16px}
.dispatch-booked-pagination>span{text-align:center;color:var(--muted);font-size:10px;line-height:1.45}
.dispatch-booked-pagination>span b{color:var(--text);font-size:11px}
html[data-office-theme="business"] .dispatch-booked-pagination,
html[data-office-theme="corporate"] .dispatch-booked-pagination{box-shadow:0 10px 26px rgba(24,39,75,.08)}
@media(max-width:1240px){.dispatch-board{grid-template-columns:minmax(0,1fr)}.dispatch-booked-pagination{position:static}}
@media(max-width:680px){.dispatch-booked-pagination{grid-template-columns:40px minmax(0,1fr) 40px;padding:8px}.dispatch-booked-pagination>button{width:40px;height:38px}.dispatch-booked-pagination>span{font-size:9px}}

/* v4.18.3.1 · Dispatch workspace focus */
.dispatch-assigned-job.expanded,
.dispatch-job-card.expanded{
  border-color:color-mix(in srgb,var(--accent) 46%,var(--line));
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 9%,var(--panel)),color-mix(in srgb,var(--accent) 4%,var(--panel-strong)));
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 72%,transparent),0 10px 28px color-mix(in srgb,var(--accent) 9%,transparent);
}
.dispatch-assigned-job.expanded .dispatch-expand-button,
.dispatch-job-card.expanded .dispatch-expand-button{
  color:var(--accent);
  border-color:color-mix(in srgb,var(--accent) 44%,var(--line));
  background:color-mix(in srgb,var(--accent) 10%,var(--panel));
}
.dispatch-assigned-job.expanded .dispatch-assigned-expanded{
  margin-top:2px;
  padding:11px 12px;
  border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));
  border-radius:12px;
  background:color-mix(in srgb,var(--accent) 5%,var(--panel));
}
.dispatch-job-card.expanded .dispatch-job-expanded{
  margin:2px 12px 0;
  padding:12px;
  border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));
  border-radius:12px;
  background:color-mix(in srgb,var(--accent) 5%,var(--panel));
}
html[data-office-theme="business"] .dispatch-assigned-job.expanded,
html[data-office-theme="business"] .dispatch-job-card.expanded,
html[data-office-theme="corporate"] .dispatch-assigned-job.expanded,
html[data-office-theme="corporate"] .dispatch-job-card.expanded{
  border-color:color-mix(in srgb,var(--accent) 42%,#d8e0ea);
  background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 7%,#fff),#fff);
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 65%,transparent),0 10px 24px rgba(24,39,75,.08);
}
html[data-office-theme="business"] .dispatch-assigned-job.expanded .dispatch-assigned-expanded,
html[data-office-theme="business"] .dispatch-job-card.expanded .dispatch-job-expanded,
html[data-office-theme="corporate"] .dispatch-assigned-job.expanded .dispatch-assigned-expanded,
html[data-office-theme="corporate"] .dispatch-job-card.expanded .dispatch-job-expanded{
  background:color-mix(in srgb,var(--accent) 4%,#fff);
  border-color:color-mix(in srgb,var(--accent) 18%,#dfe6ee);
}

/* v4.18.4 · paginated Opened Leads tray */
.opened-leads-controls{gap:8px}
.opened-leads-pager{display:flex;align-items:center;gap:6px;min-width:0}
.opened-leads-pager>span{display:block;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.opened-leads-pager>span i{font-style:normal;color:var(--muted-2)}
.opened-page-button{width:28px;min-width:28px;padding:0;display:grid;place-items:center;font-size:12px}
.opened-page-button:disabled{opacity:.35;cursor:default;pointer-events:none}
@media (min-width:901px){
  .opened-leads-bar.expanded .opened-leads-window{max-height:none;overflow:visible;padding-right:0}
}
@media (max-width:900px){
  .opened-leads-pager>span i{display:none}
}
@media (max-width:680px){
  .opened-leads-label{align-items:flex-start;gap:7px}
  .opened-leads-controls{flex-wrap:wrap;justify-content:flex-end}
  .opened-leads-pager>span{font-size:8px}
}

/* v4.19.0 · Claims Center */
.claims-page{display:grid;gap:16px;min-width:0}
.claims-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px}
.claims-hero h3{margin:5px 0 5px;font-size:26px;letter-spacing:-.035em}
.claims-hero p{margin:0;color:var(--muted);font-size:12px}
.claims-total-paid{display:grid;gap:2px;min-width:180px;text-align:right}
.claims-total-paid span,.claims-total-paid small{font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.claims-total-paid strong{font-size:30px;letter-spacing:-.04em}
.claim-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.claim-stat-card{appearance:none;display:grid;gap:5px;padding:16px 17px;text-align:left;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.claim-stat-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,var(--line))}
.claim-stat-card.active{border-color:color-mix(in srgb,var(--accent) 60%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 9%,transparent)}
.claim-stat-card span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.claim-stat-card strong{font-size:27px;line-height:1;letter-spacing:-.035em}
.claim-stat-card small{font-size:9px;color:var(--muted)}
.claims-insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.claims-insight{overflow:hidden;border-radius:18px}
.claims-insight .panel-head{min-height:68px;padding:15px 18px}
.claim-ranking{display:grid;padding:0 18px 16px}
.claim-ranking>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.claim-ranking>div:first-child{border-top:0}
.claim-ranking i{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--accent);font-size:10px;font-style:normal;font-weight:900}
.claim-ranking span{display:grid;gap:2px;min-width:0}
.claim-ranking span b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.claim-ranking span small{font-size:9px;color:var(--muted)}
.claim-ranking strong{font-size:14px}
.claim-ranking.payouts strong{font-size:13px}
.claims-list-shell{overflow:hidden;border-radius:18px}
.claims-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;border-bottom:1px solid var(--line)}
.claims-list-toolbar h3{margin:4px 0 2px;font-size:19px}
.claims-list-toolbar p{margin:0;color:var(--muted);font-size:10px}
.claims-list-controls{display:flex;gap:8px;align-items:center}
.claims-list-controls select{min-width:150px}
.claims-list-controls input{width:min(330px,32vw)}
.claims-table-head,.claim-list-row{display:grid;grid-template-columns:minmax(220px,1.55fr) 110px 110px minmax(130px,1fr) minmax(130px,1fr) 120px auto;gap:12px;align-items:center}
.claims-table-head{padding:9px 18px;background:var(--panel-soft);border-bottom:1px solid var(--line)}
.claims-table-head span{font-size:8px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.claims-table-body{display:grid}
.claim-list-row{padding:12px 18px;border-bottom:1px solid var(--line)}
.claim-list-row:last-child{border-bottom:0}
.claim-list-row>span{min-width:0;font-size:11px;color:var(--text)}
.claim-list-row>span:first-child,.claim-list-row>span:nth-child(6){display:grid;gap:3px}
.claim-list-row small{font-size:9px;color:var(--muted)}
.claim-list-row .secondary-button{min-height:34px;padding:0 10px;white-space:nowrap;font-size:9px}
.claim-status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 9px;border-radius:999px;font-size:9px;font-weight:850;letter-spacing:.04em;white-space:nowrap;border:1px solid var(--line)}
.claim-status-pill.open{color:#57d9f0;border-color:rgba(87,217,240,.35);background:rgba(87,217,240,.08)}
.claim-status-pill.progress{color:#8ea9ff;border-color:rgba(142,169,255,.35);background:rgba(142,169,255,.09)}
.claim-status-pill.pending{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 38%,transparent);background:color-mix(in srgb,var(--amber) 8%,transparent)}
.claim-status-pill.paid{color:var(--green);border-color:color-mix(in srgb,var(--green) 42%,transparent);background:color-mix(in srgb,var(--green) 9%,transparent)}
.claim-status-pill.closed{color:var(--muted);background:var(--panel-soft)}
.claims-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;border-top:1px solid var(--line)}
.claims-pagination span{font-size:9px;color:var(--muted);text-align:center}

.claim-lead-form{display:grid;gap:16px}
.claim-lead-head{padding:0 0 14px;min-height:0}
.claim-lead-actions{display:flex;align-items:center;gap:9px}
.claim-new-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px dashed var(--line);border-radius:999px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.claim-record-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.claim-record-meta>div,.claim-auto-foreman{display:grid;gap:3px;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}
.claim-record-meta span,.claim-auto-foreman span{font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.claim-record-meta b,.claim-auto-foreman b{font-size:12px}
.claim-record-meta small,.claim-auto-foreman small{font-size:9px;color:var(--muted)}
.claim-auto-foreman{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.claim-auto-foreman span{grid-column:1/-1}.claim-auto-foreman small{grid-column:2;grid-row:2}
.claim-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.claim-form-grid label{display:grid;gap:6px;min-width:0}
.claim-form-grid label>span{font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.claim-form-grid .full{grid-column:1/-1}
.claim-form-grid textarea{min-height:105px;resize:vertical}
.claim-history{border-top:1px solid var(--line);padding-top:14px}
.claim-history>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px}
.claim-history>div:first-child small{font-size:9px;color:var(--muted)}
.claim-history article{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);gap:14px;padding:9px 0;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}
.claim-history article:first-of-type{border-top:0}
.claim-history article span{display:grid;gap:2px}.claim-history article span b{font-size:10px}.claim-history article span small{font-size:8px;color:var(--muted)}
.claim-history article p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.claim-loading{min-height:260px}

@media(max-width:1180px){
  .claim-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .claims-table-head{display:none}
  .claim-list-row{grid-template-columns:minmax(0,1.5fr) 105px 100px minmax(120px,1fr) 110px auto}
  .claim-list-row>span:nth-child(5){display:none}
}
@media(max-width:900px){
  .claims-insight-grid{grid-template-columns:1fr}
  .claim-list-row{grid-template-columns:minmax(0,1.5fr) 100px minmax(110px,1fr) auto}
  .claim-list-row>span:nth-child(3),.claim-list-row>span:nth-child(5),.claim-list-row>span:nth-child(6){display:none}
  .claim-record-meta,.claim-form-grid{grid-template-columns:1fr 1fr}
  .claim-form-grid .full{grid-column:1/-1}
}
@media(max-width:680px){
  .claims-hero{align-items:flex-start;flex-direction:column;padding:16px}
  .claims-total-paid{text-align:left;min-width:0}
  .claim-stat-grid{grid-template-columns:1fr 1fr;gap:8px}
  .claim-stat-card{padding:13px}.claim-stat-card strong{font-size:22px}
  .claims-list-toolbar{align-items:stretch;flex-direction:column;padding:14px}
  .claims-list-controls{display:grid;grid-template-columns:1fr}
  .claims-list-controls input,.claims-list-controls select{width:100%;min-width:0}
  .claim-list-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px}
  .claim-list-row>span:nth-child(3),.claim-list-row>span:nth-child(4),.claim-list-row>span:nth-child(5),.claim-list-row>span:nth-child(6){display:none}
  .claim-list-row>span:nth-child(7){grid-column:1/-1}.claim-list-row .secondary-button{width:100%}
  .claims-pagination{padding:10px 14px}.claims-pagination span{font-size:8px}
  .claim-lead-head{align-items:flex-start;flex-direction:column}
  .claim-lead-actions{width:100%;justify-content:space-between}
  .claim-record-meta,.claim-form-grid{grid-template-columns:1fr}
  .claim-form-grid .full{grid-column:1}
  .claim-history article{grid-template-columns:1fr;gap:5px}
}

/* v4.20.0 · MandicMade Rate Engine */
.rate-engine-shell{display:grid;gap:14px;min-width:0}
.rate-engine-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-radius:16px}
.rate-engine-toolbar>div{display:grid;gap:3px}.rate-engine-toolbar b{font-size:14px}.rate-engine-toolbar span{color:var(--muted);font-size:10px}
.rate-engine-tabs{display:flex;gap:6px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);scrollbar-width:thin}
.rate-engine-tabs button{flex:0 0 auto;min-height:34px;padding:0 11px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer;white-space:nowrap}
.rate-engine-tabs button:hover{color:var(--text);background:var(--panel)}
.rate-engine-tabs button.active{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 11%,var(--panel));box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 8%,transparent)}
.rate-engine-panel-stack{display:grid;gap:14px}.rate-engine-panel-stack>.settings-panel{overflow:visible}
.rate-engine-section-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--line)}
.rate-engine-section-head h3{margin:5px 0 4px;font-size:20px;letter-spacing:-.03em}.rate-engine-section-head p{margin:0;max-width:820px;color:var(--muted);font-size:11px;line-height:1.55}
.rate-engine-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 20px}
.rate-engine-field{display:grid;gap:6px;min-width:0}.rate-engine-field>span{font-size:9px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.rate-engine-field input,.rate-engine-field select{width:100%;min-width:0;min-height:40px}.rate-engine-field small{color:var(--muted);font-size:9px;line-height:1.4}.rate-engine-field.wide{grid-column:1/-1}
.rate-engine-switch{display:flex;align-items:flex-start;gap:9px;min-width:0;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);cursor:pointer}
.rate-engine-switch>input{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:2px 0 0!important;accent-color:var(--accent)}
.rate-engine-switch>span{display:grid;gap:2px;min-width:0}.rate-engine-switch b{font-size:11px}.rate-engine-switch small{color:var(--muted);font-size:9px;line-height:1.4}
.rate-engine-inline-switches{display:flex;gap:10px;flex-wrap:wrap;padding:14px 20px 0}.rate-engine-inline-switches .rate-engine-switch{min-width:230px;flex:0 1 320px}
.rate-engine-mode-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 20px}
.rate-engine-mode{position:relative;display:block;min-height:108px;padding:16px;border:1px solid var(--line);border-radius:15px;background:var(--panel-soft);cursor:pointer;transition:.16s ease}
.rate-engine-mode:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.rate-engine-mode.active{border-color:color-mix(in srgb,var(--accent) 58%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--panel));box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 10%,transparent)}
.rate-engine-mode input{position:absolute;opacity:0}.rate-engine-mode span{display:grid;gap:7px}.rate-engine-mode b{font-size:18px}.rate-engine-mode small{color:var(--muted);font-size:10px;line-height:1.5}
.rate-engine-overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 20px 20px}.rate-engine-overview-stats>div{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.rate-engine-overview-stats span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.rate-engine-overview-stats strong{font-size:18px}.rate-engine-overview-stats small{color:var(--muted);font-size:9px}
.rate-engine-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 20px}.rate-engine-principles article{padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.rate-engine-principles b{font-size:12px}.rate-engine-principles p{margin:6px 0 0;color:var(--muted);font-size:10px;line-height:1.55}
.rate-engine-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px 20px}.rate-engine-three>article{display:grid;gap:11px;padding:15px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.rate-engine-three>article>b{font-size:18px}
.rate-engine-note{margin:0 20px 18px;padding:10px 12px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--muted);font-size:10px;line-height:1.5}
.rate-engine-rule-list{display:grid;gap:10px;padding:18px 20px}.rate-engine-rule-card{display:grid;gap:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.rate-engine-rule-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rate-engine-rule-card>header>div{display:grid;gap:3px}.rate-engine-rule-card>header b{font-size:13px}.rate-engine-rule-card>header small{color:var(--muted);font-size:9px}
.rate-engine-rule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rate-engine-rule-grid>.wide{grid-column:1/-1}
.rate-engine-weight-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:18px 20px}.rate-engine-weight-list article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(90px,.45fr);gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.rate-engine-weight-list article>div{display:grid;gap:2px}.rate-engine-weight-list b{font-size:12px}.rate-engine-weight-list small{color:var(--muted);font-size:9px}.rate-engine-weight-list .rate-engine-switch{padding:8px 9px}.rate-engine-weight-list .rate-engine-field>span{display:none}
.rate-engine-table{display:grid;gap:7px;padding:18px 20px 8px}.rate-engine-table-head,.rate-engine-table-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:9px;align-items:end}.rate-engine-table-head{padding:0 4px}.rate-engine-table-head span{font-size:9px;font-weight:800;text-transform:uppercase;color:var(--muted)}.rate-engine-table-row{padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.rate-engine-table-row .rate-engine-field>span{display:none}.rate-engine-add-row{margin:0 20px 18px}
.rate-engine-complexity-grid,.rate-engine-guardrail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 20px}.rate-engine-complexity-grid article,.rate-engine-guardrail-grid article{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}
.rate-engine-tier-list{display:grid;gap:10px;padding:18px 20px}.rate-engine-tier{border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);overflow:hidden}.rate-engine-tier>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.rate-engine-tier>header>div{display:grid;gap:2px}.rate-engine-tier>header b{font-size:13px}.rate-engine-tier>header small{font-size:9px;color:var(--muted)}.rate-engine-tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px}
.rate-engine-profile-list{display:grid;gap:10px;padding:18px 20px}.rate-engine-profile{border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);overflow:hidden}.rate-engine-profile>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;cursor:pointer;list-style:none}.rate-engine-profile>summary::-webkit-details-marker{display:none}.rate-engine-profile>summary>div{display:grid;gap:3px}.rate-engine-profile>summary b{font-size:13px}.rate-engine-profile>summary small{color:var(--muted);font-size:9px}.rate-engine-profile>summary>span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--accent)}.rate-engine-profile-body{display:grid;gap:12px;padding:0 14px 14px;border-top:1px solid var(--line)}.rate-engine-profile-body>.rate-engine-form-grid{padding:14px 0 0}
.rate-engine-target-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rate-engine-subhead{display:grid;gap:3px;padding-top:2px}.rate-engine-subhead b{font-size:12px}.rate-engine-subhead p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}
.rate-engine-band-table{display:grid;gap:6px;overflow:auto}.rate-engine-band-head,.rate-engine-band-row{display:grid;grid-template-columns:90px 90px 130px 90px 100px 90px auto;gap:7px;align-items:end;min-width:760px}.rate-engine-band-head{padding:0 6px}.rate-engine-band-head span{font-size:8px;font-weight:800;text-transform:uppercase;color:var(--muted)}.rate-engine-band-row{padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.rate-engine-band-row .rate-engine-field>span{display:none}
.rate-engine-inline-rule{display:grid;grid-template-columns:minmax(170px,1fr) repeat(4,minmax(105px,.5fr)) auto;gap:9px;align-items:end;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.rate-engine-inline-rule>div:first-child{display:grid;gap:2px;align-self:center}.rate-engine-inline-rule b{font-size:11px}.rate-engine-inline-rule small{font-size:9px;color:var(--muted)}
.rate-engine-order{display:grid;gap:7px;padding:18px 20px}.rate-engine-order article{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.rate-engine-order article>span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-size:10px;font-weight:900}.rate-engine-order article>div:nth-child(2){display:grid;gap:2px}.rate-engine-order b{font-size:11px}.rate-engine-order small{font-size:8px;color:var(--muted)}.rate-engine-order article>div:last-child{display:flex;gap:5px}.rate-engine-order article button{min-width:38px}.rate-engine-order-fixed{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;margin:0 20px 18px;padding:12px;border:1px dashed var(--line);border-radius:11px;color:var(--muted);font-size:9px}.rate-engine-order-fixed b{color:var(--text)}
.rate-simulator-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:18px 20px}.rate-simulator-form>.primary-button{align-self:end;min-height:40px}.rate-simulator-hero{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:10px;padding:18px 20px}.rate-simulator-hero>div{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.rate-simulator-hero span{font-size:9px;text-transform:uppercase;color:var(--muted)}.rate-simulator-hero strong{font-size:22px}.rate-simulator-hero b{font-size:14px}.rate-simulator-steps{display:grid;gap:5px;padding:0 20px 20px}
.rate-day-engine-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.rate-day-engine-summary>div{display:grid;gap:3px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.rate-day-engine-summary span{font-size:8px;text-transform:uppercase;color:var(--muted)}.rate-day-engine-summary b{font-size:13px}
.rate-engine-modal-slots{gap:10px}.rate-engine-period-card{padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.rate-engine-period-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.rate-engine-period-card>header>div{display:grid;gap:2px}.rate-engine-period-card>header span{font-size:9px;font-weight:900;letter-spacing:.08em}.rate-engine-period-card>header strong{font-size:17px}.rate-engine-period-card>header small{font-size:9px;color:var(--muted)}.rate-engine-period-card>header em{font-style:normal;font-size:9px;font-weight:900;padding:4px 7px;border-radius:999px;background:var(--panel)}
.rate-engine-period-card.blue{border-color:rgba(75,140,255,.3)}.rate-engine-period-card.green{border-color:rgba(51,181,109,.3)}.rate-engine-period-card.orange{border-color:rgba(233,154,49,.35)}.rate-engine-period-card.unavailable{border-color:rgba(214,79,92,.35)}
.rate-engine-period-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:10px 0}.rate-engine-period-facts span{display:grid;gap:2px;padding:7px;border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:8px}.rate-engine-period-facts b{color:var(--text);font-size:10px}
.rate-why{border-top:1px solid var(--line);padding-top:8px}.rate-why>summary{cursor:pointer;color:var(--accent);font-size:9px;font-weight:850}.rate-why>div{display:grid;gap:4px;margin-top:8px}.rate-why-row{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:8px;align-items:start;padding:7px 8px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:8px;background:var(--panel)}.rate-why-row>span{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:800}.rate-why-row p{margin:0;font-size:9px;line-height:1.45;color:var(--muted)}.rate-why-row b{font-size:9px;white-space:nowrap}
.rate-manual-control{display:grid;gap:9px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.rate-manual-enable{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.rate-manual-enable input{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:1px 0!important;accent-color:var(--accent)}.rate-manual-enable span{display:grid;gap:2px}.rate-manual-enable b{font-size:10px}.rate-manual-enable small{font-size:8px;color:var(--muted)}.rate-manual-fields{display:grid;grid-template-columns:1.35fr .7fr auto;gap:8px;align-items:end}
.rate-period-engine{display:grid!important;grid-template-columns:auto 1fr auto;gap:2px 6px!important;align-items:center!important}.rate-period-engine>span{grid-row:1}.rate-period-engine>b{grid-row:1;text-align:right}.rate-period-engine>small{grid-column:1/3;grid-row:2;font-size:8px;color:color-mix(in srgb,var(--text) 62%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rate-period-engine>i{grid-column:3;grid-row:2;font-style:normal;font-size:8px;font-weight:900;text-align:right;white-space:nowrap}

@media(max-width:1200px){.rate-engine-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.rate-engine-inline-rule{grid-template-columns:minmax(150px,1fr) repeat(2,minmax(105px,.6fr));}.rate-engine-inline-rule>.danger-button{grid-column:-2/-1}.rate-engine-overview-stats,.rate-engine-principles{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-simulator-form{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.rate-engine-mode-picker,.rate-engine-three,.rate-engine-tier-grid{grid-template-columns:1fr}.rate-engine-rule-grid,.rate-engine-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-engine-weight-list{grid-template-columns:1fr}.rate-engine-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-simulator-hero{grid-template-columns:1fr 1fr}.rate-day-engine-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.rate-engine-toolbar,.rate-engine-section-head{flex-direction:column;align-items:stretch}.rate-engine-toolbar>.primary-button{width:100%}.rate-engine-mode-picker,.rate-engine-overview-stats,.rate-engine-principles,.rate-engine-form-grid,.rate-engine-rule-grid,.rate-engine-complexity-grid,.rate-engine-guardrail-grid,.rate-engine-target-grid,.rate-simulator-form,.rate-simulator-hero,.rate-day-engine-summary{grid-template-columns:1fr}.rate-engine-weight-list article{grid-template-columns:1fr auto}.rate-engine-weight-list .rate-engine-field{grid-column:1/-1}.rate-engine-inline-rule{grid-template-columns:1fr}.rate-engine-three,.rate-engine-profile-list,.rate-engine-rule-list,.rate-engine-tier-list,.rate-engine-form-grid,.rate-engine-complexity-grid,.rate-engine-guardrail-grid,.rate-engine-weight-list{padding-left:14px;padding-right:14px}.rate-engine-period-facts{grid-template-columns:1fr 1fr}.rate-manual-fields{grid-template-columns:1fr}.rate-engine-order-fixed{grid-template-columns:1fr}.rate-engine-tabs{position:sticky;top:0;z-index:8}}

/* v4.20.0 · per-period Base/Special availability controls */
.rate-engine-period-price{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.rate-engine-period-price .rate-engine-switch{min-height:40px}
.rate-engine-special-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.rate-engine-special-periods>article{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft);opacity:.68;transition:opacity .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.rate-engine-special-periods>article.active{opacity:1;border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel-soft));box-shadow:inset 3px 0 0 color-mix(in srgb,var(--accent) 70%,transparent)}
.rate-engine-special-periods>article>div:first-child{display:grid;gap:2px}.rate-engine-special-periods>article>div:first-child b{font-size:13px}.rate-engine-special-periods>article>div:first-child small{font-size:9px;color:var(--muted)}
@media(max-width:900px){.rate-engine-special-periods{grid-template-columns:1fr}}

/* v4.21.0 · Sales profiles, live presence, team chat & Sales payroll */
.session-user-button{width:100%;border:0;text-align:left;cursor:pointer;background:transparent;color:inherit;font:inherit}.session-user-button:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}
.team-dock-button{position:fixed;right:16px;bottom:18px;z-index:75;display:flex;align-items:center;gap:7px;min-height:34px;padding:0 12px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.22);backdrop-filter:blur(16px);color:var(--text);font-size:10px;font-weight:850;cursor:pointer}.team-dock-button>i{width:8px;height:8px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--muted) 12%,transparent)}.team-dock-button>i.connected{background:#42c77a;box-shadow:0 0 0 3px rgba(66,199,122,.13)}
.team-drawer{position:fixed;right:14px;top:14px;bottom:14px;z-index:90;width:min(355px,calc(100vw - 28px));border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.34);backdrop-filter:blur(22px);overflow:hidden}.team-drawer:not([hidden]){display:grid;grid-template-rows:auto auto minmax(135px,.75fr) minmax(220px,1.25fr)}.team-drawer>header{display:flex;align-items:center;justify-content:space-between;padding:15px 15px 12px;border-bottom:1px solid var(--line)}.team-drawer>header h3{margin:3px 0 0;font-size:18px}.team-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.team-section-head>b{font-size:10px}.team-section-head>small{font-size:8px;color:var(--muted)}
.team-status-control{padding:12px 14px;border-bottom:1px solid var(--line)}.team-status-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.team-status-buttons button{display:flex;justify-content:center;align-items:center;gap:5px;min-height:31px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft);color:var(--muted);font-size:9px;font-weight:800;cursor:pointer}.team-status-buttons button i{width:6px;height:6px;border-radius:50%;background:var(--muted)}.team-status-buttons button.active{color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}.team-status-buttons button[data-sales-status="available"].active i{background:#42c77a}.team-status-buttons button[data-sales-status="on_break"].active i{background:#e7aa42}.team-status-buttons button[data-sales-status="offline"].active i{background:#7e8796}
.team-live-list-section,.team-chat-section{min-height:0;display:grid;padding:12px 14px}.team-live-list-section{grid-template-rows:auto 1fr;border-bottom:1px solid var(--line)}.team-live-list{min-height:0;overflow:auto;margin-top:8px;display:grid;align-content:start;gap:5px}.team-presence-row{display:grid;grid-template-columns:8px 1fr;gap:8px;align-items:center;padding:7px 8px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.team-presence-row>i{width:7px;height:7px;border-radius:50%;background:#7e8796}.team-presence-row>div{display:grid;gap:1px}.team-presence-row b{font-size:9px}.team-presence-row span{font-size:8px;color:var(--muted)}.team-presence-row.active>i{background:#42c77a}.team-presence-row.break>i{background:#e7aa42}.team-presence-row.idle>i{background:#7aa1ee}.team-empty{padding:12px;color:var(--muted);font-size:9px;text-align:center}
.team-chat-section{grid-template-rows:auto 1fr auto}.team-chat-messages{min-height:0;overflow:auto;display:grid;align-content:start;gap:8px;padding:9px 0}.team-chat-message{max-width:88%;display:grid;gap:3px;padding:8px 9px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.team-chat-message.mine{justify-self:end;background:color-mix(in srgb,var(--accent) 9%,var(--panel-soft));border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}.team-chat-message>div{display:flex;justify-content:space-between;gap:8px}.team-chat-message b{font-size:8px}.team-chat-message time{font-size:7px;color:var(--muted)}.team-chat-message p{margin:0;font-size:9px;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}.team-chat-empty{align-self:center;text-align:center;color:var(--muted);font-size:9px}.team-chat-form{display:grid;grid-template-columns:1fr 34px;gap:6px;padding-top:8px;border-top:1px solid var(--line)}.team-chat-form input{min-width:0;height:34px}.team-chat-form button{min-width:34px;width:34px;height:34px;padding:0}
.dashboard-grid-sales{grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr)}.dashboard-team-panel{padding:16px}.dashboard-team-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px}.dashboard-team-head h3{margin:3px 0 0}.dashboard-team-head>small{font-size:9px;color:var(--muted)}.dashboard-team-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:260px;overflow:auto}
.sales-profile-shell,.sales-payroll-shell{display:grid;gap:14px;min-width:0}.sales-profile-hero{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:17px 18px;border-radius:16px}.sales-profile-avatar{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 11%,var(--panel));font-size:22px;font-weight:900}.sales-profile-copy{display:grid;gap:2px;min-width:0}.sales-profile-copy h3{margin:1px 0;font-size:22px}.sales-profile-copy>p{margin:0;color:var(--muted);font-size:10px}.sales-profile-presence{display:flex;align-items:center;gap:6px;width:max-content;margin-top:5px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;font-size:8px;font-weight:800;color:var(--muted)}.sales-profile-presence i{width:6px;height:6px;border-radius:50%;background:#7e8796}.sales-profile-presence.active i{background:#42c77a}.sales-profile-presence.break i{background:#e7aa42}.sales-profile-presence.idle i{background:#7aa1ee}
.sales-profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.sales-metric-card{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel)}.sales-metric-card>span{font-size:8px;text-transform:uppercase;font-weight:850;color:var(--muted)}.sales-metric-card>strong{font-size:20px}.sales-metric-card>b{font-size:10px}.sales-metric-card>small{font-size:8px;color:var(--muted)}.sales-profile-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:14px}.sales-goal-stack{display:grid;gap:10px}.sales-goal-card{display:grid;gap:9px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.sales-goal-card header,.sales-goal-card footer{display:flex;justify-content:space-between;gap:12px;align-items:center}.sales-goal-card header>div{display:grid;gap:2px}.sales-goal-card header span,.sales-goal-card footer span{font-size:8px;color:var(--muted)}.sales-goal-card header strong{font-size:12px}.sales-goal-card header>b{font-size:13px;color:var(--accent)}.sales-goal-card footer>b{font-size:8px}.sales-goal-track{height:6px;border-radius:999px;background:var(--line);overflow:hidden}.sales-goal-track i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.sales-comp-summary{display:grid;gap:8px}.sales-comp-summary>div{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.sales-comp-summary span{font-size:8px;color:var(--muted)}.sales-comp-summary b{font-size:15px}.sales-comp-summary small{grid-column:1/-1;font-size:8px;color:var(--muted)}
.sales-payroll-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;border-radius:16px}.sales-payroll-toolbar h3{margin:3px 0;font-size:20px}.sales-payroll-toolbar p{margin:0;color:var(--muted);font-size:9px}.sales-payroll-toolbar>div:last-child{display:flex;gap:6px}.sales-payroll-summary-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.sales-payroll-summary-cards>div{display:grid;gap:3px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.sales-payroll-summary-cards span{font-size:8px;color:var(--muted);text-transform:uppercase}.sales-payroll-summary-cards b{font-size:14px}.sales-payroll-summary-cards>div.primary{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--panel))}.sales-payroll-list{display:grid;gap:9px;padding:0 16px 16px}.sales-payroll-person{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.sales-payroll-person>header{display:flex;justify-content:space-between;gap:12px;align-items:center}.sales-payroll-person>header>strong{font-size:19px}.sales-payroll-person-link{display:grid;gap:2px;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.sales-payroll-person-link span{font-size:12px;font-weight:850}.sales-payroll-person-link small{font-size:8px;color:var(--muted)}.sales-payroll-person-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.sales-payroll-person-grid>div{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.sales-payroll-person-grid span{font-size:7px;text-transform:uppercase;color:var(--muted)}.sales-payroll-person-grid b{font-size:10px}.sales-bonus-line{display:grid;grid-template-columns:1fr 1fr;gap:7px}.sales-bonus-line>div{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.sales-bonus-status{font-size:8px}.sales-bonus-status.pending{color:#e7aa42}.sales-bonus-status.confirmed{color:#42c77a}.sales-bonus-status.muted{color:var(--muted)}.sales-bonus-line button{min-height:28px;padding:0 8px;font-size:8px}.sales-payroll-job-details{border-top:1px solid var(--line);padding-top:8px}.sales-payroll-job-details>summary{cursor:pointer;color:var(--accent);font-size:8px;font-weight:850}.sales-payroll-job-details>div{display:grid;gap:5px;margin-top:7px}.sales-payroll-job-details article{display:flex;justify-content:space-between;gap:12px;padding:8px 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.sales-payroll-job-details article>div{display:grid;gap:2px}.sales-payroll-job-details b{font-size:9px}.sales-payroll-job-details span{font-size:8px;color:var(--muted)}.sales-payroll-empty{padding:18px;text-align:center;color:var(--muted);font-size:9px}
.admin-sales-fields>.form-grid{padding:0;grid-column:1/-1}
.sales-comp-settings{display:grid;gap:14px}.sales-comp-program-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:16px}.sales-comp-program{display:grid;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.sales-comp-program>header{display:grid;grid-template-columns:1fr 32px;gap:6px}.sales-comp-program>header input{min-width:0;font-weight:800}.sales-comp-value{display:grid;gap:5px}.sales-comp-value>span,.sales-comp-users>span{font-size:8px;text-transform:uppercase;font-weight:850;color:var(--muted)}.sales-comp-users{display:grid;gap:5px}.sales-comp-users>label{display:grid;grid-template-columns:15px 1fr;gap:7px;align-items:start;padding:7px;border:1px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer}.sales-comp-users input{width:14px!important;height:14px!important;min-width:14px!important;margin:1px 0!important}.sales-comp-users label>span{display:grid;gap:1px}.sales-comp-users b{font-size:8px}.sales-comp-users small{font-size:7px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.sales-comp-save{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px}.sales-comp-save b{font-size:11px}.sales-comp-save p{margin:2px 0 0;color:var(--muted);font-size:8px}
.lead-tip-card{display:grid;grid-template-columns:minmax(200px,1fr) minmax(130px,.35fr) minmax(180px,.65fr) auto;gap:10px;align-items:end;margin-top:12px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 5%,var(--panel-soft))}.lead-tip-card>div:first-child{display:grid;gap:2px;align-self:center}.lead-tip-card h5{margin:0;font-size:12px}.lead-tip-card p{margin:0;color:var(--muted);font-size:8px;line-height:1.4}.lead-tip-card label{display:grid;gap:5px}.lead-tip-card label>span{font-size:8px;color:var(--muted);font-weight:800}.lead-tip-total{display:grid;gap:2px;padding:8px 10px;border-left:1px solid var(--line)}.lead-tip-total span{font-size:7px;color:var(--muted)}.lead-tip-total b{font-size:13px}
@media(max-width:1200px){.sales-profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-payroll-summary-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.sales-payroll-person-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-comp-program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-tip-card{grid-template-columns:1fr 1fr}.lead-tip-card>div:first-child,.lead-tip-total{grid-column:1/-1}.lead-tip-total{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:900px){.dashboard-grid-sales,.sales-profile-grid{grid-template-columns:1fr}.dashboard-team-list{grid-template-columns:1fr}.sales-payroll-summary-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.sales-comp-program-grid{grid-template-columns:1fr}}
@media(max-width:680px){.team-dock-button{right:10px;bottom:10px}.team-drawer{right:8px;left:8px;top:8px;bottom:8px;width:auto}.sales-profile-hero{grid-template-columns:48px 1fr}.sales-profile-hero>.secondary-button{grid-column:1/-1}.sales-profile-avatar{width:46px;height:46px}.sales-profile-metrics,.sales-payroll-summary-cards,.sales-payroll-person-grid,.sales-bonus-line{grid-template-columns:1fr 1fr}.sales-payroll-toolbar{align-items:stretch;flex-direction:column}.sales-payroll-toolbar>div:last-child button{flex:1}.sales-payroll-job-details article{flex-direction:column}.sales-comp-save{align-items:stretch;flex-direction:column}.sales-comp-save button{width:100%}.lead-tip-card{grid-template-columns:1fr}}

/* v4.21.1 · Sales account corrections, chat polish & goal setup */
.team-dock-button{overflow:visible}
.team-dock-button.has-unread{border-color:color-mix(in srgb,#ef4444 50%,var(--line));box-shadow:0 12px 30px rgba(0,0,0,.22),0 0 0 3px color-mix(in srgb,#ef4444 10%,transparent)}
.team-unread-badge{display:grid;place-items:center;position:absolute;right:-6px;top:-7px;min-width:18px;height:18px;padding:0 5px;border:2px solid var(--panel);border-radius:999px;background:#ef4444;color:#fff;font:800 8px/1 "DM Mono",monospace;box-shadow:0 5px 14px rgba(239,68,68,.3)}
.team-unread-badge[hidden]{display:none}
.team-drawer:not([hidden]){display:flex;flex-direction:column}
.team-drawer>header{flex:0 0 auto}
.team-status-control{flex:0 0 auto}
.team-live-list-section{flex:0 1 190px;min-height:92px;max-height:220px}
.team-chat-section{flex:1 1 auto;min-height:250px;overflow:hidden;grid-template-rows:auto minmax(0,1fr) auto}
.team-chat-messages{padding:10px 2px 12px;scrollbar-gutter:stable}
.team-chat-message{width:max-content;min-width:150px;max-width:88%}
.team-chat-message>div{align-items:center}.team-chat-message time{white-space:nowrap}
.team-chat-form{background:var(--panel);position:relative;z-index:1}
.sales-goal-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:16px}
.sales-goal-settings-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.sales-goal-settings-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.sales-goal-settings-card>header>div{display:grid;gap:2px}.sales-goal-settings-card h4{margin:0;font-size:12px}.sales-goal-settings-card header small{font-size:8px;color:var(--muted)}
.sales-goal-settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sales-goal-settings-fields label{display:grid;gap:5px}.sales-goal-settings-fields label>span{font-size:8px;text-transform:uppercase;font-weight:850;color:var(--muted)}
.sales-goal-settings-card.disabled{opacity:.62}
@media(max-width:900px){.sales-goal-settings-grid{grid-template-columns:1fr}}
@media(max-width:680px){.sales-goal-settings-fields{grid-template-columns:1fr}.team-live-list-section{max-height:170px}.team-chat-section{min-height:220px}}
.team-chat-peek{position:fixed;right:16px;bottom:62px;z-index:76;width:min(285px,calc(100vw - 32px));display:grid;gap:2px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 14px 34px rgba(0,0,0,.25);backdrop-filter:blur(18px);color:var(--text);text-align:left;cursor:pointer;animation:team-chat-peek-in .18s ease-out}.team-chat-peek[hidden]{display:none}.team-chat-peek b{font-size:9px}.team-chat-peek span{font-size:9px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes team-chat-peek-in{from{opacity:0;transform:translateY(7px) scale(.98)}to{opacity:1;transform:none}}@media(max-width:680px){.team-chat-peek{right:10px;bottom:56px}}

/* v4.21.2 · Dispatch workspace, Sales payroll projection & role polish */
.dispatch-zip-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.dispatch-zip-search>span{font:850 8px/1 "DM Mono",monospace;letter-spacing:.09em;color:var(--accent)}
.dispatch-zip-search input{min-width:0;height:36px;border:0!important;background:transparent!important;padding:0 4px!important;box-shadow:none!important}
.dispatch-zip-search button{width:30px;height:30px;min-height:30px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--muted);cursor:pointer}
.dispatch-zip-search button:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}
@media(min-width:1241px){
  .dispatch-board{height:clamp(520px,calc(100dvh - 315px),800px);min-height:0;align-items:stretch;overflow:hidden}
  .dispatch-fleet-column,.dispatch-jobs-column{height:100%;min-height:0;overflow:hidden;align-content:stretch}
  .dispatch-fleet-column{grid-template-rows:auto minmax(0,1fr)}
  .dispatch-jobs-column{grid-template-rows:auto auto minmax(0,1fr) auto}
  .dispatch-vehicle-list,.dispatch-job-list{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:4px;align-content:start}
  .dispatch-vehicle-list::-webkit-scrollbar,.dispatch-job-list::-webkit-scrollbar{width:8px}
  .dispatch-vehicle-list::-webkit-scrollbar-thumb,.dispatch-job-list::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 35%,transparent);border:2px solid transparent;background-clip:padding-box;border-radius:999px}
  .dispatch-booked-pagination{position:static;bottom:auto;margin-right:4px}
}
@media(max-width:1240px){.dispatch-vehicle-list,.dispatch-job-list{overflow:visible}.dispatch-zip-search{margin-bottom:2px}}

.sales-comp-user-picker{position:relative;min-width:0}
.sales-comp-user-picker>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;align-items:center;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer;list-style:none;transition:border-color .15s ease,background .15s ease}
.sales-comp-user-picker>summary::-webkit-details-marker{display:none}
.sales-comp-user-picker>summary:after{content:"⌄";grid-column:2;grid-row:1 / span 2;color:var(--muted);font-size:12px;transition:transform .15s ease}
.sales-comp-user-picker[open]>summary:after{transform:rotate(180deg)}
.sales-comp-user-picker>summary>span{grid-column:1/-1;font-size:8px;text-transform:uppercase;font-weight:850;color:var(--muted)}
.sales-comp-user-picker>summary>b{font-size:10px}.sales-comp-user-picker>summary>small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sales-comp-user-picker[open]>summary{border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel))}
.sales-comp-user-picker-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;display:grid;gap:5px;max-height:250px;overflow:auto;padding:7px;border:1px solid var(--line);border-radius:11px;background:var(--panel);box-shadow:0 18px 38px rgba(0,0,0,.24)}
.sales-comp-user-picker-menu>label{display:grid;grid-template-columns:16px minmax(0,1fr);gap:8px;align-items:center;padding:8px;border:1px solid transparent;border-radius:8px;cursor:pointer}
.sales-comp-user-picker-menu>label:hover{border-color:var(--line);background:var(--panel-soft)}
.sales-comp-user-picker-menu input{width:15px!important;height:15px!important;min-width:15px!important;margin:0!important}
.sales-comp-user-picker-menu label>span{display:grid;gap:1px;min-width:0}.sales-comp-user-picker-menu b{font-size:9px}.sales-comp-user-picker-menu small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.sales-payroll-estimate-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sales-payroll-estimate-panel{overflow:hidden;border-radius:16px}
.sales-payroll-estimate-panel.current{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));box-shadow:0 12px 34px color-mix(in srgb,var(--accent) 7%,transparent)}
.sales-payroll-estimate-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}
.sales-payroll-estimate-head h3{margin:3px 0;font-size:19px}.sales-payroll-estimate-head p{max-width:620px;margin:0;color:var(--muted);font-size:9px;line-height:1.5}
.sales-payroll-estimate-total{display:grid;gap:2px;text-align:right;min-width:150px}.sales-payroll-estimate-total>span{font-size:8px;text-transform:uppercase;color:var(--muted)}.sales-payroll-estimate-total>strong{font-size:24px;line-height:1.05;color:var(--text)}.sales-payroll-estimate-panel.current .sales-payroll-estimate-total>strong{color:var(--accent)}.sales-payroll-estimate-total>small{font-size:8px;color:var(--muted)}
.sales-payroll-estimate-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:11px 18px}.sales-payroll-estimate-metrics>div{display:grid;gap:2px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.sales-payroll-estimate-metrics span{font-size:7px;text-transform:uppercase;color:var(--muted)}.sales-payroll-estimate-metrics b{font-size:11px}
.sales-payroll-estimate-actions{display:flex;justify-content:flex-end;padding:0 18px 12px}.sales-payroll-estimate-actions button{min-height:32px;padding:0 11px;font-size:9px}
.sales-payroll-estimate-panel>.sales-payroll-job-details{margin:0 18px 16px}

@media(max-width:1100px){.sales-payroll-estimate-grid{grid-template-columns:1fr}.sales-payroll-estimate-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.dispatch-zip-search{grid-template-columns:auto minmax(0,1fr) auto}.sales-comp-user-picker-menu{position:static;margin-top:6px;box-shadow:none}.sales-payroll-estimate-head{grid-template-columns:1fr}.sales-payroll-estimate-total{text-align:left}.sales-payroll-estimate-metrics{grid-template-columns:1fr 1fr}}
.sales-payroll-summary-cards{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.sales-payroll-person-grid{grid-template-columns:repeat(auto-fit,minmax(115px,1fr))}
.sales-payroll-estimate-metrics{grid-template-columns:repeat(auto-fit,minmax(115px,1fr))}
.sales-comp-user-picker>summary>span{grid-column:1;grid-row:1}
.sales-comp-user-picker>summary>b{grid-column:1;grid-row:2}
.sales-comp-user-picker>summary>small{grid-column:1;grid-row:3}
.sales-comp-user-picker>summary:after{grid-column:2;grid-row:1 / span 3;align-self:center}
.sales-comp-settings>.settings-panel{overflow:visible}
.sales-comp-user-picker[open]{z-index:30}


/* v4.21.2.1 · Dispatch scroll correction, Sales assignment clarity, Payroll navigation */
@media(min-width:1241px){
  .dispatch-vehicle-list,.dispatch-job-list{display:flex;flex-direction:column;gap:12px;align-content:normal}
  .dispatch-vehicle-list>* ,.dispatch-job-list>*{flex:0 0 auto;min-height:max-content}
  .dispatch-fleet-column,.dispatch-jobs-column{min-height:0}
  .dispatch-vehicle-list,.dispatch-job-list{padding-bottom:8px}
}
.dispatch-zip-search{min-height:42px;padding:3px 9px}
.dispatch-zip-search input{height:34px!important}
.sales-comp-user-picker-primary>summary{border-color:color-mix(in srgb,var(--accent) 28%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--panel))}
.sales-comp-user-picker-primary>summary>span{color:var(--accent)}
.sales-payroll-person-clickable{cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}
.sales-payroll-person-clickable:hover,.sales-payroll-person-clickable:focus-visible{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--panel-soft));box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 7%,transparent);outline:none}
.sales-payroll-person-clickable:active{transform:translateY(1px)}
.sales-payroll-person-link em{font-style:normal;font-size:8px;font-weight:850;color:var(--accent);margin-top:2px}
.sales-profile-return-row{display:flex;align-items:center;justify-content:flex-start;margin-bottom:-4px}
.sales-profile-back{min-height:34px;padding:0 11px}

/* v4.22.0 · Live Lead collaboration, priority editing, spam flag & profile photos */
.lead-detail-hero-head{position:relative}
.lead-collab-host{display:flex;align-items:center;justify-content:center;min-width:250px;max-width:390px}
.lead-collab-live{display:flex;align-items:center;gap:10px;min-width:0}
.lead-collab-status{display:flex;align-items:center;gap:8px;min-width:0;padding:7px 9px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.lead-collab-status>div{display:grid;gap:1px;min-width:0}.lead-collab-status b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lead-collab-status small{font-size:7px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lead-collab-status .live-dot,.lead-collab-status.joining>i{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:#43c77a;box-shadow:0 0 0 3px rgba(67,199,122,.12)}
.lead-collab-status.waiting .live-dot{background:#e7aa42;box-shadow:0 0 0 3px rgba(231,170,66,.12)}
.lead-collab-status.joining>i{background:var(--muted);box-shadow:none;animation:mm-spin .9s linear infinite}
.lead-collab-actions{display:flex;gap:5px;margin-left:2px}.lead-collab-actions button{min-height:27px;padding:0 8px;font-size:7.5px;border-radius:8px}
.office-avatar{position:relative;display:grid;place-items:center;width:30px;height:30px;overflow:hidden;border-radius:50%;border:2px solid var(--panel);background:color-mix(in srgb,var(--accent) 14%,var(--panel));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 32%,var(--line));font-size:9px;font-weight:900;color:var(--text)}
.office-avatar img{width:100%;height:100%;object-fit:cover}.office-avatar.small{width:28px;height:28px}.office-avatar.owner{width:34px;height:34px;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 50%,var(--line)),0 7px 16px rgba(0,0,0,.15)}
.lead-collab-orbit{position:relative;flex:0 0 78px;width:78px;height:78px}
.lead-collab-owner{position:absolute;left:50%;top:50%;z-index:3;transform:translate(-50%,-50%)}.lead-collab-owner>span{position:absolute;right:-3px;bottom:-1px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;border:1px solid var(--line);background:var(--accent);color:#fff;font-size:7px}
.lead-collab-orbit-track{position:absolute;inset:0;animation:lead-collab-orbit-spin 18s linear infinite}.lead-collab-orbit:hover .lead-collab-orbit-track{animation-play-state:paused}
.lead-collab-orbit-item{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(calc((360deg / var(--orbit-count)) * var(--orbit-index))) translateX(31px) rotate(calc((-360deg / var(--orbit-count)) * var(--orbit-index)))}
.lead-collab-orbit-item .office-avatar{animation:lead-collab-avatar-counter 18s linear infinite}.lead-collab-orbit:hover .lead-collab-orbit-item .office-avatar{animation-play-state:paused}
.lead-collab-extra{position:absolute;right:0;bottom:1px;z-index:4;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:7px;font-weight:900;color:var(--muted)}
@keyframes lead-collab-orbit-spin{to{transform:rotate(360deg)}}@keyframes lead-collab-avatar-counter{to{transform:rotate(-360deg)}}
.lead-spam-toggle{display:flex;align-items:center;gap:6px;min-height:34px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);font-size:8px;font-weight:850;color:var(--muted);cursor:pointer}.lead-spam-toggle input{width:14px!important;height:14px!important;min-width:14px!important;margin:0!important}.lead-spam-toggle:has(input:checked){color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--line));background:color-mix(in srgb,var(--red) 7%,var(--panel))}
.lead-spam-badge{display:inline-flex;margin-left:7px;padding:3px 6px;border:1px solid color-mix(in srgb,var(--red) 45%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--red) 8%,var(--panel));color:var(--red);font:850 8px/1 "DM Mono",monospace;vertical-align:middle}
.lead-collab-readonly{position:relative}.lead-collab-readonly input:disabled,.lead-collab-readonly select:disabled,.lead-collab-readonly textarea:disabled{opacity:.72;cursor:not-allowed}.lead-collab-readonly button:disabled{opacity:.58;cursor:not-allowed}
.lead-collab-local-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0;padding:9px 11px;border:1px solid color-mix(in srgb,var(--orange) 40%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--orange) 7%,var(--panel));font-size:9px}.lead-collab-local-warning b{color:var(--orange)}.lead-collab-local-warning span{color:var(--muted)}
.lead-nudge-alert{position:fixed;right:18px;top:84px;z-index:120;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;width:min(360px,calc(100vw - 36px));padding:10px 11px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 18px 42px rgba(0,0,0,.25);backdrop-filter:blur(18px);color:var(--text);text-align:left;cursor:pointer;animation:team-chat-peek-in .18s ease-out}.lead-nudge-alert>span{display:grid;gap:2px;min-width:0}.lead-nudge-alert b{font-size:9px}.lead-nudge-alert small{font-size:8px;color:var(--muted);line-height:1.4}.lead-nudge-alert>i{font-style:normal;color:var(--muted)}
.sales-profile-avatar.has-photo{overflow:hidden;padding:0}.sales-profile-avatar.has-photo img{width:100%;height:100%;object-fit:cover}.sales-profile-hero-actions{display:flex;align-items:center;gap:8px}
@media(max-width:1250px){.lead-detail-hero-head{flex-wrap:wrap}.lead-collab-host{order:3;justify-content:flex-start;min-width:100%;max-width:none}.lead-collab-live{width:100%}}
@media(max-width:680px){.lead-collab-status{flex:1}.lead-collab-actions{flex-wrap:wrap}.lead-collab-orbit{flex-basis:66px;width:66px;height:66px}.lead-collab-orbit-item{transform:translate(-50%,-50%) rotate(calc((360deg / var(--orbit-count)) * var(--orbit-index))) translateX(26px) rotate(calc((-360deg / var(--orbit-count)) * var(--orbit-index)))}.sales-profile-hero-actions{grid-column:1/-1;width:100%}.sales-profile-hero-actions button{flex:1}.lead-nudge-alert{right:10px;top:72px;width:calc(100vw - 20px)}}
.office-avatar>b,.office-avatar>img,.sales-profile-avatar>b,.sales-profile-avatar>img{grid-area:1/1}

/* v4.22.0.3 · Stable floating collaboration motion, free dragging, avatar cooldown & Admin interaction polish */
.lead-collab-host.lead-collab-floating{
  position:fixed;
  right:18px;
  top:42vh;
  z-index:95;
  display:block;
  min-width:0;
  max-width:none;
  width:auto;
  pointer-events:none;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.22));
}
.lead-collab-host.lead-collab-floating.dragging{filter:drop-shadow(0 20px 36px rgba(0,0,0,.3))}
.lead-collab-float-card{display:grid;justify-items:center;gap:6px;pointer-events:auto;isolation:isolate}
.lead-collab-float-card[data-lead-collab-drag]{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.lead-collab-host.lead-collab-floating.dragging .lead-collab-float-card[data-lead-collab-drag]{cursor:grabbing}
.lead-collab-float-card[data-lead-collab-drag]:hover .lead-collab-float-caption{border-color:color-mix(in srgb,var(--accent) 32%,var(--line))}
.lead-collab-float-card.joining{padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 95%,transparent);backdrop-filter:blur(16px)}
.lead-collab-mini-status{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:8px;font-weight:800;white-space:nowrap}
.lead-collab-mini-status i{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:mm-spin .9s linear infinite}
.lead-collab-orbit{position:relative;flex:none;width:112px;height:112px}
.lead-collab-owner-wrap{position:absolute;left:50%;top:50%;z-index:8;transform:translate(-50%,-50%)}
.lead-collab-owner-wrap.nudge-cooling .office-avatar.owner{box-shadow:0 0 0 2px color-mix(in srgb,var(--muted) 35%,var(--line)),0 8px 20px rgba(0,0,0,.2)}
.lead-collab-owner .office-avatar.owner img,.lead-collab-owner .office-avatar.owner b{transition:filter .18s linear,opacity .18s linear}
.lead-collab-owner{position:relative;left:auto;top:auto;z-index:auto;transform:none;cursor:pointer}
.lead-collab-owner .office-avatar.owner{width:38px;height:38px;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 55%,var(--line)),0 8px 20px rgba(0,0,0,.2)}
.lead-collab-owner>span{right:-4px;bottom:-2px;width:16px;height:16px}
.lead-collab-orbit-track{position:absolute;inset:0;animation:lead-collab-orbit-spin 12s linear infinite}
.lead-collab-orbit:hover .lead-collab-orbit-track,.lead-collab-owner-wrap:hover~.lead-collab-orbit-track{animation-play-state:paused}
.lead-collab-orbit-item{transform:translate(-50%,-50%) rotate(calc((360deg / var(--orbit-count)) * var(--orbit-index))) translateX(47px) rotate(calc((-360deg / var(--orbit-count)) * var(--orbit-index)))}
.lead-collab-orbit-item .office-avatar{animation:lead-collab-avatar-counter 12s linear infinite}
.lead-collab-orbit:hover .lead-collab-orbit-item .office-avatar{animation-play-state:paused}
.lead-collab-extra{right:-2px;bottom:2px}
.lead-collab-owner-menu{
  position:absolute;
  right:calc(100% + 11px);
  top:50%;
  width:166px;
  display:grid;
  gap:6px;
  padding:9px;
  transform:translate(8px,-50%) scale(.97);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));
  border-radius:12px;
  background:color-mix(in srgb,var(--panel) 97%,transparent);
  box-shadow:0 16px 38px rgba(0,0,0,.28);
  backdrop-filter:blur(18px);
  transition:opacity .15s ease,transform .15s ease,visibility .15s ease;
}
.lead-collab-owner-wrap:hover .lead-collab-owner-menu,.lead-collab-owner-wrap:focus-within .lead-collab-owner-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0,-50%) scale(1)}
.lead-collab-owner-menu b{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-collab-owner-menu small{margin-top:-3px;color:var(--muted);font-size:7px;line-height:1.35}
.lead-collab-owner-menu.self{width:max-content;min-width:126px}
.lead-collab-owner-menu button{position:relative;overflow:hidden;isolation:isolate;width:100%;min-height:29px;padding:0 8px;border-radius:8px;font-size:8px;font-weight:850;transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease,color .14s ease}
.lead-collab-owner-menu button::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .14s ease;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.07) 46%,transparent 100%);pointer-events:none}
.lead-collab-owner-menu button:hover::after,.lead-collab-owner-menu button:focus-visible::after{opacity:1}
.lead-collab-nudge{border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));color:var(--text);background:color-mix(in srgb,var(--accent) 10%,var(--panel))}
.lead-collab-nudge.cooling:disabled{
  opacity:.58!important;
  color:var(--muted);
  border-color:var(--line);
  background:color-mix(in srgb,var(--muted) 7%,var(--panel));
  cursor:not-allowed;
}
.lead-collab-nudge.ready:hover,.lead-collab-nudge.ready:focus-visible{transform:translateY(-2px) scale(1.025);border-color:color-mix(in srgb,var(--accent) 68%,var(--line));background:color-mix(in srgb,var(--accent) 22%,var(--panel));box-shadow:0 9px 20px color-mix(in srgb,var(--accent) 20%,transparent)}
.lead-collab-nudge.ready:active{transform:translateY(1px) scale(.975);box-shadow:none}
.lead-collab-nudge.ready:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}
.lead-collab-takeover{border:1px solid color-mix(in srgb,var(--orange) 42%,var(--line));background:color-mix(in srgb,var(--orange) 9%,var(--panel));color:var(--orange)}
.lead-collab-takeover:hover,.lead-collab-takeover:focus-visible{transform:translateY(-2px) scale(1.025);border-color:color-mix(in srgb,var(--orange) 72%,var(--line));background:color-mix(in srgb,var(--orange) 22%,var(--panel));box-shadow:0 9px 20px color-mix(in srgb,var(--orange) 22%,transparent);color:color-mix(in srgb,var(--orange) 86%,white)}
.lead-collab-takeover:active{transform:translateY(1px) scale(.975);background:color-mix(in srgb,var(--orange) 28%,var(--panel));box-shadow:none}
.lead-collab-takeover:focus-visible{outline:2px solid color-mix(in srgb,var(--orange) 58%,transparent);outline-offset:2px}
.lead-collab-float-caption{display:flex;align-items:center;gap:5px;width:max-content;padding:4px 7px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 94%,transparent);backdrop-filter:blur(14px);font-size:7px;font-weight:850;color:var(--muted);white-space:nowrap}
.lead-collab-float-caption i{width:6px;height:6px;border-radius:50%;background:#43c77a;box-shadow:0 0 0 2px rgba(67,199,122,.12)}
.lead-collab-float-caption.waiting i{background:#e7aa42;box-shadow:0 0 0 2px rgba(231,170,66,.12)}
.lead-sales-line{display:flex;align-items:center;gap:8px;min-width:0;margin-top:4px;flex-wrap:wrap}
.lead-sales-line>b{margin-top:0;min-width:0}
.lead-salesperson-info .lead-sales-line{margin-top:6px}
.lead-salesperson-control{display:flex;align-items:flex-end;gap:8px;min-width:0;flex-wrap:wrap}
.lead-salesperson-control>.field{flex:1 1 220px;min-width:200px;margin:0}
.lead-spam-chip{display:inline-flex;align-items:center;justify-content:center;gap:0;flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-soft) 86%,transparent),color-mix(in srgb,var(--panel) 92%,transparent));color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.14em;line-height:1;text-transform:uppercase;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease}
.lead-spam-chip.active{color:#ff8f9c;border-color:color-mix(in srgb,var(--red) 55%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--red) 12%,var(--panel-soft)),color-mix(in srgb,var(--red) 7%,var(--panel)));box-shadow:0 10px 22px color-mix(in srgb,var(--red) 10%,transparent),inset 0 0 0 1px rgba(255,255,255,.03)}
button.lead-spam-chip{cursor:pointer}
button.lead-spam-chip:hover,button.lead-spam-chip:focus-visible{transform:translateY(-1px);border-color:color-mix(in srgb,var(--red) 42%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--red) 10%,var(--panel-soft)),color-mix(in srgb,var(--red) 5%,var(--panel)));color:#ff8f9c;box-shadow:0 9px 20px color-mix(in srgb,var(--red) 11%,transparent)}
button.lead-spam-chip:active{transform:translateY(1px) scale(.985);box-shadow:none}
button.lead-spam-chip:focus-visible{outline:2px solid color-mix(in srgb,var(--red) 55%,transparent);outline-offset:2px}
.lead-salesperson-control>.lead-spam-chip{align-self:flex-end;margin-bottom:3px}
@media(max-width:1250px){
  .lead-collab-host.lead-collab-floating{position:fixed;right:14px;min-width:0;max-width:none;width:auto}
}
@media(max-width:680px){
  .lead-collab-host.lead-collab-floating{right:10px;transform:none}
  .lead-collab-orbit{width:94px;height:94px}
  .lead-collab-orbit-item{transform:translate(-50%,-50%) rotate(calc((360deg / var(--orbit-count)) * var(--orbit-index))) translateX(39px) rotate(calc((-360deg / var(--orbit-count)) * var(--orbit-index)))}
  .lead-collab-owner-menu{right:calc(100% + 8px);width:150px}
  .lead-collab-float-caption{display:none}
}
@media(prefers-reduced-motion:reduce){.lead-collab-orbit-track,.lead-collab-orbit-item .office-avatar{animation:none!important}}

/* v4.23.0 · Sales notes, Admin workspace, bonus teams & Sales Dispatch read-only */
.sales-notes-dock-button{position:fixed;right:88px;bottom:18px;z-index:75;display:flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--panel) 95%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.2);backdrop-filter:blur(16px);color:var(--text);font-size:9px;font-weight:850;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
.sales-notes-dock-button:hover,.sales-notes-dock-button[aria-expanded="true"]{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));box-shadow:0 14px 32px rgba(0,0,0,.24)}
.sales-notes-dock-button>span{font-size:13px;line-height:1;color:var(--accent)}.sales-notes-dock-button>b{font-size:9px}
.sales-notes-drawer{position:fixed;right:14px;top:14px;bottom:14px;z-index:90;width:min(355px,calc(100vw - 28px));border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.34);backdrop-filter:blur(22px);overflow:hidden}
.sales-notes-drawer:not([hidden]){display:flex;flex-direction:column}.sales-notes-drawer>header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding:15px;border-bottom:1px solid var(--line)}.sales-notes-drawer>header h3{margin:3px 0 0;font-size:18px}
.sales-notes-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;flex:0 0 auto;padding:12px 14px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel-soft) 52%,transparent)}
.sales-notes-form textarea{min-height:58px;max-height:130px;resize:vertical}.sales-notes-form button{min-height:38px;padding-inline:12px}
.sales-notes-list{display:grid;align-content:start;gap:9px;flex:1 1 auto;min-height:0;overflow-y:auto;padding:12px 14px 18px;scrollbar-gutter:stable}
.sales-personal-note{display:grid;gap:7px;padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.sales-personal-note textarea{min-height:82px;resize:vertical;background:color-mix(in srgb,var(--panel) 86%,transparent)!important}.sales-personal-note footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.sales-personal-note footer time{font-size:7px;color:var(--muted)}.sales-personal-note footer>div{display:flex;gap:5px}.sales-personal-note footer button{min-height:27px;padding:0 8px;font-size:8px}.sales-notes-empty{padding:28px 12px;text-align:center;color:var(--muted);font-size:9px}

.admin-workspace-shell{display:grid;gap:14px}.admin-workspace-hero{padding:20px 22px}.admin-workspace-hero h3{margin:4px 0 3px;font-size:24px}.admin-workspace-hero p{margin:0;max-width:700px;color:var(--muted);font-size:10px;line-height:1.5}
.admin-workspace-tabs{display:flex;align-items:center;gap:5px;padding:6px;overflow-x:auto;scrollbar-width:none}.admin-workspace-tabs::-webkit-scrollbar{display:none}.admin-workspace-tabs button{flex:0 0 auto;min-height:36px;padding:0 15px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:9px;font-weight:800;cursor:pointer}.admin-workspace-tabs button:hover{color:var(--text);background:var(--panel-soft)}.admin-workspace-tabs button.active{color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--panel));box-shadow:inset 0 -2px 0 var(--accent)}
.admin-workspace-empty{display:grid;place-items:start;min-height:220px;padding:26px}.admin-workspace-empty h3{margin:5px 0 3px;font-size:22px}.admin-workspace-empty p{margin:0;color:var(--muted);font-size:10px}

.sales-bonus-settings-panel,.sales-team-settings-panel{overflow:visible!important}.sales-bonus-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 16px 18px}.sales-bonus-settings-grid>article{display:grid;align-content:start;gap:12px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.sales-bonus-settings-grid>article>header{display:flex;align-items:flex-start;gap:10px}.sales-bonus-settings-grid>article>header>div{display:grid;gap:2px}.sales-bonus-settings-grid>article>header b{font-size:11px}.sales-bonus-settings-grid>article>header small{font-size:8px;line-height:1.45;color:var(--muted)}
.sales-bonus-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sales-bonus-field-grid label,.sales-team-bonus-fields label{display:grid;align-content:start;gap:5px;min-width:0}.sales-bonus-field-grid label>span,.sales-team-bonus-fields label>span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.sales-bonus-field-grid label>small{font-size:7px;color:var(--muted)}
.sales-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px}.sales-team-settings-card{position:relative;display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.sales-team-settings-card>header{display:flex;align-items:center;gap:8px}.sales-team-settings-card>header input[type="text"]{flex:1;min-width:0;font-weight:800}.sales-team-settings-card>header .icon-button{flex:0 0 auto}.sales-team-active{display:flex!important;grid-template-columns:16px auto!important;align-items:center;gap:6px!important;flex:0 0 auto;color:var(--muted);font-size:8px}.sales-team-active input{width:15px!important;height:15px!important;min-width:15px!important;margin:0!important}
.sales-team-settings-card .sales-comp-user-picker{position:relative}.sales-team-settings-card .sales-comp-user-picker>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;min-height:52px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer;list-style:none}.sales-team-settings-card .sales-comp-user-picker>summary::-webkit-details-marker{display:none}.sales-team-settings-card .sales-comp-user-picker>summary span{font-size:7px;text-transform:uppercase;color:var(--muted)}.sales-team-settings-card .sales-comp-user-picker>summary b{font-size:9px}.sales-team-settings-card .sales-comp-user-picker>summary small{font-size:7px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sales-team-settings-card .sales-comp-user-picker>summary:after{content:"⌄";grid-column:2;grid-row:1/span 3;color:var(--muted)}.sales-team-settings-card .sales-comp-user-picker[open]>summary:after{transform:rotate(180deg)}
.sales-team-settings-card .sales-comp-user-picker-menu{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:32;display:grid;gap:4px;max-height:225px;overflow:auto;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--panel);box-shadow:0 16px 34px rgba(0,0,0,.25)}.sales-team-settings-card .sales-comp-user-picker-menu label{display:grid;grid-template-columns:16px minmax(0,1fr);gap:7px;align-items:center;padding:7px;border-radius:8px;cursor:pointer}.sales-team-settings-card .sales-comp-user-picker-menu label:hover{background:var(--panel-soft)}.sales-team-settings-card .sales-comp-user-picker-menu input{width:15px!important;height:15px!important;min-width:15px!important;margin:0!important}.sales-team-settings-card .sales-comp-user-picker-menu label>span{display:grid;gap:1px}.sales-team-settings-card .sales-comp-user-picker-menu b{font-size:9px}.sales-team-settings-card .sales-comp-user-picker-menu small{font-size:7px;color:var(--muted)}
.sales-team-bonus-config{margin:0 16px 18px;padding:13px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}.sales-team-bonus-config>header{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.sales-team-bonus-config>header>div{display:grid;gap:2px}.sales-team-bonus-config>header b{font-size:11px}.sales-team-bonus-config>header small{font-size:8px;color:var(--muted)}.sales-team-bonus-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}

.sales-team-progress-panel{padding-bottom:14px}.sales-team-progress-panel>.panel-head{align-items:center}.sales-team-progress-panel>.panel-head>strong{font-size:24px;color:var(--accent)}.sales-goal-track.large{height:8px;margin:0 16px 14px}.sales-team-progress-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:0 16px 12px}.sales-team-progress-summary>div{display:grid;gap:2px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.sales-team-progress-summary span{font-size:7px;text-transform:uppercase;color:var(--muted)}.sales-team-progress-summary b{font-size:11px}.sales-team-member-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:7px;padding:0 16px 12px}.sales-team-member-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.sales-team-member-list span{font-size:9px;font-weight:800}.sales-team-member-list b{font-size:10px}.sales-team-member-list small{grid-column:1/-1;font-size:7px;color:var(--muted)}.sales-team-progress-panel>footer{display:flex;justify-content:space-between;gap:10px;padding:0 16px;color:var(--muted);font-size:8px}.sales-team-progress-panel>footer b{color:var(--orange)}
.admin-sales-notes-panel{overflow:hidden}.admin-sales-notes-list{display:grid;gap:8px;padding:14px 16px}.admin-sales-notes-list article{display:grid;gap:5px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.admin-sales-notes-list p{margin:0;font-size:9px;line-height:1.5;white-space:pre-wrap}.admin-sales-notes-list time{font-size:7px;color:var(--muted)}

.sales-bonus-status{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);font-size:8px;font-weight:800;color:var(--muted)}.sales-bonus-status.pending{border-color:color-mix(in srgb,var(--orange) 45%,var(--line));color:var(--orange);background:color-mix(in srgb,var(--orange) 7%,var(--panel))}.sales-bonus-status.confirmed{border-color:color-mix(in srgb,#42c77a 45%,var(--line));color:#42c77a;background:color-mix(in srgb,#42c77a 7%,var(--panel))}.sales-bonus-status.muted{opacity:.7}
.sales-team-payroll-panel{margin-top:12px}.sales-team-payroll-list{display:grid;gap:8px;padding:12px 16px 16px}.sales-team-payroll-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.sales-team-payroll-row>div{display:grid;gap:2px}.sales-team-payroll-row b{font-size:10px}.sales-team-payroll-row span,.sales-team-payroll-row small{font-size:8px;color:var(--muted)}.sales-team-payroll-row>strong{font-size:16px}.sales-team-payroll-row .sales-bonus-confirm-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:6px}

.dispatch-readonly-card{cursor:default!important}.dispatch-view-only-tag{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);color:var(--muted);font-size:8px;font-weight:800}.dispatch-driver-readonly{display:grid;justify-items:end;gap:1px;min-width:190px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.dispatch-driver-readonly b{font-size:10px}.dispatch-driver-readonly small{font-size:7px;color:var(--muted)}.dispatch-drop-zone-readonly{border-style:solid}.dispatch-empty-readonly span{display:none}

@media(max-width:1050px){.sales-bonus-settings-grid,.sales-team-grid{grid-template-columns:1fr}.sales-team-bonus-fields{grid-template-columns:1fr 1fr}.sales-team-progress-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.sales-notes-dock-button{right:75px;bottom:10px}.sales-notes-drawer{right:8px;left:8px;top:8px;bottom:8px;width:auto}.sales-notes-form{grid-template-columns:1fr}.sales-notes-form button{width:100%}.admin-workspace-hero{padding:16px}.admin-workspace-tabs button{padding-inline:11px}.sales-bonus-settings-grid,.sales-team-grid{padding-inline:10px}.sales-bonus-field-grid,.sales-team-bonus-fields,.sales-team-progress-summary{grid-template-columns:1fr}.sales-team-bonus-config{margin-inline:10px}.dispatch-driver-readonly{min-width:0;justify-items:start}.sales-team-member-list{grid-template-columns:1fr}}
.sales-team-payroll-confirm{margin-bottom:12px;overflow:hidden}.sales-team-payroll-confirm .sales-team-payroll-list{display:grid;gap:8px;padding:12px 16px 16px}.sales-team-payroll-confirm .sales-team-payroll-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.sales-team-payroll-confirm .sales-team-payroll-list>article.eligible{border-color:color-mix(in srgb,var(--accent) 26%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}.sales-team-payroll-confirm .sales-team-payroll-list>article>div{display:grid;gap:2px}.sales-team-payroll-confirm .sales-team-payroll-list>article span{font-size:8px;color:var(--muted)}.sales-team-payroll-confirm .sales-team-payroll-list>article>strong{font-size:15px}.sales-team-payroll-confirm .sales-team-payroll-list>article>button{min-height:31px;padding-inline:10px;font-size:8px}
@media(max-width:680px){.sales-team-payroll-confirm .sales-team-payroll-list>article{grid-template-columns:1fr auto}.sales-team-payroll-confirm .sales-team-payroll-list>article>button,.sales-team-payroll-confirm .sales-team-payroll-list>article>.sales-bonus-status{grid-column:1/-1}}

/* v4.24.0 · Admin finance, people, workflow notifications and source analytics */
.nav-item{position:relative}
.nav-notification-dot{position:absolute;right:9px;top:8px;width:8px;height:8px;border-radius:50%;border:0;background:radial-gradient(circle at 35% 30%,#ff7676 0 24%,#ef4444 56%,#d92f2f 100%);box-shadow:0 0 7px rgba(239,68,68,.48);pointer-events:none}
body.sidebar-collapsed .nav-notification-dot{right:7px;top:6px}
.tab-notification-dot{display:inline-block;flex:0 0 auto;width:7px;height:7px;margin-left:7px;border:0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff7676 0 24%,#ef4444 56%,#d92f2f 100%);box-shadow:0 0 6px rgba(239,68,68,.42);vertical-align:middle;pointer-events:none}
.admin-workspace-tabs button,.detail-tabs button{display:inline-flex;align-items:center;justify-content:center}
.workflow-notifications{padding:18px;margin-top:14px}.workflow-notifications .panel-head>strong{min-width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:color-mix(in srgb,#ef4444 10%,var(--panel));border:1px solid color-mix(in srgb,#ef4444 24%,var(--line));font-size:13px}.workflow-notification-list{display:grid;gap:7px;margin-top:12px}.workflow-notification{width:100%;display:grid;grid-template-columns:8px minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);color:var(--text);text-align:left;cursor:pointer}.workflow-notification:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));transform:translateY(-1px)}.workflow-notification>i{width:7px;height:7px;border-radius:50%;background:var(--accent)}.workflow-notification.warning>i{background:#f59e0b}.workflow-notification.critical>i{background:#ef4444}.workflow-notification span{display:grid;gap:3px}.workflow-notification small,.workflow-notification em{color:var(--muted);font-size:9px;font-style:normal}.workflow-notification-empty{padding:16px;border:1px dashed var(--line);border-radius:12px;display:grid;gap:4px}.workflow-notification-empty span{color:var(--muted);font-size:10px}

.charge-edit-row{grid-template-columns:minmax(150px,1.1fr) 82px 110px minmax(155px,.9fr) minmax(130px,.9fr) 42px}.charge-ledger>header,.charge-ledger>div{grid-template-columns:minmax(0,1fr) 150px 70px 110px 120px}.quote-display-badge{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;border:1px solid var(--line);font-style:normal;font-size:9px;white-space:nowrap}.quote-display-badge.rolled{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));color:var(--text)}.inventory-room-accordion>[data-room-accordion-hit]{cursor:pointer}

.admin-sheet-panel,.admin-employees-panel,.admin-vacation-requests,.admin-revenue-panel{padding:18px;min-width:0}.admin-sheet-head{gap:18px}.admin-sheet-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.admin-finance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.admin-finance-summary article{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);display:grid;gap:5px}.admin-finance-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.admin-finance-summary b{font-size:17px}.admin-sheet-scroll,.admin-table-scroll{overflow:auto;border:1px solid var(--line);border-radius:13px}.admin-payments-table,.admin-employee-table,.admin-source-table{width:100%;border-collapse:separate;border-spacing:0;min-width:1120px;font-size:10px}.admin-payments-table th,.admin-payments-table td,.admin-employee-table th,.admin-employee-table td,.admin-source-table th,.admin-source-table td{padding:9px 9px;border-bottom:1px solid var(--line);background:var(--panel);vertical-align:middle}.admin-payments-table thead th,.admin-employee-table thead th,.admin-source-table thead th{position:sticky;top:0;z-index:2;color:var(--muted);font:700 8px "DM Mono",monospace;letter-spacing:.07em;text-transform:uppercase;background:var(--panel-strong)}.admin-payments-table th:first-child,.admin-payments-table td:first-child{position:sticky;left:0;z-index:1;min-width:175px}.admin-payments-table thead th:first-child{z-index:3}.admin-payments-table tfoot th{font-weight:800;background:var(--panel-strong);white-space:nowrap}.admin-month-cell{width:82px;min-height:34px!important;padding:6px 7px!important;text-align:right}.money-cell{white-space:nowrap;text-align:right}.admin-payment-name>button{display:flex;align-items:center;gap:7px;width:100%;border:0;background:transparent;color:var(--text);padding:0;text-align:left;cursor:pointer}.admin-note-dot{position:relative;width:18px;height:18px;display:grid;place-items:center;border-radius:50%;font:800 9px "DM Mono",monospace;background:color-mix(in srgb,var(--accent) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));font-style:normal}.admin-note-dot span{display:none;position:absolute;left:22px;top:-8px;z-index:20;width:230px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-strong);box-shadow:0 14px 38px rgba(0,0,0,.25);font:500 10px/1.45 Inter,sans-serif;white-space:normal}.admin-note-dot:hover span,.admin-note-dot:focus span{display:block}

.admin-employees-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.admin-employee-table{min-width:1050px}.admin-employee-table td:first-child{display:grid;gap:2px}.admin-employee-table td:first-child small,.admin-employee-table td:nth-child(6) small{display:block;color:var(--muted);font-size:8px;margin-top:2px}.admin-row-actions{display:flex;gap:5px;justify-content:flex-end}.admin-row-actions button{padding-inline:9px;min-height:31px}.admin-vacation-requests .admin-request-count{min-width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:var(--panel-soft)}.admin-request-list{display:grid;gap:8px;margin-top:11px}.admin-request-list article,.admin-timeoff-history article,.vacation-blackout-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.admin-request-list article>div:first-child,.admin-timeoff-history article>div,.vacation-blackout-list article>div{display:grid;gap:3px}.admin-request-list span,.admin-timeoff-history span,.vacation-blackout-list span{font-size:10px}.admin-request-list small,.admin-timeoff-history small,.vacation-blackout-list small{color:var(--muted);font-size:9px}.admin-request-list article>div:last-child{display:flex;gap:6px}.admin-timeoff-history{display:grid;gap:8px}

.employee-vacation-panel{padding:17px;margin:0}.employee-vacation-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.employee-vacation-stats>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);display:grid;gap:4px}.employee-vacation-stats span{font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.employee-vacation-stats b{font-size:17px}.employee-vacation-period{margin-top:9px;color:var(--muted);font-size:9px}.employee-vacation-history{display:grid;gap:6px;margin-top:10px}.employee-vacation-history article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);font-size:9px}.employee-vacation-history small{color:var(--muted)}

.vacation-policy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}.vacation-policy-summary>label,.vacation-policy-summary>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);display:grid;gap:5px}.vacation-policy-summary span{font-size:9px;color:var(--muted)}.vacation-policy-summary input{max-width:150px}.vacation-policy-summary small{color:var(--muted);font-size:8px}.vacation-tier-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:10px}.vacation-tier-grid article{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);display:grid;gap:7px}.vacation-tier-grid article>span{font-weight:800;font-size:10px}.vacation-tier-grid label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:9px}.vacation-tier-grid input{width:68px}.vacation-tier-grid small{font-size:8px;color:var(--muted);line-height:1.4}.vacation-blackout-list{display:grid;gap:8px;margin-top:12px}.blackout-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}.blackout-role-grid label{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}

.admin-revenue-controls{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;margin:13px 0}.admin-revenue-controls>label{display:grid;gap:4px;font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.admin-revenue-controls select,.admin-revenue-controls input{min-height:35px;min-width:120px}.admin-source-filter{position:relative}.admin-source-filter>summary{min-height:35px;display:flex;align-items:center;padding:0 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft);cursor:pointer;font-size:9px;font-weight:700}.admin-source-filter>div{position:absolute;z-index:20;top:40px;right:0;width:260px;max-height:320px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--panel-strong);box-shadow:0 16px 40px rgba(0,0,0,.25)}.admin-source-filter label{display:flex;align-items:center;gap:8px;padding:7px;border-radius:8px;font-size:9px}.admin-source-filter label:hover{background:var(--panel-soft)}.admin-view-toggle{display:flex;border:1px solid var(--line);border-radius:9px;overflow:hidden}.admin-view-toggle button{min-height:33px;padding:0 12px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:9px}.admin-view-toggle button.active{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--text)}.admin-source-table{min-width:760px}.admin-source-table td:not(:first-child),.admin-source-table th:not(:first-child){text-align:right}.admin-source-graph{display:grid;gap:9px;padding:14px 2px}.admin-source-graph article{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;align-items:center}.admin-source-graph-label{display:grid;gap:2px}.admin-source-graph-label span{color:var(--muted);font-size:8px}.admin-source-graph-track{position:relative;height:27px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);overflow:visible}.admin-source-total{position:absolute;left:0;top:0;bottom:0;display:block;border-radius:7px;background:color-mix(in srgb,var(--muted) 18%,transparent);overflow:hidden}.admin-source-booked{display:block;height:100%;border-radius:inherit;background:color-mix(in srgb,var(--accent) 70%,transparent)}.admin-source-tooltip{display:none;position:absolute;z-index:30;left:50%;top:-12px;translate:-50% -100%;min-width:190px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-strong);box-shadow:0 14px 38px rgba(0,0,0,.28);font-size:9px}.admin-source-tooltip b,.admin-source-tooltip span{display:block}.admin-source-tooltip span{color:var(--muted);margin-top:3px}.admin-source-graph-track:hover .admin-source-tooltip,.admin-source-graph-track:focus .admin-source-tooltip{display:block}

@media(max-width:1100px){.admin-finance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.vacation-tier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.employee-vacation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.charge-edit-row{grid-template-columns:1fr 1fr 42px}.charge-edit-row>[data-field="label"],.charge-edit-row>[data-field="quoteDisplay"],.charge-edit-row>[data-field="notes"]{grid-column:1/3}.charge-ledger>header{display:none}.charge-ledger>div{grid-template-columns:1fr auto}.charge-ledger>div>span:first-child{grid-column:1/-1}.charge-ledger>div>span:nth-child(2){grid-column:1/-1}.admin-finance-summary,.vacation-policy-summary,.vacation-tier-grid,.employee-vacation-stats{grid-template-columns:1fr}.admin-sheet-actions{justify-content:flex-start}.admin-source-graph article{grid-template-columns:1fr;gap:5px}.blackout-role-grid{grid-template-columns:1fr 1fr}.admin-request-list article,.vacation-blackout-list article{align-items:flex-start;flex-direction:column}.employee-vacation-history article{align-items:flex-start;flex-direction:column}}

/* v4.24.0.1 Admin polish: weekly pay, deposit returns, vacation controls, source filter */
.admin-deposit-cell{display:grid;gap:3px;min-width:132px;text-align:left}.admin-deposit-cell>b{font-size:10px}.admin-deposit-cell>small{font-size:8px;color:var(--muted)}.admin-deposit-status{width:max-content;max-width:100%;padding:3px 6px;border-radius:999px;border:1px solid var(--line);font-size:8px;font-weight:700;white-space:nowrap}.admin-deposit-status.returned{color:#16a34a;background:color-mix(in srgb,#16a34a 8%,var(--panel));border-color:color-mix(in srgb,#16a34a 28%,var(--line))}.admin-deposit-status.due{color:#b45309;background:color-mix(in srgb,#f59e0b 9%,var(--panel));border-color:color-mix(in srgb,#f59e0b 30%,var(--line))}.admin-deposit-status.overdue{color:#dc2626;background:color-mix(in srgb,#ef4444 9%,var(--panel));border-color:color-mix(in srgb,#ef4444 32%,var(--line))}.admin-deposit-status.scheduled,.admin-deposit-status.neutral{color:var(--muted);background:var(--panel-soft)}.admin-deposit-return-button{width:max-content;min-height:25px;padding:3px 7px;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:7px;background:color-mix(in srgb,var(--accent) 8%,var(--panel));color:var(--text);font-size:8px;font-weight:700;cursor:pointer}.admin-deposit-return-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--panel))}
.deposit-return-confirm,.vacation-decision-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.deposit-return-confirm>div,.vacation-decision-card>div{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.deposit-return-confirm span,.vacation-decision-card span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.deposit-return-confirm b,.vacation-decision-card b{font-size:11px}.deposit-return-confirm>p,.vacation-decision-card>p{grid-column:1/-1;margin:0;padding:10px 11px;border-radius:10px;background:var(--panel-soft);color:var(--muted);font-size:9px;line-height:1.45}.vacation-decision-card>p{display:grid;gap:4px}.vacation-decision-card>p strong{color:var(--text);font-size:9px}
.admin-vacation-cell{display:grid;gap:5px;min-width:150px}.admin-vacation-cell>div{display:flex;align-items:baseline;gap:5px}.admin-vacation-cell>div>b{font-size:13px}.admin-vacation-cell>div>span{font-size:9px;color:var(--text)}.admin-vacation-cell>small{display:flex!important;gap:4px!important;flex-wrap:wrap;margin:0!important}.admin-vacation-cell>small>em{font-style:normal;padding:2px 5px;border-radius:999px;background:var(--panel-soft);border:1px solid var(--line);white-space:nowrap}.admin-employee-table th:nth-child(6),.admin-employee-table td:nth-child(6){min-width:165px}
.admin-source-filter>summary{min-width:150px;justify-content:space-between;gap:14px}.admin-source-filter>summary span{font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.admin-source-filter>summary b{font-size:9px;color:var(--text)}.admin-source-filter>div.admin-source-filter-popover{width:310px;padding:0;overflow:hidden}.admin-source-filter-popover>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border-bottom:1px solid var(--line);background:var(--panel-soft)}.admin-source-filter-popover>header>span{font-size:9px;font-weight:700}.admin-source-filter-popover>header>div{display:flex;gap:5px}.admin-source-filter-popover>header button{min-height:25px;padding:3px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);font-size:8px;cursor:pointer}.admin-source-filter-popover>header button:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 38%,var(--line))}.admin-source-options{max-height:280px;overflow:auto;padding:7px;display:grid;grid-template-columns:1fr 1fr;gap:5px}.admin-source-option{display:flex;align-items:center;gap:7px;min-height:31px;padding:5px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);font-size:9px;text-align:left;cursor:pointer}.admin-source-option:hover{background:var(--panel-soft)}.admin-source-option i{width:15px;height:15px;display:grid;place-items:center;flex:0 0 15px;border-radius:4px;border:1px solid var(--line);color:transparent;font-style:normal;font-size:9px}.admin-source-option.selected{background:color-mix(in srgb,var(--accent) 7%,var(--panel));border-color:color-mix(in srgb,var(--accent) 24%,var(--line))}.admin-source-option.selected i{background:var(--accent);border-color:var(--accent);color:#fff}
.blackout-role-grid .blackout-role-option{position:relative;display:flex;align-items:center;gap:8px;min-height:39px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft);cursor:pointer;transition:border-color .15s ease,background .15s ease,opacity .15s ease}.blackout-role-grid .blackout-role-option input{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;pointer-events:none}.blackout-role-grid .blackout-role-option i{width:16px;height:16px;display:grid;place-items:center;flex:0 0 16px;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:transparent;font-style:normal;font-size:9px}.blackout-role-grid .blackout-role-option span{font-size:9px}.blackout-role-grid .blackout-role-option:has(input:checked){border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel))}.blackout-role-grid .blackout-role-option:has(input:checked) i{background:var(--accent);border-color:var(--accent);color:#fff}.blackout-role-grid.disabled{opacity:.45;pointer-events:none}.blackout-role-grid.disabled .blackout-role-option{background:var(--panel-soft)}
@media(max-width:760px){.deposit-return-confirm,.vacation-decision-card{grid-template-columns:1fr}.admin-source-filter>div.admin-source-filter-popover{right:auto;left:0;width:min(310px,calc(100vw - 42px))}.admin-source-options{grid-template-columns:1fr}}

/* v4.24.0.4 — unified grouped Needs Attention */
.dashboard-grid-presence-only{grid-template-columns:minmax(0,1fr)}
.workflow-notification-groups{display:grid;gap:12px;margin-top:14px}
.workflow-notification-group{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel-soft) 72%,transparent);overflow:hidden}
.workflow-notification-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--panel) 82%,transparent)}
.workflow-notification-group-head>div{display:flex;align-items:center;gap:7px;min-width:0}
.workflow-notification-group-head span{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--text)}
.workflow-notification-group-head>b{min-width:24px;height:24px;padding:0 7px;display:grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);font-size:10px;color:var(--muted)}
.workflow-notification-group .workflow-notification-list{margin:0;padding:7px;gap:6px}
.workflow-notification-group .workflow-notification{border-radius:10px;background:var(--panel)}
.workflow-notification.unread{box-shadow:inset 2px 0 0 color-mix(in srgb,#ef4444 78%,transparent)}
.workflow-notification.seen{box-shadow:none}
@media(max-width:680px){.workflow-notification{grid-template-columns:8px minmax(0,1fr)}.workflow-notification em{grid-column:2}.workflow-notification-group-head{padding:9px 10px}}

/* v4.24.0.5 — collapsed notification groups + simplified Dashboard hero */
.dashboard-hero-single{grid-template-columns:minmax(0,1fr)}
.workflow-notification-group-head{width:100%;border:0;border-radius:0;color:inherit;text-align:left;cursor:pointer;font:inherit;transition:background .15s ease}
.workflow-notification-group-head:hover{background:color-mix(in srgb,var(--accent) 5%,var(--panel))}
.workflow-notification-group.collapsed .workflow-notification-group-head{border-bottom:0}
.workflow-notification-group-meta{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.workflow-notification-group-meta>b{min-width:24px;height:24px;padding:0 7px;display:grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);font-size:10px;color:var(--muted)}
.workflow-notification-group-chevron{width:19px;height:19px;display:grid;place-items:center;font-style:normal;font-size:15px;line-height:1;color:var(--muted);transition:transform .16s ease,color .16s ease}
.workflow-notification-group.open .workflow-notification-group-chevron{transform:rotate(180deg);color:var(--text)}
.workflow-notification-group .workflow-notification-list[hidden]{display:none!important}

/* v4.25.0 · Unified company payroll + Daily Bonus audit guardrail */
.payroll-view-tabs{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);background:var(--panel);border-radius:14px}
.payroll-view-tabs button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:800;padding:10px 14px;border-radius:10px;cursor:pointer}
.payroll-view-tabs button.active{background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}
.payroll-view-tabs button>span{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--panel-strong);font-size:11px}
.company-payroll-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.company-payroll-summary>div{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:13px 15px;display:grid;gap:5px}
.company-payroll-summary span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:800}
.company-payroll-summary b{font-size:20px}.company-payroll-summary .primary{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 10%,var(--panel))}
.payroll-departments{display:grid;gap:10px}.payroll-department{border:1px solid var(--line);border-radius:15px;background:var(--panel);overflow:hidden}
.payroll-department-head,.contractor-payroll-head,.contractor-driver-head,.payroll-issue-person-head{width:100%;border:0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer}
.payroll-department-head{padding:15px 17px}.payroll-department-head>div:first-child,.contractor-payroll-head>div:first-child,.contractor-driver-head>div:first-child{display:grid;gap:3px}
.payroll-department-head span{font-size:16px;font-weight:900}.payroll-department-head small,.contractor-payroll-head small,.contractor-driver-head small{color:var(--muted)}
.payroll-department-head>div:last-child,.contractor-payroll-head>div:last-child,.contractor-driver-head>div:last-child{display:flex;align-items:center;gap:14px}.payroll-department-head strong{font-size:20px}
.payroll-department-head i,.contractor-payroll-head i,.contractor-driver-head i,.payroll-issue-person-head i{font-style:normal;transition:transform .18s ease;color:var(--muted)}
.payroll-department.open>.payroll-department-head i,.contractor-payroll-group.open>.contractor-payroll-head i,.contractor-driver-payroll.open>.contractor-driver-head i,.payroll-issue-person.open>.payroll-issue-person-head i{transform:rotate(180deg)}
.payroll-department-body{border-top:1px solid var(--line);padding:12px}.payroll-department-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:10px}
.payroll-department-summary>div{border:1px solid var(--line);border-radius:11px;padding:10px 12px;display:grid;gap:3px;background:var(--panel-soft)}.payroll-department-summary span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.office-payroll-list,.contractor-payroll-list{display:grid;gap:8px}.office-payroll-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.office-payroll-row>div:first-child{display:grid;gap:2px}.office-payroll-row span,.office-payroll-row small{color:var(--muted)}.office-payroll-money{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.office-payroll-money>span{font-size:12px}.office-payroll-money>strong{font-size:18px;min-width:100px;text-align:right}
.contractor-payroll-group{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel-soft)}.contractor-payroll-head{padding:12px 14px}.contractor-payroll-head b{font-size:14px}.contractor-payroll-head strong{font-size:17px}.contractor-payroll-drivers{padding:0 10px 10px;display:grid;gap:7px}
.contractor-driver-payroll{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.contractor-driver-head{padding:10px 12px}.contractor-driver-head b{font-size:13px}.contractor-driver-head strong{font-size:15px}.contractor-driver-jobs{border-top:1px solid var(--line);padding:8px;display:grid;gap:6px}
.contractor-payroll-job{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 10px;border-radius:9px;background:var(--panel-soft)}.contractor-payroll-job>div{display:grid;gap:2px}.contractor-payroll-job span,.contractor-payroll-job small{color:var(--muted);font-size:11px}.contractor-payroll-job strong{font-size:14px;white-space:nowrap}
.payroll-issues-panel{padding:18px}.payroll-issue-head-counts{display:flex;gap:8px}.payroll-issue-head-counts span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:800;color:var(--muted)}
.payroll-issue-groups{display:grid;gap:9px;margin-top:14px}.payroll-issue-person{border:1px solid var(--line);border-radius:13px;overflow:hidden}.payroll-issue-person-head{padding:12px 14px}.payroll-issue-person-head>div{display:grid;gap:2px}.payroll-issue-person-head small{color:var(--muted)}.payroll-issue-person-body{border-top:1px solid var(--line);padding:10px;display:grid;gap:10px}
.payroll-issue-card{border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--panel-soft);display:grid;gap:11px}.payroll-issue-card.critical{border-color:color-mix(in srgb,#ef4444 45%,var(--line))}.payroll-issue-card.warning{border-color:color-mix(in srgb,#f59e0b 38%,var(--line))}
.payroll-issue-card>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.payroll-issue-card h4{margin:3px 0;font-size:16px}.payroll-issue-card p{margin:0;color:var(--muted);font-size:12px}.payroll-issue-status{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--line);border-radius:999px;padding:6px 8px;white-space:nowrap}.payroll-issue-status.open,.payroll-issue-status.action_required{background:rgba(239,68,68,.08)}
.payroll-issue-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.payroll-issue-metrics>div{display:grid;gap:3px;border:1px solid var(--line);border-radius:9px;padding:8px;background:var(--panel)}.payroll-issue-metrics span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.payroll-issue-metrics .danger b{color:#ef4444}
.payroll-issue-cushion{display:flex;gap:18px;font-size:11px;color:var(--muted)}.payroll-issue-jobs{display:grid;gap:6px}.payroll-issue-job{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 10px;border-radius:9px;border:1px solid var(--line);background:var(--panel)}.payroll-issue-job>div{display:grid;gap:2px}.payroll-issue-job span,.payroll-issue-job small{font-size:11px;color:var(--muted)}.payroll-issue-job>strong{white-space:nowrap}
.payroll-issue-review-note{display:grid;gap:3px;border-left:3px solid var(--accent);padding:7px 10px;background:var(--panel)}.payroll-issue-review-note span,.payroll-issue-review-note small{font-size:11px;color:var(--muted)}.payroll-issue-card>footer{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.payroll-issues-empty{margin-top:12px}
@media(max-width:1100px){.company-payroll-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-department-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-issue-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.company-payroll-summary,.payroll-department-summary,.payroll-issue-metrics{grid-template-columns:1fr}.office-payroll-row,.payroll-issue-card>header,.contractor-payroll-job{align-items:flex-start;flex-direction:column}.office-payroll-money{justify-content:flex-start}.payroll-department-head strong{font-size:17px}.payroll-issue-cushion{flex-direction:column;gap:4px}}

/* v4.26.0 · Admin responsiveness, source analytics, notification focus */
.view-root:has(.admin-workspace-shell){width:min(1850px,100%)}
.admin-module-body{min-width:0;position:relative}.admin-module-body.notification-module-active{border-radius:16px}
.notification-fix-target{position:relative}.fix-notification-dot{display:block;width:9px;height:9px;border-radius:50%;background:#ef233c;box-shadow:0 0 0 3px color-mix(in srgb,#ef233c 16%,transparent),0 0 12px color-mix(in srgb,#ef233c 42%,transparent)}
.admin-deposit-cell .fix-notification-dot{position:absolute;right:3px;top:3px}.notification-fix-target-surface{position:relative;border-color:color-mix(in srgb,#ef233c 24%,var(--line))!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,#ef233c 10%,transparent)}
.notification-fix-marker{position:absolute;right:14px;top:12px;z-index:3;display:flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid color-mix(in srgb,#ef233c 25%,var(--line));border-radius:999px;background:color-mix(in srgb,#ef233c 6%,var(--panel-strong));font-size:9px;color:var(--muted)}

.admin-sheet-scroll{overflow:visible;border-radius:12px}.admin-payments-table{min-width:0!important;width:100%;table-layout:fixed;border-collapse:collapse}.admin-payments-table th,.admin-payments-table td{padding:6px 4px!important;border-right:1px solid color-mix(in srgb,var(--line) 82%,transparent)}.admin-payments-table th:last-child,.admin-payments-table td:last-child{border-right:0}.admin-payments-table th:first-child,.admin-payments-table td:first-child{position:static!important;min-width:0!important}.admin-payments-table th:nth-child(1){width:13%}.admin-payments-table th:nth-child(2){width:4.5%}.admin-payments-table th:nth-child(n+3):nth-child(-n+14){width:5.15%}.admin-payments-table th:nth-child(15){width:7.5%}.admin-payments-table th:nth-child(16){width:8.5%}.admin-payments-table th:nth-child(17){width:4.7%}.admin-month-cell{width:100%!important;min-width:0!important;min-height:30px!important;padding:4px 3px!important;font-size:8.5px!important;border-radius:6px!important}.admin-payment-name b{font-size:9.5px}.admin-payment-type-short{display:inline-grid;place-items:center;min-width:34px;padding:3px 5px;border:1px solid var(--line);border-radius:6px;background:var(--panel-soft);font:800 7.5px "DM Mono",monospace;letter-spacing:.03em;text-transform:uppercase}.admin-payment-type-row th{position:static!important;background:color-mix(in srgb,var(--accent) 7%,var(--panel-strong))!important;color:var(--text)!important;font-size:8px!important;text-align:right}.admin-payment-type-row th:first-child{text-align:left;padding-left:8px!important}.admin-payment-type-row th:first-child span{margin-left:5px;color:var(--muted)}.admin-payments-table tbody tr:not(.admin-payment-type-row):nth-child(even) td{background:color-mix(in srgb,var(--panel-soft) 40%,var(--panel))}.admin-payments-table tfoot th{font-size:7.5px!important;text-align:right;overflow:hidden;text-overflow:ellipsis}.admin-payments-table tfoot th:first-child{text-align:left}
.admin-deposit-cell{min-width:0!important;gap:2px!important}.admin-deposit-cell>b{font-size:8px}.admin-deposit-cell small,.admin-deposit-status{font-size:6.5px!important;line-height:1.2}.admin-deposit-return-button{font-size:6.5px!important;padding:3px 4px!important;min-height:22px!important}
.admin-payment-comparison{margin:12px 0 14px;padding:12px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.admin-payment-comparison-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-payment-comparison-head h4{margin:3px 0;font-size:15px}.admin-payment-comparison-head p{margin:0;color:var(--muted);font-size:9px}.admin-payment-compare-filter{position:relative}.admin-payment-compare-filter>summary{display:flex;align-items:center;gap:10px;min-height:34px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);cursor:pointer;font-size:9px}.admin-payment-compare-filter>div{position:absolute;right:0;top:40px;z-index:30;width:300px;max-height:340px;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:11px;background:var(--panel-strong);box-shadow:0 18px 42px rgba(0,0,0,.25)}.admin-payment-compare-filter header{display:flex;gap:6px;justify-content:flex-end;margin-bottom:6px}.admin-payment-compare-filter header button{border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:8px}.admin-payment-compare-filter>div>button{width:100%;display:grid;grid-template-columns:20px 1fr auto;gap:7px;align-items:center;padding:7px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.admin-payment-compare-filter>div>button:hover{background:var(--panel-soft)}.admin-payment-compare-filter>div>button i{opacity:0}.admin-payment-compare-filter>div>button.selected i{opacity:1;color:var(--accent)}.admin-payment-compare-filter>div>button small{color:var(--muted);font-size:7px}.admin-payment-compare-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}.admin-payment-compare-summary article{display:grid;gap:3px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.admin-payment-compare-summary span{font-size:7px;color:var(--muted);text-transform:uppercase}.admin-payment-compare-summary b{font-size:14px}.admin-payment-compare-summary small{font-size:7px;color:var(--muted)}.admin-payment-compare-summary .good b,.admin-payment-compare-table .good{color:#19a974}.admin-payment-compare-summary .up b,.admin-payment-compare-table .up{color:#ef476f}.admin-payment-compare-table{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}.admin-payment-compare-table>div:not(.settings-empty){display:grid;grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(90px,.7fr));gap:8px;align-items:center;padding:7px 9px;border-bottom:1px solid var(--line);font-size:8.5px}.admin-payment-compare-table>div:last-child{border-bottom:0}.admin-payment-compare-table>div>span{display:grid}.admin-payment-compare-table small{color:var(--muted);font-size:7px}.admin-payment-compare-table em,.admin-payment-compare-table strong,.admin-payment-compare-table>div>i{text-align:right;font-style:normal}

.admin-employee-groups{display:grid;gap:14px;margin-top:12px}.admin-employee-group{border:1px solid var(--line);border-radius:13px;overflow:hidden}.admin-employee-group>header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--panel-soft);border-bottom:1px solid var(--line)}.admin-employee-group>header h4{margin:2px 0 0;font-size:14px}.admin-employee-group>header>b{min-width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px}.admin-employee-group .admin-table-scroll{border:0;border-radius:0}.admin-employee-table{min-width:980px}.admin-employee-actions{flex-wrap:wrap;min-width:240px}.admin-employee-actions button{font-size:8px;min-height:28px;padding:0 7px}.admin-pay-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.admin-pay-history-head p{margin:0;color:var(--muted);font-size:10px}.admin-pay-history-list{display:grid;gap:8px}.admin-pay-history-list article{display:flex;justify-content:space-between;gap:15px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.admin-pay-history-list article>div{display:grid;gap:2px}.admin-pay-history-list span,.admin-pay-history-list small,.admin-pay-history-list em{font-size:8px;color:var(--muted);font-style:normal}.admin-pay-history-list b{font-size:10px}

[data-admin-revenue-results]{position:relative;min-height:110px;transition:opacity .18s ease,transform .18s ease}[data-admin-revenue-results].is-loading>*:not(.admin-revenue-loading-overlay){opacity:.45}.admin-revenue-loading-overlay{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;background:color-mix(in srgb,var(--panel) 68%,transparent);backdrop-filter:blur(2px);font-size:9px}.admin-revenue-loading-overlay span{width:16px;height:16px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.admin-revenue-summary{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-revenue-summary article.loss b{color:#ef476f}.admin-revenue-summary article small{font-size:7px;color:var(--muted)}.admin-source-table small{display:block;color:var(--muted);font-size:7px;margin-top:2px}
.admin-source-graph{gap:11px;padding:12px 0}.admin-source-graph-help{padding:6px 9px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:8px}.admin-source-graph article{display:block!important;position:relative}.admin-source-graph-track{height:44px!important;border-radius:11px!important;cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.admin-source-graph-track:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}.admin-source-total{border-radius:10px!important}.admin-source-graph-inside{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;pointer-events:none}.admin-source-graph-inside>span{display:flex;align-items:baseline;gap:8px;min-width:0}.admin-source-graph-inside b{font-size:12px;text-shadow:0 1px 2px var(--panel)}.admin-source-graph-inside small{font-size:8px;color:var(--muted);white-space:nowrap}.admin-source-graph-inside strong{font-size:15px;letter-spacing:-.02em;text-shadow:0 1px 2px var(--panel)}.admin-source-tooltip{min-width:230px!important;cursor:pointer;user-select:none}.admin-source-graph-track.pinned .admin-source-tooltip{display:block}.admin-source-tooltip-hint{display:block!important;margin-top:7px;padding-top:6px;border-top:1px solid var(--line);color:var(--accent)!important;font-size:7px!important}.admin-source-mini-pie{display:grid;grid-template-columns:82px 1fr;gap:10px;align-items:center;margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.admin-source-pie-chart{width:78px;height:78px;border-radius:50%;background:conic-gradient(var(--accent) 0 var(--booked),#f59e0b var(--booked) var(--loss),color-mix(in srgb,var(--muted) 42%,var(--panel)) var(--loss) 100%);box-shadow:inset 0 0 0 13px var(--panel-strong)}.admin-source-mini-pie>div:last-child{display:grid;gap:4px}.admin-source-mini-pie span{display:grid!important;grid-template-columns:8px 1fr auto;align-items:center;gap:4px;margin:0!important;font-size:7px!important}.admin-source-mini-pie span i{width:7px;height:7px;border-radius:2px}.admin-source-mini-pie span i.booked{background:var(--accent)}.admin-source-mini-pie span i.loss{background:#f59e0b}.admin-source-mini-pie span i.zero{background:color-mix(in srgb,var(--muted) 42%,var(--panel))}.admin-source-mini-pie>div:last-child>small{margin-top:3px;color:#ef476f!important;font-size:7px!important}

@media (min-width:1600px){.view-root:has(.admin-workspace-shell){width:min(1900px,100%)}.admin-sheet-panel,.admin-employees-panel,.admin-vacation-requests,.admin-revenue-panel{padding:22px}.admin-month-cell{font-size:9.5px!important}.admin-payments-table th,.admin-payments-table td{padding:7px 5px!important}.admin-source-graph-track{height:48px!important}.admin-source-graph-inside b{font-size:13px}.admin-source-graph-inside strong{font-size:17px}}
@media (max-width:1180px){.admin-revenue-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-payment-compare-table>div:not(.settings-empty){grid-template-columns:minmax(150px,1.4fr) repeat(3,minmax(80px,.7fr))}.admin-payments-table th,.admin-payments-table td{padding-inline:2px!important}.admin-month-cell{font-size:7.5px!important;padding-inline:2px!important}}
@media (max-width:980px){.admin-sheet-scroll{border:0;overflow:visible}.admin-payments-table,.admin-payments-table tbody,.admin-payments-table tr{display:block;width:100%}.admin-payments-table thead,.admin-payments-table tfoot{display:none}.admin-payment-type-row{display:block!important;margin:10px 0 5px}.admin-payment-type-row th{display:block!important;text-align:left!important;border:1px solid var(--line)!important;border-radius:8px;padding:7px!important}.admin-payment-type-row th:not(:first-child){display:none!important}.admin-payments-table tbody tr:not(.admin-payment-type-row){display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-bottom:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td{display:grid!important;gap:3px;border:0!important;padding:3px!important;background:transparent!important}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:before{content:attr(data-label);font:700 6.5px "DM Mono",monospace;color:var(--muted);text-transform:uppercase}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(1){grid-column:span 4}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(2){grid-column:span 2}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(n+3):nth-child(-n+14){grid-column:span 1}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(15),.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(16){grid-column:span 3}.admin-payments-table tbody tr:not(.admin-payment-type-row)>td:nth-child(17){grid-column:span 6}.admin-month-cell{font-size:9px!important}.admin-payment-compare-summary{grid-template-columns:1fr}.admin-payment-compare-table>div:not(.settings-empty){grid-template-columns:1fr 1fr}.admin-payment-compare-table>div>span{grid-column:1/-1}.admin-revenue-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-source-graph-inside small{display:none}.notification-fix-marker span{display:none}}
@media (max-width:700px){.admin-payment-comparison-head{flex-direction:column}.admin-payment-compare-filter{width:100%}.admin-payment-compare-filter>summary{justify-content:space-between}.admin-payment-compare-filter>div{left:0;right:auto;width:min(92vw,320px)}.admin-revenue-summary{grid-template-columns:1fr}.admin-source-graph-track{height:48px!important}.admin-source-graph-inside{padding-inline:9px}.admin-source-graph-inside b{font-size:11px}.admin-source-graph-inside strong{font-size:14px}.admin-source-tooltip{left:8px!important;right:8px!important;min-width:0!important;translate:0 -100%!important}.admin-source-mini-pie{grid-template-columns:70px 1fr}.admin-source-pie-chart{width:66px;height:66px}}

/* v4.26.0.1 — Admin readability / source comparison polish */
.admin-payment-comparison{padding:0!important;overflow:visible}
.admin-payment-comparison>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 13px;cursor:pointer;list-style:none}
.admin-payment-comparison>summary::-webkit-details-marker{display:none}
.admin-payment-comparison>summary>div:first-child{display:grid;gap:2px}
.admin-payment-comparison>summary>div:first-child>b{font-size:14px}
.admin-payment-comparison>summary>div:first-child>small{font-size:8px;color:var(--muted)}
.admin-payment-comparison-summary-metrics{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
.admin-payment-comparison-summary-metrics>span{display:grid;gap:1px;min-width:105px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel);font-size:7px;color:var(--muted);text-transform:uppercase}
.admin-payment-comparison-summary-metrics>span b{font-size:11px;color:var(--text);text-transform:none;white-space:nowrap}
.admin-payment-comparison-summary-metrics>span.good b{color:#19a974}.admin-payment-comparison-summary-metrics>span.up b{color:#ef476f}
.admin-payment-comparison-summary-metrics>i{font-style:normal;color:var(--muted);transition:transform .18s ease}
.admin-payment-comparison[open] .admin-payment-comparison-summary-metrics>i{transform:rotate(180deg)}
.admin-payment-comparison-body{padding:0 12px 12px;border-top:1px solid var(--line)}
.admin-payment-comparison-head{align-items:center;margin:10px 0}.admin-payment-comparison-head p{max-width:560px}
.admin-payment-compare-table .settings-empty.compact{padding:18px 12px!important;min-height:0!important}
.admin-payment-type-row th{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-payment-type-row th:not(:first-child),.admin-payments-table tfoot th:not(:first-child){font-size:8px!important;letter-spacing:0!important}
.admin-payments-table tbody tr:not(.admin-payment-type-row)>td{min-width:0}
.admin-deposit-cell{min-width:0}.admin-deposit-cell b{font-size:9px}.admin-deposit-cell small,.admin-deposit-status,.admin-deposit-return-button{font-size:6.8px!important}

.admin-employee-group{overflow:hidden}
.admin-employee-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:var(--panel-soft);cursor:pointer;list-style:none}
.admin-employee-group>summary::-webkit-details-marker{display:none}
.admin-employee-group>summary>div{display:grid;gap:2px}.admin-employee-group>summary h4{margin:0;font-size:14px}.admin-employee-group>summary small{font-size:8px;color:var(--muted)}
.admin-employee-group-count{margin-left:auto;min-width:30px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;font-size:9px;font-weight:800}
.admin-employee-group>summary>i{font-style:normal;color:var(--muted);transition:transform .18s ease}
.admin-employee-group[open]>summary>i{transform:rotate(180deg)}
.admin-employee-group-body{border-top:1px solid var(--line)}
.admin-employee-group .admin-table-scroll{border:0;border-radius:0}

.admin-source-filter>summary{gap:10px}.admin-source-filter>summary>i{margin-left:2px;font-style:normal;color:var(--muted);transition:transform .14s ease}.admin-source-filter[open]>summary>i{transform:rotate(180deg)}
.admin-source-filter-popover{min-width:330px!important}
.admin-source-options{min-height:42px}
.admin-source-empty{grid-column:1/-1;padding:12px;color:var(--muted);text-align:center;font-size:9px}

.admin-source-bars{display:grid;gap:11px}
.admin-source-graph-track{height:52px!important;overflow:visible}
.admin-source-graph-inside{padding:0 10px!important}
.admin-source-graph-inside>span{display:flex!important;align-items:center!important;gap:8px!important;max-width:70%;padding:5px 8px;border:1px solid color-mix(in srgb,var(--line) 82%,transparent);border-radius:8px;background:color-mix(in srgb,var(--panel-strong) 84%,transparent);box-shadow:0 2px 10px rgba(0,0,0,.12)}
.admin-source-graph-inside b{font-size:13px!important;line-height:1.1;color:var(--text)!important;text-shadow:none!important}
.admin-source-graph-inside small{font-size:9px!important;color:var(--muted)!important}
.admin-source-graph-inside strong{flex:0 0 auto;min-width:72px;padding:5px 8px;border:1px solid color-mix(in srgb,var(--accent) 30%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--panel-strong) 88%,transparent);color:var(--text)!important;font-size:19px!important;line-height:1;text-align:center;text-shadow:none!important}
.admin-source-graph-track.pinned{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent),0 0 0 1px color-mix(in srgb,var(--accent) 16%,transparent)}
.admin-source-graph-track.pinned .admin-source-tooltip{display:none!important}
.admin-source-graph-track:focus:not(:hover) .admin-source-tooltip{display:none!important}
.admin-source-graph-track:hover .admin-source-tooltip{display:block!important}
.admin-source-tooltip{min-width:255px!important;padding:12px!important;font-size:9px!important}
.admin-source-tooltip>b{font-size:11px}.admin-source-tooltip span{font-size:8.5px!important;line-height:1.35}

.admin-source-pinned-panel{display:grid;gap:10px;padding:11px;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}
.admin-source-pinned-panel>header{display:flex;align-items:end;justify-content:space-between;gap:12px}.admin-source-pinned-panel>header>div{display:grid;gap:2px}.admin-source-pinned-panel>header>div>b{font-size:12px}.admin-source-pinned-panel>header>small{font-size:8px;color:var(--muted);text-align:right}
.admin-source-pinned-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:9px}
.admin-source-pin-card{display:grid;gap:9px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel);cursor:pointer;transition:border-color .15s ease,transform .15s ease,background .15s ease;outline:none}
.admin-source-pin-card:hover,.admin-source-pin-card:focus-visible{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 34%,var(--line));background:color-mix(in srgb,var(--accent) 3%,var(--panel))}
.admin-source-pin-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-source-pin-card-head>div{display:grid;gap:2px}.admin-source-pin-card-head b{font-size:13px}.admin-source-pin-card-head small{font-size:8px;color:var(--muted)}.admin-source-pin-card-head strong{font-size:20px;letter-spacing:-.03em}
.admin-source-detail-lines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.admin-source-detail-lines>span{display:grid;gap:2px;padding:6px 7px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);min-width:0}.admin-source-detail-lines small{font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.admin-source-detail-lines b{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-source-pin-hint{padding-top:2px;color:var(--accent);font-size:8px}
.admin-source-mini-pie{grid-template-columns:126px 1fr!important;gap:14px!important;margin-top:2px!important;padding-top:10px!important}
.admin-source-pie-chart{width:116px!important;height:116px!important;box-shadow:inset 0 0 0 19px var(--panel-strong)!important}
.admin-source-mini-pie>div:last-child{gap:7px!important}.admin-source-mini-pie span{grid-template-columns:10px 1fr auto!important;gap:7px!important;font-size:9px!important}.admin-source-mini-pie span i{width:9px!important;height:9px!important}.admin-source-mini-pie>div:last-child>small{font-size:9px!important;margin-top:5px!important}

@media (min-width:1600px){
  .admin-source-pinned-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-source-graph-track{height:56px!important}.admin-source-graph-inside b{font-size:14px!important}.admin-source-graph-inside strong{font-size:21px!important}
}
@media (max-width:1180px){
  .admin-payment-comparison>summary{align-items:flex-start;flex-direction:column}.admin-payment-comparison-summary-metrics{width:100%;justify-content:stretch}.admin-payment-comparison-summary-metrics>span{flex:1;min-width:0}
  .admin-source-pinned-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .admin-source-pinned-grid{grid-template-columns:1fr}.admin-source-pinned-panel>header{align-items:flex-start;flex-direction:column}.admin-source-pinned-panel>header>small{text-align:left}
  .admin-source-graph-inside>span{max-width:62%}.admin-source-graph-inside small{display:none!important}.admin-source-graph-inside strong{min-width:62px;font-size:16px!important}
  .admin-source-mini-pie{grid-template-columns:96px 1fr!important}.admin-source-pie-chart{width:88px!important;height:88px!important;box-shadow:inset 0 0 0 15px var(--panel-strong)!important}
}

/* v4.27.0 · Suggested Price, Lead pricing rules, Company Tip and work-day metrics */
.lead-suggested-price-wrap{position:relative;min-width:0;z-index:40}
button.lead-suggested-price{width:100%;height:70px;min-height:70px;text-align:left;cursor:pointer;color:inherit;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;background:var(--panel-2,rgba(255,255,255,.035))}
button.lead-suggested-price:hover,button.lead-suggested-price.open{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 8%,transparent)}
button.lead-suggested-price:active{transform:translateY(1px)}
button.lead-suggested-price>i{position:absolute;right:10px;bottom:8px;font-size:11px;transition:transform .16s ease}
button.lead-suggested-price.open>i{transform:rotate(180deg)}
.suggested-price-panel{position:absolute;right:0;top:calc(100% + 9px);z-index:80;width:min(1040px,calc(100vw - 300px));max-height:min(720px,72vh);overflow:auto;padding:16px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:16px;background:var(--panel-strong,var(--panel));box-shadow:0 22px 55px rgba(0,0,0,.26),0 0 0 1px color-mix(in srgb,var(--accent) 7%,transparent);overscroll-behavior:contain}
.suggested-price-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.suggested-price-panel-head h4{margin:3px 0 4px;font-size:18px}.suggested-price-panel-head p{margin:0;max-width:680px;color:var(--muted);font-size:11px;line-height:1.45}
.suggested-price-input-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(130px,.75fr) minmax(170px,.9fr);gap:9px;margin-top:12px}
.suggested-price-input-row>label,.suggested-price-input-row>div{display:grid;gap:4px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);min-width:0}
.suggested-price-input-row span{font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.suggested-price-input-row input{min-width:0;width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);font:inherit;font-weight:750}.suggested-price-input-row b{font-size:12px}.suggested-price-input-row small{font-size:8px;color:var(--muted)}
.suggested-small-file{border-color:color-mix(in srgb,#f59e0b 34%,var(--line))!important;background:color-mix(in srgb,#f59e0b 6%,var(--panel-soft))!important}.suggested-small-file b{color:#f59e0b}
.suggested-price-dates{display:grid;gap:10px;margin-top:12px}.suggested-price-day{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:var(--panel)}.suggested-price-day.selected{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));box-shadow:inset 3px 0 0 var(--accent)}
.suggested-price-day>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;background:var(--panel-soft);border-bottom:1px solid var(--line)}.suggested-price-day>header span{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--accent)}.suggested-price-day>header b{font-size:12px}
.suggested-price-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:9px}.suggested-price-period{min-width:0;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--panel-soft)}.suggested-price-period.available{border-color:color-mix(in srgb,#16a34a 20%,var(--line))}.suggested-price-period.unavailable{opacity:.88}
.suggested-price-period-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.suggested-price-period-head>b{font-size:10px;letter-spacing:.05em}.suggested-price-period-head>span{font-size:13px;font-weight:900;color:var(--accent)}
.suggested-price-result{display:grid;gap:2px;margin-bottom:8px}.suggested-price-result>strong{font-size:22px;letter-spacing:-.035em;line-height:1.05}.suggested-price-result>span{font-size:8px;color:var(--muted)}
.suggested-price-breakdown{display:grid;gap:4px;padding-top:7px;border-top:1px solid var(--line)}.suggested-price-breakdown>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:4px 0}.suggested-price-breakdown>div>span{display:grid;gap:1px;min-width:0}.suggested-price-breakdown b{font-size:9px}.suggested-price-breakdown small{font-size:7.5px;color:var(--muted);line-height:1.3}.suggested-price-breakdown strong{font-size:9px;white-space:nowrap}
.suggested-price-unavailable,.suggested-price-empty{display:grid;gap:4px;padding:9px;border:1px dashed var(--line);border-radius:8px;background:var(--panel)}.suggested-price-unavailable>b,.suggested-price-empty>b{font-size:10px}.suggested-price-unavailable>span,.suggested-price-empty>span{font-size:8px;color:var(--muted);line-height:1.4}.suggested-price-unavailable.manual{border-color:color-mix(in srgb,#f59e0b 35%,var(--line))}.suggested-price-toll-note{margin:7px 0 0;padding:7px 8px;border-radius:7px;background:color-mix(in srgb,#f59e0b 7%,var(--panel));color:var(--muted);font-size:8px;line-height:1.4}

.lead-small-file{grid-column:span 1;display:flex!important;align-items:center!important;gap:9px!important;padding:10px 11px!important;border:1px solid var(--line)!important;border-radius:11px!important;background:var(--panel-soft)!important}.lead-small-file input{width:17px!important;height:17px!important;flex:0 0 auto}.lead-small-file>span{display:grid;gap:2px}.lead-small-file b{font-size:11px}.lead-small-file small{font-size:8px;color:var(--muted)}.lead-small-file.active{border-color:color-mix(in srgb,#f59e0b 36%,var(--line))!important;background:color-mix(in srgb,#f59e0b 7%,var(--panel-soft))!important}.lead-small-file-alert{display:flex;align-items:center;gap:10px;margin-bottom:11px;padding:9px 11px;border:1px solid color-mix(in srgb,#f59e0b 36%,var(--line));border-radius:10px;background:color-mix(in srgb,#f59e0b 7%,var(--panel-soft))}.lead-small-file-alert b{color:#f59e0b;font-size:10px}.lead-small-file-alert span{font-size:9px;color:var(--muted)}

.charge-quote-help{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--muted);font-size:9px}.charge-quote-help i{display:grid;place-items:center;width:17px;height:17px;border:1px solid var(--line);border-radius:50%;font-style:normal;font-size:9px;font-weight:900}.charge-flat-check{display:flex!important;align-items:center!important;gap:6px!important;min-width:120px;padding:0 7px!important;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.charge-flat-check input{width:15px!important;height:15px!important;flex:0 0 auto}.charge-flat-check span{font-size:8px!important;font-weight:800!important;line-height:1.15!important}
.lead-tip-company-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,.8fr);gap:10px;align-items:stretch}.lead-company-tip-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}.lead-company-tip-card.active{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel-soft))}.lead-company-tip-card>label{display:flex!important;align-items:flex-start!important;gap:9px!important}.lead-company-tip-card>label input{width:17px!important;height:17px!important;flex:0 0 auto;margin-top:1px}.lead-company-tip-card>label span{display:grid;gap:3px}.lead-company-tip-card b{font-size:11px}.lead-company-tip-card small{font-size:8px;color:var(--muted);line-height:1.4}.lead-company-tip-card>div{display:grid;gap:2px;text-align:right}.lead-company-tip-card>div span{font-size:8px;color:var(--muted)}.lead-company-tip-card>div strong{font-size:17px}
.lead-charge-read-extra{margin-top:8px}.lead-charge-read-extra.company{border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}
.rate-engine-zip-field{display:grid!important;gap:6px;margin-top:10px}.rate-engine-zip-field textarea{width:100%;min-height:112px;resize:vertical;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);padding:10px;font:500 10px/1.5 "DM Mono",monospace}.short-haul-bracket-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.short-haul-bracket-grid>article{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.short-haul-bracket-grid>article>b{font-size:10px;color:var(--accent)}
.dispatch-work-days{display:grid;gap:1px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);text-align:center;white-space:nowrap}.dispatch-work-days b{font-size:11px}.dispatch-work-days small{font-size:7px;color:var(--muted)}

@media(max-width:1280px){.suggested-price-panel{width:min(920px,calc(100vw - 42px))}.short-haul-bracket-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.suggested-price-panel{position:fixed;left:16px;right:16px;top:84px;width:auto;max-height:calc(100vh - 110px)}.suggested-price-input-row{grid-template-columns:1fr 1fr}.suggested-price-input-row>label{grid-column:1/-1}.suggested-price-periods{grid-template-columns:1fr}.lead-tip-company-grid{grid-template-columns:1fr}.charge-quote-help span{display:none}}
@media(max-width:560px){.suggested-price-panel{left:8px;right:8px;top:68px;padding:11px}.suggested-price-input-row{grid-template-columns:1fr}.short-haul-bracket-grid{grid-template-columns:1fr}.suggested-price-panel-head h4{font-size:16px}.suggested-price-result>strong{font-size:19px}.lead-small-file-alert{align-items:flex-start;flex-direction:column;gap:3px}}

/* v4.27.0.1 · Compact Suggested Price, route mileage placement, compact Dispatch work count */
.suggested-price-panel.compact{width:min(760px,calc(100vw - 330px));max-height:min(520px,66vh);padding:12px;border-radius:14px}
.suggested-price-panel.compact .suggested-price-panel-head{padding-bottom:9px;gap:10px}
.suggested-price-panel.compact .suggested-price-panel-head h4{font-size:15px;margin:2px 0 2px}
.suggested-price-panel.compact .suggested-price-panel-head p{font-size:9px;max-width:560px}
.suggested-price-dates.compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:9px}
.suggested-price-dates.compact .suggested-price-day{border-radius:10px;min-width:0}
.suggested-price-dates.compact .suggested-price-day>header{padding:7px 8px;display:grid;gap:2px;justify-items:start}
.suggested-price-dates.compact .suggested-price-day>header span{font-size:7px}
.suggested-price-dates.compact .suggested-price-day>header b{font-size:10px}
.suggested-price-dates.compact .suggested-price-periods{display:grid;grid-template-columns:1fr;gap:5px;padding:6px}
button.suggested-price-period{display:flex;align-items:center;justify-content:space-between;gap:7px;width:100%;min-width:0;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);color:var(--text);cursor:pointer;text-align:left;transition:border-color .14s ease,background .14s ease,transform .14s ease}
button.suggested-price-period:hover{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}
button.suggested-price-period:active{transform:translateY(1px)}
button.suggested-price-period.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel-soft));box-shadow:inset 2px 0 0 var(--accent)}
button.suggested-price-period>span{font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
button.suggested-price-period>strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
button.suggested-price-period.available>strong{color:var(--text)}
button.suggested-price-period.unavailable>strong{font-size:8px;color:var(--muted)}
.suggested-price-detail{margin-top:8px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}
.suggested-price-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.suggested-price-detail-head>span{font-size:9px;font-weight:850;color:var(--muted)}
.suggested-price-detail-head>strong{font-size:16px;color:var(--accent)}
.suggested-price-detail .suggested-price-result{display:none}
.suggested-price-detail .suggested-price-breakdown{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;padding-top:5px}
.suggested-price-detail .suggested-price-breakdown>div{padding:3px 0}
.suggested-price-detail .suggested-price-unavailable,.suggested-price-detail .suggested-price-empty{padding:7px}
.suggested-price-detail .suggested-price-toll-note{margin-top:5px;padding:5px 7px}

.lead-route-tools{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.route-mileage-field{display:grid;gap:4px;min-width:104px}
.route-mileage-field>span{font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.route-mileage-field>div{display:flex;align-items:center;gap:5px;height:34px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}
.route-mileage-field input{width:66px;min-width:0;padding:0;border:0!important;background:transparent!important;color:var(--text);font:inherit;font-weight:800;outline:0}
.route-mileage-field em{font-style:normal;font-size:9px;color:var(--muted)}

.dispatch-driver-row{grid-template-columns:minmax(145px,.7fr) auto minmax(210px,1.25fr)!important}
.dispatch-work-days{display:grid;gap:0;padding:0 4px;border:0;background:transparent;text-align:center;white-space:nowrap;align-content:center;min-width:42px}
.dispatch-work-days b{order:2;font-size:12px;line-height:1.05}
.dispatch-work-days small{order:1;font-size:6.5px;line-height:1.1;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}

@media(max-width:1280px){.suggested-price-panel.compact{width:min(700px,calc(100vw - 42px))}}
@media(max-width:860px){.suggested-price-panel.compact{position:fixed;left:16px;right:16px;top:84px;width:auto;max-height:calc(100vh - 110px)}.suggested-price-dates.compact{grid-template-columns:1fr}.suggested-price-detail .suggested-price-breakdown{grid-template-columns:1fr}.dispatch-driver-row{grid-template-columns:1fr auto!important}.dispatch-driver-row>:last-child{grid-column:1/-1}.lead-route-tools{justify-content:flex-start}}
@media(max-width:560px){.suggested-price-panel.compact{left:8px;right:8px;top:68px}.lead-route-tools{display:grid;grid-template-columns:1fr}.route-mileage-field{width:100%}.lead-route-add-actions{display:grid;grid-template-columns:1fr 1fr}}


/* v4.27.0.2 · Suggested Price top-layer portal + outside-click close */
#suggested-price-portal{position:fixed;inset:0;z-index:2147482000;pointer-events:none;isolation:isolate}
#suggested-price-portal .suggested-price-panel{position:fixed!important;right:auto!important;bottom:auto!important;margin:0!important;z-index:1!important;pointer-events:auto;max-width:calc(100vw - 24px);overscroll-behavior:contain;box-shadow:0 24px 70px rgba(0,0,0,.48),0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}
@media(max-width:560px){#suggested-price-portal .suggested-price-panel{max-width:calc(100vw - 16px)}}

/* v4.27.1 · Suggest mode keeps Current Rate separate from the engine recommendation. */
.rate-suggestion-compare{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:10px 0;padding:10px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--panel) 78%,transparent)}
.rate-suggestion-locked-note{margin:8px 0 10px;padding:9px 10px;border:1px solid color-mix(in srgb,#ffbd59 34%,var(--line));border-radius:10px;background:color-mix(in srgb,#ffbd59 8%,transparent);color:var(--muted);font-size:10px;line-height:1.4}

.rate-suggestion-compare>div:not(.rate-suggestion-arrow){display:grid;gap:2px;min-width:0}.rate-suggestion-compare span{font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.rate-suggestion-compare strong{font-size:14px;color:var(--text);white-space:nowrap}.rate-suggestion-compare small{font-size:9px;color:var(--muted);line-height:1.35}.rate-suggestion-arrow{font-size:18px;color:var(--muted);font-weight:900}.rate-suggestion-compare.changed{border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.rate-confirm-suggestion{min-width:116px;white-space:nowrap}.rate-confirm-suggestion:disabled{opacity:.55;cursor:default}
.rate-period-row i{font-size:8px;font-weight:900;font-style:normal;white-space:nowrap;color:var(--muted)}
@media(max-width:760px){.rate-suggestion-compare{grid-template-columns:1fr auto 1fr}.rate-suggestion-compare .rate-confirm-suggestion{grid-column:1/-1;width:100%}}

/* v4.29.0 · Lead Distribution foundation */
.distribution-workspace{display:grid;gap:14px;min-width:0}
.distribution-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 20px}
.distribution-hero h3{margin:3px 0 5px;font-size:21px;letter-spacing:-.025em}
.distribution-hero p{max-width:760px;margin:0;color:var(--muted);font-size:10px;line-height:1.55}
.distribution-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.distribution-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.distribution-kpis>div{display:grid;gap:3px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}
.distribution-kpis span,.distribution-rules-summary span,.distribution-agent-metric span{font-size:7.5px;font-weight:850;letter-spacing:.065em;text-transform:uppercase;color:var(--muted)}
.distribution-kpis strong{font-size:17px;line-height:1.05}
.distribution-rules-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0;overflow:hidden}
.distribution-rules-summary>div{display:grid;gap:3px;padding:10px 12px;border-right:1px solid var(--line)}
.distribution-rules-summary>div:last-child{border-right:0}
.distribution-rules-summary b{font-size:9px;line-height:1.25}
.distribution-agent-list{display:grid;gap:7px}
.distribution-agent-card{display:grid;grid-template-columns:minmax(190px,1.4fr) minmax(120px,.7fr) minmax(90px,.45fr) minmax(140px,1fr) auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);transition:border-color .14s ease,background .14s ease}
.distribution-agent-card.cap-reached{border-color:color-mix(in srgb,#ff6b6b 45%,var(--line));background:color-mix(in srgb,#ff6b6b 5%,var(--panel-soft))}
.distribution-agent-main{display:flex;align-items:center;gap:9px;min-width:0}
.distribution-agent-avatar{display:grid;place-items:center;width:31px;height:31px;flex:0 0 31px;border:1px solid var(--line);border-radius:50%;background:var(--panel);font-size:11px;font-weight:900}
.distribution-agent-main>div:last-child{display:grid;gap:1px;min-width:0}
.distribution-agent-main b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.distribution-agent-main span{font-size:8px;font-weight:800;color:var(--muted)}
.distribution-agent-main small,.distribution-agent-metric small{font-size:7.5px;color:var(--muted)}
.distribution-agent-card.eligible .distribution-agent-main span{color:#48bd83}
.distribution-agent-card.on-call .distribution-agent-main span{color:#72a8ff}
.distribution-agent-card.ineligible .distribution-agent-main span,.distribution-agent-card.cap-reached .distribution-agent-main span{color:#ef7777}
.distribution-agent-metric{display:grid;gap:2px}
.distribution-agent-metric strong{font-size:11px}
.distribution-agent-types{display:flex;gap:4px;flex-wrap:wrap;min-width:0}
.distribution-agent-types span{padding:3px 5px;border:1px solid var(--line);border-radius:5px;background:var(--panel);font-size:7px;font-weight:800;color:var(--muted);white-space:nowrap}
.distribution-agent-actions{display:flex;justify-content:flex-end;gap:5px;flex-wrap:wrap}
.distribution-agent-actions button{padding:6px 8px;font-size:8px}
.distribution-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}
.distribution-queue-test{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin:0 0 9px}
.distribution-queue-test input{min-width:0}
.distribution-queue-list,.distribution-recent-list{display:grid;gap:5px}
.distribution-queue-row,.distribution-recent-row{display:grid;grid-template-columns:minmax(120px,1.1fr) minmax(90px,.8fr) minmax(110px,.9fr) auto;gap:8px;align-items:center;padding:8px 9px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}
.distribution-recent-row{grid-template-columns:minmax(120px,1.1fr) minmax(110px,.8fr) minmax(140px,1.1fr)}
.distribution-queue-row>div,.distribution-recent-row>div{display:grid;gap:1px;min-width:0}
.distribution-queue-row b,.distribution-recent-row b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.distribution-queue-row span,.distribution-recent-row span{font-size:7.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.distribution-schedule-editor{display:grid;gap:5px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}
.distribution-schedule-row{display:grid;grid-template-columns:minmax(90px,1fr) 105px auto 105px;gap:7px;align-items:center}
.distribution-schedule-row>span{font-size:9px;color:var(--muted);text-align:center}
.distribution-job-type-checks{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:4px}

.lead-distribution-banner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;margin:9px 0 12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}
.lead-distribution-banner>div:first-child{display:grid;gap:2px;min-width:0}
.lead-distribution-banner>div:first-child>b{font-size:10px}
.lead-distribution-banner>div:first-child>small{font-size:8px;color:var(--muted)}
.lead-distribution-banner.assigned{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}
.lead-distribution-banner.retained{border-color:color-mix(in srgb,#47bd83 38%,var(--line));background:color-mix(in srgb,#47bd83 5%,var(--panel-soft));grid-template-columns:1fr}
.lead-distribution-banner.queued{border-color:color-mix(in srgb,#ffbd59 36%,var(--line));background:color-mix(in srgb,#ffbd59 5%,var(--panel-soft));grid-template-columns:1fr}
.lead-distribution-sla{display:grid;place-items:center;min-width:92px;padding:6px 9px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.lead-distribution-sla span{font-size:7px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.lead-distribution-sla strong{font-variant-numeric:tabular-nums;font-size:18px;line-height:1.15;color:var(--accent)}
.lead-distribution-sla small{font-size:7px;color:var(--muted)}
.lead-distribution-help{display:grid;gap:2px;min-width:180px;max-width:360px}
.lead-distribution-help b{font-size:8.5px}
.lead-distribution-help span,.lead-distribution-help em{font-size:7.5px;line-height:1.35;color:var(--muted)}
.lead-distribution-help em{color:#ef7777;font-style:normal;font-weight:800}
.lead-distribution-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;grid-column:1/-1;padding-top:6px;border-top:1px solid var(--line)}
.lead-distribution-actions button{padding:6px 8px;font-size:8px}

@media(max-width:1200px){.distribution-rules-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.distribution-rules-summary>div:nth-child(3n){border-right:0}.distribution-agent-card{grid-template-columns:minmax(180px,1.2fr) repeat(2,minmax(95px,.55fr)) auto}.distribution-agent-types{grid-column:1/4}.distribution-agent-actions{grid-column:4;grid-row:1/3}}
@media(max-width:900px){.distribution-hero{display:grid}.distribution-hero-actions{justify-content:flex-start}.distribution-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.distribution-two-col{grid-template-columns:1fr}.distribution-agent-card{grid-template-columns:1fr 1fr}.distribution-agent-main{grid-column:1/-1}.distribution-agent-types,.distribution-agent-actions{grid-column:1/-1;grid-row:auto;justify-content:flex-start}.lead-distribution-banner{grid-template-columns:1fr auto}.lead-distribution-help{grid-column:1/-1;max-width:none}.lead-distribution-actions{grid-column:1/-1}}
@media(max-width:620px){.distribution-kpis,.distribution-rules-summary{grid-template-columns:1fr 1fr}.distribution-rules-summary>div{border-right:1px solid var(--line)}.distribution-rules-summary>div:nth-child(2n){border-right:0}.distribution-agent-card{grid-template-columns:1fr}.distribution-agent-main,.distribution-agent-types,.distribution-agent-actions{grid-column:auto}.distribution-queue-row,.distribution-recent-row{grid-template-columns:1fr}.distribution-queue-row button{justify-self:start}.distribution-schedule-row{grid-template-columns:1fr 1fr}.distribution-schedule-row>span{display:none}.lead-distribution-banner{grid-template-columns:1fr}.lead-distribution-sla{justify-items:start;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:7px 0}.lead-distribution-actions{justify-content:flex-start}}
/* v4.29.0 distribution Lead banner alignment */
.lead-distribution-banner.active{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--panel-soft))}
.lead-distribution-state{display:grid;gap:2px;min-width:170px}
.lead-distribution-state>strong{font-variant-numeric:tabular-nums;font-size:18px;line-height:1.1;color:var(--accent)}
.lead-distribution-state>small{font-size:7.5px;color:var(--muted)}
.lead-distribution-banner.loading{grid-template-columns:auto 1fr;align-items:center}
.lead-distribution-banner.loading>span{width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}
@media(max-width:900px){.lead-distribution-state{min-width:0}}

/* v4.30.0 — Sales Lead Distribution live assignment dock */
.sales-assignment-dock-button{position:fixed;right:160px;bottom:18px;z-index:75;display:flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--panel) 95%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.2);backdrop-filter:blur(16px);color:var(--text);font-size:9px;font-weight:850;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
.sales-assignment-dock-button:hover,.sales-assignment-dock-button[aria-expanded="true"]{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));box-shadow:0 14px 32px rgba(0,0,0,.24)}
.sales-assignment-dock-button>span{font-size:13px;line-height:1;color:var(--accent)}
.sales-assignment-dock-button>em{display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--accent);color:white;font-size:7px;font-style:normal;font-weight:950;line-height:1}
.sales-assignment-dock-button.has-active{border-color:color-mix(in srgb,var(--accent) 48%,var(--line))}
.sales-assignment-dock-button.has-unread{box-shadow:0 12px 30px rgba(0,0,0,.22),0 0 0 3px color-mix(in srgb,#ef4444 10%,transparent);border-color:color-mix(in srgb,#ef4444 55%,var(--line))}
.sales-assignment-drawer{position:fixed;right:14px;top:14px;bottom:14px;z-index:91;width:min(390px,calc(100vw - 28px));border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.34);backdrop-filter:blur(22px);overflow:hidden}
.sales-assignment-drawer:not([hidden]){display:flex;flex-direction:column}
.sales-assignment-drawer>header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;padding:15px;border-bottom:1px solid var(--line)}
.sales-assignment-drawer>header h3{margin:3px 0 0;font-size:18px}
.sales-assignment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;flex:0 0 auto;border-bottom:1px solid var(--line);background:var(--panel-soft)}
.sales-assignment-summary>div{display:grid;gap:2px;padding:10px 11px;border-right:1px solid var(--line)}
.sales-assignment-summary>div:last-child{border-right:0}
.sales-assignment-summary span{font-size:7px;font-weight:850;letter-spacing:.055em;text-transform:uppercase;color:var(--muted)}
.sales-assignment-summary b{font-size:11px}
.sales-assignment-list{display:grid;align-content:start;gap:8px;min-height:0;overflow:auto;padding:11px}
.sales-assignment-card{display:grid;gap:8px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 22%,var(--line));border-radius:11px;background:var(--panel-soft);transition:border-color .15s ease,background .15s ease}
.sales-assignment-card.urgent{border-color:color-mix(in srgb,#ef4444 48%,var(--line));background:color-mix(in srgb,#ef4444 5%,var(--panel-soft))}
.sales-assignment-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.sales-assignment-card-main>div{display:grid;gap:2px;min-width:0}.sales-assignment-card-main b{font-size:12px}.sales-assignment-card-main small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sales-assignment-card-main>strong{font-size:17px;font-variant-numeric:tabular-nums;color:var(--accent);white-space:nowrap}.sales-assignment-card.urgent .sales-assignment-card-main>strong{color:#ef7777}
.sales-assignment-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.sales-assignment-meta span{padding:3px 5px;border:1px solid var(--line);border-radius:5px;background:var(--panel);font-size:7px;font-weight:800;color:var(--muted)}
.sales-assignment-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid var(--line)}.sales-assignment-card footer small{max-width:210px;font-size:7px;line-height:1.35;color:var(--muted)}.sales-assignment-card footer button{padding:6px 8px;font-size:8px}
.sales-assignment-empty{display:grid;gap:4px;place-items:center;padding:28px 16px;border:1px dashed var(--line);border-radius:11px;color:var(--muted);text-align:center}.sales-assignment-empty b{font-size:10px;color:var(--text)}.sales-assignment-empty p{margin:0;font-size:8px}
.sales-assignment-peek{position:fixed;right:160px;bottom:60px;z-index:94;display:grid;gap:2px;max-width:min(320px,calc(100vw - 24px));padding:10px 12px;border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 14px 38px rgba(0,0,0,.28);backdrop-filter:blur(18px);color:var(--text);text-align:left;cursor:pointer}.sales-assignment-peek>b{font-size:9px}.sales-assignment-peek>span{font-size:8px;color:var(--muted)}
@media(max-width:680px){.sales-assignment-dock-button{right:140px;bottom:10px}.sales-assignment-drawer{right:8px;left:8px;top:8px;bottom:8px;width:auto}.sales-assignment-peek{right:10px;bottom:56px}.sales-assignment-summary{grid-template-columns:1fr 1fr}.sales-assignment-summary>div:last-child{grid-column:1/-1;border-top:1px solid var(--line);border-right:0}.sales-assignment-card footer{align-items:flex-start;flex-direction:column}.sales-assignment-card footer button{width:100%}}

/* v4.30.0 — Distribution analytics & live sales assignment polish */
.distribution-section-tabs{display:flex;gap:6px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);width:max-content;max-width:100%}
.distribution-section-tabs button{border:0;border-radius:7px;background:transparent;color:var(--muted);padding:7px 11px;font:inherit;font-size:9px;font-weight:850;cursor:pointer}.distribution-section-tabs button.active{background:var(--panel);color:var(--text);box-shadow:0 0 0 1px var(--line)}
.distribution-analytics-stack{display:grid;gap:12px}.distribution-analytics-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.distribution-range-buttons{display:flex;gap:5px;flex-wrap:wrap}.distribution-range-buttons button{border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--muted);padding:6px 8px;font:inherit;font-size:8px;font-weight:800;cursor:pointer}.distribution-range-buttons button.active{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));color:var(--text)}
.distribution-custom-range{display:flex;align-items:center;gap:6px}.distribution-custom-range input{min-width:132px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);font:inherit;font-size:8px}.distribution-analytics-period{font-size:8px;font-weight:800;color:var(--muted)}
.distribution-analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.distribution-analytics-kpis article{display:grid;gap:3px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.distribution-analytics-kpis span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.distribution-analytics-kpis strong{font-size:16px}.distribution-analytics-kpis small{font-size:7px;color:var(--muted)}
.distribution-analytics-panel{overflow:hidden;padding:0}.distribution-analytics-panel>.panel-head{padding:12px 14px}.distribution-analytics-two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.distribution-analytics-table-wrap{overflow:auto;border-top:1px solid var(--line)}.distribution-analytics-table{width:100%;border-collapse:collapse;min-width:760px;font-size:8px}.distribution-analytics-table th,.distribution-analytics-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.distribution-analytics-table th:first-child,.distribution-analytics-table td:first-child{text-align:left;position:sticky;left:0;background:var(--panel);z-index:1}.distribution-analytics-table th{font-size:7px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--panel-soft)}.distribution-analytics-table td{color:var(--muted)}.distribution-analytics-table td b{color:var(--text)}
.distribution-daily-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:7px;padding:0 12px 12px}.distribution-daily-strip article{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.distribution-daily-strip span,.distribution-daily-strip small{font-size:7px;color:var(--muted)}.distribution-daily-strip b{font-size:12px}
@media(max-width:980px){.distribution-analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.distribution-analytics-two-col{grid-template-columns:1fr}}@media(max-width:560px){.distribution-analytics-kpis{grid-template-columns:1fr 1fr}.distribution-custom-range{width:100%;flex-wrap:wrap}.distribution-custom-range input{flex:1;min-width:120px}}

/* v4.31.0 · Communications foundation */
.communications-dock-button{position:fixed;right:232px;bottom:18px;z-index:75;display:flex;align-items:center;gap:6px;min-height:34px;padding:0 11px;border:1px solid color-mix(in srgb,var(--accent) 26%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--panel) 95%,transparent);box-shadow:0 12px 30px rgba(0,0,0,.2);backdrop-filter:blur(16px);color:var(--text);font-size:9px;font-weight:850;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease}
.communications-dock-button:hover,.communications-dock-button[aria-expanded="true"]{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));box-shadow:0 14px 32px rgba(0,0,0,.24)}
.communications-dock-button>span{font-size:13px;line-height:1;color:var(--accent)}
.communications-dock-button>em{display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:#ef4444;color:white;font-size:7px;font-style:normal;font-weight:950;line-height:1}
.communications-drawer{position:fixed;right:16px;bottom:64px;z-index:76;width:min(420px,calc(100vw - 32px));max-height:min(680px,calc(100vh - 92px));overflow:hidden;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--panel) 97%,transparent);box-shadow:0 28px 70px rgba(0,0,0,.34);backdrop-filter:blur(22px);color:var(--text)}
.communications-drawer>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 16px 12px;border-bottom:1px solid var(--line)}
.communications-drawer>header h3{margin:2px 0 0;font-size:16px}.communications-status{padding:12px 16px;border-bottom:1px solid var(--line)}
.communications-provider-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}.communications-provider-dot{width:10px;height:10px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 4px color-mix(in srgb,#ef4444 12%,transparent)}
.communications-provider-card.ready .communications-provider-dot{background:#42c77a;box-shadow:0 0 0 4px rgba(66,199,122,.13)}
.communications-provider-card b{display:block;font-size:11px}.communications-provider-card span,.communications-provider-card small{display:block;color:var(--muted);font-size:9px;line-height:1.45}
.communications-tabs{display:grid;grid-template-columns:repeat(4,1fr);padding:8px;border-bottom:1px solid var(--line);gap:6px}.communications-tabs button{min-height:34px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:9px;font-weight:850;cursor:pointer}.communications-tabs button.active{border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--text)}
.communications-body{max-height:470px;overflow:auto;padding:10px}.communications-empty{padding:26px 18px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.communications-empty b{display:block;color:var(--text);font-size:11px;margin-bottom:5px}.communications-empty p{margin:0;font-size:9px;line-height:1.55}
.communication-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 78%,transparent);margin-bottom:7px}.communication-row:last-child{margin-bottom:0}.communication-row-main{min-width:0}.communication-row-main b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.communication-row-main span{display:block;color:var(--muted);font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.communication-row-meta{text-align:right}.communication-row-meta b{display:block;font-size:9px}.communication-row-meta span{display:block;color:var(--muted);font-size:8px;margin-top:3px}.communication-message-preview{margin-top:5px!important;color:var(--text)!important;opacity:.82}
.communications-settings-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px}.communications-settings-status{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.communications-settings-status>div{padding:10px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 72%,transparent)}.communications-settings-status span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.08em}.communications-settings-status b{display:block;margin-top:4px;font-size:10px}.communications-number-list{display:grid;gap:8px}.communications-number-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.communications-number-row b{display:block;font-size:10px}.communications-number-row span{display:block;color:var(--muted);font-size:8px;margin-top:3px}.communications-settings-note{padding:12px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,transparent);font-size:9px;line-height:1.55;color:var(--muted)}.communications-settings-note b{color:var(--text)}
@media(max-width:860px){.communications-settings-grid{grid-template-columns:1fr}.communications-settings-status{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:680px){.communications-dock-button{right:205px;bottom:10px;padding-inline:9px}.communications-dock-button>b{display:none}.communications-drawer{right:8px;left:8px;top:8px;bottom:8px;width:auto;max-height:none}.communications-body{max-height:calc(100vh - 210px)}.communications-number-row{grid-template-columns:1fr auto}.communications-number-row>div:nth-child(2){grid-column:1/-1;grid-row:2}.communications-settings-status{grid-template-columns:1fr}.communications-dock-button>span{font-size:14px}}
.communication-row[data-communications-open-lead],button.communication-row{cursor:pointer;text-align:left;color:var(--text);font:inherit;width:100%}.communication-row[data-communications-open-lead]:hover,button.communication-row:hover{border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--panel))}
.communications-thread-messages{display:flex;flex-direction:column;gap:8px;margin-top:10px}.communications-message{max-width:84%;padding:9px 11px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 76%,transparent)}.communications-message.outbound{align-self:flex-end;background:color-mix(in srgb,var(--accent) 10%,var(--panel));border-color:color-mix(in srgb,var(--accent) 25%,var(--line))}.communications-message.inbound{align-self:flex-start}.communications-message p{margin:0;font-size:10px;line-height:1.5;white-space:pre-wrap}.communications-message footer{display:flex;justify-content:space-between;gap:10px;margin-top:6px;color:var(--muted);font-size:7px}

/* v4.32.0 — isolated Vonage test-core status */
.communications-test-zone{margin-top:14px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--panel) 84%,transparent);display:grid;gap:10px}.communications-test-zone-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.communications-test-zone-head>div{min-width:0}.communications-test-zone-head span{display:block;font-size:8px;letter-spacing:.13em;color:var(--accent);font-weight:800}.communications-test-zone-head b{display:block;font-size:13px;margin-top:2px}.communications-test-zone-head small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.communications-test-zone-head>i{font-style:normal;white-space:nowrap;padding:5px 8px;border-radius:999px;border:1px solid color-mix(in srgb,#ef4444 30%,var(--line));background:color-mix(in srgb,#ef4444 8%,transparent);font-size:8px;font-weight:800}.communications-test-zone-head>i.ready{border-color:color-mix(in srgb,#42c77a 35%,var(--line));background:color-mix(in srgb,#42c77a 9%,transparent)}.communications-test-zone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.communications-test-zone-grid>div{padding:8px 9px;border:1px solid var(--line);border-radius:10px;min-width:0}.communications-test-zone-grid span{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.06em}.communications-test-zone-grid b,.communications-test-zone-grid code{display:block;margin-top:4px;font-size:9px;overflow-wrap:anywhere}.communications-webhook-list{display:grid;gap:4px;padding-top:2px}.communications-webhook-list>span{display:grid;grid-template-columns:56px minmax(0,1fr);gap:6px;align-items:center;color:var(--muted);font-size:8px}.communications-webhook-list code{overflow-wrap:anywhere;color:var(--text);font-size:8px}
@media(max-width:680px){.communications-test-zone-grid{grid-template-columns:1fr}.communications-test-zone-head{align-items:flex-start;flex-direction:column}.communications-webhook-list>span{grid-template-columns:48px minmax(0,1fr)}}

/* v4.33.0 — browser phone + inbound Sales queue */
.browser-phone-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;margin-bottom:9px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 82%,transparent)}
.browser-phone-card.ready{border-color:color-mix(in srgb,#42c77a 35%,var(--line));background:color-mix(in srgb,#42c77a 6%,var(--panel))}.browser-phone-card>div:first-child{min-width:0}.browser-phone-card span{display:block;font-size:7px;letter-spacing:.12em;color:var(--accent);font-weight:850}.browser-phone-card b{display:block;margin-top:3px;font-size:10px}.browser-phone-card small{display:block;margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}.browser-phone-actions{display:flex;gap:6px;flex:0 0 auto}
.communications-incoming-call{position:fixed;right:18px;bottom:112px;z-index:120;width:min(430px,calc(100vw - 36px));display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));border-radius:17px;background:color-mix(in srgb,var(--panel) 98%,transparent);box-shadow:0 30px 80px rgba(0,0,0,.42);backdrop-filter:blur(24px)}
.communications-incoming-call[hidden]{display:none}.incoming-call-pulse{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 42%,var(--line));font-size:19px;animation:mmPhoneRing 1.1s ease-in-out infinite}.incoming-call-pulse.active{animation:none;background:color-mix(in srgb,#42c77a 12%,var(--panel));border-color:color-mix(in srgb,#42c77a 42%,var(--line))}.incoming-call-copy{min-width:0}.incoming-call-copy span{display:block;color:var(--accent);font-size:7px;letter-spacing:.13em;font-weight:900}.incoming-call-copy b{display:block;margin-top:3px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.incoming-call-copy small{display:block;margin-top:3px;color:var(--muted);font-size:8px}.incoming-call-actions{display:flex;gap:7px;align-items:center}
.communications-browser-setup{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--panel) 72%,transparent)}.communications-browser-setup b{display:block;font-size:10px}.communications-browser-setup p{margin:3px 0 0;color:var(--muted);font-size:8px;line-height:1.5}
@keyframes mmPhoneRing{0%,100%{transform:rotate(0) scale(1)}20%{transform:rotate(-7deg) scale(1.04)}40%{transform:rotate(7deg) scale(1.04)}60%{transform:rotate(-4deg)}80%{transform:rotate(4deg)}}
@media(max-width:680px){.communications-incoming-call{right:8px;left:8px;bottom:62px;width:auto;grid-template-columns:auto minmax(0,1fr)}.incoming-call-actions{grid-column:1/-1;justify-content:flex-end}.communications-browser-setup{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.incoming-call-pulse{animation:none}}

/* v4.34.0 · outbound browser phone, caller identity and keypad */
.browser-phone-copy{min-width:0;flex:1}.browser-phone-actions{flex-wrap:wrap;justify-content:flex-end}.communications-dialer{display:grid;grid-template-columns:minmax(0,.8fr) minmax(220px,1.2fr);gap:12px;align-items:end;padding:12px;margin-bottom:9px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 84%,transparent)}
.communications-dialer>div:first-child span,.communications-history-head span{display:block;font-size:7px;letter-spacing:.12em;color:var(--accent);font-weight:850}.communications-dialer>div:first-child b{display:block;margin-top:3px;font-size:10px}.communications-dialer>div:first-child small{display:block;margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}.communications-dialer-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.communications-dialer-controls input{min-width:0;height:36px;border:1px solid var(--line);border-radius:10px;padding:0 11px;background:var(--input);color:var(--text);font:inherit;font-size:10px;outline:none}.communications-dialer-controls input:focus{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 9%,transparent)}
.browser-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:8px;margin:-2px 0 9px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 78%,transparent)}.browser-keypad button{height:34px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--panel) 88%,transparent);color:var(--text);font-size:12px;font-weight:800;cursor:pointer}.browser-keypad button:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--panel))}.communications-history-head{display:flex;align-items:center;justify-content:space-between;padding:5px 3px 8px}.communications-history-head small{font-size:8px;color:var(--muted)}.communication-outcome{display:inline-flex!important;width:max-content;margin-top:5px!important;padding:2px 6px;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));border-radius:999px;color:var(--accent)!important;font-size:7px!important;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.lead-call-button{white-space:nowrap}
@media(max-width:680px){.communications-dialer{grid-template-columns:1fr}.communications-dialer-controls{grid-template-columns:1fr auto}.browser-phone-card{align-items:flex-start}.browser-phone-actions{max-width:170px}}
.lead-phone-contact{grid-template-columns:minmax(0,1fr) auto!important;column-gap:8px}.lead-phone-contact>span,.lead-phone-contact>b{grid-column:1}.lead-phone-contact>.mini-action{grid-column:2;grid-row:1/3;align-self:center}
.communications-messages-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;margin-bottom:9px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 86%,transparent)}
.communications-messages-toolbar>div{min-width:0}.communications-messages-toolbar span,.communications-compose-to span{display:block;font-size:7px;letter-spacing:.12em;color:var(--accent);font-weight:850}.communications-messages-toolbar b,.communications-compose-to b{display:block;margin-top:2px;font-size:10px}.communications-messages-toolbar small,.communications-compose-to small{display:block;margin-top:2px;color:var(--muted);font-size:8px}
.communications-message-composer{display:grid;gap:8px;padding:10px;margin:9px 0;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 88%,transparent)}
.communications-message-composer label{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:7px}.communications-message-composer label span{font-size:8px;color:var(--muted);font-weight:750}.communications-message-composer input,.communications-message-composer textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:var(--input);color:var(--text);font:inherit;font-size:10px;outline:none}.communications-message-composer input{height:34px;padding:0 10px}.communications-message-composer textarea{min-height:74px;max-height:180px;resize:vertical;padding:9px 10px;line-height:1.45}.communications-message-composer input:focus,.communications-message-composer textarea:focus{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 9%,transparent)}
.communications-compose-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.communications-compose-row .primary-button{min-width:70px;height:34px}.lead-contact-actions{display:inline-flex;gap:5px;align-items:center}
@media(max-width:680px){.communications-messages-toolbar{align-items:flex-start}.communications-compose-row{grid-template-columns:1fr}.communications-compose-row .primary-button{width:100%}}

/* v4.36 call recording archive */
.communication-recording-button{margin-top:6px;align-self:flex-start;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:5px 9px;font-size:11px;font-weight:700;cursor:pointer}
.communication-recording-button:hover{transform:translateY(-1px)}
.communication-recording-locked{display:block;margin-top:5px;opacity:.62;font-size:10px}
.communication-recording-player{display:grid;gap:14px;min-width:min(520px,78vw)}
.communication-recording-player audio{width:100%}
.communication-recording-player .secondary-button{width:max-content;text-decoration:none}
.communication-recording-processing{display:block;margin-top:5px;font-size:10px;font-weight:700;opacity:.72}
.communication-recording-processing::first-letter{font-size:9px}
.communications-history-head>div{display:flex;align-items:center;gap:7px}
.communications-history-refresh{width:24px;height:24px;border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:7px;display:grid;place-items:center;cursor:pointer;font-size:14px;line-height:1}
.communications-history-refresh:hover{color:var(--text);transform:translateY(-1px)}
.browser-phone-actions button:disabled,.incoming-call-actions button:disabled{opacity:.42;cursor:not-allowed;transform:none}
.communication-recording-failed{display:block;margin-top:5px;font-size:10px;font-weight:800;color:var(--danger,#d65b5b)}
.communication-recording-processing.delayed{opacity:1;font-weight:800}
.lead-communications-shell{display:grid;gap:14px}
.lead-communications-head{align-items:center;margin-bottom:0}
.lead-communications-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:14px;align-items:start}
.lead-communications-section{min-width:0;margin:0}
.lead-communications-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.lead-communications-title>div{display:grid;gap:3px}
.lead-communications-title span{font-size:10px;letter-spacing:.16em;color:var(--accent);font-weight:800}
.lead-communications-title b{font-size:15px}
.lead-communications-title small{max-width:280px;text-align:right;color:var(--muted);font-size:10px;line-height:1.35}
.lead-communications-list{display:grid;gap:8px}
.lead-communications-list .communication-row{width:100%;text-align:left}
.lead-communication-message{width:100%;display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border:1px solid var(--line);background:var(--panel-soft,var(--panel));border-radius:12px;padding:11px 12px;color:var(--text);text-align:left;cursor:pointer}
.lead-communication-message:hover{border-color:var(--accent)}
.lead-communication-message>div{display:grid;gap:4px;min-width:0}
.lead-communication-message b{font-size:12px}
.lead-communication-message span{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}
.lead-communication-message time{font-size:10px;color:var(--muted);white-space:nowrap}
.lead-communications-loading{display:grid;place-items:start;gap:6px;border:1px dashed var(--line);border-radius:14px;padding:20px;color:var(--muted)}
.lead-communications-loading b{color:var(--text)}
.lead-communications-loading.error{border-color:color-mix(in srgb,var(--danger,#d65b5b) 45%,var(--line))}
.lead-communication-thread-modal{display:grid;gap:8px;max-height:55vh;overflow:auto;min-width:min(560px,78vw);padding-right:4px}
.communications-empty.compact{padding:20px 12px}
@media(max-width:980px){.lead-communications-grid{grid-template-columns:1fr}.lead-communications-title small{text-align:left}}

/* v4.39 recording recovery + warm transfer */
.communication-recording-status-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px}
.communication-recording-status-line .communication-recording-failed,.communication-recording-status-line .communication-recording-processing{margin-top:0}
.communication-recording-retry{border:0;background:transparent;color:var(--accent,#2d6cff);padding:0;font:inherit;font-size:10px;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.communication-recording-retry:hover{opacity:.78}
.warm-transfer-banner-state{display:block;margin-top:3px;font-weight:800;color:var(--accent,#2d6cff)}
.browser-phone-card .primary-button[data-warm-transfer-complete]{white-space:nowrap}

/* v4.40.0 — recording byte-range playback + live Sales queue */
.communications-queue{display:grid;gap:9px}.communications-queue-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.communications-queue-head>div{min-width:0}.communications-queue-head span{display:block;color:var(--accent);font-size:7px;letter-spacing:.12em;font-weight:900}.communications-queue-head b{display:block;margin-top:3px;font-size:11px}.communications-queue-head small{display:block;margin-top:3px;color:var(--muted);font-size:8px;line-height:1.45}.communications-queue-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.communications-queue-metrics>div{padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--panel) 80%,transparent)}.communications-queue-metrics span{display:block;color:var(--muted);font-size:7px;text-transform:uppercase;letter-spacing:.08em}.communications-queue-metrics b{display:block;margin-top:3px;font-size:13px}.communications-queue-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--panel) 78%,transparent)}.communications-queue-row.eligible{border-color:color-mix(in srgb,#42c77a 35%,var(--line));background:color-mix(in srgb,#42c77a 5%,var(--panel))}.communications-queue-row.on-call{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel))}.communications-queue-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 3px color-mix(in srgb,var(--muted) 12%,transparent)}.communications-queue-row.eligible .communications-queue-dot{background:#42c77a;box-shadow:0 0 0 3px color-mix(in srgb,#42c77a 14%,transparent)}.communications-queue-row.on-call .communications-queue-dot{background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.communications-queue-row b{display:block;font-size:9px}.communications-queue-row small{display:block;margin-top:2px;color:var(--muted);font-size:7px}.communications-queue-row strong{font-size:8px;white-space:nowrap}.communication-recording-player audio{width:100%;min-height:54px}.communication-recording-player{display:grid;gap:10px}.communication-recording-player .secondary-button{justify-self:start}
.communication-transcript-button{margin-top:6px;align-self:flex-start;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:5px 9px;font-size:11px;font-weight:700;cursor:pointer}
.communication-transcript-button:hover{transform:translateY(-1px)}
.communication-transcript-status{display:block;margin-top:5px;font-size:10px;font-weight:700;opacity:.72}
.communication-transcript-view{display:grid;gap:12px;min-width:min(620px,82vw);max-height:min(66vh,720px);overflow:auto;padding-right:4px}
.communication-transcript-channel{display:grid;gap:8px;border:1px solid var(--line);border-radius:12px;padding:12px;background:color-mix(in srgb,var(--panel) 84%,transparent)}
.communication-transcript-channel>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:7px;border-bottom:1px solid var(--line)}
.communication-transcript-channel>header b{font-size:11px}.communication-transcript-channel>header span{font-size:9px;color:var(--muted)}
.communication-transcript-channel article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;align-items:start}.communication-transcript-channel article time{font-size:8px;color:var(--muted);padding-top:2px}.communication-transcript-channel article p{margin:0;font-size:11px;line-height:1.55}

/* v4.41.0 — authenticated recording Blob playback + transcript viewer */

/* v4.42 IVR + voicemail */
.communication-voicemail-button{margin-top:6px;align-self:flex-start;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--panel));color:var(--text);border-radius:8px;padding:5px 9px;font-size:11px;font-weight:700;cursor:pointer}.communication-voicemail-button:hover{transform:translateY(-1px)}
.communications-voicemail{display:grid;gap:8px}.communications-settings-grid textarea{resize:vertical;min-height:78px}

/* v4.43 segmented call recordings */
.communication-recording-segment{display:grid;gap:10px;padding:12px 0;border-bottom:1px solid var(--border-subtle,rgba(127,127,127,.18))}
.communication-recording-segment:last-child{border-bottom:0}
.communication-recording-segment>div{display:flex;align-items:center;justify-content:space-between;gap:12px}
.communication-recording-segment small{opacity:.7}
.communication-recording-segment audio{width:100%;min-height:42px}
.communication-recording-transcript-slot{display:grid;gap:8px;margin-top:2px}
.communication-recording-transcript{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 82%,transparent)}
.communication-recording-transcript>header span{display:block;color:var(--accent);font-size:7px;letter-spacing:.12em;font-weight:900}.communication-recording-transcript>header b{display:block;margin-top:2px;font-size:10px}
.communication-recording-transcript-lines{display:grid;gap:7px}.communication-recording-transcript-lines article{display:grid;grid-template-columns:42px 62px minmax(0,1fr);gap:8px;align-items:start;padding-top:7px;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.communication-recording-transcript-lines article:first-child{border-top:0;padding-top:0}.communication-recording-transcript-lines time{font-size:8px;color:var(--muted);padding-top:2px}.communication-recording-transcript-lines b{font-size:8px;white-space:nowrap;padding-top:2px}.communication-recording-transcript-lines p{margin:0;font-size:10px;line-height:1.5}.communication-recording-transcript-empty{padding:9px 10px;border:1px dashed var(--line);border-radius:9px;color:var(--muted);font-size:9px}.communication-recording-transcript-empty.processing{color:var(--text)}.communication-recording-transcript-empty.failed{color:#d76b6b}
@media(max-width:640px){.communication-recording-transcript-lines article{grid-template-columns:38px minmax(0,1fr)}.communication-recording-transcript-lines article b{grid-column:2}.communication-recording-transcript-lines article p{grid-column:2}}

/* v4.45 Lead Distribution settings polish */
.settings-distribution-shell{display:grid;gap:12px;min-width:0}
.settings-distribution-shell .distribution-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,var(--panel)),var(--panel));border-color:color-mix(in srgb,var(--accent) 22%,var(--line))}
.settings-distribution-shell .distribution-hero h3{font-size:19px}
.settings-distribution-shell .distribution-hero p{font-size:9px;max-width:680px}
.settings-distribution-shell .distribution-kpis>div,.settings-distribution-shell .distribution-agent-card,.settings-distribution-shell .distribution-queue-row,.settings-distribution-shell .distribution-recent-row{background:color-mix(in srgb,var(--panel-soft) 92%,transparent)}
.settings-distribution-shell .distribution-agent-card{padding:9px 10px}
.settings-distribution-shell .distribution-rules-summary{border-radius:11px}
.settings-distribution-shell .distribution-two-col>section{padding:12px}
.settings-distribution-shell .panel-head{margin-bottom:9px}
.distribution-switch-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);cursor:pointer}
.distribution-switch-row>span{display:grid;gap:2px;min-width:0}.distribution-switch-row b{font-size:9px}.distribution-switch-row small{font-size:7.5px;line-height:1.4;color:var(--muted)}
.distribution-switch-row input{position:absolute;opacity:0;pointer-events:none}.distribution-switch-row>i{position:relative;width:34px;height:18px;flex:0 0 34px;border-radius:999px;background:var(--line);box-shadow:inset 0 0 0 1px var(--line);transition:.16s ease}.distribution-switch-row>i:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--text);transition:.16s ease}
.distribution-switch-row input:checked+i{background:color-mix(in srgb,var(--accent) 72%,#4abf8a)}.distribution-switch-row input:checked+i:after{transform:translateX(16px);background:white}
.distribution-check-chip,.distribution-day-toggle{position:relative;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.distribution-check-chip input,.distribution-day-toggle input{position:absolute;opacity:0;pointer-events:none}
.distribution-check-chip{padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);font-size:8px}.distribution-check-chip span{display:grid;place-items:center;width:15px;height:15px;border:1px solid var(--line);border-radius:4px;color:transparent;font-size:9px}.distribution-check-chip input:checked~span{background:var(--accent);border-color:var(--accent);color:white}.distribution-check-chip b{font-size:8px;font-weight:800}
.distribution-day-toggle{min-width:86px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;background:var(--panel)}.distribution-day-toggle i{display:grid;place-items:center;width:14px;height:14px;border:1px solid var(--line);border-radius:4px;color:transparent;font-style:normal;font-size:8px}.distribution-day-toggle input:checked~i{background:var(--accent);border-color:var(--accent);color:white}.distribution-day-toggle b{font-size:8px}
@media(max-width:700px){.distribution-switch-row{align-items:flex-start}.distribution-switch-row>i{margin-top:2px}}

/* v4.46.0 · Communications call search + shared voicemail */
.communications-call-search{display:grid;gap:8px;margin:0 0 10px;padding:10px;border:1px solid color-mix(in srgb,var(--accent) 12%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--panel) 90%,transparent);overflow:hidden}
.communications-call-search-main{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;min-width:0}
.communications-search-icon{display:grid;place-items:center;font-size:12px;color:var(--muted)}
.communications-call-search input,.communications-call-search select{width:100%;height:34px;box-sizing:border-box;border:1px solid var(--line);border-radius:9px;background:var(--input);color:var(--text);padding:0 10px;font:inherit;font-size:9px;outline:none;min-width:0}
.communications-call-search input:focus,.communications-call-search select:focus{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 8%,transparent)}
.communications-call-search-filters{display:grid;gap:7px;min-width:0}
.communications-date-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;min-width:0}
.communications-date-nav{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;gap:5px;align-items:center;min-width:0}
.communications-date-nav .mini-button,.communications-date-shortcuts .mini-button{height:34px;min-width:34px;padding:0 8px}
.communications-date-shortcuts{display:flex;align-items:center;gap:5px;white-space:nowrap}
.communications-select-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px;min-width:0}
.shared-voicemail-row[data-communications-open-lead]{cursor:pointer}.shared-voicemail-row[data-communications-open-lead]:hover{border-color:color-mix(in srgb,var(--accent) 30%,var(--line));background:color-mix(in srgb,var(--accent) 4%,var(--panel))}
@media(max-width:760px){.communications-date-row{grid-template-columns:minmax(0,1fr)}.communications-date-shortcuts{justify-content:flex-end}.communications-select-filters{grid-template-columns:1fr 1fr}}

/* v4.47 supervisor phone */
.communications-live-panel{grid-column:1/-1}
.communications-live-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.communications-live-summary>div{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel-2) 82%,transparent)}
.communications-live-summary span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.communications-live-summary b{font-size:19px;line-height:1;color:var(--text)}
.communications-live-list{display:grid;gap:9px}
.communications-live-call{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 94%,transparent)}
.communications-live-call-main{display:flex;align-items:center;gap:11px;min-width:0}
.communications-live-call-main>div:last-child{display:grid;gap:2px;min-width:0}
.communications-live-call-main b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.communications-live-call-main span,.communications-live-call-main small{font-size:9px;color:var(--muted)}
.communications-live-call-main small i{font-style:normal;color:var(--text)}
.communications-live-pulse{width:10px;height:10px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 5px color-mix(in srgb,#22c55e 14%,transparent);flex:0 0 auto}
.communications-live-pulse.held{background:#f59e0b;box-shadow:0 0 0 5px color-mix(in srgb,#f59e0b 15%,transparent)}
.communications-live-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto}
.communications-live-empty{display:grid;place-items:center;gap:4px;min-height:110px;border:1px dashed var(--line);border-radius:15px;text-align:center;color:var(--muted)}
.communications-live-empty b{color:var(--text);font-size:13px}.communications-live-empty span{font-size:10px}
.supervisor-call-banner{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:190;display:flex;align-items:center;justify-content:space-between;gap:24px;min-width:min(620px,calc(100vw - 32px));max-width:760px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent) 48%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel) 96%,transparent);box-shadow:0 22px 60px rgba(0,0,0,.28);backdrop-filter:blur(18px)}
.supervisor-call-banner[hidden]{display:none!important}.supervisor-call-banner>div:first-child{display:grid;gap:2px;min-width:0}.supervisor-call-banner span{font-size:8px;letter-spacing:.13em;color:var(--accent);font-weight:900}.supervisor-call-banner b{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.supervisor-call-banner small{font-size:9px;color:var(--muted)}.supervisor-call-banner small i{font-style:normal;color:var(--text)}
.supervisor-call-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
@media(max-width:760px){.communications-live-summary{grid-template-columns:1fr}.communications-live-call{align-items:flex-start;flex-direction:column}.communications-live-actions{width:100%}.communications-live-actions button{flex:1}.supervisor-call-banner{bottom:10px;gap:10px}.supervisor-call-banner b{font-size:13px}}
/* v4.48 supervisor listen / whisper / barge */
.communications-live-call.supervised{border-color:color-mix(in srgb,var(--accent) 38%,var(--line));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 10%,transparent)}
.communications-live-call-main small strong{color:var(--accent);font-size:9px;font-weight:800}
.supervisor-mode-buttons{display:flex;align-items:center;gap:5px;padding:3px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel-2) 86%,transparent)}
.supervisor-mode-buttons .mini-button{min-height:29px;padding:5px 8px}
.supervisor-mode-buttons .mini-button:disabled{opacity:.45;cursor:not-allowed}
.supervisor-call-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
@media(max-width:900px){.communications-live-actions{flex-wrap:wrap}.supervisor-mode-buttons{order:3;width:100%}.supervisor-mode-buttons .mini-button{flex:1}}

/* v4.49 conference participants */
.conference-participants{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}
.conference-participants span{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 88%,var(--accent) 12%);font-size:7px;font-weight:800;color:var(--text)}
.conference-participants button{width:14px;height:14px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:11px;line-height:1;cursor:pointer}
.conference-participants button:hover{background:color-mix(in srgb,#d84b4b 14%,transparent);color:#d84b4b}

/* v4.52 Clover payments */
.clover-settings-shell{display:grid;gap:12px;min-width:0}.clover-connection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.clover-connection-grid>div{display:grid;gap:3px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.clover-connection-grid span{font-size:7.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.clover-connection-grid b{font-size:10px;overflow-wrap:anywhere}.clover-settings-form{display:grid;gap:11px}.clover-toggle-row{display:flex!important;align-items:flex-start;gap:9px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);cursor:pointer}.clover-toggle-row>input{width:15px;height:15px;margin:1px 0 0;flex:0 0 auto}.clover-toggle-row>span{display:grid;gap:2px}.clover-toggle-row b{font-size:9px}.clover-toggle-row small{font-size:7.5px;line-height:1.45;color:var(--muted)}.clover-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.clover-payment-summary>div{display:grid;gap:3px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.clover-payment-summary span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.clover-payment-summary b{font-size:11px;overflow-wrap:anywhere}.clover-card-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.clover-card-grid .field{min-width:0}.clover-card-element{height:39px;padding:8px 9px;border:1px solid var(--line);border-radius:9px;background:var(--input);overflow:hidden}.clover-new-card[hidden]{display:none!important}.clover-card-element+small,[data-clover-error]{min-height:12px;color:#d76b6b;font-size:7px}.clover-ledger-card{display:grid;gap:10px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel-soft) 88%,transparent)}.clover-ledger-actions{display:flex;align-items:center;gap:7px}.clover-ledger{display:grid;gap:7px}.clover-ledger-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.clover-ledger-row>div{display:grid;gap:2px;min-width:0}.clover-ledger-row>div:last-child{justify-items:end;text-align:right}.clover-ledger-row span:not(.status-pill){font-size:7.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.clover-ledger-row b{font-size:11px}.clover-ledger-row small{font-size:7px;color:var(--muted);overflow-wrap:anywhere}.clover-refund-button{margin-top:4px;min-height:28px;padding:5px 8px}.clover-empty{display:grid;place-items:center;gap:3px;padding:18px;border:1px dashed var(--line);border-radius:10px;text-align:center}.clover-empty b{font-size:10px}.clover-empty p{margin:0;font-size:8px;color:var(--muted)}
@media(max-width:820px){.clover-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clover-payment-summary{grid-template-columns:1fr}.clover-card-grid{grid-template-columns:1fr}.clover-ledger-row{align-items:flex-start;flex-direction:column}.clover-ledger-row>div:last-child{justify-items:start;text-align:left}}
.clover-card-element iframe{display:block;width:100%!important;height:100%!important;border:0!important}

/* v4.54 Payment Center + card links + AVS */
.section-head-actions,.payment-center-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.payment-center-shell{display:grid;gap:12px;min-width:0}.payment-center-command{align-items:center}.payment-stat-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.payment-center-filter{display:grid;grid-template-columns:minmax(220px,1fr) 150px 160px;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.payment-center-filter label{display:grid;gap:4px}.payment-center-filter label>span{font-size:7px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.payment-center-filter input,.payment-center-filter select{width:100%;min-width:0}.payment-center-table{min-width:0;overflow-x:auto}.payment-center-head,.payment-center-row{display:grid;grid-template-columns:100px minmax(170px,1.15fr) minmax(180px,1fr) minmax(140px,.9fr) 100px 100px 90px;gap:9px;align-items:center;min-width:930px}.payment-center-head{padding:8px 12px;border-bottom:1px solid var(--line);font-size:7px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.payment-center-row{padding:10px 12px;border-bottom:1px solid var(--line);font-size:8px}.payment-center-row:last-child{border-bottom:0}.payment-center-row>span,.payment-center-row>.payment-lead-link{min-width:0;display:grid;gap:3px}.payment-center-row small{font-size:6.8px;color:var(--muted);overflow-wrap:anywhere}.payment-center-row .money{font-size:10px}.payment-lead-link{appearance:none;border:0;background:transparent;text-align:left;color:var(--text);padding:0;cursor:pointer}.payment-lead-link:hover b{color:var(--accent)}.payment-center-row .status-pill{font-style:normal;width:max-content}.clover-avs-row{display:flex!important;flex-wrap:wrap;gap:3px!important;margin-top:3px}.clover-avs-row span{padding:2px 5px;border-radius:999px;border:1px solid var(--line);font-size:6px!important;text-transform:none!important;letter-spacing:0!important}.clover-avs-row .pass{background:color-mix(in srgb,#2fa66b 13%,transparent);border-color:color-mix(in srgb,#2fa66b 30%,var(--line));color:#2fa66b!important}.clover-avs-row .fail{background:color-mix(in srgb,#d84b4b 12%,transparent);border-color:color-mix(in srgb,#d84b4b 30%,var(--line));color:#d84b4b!important}.clover-avs-row .neutral{color:var(--muted)!important}.clover-card-profile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.clover-card-profile>div{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.clover-card-profile span{font-size:6.8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.clover-card-profile b{font-size:10px}.clover-card-profile small{font-size:7px;color:var(--muted)}.clover-card-profile.empty{grid-template-columns:1fr}.clover-link-history{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.clover-link-history summary{cursor:pointer;padding:9px 10px;font-size:8px;font-weight:700}.clover-link-history>div{display:grid;border-top:1px solid var(--line)}.clover-link-history>div>span{display:grid;gap:2px;padding:8px 10px;border-bottom:1px solid var(--line)}.clover-link-history>div>span:last-child{border-bottom:0}.clover-link-history b{font-size:8px}.clover-link-history small{font-size:7px;color:var(--muted)}.payment-lead-picker-results{display:grid;gap:6px}.payment-lead-picker-results>button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);color:var(--text);text-align:left;cursor:pointer}.payment-lead-picker-results>button:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line))}.payment-lead-picker-results>button span{display:grid;gap:2px}.payment-lead-picker-results>button b{font-size:9px}.payment-lead-picker-results>button small{font-size:7px;color:var(--muted)}.payment-lead-picker-results>button i{font-size:7px;font-style:normal;color:var(--accent);font-weight:700;white-space:nowrap}
@media(max-width:820px){.payment-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-center-filter{grid-template-columns:1fr}.clover-card-profile{grid-template-columns:1fr}.section-head-actions{width:100%}.section-head-actions button{flex:1}}

/* v4.54.2 payment polish + Lead email menu stacking */
body.lead-email-menu-open .lead-detail-hero{z-index:96}
.lead-email-menu{z-index:1000;box-shadow:0 28px 70px rgba(0,0,0,.52)}
.clover-payment-summary{margin-bottom:16px}
.clover-card-element{height:44px;padding:0 12px;display:flex;align-items:center;border-radius:11px;background:color-mix(in srgb,var(--input) 92%,var(--panel));border-color:color-mix(in srgb,var(--line) 82%,var(--cyan));transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.clover-card-element:focus-within{border-color:color-mix(in srgb,var(--cyan) 72%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 10%,transparent);background:color-mix(in srgb,var(--input) 96%,var(--cyan) 4%)}
.clover-card-element iframe{min-height:28px!important;background:transparent!important}
.clover-card-grid{gap:12px}
.clover-card-grid .field,.clover-new-card.field{gap:7px}
.clover-card-element+small,[data-clover-error]{min-height:14px;font-size:8px;line-height:1.3}
.clover-toggle-row{padding:12px 13px;border-radius:12px}
.card-link-result{display:grid;gap:14px}.card-link-result-status{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:var(--panel-soft)}
.card-link-result-status>span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;font-weight:800;background:color-mix(in srgb,var(--green) 16%,transparent);color:var(--green)}
.card-link-result.warning .card-link-result-status>span{background:color-mix(in srgb,#e6a13d 16%,transparent);color:#e6a13d}.card-link-result-status b{font-size:11px}.card-link-result-status p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.5}
.card-link-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.card-link-copy-row input{min-width:0;font-family:"DM Mono",monospace;font-size:9px}.card-link-copy-row button{white-space:nowrap}
.clover-link-history em{font-style:normal;font-size:7px;line-height:1.4;color:#d99a45;overflow-wrap:anywhere}
@media(max-width:680px){.card-link-copy-row{grid-template-columns:1fr}.card-link-copy-row button{width:100%}}
.clover-card-entry-panel{display:grid;gap:12px;padding:14px;border:1px solid color-mix(in srgb,var(--line) 82%,var(--cyan));border-radius:15px;background:linear-gradient(180deg,color-mix(in srgb,var(--panel-soft) 94%,var(--cyan) 6%),var(--panel-soft))}
.clover-card-entry-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.clover-card-entry-head>div{display:grid;gap:2px}.clover-card-entry-head span{font:600 7px/1 "DM Mono",monospace;letter-spacing:.11em;text-transform:uppercase;color:var(--cyan)}.clover-card-entry-head b{font-size:12px}.clover-card-entry-head small{padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:7px}

/* v4.54.3 — Clover payment reliability + easier secure field targeting */
.lead-card-status{display:inline-flex;align-items:center;min-height:31px;padding:0 9px;border:1px solid var(--line);border-radius:9px;font-size:8px;font-weight:750;letter-spacing:.02em;white-space:nowrap;background:var(--panel-soft);color:var(--muted)}
.lead-card-status.saved{border-color:color-mix(in srgb,var(--green) 35%,var(--line));background:color-mix(in srgb,var(--green) 8%,var(--panel-soft));color:var(--text)}
.lead-card-status.loading{opacity:.72}.lead-card-status.empty{opacity:.64}
.clover-card-entry-panel{gap:14px;padding:15px;background:color-mix(in srgb,var(--panel-soft) 97%,var(--cyan) 3%);border-color:color-mix(in srgb,var(--line) 90%,var(--cyan));box-shadow:none}
.clover-card-element{height:52px!important;padding:0!important;position:relative!important;display:block!important;overflow:hidden!important;border-radius:11px!important;background:var(--input)!important}
.clover-card-element iframe{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:52px!important;border:0!important;background:transparent!important;pointer-events:auto!important}
.clover-card-entry-panel .field{margin:0!important}.clover-card-entry-panel .field-label{margin-bottom:7px!important;font-size:8px!important;font-weight:700!important}
.clover-card-grid{gap:10px!important}
.clover-card-element:focus-within{border-color:color-mix(in srgb,var(--cyan) 72%,var(--line))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 11%,transparent)!important}
[data-clover-charge-error]{margin-top:2px}
@media(max-width:900px){.lead-card-status{display:none}.clover-card-grid{grid-template-columns:1fr 1fr}.clover-card-grid .field:last-child{grid-column:1/-1}}
/* v4.54.3 — compact payment form + full iframe click targets */
.clover-card-entry-panel{padding:0!important;border:0!important;background:transparent!important;border-radius:0!important;gap:10px!important}
.clover-card-entry-head{padding:2px 0 8px!important;border-bottom:1px solid var(--line)!important}
.clover-card-entry-head small{background:var(--panel-soft)}
.clover-card-element{height:50px!important;border:1px solid color-mix(in srgb,var(--line) 92%,var(--text))!important;border-radius:10px!important;background:var(--input)!important;cursor:text!important}
.clover-card-element:hover{border-color:color-mix(in srgb,var(--cyan) 42%,var(--line))!important}
.clover-card-element iframe{height:50px!important;min-height:50px!important;cursor:text!important}
.clover-card-grid{grid-template-columns:1fr 1fr 1fr!important;gap:9px!important}
.clover-sandbox-hint{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid color-mix(in srgb,#d5a23f 32%,var(--line));border-radius:10px;background:color-mix(in srgb,#d5a23f 7%,var(--panel-soft));font-size:8px;line-height:1.45;color:var(--muted)}
.clover-sandbox-hint b{flex:0 0 auto;color:var(--text);font-size:8px}.clover-sandbox-hint[hidden]{display:none!important}
.clover-security-line{display:flex;align-items:center;gap:7px;padding:2px 1px;color:var(--muted);font-size:8px}.clover-security-line p{margin:0;line-height:1.45}
@media(max-width:700px){.clover-card-grid{grid-template-columns:1fr!important}.clover-sandbox-hint{align-items:flex-start;flex-direction:column;gap:3px}}

/* v4.56 payment operations */
.payment-attention-panel{border-color:color-mix(in srgb,#d84b4b 22%,var(--line))}.payment-attention-panel .payment-request-center-list article{background:color-mix(in srgb,#d84b4b 4%,var(--panel))}.payment-activity-history{margin-top:2px}

/* v4.57 payment reporting */
.payment-report-toolbar{display:grid;gap:10px;padding:12px}.payment-range-buttons{display:flex;gap:6px;flex-wrap:wrap}.payment-range-buttons button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:7px;font-weight:800;cursor:pointer}.payment-range-buttons button.active{background:color-mix(in srgb,var(--accent) 13%,var(--panel));border-color:color-mix(in srgb,var(--accent) 44%,var(--line));color:var(--text)}.payment-custom-range{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.payment-custom-range input{min-width:145px}.payment-report-filters{display:grid;grid-template-columns:minmax(150px,190px) minmax(170px,220px) 1fr;gap:8px;align-items:end}.payment-report-filters label,.payment-report-period{display:grid;gap:4px}.payment-report-filters label>span,.payment-report-period>span{font-size:6.8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.payment-report-period{justify-self:end;text-align:right}.payment-report-period b{font-size:8px}.payment-stat-grid article small{display:block;margin-top:3px;font-size:6.5px;color:var(--muted);font-weight:500}.payment-report-breakdowns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-breakdown-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}.payment-breakdown-list>article{display:grid;grid-template-columns:minmax(140px,1fr) minmax(120px,.75fr) 90px;gap:10px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--line)}.payment-breakdown-list>article:last-child{border-bottom:0}.payment-breakdown-list>article>span{display:grid;gap:2px;min-width:0}.payment-breakdown-list b{font-size:8px}.payment-breakdown-list small{font-size:6.7px;color:var(--muted)}.payment-breakdown-list>article>b{text-align:right;font-size:9px}.payment-provider-match{display:grid;gap:10px}.payment-match-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.payment-match-grid article{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);display:grid;gap:3px}.payment-match-grid span{font-size:6.8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.payment-match-grid b{font-size:13px}.payment-match-grid small{font-size:6.8px;color:var(--muted)}
@media(max-width:980px){.payment-report-breakdowns{grid-template-columns:1fr}.payment-report-filters{grid-template-columns:1fr 1fr}.payment-report-period{grid-column:1/-1;justify-self:start;text-align:left}.payment-match-grid{grid-template-columns:1fr}}
@media(max-width:620px){.payment-report-filters{grid-template-columns:1fr}.payment-custom-range{display:grid;grid-template-columns:1fr auto 1fr}.payment-custom-range button{grid-column:1/-1}.payment-breakdown-list>article{grid-template-columns:1fr 1fr}.payment-breakdown-list>article>b{grid-column:2;text-align:right}.payment-range-buttons button{flex:1}}

/* v4.58 Clover production-readiness + payment safety */
.clover-credential-block{border:1px solid var(--border);border-radius:14px;padding:14px;background:color-mix(in srgb,var(--panel) 88%,transparent);display:grid;gap:10px}
.clover-credential-block.production{border-style:dashed}
.clover-credential-block>.form-grid{margin:0}
.clover-credential-block>small{color:var(--muted);font-size:12px}
.production-readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:14px 0}
.production-readiness-grid article{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:12px;padding:11px 12px;background:color-mix(in srgb,var(--panel) 90%,transparent)}
.production-readiness-grid article>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:800;border:1px solid var(--border)}
.production-readiness-grid article.ready>span{background:rgba(35,160,95,.13)}
.production-readiness-grid article.waiting{opacity:.78}
.production-readiness-grid article div{display:grid;gap:2px;min-width:0}
.production-readiness-grid article b{font-size:13px}
.production-readiness-grid article small{font-size:11px;color:var(--muted)}
.payment-mode-banner{display:flex;align-items:center;gap:12px;border:1px solid var(--border);border-radius:13px;padding:10px 14px;margin:0 0 12px;background:var(--panel)}
.payment-mode-banner b{font-size:12px;letter-spacing:.08em;white-space:nowrap}
.payment-mode-banner span{font-size:12px;color:var(--muted)}
.payment-mode-banner.live{border-color:rgba(31,143,91,.35);box-shadow:inset 3px 0 0 rgba(31,143,91,.65)}
.payment-mode-banner.test{border-color:rgba(72,118,196,.35);box-shadow:inset 3px 0 0 rgba(72,118,196,.65)}
.payment-mode-banner.danger{border-color:rgba(199,65,65,.35);box-shadow:inset 3px 0 0 rgba(199,65,65,.7)}
.production-pilot-row{border-color:rgba(199,65,65,.35)!important;background:rgba(199,65,65,.05)!important}
@media(max-width:760px){.production-readiness-grid{grid-template-columns:1fr}.payment-mode-banner{align-items:flex-start;flex-direction:column;gap:4px}}

/* v4.59 · Contract + payment booking workflow */
.lead-participants-view{grid-column:1/-1}.lead-participant-view-list{display:grid;gap:9px;margin-top:10px}.lead-participant-view-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.lead-participant-view-list article span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.lead-participant-view-list article h5{margin:3px 0 2px}.lead-participant-view-list article p{margin:0;color:var(--muted);font-size:12px}.lead-participant-block{margin-top:20px}.lead-participant-editor{border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);padding:14px;margin-top:10px}.lead-participant-editor-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.lead-participant-editor-head span{display:block;font-size:9px;letter-spacing:.1em;color:var(--muted);font-weight:900}.lead-participant-editor-head b{display:block;margin-top:3px}.lead-participant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lead-participant-grid label>span{display:block;font-size:10px;font-weight:800;color:var(--muted);margin-bottom:5px}.lead-participant-grid input,.lead-participant-grid select{width:100%}.participant-contract-check{display:flex!important;align-items:flex-start;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;grid-column:span 2}.participant-contract-check input{width:auto;margin-top:3px}.participant-contract-check span{margin:0!important}.participant-contract-check b,.participant-contract-check small{display:block}.participant-contract-check small{font-weight:500;color:var(--muted);margin-top:2px}.booking-workflow-card{margin:14px 0 16px;padding:16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,var(--panel-soft),var(--panel));}.booking-workflow-card.ready{border-color:color-mix(in srgb,var(--success) 45%,var(--line))}.booking-workflow-card.cancelled{opacity:.78}.booking-workflow-card.empty{display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-workflow-card h5{margin:3px 0 4px}.booking-workflow-card p{margin:0;color:var(--muted);font-size:12px}.booking-workflow-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.booking-signer-list{display:grid;gap:7px;margin-top:12px}.booking-signer-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:9px 10px;border-radius:10px;background:var(--panel);border:1px solid var(--line)}.booking-signer-list b,.booking-signer-list small{display:block}.booking-signer-list small{color:var(--muted);margin-top:2px}.booking-workflow-actions{display:flex;justify-content:flex-end;margin-top:12px}.booking-modal-intro{padding:12px 14px;border:1px solid var(--line);background:var(--panel-soft);border-radius:12px;margin-bottom:14px}.booking-modal-intro p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.workflow-check{display:flex!important;align-items:flex-start;gap:9px;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.workflow-check input{width:auto!important;margin-top:3px}.workflow-check b,.workflow-check small{display:block}.workflow-check small{margin-top:2px;color:var(--muted)}.lead-document-card.booking{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.lead-document-card.payer-evidence .lead-document-icon{font-size:10px;font-weight:900}.contract-template-meta span:last-child{font-weight:800}.lead-detail-actions [data-contract-deposit-top]{white-space:nowrap}
@media(max-width:900px){.lead-participant-grid{grid-template-columns:1fr 1fr}.participant-contract-check{grid-column:1/-1}.booking-workflow-card.empty{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.lead-participant-grid{grid-template-columns:1fr}.participant-contract-check{grid-column:auto}.booking-signer-list article{grid-template-columns:1fr auto}.booking-signer-list article .quiet-mini-button{grid-column:1/-1}.lead-detail-actions [data-contract-deposit-top]{width:100%}}
.payer-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.payer-evidence-grid>div{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--panel-soft)}.payer-evidence-grid .full{grid-column:1/-1}.payer-evidence-grid span,.payer-evidence-grid b,.payer-evidence-grid code{display:block}.payer-evidence-grid span{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:900;margin-bottom:4px}.payer-evidence-grid code{white-space:normal;word-break:break-word;font-size:11px}.lead-document-card.payer-evidence{border-color:color-mix(in srgb,#b7791f 40%,var(--line))}
@media(max-width:620px){.payer-evidence-grid{grid-template-columns:1fr}.payer-evidence-grid .full{grid-column:auto}}

/* v4.60 · Customer Portal + Terms/Conditions + dispute evidence */
.contract-terms-preview{display:grid;gap:4px;margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}
.contract-terms-preview b{font-size:8px;text-transform:uppercase;letter-spacing:.08em}.contract-terms-preview span{font-size:10px;line-height:1.45;color:var(--muted);white-space:pre-wrap}.contract-digest{display:block;margin-top:7px;font-size:9px;color:var(--muted);word-break:break-all}
.portal-admin-card{display:grid;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);padding:14px}.portal-admin-status{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.portal-admin-status h4{margin:2px 0 4px}.portal-admin-status p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.portal-admin-status>span{white-space:nowrap}.portal-admin-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.portal-admin-empty{display:grid;gap:9px;text-align:center;padding:18px 12px;color:var(--muted)}.portal-admin-empty b{color:var(--text)}
.copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.copy-field input{min-width:0;width:100%}.lead-document-head-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
@media(max-width:680px){.portal-admin-status{flex-direction:column}.portal-admin-actions{justify-content:stretch}.portal-admin-actions button{flex:1}.copy-field{grid-template-columns:1fr}.lead-document-head-actions{width:100%;justify-content:stretch}.lead-document-head-actions button{flex:1}}

/* v4.61 · Pre-Move Readiness */
.pre-move-dashboard{padding:18px 20px;margin:16px 0}.pre-move-dashboard .panel-head{align-items:flex-start}.pre-move-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:16px 0}.pre-move-summary>div{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:color-mix(in srgb,var(--panel) 90%,transparent);display:flex;align-items:center;justify-content:space-between;gap:12px}.pre-move-summary span{font-size:12px;color:var(--muted)}.pre-move-summary b{font-size:22px}.pre-move-summary .ready b{color:#26b67a}.pre-move-summary .attention b{color:#e0a12a}.pre-move-summary .blocked b{color:#e15a64}.pre-move-job-list{display:grid;gap:8px}.pre-move-job{width:100%;display:grid;grid-template-columns:118px minmax(0,1fr) 150px;gap:14px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--panel) 94%,transparent);padding:12px 14px;color:var(--text);cursor:pointer}.pre-move-job:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));transform:translateY(-1px)}.pre-move-job-date{display:grid;gap:2px}.pre-move-job-date b{font-size:13px}.pre-move-job-date span,.pre-move-job-main span,.pre-move-job-main small{font-size:11px;color:var(--muted)}.pre-move-job-main{display:grid;gap:3px;min-width:0}.pre-move-job-main>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pre-move-job-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pre-move-job-state{text-align:right;display:grid;gap:3px;justify-items:end}.pre-move-job-state span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pre-move-job-state b{font-size:15px}.pre-move-job.ready .pre-move-job-state span{color:#26b67a}.pre-move-job.needs_attention .pre-move-job-state span{color:#d69a27}.pre-move-job.blocked{border-color:color-mix(in srgb,#df5965 36%,var(--line))}.pre-move-job.blocked .pre-move-job-state span{color:#e15a64}
.readiness-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:10px}.readiness-settings-form{display:grid;gap:16px}
.lead-readiness-badge{display:inline-flex;align-items:center;margin-left:8px;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;vertical-align:middle;border:1px solid var(--line);background:color-mix(in srgb,var(--panel) 85%,transparent)}.lead-readiness-badge.ready{color:#1c9e68;border-color:color-mix(in srgb,#26b67a 45%,var(--line));background:color-mix(in srgb,#26b67a 9%,var(--panel))}.lead-readiness-badge.needs_attention{color:#b67a0b;border-color:color-mix(in srgb,#d89a25 45%,var(--line));background:color-mix(in srgb,#d89a25 10%,var(--panel))}.lead-readiness-badge.blocked{color:#d44c59;border-color:color-mix(in srgb,#df5965 50%,var(--line));background:color-mix(in srgb,#df5965 10%,var(--panel))}.lead-readiness-badge.loading{color:var(--muted)}
.lead-readiness-panel{margin:12px 0 0;border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 94%,transparent);overflow:hidden}.lead-readiness-panel.ready{border-color:color-mix(in srgb,#26b67a 38%,var(--line))}.lead-readiness-panel.blocked{border-color:color-mix(in srgb,#df5965 46%,var(--line))}.lead-readiness-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid var(--line)}.lead-readiness-panel-head>div:first-child{display:grid;gap:2px}.lead-readiness-panel-head>div:first-child>span{font-size:10px;letter-spacing:.12em;color:var(--accent);font-weight:800}.lead-readiness-panel-head>div:first-child>b{font-size:16px}.lead-readiness-panel-head>div:first-child>small{font-size:11px;color:var(--muted)}.lead-readiness-panel-head>div:last-child{display:grid;grid-template-columns:auto auto auto auto;gap:5px 8px;align-items:baseline}.lead-readiness-panel-head strong{font-size:17px}.lead-readiness-panel-head>div:last-child span{font-size:10px;color:var(--muted);text-transform:uppercase}.lead-readiness-issues{display:grid}.lead-readiness-issues button{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 16px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer}.lead-readiness-issues button:last-child{border-bottom:0}.lead-readiness-issues button:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.lead-readiness-issues i{width:7px;height:7px;border-radius:50%;background:#d89a25}.lead-readiness-issues button.critical i{background:#df5965}.lead-readiness-issues span{display:grid;gap:2px}.lead-readiness-issues b{font-size:12px}.lead-readiness-issues small{font-size:11px;color:var(--muted)}.lead-readiness-issues em{font-size:10px;color:var(--accent);font-style:normal;font-weight:800}.lead-readiness-ready{padding:14px 16px;display:flex;align-items:center;gap:12px;color:#1b9564}.lead-readiness-ready span{font-size:11px;color:var(--muted)}.lead-readiness-panel.loading{padding:13px 16px;display:flex;align-items:center;gap:10px}.lead-readiness-panel.loading>span{width:10px;height:10px;border-radius:50%;background:var(--accent);animation:pulse 1.2s infinite}
@media(max-width:900px){.pre-move-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pre-move-job{grid-template-columns:92px minmax(0,1fr)}.pre-move-job-state{grid-column:2;text-align:left;justify-items:start}.readiness-toggle-grid{grid-template-columns:1fr}.lead-readiness-panel-head{align-items:flex-start;flex-direction:column}.lead-readiness-panel-head>div:last-child{grid-template-columns:auto auto auto auto}}
.foreman-readiness{margin:12px 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft);overflow:hidden}.foreman-readiness-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-bottom:1px solid var(--line)}.foreman-readiness-head>div{display:grid;gap:2px}.foreman-readiness-head span{font-size:9px;letter-spacing:.12em;color:var(--accent);font-weight:900}.foreman-readiness-head b{font-size:14px}.foreman-readiness-head strong{font-size:11px;color:var(--muted)}.foreman-readiness.ready{border-color:color-mix(in srgb,#26b67a 38%,var(--line))}.foreman-readiness.blocked{border-color:color-mix(in srgb,#df5965 45%,var(--line))}.foreman-readiness>p{margin:0;padding:12px 13px;font-size:11px;color:#1b9564}.foreman-readiness-issues{display:grid}.foreman-readiness-issues>div{display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-items:start;padding:9px 13px;border-bottom:1px solid var(--line)}.foreman-readiness-issues>div:last-child{border-bottom:0}.foreman-readiness-issues i{width:7px;height:7px;border-radius:50%;background:#d89a25;margin-top:4px}.foreman-readiness-issues .critical i{background:#df5965}.foreman-readiness-issues span{display:grid;gap:2px}.foreman-readiness-issues b{font-size:11px}.foreman-readiness-issues small{font-size:10px;color:var(--muted);line-height:1.4}

/* v4.62 customer lifecycle communications */
.lifecycle-settings-form{display:grid;gap:16px}.lifecycle-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lifecycle-event-card{border:1px solid var(--line);border-radius:15px;background:color-mix(in srgb,var(--panel) 94%,transparent);overflow:hidden}.lifecycle-event-card.disabled{opacity:.72}.lifecycle-event-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px 14px;border-bottom:1px solid var(--line)}.lifecycle-event-card>header>div{display:grid;gap:3px}.lifecycle-event-card h4{margin:0;font-size:13px}.lifecycle-event-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.lifecycle-event-card .form-grid{padding:12px 14px}.lifecycle-event-channels{display:flex;gap:10px;padding:11px 14px 0}.lifecycle-event-channels .workflow-check{flex:1;min-height:unset}.lifecycle-history{display:grid;gap:7px}.lifecycle-history article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:10px;align-items:start;border:1px solid var(--line);border-radius:11px;padding:10px 12px;background:color-mix(in srgb,var(--panel) 94%,transparent)}.lifecycle-history article>span{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) 10%,var(--panel));font-size:10px;font-weight:900}.lifecycle-history article>div{display:grid;gap:2px}.lifecycle-history article b{font-size:11px;text-transform:capitalize}.lifecycle-history article small{font-size:10px;color:var(--muted)}.lifecycle-history article p{margin:3px 0 0;font-size:10px;color:var(--muted)}.lifecycle-history article em{font-size:9px;font-style:normal;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#1b9564}.lifecycle-history article.failed{border-color:color-mix(in srgb,#df5965 40%,var(--line))}.lifecycle-history article.failed em{color:#d44c59}@media(max-width:980px){.lifecycle-event-grid{grid-template-columns:1fr}}

/* v4.63.0 — Schedule + onsite estimates + completed jobs */
.schedule-shell{display:grid;gap:14px;min-width:0}.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px}.schedule-toolbar h3{margin:.25rem 0 .25rem}.schedule-toolbar p{margin:0;color:var(--muted)}.schedule-toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.schedule-mode-toggle,.schedule-tabs{display:flex;align-items:center;gap:4px}.schedule-mode-toggle{padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}.schedule-mode-toggle button,.schedule-tabs button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:800;cursor:pointer;border-radius:9px;padding:8px 12px}.schedule-mode-toggle button.active,.schedule-tabs button.active{background:var(--panel);color:var(--text);box-shadow:0 1px 0 rgba(0,0,0,.08)}.schedule-tabs{border-bottom:1px solid var(--line);padding:0 4px 8px}.schedule-tabs button{border-radius:9px 9px 0 0}.schedule-tabs button.active{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.schedule-filters{display:flex;align-items:end;gap:12px;padding:12px 16px}.schedule-filters label{display:grid;gap:5px;min-width:190px}.schedule-filters label>span{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.schedule-filters select{width:100%;border:1px solid var(--line);background:var(--input);color:var(--text);border-radius:9px;padding:9px 10px}.schedule-content{overflow:hidden;padding:0}.schedule-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line);background:var(--panel-soft)}.schedule-weekdays span{padding:10px 12px;font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;text-align:center}.schedule-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.schedule-month-cell{min-height:132px;padding:11px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:.16s ease}.schedule-month-cell:nth-child(7n){border-right:0}.schedule-month-cell:hover{background:var(--panel-soft)}.schedule-month-cell.outside{cursor:default;background:var(--panel-soft);opacity:.45}.schedule-month-cell.today{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 55%,transparent)}.schedule-month-day{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.schedule-month-day>span{font-weight:900}.schedule-month-day>b{min-width:30px;height:26px;padding:0 8px;border-radius:999px;display:grid;place-items:center;background:var(--panel-soft);color:var(--muted)}.schedule-month-cell.has-jobs .schedule-month-day>b{background:color-mix(in srgb,var(--accent) 14%,var(--panel));color:var(--accent)}.schedule-periods{display:grid;gap:4px}.schedule-periods span{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px}.schedule-periods i{font-style:normal;color:var(--muted);font-weight:800}.schedule-periods b{font-size:12px}.schedule-month-cell>small{display:block;margin-top:8px;color:var(--success);font-weight:800}.schedule-onsite-month{font-size:12px;color:var(--muted);font-weight:700}.schedule-day-board{display:grid}.schedule-hour-row{display:grid;grid-template-columns:94px minmax(0,1fr);border-bottom:1px solid var(--line);min-height:108px}.schedule-hour-row:last-child{border-bottom:0}.schedule-hour-label{padding:14px 12px;background:var(--panel-soft);border-right:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.schedule-hour-label>b{font-size:13px}.schedule-hour-label>span{font-size:11px;font-weight:900;color:var(--accent)}.schedule-hour-jobs{padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:9px;align-content:start}.schedule-job-card{display:block;width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:11px;padding:10px 11px;text-align:left;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.04)}.schedule-job-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}.schedule-job-card.completed{opacity:.68;background:color-mix(in srgb,var(--success) 5%,var(--panel))}.schedule-job-card.onsite{border-left:3px solid var(--accent)}.schedule-job-card header,.schedule-job-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.schedule-job-card header span{font-weight:900;color:var(--accent)}.schedule-job-card header b{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.schedule-job-card h4{font-size:13px;margin:7px 0 5px}.schedule-job-card p{font-size:11px;line-height:1.45;color:var(--muted);margin:0;white-space:normal}.schedule-job-card footer{margin-top:8px;padding-top:7px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);flex-wrap:wrap}.schedule-onsite-day{padding:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}.onsite-estimate-card{margin-top:14px}.onsite-estimate-summary{display:grid;grid-template-columns:2fr 1fr;gap:12px}.onsite-estimate-summary>div{display:grid;gap:4px}.onsite-estimate-summary span{font-size:11px;color:var(--muted);text-transform:uppercase;font-weight:800;letter-spacing:.04em}.onsite-remove-button{margin-top:12px}.completed-job-badge{display:inline-flex;align-items:center;margin-left:8px;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success);font-style:normal;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:1000px){.schedule-month-cell{min-height:112px;padding:8px}.schedule-periods span{font-size:10px}.schedule-toolbar{align-items:flex-start;flex-direction:column}.schedule-toolbar-actions{width:100%}}
@media(max-width:760px){.schedule-content{overflow-x:auto}.schedule-weekdays,.schedule-month-grid{min-width:760px}.schedule-hour-row{grid-template-columns:72px minmax(0,1fr)}.schedule-hour-jobs{grid-template-columns:1fr}.schedule-filters{align-items:stretch;flex-direction:column}.schedule-filters label{min-width:0;width:100%}.onsite-estimate-summary{grid-template-columns:1fr}}


/* v4.64.0 — Truck route intelligence + onsite estimate visibility repair */
.onsite-estimate-edit{margin:0 0 14px;background:color-mix(in srgb,var(--accent) 4%,var(--panel));border-color:color-mix(in srgb,var(--accent) 18%,var(--line))}.truck-route-intelligence{margin:0 0 14px;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:var(--panel-soft);display:grid;gap:10px}.truck-route-intelligence.ready{border-color:color-mix(in srgb,var(--success) 32%,var(--line));background:color-mix(in srgb,var(--success) 4%,var(--panel))}.truck-route-intelligence.stale{border-color:color-mix(in srgb,var(--warning) 35%,var(--line));background:color-mix(in srgb,var(--warning) 4%,var(--panel))}.truck-route-intelligence-main{display:flex;align-items:center;justify-content:space-between;gap:18px}.truck-route-intelligence-main>div:first-child{min-width:0}.truck-route-intelligence-main>div:first-child>span{display:block;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--accent)}.truck-route-intelligence-main h5{margin:3px 0;font-size:20px}.truck-route-intelligence-main p{margin:0;color:var(--muted);font-size:11px}.truck-route-metrics{display:flex;gap:8px;flex-wrap:wrap}.truck-route-metrics>div{min-width:92px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel);display:grid;gap:2px}.truck-route-metrics span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:900}.truck-route-metrics b{font-size:13px}.truck-route-actions{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:10px}.truck-route-actions small{color:var(--muted);line-height:1.4}.route-mileage-field small{display:block;margin-top:4px;color:var(--muted);font-size:9px;max-width:180px}@media(max-width:760px){.truck-route-intelligence-main,.truck-route-actions{align-items:stretch;flex-direction:column}.truck-route-metrics{width:100%}.truck-route-metrics>div{flex:1}.truck-route-actions .secondary-button{width:100%}}

/* v4.64.1 route visualization + street imagery */
.route-visuals{margin:0 0 16px;border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--panel-soft)}
.route-visuals>.section-head{margin-bottom:10px}.route-visuals>.section-head h5{margin:0 0 3px;font-size:13px}.route-visuals>.section-head p{margin:0;color:var(--muted);font-size:11px}
.truck-route-map-frame,.route-map-placeholder{min-height:220px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel);position:relative}
.truck-route-map-frame img{display:block;width:100%;height:auto;min-height:220px;object-fit:cover}
.route-map-placeholder,.route-image-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px;padding:26px;color:var(--muted)}
.route-map-placeholder b,.route-image-fallback b{color:var(--text);font-size:12px}.route-map-placeholder span,.route-image-fallback span{font-size:10px;max-width:420px;line-height:1.45}
.route-image-fallback{position:absolute;inset:0;background:var(--panel)}
.route-streetview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:10px}
.route-streetview-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}
.route-streetview-photo{aspect-ratio:16/9;position:relative;background:var(--panel-2);overflow:hidden}.route-streetview-photo img{width:100%;height:100%;display:block;object-fit:cover}
.route-streetview-caption{display:grid;gap:3px;padding:9px 10px}.route-streetview-caption span{font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.route-streetview-caption b{font-size:11px;line-height:1.35}.route-streetview-caption small{font-size:9px;color:var(--muted);line-height:1.35}
@media(max-width:760px){.truck-route-map-frame,.route-map-placeholder{min-height:170px}.truck-route-map-frame img{min-height:170px}.route-streetview-grid{grid-template-columns:1fr}}


/* v4.64.2 — Google Maps-only route intelligence */
.google-route-map{height:320px;min-height:260px}
.google-route-map .route-map-loading{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:4px;color:var(--muted)}
.google-route-map .route-map-loading b{color:var(--text);font-size:12px}
.route-restriction-warning{display:flex;align-items:flex-start;gap:10px;margin:0 0 10px;padding:9px 11px;border:1px solid color-mix(in srgb,#f59e0b 42%,var(--line));border-radius:9px;background:color-mix(in srgb,#f59e0b 8%,var(--panel));font-size:10px}
.route-restriction-warning b{color:#b45309;white-space:nowrap}.route-restriction-warning span{color:var(--muted);line-height:1.45}
.google-route-map .route-image-fallback{position:absolute;inset:0}
@media(max-width:760px){.google-route-map{height:240px;min-height:220px}.route-restriction-warning{display:grid;gap:3px}}

/* v4.64.3 — automatic Google routing + vertical route location cards */
.route-map-only{display:grid;gap:10px}
.route-map-only .google-route-map{height:300px;min-height:260px}
.google-route-pin{position:absolute;transform:translate(-50%,-50%);width:23px;height:23px;border-radius:50%;display:grid;place-items:center;border:2px solid #fff;background:var(--accent);color:#fff;font-size:10px;font-weight:900;line-height:1;box-shadow:0 3px 10px rgba(0,0,0,.28);pointer-events:auto;user-select:none}
.google-route-pin.delivery{background:color-mix(in srgb,var(--accent) 72%,#111 28%)}
.route-manual-fallback{margin:0 0 14px;border:1px dashed var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 88%,transparent);overflow:hidden}
.route-manual-fallback>summary{cursor:pointer;padding:9px 12px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;list-style-position:inside}
.route-manual-fallback[open]>summary{border-bottom:1px solid var(--line)}
.route-manual-fallback .route-mileage-field{display:grid;gap:5px;padding:11px 12px;max-width:320px}
.route-manual-fallback .route-mileage-field>span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:900}
.route-manual-fallback .route-mileage-field>div{display:flex;align-items:center;gap:7px}
.route-manual-fallback .route-mileage-field input{min-width:0;width:130px}
.route-manual-fallback .route-mileage-field em{font-style:normal;color:var(--muted);font-size:10px;font-weight:800}
.route-editor-streetview{position:relative;margin-top:12px;height:230px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel);isolation:isolate}
.route-editor-streetview>img{width:100%;height:100%;display:block;object-fit:cover}
.route-editor-streetview .route-image-fallback{position:absolute;inset:0;background:var(--panel-2)}
.route-editor-streetview-label{position:absolute;left:10px;right:10px;bottom:10px;z-index:2;display:grid;gap:2px;width:max-content;max-width:calc(100% - 20px);padding:7px 9px;border-radius:8px;background:rgba(7,12,22,.78);backdrop-filter:blur(8px);box-shadow:0 4px 16px rgba(0,0,0,.2)}
.route-editor-streetview-label span{font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#74e2ff}
.route-editor-streetview-label b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:10px;font-weight:700}
.route-editor-streetview-empty{height:120px}
.route-editor-streetview-empty .route-image-fallback{position:absolute;inset:0}
.lead-route-editor{display:block}
.lead-route-list{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media(max-width:760px){.route-map-only .google-route-map{height:235px;min-height:220px}.route-editor-streetview{height:190px}.google-route-pin{width:21px;height:21px;font-size:9px}}

/* v4.64.4 — compact route cards + Google address autocomplete */
.lead-route-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.lead-route-editor{min-width:0;position:relative;overflow:visible}
.lead-route-editor:focus-within{z-index:8}
.lead-route-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lead-route-fields .route-address-main{grid-column:1/-1}
.route-editor-streetview{height:210px}
.google-route-pin{width:18px;height:18px;border-width:1.5px;font-size:8px;box-shadow:0 2px 7px rgba(0,0,0,.28)}
.route-address-autocomplete{position:relative;z-index:4}
.route-address-autocomplete-control{position:relative;min-width:0}
.route-address-autocomplete-control>input{width:100%;padding-right:34px}
.route-address-autocomplete-control::after{content:"⌖";position:absolute;right:11px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:13px;pointer-events:none}
.route-address-suggestions{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:1200;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent) 32%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--panel) 96%,#000 4%);box-shadow:0 18px 42px rgba(0,0,0,.34);text-transform:none;letter-spacing:normal}
.route-address-suggestion-items{display:grid;padding:5px}
.route-address-suggestion{display:flex;width:100%;min-height:42px;align-items:center;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;font:inherit;cursor:pointer}
.route-address-suggestion::before{content:"⌖";flex:0 0 auto;margin-right:9px;color:var(--accent);font-size:12px}
.route-address-suggestion span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:650}
.route-address-suggestion:hover,.route-address-suggestion.active{background:color-mix(in srgb,var(--accent) 10%,var(--panel));color:var(--text)}
.route-address-google-brand{padding:6px 10px 8px;border-top:1px solid var(--line);color:var(--muted);font-size:9px;font-weight:700;text-align:right;letter-spacing:.01em;text-transform:none}
@media(max-width:1050px){.lead-route-list{grid-template-columns:1fr}}
@media(max-width:760px){.lead-route-fields{grid-template-columns:1fr}.lead-route-fields .route-address-main{grid-column:auto}.route-editor-streetview{height:190px}.google-route-pin{width:17px;height:17px;font-size:8px}}

/* v4.65.0 — Claims 2.0 */
.claim-case-workspace{display:grid;gap:14px}
.claim-case-tabs{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:15px;background:var(--panel-soft)}
.claim-case-tab-list{display:flex;gap:7px;align-items:center;overflow-x:auto;min-width:0;padding-bottom:1px}
.claim-case-tab{display:grid;gap:2px;flex:0 0 auto;min-width:150px;max-width:250px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);text-align:left;cursor:pointer}
.claim-case-tab b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.claim-case-tab small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.claim-case-tab.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:color-mix(in srgb,var(--accent) 9%,var(--panel))}
.claim-subsection{display:grid;gap:11px;padding-top:14px;border-top:1px solid var(--line)}
.claim-subsection:first-of-type{padding-top:0;border-top:0}
.claim-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.claim-subsection-head>div{display:grid;gap:2px}.claim-subsection-head b{font-size:12px}.claim-subsection-head small{font-size:9px;color:var(--muted)}
.claim-item-list,.claim-payout-list{display:grid;gap:8px}
.claim-item-row,.claim-payout-row{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(200px,1.4fr) 100px 100px minmax(160px,1fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.claim-payout-row{grid-template-columns:90px 120px minmax(130px,1fr) 110px minmax(130px,1fr) minmax(160px,1fr) auto}
.claim-item-row label,.claim-payout-row label{display:grid;gap:5px;min-width:0}.claim-item-row label>span,.claim-payout-row label>span{font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.claim-item-row input,.claim-payout-row input{min-width:0;width:100%}.claim-item-row .quiet-mini-button,.claim-payout-row .quiet-mini-button{min-height:36px}
.claim-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.claim-evidence-option{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);cursor:pointer}.claim-evidence-option input{width:16px;height:16px;flex:0 0 auto}.claim-evidence-option span{display:grid;gap:2px;min-width:0}.claim-evidence-option b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.claim-evidence-option small{font-size:8px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.claim-list-row-v2.overdue{background:color-mix(in srgb,var(--red) 5%,transparent)}
.claims-table-head-v2,.claim-list-row-v2{grid-template-columns:minmax(230px,1.55fr) 118px 110px minmax(130px,1fr) 105px 115px auto}
.settings-empty.compact{min-height:0;padding:16px}
@media(max-width:1180px){.claim-item-row{grid-template-columns:1fr 1.4fr 100px 100px}.claim-item-row .wide:nth-of-type(5){grid-column:1/-2}.claim-payout-row{grid-template-columns:100px 120px 1fr 1fr}.claim-payout-row .wide{grid-column:1/-2}.claims-table-head-v2,.claim-list-row-v2{grid-template-columns:minmax(220px,1.5fr) 112px 105px minmax(120px,1fr) 105px auto}.claims-table-head-v2>span:nth-child(5),.claim-list-row-v2>span:nth-child(5){display:none}}
@media(max-width:760px){.claim-case-tabs{align-items:stretch;flex-direction:column}.claim-case-tab-list{width:100%}.claim-case-tab{min-width:135px}.claim-evidence-grid{grid-template-columns:1fr}.claim-item-row,.claim-payout-row{grid-template-columns:1fr 1fr}.claim-item-row .wide,.claim-payout-row .wide{grid-column:1/-1}.claim-item-row .quiet-mini-button,.claim-payout-row .quiet-mini-button{grid-column:1/-1}.claim-subsection-head{align-items:stretch;flex-direction:column}.claim-subsection-head .secondary-button{align-self:flex-start}}

/* v4.65.1 Claims workflow completion */
.claim-subsection-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.claim-communication-list{display:grid;gap:8px}
.claim-communication-row{display:grid;grid-template-columns:170px 115px 115px minmax(220px,1fr) auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft)}
.claim-communication-row label{display:grid;gap:5px;min-width:0}.claim-communication-row label>span{font-size:8px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.claim-communication-row input,.claim-communication-row select{min-width:0;width:100%}.claim-communication-row .quiet-mini-button{min-height:36px}
.claim-list-row-v2>span:nth-child(3){display:grid;gap:2px}.claim-list-row-v2>span:nth-child(3) small{font-size:8px;color:var(--muted)}
@media(max-width:980px){.claim-communication-row{grid-template-columns:1fr 1fr}.claim-communication-row .wide{grid-column:1/-1}.claim-communication-row .quiet-mini-button{grid-column:1/-1}}
@media(max-width:560px){.claim-communication-row{grid-template-columns:1fr}.claim-communication-row .wide,.claim-communication-row .quiet-mini-button{grid-column:1}}

/* v4.66.0 — Sales Follow-Up workspace */
.followup-shell{display:grid;gap:14px;min-width:0}.followup-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px}.followup-hero h3{margin:3px 0 4px;font-size:24px}.followup-hero p{margin:0;color:var(--muted);max-width:720px}.followup-date-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.followup-date-actions input[type="date"]{min-height:38px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text);border-radius:10px;padding:0 10px;font:inherit}.followup-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.followup-day-strip button{appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:10px 8px;text-align:left;display:grid;gap:2px;cursor:pointer;min-width:0}.followup-day-strip button:hover,.followup-day-strip button.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.followup-day-strip span,.followup-day-strip small{font-size:11px;color:var(--muted)}.followup-day-strip b{font-size:13px;white-space:nowrap}.followup-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.followup-metrics button{appearance:none;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:12px 14px;text-align:left;cursor:pointer;display:grid;gap:3px;position:relative}.followup-metrics button.active,.followup-metrics button:hover{border-color:var(--accent)}.followup-metrics span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.followup-metrics b{font-size:21px}.followup-metrics small{position:absolute;right:12px;bottom:12px;color:var(--muted);font-size:11px}.followup-filters{padding:12px;display:flex;gap:8px;align-items:end;flex-wrap:wrap}.followup-filters label{display:grid;gap:5px;min-width:130px}.followup-filters label>span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.followup-filters select,.followup-filters input{height:38px;border:1px solid var(--line);background:var(--panel-soft);color:var(--text);border-radius:9px;padding:0 10px;font:inherit}.followup-search{position:relative;flex:1 1 250px;min-width:220px!important}.followup-search>span{position:absolute;left:12px;bottom:10px;font-size:15px!important}.followup-search input{padding-left:34px;width:100%}.followup-list{overflow:hidden}.followup-list>header{padding:15px 17px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;align-items:center}.followup-list h3{margin:2px 0 0}.followup-list-legend{display:flex;gap:6px;flex-wrap:wrap}.followup-table-head,.followup-row{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(150px,1fr) minmax(135px,.9fr) minmax(110px,.7fr) minmax(190px,1.25fr) minmax(190px,auto);gap:12px;align-items:center}.followup-table-head{padding:9px 14px;background:color-mix(in srgb,var(--panel) 78%,var(--panel-soft));border-bottom:1px solid var(--line);font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.followup-row{padding:12px 14px;border-bottom:1px solid var(--line);position:relative}.followup-row:last-child{border-bottom:0}.followup-row:hover{background:color-mix(in srgb,var(--panel-soft) 45%,transparent)}.followup-row.is-due:before,.followup-row.is-stale:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 4px 4px 0;background:var(--red)}.followup-row.is-stale:not(.is-due):before{background:var(--amber)}.followup-row-main,.followup-row-assignment,.followup-row-job,.followup-row-status,.followup-row-next{min-width:0;display:grid;gap:3px}.followup-row-main small,.followup-row-assignment span,.followup-row-assignment small,.followup-row-job span,.followup-row-job small,.followup-row-status small,.followup-row-next small{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.followup-lead-link{appearance:none;border:0;background:transparent;color:inherit;padding:0;text-align:left;display:grid;gap:2px;cursor:pointer;min-width:0}.followup-lead-link strong{font-size:12px;color:var(--accent)}.followup-lead-link span{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.followup-stage{display:inline-flex;width:max-content;max-width:100%;padding:4px 7px;border:1px solid var(--line);border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.followup-stage.success{border-color:color-mix(in srgb,var(--green) 55%,var(--line));color:var(--green)}.followup-stage.warning{border-color:color-mix(in srgb,var(--amber) 55%,var(--line));color:var(--amber)}.followup-stage.info{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent)}.followup-stage.muted{opacity:.65}.followup-row-next>b{font-size:12px;line-height:1.35}.followup-row-next>div{display:flex;gap:4px;flex-wrap:wrap}.followup-flag{display:inline-flex;align-items:center;width:max-content;border:1px solid var(--line);border-radius:999px;padding:2px 6px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.followup-flag.danger{color:var(--red);border-color:color-mix(in srgb,var(--red) 48%,var(--line))}.followup-flag.warning{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 48%,var(--line))}.followup-flag.muted{color:var(--muted)}.followup-row-actions{display:flex;gap:6px;justify-content:flex-end;align-items:center}.followup-row-actions .primary-button,.followup-row-actions .secondary-button{padding:7px 9px;font-size:11px;white-space:nowrap}.followup-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin-bottom:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.followup-editor-head span{font-size:12px;color:var(--muted)}.followup-history{display:grid;gap:8px;max-height:60vh;overflow:auto}.followup-history article{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.followup-history article>div{display:grid;grid-template-columns:1fr auto;gap:3px 12px}.followup-history article small{grid-column:1/-1;color:var(--muted)}.followup-history p{margin:7px 0 0;color:var(--muted);font-size:12px}
@media(max-width:1180px){.followup-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.followup-table-head{display:none}.followup-row{grid-template-columns:repeat(2,minmax(0,1fr))}.followup-row-actions{justify-content:flex-start;grid-column:1/-1}.followup-row-next{grid-column:1/-1}.followup-day-strip{overflow-x:auto;grid-template-columns:repeat(7,minmax(120px,1fr))}}
@media(max-width:720px){.followup-hero{align-items:flex-start;flex-direction:column}.followup-date-actions{width:100%;justify-content:flex-start}.followup-date-actions input[type="date"]{flex:1;min-width:145px}.followup-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.followup-row{grid-template-columns:1fr}.followup-row-next,.followup-row-actions{grid-column:auto}.followup-row-actions{flex-wrap:wrap}.followup-filters label{flex:1 1 140px}.followup-search{flex-basis:100%}}

/* v4.67.0 — Manual Payroll Job Calculation */
.lead-payroll-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.lead-payroll-head-actions .primary-button{min-height:34px;padding:0 13px}.manual-payroll-workspace{display:grid;gap:14px}.manual-payroll-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px}.manual-payroll-toolbar h3{margin:4px 0 5px}.manual-payroll-toolbar p{margin:0;color:var(--muted);max-width:760px}.manual-payroll-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.manual-payroll-summary>div{padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}.manual-payroll-summary span,.manual-payroll-summary b{display:block}.manual-payroll-summary span{color:var(--muted);font-size:11px}.manual-payroll-summary b{margin-top:7px;font-size:24px}.manual-payroll-filter{display:flex;align-items:flex-end;gap:12px;padding:14px}.manual-payroll-filter label{display:grid;gap:6px;min-width:260px;flex:1}.manual-payroll-filter label span{font-size:11px;color:var(--muted)}.manual-payroll-filter input{width:100%;min-height:38px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);padding:0 11px}.manual-payroll-list{display:grid;gap:10px}.manual-payroll-job{padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--panel-soft);display:grid;gap:12px}.manual-payroll-job.needs{border-left:3px solid var(--amber)}.manual-payroll-job.calculated{border-left:3px solid var(--green)}.manual-payroll-job-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.manual-payroll-job-main h4{margin:4px 0}.manual-payroll-job-main p{margin:0;color:var(--muted);font-size:11px}.manual-payroll-job-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.manual-payroll-job-metrics>div{padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.manual-payroll-job-metrics span,.manual-payroll-job-metrics b{display:block}.manual-payroll-job-metrics span{font-size:10px;color:var(--muted)}.manual-payroll-job-metrics b{margin-top:5px;font-size:12px}.manual-payroll-reason{display:flex;gap:8px;align-items:flex-start;padding:10px 11px;border:1px solid color-mix(in srgb,var(--amber) 36%,var(--line));border-radius:11px;background:color-mix(in srgb,var(--amber) 7%,transparent);font-size:11px}.manual-payroll-reason b{white-space:nowrap}.manual-payroll-job footer{display:flex;gap:8px;flex-wrap:wrap}.manual-payroll-search-results{display:grid;gap:7px;margin-top:10px;max-height:420px;overflow:auto}.manual-payroll-search-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);color:inherit;text-align:left;cursor:pointer}.manual-payroll-search-row:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.manual-payroll-search-row span b,.manual-payroll-search-row span small{display:block}.manual-payroll-search-row span small{margin-top:4px;color:var(--muted)}.manual-payroll-search-row i{font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}.payroll-manual-calc-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:14px}.payroll-manual-calc-summary>div{padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.payroll-manual-calc-summary span,.payroll-manual-calc-summary b{display:block}.payroll-manual-calc-summary span{font-size:10px;color:var(--muted)}.payroll-manual-calc-summary b{margin-top:5px}.payroll-job-history{display:grid;gap:8px;max-height:520px;overflow:auto}.payroll-job-history article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:11px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft)}.payroll-job-history article div b,.payroll-job-history article div span{display:block}.payroll-job-history article div span,.payroll-job-history article p,.payroll-job-history article time{color:var(--muted);font-size:10px}.payroll-job-history article p{grid-column:1/-1;margin:2px 0 0}.payroll-job-history article time{grid-column:1/-1}
@media(max-width:820px){.manual-payroll-toolbar,.manual-payroll-filter{align-items:stretch;flex-direction:column}.manual-payroll-summary{grid-template-columns:1fr 1fr}.manual-payroll-job-metrics{grid-template-columns:1fr 1fr}.payroll-manual-calc-summary{grid-template-columns:1fr}.lead-payroll-head-actions{justify-content:flex-start}}@media(max-width:520px){.manual-payroll-summary,.manual-payroll-job-metrics{grid-template-columns:1fr}.manual-payroll-job-main{display:grid}.manual-payroll-job footer>*{flex:1 1 100%}}

/* v4.68.0 · NFC / QR review tracking */
.review-admin-shell{display:grid;gap:16px}.review-admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px}.review-admin-hero h3{margin:4px 0 5px}.review-admin-hero p{margin:0;max-width:760px;color:var(--muted)}.review-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.review-admin-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.75fr);gap:16px;align-items:start}.review-destination-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.review-destination-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface-soft);opacity:.78}.review-destination-card.enabled{opacity:1;border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.review-destination-head{display:flex;align-items:center;gap:11px;margin-bottom:12px}.review-destination-head>div{min-width:0;flex:1}.review-destination-head b,.review-destination-head small{display:block}.review-destination-head small{color:var(--muted);line-height:1.35;margin-top:2px}.review-destination-logo{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);font-weight:900;font-size:17px}.review-destination-logo.google{color:#4285f4}.review-destination-logo.yelp{color:#d32323}.review-settings-actions{display:flex;align-items:center;gap:14px;margin-top:16px}.review-settings-actions span{font-size:12px;color:var(--muted)}.review-recent-list{display:grid;gap:8px;max-height:610px;overflow:auto}.review-event-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.review-event-row:last-child{border-bottom:0}.review-event-row b,.review-event-row small{display:block}.review-event-row small,.review-event-row time{color:var(--muted);font-size:11px}.review-event-kind{font-size:9px;font-weight:900;letter-spacing:.08em;border-radius:999px;padding:5px 7px;background:var(--surface-soft);border:1px solid var(--line)}.review-event-kind.click{color:var(--accent)}.review-employee-table td small{display:block;color:var(--muted);margin-top:2px}.review-card-modal{display:grid;gap:14px}.review-card-preview{display:flex;align-items:center;gap:20px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft)}.review-card-preview>div:last-child{display:grid;gap:4px}.review-card-preview>div:last-child>small{color:var(--muted)}.review-qr-box{width:210px;height:210px;display:grid;place-items:center;background:#fff;border-radius:16px;padding:10px;flex:0 0 auto;color:#475569;text-align:center;font-size:12px}.review-qr-box canvas,.review-qr-box img{max-width:190px!important;max-height:190px!important}.review-card-stats{display:flex;gap:16px;margin-top:12px}.review-card-stats span{font-size:12px;color:var(--muted)}.review-card-stats strong{display:block;font-size:22px;color:var(--text)}.review-copy-row{display:flex;gap:8px}.review-copy-row input{flex:1;min-width:0}.review-card-actions{display:flex;flex-wrap:wrap;gap:8px}.form-grid.compact{grid-template-columns:1fr}.form-grid.compact .field{grid-column:1/-1}
@media(max-width:1100px){.review-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.review-admin-grid{grid-template-columns:1fr}.review-destination-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.review-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.review-destination-grid{grid-template-columns:1fr}.review-admin-hero{flex-direction:column}.review-card-preview{flex-direction:column;text-align:center}.review-copy-row{flex-direction:column}.review-qr-box{width:200px;height:200px}.review-settings-actions{align-items:flex-start;flex-direction:column}}

/* v4.69.0 · Reports Foundation */
.reports-shell,.report-builder-shell{display:grid;gap:14px;min-width:0}.reports-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:5px;border:1px solid var(--line);background:var(--panel);border-radius:12px;width:max-content;max-width:100%}.reports-tabs button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:8px;font-weight:850;padding:8px 11px;border-radius:8px;cursor:pointer}.reports-tabs button.active{background:color-mix(in srgb,var(--accent) 12%,var(--panel));color:var(--text)}.reports-overview{display:grid;gap:14px}.reports-hero,.report-builder-head{padding:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.reports-hero h3{max-width:780px;margin:7px 0 5px;font-size:23px;line-height:1.08}.reports-hero p,.report-builder-head p{max-width:820px;color:var(--muted);font-size:9px;line-height:1.55}.reports-hero-actions,.report-builder-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.report-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.report-stat-grid article{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.report-stat-grid span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.report-stat-grid b{font-size:18px}.report-stat-grid small{font-size:7px;color:var(--muted);line-height:1.4}.report-library-panel{overflow:hidden}.report-library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:0 14px 14px}.report-library-card{display:flex;justify-content:space-between;gap:16px;padding:14px;border:1px solid var(--line);border-radius:11px;background:var(--panel-soft);min-width:0}.report-library-card>div:first-child{min-width:0}.report-library-card span,.report-saved-main span{display:block;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.report-library-card h4{margin:4px 0 4px;font-size:13px}.report-library-card p{margin:0;color:var(--muted);font-size:8px;line-height:1.45}.report-card-meta{display:flex;min-width:125px;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:9px}.report-card-meta small{font-size:7px;color:var(--muted);text-align:right}.report-saved-list{display:grid;padding:0 14px 14px}.report-saved-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:10px 0}.report-saved-list article:first-child{border-top:0}.report-saved-main{display:grid;gap:2px;flex:1;text-align:left;border:0;background:transparent;color:var(--text);cursor:pointer}.report-saved-main b{font-size:11px}.report-saved-main small{font-size:7px;color:var(--muted)}.report-saved-list article>div{display:flex;gap:5px}.report-builder-head{align-items:center}.report-title-input{display:block;width:min(680px,75vw);max-width:100%;margin:5px 0 2px;border:0;border-bottom:1px solid transparent;background:transparent;color:var(--text);font:inherit;font-size:21px;font-weight:800;letter-spacing:-.02em;padding:3px 0}.report-title-input:focus{outline:0;border-bottom-color:var(--accent)}.report-builder-layout{display:grid;grid-template-columns:minmax(285px,350px) minmax(0,1fr);gap:12px;align-items:start}.report-config{padding:10px;display:grid;gap:9px;position:sticky;top:10px;max-height:calc(100vh - 105px);overflow:auto}.report-config-section{display:grid;gap:7px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.report-config-section h4{margin:0;font-size:9px}.report-config-section h4 small{font-weight:600;color:var(--muted)}.report-config select,.report-config input{width:100%;min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--panel);color:var(--text);font:inherit;font-size:8px;padding:7px 8px}.report-date-range{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:5px}.report-date-range span{color:var(--muted);font-size:8px}.report-field-catalog{display:grid;gap:5px;max-height:265px;overflow:auto}.report-field-catalog details{border:1px solid var(--line);border-radius:7px;background:var(--panel)}.report-field-catalog summary{padding:7px 8px;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.report-field-catalog label{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:6px 8px;border-top:1px solid var(--line);cursor:pointer}.report-field-catalog input{width:auto}.report-field-catalog label span{font-size:8px}.report-field-catalog label small{font-size:6px;color:var(--muted);text-transform:uppercase}.report-section-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.report-filter-list,.report-sort-list{display:grid;gap:6px}.report-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:6px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.report-filter-row input{grid-column:1 / span 1}.report-filter-row .icon-button{grid-column:2;justify-self:end;width:28px;height:28px}.report-sort-row{display:grid;grid-template-columns:minmax(0,1fr) 98px 28px;gap:5px;align-items:center}.report-empty-inline{font-size:7px;color:var(--muted)}.report-preview{min-width:0;overflow:hidden}.report-result-empty{min-height:420px;display:grid;place-items:center;align-content:center;text-align:center;gap:7px;padding:30px;color:var(--muted)}.report-result-empty>span{font-size:36px;color:var(--text)}.report-result-empty b{font-size:13px;color:var(--text)}.report-result-empty p{font-size:8px;max-width:420px;line-height:1.55}.report-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px}.report-result-head h3{margin:3px 0;font-size:15px}.report-result-head p{margin:0;color:var(--muted);font-size:8px}.report-result-head>div:last-child{display:grid;text-align:right;gap:2px}.report-result-head>div:last-child span{font-size:10px;font-weight:800}.report-result-head>div:last-child small{font-size:7px;color:var(--muted)}.report-data-warning{margin:0 14px 12px;padding:9px 11px;border:1px solid color-mix(in srgb,#f59e0b 55%,var(--line));border-radius:8px;background:color-mix(in srgb,#f59e0b 10%,var(--panel));color:var(--text);font-size:8px;line-height:1.45}.report-data-warning b{color:#b45309}.business-theme .report-data-warning b{color:#92400e}
.report-summary-strip{display:flex;gap:7px;overflow:auto;padding:0 14px 10px}.report-summary-strip article{min-width:150px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);display:grid;gap:2px}.report-summary-strip span{font-size:6px;text-transform:uppercase;font-weight:850;color:var(--muted)}.report-summary-strip b{font-size:11px}.report-table-wrap{overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-height:calc(100vh - 280px)}.report-table{width:100%;border-collapse:collapse;min-width:760px;font-size:8px}.report-table th,.report-table td{padding:8px 9px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.report-table th{position:sticky;top:0;z-index:2;background:var(--panel-soft);font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.report-table tbody tr[data-report-lead-id]{cursor:pointer}.report-table tbody tr[data-report-lead-id]:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.report-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px}.report-pagination span{font-size:7px;color:var(--muted)}.report-pagination div{display:flex;gap:5px}
@media(max-width:1120px){.report-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-builder-layout{grid-template-columns:300px minmax(0,1fr)}}
@media(max-width:850px){.reports-hero,.report-builder-head{align-items:flex-start;flex-direction:column}.reports-hero-actions,.report-builder-actions{justify-content:flex-start}.report-library-grid{grid-template-columns:1fr}.report-builder-layout{grid-template-columns:1fr}.report-config{position:static;max-height:none}.report-table-wrap{max-height:none}.report-title-input{width:100%}}
@media(max-width:560px){.report-stat-grid{grid-template-columns:1fr 1fr}.report-library-card{flex-direction:column}.report-card-meta{align-items:flex-start;min-width:0}.report-filter-row{grid-template-columns:1fr}.report-filter-row input,.report-filter-row .icon-button{grid-column:auto}.report-sort-row{grid-template-columns:1fr 1fr 28px}}

/* v4.69.1 · Reports browser/XLS/chart views */
.report-config-note{font-size:6.6px;line-height:1.45;color:var(--muted)}
.report-chart-fields{display:grid;grid-template-columns:1fr;gap:7px}.report-chart-fields label{display:grid;gap:4px}.report-chart-fields label>span{font-size:6.5px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.report-result-side{display:grid;text-align:right;gap:3px;justify-items:end}.report-result-side>span{font-size:10px;font-weight:800}.report-result-side>small{font-size:7px;color:var(--muted)}.report-result-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;margin-top:5px}
.report-chart-shell{padding:14px;border-top:1px solid var(--line);min-height:420px}.report-chart-caption{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}.report-chart-caption b{font-size:10px}.report-chart-caption span{font-size:7px;color:var(--muted)}
.report-bar-chart{display:grid;gap:8px}.report-bar-row{display:grid;grid-template-columns:minmax(100px,190px) minmax(140px,1fr) minmax(80px,120px);gap:9px;align-items:center}.report-bar-row>span{font-size:7.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-bar-row>div{height:12px;border-radius:99px;background:var(--panel-soft);border:1px solid var(--line);overflow:hidden}.report-bar-row>div>i{display:block;height:100%;min-width:2px;border-radius:99px;background:var(--accent)}.report-bar-row>b{text-align:right;font-size:8px}
.report-pie-layout{display:grid;grid-template-columns:minmax(220px,390px) minmax(0,1fr);gap:26px;align-items:center}.report-pie{width:100%;max-width:390px;aspect-ratio:1;border-radius:50%;margin:auto;border:1px solid var(--line);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--panel) 55%,transparent)}.report-pie-legend{display:grid;gap:6px;max-height:430px;overflow:auto}.report-pie-legend article{display:grid;grid-template-columns:10px minmax(0,1fr) auto 48px;gap:7px;align-items:center;padding:6px 7px;border:1px solid var(--line);border-radius:7px;background:var(--panel-soft)}.report-pie-legend i{width:9px;height:9px;border-radius:3px}.report-pie-legend span{font-size:7.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-pie-legend b{font-size:7.5px;text-align:right}.report-pie-legend small{font-size:6.5px;color:var(--muted);text-align:right}
.report-line-chart{display:grid;gap:8px;min-width:0}.report-line-chart svg{width:100%;height:360px;overflow:visible;color:var(--accent)}.report-line-chart polyline{fill:none;stroke:currentColor;stroke-width:3;vector-effect:non-scaling-stroke}.report-line-chart circle{fill:var(--panel);stroke:currentColor;stroke-width:3;vector-effect:non-scaling-stroke}.report-line-chart .report-axis{stroke:var(--line);stroke-width:1;vector-effect:non-scaling-stroke}.report-line-labels{display:flex;justify-content:space-between;gap:6px;color:var(--muted);font-size:6.5px;overflow:hidden}.report-line-labels span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:850px){.report-result-head{flex-direction:column}.report-result-side{text-align:left;justify-items:start}.report-result-actions{justify-content:flex-start}.report-pie-layout{grid-template-columns:1fr}.report-pie{max-width:310px}.report-line-chart svg{height:300px}}
@media(max-width:560px){.report-bar-row{grid-template-columns:90px minmax(90px,1fr) 70px}.report-chart-caption{align-items:flex-start;flex-direction:column}.report-pie-legend article{grid-template-columns:10px minmax(0,1fr) auto}.report-pie-legend small{display:none}.report-line-chart svg{height:240px}}

/* v4.70.0 · Reports Connections & Business Intelligence */
.report-toggle-line{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}
.report-toggle-line input{width:auto!important;margin:0}.report-toggle-line span{font-size:7.5px;font-weight:750;color:var(--text)}
.report-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 14px 14px}
.report-kpi-grid article{min-width:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft);display:grid;gap:4px}
.report-kpi-grid article>span{font-size:7px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:850}.report-kpi-grid article>b{font-size:18px;letter-spacing:-.02em}
.report-kpi-grid article>small{font-size:7px;color:var(--muted)}.report-kpi-grid article>small em{font-style:normal;color:var(--muted)}.report-kpi-grid article>small.up{color:var(--green)}.report-kpi-grid article>small.down{color:var(--red)}
.report-kpi-comparison{margin:0 14px 14px;padding:8px 10px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);font-size:7px}
.report-drill-cell{appearance:none;border:0;background:transparent;color:var(--text);font:inherit;padding:0;display:inline-flex;align-items:center;gap:4px;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.report-drill-cell span{font-size:7px;color:var(--accent)}.report-drill-cell:hover{color:var(--accent)}
.report-drill-dialog{width:min(760px,calc(100vw - 28px));max-height:min(760px,calc(100vh - 40px));border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);padding:0;box-shadow:0 24px 70px rgba(0,0,0,.35)}.report-drill-dialog::backdrop{background:rgba(0,0,0,.48);backdrop-filter:blur(2px)}
.report-drill-shell{display:grid;min-height:220px}.report-drill-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line)}.report-drill-head h3{margin:3px 0 0;font-size:15px}.report-drill-body{padding:12px;overflow:auto;max-height:620px}
.report-drill-list{display:grid;gap:7px}.report-drill-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.report-drill-list article>div{display:grid;gap:2px;min-width:0}.report-drill-list article>div:last-child{text-align:right}.report-drill-list b{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-drill-list span{font-size:7px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.report-bar-chart{display:grid;gap:8px;padding:14px;border-top:1px solid var(--line)}.report-bar-chart article{display:grid;grid-template-columns:minmax(95px,190px) minmax(140px,1fr) minmax(75px,115px) 58px;gap:8px;align-items:center}.report-bar-chart article>span{font-size:7.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-bar-chart article>div{height:12px;border:1px solid var(--line);border-radius:99px;background:var(--panel-soft);overflow:hidden}.report-bar-chart article>div i{display:block;height:100%;min-width:2px;background:var(--accent);border-radius:99px}.report-bar-chart article>b{text-align:right;font-size:8px}.report-bar-chart article>small{text-align:right;font-size:6.5px;color:var(--muted)}
.report-chart-legend{display:grid;gap:6px;max-height:430px;overflow:auto}.report-chart-legend article{display:grid;grid-template-columns:10px minmax(0,1fr) auto 55px;gap:7px;align-items:center;padding:6px 7px;border:1px solid var(--line);border-radius:7px;background:var(--panel-soft)}.report-chart-legend i{width:9px;height:9px;border-radius:3px}.report-chart-legend span{font-size:7.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-chart-legend b{font-size:7.5px;text-align:right}.report-chart-legend small{font-size:6.5px;color:var(--muted);text-align:right}
.report-line-chart{padding:14px;border-top:1px solid var(--line)}.report-line-chart>div{display:flex;justify-content:space-between;gap:5px;overflow:hidden}.report-line-chart>div span{max-width:110px;color:var(--muted);font-size:6.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1050px){.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.report-kpi-grid{grid-template-columns:1fr}.report-drill-list article{grid-template-columns:1fr}.report-drill-list article>div:last-child{text-align:left}.report-bar-chart article{grid-template-columns:90px minmax(90px,1fr) 70px}.report-bar-chart article>small{display:none}.report-chart-legend article{grid-template-columns:10px minmax(0,1fr) auto}.report-chart-legend small{display:none}}

/* v4.73.0 · Advanced Report Builder & Dashboards */
.report-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
.report-advanced-list,.report-condition-list,.report-kpi-config-list,.report-history-list{display:grid;gap:7px}
.report-advanced-row,.report-condition-row,.report-kpi-config-row{display:grid;gap:6px;align-items:end;padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}
.report-advanced-row{grid-template-columns:minmax(105px,1fr) minmax(95px,1fr) 78px minmax(95px,1fr) 82px 82px 30px}
.report-condition-row{grid-template-columns:minmax(120px,1fr) 78px 92px 90px 30px}
.report-kpi-config-row{grid-template-columns:minmax(115px,1fr) minmax(120px,1fr) 90px 110px 108px 30px}
.report-advanced-row input,.report-advanced-row select,.report-condition-row input,.report-condition-row select,.report-kpi-config-row input,.report-kpi-config-row select{min-width:0;width:100%}
.report-cell-value{display:inline-flex;align-items:center;min-height:22px;padding:2px 5px;border-radius:5px}
.report-cell-value.report-tone-danger{background:color-mix(in srgb,var(--red) 15%,transparent);color:var(--red)}
.report-cell-value.report-tone-warning{background:color-mix(in srgb,var(--amber) 16%,transparent);color:var(--amber)}
.report-cell-value.report-tone-success{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}
.report-cell-value.report-tone-accent{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}
.report-target-bar{height:5px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:5px}.report-target-bar i{display:block;height:100%;border-radius:inherit;background:var(--accent);min-width:1px;max-width:100%}.report-target-bar.target-met i{background:var(--green)}.report-target-bar.target-miss i{background:var(--amber)}
.report-pivot-caption{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px 7px}.report-pivot-caption b{font-size:9px}.report-pivot-caption span{font-size:7px;color:var(--muted)}
.report-pivot-table{overflow:auto;padding:0 14px 14px}.report-pivot-table table{width:100%;border-collapse:separate;border-spacing:0;font-size:7.5px}.report-pivot-table th,.report-pivot-table td{padding:7px 8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}.report-pivot-table th:first-child,.report-pivot-table td:first-child{text-align:left;position:sticky;left:0;background:var(--panel);z-index:1}.report-pivot-table thead th{position:sticky;top:0;background:var(--panel);z-index:2;font-weight:850}.report-pivot-table thead th:first-child{z-index:3}.report-pivot-table table{border-top:1px solid var(--line);border-left:1px solid var(--line);border-radius:9px;overflow:hidden}
.report-pie.is-donut{position:relative;box-shadow:inset 0 0 0 clamp(48px,7vw,82px) var(--panel),inset 0 0 0 calc(clamp(48px,7vw,82px) + 1px) var(--line)}
.report-area-fill{fill:color-mix(in srgb,var(--accent) 16%,transparent);stroke:none}.report-line-chart polygon.report-area-fill{fill:color-mix(in srgb,var(--accent) 16%,transparent);stroke:none}
.report-saved-list article.is-favorite{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--panel))}
.report-history-list article{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.report-history-list article>div{display:grid;gap:2px;min-width:0}.report-history-list b{font-size:9px}.report-history-list span,.report-history-list small{font-size:7px;color:var(--muted)}
.report-dashboard-screen{display:grid;gap:12px;min-width:0}.report-dashboard-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:start}.report-dashboard-widget{grid-column:span 3;min-width:0;overflow:hidden}.report-dashboard-widget.size-third{grid-column:span 2}.report-dashboard-widget.size-full{grid-column:1/-1}.report-dashboard-widget>header{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line)}.report-dashboard-widget>header>div{display:grid;gap:2px;min-width:0}.report-dashboard-widget>header b{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-dashboard-widget>header small{font-size:6.5px;color:var(--muted)}.report-dashboard-widget .report-result-head{padding:9px 11px}.report-dashboard-widget .report-table-wrap{max-height:370px}.report-dashboard-widget .report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.report-dashboard-widget .report-chart-shell{min-height:260px;padding:10px}.report-dashboard-widget .report-line-chart svg{height:230px}
.report-dashboard-builder{padding:14px;display:grid;gap:14px}.report-dashboard-config{display:grid;grid-template-columns:minmax(0,2fr) minmax(140px,.7fr);gap:9px}.report-dashboard-config label{display:grid;gap:5px}.report-dashboard-config label>span{font-size:7px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:850}.report-dashboard-config input,.report-dashboard-config select{width:100%}
.report-dashboard-widget-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-dashboard-widget-picker article{display:grid;grid-template-columns:minmax(0,1fr) 120px 92px;gap:7px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-soft)}.report-dashboard-widget-picker article>label{display:flex;align-items:center;gap:8px;min-width:0}.report-dashboard-widget-picker article>label input{flex:0 0 auto}.report-dashboard-widget-picker article>label span{display:grid;gap:2px;min-width:0}.report-dashboard-widget-picker article>label b{font-size:8.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-dashboard-widget-picker article>label small{font-size:6.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-dashboard-widget-picker select{min-width:0;width:100%}
:fullscreen .report-dashboard-screen{background:var(--bg);padding:18px;min-height:100vh;overflow:auto}:fullscreen .report-dashboard-screen .report-builder-head{position:sticky;top:0;z-index:10}
@media(max-width:1100px){.report-dashboard-widget-picker{grid-template-columns:1fr}.report-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-dashboard-widget,.report-dashboard-widget.size-third{grid-column:span 1}.report-dashboard-widget.size-full{grid-column:1/-1}.report-advanced-row{grid-template-columns:1fr 1fr 90px}.report-advanced-row .icon-button{grid-column:3}.report-kpi-config-row{grid-template-columns:1fr 1fr 90px}.report-kpi-config-row .icon-button{grid-column:3}}
@media(max-width:760px){.report-two-col,.report-dashboard-config{grid-template-columns:1fr}.report-dashboard-grid{grid-template-columns:1fr}.report-dashboard-widget,.report-dashboard-widget.size-third,.report-dashboard-widget.size-full{grid-column:1}.report-dashboard-widget-picker article{grid-template-columns:1fr 1fr}.report-dashboard-widget-picker article>label{grid-column:1/-1}.report-condition-row{grid-template-columns:1fr 1fr}.report-condition-row .icon-button{grid-column:2}.report-kpi-config-row,.report-advanced-row{grid-template-columns:1fr 1fr}.report-kpi-config-row .icon-button,.report-advanced-row .icon-button{grid-column:2}.report-pivot-caption{align-items:flex-start;flex-direction:column}}

/* v4.74 Report Automation + Frozen Snapshots */
.report-schedule-builder{padding:14px}.report-schedule-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.report-schedule-form>label{display:grid;gap:5px;align-content:start}.report-schedule-form>label>span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.report-schedule-form input,.report-schedule-form select,.report-schedule-form textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:8px;padding:8px 9px}.report-schedule-form textarea{resize:vertical;min-height:68px}.report-schedule-form label.wide{grid-column:1/-1}.report-schedule-form label>small{font-size:6.7px;line-height:1.45;color:var(--muted)}.report-toggle-row{display:flex!important;align-items:flex-start;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--panel-soft)}.report-toggle-row input{width:auto!important;margin-top:2px}.report-toggle-row>span{display:grid;gap:2px}.report-toggle-row b{font-size:8px}.report-toggle-row small{font-size:6.7px;color:var(--muted);line-height:1.4}
.report-schedule-list,.report-snapshot-list{display:grid;padding:0 14px 14px}.report-schedule-list>article,.report-snapshot-list>article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.report-schedule-list>article:first-child,.report-snapshot-list>article:first-child{border-top:0}.report-schedule-list>article.is-paused{opacity:.66}.report-schedule-main,.report-snapshot-main{display:grid;gap:2px;min-width:0}.report-schedule-main>span,.report-snapshot-main>span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.045em;color:var(--muted)}.report-schedule-main>b,.report-snapshot-main>b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-schedule-main>small,.report-snapshot-main>small{font-size:7px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-schedule-actions,.report-snapshot-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.report-schedule-list details{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);overflow:hidden}.report-schedule-list summary{padding:7px 9px;cursor:pointer;font-size:7px;font-weight:800;color:var(--muted)}.report-run-history{display:grid;border-top:1px solid var(--line)}.report-run-history>div{display:grid;grid-template-columns:90px minmax(150px,1fr) minmax(150px,2fr);gap:8px;align-items:center;padding:7px 9px;border-top:1px solid var(--line)}.report-run-history>div:first-child{border-top:0}.report-run-history span{font-size:6.5px;font-weight:900;text-transform:uppercase}.report-run-history b{font-size:7px;font-weight:700}.report-run-history small{font-size:6.7px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-run-history .status-sent{color:var(--green)}.report-run-history .status-no_data{color:var(--amber)}.report-run-history .status-uncertain{color:var(--amber)}.report-run-history .status-failed{color:var(--red)}
@media(max-width:760px){.report-schedule-form{grid-template-columns:1fr}.report-schedule-form label.wide{grid-column:1}.report-schedule-list>article,.report-snapshot-list>article{grid-template-columns:1fr}.report-schedule-actions,.report-snapshot-actions{justify-content:flex-start}.report-run-history>div{grid-template-columns:1fr 1fr}.report-run-history small{grid-column:1/-1}}

/* v4.75 · Financial Intelligence & Profitability */
.report-cost-workspace{display:grid;gap:12px;min-width:0}.report-cost-entry{overflow:hidden}.report-cost-entry .panel-head{align-items:flex-start}.report-cost-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 14px 14px}.report-cost-form label{display:grid;gap:5px;align-content:start}.report-cost-form label.wide,.report-cost-actions.wide{grid-column:1/-1}.report-cost-form label>span{font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.report-cost-form input,.report-cost-form select,.report-cost-form textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font:inherit;font-size:8px;padding:8px 9px}.report-cost-form textarea{resize:vertical}.report-cost-actions{display:flex;justify-content:flex-end}.report-cost-truth{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 12px;align-items:start;margin:0 14px 14px;padding:10px 11px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--line));border-radius:9px;background:color-mix(in srgb,var(--accent) 6%,var(--panel-soft))}.report-cost-truth b{font-size:7px;text-transform:uppercase;letter-spacing:.05em}.report-cost-truth span{font-size:7px;line-height:1.5;color:var(--muted)}.report-cost-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.report-cost-table{width:100%;border-collapse:collapse;min-width:900px;font-size:8px}.report-cost-table th,.report-cost-table td{padding:8px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.report-cost-table th{position:sticky;top:0;background:var(--panel-soft);z-index:2;font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.report-cost-table td small{display:block;margin-top:2px;font-size:6.5px;color:var(--muted)}.report-cost-table td.money{text-align:right;font-variant-numeric:tabular-nums}.report-cost-table .table-actions{display:flex;justify-content:flex-end;gap:4px}.report-financial-drill{display:grid;gap:10px}.report-financial-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.report-financial-summary article{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.report-financial-summary span{font-size:6px;text-transform:uppercase;letter-spacing:.04em;font-weight:850;color:var(--muted)}.report-financial-summary b{font-size:10px}.report-financial-definition{font-size:7px;line-height:1.5;color:var(--muted);padding:8px 10px;border-left:2px solid var(--accent);background:var(--panel-soft)}
@media(max-width:1100px){.report-cost-form{grid-template-columns:repeat(2,minmax(0,1fr))}.report-cost-stats,.report-financial-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.report-cost-form{grid-template-columns:1fr}.report-cost-form label.wide,.report-cost-actions.wide{grid-column:1}.report-cost-stats,.report-financial-summary{grid-template-columns:1fr}.report-cost-truth{grid-template-columns:1fr}.report-cost-actions{justify-content:flex-start}}
.report-financial-drill-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:10px}.report-financial-drill-summary>div{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.report-financial-drill-summary span{font-size:6px;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.report-financial-drill-summary b{font-size:10px}.report-financial-drill-summary small{font-size:6.5px;color:var(--muted)}
@media(max-width:760px){.report-financial-drill-summary{grid-template-columns:1fr 1fr}}

/* v4.76: canvas-only uploaded PDF previews; keep original downloads available. */
.safe-pdf-pages{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;margin-inline:auto;min-width:0}
.safe-pdf-pages canvas{display:block;max-width:100%;height:auto;background:#fff;box-shadow:0 1px 5px #0002}
.safe-pdf-status{font-size:12px;line-height:1.5;margin:0 0 14px;padding:0 12px;color:inherit}

/* v4.76.4: keep the Follow-Up conflict recovery action near its message. */
[data-followup-reload]:not([hidden]) {
  margin-block: 0 16px;
  max-width: 100%;
  white-space: normal;
  text-align: left;
}
.report-basis-note{margin:0 14px 12px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--accent) 7%,var(--panel));color:var(--text);font-size:8px;line-height:1.45;display:grid;gap:2px}.report-basis-note b{font-size:8px}.report-basis-note span{color:var(--muted)}
