/* Revision 3: shared staff shell, readable estimates and contextual guidance. */
@media screen {
  .finance-page>[hidden] {display:none!important}
  .finance-detail-nav {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px}
  .crm-staff .finance-modal {position:fixed;inset:0;margin:auto;width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid #dedee7;border-radius:24px;background:#fff;color:#292932;overflow:auto}
  .finance-modal::backdrop {background:#25253466;backdrop-filter:blur(6px)}
  .crm-staff .finance-modal .finance-form {margin:0;border:0;border-radius:0;padding:26px}
  .crm-staff .finance-fields input[type=checkbox] {width:18px;height:18px;min-height:0;padding:0;margin:0 8px 0 0;vertical-align:middle}
  .crm-staff .ws-finance-contract {border:1px solid #e5e5eb;border-radius:18px;padding:20px;margin-top:18px}
  .ws-finance-contract header {display:flex;justify-content:space-between;gap:16px;align-items:start;flex-wrap:wrap}
  .ws-finance-contract h3 {margin:0 0 6px}
  .ws-finance-values {display:flex;gap:24px;flex-wrap:wrap;margin:18px 0}
  .ws-finance-values small {display:block;color:#85858f}
  .ws-finance-values b {display:block;margin-top:5px}
  .ws-finance-entry {display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #eeeeF3}
  .ws-finance-entry span {flex:1;min-width:180px}
  .ws-finance-entry small {display:block;color:#85858f}
  .crm-staff {font-size:1rem; --v2-side:var(--crm-nav-w,16rem)}
  .crm-staff .main-content {margin-left:var(--crm-nav-w,16rem)}
  .crm-staff .account-sheet:not(.open) {visibility:hidden;pointer-events:none}
  .crm-staff .sidebar {width:var(--crm-nav-w,16rem)}
  body.crm-staff :is(.sidebar,.crmnav-side,.crmnav-drawer) {background:linear-gradient(145deg,#ffffffe8,#ffffffaa);font-family:var(--crm-font);color:#292932;border-color:#e5e5ec}
  body.crm-staff :is(.sidebar .sidebar-nav a.nav-link,.crmnav a.crmnav-link) {font-family:var(--crm-font);font-size:.86rem;line-height:1.4;font-weight:500;min-height:46px;padding:11px 12px;margin:3px 0;border-radius:12px;gap:12px;color:#777780}
  body.crm-staff :is(.sidebar .sidebar-nav a.nav-link,.crmnav a.crmnav-link).active {font-weight:600;background:#252527;color:#fff}
  body.crm-staff :is(.sidebar .sidebar-nav a.nav-link,.crmnav a.crmnav-link):hover:not(.active) {background:#e9e9ef;color:#292932}
  body.crm-staff :is(.sidebar .sidebar-nav a.nav-link,.crmnav a.crmnav-link) svg {width:18px;height:18px;flex:none}
  body.crm-staff :is(.sidebar,.crmnav) li.crmnav-section {font-family:var(--crm-font);font-size:.65rem;font-weight:600;line-height:1.4;margin:0;padding:16px 12px 6px;color:#8a8a95}
  body.crm-staff :is(.sidebar,.crmnav) li.crmnav-section:first-child {margin-top:0}
  .crm-staff .sidebar-header,.crm-staff .crmnav-head {height:124px;min-height:124px;padding:24px 22px;position:relative;display:flex;align-items:center;justify-content:space-between;box-sizing:border-box}
  .crm-staff .sidebar-logo-img,.crm-staff .crmnav-logo {width:132px!important;height:auto!important;max-height:70px!important;object-fit:contain}
  .crm-staff .sidebar-header #overdue-badge,.crm-staff .sidebar-header .notif-bell {display:none}
  .crm-staff .sidebar .crmnav-toggle,.crm-staff .crmnav .crmnav-toggle {width:30px;height:36px;min-width:30px;border:0;border-radius:9px;background:transparent;color:#82828c;display:grid;place-items:center;cursor:pointer}
  .crm-staff .sidebar .crmnav-toggle svg {width:18px;height:18px;stroke:currentColor;fill:none}
  .crm-staff .sidebar #crm-menu,.crm-staff .crmnav-side>ul {padding:0 12px!important;margin:0;overflow:auto;flex:1}
  .crm-staff .sidebar :is(.nav-link,.crmnav-link),body.crm-staff .crmnav a.crmnav-link {font-size:.86rem;line-height:1.4;min-height:46px;margin:3px 0;padding:11px 12px;border-radius:12px;gap:12px}
  .crm-staff .sidebar .crmnav-section,.crm-staff .crmnav .crmnav-section {margin:0;padding:16px 12px 6px;font-size:.65rem;letter-spacing:.075em}
  .crm-staff .sidebar-footer,.crm-staff .crmnav-foot {min-height:76px;padding:12px 16px;border-top:1px solid #e2e2e8;box-sizing:border-box}
  .crm-staff .sidebar.rail .crmnav-label,.crm-staff .sidebar.rail .crmnav-section,.crm-staff .sidebar.rail .sidebar-logo-img,.crm-staff .sidebar.rail .user-chip,.crm-staff .sidebar.rail .sidebar-footer {display:none!important}
  .crm-staff .sidebar.rail .sidebar-header {padding:16px;justify-content:center}
  .crm-staff .sidebar.rail #crm-menu {padding:0 8px!important}
  .crm-staff .sidebar.rail .nav-link {padding:12px;justify-content:center}
  .crm-staff .sidebar.rail .badge {position:absolute;right:0;top:0}
  body.crm-staff :is(.sidebar .nav-link,.crmnav .crmnav-link) :is(.badge,.nav-badge) {margin-left:auto;min-width:22px;height:22px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#fff0b8;color:#68521b;font-size:11px;font-weight:600;line-height:1;box-shadow:none}
  body.crm-staff :is(.sidebar .nav-link,.crmnav .crmnav-link) :is(.badge,.nav-badge).hidden {display:none}
  .crm-staff .v2-demo-banner {height:32px;box-sizing:border-box;margin:0;background:#252527;display:flex;align-items:center;justify-content:center;gap:14px;font-size:11px;padding:6px 12px}
  body.crm-staff:has(#expense-form)>.v2-demo-banner {margin:-24px -24px 24px}
  .crm-staff .view {padding:28px 36px}
  .crm-staff .view-header {align-items:center;gap:20px;flex-wrap:wrap}
  .crm-staff .view-header h1 {font-size:clamp(28px,2vw,42px)!important;font-weight:650;letter-spacing:-.045em}
  .crm-staff .view-sub {font-size:.9rem;color:#7c7c87;margin-top:8px}
  .crm-staff .finance-metrics {grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px}
  .crm-staff .finance-metric {border-radius:18px;padding:20px;min-width:0}
  .crm-staff .finance-metric b {font-size:clamp(19px,1.05vw,24px);font-weight:600;line-height:1.35;letter-spacing:-.025em;white-space:nowrap;font-variant-numeric:tabular-nums}
  .crm-staff .ws-project-arrow {display:flex;justify-content:center;align-items:center;gap:10px;min-height:40px;padding:8px 24px;background:#23834e;color:#fff;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);border-radius:9px 0 0 9px;font-size:14px;font-weight:600}
  .crm-staff .ws-stage-display {margin:18px 0 10px}
  .crm-staff .ws-sales-stages {margin-top:8px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
  .crm-staff .ws-sales-stages summary {cursor:pointer;width:fit-content;font-size:12px;color:#777780;padding:5px 0}
  body.crm-staff.crm-statement {font-size:14px;line-height:1.5}
  .crm-staff.crm-statement .st-head {padding:22px 24px 16px;border-radius:20px}
  .crm-staff.crm-statement .st-title span {font-family:var(--crm-font);font-size:26px;font-weight:600;line-height:1.25;letter-spacing:-.03em;text-transform:none}
  .crm-staff.crm-statement :is(.st-back,.st-status,.st-meta,.st-meta button,.st-meta-label,.st-steps label,.mf label) {font-size:13px;line-height:1.5;letter-spacing:0;text-transform:none;font-weight:500}
  .crm-staff.crm-statement :is(button,.btn,.crm-btn,.st-steps select,.mf input) {font-size:14px;line-height:1.4}
  .crm-staff.crm-statement .st-more {padding:0;border:0;background:transparent;box-shadow:none}
  .crm-staff.crm-statement .st-steps {margin-top:22px;gap:14px}
  .crm-staff.crm-statement .st-steps>li {align-content:start;align-items:start}
  .crm-staff.crm-statement .st-steps select {height:42px;font-weight:500}
  .crm-staff.crm-statement .tbl-wrap :is(th,td) {font-size:13px!important;line-height:1.5;letter-spacing:0;text-transform:none;padding:12px 10px}
  .crm-staff.crm-statement .tbl-wrap th {font-weight:600}
  .crm-staff.crm-statement :is(.sec-title,.date-inp,.pay-btn,.pay-tag,.sb) {font-size:13px;line-height:1.5;letter-spacing:0;text-transform:none}
  .crm-staff.crm-statement .date-inp {width:112px}
  .crm-staff.crm-statement .no-print p {font-size:13px!important;line-height:1.6;margin-top:8px}
  @media(max-width:900px) {
    .crm-staff.crm-statement .st-head {padding:16px}
    .crm-staff.crm-statement .st-title span {font-size:22px}
    .crm-staff.crm-statement .tbl-wrap table {min-width:1100px}
  }
  .crm-staff .finance-metric small {font-size:.78rem;line-height:1.4;display:block;min-height:2.7em}
  .crm-staff .finance-metric p {font-size:.75rem;line-height:1.5;margin-top:8px}
  .crm-staff #dashboard-content .kpi-grid {grid-template-columns:repeat(auto-fit,minmax(225px,1fr));gap:16px}
  .crm-staff #dashboard-content .kpi-card {padding:18px 20px;min-width:0}
  .crm-staff #dashboard-content .kpi-value {font-size:clamp(20px,1.3vw,28px);font-weight:600;line-height:1.35;letter-spacing:-.025em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
  .crm-staff #dashboard-content :is(.kpi-label,.kpi-sub) {font-size:.85rem;line-height:1.5}
  .crm-staff #dashboard-content table {font-size:.9rem}
  .crm-staff #users-list>.v2-directory-card,.crm-staff #archive-list,.crm-staff #view-clients .table-wrap {background:#fff;border:1px solid #e5e5ec;border-radius:22px;overflow-x:auto}
  .crm-staff :is(.users-table,.clients-table) {width:100%;border-collapse:separate;border-spacing:0;border-radius:0;background:#fff}
  .crm-staff :is(.users-table,.clients-table) th {font-family:var(--crm-font);font-size:.76rem!important;font-weight:500;text-transform:none!important;letter-spacing:0!important;line-height:1.45;padding:15px 18px!important;color:#797985!important;background:#f4f4f7!important;border-bottom:1px solid #e8e8ee;white-space:nowrap}
  .crm-staff :is(.users-table,.clients-table) td {font-family:var(--crm-font);font-size:.86rem;padding:18px!important;line-height:1.5;border-bottom:1px solid #eeeeF3;vertical-align:middle}
  .crm-staff :is(.users-table,.clients-table) tr:last-child td {border-bottom:0}
  .crm-staff :is(.users-table,.clients-table) tbody tr:hover {background:#fafafd}
  .crm-staff :is(.users-table,.clients-table) strong {font-weight:550}
  .crm-staff .v2-label {display:inline-flex;align-items:center;gap:6px;background:#f0f0f5;color:#666674;padding:5px 9px;border-radius:8px;font-size:.75rem;white-space:nowrap}
  .crm-staff .v2-label-status::before {content:'';width:6px;height:6px;border-radius:50%;background:#ddba39}
  .crm-staff .v2-directory-muted {font-size:.83rem;color:#888893}
  .crm-staff #archive-list:has(.v2-empty-row) thead {display:none}
  .crm-staff .v2-empty {padding:44px 24px;text-align:center;color:#858590;font-size:.85rem}
  .crm-staff .v2-empty strong {display:block;font-size:1.05rem;color:#444450;margin-bottom:9px}
  .crm-staff input[type=checkbox] {appearance:auto;width:18px!important;height:18px!important;min-width:18px;min-height:18px!important;vertical-align:middle;accent-color:#34343b;flex:none;margin:0 9px 0 0}
  .crm-staff label:has(>input[type=checkbox]) {display:inline-flex;align-items:center;gap:8px;white-space:normal}
  .crm-staff label:has(>input:not([type=checkbox]):not([type=radio])),.crm-staff label:has(>select),.crm-staff label:has(>textarea) {display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:0;white-space:normal}
  .crm-staff label>:is(input:not([type=checkbox]):not([type=radio]),select,textarea) {min-width:0;max-width:100%;box-sizing:border-box}
  .crm-staff .v2-widget[data-filter=late] {background:linear-gradient(115deg,#ffe078 0%,#fff0b0 100%);border:1px solid #f3d469}
  .crm-staff .v2-task-aside {background:linear-gradient(130deg,#ffe48c 0%,#fff5d4 75%,#fff9e9 100%)}
  .crm-staff td:has(>input[type=checkbox]) {white-space:nowrap}
  .crm-staff td>input[type=checkbox]+button {margin-left:4px}
  .crm-staff td>input[type=checkbox] {margin-right:10px!important;position:static!important}
  .crm-staff form label:not(:has(>input[type=checkbox])):not(:has(>input[type=radio])) {display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0}
  .crm-staff form label>input:not([type=checkbox]):not([type=radio]),.crm-staff form label>select {max-width:100%;box-sizing:border-box}
  .crm-staff :is(.table-wrap,.tbl-wrap) {overflow-x:auto;isolation:isolate}
  .crm-staff .crmnav-fab {bottom:18px!important}
  .crm-staff .v2-tour-launch {position:fixed!important;right:20px!important;bottom:20px!important;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%;font:600 18px var(--crm-font);display:grid;place-items:center;z-index:1100;border:1px solid #dddde5;background:#fff;color:#666673;box-shadow:0 5px 20px #2424340d}
  .crm-staff #toast,.crm-staff .toast {bottom:76px!important;right:20px!important;max-width:calc(100vw - 40px)}
  /* Builder uses the staff typography without changing estimate/PDF data or handlers. */
  body.crm-calculator {--tx:#292932;--tx2:#666672;--mu:#777783;--bd:#dddde5;--card:#fff;--grn:#4c4c58;--acc:#d0a522}
  .crm-calculator #tb {font-family:var(--crm-font);gap:8px;padding:10px 20px;height:72px}
  .crm-calculator #tb-logo {display:none}
  .crm-calculator #tb-ttl {font-size:.76rem;font-weight:600;color:#777783;letter-spacing:.015em}
  .crm-calculator #tb button,.crm-calculator #status-sel {font-size:.85rem!important;min-height:42px;border-radius:11px;padding:8px 14px}
  .crm-calculator #app {padding-top:72px}
  .crm-calculator #lft {width:280px;min-width:280px;background:#f6f6f8;border-right:1px solid #e0e0e7}
  .crm-calculator #tabs {min-height:52px;background:#fff}
  .crm-calculator #tabs .tab {font-size:.85rem;letter-spacing:0;padding:16px 10px}
  .crm-calculator #lft :is(label,.flabel,.lbl,.pg-title) {font-size:12px;line-height:1.5}
  .crm-calculator #lft :is(input,select,textarea) {font-size:14px;line-height:1.45;border-color:#e0e0e7;min-height:40px}
  .crm-calculator #lft button {font-size:13px;line-height:1.35;min-height:36px}
  .crm-calculator #rgt {padding:24px 24px 85px;background:#f2f2f5}
  .crm-calculator #kp-table {font-family:var(--crm-font);table-layout:fixed;border-collapse:separate;border-spacing:0;border-color:#e2e2e8;min-width:810px}
  .crm-calculator #kp-table td {font-size:14px;border-color:#e8e8ed;padding:8px 5px}
  .crm-calculator #kp-table th {font-size:12px;line-height:1.4;padding:13px 5px;border-color:#e2e2e8;font-weight:500;letter-spacing:0}
  .crm-calculator #kp-table .cell-inp {font-size:14px!important;min-height:40px;border-radius:8px;padding:8px 5px;font-variant-numeric:tabular-nums}
  .crm-calculator #kp-table .inp-name {font-size:15px!important;font-weight:500;line-height:1.45}
  .crm-calculator #kp-table textarea.inp-name {resize:none;overflow:hidden;white-space:normal;display:block;min-height:42px;field-sizing:content}
  .crm-calculator #kp-table .cg-mpr {width:125px!important}
  .crm-calculator #kp-table .mat-cell-inner {gap:5px}
  .crm-calculator #kp-table .mat-cell-inner input {min-width:0;flex:1;width:0}
  .crm-calculator #kp-table .mat-pick-btn {min-width:28px;width:28px;flex:none;padding:0;border-radius:8px}
  .crm-calculator .row-item-lab .inp-name {font-style:normal}
  .crm-calculator #kp-table .sec-inner {background:#252527;border-radius:0;padding:12px 8px;min-height:62px;gap:10px}
  .crm-calculator .sec-title-inp {font-size:17px!important;font-weight:650;letter-spacing:-.015em}
  .crm-calculator #kp-table .row-section td {padding:0;background:#252527}
  .crm-calculator #kp-table .row-section td {padding:0!important}
  .crm-calculator #tb .tsep {display:none}
  .crm-calculator #toast {color:#fff!important;background:#33333b!important}
  .crm-calculator .sec-actions button {background:#39393d;border-radius:8px;width:34px;height:34px}
  .crm-calculator .row-sub-hd td {letter-spacing:.06em;font-size:11px!important;padding:11px!important}
  .crm-calculator .row-sec-foot td {background:#ededf2;padding:12px 8px!important;font-size:14px!important}
  .crm-calculator .row-sec-foot .sf-inp {font-size:14px;min-height:40px}
  .crm-calculator #kp-table .row-add-btn {font-size:13px;padding:10px 14px;border-radius:9px;min-height:38px}
  .crm-calculator .v2-kp-tools {gap:10px;margin-bottom:20px}
  .crm-calculator .v2-kp-tools select {flex:1;min-width:0;font-size:14px;max-width:none}
  .crm-calculator #docw {max-width:none}
  @media(min-width:901px) {
    .crm-calculator #kp-table {min-width:1040px}
    .crm-calculator #kp-table .cg-name {width:auto!important}
    .crm-calculator #kp-table .cg-act {width:112px!important}
    .crm-calculator #kp-table .cg-mpr,.crm-calculator #kp-table .cg-lpr {width:112px!important}
    .crm-calculator #kp-table .cg-mto,.crm-calculator #kp-table .cg-lto {width:124px!important}
    .crm-calculator #kp-table .cg-qty {width:80px!important}
    .crm-calculator #kp-table .sf-tot {white-space:normal;overflow-wrap:anywhere;font-size:13px!important;font-weight:650}
    .crm-calculator #kp-table .sf-inp {min-width:0;width:100%;box-sizing:border-box;padding:8px 2px;font-size:13px;font-weight:600}
    .crm-calculator #lft {width:310px;min-width:310px}
    .crm-calculator #lft :is(label,.flabel,.lbl,.pg-title) {font-size:13px}
    .crm-calculator #kp-table .row-sub-hd td {font-size:12px!important;letter-spacing:0}
  }
  /* Project-led home and quick client finder. */
  .v2-home-projects {margin:4px 0 24px}
  .v2-block-head {display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
  .v2-block-head h2 {margin:0;font-size:1.2rem;font-weight:600;letter-spacing:-.03em}
  .v2-block-head button {border:0;background:transparent;font:500 .8rem var(--crm-font);color:#747480;cursor:pointer}
  .v2-project-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
  .v2-project-card {background:#fff;border:1px solid #e4e4eb;border-radius:22px;padding:22px;min-width:0;color:#2b2b31;text-decoration:none;display:flex;flex-direction:column;gap:14px;transition:box-shadow .15s,border-color .15s}
  .v2-project-card:hover {border-color:#d3bf73;box-shadow:0 7px 24px #2525350b}
  .v2-project-card header {display:flex;justify-content:space-between;align-items:center;gap:12px}
  .v2-project-card .v2-project-icon {background:#f2f2f6;border-radius:12px;width:40px;height:40px;display:grid;place-items:center;color:#757580}
  .v2-project-card svg {width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6}
  .v2-project-card h3 {font-size:1.12rem;font-weight:600;letter-spacing:-.025em;margin:0 0 4px;overflow-wrap:anywhere}
  .v2-project-card p {font-size:.8rem;color:#858590;margin:0}
  .v2-project-card footer {border-top:1px solid #ededf2;padding-top:14px;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.78rem;color:#7d7d88}
  .v2-project-card footer b {font-size:.88rem;font-weight:550;color:#303039;white-space:nowrap}
  .v2-stage-chip {background:#f1f1f5;color:#777783;border-radius:7px;padding:5px 9px;font-size:.7rem;line-height:1.3}
  .v2-stage-chip.active {background:#fff2be;color:#6a581d}
  .crm-staff .v2-task-grid {grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:22px;align-items:start}
  .crm-staff #tasks-list {background:#fff;border:1px solid #e5e5ec;border-radius:22px;padding:20px}
  .crm-staff #tasks-list .task-row {border:0;border-radius:0;border-bottom:1px solid #eeeef3;margin:0;padding:18px 0}
  .crm-staff #tasks-list .task-section-label {padding:12px 0;color:#858590;font-size:.72rem;letter-spacing:.04em}
  .crm-staff #tasks-list .task-text {font-size:.94rem;font-weight:500}
  .crm-staff .v2-task-aside {background:linear-gradient(135deg,#fff1bb,#fff9e7);border:1px solid #efe3b8;border-radius:22px;padding:26px}
  .crm-staff .v2-task-aside h2 {font-size:1.35rem;font-weight:600}
  .v2-home-contacts {background:#fff;border:1px solid #e5e5ec;border-radius:22px;padding:22px;margin-bottom:18px}
  .v2-home-contacts h2 {margin:0 0 16px;font-size:1.1rem}
  .v2-contact-link {display:flex;gap:12px;align-items:center;text-decoration:none;color:#303039;padding:12px 0;border-bottom:1px solid #f0f0f5}
  .v2-contact-link:last-child {border:0}
  .v2-contact-avatar {display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#f0f0f4;color:#7b7b87;font-size:12px}
  .v2-contact-link b {display:block;font-size:.82rem;font-weight:550}.v2-contact-link small {display:block;font-size:.74rem;color:#888893;margin-top:4px}
  dialog.v2-client-finder {width:580px;max-width:calc(100vw - 32px);max-height:85dvh;padding:30px;border:1px solid #fff;border-radius:26px;box-shadow:0 24px 90px #20203035;font-family:var(--crm-font);color:#292932;background:#fff}
  dialog.v2-client-finder {position:fixed;inset:0;margin:auto;box-sizing:border-box;height:fit-content;overflow:auto}
  .v2-client-finder::backdrop {background:#29293566;backdrop-filter:blur(8px)}
  .v2-client-finder header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:14px}
  .v2-client-finder h2 {font-size:24px;margin:0;letter-spacing:-.035em}
  .v2-client-finder [data-close] {border:0;background:transparent;font-size:24px;color:#7d7d88;cursor:pointer;width:36px;height:36px}
  .v2-client-finder label {display:block;color:#868692;font-size:13px}
  .v2-client-finder input {display:block;width:100%;padding:13px 15px;margin:8px 0 14px;border:1px solid #e1e1e8;background:#f5f5f8;border-radius:12px;font-size:16px}
  .v2-client-finder #v2-client-results {max-height:330px;overflow:auto;display:grid;gap:8px;padding:2px}
  .v2-client-result {display:flex;align-items:center;gap:14px;padding:14px;border:1px solid transparent;border-radius:12px;background:#f5f5f8;text-decoration:none;color:#303038}
  .v2-client-result:hover {background:#fff7dc;border-color:#ecdda7}
  .v2-client-result svg {width:21px;height:21px;fill:none;stroke:#73737e;stroke-width:1.5;flex:none}
  .v2-client-result b {display:block;font-size:14px;font-weight:550}.v2-client-result small {display:block;font-size:12px;color:#858590;margin-top:4px}
  .v2-client-result .v2-stage-chip {margin-left:auto;white-space:nowrap}
  .v2-client-finder footer {display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:18px;color:#8b8b96;font-size:12px}
  .v2-client-finder footer a {color:#555560;text-decoration:none}
  /* Rounded aperture, curved pointer and non-overlapping card in the top layer. */
  dialog.v2-tour {position:fixed!important;inset:0!important;margin:0!important;padding:0!important;width:100vw!important;height:100dvh!important;max-width:none!important;max-height:none!important;border:0!important;background:transparent!important;overflow:hidden!important;pointer-events:none;color:#2d2d35}
  dialog.v2-tour::backdrop {background:transparent}
  dialog.v2-tour:not([open]) {display:none}
  .v2-tour .v2-tour-dim {position:absolute;inset:0;background:#30303d70;backdrop-filter:blur(4px);pointer-events:auto}
  .v2-tour .v2-tour-spot {position:absolute;border:1.5px solid #e8c343;box-shadow:none;pointer-events:none}
  .v2-tour .v2-tour-connector {position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
  .v2-tour .v2-tour-card {position:absolute;pointer-events:auto;border-radius:24px;padding:28px;border:1px solid #ffffffa0;background:#fff;box-shadow:0 14px 55px #28283728;font:14px/1.6 var(--crm-font);max-height:calc(100dvh - 32px)}
  .v2-tour .v2-tour-card h2 {font-size:23px!important;line-height:1.2;margin:13px 0 14px;font-weight:650}
  .v2-tour .v2-tour-card p {font-size:14px;line-height:1.65;color:#81818d;margin-bottom:22px}
  .v2-tour .v2-tour-card small {font-size:10px;letter-spacing:.085em}
  .v2-tour .v2-tour-card button {min-height:42px;padding:10px 14px;font-size:13px}
  .v2-tour .v2-tour-card [data-next]:focus-visible {outline:2px solid #8a8a94;outline-offset:3px}
  @media(min-width:2200px){.crm-calculator #lft{width:320px;min-width:320px}.crm-calculator #kp-table .cell-inp{font-size:17px!important}.crm-calculator #kp-table .inp-name{font-size:18px!important}.crm-calculator #kp-table th{font-size:14px}.crm-calculator #lft :is(input,select,textarea){font-size:16px}.crm-calculator #lft label{font-size:14px}}
  @media(max-width:1250px){.v2-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-staff .v2-task-grid{grid-template-columns:1fr}.crm-calculator #lft{width:250px;min-width:250px}.crm-calculator #rgt{padding:20px 16px 80px}}
  @media(max-width:900px){
    .crm-staff .main-content{margin-left:0}.crm-staff .view{padding:20px 16px 90px}.crm-staff .view-header h1{font-size:28px!important}
    .crm-staff .v2-tour-launch{right:16px!important;bottom:94px!important;width:38px;height:38px;min-height:38px}
    .crm-staff.crm-tool .v2-tour-launch{bottom:20px!important}
    .crm-staff .finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crm-staff .finance-metric{padding:16px 12px}.crm-staff .finance-metric b{font-size:20px;white-space:normal}.crm-staff .finance-metric small{font-size:11px}
    .crm-staff #dashboard-content .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.crm-staff #dashboard-content .kpi-card{padding:16px}.crm-staff #dashboard-content .kpi-value{font-size:20px}
    .crm-staff .v2-demo-banner{height:auto;min-height:32px;font-size:9px;gap:4px;flex-wrap:wrap}
    .crm-calculator #tb{height:auto;min-height:70px;padding:12px 14px}.crm-calculator #app{padding-top:0}.crm-calculator #lft{width:min(94vw,430px);min-width:0}.crm-calculator #lft :is(input,textarea,select){font-size:16px}
    .crm-calculator #rgt{padding:18px 12px 100px}.crm-calculator #kp-table{min-width:0}.crm-calculator #kp-table .cell-inp{font-size:16px!important}.crm-calculator #kp-table .inp-name{font-size:16px!important}
    .crm-calculator #kp-table td{padding:0}.crm-calculator #kp-table .sec-inner{padding:12px;border-radius:16px}.crm-calculator .sec-title-inp{flex-basis:100%;min-width:0;font-size:17px!important}.crm-calculator .sec-actions{margin-left:auto}.crm-calculator #tabs{min-height:48px}
    .crm-calculator .v2-kp-tools{display:grid;grid-template-columns:1fr auto;gap:10px}.crm-calculator .v2-kp-settings{grid-column:1/-1;justify-content:center}.crm-calculator .v2-kp-tools select{width:100%;font-size:14px}
    .v2-project-grid{grid-template-columns:1fr}.v2-project-card{padding:18px;border-radius:18px}.v2-project-card h3{font-size:18px}.v2-project-card footer{padding-top:12px}.v2-block-head h2{font-size:18px}
    .crm-staff #tasks-list{padding:14px 16px}.v2-home-contacts{padding:18px}.v2-client-finder .v2-stage-chip{font-size:10px;padding:4px 6px}.v2-client-finder{padding:22px!important}.v2-client-finder h2{font-size:22px}
    .v2-tour .v2-tour-card{padding:22px}.v2-tour .v2-tour-card h2{font-size:21px!important}.v2-tour .v2-tour-card p{font-size:13px}.v2-tour .v2-tour-card footer{gap:6px}.v2-tour .v2-tour-card button{font-size:12px;padding:9px 11px}
  }
}
