/* Shared monochrome workspace. Photos and document text colours remain intact. */
:root{color-scheme:light;--ink:#191919;--gold:#222;--muted:#626262;--line:#d9d9d9;--paper:#f5f5f5;--amber:#444}
body{background:#f4f4f4!important;color:#202020!important}
body>header{background:#fff!important;color:#171717!important;border-bottom:1px solid #d6d6d6!important;box-shadow:0 2px 10px #00000005}
body>header img{filter:brightness(0)!important;background:transparent!important}
body>header a,body>header span,body>header .product,body>header .private{color:#222!important;border-color:#aaa!important}
main>nav{background:#fff!important;border:1px solid #ddd;border-radius:10px;padding:8px;gap:8px!important}
nav button,.nav-more summary{color:#333!important;border:0!important;background:transparent!important}
nav button.active,nav button[aria-current=page]{background:#202020!important;color:white!important;border-radius:6px}
nav button:hover,.nav-more[open]{background:#e9e9e9!important;color:#111!important}
h1,h2,h3,h4,.eyebrow,.label,.job-links h3{color:#222!important}
.panel,.card,.aside,dialog,.mace-preview,.product-dialog,.invoice-editor,.invoice-editor form,.job-hub{background:#fff!important;color:#222!important;border-color:#d4d4d4!important}
.card{box-shadow:0 2px 7px #00000004;border-radius:9px!important}
.muted,.note,small,footer{color:#626262}
label,dt,dd,.record-meta,.invoice-line label,.invoice-line-footer,.invoice-live-totals{color:#333!important}
button,.button{border-color:#bcbcbc!important;color:#222;background:#fff}
button:hover,.button:hover{background:#ededed!important;color:#111!important}
button.primary,.button.primary,button[aria-pressed=true],button.selected,.submit{background:#222!important;color:#fff!important;border-color:#222!important}
button:disabled{opacity:.45;cursor:not-allowed}
input,textarea,select{border-color:#bcbcbc!important;background:#fff;accent-color:#222}
input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #555!important;outline-offset:3px}
.badge,.risk,.status-pill,.jsa-status,.workflow-nav label,.record-badges span{background:#ededed!important;color:#222!important;border-color:#c5c5c5!important}
.record-badges .badge{font-weight:600}
.warning,.note,.connection-state,.document-review,.send-steps,#notice:not(:empty){background:#f0f0f0!important;color:#222!important;border-color:#777!important}
#cloud-status{background:#e8e8e8!important;color:#333!important;border-color:#d4d4d4!important}
.office-total,.bill-metric,.product-metric,.report-metrics>div,.invoice-live-totals{background:#fff!important;color:#222!important;border:1px solid #d5d5d5!important}
.office-total strong,.office-total span,.product-metric strong,.bill-metric strong,.invoice-live-totals p,.invoice-line-header strong,.invoice-line-header h4{color:#171717!important}
.office-total small,.product-metric small{color:#626262!important}
.invoice-editor .invoice-line{background:#f7f7f7!important;border-color:#ccc!important}
.invoice-line-header,.invoice-line-footer,.invoice-live-totals p{border-color:#d3d3d3!important}
.invoice-editor-top,.invoice-editor-actions,.mace-dialog-save{background:#fff!important;color:#222!important;border-color:#ddd!important}
.invoice-editor details,.invoice-editor summary,.invoice-editor .note{color:#333!important}
.mace-save-bar{background:#fff!important;border-top:1px solid #bbb!important;box-shadow:0 -3px 12px #00000008}
.mace-save-bar [role=status]{color:#444!important}
a,.office-record [data-preview-record]{color:#333!important}
.office-record [data-preview-record]{background:#f1f1f1!important;border-color:#aaa!important}
.calendar-day,.calendar-cell,.calendar-event,.booking-card{background:#fff!important;color:#222!important;border-color:#ccc!important}
.calendar-day.today,.calendar-day.is-today{background:#e6e6e6!important;border-color:#555!important}
.calendar-day h3,.calendar-day button,.calendar-booking,.calendar-entry{color:#222!important}
.jsa-document,.testing-document,.example-document,.template-preview{background:white!important;color:#222!important;filter:grayscale(1)}
.jsa-step,.jsa-wizard-step,.signature-box,.signature-card,.jsa-panel{background:#fff!important;color:#222!important;border-color:#ccc!important}
.jsa-doc-header,.preview-brand{background:#fff!important;color:#111!important;border-color:#444!important}
thead th,.jsa-document thead th{background:#eaeaea!important;color:#222!important;border-color:#ccc!important}
/* Login uses the same neutral palette. */
.brand-panel{background:#171717!important;color:#fff!important}.brand-panel h1,.brand-panel h1 em,.brand-panel .eyebrow,.brand-panel .brand,.brand-panel .brand span{color:#fff!important}.brand-panel p,.brand-footer{color:#ccc!important}.brand-panel .brand span{border-color:#888!important}.brand-rule,.mini-mark{background:#aaa!important}.architecture{background:radial-gradient(ellipse at 100% 75%,#4446,transparent 65%)!important}.architecture i{border-color:#8883!important}.form-panel{background:#fafafa!important}.password-toggle,.status{color:#555!important}
/* Dense, readable record rows with fixed positions for key fields. */
.cards .record-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:13px;line-height:1.5;color:#555!important;white-space:normal!important}
.record-totals{display:grid!important;gap:5px;font-size:12px}.record-totals span{display:flex;justify-content:space-between;gap:12px}.record-totals strong{white-space:nowrap;color:#222}
.record-view-controls{padding:12px 16px;background:white;border:1px solid #ddd;border-radius:8px}.record-view-controls label{margin:0!important}.record-view-controls select{min-height:42px}
.horizontal-records{gap:7px!important;overflow-x:auto;padding-bottom:6px}
.horizontal-records>article.card{grid-template-columns:26px 86px minmax(195px,1.6fr) minmax(95px,.65fr) minmax(170px,1fr) minmax(155px,.95fr) 145px!important;grid-auto-flow:row;gap:5px 14px!important;min-width:1060px;min-height:106px!important;padding:14px!important;align-content:center!important}
.horizontal-records>article.card>label.record-select{grid-column:1!important;grid-row:1 / span 3!important;position:static!important;align-self:center;font-size:0}
.horizontal-records>article.card>.eyebrow{grid-column:2;grid-row:1;font-size:12px;letter-spacing:.5px;overflow-wrap:anywhere}
.horizontal-records>article.card>h2{grid-column:3;grid-row:1;font-size:14px!important;line-height:1.4;min-height:0!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.horizontal-records>article.card>.record-description{grid-column:3;grid-row:2 / span 2;display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:40px;font-size:12px!important;line-height:1.5!important;margin:0!important}
.horizontal-records>article.card>.record-badges{grid-column:4;grid-row:1 / span 3;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.horizontal-records>article.card>.record-meta{grid-column:5;grid-row:1 / span 3;display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 8px;margin:0;font-size:11px;line-height:1.4}
.horizontal-records .record-meta dd{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.horizontal-records .record-meta dt{color:#666!important}
.horizontal-records>article.card>.record-totals{grid-column:6;grid-row:1 / span 3;line-height:1.35}
.horizontal-records>article.card>.record-actions{grid-column:7!important;grid-row:1 / span 3!important;display:flex;flex-direction:column;gap:7px}
.horizontal-records .record-actions a{font-size:12px;text-align:center}
.horizontal-records .record-site{grid-column:3;grid-row:4;font-size:11px;max-height:32px;overflow:hidden}
.horizontal-records .card-job-status{grid-column:6!important;grid-row:1!important;margin:0!important;position:static!important}
.horizontal-records .card-job-status select{font-size:12px;margin:0;padding:9px}
.horizontal-records .job-address{grid-column:4 / span 2;grid-row:1 / span 3;line-height:1.5;font-size:12px}.horizontal-records .job-address strong{display:block;color:#666;font-size:10px;text-transform:uppercase}
.horizontal-records>article.card>p.muted{grid-column:6;grid-row:2;font-size:11px}
.horizontal-records [data-job]{grid-column:7!important;grid-row:1 / span 3!important}
.horizontal-records>.bill-record>.eyebrow{grid-column:3;grid-row:1;font-weight:700;font-size:14px}
.horizontal-records>.bill-record>h2{grid-column:2;grid-row:1 / span 2;font-size:12px!important;overflow-wrap:anywhere}
.horizontal-records>article.card.customer-record{grid-template-columns:minmax(200px,1.3fr) minmax(220px,1.3fr) minmax(220px,1.2fr) minmax(190px,1fr) 150px!important;min-width:1060px}
.horizontal-records>article.card.customer-record>h2{grid-column:1;grid-row:1}.horizontal-records>article.card.customer-record>.customer-contact{grid-column:1;grid-row:2;font-size:12px}
.horizontal-records>article.card.customer-record>.customer-email{grid-column:2;grid-row:1;font-size:12px;overflow-wrap:anywhere}.horizontal-records>article.card.customer-record>.customer-phone{grid-column:2;grid-row:2;font-size:12px}
.horizontal-records>article.card.customer-record>.customer-address{grid-column:3;grid-row:1 / span 3;font-size:12px;line-height:1.5}
.horizontal-records>article.card.customer-record>.record-meta{grid-column:4;grid-row:1 / span 3}.horizontal-records>article.card.customer-record>[data-customer]{grid-column:5;grid-row:1 / span 3}
.horizontal-records>article.card.customer-record>.badge{grid-column:1;grid-row:3;font-size:10px}
.horizontal-records>article.card.customer-linked-record{grid-template-columns:95px minmax(190px,1.5fr) minmax(160px,1fr) minmax(155px,1fr) 150px!important}
.horizontal-records>article.card.customer-linked-record>.eyebrow{grid-column:1}.horizontal-records>article.card.customer-linked-record>h2{grid-column:2}.horizontal-records>article.card.customer-linked-record>.record-description{grid-column:2;grid-row:2 / span 2}.horizontal-records>article.card.customer-linked-record>.badge{grid-column:1;grid-row:2}.horizontal-records>article.card.customer-linked-record>p:not(.record-description){grid-column:3}.horizontal-records>article.card.customer-linked-record>[data-customer-record]{grid-column:5;grid-row:1 / span 3}
@media(max-width:700px){.record-view-controls{gap:9px;padding:10px}.record-view-controls label{min-width:0;flex:1 1 90px}.record-view-controls select{width:100%;padding:8px;font-size:13px}.cards .record-description{max-height:40px}.horizontal-records{max-width:100%;overscroll-behavior-x:contain}main>nav{overflow-x:auto;flex-wrap:nowrap!important}nav button{white-space:nowrap}}
select{background:#fff!important;color:#222!important}button{background:#fff!important}button.primary,button[aria-pressed=true],button.selected{background:#222!important;color:#fff!important}.record-totals{background:#f2f2f2!important;color:#222!important;border-color:#ddd!important}.horizontal-records .record-totals{padding:8px!important;gap:4px!important}.horizontal-records .record-totals span{font-size:11px!important;line-height:1.3!important;padding:0!important;margin:0!important}.horizontal-records .record-totals strong{font-size:14px!important;line-height:1.3!important;padding:0!important;margin:0!important}.horizontal-records .bill-record>.eyebrow{grid-column:3!important;grid-row:1!important}.horizontal-records .bill-record>h2{grid-column:2!important;grid-row:1 / span 2!important}
.bulk-actions{background:#ededed!important;border-color:#ccc!important}.record-totals span,summary,button.danger{color:#333!important}.calendar-weekday{background:#222!important;color:#fff!important}.calendar-booking span{color:#555!important}.calendar-booking-select{background:#eee!important}

/* Calendar bookings stay distinct from their white day cells. */
.bulk-actions,.calendar-bulk{background:#e9e9e9!important;border:1px solid #ccc!important;color:#111!important}
.job-address strong,.horizontal-records .job-address strong{color:#000!important;font-weight:700!important}
button.calendar-booking,button.agenda-booking{background:#e2e2e2!important;border:1px solid #bcbcbc!important;color:#000!important;box-shadow:0 1px 3px #00000009;font-weight:700!important}
button.calendar-booking:hover,button.agenda-booking:hover{background:#d1d1d1!important;border-color:#777!important;color:#000!important}
.calendar-booking span,.calendar-booking strong,.calendar-booking small,.agenda-booking span,.agenda-booking strong,.agenda-booking small,.booking-author,.booking-client{color:#000!important;font-weight:700!important}
.calendar-booking .booking-title,.calendar-booking .booking-client{display:block;line-height:1.4;margin:4px 0}
.calendar-booking .booking-client{font-size:11px}.calendar-booking .booking-author{font-size:10px;line-height:1.4;margin-top:7px;padding-top:6px;border-top:1px solid #c4c4c4}
.calendar-booking-select{background:#e2e2e2!important}.calendar-day.drop-target{background:#d8d8d8!important;outline-color:#444!important}.calendar-day .day-number:hover{background:#f0f0f0!important}

.rich-description{min-height:110px;max-height:60vh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;color:#262626;border:1px solid #999;border-radius:7px;padding:12px;line-height:1.5;font-weight:400;cursor:text}.rich-description:focus{outline:2px solid #555;outline-offset:2px}.rich-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;padding:0!important;border:0!important}
