:root{--brand-900:#0f3f4b;--brand-800:#145464;--brand-700:#17677a;--brand-100:#ddefea;--brand-50:#e6f4f1;--page:#f5f7fa;--card:#ffffff;--subtle:#eef3f7;--border:#dce5ed;--text:#132033;--text-muted:#526273;--text-soft:#728092;--green:#15803d;--green-soft:#e3f4e8;--amber:#b45309;--amber-soft:#fff3dc;--red:#b91c1c;--red-soft:#fee9e7;--blue:#2563eb;--blue-soft:#e6eeff;--purple:#7c3aed;--shadow:0 8px 24px rgba(13,33,53,0.08)}.invoice-page{display:grid;align-content:start;grid-gap:20px;gap:20px}.invoice-page>.page-header{margin-bottom:0}.invoice-detail-panel{overflow:hidden}.invoice-actions,.invoice-detail-actions,.invoice-source-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.invoice-accounting-action{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.invoice-source-links{padding:14px 20px;border-top:1px solid var(--line,#dce5ed);border-bottom:1px solid var(--line,#dce5ed);color:#526273;font-size:.86rem}.invoice-source-links a{color:#145464;font-weight:700}.invoice-lines-table td:first-child{min-width:260px}.invoice-lines-table td:first-child small{display:block;color:#728092;margin-top:4px}.invoice-ticket-source{color:#145464!important;font-weight:700}.invoice-remote-number{display:block;margin-top:3px;color:#526273;font-size:11px}.invoice-status-footer{display:flex;justify-content:flex-end;padding:18px 20px 20px;border-top:1px solid #dce5ed}.invoice-directory{min-width:0}.invoice-directory .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.invoice-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px;padding:0 0 22px;margin-bottom:18px;border-bottom:1px solid var(--border)}.invoice-payment-summary span{display:block;color:var(--text-muted);font-size:13px}.invoice-payment-summary strong{display:block;margin-top:6px;font-size:24px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.invoice-payment-danger{color:var(--red)!important;font-weight:700}.invoice-list-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.invoice-payment-filters{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.invoice-payment-filters button{display:inline-flex;align-items:center;gap:8px;border:1px solid transparent;border-radius:5px;color:var(--text-muted);background:transparent;padding:8px 10px;font:inherit;font-size:13px;cursor:pointer}.invoice-payment-filters button span{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.invoice-payment-filters button[aria-pressed=true]{background:var(--brand-50);border-color:var(--border);color:var(--brand-800);font-weight:700}.invoice-directory-scroll{overflow-x:auto;background:var(--card);border:1px solid var(--border);border-radius:6px}.invoice-directory-table{width:100%;border-collapse:collapse;font-size:13px;table-layout:fixed}.invoice-directory-table th{text-align:left;color:var(--text-muted);background:var(--subtle);font-size:12px;padding:12px 14px}.invoice-directory-table th:first-child{width:28%}.invoice-directory-table th:nth-child(2){width:16%}.invoice-directory-table th:nth-child(3){width:23%}.invoice-directory-table th:nth-child(4),.invoice-directory-table th:nth-child(5){width:14%}.invoice-directory-table th:last-child{width:48px}.invoice-directory-table td{padding:16px 14px;border-top:1px solid var(--border);vertical-align:middle;overflow-wrap:anywhere}.invoice-directory-table .numeric{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.invoice-directory-table tr[data-overdue=true]{background:#fff7f6}.invoice-directory-table tr:hover{background:var(--brand-50)}.invoice-directory-table td small{display:block;margin-top:4px;color:var(--text-muted);font-size:11px}.invoice-number-link{color:var(--brand-800);font-weight:700}.invoice-list-client{display:block;margin-top:4px}.invoice-mobile-due{display:none!important}.invoice-list-source{display:block;margin-top:4px;font-size:11px;color:var(--text-muted)}.invoice-amount-due{font-weight:700}.invoice-payment-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:5px;font-weight:700;font-size:12px;background:var(--subtle);color:var(--text-muted)}.invoice-payment-badge svg{flex-shrink:0}.invoice-payment-badge[data-payment=PAID]{background:var(--green-soft);color:var(--green)}.invoice-payment-badge[data-payment=OVERDUE]{background:var(--red-soft);color:var(--red)}.invoice-payment-badge[data-payment=UNPAID]{background:var(--amber-soft);color:var(--amber)}.invoice-payment-badge[data-payment=PARTIAL]{background:var(--blue-soft);color:var(--blue)}.invoice-payment-error{display:flex;gap:4px;align-items:center;flex-wrap:wrap;color:var(--red);font-size:11px;margin-top:6px}.invoice-payment-error small{width:100%}.invoice-list-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;color:var(--text-muted);font-size:11px;padding-top:12px}.invoice-refresh-message{margin:0 0 12px;font-size:13px}.invoice-empty{text-align:center;color:var(--text-muted);padding:36px!important}.invoice-refresh-spin{animation:invoice-refresh-spin 1.1s linear infinite}@keyframes invoice-refresh-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.invoice-refresh-spin{animation:none}}@media (max-width:1050px){.invoice-directory-table{min-width:740px}}@media (max-width:600px){.invoice-payment-summary{gap:12px}.invoice-payment-summary strong{font-size:18px}.invoice-payment-summary span{font-size:12px}.invoice-payment-filters button{min-height:44px}.invoice-directory-table{min-width:0}.invoice-directory-table td,.invoice-directory-table th{padding:12px 8px}.invoice-directory-table td:nth-child(2),.invoice-directory-table td:nth-child(4),.invoice-directory-table td:nth-child(6),.invoice-directory-table th:nth-child(2),.invoice-directory-table th:nth-child(4),.invoice-directory-table th:nth-child(6){display:none}.invoice-directory-table th:first-child{width:40%}.invoice-directory-table th:nth-child(3){width:34%}.invoice-directory-table th:nth-child(5){width:26%}.invoice-directory-table .invoice-mobile-due{display:block!important}}.inline-action{display:inline-flex;align-items:center;gap:8px}.inline-action .action-message{max-width:240px}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;background:var(--page);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;letter-spacing:0}button,input,select,textarea{color:inherit;font:inherit;letter-spacing:0}a,button,input,select,textarea{outline-color:var(--blue);outline-offset:2px}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}button{border:0}.app-shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;display:flex;flex-direction:column;gap:22px;width:232px;height:100vh;padding:22px 20px 20px;overflow:hidden;background:var(--brand-900);color:#fff}.sidebar-head{display:grid;grid-template-columns:minmax(0,1fr) 32px;grid-gap:8px;gap:8px;align-items:center}.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;min-height:32px;border-radius:7px;background:rgba(255,255,255,.08);color:#d7e8ec;cursor:pointer;transition:background-color .14s ease,color .14s ease}.sidebar-toggle:hover{background:rgba(255,255,255,.14);color:#fff}.brand-lockup{display:flex;align-items:center;gap:10px;min-width:0;height:48px}.avatar,.brand-mark{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border-radius:8px;background:var(--brand-100);color:var(--brand-800);font-weight:700}.brand-mark{width:34px;height:34px;font-size:16px}.brand-copy,.user-copy{display:flex;min-width:0;flex-direction:column}.brand-copy strong{font-size:16px;font-weight:600;line-height:22px}.brand-copy small,.user-copy small{color:#c1d0d6;font-size:11px;line-height:16px}.sidebar-nav{display:flex;flex:1 1;min-height:0;flex-direction:column;gap:6px}.nav-section-label{padding:0 2px 3px;color:#9cb4be;font-size:11px;font-weight:600;line-height:16px;text-transform:uppercase}.nav-section-spaced{margin-top:14px}.nav-item{position:relative;display:grid;grid-template-columns:3px 18px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;width:100%;min-height:40px;padding:0 12px 0 8px;border-radius:8px;color:#eef6f8;transition:background-color .14s ease,color .14s ease}.nav-item:hover{background:rgba(255,255,255,.07)}.nav-item[data-active=true]{background:var(--brand-50);color:var(--brand-800)}.nav-indicator{width:3px;height:18px;border-radius:2px}.nav-item[data-active=true] .nav-indicator{background:var(--brand-700)}.access-note{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:12px;border-radius:8px;background:rgba(23,103,122,.32)}.access-note strong{font-size:12px;font-weight:600}.access-note span{color:#c4d5da;font-size:11px;line-height:16px}.sidebar-user{grid-template-columns:minmax(0,1fr) 30px;grid-gap:9px;min-height:52px;padding:10px;border-radius:8px;background:#133742}.sidebar-user,.sidebar-user-profile{display:grid;gap:9px;align-items:center}.sidebar-user-profile{min-width:0;grid-template-columns:32px minmax(0,1fr);grid-gap:9px;border-radius:7px}.sidebar-user-profile:hover .avatar{background:#f2fbfa}.avatar{width:32px;height:32px;font-size:11px}.user-copy strong{font-size:12px;font-weight:600;line-height:16px}.user-copy small,.user-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy small{color:#c4d5da;font-size:11px;line-height:15px}@media (min-width:861px){.app-shell{transition:grid-template-columns .16s ease}.app-shell[data-sidebar-collapsed=true]{grid-template-columns:76px minmax(0,1fr)}.app-shell[data-sidebar-collapsed=true] .sidebar{width:76px;align-items:center;padding-right:12px;padding-left:12px}.app-shell[data-sidebar-collapsed=true] .sidebar-head{display:flex;flex-direction:column;gap:8px}.app-shell[data-sidebar-collapsed=true] .brand-lockup{justify-content:center;width:44px;height:38px}.app-shell[data-sidebar-collapsed=true] .access-note,.app-shell[data-sidebar-collapsed=true] .brand-copy,.app-shell[data-sidebar-collapsed=true] .nav-item>span:last-child,.app-shell[data-sidebar-collapsed=true] .nav-section-label,.app-shell[data-sidebar-collapsed=true] .user-copy{display:none}.app-shell[data-sidebar-collapsed=true] .sidebar-nav{align-items:center;width:100%}.app-shell[data-sidebar-collapsed=true] .nav-item{display:flex;justify-content:center;width:44px;min-height:40px;padding:0}.app-shell[data-sidebar-collapsed=true] .nav-indicator{position:absolute;left:4px}.app-shell[data-sidebar-collapsed=true] .sidebar-user{display:flex;width:44px;flex-direction:column;gap:8px;padding:0;background:transparent}.app-shell[data-sidebar-collapsed=true] .sidebar-user-profile{display:flex;justify-content:center}}.icon-button{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:6px;background:transparent;cursor:pointer}.icon-button.danger{color:var(--red)}.icon-button.danger:hover:not(:disabled){background:var(--red-soft)}.icon-button-inverse{color:#c4d5da}.icon-button-inverse:hover{background:rgba(255,255,255,.08);color:#fff}.app-content{min-width:0}.workspace-tabs{display:flex;min-height:44px;align-items:stretch;gap:2px;padding:0 20px;overflow-x:auto;border-bottom:1px solid #d8dde2;background:#fff;scrollbar-width:thin}.workspace-open-tab-label,.workspace-root-tab,.workspace-tab-close{border:0;background:transparent;cursor:pointer}.workspace-open-tab-label,.workspace-root-tab{display:inline-flex;min-height:44px;align-items:center;padding:0 16px;border-bottom:3px solid transparent;color:#707780;font-size:13px;font-weight:750;white-space:nowrap}.workspace-open-tab[data-active=true] .workspace-open-tab-label,.workspace-root-tab[data-active=true]{border-bottom-color:#06b6b4;color:#009c9a}.workspace-open-tab-label:hover,.workspace-root-tab:hover{color:var(--brand-800)}.workspace-open-tab{display:inline-flex;min-width:0;align-items:stretch}.workspace-open-tab-label{max-width:280px;overflow:hidden;text-overflow:ellipsis}.workspace-tab-close{display:inline-flex;width:30px;min-height:44px;align-items:center;justify-content:center;color:#89939a}.workspace-tab-close:hover{background:#f0f4f5;color:var(--red)}.page{width:100%;max-width:1560px;min-height:100vh;margin:0 auto;padding:24px}.page-header{display:flex;min-height:48px;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.page-header h1{font-size:24px;font-weight:650;line-height:32px}.page-header p{max-width:760px;color:var(--text-muted);line-height:20px}.page-actions{display:flex;flex:0 0 auto;align-items:center;gap:10px}.button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:8px;padding:8px 13px;border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:600;line-height:18px;white-space:nowrap;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,opacity .14s ease}.button:disabled{cursor:wait;opacity:.65}.button-primary{background:var(--brand-800);color:#fff}.button-primary:hover:not(:disabled){background:var(--brand-900)}.button-soft{border-color:#cbdbe2;background:var(--brand-50);color:var(--brand-800)}.button-soft:hover:not(:disabled){border-color:#abc5ce;background:var(--brand-100)}.button-full{width:100%}.button-compact{min-height:32px;padding:6px 10px}.text-link{display:inline-flex;align-items:center;gap:5px;color:var(--brand-700);font-size:13px;font-weight:600}.search-field{display:flex;min-width:220px;height:40px;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text-soft)}.search-field input{min-width:0;border:0;outline:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:14px;gap:14px;margin-bottom:14px}.metric-card{display:flex;min-width:0;min-height:118px;flex-direction:column;justify-content:center;gap:5px;padding:16px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.metric-card small,.metric-card>span{overflow:hidden;color:var(--text-muted);font-size:12px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.metric-card strong{color:var(--brand-800);font-size:28px;font-weight:650;line-height:36px}.metric-card strong[data-tone=positive]{color:var(--green)}.metric-card strong[data-tone=warning]{color:var(--amber)}.metric-card strong[data-tone=danger]{color:var(--red)}.panel{min-width:0;padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.panel-heading h2{font-size:16px;font-weight:650;line-height:24px}.panel-heading p{color:var(--text-muted);font-size:12px;line-height:17px}.badge{display:inline-flex;min-height:24px;align-items:center;justify-content:center;padding:4px 9px;border-radius:7px;background:var(--subtle);color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px;white-space:nowrap}.badge[data-tone=brand]{background:var(--brand-100);color:var(--brand-800)}.badge[data-tone=positive]{background:var(--green-soft);color:var(--green)}.badge[data-tone=warning]{background:var(--amber-soft);color:var(--amber)}.badge[data-tone=danger]{background:var(--red-soft);color:var(--red)}.badge[data-tone=info]{background:var(--blue);color:#fff}.progress{display:block;width:100%;height:6px;overflow:hidden;border-radius:4px;background:#e7edf2}.progress>span{display:block;min-width:3px;height:100%;border-radius:inherit;background:var(--brand-700)}.progress>span[data-tone=positive]{background:var(--green)}.progress>span[data-tone=warning]{background:var(--amber)}.progress>span[data-tone=danger]{background:var(--red)}.progress>span[data-tone=purple]{background:var(--purple)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);grid-gap:14px;gap:14px}.project-list{display:flex;flex-direction:column;gap:8px}.project-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1.4fr) minmax(110px,.5fr);grid-gap:20px;gap:20px;align-items:center;min-height:70px;padding:10px 12px;border:1px solid transparent;border-radius:8px;background:#fafcfd}.project-row:hover{border-color:#cddce4}.project-row-main,.project-row-value{display:flex;min-width:0;flex-direction:column;gap:3px}.project-row-main span,.project-row-progress span,.project-row-value span{color:var(--text-muted);font-size:12px}.project-row-progress{min-width:0}.project-row-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px}.project-row-value{text-align:right}.attention-panel{align-self:start}.attention-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;margin-top:8px;padding:12px 0;border-top:1px solid var(--border)}.attention-item>span:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:2px}.attention-item small{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.attention-icon{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border-radius:8px;background:var(--subtle);color:var(--brand-700)}.filter-bar,.status-rail{display:flex;gap:9px;align-items:center;min-height:54px;margin-bottom:14px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--card)}.project-layout,.quote-layout,.reports-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(320px,.8fr);grid-gap:14px;gap:14px;align-items:start}.billing-panel,.quote-side-panel{align-self:start}.table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:8px}table{width:100%;border-collapse:collapse}td,th{height:48px;padding:9px 12px;text-align:left;vertical-align:middle}th{background:var(--subtle);color:var(--text-muted);font-size:11px;font-weight:600}tbody tr:nth-child(2n){background:#fafbfc}td{border-top:1px solid #edf1f4;font-size:13px}td strong{font-weight:600}tfoot td{border-top:1px solid var(--border);background:var(--subtle);font-weight:650}.numeric{text-align:right;white-space:nowrap}.total-positive{color:var(--green)}.table-subtitle{display:block;margin-top:2px;color:var(--text-muted);font-size:11px}.table-title-link{color:var(--brand-800);font-weight:700}.table-title-link:hover{color:var(--brand-700)}.client-card-layout{display:grid;grid-template-columns:minmax(280px,.36fr) minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.client-card-layout>aside{position:-webkit-sticky;position:sticky;top:18px}.client-fact-list{display:flex;flex-direction:column;gap:9px;margin:0}.client-fact-list>div{display:grid;grid-template-columns:98px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding-bottom:9px;border-bottom:1px solid #edf1f4}.client-fact-list>div:last-child{border-bottom:0}.client-fact-list dt{color:var(--text-muted);font-size:11px;font-weight:700;line-height:16px}.client-fact-list dd{min-width:0;margin:0;color:var(--text);font-size:13px;line-height:18px;overflow-wrap:anywhere}.client-registry-link{width:100%;margin-top:12px}.client-profit-block{display:flex;flex-direction:column;gap:8px}.client-profit-block strong{color:var(--brand-800);font-size:30px;line-height:36px}.client-profit-block span{color:var(--text-muted);font-size:12px;line-height:17px}.client-activity-list{display:flex;flex-direction:column}.client-activity-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto 70px;grid-gap:10px;gap:10px;align-items:center;min-height:54px;padding:9px 0;border-top:1px solid #edf1f4}.client-activity-row:first-child{border-top:0}.client-activity-row small,.client-activity-row>span{overflow:hidden;color:var(--text-muted);font-size:11px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.client-activity-row>div{display:flex;min-width:0;flex-direction:column;gap:2px}.client-activity-row>strong:last-child{text-align:right}.muted{color:var(--text-muted)}.client-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.client-summary-strip>div{display:flex;min-height:74px;flex-direction:column;justify-content:center;gap:3px;padding:13px 16px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.client-summary-strip span{color:var(--text-muted);font-size:12px;line-height:16px}.client-summary-strip strong{color:var(--brand-800);font-size:24px;line-height:30px}.client-directory-panel .panel-heading{align-items:center}.client-directory-search{display:flex;width:min(360px,100%);min-height:38px;align-items:center;gap:8px;padding:0 11px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text-soft)}.client-directory-search input{width:100%;min-width:0;border:0;background:transparent;outline:0}.client-directory-table td{height:auto;min-height:58px}.client-contact-cell,.client-contact-cell span,.client-registry-line{display:flex;min-width:0;align-items:center;gap:6px}.client-contact-cell{flex-direction:column;align-items:flex-start}.client-contact-cell small,.client-contact-cell strong{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-contact-cell small,.client-contact-cell span{color:var(--text-muted);font-size:11px;line-height:16px}.client-contact-cell span{flex-wrap:wrap}.client-registry-line{color:var(--text);font-weight:650}.client-contact-create,.client-contact-edit-grid,.client-profile-form{display:grid;grid-gap:10px;gap:10px}.client-contact-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.client-contact-create label,.client-contact-edit-grid label,.client-profile-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.client-contact-create label>span,.client-contact-edit-grid label>span,.client-profile-form label>span{color:var(--text-muted);font-size:11px;font-weight:700;line-height:16px}.client-contact-create textarea,.client-contact-edit-grid textarea,.client-profile-form textarea{resize:vertical}.client-profile-form .button{width:100%}.client-contacts-panel{display:flex;flex-direction:column;gap:12px}.client-contacts-panel .panel-heading{margin-bottom:0}.client-contact-create{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.checkbox-label{display:inline-flex;flex-direction:row!important;align-items:center;gap:8px;color:var(--text-muted);font-size:12px;font-weight:650;line-height:18px}.checkbox-label input{width:16px;height:16px}.client-contact-list{display:flex;flex-direction:column;gap:10px}.client-contact-card{display:flex;flex-direction:column;gap:11px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.client-contact-card-header{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-gap:9px;gap:9px;align-items:center}.client-contact-avatar{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:8px;background:var(--brand-50);color:var(--brand-800)}.client-contact-card-header span,.client-contact-card-header strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-contact-card-header span{color:var(--text-muted);font-size:11px;line-height:16px}.client-contact-actions,.client-contact-notes{grid-column:span 2}.client-contact-actions{display:flex;gap:8px;justify-content:flex-end}.client-contact-readonly{display:flex;flex-direction:column;gap:7px;color:var(--text-muted);font-size:12px;line-height:17px}.client-contact-readonly span{display:inline-flex;align-items:center;gap:6px}.client-contact-readonly p{color:var(--text)}.access-list,.detail-list{display:flex;flex-direction:column;gap:8px;margin:0}.access-list>div,.detail-list>div{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:8px;background:var(--subtle)}.access-list dt,.detail-list dt{color:var(--text-muted);font-size:11px;font-weight:600}.access-list dd,.detail-list dd{margin:0;line-height:19px}.quote-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}.quote-status-action{display:inline-flex;flex-direction:column;gap:4px;min-width:190px}.quote-status-action span{color:var(--text-muted);font-size:11px;font-weight:700}.quote-status-action select{min-height:38px}.quote-actions textarea{width:min(320px,100%);min-height:58px;resize:vertical}.quote-pdf-link{margin-top:14px}.action-message{color:var(--text-muted);font-size:12px}.action-feedback{display:flex;gap:8px;align-items:center;margin-top:14px;padding:10px 12px;border-radius:8px;font-weight:600}.action-feedback-positive{background:var(--green-soft);color:var(--green)}.action-feedback-danger{background:var(--red-soft);color:var(--red)}.action-feedback-warning{background:var(--amber-soft);color:var(--amber)}.quote-status-history{margin:0 20px 24px;padding:14px;border:1px solid var(--border);border-radius:8px;background:var(--card)}.quote-status-history .panel-heading{margin-bottom:10px}.quote-status-history-list{display:flex;flex-direction:column;gap:8px}.quote-status-history-row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:9px 0;border-top:1px solid var(--border);color:var(--text-muted);font-size:12px}.quote-status-history-row:first-child{border-top:0}.quote-status-history-row p{flex-basis:100%;color:var(--text);line-height:18px;white-space:pre-wrap}.insight{margin-top:14px;padding:12px;border-radius:8px;background:var(--brand-100)}.insight strong{color:var(--brand-800);font-weight:650}.insight p{margin-top:5px;color:var(--text-muted);font-size:12px;line-height:18px}.assigned-phases,.phase-table{min-width:0;overflow-x:auto}.phase-row,.phase-table-head{display:grid;grid-template-columns:minmax(140px,1.35fr) 90px 80px minmax(150px,1fr) 100px;grid-gap:12px;gap:12px;align-items:center;min-width:700px;min-height:48px;padding:8px 12px}.assigned-phases-head,.phase-table-head{border-radius:8px;background:var(--subtle);color:var(--text-muted);font-size:11px;font-weight:600}.phase-row:nth-child(odd){background:#fafbfc}.phase-utilization{display:grid;grid-template-columns:minmax(70px,1fr) 38px;grid-gap:8px;gap:8px;align-items:center}.phase-utilization small{color:var(--text-muted);font-size:11px;text-align:right}.billing-list{display:flex;flex-direction:column;gap:8px}.billing-schedule-panel .billing-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.billing-schedule-panel .empty-state{grid-column:1/-1}.billing-schedule-panel .billing-marker-form{grid-template-columns:minmax(180px,1.3fr) 150px 150px 140px 170px minmax(220px,1.5fr) auto;align-items:end}.billing-schedule-panel .billing-marker-form .form-span-2{grid-column:auto}.billing-schedule-panel .billing-marker-form button{align-self:end;min-height:42px;white-space:nowrap}.billing-schedule-panel .billing-marker-form .form-message{grid-column:1/-1}.billing-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:8px;background:var(--subtle)}.billing-item>div{display:flex;min-width:0;flex-direction:column;gap:4px}.billing-item span{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.billing-item-value{align-items:flex-end}.status-button{min-height:24px;padding:4px 8px;border-radius:7px;background:var(--amber-soft);color:var(--amber);font-size:11px;font-weight:650;cursor:pointer}.status-button[data-status=BILLED]{background:var(--green-soft);color:var(--green)}.status-button[data-status=NON_BILLABLE]{background:var(--red-soft);color:var(--red)}.hours-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,.75fr);grid-gap:14px;gap:14px;align-items:start}.developer-hours-layout{grid-template-columns:minmax(0,1fr)}.developer-hours-layout .hours-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));align-items:start}.hours-main,.hours-side{display:flex;min-width:0;flex-direction:column;gap:14px}.hours-page{max-width:1500px}.hours-command-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.hours-date-context,.hours-week-actions{display:flex;align-items:center;gap:9px;min-width:0}.hours-date-context>svg{flex:0 0 auto;color:var(--brand-700)}.hours-date-context>div{display:flex;min-width:0;flex-direction:column;gap:1px}.hours-date-context strong{font-size:14px;line-height:19px;text-transform:capitalize}.hours-date-context span{color:var(--text-muted);font-size:12px;line-height:17px}.hours-week-actions .icon-button{border:1px solid var(--border);background:var(--subtle)}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:14px}.week-day-card{position:relative;display:flex;min-width:0;min-height:82px;flex-direction:column;justify-content:center;gap:2px;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text);box-shadow:var(--shadow)}.week-day-card:hover{border-color:#abc5ce;background:#f8fcfd}.week-day-card[data-active=true]{border-color:var(--brand-700);background:var(--brand-50)}.week-day-card span{color:var(--text-muted);font-size:11px;font-weight:700;line-height:15px;text-transform:uppercase}.week-day-card strong{font-size:22px;line-height:27px}.week-day-card small{color:var(--brand-800);font-size:12px;font-weight:700;line-height:17px}.week-day-card em{position:absolute;top:8px;right:8px;min-width:18px;min-height:18px;padding:1px 5px;border-radius:999px;background:var(--brand-800);color:#fff;font-size:10px;font-style:normal;font-weight:700;line-height:16px;text-align:center}.week-day-card em:empty{display:none}.hours-metric-grid .metric-card{min-height:98px}.time-entry-form{display:flex;flex-direction:column;gap:12px}.time-entry-quick-form{gap:14px}.time-entry-mode-switch{display:inline-flex;align-self:flex-start;gap:5px;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}.time-entry-mode-switch button{display:inline-flex;min-height:32px;align-items:center;gap:6px;padding:6px 10px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-muted);font-size:12px;font-weight:700;cursor:pointer}.time-entry-mode-switch button[data-active=true]{border-color:#9cc7cf;background:#fff;color:var(--brand-800);box-shadow:0 1px 3px rgba(13,33,53,.08)}.time-entry-mode-switch button:disabled{cursor:not-allowed;opacity:.45}.time-entry-select-grid{display:grid;grid-template-columns:minmax(220px,1.35fr) minmax(220px,1.15fr) minmax(220px,1.15fr) minmax(190px,.9fr) 170px;grid-gap:10px;gap:10px;align-items:end}.time-entry-select-grid label{display:flex;min-width:0;flex-direction:column;gap:5px}.time-entry-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-radius:8px;background:var(--subtle)}.time-entry-form-head>div:first-child{display:flex;min-width:0;flex-direction:column;gap:2px}.time-entry-form-head span,.time-entry-input-grid label>span,.time-entry-select-grid label>span{color:var(--text-muted);font-size:11px;font-weight:700;line-height:15px}.time-entry-select-grid label>span small{color:var(--text-muted);font-size:10px;font-weight:600}.time-entry-ticket-field{grid-column:span 2}.time-entry-ticket-field input{min-width:0}.time-entry-ticket-selection{color:var(--accent-strong);font-size:11px;font-weight:700}.time-entry-input-grid input,.time-entry-input-grid textarea,.time-entry-select-grid input,.time-entry-select-grid select{background:#fff}.time-entry-select-grid select:disabled{background:#eef4f7;color:var(--text-muted);cursor:not-allowed}.time-entry-form-head strong{overflow:hidden;font-size:14px;line-height:19px;text-overflow:ellipsis;white-space:nowrap}.time-entry-date-pill{display:grid;grid-template-columns:18px 142px;align-items:center;grid-gap:6px;gap:6px;flex:0 0 auto;color:var(--brand-700)}.time-entry-date-pill input{min-height:34px;background:#fff}.selected-phase-summary{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(240px,1fr) auto;grid-gap:10px;gap:10px;align-items:center;min-height:38px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}.selected-phase-summary small,.selected-phase-summary span{overflow:hidden;color:var(--text-muted);font-size:12px;line-height:17px;text-overflow:ellipsis;white-space:nowrap}.selected-phase-summary strong{overflow:hidden;color:var(--text);font-size:13px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.assignment-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));grid-gap:9px;gap:9px}.assignment-choice-card{display:flex;min-width:0;min-height:132px;flex-direction:column;gap:5px;align-items:stretch;padding:11px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);text-align:left;cursor:pointer}.assignment-choice-card:hover{border-color:#abc5ce;background:#f9fcfd}.assignment-choice-card[data-active=true]{border-color:var(--brand-700);background:var(--brand-50);box-shadow:inset 0 0 0 1px var(--brand-700)}.assignment-card-meta,.assignment-choice-card small,.assignment-choice-card>span{overflow:hidden;color:var(--text-muted);font-size:11px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.assignment-choice-card>strong{overflow:hidden;font-size:15px;line-height:20px;text-overflow:ellipsis;white-space:nowrap}.assignment-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:auto}.assignment-mini-progress{height:7px;overflow:hidden;border-radius:999px;background:#dfe8ed}.assignment-mini-progress span{display:block;max-width:100%;height:100%;border-radius:inherit;background:var(--brand-700)}.time-entry-input-grid{display:grid;grid-template-columns:155px minmax(0,1fr) 132px;grid-gap:10px;gap:10px;align-items:end}.time-entry-input-grid label{display:flex;min-width:0;flex-direction:column;gap:5px}.hours-stepper{display:grid;grid-template-columns:38px minmax(72px,1fr) 38px;grid-gap:5px;gap:5px}.hours-stepper button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;background:var(--subtle);color:var(--brand-800);cursor:pointer}.hours-stepper button:disabled{opacity:.45}.time-entry-description-field textarea{min-height:96px;max-height:260px}.time-entry-description-meta{color:var(--text-muted);font-size:11px;line-height:16px}.time-entry-edit-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.time-entry-edit-heading>div{display:flex;flex-direction:column;gap:3px}.time-entry-edit-heading span{color:var(--text-muted);font-size:12px}.time-entry-inline-editor{margin-top:12px;padding:14px;border:1px solid #cbdbe2;border-radius:8px;background:var(--brand-50)}.time-entry-day-error{margin:10px 0 0}.time-entry-billable{display:flex;flex-direction:row!important;align-items:center;min-height:40px}.time-entry-billable input:disabled{opacity:.5}.time-entry-nonbillable-note{display:flex;min-height:40px;align-items:center;justify-content:center;border:1px solid #e7c9c9;border-radius:8px;background:#fff7f7;color:var(--red);font-size:12px;font-weight:700}.hour-preset-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:7px;gap:7px}.hour-preset-row button{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:5px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);font-size:12px;font-weight:700;cursor:pointer}.hour-preset-row button[data-active=true]{border-color:var(--brand-700);background:var(--brand-100);color:var(--brand-800)}.time-entry-submit-bar{padding:9px}.time-entry-submit-bar .form-status{display:inline-flex;min-width:0;align-items:center;gap:6px}.time-entry-submit-bar .button{min-width:126px}.form-grid{display:grid;grid-template-columns:140px minmax(170px,1fr) minmax(170px,1fr) 100px;grid-gap:10px;gap:10px}.filter-bar label,.form-grid label,.login-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.filter-bar label>span,.form-grid label>span,.login-form label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}input,select,textarea{width:100%;min-height:40px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}input,select{padding:0 10px}textarea{min-height:66px;padding:9px 10px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#8ab3c0;background:#fff}.form-span-2{grid-column:span 2}.form-span-3{grid-column:span 3}.billable-control{align-self:stretch;justify-content:center;padding:9px 11px;border-radius:8px;background:var(--brand-100)}.billable-control input{width:16px;min-height:16px;accent-color:var(--green)}.billable-control span{color:var(--brand-800)!important}.form-footer{display:flex;min-height:48px;align-items:center;gap:10px;padding:8px;border-radius:8px;background:var(--subtle)}.form-status{flex:1 1;color:var(--green);font-size:12px}.form-status[data-error=true]{color:var(--red)}.form-hint{margin:-2px 0 0;color:var(--text-muted)}.form-hint,.mfa-setup-box{font-size:12px;line-height:18px}.mfa-setup-box{display:flex;min-width:0;flex-direction:column;gap:6px;padding:10px;border:1px solid #b8cbd5;border-radius:8px;background:var(--brand-100);color:var(--brand-800)}.mfa-setup-box small{overflow-wrap:anywhere;color:var(--text-muted)}.assigned-phase-row,.assigned-phases-head{display:grid;grid-template-columns:minmax(125px,1.15fr) minmax(130px,1.2fr) 65px 75px minmax(130px,1fr) 95px;grid-gap:10px;gap:10px;align-items:center;min-width:800px;min-height:48px;padding:8px 10px}.assigned-phase-row:nth-child(odd){background:#fafbfc}.mobile-friendly-phases{overflow:visible}.mobile-friendly-phases .assigned-phases-head{display:none}.mobile-friendly-phases .assigned-phase-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;min-width:0;margin-top:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff}.mobile-friendly-phases .assigned-phase-row>strong{grid-column:1/-1}.mobile-friendly-phases .assigned-phase-row>span{color:var(--text-muted);font-size:12px}.mobile-friendly-phases .assigned-phase-row>span:first-of-type,.mobile-friendly-phases .phase-utilization{grid-column:1/-1}.access-list .access-allowed{background:var(--brand-100)}.access-list dd{color:var(--text-muted);font-size:12px}.recent-entry-list{display:flex;flex-direction:column}.recent-entry{display:grid;grid-template-columns:72px minmax(0,1fr) 46px auto;grid-gap:8px;gap:8px;align-items:center;min-height:58px;padding:8px 0;border-top:1px solid var(--border)}.recent-entry:first-child{border-top:0}.recent-entry>span{color:var(--text-muted);font-size:11px}.recent-entry>div{display:flex;min-width:0;flex-direction:column;gap:2px}.recent-entry small{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.team-hours-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:9px;gap:9px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border)}.team-hours-filter label{display:grid;grid-gap:5px;gap:5px}.team-hours-filter label>span{color:var(--text-muted);font-size:11px;font-weight:700;line-height:15px}.team-hours-filter .team-hours-search{grid-column:span 1}.team-hours-filter-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;grid-column:span 1}.team-hours-filter-actions .button{justify-content:center}.team-hour-list{display:flex;flex-direction:column;overflow:visible}.team-hour-list-head,.team-hour-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(170px,1.15fr) minmax(150px,1fr) minmax(260px,2fr) 82px 74px;grid-gap:12px;gap:12px;align-items:center}.team-hour-list-head{min-height:36px;padding:0 12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--subtle);color:var(--text-muted);font-size:11px;font-weight:750;line-height:15px;text-transform:uppercase}.team-hour-row{align-items:start;min-height:82px;padding:12px;border-top:1px solid var(--border)}.team-hour-row:nth-child(2n){background:#fbfcfd}.team-hour-row>div{display:flex;min-width:0;flex-direction:column;gap:2px}.team-hour-row small,.team-hour-row span{color:var(--text-muted);font-size:12px;line-height:16px;overflow-wrap:anywhere;white-space:normal}.team-hour-row>strong{align-self:start;justify-self:end;white-space:nowrap}.team-hour-row .team-hour-activity,.team-hour-row .team-hour-project{gap:3px}.team-hour-row .team-hour-activity strong,.team-hour-row .team-hour-project a{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-hour-description p{display:-webkit-box;margin:4px 0 0;overflow:hidden;color:var(--text);font-size:13px;line-height:19px;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.team-hour-duration{align-self:start;color:var(--brand-800);font-size:14px}.team-hour-status{align-items:flex-start}.team-hour-status .badge{white-space:nowrap}.project-time-panel{margin:0 20px 20px}.my-project-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:9px;gap:9px}.my-project-card{display:flex;min-width:0;flex-direction:column;gap:3px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff}.my-project-card>small,.my-project-card>span{color:var(--text-muted);font-size:11px;line-height:16px}.my-project-card>strong{overflow:hidden;color:var(--brand-800);font-size:14px;line-height:19px;text-overflow:ellipsis;white-space:nowrap}.my-project-phase-list{display:flex;margin-top:6px;flex-direction:column;gap:3px}.my-project-phase-list div{display:flex;justify-content:space-between;gap:8px;padding-top:4px;border-top:1px solid var(--border);color:var(--text-muted);font-size:11px}.my-project-phase-list strong{color:var(--text)}.planned-work-panel{margin-top:14px}.planned-work-create-form{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(180px,1.2fr) 130px minmax(140px,.8fr) minmax(150px,.9fr) 140px;grid-gap:9px;gap:9px;align-items:end;margin-bottom:13px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}.planned-work-create-form label{display:grid;min-width:0;grid-gap:5px;gap:5px}.planned-work-create-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.planned-work-description-field{grid-column:1/-2}.planned-work-description-field textarea{min-height:72px}.planned-work-form-actions{display:flex;align-items:end;min-height:72px}.planned-work-form-actions .button{width:100%;justify-content:center}.planned-work-list{display:flex;flex-direction:column}.planned-work-row{display:grid;grid-template-columns:minmax(0,1fr) 150px 140px 18px;grid-gap:12px;gap:12px;align-items:center;min-height:86px;padding:11px 0;border-top:1px solid var(--border)}.planned-work-main{min-width:0}.planned-work-title-line{display:flex;align-items:center;gap:6px}.planned-work-title-line svg{color:var(--green)}.planned-work-main p{display:-webkit-box;margin:3px 0;overflow:hidden;color:var(--text-muted);font-size:12px;line-height:17px;-webkit-box-orient:vertical;-webkit-line-clamp:2}.planned-work-hours small,.planned-work-main small{color:var(--text-muted);font-size:11px;line-height:16px}.planned-work-hours{display:flex;min-width:0;flex-direction:column;gap:2px}.planned-work-hours small[data-tone=danger]{color:var(--red)}.planned-work-row>select{min-height:34px}.planned-work-save-icon{color:var(--text-muted)}.planned-work-message{margin:0 0 10px}.project-time-table td:nth-child(6){min-width:280px;white-space:normal}.panel-total{color:var(--brand-800);font-size:18px;line-height:24px}.day-entry-list{display:flex;flex-direction:column}.day-entry-row{display:grid;grid-template-columns:28px minmax(0,1fr) 90px minmax(150px,auto);grid-gap:9px;gap:9px;align-items:start;min-height:72px;padding:12px 0;border-top:1px solid var(--border)}.day-entry-row:first-child{border-top:0}.day-entry-row>svg{color:var(--brand-700)}.day-entry-row>div{display:flex;min-width:0;flex-direction:column;gap:2px}.day-entry-row small,.day-entry-row span{color:var(--text-muted);font-size:13px;line-height:19px;overflow-wrap:anywhere;white-space:normal}.day-entry-row small{color:var(--text);font-size:14px;line-height:20px;white-space:pre-wrap}.day-entry-hours{white-space:nowrap}.day-entry-meta{display:flex;align-items:center;justify-content:flex-end;gap:9px}.day-entry-actions{display:flex;gap:4px}.time-entry-ticket-link{color:var(--accent-strong);font-weight:700;text-decoration:none}.time-entry-ticket-link:hover{text-decoration:underline}.icon-button-danger{color:var(--red)}.hours-compact-summary{display:flex;gap:6px;padding:14px;border-color:#cbdbe2;background:var(--brand-50)}.hours-compact-summary>div{display:grid;grid-template-columns:24px minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center}.hours-compact-summary svg{color:var(--brand-700)}.hours-compact-summary small,.hours-compact-summary span{color:var(--text-muted);font-size:12px}.hours-compact-summary strong{color:var(--brand-800);font-size:18px}.filter-bar{align-items:flex-end}.filter-bar label{width:min(210px,23%)}.filter-bar select{background:var(--subtle)}.reports-layout{grid-template-columns:minmax(0,1.35fr) minmax(380px,1fr)}.report-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:22px 0 12px}#reports-period-workload,#reports-week-workload{scroll-margin-top:16px}.report-section-heading h2{font-size:19px;font-weight:650;line-height:26px}.report-section-heading p{max-width:760px;margin-top:3px;color:var(--text-muted);font-size:12px;line-height:17px}.report-section-heading-secondary{margin-top:28px}.reports-week-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(280px,.72fr);grid-gap:16px;gap:16px;align-items:end;margin-bottom:14px;padding:13px 14px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.reports-week-actions,.reports-week-context,.reports-week-filter{display:flex;align-items:center}.reports-week-context{min-width:0;gap:10px}.reports-week-context>svg{flex:0 0 auto;color:var(--brand-700)}.reports-week-context>div{display:flex;min-width:0;flex-direction:column;gap:2px}.reports-week-context strong{font-size:14px;line-height:20px}.reports-week-context span{color:var(--text-muted);font-size:12px;line-height:17px}.reports-week-actions{gap:6px}.reports-week-actions .button{white-space:nowrap}.reports-week-filter{justify-content:flex-end;gap:8px}.reports-week-filter label{display:flex;min-width:0;flex:1 1;flex-direction:column;gap:4px}.reports-week-filter label>span{color:var(--text-muted);font-size:11px;font-weight:600}.reports-week-filter select{min-width:0;background:var(--subtle)}.period-load-panel{margin-bottom:14px;padding:14px}.reports-period-filter{display:grid;grid-template-columns:minmax(250px,1.55fr) repeat(4,minmax(140px,1fr)) minmax(170px,1.1fr) auto;grid-gap:10px;gap:10px;align-items:end}.reports-period-filter label{display:flex;min-width:0;flex-direction:column;gap:4px}.reports-period-filter label>span{color:var(--text-muted);font-size:11px;font-weight:600}.reports-period-filter input,.reports-period-filter select{min-width:0;background:var(--subtle)}.reports-period-filter .button{min-width:100px}.reports-period-search{min-width:0}.reports-date-picker{position:relative;min-width:0}.reports-date-picker>summary{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--subtle);color:var(--brand-800);cursor:pointer;list-style:none}.reports-date-picker>summary::-webkit-details-marker{display:none}.reports-date-picker>summary:hover,.reports-date-picker[open]>summary{border-color:#9fc4cc;background:var(--brand-50)}.reports-date-picker>summary>svg{flex:0 0 auto;transition:transform .14s ease}.reports-date-picker[open]>summary>svg{transform:rotate(90deg)}.reports-date-picker-label{display:flex;min-width:0;flex-direction:column;gap:2px}.reports-date-picker-label small{color:var(--text-muted);font-size:10px;font-weight:600;line-height:13px}.reports-date-picker-label strong{overflow:hidden;font-size:12px;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.reports-date-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:20;display:flex;width:min(474px,calc(100vw - 40px));max-height:min(720px,calc(100vh - 90px));flex-direction:column;gap:14px;overflow-y:auto;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:0 18px 42px rgba(18,57,68,.18)}.reports-date-popover-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.reports-date-popover-heading>div{display:flex;flex-direction:column;gap:2px}.reports-date-popover-heading strong{color:var(--brand-800);font-size:14px}.reports-date-popover-heading span{color:var(--text-muted);font-size:11px}.reports-date-popover-heading>span{color:var(--brand-700);font-size:16px;font-weight:700}.reports-date-manual{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-gap:8px;gap:8px;align-items:end;padding-bottom:13px;border-bottom:1px solid var(--border)}.reports-date-manual label{display:flex;flex-direction:column;gap:4px}.reports-date-manual label>span{color:var(--text-muted);font-size:10px;font-weight:600}.reports-date-manual input{min-width:0;background:var(--subtle)}.reports-date-to{padding-bottom:11px;color:var(--text-muted);font-size:11px}.reports-date-year-nav{display:flex;align-items:center;justify-content:center;gap:14px}.reports-date-year-nav strong{min-width:58px;color:var(--brand-800);font-size:18px;text-align:center}.reports-date-year-nav .icon-button{min-height:32px;width:32px}.reports-date-section{display:flex;flex-direction:column;gap:6px}.reports-date-section>span{color:var(--text-muted);font-size:11px;font-weight:700}.reports-date-options{display:grid;grid-gap:5px;gap:5px}.reports-date-options-four{grid-template-columns:repeat(4,minmax(0,1fr))}.reports-date-options-six{grid-template-columns:repeat(6,minmax(0,1fr))}.reports-date-option{display:flex;min-height:32px;align-items:center;justify-content:center;padding:4px 6px;border:1px solid transparent;border-radius:5px;background:var(--subtle);color:var(--text);font-size:12px;font-weight:600;line-height:16px;text-align:center;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.reports-date-option:hover{border-color:#b2cbd1;background:var(--brand-100);color:var(--brand-800)}.reports-date-option[data-selected=true]{border-color:var(--brand-700);background:var(--brand-700);color:#fff}.reports-date-option[data-disabled=true]{color:var(--text-soft);cursor:not-allowed;opacity:.72}.reports-date-section-weeks{padding-top:2px}.reports-date-week-options .reports-date-option{min-height:30px;font-size:11px}.period-load-metrics{margin-bottom:14px}.period-load-metrics .metric-card{min-height:104px}.period-load-table-panel{margin-top:14px}.period-load-table-wrap{overflow-x:auto}.period-load-table{min-width:920px}.period-load-table td,.period-load-table th{padding:9px 10px}.period-load-table th{white-space:nowrap}.period-load-table td:first-child{width:250px}.period-load-table td:nth-child(6){width:190px}.reports-week-metrics{margin-bottom:14px}.reports-week-metrics .metric-card{min-height:108px}.reports-week-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);grid-gap:14px;gap:14px;align-items:stretch}.weekly-load-chart .panel-heading>svg{color:var(--brand-700)}.weekly-load-chart-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:end;min-height:198px;padding:0 4px}.weekly-load-day{display:flex;min-width:0;flex-direction:column;align-items:center;gap:4px}.weekly-load-bar{display:flex;width:min(42px,70%);height:138px;align-items:flex-end;overflow:hidden;border:1px solid var(--border);border-radius:7px 7px 4px 4px;background:linear-gradient(0deg,#e7eef2 0 1px,transparent 1px 25%,#e7eef2 25% calc(25% + 1px),transparent calc(25% + 1px) 50%,#e7eef2 50% calc(50% + 1px),transparent calc(50% + 1px) 75%,#e7eef2 75% calc(75% + 1px),transparent calc(75% + 1px))}.weekly-load-bar>span{display:block;width:100%;min-height:4px;border-radius:5px 5px 2px 2px;background:var(--brand-700)}.weekly-load-bar>span[data-tone=positive]{background:var(--green)}.weekly-load-bar>span[data-tone=danger]{background:var(--red)}.weekly-load-day strong{color:var(--brand-800);font-size:11px;font-weight:650;white-space:nowrap}.weekly-load-day small,.weekly-load-day>span{color:var(--text-muted);font-size:11px;line-height:15px}.weekly-load-day small{color:var(--text-soft)}.weekly-load-legend{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:15px;padding-top:12px;border-top:1px solid var(--border);color:var(--text-muted);font-size:11px}.weekly-load-legend span{display:inline-flex;align-items:center;gap:5px}.weekly-load-legend i{display:inline-block;width:8px;height:8px;border-radius:3px;background:var(--brand-700)}.weekly-load-legend i[data-tone=positive]{background:var(--green)}.weekly-load-legend i[data-tone=danger]{background:var(--red)}.weekly-load-notes{display:flex;min-width:0;flex-direction:column}.weekly-insight-list{display:flex;flex-direction:column;gap:10px}.weekly-insight-list>div{display:flex;min-height:58px;flex-direction:column;justify-content:center;gap:2px;padding:9px 11px;border-radius:7px;background:var(--subtle)}.weekly-insight-list strong{color:var(--brand-800);font-size:18px;line-height:23px}.weekly-insight-list span{color:var(--text-muted);font-size:11px;line-height:15px}.weekly-load-table-panel{margin-top:14px}.weekly-load-table-wrap{overflow-x:auto}.weekly-load-table{min-width:1080px}.weekly-load-table td,.weekly-load-table th{padding:9px 10px}.weekly-load-table th{white-space:nowrap}.weekly-person{display:grid;grid-template-columns:32px minmax(150px,1fr);grid-gap:8px;gap:8px;align-items:center;min-width:220px}.weekly-person>div{display:flex;min-width:0;flex-direction:column;gap:2px}.weekly-person small{overflow:hidden;color:var(--text-muted);font-size:11px;line-height:15px;text-overflow:ellipsis;white-space:nowrap}.weekly-hours-cell[data-empty=true]{color:var(--text-soft)}.weekly-planned-cell{color:var(--amber)}.weekly-utilization{display:flex;min-width:120px;flex-direction:column;gap:4px}.weekly-utilization>div{display:grid;grid-template-columns:minmax(62px,1fr) auto;grid-gap:8px;gap:8px;align-items:center}.weekly-utilization strong{min-width:35px;color:var(--brand-800);font-size:12px;text-align:right}.weekly-utilization small{color:var(--text-muted);font-size:10px}.budget-chart{display:flex;flex-direction:column;gap:18px}.budget-chart-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(220px,1.6fr) 130px;grid-gap:14px;gap:14px;align-items:center}.budget-bars{display:flex;flex-direction:column;gap:5px}.budget-chart-row>span{color:var(--text-muted);font-size:12px;white-space:nowrap}.chart-legend{display:flex;gap:10px;margin-top:20px;padding-top:12px;border-top:1px solid var(--border)}.empty-state{padding:40px 18px;color:var(--text-muted);text-align:center}.empty-state.compact{padding:18px;border-radius:8px;background:var(--subtle)}.login-page{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr);min-height:100vh;background:#f4f7f8}.login-hero{position:relative;display:flex;min-height:100vh;flex-direction:column;justify-content:space-between;overflow:hidden;padding:38px;background:linear-gradient(135deg,rgba(65,196,184,.16),transparent 34%),repeating-linear-gradient(90deg,rgba(255,255,255,.08) 0 1px,transparent 1px 76px),repeating-linear-gradient(0deg,rgba(255,255,255,.06) 0 1px,transparent 1px 76px),#101820;color:#edf6f6}.login-hero:after{position:absolute;right:-84px;bottom:18%;width:260px;height:560px;border:1px solid rgba(214,230,231,.16);border-radius:8px;background:linear-gradient(180deg,rgba(65,196,184,.1),rgba(230,184,92,.08));content:"";transform:rotate(22deg)}.login-lockup,.login-signal{position:relative;z-index:1}.login-lockup{gap:12px;color:rgba(237,246,246,.84);font-size:13px;font-weight:700;letter-spacing:0;text-transform:uppercase}.login-lockup,.login-logo{display:flex;align-items:center}.login-logo{position:relative;width:42px;height:42px;justify-content:center;border-radius:8px;background:rgba(237,246,246,.1);box-shadow:inset 0 0 0 1px rgba(237,246,246,.18)}.login-logo span,.login-logo:after,.login-logo:before{position:absolute;width:6px;border-radius:2px;content:"";transform:rotate(-18deg)}.login-logo span{height:24px;background:#d6e6e7}.login-logo:before{left:12px;height:16px;background:#41c4b8}.login-logo:after{right:12px;height:12px;background:#e6b85c}.login-signal{display:flex;max-width:360px;align-items:center;gap:16px;padding-bottom:42px}.login-signal-mark{display:grid;flex:0 0 auto;width:64px;height:64px;grid-template-columns:repeat(3,1fr);align-items:end;grid-gap:5px;gap:5px;padding:14px;border:1px solid rgba(214,230,231,.18);border-radius:8px;background:rgba(237,246,246,.08)}.login-signal-mark span{border-radius:2px;background:#41c4b8}.login-signal-mark span:first-child{height:18px}.login-signal-mark span:nth-child(2){height:32px;background:#d6e6e7}.login-signal-mark span:nth-child(3){height:24px;background:#e6b85c}.login-signal p{margin-bottom:8px;color:rgba(237,246,246,.64);font-size:12px;font-weight:700;text-transform:uppercase}.login-signal strong{display:block;max-width:300px;font-size:24px;line-height:32px}.login-panel{width:min(440px,calc(100% - 40px));align-self:center;justify-self:center;padding:36px;border:1px solid #d8e3ea;border-radius:8px;background:#fff;box-shadow:0 18px 54px rgba(16,24,32,.12)}.login-heading{margin-bottom:28px}.login-heading .eyebrow{margin-bottom:8px;color:#17677a;font-size:12px;font-weight:700;text-transform:uppercase}.login-heading h1{margin-bottom:8px;font-size:30px;line-height:38px}.login-heading>p:last-child{color:var(--text-muted);line-height:21px}.login-form{display:flex;flex-direction:column;gap:15px}.login-form .login-remember-device{flex-direction:row;align-items:center;align-self:flex-start}.login-form .login-remember-device input{width:15px;min-height:15px}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;top:50%;left:12px;color:#647889;transform:translateY(-50%)}.input-with-icon input{height:46px;padding-left:40px;background:#f7fafc}.login-panel .button-primary{height:44px;background:#145464}.login-panel .button-primary:hover:not(:disabled){background:#0f3f4b}.form-error{padding:9px 11px;border-radius:8px;background:var(--red-soft);color:var(--red);font-size:12px}.stack{display:flex;min-width:0;flex-direction:column;gap:14px}.workspace-layout{display:grid;grid-template-columns:minmax(230px,.4fr) minmax(0,1.6fr);grid-gap:14px;gap:14px;align-items:start}.list-panel{position:-webkit-sticky;position:sticky;top:24px}.assignment-list,.editable-list,.record-list,.review-list{display:flex;min-width:0;flex-direction:column;gap:8px}.record-item{display:flex;min-width:0;flex-direction:column;gap:4px;padding:11px 12px;border:1px solid transparent;border-radius:8px;background:#fafcfd}.record-item:hover{border-color:#cddce4}.record-item[data-active=true]{border-color:#abc5ce;background:var(--brand-50)}.assigned-names,.record-item small,.record-item span{overflow:hidden;color:var(--text-muted);font-size:12px;line-height:17px;text-overflow:ellipsis;white-space:nowrap}.record-item small{font-size:11px}.editable-row,.management-form{display:grid;grid-gap:10px;gap:10px;align-items:end}.management-form{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.quote-form-grid{grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) minmax(180px,1fr) minmax(120px,.5fr)}.user-form-grid{grid-template-columns:minmax(160px,1fr) minmax(200px,1.2fr) minmax(150px,.8fr) minmax(110px,.5fr)}.user-create-grid{grid-template-columns:minmax(160px,1fr) minmax(190px,1.1fr) 130px 125px 140px 110px}.user-create-toggle{align-self:stretch;justify-content:center}.role-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;align-items:start}.role-card{display:flex;min-width:0;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.role-card-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.permission-group{display:flex;flex-direction:column;gap:7px}.permission-group>span{color:var(--text-muted);font-size:11px;font-weight:700;line-height:16px;text-transform:uppercase}.user-security-list{gap:12px}.user-security-row{display:flex;min-width:0;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.user-security-row[data-status=LOCKED]{border-color:#f4c16b;background:#fffaf0}.user-security-row[data-status=ARCHIVED]{opacity:.72}.user-security-main{display:grid;grid-template-columns:minmax(150px,1fr) minmax(190px,1.2fr) 130px 125px 135px 110px minmax(140px,.8fr) auto;grid-gap:9px;gap:9px;align-items:end}.user-security-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;color:var(--text-muted);font-size:12px;line-height:18px}.password-reset-row,.user-security-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.password-reset-row{padding-top:8px;border-top:1px solid var(--border)}.password-reset-row label:first-child{width:min(280px,100%)}.editable-row{padding:10px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.client-edit-row{grid-template-columns:minmax(190px,1.2fr) minmax(160px,.9fr) minmax(115px,.65fr) minmax(105px,.55fr) minmax(210px,1.2fr) 76px 76px 68px 68px auto auto}.client-create-form{grid-template-columns:minmax(250px,1.5fr) minmax(110px,.6fr) minmax(170px,.9fr) minmax(120px,.7fr) auto}.client-address-field,.client-registry-search{grid-column:span 2}.quote-phase-edit-row{grid-template-columns:minmax(130px,.9fr) minmax(220px,1.6fr) 80px 88px 88px auto auto}.user-edit-row{grid-template-columns:minmax(150px,1fr) minmax(190px,1.2fr) minmax(140px,.75fr) minmax(110px,.55fr) 110px auto}.editable-row label,.management-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.editable-row label>span,.management-form label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.row-meta{display:flex;flex-direction:column;gap:2px;color:var(--text-muted);font-size:11px;text-align:right}.row-meta strong{color:var(--text);font-size:14px}.business-registry-field{position:relative}.business-registry-control{position:relative;min-width:0}.business-registry-control>svg{position:absolute;top:50%;left:10px;z-index:1;color:var(--text-soft);transform:translateY(-50%)}.business-registry-control input{width:100%;padding-left:34px}.business-registry-results{position:absolute;top:calc(100% + 5px);right:0;left:0;z-index:25;max-height:280px;overflow:auto;padding:5px;border:1px solid #b8cbd5;border-radius:8px;background:var(--card);box-shadow:0 14px 32px rgba(13,33,53,.16)}.business-registry-results button{display:grid;grid-template-columns:18px minmax(0,1fr);width:100%;grid-gap:8px;gap:8px;align-items:start;padding:8px;border-radius:6px;color:var(--text);text-align:left}.business-registry-results button:hover{background:var(--brand-50)}.business-registry-results button>svg{margin-top:2px;color:var(--brand-700)}.business-registry-results span{display:flex;min-width:0;flex-direction:column;gap:2px}.business-registry-results em,.business-registry-results small,.business-registry-results strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.business-registry-results strong{font-size:12px;line-height:17px}.business-registry-results em,.business-registry-results small,.business-registry-state{color:var(--text-muted);font-size:11px;line-height:15px}.business-registry-results em{font-style:normal}.business-registry-state{padding:8px}.business-registry-state[data-error=true]{color:var(--red)}.form-message{color:var(--green);font-size:12px;line-height:18px}.form-message[data-error=true]{color:var(--red)}.summary-panel{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;grid-gap:12px;gap:12px;align-items:center}.summary-panel>div{display:flex;flex-direction:column;gap:3px}.summary-panel span{color:var(--text-muted);font-size:11px;font-weight:600}.summary-panel strong{color:var(--brand-800);font-size:18px;line-height:24px}.quote-builder{display:flex;min-width:0;flex-direction:column;gap:12px}.quote-builder-panel{padding:14px}.quote-builder-header{display:grid;grid-template-columns:minmax(210px,1.1fr) minmax(128px,.55fr) minmax(220px,1.2fr) minmax(140px,.65fr) minmax(110px,.45fr);grid-gap:10px;gap:10px;align-items:end}.catalog-create-row label,.catalog-edit-row label,.client-modal-form label,.compact-notes,.company-fields-grid label,.quote-builder-header label,.quote-line-row label{display:flex;min-width:0;flex-direction:column;gap:5px}.catalog-create-row label>span,.catalog-edit-row label>span,.client-modal-form label>span,.compact-notes>span,.company-fields-grid label>span,.quote-builder-header label>span,.quote-line-row label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.quote-title-field{min-width:0}.inline-control{display:grid;grid-template-columns:minmax(0,1fr) 34px;grid-gap:6px;gap:6px;align-items:center}.compact-notes{margin-top:10px}.compact-notes textarea{min-height:54px}.compact-heading{margin-bottom:10px}.quote-line-list{width:100%;overflow-x:auto}.quote-line-head,.quote-line-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(240px,1.35fr) 92px 82px 92px 92px minmax(190px,.75fr);grid-gap:8px;gap:8px;align-items:end;min-width:1000px}.quote-line-head{min-height:30px;padding:0 10px 6px;color:var(--text-muted);font-size:11px;font-weight:650}.quote-line-row{margin-top:6px;padding:8px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.quote-line-copy{display:grid;grid-template-columns:minmax(100px,.7fr) minmax(130px,1fr);grid-gap:8px;gap:8px;min-width:0}.quote-line-options{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:40px}.quote-total-bar{grid-template-columns:repeat(4,minmax(120px,1fr)) auto;position:-webkit-sticky;position:sticky;bottom:12px;z-index:2}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:rgba(15,32,51,.38)}.modal-panel{width:min(520px,100%);max-height:min(720px,calc(100vh - 40px));overflow:auto;padding:18px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:0 24px 60px rgba(13,33,53,.22)}.invoice-create-modal{display:grid;grid-gap:14px;gap:14px}.modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.invoice-create-modal h2{margin-top:3px;color:var(--text-strong);font-size:20px;line-height:26px}.invoice-create-modal .eyebrow{color:var(--brand-600);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.muted-copy{color:var(--text-muted);font-size:13px;line-height:19px}.invoice-create-options{display:grid;grid-gap:8px;gap:8px}.invoice-create-option{display:grid;grid-template-columns:auto auto minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--text-strong);cursor:pointer}.invoice-create-option.is-selected{border-color:var(--brand-500);background:var(--brand-50)}.invoice-create-option input{margin:2px 0 0;accent-color:var(--brand-600)}.invoice-create-option svg{color:var(--brand-600);margin-top:1px}.invoice-create-option span{display:grid;grid-gap:3px;gap:3px}.invoice-create-option small{color:var(--text-muted);font-size:12px;line-height:17px}.invoice-create-description{display:grid;grid-gap:5px;gap:5px;color:var(--text-muted);font-size:11px;font-weight:600}.invoice-create-description textarea{min-height:76px;resize:vertical}.client-modal-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.modal-actions{display:flex;grid-column:span 2;justify-content:flex-end;gap:10px;padding-top:4px}.email-compose-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:rgba(15,32,51,.48)}.email-compose-dialog{width:min(1080px,100%);max-height:min(820px,calc(100vh - 40px));overflow:auto;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:0 24px 70px rgba(13,33,53,.28)}.email-compose-footer,.email-compose-header,.email-compose-preview-heading,.signature-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.email-compose-header{padding:18px 20px;border-bottom:1px solid var(--border)}.email-compose-header h2{margin:5px 0 0;font-size:19px}.email-compose-header .eyebrow{display:inline-flex;align-items:center;gap:5px}.email-compose-form{display:grid;grid-gap:16px;gap:16px;padding:20px}.email-compose-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.email-compose-meta>div{display:flex;min-width:0;flex-direction:column;gap:3px;padding:9px 10px;border-radius:6px;background:var(--subtle)}.email-compose-meta span,.email-compose-preview-heading span{color:var(--text-muted);font-size:11px;font-weight:700}.email-compose-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-compose-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);grid-gap:16px;gap:16px}.email-compose-fields,.email-compose-preview{display:flex;min-width:0;flex-direction:column;gap:8px}.email-compose-fields label{display:flex;flex-direction:column;gap:5px}.email-compose-fields label>span{color:var(--text-muted);font-size:11px;font-weight:700}.email-compose-fields textarea{min-height:270px;resize:vertical}.email-compose-preview-heading small{color:var(--text-muted);font-size:11px}.email-preview-card{min-height:330px;padding:18px;border:1px solid var(--border);border-radius:6px;background:#fff;box-shadow:inset 0 0 0 1px rgba(221,231,236,.3)}.email-preview-card>strong{display:block;padding-bottom:12px;border-bottom:1px solid var(--border);color:var(--ink)}.email-preview-body{color:var(--ink);font-size:13px;line-height:20px}.email-preview-body p{margin:14px 0;white-space:pre-line;overflow-wrap:anywhere}.email-preview-body img{display:block;object-fit:contain}.email-preview-signature{display:flex;align-items:flex-start;gap:14px;margin-top:18px}.email-preview-signature-bottom,.email-preview-signature-top{flex-direction:column}.email-preview-signature-right{justify-content:flex-end}.email-preview-align-left{align-items:flex-start;text-align:left}.email-preview-align-center{align-items:center;justify-content:center;text-align:center}.email-preview-align-right{align-items:flex-end;justify-content:flex-end;text-align:right}.email-preview-signature-copy{min-width:0;white-space:pre-line;overflow-wrap:anywhere}.email-compose-error{margin:0;color:var(--red);font-size:12px;font-weight:600}.email-compose-footer{justify-content:flex-end;padding-top:4px}.company-settings-form{display:grid;grid-template-columns:170px minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}.company-logo-field{display:flex;flex-direction:column;gap:10px}.company-logo-preview{display:grid;width:146px;height:96px;place-items:center;overflow:hidden;border:1px dashed #b8cbd5;border-radius:8px;background:var(--subtle)}.company-logo-preview img{max-width:128px;max-height:78px;object-fit:contain}.company-logo-preview span{color:var(--brand-800);font-size:32px;font-weight:700}.company-logo-field input[type=file]{display:none}.company-fields-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.settings-form-footer{display:flex;grid-column:span 2;align-items:center;justify-content:flex-end;gap:12px;padding-top:2px}.settings-form-footer .form-message{flex:1 1}.settings-overview{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:12px}.settings-overview>div{display:flex;min-width:0;min-height:58px;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:0 4px 14px rgba(13,33,53,.05)}.settings-overview>div[data-tone=warning]{border-color:#f4c16b;background:var(--amber-soft)}.settings-overview span{overflow:hidden;color:var(--text-muted);font-size:12px;font-weight:600;line-height:16px;text-overflow:ellipsis;white-space:nowrap}.settings-overview strong{color:var(--brand-800);font-size:22px;font-weight:700;line-height:28px}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.34fr);grid-gap:12px;gap:12px;align-items:start}.settings-main,.settings-side{min-width:0}.settings-side{position:-webkit-sticky;position:sticky;top:16px}.settings-section-tabs{display:flex;gap:4px;overflow-x:auto;margin-bottom:12px;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--subtle);scrollbar-width:thin}.settings-section-tab{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;padding:8px 14px;border-radius:6px;color:var(--text-muted);font-size:12px;font-weight:700;line-height:16px;text-decoration:none;white-space:nowrap}.settings-section-tab:hover{background:var(--card);color:var(--text)}.settings-section-tab[data-active=true]{background:var(--card);color:var(--brand-800);box-shadow:0 1px 3px rgba(13,33,53,.12)}.settings-tab-content{display:flex;min-width:0;flex-direction:column;gap:12px}.settings-tab-content>.accounting-settings-panel,.settings-tab-content>.company-settings-panel,.settings-tab-content>.number-series-panel,.settings-tab-content>.panel,.settings-tab-content>.postmark-settings-panel{margin-top:0}.settings-panel-heading{align-items:center;margin-bottom:10px}.settings-tabs{flex:0 0 auto}.settings-message{margin:0 0 10px}.settings-role-area,.settings-users-layout{display:flex;min-width:0;flex-direction:column;gap:10px}.settings-table-wrap td,.settings-table-wrap th{height:40px;padding:7px 9px}.settings-users-table tr[data-active=true]{background:var(--brand-50)}.table-link-button{display:flex;min-width:0;max-width:100%;flex-direction:column;gap:1px;padding:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.table-link-button span,.table-link-button strong{overflow:hidden;max-width:260px;text-overflow:ellipsis;white-space:nowrap}.settings-pill,.table-link-button span{color:var(--text-muted);font-size:11px;line-height:15px}.settings-pill{display:inline-flex;min-height:22px;align-items:center;justify-content:center;margin:2px 4px 2px 0;padding:3px 7px;border-radius:6px;background:var(--subtle);font-weight:700;white-space:nowrap}.settings-pill[data-tone=positive]{background:var(--green-soft);color:var(--green)}.settings-pill[data-tone=warning]{background:var(--amber-soft);color:var(--amber)}.settings-detail-panel{display:flex;min-width:0;flex-direction:column;gap:10px;padding-top:10px;border-top:1px solid var(--border)}.settings-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-detail-heading>div:first-child{display:flex;min-width:0;flex-direction:column;gap:1px}.settings-detail-heading span{overflow:hidden;color:var(--text-muted);font-size:12px;line-height:17px;text-overflow:ellipsis;white-space:nowrap}.settings-password-reset,.settings-role-actions,.settings-row-actions,.settings-security-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.settings-row-actions .icon-button{border:1px solid var(--border);background:var(--subtle)}.settings-create-form,.settings-detail-grid{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(190px,1.3fr) minmax(118px,.8fr) minmax(116px,.7fr);grid-gap:8px;gap:8px;align-items:end}.settings-create-form{grid-template-columns:minmax(160px,1.1fr) minmax(210px,1.3fr) minmax(118px,.8fr) minmax(116px,.7fr)}.settings-create-form label,.settings-detail-grid label,.settings-password-reset label{display:flex;min-width:0;flex-direction:column;gap:5px}.settings-create-form label>span,.settings-detail-grid label>span,.settings-password-reset label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.settings-create-toggle,.settings-detail-toggle{align-self:stretch;justify-content:center}.settings-create-form .button,.settings-detail-grid .button{width:100%;min-width:0;align-self:stretch}.settings-security-tools{padding-top:10px;border-top:1px solid var(--border)}.settings-password-reset{flex:1 1;min-width:310px}.settings-password-reset label:first-child{flex:1 1;min-width:180px}.settings-role-actions{justify-content:space-between}.settings-role-note{margin-right:auto;color:var(--text-muted);font-size:12px;font-weight:600;line-height:18px}.ticket-settings-panel{margin-top:12px}.number-series-panel{margin-bottom:12px}.number-series-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.number-series-table{min-width:680px}.number-series-table td,.number-series-table th{height:42px;padding:7px 9px;white-space:nowrap}.number-series-table tbody th{color:var(--brand-800);font-weight:700;text-align:left}.number-series-table input[type=number],.number-series-table input[type=text]{width:100%;min-width:76px;min-height:32px;padding:5px 8px}.number-series-table input[type=text]{min-width:96px}.number-series-checkbox{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:12px;font-weight:600}.number-series-checkbox input{width:16px;min-height:16px;accent-color:var(--brand-700)}.number-series-table code{display:inline-block;padding:4px 7px;border-radius:5px;background:var(--subtle);color:var(--brand-800);font-size:12px;font-weight:700}.ticket-settings-stack{display:flex;min-width:0;flex-direction:column;gap:10px}.ticket-field-tabs{display:flex;flex-wrap:wrap;gap:6px}.ticket-field-tabs button{min-height:32px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text-muted);font-size:12px;font-weight:700;cursor:pointer}.ticket-field-tabs button[data-active=true]{border-color:#9cc7cf;background:var(--brand-50);color:var(--brand-800)}.settings-action-cell{width:78px;white-space:nowrap}.settings-action-cell .icon-button{display:inline-flex;border:1px solid var(--border);background:var(--subtle)}.ticket-custom-field-add-row,.ticket-settings-add-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(180px,1.2fr) minmax(130px,.7fr) 86px auto;grid-gap:8px;gap:8px;align-items:center}.ticket-custom-field-add-row{grid-template-columns:minmax(120px,.7fr) minmax(170px,1fr) 130px minmax(180px,1fr) auto auto}.settings-permission-table input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--brand-700)}.permission-section-row td{height:30px;background:#f7fafc;color:var(--brand-800);font-size:11px;font-weight:800;text-transform:uppercase}.settings-layout .company-settings-panel{padding:14px}.accounting-settings-panel,.postmark-settings-panel{margin-top:12px;padding:14px}.accounting-settings-status{display:grid;grid-gap:7px;gap:7px;margin-bottom:12px;padding:10px 11px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.accounting-settings-status>div{display:grid;grid-template-columns:18px minmax(0,1fr) auto;grid-gap:7px;gap:7px;align-items:center;color:var(--text-muted);font-size:11px}.accounting-settings-status svg{color:var(--brand-700)}.accounting-settings-status strong{color:var(--text);font-size:11px;font-weight:700;text-align:right}.accounting-settings-form{display:flex;flex-direction:column;gap:12px}.accounting-settings-form>label:not(.inline-toggle){display:flex;flex-direction:column;gap:5px}.accounting-fields-grid label>span,.accounting-settings-form>label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.accounting-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.accounting-fields-grid label{display:flex;min-width:0;flex-direction:column;gap:5px}.accounting-fields-grid .form-span-2{grid-column:span 2}.accounting-test-result{margin:0;padding:9px 10px;border-radius:7px;background:var(--subtle);color:var(--text-muted);font-size:11px;line-height:16px}.accounting-test-result[data-tone=positive]{background:var(--green-soft);color:var(--green)}.accounting-test-result[data-tone=warning]{background:var(--amber-soft);color:var(--amber)}.accounting-settings-actions{display:flex;flex-wrap:wrap;gap:8px}.accounting-live-confirm{padding:9px 10px;border-radius:7px;background:var(--amber-soft);color:var(--amber)}.accounting-live-confirm strong{color:var(--text)}.accounting-test-note{margin:0;color:var(--text-muted);font-size:11px;line-height:16px}.accounting-matrix{display:flex;min-width:0;flex-direction:column;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.accounting-matrix-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.accounting-matrix-heading h3{margin:0;color:var(--text);font-size:15px;line-height:20px}.accounting-matrix-heading p{margin:3px 0 0;color:var(--text-muted);font-size:11px;line-height:16px}.accounting-matrix-warning{display:flex;align-items:flex-start;gap:7px;padding:9px 10px;border-radius:7px;background:var(--amber-soft);color:var(--amber);font-size:11px;line-height:16px}.accounting-matrix-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.accounting-matrix-table{width:100%;min-width:820px;border-collapse:collapse}.accounting-matrix-table td,.accounting-matrix-table th{padding:8px 9px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle}.accounting-matrix-table th{background:var(--subtle);color:var(--text-muted);font-size:10px;font-weight:700;text-transform:uppercase}.accounting-matrix-table tr:last-child td{border-bottom:0}.accounting-matrix-table td:first-child{width:28%}.accounting-matrix-table td small,.accounting-matrix-table td strong{display:block}.accounting-matrix-table td strong{color:var(--text);font-size:12px}.accounting-matrix-table td small{margin-top:2px;color:var(--text-muted);font-size:10px;line-height:14px}.accounting-matrix-table select{width:100%;min-width:170px;font-size:11px}.postmark-settings-status{display:grid;grid-gap:7px;gap:7px;margin-bottom:12px;padding:10px 11px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.postmark-settings-status>div{display:grid;grid-template-columns:18px minmax(0,1fr) auto;grid-gap:7px;gap:7px;align-items:center;color:var(--text-muted);font-size:11px}.postmark-settings-status svg{color:var(--brand-700)}.postmark-settings-status strong{color:var(--text);font-size:11px;font-weight:700;text-align:right}.settings-inline-note{margin:0 0 12px;padding:9px 10px;border-radius:7px;background:var(--amber-soft);color:var(--amber-800,#8a4b08);font-size:11px;line-height:16px}.postmark-settings-form{display:flex;flex-direction:column;gap:12px}.postmark-enabled-toggle{padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}.postmark-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.postmark-fields-grid label{display:flex;min-width:0;flex-direction:column;gap:5px}.postmark-fields-grid label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.postmark-fields-grid .form-span-2{grid-column:span 2}.postmark-settings-form .settings-form-footer{align-items:stretch;flex-direction:column}.postmark-template-section{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--border)}.postmark-template-heading{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}.postmark-template-heading h3{margin:0;color:var(--text);font-size:14px}.postmark-template-heading p{margin:3px 0 0;color:var(--text-muted);font-size:11px;line-height:16px}.postmark-template-heading .settings-inline-note{margin:0;max-width:210px}.postmark-template-section textarea{min-height:104px;resize:vertical}.postmark-template-section code{padding:1px 4px;border-radius:4px;background:#eef5f7;color:var(--brand-800);font-size:10px}.settings-layout .company-settings-form{grid-template-columns:1fr;gap:12px}.settings-layout .company-logo-field{display:grid;grid-template-columns:72px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center}.settings-layout .company-logo-preview{width:72px;height:52px}.settings-layout .company-logo-preview img{max-width:62px;max-height:42px}.settings-layout .company-logo-preview span{font-size:22px}.settings-layout .company-logo-field .button{min-height:34px}.settings-layout .company-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-layout .company-fields-grid .form-span-2,.settings-layout .company-fields-grid .form-span-3{grid-column:span 2}.settings-layout .company-fields-grid textarea{min-height:58px}.settings-layout .settings-form-footer{grid-column:span 1;align-items:stretch;flex-direction:column}.account-layout{display:grid;grid-template-columns:minmax(260px,.34fr) minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start}.account-email-settings-panel,.account-profile-panel,.account-security-panel{min-width:0}.account-email-settings-panel{grid-column:1/-1}.account-email-settings-panel .panel-heading{align-items:center}.account-email-settings-panel .panel-heading>svg{color:var(--brand-700)}.account-email-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.account-email-settings-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.account-email-settings-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.account-email-settings-form small{color:var(--text-muted);font-size:11px;line-height:16px}.signature-editor{display:grid;grid-column:1/-1;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.signature-editor-heading{align-items:flex-start}.signature-editor-heading>div{display:flex;flex-direction:column;gap:3px}.signature-logo-upload{flex:0 0 auto;cursor:pointer}.signature-logo-upload input[type=file]{display:none}.signature-preview{display:flex;min-height:82px;align-items:center;justify-content:center;gap:12px;padding:10px;border:1px dashed #b8cbd5;border-radius:6px;background:#fff}.signature-preview-placeholder{display:grid;width:92px;height:58px;flex:0 0 92px;place-items:center;overflow:hidden;object-fit:contain}.signature-preview img{width:auto;height:auto;flex:0 0 auto;object-fit:contain}.signature-preview-placeholder{border:1px solid var(--border);color:var(--text-muted);font-size:11px}.signature-preview>div:not(.signature-preview-placeholder){display:flex;min-width:0;flex-direction:column;gap:3px}.signature-preview>.signature-preview-layout{display:flex;width:100%;align-items:center;justify-content:flex-start;gap:14px;flex-direction:row}.signature-preview-layout.signature-preview-right{justify-content:flex-end}.signature-preview-layout.signature-preview-bottom,.signature-preview-layout.signature-preview-top,.signature-preview-stack{flex-direction:column!important}.signature-preview-layout.signature-preview-align-left,.signature-preview-layout.signature-preview-align-left .signature-preview-stack{align-items:flex-start;text-align:left}.signature-preview-layout.signature-preview-align-center,.signature-preview-layout.signature-preview-align-center .signature-preview-stack{align-items:center;justify-content:center;text-align:center}.signature-preview-layout.signature-preview-align-right,.signature-preview-layout.signature-preview-align-right .signature-preview-stack{align-items:flex-end;text-align:right}.signature-preview-layout .signature-preview-placeholder{flex:0 0 auto}.signature-preview-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.signature-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.signature-controls label{display:flex;min-width:0;flex-direction:column;gap:5px}.signature-controls label>span{color:var(--text-muted);font-size:11px;font-weight:700}.signature-size-control input[type=range]{width:100%;accent-color:var(--brand-700)}.signature-preview strong{white-space:pre-line}.signature-preview small{color:var(--text-muted)}.account-email-settings-form .settings-form-footer{grid-column:1/-1}.account-profile-grid,.account-security-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.account-profile-grid div,.account-security-summary div{min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.account-mfa-secret span,.account-profile-grid span,.account-security-summary span{display:block;margin-bottom:4px;color:var(--text-muted);font-size:11px;font-weight:700;line-height:16px;text-transform:uppercase}.account-mfa-secret strong,.account-profile-grid strong,.account-security-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-security-heading{align-items:center}.account-mfa-setup,.account-security-block{display:flex;min-width:0;flex-direction:column;gap:12px;margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.account-security-danger{border-color:#f3c9c9;background:#fffafa}.account-security-copy{display:grid;min-width:0;grid-template-columns:30px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:start}.account-security-copy svg{margin-top:1px;color:var(--brand-700)}.account-security-danger .account-security-copy svg{color:var(--red)}.account-security-copy strong{display:block;margin-bottom:2px;line-height:20px}.account-security-copy p{color:var(--text-muted);font-size:12px;line-height:18px}.account-security-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;grid-gap:8px;gap:8px;align-items:end}.account-security-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.account-security-form label>span{color:var(--text-muted);font-size:11px;font-weight:600;line-height:16px}.account-security-form .button{min-height:40px}.account-mfa-secret{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center}.account-mfa-secret>div{min-width:0;padding:10px;border:1px dashed #b8cbd5;border-radius:8px;background:#fff}.account-mfa-secret strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;letter-spacing:0}.account-mfa-link{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:7px;color:var(--brand-700);font-weight:700}.catalog-create-row{display:grid;grid-template-columns:minmax(170px,1fr) 110px 100px 90px 90px auto auto;grid-gap:9px;gap:9px;align-items:end;margin-bottom:12px;padding:10px;border:1px dashed #b8cbd5;border-radius:8px;background:var(--subtle)}.catalog-description{grid-column:span 2}.catalog-edit-row{grid-template-columns:minmax(150px,.9fr) minmax(220px,1.2fr) 105px 95px 88px 88px auto auto 74px auto}.catalog-edit-row[data-inactive=true]{opacity:.72}.offer-overview-page,.offer-workspace-page{min-width:0;min-height:100vh;background:#f7f7f7}.offer-top-tabs{display:flex;height:42px;align-items:flex-end;gap:2px;padding:0 20px;border-bottom:1px solid #d8dde2;background:#fff}.offer-top-tabs a,.offer-top-tabs span{display:inline-flex;height:42px;align-items:center;padding:0 18px;border-bottom:3px solid transparent;color:#707780;font-size:13px;font-weight:700}.offer-top-tabs [data-active=true]{border-bottom-color:#06b6b4;color:#009c9a}.offer-overview-layout{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - 42px)}.offer-filter-panel{position:relative;min-width:0;padding:24px 26px;border-right:1px solid #dde1e5;background:#fbfbfb}.filter-panel-toggle{position:absolute;top:18px;right:14px;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:30px;min-height:30px;border:1px solid #cbd7dc;border-radius:6px;background:#fff;color:var(--brand-700);cursor:pointer}.filter-panel-toggle:hover{background:var(--brand-50)}.offer-filter-collapsed-mark{display:none;color:var(--brand-700)}.offer-filter-content{min-width:0}@media (min-width:1021px){.offer-overview-layout:has(.offer-filter-panel[data-collapsed=true]){grid-template-columns:56px minmax(0,1fr)}.offer-filter-panel[data-collapsed=true]{padding:58px 12px 18px}.offer-filter-panel[data-collapsed=true] .filter-panel-toggle{top:18px;right:12px}.offer-filter-panel[data-collapsed=true] .offer-filter-content{display:none}.offer-filter-panel[data-collapsed=true] .offer-filter-collapsed-mark{display:flex;justify-content:center}}.offer-filter-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.offer-filter-heading h2{color:#74777b;font-size:16px}.offer-filter-heading span{color:#999;font-size:20px;font-weight:700}.filter-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.filter-group strong{color:#009c9a;font-size:13px}.filter-group label{display:flex;align-items:center;gap:8px;color:#1c2630;font-size:12px}.filter-group input[type=checkbox]{width:14px;min-height:14px;border-radius:3px}.filter-check-list{display:grid;grid-gap:7px;gap:7px;max-height:180px;overflow:auto;padding-right:4px}.filter-check-list label{align-items:flex-start;line-height:1.3}.filter-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.offer-table-panel{min-width:0;padding:20px}.offer-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.offer-search{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;width:min(230px,50%);height:30px;padding:0 8px;border:1px solid #d5dadd;border-radius:4px;background:#fff;color:#8b9298}.offer-search input{min-height:28px;border:0;background:transparent}.offer-list-actions{display:flex;align-items:center;gap:6px}.offer-content-table-wrap,.offer-table-scroll{width:100%;overflow:auto;border:1px solid #d5dadd;border-radius:5px;background:#fff}.offer-content-table,.offer-overview-table{min-width:1200px;font-size:12px}.offer-content-table th,.offer-overview-table th{height:32px;background:#f5f5f5;color:#111;font-size:12px;font-weight:700;white-space:nowrap}.offer-content-table td,.offer-overview-table td{height:36px;padding:6px 10px;border-top:1px solid #d9dddf;color:#111;vertical-align:middle}.offer-content-table tbody tr:hover,.offer-overview-table tbody tr:hover{background:#f4fbfb}.offer-content-table td.empty-table-cell,.offer-overview-table td.empty-table-cell{height:92px;color:#697179;text-align:center}.offer-content-table tfoot td,.offer-overview-table tfoot td{height:40px;background:#fff;font-weight:800}.offer-name-link{color:#009c9a;font-weight:800}.ticket-reported-hours,.ticket-reported-hours-link{white-space:nowrap}.ticket-reported-hours-link{color:var(--brand-800);font-weight:800;text-decoration:none}.ticket-reported-hours-link:hover{color:var(--accent-strong);text-decoration:underline}.state-pill{display:inline-flex;min-height:23px;align-items:center;justify-content:center;padding:3px 7px;border-radius:5px;background:#858585;color:#fff;font-size:12px;font-weight:700}.state-pill[data-state=SENT]{background:#f4a000;color:#111}.state-pill[data-state=APPROVED]{background:#58a982}.state-pill[data-state=BILLED]{background:var(--brand-800)}.state-pill[data-state=REJECTED]{background:var(--red)}.state-pill[data-state=EXPIRED]{background:var(--amber);color:#fff}.offer-detail-header{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px 10px;background:#f7f7f7}.offer-detail-header h1{color:#111;font-size:22px;font-weight:500;line-height:30px}.offer-detail-header p{color:#8a8f94;font-size:12px}.offer-detail-actions{display:flex;align-items:center;gap:5px}.read-only-note{margin-right:8px;color:#222;font-size:13px;font-weight:700}.offer-detail-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:0;gap:0;margin:0 20px 14px;overflow:hidden;border-radius:8px;background:#e9e9e9}.offer-detail-tabs span{display:flex;min-height:36px;align-items:center;justify-content:center;gap:6px;color:#111;font-size:12px;font-weight:700}.offer-detail-tabs span[data-active=true]{background:#08b9b7;color:#fff}.offer-detail-tabs strong{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;border-radius:12px;background:#fff;color:#08a5a3}.offer-content-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 20px 20px}.offer-builder-add-controls{display:flex;min-width:0;align-items:center;gap:10px}.offer-builder-add-controls>strong{color:#526273;font-size:12px;white-space:nowrap}.offer-builder-target{display:flex;min-width:250px;flex-direction:column;gap:4px}.offer-builder-target span{color:#697179;font-size:11px;font-weight:700}.offer-builder-target select{min-height:30px;border:1px solid #cbd9e2;border-radius:4px;background:#eef5f8;color:#145464;font-size:12px;font-weight:700}.offer-builder-ticket-picker{display:flex;min-width:min(420px,34vw);flex-direction:column;gap:4px}.offer-builder-ticket-picker label{color:#697179;font-size:11px;font-weight:700}.offer-builder-ticket-picker .inline-control{display:flex;gap:6px}.offer-builder-ticket-picker select{min-width:0;min-height:30px;flex:1 1;border:1px solid #cbd9e2;border-radius:4px;background:#eef5f8;color:#145464;font-size:12px;font-weight:700}.quote-line-order-actions{display:inline-flex;margin-top:5px;gap:3px}.quote-line-order-actions .icon-button{width:24px;min-height:24px;padding:3px;border-color:#d5dadd;background:#fff}.quote-line-order-actions .icon-button:disabled{cursor:not-allowed;opacity:.35}.segmented-tabs{display:flex;flex-wrap:wrap;gap:4px}.segmented-tabs a,.segmented-tabs button,.segmented-tabs span{display:inline-flex;min-height:30px;align-items:center;gap:5px;padding:6px 10px;border:1px solid #d5dadd;border-radius:4px;background:#fff;color:#111;font-size:12px;font-weight:700;text-decoration:none;cursor:default}.segmented-tabs a,.segmented-tabs button{cursor:pointer}.segmented-tabs [data-active=true]{border-color:#08b9b7;background:#08b9b7;color:#fff}.segmented-tabs button:disabled{cursor:not-allowed;opacity:.45}.segmented-tabs .line-add-primary{border-color:#08b9b7;background:#08b9b7;color:#fff}.offer-detail-summary{display:flex;flex-wrap:wrap;gap:12px;align-items:center;color:#697179;font-size:12px}.offer-detail-summary strong{color:#111;font-size:13px}.ticket-hours-jump{color:var(--accent-strong);font-size:12px;font-weight:750;text-decoration:none}.ticket-hours-jump:hover{text-decoration:underline}.offer-content-table-wrap{margin:0 20px 16px}.quote-editor-content-area{display:grid;grid-template-columns:minmax(0,1fr) 380px;grid-gap:14px;gap:14px;align-items:start;margin:0 20px 16px}.quote-editor-content-area.no-line-selected{grid-template-columns:1fr}.quote-editor-content-area>.offer-content-table-wrap{min-width:0;margin:0}.offer-content-table{min-width:1360px}.offer-content-table .offer-group-row td{background:#ededed}.offer-content-table .offer-group-row[data-active=true] td{background:#e4f4f2}.offer-content-table .offer-detail-row[data-level="1"] td{background:#fbfdfd}.offer-content-table .offer-detail-row[data-level="2"] td{background:#f6fafb}.offer-content-table .offer-detail-row:hover td,.offer-content-table .offer-group-row:hover td{background:#f0f8f7}.offer-content-table tbody tr{cursor:pointer}.offer-content-table tbody tr[data-selected=true] td{background:#e4f4f2!important}.offer-content-table tbody tr[data-selected=true]{box-shadow:inset 3px 0 #08a5a3}.line-kind-dot{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;border:1px solid #b8bec4;border-radius:50%;color:#60676e;font-size:10px;font-weight:800}.offer-editor-name,.offer-line-name{position:relative;display:flex;min-width:0;flex-direction:column;gap:2px}.offer-editor-line-title{display:flex;min-width:0;align-items:center;gap:6px}.offer-editor-line-title strong{min-width:0;flex:1 1;color:#111}.offer-editor-line-title strong,.offer-editor-name>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offer-editor-name>small{display:block;max-width:360px;color:#697179;font-size:11px;line-height:1.35}.offer-editor-name>small.muted{color:#a3adb5;font-style:italic}.line-edit-trigger{display:inline-flex;width:24px;height:24px;flex:0 0 24px;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:4px;background:transparent;color:#526273;cursor:pointer;opacity:.35}.line-edit-trigger:focus-visible,.line-edit-trigger:hover,.offer-content-table tbody tr[data-selected=true] .line-edit-trigger{border-color:#9bc8cc;background:#fff;color:#145464;opacity:1;outline:none}.line-editor-kind{display:inline-flex;min-width:62px;min-height:22px;align-items:center;justify-content:center;padding:3px 5px;border-radius:4px;background:#e8eef2;color:#526273;font-size:10px;font-weight:800;white-space:nowrap}.line-editor-kind[data-kind=SECTION],.line-editor-kind[data-kind=SUBSECTION]{background:#dcefed;color:#145464}.offer-editor-line-title input{min-width:0;flex:1 1;min-height:34px;font-size:13px}.offer-group-inline-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding-top:2px}.line-add-inline,.line-target-button{display:inline-flex;min-height:23px;align-items:center;gap:3px;padding:3px 6px;border:1px solid #cbd9e2;border-radius:4px;background:#fff;color:#145464;font-size:10px;font-weight:700;cursor:pointer}.line-target-button[data-active=true]{border-color:#08b9b7;background:#08b9b7;color:#fff}.line-add-inline:hover,.line-target-button:hover{border-color:#08b9b7;background:#e4f4f2}.line-parent-context{color:#697179;font-size:10px}.offer-line-name strong{font-weight:600}.offer-line-name small{overflow:hidden;color:#888;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.offer-line-name .rich-text-preview{display:-webkit-box;overflow:hidden;color:#697179;font-size:11px;line-height:1.35;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:4}.rich-text-preview div,.rich-text-preview p{margin:0 0 3px}.rich-text-preview div:last-child,.rich-text-preview p:last-child{margin-bottom:0}.rich-text-preview ol,.rich-text-preview ul{margin:2px 0 2px 16px;padding:0}.line-tree-join{position:absolute;top:16px;left:6px;width:10px;border-top:1px solid #b8bec4}.line-tree-join:before{position:absolute;top:-17px;left:-1px;width:1px;height:17px;background:#b8bec4;content:""}.flag-list{display:flex;flex-wrap:wrap;gap:5px}.flag-list span{display:inline-flex;min-height:20px;align-items:center;padding:2px 6px;border-radius:4px;background:#e4f5f3;color:#007d7b;font-size:11px;font-weight:700}.quote-client-input-panel{margin:0 20px 16px;padding:14px;border:1px solid #d5dadd;border-radius:5px;background:#fff}.quote-client-input-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:10px;gap:10px}.quote-client-input-card{display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:10px;gap:10px;min-width:0;padding:11px;border:1px solid #dbe3ea;border-radius:6px;background:#f8fbfc}.quote-client-input-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:7px;background:#e4f5f3;color:#007d7b}.quote-client-input-body,.quote-client-input-meta{display:flex;min-width:0;flex-direction:column;gap:5px}.quote-client-input-meta strong{overflow:hidden;color:#111;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.quote-client-input-meta small,.quote-client-input-meta span{overflow:hidden;color:#697179;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.quote-client-input-body p{display:-webkit-box;overflow:hidden;color:#333;font-size:12px;line-height:17px;-webkit-box-orient:vertical;-webkit-line-clamp:4;white-space:pre-wrap}.quote-client-input-actions,.quote-client-input-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.quote-client-input-links .button{min-height:30px;padding:6px 9px;font-size:12px}.quote-client-input-form{display:flex;flex-direction:column;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid #d5dadd}.quote-client-input-row{display:grid;grid-template-columns:130px minmax(180px,1.2fr) minmax(160px,.9fr) minmax(180px,1fr);grid-gap:8px;gap:8px}.quote-client-input-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.quote-client-input-form label>span{color:#697179;font-size:11px;font-weight:700}.quote-client-input-form textarea{min-height:70px}.offer-status-footer{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0 20px 24px;padding:12px 14px;border:1px solid #d5dadd;border-radius:5px;background:#fff}.offer-status-footer>div{display:flex;flex-direction:column;gap:3px;min-width:120px}.offer-status-footer span{color:#777;font-size:11px;font-weight:700}.offer-status-footer strong{font-size:13px}.offer-editor{display:flex;flex-direction:column;min-width:0}.offer-editor-header{padding-top:18px}.offer-editor-save-area{display:flex;min-width:0;align-items:center;justify-content:flex-end;gap:10px}.offer-editor-save-message{max-width:min(520px,42vw);margin:0;text-align:right}.offer-editor-meta{display:grid;grid-template-columns:minmax(210px,1fr) 150px minmax(260px,1.3fr) 150px 120px;grid-gap:10px;gap:10px;margin:0 20px 14px;padding:12px;border:1px solid #d5dadd;border-radius:5px;background:#fff}.offer-editor-meta label,.quote-client-field{display:flex;min-width:0;flex-direction:column;gap:5px}.offer-editor-meta label>span,.quote-client-field>span{color:#697179;font-size:11px;font-weight:700}.offer-editor-title{min-width:0}.offer-editor-notes{grid-column:1/-1}.offer-editor-notes textarea{min-height:48px}.offer-editor-table input,.offer-editor-table select{min-height:30px;border-radius:4px;background:#fff;font-size:12px}.offer-editor-name input:first-of-type{font-weight:700}.offer-editor-name input+input{color:#697179}.rich-text-field{display:flex;width:100%;min-width:220px;flex-direction:column;gap:3px}.rich-text-toolbar{display:flex;min-height:28px;align-items:center;gap:2px;padding:2px;border:1px solid #cbd9e2;border-radius:4px 4px 0 0;background:#eef5f8}.rich-text-tool{display:inline-flex;width:26px;height:24px;align-items:center;justify-content:center;padding:0;border:1px solid transparent;border-radius:3px;background:transparent;color:#526273;cursor:pointer}.rich-text-tool:focus-visible,.rich-text-tool:hover{border-color:#9bc8cc;background:#fff;color:#145464;outline:none}.rich-text-editor{min-height:70px;max-height:260px;overflow-y:auto;padding:7px 9px;border:1px solid #cbd9e2;border-radius:0 0 4px 4px;background:#fff;color:#526273;font-size:12px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;outline:none}.rich-text-editor:focus{border-color:#08a5a3;box-shadow:0 0 0 2px rgb(8 165 163/12%)}.rich-text-editor:empty:before{color:#9aa7b1;content:attr(data-placeholder);pointer-events:none}.rich-text-editor div,.rich-text-editor p{margin:0 0 4px}.rich-text-editor div:last-child,.rich-text-editor p:last-child{margin-bottom:0}.rich-text-editor ol,.rich-text-editor ul{margin:3px 0 3px 18px;padding:0}.quote-group-total,.quote-line-summary-flag{color:#145464;font-weight:700}.quote-line-summary-flag{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:4px 6px;border-radius:4px;background:#e5f3f1;font-size:11px}.quote-line-settings-summary{display:flex;flex-wrap:wrap;gap:4px;max-width:190px}.quote-line-settings-summary span{display:inline-flex;min-height:22px;align-items:center;padding:3px 5px;border-radius:4px;background:#e5f3f1;color:#145464;font-size:10px;font-weight:700;line-height:1.2}.quote-line-inspector{position:-webkit-sticky;position:sticky;top:16px;display:flex;min-width:0;max-height:calc(100vh - 32px);flex-direction:column;overflow:hidden;border:1px solid #d5dadd;border-radius:6px;background:#fff;box-shadow:0 12px 30px rgb(20 84 100/10%)}.quote-line-inspector-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid #d5dadd;background:#eef5f8}.quote-line-inspector-header>div{min-width:0}.quote-line-inspector-header span{color:#007d7b;font-size:10px;font-weight:800;letter-spacing:.06em}.quote-line-inspector-header h2{margin:3px 0 2px;overflow:hidden;color:#111;font-size:16px;line-height:22px;text-overflow:ellipsis;white-space:nowrap}.quote-line-inspector-header p{margin:0;color:#697179;font-size:11px}.quote-line-inspector-body{display:flex;min-height:0;flex-direction:column;gap:10px;overflow-y:auto;padding:14px}.quote-line-inspector-body label,.quote-line-inspector-field{display:flex;min-width:0;flex-direction:column;gap:4px}.quote-line-inspector-body label>span,.quote-line-inspector-field>span{color:#526273;font-size:11px;font-weight:800}.quote-line-inspector-body input,.quote-line-inspector-body select{min-height:34px;min-width:0;width:100%}.quote-line-inspector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.quote-line-inspector .rich-text-field{min-width:0}.quote-line-inspector .rich-text-editor{min-height:150px;max-height:360px}.quote-line-inspector-hint{margin:0;padding:9px;border:1px solid #dbe7eb;border-radius:4px;background:#f4f9fa;color:#526273;font-size:11px;line-height:1.4}.quote-line-inspector-toggles{display:flex;flex-wrap:wrap;gap:6px}.quote-line-inspector-footer{display:flex;justify-content:flex-end;padding:12px 14px;border-top:1px solid #d5dadd}.button-danger-soft{border-color:#efd0d0;background:#fff4f4;color:#a63232}.button-danger-soft:focus-visible,.button-danger-soft:hover{border-color:#e2a9a9;background:#ffe8e8;color:#8d2424}.quote-line-visibility{display:flex;min-width:190px;flex-direction:column;gap:3px}.quote-line-visibility>span{color:#526273;font-size:10px;font-weight:800}.quote-line-visibility select{min-height:28px;max-width:210px;border:1px solid #cbd9e2;border-radius:4px;background:#eef5f8;color:#145464;font-size:11px;font-weight:700}.quantity-pair{display:grid;grid-template-columns:minmax(64px,1fr) 64px;grid-gap:5px;gap:5px}.icon-toggle{display:inline-flex;min-height:28px;align-items:center;gap:4px;padding:4px 6px;border-radius:4px;background:#eef3f7;color:#45515d;font-size:11px;font-weight:700}.icon-toggle input{width:13px;min-height:13px;accent-color:#08a5a3}.compact-summary{margin-top:8px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--subtle);grid-template-columns:repeat(2,minmax(120px,1fr))}.add-row{border-style:dashed;background:var(--subtle)}.phase-description-input{min-width:0}.assignment-row{display:grid;grid-template-columns:minmax(140px,.55fr) minmax(0,1.45fr) auto;grid-gap:12px;gap:12px;align-items:center;min-height:54px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fafcfd}.assignment-options{display:flex;flex-wrap:wrap;gap:8px}.assignment-options label,.inline-toggle{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:5px 8px;border-radius:7px;background:var(--subtle);color:var(--text-muted);font-size:12px;font-weight:600}.assignment-options input,.inline-toggle input{width:15px;min-height:15px;accent-color:var(--brand-700)}.assignment-save-state{display:inline-flex;min-width:106px;min-height:30px;align-items:center;justify-content:center;gap:6px;padding:5px 8px;border-radius:7px;background:var(--subtle);color:var(--text-muted);font-size:12px;font-weight:700}.assignment-save-state[data-state=saving]{background:var(--brand-100);color:var(--brand-800)}.assignment-save-state[data-state=saving] svg{animation:spin .9s linear infinite}.assignment-save-state[data-state=saved]{background:var(--green-soft);color:var(--green)}.assignment-save-state[data-state=error]{background:var(--red-soft);color:var(--red)}@keyframes spin{to{transform:rotate(1turn)}}.review-row{display:grid;grid-template-columns:70px minmax(0,1fr) 54px auto;grid-gap:10px;gap:10px;align-items:center;min-height:68px;padding:8px 0;border-top:1px solid var(--border)}.review-row:first-child{border-top:0}.review-actions small,.review-row small,.review-row>span{color:var(--text-muted);font-size:11px}.review-row>div{display:flex;min-width:0;flex-direction:column;gap:2px}.review-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-actions{display:flex;align-items:center;gap:4px}.project-phase-head,.project-phase-row{grid-template-columns:minmax(120px,1.15fr) 82px 78px minmax(120px,.9fr) 86px 86px 90px minmax(120px,.9fr);min-width:1040px}.billing-marker-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:9px;gap:9px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.billing-marker-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.billing-marker-form label>span{color:var(--text-muted);font-size:11px;font-weight:600}.project-builder{display:flex;min-width:0;flex-direction:column}.project-builder-header{display:grid;grid-template-columns:minmax(190px,1.05fr) minmax(170px,.95fr) 120px minmax(240px,1.3fr) 140px 130px;grid-gap:10px;gap:10px;margin:0 20px 14px;padding:12px;border:1px solid #d5dadd;border-radius:5px;background:#fff}.project-builder-header label,.project-builder-line label{display:flex;min-width:0;flex-direction:column;gap:5px}.project-builder-header label>span,.project-builder-line-head span{color:#697179;font-size:11px;font-weight:700}.project-builder-header input,.project-builder-header select,.project-builder-line input,.project-builder-line select,.project-builder-line textarea{width:100%;min-height:32px;border-radius:4px;background:#fff;font-size:12px}.project-builder-header input:disabled,.project-editor .project-builder-header input[readonly]{color:#697179;background:#f1f4f5}.project-builder-actions{display:flex;flex-wrap:wrap;gap:6px}.project-builder-lines{margin:0 20px 18px;overflow-x:auto;border:1px solid #d5dadd;border-radius:5px;background:#fff}.project-builder-line,.project-builder-line-head{display:grid;grid-template-columns:minmax(170px,.95fr) minmax(290px,1.45fr) 76px 88px 106px 132px 112px 38px;grid-gap:8px;gap:8px;align-items:start;min-width:1100px;padding:8px 10px}.project-builder-line-head{min-height:32px;border-bottom:1px solid #d9dddf;background:#f5f5f5}.project-builder-line{border-top:1px solid #d9dddf}.project-builder-line:first-of-type{border-top:0}.project-builder-line:hover{background:#f4fbfb}.project-builder-line label>span{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;border:0;clip:rect(0 0 0 0)}.project-builder-line textarea{min-height:72px;resize:none;overflow-y:hidden;line-height:18px}.project-builder-line .icon-button{align-self:end;justify-self:center}.project-editor{margin:0 20px 18px}.project-editor-card{overflow:hidden;border:1px solid #d5dadd;border-radius:5px;background:#fff}.project-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #d9dddf}.project-editor-heading h2{font-size:16px;line-height:22px}.project-editor-heading p{color:var(--text-muted);font-size:12px;line-height:18px}.project-editor .project-builder-header{margin:0;border:0;border-bottom:1px solid #d9dddf;border-radius:0;background:#fff}.project-editor-toolbar.offer-content-toolbar{margin:0;padding:10px 12px;border-bottom:1px solid #d9dddf}.project-editor .project-builder-lines{margin:0;border:0;border-radius:0}.project-editor-line,.project-editor-line-head{grid-template-columns:minmax(170px,.95fr) minmax(290px,1.4fr) 76px 88px 106px 132px 112px 74px 104px;min-width:1210px}.project-editor-reported{color:var(--text-muted);font-size:12px;font-weight:700}.project-editor-row-actions{display:flex;gap:4px;align-items:center;justify-content:flex-end}.project-editor-row-actions .icon-button{width:28px;height:28px;min-height:28px}.project-editor .form-message{margin:10px 12px 12px}.ticket-metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}.ticket-metric-strip .metric-card{min-height:86px;padding:12px;box-shadow:none}.ticket-metric-strip .metric-card strong{font-size:24px;line-height:30px}.ticket-editor{display:flex;min-width:0;flex-direction:column}.ticket-editor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0 20px 16px;padding:12px;border:1px solid #d5dadd;border-radius:5px;background:#fff}.ticket-editor-grid label:not(.inline-toggle){display:flex;min-width:0;flex-direction:column;gap:5px}.ticket-assignee-picker>span,.ticket-comment-form label>span,.ticket-editor-grid label>span{color:#697179;font-size:11px;font-weight:700}.required-mark{color:#b42318;font-style:normal}.ticket-required-note{margin:0 20px 10px;color:var(--text-muted);font-size:11px}.ticket-validation-summary{margin:0 20px 10px;padding:10px 12px}.ticket-validation-summary ul{margin:5px 0 0 16px;padding:0}.ticket-editor-grid [aria-invalid=true]{border-color:#c62828;box-shadow:0 0 0 2px rgba(198,40,40,.08)}.link-button{padding:0;border:0;background:transparent;color:var(--accent-strong);font:inherit;font-size:12px;font-weight:700;cursor:pointer}.link-button:hover{text-decoration:underline}.ticket-branch-cell{max-width:210px;overflow:hidden;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.ticket-editor-grid textarea{min-height:120px}.ticket-span-2{grid-column:span 2}.ticket-span-4{grid-column:span 4}.ticket-toggle{align-self:end;min-height:40px}.ticket-assignee-picker{display:flex;min-width:0;flex-direction:column;gap:5px}.ticket-assignee-picker>div{display:flex;min-height:40px;flex-wrap:wrap;gap:6px;align-items:center}.ticket-assignee-picker .ticket-toggle{min-height:34px}.ticket-detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);grid-gap:14px;gap:14px;align-items:start;margin:0 20px 20px}.ticket-workflow-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ticket-workflow-message{display:flex;align-items:center;gap:6px;margin:8px 20px 0}.ticket-workflow-modal{width:min(680px,100%);padding:0}.ticket-workflow-modal-header{display:flex;justify-content:space-between;gap:18px;padding:20px 22px 16px;border-bottom:1px solid var(--border)}.ticket-workflow-modal-header h2{margin:4px 0 3px;color:var(--text);font-size:20px;line-height:26px}.ticket-workflow-modal-header p{margin:0;color:var(--text-muted);font-size:13px}.ticket-workflow-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;padding:14px 22px 0}.ticket-workflow-mode button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 12px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text-muted);font:inherit;font-size:13px;font-weight:650;cursor:pointer}.ticket-workflow-mode button[data-active=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.ticket-workflow-mode button:disabled{cursor:not-allowed;opacity:.55}.ticket-workflow-hours-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:14px 22px 0;padding:10px 12px;border:1px solid var(--border);border-radius:7px;background:#f4f8fa;color:var(--text-muted);font-size:12px}.ticket-workflow-hours-note strong{color:var(--accent-strong);font-size:14px}.ticket-workflow-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:11px;gap:11px;padding:16px 22px 20px}.ticket-workflow-form label{display:grid;grid-gap:6px;gap:6px;min-width:0}.ticket-workflow-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.ticket-workflow-form input,.ticket-workflow-form select,.ticket-workflow-form textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:6px;background:#f4f8fa;color:var(--text);font:inherit;font-size:13px}.ticket-workflow-form input,.ticket-workflow-form select{min-height:38px;padding:8px 10px}.ticket-workflow-form textarea{min-height:84px;padding:9px 10px;resize:vertical}.ticket-workflow-span-2{grid-column:span 2}.ticket-workflow-form .modal-actions{grid-column:span 2;margin:4px -22px -20px;padding:13px 22px;border-top:1px solid var(--border)}@media (max-width:620px){.ticket-workflow-modal-header{padding:16px}.ticket-workflow-form,.ticket-workflow-mode{grid-template-columns:1fr;padding-right:16px;padding-left:16px}.ticket-workflow-hours-note{margin-right:16px;margin-left:16px}.ticket-workflow-form .modal-actions,.ticket-workflow-span-2{grid-column:span 1}.ticket-workflow-form .modal-actions{margin-right:-16px;margin-left:-16px;padding-right:16px;padding-left:16px}}.ticket-main-stack,.ticket-side-stack{display:flex;min-width:0;flex-direction:column;gap:14px}.ticket-side-stack .ticket-editor{overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow)}.ticket-side-stack .offer-detail-header{min-height:0;padding:14px;background:#fff}.ticket-side-stack .offer-detail-header h1{font-size:18px;font-weight:650;line-height:24px}.ticket-side-stack .ticket-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border:0;border-top:1px solid var(--border);border-radius:0;background:#fbfcfd}.ticket-side-stack .ticket-span-2,.ticket-side-stack .ticket-span-4{grid-column:span 2}.ticket-description{white-space:pre-wrap;color:var(--text);line-height:21px}.ticket-meta-line{margin:12px 0 0;color:var(--text-muted);font-size:12px;font-weight:650;line-height:18px}.ticket-solution-form{display:grid;grid-gap:12px;gap:12px;margin-top:14px}.ticket-solution-form label{display:grid;grid-gap:7px;gap:7px}.ticket-solution-form label>span{color:var(--text-muted);font-size:12px;font-weight:700}.ticket-solution-form textarea{width:100%;min-height:360px;resize:vertical}.ticket-solution-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.ticket-solution-footer p{margin:0;color:var(--text-muted);font-size:12px;line-height:18px}@media (max-width:760px){.ticket-solution-form textarea{min-height:300px}.ticket-solution-footer{align-items:stretch;flex-direction:column}.ticket-solution-footer .button{justify-content:center;width:100%}}.ticket-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:16px 0 0}.ticket-facts>div{min-width:0;padding:10px;border-radius:8px;background:var(--subtle)}.ticket-facts dt{color:var(--text-muted);font-size:11px;font-weight:700;line-height:16px}.ticket-facts dd{overflow:hidden;margin:2px 0 0;font-size:13px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.ticket-comments{display:flex;flex-direction:column}.ticket-comment{padding:12px 0;border-top:1px solid var(--border)}.ticket-comment:first-child{border-top:0;padding-top:0}.ticket-comment>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}.ticket-comment>div>span{color:var(--text-muted);font-size:11px}.ticket-comment p{white-space:pre-wrap;color:var(--text);font-size:13px;line-height:20px}.ticket-comment-form{gap:10px;padding-top:12px;border-top:1px solid var(--border)}.ticket-comment-form,.ticket-source-note{display:flex;flex-direction:column;margin-top:12px}.ticket-source-note{gap:6px;padding:10px;border-radius:8px;background:var(--amber-soft);color:#7c3f07;font-size:12px;line-height:18px}.ticket-source-note span{font-weight:700}.ticket-source-note p{white-space:pre-wrap}.ticket-custom-facts{margin-top:10px}.ticket-linked-list{display:flex;flex-direction:column;gap:8px}.ticket-linked-list a{display:grid;grid-template-columns:92px minmax(0,1fr);grid-gap:10px;gap:10px;align-items:center;min-height:38px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fbfcfd}.ticket-linked-list span{overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}.ticket-comment-form label{display:flex;flex-direction:column;gap:5px}.ticket-comment-actions{display:grid;grid-template-columns:minmax(160px,.35fr) auto;grid-gap:8px;gap:8px;justify-content:end}.ticket-import-layout{display:flex;min-width:0;flex-direction:column;gap:12px}.ticket-import-form{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(180px,.55fr) minmax(260px,1fr) auto;grid-gap:10px;gap:10px;align-items:end}.ticket-import-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.ticket-import-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.ticket-import-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:12px}.ticket-import-summary>div{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--subtle)}.ticket-import-summary>div[data-tone=warning]{border-color:#f3c77c;background:var(--amber-soft)}.ticket-import-summary span{overflow:hidden;color:var(--text-muted);font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.ticket-import-summary strong{color:var(--brand-800);font-size:22px}.ticket-import-preview .offer-list-toolbar>div{display:flex;min-width:0;flex-direction:column;gap:2px}.ticket-import-preview .offer-list-toolbar small{color:var(--text-muted);font-size:12px}.ticket-import-table-wrap{max-height:58vh}.ticket-import-table td,.ticket-import-table th{height:44px;padding:7px 8px}.ticket-import-table input,.ticket-import-table select{min-height:34px;border-radius:6px;font-size:12px}.client-portal-panel{display:flex;flex-direction:column;gap:12px}.portal-invite-box{display:flex;flex-direction:column;gap:6px;padding:10px;border:1px solid #b9d7ce;border-radius:8px;background:var(--brand-50)}.portal-invite-box>span{color:var(--brand-800);font-size:11px;font-weight:700}.portal-invite-box>div{display:grid;grid-template-columns:minmax(0,1fr) 30px;grid-gap:6px;gap:6px}.portal-invite-box input{min-height:30px;background:#fff;font-size:12px}.portal-access-form{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.portal-access-form label:not(.inline-toggle){display:flex;min-width:0;flex-direction:column;gap:5px}.portal-access-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.portal-access-toggle{justify-content:flex-start}.portal-user-list{display:flex;flex-direction:column;gap:8px}.portal-user-row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fbfcfd}.portal-user-row[data-status=ARCHIVED],.portal-user-row[data-status=LOCKED]{opacity:.72}.portal-user-row>div:first-child{display:flex;min-width:0;flex-direction:column;gap:2px}.portal-user-row small,.portal-user-row span,.portal-user-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-user-row small,.portal-user-row span{color:var(--text-muted);font-size:11px;line-height:16px}.portal-user-permissions{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px;font-size:.78rem}.portal-user-permissions label{display:inline-flex;align-items:center;gap:5px}.portal-quotes-panel{margin-bottom:20px}.quote-invoice-statuses{display:grid;grid-gap:5px;gap:5px;min-width:150px}.quote-invoice-statuses>div{display:flex;align-items:center;gap:7px;white-space:nowrap}.portal-user-actions{display:flex;gap:3px}.portal-page{min-height:100vh;padding:22px;background:var(--page)}.portal-header{display:flex;max-width:1320px;min-height:56px;align-items:center;justify-content:space-between;gap:16px;margin:0 auto 18px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}.portal-header>div{display:flex;min-width:0;align-items:center;gap:10px}.portal-header small,.portal-header strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-header small{color:var(--text-muted);font-size:12px}.portal-detail-head,.portal-hero,.portal-layout,.portal-metrics,.portal-ticket-detail{width:100%;max-width:1320px;margin-right:auto;margin-left:auto}.portal-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.portal-hero span{color:var(--brand-700);font-size:12px;font-weight:800}.portal-detail-head h1,.portal-hero h1{font-size:28px;font-weight:700;line-height:36px}.portal-detail-head p,.portal-hero p{color:var(--text-muted);line-height:20px}.portal-layout,.portal-ticket-detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);grid-gap:14px;gap:14px;align-items:start}.portal-ticket-detail{grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr)}.portal-detail-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:center;margin-bottom:14px}.portal-ticket-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.portal-comment-form label,.portal-ticket-form label{display:flex;min-width:0;flex-direction:column;gap:5px}.portal-comment-form label>span,.portal-ticket-form label>span{color:var(--text-muted);font-size:11px;font-weight:700}.portal-span-2,.portal-ticket-form .button,.portal-ticket-form .form-message{grid-column:span 2}.portal-comment-form{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.portal-comment-form .button{align-self:flex-end}@media (max-width:1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-layout,.client-card-layout,.dashboard-grid,.hours-layout,.project-layout,.quote-layout,.reports-layout,.settings-layout,.workspace-layout{grid-template-columns:minmax(0,1fr)}.client-card-layout>aside,.list-panel,.settings-side{position:static}.settings-overview{grid-template-columns:repeat(3,minmax(0,1fr))}.assignment-row,.billing-marker-form,.catalog-create-row,.catalog-edit-row,.client-edit-row,.client-summary-strip,.company-fields-grid,.form-grid,.management-form,.project-builder-header,.quote-builder-header,.quote-phase-edit-row,.quote-total-bar,.settings-create-form,.settings-detail-grid,.summary-panel,.ticket-custom-field-add-row,.ticket-settings-add-row,.user-create-grid,.user-edit-row,.user-security-main,.user-security-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.company-settings-form,.role-permission-grid{grid-template-columns:1fr}.settings-layout .company-fields-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-layout .company-fields-grid .form-span-3{grid-column:span 3}.catalog-description,.settings-form-footer,.settings-layout .company-fields-grid .form-span-2{grid-column:span 2}.offer-overview-layout,.portal-detail-head,.portal-layout,.portal-ticket-detail,.ticket-detail-layout{grid-template-columns:1fr}.ticket-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-filter-panel{border-right:0;border-bottom:1px solid #dde1e5}.offer-editor-meta,.ticket-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-span-2,.form-span-3,.offer-editor-notes,.ticket-span-2,.ticket-span-4{grid-column:span 2}.billable-control{min-height:62px}.time-entry-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.time-entry-date-field{grid-column:span 2}.selected-phase-summary{grid-template-columns:minmax(110px,.35fr) minmax(220px,1fr)}.selected-phase-summary small{grid-column:span 2}.time-entry-input-grid{grid-template-columns:150px minmax(0,1fr)}.time-entry-billable{grid-column:span 2}.ticket-import-form,.ticket-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.client-directory-panel .panel-heading{align-items:stretch;flex-direction:column}.client-directory-search{width:100%}}@media (max-width:860px){.app-shell{display:block}.sidebar{position:relative;z-index:5;width:100%;height:auto;padding:12px 14px;gap:10px;overflow:visible}.brand-lockup{height:40px}.brand-mark{width:32px;height:32px}.access-note,.brand-copy small,.nav-section-label,.nav-section-spaced,.sidebar-user{display:none}.sidebar-nav{flex-direction:row;gap:4px;overflow-x:auto}.nav-item{flex:0 0 auto;grid-template-columns:2px 17px auto;width:auto;min-height:36px;padding-right:11px;padding-left:7px}.page{padding:18px}.page-header{flex-direction:column}.page-actions{width:100%;flex-wrap:wrap}.search-field{flex:1 1}.project-row{grid-template-columns:minmax(0,1fr) minmax(180px,1fr)}.project-row-value{display:none}.login-page{grid-template-columns:1fr}.login-hero{min-height:220px;padding:24px}.login-signal{max-width:none;align-items:flex-start;padding-bottom:0}.login-signal strong{max-width:440px;font-size:21px;line-height:29px}.login-panel{width:min(420px,calc(100% - 28px));margin:30px 0;padding:30px}.settings-panel-heading{align-items:stretch;flex-direction:column}.project-builder-header,.project-builder-lines,.project-editor{margin-right:14px;margin-left:14px}.project-editor-heading{align-items:stretch;flex-direction:column}.project-editor .project-builder-header,.project-editor .project-builder-lines{margin-right:0;margin-left:0}.hours-command-bar{align-items:stretch;flex-direction:column}.hours-week-actions{justify-content:space-between}.week-strip{grid-template-columns:repeat(7,minmax(74px,1fr));overflow-x:auto;padding-bottom:3px}.week-day-card{min-height:76px}.selected-phase-summary,.time-entry-select-grid{grid-template-columns:1fr}.time-entry-mode-switch{width:100%}.time-entry-mode-switch button{flex:1 1;justify-content:center}.selected-phase-summary small,.time-entry-date-field{grid-column:span 1}.assignment-card-grid{grid-auto-columns:minmax(220px,82vw);grid-auto-flow:column;grid-template-columns:none;overflow-x:auto;padding-bottom:3px}.time-entry-input-grid{grid-template-columns:1fr}.time-entry-billable{grid-column:span 1}.developer-hours-layout .hours-side{grid-template-columns:repeat(2,minmax(0,1fr))}.team-hour-list-head,.team-hour-row{grid-template-columns:minmax(120px,.95fr) minmax(140px,1.1fr) minmax(125px,1fr) minmax(180px,1.5fr) 74px 66px;gap:8px}}@media (max-width:620px){.page{padding:14px}.page-header h1{font-size:21px;line-height:28px}.metric-grid{grid-template-columns:1fr}.hours-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.metric-card{min-height:100px}.hours-metric-grid .metric-card{min-height:86px;padding:11px}.hours-metric-grid .metric-card strong{font-size:21px;line-height:27px}.metric-card strong{font-size:24px;line-height:30px}.panel{padding:14px}.form-grid{grid-template-columns:1fr}.client-summary-strip,.settings-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.form-span-2,.form-span-3{grid-column:span 1}.account-email-settings-form,.account-mfa-secret,.account-profile-grid,.account-security-form,.account-security-summary{grid-template-columns:1fr}.account-mfa-secret .button,.account-security-form .button{width:100%}.form-footer{align-items:stretch;flex-direction:column}.form-status{min-height:18px}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.assignment-row,.billing-marker-form,.catalog-create-row,.catalog-edit-row,.client-edit-row,.client-modal-form,.company-fields-grid,.management-form,.project-builder-header,.quote-builder-header,.quote-phase-edit-row,.quote-total-bar,.review-row,.settings-create-form,.settings-detail-grid,.summary-panel,.ticket-custom-field-add-row,.ticket-editor-grid,.ticket-facts,.ticket-settings-add-row,.user-create-grid,.user-edit-row,.user-security-main,.user-security-meta{grid-template-columns:1fr}.catalog-description,.client-address-field,.client-registry-search,.modal-actions,.settings-form-footer,.ticket-span-2,.ticket-span-4{grid-column:span 1}.settings-layout .company-fields-grid,.settings-layout .company-fields-grid .form-span-2,.settings-layout .company-fields-grid .form-span-3{grid-template-columns:1fr;grid-column:span 1}.settings-password-reset,.settings-security-tools{align-items:stretch;flex-direction:column}.client-activity-row{grid-template-columns:1fr auto}.client-activity-row>span{grid-column:span 2}.client-contact-card-header{grid-template-columns:34px minmax(0,1fr)}.client-contact-card-header .badge{grid-column:1/-1;justify-self:start}.client-contact-create,.client-contact-edit-grid{grid-template-columns:1fr}.client-contact-actions,.client-contact-notes{grid-column:span 1}.settings-password-reset{min-width:0}.modal-actions,.settings-form-footer{align-items:stretch;flex-direction:column}.company-logo-preview{width:100%}.workspace-tabs{padding:0 10px}.offer-content-toolbar,.offer-detail-header,.offer-status-footer,.offer-top-tabs,.quote-client-input-panel{margin-right:0;margin-left:0}.offer-overview-page,.offer-workspace-page{padding:0}.offer-top-tabs{overflow-x:auto;padding:0 10px}.offer-filter-panel,.offer-table-panel{padding:14px}.offer-detail-header{align-items:flex-start;flex-direction:column;padding:14px}.offer-editor-save-area{width:100%;align-items:flex-end;justify-content:space-between}.offer-editor-save-message{max-width:calc(100% - 170px);text-align:left}.offer-detail-tabs{grid-template-columns:repeat(3,minmax(0,1fr));margin:0 14px 12px}.offer-content-toolbar{margin:0 14px 12px}.offer-builder-add-controls,.offer-content-toolbar{align-items:stretch;flex-direction:column}.offer-builder-target,.offer-builder-ticket-picker{min-width:0}.offer-content-table-wrap{margin:0 14px 14px}.quote-editor-content-area{display:flex;margin:0 14px 14px;flex-direction:column}.quote-editor-content-area>.offer-content-table-wrap{width:100%}.quote-line-inspector{position:static;max-height:none;order:-1}.quote-client-input-panel{margin:0 14px 14px}.quote-client-input-row{grid-template-columns:1fr}.ticket-detail-layout,.ticket-editor-grid{margin-right:14px;margin-left:14px}.ticket-side-stack .ticket-editor-grid{grid-template-columns:1fr;margin:0}.ticket-side-stack .ticket-span-2,.ticket-side-stack .ticket-span-4{grid-column:span 1}.ticket-comment-actions,.ticket-import-form,.ticket-import-summary,.ticket-metric-strip{grid-template-columns:1fr}.portal-page{padding:14px}.portal-hero{align-items:stretch;flex-direction:column}.portal-ticket-form{grid-template-columns:1fr}.portal-span-2,.portal-ticket-form .button,.portal-ticket-form .form-message{grid-column:span 1}.portal-comment-form .button{align-self:stretch}.offer-editor-meta{grid-template-columns:1fr;margin:0 14px 12px}.offer-editor-notes{grid-column:span 1}.filter-bar label{width:100%}.budget-chart-row{gap:6px}.budget-chart-row,.project-row{grid-template-columns:1fr}.project-row-progress{margin-top:4px}.attention-item{grid-template-columns:36px minmax(0,1fr)}.attention-item .badge{display:none}.login-panel{width:calc(100% - 28px);padding:24px}.hours-command-bar{margin-bottom:10px}.hours-date-context strong{font-size:13px}.hours-week-actions .button{flex:1 1}.week-strip{margin-right:-14px;margin-left:-14px;padding:0 14px 4px}.week-day-card{min-width:74px;min-height:74px;padding:9px}.time-entry-form-head{align-items:stretch;flex-direction:column}.time-entry-date-pill{grid-template-columns:18px minmax(0,1fr);width:100%}.assignment-card-grid{margin-right:-14px;margin-left:-14px;padding:0 14px 4px}.assignment-choice-card{min-height:128px}.hour-preset-row{grid-template-columns:repeat(3,minmax(0,1fr))}.my-project-card-grid,.planned-work-create-form{grid-template-columns:1fr}.planned-work-description-field,.planned-work-form-actions{grid-column:1}.planned-work-form-actions{min-height:0}.planned-work-row{grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;align-items:start}.planned-work-hours{justify-self:end}.planned-work-row>select{grid-column:1/-1;width:100%}.planned-work-save-icon{display:none}.hour-preset-row button{min-height:44px}.time-entry-submit-bar{border:1px solid var(--border);box-shadow:0 12px 32px rgba(13,33,53,.16)}.time-entry-submit-bar .button{width:100%}.day-entry-row{grid-template-columns:24px minmax(0,1fr) auto;gap:8px}.day-entry-row .day-entry-meta{grid-column:2/-1;justify-content:space-between;align-items:flex-start}.day-entry-row .day-entry-actions{margin-left:auto}.mobile-friendly-phases{overflow:visible}.mobile-friendly-phases .assigned-phases-head{display:none}.mobile-friendly-phases .assigned-phase-row{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;min-width:0;margin-top:8px;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fff}.mobile-friendly-phases .assigned-phase-row>strong{grid-column:1/-1}.mobile-friendly-phases .assigned-phase-row>span:first-of-type{grid-column:1/-1;color:var(--text-muted)}.mobile-friendly-phases .phase-utilization{grid-column:1/-1}.recent-entry{grid-template-columns:66px minmax(0,1fr) auto}.recent-entry .badge{grid-column:2/-1;justify-self:start}.team-hours-filter,.team-hours-filter-actions{grid-template-columns:1fr}.team-hours-filter .team-hours-search,.team-hours-filter-actions{grid-column:1}.team-hour-list{overflow:visible}.team-hour-list-head{display:none}.team-hour-row{grid-template-columns:minmax(0,1fr) auto;min-height:0;gap:7px 10px;padding:12px 0}.team-hour-row>div{grid-column:auto}.team-hour-person{grid-column:1}.team-hour-duration{grid-column:2;grid-row:1}.team-hour-activity,.team-hour-description,.team-hour-project,.team-hour-status{grid-column:1/-1}.team-hour-description p{margin-top:2px}.team-hour-row .badge{justify-self:start}.developer-hours-layout .hours-side{grid-template-columns:1fr}}@media (max-width:1180px){.reports-week-toolbar{grid-template-columns:minmax(0,1fr) auto}.reports-period-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.reports-date-picker,.reports-period-search{grid-column:span 2}.reports-period-filter>.button{justify-self:start}.reports-week-filter{grid-column:1/-1;justify-content:flex-start;padding-top:12px;border-top:1px solid var(--border)}.reports-week-filter label{max-width:300px}}@media (max-width:860px){.report-section-heading{align-items:stretch;flex-direction:column;gap:8px}.reports-week-layout{grid-template-columns:minmax(0,1fr)}.weekly-load-notes{min-height:0}.weekly-insight-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.reports-period-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-date-picker,.reports-period-search{grid-column:1/-1}}@media (max-width:620px){.reports-week-toolbar{gap:12px}.reports-period-filter,.reports-week-toolbar{grid-template-columns:minmax(0,1fr)}.reports-period-filter .button{width:100%}.reports-date-picker,.reports-period-search{grid-column:auto}.reports-date-popover{position:fixed;top:20px;left:14px;width:calc(100vw - 28px);max-height:calc(100vh - 40px)}.reports-week-actions{justify-content:space-between}.reports-week-filter{grid-column:auto;align-items:stretch;flex-direction:column}.reports-week-filter label{max-width:none}.reports-week-filter .button{width:100%}.weekly-load-chart-grid{gap:6px;padding:0}.weekly-load-bar{width:min(34px,80%);height:118px}.weekly-load-day small,.weekly-load-day strong,.weekly-load-day>span{font-size:10px}.weekly-insight-list{grid-template-columns:1fr}.weekly-load-table{min-width:1060px}}.ticket-time-form{display:grid;grid-gap:12px;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.ticket-time-form-grid{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(220px,1fr) minmax(220px,1fr);grid-gap:10px;gap:10px}.ticket-time-form label{display:grid;min-width:0;grid-gap:5px;gap:5px}.ticket-time-form label>span:first-child{color:var(--text-muted);font-size:11px;font-weight:700}.ticket-time-form input,.ticket-time-form select,.ticket-time-form textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:6px;background:#f4f8fa;color:var(--text);font:inherit;font-size:13px}.ticket-time-form input,.ticket-time-form select{min-height:38px;padding:8px 10px}.ticket-time-form textarea{min-height:96px;padding:9px 10px;resize:vertical}.ticket-time-date-input{display:flex;align-items:center;gap:8px;min-height:38px;padding:0 10px;border:1px solid var(--border);border-radius:6px;background:#f4f8fa;color:var(--text-muted)}.ticket-time-date-input input{min-height:36px;padding:0;border:0;background:transparent}.ticket-time-input-grid{display:grid;grid-template-columns:150px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:start}.ticket-time-stepper{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;grid-gap:4px;gap:4px}.ticket-time-stepper .icon-button{min-height:38px}.ticket-time-description-field{min-width:0}.ticket-time-description-meta{color:var(--text-muted);font-size:11px}.ticket-time-billable{align-content:start;min-width:145px;padding:10px;border:1px solid var(--border);border-radius:7px;background:var(--accent-soft)}.ticket-time-billable>.inline-toggle{color:var(--accent-strong);font-size:12px;font-weight:700}.ticket-time-billable small{color:var(--text-muted);font-size:11px;line-height:15px}.ticket-time-quick-hours{display:flex;flex-wrap:wrap;gap:7px}.ticket-time-quick-hours .button{min-height:34px}.ticket-time-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid var(--border)}.ticket-time-form-footer>div{min-width:0}.ticket-time-form-footer small{color:var(--text-muted);font-size:11px}.ticket-time-form-footer .form-error,.ticket-time-form-footer .form-message{margin:4px 0 0}.ticket-time-entry-list{display:flex;flex-direction:column;margin-top:14px}.ticket-time-entry-row{display:grid;grid-template-columns:100px minmax(0,1fr) 92px auto;grid-gap:12px;gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--border)}.ticket-time-entry-date,.ticket-time-entry-main,.ticket-time-entry-status{display:flex;min-width:0;flex-direction:column;gap:3px}.ticket-time-entry-date strong,.ticket-time-entry-hours{color:var(--brand-800)}.ticket-time-entry-row small{color:var(--text-muted);font-size:11px;line-height:15px}.ticket-time-entry-main p{margin:3px 0 0;color:var(--text);font-size:13px;line-height:19px;white-space:pre-wrap}.ticket-time-entry-hours{white-space:nowrap}.ticket-time-entry-status{align-items:flex-end;text-align:right}.ticket-time-entry-status .badge{white-space:nowrap}@media (max-width:760px){.email-compose-backdrop{padding:8px}.email-compose-form{padding:14px}.email-compose-grid,.email-compose-meta{grid-template-columns:1fr}.email-compose-fields textarea{min-height:210px}.email-compose-footer,.signature-editor-heading{align-items:stretch;flex-direction:column}.email-compose-footer .button,.signature-logo-upload{justify-content:center}.signature-controls,.ticket-time-form-grid,.ticket-time-input-grid{grid-template-columns:1fr}.ticket-time-form-footer{align-items:stretch;flex-direction:column}.ticket-time-form-footer .button{width:100%;justify-content:center}.ticket-time-entry-row{grid-template-columns:minmax(0,1fr) auto}.ticket-time-entry-date{grid-column:1/-1;flex-direction:row;justify-content:space-between}.ticket-time-entry-main{grid-column:1/-1}.ticket-time-entry-hours{grid-column:2;grid-row:2}.ticket-time-entry-status{grid-column:1;grid-row:2;align-items:flex-start;text-align:left}}