:root{--bg:#f5f1ea;--bg-alt:#ebe6dc;--bg-card:#faf8f3;--bg-card-hover:#fffdf7;--ink:#1a1a1a;--ink-2:#3a3a36;--ink-3:#6b6b66;--ink-4:#8e8e88;--hairline:rgba(26,26,26,0.10);--hairline-strong:rgba(26,26,26,0.22);--red:#EB3F3F;--red-deep:#c4302e;--red-soft:rgba(235,63,63,0.08);--green:#2f8a4f;--amber:#d4a341;--serif:"Instrument Serif",Georgia,serif;--sans:"Geist",-apple-system,BlinkMacSystemFont,sans-serif;--mono:"Geist Mono",ui-monospace,monospace}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.tbiz-logo{display:inline-block;font-family:var(--sans);font-weight:600;font-size:26px;letter-spacing:-.04em;color:var(--ink);position:relative;padding-top:9px;line-height:1}.tbiz-logo:before{content:"";position:absolute;top:0;left:0;width:20px;height:4px;background:var(--red);border-radius:1px}.tbiz-logo-lg{font-size:30px;padding-top:10px}.tbiz-logo-lg:before{width:22px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;font-family:var(--sans);font-size:13.5px;font-weight:500;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:all .2s ease;text-decoration:none;color:var(--ink);background:transparent;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-red{background:var(--red);color:white}.btn-red:hover:not(:disabled){background:var(--red-deep);transform:translateY(-1px)}.btn-outline{border-color:var(--hairline-strong);background:transparent;color:var(--ink)}.btn-outline:hover:not(:disabled){border-color:var(--ink);background:rgba(26,26,26,.03)}.btn-ghost{color:var(--ink-2)}.btn-ghost:hover:not(:disabled){background:var(--bg-card);color:var(--ink)}.btn-dark{background:var(--ink);color:var(--bg)}.btn-dark:hover:not(:disabled){background:#000}.btn-lg{padding:13px 22px;font-size:14.5px}.btn-block{width:100%}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.field label{font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.field input,.field select,.field textarea{font-family:var(--sans);font-size:14px;padding:12px 14px;background:transparent;border:1px solid var(--hairline-strong);border-radius:10px;color:var(--ink);transition:all .2s;width:100%}.field input::placeholder,.field textarea::placeholder{color:var(--ink-4)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--ink);background:var(--bg-card)}.field-error,.field-help{font-family:var(--mono);font-size:11px;letter-spacing:.02em;margin-top:-2px}.field-help{color:var(--ink-3)}.field-error{color:var(--red)}form .field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}form .field-row.compact-fields{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px}form .field-row.compact-fields .field{margin-bottom:0;width:auto;flex:0 0 auto}form .field-row.compact-fields .field input,form .field-row.compact-fields .field select{width:auto;min-width:0}form .field-row.compact-fields .field input[type=date]{width:160px}form .field-row.compact-fields .field input[type=time]{width:120px}form .field-row.compact-fields .field input[type=text]{width:200px}form .field-row.compact-fields .field.grow{flex:1 1 240px;min-width:220px}form .field-row.compact-fields .field.grow .ss,form .field-row.compact-fields .field.grow .ss-control{width:100%}form .field-row.compact-fields .field.w-md select{width:200px}form .field-row.compact-fields .field.w-sm select{width:130px}form .field-row.compact-fields .field-help{white-space:normal;max-width:220px}@media (max-width:560px){form .field-row.compact-fields{gap:12px}form .field-row.compact-fields .field input[type=text]{width:160px}}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-bottom:22px}.eyebrow:before{content:"";width:24px;height:1px;background:var(--ink-3)}.h-serif{font-family:var(--serif);font-weight:400;line-height:1.02;letter-spacing:-.025em;color:var(--ink)}.h-serif em{color:var(--red);font-style:italic}.page-grain:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.05 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");opacity:.45;z-index:1;mix-blend-mode:multiply}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.btn-ghost .spinner,.btn-outline .spinner{border-color:rgba(26,26,26,.2);border-top-color:var(--ink)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.rise{animation:rise .7s cubic-bezier(.2,.7,.2,1) backwards}.rise-1{animation-delay:.04s}.rise-2{animation-delay:.13s}.rise-3{animation-delay:.24s}.rise-4{animation-delay:.36s}.rise-5{animation-delay:.48s}.card{background:var(--bg-card);border:1px solid var(--hairline);border-radius:14px;padding:24px}.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:100px;border:1px solid var(--hairline-strong);background:transparent}.pill,.pill.pill-new{color:var(--ink-2)}.pill.pill-contacted{color:#6b5bd4;border-color:#6b5bd4}.pill.pill-qualified{color:var(--amber);border-color:var(--amber)}.pill.pill-proposal{color:#2272d3;border-color:#2272d3}.pill.pill-won{color:var(--green);border-color:var(--green);background:rgba(47,138,79,.06)}.pill.pill-lost{color:var(--ink-3);border-color:var(--hairline)}.table-card{background:#f7f5f0;border:1px solid #5a6c8c;border-radius:4px;overflow:hidden}.ctable{width:100%;border-collapse:collapse;font-family:var(--mono,monospace);font-size:12.5px;color:#1a1a1a}.ctable thead{background:linear-gradient(180deg,#1e3a5f,#163050);color:#fdcb3a}.ctable thead th{text-align:left;padding:7px 12px;font-family:var(--mono,monospace);font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border-right:1px solid #2a4a72;border-bottom:1px solid #0d2240}.ctable thead th:last-child{border-right:none}.ctable tbody tr{background:#f7f5f0;border-bottom:1px solid #e0dbcb;transition:background .08s}.ctable tbody tr:nth-child(2n){background:#ece6d6}.ctable tbody tr:hover{background:#fff5a3}.ctable tbody td{padding:6px 12px;border-right:1px solid #d8d4cb;font-family:var(--mono,monospace);font-size:12.5px;line-height:1.4}.ctable tbody td:last-child{border-right:none}.ctable td.mono{font-family:var(--mono,monospace);font-weight:600}.ctable td a{color:#1e3a5f;border-bottom:1px dotted #5a6c8c}.ctable td a:hover{color:#163050;border-bottom-color:#163050}.ctable td.amount,.ctable td.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ctable td.muted{color:#888}.ctable td.overdue{color:#c33;font-weight:600}.ctable td.paid-amt{color:#1e7a2e;font-weight:600}.ctable .row-action{font-family:var(--mono,monospace);font-size:11px;padding:2px 8px;border-radius:3px;background:#fdcb3a;color:#163050;text-decoration:none;border:1px solid #5a6c8c;border-bottom:none}.ctable .row-action:hover{background:#ffd95e;border-color:#163050}.ctable .pill{font-size:9.5px;padding:1px 6px;border-radius:2px;border:1px solid;letter-spacing:.04em}.busy-report,.ctable .pill{font-family:var(--mono,monospace)}.busy-report{background:#f7f5f0;border:1px solid #5a6c8c;border-radius:4px;overflow:hidden}.busy-report-head{background:#1e3a5f;color:#fdcb3a;padding:10px 16px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.busy-report-head .title{font-family:var(--sans);font-weight:500;font-size:14px;letter-spacing:.02em}.busy-report-head .period{font-family:var(--mono);font-size:11px;opacity:.85}.busy-report table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12.5px}.busy-report thead th{background:#2a4a72;color:#e8eef5;padding:5px 12px;font-size:10px;text-align:left;letter-spacing:.08em;text-transform:uppercase;font-weight:600;border-right:1px solid #3d5f8c;border-bottom:1px solid #0d2240}.busy-report thead th:last-child{border-right:none}.busy-report thead th.num{text-align:right}.busy-report tbody tr{border-bottom:1px solid #e8e3d4}.busy-report tbody tr:hover{background:rgba(253,203,58,.12)}.busy-report tbody td{padding:4px 12px;border-right:1px solid #ece6d6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.busy-report tbody td:last-child{border-right:none}.busy-report tbody td.num{text-align:right}.busy-report tbody td.code{color:#888;font-weight:600;width:64px}.busy-report tbody td.name{color:#1a1a1a}.busy-report tbody td.indent-1{padding-left:28px}.busy-report tbody td.indent-2{padding-left:44px}.busy-report tr.group-head{background:#d8e0f0}.busy-report tr.group-head td{font-weight:600;color:#163050}.busy-report tr.subtotal{background:#e8e3d4}.busy-report tr.subtotal td{font-weight:600;border-top:1px solid #b8b08e;border-bottom:1px solid #b8b08e}.busy-report tr.grand-total{background:#1e3a5f;color:#fdcb3a}.busy-report tr.grand-total td{font-weight:700;padding:8px 12px;font-size:13px;border-right-color:#2a4a72;border-top:2px solid #fdcb3a;border-bottom:2px solid #fdcb3a}.busy-report .footer-bar{background:#1e3a5f;color:rgba(232,238,245,.85);padding:6px 16px;font-size:10.5px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;display:flex;justify-content:space-between}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:1px;gap:1px;background:#5a6c8c;border:1px solid #5a6c8c;border-radius:4px;overflow:hidden;margin-bottom:18px}.metric{background:#f7f5f0;padding:10px 16px;display:flex;flex-direction:column;gap:2px}.metric .m-label{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#5a5a5a}.metric .m-value{font-family:var(--mono);font-size:18px;font-weight:600;color:#163050;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}body.theme-busy{background:#ece6d6;color:#1a1a1a}body.theme-busy .sidebar{background:#163050;border-right:1px solid #0d2240;color:#e8eef5}body.theme-busy .sidebar a,body.theme-busy .sidebar button{color:#e8eef5}body.theme-busy .sidebar .sb-tenant{background:#1e3a5f;border-bottom:1px solid #0d2240;color:#fdcb3a}body.theme-busy .sidebar .sb-user{background:#1e3a5f;border-top:1px solid #0d2240;color:#e8eef5}body.theme-busy .sidebar .sb-nav button[aria-expanded=true]{background:#2a4a72;color:#fdcb3a}body.theme-busy .sidebar .sb-nav a:hover,body.theme-busy .sidebar .sb-nav button:hover{background:rgba(253,203,58,.1)}body.theme-busy .sidebar .sb-sub a.active,body.theme-busy .sidebar .sb-sub a:hover{background:#fdcb3a;color:#163050}body.theme-busy .sidebar .sb-nav .sb-nav-icon{color:#fdcb3a}body.theme-busy .topbar{background:#163050;border-bottom:1px solid #0d2240;color:#e8eef5;-webkit-backdrop-filter:none;backdrop-filter:none}body.theme-busy .topbar input{background:#1e3a5f;border-color:#2a4a72;color:#e8eef5}body.theme-busy .topbar input::placeholder{color:rgba(232,238,245,.55)}body.theme-busy .search-icon{color:rgba(253,203,58,.7)}body.theme-busy .search-kbd{background:#2a4a72;color:#fdcb3a;border-color:#2a4a72}body.theme-busy .topbar .icon-btn{color:#fdcb3a}body.theme-busy .topbar .icon-btn:hover{background:#2a4a72;border-color:#2a4a72}body.theme-busy .app-main{background:#ece6d6}body.theme-busy .app-main:before{display:none}body.theme-busy .dash-tile{background:#f7f5f0;border:1px solid #5a6c8c;border-radius:4px;box-shadow:2px 2px 0 rgba(0,0,0,.05)}body.theme-busy .dash-tile:hover{border-color:#163050;box-shadow:3px 3px 0 rgba(22,48,80,.2);transform:none}body.theme-busy .page-header{margin-bottom:14px}body.theme-busy .page-title{font-family:var(--sans);font-size:22px;font-weight:500;letter-spacing:.01em;color:#163050}body.theme-busy .page-title em{font-style:normal}body.theme-busy .eyebrow{font-family:var(--mono);font-size:10px;color:#5a5a5a;background:#fdcb3a;display:inline-block;padding:2px 6px;border-radius:2px;letter-spacing:.08em}body.theme-busy .page-sub{color:#5a5a5a;font-size:12px;font-family:var(--mono)}body.theme-busy .hub-card{background:#f7f5f0;border:1px solid #5a6c8c;border-radius:4px}body.theme-busy .hub-card:hover{border-color:#163050;background:#fff5a3;transform:none;box-shadow:2px 2px 0 rgba(0,0,0,.08)}body.theme-busy .hub-icon{border-radius:4px;background:#1e3a5f!important;color:#fdcb3a}body.theme-busy .hub-meta{font-family:var(--mono);color:#5a5a5a}body.theme-busy .form-card,body.theme-busy .table-card{background:#f7f5f0;border:1px solid #5a6c8c;border-radius:4px}body.theme-busy .field label,body.theme-busy .form-card label{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#5a5a5a}body.theme-busy .field input,body.theme-busy .field select,body.theme-busy .field textarea,body.theme-busy .form-card input,body.theme-busy .form-card select,body.theme-busy .form-card textarea{background:#ffffcc;border:1px solid #b8b08e;border-radius:2px;padding:5px 8px;font-family:var(--mono);font-size:13px}body.theme-busy .field input:focus,body.theme-busy .field select:focus,body.theme-busy .field textarea:focus,body.theme-busy .form-card input:focus,body.theme-busy .form-card select:focus,body.theme-busy .form-card textarea:focus{background:#fff5a3;border-color:#1e3a5f;outline:none}body.theme-busy .btn-red{background:#fdcb3a;color:#163050;border-color:#fdcb3a;border-radius:3px;font-family:var(--mono);font-weight:600;letter-spacing:.02em}body.theme-busy .btn-red:hover{background:#ffd95e}body.theme-busy .btn-ghost,body.theme-busy .btn-outline{border-color:#5a6c8c;color:#163050;border-radius:3px;font-family:var(--mono)}body.theme-busy .btn-ghost:hover,body.theme-busy .btn-outline:hover{background:rgba(22,48,80,.05)}.print-only{display:none}@media (max-width:768px){.h-serif.page-title,.page-title{font-size:clamp(26px,7vw,36px)!important}.page-header{gap:14px;margin-bottom:20px}.eyebrow{margin-bottom:14px}.metrics{grid-template-columns:repeat(2,1fr)!important}.busy-report,.table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}.busy-report table,.table-card .ctable{min-width:640px}.busy-report .vlink{white-space:nowrap}.lines-table{overflow-x:auto;-webkit-overflow-scrolling:touch}.line-row,.lines-head{min-width:720px}form .field-row.compact-fields:not(.oneline){flex-wrap:wrap}.totals{max-width:none!important}.voucher-band{flex-wrap:wrap;gap:4px}.voucher-body{padding:18px 16px!important}.btn{min-height:40px}}@media (max-width:480px){.metrics{grid-template-columns:1fr!important}.app-content{padding-left:14px!important;padding-right:14px!important}}@media print{.busy-action-panel,.busy-menubar,.no-print,.sidebar-slot,.top-bar,.topbar{display:none!important}.app-body{display:block!important}.app-main{overflow:visible!important}.app-content{padding:0!important}.app-shell,body,html{height:auto!important;overflow:visible!important;background:#fff!important}.report-card,.report-head{box-shadow:none!important}a{color:#000!important;text-decoration:none!important}.print-only{display:block}@page{margin:14mm}.report-card table thead,.report-card table thead tr,table.ctable thead,table.report-table thead{background:#1e3a5f!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-card table thead th,table.ctable thead th,table.report-table thead th{color:#fdcb3a!important;border-color:#0d2240!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-card table tr.grand td,.report-card table tr.subtotal td,.report-card table tr.total td,table tfoot tr.total td,table tr.grand-total td,table.ctable tr.grand td,table.report-table tr.grand td{background:#163050!important;color:#fdcb3a!important;border-top:2px solid #fdcb3a!important;font-weight:700;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-report-head{margin-bottom:16px}.print-report-head .prh-co{font-size:17px;font-weight:700}.print-report-head .prh-period{font-size:12px;color:#555;margin-top:4px}.print-report-head .prh-co,.print-report-head .prh-title{color:#1a1a1a}.print-report-head .prh-title{background:#163050;color:#fdcb3a!important;display:inline-block;padding:6px 14px;border-radius:6px;margin-top:6px;font-size:15px;font-weight:600;-webkit-print-color-adjust:exact;print-color-adjust:exact}}