:root{--navy:#0b1f5b;--blue:#0b5fa5;--teal:#005f5b;--green:#00864a;--gold:#e59e2f;--red:#b42318;--ink:#172033;--muted:#637083;--line:#d9e1e8;--soft:#f3f6f8;--white:#fff;--shadow:0 12px 30px rgba(20,42,68,.09);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#edf2f6}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#f8fafc 0,#edf2f6 300px);min-height:100vh}button,input,select,textarea{font:inherit}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 28px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-brand,.header-actions{display:flex;align-items:center;gap:14px}.header-brand h1{font-size:19px;margin:0}.brand-mark{display:grid;place-items:center;width:78px;height:78px;border-radius:20px;background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff;font-weight:900;letter-spacing:.06em;font-size:25px;box-shadow:var(--shadow)}.small-mark{width:48px;height:48px;border-radius:13px;font-size:16px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:11px;color:var(--blue);margin:0 0 4px}.version-pill,.model-pill,.activity-pill,.import-tag{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;background:#e8f1f8;color:var(--navy)}.signed-in-user{font-size:13px;color:var(--muted)}.demo-user{display:flex;align-items:center;gap:6px;font-size:12px}.page-shell{max-width:1480px;margin:0 auto;padding:30px 28px 60px;outline:none}.page-title,.client-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.page-title h2,.client-hero h2{font-size:34px;line-height:1.1;margin:0 0 8px;color:var(--navy)}.page-title p,.client-hero p{margin:0;color:var(--muted)}.button{border:1px solid var(--line);background:#fff;color:var(--navy);font-weight:800;border-radius:10px;padding:10px 14px;cursor:pointer;transition:.15s}.button:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,42,68,.11)}.button.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.button.success{background:var(--green);color:#fff;border-color:var(--green)}.button.ghost{background:#fff}.button.mini{font-size:12px;padding:6px 9px}.button.danger{color:var(--red);border-color:#efc2bd}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.metric-card,.panel{background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.metric-card{padding:20px;border-top:4px solid var(--blue)}.metric-card:nth-child(2){border-top-color:var(--teal)}.metric-card:nth-child(3){border-top-color:var(--green)}.metric-card:nth-child(4){border-top-color:var(--gold)}.metric-card span{display:block;color:var(--muted);font-size:13px;font-weight:700}.metric-card b{display:block;font-size:31px;color:var(--navy);margin:7px 0}.metric-card small{color:var(--muted)}.visual-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:18px;margin-bottom:18px}.panel{padding:20px}.wide-panel{grid-column:1/-1}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.panel-heading h3{margin:0;color:var(--navy);font-size:20px}.donut-wrap{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(280px,1.2fr);align-items:center;gap:24px}.donut{width:220px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;position:relative}.donut:after{content:"";position:absolute;inset:38px;background:#fff;border-radius:50%;box-shadow:inset 0 0 0 1px var(--line)}.donut>div{position:relative;z-index:1;text-align:center;display:grid}.donut b{font-size:28px;color:var(--navy)}.donut span{font-size:12px;color:var(--muted)}.chart-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;max-height:270px;overflow:auto}.legend-row{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:12px;padding:6px 0;border-bottom:1px solid #eef2f5}.legend-dot{width:9px;height:9px;border-radius:50%}.legend-row b{color:var(--navy)}.top-services{list-style:none;padding:0;margin:0;display:grid;gap:14px}.top-services li{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--soft)}.top-services li>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--navy);color:#fff;font-weight:900}.top-services li div{display:grid;gap:3px}.top-services small{color:var(--muted)}.line-chart{width:100%;height:auto;overflow:visible}.line-chart line{stroke:#c7d1da;stroke-width:1}.line-chart polyline{fill:none;stroke:var(--blue);stroke-width:4;stroke-linejoin:round;stroke-linecap:round}.line-chart circle{fill:#fff;stroke:var(--blue);stroke-width:3}.line-chart text{font-size:10px;fill:var(--muted)}.overview-panel{padding:0;overflow:hidden}.table-heading{padding:20px;margin:0}.table-tools{display:flex;gap:10px}.table-tools input,.table-tools select,.history-filters input,.history-filters select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.table-scroll{overflow:auto}.overview-table,table{width:100%;border-collapse:collapse}.overview-table th,table th{text-align:left;background:#f3f6f8;color:#435164;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:11px 13px;border-bottom:1px solid var(--line);white-space:nowrap}.overview-table td,table td{padding:13px;border-bottom:1px solid #edf1f4;vertical-align:middle;font-size:13px}.overview-table td:first-child{min-width:220px}.overview-table td small{display:block;color:var(--muted);margin-top:4px}.number{text-align:right;font-variant-numeric:tabular-nums}.client-link{border:0;background:none;padding:0;color:var(--navy);font-weight:900;cursor:pointer;text-align:left}.back-link{border:0;background:none;color:var(--blue);font-weight:800;padding:0;margin-bottom:18px;cursor:pointer}.context-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:18px}.context-strip>div{background:#fff;padding:16px}.context-strip span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;margin-bottom:5px}.context-strip b{font-size:14px;color:var(--navy)}.standing-grid{display:grid;gap:17px}.progress-block{border:1px solid var(--line);border-radius:13px;padding:16px}.progress-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:11px}.progress-heading span,.progress-heading b{display:block}.progress-heading span{font-size:12px;color:var(--muted);margin-bottom:3px}.progress-heading strong{color:var(--green);font-size:13px}.progress-track{height:13px;background:#dfe7ed;border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:999px}.progress-block.captive .progress-track span{background:linear-gradient(90deg,var(--teal),var(--green))}.progress-block.annual .progress-track span{background:linear-gradient(90deg,var(--navy),var(--blue))}.pbs-standing{padding:22px;border-radius:14px;background:linear-gradient(135deg,#eef6fb,#edf8f2);display:grid;gap:6px}.pbs-standing span,.pbs-standing small{color:var(--muted)}.pbs-standing b{font-size:27px;color:var(--navy)}.warning-box{display:flex;justify-content:space-between;gap:18px;padding:13px 16px;border:1px solid #efb7b0;background:#fff4f2;color:var(--red);border-radius:11px}.quiet-details{margin-bottom:18px;padding:0}.quiet-details summary,.activity-history>summary{cursor:pointer;list-style:none;padding:18px 20px;font-weight:850;color:var(--navy)}.quiet-details summary::-webkit-details-marker,.activity-history>summary::-webkit-details-marker{display:none}.quiet-details[open] summary{border-bottom:1px solid var(--line)}.activity-history{padding:0}.activity-history>summary{display:flex;justify-content:space-between;align-items:center}.activity-history>summary h3{margin:2px 0 4px;font-size:21px}.activity-history>summary span{color:var(--muted);font-size:13px}.history-body{border-top:1px solid var(--line);padding:20px}.history-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:9px}.history-summary{font-size:13px;color:var(--muted);font-weight:700}.history-list{display:grid;gap:10px}.activity-row{display:grid;grid-template-columns:130px 1fr auto;gap:16px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}.activity-date{display:grid;align-content:start;gap:4px}.activity-date b{color:var(--navy)}.activity-date span{color:var(--green);font-weight:850}.activity-content p{margin:10px 0 0;line-height:1.55;white-space:pre-wrap}.activity-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.import-tag{background:#f1f3f5;color:#647180}.activity-actions{display:flex;gap:6px;align-items:start}.empty-state{padding:30px;text-align:center;color:var(--muted);background:var(--soft);border-radius:12px}.activity-dialog{width:min(760px,calc(100vw - 30px));border:0;border-radius:18px;padding:0;box-shadow:0 30px 90px rgba(0,20,45,.3)}.activity-dialog::backdrop{background:rgba(7,20,39,.62);backdrop-filter:blur(3px)}.activity-dialog form{padding:23px}.dialog-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px}.dialog-header h2{margin:0;color:var(--navy)}.icon-button{border:0;background:#edf2f5;border-radius:10px;width:36px;height:36px;font-size:24px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:grid;gap:6px;font-size:13px;font-weight:750}.form-grid label span b{color:var(--red)}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #bdc8d2;border-radius:10px;padding:11px;background:#fff;color:var(--ink)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.form-error{padding:10px 12px;border-radius:9px;background:#fff1ef;color:var(--red);font-weight:750}.auth-gate{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,#dbeaf4 0,transparent 38%),linear-gradient(145deg,#081a43,#0b5fa5)}.auth-card{width:min(430px,100%);background:#fff;border-radius:24px;padding:38px;text-align:center;box-shadow:0 40px 100px rgba(0,0,0,.3)}.auth-card .brand-mark{margin:0 auto 18px}.auth-card h1{color:var(--navy);font-size:32px;margin:0 0 12px}.auth-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.toast{position:fixed;right:22px;bottom:22px;z-index:100;background:#143624;color:#fff;padding:13px 18px;border-radius:11px;box-shadow:var(--shadow);font-weight:750}.toast[data-kind=error]{background:var(--red)}.muted{color:var(--muted)}.small{font-size:12px}@media(max-width:1050px){.metric-grid{grid-template-columns:1fr 1fr}.context-strip{grid-template-columns:1fr 1fr}.header-actions .signed-in-user{display:none}.history-filters{grid-template-columns:1fr 1fr}.donut-wrap{grid-template-columns:1fr}.chart-legend{max-height:none}}@media(max-width:720px){.app-header{align-items:flex-start;padding:13px 16px}.header-actions{flex-wrap:wrap;justify-content:flex-end}.page-shell{padding:22px 14px 45px}.page-title,.client-hero{display:grid}.metric-grid,.visual-grid,.context-strip{grid-template-columns:1fr}.wide-panel{grid-column:auto}.table-tools{display:grid}.donut{width:190px}.chart-legend{grid-template-columns:1fr}.activity-row{grid-template-columns:1fr}.history-filters{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.version-pill,.demo-user{display:none}}@media print{.app-header,.button,.back-link,.activity-actions,.history-filters{display:none!important}.page-shell{max-width:none;padding:0}.panel,.metric-card{box-shadow:none;break-inside:avoid}.activity-history:not([open]){display:none}}
.auth-form{display:grid;gap:12px;text-align:left}.auth-form label{display:grid;gap:6px;font-size:13px;font-weight:800;color:var(--navy)}.auth-form input{width:100%;border:1px solid #bdc8d2;border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink)}.auth-form input:focus{outline:3px solid rgba(11,95,165,.14);border-color:var(--blue)}.auth-primary{width:100%;margin-top:2px}.auth-link{border:0;background:transparent;color:var(--blue);font-weight:800;cursor:pointer;padding:5px}.auth-link:hover{text-decoration:underline}.auth-card h2{margin:0;color:var(--navy);font-size:21px}.auth-message{min-height:20px;margin:14px 0 0!important}.auth-message[data-kind="error"]{color:var(--red)!important;font-weight:750}.auth-message[data-kind="success"]{color:var(--green)!important;font-weight:750}.auth-form button:disabled,.auth-form input:disabled,.auth-link:disabled{opacity:.62;cursor:wait}

/* V1.0.4 auth-state safety: HTML hidden must always win over component display rules. */
[hidden]{display:none!important}
.auth-stage{margin-top:22px}
.auth-state{display:grid;gap:12px}
.auth-state-copy{margin:0 0 4px!important;color:var(--muted);line-height:1.5}
.auth-checking{justify-items:center;padding:18px 0 8px;color:var(--muted);font-weight:750}
.auth-spinner{width:28px;height:28px;border-radius:50%;border:3px solid #d8e2ec;border-top-color:var(--blue);animation:auth-spin .8s linear infinite}
.auth-cancel{margin-top:2px}
@keyframes auth-spin{to{transform:rotate(360deg)}}

/* V1.1.0 portfolio, ledger, representative, and client-account workflows */
.app-nav{display:flex;align-items:center;gap:4px;padding:4px;background:#eef3f7;border:1px solid var(--line);border-radius:12px}.app-nav button{border:0;background:transparent;color:#4b5c70;font-size:12px;font-weight:850;padding:8px 11px;border-radius:8px;cursor:pointer}.app-nav button:hover,.app-nav button.active{background:#fff;color:var(--navy);box-shadow:0 2px 7px rgba(20,42,68,.09)}
.title-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.metric-grid.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-grid.three-up .metric-card:nth-child(3){border-top-color:var(--gold)}
.account-overview{margin:24px 0}.account-master-heading{margin:0 0 12px;padding:0 4px}.account-master-heading .table-tools{flex-wrap:wrap}.account-master-heading .table-tools input{min-width:220px}.account-section{padding:0;overflow:hidden;margin-bottom:14px}.account-section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#fff,#f8fbfd)}.account-section-heading h3{margin:0;color:var(--navy);font-size:20px}.section-count{font-size:12px;font-weight:850;color:var(--muted);background:#eef3f7;border-radius:999px;padding:6px 10px}.section-empty{padding:26px;text-align:center;color:var(--muted);border-top:1px solid var(--line)}
.overview-table{min-width:940px}.overview-table .balance-cell{min-width:230px}.overview-table .wide-balance{min-width:310px}.emphatic{color:var(--navy);font-weight:900}.dash{color:#9aa6b3}.mini-balance{display:grid;gap:6px;min-width:210px}.mini-balance-title{display:flex;align-items:center;justify-content:space-between;gap:9px}.mini-balance-title b{color:var(--navy);font-size:12px}.mini-balance-title span{color:var(--muted);font-size:10px}.balance-numbers{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted)}.balance-numbers span b{color:var(--ink);font-size:13px}.balance-numbers strong{font-size:13px;color:var(--green);white-space:nowrap}.mini-track{height:8px;background:#e0e7ed;border-radius:999px;overflow:hidden}.mini-track span{display:block;height:100%;border-radius:999px}.mini-balance.captive .mini-track span{background:linear-gradient(90deg,var(--teal),var(--green))}.mini-balance.annual .mini-track span{background:linear-gradient(90deg,var(--navy),var(--blue))}.mini-balance small{display:block;line-height:1.35;color:var(--muted);max-width:250px}.allocation-pill{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:900;white-space:nowrap}.allocation-pill.captive{background:#e7f6ef;color:#08653c}.allocation-pill.annual{background:#e8f1fb;color:#124e8a}.allocation-pill.pbs{background:#f0f2f5;color:#536174}
.progress-block.is-current{border-color:#9fc5df;box-shadow:inset 4px 0 0 var(--blue)}.progress-foot{display:flex;justify-content:space-between;gap:18px;margin-top:9px;font-size:12px;color:var(--muted)}.progress-foot span:last-child{text-align:right}.context-strip.dynamic{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.context-strip.three{grid-template-columns:repeat(3,1fr)}
.recent-ledger-panel,.ledger-panel{padding:0;overflow:hidden}.recent-ledger-panel .table-heading,.ledger-panel .table-heading{padding:20px}.ledger-tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:9px;padding:0 20px 12px}.ledger-tools.four{grid-template-columns:2fr 1.15fr 1fr 1fr}.ledger-tools input,.ledger-tools select,.ledger-filter-grid input,.ledger-filter-grid select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.recent-ledger-panel>.history-summary{padding:0 20px}.ledger-table{min-width:1100px}.ledger-table th:nth-child(1){width:125px}.ledger-table th:nth-child(2){width:190px}.ledger-table th:nth-child(3){width:165px}.ledger-table th:nth-child(4){width:170px}.ledger-table th:nth-child(5){width:70px}.ledger-note{min-width:330px;max-width:600px;line-height:1.45;white-space:normal}.empty-table{text-align:center!important;color:var(--muted);padding:28px!important}.activity-actions.compact{white-space:nowrap}.ledger-filter-grid{display:grid;grid-template-columns:2fr 1.1fr 1.1fr 1.1fr .8fr .8fr;gap:9px;padding:20px 20px 8px}.ledger-filter-grid label{display:grid;gap:4px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.ledger-panel>.history-summary{padding:0 20px 8px}
.rep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.rep-card{display:grid;gap:18px}.rep-card-header{display:flex;justify-content:space-between;gap:15px;align-items:start}.rep-card h3{font-size:22px;margin:0;color:var(--navy)}.rep-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.rep-metrics>div{padding:12px;border-radius:11px;background:var(--soft);display:grid;gap:4px}.rep-metrics span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.rep-metrics b{font-size:21px;color:var(--navy)}.rep-top{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;border-top:1px solid var(--line);padding-top:14px}.rep-top>span{grid-row:1/-1;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:10px;font-weight:850;padding-top:3px}.rep-top b{font-size:12px;color:var(--ink)}.rep-top b small{color:var(--muted);font-weight:700}.rep-top em{font-size:12px;color:var(--muted)}
.company-field{position:relative}.inline-link{justify-self:start;border:0;background:transparent;padding:0;color:var(--blue);font-size:11px;font-weight:850;cursor:pointer}.inline-link:hover{text-decoration:underline}.form-grid label small{color:var(--muted);font-weight:600;line-height:1.35}.company-dialog{width:min(700px,calc(100vw - 30px))}
@media(max-width:1200px){.app-header{flex-wrap:wrap}.app-nav{order:3;width:100%;justify-content:center}.ledger-filter-grid{grid-template-columns:1fr 1fr 1fr}.rep-grid{grid-template-columns:1fr}}
@media(max-width:820px){.metric-grid.three-up,.context-strip.three{grid-template-columns:1fr}.account-master-heading{display:grid}.account-master-heading .table-tools{display:grid;grid-template-columns:1fr}.ledger-tools,.ledger-filter-grid{grid-template-columns:1fr}.progress-foot{display:grid}.progress-foot span:last-child{text-align:left}.rep-metrics{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:560px){.app-nav{overflow:auto;justify-content:flex-start}.app-nav button{white-space:nowrap}.rep-metrics{grid-template-columns:1fr}.title-actions{justify-content:flex-start}}

/* V1.2 grouped Safety Reports snapshot */
.safety-group-row td{vertical-align:top}.performer-list{max-width:210px;white-space:normal;line-height:1.4}.safety-ledger-details{min-width:360px}.safety-ledger-details summary{cursor:pointer;color:var(--navy);font-weight:850;list-style:none}.safety-ledger-details summary::-webkit-details-marker{display:none}.safety-ledger-details summary:after{content:'  ▾';color:var(--blue)}.safety-ledger-details[open] summary:after{content:'  ▴'}.safety-detail-list{display:grid;gap:0;margin-top:10px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.safety-detail-row{display:grid;grid-template-columns:105px 130px minmax(220px,1fr) 72px;gap:10px;align-items:center;padding:9px 10px;border-bottom:1px solid #edf1f4;font-size:12px}.safety-detail-row:last-child{border-bottom:0}.safety-detail-row>b{color:var(--navy)}.safety-detail-row strong{text-align:right;color:var(--green);white-space:nowrap}.safety-site{line-height:1.35}.safety-entry-actions{margin-top:7px}.crm-source-note{display:block;margin-top:8px;color:var(--muted)}.treatment-pill{display:inline-flex;margin-left:6px;padding:4px 7px;border-radius:999px;background:#f4efe4;color:#735b22;font-size:10px;font-weight:850}.safety-history-row .activity-content{min-width:0}.safety-history-row .safety-ledger-details{min-width:0}.form-grid label small{color:var(--muted);font-weight:600;line-height:1.4}
@media(max-width:900px){.safety-detail-row{grid-template-columns:95px 120px minmax(180px,1fr) 70px}}
@media(max-width:720px){.safety-ledger-details{min-width:280px}.safety-detail-row{grid-template-columns:1fr 1fr}.safety-detail-row .safety-site{grid-column:1/-1}.safety-detail-row strong{text-align:left}}

.source-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px}.source-report-link{display:inline-flex;align-items:center;gap:3px;color:var(--blue);font-size:11px;font-weight:850;text-decoration:none}.source-report-link:hover{text-decoration:underline}.ledger-note>.source-links{margin-top:7px}

/* V1.3.1 monthly workload: compact bars + exact monthly totals */
.monthly-workload{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);gap:20px;align-items:stretch}
.monthly-chart-block{min-width:0;display:flex;align-items:flex-end}
.monthly-bars{width:100%;height:158px;display:grid;grid-template-columns:repeat(12,minmax(18px,1fr));gap:8px;align-items:end;padding:8px 4px 0;border-bottom:1px solid var(--line)}
.month-bar-item{height:100%;display:grid;grid-template-rows:1fr auto;gap:7px;min-width:0;text-align:center}
.month-bar-track{height:124px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(to top,rgba(217,226,234,.42),rgba(245,248,250,.18));border-radius:8px 8px 2px 2px;overflow:visible}
.month-bar-fill{display:block;position:relative;width:min(30px,68%);min-height:2px;background:var(--blue);border-radius:7px 7px 2px 2px}
.month-bar-fill i{position:absolute;left:50%;top:-17px;transform:translateX(-50%);font-size:9px;font-style:normal;font-weight:800;color:var(--muted);white-space:nowrap;opacity:0}
.month-bar-item:hover .month-bar-fill i,.month-bar-item.highest .month-bar-fill i{opacity:1}
.month-bar-item.highest .month-bar-fill{background:var(--navy)}
.month-bar-item>b{font-size:10px;color:var(--muted)}
.month-bar-item.highest>b{color:var(--navy)}
.monthly-numbers{border:1px solid var(--line);border-radius:13px;background:var(--soft);padding:14px}
.monthly-numbers-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px}
.monthly-numbers-heading h4{margin:1px 0 0;color:var(--navy);font-size:16px}
.highest-month{font-size:11px;font-weight:850;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 8px;white-space:nowrap}
.month-number-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.month-number{display:grid;gap:2px;padding:7px 8px;background:#fff;border:1px solid #e6edf2;border-radius:9px}
.month-number span{font-size:10px;color:var(--muted);font-weight:800}
.month-number b{font-size:11px;color:var(--navy);white-space:nowrap}
.month-number.highest{border-color:#9fb9cf;box-shadow:inset 0 0 0 1px #c5d5e2;background:#f7fbff}
@media(max-width:900px){.monthly-workload{grid-template-columns:1fr}.monthly-numbers{padding:12px}.monthly-bars{height:148px}.month-bar-track{height:114px}}
@media(max-width:560px){.monthly-bars{gap:4px}.month-bar-fill{width:min(22px,72%)}.month-number-grid{grid-template-columns:repeat(2,1fr)}.highest-month{white-space:normal;text-align:right}}


/* V1.4.0 expiration-first allocation + consolidated activity notes */
.allocation-context{margin:-7px 0 16px;color:var(--muted);font-size:12px;font-weight:700}
.safety-topic{display:block;color:var(--ink);font-weight:700}
.safety-activity-notes{display:block;margin-top:5px;color:var(--muted);line-height:1.45;white-space:pre-wrap}
.safety-activity-notes b{color:#4b596b}
.form-grid input:disabled,.form-grid select:disabled,.form-grid textarea:disabled{background:#f2f5f7;color:#6c7888;cursor:not-allowed}

/* V1.4.1 captive-cycle visibility + current-allocation hardening */
.captive-period-stack{display:grid;gap:10px;min-width:260px}.captive-period-stack .mini-balance{padding-bottom:9px;border-bottom:1px solid #e7edf2}.captive-period-stack .mini-balance:last-child{padding-bottom:0;border-bottom:0}.mini-balance.is-closed{background:#f8fafb;border-radius:9px;padding:8px}.mini-balance.is-closed .balance-numbers strong{color:var(--muted)}.mini-balance.is-current .mini-balance-title b{color:var(--green)}.progress-block.is-closed{background:#f8fafb;border-color:#d7e0e7;box-shadow:none}.progress-block.is-closed .progress-heading strong{color:var(--muted)}.progress-block.is-closed .progress-track span{filter:saturate(.65);opacity:.8}.captive-balance-cell{min-width:290px}.overview-table .captive-balance-cell{vertical-align:top}

/* V1.5.0 reporting, last-serviced visibility, representative privacy, and UI polish */
.last-serviced{display:grid;gap:1px;margin-top:6px;color:var(--blue)!important;font-weight:800;line-height:1.35}.last-serviced-by{display:block;white-space:nowrap}.last-serviced-detail{display:grid;gap:2px}.last-serviced-detail .last-serviced-by{white-space:nowrap}
.rep-grid.single-rep{grid-template-columns:minmax(0,760px)}
.rep-top{display:grid!important;grid-template-columns:120px minmax(0,1fr)!important;gap:8px 16px!important;align-items:start}
.rep-top>span{grid-row:auto!important;padding-top:5px!important}
.rep-top-list{display:grid;gap:7px}
.rep-top-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:baseline;padding:2px 0}
.rep-top-row b{font-size:12px;color:var(--ink);min-width:0}
.rep-top-row span{font-size:12px;color:var(--muted);font-weight:800;white-space:nowrap;text-align:right}
.ledger-preset-bar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:18px 20px 5px}
.ledger-preset-bar>span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--muted);margin-right:4px}
.ledger-preset{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:999px;padding:7px 11px;font-size:11px;font-weight:850;cursor:pointer}
.ledger-preset:hover{border-color:#9db5c8}.ledger-preset.active{background:var(--navy);border-color:var(--navy);color:#fff}
.ledger-filter-grid.expanded{grid-template-columns:minmax(190px,1.65fr) repeat(4,minmax(125px,1fr)) minmax(270px,1.45fr)}.ledger-date-range{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0}.ledger-date-range label{min-width:0}.ledger-date-range input{width:100%;min-width:0}
.ledger-recap{display:grid;gap:12px;margin-bottom:18px}
.ledger-recap-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ledger-recap-metrics>div{background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);padding:14px 16px;display:grid;gap:4px}
.ledger-recap-metrics span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:850}
.ledger-recap-metrics b{font-size:24px;color:var(--navy)}
.ledger-recap-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.9fr) minmax(260px,.8fr);gap:12px}
.ledger-chart-card{padding:16px;box-shadow:none}.ledger-chart-card .panel-heading.compact{margin-bottom:10px}.ledger-chart-card .panel-heading.compact h3{font-size:17px}
.ledger-chart-card .donut-wrap{grid-template-columns:145px minmax(0,1fr);gap:12px}.ledger-chart-card .donut{width:132px}.ledger-chart-card .donut:after{inset:27px}.ledger-chart-card .donut b{font-size:19px}.ledger-chart-card .chart-legend{grid-template-columns:1fr;gap:2px;max-height:180px}.ledger-chart-card .legend-row{font-size:10px;padding:4px 0}
.ledger-month-bars{height:190px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(42px,1fr);gap:8px;align-items:end;overflow-x:auto;padding:8px 2px 2px}
.ledger-month-item{height:100%;display:grid;grid-template-rows:1fr auto auto;gap:4px;text-align:center;min-width:42px}
.ledger-month-track{height:142px;border-radius:8px 8px 3px 3px;background:linear-gradient(to top,#eef3f7,#fafcfd);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.ledger-month-track span{display:block;width:56%;min-height:2px;background:var(--blue);border-radius:6px 6px 2px 2px}
.ledger-month-item b{font-size:10px;color:var(--muted);white-space:nowrap}.ledger-month-item small{font-size:10px;color:var(--navy);font-weight:850}
.ledger-top-accounts{display:grid;gap:3px}.ledger-top-accounts>div{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1f4}.ledger-top-accounts>div:last-child{border-bottom:0}.ledger-top-accounts span{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#edf3f8;color:var(--navy);font-size:10px;font-weight:900}.ledger-top-accounts b{font-size:11px;min-width:0}.ledger-top-accounts strong{font-size:11px;color:var(--navy);white-space:nowrap}
@media(max-width:1200px){.ledger-filter-grid.expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-date-range{grid-column:1/-1}.ledger-recap-grid{grid-template-columns:1fr 1fr}.ledger-chart-card.monthly{grid-column:1/-1}}
@media(max-width:760px){.ledger-recap-metrics,.ledger-recap-grid{grid-template-columns:1fr}.ledger-chart-card.monthly{grid-column:auto}.rep-top{grid-template-columns:1fr!important}.ledger-filter-grid.expanded{grid-template-columns:1fr}.ledger-date-range{grid-column:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media(max-width:480px){.ledger-date-range{grid-template-columns:1fr}}

/* V1.5.2 Annual Pace + owner/admin Quality Control Review */
.annual-pace-card{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #cbdbe7;border-radius:12px;background:#f7fbff}.annual-pace-card>div{display:grid;gap:3px}.annual-pace-card span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:850;color:var(--muted)}.annual-pace-card b{color:var(--navy);font-size:17px}.annual-pace-card small{color:var(--muted);font-size:11px;line-height:1.4}.annual-pace-card>strong{font-size:22px;color:var(--green)}.annual-pace-card.fulfilled{background:#f3fbf6;border-color:#bfdfca}
.quality-panel .table-tools{flex-wrap:wrap}.quality-panel .table-tools input{min-width:220px}.quality-table{min-width:900px}.quality-table td:first-child{min-width:360px}.quality-kind{display:inline-flex;margin-bottom:5px;padding:4px 7px;border-radius:999px;background:#edf3f8;color:var(--navy);font-size:10px;font-weight:900}.quality-title{display:block;color:var(--navy);font-size:13px;margin-bottom:3px}.quality-table td:first-child small{display:block;color:var(--muted);line-height:1.45;white-space:normal}.quality-table td{vertical-align:top}
@media(max-width:720px){.annual-pace-card{align-items:flex-start}.quality-panel .table-tools{display:grid;width:100%}.quality-panel .table-tools input,.quality-panel .table-tools select{width:100%;min-width:0}}

/* V1.5.3 Admin Quality Control audit workflow */
/* V1.5.4 success-state styling */
.quality-discrepancy{margin-top:7px}.quality-discrepancy>summary{cursor:pointer;display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-weight:850;font-size:11px;list-style-position:inside}.quality-discrepancy[open]>summary{margin-bottom:10px}.quality-discrepancy-body{display:grid;gap:10px;padding:12px;border:1px solid #d9e3ea;border-radius:10px;background:#fbfdff;min-width:0}.quality-why{display:grid;gap:3px}.quality-why>b{font-size:11px;color:var(--navy)}.quality-why p{margin:0;color:var(--muted);font-size:11px;line-height:1.45}.quality-record-list{display:grid;gap:8px}.quality-record{display:grid;gap:7px;padding:10px;border:1px solid #e2e9ee;border-radius:9px;background:white}.quality-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.quality-record-head>div{display:grid;gap:2px}.quality-record-head b{font-size:11px;color:var(--navy)}.quality-record-head small{font-size:10px;color:var(--muted)}.quality-record-head strong{white-space:nowrap;font-size:12px;color:var(--navy)}.quality-record-meta{display:grid;gap:4px;font-size:10px;line-height:1.45;color:#41536a}.quality-record-meta span{display:block;white-space:normal}.quality-record-actions{display:flex;justify-content:flex-end}.quality-legacy-callout{display:grid;gap:3px;padding:9px 10px;border-radius:8px;background:#fff8e8;border:1px solid #ead7a0}.quality-legacy-callout b{font-size:10px;color:#6d5313}.quality-legacy-callout span{font-size:10px;line-height:1.4;color:#6d5d37}.quality-source-note{color:var(--muted)}.quality-audit-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:2px}.quality-audit-actions small{flex:1;min-width:220px;color:var(--muted);font-size:10px;line-height:1.4}.quality-week-label{display:block!important;margin-top:4px;color:#80631c!important;font-size:9px!important;font-weight:800}.quality-clear{padding:28px!important;text-align:center!important}.quality-clear b,.quality-clear span{display:block}.quality-clear b{color:var(--navy);margin-bottom:4px}.quality-clear span{color:var(--muted);font-size:11px}.quality-dialog-note{margin:0 0 14px;padding:10px 12px;border-radius:9px;background:#f2f7fb;border:1px solid #d3e1eb;color:#41536a;font-size:11px;line-height:1.45}
@media(max-width:720px){.quality-record-head{align-items:flex-start}.quality-audit-actions{align-items:stretch}.quality-audit-actions .button{width:100%}.quality-audit-actions small{min-width:0}.quality-discrepancy-body{padding:10px}}

/* V1.5.11 — source-backed activity counts */
.activity-count-panel{margin-bottom:18px;padding:16px 18px}.activity-count-panel .panel-heading{margin-bottom:12px}.activity-count-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.activity-count-grid>div{background:#fff;padding:14px 16px;text-align:center}.activity-count-grid span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.07em;font-weight:850}.activity-count-grid b{display:block;margin-top:5px;color:var(--navy);font-size:24px}.ledger-recap-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}@media(max-width:1180px){.ledger-recap-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.activity-count-grid{grid-template-columns:1fr 1fr}.ledger-recap-metrics{grid-template-columns:1fr 1fr}}@media(max-width:480px){.activity-count-grid,.ledger-recap-metrics{grid-template-columns:1fr}}
.client-hero-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
@media(max-width:720px){.client-hero-actions{justify-content:flex-start}}

/* V1.6.0 — Incidents & Response */
.incident-page-title{align-items:flex-end}.incident-metrics{margin-bottom:20px}.incident-queue{overflow:hidden}.incident-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}.incident-tabs button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:7px 11px;font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}.incident-tabs button.active{background:#e8f2fb;border-color:#96b8d7;color:#124f80}.incident-filter-grid{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(140px,1fr));gap:10px;margin-bottom:8px}.incident-filter-grid input,.incident-filter-grid select{width:100%}.incident-table th:nth-child(1){width:120px}.incident-table th:nth-child(4){width:145px}.incident-table th:nth-child(5){width:135px}.incident-table th:nth-child(6){width:230px}.incident-table td{vertical-align:top}.incident-table td small,.incident-title-text+small,.incident-table td>b+small{display:block;margin-top:4px;color:var(--muted);line-height:1.35}.incident-title-text{display:block;color:var(--ink)}.incident-next-action{display:block;line-height:1.35}.incident-stage,.incident-track-pill,.incident-reference-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:800;line-height:1.1;white-space:nowrap}.incident-stage{background:#edf1f4;color:#44515e}.stage-reported{background:#f5eee0;color:#775d24}.stage-in-progress{background:#e8f2fb;color:#175a8d}.stage-waiting{background:#fff3db;color:#806018}.stage-closed{background:#e7f4ec;color:#2f6c47}.incident-reference-pill{margin-top:5px;background:#f1f2f4;color:#626b74}.incident-track-pill{background:#edf4f8;color:#3b637a}.incident-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:24px 26px;margin-bottom:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.incident-hero h2{margin:5px 0 4px}.incident-hero p{margin:0;color:var(--muted)}.incident-hero-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.incident-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.incident-next-panel{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 22px;margin:0 0 18px;border:1px solid #b8d4e7;border-left:4px solid #0b5fa5;border-radius:14px;background:#f4f9fc}.incident-next-panel h3{margin:3px 0 0;font-size:1.03rem}.incident-next-meta{display:flex;gap:22px;flex-wrap:wrap}.incident-next-meta span{display:grid;gap:3px;color:var(--muted);font-size:.8rem}.incident-next-meta b{color:var(--ink);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.incident-detail-grid,.incident-two-column{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-bottom:18px}.incident-two-column{grid-template-columns:1fr 1fr}.incident-summary-copy{margin:0;color:var(--ink);line-height:1.55}.incident-injury-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.incident-injury-summary div,.incident-outcome-grid div{display:grid;gap:5px}.incident-injury-summary span,.incident-outcome-grid span{color:var(--muted);font-size:.73rem;text-transform:uppercase;letter-spacing:.05em}.incident-injury-summary b{font-size:.9rem;line-height:1.4}.incident-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.incident-facts div{padding:10px 0;border-bottom:1px solid var(--line)}.incident-facts div:nth-last-child(-n+2){border-bottom:0}.incident-facts dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:4px}.incident-facts dd{margin:0;font-weight:700;line-height:1.3}.incident-outcome-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:18px}.incident-document-list{display:grid}.incident-document-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.incident-document-row:last-child{border-bottom:0}.incident-document-row b,.incident-document-row small{display:block}.incident-document-row small{color:var(--muted);margin-top:3px;line-height:1.35}.source-link-missing{font-size:.75rem;color:var(--muted);max-width:190px;text-align:right}.incident-timeline{display:grid;gap:0}.incident-update{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:0 0 18px;position:relative}.incident-update:before{content:"";position:absolute;left:5px;top:13px;bottom:-2px;width:2px;background:var(--line)}.incident-update:last-child:before{display:none}.incident-update-marker{width:12px;height:12px;border:3px solid #0b5fa5;background:var(--surface);border-radius:50%;margin-top:4px;z-index:1}.incident-update-head{display:flex;justify-content:space-between;gap:10px;font-size:.82rem}.incident-update-head span{color:var(--muted);font-size:.75rem}.incident-update p{margin:6px 0;line-height:1.5}.incident-update-meta{display:flex;gap:8px;flex-wrap:wrap}.incident-update-meta span{font-size:.74rem;background:#f5f7f9;border-radius:6px;padding:4px 6px;color:#52606c}.timeline-change{font-weight:700}.incident-response-panel{margin-bottom:18px}.incident-response-panel .panel-heading p{margin:3px 0 0;color:var(--muted)}.company-incidents{margin-top:18px}.company-incident-list{display:grid}.company-incident-row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:16px;align-items:center;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 2px;text-align:left;color:inherit;font:inherit;cursor:pointer}.company-incident-row:last-child{border-bottom:0}.company-incident-row:hover{background:#fafbfd}.company-incident-row b,.company-incident-row small{display:block}.company-incident-row small{margin-top:3px;color:var(--muted);font-size:.76rem}.company-incident-title{min-width:0}.incident-form-grid select[multiple]{min-height:112px}.incident-reference-pill+.incident-track-pill{margin-left:0}.empty-state.compact{padding:16px 0}.incident-dialog{max-width:900px}.incident-workflow-dialog{max-width:1180px}.incident-update-dialog,.incident-link-dialog{max-width:680px}
@media(max-width:1100px){.incident-filter-grid{grid-template-columns:1fr 1fr}.incident-filter-grid input{grid-column:1/-1}.incident-detail-grid,.incident-two-column{grid-template-columns:1fr}.incident-table th:nth-child(6){width:auto}}
@media(max-width:720px){.incident-hero,.incident-next-panel{flex-direction:column}.incident-filter-grid{grid-template-columns:1fr}.incident-filter-grid input{grid-column:auto}.incident-facts,.incident-injury-summary,.incident-outcome-grid{grid-template-columns:1fr}.company-incident-row{grid-template-columns:1fr auto}.company-incident-row>span:first-child{grid-column:1}.company-incident-title{grid-column:1}.company-incident-row>.incident-stage{grid-column:2;grid-row:1/3}.incident-update-head{flex-direction:column;gap:2px}.source-link-missing{text-align:left}.incident-document-row{align-items:flex-start;flex-direction:column}}

/* V1.6.2 Incidents governance, audit, source review, and existing-work links */
.incident-response-actions,.incident-document-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.incident-existing-dialog{max-width:1180px}.incident-existing-tools{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0}.incident-existing-tools input{flex:1;min-width:220px;border:1px solid var(--line);border-radius:9px;padding:9px 11px}.incident-existing-table{max-height:54vh;border:1px solid var(--line);border-radius:10px}.incident-existing-table td small{display:block;margin-top:3px;color:var(--muted)}.incident-client-dialog,.source-review-dialog{max-width:700px}.incident-client-dialog form>label{display:grid;gap:6px}.incident-client-dialog form>label>input{border:1px solid #bdc8d2;border-radius:10px;padding:11px}.duplicate-match-box{display:grid;gap:7px;margin:12px 0;padding:12px;border:1px solid #e2c66d;border-radius:10px;background:#fff9e8}.duplicate-match-box>b{color:#715918}.duplicate-match-box button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 10px;text-align:left;color:var(--navy);font-weight:800;cursor:pointer}.source-review-callout{padding:12px 14px;margin-bottom:14px;border:1px solid #e3cf91;border-radius:10px;background:#fff9e8}.source-review-callout b{color:#6e5617}.source-review-callout p{margin:4px 0 0;color:#5f5a4c}.incident-audit-panel{margin:0 0 18px;padding:0}.incident-audit-panel>summary{cursor:pointer;padding:13px 18px;color:var(--muted);font-size:.8rem;font-weight:800;list-style-position:inside}.incident-audit-panel[open]>summary{border-bottom:1px solid var(--line);color:var(--navy)}.incident-audit-list{padding:6px 18px 12px}.incident-audit-row{display:grid;grid-template-columns:minmax(220px,.7fr) 1.3fr;gap:18px;padding:10px 0;border-bottom:1px solid var(--line)}.incident-audit-row:last-child{border-bottom:0}.incident-audit-row b,.incident-audit-row small{display:block}.incident-audit-row small{margin-top:3px;color:var(--muted);font-size:.72rem}.incident-audit-row p{margin:0;color:#52606c;font-size:.76rem;line-height:1.45}.incident-outcome-grid.four{grid-template-columns:2fr repeat(3,1fr)}.incident-facts-panel .incident-facts{grid-template-columns:1fr 1fr}.incident-form-grid label>small{font-weight:500;color:var(--muted);line-height:1.35}.incident-table .source-review-open{white-space:nowrap}.button.danger.ghost{background:#fff;color:var(--red);border-color:#efc2bd}.source-review-dialog select,.source-review-dialog textarea{width:100%}.incident-document-actions .button{white-space:nowrap}
@media(max-width:900px){.incident-outcome-grid.four,.incident-audit-row{grid-template-columns:1fr}.incident-existing-tools{align-items:stretch;flex-direction:column}}


/* V1.7.0 — Dynamic incident/event and response-track workflow */
.incident-form-section{margin:0 0 18px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.incident-form-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.incident-form-section-heading h3{margin:2px 0 0;color:var(--navy);font-size:18px}.incident-form-section-heading p:not(.eyebrow){margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.incident-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.response-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.incident-choice-card{position:relative;display:flex;align-items:center;gap:9px;min-height:48px;padding:10px 12px;border:1px solid #cad5de;border-radius:11px;background:#fff;color:var(--ink);font-size:12px;font-weight:800;cursor:pointer;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.incident-choice-card:hover{border-color:#8eabc1;background:#fbfdff}.incident-choice-card input{position:absolute;opacity:0;pointer-events:none}.incident-choice-check{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border:1px solid #aebbc6;border-radius:6px;background:#fff;color:transparent;font-size:12px;font-weight:950}.incident-choice-card:has(input:checked){border-color:#4d82aa;background:#f1f7fb;box-shadow:inset 0 0 0 1px #aac7dc}.incident-choice-card:has(input:checked) .incident-choice-check{background:var(--navy);border-color:var(--navy);color:#fff}
.incident-dynamic-sections{display:grid;gap:12px}.incident-dynamic-sections .dynamic-section{margin:0;background:#fbfcfd}.incident-dynamic-sections .osha-section{border-color:#d8c57b;background:#fffdf5}
.segmented-choice{display:flex;gap:7px;flex-wrap:wrap}.segment{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;font-weight:800;color:var(--muted);cursor:pointer}.segment input{accent-color:var(--navy)}.segment:has(input:checked){background:#edf5fb;border-color:#9abbd2;color:var(--navy)}
.incident-event-pill,.incident-osha-pill{display:inline-flex;align-items:center;width:max-content;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:850;line-height:1.1;white-space:nowrap}.incident-event-pill{background:#eef4f7;color:#3f6175}.incident-osha-pill{background:#fff0cf;color:#7a5813;border:1px solid #efd49b}
.incident-process-section{margin:0 0 18px;padding:18px 20px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.incident-process-section.osha-process{border-color:#e0c97a;background:#fffdf6}.section-heading-inline{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.section-heading-inline h3{margin:2px 0 0;color:var(--navy)}
.incident-process-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.incident-process-grid>.incident-process-card:only-child{grid-column:1/-1}.incident-process-card{min-width:0;padding:18px 20px;border:1px solid #e1e8ed;border-radius:13px;background:#fff}.incident-process-card-head{margin:0 0 16px}.incident-process-card-head .eyebrow{margin:0 0 4px}.incident-process-card-head h4{margin:0;color:var(--navy);font-size:18px;line-height:1.2}.incident-process-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0}.incident-process-facts>div{display:block;min-width:0}.incident-process-facts>.incident-process-fact-wide{grid-column:1/-1}.incident-process-facts dt{margin:0 0 5px;color:var(--muted);font-size:11px;font-weight:800;line-height:1.25;letter-spacing:.02em}.incident-process-facts dd{margin:0;color:var(--ink);font-size:14px;font-weight:700;line-height:1.42;overflow-wrap:anywhere}.incident-process-fact-wide dd{max-width:82ch;font-weight:600;line-height:1.55}.incident-process-fact-wide+ .incident-process-fact-wide{padding-top:2px}
.incident-form-grid .wide{grid-column:1/-1}.incident-form-grid input[type="date"]{min-width:0}
@media(max-width:1050px){.incident-choice-grid,.response-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.incident-process-grid{grid-template-columns:1fr}}
@media(max-width:680px){.incident-choice-grid,.response-choice-grid,.incident-process-facts{grid-template-columns:1fr}.incident-form-section{padding:14px}.incident-workflow-dialog{max-width:100%}}
.osha-process-card{border-color:#e0c97a;background:#fffdf6}
.incident-privacy-reminder{display:grid;gap:4px;margin:0 0 14px;padding:11px 13px;border:1px solid #f0c36b;border-radius:10px;background:#fff9ec;color:#5f4c1c;font-size:11px;line-height:1.45}.incident-privacy-reminder b{color:#6d5314;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.incident-privacy-reminder.compact{margin:0 0 14px}.incident-form-grid label small#incident-summary-privacy-note{color:#715719}.incident-document-list+.small{margin-top:8px}

/* V1.7.4 — Restored Incidents & Response reporting dashboard */
.incident-reporting-panel{margin-bottom:16px;padding:20px 22px}.incident-report-heading{align-items:flex-end;margin-bottom:14px}.incident-report-heading p:not(.eyebrow){margin:4px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.incident-report-presets{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px}.incident-report-presets>span{margin-right:3px;color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.incident-report-presets button{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:7px 11px;font:inherit;font-size:.8rem;font-weight:800;cursor:pointer}.incident-report-presets button:hover{border-color:#9db6ca;color:var(--navy)}.incident-report-presets button.active{background:#e8f2fb;border-color:#8eb6d5;color:#124f80}.incident-report-filter-grid{display:grid;grid-template-columns:minmax(270px,1.15fr) repeat(4,minmax(135px,.75fr));gap:10px;align-items:end}.incident-report-filter-grid select,.incident-report-filter-grid input{width:100%}.incident-report-date-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.incident-report-date-range label{display:grid;gap:4px}.incident-report-date-range label>span{color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.incident-report-date-range input{border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff;color:var(--ink);font:inherit}.incident-financial-metrics{margin-top:-4px;margin-bottom:18px}.incident-financial-metrics .metric-card{border-top:3px solid #d9b454}.incident-financial-metrics .metric-card b{font-size:1.65rem}.incident-report-chart-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:16px;margin:0 0 18px}.incident-report-chart{padding:18px 20px;min-width:0}.incident-report-chart .panel-heading{margin-bottom:12px}.incident-report-chart .panel-heading h3{font-size:1rem}.incident-time-chart{display:flex;align-items:end;gap:9px;min-height:185px;overflow-x:auto;padding:6px 2px 2px}.incident-time-column{display:grid;grid-template-rows:20px 125px auto;align-items:end;justify-items:center;gap:4px;min-width:46px;flex:1}.incident-time-column>b{font-size:.72rem;color:var(--ink)}.incident-time-column>span{font-size:.68rem;color:var(--muted);white-space:nowrap}.incident-time-track{display:flex;align-items:end;width:18px;height:125px;border-radius:6px;background:#eef3f6;overflow:hidden}.incident-time-track i{display:block;width:100%;min-height:5px;border-radius:6px 6px 0 0;background:#0b5fa5}.incident-rank-chart{display:grid;gap:10px}.incident-rank-row{display:grid;grid-template-columns:minmax(95px,1.2fr) minmax(70px,1fr) 24px;gap:8px;align-items:center}.incident-rank-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink);font-size:.73rem;font-weight:700}.incident-rank-row>b{font-size:.73rem;text-align:right}.incident-rank-track{height:8px;border-radius:999px;background:#edf1f4;overflow:hidden}.incident-rank-track i{display:block;height:100%;border-radius:999px;background:#0b5fa5}.incident-report-empty{display:grid;place-items:center;min-height:150px;color:var(--muted);font-size:.8rem;text-align:center}.incident-reporting-panel .history-summary{margin-bottom:0}
@media(max-width:1200px){.incident-report-filter-grid{grid-template-columns:1fr 1fr 1fr}.incident-report-date-range{grid-column:1/-1}.incident-report-chart-grid{grid-template-columns:1fr 1fr}.incident-report-chart.wide{grid-column:1/-1}}
@media(max-width:760px){.incident-report-heading{align-items:stretch;flex-direction:column}.incident-report-filter-grid,.incident-report-chart-grid{grid-template-columns:1fr}.incident-report-date-range{grid-column:auto}.incident-report-chart.wide{grid-column:auto}.incident-time-column{min-width:42px}.incident-financial-metrics{margin-top:0}}

/* V1.8.8 — regulatory financial clarity and company recap */
.incident-report-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.company-regulatory-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:12px 0 20px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--line)}.company-regulatory-summary article{display:grid;gap:6px;padding:14px 12px;background:#f8fbfd;text-align:center}.company-regulatory-summary span{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.company-regulatory-summary b{font-size:1.15rem;color:var(--navy)}.company-regulatory-empty{margin:12px 0 20px;padding:16px;border:1px solid var(--line);border-radius:11px;background:#f8fbfd;color:var(--muted);font-size:.84rem}.company-case-history-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding-top:4px;border-top:1px solid var(--line)}.company-case-history-heading b{padding-top:16px;color:var(--navy)}.company-case-history-heading span{padding-top:16px;color:var(--muted);font-size:.76rem}.incident-form-grid input[readonly]{background:#f3f6f8;color:var(--navy);font-weight:850}
@media(max-width:900px){.company-regulatory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.company-regulatory-summary article:last-child{grid-column:1/-1}.company-case-history-heading{align-items:flex-start;flex-direction:column;gap:2px}.company-case-history-heading span{padding-top:0}}@media(max-width:760px){.incident-report-actions{justify-content:stretch}.incident-report-actions .button{flex:1}.company-regulatory-summary{grid-template-columns:1fr}.company-regulatory-summary article:last-child{grid-column:auto}}

/* V1.7.5 - split field/drive time entry, response responders, client recap */
.activity-time-entry{display:grid;gap:10px}.activity-time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px}.activity-time-total{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:11px 14px;border:1px solid #b7cee0;border-radius:10px;background:#f2f8fc}.activity-time-total span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--blue)}.activity-time-total b{color:var(--navy);font-size:14px}.form-label{display:block;margin-bottom:6px;font-weight:700}.incident-responder-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.incident-responder-grid .incident-choice-card{min-height:34px;padding:6px 8px;border-radius:9px;gap:7px;font-size:11px}.incident-responder-grid .incident-choice-check{width:16px;height:16px;flex-basis:16px;border-radius:5px;font-size:10px}.client-hero-actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:980px){.incident-responder-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.activity-time-inputs{grid-template-columns:1fr}.incident-responder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-time-total{align-items:flex-start;flex-direction:column;gap:4px}}
@media(max-width:430px){.incident-responder-grid{grid-template-columns:1fr}}

/* V1.9.0 — Captive Producer and Contracts & Billing workspaces */
.producer-title{align-items:center}.view-only-badge{display:inline-flex;padding:8px 12px;border:1px solid #a9bfd0;border-radius:999px;background:#f0f6fa;color:var(--navy);font-size:12px;font-weight:850}.producer-account-panel{padding:0;overflow:hidden}.producer-account-panel>.panel-heading{padding:20px;margin:0}.producer-account-panel input,.billing-register-tools input{min-width:250px;border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff}.producer-table{min-width:1120px}.producer-note{display:flex;gap:14px;align-items:center;margin-top:15px;padding:15px 18px;border:1px solid #c8d9e6;border-radius:12px;background:#f3f8fb;color:var(--muted);font-size:13px}.producer-note b{color:var(--navy);white-space:nowrap}
.billing-lock-card{width:min(600px,100%);margin:6vh auto;padding:38px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow);text-align:center}.billing-lock-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:18px;background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff;font-size:30px;font-weight:900}.billing-lock-card h2{margin:4px 0 9px;color:var(--navy)}.billing-lock-card>p:not(.eyebrow){color:var(--muted);line-height:1.55}.billing-lock-card form{display:grid;gap:12px;margin:24px auto 14px;max-width:390px;text-align:left}.billing-lock-card label{display:grid;gap:6px}.billing-lock-card label span{color:var(--muted);font-size:12px;font-weight:750}.billing-lock-card input{width:100%;border:1px solid #bdc8d2;border-radius:10px;padding:12px}.billing-lock-card small{display:block;color:var(--muted);font-size:11px;line-height:1.5}.billing-loading{text-align:center;padding:50px}.billing-lock-note{color:var(--muted);font-size:11px;font-weight:750}
.billing-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:17px}.billing-metric-grid article{padding:17px 16px;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.billing-metric-grid article.captive-value{border-top-color:var(--gold)}.billing-metric-grid article.outstanding{border-top-color:#d97706}.billing-metric-grid article.paid{border-top-color:var(--green)}.billing-metric-grid span,.billing-fact-grid span,.billing-notes>span{display:block;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.billing-metric-grid b{display:block;margin:7px 0 5px;color:var(--navy);font-size:22px;font-variant-numeric:tabular-nums}.billing-metric-grid small{color:var(--muted);font-size:10px;line-height:1.35}.billing-attention-panel{margin-bottom:17px}.billing-attention-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.billing-attention-item{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:12px 14px;border:1px solid #ead19a;border-radius:10px;background:#fffaf0;color:var(--ink);text-align:left;cursor:pointer}.billing-attention-item b,.billing-attention-item small{display:block}.billing-attention-item b{color:var(--navy)}.billing-attention-item small{margin-top:4px;color:#725b22}.billing-attention-item strong{color:var(--blue);white-space:nowrap;font-size:12px}.billing-register{padding:0;overflow:hidden;margin-bottom:17px}.billing-register>.panel-heading{padding:20px;margin:0}.billing-filter-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:0 20px 12px}.billing-filter-tabs button{border:1px solid var(--line);border-radius:999px;background:#fff;padding:7px 10px;color:var(--muted);font-size:11px;font-weight:850;cursor:pointer}.billing-filter-tabs button.active{border-color:#90b4ce;background:#eaf4fa;color:var(--navy)}.billing-register>.history-summary{padding:0 20px}.billing-table{min-width:1240px}.billing-table td small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.billing-type,.billing-status{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;background:#edf2f5;color:#4b5c70;font-size:10px;font-weight:900;white-space:nowrap}.billing-type.dot{background:#e8f1fb;color:#124e8a}.billing-type.captive,.billing-status.captive-funded{background:#fff3d4;color:#765410}.billing-status.executed,.billing-status.paid{background:#e7f6ed;color:#156b3c}.billing-status.sent{background:#e8f1fb;color:#124e8a}.billing-status.needs-invoice,.billing-status.draft{background:#fff3d4;color:#765410}.billing-status.cancelled,.billing-status.declined,.billing-status.expired{background:#f3f4f6;color:#687383}.attention-dot{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:#d97706;box-shadow:0 0 0 3px #fff0d7}.billing-detail{scroll-margin-top:135px;margin-top:17px}.billing-detail-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}.billing-detail-heading h3{margin:2px 0 3px;color:var(--navy);font-size:24px}.billing-detail-heading p:not(.eyebrow){margin:0;color:var(--muted)}.billing-fact-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;margin:17px 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.billing-fact-grid>div{padding:14px;background:#f8fbfd}.billing-fact-grid b{display:block;margin-top:5px;color:var(--navy);font-size:13px;line-height:1.35}.billing-fact-grid small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.billing-notes{margin:10px 0;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:#f8fbfd}.billing-notes.legacy{background:#fffaf0;border-color:#ead19a}.billing-notes p{margin:6px 0 0;white-space:pre-wrap;line-height:1.5}.captive-billing-message{display:flex;gap:15px;padding:16px;border:1px solid #ead19a;border-radius:11px;background:#fffaf0}.captive-billing-message b{color:#765410}.captive-billing-message span{color:#665b42}.billing-invoice-summary{display:flex;justify-content:flex-end;gap:22px;margin:12px 0;color:var(--muted);font-size:12px}.billing-invoice-summary b{color:var(--navy)}.invoice-table{min-width:1150px}.invoice-notes{min-width:190px;max-width:310px;white-space:normal;line-height:1.4}.billing-dialog{width:min(900px,calc(100vw - 30px))}.billing-dialog form{max-height:90vh;overflow:auto}.billing-form-guidance{padding:11px 13px;border-radius:10px;background:#f1f6f9;color:var(--muted);font-size:11px;line-height:1.45}.billing-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1250px){.billing-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.billing-fact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.producer-title,.billing-detail-heading{display:grid}.producer-note{align-items:flex-start;flex-direction:column}.billing-metric-grid,.billing-attention-list,.billing-fact-grid{grid-template-columns:1fr}.billing-register>.panel-heading{display:grid}.billing-register-tools input{min-width:0;width:100%}.billing-form-grid{grid-template-columns:1fr}.billing-form-grid .wide{grid-column:auto}.billing-invoice-summary{justify-content:flex-start;flex-wrap:wrap}}

/* V1.10 company-centered Contracts & Billing */
.billing-action-more{margin:11px 2px 0;color:var(--muted);font-size:11px;font-weight:750}
.button.danger{border-color:#e7aaa4;background:#fff4f2;color:#a32d25}.button.danger:hover{background:#ffe9e6}.button.success{border-color:#97c7aa;background:#e9f7ee;color:#156b3c}.billing-three-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.billing-three-cards article{padding:22px}.billing-three-cards article b{font-size:30px}.billing-action-center{margin-bottom:17px}.billing-action-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:15px}.billing-action-count{min-height:83px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.billing-action-count b{display:block;color:var(--navy);font-size:23px}.billing-action-count span{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-weight:850;line-height:1.35;text-transform:uppercase;letter-spacing:.04em}.billing-action-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.billing-action-company{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 15px;border:1px solid #ead19a;border-radius:11px;background:#fffaf0;text-align:left;cursor:pointer}.billing-action-company b{display:block;color:var(--navy);font-size:14px}.billing-action-company small{display:block;margin-top:6px;color:#725b22;font-size:11px;line-height:1.65}.billing-action-company small i{display:inline-block;margin-right:4px;padding:2px 6px;border-radius:999px;background:#f6e6ba;color:#684b0f;font-style:normal;font-weight:850}.billing-action-company strong{color:var(--blue);white-space:nowrap;font-size:12px}.billing-filter-groups{display:grid;gap:11px;padding:0 20px 14px}.billing-filter-groups>div{display:grid;grid-template-columns:62px 1fr;gap:9px;align-items:center}.billing-filter-groups>div>span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.billing-filter-groups .billing-filter-tabs{padding:0}.billing-register-tools{display:flex;gap:8px}.billing-register-tools select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;background:#fff;color:var(--ink);font-weight:800}.billing-profile-table{min-width:980px}.billing-profile-table td:first-child{min-width:230px}.billing-tag-stack{display:flex;flex-wrap:wrap;gap:5px;max-width:330px}.billing-satisfied-check{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:50%;background:var(--green);color:#fff;font-size:12px}.billing-satisfied-large{align-self:start;padding:7px 10px;border-radius:999px;background:#e7f6ed;color:#156b3c;font-size:11px;font-weight:900}.billing-deleted-banner{display:grid;gap:4px;margin:17px 0;padding:15px 17px;border:1px solid #e7aaa4;border-radius:12px;background:#fff4f2}.billing-deleted-banner b{color:#a32d25}.billing-deleted-banner span{color:#7c514d;font-size:12px}.billing-setup-card{margin:17px 0;padding:17px;border:1px solid #e1c57d;border-radius:13px;background:#fffaf0}.billing-setup-card .panel-heading{margin:0 0 12px}.billing-setup-card h4,.billing-services h4,.billing-invoices h4,.billing-updates h4{margin:2px 0;color:var(--navy);font-size:18px}.billing-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.billing-checklist span{display:flex;align-items:flex-start;gap:7px;padding:8px 10px;border-radius:9px;background:#fff;color:#775d25;font-size:11px;font-weight:750;line-height:1.35}.billing-checklist span i{color:#b37b08;font-style:normal}.billing-checklist span.complete{color:#2f5f42;background:#eef8f2}.billing-checklist span.complete i{color:var(--green)}.billing-setup-complete{display:flex;align-items:center;gap:11px;margin:17px 0;padding:13px 15px;border:1px solid #b7dbc5;border-radius:12px;background:#eef8f2}.billing-setup-complete>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}.billing-setup-complete div{display:grid;gap:2px}.billing-setup-complete b{color:#156b3c}.billing-setup-complete small{color:#527362}.billing-profile-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:17px 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}.billing-profile-summary>div{padding:15px;background:#f8fbfd}.billing-profile-summary span,.billing-service-facts span,.billing-profile-context span{display:block;color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.billing-profile-summary b,.billing-profile-context b{display:block;margin-top:6px;color:var(--navy)}.billing-profile-summary .billing-type{margin:2px}.billing-services,.billing-invoices,.billing-updates{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.billing-services>.panel-heading,.billing-invoices>.panel-heading,.billing-updates>.panel-heading{margin-bottom:12px}.billing-service-year>h4,.billing-invoice-year>h4{margin:12px 0}.billing-service-year>summary,.billing-invoice-year>summary,.billing-deleted-invoices>summary{cursor:pointer;padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:#f6f9fb;color:var(--navy);font-weight:850}.billing-service-year[open]>summary,.billing-invoice-year[open]>summary{margin-bottom:12px}.billing-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.billing-service-card{padding:16px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;background:#fff}.billing-service-card.satisfied{border-color:#9dccb0;border-left-color:var(--green);background:#fbfefc}.billing-service-card.captive{border-left-color:var(--gold);background:#fffdf8}.billing-service-heading{display:flex;justify-content:space-between;gap:12px}.billing-service-heading h4{margin:8px 0 3px;font-size:15px}.billing-service-heading small{color:var(--muted)}.billing-service-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0}.billing-service-facts>div{padding:9px 10px;border-radius:9px;background:#f3f7f9}.billing-service-facts b{display:block;margin-top:4px;color:var(--navy);font-size:13px}.billing-service-actions,.row-actions{display:flex;flex-wrap:wrap;gap:6px}.billing-difference{margin:10px 0;padding:9px 10px;border-radius:8px;background:#fff7e4;color:#795815;font-size:11px}.billing-difference.over{background:#fff1ef;color:#9b332b}.billing-invoice-year{margin:12px 0}.billing-invoice-year>.table-scroll{border:1px solid var(--line);border-radius:11px}.billing-deleted-invoices{margin:9px 0}.billing-deleted-invoices>summary{background:#fff4f2;color:#8e3c35}.deleted-row{opacity:.78;background:#fff8f7}.billing-updates form{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:end}.billing-updates textarea{width:100%;border:1px solid #bdc8d2;border-radius:10px;padding:11px;resize:vertical}.billing-update-list{display:grid;gap:8px;margin-top:12px}.billing-update-list article{padding:13px 15px;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:10px;background:#f8fbfd}.billing-update-list p{margin:0 0 6px;white-space:pre-wrap;line-height:1.5}.billing-update-list small{color:var(--muted);font-size:10px;font-weight:750}.billing-profile-context{padding:13px;border:1px solid var(--line);border-radius:10px;background:#f6f9fb}.billing-checkbox{display:flex!important;grid-column:1/-1;grid-template-columns:auto 1fr!important;align-items:center}.billing-checkbox input{width:auto}.billing-checkbox span{font-weight:800}.billing-form-grid [readonly]{background:#eef3f6;color:var(--navy);font-weight:850}.billing-confirm-dialog{width:min(560px,calc(100vw - 30px));border:0;border-radius:18px;padding:0;box-shadow:0 30px 90px rgba(0,20,45,.3)}.billing-confirm-dialog::backdrop{background:rgba(7,20,39,.62);backdrop-filter:blur(3px)}.billing-confirm-dialog form{padding:23px}.billing-confirm-dialog form>label{display:grid;gap:7px;margin-top:18px;font-size:13px;font-weight:800}.billing-confirm-dialog textarea{border:1px solid #bdc8d2;border-radius:10px;padding:11px}.billing-work-list{display:grid;gap:7px;max-height:380px;overflow:auto;margin:15px 0}.billing-work-list label{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:11px;border:1px solid var(--line);border-radius:9px;background:#f8fbfd}.billing-work-list input{margin-top:3px}.billing-work-list span{display:grid;gap:3px}.billing-work-list small{color:var(--muted)}
@media(max-width:1250px){.billing-action-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.billing-three-cards,.billing-action-list,.billing-profile-summary,.billing-checklist{grid-template-columns:1fr}.billing-action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-register-tools,.billing-updates form{display:grid}.billing-filter-groups>div{grid-template-columns:1fr}.billing-service-facts{grid-template-columns:1fr}.billing-action-company{align-items:flex-start}}
@media(max-width:600px){.billing-service-grid{grid-template-columns:1fr}}

/* V1.11 coordinated billing, company aliases, and centered profile modal */
.company-secondary-name{display:block!important;margin-top:4px;color:var(--muted);font-size:10px;font-weight:650}.client-link .company-secondary-name{text-align:left}.model-pill+.billing-type{margin-left:6px}.billing-service-card.dot{border-left-color:#397ab8;background:#fbfdff}.billing-drawer-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:clamp(18px,4vw,52px);background:rgba(7,20,39,.56);backdrop-filter:blur(3px)}.billing-profile-drawer{position:relative;width:min(1120px,100%);max-height:min(90vh,980px);display:flex;flex-direction:column;background:#eef3f6;border:1px solid rgba(255,255,255,.7);border-radius:22px;box-shadow:0 28px 90px rgba(7,20,39,.38);overflow:hidden}.billing-drawer-toolbar{flex:0 0 auto;display:flex;justify-content:flex-end;padding:12px 18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}.billing-drawer-body{min-height:0;padding:18px;overflow:auto;overscroll-behavior:contain}.billing-drawer-body .billing-detail{margin:0;scroll-margin:0}.billing-drawer-body .billing-detail-heading{position:relative}.billing-decline-only textarea{width:100%}
@media(max-width:820px){.billing-drawer-backdrop{padding:10px}.billing-profile-drawer{width:100%;max-height:calc(100dvh - 20px);border-radius:16px}.billing-drawer-body{padding:12px}.billing-drawer-toolbar{padding:10px 12px}.company-secondary-name{font-size:9px}}

/* V1.12 self-explanatory billing workflow */
.billing-action-center{padding:0;overflow:hidden;border-color:#cfdbe5;box-shadow:0 8px 22px rgba(20,42,68,.06)}.billing-action-center>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;cursor:pointer;list-style:none}.billing-action-center>summary::-webkit-details-marker{display:none}.billing-action-center>summary span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px}.billing-action-center>summary i{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:var(--gold)}.billing-action-center>summary b{color:var(--navy);font-size:16px}.billing-action-center>summary small{color:var(--muted)}.billing-action-center>summary strong{color:var(--blue);font-size:12px}.billing-action-center[open]>summary{border-bottom:1px solid var(--line)}.billing-action-body{padding:16px 20px 20px}.billing-action-filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}.billing-action-filters button{border:1px solid var(--line);border-radius:999px;padding:7px 10px;background:#fff;color:#52606c;font-size:11px;font-weight:800;cursor:pointer}.billing-action-filters button.active{border-color:#8db6d5;background:#eaf3fa;color:var(--navy)}.billing-action-filters b{margin-left:4px}.billing-action-list{grid-template-columns:1fr}.billing-action-company{border-color:var(--line);background:#fff;padding:12px 14px}.billing-action-company:hover{border-color:#9abbd2;background:#f8fbfd}.billing-action-company small{color:var(--muted);line-height:1.55}.billing-action-company small i{background:transparent;color:inherit;padding:0}.billing-action-more{margin:12px 0 0;color:var(--muted);font-size:11px}
.billing-setup-collapsible{margin:17px 0;border:1px solid #d7e1e8;border-radius:13px;background:#fff;overflow:hidden}.billing-setup-collapsible.setup-needed{border-color:#b9cbd7;background:#f8fbfd}.billing-setup-collapsible>summary,.billing-setup-header{display:flex;align-items:center;gap:10px;padding:13px 15px;list-style:none}.billing-setup-collapsible>summary{cursor:pointer}.billing-setup-collapsible>summary::-webkit-details-marker{display:none}.billing-setup-collapsible>summary>span,.billing-setup-header>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8f1f6;color:var(--blue);font-weight:900}.billing-setup-collapsible.complete>summary>span{background:#e9f7ee;color:var(--green)}.billing-setup-collapsible>summary>b,.billing-setup-header>b{flex:1;color:var(--navy)}.billing-setup-collapsible>summary>strong{color:var(--blue);font-size:11px}.billing-setup-content{display:grid;gap:12px;padding:0 15px 15px;border-top:1px solid #edf1f4}.billing-checklist.pending{padding-top:13px}.billing-checklist.pending span{background:#f4f8fa}.billing-setup-content>.button{justify-self:start}
.billing-detail-heading{position:sticky!important;top:-18px;z-index:4;margin:-18px -18px 16px;padding:18px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.billing-profile-close{flex:0 0 auto}.billing-admin-menu{position:relative}.billing-admin-menu>summary{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);font-weight:900;cursor:pointer;list-style:none}.billing-admin-menu>summary::-webkit-details-marker{display:none}.billing-admin-menu[open]>.button{position:absolute;right:0;top:48px;z-index:6;width:max-content;box-shadow:var(--shadow)}.billing-type.supplemental{background:#eef0fb;color:#4e3f91}.billing-confirm-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:9px}.billing-confirm-check input{width:auto}.billing-service-actions .success{background:#e9f7ee;color:#156b3c;border-color:#97c7aa}.billing-service-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:820px){.billing-detail-heading{top:-12px;margin:-12px -12px 14px;padding:14px}.billing-detail-heading .title-actions{gap:6px}.billing-detail-heading .button{padding:8px 9px;font-size:11px}.billing-action-center>summary{padding:14px}.billing-action-body{padding:13px}.billing-setup-collapsible>summary{align-items:flex-start}.billing-setup-collapsible>summary>strong{display:none}}

/* Keep the portfolio overview fully visible without a wide empty action gap. */
.overview-table{min-width:0;table-layout:fixed}
.overview-table th,.overview-table td{padding-left:10px;padding-right:10px}
.overview-table th:nth-child(1),.overview-table td:nth-child(1){width:17%}
.overview-table th:nth-child(2),.overview-table td:nth-child(2){width:10%}
.overview-table th:nth-child(3),.overview-table td:nth-child(3){width:7%}
.overview-table th:nth-child(4),.overview-table td:nth-child(4){width:13%}
.overview-table th:nth-child(5),.overview-table td:nth-child(5){width:18%}
.overview-table th:nth-child(6),.overview-table td:nth-child(6){width:17%}
.overview-table th:nth-child(7),.overview-table td:nth-child(7){width:12%}
.overview-table th:nth-child(8),.overview-table td:nth-child(8){width:6%;text-align:right}
.overview-table .captive-balance-cell,.overview-table .balance-cell,.overview-table .wide-balance{min-width:0}
.overview-table td:last-child .button{white-space:nowrap}

/* Annual Safety owns a dedicated eight-column layout. Captive and Annual
   balances never borrow width from each other, while the report date and
   company-profile action remain compact adjacent columns. */
.account-section[data-account-section="annual"] .overview-table{table-layout:fixed;min-width:0}
.account-section[data-account-section="annual"] .overview-table th{white-space:normal;line-height:1.25;vertical-align:middle}
.account-section[data-account-section="annual"] .overview-table th:nth-child(1),.account-section[data-account-section="annual"] .overview-table td:nth-child(1){width:16%}
.account-section[data-account-section="annual"] .overview-table th:nth-child(2),.account-section[data-account-section="annual"] .overview-table td:nth-child(2){width:9%}
.account-section[data-account-section="annual"] .overview-table th:nth-child(3),.account-section[data-account-section="annual"] .overview-table td:nth-child(3){width:7%}
.account-section[data-account-section="annual"] .overview-table th:nth-child(4),.account-section[data-account-section="annual"] .overview-table td:nth-child(4){width:12%}
.account-section[data-account-section="annual"] .overview-table th:nth-child(5),.account-section[data-account-section="annual"] .overview-table td:nth-child(5){width:20%;padding-right:12px}
.account-section[data-account-section="annual"] .overview-table th:nth-child(6),.account-section[data-account-section="annual"] .overview-table td:nth-child(6){width:19%;padding-left:12px}
.account-section[data-account-section="annual"] .overview-table th:nth-child(7),.account-section[data-account-section="annual"] .overview-table td:nth-child(7){width:9%;padding-right:6px}
.account-section[data-account-section="annual"] .overview-table th:nth-child(8),.account-section[data-account-section="annual"] .overview-table td:nth-child(8){width:8%;padding-left:6px}
.account-section[data-account-section="annual"] .overview-table th:nth-child(5),.account-section[data-account-section="annual"] .overview-table th:nth-child(6),.account-section[data-account-section="annual"] .overview-table th:nth-child(7),.account-section[data-account-section="annual"] .overview-table th:nth-child(8){text-align:center}
.account-section[data-account-section="annual"] .captive-period-stack,.account-section[data-account-section="annual"] .balance-cell>.mini-balance{width:100%;min-width:0}
.account-section[data-account-section="annual"] .captive-period-stack{gap:16px}
.account-section[data-account-section="annual"] .mini-balance small{max-width:none}
.account-section[data-account-section="annual"] .annual-update-cell{text-align:right;white-space:nowrap}
.account-section[data-account-section="annual"] .annual-profile-cell{text-align:left}
.account-section[data-account-section="annual"] .annual-profile-cell .button{padding-left:8px;padding-right:8px}

/* Captive-only rows have open space in the hours column; keep the value visually centered. */
.overview-table .captive-hours-cell{text-align:center}

/* Captive-only overview uses a dedicated five-column rhythm. */
.account-section[data-account-section="captive"] .overview-table{table-layout:fixed;min-width:0}
.account-section[data-account-section="captive"] .overview-table th:nth-child(1),.account-section[data-account-section="captive"] .overview-table td:nth-child(1){width:30%}
.account-section[data-account-section="captive"] .overview-table th:nth-child(2),.account-section[data-account-section="captive"] .overview-table td:nth-child(2){width:14%;text-align:center}
.account-section[data-account-section="captive"] .overview-table th:nth-child(3),.account-section[data-account-section="captive"] .overview-table td:nth-child(3){width:31%}
.account-section[data-account-section="captive"] .overview-table th:nth-child(4),.account-section[data-account-section="captive"] .overview-table td:nth-child(4){width:15%;white-space:normal}
.account-section[data-account-section="captive"] .overview-table th:nth-child(5),.account-section[data-account-section="captive"] .overview-table td:nth-child(5){width:10%;text-align:right}
.account-section[data-account-section="captive"] .captive-update-cell{white-space:nowrap}

/* iPad landscape retains the same visual lanes with slightly tighter cell padding. */
@media (min-width:1000px) and (max-width:1366px){
  .account-section[data-account-section="annual"] .overview-table th,.account-section[data-account-section="annual"] .overview-table td{padding-left:8px;padding-right:8px}
  .account-section[data-account-section="annual"] .overview-table th:nth-child(5),.account-section[data-account-section="annual"] .overview-table td:nth-child(5){padding-right:10px}
  .account-section[data-account-section="annual"] .overview-table th:nth-child(6),.account-section[data-account-section="annual"] .overview-table td:nth-child(6){padding-left:10px}
  .account-section[data-account-section="annual"] .overview-table th:nth-child(7),.account-section[data-account-section="annual"] .overview-table td:nth-child(7){padding-right:5px}
  .account-section[data-account-section="annual"] .overview-table th:nth-child(8),.account-section[data-account-section="annual"] .overview-table td:nth-child(8){padding-left:5px}
  .account-section[data-account-section="annual"] .captive-period-stack{gap:14px}
  .account-section[data-account-section="annual"] .annual-profile-cell .button{font-size:11px;padding-left:7px;padding-right:7px}
}

/* V1.14 incident timeline completion styling. */
.incident-update-meta .timeline-complete{background:#e8f5ed;color:#176c40;font-weight:850}
/* V1.16 direct-bill work queue */
.direct-bill-queue{margin-bottom:17px;padding:0;overflow:hidden;border-color:#d9bd75}.direct-bill-queue>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;list-style:none;cursor:pointer;background:#fffaf0}.direct-bill-queue>summary::-webkit-details-marker{display:none}.direct-bill-queue>summary span{display:grid;gap:3px}.direct-bill-queue>summary b{color:var(--navy);font-size:16px}.direct-bill-queue>summary small{color:#75613a}.direct-bill-queue>summary strong{color:#8a5d00;font-size:12px}.direct-bill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px 20px 20px}.direct-bill-list article{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff}.direct-bill-list article>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.direct-bill-list article>div:first-child>b{color:var(--navy)}.direct-bill-totals{display:grid;grid-template-columns:1fr auto auto;gap:12px;padding:10px;border-radius:8px;background:#f3f7f9;color:var(--muted);font-size:12px}.direct-bill-totals b{color:var(--navy)}.direct-bill-totals strong{color:var(--green)}.direct-bill-coverage-note{margin:0;padding:9px 10px;border-left:3px solid #d89b19;border-radius:6px;background:#fff8e8;color:#725316;font-size:11px;line-height:1.45}.direct-bill-coverage-note b{color:#8a5d00}.direct-bill-list article>small{color:var(--muted);font-size:10px}.direct-bill-setup-note{color:#8a5d00;font-size:11px;font-weight:800}.direct-bill-clear{display:flex;align-items:center;gap:12px;margin-bottom:17px;padding:14px 18px;border-color:#b7dbc5;background:#eef8f2}.direct-bill-clear>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;font-weight:900}.direct-bill-clear div{display:grid;gap:2px}.direct-bill-clear b{color:#156b3c}.direct-bill-clear small{color:#527362}.direct-bill-items{margin:0;border:1px solid #d9e4ec;border-radius:10px;background:#fff}.direct-bill-items>summary{padding:8px 10px;cursor:pointer;color:#075b9c;font-weight:800;font-size:.8rem}.direct-bill-items>div{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border-top:1px solid #e5edf3}.direct-bill-items span{display:grid;gap:2px;min-width:0}.direct-bill-items b{font-size:.82rem}.direct-bill-items small{font-size:.72rem;color:#64748b}.direct-bill-items strong{white-space:nowrap;font-size:.8rem;color:#102a5f}@media(max-width:820px){.direct-bill-list{grid-template-columns:1fr;padding:13px}.direct-bill-totals{grid-template-columns:1fr auto}.direct-bill-totals strong{grid-column:1/-1}.direct-bill-queue>summary{padding:14px}}

/* V1.16.1 keeps direct-bill review available without taking over the billing landing page. */
.billing-page-actions{position:relative}.billing-page-actions>summary{position:relative;display:grid;place-items:center;width:46px;height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--navy);font-size:20px;font-weight:900;line-height:1;letter-spacing:.08em;cursor:pointer;list-style:none}.billing-page-actions>summary::-webkit-details-marker{display:none}.billing-page-actions.has-attention>summary{border-color:#e4a6a0;color:var(--red);box-shadow:0 0 0 3px #fff2f0}.billing-action-count{position:absolute;right:-8px;top:-9px;display:grid;place-items:center;min-width:21px;height:21px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:var(--red);color:#fff;font-size:10px;letter-spacing:0}.billing-page-actions-menu{position:absolute;z-index:60;top:50px;right:0;display:grid;min-width:250px;padding:7px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(20,42,68,.2)}.billing-page-actions:not([open]) .billing-page-actions-menu{display:none}.billing-page-actions-menu button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:11px 12px;border:0;border-radius:8px;background:#fff;color:var(--navy);font-size:12px;font-weight:850;text-align:left;cursor:pointer}.billing-page-actions-menu button:hover{background:#eef5fa}.billing-page-actions-menu button.needs-attention{color:var(--red)}.billing-page-actions-menu b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--red);color:#fff;font-size:10px}.billing-page-actions-menu small{color:var(--green);font-weight:850}.direct-bill-dialog{width:min(1120px,calc(100vw - 30px))}.direct-bill-dialog form{max-height:90vh;overflow:auto}.direct-bill-dialog .dialog-header{position:sticky;top:-23px;z-index:2;margin:-23px -23px 18px;padding:22px 23px 17px;border-bottom:1px solid var(--line);background:#fff}.direct-bill-dialog .dialog-header p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:12px}.direct-bill-dialog .direct-bill-list{padding:0}.direct-bill-dialog .direct-bill-clear{margin:0;box-shadow:none}@media(max-width:720px){.billing-page-actions-menu{right:auto;left:0}.direct-bill-dialog .direct-bill-list{padding:0}.billing-title .title-actions{align-items:center}}
/* V1.17 workflow cleanup */
.billing-primary-actions{display:grid;gap:8px;min-width:220px}.billing-primary-actions .button{width:100%;justify-content:center;min-height:40px}.billing-primary-actions .needs-attention{border-color:#d9a4a0}.billing-action-count-inline{display:inline-grid;place-items:center;min-width:21px;height:21px;margin-left:6px;padding:0 6px;border-radius:999px;background:var(--red);color:#fff;font-size:10px}.billing-workflow-tabs{display:flex;gap:8px;margin:0 0 18px;padding:5px;border:1px solid var(--line);border-radius:12px;background:#fff;width:max-content;max-width:100%}.billing-workflow-tabs button{border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:850;padding:10px 14px;cursor:pointer}.billing-workflow-tabs button.active{background:var(--navy);color:#fff}.billing-workflow-tabs b{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:5px;padding:0 5px;border-radius:999px;background:rgba(255,255,255,.18);font-size:10px}.billing-workflow-tabs button:not(.active) b{background:#eef3f7;color:var(--navy)}
.billing-progress-cell{min-width:170px}.billing-progress-cell>div:first-child{display:flex;align-items:baseline;gap:3px}.billing-progress-cell span{color:var(--muted);font-size:11px}.billing-progress-track{height:7px;margin-top:7px;border-radius:999px;background:#e9eef2;overflow:hidden}.billing-progress-track>span{display:block;height:100%;border-radius:inherit;background:var(--green)}.billing-attention-state{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.billing-attention-state.current{background:#e8f5ed;color:#1d7048}.billing-attention-state.upcoming{background:#fff4d7;color:#76570c}.billing-attention-state.needs-attention{background:#fae6e4;color:#9a2f28}.billing-workflow-table td small{display:block;margin-top:4px;max-width:280px;color:var(--muted)}
.mini-track{position:relative}.mini-track .allocation-divider{position:absolute;z-index:2;top:-3px;bottom:-3px;width:2px;margin-left:-1px;background:#17334f;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.7)}.mini-balance .balance-numbers span b{font-size:11px}.mini-balance .balance-numbers span{max-width:72%;line-height:1.15}
.portfolio-setup-needed{display:grid;gap:4px;padding:10px 11px;border:1px dashed #d6b861;border-radius:9px;background:#fffaf0;color:#76570c}.portfolio-setup-needed>b{color:var(--navy);font-size:11px}.portfolio-setup-needed>span{font-size:12px;font-weight:900}.portfolio-setup-needed>small{color:#75613a;font-size:9px;line-height:1.35}
.direct-bill-review-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px!important;align-items:center}.direct-bill-resolution-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.incident-removed-links{margin-top:10px;border-top:1px solid var(--line);padding-top:8px}.incident-removed-links>summary{cursor:pointer;color:var(--muted);font-size:11px;font-weight:850}.incident-removed-links>div{display:grid;gap:6px;margin-top:8px}.incident-removed-links>div>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;border-radius:8px;background:#f7f9fb}.incident-removed-links small{display:block;color:var(--muted);margin-top:2px}
@media(max-width:720px){.billing-workflow-tabs{width:100%}.billing-workflow-tabs button{flex:1;padding:9px 8px}.billing-primary-actions{min-width:0;width:100%}.direct-bill-review-row{grid-template-columns:1fr}.direct-bill-review-row>strong{justify-self:start}}
.annual-total-headline{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin:8px 0 6px}.annual-total-headline>b{font-size:1.05rem;color:#153b5b}.annual-total-headline span{font-size:.72rem;color:#647383;white-space:nowrap}.annual-total-headline i{font-style:normal;color:#217446;font-weight:700;margin-left:7px}
.billing-workflow-tabs.three-view{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(760px,100%)}.billing-workflow-tabs.three-view button{white-space:nowrap}.all-accounts-table{min-width:1080px}
.account-history-dialog{width:min(720px,calc(100vw - 32px))}.account-history-list{display:grid;gap:0;max-height:60vh;overflow:auto;padding:0 22px 22px}.account-history-list article{display:grid;grid-template-columns:150px 1fr auto;gap:8px 16px;padding:14px 2px;border-bottom:1px solid #dfe6ec}.account-history-list time,.account-history-list span,.account-history-list small{color:#667788;font-size:.8rem}.account-history-list small{grid-column:2/-1}
.activity-audit-changes{grid-column:2/-1;display:grid;gap:6px}.activity-audit-changes small{grid-column:auto;color:var(--ink);line-height:1.4}.activity-history-privacy{margin:0;padding:12px 22px 18px;border-top:1px solid var(--line);color:var(--muted);font-size:.8rem}.activity-entry-history-dialog>.dialog-header{padding:22px 22px 0}.activity-entry-history-dialog>.dialog-header p:last-child{margin:5px 0 0;color:var(--muted)}
@media(max-width:900px){.billing-workflow-tabs.three-view{grid-template-columns:repeat(3,minmax(180px,1fr));overflow-x:auto}.annual-total-headline{align-items:flex-start;flex-direction:column}.account-history-list article{grid-template-columns:1fr}.account-history-list small,.activity-audit-changes{grid-column:auto}}

/* V1.19 contract governance and compact billing workspace */
.billing-service-card.awaiting-signature{border-color:#d7b45d;background:linear-gradient(90deg,#fffaf0 0,#fff 34%);box-shadow:inset 4px 0 0 #d7b45d}.billing-service-card.awaiting-signature .billing-service-heading small{color:#775a16;font-weight:850}
.billing-heading-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.billing-heading-controls .billing-primary-actions{display:flex;align-items:center;gap:7px;min-width:0}.billing-heading-controls .billing-primary-actions .button{width:auto;min-height:34px;padding:7px 10px;font-size:11px}.billing-heading-controls .billing-primary-actions .button.primary{background:#fff;color:var(--navy);border-color:#aebdca}.billing-heading-controls .billing-primary-actions .needs-attention{color:var(--navy)}
.billing-filter-toolbar{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;margin:-4px 0 14px;padding:0 0 14px;border-bottom:1px solid var(--line)}.billing-filter-toolbar label{display:grid;gap:4px}.billing-filter-toolbar label span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.billing-filter-toolbar select{min-width:135px;border:1px solid var(--line);border-radius:8px;padding:7px 9px;background:#fff;color:var(--ink);font-size:11px;font-weight:750}
.billing-register .billing-profile-table th:not(:first-child),.billing-register .billing-profile-table td:not(:first-child){text-align:center}.billing-register .billing-profile-table th:first-child,.billing-register .billing-profile-table td:first-child{text-align:left}.billing-register .billing-profile-table td{vertical-align:middle}.billing-register .billing-profile-table td>small{display:block;margin:4px auto 0;line-height:1.35}.billing-register .billing-profile-table td:first-child>small{margin-left:0}.billing-register .billing-profile-table .number{text-align:center}.billing-register .billing-profile-table .button{margin-inline:auto}.billing-register .billing-tag-stack{flex-direction:column;align-items:center;justify-content:center;gap:5px;max-width:none}.billing-register .billing-progress-cell{display:grid;justify-items:center}.billing-register .billing-progress-cell>div:first-child{justify-content:center}.billing-register .billing-progress-track{width:min(220px,100%)}.billing-register .billing-workflow-table td small{margin-left:auto;margin-right:auto;text-align:center}
.billing-attention-state.billing-complete{background:#e8f5ed;color:#1d7048}.billing-attention-state.expiring{background:#fff4d7;color:#76570c}.billing-attention-state.expired{background:#eef1f4;color:#596675}
.billing-invoice-year-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.billing-invoice-year-heading h4{margin:0}.billing-deleted-invoices{position:relative;margin:0}.billing-deleted-invoices>summary.button{display:inline-flex;padding:6px 9px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:#fff!important;color:var(--muted)!important;font-size:11px!important;list-style:none}.billing-deleted-invoices>summary::-webkit-details-marker{display:none}.billing-deleted-invoices[open]{width:100%;margin-top:8px}.billing-deleted-invoices[open]>.table-scroll{margin-top:8px;border:1px solid var(--line);border-radius:10px}.billing-invoice-year .empty-state.compact{margin:8px 0;padding:12px;background:transparent;border:1px dashed var(--line)}
@media(max-width:900px){.billing-heading-controls{align-items:stretch;flex-direction:column}.billing-heading-controls .billing-primary-actions,.billing-register-tools{justify-content:flex-end}.billing-filter-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.billing-filter-toolbar select{width:100%}}
/* Captive producer balances get independent column space so stacked periods never overlap Annual. */
.producer-table .balance-cell{min-width:300px;vertical-align:top}.producer-table .captive-period-stack{width:100%;min-width:0}.producer-table .mini-balance{min-width:0}

/* V1.22.3 — compact contractual commitments and incident-style work attachment */
.contracted-contract-context{margin-top:.45rem;color:var(--slate);font-size:.73rem;font-weight:800;letter-spacing:.075em;line-height:1.35;text-transform:uppercase}
.contract-work-choice-dialog form{min-width:min(520px,calc(100vw - 2rem))}
.contract-work-choice-dialog label{display:grid;gap:.45rem}
.contract-work-choice-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.25rem}
.contracted-activities-panel{padding:0;overflow:hidden}.contracted-activities-panel .panel-heading{padding:18px 20px 14px;margin:0}.contracted-activities-panel .panel-heading p{margin:4px 0 0;color:var(--muted)}
.contracted-activity-table{min-width:880px}.contracted-activity-table th:not(:first-child),.contracted-activity-table td:not(:first-child){text-align:center}.contracted-activity-table td{vertical-align:middle}.contracted-activity-table td:first-child{min-width:280px}.contracted-activity-table td:first-child>b,.contracted-activity-table td:first-child>small,.contracted-activity-table td:nth-child(2)>small,.contracted-activity-table td:nth-child(4)>small{display:block}.contracted-activity-table td small{margin-top:3px;color:var(--muted);font-size:10px}.contracted-category{display:block;margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.contracted-activity-row.complete{background:#fbfefc}
.contracted-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f5;color:#536174;font-size:10px;font-weight:900;white-space:nowrap}.contracted-status.complete{background:#e3f5e9;color:#15713e}.contracted-row-actions{display:flex;justify-content:center;gap:6px;white-space:nowrap}
.contracted-work-row>td{padding:0!important;background:#f7fafc}.contract-work-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;border-top:1px solid var(--line)}.contract-work-heading>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.contract-work-heading small{color:var(--muted)}.contract-work-table{min-width:820px;background:#fff}.contract-work-table th:not(:first-child),.contract-work-table td:not(:first-child){text-align:left}.contract-work-table td:nth-child(5){text-align:center}.contract-work-table td small{display:block;margin-top:3px;color:var(--muted)}.contract-work-dialog{max-width:1180px}.contract-work-dialog .dialog-header p{margin:4px 0 0;color:var(--muted)}
.billing-commitment-summary{margin:12px 0;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#f8fbfd}.billing-commitment-summary>div{display:flex;justify-content:space-between;gap:12px}.billing-commitment-summary>div span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.billing-commitment-summary>div b{color:var(--navy);font-size:11px}.billing-commitment-summary ul{display:grid;gap:5px;margin:9px 0 0;padding:8px 0 0;border-top:1px solid var(--line);list-style:none}.billing-commitment-summary li{display:flex;justify-content:space-between;gap:12px;font-size:10px}.billing-commitment-summary li span{color:var(--ink);font-weight:750}.billing-commitment-summary li small{color:var(--muted);white-space:nowrap}.billing-commitment-summary li.more{color:var(--muted);font-weight:800}.commitment-manager-dialog{max-width:920px}.commitment-manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.commitment-manager-toolbar span{color:var(--muted);font-size:12px}.commitment-manager-table{min-width:720px}.commitment-manager-table td:first-child span,.commitment-manager-table td:first-child b{display:block}.commitment-manager-table td:first-child span{margin-bottom:3px;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.commitment-manager-table td:not(:first-child){text-align:center}.commitment-manager-table .row-actions{justify-content:center}.commitment-editor-dialog{max-width:720px}
.billing-form-grid label>small{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-weight:600;line-height:1.35}
@media(max-width:900px){.contract-work-heading,.commitment-manager-toolbar{align-items:stretch;flex-direction:column}.contract-work-heading>div:last-child{justify-content:flex-start}.billing-commitment-summary li{align-items:flex-start;flex-direction:column;gap:2px}.billing-commitment-summary li small{white-space:normal}}

/* V1.23 workflow clarity */
.portfolio-pending-contract{display:inline-flex;margin:0 0 6px;padding:3px 7px;border-left:3px solid #c99520;background:#fff9e8;color:#71530d;font-size:.72rem;font-weight:800;border-radius:3px}.producer-incident-hero{margin-top:0}

/* Portfolio account types use one stable text lane and reserve bubbles for modifiers. */
.portfolio-account-type{display:grid;align-content:center;gap:5px;min-height:62px}.portfolio-account-type>b{color:var(--navy);font-size:12px;line-height:1.25}.portfolio-account-modifiers{display:flex;align-items:center;gap:4px;min-height:18px;flex-wrap:wrap}.portfolio-account-chip{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;background:#e8f1f8;color:#174c78;font-size:9px;font-weight:900;line-height:1.2;white-space:nowrap}.portfolio-account-chip.dot{background:#e8f4fb;color:#075b9c}.portfolio-account-chip.control{background:#eee9fb;color:#5f438f}.portfolio-account-status{min-height:14px}.portfolio-account-warning{display:block;color:#8a5d00;font-size:9px;font-weight:900;line-height:1.25}.account-section[data-account-section="annual"] .overview-table td:nth-child(2),.account-section[data-account-section="pbs"] .overview-table td:nth-child(2){vertical-align:middle}

.duplicate-confirm-inline{display:flex!important;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid #dfe6ec;border-radius:8px;background:#f8fafc}.duplicate-confirm-inline input{width:auto;margin-top:2px}.duplicate-confirm-inline span{font-size:10px!important;line-height:1.4;text-transform:none!important;letter-spacing:0!important;color:var(--muted)!important}
/* Contract/Billing separation: payment-planning controls live in Billing. */
label:has(> [name="billing_structure"]),
label:has(> [name="invoice_cadence"]),
label:has(> [name="first_invoice_date"]),
label:has(> [name="billing_reference"]){display:none!important}
.incident-form-grid label:has(#incident-osha-due-date),
.incident-form-grid label:has(#incident-dot-due),
.incident-form-grid label:has(#incident-state-due),
.incident-form-grid label:has(#incident-corrective-status){display:none!important}
.incident-dialog.structure-editing #incident-event-sections,.incident-dialog.structure-editing #incident-track-sections,.incident-dialog.structure-editing label:has(#incident-stage){display:none!important}.incident-process-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.incident-process-card-head h4{margin-top:3px}.incident-critical-panel{margin-bottom:18px}.critical-date-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.critical-date-row>span{font-size:1.1rem}.critical-date-row small,.incident-workflow-history small{display:block;color:var(--muted);margin-top:3px}.critical-date-row.approaching>span{color:#b7791f}.critical-date-row.overdue>span{color:#b42318}.critical-date-row.overdue b{color:#8f1b13}.incident-critical-empty{display:flex;gap:10px;align-items:center;margin:0 0 18px;color:var(--muted)}.incident-workflow-history{margin:0 0 18px;padding:15px 20px}.incident-workflow-history>div{padding:10px 0;border-top:1px solid var(--line)}
.commitment-pool-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0}.commitment-pool-summary>div{display:grid;gap:4px;padding:12px;border:1px solid var(--line);border-radius:9px;background:#f8fbfd}.commitment-pool-summary span{color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.commitment-pool-summary b{font-size:1rem;color:var(--navy)}.billing-checkbox{pointer-events:none}.billing-checkbox input{pointer-events:auto}.contract-card-menu{position:relative}.contract-card-menu summary{cursor:pointer;list-style:none;border:1px solid var(--line);border-radius:7px;padding:5px 9px;font-weight:900}.contract-card-menu[open] .billing-delete-contract{position:absolute;right:0;bottom:calc(100% + 5px);z-index:3;white-space:nowrap;background:#fff}

/* V1.27.4 — consistent actions, separated billing, and compact incident closeout. */
.action-menu{position:relative}.action-menu>summary{display:grid;place-items:center;width:42px;height:40px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--navy);font-size:19px;font-weight:900;letter-spacing:.08em;line-height:1;list-style:none;cursor:pointer}.action-menu>summary::-webkit-details-marker{display:none}.action-menu-list{position:absolute;z-index:90;top:calc(100% + 6px);right:0;display:grid;min-width:220px;padding:7px;border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:0 18px 42px rgba(20,42,68,.22)}.action-menu:not([open]) .action-menu-list{display:none}.action-menu-list .button,.action-menu-list button,.action-menu-list a{display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:38px;padding:9px 11px;border:0!important;border-radius:7px!important;background:#fff!important;color:var(--navy)!important;font-size:12px!important;font-weight:850;text-align:left;white-space:nowrap;cursor:pointer}.action-menu-list .danger{color:var(--red)!important}.action-menu-list .button:hover,.action-menu-list button:hover,.action-menu-list a:hover{background:#eef5fa!important}.row-menu .action-menu-list{top:auto;right:0;bottom:calc(100% + 5px)}
.billing-service-actions{align-items:center;flex-wrap:wrap}.billing-service-actions .button{min-height:34px}.billing-setup-grid{display:grid;gap:10px}.billing-setup-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;padding:15px 16px;border:1px solid var(--line);border-left:4px solid #1680bd;border-radius:11px;background:#fff}.billing-setup-card.awaiting{border-left-color:#d1a137;background:#fffaf0}.billing-setup-card h4{margin:6px 0 3px;color:var(--navy)}.billing-setup-card small{color:var(--muted)}.billing-setup-card-value{display:grid;gap:3px;text-align:right}.billing-setup-card-value span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.billing-setup-card-value b{color:var(--navy)}.custom-installment-count[hidden]{display:none!important}
.workflow-critical-dates{margin:14px -14px -14px;padding:12px 14px;border-top:1px solid #ead18e;background:#fff9e8}.workflow-critical-dates>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.workflow-critical-dates>header>div{display:flex;align-items:center;gap:7px;color:#795b13}.workflow-critical-dates>small{display:block;margin-top:7px;color:#786b4d}.critical-triangle{color:#c68b00}.incident-critical-indicator{display:flex;align-items:center;gap:9px;width:100%;margin:0 0 14px;padding:10px 14px;border:1px solid #e5c56d;border-radius:9px;background:#fff6d9;color:#6f520c;text-align:left;cursor:pointer}.incident-critical-indicator span{color:#c68b00}.incident-critical-indicator small{margin-left:auto;color:#75613a}.incident-critical-indicator.overdue{border-color:#e3a39d;background:#fff0ee;color:#8f1b13}.incident-critical-indicator.overdue span{color:#b42318}.incident-table-row.has-critical-date>td{background:#fff9e8}.incident-table-row.has-critical-date>td:first-child{box-shadow:inset 4px 0 0 #d2a22f}.incident-table-row.critical-overdue>td{background:#fff0ee}.incident-table-row.critical-overdue>td:first-child{box-shadow:inset 4px 0 0 #b42318}
.incident-closeout-dialog{width:min(720px,calc(100vw - 32px))}.closeout-intro{margin:0 0 14px;color:var(--muted)}.closeout-warning-list{display:grid;gap:9px}.closeout-warning-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid #e5c56d;border-radius:9px;background:#fff9e8}.closeout-warning-row>div:first-child{display:grid;gap:3px}.closeout-warning-row small{color:#75613a}.closeout-inline-fix{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.closeout-inline-fix textarea{min-height:64px}.incident-closeout-dialog .dialog-actions .button{min-width:116px}.button.success:not(.billing-status){background:var(--navy);border-color:var(--navy);color:#fff}
@media(max-width:760px){.billing-setup-card{grid-template-columns:1fr}.billing-setup-card-value{text-align:left}.incident-critical-indicator{align-items:flex-start;flex-wrap:wrap}.incident-critical-indicator small{width:100%;margin-left:25px}.closeout-warning-row,.closeout-inline-fix{grid-template-columns:1fr}.action-menu-list{right:auto;left:0}.billing-detail-heading .action-menu-list{right:0;left:auto}}

/* V1.28 — visible contract actions, transitional billing plans, and responsive history. */
.billing-account-notes{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;align-items:start;margin-top:18px;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.billing-account-notes>div,.billing-account-notes>p{min-width:0}.billing-account-notes h4{margin:3px 0 0;color:var(--navy)}.billing-account-notes>p{grid-column:1/-1;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.billing-account-notes .button{grid-column:2;grid-row:1;align-self:center}.incident-reference-option{margin-top:18px}.incident-reference-option .incident-form-section-heading{margin-bottom:8px}.incident-reference-option .form-check{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}
.billing-plan-dialog{width:min(900px,calc(100vw - 30px))}.billing-plan-installments{display:grid;gap:10px;margin-top:15px}.billing-plan-row{display:grid;grid-template-columns:minmax(120px,.65fr) minmax(180px,1fr) minmax(150px,.75fr);gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:11px;background:#fff}.billing-plan-row>b{color:var(--navy)}.billing-plan-row label{margin:0}.billing-plan-row.locked{background:#f3f6f8;border-left:4px solid #6b7b8c}.billing-plan-row.locked>div{display:grid;gap:4px}.billing-plan-row.locked strong{color:var(--navy)}.billing-plan-field-label{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.billing-plan-total{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:14px;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:var(--line)}.billing-plan-total>div{display:grid;gap:5px;padding:13px 15px;background:#f8fbfd}.billing-plan-total span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.billing-plan-total b{color:var(--navy)}.billing-plan-total .negative{color:var(--red)}
.account-history-dialog{display:none;width:min(720px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;overflow:hidden}.account-history-dialog[open]{display:flex;flex-direction:column}.account-history-dialog .dialog-header{position:sticky;top:0;z-index:2;flex:0 0 auto;margin:0;padding:20px 22px;border-bottom:1px solid var(--line);background:#fff}.account-history-list{min-width:0;max-height:none;overflow-y:auto;overflow-x:hidden;padding:0 22px 22px}.account-history-list article{min-width:0}.account-history-list b,.account-history-list small{overflow-wrap:anywhere}
@media(max-width:760px){.billing-account-notes{grid-template-columns:1fr}.billing-account-notes .button{grid-column:1;grid-row:auto;justify-self:start}.billing-plan-row{grid-template-columns:1fr}.billing-plan-total{grid-template-columns:1fr}.account-history-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.account-history-list article{grid-template-columns:1fr;gap:4px}.account-history-list article time{order:2}.account-history-list article b{order:1}.account-history-list article span{order:3}.account-history-list article small{grid-column:1;order:4}}

/* V1.28.1 — critical details at a glance; completed workflow items join Updates. */
.incident-critical-indicator{display:grid;grid-template-columns:minmax(150px,.28fr) 1fr;gap:14px;width:100%;margin:0 0 14px;padding:12px 16px;border:1px solid #e5c56d;border-radius:9px;background:#fff6d9;color:#6f520c;text-align:left;cursor:default}.incident-critical-indicator>header{display:flex;align-items:flex-start;gap:9px;padding-top:2px}.incident-critical-indicator>header span{color:#c68b00}.incident-critical-summary-list{display:grid;gap:8px}.incident-critical-summary{display:grid;gap:3px;padding-left:12px;border-left:2px solid #d2a22f}.incident-critical-summary small{margin:0;color:#75613a}.incident-critical-indicator.overdue>header span,.incident-critical-summary.overdue strong{color:#b42318}.incident-critical-summary.overdue{border-left-color:#b42318}.incident-update-workflow .incident-update-marker{background:#1680bd}
@media(max-width:760px){.incident-critical-indicator{grid-template-columns:1fr}.incident-critical-indicator small{width:auto;margin-left:0}}

/* V1.29 — archived years, contract hierarchy, clean billing rows, and contract-level work. */
.billing-invoices .billing-setup-grid{grid-template-columns:1fr}.billing-service-heading{align-items:flex-start}.billing-contract-total{display:grid;gap:5px;min-width:190px;text-align:right}.billing-contract-total span,.billing-allocation-row span,.billing-value-hours-row span,.billing-date-row span,.billing-contract-work>div:first-child>span{display:block;color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.billing-contract-total b{color:var(--navy);font-size:27px;line-height:1;font-variant-numeric:tabular-nums}.billing-allocation-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 8px}.billing-allocation-row>div,.billing-value-hours-row>div,.billing-date-row>div{padding:12px 13px;border:1px solid #e1e8ed;border-radius:10px;background:#f7fafc}.billing-allocation-row b,.billing-value-hours-row b,.billing-date-row b{display:block;margin-top:6px;color:var(--navy);font-size:14px}.billing-value-hours-row,.billing-date-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:8px;margin:8px 0}.annual-hours-feature b{font-size:21px}.annual-hours-feature small{display:block;margin-top:5px;color:#5f6f81;font-size:9px;font-weight:900;letter-spacing:.06em}.billing-date-row{margin-bottom:15px}.prior-year-pill{margin-left:5px;background:#e5e8eb!important;color:#596575!important}.billing-prior-years{margin-top:16px}.billing-prior-years>summary{padding:13px 15px;border:1px solid var(--line);border-radius:10px;background:#f6f9fb;color:var(--navy);font-weight:900;cursor:pointer;list-style:none}.billing-prior-years>summary::before{content:"▸";display:inline-block;margin-right:8px}.billing-prior-years[open]>summary::before{transform:rotate(90deg)}.billing-prior-years>summary::-webkit-details-marker{display:none}.billing-prior-years[open]>div{display:grid;gap:15px;margin-top:12px}.prior-year-section>h4{margin:4px 0 10px}.billing-service-card.prior-year,.billing-setup-card.prior-year{background:#fff}.invoice-table-wrap{width:100%;overflow:visible;border:1px solid var(--line);border-radius:11px}.invoice-table{width:100%;min-width:0!important;table-layout:fixed}.invoice-table th,.invoice-table td{padding:10px 12px}.invoice-table th:nth-child(1){width:30%}.invoice-table th:nth-child(2){width:22%}.invoice-table th:nth-child(3){width:18%}.invoice-table th:nth-child(4){width:20%}.invoice-table th:nth-child(5){width:54px}.invoice-table .invoice-actions{width:54px;padding-left:4px;padding-right:6px}.invoice-table .row-menu .action-menu-list{right:0;left:auto}.billing-plan-row label>span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.billing-plan-row input{width:100%;min-height:42px;border:1px solid #bdc8d2;border-radius:9px;background:#fff;color:var(--navy);font-weight:800}.billing-plan-row input[type="date"]{appearance:auto;-webkit-appearance:auto}.billing-contract-work{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;margin:10px 0 14px;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:#f8fbfd}.billing-contract-work>div:first-child b{display:block;margin-top:4px;color:var(--navy)}.billing-contract-work-list{grid-column:1/-1;display:grid;gap:4px;color:var(--muted);font-size:11px}.contract-work-dialog{width:min(760px,calc(100vw - 30px))}.contract-work-dialog .dialog-header p:not(.eyebrow){margin:4px 0 0;color:var(--muted)}.contract-work-dialog-section{display:grid;gap:8px;margin-top:16px}.contract-work-dialog-section h3{margin:0;color:var(--navy);font-size:15px}.contract-work-dialog-section 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:9px;background:#f8fbfd}.contract-work-dialog-section article div{display:grid;gap:4px}.contract-work-dialog-section article small{color:var(--muted)}
@media(max-width:700px){.billing-contract-total{text-align:left;min-width:0}.billing-service-heading{display:grid}.billing-allocation-row,.billing-value-hours-row,.billing-date-row{grid-template-columns:1fr}.invoice-table-wrap{border:0}.invoice-table,.invoice-table tbody{display:block}.invoice-table thead{display:none}.invoice-table tr{display:grid;grid-template-columns:1fr auto;gap:6px 14px;margin-bottom:9px;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.invoice-table td{display:flex;justify-content:space-between;gap:12px;padding:0!important;border:0!important;text-align:right}.invoice-table td::before{content:attr(data-label);color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.invoice-table .invoice-actions{position:absolute;right:14px;width:auto}.invoice-table tr{position:relative;padding-right:58px}.invoice-table .invoice-actions::before{content:""}.billing-contract-work{grid-template-columns:1fr}.billing-contract-work .button{justify-self:start}.contract-work-dialog-section article{grid-template-columns:1fr}.billing-plan-row{grid-template-columns:1fr}}
/* V1.30 DOT workspace: high-level tracking only; no source-system detail duplication. */
.dot-portfolio-strip{display:grid;width:100%;grid-template-columns:1fr auto auto;align-items:center;gap:24px;padding:15px 22px;margin:20px 0;border:1px solid #d7e0e8;background:#fff;text-align:left;cursor:pointer;color:#0b1f5b}.dot-portfolio-strip:hover,.dot-portfolio-strip:focus-visible{border-color:#1594c5;box-shadow:0 0 0 3px rgba(21,148,197,.12)}.dot-portfolio-strip>span:last-child{font-weight:900}.dot-portfolio-strip span,.dot-summary-grid span,.dot-fleet-row span,.dot-account-footer span{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted,#65748a)}
.dot-title{align-items:end}.dot-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0}.dot-metrics button{display:grid;gap:7px;min-height:92px;padding:15px;border:1px solid #d7e0e8;border-radius:12px;background:#fff;text-align:left;color:#0b1f5b;cursor:pointer}.dot-metrics button span{font-size:10px;font-weight:900;letter-spacing:.08em}.dot-metrics button b{font-size:26px}.dot-metrics button.selected{border:2px solid #1594c5;box-shadow:0 0 0 3px rgba(21,148,197,.1)}.dot-metrics button:disabled{opacity:.45;cursor:default}.dot-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,auto) minmax(170px,auto);gap:12px;margin:18px 0 8px}.dot-toolbar input,.dot-toolbar select{min-width:0}.dot-showing{margin:8px 2px 14px;font-size:11px;font-weight:900;letter-spacing:.08em;color:#65748a}
.dot-account-list{display:grid;gap:16px}.dot-account-card{background:#fff;border:1px solid #d7e0e8;border-left:4px solid #1594c5;border-radius:14px;padding:20px;box-shadow:0 6px 18px rgba(11,31,91,.05)}
.dot-account-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.dot-account-heading h3{margin:3px 0 8px;color:#0b1f5b}.dot-account-heading .eyebrow{margin:0}.dot-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dot-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;background:#edf1f5;color:#56677b}.dot-status.current,.dot-status.complete{background:#e3f4ea;color:#156b3c}.dot-status.due-soon,.dot-status.upcoming{background:#fff2cc;color:#765600}.dot-status.overdue{background:#fde8e6;color:#a62b22}.dot-status.needs-information{background:#fff0dc;color:#874600}.dot-status.inactive{background:#e7eaee;color:#526071}.dot-fleet-compact{display:flex;align-items:center;flex-wrap:wrap;margin:0 0 14px;color:#0b1f5b}.dot-fleet-compact>b{padding-right:20px;color:#65748a;font-size:11px;font-weight:900;letter-spacing:.1em}.dot-fleet-compact span{padding:1px 30px;border-left:1px solid #cfd9e2;font-size:11px;font-weight:900;letter-spacing:.05em;color:#0b1f5b}.dot-fleet-compact span:first-of-type{padding-left:0;border-left:0}
.dot-process-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 12px;padding:13px 0;border-top:1px solid #dce4eb;border-bottom:1px solid #dce4eb}.dot-process-preview-item{display:flex;align-items:center;gap:10px;min-width:0;padding:0 14px;border-left:1px solid #dce4eb}.dot-process-preview-item:first-child{border-left:0}.dot-process-preview-item>div{display:grid;gap:2px;min-width:0}.dot-process-preview-item b{color:#0b1f5b;font-size:12px}.dot-process-preview-item span{color:#65748a;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.dot-process-icon{display:inline-grid;flex:0 0 25px;width:25px;height:25px;place-items:center;border-radius:50%;font-size:15px;font-style:normal;font-weight:900;background:#edf1f5;color:#65748a}.dot-process-icon.current{background:#1f9d55;color:#fff}.dot-process-icon.needs-information,.dot-process-icon.due-soon{background:#f0a000;color:#fff}.dot-process-icon.overdue{background:#c23b32;color:#fff}.dot-process-icon.not-required{background:#edf1f5;color:#65748a}
.dot-attention-list{display:grid;gap:7px}.dot-attention-line{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;background:#fff8e8;border:1px solid #f1dca3}.dot-attention-line.overdue{background:#fff0ee;border-color:#edc2bd}.dot-attention-line b{font-size:11px;letter-spacing:.06em;color:#874600}.dot-attention-line.overdue b{color:#a62b22}.dot-current-line{padding:9px 11px;border-radius:9px;background:#eef8f2;color:#156b3c;font-size:11px;font-weight:900;letter-spacing:.06em}.dot-current-line.neutral{background:#f2f5f7;color:#65748a}.dot-card-details{margin-top:0}.dot-account-card.details-open .dot-process-preview,.dot-account-card.details-open .dot-attention-list{display:none}
.dot-fleet-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.dot-fleet-row>div,.dot-summary-grid>div{background:#f6f8fa;border:1px solid #dce4eb;border-radius:10px;padding:12px}.dot-fleet-row b{display:block;margin-top:5px;font-size:20px;color:#0b1f5b}
.dot-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dot-process{display:flex;min-width:0;min-height:190px;flex-direction:column;gap:13px;padding:15px;border:1px solid #dce4eb;border-radius:10px}.dot-process header{display:flex;align-items:center;justify-content:space-between;gap:8px}.dot-process header>span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#0b1f5b}.dot-process-date{display:grid;gap:4px}.dot-process-date>span{font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#65748a}.dot-process-date b{color:#0b1f5b;font-size:16px;line-height:1.2}.dot-process-date small{color:#65748a;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.dot-process.needs-information .dot-process-date:first-of-type::before{content:"NEEDS INFORMATION";color:#874600;font-size:9px;font-weight:900;letter-spacing:.07em}.dot-process-not-required{margin:auto 0;color:#65748a;font-size:14px}
.dot-account-footer{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid #dce4eb;margin-top:14px;padding-top:14px}.dot-account-footer>div{display:grid;gap:4px;min-width:0}.dot-account-footer a{overflow-wrap:anywhere}
.dot-company-summary{margin:18px 0}.dot-company-summary.compact{margin:16px 0;padding:16px}.dot-company-summary .panel-heading{align-items:center}.dot-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.dot-summary-grid b{display:block;margin-top:5px;color:#0b1f5b}.dot-summary-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}.dot-summary-actions span{font-size:13px;color:#56677b}
.dot-company-summary.profile-preview{padding:20px;border-left:4px solid #1594c5}.dot-company-summary.profile-preview .panel-heading{align-items:flex-start;margin-bottom:12px}.dot-company-summary.profile-preview .panel-heading h3{margin-bottom:5px}.dot-company-summary.profile-preview .dot-fleet-compact{margin-bottom:10px}.dot-company-summary.profile-preview .dot-process-preview{margin-bottom:10px}.dot-company-summary.profile-preview .dot-summary-actions{justify-content:flex-start;margin-top:10px}
.dot-dialog{width:min(960px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto}.dot-dialog form{display:grid;gap:0}.dot-form-section{padding:18px 0;border-bottom:1px solid #dce4eb}.dot-form-section h3{margin:0 0 14px;color:#0b1f5b}.dot-form-section>.form-grid.four{grid-template-columns:repeat(4,1fr)}.dot-form-processes{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dot-form-processes fieldset{margin:0;border:1px solid #d7e0e8;border-radius:12px;padding:14px}.dot-form-processes legend{padding:0 7px;font-weight:900;color:#0b1f5b}.dot-form-processes .form-grid{grid-template-columns:1fr 1fr}.dot-form-processes label span,.dot-form-section label>span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.dot-form-review{margin:4px 0 2px;padding:14px 16px;border:1px solid #ead19a;border-radius:12px;background:#fff8e8;color:#704d0b}.dot-form-review.complete{border-color:#b9dfc8;background:#edf8f1;color:#17683c}.dot-form-review>b,.dot-form-review>span{display:block}.dot-form-review ul{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.dot-form-review li{display:flex;gap:10px;align-items:baseline}.dot-form-review li strong{min-width:115px;color:#0b1f5b}.dot-form-review li span{font-size:12px}.dot-form-processes fieldset.not-required{background:#f2f5f7;border-color:#d7dfe6}.dot-form-processes fieldset.not-required legend{color:#687383}.dot-field-disabled{opacity:.68}.dot-field-disabled input,.dot-field-disabled select{background:#e8edf1!important;color:#7a8592!important}.dot-needs-review{outline:2px solid #e8b64c;outline-offset:2px;border-radius:10px}.dot-attention-line>span{display:grid;gap:3px}.dot-attention-line small{font-size:11px;font-weight:650;text-transform:none;letter-spacing:0}
@media(max-width:900px){.dot-metrics{grid-template-columns:repeat(3,1fr)}.dot-toolbar{grid-template-columns:1fr 1fr}.dot-toolbar input{grid-column:1/-1}.dot-process-grid,.dot-process-preview{grid-template-columns:1fr 1fr}.dot-process-preview-item:nth-child(3){border-left:0}.dot-process-preview-item:nth-child(n+3){margin-top:12px;padding-top:12px;border-top:1px solid #dce4eb}.dot-summary-grid{grid-template-columns:1fr 1fr}.dot-form-section>.form-grid.four{grid-template-columns:1fr 1fr}.app-nav{overflow-x:auto;max-width:100%}}
@media(max-width:640px){.dot-portfolio-strip{grid-template-columns:1fr auto}.dot-portfolio-strip>span:last-child{grid-column:1/-1}.dot-metrics{grid-template-columns:1fr 1fr}.dot-toolbar,.dot-account-footer,.dot-summary-grid,.dot-form-processes{grid-template-columns:1fr}.dot-toolbar input{grid-column:auto}.dot-fleet-row{grid-template-columns:1fr 1fr}.dot-fleet-compact{display:grid;grid-template-columns:auto 1fr 1fr}.dot-fleet-compact>b{grid-column:1/-1;padding:0}.dot-fleet-compact span{padding:6px 10px;border-left:0;border-top:1px solid #dce4eb}.dot-process-grid,.dot-process-preview{grid-template-columns:1fr}.dot-process-preview-item,.dot-process-preview-item:nth-child(3){padding:10px 4px;border-left:0;border-top:1px solid #dce4eb}.dot-process-preview-item:first-child{padding-top:0;border-top:0}.dot-process{min-height:0}.dot-account-heading,.dot-summary-actions{align-items:stretch;flex-direction:column}.dot-card-actions{justify-content:flex-start}.dot-form-processes .form-grid{grid-template-columns:1fr}}
.contract-installments{margin:-6px 0 18px;padding:0 12px 12px;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;background:#fbfcfd}.contract-installments .billing-invoice-year-heading h4{margin:0 0 9px;font-size:13px}.contract-installments .invoice-table-wrap{background:#fff}
.billing-checkbox[hidden]{display:none!important}.billing-annual-allocation{grid-column:1/-1;padding:17px;border:1px solid var(--line);border-radius:13px;background:#f8fbfd}.billing-annual-allocation[hidden]{display:none!important}.billing-annual-allocation h3{margin:0 0 13px;color:var(--navy);font-size:14px;letter-spacing:.06em}.billing-allocation-stack{display:grid;gap:8px}.billing-allocation-stack>label,.billing-allocation-output{display:grid!important;grid-template-columns:minmax(210px,1fr) minmax(180px,.65fr)!important;align-items:center;gap:14px;margin:0;padding:9px 11px;border-bottom:1px solid #dce4eb}.billing-allocation-stack>label>span,.billing-allocation-output>span{font-size:10px;font-weight:900;letter-spacing:.07em;color:var(--muted);text-transform:uppercase}.billing-allocation-stack>label>input{width:100%}.billing-allocation-stack>.billing-checkbox{grid-template-columns:auto 1fr!important;border:0;padding-top:3px;padding-bottom:3px;background:transparent}.billing-allocation-output b{color:var(--navy);font-size:16px}.billing-contracted-hours{display:grid!important;grid-template-columns:minmax(210px,1fr) minmax(180px,.65fr)!important;align-items:center;gap:14px;margin-top:13px;padding:13px;border:2px solid #b8d4e3;border-radius:10px;background:#fff}.billing-contracted-hours small{grid-column:2;color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.06em}.billing-contracted-hours input{width:100%}
.dot-usdot{margin:-4px 0 8px;color:#65748a;font-size:10px;font-weight:900;letter-spacing:.08em}.dot-identifiers{margin-top:14px;padding-top:14px;border-top:1px solid #dce4eb}.dot-identifiers h4{margin:0 0 10px;color:var(--navy);font-size:11px;letter-spacing:.08em}.dot-identifiers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.dot-identifiers-grid>div{display:grid;align-content:start;gap:4px;min-height:65px;padding:10px 11px;border-radius:9px;background:#f3f7f9}.dot-identifiers-grid span{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.07em}.dot-identifiers-grid b{overflow-wrap:anywhere;color:var(--navy);font-size:13px}.dot-protected-identifier{grid-template-columns:1fr auto!important}.dot-protected-identifier>span,.dot-protected-identifier>b{grid-column:1}.dot-protected-identifier>button{grid-column:2;grid-row:1/3;align-self:center}
@media(max-width:900px){.billing-allocation-stack>label,.billing-allocation-output,.billing-contracted-hours{grid-template-columns:1fr!important}.billing-contracted-hours small{grid-column:1}.dot-identifiers-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.dot-identifiers-grid{grid-template-columns:1fr}}

/* V1.34 System Integrity: Karissa-only, read-only production health checks. */
.integrity-title{align-items:flex-end}.integrity-title>div:first-child{max-width:860px}.integrity-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.integrity-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.integrity-track{padding:0;overflow:hidden;border-top:4px solid var(--green)}.integrity-track.review{border-top-color:var(--gold)}.integrity-track.issue,.integrity-track.error{border-top-color:var(--red)}.integrity-track-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px}.integrity-track-head h3{margin:0;color:var(--navy);font-size:20px}.integrity-track-head p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.integrity-track-light{flex:0 0 17px;width:17px;height:17px;margin-top:3px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px rgba(0,134,74,.1)}.integrity-track-light.review{background:var(--gold);box-shadow:0 0 0 5px rgba(229,158,47,.13)}.integrity-track-light.issue,.integrity-track-light.error{background:var(--red);box-shadow:0 0 0 5px rgba(180,35,24,.11)}.integrity-check-list{border-top:1px solid var(--line)}.integrity-check{border-bottom:1px solid #edf1f4}.integrity-check:last-child{border-bottom:0}.integrity-check>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:flex-start;padding:13px 20px;cursor:pointer;list-style:none}.integrity-check>summary::-webkit-details-marker{display:none}.integrity-check>summary>span:nth-child(2){display:grid;gap:3px}.integrity-check>summary b{color:var(--navy);font-size:12px}.integrity-check>summary small{color:var(--muted);font-size:10px;line-height:1.4}.integrity-check>summary>strong{color:var(--navy);font-size:13px}.integrity-status{display:inline-flex;align-items:center;justify-content:center;min-width:76px;padding:4px 7px;border-radius:999px;background:#e5f5eb;color:#156b3c;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.integrity-status.review{background:#fff2cc;color:#765600}.integrity-status.issue,.integrity-status.error{background:#fde8e6;color:#a62b22}.integrity-findings{display:grid;gap:8px;padding:0 20px 16px 107px}.integrity-record{display:grid;gap:4px;padding:10px 12px;border:1px solid #dfe7ed;border-radius:9px;background:#f8fafc;color:#41536a;font-size:10px;line-height:1.4;overflow-wrap:anywhere}.integrity-record b{color:var(--navy)}.integrity-error-reference{margin:0;padding:10px 12px;border:1px solid #edc2bd;border-radius:9px;background:#fff2f0;color:#8f281f;font-size:11px}.integrity-empty{grid-column:1/-1;display:grid;gap:5px;place-items:center;min-height:150px;text-align:center}.integrity-empty b{color:var(--navy)}.integrity-empty span{color:var(--muted);font-size:12px}.integrity-empty.error{border-color:#edc2bd;background:#fff8f7}.integrity-empty.error b,.integrity-empty.error span{color:var(--red)}
.integrity-overall{margin:0 0 4px;padding:12px 15px;border:1px solid #dce7ed;border-radius:10px;background:#f7fafc;color:var(--navy);font-size:12px;font-weight:800}
.integrity-controls{margin:0 0 16px;padding:14px 18px}.integrity-toggle{display:flex;align-items:center;gap:10px;color:var(--navy);font-size:13px;font-weight:800;letter-spacing:.02em}.integrity-toggle input{width:18px;height:18px;accent-color:var(--blue)}.ledger-audit-rows{display:grid}.ledger-audit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:13px 20px;border-top:1px solid #edf1f4}.ledger-audit-row:first-child{border-top:0}.ledger-audit-row>div{display:grid;gap:3px;min-width:0}.ledger-audit-row>div:last-child{text-align:right}.ledger-audit-row b{color:var(--navy);font-size:12px}.ledger-audit-row span,.ledger-audit-row small{color:var(--muted);font-size:10px;line-height:1.35}.ledger-audit-row small{overflow-wrap:anywhere}
.safety-reports-preview{margin:0 0 16px;padding:20px}.safety-reports-preview .panel-heading{align-items:flex-start;margin-bottom:16px}.safety-reports-preview h3{margin:2px 0 4px;color:var(--navy);font-size:20px}.safety-reports-preview .panel-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px}.safety-reports-read-only{padding:6px 9px;border-radius:999px;background:#e7f6ed;color:#156b3c;font-size:10px;font-weight:900;letter-spacing:.06em}.safety-reports-test-controls{display:grid;grid-template-columns:180px 180px minmax(320px,1fr);gap:12px;align-items:end}.safety-reports-test-controls label{display:grid;gap:6px;color:var(--navy);font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.safety-reports-test-controls input{width:100%;box-sizing:border-box;border:1px solid #bdc8d2;border-radius:9px;padding:10px;background:#fff;color:var(--ink);font:inherit}.safety-reports-test-actions{display:flex;gap:8px;justify-content:flex-end}.safety-reports-preview>.history-summary{margin:13px 0 0}.safety-reports-success{color:#156b3c}.safety-reports-failed{color:var(--red)}#safety-reports-result{margin-top:14px;border:1px solid var(--line);border-radius:11px;overflow:hidden}#safety-reports-result[hidden]{display:none}.safety-reports-result-head{display:flex;justify-content:space-between;gap:18px;padding:14px 16px;background:#f5f9fb}.safety-reports-result-head>div{display:grid;gap:3px}.safety-reports-result-head>div:last-child{text-align:right}.safety-reports-result-head span,.safety-reports-result-head small{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.05em}.safety-reports-result-head b{color:var(--navy);font-size:13px}.safety-reports-result-head strong{color:#156b3c;font-size:10px}.safety-reports-response-meta{display:flex;gap:14px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:10px}.safety-reports-warning{margin:12px 16px;padding:10px;border-radius:8px;background:#fff7e4;color:#795815;font-size:11px}.safety-reports-raw-heading{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.safety-reports-raw-heading b{color:var(--navy);font-size:12px}#safety-reports-raw{max-height:420px;margin:0;padding:15px;overflow:auto;border-top:1px solid var(--line);background:#0f1d2d;color:#e8f1f8;font:11px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.safety-reports-error{display:grid;gap:4px;margin:0;padding:15px;background:#fff4f2;color:var(--red)}.safety-reports-error span,.safety-reports-error small{font-size:11px}
.safety-reports-raw-details>summary{padding:12px 16px;cursor:pointer;color:var(--navy);font-size:11px;font-weight:850}.safety-reports-run-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-top:1px solid var(--line);background:var(--line)}.safety-reports-run-summary span{display:grid;gap:2px;padding:12px 16px;background:#fff;color:var(--muted);font-size:10px}.safety-reports-run-summary b{color:var(--navy);font-size:18px}.safety-reports-run-summary .has-errors b{color:var(--red)}.safety-import-panel{margin:0 0 16px;padding:20px}.safety-import-panel .panel-heading{align-items:flex-start}.safety-import-panel h3{margin:2px 0 4px;color:var(--navy);font-size:20px}.safety-import-panel .panel-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:12px}.safety-import-card{margin-top:8px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:9px;background:#fff;overflow:hidden}.safety-import-card.published{border-left-color:#2b8a57;background:#f7fbf8}.safety-import-card.details-open{box-shadow:0 5px 18px rgba(20,48,77,.08)}.safety-import-ledger-row{display:grid;grid-template-columns:110px minmax(190px,1.6fr) minmax(120px,.8fr) minmax(125px,.8fr) 105px 70px;gap:12px;align-items:center;padding:10px 12px}.safety-import-ledger-row b{color:var(--navy);font-size:12px}.safety-import-ledger-row span{display:block;margin-top:2px;color:var(--muted);font-size:9px}.safety-import-date{display:grid;gap:4px}.safety-import-primary{min-width:0}.safety-import-primary b,.safety-import-primary span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.safety-import-cell{min-width:0}.safety-import-cell b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.safety-import-hours{text-align:right}.safety-import-hours>b{display:block;font-size:15px}.safety-import-review{justify-self:end}.safety-import-details{padding:0 12px 13px;border-top:1px solid #e7edf2;background:#fbfcfd}.safety-import-match-note{margin:10px 0 0;color:var(--muted);font-size:10px}.safety-import-status{display:inline-block;width:max-content;padding:3px 7px;border-radius:999px;background:#eaf2f8;color:#285b7d;font-size:9px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.safety-import-warning{margin:10px 0 0;padding:9px 11px;border-radius:8px;background:#fff7e4;color:#795815;font-size:11px}.safety-import-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.safety-import-grid label{display:grid;gap:5px}.safety-import-grid label>span{color:var(--navy);font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.safety-import-grid input,.safety-import-grid select,.safety-import-grid textarea{width:100%;box-sizing:border-box;border:1px solid #bdc8d2;border-radius:8px;padding:9px;background:#fff;color:var(--ink);font:inherit}.safety-import-grid textarea{min-height:64px;resize:vertical}.safety-import-grid .wide{grid-column:1/-1}.safety-import-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:13px}.safety-import-published{color:#156b3c;font-size:11px;font-weight:800}.safety-import-history{display:grid;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.safety-import-history>button{justify-self:start}.safety-import-history-row{display:grid;grid-template-columns:72px 90px minmax(150px,1fr) minmax(180px,1.4fr) 70px;gap:10px;align-items:center;padding:8px 10px;border-bottom:1px solid #edf1f4;color:var(--muted);font-size:10px}.safety-import-history-row b,.safety-import-history-row strong{color:var(--navy)}.safety-import-history-row strong{text-align:right}
.training-account-setup{margin:0 0 16px;padding:0;overflow:hidden}.training-account-setup>summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;cursor:pointer;list-style:none}.training-account-setup>summary::-webkit-details-marker{display:none}.training-account-setup>summary span:first-child{display:grid;gap:3px}.training-account-setup>summary small{color:var(--blue);font-size:9px;font-weight:900;letter-spacing:.08em}.training-account-setup>summary b{color:var(--navy);font-size:17px}.training-account-setup>summary span:last-child{color:var(--muted);font-size:11px}.training-account-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 20px;border-top:1px solid var(--line);background:#f8fafb}.training-account-toolbar p{margin:0;color:var(--muted);font-size:11px}.training-config-summary{display:flex;gap:8px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--line)}.training-config-summary span,.training-status{display:inline-flex;width:max-content;padding:4px 7px;border-radius:999px;background:#edf1f4;color:#53606c;font-size:9px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.training-config-summary.ready span,.training-status.connected,.training-status.no-records{background:#e7f6ed;color:#156b3c}.training-config-summary.needs-setup span{background:#fff3db;color:#806018}.training-account-list{padding:0 20px 18px}.training-account-row{display:grid;grid-template-columns:minmax(170px,1.1fr) 125px minmax(135px,.8fr) minmax(135px,.8fr) 125px;gap:10px;align-items:end;padding:11px 0;border-top:1px solid #edf1f4}.training-account-name{align-self:center}.training-account-name b,.training-account-name small{display:block}.training-account-name b{color:var(--navy);font-size:12px}.training-account-name small{margin-top:3px;color:var(--muted);font-size:9px}.training-account-row label{display:grid;gap:4px}.training-account-row label>span{color:var(--navy);font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.training-account-row input{width:100%;box-sizing:border-box;border:1px solid #bdc8d2;border-radius:8px;padding:8px;background:#fff;color:var(--ink);font:inherit;font-size:11px}.training-account-actions{display:flex;gap:5px}.training-account-row>p{grid-column:3/-1;margin:0;color:var(--muted);font-size:9px}.training-status.ready{background:#eaf2f8;color:#285b7d}.training-status.error,.training-status.invalid-credentials{background:#fff0ed;color:var(--red)}.training-status.agreement-required{background:#fff3db;color:#806018}.training-pull-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border-top:1px solid var(--line);max-height:280px;overflow:auto}.training-pull-results>div{display:grid;grid-template-columns:auto 1fr;gap:4px 8px;align-items:center;padding:10px 12px;background:#fff}.training-pull-results b{color:var(--navy);font-size:11px}.training-pull-results small{grid-column:2;color:var(--muted);font-size:9px}
.training-bulk-setup{margin:0 20px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}.training-bulk-setup>summary{cursor:pointer;color:var(--navy);font-size:11px;font-weight:850}.training-bulk-setup p{margin:10px 0 7px;color:var(--muted);font-size:10px}.training-bulk-setup textarea{display:block;width:100%;min-height:105px;box-sizing:border-box;margin-bottom:8px;border:1px solid #bdc8d2;border-radius:8px;padding:9px;background:#fbfcfd;color:var(--ink);font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;resize:vertical}
.billing-type.no-contract{background:#fff2cc;color:#765600;border-color:#e5c965}.billing-type.control{background:#e9eef9;color:#405a8f;border-color:#bdc9e3}.company-status-badges{display:flex;gap:7px;flex-wrap:wrap;margin:7px 0}
@media(max-width:980px){.integrity-grid{grid-template-columns:1fr}}
@media(max-width:700px){.integrity-title{align-items:start}.integrity-actions{justify-content:flex-start}.integrity-check>summary{grid-template-columns:1fr auto}.integrity-status{grid-column:1/-1;justify-self:start}.integrity-findings{padding-left:20px}}
@media(max-width:1000px){.safety-import-ledger-row{grid-template-columns:100px minmax(180px,1fr) minmax(120px,.7fr) 100px 70px}.safety-import-ledger-row .safety-import-cell:nth-of-type(4){display:none}}
@media(max-width:800px){.safety-reports-test-controls{grid-template-columns:1fr 1fr}.safety-reports-test-actions{grid-column:1/-1;justify-content:flex-start;flex-wrap:wrap}.safety-import-ledger-row{grid-template-columns:90px minmax(160px,1fr) 95px 65px}.safety-import-ledger-row .safety-import-cell{display:none}.safety-import-grid{grid-template-columns:1fr 1fr}.training-account-row{grid-template-columns:minmax(160px,1fr) 120px 1fr 1fr}.training-account-actions{grid-column:3/-1}.training-account-row>p{grid-column:3/-1}}
@media(max-width:560px){.safety-reports-test-controls{grid-template-columns:1fr}.safety-reports-test-actions{grid-column:auto}.safety-reports-test-actions .button{width:100%}.safety-reports-result-head{display:grid}.safety-reports-result-head>div:last-child{text-align:left}.safety-reports-run-summary{grid-template-columns:1fr 1fr}.safety-import-ledger-row{grid-template-columns:82px minmax(120px,1fr) 60px}.safety-import-hours{display:none}.safety-import-grid{grid-template-columns:1fr}.safety-import-actions .button{width:100%}.safety-import-history-row{grid-template-columns:68px 78px 1fr}.safety-import-history-row span:nth-of-type(2){display:none}.safety-import-history-row strong{display:none}.training-account-setup>summary,.training-account-toolbar{align-items:flex-start;flex-direction:column}.training-account-row{grid-template-columns:1fr}.training-account-row>*{grid-column:1!important}.training-account-actions .button{flex:1}.training-pull-results{grid-template-columns:1fr}}
.training-import-panel{border-top:4px solid #5b4f9b}.safety-import-card.training{border-left-color:#5b4f9b}.safety-import-source-status{font-weight:800}.safety-import-extraction,.safety-import-attendees{margin:10px 0 0;padding:8px 10px;border-radius:7px;font-size:10px}.safety-import-extraction.verified{background:#eaf7ef;color:#17653b}.safety-import-extraction.needs-review{background:#fff7e4;color:#795815}.safety-import-extraction span{display:block;margin-top:3px}.safety-import-attendees{background:#eef4f8;color:#35556b}
.training-lane-heading{display:flex;justify-content:space-between;align-items:center;margin:14px 0 6px;padding:0 2px}.training-lane-heading b{color:var(--navy);font-size:13px}.training-lane-heading span{color:var(--muted);font-size:10px}.training-visibility-group{margin-top:16px;border:1px solid #d9dfea;border-radius:10px;background:#f8f9fc;overflow:hidden}.training-visibility-group>summary{display:flex;justify-content:space-between;align-items:center;padding:13px 15px;cursor:pointer;list-style:none}.training-visibility-group>summary::-webkit-details-marker{display:none}.training-visibility-group>summary span{display:grid;gap:2px}.training-visibility-group>summary b{color:var(--navy);font-size:12px}.training-visibility-group>summary small{color:var(--muted);font-size:10px}.training-visibility-group>summary strong{display:grid;place-items:center;min-width:28px;height:28px;border-radius:999px;background:#ece8f8;color:#51428d;font-size:12px}.training-visibility-group.secondary>summary strong{background:#e8eef2;color:#476477}.training-visibility-group[open]>summary{border-bottom:1px solid #d9dfea}.training-visibility-group>div{padding:8px 10px 12px}.training-visibility-card{display:grid;grid-template-columns:105px minmax(180px,1.5fr) minmax(130px,.8fr) minmax(130px,.8fr) 82px;gap:12px;align-items:center;margin-top:6px;padding:9px 10px;border:1px solid #e1e6eb;border-left:4px solid #aeb8c1;border-radius:8px;background:#fff}.training-visibility-card.status-o{border-left-color:#df9f16}.training-visibility-card.status-d{border-left-color:#9b7b45}.training-visibility-card.status-s{border-left-color:#4983ae}.training-visibility-card.status-c{border-left-color:#68727a}.training-visibility-card>div{display:grid;gap:3px;min-width:0}.training-visibility-card b{overflow:hidden;color:var(--navy);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.training-visibility-card span,.training-visibility-card small{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.training-record-status{display:inline-block!important;width:max-content;padding:4px 8px;border-radius:999px;background:#eef2f5;color:#334e62!important;font-size:9px!important;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.status-o .training-record-status{background:#fff3d6;color:#805a06!important}.status-d .training-record-status{background:#f4ede2;color:#70542a!important}.status-s .training-record-status{background:#e8f3fa;color:#225e87!important}.safety-import-ignored{margin-top:15px;padding:11px 13px;border:1px solid #e2e6ea;border-radius:9px;background:#fafbfc}.safety-import-ignored>summary{cursor:pointer;color:var(--navy);font-size:11px;font-weight:850}.safety-import-ignored>p{margin:8px 0;color:var(--muted);font-size:10px}
@media(max-width:900px){.training-visibility-card{grid-template-columns:95px minmax(160px,1fr) minmax(120px,.8fr) 76px}.training-visibility-card>div:nth-of-type(4){display:none}}
@media(max-width:600px){.training-visibility-card{grid-template-columns:82px minmax(120px,1fr) 72px}.training-visibility-card>div:nth-of-type(3){display:none}.training-visibility-group>summary{align-items:flex-start;gap:10px}.training-lane-heading{align-items:flex-start;gap:8px}}
@media(max-width:700px){.ledger-audit-row{grid-template-columns:1fr}.ledger-audit-row>div:last-child{text-align:left}}

/* V1.39 Field Hours: a deliberately limited iPhone/home-screen view. */
body.field-mode{background:#edf3f8}.field-mode .page-shell{max-width:720px;margin:0 auto;padding:0;min-height:100vh;background:#f5f8fb}.field-mode .toast{bottom:88px}.field-shell{padding:env(safe-area-inset-top) 16px calc(88px + env(safe-area-inset-bottom));min-height:100vh}.field-header{display:flex;align-items:center;justify-content:space-between;padding:12px 4px 20px}.field-brand{display:flex;align-items:center;gap:9px;color:#102d69}.field-brand>span{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#102d69;color:#fff;font-size:13px;font-weight:900}.field-brand p,.field-welcome p,.field-section-heading p,.field-kicker{margin:0;color:#2372ad;font-size:10px;font-weight:900;letter-spacing:.13em}.field-brand b{font-size:17px}.field-header button,.field-section-heading button,.field-company-focus>button:first-child{border:0;background:transparent;color:#526780;font:inherit;font-size:12px;font-weight:800}.field-welcome{padding:8px 4px 20px}.field-welcome h1{margin:4px 0 0;color:#112b60;font-size:29px;line-height:1.05}.field-panel{display:grid;gap:15px;padding:18px;border:1px solid #d8e3ed;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(16,45,105,.06)}.field-time-panel>h2{margin:-6px 0 0;color:#112b60;font-size:22px;line-height:1.2}.field-copy{margin:-8px 0 3px;color:#60738a;font-size:13px;line-height:1.45}.field-primary,.field-secondary{border:0;border-radius:13px;background:#102d69;color:#fff;font:inherit;font-size:15px;font-weight:900;padding:16px}.field-secondary{width:100%;padding:13px;font-size:13px}.field-section-heading{display:flex;align-items:end;justify-content:space-between;margin-top:8px}.field-section-heading h2{margin:3px 0 0;color:#112b60;font-size:17px}.field-client-list{display:grid;gap:10px}.field-client-card{padding:14px;border:1px solid #dbe6ef;border-left:5px solid #129bc3;border-radius:13px;background:#fff}.field-client-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.field-client-top p{margin:0 0 3px;color:#2372ad;font-size:9px;font-weight:900;letter-spacing:.12em}.field-client-top h2{margin:0;color:#112b60;font-size:17px;line-height:1.2}.field-client-open{width:30px;height:30px;border:1px solid #dae4ee;border-radius:9px;background:#fff;color:#102d69;font-size:25px;line-height:20px}.field-allocation{display:grid;gap:2px;margin-top:13px;padding-top:10px;border-top:1px solid #e5edf3}.field-allocation b{color:#1a7448;font-size:15px}.field-allocation span{color:#62758b;font-size:11px;font-weight:700}.field-client-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid #e5edf3}.field-client-details span{display:grid;gap:3px;color:#53687f;font-size:12px}.field-client-details b{color:#102d69;font-size:10px;letter-spacing:.06em;text-transform:uppercase}.field-search{display:grid;gap:7px;color:#102d69;font-size:12px;font-weight:800}.field-search input{width:100%;box-sizing:border-box;border:1px solid #cfdde8;border-radius:11px;padding:12px;font:inherit;font-size:15px}.field-recent-list{display:grid}.field-recent-list article{display:grid;grid-template-columns:72px 1fr auto;gap:3px 9px;padding:13px 0;border-bottom:1px solid #e6edf3}.field-recent-list article:last-child{border-bottom:0}.field-recent-list span{grid-row:1/3;color:#60738a;font-size:11px}.field-recent-list b{color:#102d69;font-size:13px}.field-recent-list small{color:#64778d;font-size:11px}.field-recent-list strong{grid-column:3;grid-row:1/3;align-self:center;color:#1a7448;font-size:12px}.field-empty{margin:0;padding:16px 4px;color:#64778d;font-size:13px;line-height:1.4;text-align:center}.field-company-focus{margin-top:2px}.field-nav{position:fixed;z-index:5;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(3,1fr);max-width:720px;margin:0 auto;padding:8px 16px calc(8px + env(safe-area-inset-bottom));border-top:1px solid #dbe5ed;background:rgba(255,255,255,.97);box-shadow:0 -5px 18px rgba(16,45,105,.07)}.field-nav button{border:0;background:transparent;color:#718399;font:inherit;font-size:12px;font-weight:800;padding:8px}.field-nav button.active{color:#102d69}.field-mode .activity-dialog{width:min(100vw,720px);max-height:100dvh;margin:0;border:0;border-radius:18px 18px 0 0;box-shadow:0 -10px 38px rgba(16,45,105,.22)}.field-mode .activity-dialog::backdrop{background:rgba(8,25,56,.48)}.field-mode .activity-dialog form{max-height:calc(100dvh - 18px);overflow:auto}.field-mode .activity-dialog .form-grid{grid-template-columns:1fr}.field-mode .activity-dialog #activity-add-client,.field-mode .activity-dialog .activity-highlight-toggle,.field-mode .activity-dialog #highlight-summary-wrap{display:none!important}.field-mode .activity-dialog .dialog-actions{position:sticky;bottom:0;padding-top:12px;background:#fff}.field-mode .activity-dialog .wide{grid-column:auto}
.pending-contract-note{margin:0;padding:.7rem .85rem;border-radius:.65rem;background:#fff7df;color:#75520a;font-size:.82rem;font-weight:700}
.integrity-workspace-tabs{display:flex;gap:.45rem;margin:0 0 1rem;padding:.4rem;background:#eaf1f6;border:1px solid #d6e1e9;border-radius:1rem;overflow-x:auto}
.integrity-workspace-tabs button{appearance:none;border:0;background:transparent;color:#41566a;border-radius:.7rem;padding:.72rem 1rem;font:inherit;font-weight:800;white-space:nowrap;cursor:pointer}
.integrity-workspace-tabs button.active{background:#fff;color:#0c2b63;box-shadow:0 2px 9px #12345a18}
.integrity-workspace[hidden]{display:none!important}
.integrity-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.integrity-overview-grid button{display:flex;min-height:150px;flex-direction:column;align-items:flex-start;gap:.45rem;text-align:left;border:1px solid #d9e4ec;border-top:4px solid #146aa4;border-radius:1rem;background:#fff;padding:1.25rem;color:#0c2b63;cursor:pointer;box-shadow:0 8px 28px #1634520d}
.integrity-overview-grid button span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#1b6c9f;font-weight:900}.integrity-overview-grid button b{font-size:1.25rem}.integrity-overview-grid button small{font-size:.9rem;line-height:1.45;color:#66798b}
.access-workspace{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:1rem;margin-top:1rem}
.access-user-list{display:flex;flex-direction:column;gap:.45rem;max-height:720px;overflow:auto;padding-right:.25rem}
.access-user-list button{display:grid;gap:.2rem;text-align:left;border:1px solid #dbe4eb;border-radius:.75rem;background:#f7fafc;padding:.8rem;color:#18365b;cursor:pointer}.access-user-list button.active{background:#e8f2ff;border-color:#2b79ba;box-shadow:inset 4px 0 #1473b6}.access-user-list small{color:#617487}.access-user-list span,.access-role{text-transform:capitalize;font-size:.7rem;font-weight:900;letter-spacing:.08em;color:#63778a}
.access-editor{border:1px solid #dbe4eb;border-radius:1rem;padding:1.15rem}.access-editor-heading{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #e1e8ee;padding-bottom:1rem;margin-bottom:1rem}.access-editor-heading h3{margin:.1rem 0}.access-editor-heading p{margin:0;color:#627487}.access-editor h4{margin:1.1rem 0 .65rem;color:#12315c}
.access-role-controls{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding:1rem;border:1px solid #dbe4eb;border-radius:.8rem;background:#f8fafc}.access-role-controls label{display:grid;gap:.35rem;color:#17375f;font-size:.78rem;font-weight:800}.access-role-controls select{width:100%;border:1px solid #cad7e2;border-radius:.6rem;background:#fff;padding:.7rem;font:inherit;color:#17375f}.access-role-controls .access-preview-only{display:flex;align-items:flex-start;gap:.6rem;grid-column:1/-1}.access-preview-only span{display:grid;gap:.15rem}.access-preview-only small{color:#66798b;font-weight:500;line-height:1.35}.access-role-controls button{justify-self:start}
.access-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.access-permission{display:flex;gap:.65rem;align-items:flex-start;border:1px solid #e0e7ed;border-radius:.7rem;padding:.75rem;background:#fbfcfd}.access-permission input{margin-top:.18rem;width:1.05rem;height:1.05rem}.access-permission span{display:grid;gap:.15rem}.access-permission small{color:#6e7e8c;line-height:1.35}
.access-preview{margin-top:1.15rem;padding:1rem;border-radius:.8rem;background:#f0f5f8}.access-preview h4{margin:.1rem 0 .75rem}.access-preview-nav,.access-preview-actions{display:flex;flex-wrap:wrap;gap:.4rem}.access-preview-actions{margin-top:.5rem}.access-preview-nav span,.access-preview-actions span{border-radius:999px;background:#fff;border:1px solid #d5e0e8;padding:.36rem .58rem;font-size:.75rem;font-weight:800;color:#1b3d66}.access-preview-actions span{background:#e8f7ef;color:#16623d;border-color:#bfe1ce}
.access-preview>button{margin-top:.8rem}.access-preview-banner{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:center;gap:1rem;padding:.65rem 1rem;background:#fff3cd;border-bottom:1px solid #e3bd53;color:#60470a}.access-preview-banner button{border:1px solid #9b7414;border-radius:.5rem;background:#fff;color:#60470a;padding:.4rem .65rem;font:inherit;font-weight:800}
.access-save-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}.access-save-row p{margin:0;color:#687b8c;font-size:.82rem}.access-audit{margin-top:1rem;border-top:1px solid #dde6ed;padding-top:1rem}.access-audit summary{font-weight:800;color:#17375f;cursor:pointer}.access-audit>div{display:grid;grid-template-columns:1fr auto auto;gap:1rem;padding:.65rem 0;border-bottom:1px solid #edf1f4;font-size:.8rem}.access-audit small{font-family:monospace;color:#6b7d8d}
.access-audit-line{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:.75rem 0;border-bottom:1px solid #e7edf2;font-size:.82rem}.access-audit-line span,.access-audit-line small{color:#66798b}.access-audit-line small{font-family:monospace}
@media(max-width:800px){.integrity-overview-grid,.access-workspace,.access-permission-grid,.access-role-controls{grid-template-columns:1fr}.access-user-list{max-height:280px}.access-save-row{align-items:stretch;flex-direction:column}.access-audit>div{grid-template-columns:1fr}.integrity-workspace-tabs{position:sticky;top:0;z-index:3}.access-preview-banner{align-items:flex-start;justify-content:space-between}}

/* V1.45.7 User onboarding and protected access */
.access-add-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;background:#f5f9fc;border:1px solid #dbe6ee;border-radius:.85rem;margin-top:.9rem}
.access-add-toolbar b{color:#17365c}.access-help{font-size:.81rem;color:#62778a;line-height:1.45;margin:.3rem 0}
.access-new-user-form{padding:1rem;margin-top:.75rem;background:#fff;border:1px solid #b8d5ed;border-radius:.85rem}
.access-new-user-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}
.access-new-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.access-new-user-grid label{display:grid;gap:.3rem;font-size:.8rem;font-weight:700;color:#183b65}
.access-new-user-grid input,.access-new-user-grid select,.access-role-controls input:not([type=checkbox]){width:100%;min-width:0;border:1px solid #cad7e2;border-radius:.6rem;background:#fff;padding:.65rem;font:inherit;color:#17375f}
.access-protected-note{background:#eef6fa;border:1px solid #b3d3e3;border-radius:.8rem;padding:1rem;margin-bottom:.8rem}
.access-protected-note strong{color:#114069}.access-protected-note p{margin:.35rem 0 0;color:#51697b;line-height:1.45;font-size:.83rem}
.access-permission.access-locked{background:#f3f7f9}.access-permission input:disabled{cursor:not-allowed}
.access-status-line{font-size:.76rem!important;font-weight:700;color:#4d6b83!important;margin-top:.3rem!important}
.access-save-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.access-contract-tools{display:flex;gap:1rem;flex-wrap:wrap;align-items:end;margin-bottom:1rem}
.access-contract-tools label{display:grid;gap:.3rem;font-size:.75rem;font-weight:700;color:#1a3d64}
.access-contract-tools input,.access-contract-tools select{border:1px solid #c9d8e4;border-radius:.5rem;padding:.55rem;font:inherit}
@media(max-width:800px){.access-add-toolbar{align-items:stretch;flex-direction:column}.access-new-user-grid{grid-template-columns:1fr}.access-save-actions{justify-content:stretch}}

/* V1.45.8 — service contributor designation is separate from user permissions. */
.access-service-contributor{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#f0f6fb;border:1px solid #cbdde9;border-radius:10px;color:var(--navy);cursor:pointer}
.access-service-contributor input[type=checkbox]{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--blue)}
.access-service-contributor span{display:grid;gap:4px;font-size:13px}
.access-service-contributor small{color:var(--muted);font-size:12px;line-height:1.45;font-weight:500}
.access-new-user-form>.access-service-contributor{margin:12px 0}
.access-service-contributor.access-locked{cursor:default;opacity:.85}
