:root{
  --forest:#0b2b1f;--forest-2:#123f2c;--leaf:#2fb66d;--leaf-dark:#19864b;
  --mint:#eaf6eb;--wash:#f5f8f2;--paper:#fff;--ink:#10281e;--muted:#60756b;
  --line:#d5e4d7;--amber:#f3b928;--red:#d84d45;--blue:#287ca8;
  --shadow:0 18px 55px rgba(16,48,34,.10);--radius:22px;--radius-sm:13px;
  font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--wash);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(135deg,#f7faf5 0%,#edf5ed 100%);min-height:100vh;color:var(--ink)}
button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}.hidden{display:none!important}
.ops-topbar{height:74px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:40;backdrop-filter:blur(18px)}
.ops-brand{display:flex;gap:11px;align-items:center;min-width:220px}.ops-brand img{width:43px;height:43px;border-radius:12px;object-fit:contain;background:#fff;border:1px solid var(--line)}.ops-brand b{display:block;font-size:17px}.ops-brand small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.ops-top-actions{display:flex;gap:10px;align-items:center}.ops-warning{font-size:12px;background:#fff8df;color:#70520b;border:1px solid #efdb98;padding:8px 12px;border-radius:999px}.ops-user-switch{display:flex;gap:8px;align-items:center}.ops-user-switch label{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.ops-user-switch select{border:1px solid var(--line);border-radius:11px;padding:9px 32px 9px 11px;background:#fff;color:var(--ink);font-weight:700;max-width:220px}
.ops-layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 74px)}
.ops-sidebar{background:var(--forest);color:#fff;padding:22px 14px;position:sticky;top:74px;height:calc(100vh - 74px);overflow:auto}.ops-sidebar-intro{padding:0 9px 18px;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:13px}.ops-sidebar-intro small{color:#b9d5c6;display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.ops-sidebar-intro b{display:block;margin-top:5px}.ops-sidebar-intro span{font-size:12px;color:#b9d5c6;line-height:1.4;display:block;margin-top:4px}
.ops-nav{display:grid;gap:5px}.ops-nav button{border:0;background:transparent;color:#c9ded2;border-radius:12px;padding:11px 12px;text-align:left;font-weight:750;display:flex;align-items:center;justify-content:space-between}.ops-nav button:hover{background:rgba(255,255,255,.08);color:#fff}.ops-nav button.active{background:#fff;color:var(--forest);box-shadow:0 6px 18px rgba(0,0,0,.13)}.ops-nav button small{font-size:10px;border-radius:999px;background:rgba(255,255,255,.12);padding:2px 7px}.ops-nav button.active small{background:var(--mint)}
.ops-sidebar-footer{margin-top:22px;border-top:1px solid rgba(255,255,255,.12);padding:16px 9px 0;color:#b9d5c6;font-size:11px;line-height:1.5}.ops-sidebar-footer a{display:block;color:#fff;font-weight:700;margin-top:8px}
.ops-main{padding:28px;min-width:0;max-width:1600px;width:100%;margin:auto}.ops-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.ops-page-head .eyebrow,.ops-eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--leaf-dark);font-weight:900}.ops-page-head h1{font-size:clamp(28px,4vw,46px);letter-spacing:-.04em;margin:6px 0 6px;line-height:1}.ops-page-head p{color:var(--muted);margin:0;max-width:760px;line-height:1.55}.ops-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.ops-btn{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:12px;padding:10px 15px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:41px}.ops-btn:hover{border-color:#9dc8a8;transform:translateY(-1px)}.ops-btn.primary{background:var(--leaf);border-color:var(--leaf);color:#fff}.ops-btn.dark{background:var(--forest);border-color:var(--forest);color:#fff}.ops-btn.soft{background:var(--mint);border-color:#cfe6d1}.ops-btn.danger{color:#9e302b;border-color:#efc8c5;background:#fff8f7}.ops-btn.small{padding:7px 10px;min-height:33px;font-size:12px}.ops-btn.wide{width:100%}.ops-btn:disabled{opacity:.48;cursor:not-allowed;transform:none}
.ops-security-note{padding:13px 16px;border:1px solid #edda98;background:#fff9e6;border-radius:14px;color:#6d5211;font-size:13px;line-height:1.5;margin-bottom:20px}.ops-security-note b{color:#533d06}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:17px;box-shadow:0 8px 24px rgba(26,63,44,.05)}.metric small{color:var(--muted);display:block;font-weight:700}.metric b{font-size:28px;letter-spacing:-.04em;display:block;margin-top:8px}.metric span{font-size:11px;color:var(--leaf-dark);font-weight:800;display:block;margin-top:5px}
.ops-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.span-12{grid-column:span 12}.span-8{grid-column:span 8}.span-7{grid-column:span 7}.span-6{grid-column:span 6}.span-5{grid-column:span 5}.span-4{grid-column:span 4}.span-3{grid-column:span 3}
.ops-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);min-width:0}.ops-card.flat{box-shadow:none}.ops-card.dark{background:var(--forest);color:#fff;border-color:var(--forest)}.ops-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.ops-card-head h2,.ops-card-head h3{margin:0;letter-spacing:-.02em}.ops-card-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.ops-card.dark .ops-card-head p{color:#bfd3c8}.ops-card-head .ops-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.access-approval-card{margin-bottom:18px;border-color:#b9d9ba;background:linear-gradient(145deg,#f5fbf3,#fff)}.access-request-history{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.access-request-history summary{cursor:pointer;color:#1d6338;font-weight:900}.access-request-history .ops-list{margin-top:12px}
.ops-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px}.ops-table{width:100%;border-collapse:collapse;min-width:680px;background:#fff}.ops-table th{text-align:left;background:#f2f7f1;color:#52695d;font-size:10px;text-transform:uppercase;letter-spacing:.07em;padding:11px 12px;white-space:nowrap}.ops-table td{border-top:1px solid var(--line);padding:12px;font-size:13px;vertical-align:top}.ops-table tr:hover td{background:#fbfdfb}.ops-table b{display:block}.ops-table small{display:block;color:var(--muted);margin-top:3px;line-height:1.35}.ops-table-actions{display:flex;gap:5px;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:var(--mint);color:#1d6f43;padding:5px 9px;font-size:11px;font-weight:850;white-space:nowrap}.badge.green{background:#dff6e7;color:#14723e}.badge.amber{background:#fff3cc;color:#765707}.badge.red{background:#ffe3e1;color:#9d312b}.badge.blue{background:#e4f2fb;color:#1e6589}.badge.gray{background:#edf1ee;color:#56665f}.badge.dark{background:var(--forest);color:#fff}
.pipeline{display:grid;grid-template-columns:repeat(9,minmax(150px,1fr));gap:10px;overflow:auto;padding-bottom:6px}.pipeline-column{background:#f3f7f2;border:1px solid var(--line);border-radius:16px;padding:10px;min-height:180px}.pipeline-column h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin:0 0 9px;display:flex;justify-content:space-between}.pipeline-column h3 span{color:var(--muted)}.lead-card{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:7px}.lead-card b{font-size:12px}.lead-card small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.lead-card select{width:100%;font-size:11px;padding:5px;border:1px solid var(--line);border-radius:8px;margin-top:8px}
.ops-form{display:grid;gap:13px}.ops-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.ops-form-grid .wide{grid-column:1/-1}.ops-field{display:grid;gap:6px}.ops-field>span{font-size:11px;font-weight:850;color:#52665c;text-transform:uppercase;letter-spacing:.04em}.ops-field input,.ops-field textarea,.ops-field select{width:100%;border:1px solid #cbdccd;background:#fff;border-radius:11px;padding:11px 12px;color:var(--ink);outline:none}.ops-field textarea{resize:vertical;min-height:82px}.ops-field input:focus,.ops-field textarea:focus,.ops-field select:focus{border-color:var(--leaf);box-shadow:0 0 0 3px rgba(47,182,109,.12)}.ops-field small{color:var(--muted)}
.ops-check{display:flex;gap:9px;align-items:flex-start;font-size:13px;line-height:1.4}.ops-check input{margin-top:2px;accent-color:var(--leaf)}
.ops-empty{border:1px dashed #bcd3c0;border-radius:14px;padding:24px;text-align:center;color:var(--muted)}.ops-empty b{display:block;color:var(--ink);margin-bottom:5px}.ops-empty p{margin:0;font-size:13px}
.ops-list{display:grid;gap:9px}.ops-list-item{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--line);border-radius:13px}.ops-list-item p{margin:3px 0 0;color:var(--muted);font-size:12px}.ops-list-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.progress{height:8px;background:#e4ece5;border-radius:999px;overflow:hidden}.progress span{display:block;height:100%;background:var(--leaf);border-radius:inherit}.money-private{border-left:4px solid var(--amber)}
.chart-bars{display:grid;gap:10px}.chart-bar{display:grid;grid-template-columns:minmax(100px,180px) 1fr 55px;gap:10px;align-items:center;font-size:12px}.chart-bar>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-bar i{height:11px;border-radius:999px;background:#e2ece3;overflow:hidden}.chart-bar i:before{content:"";display:block;width:var(--bar,0%);height:100%;background:linear-gradient(90deg,var(--leaf),#83cd6d);border-radius:inherit}.chart-bar b{text-align:right}
.quote-items{display:grid;gap:8px}.quote-row{display:grid;grid-template-columns:minmax(180px,2.2fr) 70px 90px 110px 110px 36px;gap:7px;align-items:center}.quote-row input{min-width:0;border:1px solid var(--line);padding:9px;border-radius:9px}.quote-row button{border:0;background:#ffe5e2;color:#9b302b;width:32px;height:32px;border-radius:9px;font-weight:900}.quote-totals{margin-left:auto;max-width:360px;display:grid;gap:7px;margin-top:15px}.quote-totals div{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line);padding-bottom:6px}.quote-totals div:last-child{border:0;font-size:18px;font-weight:900}
.role-matrix{display:grid;gap:10px}.role-card{border:1px solid var(--line);border-radius:15px;padding:14px}.role-card h3{margin:0;font-size:15px}.role-card p{font-size:12px;color:var(--muted);margin:5px 0 10px}.permission-tags{display:flex;gap:5px;flex-wrap:wrap}.permission-tags span{font-size:10px;background:#edf5ed;border-radius:999px;padding:4px 7px;color:#43604f}
.ops-modal{position:fixed;inset:0;background:rgba(4,22,15,.68);z-index:100;display:grid;place-items:center;padding:18px}.ops-dialog{background:#fff;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.3);width:min(820px,100%);max-height:90vh;overflow:auto;padding:22px}.ops-dialog.wide{width:min(1120px,100%)}.ops-dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:18px}.ops-dialog-head h2{margin:0}.ops-close{border:1px solid var(--line);background:#fff;border-radius:50%;width:37px;height:37px;font-size:18px;font-weight:900}
.ops-toast{position:fixed;right:20px;bottom:20px;background:var(--forest);color:#fff;border-radius:13px;padding:12px 17px;box-shadow:var(--shadow);z-index:150;opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s}.ops-toast.show{opacity:1;transform:none}
.private-gate{position:fixed;inset:0;background:linear-gradient(145deg,#071f16,#145438);z-index:200;color:#fff;display:grid;place-items:center;padding:24px}.private-gate-card{max-width:650px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:26px;padding:28px;box-shadow:0 25px 80px rgba(0,0,0,.25)}.private-gate-card h1{font-size:38px;margin:8px 0 10px}.private-gate-card p{color:#d0e3d8;line-height:1.6}.private-gate-card .ops-warning{display:block;border-color:#d9bd56;background:#fff4c7;margin:18px 0;color:#594204;border-radius:13px}.private-gate-actions{display:flex;gap:10px;flex-wrap:wrap}
.team-job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.team-job{border:1px solid var(--line);border-radius:16px;padding:15px}.team-job h3{margin:8px 0 6px}.team-job p{color:var(--muted);font-size:13px;margin:3px 0}.team-job .ops-list-actions{justify-content:flex-start;margin-top:13px}
.customer-id{font-family:Consolas,monospace;background:var(--forest);color:#fff;border-radius:8px;padding:4px 7px;font-size:11px;display:inline-block}
.ops-footer-note{text-align:center;color:var(--muted);font-size:11px;margin-top:28px}.only-owner{display:none}.role-owner .only-owner{display:block}.role-owner .only-owner.inline{display:inline-flex}
@media(max-width:1100px){.ops-warning{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}.span-8,.span-7,.span-6,.span-5,.span-4,.span-3{grid-column:span 12}.quote-row{grid-template-columns:2fr 60px 85px 95px 95px 34px}}
@media(max-width:760px){.ops-topbar{height:auto;min-height:68px;padding:10px 13px;align-items:flex-start}.ops-brand{min-width:0}.ops-brand small{display:none}.ops-user-switch{display:grid;gap:2px}.ops-user-switch label{display:none}.ops-user-switch select{max-width:145px;padding:8px;font-size:12px}.ops-layout{display:block}.ops-sidebar{position:sticky;top:67px;z-index:35;height:auto;padding:8px;overflow-x:auto}.ops-sidebar-intro,.ops-sidebar-footer{display:none}.ops-nav{display:flex;width:max-content}.ops-nav button{white-space:nowrap;padding:9px 11px}.ops-main{padding:18px 12px}.ops-page-head{display:block}.ops-head-actions{justify-content:flex-start;margin-top:14px}.metric-grid{gap:9px}.metric{padding:13px}.metric b{font-size:22px}.ops-grid{gap:11px}.ops-card{padding:15px;border-radius:18px}.ops-form-grid{grid-template-columns:1fr}.team-job-grid{grid-template-columns:1fr}.quote-row{grid-template-columns:1fr 55px 75px}.quote-row [data-cost],.quote-row [data-sell]{grid-row:2}.quote-row button{grid-column:3}.ops-dialog{padding:16px;border-radius:19px}.pipeline{grid-template-columns:repeat(9,145px)}}
@media print{.ops-topbar,.ops-sidebar,.ops-head-actions,.ops-btn,.ops-security-note{display:none!important}.ops-layout{display:block}.ops-main{padding:0;max-width:none}.ops-card{box-shadow:none;break-inside:avoid}}

/* Owner finance workspace */
.finance-period{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:-4px 0 18px;padding:12px 15px;border:1px solid var(--line);border-radius:15px;background:#fff}.finance-period label{display:grid;gap:5px}.finance-period label span{font-size:10px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.07em}.finance-period input{border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:var(--ink);background:#f8fbf7;font-weight:800}.finance-period small{color:var(--muted);text-align:right}.finance-metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.finance-metrics .metric b{font-size:22px}.finance-positive{border-left:4px solid var(--leaf)}.finance-negative{border-left:4px solid var(--red)}.finance-text-positive{color:#168448}.finance-text-negative{color:#b23c35}.finance-account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:11px}.finance-account-grid article{padding:15px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(145deg,#f8fbf7,#fff)}.finance-account-grid h3{margin:9px 0 5px}.finance-account-grid article>b{display:block;font-size:25px;letter-spacing:-.03em}.finance-account-grid article>small{display:block;margin-top:7px;color:var(--muted)}
@media(max-width:1250px){.finance-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.finance-period{display:grid}.finance-period small{text-align:left}.finance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-metrics .metric b{font-size:19px}.finance-account-grid{grid-template-columns:1fr}}

/* HR, attendance and employee access */
.attendance-today{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;padding:20px 22px;border-radius:20px;background:linear-gradient(135deg,var(--forest),#185b3c);color:#fff;box-shadow:var(--shadow)}.attendance-today h2{font-size:28px;margin:5px 0}.attendance-today p{margin:0;color:#cce1d5}.attendance-today .ops-eyebrow{color:#9ee0b9}.leave-card{display:grid;gap:9px;padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}.leave-card p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.leave-card>.badge{justify-self:start}.leave-card .ops-list-actions{justify-content:flex-start}.access-locked{max-width:680px;margin:7vh auto;padding:clamp(24px,5vw,48px);text-align:center;border-color:#efc8c5}.access-locked h1{font-size:clamp(30px,5vw,48px);margin:8px 0 12px}.access-locked p{color:var(--muted);line-height:1.65}.access-locked .ops-btn{margin-top:10px}
@media(max-width:760px){.attendance-today{display:grid;padding:17px}.attendance-today .ops-head-actions{margin-top:0}.attendance-today .ops-btn{width:100%}.access-locked{margin:18px auto}.team-app:has(.access-locked) .ops-sidebar{display:none}}

/* Pipeline automation, routed tasks and historical quotation rates */
.automation-live{display:flex;align-items:flex-start;gap:12px;margin:-4px 0 20px;padding:14px 16px;border:1px solid #bce1c7;border-radius:16px;background:linear-gradient(135deg,#e7f8eb,#fff)}.automation-live .automation-dot{width:11px;height:11px;border-radius:50%;background:var(--leaf);box-shadow:0 0 0 6px rgba(47,182,109,.14);margin:6px 2px 0 3px;flex:0 0 auto}.automation-live div{flex:1}.automation-live b{display:block}.automation-live p{margin:3px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.rate-library{margin-top:16px}.rate-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#f4f8f3}.rate-snapshot{grid-column:1/-1;color:var(--leaf-dark);font-size:10px;font-weight:800;margin-top:-2px}.quote-rate-row{position:relative;align-items:start}.task-cards{display:grid;gap:11px}.task-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-left:4px solid var(--leaf);border-radius:15px;background:#fff}.task-card.done{opacity:.7;border-left-color:#9aac9f}.task-card h3{margin:8px 0 4px}.task-card p{margin:0;color:var(--muted);font-size:13px}.task-card small{display:block;margin-top:7px;color:var(--muted)}
.quote-item-headings{display:grid;grid-template-columns:minmax(180px,2.2fr) 70px 90px 110px 110px 36px;gap:7px;padding:0 1px 7px}.quote-item-headings span{color:#52695d;font-size:10px;font-weight:900;letter-spacing:.055em;line-height:1.25;text-transform:uppercase}.quote-item-field{display:grid;gap:5px;min-width:0}.quote-item-field>small{display:none;color:#52695d;font-size:10px;font-weight:900;letter-spacing:.045em;text-transform:uppercase}.quote-item-field input{width:100%}[data-add-row-v2]{flex:0 0 auto;white-space:nowrap}.quote-drafts-panel{margin-bottom:16px;border-color:#bce1c7;background:linear-gradient(145deg,#f5fbf5,#fff)}.quote-draft-list{display:grid;gap:9px}.quote-draft-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:14px 15px;border:1px solid var(--line);border-radius:14px;background:#fff}.quote-draft-card h3{margin:7px 0 3px;font-size:16px}.quote-draft-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.quote-draft-total{text-align:right;white-space:nowrap}.quote-draft-total small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase}.quote-draft-total b{display:block;margin-top:3px}.quote-draft-card .ops-table-actions{justify-content:flex-end}
@media(max-width:760px){.automation-live{display:grid}.automation-live .ops-btn{width:100%}.rate-picker{grid-template-columns:1fr}.rate-picker .ops-btn{width:100%}.task-card{display:grid}.task-card .ops-list-actions{justify-content:flex-start}.quote-rate-row .rate-snapshot{grid-column:1/-1}}
@media(max-width:1100px) and (min-width:761px){.quote-item-headings{grid-template-columns:2fr 60px 85px 95px 95px 34px}}
@media(max-width:760px){.quote-item-headings{display:none}.quote-rate-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fbfdfb}.quote-item-field>small{display:block}.quote-rate-row .description{grid-column:1/-1}.quote-rate-row .quantity{grid-column:1}.quote-rate-row .unit{grid-column:2}.quote-rate-row .cost{grid-column:1}.quote-rate-row .selling{grid-column:2/-1}.quote-rate-row button{grid-column:3;grid-row:2;align-self:end}.quote-draft-card{grid-template-columns:1fr}.quote-draft-total{text-align:left}.quote-draft-card .ops-table-actions{justify-content:flex-start}.quote-draft-card .ops-table-actions .ops-btn{flex:1}.quote-drafts-panel .ops-card-head{align-items:flex-start}}

/* Connected finance, procurement and survey workspace */
.account-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.account-card-head h3{margin:3px 0}.finance-account-grid article.inactive{opacity:.62;background:#f2f4f2}.finance-expected{display:grid;gap:4px;padding:13px 15px;border:1px solid #b9ddc1;border-radius:14px;background:#eef8ef;color:var(--ink)}.finance-expected span{color:var(--muted);font-size:12px;line-height:1.45}.quote-rate-search{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#f4f8f3}.quote-rate-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;max-height:230px;overflow:auto}.quote-rate-results button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-align:left}.quote-rate-results button:hover{border-color:var(--leaf);background:#f8fff9}.quote-rate-results button[hidden]{display:none}.quote-rate-results button span{min-width:0}.quote-rate-results button b,.quote-rate-results button small{display:block}.quote-rate-results button small{margin-top:3px;color:var(--muted);font-size:10px}.quote-rate-results button strong{color:var(--leaf-dark);white-space:nowrap}.catalog-variants{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.catalog-variants span,.catalog-variant{display:inline-flex;gap:5px;align-items:center;padding:5px 7px;border-radius:9px;background:var(--mint);color:#285f40;font-size:10px;font-weight:800}.catalog-variants small{font-family:Consolas,monospace;color:var(--muted)}.vendor-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.vendor-factors{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.vendor-factors span{font-size:10px;padding:4px 6px;border-radius:8px;background:#f0f5ef}.vendor-score{font-size:19px;color:var(--leaf-dark);font-weight:900}.survey-location-list{display:grid;gap:13px}.survey-location{padding:15px;border:1px solid var(--line);border-radius:17px;background:#f8fbf7}.survey-location-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.survey-location-head b{display:block;margin-top:6px}.survey-measures{grid-template-columns:repeat(4,minmax(0,1fr))}.location-drawings{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px dashed var(--line)}.location-drawings>div{margin-right:auto}.location-drawings small{display:block;color:var(--muted);margin-top:2px}.survey-location-summary{display:grid;grid-template-columns:minmax(160px,.8fr) 1.5fr auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:14px}.survey-location-summary p{margin:4px 0 0;color:var(--muted);font-size:12px}.survey-location-summary .ops-list-actions{justify-content:flex-end}
@media(max-width:900px){.survey-measures{grid-template-columns:repeat(2,minmax(0,1fr))}.survey-location-summary{grid-template-columns:1fr}.survey-location-summary .ops-list-actions{justify-content:flex-start}.vendor-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.account-card-head{align-items:center}.quote-rate-results{grid-template-columns:1fr;max-height:190px}.quote-rate-results button{min-height:52px}.survey-location{padding:12px}.survey-measures{grid-template-columns:1fr}.survey-location-head{align-items:center}.location-drawings{display:grid;grid-template-columns:1fr}.location-drawings>div{margin:0}.location-drawings .ops-btn{width:100%}.vendor-review-grid{grid-template-columns:1fr}.finance-expected{grid-column:1/-1}.ops-dialog.wide{width:100%}}

/* v144: restrained functional motion for the admin and team workspaces. */
:root{
  --ops-ease-out:cubic-bezier(.22,1,.36,1);
  --ops-ease-standard:cubic-bezier(.2,.75,.25,1);
}
.ops-btn,.ops-nav button,.ops-card,.metric,.ops-list-item,.lead-card,.team-job,
.quote-rate-results button,.ops-table td,.ops-close,.ops-field input,.ops-field select,.ops-field textarea{
  transition:transform 180ms var(--ops-ease-out),box-shadow 220ms ease,border-color 180ms ease,background-color 180ms ease,color 180ms ease,opacity 180ms ease;
}
@media(hover:hover) and (pointer:fine){
  .ops-btn:hover{transform:translate3d(0,-2px,0)}
  .metric:hover,.ops-list-item:hover,.lead-card:hover,.team-job:hover{transform:translate3d(0,-2px,0);box-shadow:0 12px 30px rgba(16,48,34,.09)}
}
.ops-main>*{
  animation:ops-content-in 360ms var(--ops-ease-out) both;
}
.ops-main>*:nth-child(2){animation-delay:45ms}
.ops-main>*:nth-child(3){animation-delay:80ms}
.ops-main>*:nth-child(n+4){animation-delay:110ms}
.ops-modal:not(.hidden){animation:ops-backdrop-in 180ms ease-out both}
.ops-modal:not(.hidden) .ops-dialog{animation:ops-dialog-in 320ms var(--ops-ease-out) both}
.private-gate:not(.hidden) .private-gate-card{animation:ops-dialog-in 360ms var(--ops-ease-out) both}
@keyframes ops-content-in{from{opacity:0;transform:translate3d(0,9px,0)}to{opacity:1;transform:none}}
@keyframes ops-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes ops-dialog-in{from{opacity:0;transform:translate3d(0,13px,0) scale(.988)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .ops-main>*{animation-duration:280ms;animation-delay:0ms!important}
  .ops-sidebar{scroll-behavior:smooth}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  .ops-main>*,.ops-modal:not(.hidden),.ops-modal:not(.hidden) .ops-dialog,.private-gate:not(.hidden) .private-gate-card{
    animation:none!important;
  }
  .ops-btn,.ops-nav button,.ops-card,.metric,.ops-list-item,.lead-card,.team-job,
  .quote-rate-results button,.ops-table td,.ops-close,.ops-field input,.ops-field select,.ops-field textarea{
    transition:none!important;
  }
}
