:root{--paper:#fafaf8;--surface:#ffffff;--surface-soft:#f5f5f3;--ink:#1a1a17;--text:#34332e;--muted:#6b6961;--faint:#9c998f;--line:#e8e6e1;--line-strong:#d9d6cf;--night:#141823;--night-soft:#1d2330;--night-line:#2c3344;--night-text:#f1ede2;--night-muted:#9aa0ad;--brass:#1e3a5f;--brass-deep:#18304f;--brass-soft:#edf2f8;--hilite:#cfe0f5;--hilite-soft:#e0ebfa;--hilite-tint:#eff5fc;--amber:#946300;--amber-soft:#f8f0da;--green:#2b7a4d;--green-soft:#e9f3ec;--red:#a32035;--red-soft:#f9edee;--green-line:#c2dacb;--amber-line:#e3d3ad;--red-line:#eccdd1;--brass-line:#cdd5e0;--font-display-stack:var(--font-body,"Instrument Sans"),"Instrument Sans","Segoe UI",sans-serif;--font-body-stack:var(--font-body,"Instrument Sans"),"Instrument Sans","Segoe UI",sans-serif;--fs-label:11px;--fs-dense:13px;--fs-body:15px;--fs-title:18px;--fs-page:24px;--fw-body:500;--fw-medium:600;--fw-strong:700;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-xl:16px;--r-pill:999px;--shadow:0 1px 2px rgba(26,26,23,0.04),0 2px 8px -2px rgba(26,26,23,0.06);--shadow-modal:0 20px 70px rgba(20,24,35,0.28);--scrim:rgba(20,24,35,0.44);--shadow-pop:0 2px 6px rgba(26,26,23,0.06),0 12px 32px -8px rgba(26,26,23,0.18)}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--font-body-stack);font-size:14px;line-height:1.5;font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}h1,h2,h3{font-family:var(--font-display-stack);font-weight:var(--fw-medium);letter-spacing:-.02em;color:var(--ink)}:is(select,[data-app-select]),button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--brass);outline-offset:2px}::selection{background:var(--hilite-soft)}.loading-screen{min-height:100vh;display:grid;place-items:center;color:var(--muted)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app-shell{height:100vh;overflow:hidden;display:grid;grid-template-columns:64px minmax(0,1fr)}.app-shell.review-mode{grid-template-columns:minmax(0,1fr)}.app-shell.embedded{height:auto;overflow:visible;grid-template-columns:minmax(0,1fr)}.app-shell.embedded>.workspace{grid-column:1;height:auto;overflow:visible}.app-shell>.workspace{grid-column:2}.app-shell>.sidebar,.app-shell>.workspace{height:100vh;overflow-y:auto}.app-shell.review-mode>.sidebar{display:none}.sidebar{background:var(--surface);border-right:1px solid var(--line);color:var(--text);padding:16px 9px 14px;display:flex;flex-direction:column;gap:18px}.sidebar-head{min-height:42px;display:flex;align-items:center;justify-content:center}.sidebar-logo-mark{width:28px;height:32px;overflow:hidden}.sidebar-logo-mark img{display:block;width:auto;max-width:none;height:32px}.brand-block{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 4px}.brand-acp{font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.3em;margin-right:-.3em;color:var(--faint)}.brand-logo{display:block;height:26px;width:auto}.nav-list{display:flex;flex-direction:column;gap:8px}.nav-item{width:100%;border:0;background:transparent;color:var(--muted);border-radius:var(--r-lg);min-height:44px;padding:0;display:flex;align-items:center;justify-content:center;font-weight:var(--fw-body);text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease}.nav-item>span{display:none}.nav-item svg{width:18px;height:18px}.nav-item:hover{background:var(--surface-soft);color:var(--text)}.nav-item.active{background:var(--hilite-soft);color:var(--ink);font-weight:var(--fw-medium)}.view-as{margin-top:auto;display:flex;flex-direction:column;gap:5px;margin-bottom:-18px}.view-as-btn{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;min-height:44px;padding:6px 12px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:var(--fs-body);font-weight:var(--fw-body);transition:background .12s ease,border-color .12s ease}.view-as-btn:hover,.view-as-static{background:var(--surface-soft)}.view-as-static{min-height:34px;display:flex;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-medium);padding:0 10px}.view-as-label{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.12em;color:var(--faint);padding-left:2px}.view-as :is(select,[data-app-select]){min-height:32px;padding:4px 9px;font-size:var(--fs-dense);border-radius:var(--r-md)}.sidebar-view-as{width:44px;height:44px;display:grid;place-items:center;margin-top:auto;border:0;border-radius:var(--r-lg);background:transparent;color:var(--muted);padding:0}.sidebar-view-as:hover{background:var(--surface-soft);color:var(--text)}.sidebar-signout{width:44px;height:44px;flex:none;margin-top:0;display:inline-flex;align-items:center;justify-content:center;gap:0;min-height:0;border:1px solid var(--line);border-radius:var(--r-lg);background:transparent;color:var(--muted);padding:0;transition:background .12s ease,color .12s ease}.nav-list+.sidebar-signout{margin-top:auto}.sidebar-signout:hover{background:var(--surface-soft);color:var(--text)}.sidebar-link{margin-top:auto;min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);text-decoration:none;border:1px solid var(--line);border-radius:var(--r-pill);padding:0 14px;transition:border-color .15s ease,color .15s ease}.sidebar-link:hover{border-color:var(--brass);color:var(--brass-deep)}@keyframes loader-sweep{0%{left:-35%;width:35%}60%{left:55%;width:45%}to{left:100%;width:35%}}.route-loader{position:fixed;top:0;left:64px;right:0;height:2px;z-index:400;overflow:hidden;background:var(--hilite-tint)}.app-shell.review-mode .route-loader{left:0}.route-loader:after{content:"";position:absolute;top:0;height:100%;border-radius:var(--r-sm);background:linear-gradient(90deg,transparent,var(--brass),transparent);animation:loader-sweep .9s cubic-bezier(.4,0,.2,1) infinite}.workspace.pending{opacity:.55;transition:opacity .15s ease;pointer-events:none}.workspace{padding:42px 52px 52px;display:flex;flex-direction:column;gap:28px}.workspace.agent-route-workspace{overflow:hidden;padding:0;gap:0}.app-shell.review-mode .workspace{grid-column:1;padding:0;gap:0}.workspace>*{animation:rise .4s cubic-bezier(.22,.61,.36,1) both}.workspace>:nth-child(2){animation-delay:.04s}.workspace>:nth-child(3){animation-delay:.08s}.topbar{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid var(--line);padding-bottom:12px}.eyebrow{margin:0 0 4px;color:var(--faint);font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.12em}.eyebrow,.topbar h2{font-weight:var(--fw-medium)}.topbar h2{margin:0;font-size:var(--fs-page);line-height:1.15;letter-spacing:-.02em}.client-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.client-type-badge{border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;line-height:1;padding:6px 9px;text-transform:uppercase}.client-type-badge.business{background:var(--lime-tint);border-color:var(--lime-soft);color:var(--ink)}.client-type-badge.individual{background:var(--surface-soft);color:var(--brass-deep)}.client-type-badge.municipality{background:var(--brass-soft);color:var(--brass-deep)}.topbar-summary{color:var(--faint);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;padding-bottom:4px}.client-search-row{display:flex}.client-search-input{max-width:380px;min-height:44px;padding:9px 14px;font-size:var(--fs-body)}.client-search-input::placeholder{color:var(--faint)}.ingestion-status-icon.st-posted{color:var(--green)}.ingestion-status-icon.st-awaiting,.ingestion-status-icon.st-posting,.ingestion-status-icon.st-queued{color:var(--amber)}.ingestion-status-icon.st-review{color:var(--brass);font-weight:var(--fw-medium)}.back-button{display:inline-flex;align-items:center;gap:5px;border:0;background:transparent;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);padding:0;margin-bottom:8px;cursor:pointer;transition:color .12s ease}.back-button:hover{color:var(--brass-deep)}.client-list-panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.client-list-row{width:100%;display:flex;align-items:center;gap:14px;padding:14px 16px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;transition:background .08s ease}.client-list-row:last-child{border-bottom:0}.client-list-row:first-child{border-top-left-radius:10px;border-top-right-radius:10px}.client-list-row:last-child{border-bottom-left-radius:10px;border-bottom-right-radius:10px}.client-list-row:hover{background:var(--surface-soft)}.client-list-name{flex:1 1;min-width:0}.client-list-name strong{display:block;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--ink)}.client-list-name small{display:block;color:var(--faint);font-size:var(--fs-dense);text-transform:capitalize;margin-top:1px}.client-list-stats{display:flex;align-items:center;gap:16px;flex-shrink:0}.client-stat{font-size:var(--fs-dense);white-space:nowrap}.client-stat-label{color:var(--muted)}.client-stat-value{font-weight:var(--fw-body);margin-left:4px}.client-stat-value.none{color:var(--faint)}.client-list-arrow{flex-shrink:0;color:var(--faint);transition:color .12s ease}.client-list-row:hover .client-list-arrow{color:var(--brass)}.status-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-label);font-weight:var(--fw-medium);padding:2px 8px;border-radius:var(--r-pill);white-space:nowrap}.status-badge.pending{background:var(--amber-soft);color:var(--amber)}.icon-button,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);min-height:38px;transition:background .15s ease,border-color .15s ease,color .15s ease}.icon-button{width:40px;color:var(--muted)}.icon-button:hover{border-color:var(--brass);color:var(--brass-deep)}.primary-button,.secondary-button{padding:0 20px;font-weight:var(--fw-medium);font-size:var(--fs-body)}.primary-button{background:var(--ink);color:#ffffff;border-color:var(--ink)}.primary-button:hover{background:#000000;border-color:#000000}.secondary-button:hover{border-color:var(--line-strong);background:var(--surface-soft)}.compact-button{min-height:42px;padding:0 16px;font-size:var(--fs-body)}.primary-button:disabled,.secondary-button:disabled{opacity:.55;cursor:default}.tab-row{display:flex;gap:26px;border-bottom:1px solid var(--line)}.tab-button{display:inline-flex;align-items:center;gap:8px;padding:4px 2px 12px;border:0;background:transparent;color:var(--muted);font-size:var(--fs-body);font-weight:var(--fw-body);position:relative;transition:color .15s ease}.tab-button:hover{color:var(--text)}.tab-button:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.tab-button.active{color:var(--ink)}.tab-button.active:after{transform:scaleX(1)}.tab-count{min-width:22px;padding:1px 7px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);color:var(--muted);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tab-button.active .tab-count{background:var(--hilite-soft);border-color:transparent;color:var(--ink);font-weight:var(--fw-medium)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 24px}.panel-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.panel-header.spaced{justify-content:space-between}.panel-header h3{margin:0;font-size:var(--fs-title);font-weight:var(--fw-body)}.panel-header p{margin:4px 0 0;color:var(--faint);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.file-system-panel{min-height:420px}.error-banner{padding:11px 14px;border-radius:var(--r-md);border:1px solid #e4c4b6;background:var(--red-soft);color:var(--red);font-size:var(--fs-dense)}.success-note{margin-bottom:14px;padding:9px 13px;border-radius:var(--r-md);border:1px solid #cdddcd;background:var(--green-soft);color:var(--green);font-size:var(--fs-dense)}.empty-state{min-height:320px;display:grid;place-items:center;align-content:center;grid-gap:9px;gap:9px;color:var(--faint);text-align:center}.empty-state strong{color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium);letter-spacing:-.01em}.empty-state p{max-width:360px;margin:0}.empty-state p,label{font-size:var(--fs-dense)}label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em}:is(select,[data-app-select]),input,textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--text);padding:9px 12px;outline:0;font-size:var(--fs-body);font-weight:var(--fw-body);letter-spacing:0;text-transform:none;transition:border-color .15s ease,box-shadow .15s ease}:is(select,[data-app-select]):focus,:is(select,[data-app-select]):focus-visible,input:focus,input:focus-visible,textarea:focus,textarea:focus-visible{border-color:var(--line-strong);outline:0;box-shadow:none}textarea{resize:vertical}.panel .primary-button,.panel .secondary-button{margin-top:14px}table{width:100%;border-collapse:collapse;font-size:var(--fs-body)}td,th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background .12s ease}tbody tr:hover{background:var(--surface-soft)}th{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.12em}td{color:var(--text)}td:first-child{font-weight:var(--fw-body)}td:last-child{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.file-actions{display:flex;gap:14px;flex-wrap:wrap;min-width:150px}.file-actions a{display:inline-flex;align-items:center;gap:5px;color:var(--brass-deep);text-decoration:none;font-weight:var(--fw-medium);font-size:var(--fs-dense);border-bottom:1px solid transparent;transition:border-color .15s ease}.file-actions a:hover{border-bottom-color:var(--brass)}.comm-db-panel{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.comm-db-bar{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.comm-db-panel .empty-state{min-height:520px}.email-workspace{display:grid;grid-template-columns:minmax(260px,30%) minmax(0,70%);height:min(680px,calc(100vh - 260px));min-height:520px}.email-list-pane{display:flex;min-width:0;min-height:0;flex-direction:column;border-right:1px solid var(--line);background:var(--surface)}.email-list-scroll{flex:1 1;min-height:0;overflow-y:auto}.email-thread-row{display:flex;width:100%;min-height:108px;flex-direction:column;gap:5px;padding:13px 14px;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.email-thread-row:hover{background:var(--surface-soft)}.email-thread-row.selected{background:color-mix(in srgb,var(--brass-soft) 45%,var(--surface));box-shadow:inset 3px 0 0 var(--brass-deep)}.email-thread-row-top,.email-thread-subject{display:flex;min-width:0;align-items:center;gap:8px}.email-thread-row-top strong,.email-thread-subject{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-thread-row-top strong{flex:1 1;font-size:var(--fs-dense);font-weight:var(--fw-medium)}.email-thread-row-top time{flex:none;color:var(--faint);font-size:var(--fs-label)}.email-thread-subject{color:var(--text);font-size:var(--fs-dense)}.email-thread-preview{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:var(--fs-label);line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.email-list-pagination{display:flex;min-height:46px;flex:none;align-items:center;justify-content:space-between;padding:0 10px 0 14px;border-top:1px solid var(--line);background:var(--surface);color:var(--faint);font-size:var(--fs-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.email-list-pagination>div{display:flex;gap:4px}.email-list-pagination button{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--muted);cursor:pointer}.email-list-pagination button:hover:not(:disabled){border-color:var(--brass);color:var(--text)}.email-list-pagination button:disabled{opacity:.35;cursor:default}.comm-pagination{display:flex;min-height:46px;gap:12px;padding:8px 14px;color:var(--muted);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.comm-pagination,.comm-pagination button{align-items:center;justify-content:center}.comm-pagination button{display:inline-flex;height:30px;padding:0 11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--text);font:inherit;font-weight:var(--fw-medium);cursor:pointer}.comm-pagination button:hover:not(:disabled){border-color:var(--brass);background:var(--surface-soft)}.comm-pagination button:disabled{cursor:default;opacity:.38}.email-reader{display:flex;min-width:0;min-height:0;flex-direction:column;background:var(--surface)}.email-reader-header{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:20px;padding:12px 18px;border-bottom:1px solid var(--line)}.email-reader-header h3{margin:0;color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium)}.email-reader-header p{margin:3px 0 0;color:var(--faint);font-size:var(--fs-label)}.email-reader-actions{display:flex;flex:none;gap:7px}.comm-sync-btn,.email-reader-actions button{display:inline-flex;height:32px;align-items:center;gap:6px;padding:0 11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:var(--fs-dense);cursor:pointer}.comm-sync-btn:hover:not(:disabled),.email-reader-actions button:hover{border-color:var(--brass)}.comm-sync-btn:disabled{opacity:.6;cursor:default}.email-thread-scroll{flex:1 1;min-height:0;padding-bottom:48px;overflow-y:auto}.email-message{padding:18px 20px 22px;border-bottom:1px solid var(--line)}.email-message-heading{display:flex;min-width:0;align-items:center;gap:10px}.email-avatar{display:grid;width:30px;height:30px;flex:none;place-items:center;border-radius:50%;background:var(--surface-soft);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-strong)}.email-avatar.inbound{background:var(--mint-bg,#eefaf3);color:var(--mint,#0f7c58)}.email-message-sender{display:flex;min-width:0;flex:1 1;flex-direction:column}.email-message-sender strong{color:var(--ink);font-size:var(--fs-dense)}.email-message-sender span,.email-message-sender strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-message-heading time,.email-message-sender span{color:var(--faint);font-size:var(--fs-label)}.email-message-heading time{flex:none}.email-message-recipients{margin:5px 0 0 40px;color:var(--faint);font-size:var(--fs-label)}.email-body{margin:16px 0 0 40px;overflow-wrap:anywhere;white-space:pre-wrap;color:var(--text);font-size:var(--fs-dense);line-height:1.65}.master-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.client-add-btn{gap:7px}.master-toolbar .client-search-input{min-height:38px}.master-toolbar .compact-button,.master-toolbar .filter-btn{min-height:38px;border-radius:var(--r-md);font-size:var(--fs-dense);padding:0 11px}.master-toolbar :is(select,[data-app-select]){width:auto;min-width:140px;min-height:36px;padding:5px 10px;font-size:var(--fs-dense)}.filter-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);color:var(--muted);font-size:var(--fs-body);font-weight:var(--fw-body);transition:background .12s ease,border-color .12s ease,color .12s ease}.filter-btn:hover{background:var(--surface-soft);color:var(--text)}.filter-btn.set{border-color:var(--brass);color:var(--brass-deep);background:var(--brass-soft)}.filter-btn strong{font-weight:var(--fw-medium);color:var(--ink)}.filter-btn.set strong{color:var(--brass-deep)}.cell-pop-item.locked{cursor:default;color:var(--faint)}.cell-pop-item.locked:hover{background:transparent}.cell-pop-lock{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.06em;color:var(--faint)}.master-table-wrap{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow-x:auto}.master-table{width:100%;border-collapse:collapse;font-size:var(--fs-body)}.master-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1;background:var(--surface-soft);border-bottom:1px solid var(--line-strong);padding:11px 14px;text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--faint);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.master-table th:hover{color:var(--text)}.master-table th.sorted{color:var(--brass-deep)}.master-table th.master-actions-head{width:56px;cursor:default}.master-table th.master-actions-head:hover{color:var(--faint)}.master-table td{padding:13px 14px;border-bottom:1px solid var(--line);color:var(--text);white-space:nowrap}.master-table tbody tr{cursor:pointer;transition:background .08s ease}.master-table tbody tr:hover{background:var(--surface-soft)}.master-table tbody tr:last-child td{border-bottom:0}.master-name strong{display:block;font-weight:var(--fw-medium);color:var(--ink);max-width:320px;overflow:hidden;text-overflow:ellipsis}.master-muted{color:var(--muted)}.master-center{text-align:center;color:var(--green);font-weight:var(--fw-medium)}.master-count{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);width:64px}.master-status{display:inline-block;font-size:var(--fs-dense);font-weight:var(--fw-medium);padding:4px 10px;border-radius:var(--r-pill);background:var(--surface-soft);color:var(--muted)}.master-status.active{background:var(--green-soft);color:var(--green)}.master-status.review{background:var(--amber-soft);color:var(--amber)}.master-status.closed{background:var(--red-soft);color:var(--red)}.master-tags{display:inline-flex;gap:4px;flex-wrap:nowrap}.master-tag{display:inline-block;font-size:var(--fs-dense);font-weight:var(--fw-medium);padding:4px 10px;border-radius:var(--r-pill);white-space:nowrap}.master-tag.acct{background:var(--brass-soft);color:var(--brass)}.master-tag.payroll{background:var(--green-soft);color:var(--green)}.master-name{cursor:pointer}.master-name:hover strong{color:var(--brass);text-decoration:underline}.master-actions-cell{width:56px;text-align:right}.master-row-action{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid transparent;border-radius:var(--r-pill);background:transparent;color:var(--muted);cursor:pointer}.master-row-action:hover{border-color:var(--line);background:var(--surface);color:var(--ink)}.master-row-action.danger{color:var(--red)}.master-row-action.danger:hover{border-color:var(--red-soft);background:var(--red-soft);color:var(--red)}.master-row-action:disabled{cursor:default;opacity:.6}.master-editable{cursor:cell}.master-editable:hover{box-shadow:inset 0 0 0 1px var(--line-strong);border-radius:var(--r-sm)}.master-editable.editing{box-shadow:inset 0 0 0 1px var(--brass);border-radius:var(--r-sm)}@keyframes pop-in{0%{opacity:0;transform:translateY(-3px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.cell-pop-backdrop{position:fixed;inset:0;z-index:300}.cell-pop{position:fixed;z-index:301;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);padding:6px;animation:pop-in .12s cubic-bezier(.2,.8,.4,1) both;max-height:420px;overflow-y:auto}.cell-pop-item{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;border:0;background:transparent;border-radius:var(--r-md);min-height:42px;padding:9px 12px;font-size:var(--fs-body);color:var(--text);text-align:left;cursor:pointer;transition:background .08s ease}.cell-pop-item:hover{background:var(--surface-soft)}.cell-pop-item.current{font-weight:var(--fw-medium);color:var(--ink)}.cell-pop-item.clear{color:var(--muted);font-size:var(--fs-body)}.cell-pop-item.clear:hover{color:var(--red);background:var(--red-soft)}.cell-pop-check{color:var(--brass);font-weight:var(--fw-medium);font-size:var(--fs-dense)}.cell-pop-divider{height:1px;background:var(--line);margin:3px 4px}.cell-pop-search{width:calc(100% - 8px);margin:2px 4px 4px;min-height:42px;padding:8px 11px;font-size:var(--fs-body);border-radius:var(--r-md)}.cell-pop-scroll{max-height:230px;overflow-y:auto}.cell-pop-clientname{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-input-overlay{position:fixed;z-index:301;border:1px solid var(--brass);border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow-pop);padding:0 11px;font-size:var(--fs-dense);color:var(--text);outline:none}.sheet-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:14px}.sheet-tab{border:0;background:transparent;color:var(--muted);min-height:42px;font-size:var(--fs-body);font-weight:var(--fw-body);padding:0 16px;border-radius:var(--r-lg);transition:background .1s ease,color .1s ease}.sheet-tab:hover{background:var(--surface-soft);color:var(--text)}.sheet-tab.active{background:var(--hilite-soft);color:var(--ink);font-weight:var(--fw-medium)}.sheet-tab-count{margin-left:6px;font-size:var(--fs-label);color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sheet-tab.alert .sheet-tab-count{color:var(--red);font-weight:var(--fw-medium)}.sheet-section{display:flex;flex-direction:column;gap:10px}.sheet-toolbar{display:flex;gap:10px;flex-wrap:wrap}.sheet-hint{margin:0;color:var(--faint);font-size:var(--fs-dense)}.sheet-subtitle{margin:0;font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:-.01em}.sheet-subtitle span{color:var(--faint);font-weight:var(--fw-body);font-size:var(--fs-dense);margin-left:6px}.sched-wrap{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:auto;max-height:68vh}.sched-grid{border-collapse:separate;border-spacing:0;font-size:var(--fs-dense);width:max-content;min-width:100%}.sched-grid th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--surface-soft);border-bottom:1px solid var(--line-strong);padding:6px 8px;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);text-align:center;white-space:nowrap}.sched-grid th.now{color:var(--brass);background:var(--hilite-tint)}.sched-grid th.sched-client{left:0;z-index:3;text-align:left;letter-spacing:.08em}.sched-grid td{height:30px;line-height:30px;padding-top:0;padding-bottom:0;vertical-align:middle}.sched-grid td.sched-client{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--surface);border-right:1px solid var(--line);padding-left:10px;padding-right:10px;font-weight:var(--fw-body);color:var(--ink);white-space:nowrap;max-width:230px;overflow:hidden;text-overflow:ellipsis}.sched-cell{min-width:42px;border-right:1px solid var(--surface-soft);text-align:center;font-size:var(--fs-dense);font-weight:var(--fw-medium);color:var(--muted);overflow:hidden}.sched-cell,.sched-grid td.sched-client{border-bottom:1px solid var(--line)}.sched-grid tbody tr:last-child td{border-bottom:0}.sched-cell.now{background:var(--hilite-tint)}.sched-cell.has-task{cursor:pointer}.sched-cell.has-task:hover{box-shadow:inset 0 0 0 1px var(--line-strong)}.sched-cell.has-task.st-pending{background:#f3f3f1}.sched-cell.has-task.st-in_progress,.sched-cell.has-task.st-pending.now{background:var(--hilite-soft)}.sched-cell.has-task.st-waiting_client{background:var(--amber-soft);color:var(--amber)}.sched-cell.has-task.st-done{background:var(--green-soft);color:var(--green)}.sched-cell.has-task.st-issue{background:var(--red-soft);color:var(--red)}.sched-cell.has-task.st-na{background:transparent;color:var(--faint)}.cell-pop-status{display:inline-flex;align-items:center;gap:8px}.capacity-overdue{color:var(--red);font-weight:var(--fw-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.vis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(420px,1fr));grid-gap:14px;gap:14px}.vis-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:16px 18px;display:flex;flex-direction:column;gap:12px}.vis-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.vis-card-head strong{font-size:var(--fs-body);color:var(--ink)}.vis-summary{color:var(--faint);font-size:var(--fs-dense)}.vis-seg{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--r-md);overflow:hidden;width:-moz-fit-content;width:fit-content}.vis-seg-btn{border:0;background:var(--surface);color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);padding:6px 13px;border-right:1px solid var(--line);transition:background .1s ease,color .1s ease}.vis-seg-btn:last-child{border-right:0}.vis-seg-btn:hover{background:var(--surface-soft)}.vis-seg-btn.active{background:var(--hilite-soft);color:var(--ink);font-weight:var(--fw-medium)}.vis-row{display:flex;gap:10px;align-items:flex-start}.vis-row-label{width:58px;flex-shrink:0;padding-top:4px;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--faint)}.vis-chips{display:flex;flex-wrap:wrap;gap:6px}.vis-chip{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-dense);padding:2px 7px 2px 9px;border-radius:var(--r-pill);background:var(--surface-soft);border:1px solid var(--line);color:var(--text)}.vis-chip button{border:0;background:transparent;color:var(--faint);font-size:var(--fs-dense);padding:0 2px;line-height:1}.vis-chip button:hover{color:var(--red)}.vis-add{border:1px dashed var(--line-strong);background:transparent;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);padding:2px 10px;border-radius:var(--r-pill);transition:color .1s ease,border-color .1s ease}.vis-add:hover{color:var(--brass-deep);border-color:var(--brass)}.topbar-actions{display:inline-flex;align-items:center;gap:14px}.ops-delete-col{width:36px}.ops-delete-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--faint);transition:background .1s ease,color .1s ease}.ops-delete-btn:hover{background:var(--red-soft);color:var(--red)}.task-modal{width:min(94vw,460px);background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-modal);padding:22px 24px}.task-modal h3{margin:0 0 16px;font-size:var(--fs-title);letter-spacing:-.01em}.task-form{gap:12px}.task-field,.task-form{display:flex;flex-direction:column}.task-field{gap:5px}.task-field>span{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--faint)}.task-field .filter-btn{justify-content:space-between;width:100%}.panel-action-bar{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-bottom:2px}.panel-action-bar>form{flex:1 1 100%}.client-modal{width:min(94vw,520px)}.folder-modal{width:min(94vw,420px)}.folder-template-modal{width:min(94vw,820px)}.folder-template-header{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px}.folder-template-header h3{margin:0}.folder-template-layout{display:grid;grid-template-columns:minmax(220px,.9fr) minmax(280px,1.1fr);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}.folder-template-list{background:var(--surface);border-right:1px solid var(--line);padding:8px}.folder-template-option{width:100%;min-height:44px;display:flex;align-items:center;gap:10px;border:0;border-radius:var(--r-md);background:transparent;color:var(--ink);cursor:pointer;padding:0 10px;font-size:var(--fs-body);text-align:left}.folder-template-option.active,.folder-template-option:hover{background:var(--surface-soft)}.folder-template-selection-dot{width:9px;height:9px;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:transparent;flex-shrink:0}.folder-template-option.active .folder-template-selection-dot{border-color:var(--ink);background:var(--ink)}.folder-template-preview{background:var(--surface-soft);color:var(--ink);padding:18px 16px 16px;max-height:460px;overflow:auto}.folder-template-preview h4{margin:0 0 14px;font-size:var(--fs-title);font-weight:var(--fw-body);color:var(--ink)}.folder-template-preview-row{--template-depth:0;display:flex;align-items:center;gap:10px;min-height:40px;margin:0 0 8px calc(var(--template-depth) * 26px);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);padding:0 12px;font-weight:var(--fw-strong)}.folder-template-preview-row svg{color:var(--muted)}.client-edit-modal{width:min(94vw,760px);max-height:88vh;overflow:auto}.client-edit-header{display:flex;justify-content:space-between;gap:18px;margin-bottom:16px}.client-edit-header h3{margin:0}.client-edit-subtitle{max-width:240px;color:var(--muted);font-size:var(--fs-dense);text-align:right;overflow-wrap:anywhere}.client-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px 14px;gap:12px 14px}.client-edit-form .full-span{grid-column:1/-1}.client-form-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:8px;padding:14px 2px 7px;border-bottom:1px solid var(--line)}.client-form-section-title strong{color:var(--ink);font-size:var(--fs-body)}.client-form-section-title span{color:var(--muted);font-size:var(--fs-label);text-align:right}.client-form-hint{margin:-4px 0 2px;font-size:var(--fs-dense);line-height:1.5;color:var(--muted)}.employee-master-modal{width:min(94vw,620px)}.employee-master-note{margin:-2px 0 18px;color:var(--muted);font-size:var(--fs-dense);line-height:1.55}.employee-master-file input{min-height:44px;padding:9px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface-soft)}.entity-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px}.entity-search-results{display:grid;grid-gap:7px;gap:7px;max-height:220px;overflow:auto}.entity-search-results button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:10px 12px;color:var(--ink);cursor:pointer;text-align:left}.entity-search-results button.selected{border-color:var(--brass);background:var(--brass-soft)}.entity-search-results span{color:var(--muted);font-size:var(--fs-label)}.task-field :is(select,[data-app-select]),.task-field textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font:inherit}.task-field :is(select,[data-app-select]){min-height:40px;padding:0 10px}.task-field textarea{resize:vertical;padding:10px;line-height:1.45}.client-type-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.client-type-choice{min-height:42px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--muted);cursor:pointer;font-weight:var(--fw-strong)}.client-type-choice:hover{border-color:var(--line-strong);background:var(--surface-soft);color:var(--ink)}.client-type-choice.active{border-color:var(--brass);background:var(--brass-soft);color:var(--brass-deep)}.client-service-picker{display:flex;gap:8px}.client-service-choice{min-height:40px;min-width:72px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--muted);cursor:pointer;font-weight:var(--fw-strong)}.client-service-choice:hover{border-color:var(--line-strong);background:var(--surface-soft);color:var(--ink)}.client-service-choice.active{border-color:var(--brass);background:var(--brass-soft);color:var(--brass-deep)}.client-checkbox-field .client-service-choice{width:86px}@media (max-width:720px){.client-edit-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);padding:18px}.client-edit-form{grid-template-columns:1fr}.client-edit-form .full-span{grid-column:1}.client-form-section-title{align-items:flex-start;flex-direction:column;gap:4px}.client-form-section-title span{text-align:left}}.file-upload-root-btn.danger{border-color:var(--red-line);color:var(--red)}.file-upload-root-btn.danger:hover{background:var(--red-soft)}.task-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.confirm-overlay{position:fixed;inset:0;z-index:140;display:grid;place-items:center;padding:0 16px;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in .18s ease both}.confirm-modal{width:min(100%,430px);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--surface);color:var(--text);box-shadow:var(--shadow-pop);padding:20px;animation:rise .4s cubic-bezier(.22,.61,.36,1) both}.confirm-overlay.closing{animation:fade-in .22s ease reverse both;pointer-events:none}.confirm-overlay.closing .confirm-modal{animation:rise .22s cubic-bezier(.22,.61,.36,1) reverse both}.confirm-eyebrow{margin-bottom:8px;color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.16em;text-transform:uppercase}.confirm-title{margin:0;color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium);letter-spacing:-.02em}.confirm-message{margin:8px 0 0;color:var(--muted);font-size:var(--fs-dense);line-height:1.6}.confirm-error{margin-top:16px;border:1px solid var(--red-soft);border-radius:var(--r-md);background:var(--red-soft);color:var(--red);padding:8px 12px;font-size:var(--fs-dense);font-weight:var(--fw-medium)}.confirm-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:20px}.confirm-cancel,.confirm-danger,.confirm-primary{border-radius:var(--r-pill);padding:8px 16px;font-size:var(--fs-dense);transition:background .12s ease,color .12s ease,filter .12s ease}.confirm-cancel{border:1px solid var(--line);background:var(--surface);color:var(--muted);font-weight:var(--fw-strong)}.confirm-cancel:hover{background:var(--surface-soft);color:var(--ink)}.confirm-danger{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--red);background:var(--red);color:#fff;font-weight:var(--fw-strong)}.confirm-danger:hover{filter:brightness(.95)}.confirm-primary{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--ink);background:var(--ink);color:var(--surface);font-weight:var(--fw-strong)}.confirm-primary:hover{filter:brightness(1.12)}.confirm-cancel:disabled,.confirm-danger:disabled,.confirm-primary:disabled{cursor:wait;opacity:.65}.payroll-mapping-notice{display:flex;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--green) 35%,var(--line));border-radius:var(--r-md);background:var(--green-soft);color:var(--green);padding:9px 12px;font-size:var(--fs-dense);font-weight:var(--fw-medium)}.payroll-mapping-notice button{margin-left:auto;border:0;background:transparent;color:inherit;cursor:pointer;font:inherit}@media (prefers-reduced-motion:reduce){.confirm-modal,.confirm-overlay{animation:none}}.cap-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:16px 18px 14px}.cap-card .ops-table,.cap-card .sched-wrap{border:0;border-radius:0}.cap-card .sched-wrap{border-top:1px solid var(--line);border-radius:0 0 var(--r-md) var(--r-md)}.cap-chart-wrap{width:100%}.cap-chart{width:100%;height:180px;display:block}.cap-chart-labels{display:flex;padding-top:4px}.cap-chart-labels span{flex:1 1;text-align:center;font-size:var(--fs-label);color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.cap-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:var(--fs-dense);color:var(--muted);padding-top:4px}.cap-legend span{display:inline-flex;align-items:center;gap:6px}.cap-legend i{display:inline-block;width:10px;height:10px;border-radius:var(--r-sm)}.cap-legend-line{width:16px!important;height:0!important;border-top:2px dashed var(--amber);border-radius:0!important}.heat-total{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:var(--fw-medium);color:var(--ink);text-align:right;padding-right:10px!important;padding-left:10px!important}.heat-cell{min-width:46px;text-align:center;font-size:var(--fs-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);border-right:1px solid var(--surface-soft);border-bottom:1px solid var(--surface-soft)}.cap-time-table th{position:-webkit-sticky;position:sticky;top:0;z-index:1}.cap-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap}.cap-spark-cell{color:var(--brass)}.cap-spark{display:block}.cap-stale{margin-left:7px;font-size:var(--fs-label);font-weight:var(--fw-medium);padding:1px 6px;border-radius:var(--r-pill)}.cap-stale.stale-warn{background:var(--amber-soft);color:var(--amber)}.cap-stale.stale-bad{background:var(--red-soft);color:var(--red)}.ops-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px}.ops-stat{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:14px 18px;display:flex;flex-direction:column;gap:2px}.ops-stat-value{font-size:var(--fs-page);font-weight:var(--fw-medium);letter-spacing:-.02em;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ops-stat.alert .ops-stat-value{color:var(--red)}.ops-stat-label{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.ops-filters{display:flex;gap:10px}.ops-filters :is(select,[data-app-select]){width:auto;min-width:170px;min-height:34px;padding:5px 10px;font-size:var(--fs-dense)}.ops-bucket{margin-top:4px}.ops-bucket-title{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:var(--fs-dense);font-weight:var(--fw-medium);letter-spacing:-.01em}.ops-bucket-title span{color:var(--faint);font-weight:var(--fw-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ops-bucket-title.overdue{color:var(--red)}.ops-bucket-title.overdue span{color:var(--red);opacity:.7}.ops-toggle{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-body);padding:2px 9px;margin-left:4px}.ops-toggle:hover{background:var(--surface-soft)}.ops-empty{border:1px dashed var(--line);border-radius:var(--r-md);padding:14px 16px}.ops-empty,.ops-truncated{color:var(--faint);font-size:var(--fs-dense)}.ops-truncated{margin:8px 0 0}.ops-table{width:100%;border-collapse:collapse;font-size:var(--fs-body);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.ops-table th{background:var(--surface-soft);border-bottom:1px solid var(--line-strong);padding:10px 14px;text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.ops-table td{padding:12px 14px;border-bottom:1px solid var(--line);color:var(--text);height:54px}.ops-table tbody tr:last-child td{border-bottom:0}.ops-table td:first-child{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);width:92px}.ops-label{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-assignee{white-space:nowrap;color:var(--muted)}.ops-client-link{border:0;background:transparent;padding:0;font:inherit;font-weight:var(--fw-body);color:var(--ink);cursor:pointer}.ops-client-link:hover{color:var(--brass);text-decoration:underline}.ops-type-chip{display:inline-block;font-size:var(--fs-label);font-weight:var(--fw-medium);padding:2px 8px;border-radius:var(--r-pill);background:var(--surface-soft);color:var(--muted);white-space:nowrap}.ops-type-chip.payroll_weekly{background:var(--brass-soft);color:var(--brass)}.ops-type-chip.bookkeeping_close{background:var(--hilite-tint);color:var(--ink)}.ops-type-chip.sales_tax{background:var(--amber-soft);color:var(--amber)}.ops-type-chip.ifta_hut{background:var(--green-soft);color:var(--green)}.ops-type-chip.annual_filing{background:var(--red-soft);color:var(--red)}.ops-status-select{display:inline-flex;align-items:center;gap:7px;width:auto;min-height:38px;padding:4px 12px;font-size:var(--fs-dense);font-weight:var(--fw-body);border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;transition:box-shadow .1s ease}.ops-status-select:hover{box-shadow:inset 0 0 0 1px var(--line-strong)}.ops-status-select.st-done{background:var(--green-soft);color:var(--green);border-color:transparent}.ops-status-select.st-in_progress{background:var(--hilite-soft);color:var(--brass-deep);border-color:transparent}.ops-status-select.st-waiting_client{background:var(--amber-soft);color:var(--amber);border-color:transparent}.ops-status-select.st-issue{background:var(--red-soft);color:var(--red);border-color:transparent}.ops-status-select.st-na{color:var(--faint)}.info-task{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:var(--fs-dense)}.info-task-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--faint)}.info-task-dot.st-in_progress{background:var(--brass)}.info-task-dot.st-waiting_client{background:var(--amber)}.info-task-dot.st-issue{background:var(--red)}.info-task-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-task-due{color:var(--faint);font-size:var(--fs-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ingestion-status-grid{display:grid;grid-template-columns:repeat(2,minmax(340px,1fr));grid-gap:34px 48px;gap:34px 48px;align-items:start}.payroll-intake-card{width:min(880px,calc(100% - 32px));margin:0 auto 22px}.payroll-intake-dropzone{min-height:142px;display:flex;align-items:center;justify-content:center;gap:15px;padding:28px 24px;border:1px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.payroll-intake-dropzone.dragover,.payroll-intake-dropzone:hover{border-color:var(--brass);background:var(--brass-soft);color:var(--brass-deep)}.payroll-intake-dropzone.busy{cursor:progress;opacity:.75}.payroll-intake-dropzone strong{color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium)}.payroll-intake-ai-icon{width:42px;height:42px;display:inline-flex;flex:0 0 42px;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--brass) 35%,var(--line));border-radius:50%;background:linear-gradient(135deg,var(--brass-soft),var(--surface));color:var(--brass-deep);box-shadow:0 5px 16px color-mix(in srgb,var(--brass) 18%,transparent)}.payroll-intake-message{margin:8px 2px 0;font-size:var(--fs-dense)}.payroll-intake-message.error{color:var(--red,#a33a32)}.payroll-intake-message.success{color:var(--green,#2e6a45)}.ingestion-status-card{display:flex;flex-direction:column;gap:12px;min-width:0;border:0;border-radius:0;background:transparent;padding:0}.ingestion-status-card.wide{grid-column:1/-1}.ingestion-status-card .empty-state{min-height:96px;align-content:start;justify-items:start;text-align:left;padding:4px 0}.ingestion-status-card .ops-empty{border:0;border-radius:0;padding:0;color:var(--faint);font-size:var(--fs-page);line-height:1.25}.ingestion-card-head{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:24px}.ingestion-card-head h3{margin:0;color:var(--faint);font-size:var(--fs-dense);font-weight:var(--fw-strong);letter-spacing:.18em;text-transform:uppercase}.ingestion-batch-list{display:grid;grid-gap:30px;gap:30px;margin-top:8px}.ingestion-date-batch{min-width:0}.ingestion-date-batch-head{padding:0 2px 8px}.ingestion-date-batch-head h4{margin:0;color:var(--faint);font-size:var(--fs-dense);font-weight:var(--fw-body)}.ingestion-date-batch-table{overflow:hidden;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.ingestion-date-batch .ingestion-table{margin:0;border:0;border-radius:0}.ingestion-table{border:0;border-radius:0;background:transparent;table-layout:fixed}.ingestion-table td{border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent);height:auto;padding:24px 18px 24px 0;background:transparent;line-height:1.45;vertical-align:middle}.ingestion-file-name{min-width:0}.ingestion-file-name,.ingestion-file-name a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingestion-row-action{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border:1px solid transparent;border-radius:var(--r-pill);background:transparent;color:var(--muted);cursor:pointer;padding:0}.ingestion-row-action:hover{border-color:var(--line);background:var(--surface-soft);color:var(--ink)}.ingestion-row-action.muted{color:var(--faint)}.ingestion-row-action.danger{color:var(--red)}.ingestion-row-action.danger:hover{border-color:var(--red-soft);background:var(--red-soft);color:var(--red)}.ingestion-row-action:disabled{cursor:wait;opacity:.6}.ingestion-retry-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);color:var(--ink);cursor:pointer;font-size:.78rem;font-weight:var(--fw-strong);padding:0 14px;white-space:nowrap}.ingestion-retry-btn:hover{border-color:var(--brass);background:var(--brass-soft);color:var(--brass-deep)}.ingestion-retry-btn:disabled{cursor:wait;opacity:.65}.ingestion-action-cell{text-align:right;vertical-align:middle;white-space:nowrap}.ingestion-action-cell .ingestion-retry-btn,.ingestion-action-cell .ingestion-row-action{margin-left:8px;vertical-align:middle}.ingestion-table td:first-child,.ingestion-table th:first-child{width:48px;padding-left:0;padding-right:0;text-align:center}.ingestion-table td:first-child{vertical-align:middle}.ingestion-table td:first-child>.ingestion-state-indicator,.ingestion-table td:first-child>.ingestion-status-chip{display:flex;margin-right:auto;margin-left:auto}.ingestion-status-card .ingestion-table td{height:52px;padding-top:7px;padding-bottom:7px}.ingestion-status-card .ingestion-table .ingestion-partial-row td{height:auto}.ingestion-table td:nth-child(2),.ingestion-table th:nth-child(2){width:320px;text-align:left}.ingestion-client-cell{color:var(--text);font-weight:var(--fw-body)}.ingestion-client-cell,.ingestion-client-cell .ops-client-link{overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ingestion-client-cell .ops-client-link{display:block;width:100%;color:inherit;font-weight:inherit}.ingestion-table td:nth-child(4),.ingestion-table th:nth-child(4){width:86px}.ingestion-table td:nth-child(5),.ingestion-table th:nth-child(5){width:140px;white-space:nowrap}.ingestion-table td:nth-child(6),.ingestion-table th:nth-child(6){width:86px;padding-right:12px;text-align:right}.ingestion-table a{color:var(--ink);text-decoration:none}.ingestion-table a:hover{color:var(--brass);text-decoration:underline}.ingestion-status-chip{display:flex;align-items:center;justify-content:center;width:28px;height:28px;line-height:1;flex:0 0 28px;margin:0 auto;border-radius:0;border:0;padding:0;font-size:var(--fs-label);font-weight:var(--fw-body);white-space:nowrap;background:transparent;color:var(--muted)}.ingestion-status-chip.processing,.ingestion-status-chip.writing{color:var(--ink)}.ingestion-processing-mark{display:inline-grid;grid-template-columns:repeat(3,3px);gap:2.5px;width:16px;height:16px;place-content:center;line-height:0}.ingestion-processing-mark span{width:3px;height:3px;border-radius:var(--r-pill);background:currentColor;opacity:.2;transform:scale(.55);animation:ingestion-constellation 1.8s cubic-bezier(.42,0,.18,1) infinite}.ingestion-processing-mark span:first-child{animation-delay:.54s}.ingestion-processing-mark span:nth-child(2){animation-delay:.18s}.ingestion-processing-mark span:nth-child(3){animation-delay:.72s}.ingestion-processing-mark span:nth-child(4){animation-delay:.36s}.ingestion-processing-mark span:nth-child(5){animation-delay:0s}.ingestion-processing-mark span:nth-child(6){animation-delay:.9s}.ingestion-processing-mark span:nth-child(7){animation-delay:.63s}.ingestion-processing-mark span:nth-child(8){animation-delay:.27s}.ingestion-processing-mark span:nth-child(9){animation-delay:.81s}@keyframes ingestion-constellation{0%,to{opacity:.16;transform:scale(.5)}22%{opacity:.95;transform:scale(1.15)}44%{opacity:.32;transform:scale(.72)}}@media (prefers-reduced-motion:reduce){.ingestion-processing-mark span{animation:none}}.ingestion-status-chip.partial{color:#a76a16}.ingestion-menu-dot,.ingestion-status-dot{display:inline-block;width:8px;height:8px;border-radius:var(--r-pill);background:var(--muted)}.ingestion-menu-dot.error{background:var(--red)}.ingestion-menu-dot.partial,.ingestion-status-chip.partial .ingestion-status-dot{background:#c5862b}.ingestion-menu-dot.processing{width:9px;height:9px;background:var(--ink);box-shadow:-5px 0 0 color-mix(in srgb,var(--ink) 22%,transparent),5px 0 0 color-mix(in srgb,var(--ink) 22%,transparent)}.ingestion-partial-row td{padding:0 0 24px 114px;border-bottom:1px solid color-mix(in srgb,var(--line) 58%,transparent)}.ingestion-partial-bill-list{display:grid;grid-gap:6px;gap:6px;margin:0;padding:0 16px 0 0;list-style:none}.ingestion-partial-bill{display:grid;grid-template-columns:70px minmax(180px,1fr) 96px minmax(0,1.6fr);grid-gap:12px;gap:12px;align-items:center;min-width:0;border-left:4px solid var(--line);padding:7px 0 7px 12px}.ingestion-partial-bill.posted{border-left-color:var(--green)}.ingestion-partial-bill.failed{border-left-color:var(--red)}.ingestion-partial-bill-status{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.12em;text-transform:uppercase}.ingestion-partial-bill.posted .ingestion-partial-bill-status{color:var(--green)}.ingestion-partial-bill.failed .ingestion-partial-bill-status{color:var(--red)}.ingestion-partial-bill-error,.ingestion-partial-bill-vendor{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingestion-partial-bill-vendor{color:var(--text);font-size:var(--fs-dense);font-weight:var(--fw-medium)}.ingestion-partial-bill-amount{color:var(--muted);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.ingestion-partial-bill-error{color:color-mix(in srgb,var(--red) 80%,var(--muted));font-size:var(--fs-dense)}.ingestion-empty{margin:0;padding-top:4px;color:var(--faint);font-size:var(--fs-title);line-height:1.45}.client-overview{display:flex;flex-direction:column;gap:24px;min-width:0}.client-summary-strip{display:grid;grid-template-columns:.82fr 1.08fr 1fr 1.12fr 1.22fr;align-items:stretch;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.client-summary-item{min-width:0;padding:17px 20px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;gap:5px}.client-summary-item:last-child{border-right:0}.client-summary-item>span{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;text-transform:uppercase}.client-summary-item strong{color:var(--ink);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1.35;overflow-wrap:anywhere}.client-summary-item small{color:var(--muted);font-size:var(--fs-dense);line-height:1.3}.client-summary-status{display:inline-flex;align-items:center;gap:8px}.client-ingestion-health i,.client-summary-status i{width:8px;height:8px;border-radius:var(--r-pill);background:var(--faint);flex:0 0 auto}.client-ingestion-health i,.client-summary-status i.active{background:var(--green)}.client-overview-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.95fr);align-items:start;grid-gap:20px;gap:20px}.client-overview-main,.client-overview-rail{display:flex;flex-direction:column;gap:18px;min-width:0}.client-overview-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.client-overview-card-header{min-height:58px;padding:13px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.client-overview-card-header h3,.client-overview-subsection h3{margin:0;color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium);letter-spacing:-.01em}.client-overview-primary-action{min-height:36px;padding:0 13px;border:1px solid var(--ink);border-radius:var(--r-md);background:var(--ink);color:#ffffff;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:var(--fs-dense);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;transition:background .15s ease,transform .15s ease}.client-overview-primary-action:hover{background:#000000;transform:translateY(-1px)}.contact-edit-button{min-height:32px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);padding:0 10px;font-size:var(--fs-dense);font-weight:var(--fw-medium)}.contact-edit-button:hover{background:var(--surface-soft)}.client-detail-list{padding:0 18px}.client-detail-row{display:grid;grid-template-columns:minmax(120px,.44fr) minmax(0,1fr);align-items:baseline;grid-gap:22px;gap:22px;min-height:44px;padding:11px 0;border-bottom:1px solid var(--line);font-size:var(--fs-dense)}.client-detail-row:last-child{border-bottom:0}.client-detail-row>span{color:var(--muted)}.client-detail-row>a,.client-detail-row>strong{min-width:0;color:var(--ink);font-weight:var(--fw-medium);line-height:1.5;overflow-wrap:anywhere}.client-detail-row>a{color:var(--brass-deep);text-decoration:none}.client-detail-row>a:hover{text-decoration:underline}.client-overview-subsection{margin-top:8px;padding:20px 18px 4px;border-top:1px solid var(--line)}.client-overview-subsection .client-detail-list{padding:10px 0 0}.client-detail-list-compact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column-gap:28px;column-gap:28px}.client-detail-list-compact .client-detail-row:nth-last-child(-n+2){border-bottom:0}.client-ingestion-health{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-medium)}.client-ingestion-list,.client-open-work-list,.client-people-list,.client-relationship-rows{padding:0 18px}.client-pane-loading{min-height:88px;gap:8px;color:var(--muted)}.client-pane-empty,.client-pane-loading{display:flex;align-items:center;justify-content:center;font-size:var(--fs-dense)}.client-pane-empty{min-height:72px;color:var(--faint)}.contact-detail-loading{min-height:240px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--muted);font-size:var(--fs-dense)}.contact-detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.9fr);align-items:start;grid-gap:20px;gap:20px}.contact-edit-modal{width:min(94vw,640px)}.contacts-name-button{border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.contacts-name-button:hover strong{color:var(--brass-deep)}.client-ingestion-row{min-height:48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:var(--fs-dense)}.client-ingestion-row:last-child{border-bottom:0}.client-ingestion-row strong{color:var(--ink);font-weight:var(--fw-medium)}.client-ingestion-row span{color:var(--faint)}.client-quick-actions>button{width:100%;min-height:60px;padding:10px 18px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;cursor:pointer;transition:background .12s ease}.client-quick-actions>button:last-child{border-bottom:0}.client-quick-actions>button:hover{background:var(--surface-soft)}.client-quick-actions>button>span{min-width:0;display:flex;align-items:center;gap:12px}.client-person-row>div,.client-quick-actions>button>span>span,.client-relationship-rows button>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.client-person-row button,.client-person-row strong,.client-quick-actions strong,.client-relationship-rows strong{color:var(--ink);font-size:var(--fs-dense);font-weight:var(--fw-medium)}.client-person-row small,.client-quick-actions small,.client-relationship-rows small{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-body)}.client-person-row{min-height:72px;padding:12px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px}.client-person-row:last-child{border-bottom:0}.client-person-avatar{width:36px;height:36px;border-radius:var(--r-pill);background:var(--hilite-soft);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.02em}.client-person-avatar.organization{background:var(--lime-tint)}.client-person-row button{width:-moz-fit-content;width:fit-content;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}.client-person-row button:hover{color:var(--brass-deep)}.client-person-row>div>span{color:var(--muted);font-size:var(--fs-label);line-height:1.4;overflow-wrap:anywhere}.client-person-row a{color:var(--brass-deep);text-decoration:none}.client-person-row a:hover{text-decoration:underline}.client-relationship-rows>button{width:100%;min-height:62px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;display:grid;grid-template-columns:36px minmax(0,1fr) 16px;align-items:center;grid-gap:12px;gap:12px;text-align:left;cursor:pointer}.client-relationship-summary{min-height:42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:var(--fs-dense);text-transform:capitalize}.client-relationship-summary strong{color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.client-overview-secondary-action{width:calc(100% - 36px);min-height:38px;margin:14px 18px 16px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:var(--fs-dense);font-weight:var(--fw-medium);cursor:pointer}.client-overview-secondary-action:hover{background:var(--surface-soft)}.client-open-work-row{min-height:46px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;font-size:var(--fs-dense)}.client-open-work-row:last-child{border-bottom:0}.client-open-work-row strong{color:var(--ink);font-weight:var(--fw-medium)}.client-open-work-row>span:last-child{color:var(--faint);white-space:nowrap}.ingestion-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.ingestion-table th{background:var(--surface-soft);border-bottom:1px solid var(--line-strong);padding:7px 12px;text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.ingestion-table td{padding:12px;border-bottom:1px solid var(--line);color:var(--text);height:40px}.ingestion-table tbody tr:last-child td{border-bottom:0}.ingestion-table td:first-child{font-weight:var(--fw-body)}.ingestion-table td:last-child{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ingestion-status-icon{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-dense);font-weight:var(--fw-body);color:var(--muted);white-space:nowrap}.ingestion-row.clickable{cursor:pointer}.ingestion-row.active td{background:var(--hilite-tint)}.je-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;color:var(--faint);border-radius:var(--r-sm);cursor:pointer;transition:background .1s ease,color .1s ease}.je-button:hover{background:var(--surface-soft);color:var(--brass-deep)}.je-panel{width:340px;flex-shrink:0;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);align-self:flex-start;position:-webkit-sticky;position:sticky;top:36px;animation:rise .2s ease both}.je-panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.je-panel-header strong{font-size:var(--fs-body);font-weight:var(--fw-medium)}.je-panel-header span{color:var(--muted);font-size:var(--fs-dense);margin-left:auto}.je-panel-close{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);font-size:var(--fs-body);border-radius:var(--r-sm);cursor:pointer;margin-left:4px}.je-panel-close:hover{background:var(--surface-soft);color:var(--text)}.je-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense)}.je-table th{padding:6px 12px;text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);border-bottom:1px solid var(--line)}.je-table th:nth-child(2),.je-table th:nth-child(3){text-align:right;width:80px}.je-table td{padding:5px 12px;border-bottom:1px solid var(--line);color:var(--text)}.je-table tbody tr:last-child td{border-bottom:0}.je-indent{padding-left:24px!important}.je-amount{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.je-credit-row td:first-child{color:var(--muted)}.ingestion-state-indicator{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;background:transparent}.ingestion-state-dot{width:12px;height:12px;border-radius:50%;background:currentColor}.ingestion-state-indicator.review{color:var(--brass)}.ingestion-state-indicator.completed{color:var(--muted)}.ingestion-state-indicator.error{color:var(--red)}.ingestion-task-row{cursor:pointer}.ingestion-task-row:focus-visible td,.ingestion-task-row:hover td{background:var(--surface-soft)}.ingestion-task-row:focus-visible{outline:2px solid var(--brass);outline-offset:-2px}.ingestion-detail-page{display:flex;flex-direction:column;gap:18px;min-width:0}.ingestion-detail-header{margin-bottom:0}.ingestion-detail-header h2{max-width:min(760px,72vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingestion-detail-status{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:18px 20px}.ingestion-detail-status.review{border-color:color-mix(in srgb,var(--brass) 35%,var(--line))}.ingestion-detail-status.error{border-color:color-mix(in srgb,var(--red) 35%,var(--line))}.ingestion-detail-status.partial{border-color:color-mix(in srgb,var(--amber) 40%,var(--line))}.ingestion-detail-status-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:var(--r-md);background:var(--surface-soft);color:var(--muted)}.ingestion-detail-status.review .ingestion-detail-status-icon{background:var(--brass-soft);color:var(--brass-deep)}.ingestion-detail-status.done .ingestion-detail-status-icon{color:var(--muted)}.ingestion-detail-status.error .ingestion-detail-status-icon{background:var(--red-soft);color:var(--red)}.ingestion-detail-status.partial .ingestion-detail-status-icon{background:var(--amber-soft);color:var(--amber)}.ingestion-detail-eyebrow{display:block;margin-bottom:3px;color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.13em;text-transform:uppercase}.ingestion-detail-card h3,.ingestion-detail-status h3{margin:0;color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium)}.ingestion-detail-status p{margin:3px 0 0;color:var(--muted);font-size:var(--fs-dense)}.ingestion-detail-status .ingestion-detail-queued-note{margin-top:8px;max-width:62ch}.ingestion-detail-review-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;border:1px solid var(--brass);border-radius:var(--r-lg);background:var(--brass-soft);color:var(--brass-deep);padding:18px 20px;font-size:var(--fs-body);font-weight:var(--fw-strong);transition:background .12s ease,border-color .12s ease,transform .12s ease}.ingestion-detail-review-action:hover:not(:disabled){border-color:var(--brass-deep);background:color-mix(in srgb,var(--brass-soft) 76%,white);transform:translateY(-1px)}.ingestion-detail-review-action:disabled{cursor:not-allowed;opacity:.5}.ingestion-detail-retry{white-space:nowrap}.ingestion-detail-error{display:flex;align-items:flex-start;gap:10px;border:1px solid color-mix(in srgb,var(--red) 25%,var(--line));border-radius:var(--r-md);background:var(--red-soft);color:var(--red);padding:13px 15px}.ingestion-detail-error strong{font-size:var(--fs-dense)}.ingestion-detail-error p{margin:3px 0 0;font-size:var(--fs-dense);line-height:1.5}.ingestion-detail-error-copy{min-width:0}.ingestion-detail-error-file{display:inline-flex;align-items:center;align-self:center;gap:6px;flex:0 0 auto;margin-left:auto;border:1px solid color-mix(in srgb,var(--red) 30%,var(--line));border-radius:var(--r-md);background:var(--surface);color:var(--red);min-height:34px;padding:0 12px;font-size:var(--fs-label);font-weight:var(--fw-medium);text-decoration:none}.ingestion-detail-error-file:hover{border-color:var(--red)}.ingestion-detail-card{min-width:0;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:18px}.ingestion-detail-card>h3{margin-bottom:14px}.ingestion-detail-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);align-items:center;grid-gap:20px;gap:20px;padding:14px 18px}.ingestion-detail-summary-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin:0}.ingestion-detail-summary-facts>div{display:flex;min-width:0;flex-direction:column;gap:3px}.ingestion-detail-summary-facts dt{color:var(--faint);font-size:var(--fs-label)}.ingestion-detail-summary-facts dd{min-width:0;margin:0;overflow:hidden;color:var(--text);font-size:var(--fs-dense);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.ingestion-detail-summary-facts button{max-width:100%;overflow:hidden;border:0;background:transparent;color:var(--brass-deep);padding:0;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ingestion-detail-summary .ingestion-detail-file{border-left:1px solid var(--line);padding-left:20px}.ingestion-detail-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:11px;gap:11px;min-height:48px}.ingestion-detail-file>svg{color:var(--faint)}.ingestion-detail-file>div{display:grid;grid-gap:3px;gap:3px;min-width:0}.ingestion-detail-file span,.ingestion-detail-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingestion-detail-file strong{color:var(--text);font-size:var(--fs-dense)}.ingestion-detail-file span{color:var(--faint);font-size:var(--fs-label)}.ingestion-detail-file a{display:inline-flex;align-items:center;gap:4px;color:var(--brass-deep);font-size:var(--fs-label);font-weight:var(--fw-medium);text-decoration:none}.ingestion-write-card{padding:0;overflow:hidden}.ingestion-write-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px 14px;border-bottom:1px solid var(--line)}.ingestion-write-counts{display:flex;gap:7px}.ingestion-write-counts span{border-radius:var(--r-pill);background:var(--surface-soft);color:var(--muted);padding:4px 8px;font-size:var(--fs-label);font-weight:var(--fw-strong)}.ingestion-write-counts span.failed{background:var(--red-soft);color:var(--red)}.ingestion-write-empty{display:flex;align-items:flex-start;gap:10px;color:var(--muted);padding:20px 18px}.ingestion-write-empty strong{color:var(--text);font-size:var(--fs-dense)}.ingestion-write-empty p{margin:3px 0 0;font-size:var(--fs-dense)}.ingestion-audit-table-wrap{overflow-x:auto}.ingestion-audit-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense)}.ingestion-audit-table th{padding:8px 12px;border-bottom:1px solid var(--line);background:var(--surface-soft);color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;text-align:left;text-transform:uppercase;white-space:nowrap}.ingestion-audit-table td{padding:10px 12px;border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);color:var(--muted);vertical-align:top;white-space:nowrap}.ingestion-audit-table tbody tr:last-child td{border-bottom:0}.ingestion-audit-table td strong{display:block;color:var(--text);font-size:var(--fs-dense)}.ingestion-audit-table td small{display:block;max-width:280px;margin-top:2px;overflow:hidden;color:var(--faint);font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap}.ingestion-audit-table td.amount{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.ingestion-audit-result{display:inline-flex;border-radius:var(--r-pill);background:var(--surface-soft);color:var(--muted);padding:3px 7px;font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.06em;text-transform:uppercase}.ingestion-audit-result.queued{background:color-mix(in srgb,var(--navy) 9%,var(--surface));color:var(--navy)}.ingestion-audit-result.failed{background:var(--red-soft);color:var(--red)}.ingestion-audit-table .ingestion-audit-lines-row td{padding:0;white-space:normal}.ingestion-audit-lines{border-bottom:1px solid color-mix(in srgb,var(--line) 65%,transparent);background:color-mix(in srgb,var(--surface-soft) 42%,transparent)}.ingestion-audit-lines summary{width:-moz-fit-content;width:fit-content;cursor:pointer;color:var(--brass-deep);padding:8px 12px 10px;font-size:var(--fs-label);font-weight:var(--fw-strong);list-style-position:inside}.ingestion-audit-lines[open] summary{padding-bottom:8px}.ingestion-audit-line-list{margin:0 12px 12px;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.ingestion-audit-line,.ingestion-audit-line-head{display:grid;grid-template-columns:minmax(210px,1.5fr) minmax(150px,1fr) minmax(90px,.55fr) 100px;grid-gap:12px;gap:12px;align-items:center}.ingestion-audit-line-head{background:var(--surface-soft);color:var(--faint);padding:7px 10px;font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;text-transform:uppercase}.ingestion-audit-line{border-top:1px solid color-mix(in srgb,var(--line) 65%,transparent);color:var(--muted);padding:8px 10px;font-size:var(--fs-label)}.ingestion-audit-line strong{overflow-wrap:anywhere;color:var(--text);font-size:var(--fs-label)}.ingestion-audit-line .amount{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.ingestion-audit-lines-unavailable{margin:0;color:var(--faint);padding:0 12px 12px;font-size:var(--fs-label)}.payroll-gl-table .payroll-gl-employee-cell,.payroll-gl-table th:first-child{width:24%}.payroll-gl-table th:nth-child(2){width:25%}.payroll-gl-table th:last-child{text-align:right}.payroll-gl-table .payroll-gl-employee+.payroll-gl-employee tr:first-child td{border-top:1px solid var(--line)}.payroll-gl-table .payroll-gl-employee-cell{padding-top:13px;background:color-mix(in srgb,var(--surface-soft) 35%,transparent);white-space:normal}.payroll-gl-employee-cell .ingestion-audit-result{margin-top:7px}.payroll-gl-employee-cell small{max-width:190px}.payroll-gl-table .payroll-gl-account{white-space:normal}.payroll-gl-table .payroll-gl-unavailable{color:var(--faint);font-size:var(--fs-label);white-space:normal}@media (max-width:900px){.ingestion-detail-error{flex-wrap:wrap}.ingestion-detail-error-file{width:100%;margin-left:28px}.ingestion-detail-summary{grid-template-columns:1fr}.ingestion-detail-summary .ingestion-detail-file{border-top:1px solid var(--line);border-left:0;padding-top:14px;padding-left:0}.ingestion-detail-status{grid-template-columns:auto minmax(0,1fr)}.ingestion-detail-status>button{grid-column:1/-1;justify-self:start}.ingestion-audit-line,.ingestion-audit-line-head{grid-template-columns:minmax(180px,1.5fr) minmax(130px,1fr) 90px}.ingestion-audit-line-head span:nth-child(3),.ingestion-audit-line>span:nth-child(3){display:none}}.vr-container{display:flex;flex-direction:column;gap:16px}.review-split{display:grid;grid-template-columns:minmax(360px,45vw) minmax(0,1fr);height:100vh;min-height:0;overflow:hidden;background:var(--paper)}.review-pdf-pane{position:relative;min-width:0;min-height:0;border-right:1px solid var(--line);background:var(--surface-soft)}.review-pdf-pane iframe{display:block;width:100%;height:100%;border:0;opacity:1;transition:opacity .16s ease}.review-pdf-pane.loading iframe{opacity:0}.review-pdf-loading{position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:var(--navy);background:var(--surface-soft)}.review-content-pane{min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px 28px 36px}.review-content-pane .vr-header{position:-webkit-sticky;position:sticky;top:-24px;z-index:12;margin:-24px -28px 0;padding:18px 28px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.vr-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:300px;color:var(--muted)}.vr-error-panel{display:flex;gap:12px;align-items:flex-start;max-width:640px;border:1px solid var(--red-soft);border-radius:var(--r-md);background:var(--red-soft);color:var(--red);padding:14px 16px}.vr-error-panel strong{display:block;margin-bottom:4px;font-size:var(--fs-dense)}.vr-error-panel p{margin:0;color:var(--muted);font-size:var(--fs-dense);line-height:1.5}.vr-info-panel{display:grid;grid-gap:6px;gap:6px;max-width:760px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-soft);color:var(--ink);padding:13px 15px;font-size:var(--fs-dense);line-height:1.45}.vr-info-panel>span{color:var(--muted)}.vr-header{display:flex;align-items:center;gap:16px}.vr-header-info{flex:1 1}.vr-header-info h3{margin:0;font-size:var(--fs-title);font-weight:var(--fw-body)}.vr-header-meta{color:var(--muted);font-size:var(--fs-dense)}.vr-approve-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--r-md);border:0;background:var(--ink);color:#fff;font-size:var(--fs-body);font-weight:var(--fw-medium);cursor:pointer;transition:background .12s ease}.vr-approve-btn:hover{background:#000000}.vr-approve-btn:disabled{opacity:.6;cursor:default}.vr-approve-btn.approved{background:var(--green-soft);color:var(--green)}.vr-review-wide{display:flex;flex-direction:column;gap:16px;overflow-x:hidden}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:first-child,.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:first-child{width:170px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:nth-child(2),.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:nth-child(2){width:auto;min-width:0}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:nth-child(3),.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:nth-child(4),.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:nth-child(3),.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:nth-child(4){width:102px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:nth-child(5),.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:nth-child(5){width:112px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td:nth-child(6),.review-content-pane .vr-lines-table:not(.payroll-lines-table) th:nth-child(6){width:48px;text-align:center}.review-content-pane .vr-lines-table:not(.payroll-lines-table) td,.review-content-pane .vr-lines-table:not(.payroll-lines-table) th{padding-left:8px;padding-right:8px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) .vr-action-cell{overflow:hidden}.review-content-pane .vr-lines-table:not(.payroll-lines-table) .vr-row-actions{justify-content:center}.review-content-pane .vr-lines-table:not(.payroll-lines-table) .vr-row-action.danger.icon{width:32px;height:32px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) .vr-amount-edit{width:90px;min-width:90px;padding-inline:6px}.review-content-pane .vr-lines-table:not(.payroll-lines-table) .vr-amount-edit input{width:58px}.payroll-review-checks{display:grid;grid-gap:14px;gap:14px}.payroll-check .vr-packet-header{align-items:center}.payroll-check{overflow:visible}.payroll-check:has(.vr-account-dropdown){z-index:30}.payroll-lines-table,.payroll-lines-table tbody,.payroll-lines-table td,.payroll-lines-table tr{overflow:visible}.payroll-lines-table .vr-line:has(.vr-account-dropdown){position:relative;z-index:35}.payroll-review .vr-account-dropdown{z-index:80}.payroll-floating-account-dropdown{position:fixed;right:auto;z-index:10000;margin-top:0;max-height:260px}.payroll-save-state{display:inline-flex;align-items:center;justify-content:flex-end;gap:10px}.payroll-save-state>span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-medium)}.payroll-add-check-button{white-space:nowrap}.payroll-add-check-footer{display:flex;justify-content:center;padding:4px 0 10px}.payroll-payee-picker{width:min(100%,520px)}.payroll-payee-search{display:flex;align-items:center;gap:8px;margin-top:16px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-soft);color:var(--faint);padding:0 11px}.payroll-payee-search:focus-within{border-color:var(--line-strong);box-shadow:none}.payroll-payee-search input{width:100%;height:38px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:var(--fs-dense)}.payroll-payee-options{display:grid;grid-gap:4px;gap:4px;max-height:min(360px,48vh);margin-top:9px;overflow-y:auto}.payroll-payee-options>button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text);padding:9px 10px;text-align:left}.payroll-payee-options>button:focus-visible,.payroll-payee-options>button:hover{border-color:var(--line);background:var(--surface-soft)}.payroll-payee-options>button span{display:grid;grid-gap:2px;gap:2px;min-width:0}.payroll-payee-options>button strong{overflow:hidden;font-size:var(--fs-dense);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap}.payroll-payee-options>button small{color:var(--muted);font-size:var(--fs-label)}.payroll-payee-options>button em{flex:0 0 auto;border-radius:var(--r-pill);background:var(--surface-raised,var(--surface-soft));color:var(--faint);padding:3px 7px;font-size:var(--fs-label);font-style:normal;font-weight:var(--fw-strong);letter-spacing:.07em;text-transform:uppercase}.payroll-payee-status{display:flex;align-items:center;justify-content:center;gap:7px;min-height:84px;color:var(--muted);font-size:var(--fs-dense)}.payroll-delete-check:disabled,.payroll-delete-line:disabled{cursor:not-allowed;opacity:.18}.payroll-bank-field{display:grid;grid-gap:5px;gap:5px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-soft)}.payroll-bank-field>span,.payroll-field>span{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;line-height:1;text-transform:uppercase}.payroll-field input,.payroll-inline-field-cell input{min-width:0;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text);font:inherit;font-size:var(--fs-dense)}.payroll-bank-field .vr-account-trigger{height:32px;background:var(--surface)}.payroll-field input:focus,.payroll-field input:hover,.payroll-inline-field-cell input:focus,.payroll-inline-field-cell input:hover{border-color:var(--line);background:var(--surface)}.payroll-field input.missing{border-color:color-mix(in srgb,var(--red) 38%,var(--line));background:var(--red-soft);color:var(--red)}.payroll-field input.missing::placeholder{color:var(--red)}.payroll-check-title{display:grid;grid-gap:4px;gap:4px;min-width:0}.payroll-balance-warning{color:var(--red)!important;font-size:var(--fs-label)!important;font-weight:var(--fw-medium)}.payroll-check-unbalanced{border-color:color-mix(in srgb,var(--red) 42%,var(--line))}.payroll-expected-edit{width:128px;min-width:128px}.payroll-check-meta{display:grid;grid-template-columns:minmax(150px,1.3fr) minmax(110px,.7fr) minmax(105px,.65fr);grid-gap:8px;gap:8px;padding:10px 12px;border-bottom:1px solid var(--line)}.payroll-field{display:grid;grid-gap:4px;gap:4px;min-width:0}.payroll-field>span{padding-left:8px}.payroll-field.wide{grid-column:1/-1}.payroll-field input,.payroll-payee-trigger{height:30px;padding:5px 8px}.payroll-payee-trigger{color:var(--text)}.payroll-field .payroll-payee-trigger>.vr-account-text{color:var(--text);font-size:var(--fs-dense);font-weight:var(--fw-medium);letter-spacing:normal;line-height:normal;text-transform:none}.payroll-check-payee-dropdown{max-height:280px}.payroll-check-payee-dropdown .vr-account-option,.payroll-check-payee-dropdown .vr-account-option-name,.payroll-check-payee-dropdown .vr-search-input{color:var(--text)}.payroll-payee-option>span{display:grid;min-width:0;grid-gap:2px;gap:2px}.payroll-payee-option em,.payroll-payee-option small{color:var(--faint);font-size:var(--fs-label)}.payroll-payee-option em{flex:0 0 auto;border-radius:var(--r-pill);background:var(--surface-soft);padding:3px 7px;font-style:normal;font-weight:var(--fw-strong);letter-spacing:.07em;text-transform:uppercase}.payroll-inline-field-cell input{width:100%;height:30px;padding:5px 8px}.payroll-lines-table td:first-child,.payroll-lines-table th:first-child{width:52%}.payroll-lines-table td:nth-child(2),.payroll-lines-table th:nth-child(2){width:20%;min-width:120px}.payroll-lines-table td:nth-child(3),.payroll-lines-table th:nth-child(3){width:130px;text-align:left}.payroll-lines-table td:nth-child(4),.payroll-lines-table th:nth-child(4){width:120px;text-align:right}.payroll-lines-table td:nth-child(5),.payroll-lines-table th:nth-child(5){width:46px;text-align:center}.payroll-lines-table .vr-account-cell{max-width:520px;overflow:hidden;text-overflow:ellipsis}.vr-open-pdf-btn{text-decoration:none}.vr-packet{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);position:relative}.vr-packet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.vr-packet-header strong{display:block;font-size:var(--fs-body)}.vr-packet-header span{color:var(--muted);font-size:var(--fs-dense)}.vr-packet-header-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.vr-voucher-total{color:var(--ink)!important;font-size:var(--fs-title)!important;font-weight:var(--fw-strong);line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.vr-invoice-group{border-top:1px solid var(--line)}.vr-invoice-group:first-of-type{border-top:0}.vr-invoice-header{display:grid;grid-template-columns:minmax(120px,1fr) 116px auto auto;align-items:end;grid-gap:8px;gap:8px;border-top:1px solid var(--line);padding:10px 12px;background:color-mix(in srgb,var(--surface-soft) 72%,transparent)}.vr-invoice-header label{display:grid;grid-gap:4px;gap:4px;min-width:0}.vr-invoice-header label span{color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.08em;line-height:1;text-transform:uppercase}.vr-invoice-header input{min-width:0;height:30px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--text);font:inherit;font-size:var(--fs-dense);padding:5px 8px}.vr-invoice-header input.missing{border-color:var(--red);background:var(--red-soft)}.vr-lines-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense);overflow:visible;table-layout:fixed}.vr-lines-table th{padding:5px 10px;text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);border-bottom:1px solid var(--line)}.vr-lines-table td:first-child,.vr-lines-table th:first-child{width:220px}.vr-lines-table td:nth-child(2),.vr-lines-table th:nth-child(2){width:auto;min-width:300px;text-align:left}.vr-lines-table td:nth-child(3),.vr-lines-table th:nth-child(3){width:132px;text-align:right}.vr-lines-table td:nth-child(4),.vr-lines-table th:nth-child(4){width:126px;text-align:left}.vr-lines-table td:nth-child(5),.vr-lines-table th:nth-child(5){width:124px;text-align:left}.vr-lines-table td:nth-child(6),.vr-lines-table th:nth-child(6){width:260px;text-align:right}.vr-lines-table td{padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.review-content-pane .payroll-lines-table td:nth-child(4),.review-content-pane .payroll-lines-table th:nth-child(4){width:128px}.review-content-pane .payroll-lines-table td:nth-child(5),.review-content-pane .payroll-lines-table th:nth-child(5){width:48px;text-align:center}.review-content-pane .payroll-lines-table td:nth-child(3),.review-content-pane .payroll-lines-table th:nth-child(3){text-align:left}.review-content-pane .payroll-lines-table .vr-amount-cell{text-align:right;padding-right:10px}.review-content-pane .payroll-lines-table{--payroll-ledger-rule:#d1cec6;--payroll-ledger-rule-strong:#bdb9af}.review-content-pane .payroll-lines-table thead th{border-bottom:1px solid var(--payroll-ledger-rule-strong)}.review-content-pane .payroll-lines-table tbody tr:not(:last-child)>td{border-bottom:1px solid var(--payroll-ledger-rule)}.payroll-lines-table .vr-amount-edit{width:82px;min-width:82px;padding-inline:5px}.payroll-lines-table .vr-amount-edit input{width:100%}.payroll-lines-table th:first-child,.payroll-lines-table th:nth-child(2){padding-left:18px}.payroll-lines-table th:nth-child(3){padding-right:9px}.payroll-lines-table .vr-line.excluded .payroll-inline-field-cell,.payroll-lines-table .vr-line.excluded .vr-account-text,.payroll-lines-table .vr-line.excluded .vr-amount-cell{color:var(--faint);text-decoration:line-through}.payroll-lines-table .vr-line.excluded .vr-account-trigger{pointer-events:none}.payroll-delete-line{opacity:.28;border-color:transparent;background:transparent;color:var(--faint)}.payroll-delete-line:focus-visible,.payroll-lines-table .vr-line:hover .payroll-delete-line{opacity:1;border-color:color-mix(in srgb,var(--red) 18%,transparent);background:var(--red-soft);color:var(--red)}.vr-lines-table tbody tr:last-child td{border-bottom:0}.vr-line{cursor:pointer;transition:background .08s ease}.vr-line.invoice-start td{border-top:2px solid var(--line)}.vr-line:hover{background:var(--surface-soft)}.payroll-lines-table .vr-line.missing:not(.excluded){background:var(--red-soft)}.payroll-lines-table .vr-line.missing:not(.excluded):hover{background:color-mix(in srgb,var(--red-soft) 82%,var(--red) 18%)}.payroll-lines-table .payroll-add-line-row td{height:30px;padding:0;text-align:center;background:var(--surface);transition:background .08s ease}.payroll-lines-table .payroll-add-line-row:focus-within td,.payroll-lines-table .payroll-add-line-row:hover td{background:var(--surface-soft)}.payroll-lines-table .payroll-add-line-row .vr-row-action.icon{width:100%;height:30px;margin:0;border:0;border-radius:0;background:transparent}.payroll-lines-table .payroll-add-line-row .vr-row-action:hover{background:transparent}.vr-line.excluded{color:var(--faint)}.vr-line.excluded:hover{background:transparent}.vr-line.excluded .vr-account-text,.vr-line.excluded .vr-amount-cell,.vr-line.excluded .vr-invoice-field-cell input,.vr-line.excluded .vr-missing{color:var(--faint);text-decoration:line-through}.vr-line.excluded .vr-invoice-field-cell input{pointer-events:none;border-color:transparent;background:transparent}.vr-missing{display:inline-flex;align-items:center;gap:4px;color:var(--red);font-weight:var(--fw-body)}.vr-line-note{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-label);white-space:normal}.vr-integrity-panel{display:flex;gap:12px;align-items:flex-start;margin:0 0 14px;padding:12px 14px;border:1px solid #d7ad45;border-radius:var(--r-md);background:#fff8e5;color:#6b4a00;line-height:1.45}.vr-integrity-panel p{margin:4px 0 0}.vr-account-cell{max-width:320px}.vr-account-cell,.vr-vendor-cell{overflow:visible;text-overflow:ellipsis;white-space:nowrap}.vr-vendor-cell{max-width:220px}.vr-account-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr-account-with-flair{display:flex;align-items:center;gap:6px;min-width:0}.vr-account-with-flair .vr-account-text{min-width:0}.vr-amount-cell{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.vr-invoice-field-cell input{width:100%;min-width:0;height:30px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text);font:inherit;font-size:var(--fs-dense);padding:5px 8px}.vr-invoice-field-cell input:focus,.vr-invoice-field-cell input:hover{border-color:var(--line);background:var(--surface)}.vr-invoice-field-cell input.missing{border-color:var(--red);background:var(--red-soft)}.vr-amount-edit{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:3px;box-sizing:border-box;width:116px;min-width:116px;border:1px solid transparent;border-radius:var(--r-sm);padding:3px 7px;color:var(--text);line-height:1.2;white-space:nowrap}.vr-amount-edit:focus-within,.vr-amount-edit:hover{border-color:var(--line);background:color-mix(in srgb,var(--surface) 72%,transparent)}.vr-amount-edit span{display:inline-block;flex:0 0 auto;color:var(--muted)}.vr-amount-edit input{display:block;flex:1 1 auto;width:78px;min-width:0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;padding:0}.vr-action-cell{overflow:visible}.vr-row-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-medium);line-height:1;padding:5px 8px;cursor:pointer}.vr-row-action:hover{color:var(--text);background:var(--surface-soft)}.vr-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap}.vr-row-action.primary{border-color:var(--ink);background:var(--ink);color:#fff}.vr-row-action.danger{border-color:transparent;background:var(--red-soft);color:var(--red)}.vr-row-action.danger:hover{border-color:color-mix(in srgb,var(--red) 18%,transparent);background:color-mix(in srgb,var(--red-soft) 78%,var(--red) 22%);color:var(--red)}.vr-row-action.icon{width:32px;height:32px;padding:0}.vr-row-action.danger.icon{width:36px;height:36px}.vr-account-search{position:relative}.vr-account-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;max-width:100%;min-height:28px;border:1px solid transparent;border-radius:var(--r-sm);background:transparent;color:var(--text);font:inherit;font-weight:var(--fw-body);text-align:left;padding:3px 7px;cursor:pointer}.vr-account-trigger:hover,.vr-line.selected .vr-account-trigger{border-color:var(--line);background:color-mix(in srgb,var(--surface) 72%,transparent)}.vr-account-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr-account-trigger svg{flex-shrink:0;color:var(--faint)}.vr-search-input-wrap{display:flex;align-items:center;gap:6px;padding:4px 8px;border:1px solid var(--brass);border-radius:var(--r-sm);background:var(--surface);color:var(--muted)}.vr-search-input{border:0;outline:0;background:transparent;font-size:var(--fs-dense);color:var(--text);width:100%;padding:0}.vr-account-dropdown{position:absolute;left:0;right:0;top:100%;z-index:20;margin-top:2px;max-height:220px;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:3px}.payroll-review .payroll-floating-account-dropdown{position:fixed;right:auto;top:auto;z-index:10000;margin-top:0;max-height:min(260px,calc(100vh - 16px))}.vr-account-dropdown .vr-search-input-wrap{margin:3px 3px 5px}.vr-account-option{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;background:transparent;text-align:left;font-size:var(--fs-dense);border-radius:var(--r-sm);cursor:pointer;color:var(--text)}.vr-account-option:hover{background:var(--surface-soft)}.vr-account-option.vr-add-option{color:var(--brass-deep);font-weight:var(--fw-medium)}.vr-account-option.empty{cursor:default;color:var(--faint)}.vr-account-option.empty:hover{background:transparent}.vr-account-option-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr-account-option-num{color:var(--faint);font-size:var(--fs-label);flex-shrink:0;font-family:monospace}.notes-panel{display:flex;flex-direction:column;gap:14px}.note-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:18px 22px}.note-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.note-card-header strong{font-size:var(--fs-body)}.note-meta{color:var(--muted)}.note-body,.note-meta{font-size:var(--fs-dense)}.note-body{line-height:1.55;color:var(--ink);white-space:pre-wrap;word-break:break-word}.engagement-list{display:flex;flex-direction:column;gap:14px}.engagement-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:20px 22px}.engagement-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.engagement-card-header h3{margin:0;font-size:var(--fs-title);font-weight:var(--fw-body)}.engagement-status{font-size:var(--fs-dense);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;padding:3px 10px;border-radius:var(--r-pill);background:var(--brass-soft);color:var(--brass-deep)}.engagement-meta-row{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:var(--fs-dense);margin-bottom:16px}.engagement-section{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.engagement-section h4{margin:0 0 8px;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.1em;color:var(--faint)}.engagement-pills{display:flex;gap:6px;flex-wrap:wrap}.engagement-pill{font-size:var(--fs-dense);padding:3px 10px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface-soft);color:var(--text)}.engagement-signer{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-dense);padding:4px 0}.engagement-signer-status{color:var(--green);font-size:var(--fs-dense);font-weight:var(--fw-body)}.engagement-services-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense)}.engagement-services-table th{text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:4px 8px 6px 0;border-bottom:1px solid var(--line)}.engagement-services-table td{padding:6px 8px 6px 0;border-bottom:1px solid var(--line)}.engagement-services-table tbody tr:last-child td{border-bottom:0}.breadcrumb{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.breadcrumb-seg{border:0;background:transparent;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);padding:2px 4px;cursor:pointer;transition:color .12s ease}.breadcrumb-seg:hover{color:var(--brass-deep)}.breadcrumb-seg.active{color:var(--text);cursor:default}.breadcrumb-sep{color:var(--faint);flex-shrink:0}.file-explorer{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.file-explorer.tree{overflow:hidden}.file-browser{display:grid;grid-template-columns:minmax(220px,280px) 1fr;grid-gap:14px;gap:14px;min-height:520px}.file-detail-pane,.file-tree-pane{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);min-width:0;overflow:hidden}.file-tree-pane{align-self:start;max-height:calc(100vh - 230px);overflow-y:auto}.file-detail-pane{display:flex;flex-direction:column}.file-detail-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line);background:var(--surface-soft)}.file-detail-eyebrow{display:block;margin-bottom:3px;color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.1em;text-transform:uppercase}.file-detail-header h3{margin:0;color:var(--ink);font-size:var(--fs-title);font-weight:var(--fw-medium)}.file-detail-actions{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-dense);white-space:nowrap}.file-detail-table{display:flex;flex-direction:column;min-width:0}.file-detail-row{display:grid;grid-template-columns:minmax(220px,1fr) 120px 150px 120px 42px;align-items:center;grid-gap:12px;gap:12px;min-height:40px;padding:8px 14px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);font-size:var(--fs-dense);text-align:left}.file-detail-row.header{min-height:34px;background:var(--surface);color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-strong);letter-spacing:.06em;text-transform:uppercase}.file-detail-row.folder{width:100%;cursor:pointer;font-weight:var(--fw-medium)}.file-detail-row.file{cursor:pointer}.file-detail-row.file:hover,.file-detail-row.folder:hover{background:var(--surface-soft)}.file-detail-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-detail-row>span:first-child{display:inline-flex;align-items:center;gap:8px}.file-detail-row>span.file-row-actions-cell{overflow:visible;justify-self:end;margin-right:-6px}.file-detail-row.folder svg{color:var(--brass)}.file-detail-row.file svg{color:var(--muted)}.file-tree-row{--tree-depth:0;position:relative;display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:7px 12px 7px calc(12px + (var(--tree-depth) * 24px));border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);font-size:var(--fs-dense);text-align:left;transition:background .08s ease}.file-tree-row:last-child{border-bottom:0}.file-tree-row:hover{background:var(--surface-soft)}.file-tree-row.active{background:var(--brass-soft);color:var(--ink)}.file-tree-row.folder{cursor:pointer;font-weight:var(--fw-medium)}.file-tree-row.file{cursor:pointer;font-weight:var(--fw-body)}.file-tree-row.folder>svg{color:var(--brass)}.file-tree-row.file>svg{color:var(--muted)}.file-tree-rail{display:none}.file-tree-toggle{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);flex-shrink:0}.file-tree-name{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-tree-count{min-width:22px;border-radius:var(--r-md);background:var(--surface-soft);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-strong);line-height:1;padding:5px 7px;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hidden-file-input{display:none}.file-tree-upload,.file-upload-root-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-strong);line-height:1;padding:5px 8px;cursor:pointer;flex-shrink:0;transition:border-color .1s ease,color .1s ease,background .1s ease}.file-tree-upload:hover,.file-upload-root-btn:hover{border-color:var(--brass-soft);background:var(--brass-soft);color:var(--brass-deep)}.file-upload-root-btn{min-height:30px}.file-upload-root-btn.icon-only{width:32px;height:32px;justify-content:center;padding:0}.folder-action-icon,.folder-template-action-icon{position:relative;display:inline-flex;align-items:center;justify-content:center}.folder-action-icon svg:last-child{position:absolute;right:-4px;bottom:-3px;border-radius:var(--r-pill);background:var(--surface);stroke-width:3}.folder-template-action-icon{width:18px;height:18px}.folder-template-action-icon>span{position:absolute;right:-4px;bottom:-4px;width:10px;height:10px;border:1px solid;border-radius:var(--r-sm);background:linear-gradient(currentColor,currentColor) 50% 0 /1px 100% no-repeat,linear-gradient(currentColor,currentColor) 0 50% /100% 1px no-repeat,var(--surface)}.file-tree-upload[aria-disabled=true],.file-upload-root-btn:disabled{cursor:default;opacity:.65}.file-upload-error{border:1px solid var(--red-soft);border-radius:var(--r-md);background:var(--red-soft);color:var(--red);font-size:var(--fs-dense);font-weight:var(--fw-medium);padding:8px 10px}.explorer-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:var(--fs-body);color:var(--text);transition:background .08s ease}.explorer-row:first-child{border-top-left-radius:10px;border-top-right-radius:10px}.explorer-row:last-child{border-bottom:0;border-bottom-left-radius:10px;border-bottom-right-radius:10px}.explorer-row:hover{background:var(--surface-soft)}.explorer-row.folder{width:100%;border-left:0;border-right:0;border-top:0;background:transparent;text-align:left;cursor:pointer;font-weight:var(--fw-body)}.explorer-row.folder svg:first-child{color:var(--brass)}.explorer-row.file{font-weight:var(--fw-body);cursor:pointer}.explorer-filename{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.explorer-col{flex-shrink:0}.status-col{width:190px;text-align:right}.date-col{width:110px;text-align:right;color:var(--faint);font-size:var(--fs-dense);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.action-col{width:36px;display:flex;align-items:center;justify-content:center}.explorer-arrow{color:var(--faint)}.ingestion-badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--amber);background:var(--amber-soft);padding:2px 8px;border-radius:var(--r-pill);white-space:nowrap;flex-shrink:0}.explorer-menu-wrap{position:relative;margin-left:auto;flex-shrink:0}.explorer-menu-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;background:transparent;color:var(--faint);border-radius:var(--r-sm);cursor:pointer;transition:background .1s ease,color .1s ease}.explorer-menu-btn:hover{background:var(--surface-soft);color:var(--text)}.explorer-dropdown{position:absolute;right:0;top:100%;z-index:10;min-width:180px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);padding:4px;animation:rise .12s ease both}.explorer-dropdown a,.explorer-dropdown button{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:var(--r-sm);color:var(--text);font-size:var(--fs-dense);font-weight:var(--fw-body);text-decoration:none;transition:background .08s ease;width:100%;border:0;background:transparent;cursor:pointer}.explorer-dropdown a:hover,.explorer-dropdown button:hover{background:var(--surface-soft)}.explorer-dropdown-divider{height:1px;background:var(--line);margin:3px 0}.dropdown-danger{color:var(--red)!important}.dropdown-danger:hover{background:var(--red-soft)!important}.preview-overlay{position:fixed;inset:0;z-index:100;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:24px;animation:fade-in .15s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.preview-modal{width:100%;max-width:920px;height:85vh;background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden;animation:rise .2s ease both}.preview-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);gap:12px}.preview-title{font-weight:var(--fw-body);font-size:var(--fs-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.preview-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.preview-download{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-dense);font-weight:var(--fw-medium);color:#ffffff;background:var(--ink);text-decoration:none;padding:6px 12px;border-radius:var(--r-md);transition:background .1s ease}.preview-download:hover{background:#000000}.preview-close{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--muted);font-size:var(--fs-title);border-radius:var(--r-sm);cursor:pointer;transition:background .1s ease,color .1s ease}.preview-close:hover{background:var(--surface-soft);color:var(--text)}.preview-body{flex:1 1;min-height:0}.preview-body iframe{width:100%;height:100%;border:0}.portal-shell{min-height:100vh;display:grid;place-items:center;padding:0;background:radial-gradient(700px 400px at 50% -10%,rgba(30,58,95,.06),transparent 65%),var(--paper)}.portal-panel{width:min(100%,480px);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);padding:34px 32px 28px;animation:rise .5s cubic-bezier(.22,.61,.36,1) both}.portal-header{display:flex;justify-content:center;margin-bottom:20px}.portal-logo{height:36px;width:auto}.portal-title{margin:0 0 22px;font-size:var(--fs-page);font-weight:var(--fw-body);text-align:center}.portal-form{display:flex;flex-direction:column;gap:16px}.portal-app{width:100%;min-height:100vh;display:grid;grid-template-columns:190px 1fr;background:radial-gradient(760px 420px at 70% -10%,rgba(148,99,0,.08),transparent 62%),var(--paper)}.portal-sidebar{background:color-mix(in srgb,var(--surface) 94%,var(--brass-soft));border-right:1px solid var(--line);display:flex;flex-direction:column;padding:24px 14px}.portal-brand{display:flex;justify-content:center;padding:0 0 24px;margin-bottom:8px;border-bottom:1px solid var(--line)}.portal-nav-item{display:flex;align-items:center;gap:10px;min-height:42px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);font-size:var(--fs-dense);font-weight:var(--fw-body);text-align:left;cursor:pointer;text-decoration:none}.portal-nav-item.active{color:var(--brass-deep);font-weight:var(--fw-strong)}.portal-nav-item:hover{color:var(--brass-deep)}.portal-appointment-wrap{margin:12px 0 0}.portal-appointment{display:grid;grid-template-columns:30px 1fr;align-items:center;grid-gap:10px;gap:10px;min-height:58px;padding:10px 11px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);color:var(--text);text-align:left;text-decoration:none;box-shadow:var(--shadow-pop);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease,background .12s ease}.portal-appointment:hover{border-color:var(--line-strong);background:color-mix(in srgb,var(--surface) 78%,var(--green-soft));box-shadow:var(--shadow-pop);transform:translateY(-1px)}.portal-appointment-icon{width:30px;height:30px;border-radius:var(--r-md);display:inline-flex;align-items:center;justify-content:center;background:var(--green-soft);color:var(--green)}.portal-appointment small,.portal-appointment strong{display:block}.portal-appointment strong{color:var(--ink);font-size:var(--fs-dense);font-weight:var(--fw-strong);line-height:1.2}.portal-appointment small{margin-top:2px;color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-body);line-height:1.2}.portal-client-name{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-dense);overflow-wrap:anywhere}.portal-content{padding:34px 28px}.portal-files-page,.portal-home,.portal-work{width:min(100%,1120px)}.portal-home{display:flex;flex-direction:column;gap:26px}.portal-files-page h2,.portal-home h2{margin:0 0 10px;color:var(--ink);font-size:var(--fs-body);font-weight:var(--fw-strong)}.portal-empty-card{min-height:118px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-pop);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:22px;color:var(--muted);text-align:center}.portal-empty-card strong{color:var(--ink);font-size:var(--fs-dense)}.portal-recent-file{width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--text);font-size:var(--fs-dense);text-align:left;cursor:pointer}.portal-files-page{width:min(100%,1120px)}.portal-files-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.portal-add-icon{border:0;background:transparent;color:var(--muted);cursor:pointer}.portal-search{height:34px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--faint);font-size:var(--fs-dense);padding:0 12px;margin-bottom:8px}.portal-search input{flex:1 1;border:0;outline:none;background:none;color:var(--ink);font:inherit}.portal-search input::placeholder{color:var(--faint)}.portal-upload-strip{display:flex;flex-direction:column;gap:10px}.success-box{margin-top:18px;border:1px solid #cdddcd;background:var(--green-soft);color:var(--green);border-radius:var(--r-lg);padding:13px 14px;display:flex;align-items:flex-start;gap:10px}.success-box small,.success-box strong{display:block}.success-box strong{font-weight:var(--fw-medium)}.success-box small{margin-top:3px;color:#5d7a62;overflow-wrap:anywhere;font-size:var(--fs-dense)}.file-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:28px 20px;border:2px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface-soft);color:var(--muted);cursor:pointer;transition:border-color .15s ease,background .15s ease;text-align:center}.portal-files-page .file-dropzone{min-height:58px;border-width:1px;border-radius:0;background:var(--surface);padding:14px}.file-dropzone.dragover,.file-dropzone:hover{border-color:var(--brass);background:var(--brass-soft);color:var(--brass-deep)}.file-dropzone.has-file{border-color:var(--green);border-style:solid;background:var(--green-soft);color:var(--green)}.dropzone-label{font-size:var(--fs-body);font-weight:var(--fw-body)}.dropzone-filename{font-size:var(--fs-body);font-weight:var(--fw-medium);word-break:break-all}.dropzone-hint{font-size:var(--fs-dense);opacity:.7}.portal-report{width:min(100%,1120px);padding:4px 0}.portal-report h2{margin:0 0 14px;color:var(--ink);font-size:var(--fs-body);font-weight:var(--fw-strong)}.portal-report h2+.portal-lede{margin-top:-10px}.portal-lede{margin:2px 0 16px;max-width:78ch;color:var(--muted);font-size:var(--fs-dense)}.portal-subhead{margin:22px 0 8px;font-size:var(--fs-title);font-weight:var(--fw-medium)}.portal-subhead:first-of-type{margin-top:0}.portal-sheet{border:1px solid var(--line);background:var(--surface)}.portal-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense)}.portal-table th{padding:9px 13px;color:var(--faint);font-size:var(--fs-label);font-weight:var(--fw-body);text-align:left;white-space:nowrap}.portal-table td,.portal-table th{border-bottom:1px solid var(--line)}.portal-table td{padding:10px 13px;vertical-align:top}.portal-table tr:last-child td{border-bottom:0}.portal-table .num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.portal-table .tight{white-space:nowrap}.portal-table .sub{display:block;margin-top:2px;color:var(--muted);font-size:var(--fs-label)}.portal-table .total td{border-top:1px solid var(--line-strong);border-bottom:0;font-weight:var(--fw-medium)}.portal-pill{display:inline-block;padding:2px 8px;border-radius:var(--r-pill);font-size:var(--fs-label);font-weight:var(--fw-body);white-space:nowrap}.portal-pill-ok{background:var(--green-soft);color:var(--green)}.portal-pill-warn{background:var(--amber-soft);color:var(--amber)}.portal-pill-idle{color:var(--muted)}.portal-bar,.portal-pill-idle{background:var(--surface-soft)}.portal-bar{display:flex;overflow:hidden;height:7px}.portal-bar i{height:100%}.portal-bar-panel{margin-bottom:13px;padding:13px}.portal-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:7px;color:var(--muted);font-size:var(--fs-label)}.portal-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;vertical-align:0}.portal-legend .k1:before{background:var(--green)}.portal-legend .k2:before{background:var(--brass)}.portal-legend .k3:before{background:var(--amber)}.portal-legend .k4:before{background:var(--line-strong)}.portal-nav-group{margin:14px 0 3px;padding:0 9px;color:var(--faint);font-size:var(--fs-label)}.portal-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));grid-gap:10px;gap:10px;margin-bottom:20px}.portal-tile{border:1px solid var(--line);background:var(--surface);padding:12px 13px}.portal-tile-label{display:block;color:var(--faint);font-size:var(--fs-label)}.portal-tile-value{display:block;margin-top:5px;color:var(--ink);font-size:var(--fs-page);font-weight:var(--fw-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.01em}.portal-tile-note{display:block;margin-top:3px;color:var(--faint);font-size:var(--fs-label)}.portal-row-button{width:100%;text-align:left;border-left:0;border-right:0;border-top:0;background:transparent;cursor:pointer;font:inherit}.portal-row-button:hover strong{text-decoration:underline}.portal-award-note{margin:8px 0 0;color:var(--faint);font-size:var(--fs-label)}.portal-award-list{margin-top:8px;border:1px solid var(--line);background:var(--surface)}.portal-award-row{display:grid;grid-template-columns:1fr auto auto;align-items:baseline;grid-gap:14px;gap:14px;min-height:44px;padding:10px;border-bottom:1px solid var(--line);font-size:var(--fs-dense)}.portal-award-row:last-child{border-bottom:0}.portal-award-row small,.portal-award-row strong{display:block}.portal-award-row strong{color:var(--ink);font-weight:var(--fw-medium);overflow-wrap:anywhere}.portal-award-row small{margin-top:2px;color:var(--faint);font-size:var(--fs-label)}.portal-award-money{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.portal-file-list{margin-top:8px;border:1px solid var(--line);background:var(--surface)}.portal-file-row{display:grid;grid-template-columns:18px 1fr auto auto;align-items:center;grid-gap:10px;gap:10px;min-height:44px;padding:8px 10px;border-bottom:1px solid var(--line);font-size:var(--fs-dense)}.portal-file-row:last-child{border-bottom:0}.portal-file-row small,.portal-file-row strong{display:block}.portal-file-row strong{color:var(--ink);font-size:var(--fs-dense);font-weight:var(--fw-medium);overflow-wrap:anywhere}.portal-file-row small{margin-top:2px;color:var(--faint);font-size:var(--fs-label)}.portal-file-row button{border:0;background:transparent;color:var(--brass-deep);font-size:var(--fs-dense);font-weight:var(--fw-medium);cursor:pointer}.portal-file-row button:last-child{color:var(--faint)}.portal-empty-list{padding:22px;text-align:center}.portal-empty-list,.portal-link{color:var(--muted);font-size:var(--fs-dense)}.portal-link{margin-top:22px;display:inline-flex;align-items:center;gap:8px;font-weight:var(--fw-body);text-decoration:none;transition:color .15s ease}.portal-link:hover{color:var(--brass-deep)}@media (max-width:1220px){.client-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.client-summary-item:nth-child(n+4){border-top:1px solid var(--line)}.client-summary-item:nth-child(3){border-right:0}.client-summary-item:last-child{border-right:1px solid var(--line)}}@media (max-width:1100px){.client-overview-grid{grid-template-columns:minmax(0,1fr)}.client-overview-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}@media (max-width:980px){.app-shell{grid-template-columns:64px minmax(0,1fr)}.workspace{padding:26px 20px 36px}}@media (max-width:640px){.workspace{padding:20px 14px}.topbar h2{font-size:var(--fs-page)}table{display:block;overflow-x:auto}.client-detail-list-compact,.client-overview-rail,.client-summary-strip,.contact-detail-grid{grid-template-columns:minmax(0,1fr)}.client-summary-item,.client-summary-item:last-child,.client-summary-item:nth-child(3){border-right:0;border-top:1px solid var(--line)}.client-summary-item:first-child{border-top:0}.client-detail-list-compact .client-detail-row:nth-last-child(2){border-bottom:1px solid var(--line)}.client-detail-row{grid-template-columns:minmax(96px,.4fr) minmax(0,1fr);gap:14px}.client-overview-card-header{align-items:flex-start}}.review-content-pane .payroll-lines-table td:first-child,.review-content-pane .payroll-lines-table th:first-child{width:235px}.review-content-pane .payroll-lines-table td:nth-child(2),.review-content-pane .payroll-lines-table th:nth-child(2){width:auto;min-width:220px}.review-content-pane .payroll-lines-table td:nth-child(3),.review-content-pane .payroll-lines-table th:nth-child(3){width:96px;text-align:right}.review-content-pane .payroll-lines-table td:nth-child(4),.review-content-pane .payroll-lines-table th:nth-child(4){width:60px;text-align:right;padding-left:6px;padding-right:8px}.vr-action-cell{white-space:nowrap}.payroll-check-actions{display:inline-flex;align-items:center;gap:.45rem}.client-relationship-rows>.client-relationship-person{width:100%;min-height:62px;padding:10px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px;text-align:left}.client-relationship-rows>.client-relationship-person>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.client-relationship-rows>:last-child{border-bottom:0}.client-relationship-count{margin-left:auto;min-width:22px;padding:1px 7px;border-radius:var(--r-pill);text-align:center}.client-relationship-count,.client-relationship-primary{background:var(--surface-soft);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-medium)}.client-relationship-primary{margin-left:6px;padding:1px 6px;border-radius:var(--r-sm);font-style:normal;text-transform:uppercase;letter-spacing:.04em}.contacts-page{padding:0 24px 32px}.contacts-toolbar{display:flex;align-items:center;gap:12px;padding:16px 0;flex-wrap:wrap}.contacts-search{flex:1 1 280px;min-width:220px;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:var(--fs-dense)}.contacts-count{margin-left:auto;color:var(--muted);font-size:var(--fs-dense)}.contacts-error{padding:10px 14px;border:1px solid var(--line);border-radius:var(--r-md);color:var(--red-2,#b3261e);font-size:var(--fs-dense)}.contacts-table-wrap{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface)}.contacts-table{width:100%;border-collapse:collapse;font-size:var(--fs-dense)}.contacts-table th{background:var(--surface-soft);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;text-align:left;white-space:nowrap}.contacts-table td,.contacts-table th{padding:10px 14px;border-bottom:1px solid var(--line)}.contacts-table td{vertical-align:middle}.contacts-table tbody tr:last-child td{border-bottom:0}.contacts-table tbody tr:hover{background:var(--surface-soft)}.contacts-name{display:inline-flex;align-items:center;gap:10px;min-width:0}.contacts-name strong{color:var(--ink);font-weight:var(--fw-medium)}.contacts-muted{color:var(--muted)}.contacts-duplicates{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;padding:16px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface)}.contacts-duplicates-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.contacts-duplicates-header h3{margin:0 0 2px;font-size:var(--fs-body)}.contacts-duplicates-header p{margin:0;font-size:var(--fs-dense)}.duplicate-group{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-soft)}.duplicate-group-header{display:flex;align-items:baseline;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:var(--fs-dense);flex-wrap:wrap}.duplicate-members{display:flex;flex-direction:column}.duplicate-member{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-size:var(--fs-dense)}.duplicate-member:last-child{border-bottom:0}.duplicate-member input{margin-top:3px}.duplicate-member-body{display:flex;flex-direction:column;gap:2px;min-width:0}.duplicate-member-line{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.duplicate-member-tag{padding:1px 6px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line);color:var(--muted);font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:.04em}.duplicate-group-footer{display:flex;justify-content:flex-end;padding:10px 14px;border-top:1px solid var(--line)}.comm-search-wrap{display:flex;min-width:220px;height:34px;flex:1 1 280px;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--faint)}.comm-search{display:block;width:100%;height:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:var(--fs-dense);line-height:normal}.comm-direction{display:inline-flex;border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}.comm-direction button{height:32px;padding:0 12px;border:0;background:transparent;color:var(--muted);font-size:var(--fs-dense);cursor:pointer}.comm-direction button.active{background:var(--surface-soft);color:var(--ink);font-weight:var(--fw-medium)}.comm-sync-note{padding:7px 12px;border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-label)}.comm-related-tag{align-self:flex-start;padding:1px 6px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--faint);font-size:var(--fs-label)}.email-compose{flex:none;padding:13px 16px 14px;border-top:1px solid var(--line-strong);background:var(--surface-soft)}.email-compose-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.email-compose-head strong{color:var(--ink);font-size:var(--fs-dense)}.email-compose-head button{border:0;background:transparent;color:var(--muted);font-size:var(--fs-label);cursor:pointer}.email-compose-to{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;border:1px solid var(--line);border-bottom:0;border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--surface)}.email-compose-to span{padding-left:10px;color:var(--faint);font-size:var(--fs-label)}.email-compose-to input{min-width:0;height:34px;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:var(--fs-dense)}.email-compose-to input:-moz-read-only{color:var(--muted)}.email-compose-to input:read-only{color:var(--muted)}.email-compose textarea{display:block;width:100%;min-height:92px;padding:10px;border:1px solid var(--line);border-radius:0 0 var(--r-sm) var(--r-sm);outline:0;background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-dense);line-height:1.5;resize:vertical}.email-compose textarea:focus,.email-compose-to:focus-within{border-color:var(--line-strong);box-shadow:none}.comm-reply-actions{display:flex;gap:8px;margin-top:9px}.comm-reply-actions button{display:inline-flex;height:31px;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-size:var(--fs-dense);cursor:pointer}.comm-reply-send{background:var(--ink)!important;color:#fff!important;border-color:var(--ink)!important}.comm-reply-send:disabled{opacity:.5;cursor:default}.comm-reply-error{margin-top:8px;color:var(--red-2,#b3261e);font-size:var(--fs-dense)}.comm-reply-sent{padding:9px 12px;border-radius:var(--r-sm);background:var(--mint-bg,#eefaf3);color:var(--mint,#0f9d6b);font-size:var(--fs-dense)}@media (max-width:820px){.email-workspace{grid-template-columns:minmax(220px,38%) minmax(0,62%)}.email-reader-header{align-items:flex-start;flex-direction:column;gap:10px}}@media (max-width:640px){.comm-db-bar{align-items:stretch;flex-direction:column}.comm-search-wrap{flex-basis:34px}.comm-direction,.comm-sync-btn{align-self:flex-start}.email-workspace{display:flex;height:auto;min-height:0;flex-direction:column}.email-list-pane{max-height:340px;border-right:0;border-bottom:1px solid var(--line)}.email-reader{min-height:520px}.email-reader-header{padding:12px 14px}.email-message{padding:16px 14px 20px}.email-message-heading{align-items:flex-start}.email-message-heading time{max-width:92px;text-align:right}.email-body,.email-message-recipients{margin-left:0}}.spouse-client-option{display:flex;flex-direction:row;align-items:flex-start;gap:10px}.spouse-client-option input[type=checkbox]{flex:none;margin-top:2px;width:15px;height:15px}.spouse-client-option>span{display:flex;flex-direction:column;gap:3px;font-size:var(--fs-dense);font-weight:var(--fw-body);line-height:1.45;text-transform:none;letter-spacing:normal;color:var(--ink)}.spouse-client-option small{color:var(--muted);font-size:var(--fs-dense);line-height:1.5}.portal-work{padding:4px 0}.portal-work h2{margin:0 0 14px;color:var(--ink);font-size:var(--fs-body);font-weight:var(--fw-strong)}.portal-work h3{margin:20px 0 10px;font-size:var(--fs-dense);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.portal-work-row{display:flex;align-items:center;gap:14px;padding:12px 14px;margin-bottom:8px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.portal-work-row>span:first-child{display:flex;flex-direction:column;gap:2px;min-width:0}.portal-work-row strong{font-size:var(--fs-dense);color:var(--ink)}.portal-work-row small{font-size:var(--fs-dense);color:var(--muted)}.portal-work-row.waiting{border-color:var(--amber,#b4791a);background:var(--amber-bg,#fdf6e7)}.portal-work-status{margin-left:auto;padding:2px 9px;border-radius:var(--r-pill);background:var(--amber,#b4791a);color:#fff;font-size:var(--fs-label);font-weight:var(--fw-medium);white-space:nowrap}.portal-work-status.muted{background:var(--surface-soft);color:var(--muted)}.portal-work-badge{margin-left:auto;min-width:19px;padding:1px 6px;border-radius:var(--r-pill);background:var(--amber,#b4791a);color:#fff;font-size:var(--fs-label);font-weight:var(--fw-strong);text-align:center}.portal-interview-card{border:1px solid var(--amber,#b4791a);background:var(--amber-bg,#fdf6e7);border-radius:var(--r-md);padding:16px;margin-bottom:12px}.portal-interview-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.portal-interview-heading>span:first-child{display:flex;flex-direction:column;gap:3px}.portal-interview-heading small{color:var(--muted)}.portal-interview-question{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,220px);align-items:center;grid-gap:14px;gap:14px;border-top:1px solid var(--amber-line);padding:12px 0}.portal-interview-question>span{display:flex;flex-direction:column;gap:3px}.portal-interview-question small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:var(--fs-label)}.portal-interview-question strong{color:var(--ink);font-size:var(--fs-dense);line-height:1.4}.portal-interview-question em{color:var(--muted);font-size:var(--fs-label);font-style:normal;line-height:1.4}.portal-interview-question :is(select,[data-app-select]),.portal-interview-question textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:8px 9px;font:inherit}.portal-interview-question textarea{min-height:68px;resize:vertical}.portal-answer-choices{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:5px;gap:5px}.portal-answer-choices button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:var(--r-md);padding:9px 5px}.portal-answer-choices button.selected{background:var(--ink);border-color:var(--ink);color:#fff}.portal-followups{grid-column:1/-1;border-left:3px solid #b9c8b8;background:rgba(255,255,255,.62);border-radius:var(--r-md);padding:11px;display:grid;grid-gap:9px;gap:9px}.portal-followups label{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);align-items:center;grid-gap:12px;gap:12px;font-size:var(--fs-label);color:var(--ink)}.portal-followups input{width:100%;border:1px solid var(--line);border-radius:var(--r-md);background:#fff;padding:8px 9px;font:inherit}.portal-review-list{margin:0;display:grid;grid-gap:10px;gap:10px}.portal-review-list>div{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,1.2fr);grid-gap:12px;gap:12px;border-bottom:1px solid var(--line);padding-bottom:9px}.portal-review-list dt{font-size:var(--fs-label);color:var(--muted)}.portal-review-list dd{margin:0;display:grid;grid-gap:3px;gap:3px;color:var(--ink)}.portal-review-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}@media (max-width:640px){.portal-review-list>div{grid-template-columns:1fr;gap:4px}}.portal-interview-card>.primary-button{margin-top:10px}@media (max-width:700px){.portal-followups label,.portal-interview-heading,.portal-interview-question{grid-template-columns:1fr;display:grid}}.portal-file-download{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r-md);color:var(--muted);text-decoration:none}.portal-file-download:hover{background:var(--surface-soft);color:var(--ink)}.portal-form-hint{margin:-4px 0 2px;font-size:var(--fs-dense);line-height:1.5;color:var(--muted)}.portal-form-note{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 4px 6px;text-align:center;font-size:var(--fs-dense);line-height:1.55;color:var(--ink)}.portal-form-note p{margin:0}.portal-form-note strong{overflow-wrap:anywhere}.portal-linkish{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;cursor:pointer;color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-medium)}.portal-linkish:hover{color:var(--ink);text-decoration:underline}.portal-account{display:flex;flex-direction:column;gap:6px}.portal-account-email{font-size:var(--fs-label);color:var(--muted);overflow-wrap:anywhere}.portal-client-switch{width:100%;padding:5px 7px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:var(--fs-dense)}.portal-access-empty{margin:2px 0 10px;font-size:var(--fs-dense);line-height:1.55;color:var(--muted)}.portal-access-row{display:flex;flex-direction:column;gap:9px;padding:11px 0;border-top:1px solid var(--line)}.portal-access-row:first-of-type{border-top:0}.portal-access-row.unlinked{opacity:.58}.portal-access-who{display:flex;align-items:flex-start;gap:10px}.portal-access-who>span:last-child{display:flex;flex-direction:column;gap:1px;min-width:0}.portal-access-who strong{font-size:var(--fs-dense);color:var(--ink)}.portal-access-who small{font-size:var(--fs-label);color:var(--muted);overflow-wrap:anywhere}.portal-access-seen{font-size:var(--fs-label)!important}.portal-access-perms{display:flex;flex-wrap:wrap;gap:6px 14px;padding-left:2px}.portal-access-perms label{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-label);font-weight:var(--fw-body);color:var(--ink);text-transform:none;letter-spacing:normal;cursor:pointer}.portal-access-perms input[type=checkbox]{width:13px;height:13px;margin:0}.portal-access-unlink{align-self:flex-start;padding:0;border:0;background:none;cursor:pointer;color:var(--danger,#b4342a);font-size:var(--fs-label);font-weight:var(--fw-medium)}.portal-access-unlink:hover:not(:disabled){text-decoration:underline}.portal-access-unlink:disabled{opacity:.5;cursor:default}.client-overview-card>.contacts-error,.client-overview-card>.portal-access-empty,.client-overview-card>.portal-access-row{margin-left:18px;margin-right:18px}.client-overview-card>.portal-access-empty:last-child{margin-bottom:16px}.client-overview-card>.portal-access-grant{margin-left:18px;margin-right:18px;margin-bottom:14px}.client-overview-card>.portal-access-grant-label{margin-left:18px;margin-right:18px}.client-overview-card>.portal-access-grant-label:first-child{margin-top:14px}.client-overview-card>.comm-search{width:calc(100% - 36px);height:auto;margin:0 18px 12px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);line-height:1.45}.client-overview-card>textarea.comm-search{min-height:96px;resize:vertical}.client-overview-card>.panel-action-bar{margin:0 18px 14px}.portal-access-grant{margin-top:12px;padding-top:11px;border-top:1px solid var(--line)}.portal-access-grant-label{display:block;margin-bottom:8px;font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.portal-access-candidate{display:flex;align-items:center;gap:10px;padding:5px 0}.portal-access-candidate>span{display:flex;flex-direction:column;gap:1px;min-width:0}.portal-access-candidate strong{font-size:var(--fs-dense);color:var(--ink)}.portal-access-candidate small{font-size:var(--fs-label);color:var(--muted);overflow-wrap:anywhere}.portal-access-candidate button{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:3px 9px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-size:var(--fs-label);font-weight:var(--fw-medium);cursor:pointer}.portal-access-candidate button:hover:not(:disabled){background:var(--surface-soft)}.portal-access-candidate button:disabled{opacity:.45;cursor:default}.table-scroll{overflow-x:auto}.data-table{min-width:820px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.data-table th{padding:11px 13px;border-bottom:1px solid var(--line-strong);color:var(--faint);background:#fbfbfa;font-size:var(--fs-label);text-align:left;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}.data-table td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:top}.data-table tbody tr:hover:not(.detail-row),tbody tr[aria-current=true]>td{background:var(--hilite-tint)}.money{text-align:right;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-dense)}.notice{margin:14px 18px;padding:10px 12px;border:1px solid #d7ad45;border-radius:var(--r-md);background:#fff8e5;color:#6b4a00;line-height:1.45}.badge{width:-moz-fit-content;width:fit-content;display:inline-flex;align-items:center;gap:4px;border-radius:var(--r-pill);padding:3px 8px;font-size:var(--fs-label)}.badge,.badge-status{font-weight:var(--fw-strong)}.badge-status{text-transform:uppercase;letter-spacing:.04em}.badge-good{background:var(--green-soft);color:var(--green)}.badge-warn{background:var(--amber-soft);color:var(--amber)}.badge-bad{background:var(--red-soft);color:var(--red)}.badge-muted{background:#ececea;color:var(--muted)}.badge-info{background:var(--brass-soft);color:var(--brass)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.app-shell.with-agent-dock{grid-template-columns:64px minmax(0,1fr) auto}.app-shell.review-mode.with-agent-dock{grid-template-columns:minmax(0,1fr) auto}.agent-dock{position:relative;height:100vh;min-width:360px;display:grid;grid-template-rows:auto auto minmax(0,1fr);border-left:1px solid var(--line-strong);background:var(--surface);box-shadow:-8px 0 24px rgb(0 0 0/4%)}.agent-dock-resizer{position:absolute;z-index:3;inset:0 auto 0 -5px;width:10px;height:100%;border:0;background:transparent;padding:0;cursor:col-resize;touch-action:none}.agent-dock-resizer:after{content:"";position:absolute;inset:0 auto 0 4px;width:1px;background:transparent;transition:background .12s ease,width .12s ease}.agent-dock-resizer:active:after,.agent-dock-resizer:focus-visible:after,.agent-dock-resizer:hover:after{width:2px;background:var(--brass)}.agent-dock-header{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid var(--line);padding:0 12px 0 14px}.agent-dock-title{gap:7px;color:var(--ink);font-size:var(--fs-dense)}.agent-dock-actions,.agent-dock-title{display:inline-flex;align-items:center}.agent-dock-actions{gap:2px}.agent-dock-actions button{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:var(--r-md);background:transparent;color:var(--muted)}.agent-dock-actions button:hover{color:var(--ink);background:var(--surface-soft)}.agent-dock-context{margin:0;padding:8px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:var(--fs-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-dock-body{min-height:0;display:flex;flex-direction:column}.agent-dock-body>*{min-height:0;flex:1 1}.agent-dock-unavailable{height:100%;display:grid;place-items:center;padding:24px;color:var(--muted);font-size:var(--fs-dense);text-align:center;line-height:1.5}.agent-dock-tab{position:fixed;right:0;top:50%;z-index:20;display:inline-flex;align-items:center;gap:6px;transform:translateY(-50%) rotate(-90deg) translateX(50%);transform-origin:right center;border:1px solid var(--line-strong);border-bottom:0;border-radius:var(--r-md) var(--r-md) 0 0;background:var(--surface);color:var(--muted);padding:6px 12px;font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;box-shadow:-4px 0 12px rgb(0 0 0/5%)}.agent-dock-tab:hover{color:var(--ink);border-color:var(--brass)}.agent-memory{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:14px 16px;margin-bottom:16px}.agent-memory-head{display:flex;gap:9px;align-items:flex-start}.agent-memory-head strong{display:block;font-size:var(--fs-dense)}.agent-memory-head p{margin:2px 0 0;color:var(--muted);font-size:var(--fs-label);line-height:1.45}.agent-memory-add{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;grid-gap:8px;gap:8px;margin:12px 0}.agent-memory-add input{border:1px solid var(--line);border-radius:var(--r-md);background:white;color:var(--ink);padding:8px 10px;font:inherit;font-size:var(--fs-dense);min-width:0}.agent-memory-empty{margin:8px 0 0;color:var(--muted);font-size:var(--fs-dense)}.agent-memory-list{margin:0;display:flex;flex-direction:column}.agent-memory-item{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,2fr) auto;grid-gap:10px;gap:10px;align-items:baseline;border-top:1px solid var(--line);padding:9px 0}.agent-memory-item dt{margin:0;font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:var(--fw-strong)}.agent-memory-item dd{margin:0;font-size:var(--fs-dense);overflow-wrap:anywhere}.agent-memory-item span{color:var(--faint);font-size:var(--fs-label);white-space:nowrap}@media (max-width:760px){.agent-memory-add,.agent-memory-item{grid-template-columns:1fr}}.tin-reveal{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;min-width:0}.tin-reveal>.tin-reveal-value{padding:0;border:0;border-bottom:1px dotted var(--line);background:transparent;color:var(--ink);font:inherit;font-weight:var(--fw-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;cursor:pointer;overflow-wrap:anywhere}.tin-reveal>.tin-reveal-value:hover:not(:disabled){border-bottom-color:var(--brass-deep)}.tin-reveal>.tin-reveal-value:disabled{color:var(--muted);cursor:default}.tin-reveal>small{flex-basis:100%;color:var(--muted);font-size:var(--fs-label)}.tin-reveal>small.tin-reveal-error{color:var(--red)}.email-attachments{display:flex;align-items:baseline;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:var(--fs-label);overflow-wrap:anywhere}.email-attachments>svg{flex:none;transform:translateY(2px)}.email-attachments-missing{color:var(--amber)}.email-thread-clip{display:inline-flex;align-items:center;gap:3px;color:var(--muted);font-size:var(--fs-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.client-title-detail{color:var(--muted);font-size:var(--fs-dense);font-weight:var(--fw-body);letter-spacing:0;text-transform:none;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}