/* Links between the native record and full-page operations sources. */
.operations-workspace{min-width:0;margin-bottom:22px}
.operations-workspace[hidden]{display:none!important}
.operations-sources{display:flex;flex-direction:row;gap:8px;flex-wrap:wrap;padding:4px 0 16px;border-bottom:1px solid var(--shell-border,#d6dee9)}
.operations-source{display:inline-flex;align-items:center;box-sizing:border-box;min-height:44px;border:1px solid var(--shell-border,#d6dee9);border-radius:999px;line-height:1.5;padding:9px 15px;font-weight:650;text-decoration:none;color:var(--shell-ink,#183153);background:#fff}
.operations-source:hover{background:#eef3fb}
.operations-source[aria-current=page]{background:var(--shell-accent,#2457d6);border-color:var(--shell-accent,#2457d6);color:#fff}
.operations-source:focus-visible{outline:3px solid var(--shell-accent,#2457d6);outline-offset:3px}
.operations-refresh-note{align-self:center;margin-left:auto;color:var(--shell-muted,#52647b);font-size:13px;overflow-wrap:anywhere}
.operations-refresh{min-height:44px}

/* Screen-only operational chrome; frozen documents and print layouts are excluded. */
@media screen{
 :is(.rental-heading,.pos-heading,.business-heading,.contract-heading)>div:first-child{min-width:0}
 :is(.rental-heading,.pos-heading,.business-heading,.contract-heading) h2{color:var(--shell-ink,#183153);font-size:28px;font-weight:700;letter-spacing:-.035em;line-height:1.45}
 .control-hero h2{color:var(--shell-ink,#183153);font-weight:700;line-height:1.45}
 :is(.rental-heading,.pos-heading,.business-heading,.contract-heading) p{line-height:1.8}
 :is(.rental-section,.pos-surface,.business-surface,.contract-surface):not(:where(.business-document *,.contract-document *)){border-radius:14px;border-color:var(--shell-border,#d6dee9);box-shadow:none}
 /* Form rhythm shares a radius without overriding validation, disabled, or asset colors. */
 :is(.rental-form,.rental-filter,.pos-filters,.pos-sync-form,.pos-form,.business-form,.business-report-filter,.contract-form,.contract-filters,.contract-invitation) :is(input,select,textarea):not(:where(.business-document *,.contract-document *)){border-radius:9px}
 :is(.rental-form,.pos-form,.business-form,.contract-form)>label{line-height:1.6}
 :is(.rental-actions,.pos-actions,.business-actions,.contract-actions) button,
 :is(.rental-dialog-heading,.business-dialog-heading,.contract-heading)>button,
 :is(.rental-filter,.pos-filters,.pos-sync-form,.business-report-filter,.contract-filters) button{border-radius:9px}
 .rental-tabs button{border-radius:999px;min-height:44px}
 .rental-status,.contract-badge{border-radius:999px;line-height:1.5}
 :is(.rental-dialog,.pos-dialog,.business-dialog,.contract-dialog){border-radius:16px}
 /* Tables remain tables; only ledger wrappers scroll, not the entire page. */
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap){min-width:0;max-width:100%;scroll-padding:8px;overscroll-behavior-x:contain}
 .table-wrap table:not(:where(.business-document *,.contract-document *)){min-width:560px}
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap) :is(th,td):not(:where(.business-document *,.contract-document *)){padding:12px;line-height:1.7}
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap) td:not(:where(.business-document *,.contract-document *)){font-variant-numeric:tabular-nums;overflow-wrap:anywhere;vertical-align:top}
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap) thead th:not(:where(.business-document *,.contract-document *)){color:#52647b;font-size:12px;background:#f5f7fa}
 /* An inner ring stays visible at a scrollport's clipped edge. */
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap):focus-visible{outline:3px solid var(--shell-accent,#2457d6);outline-offset:-3px}
 :is(.table-wrap,.pos-table-wrap,.business-table-wrap,.contract-table-wrap) :is(button,a,input,select,summary):focus-visible{outline-offset:-3px}
 #navigation a:focus-visible,#navigation button:focus-visible{outline-offset:-3px}
 :is(.row,.review-heading,.intro,.section-title)>:first-child{min-width:0;overflow-wrap:anywhere}
 #error,#notice,.health-message{overflow-wrap:anywhere}
 .check:not(:where(.business-document *,.contract-document *)){min-height:44px}
}
@media screen and (max-width:650px){
 :is(.rental-heading,.pos-heading,.business-heading,.contract-heading) h2,.control-hero h2{font-size:24px}
 :is(.rental-heading,.pos-heading,.business-heading,.contract-heading){gap:14px}
 :is(.rental-section,.pos-surface,.business-surface,.contract-surface):not(:where(.business-document *,.contract-document *)){padding:18px 16px}
 /* Use a readable mobile control size; device zoom behavior still needs rendered QA. */
 :is(input,select,textarea):not(:where(.business-document *,.contract-document *)){font-size:16px}
 :is(.rental-form,.rental-filter,.pos-filters,.pos-sync-form,.pos-form,.business-form,.business-report-filter,.contract-form,.contract-filters,.contract-invitation) :is(input,select,textarea):not(:where(.business-document *,.contract-document *)){font-size:16px}
 :is(.rental-dialog,.pos-dialog,.business-dialog,.contract-dialog){scroll-padding-block:16px}
}
@media screen and (max-width:430px){
 .stats{grid-template-columns:1fr}
 .stat{padding:14px 16px;border-right:0;border-bottom:1px solid var(--line)}
 .stat:last-child{border-bottom:0}
 .stat strong{font-size:26px}
 .control-stats .stat:first-child{border-left:3px solid #b87d1e}
 header{flex-wrap:wrap}
 #identity{max-width:100%}
}
