.form-error[data-v-ba1b6a0c]{margin:14px 0 0;color:var(--red)}.field-error[data-v-ba1b6a0c]{margin:4px 0 0;color:var(--red);font-size:11px;line-height:1.3}.clients-table thead th[data-v-ec10289c]{white-space:normal;overflow:visible;text-overflow:clip}.sum-strip[data-v-ec10289c]{display:flex;gap:0;flex-wrap:wrap;border-top:1.5px solid var(--ink);margin-top:4px;padding:12px 12px 8px}.sum-cell[data-v-ec10289c]{flex:1;min-width:140px}.sum-cell+.sum-cell[data-v-ec10289c]{border-left:1px solid var(--line);padding-left:14px}.form-error[data-v-13b12426]{margin:14px 0 0;color:var(--red)}.pill[data-v-13b12426]{white-space:normal}.np-modal.wide[data-v-13b12426]{max-width:720px}.np-team-head[data-v-13b12426]{display:flex;gap:6px;align-items:center}.np-person[data-v-13b12426]{display:flex;gap:6px;align-items:center;margin-top:6px;padding-left:16px}.np-person select[data-v-13b12426]{flex:1;min-width:0}.np-empty[data-v-13b12426]{margin-top:6px;padding-left:16px}.np-team-head select[data-v-13b12426],.np-person select[data-v-13b12426],.np-team-head input[type=number][data-v-13b12426],.np-person input[type=number][data-v-13b12426]{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13px;background:var(--card)}.np-team-head select[data-v-13b12426]{flex:1}.np-team-head .np-group[data-v-13b12426]{min-width:140px}.np-person input[data-v-13b12426]:disabled{color:var(--muted);background:var(--bg)}.np-lead[data-v-13b12426]{display:flex;align-items:center;gap:4px;font-size:12px;white-space:nowrap}.np-unit[data-v-13b12426]{color:var(--muted);font-size:12px}.np-line[data-v-13b12426]{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.np-line select[data-v-13b12426]{flex:1;min-width:140px}.np-line .np-vat[data-v-13b12426]{flex:none;min-width:0;width:96px}.np-line .np-contract[data-v-13b12426]{width:150px}.np-line select[data-v-13b12426],.np-line input[data-v-13b12426]{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13px;background:var(--card)}.np-line select[data-v-13b12426]:disabled,.np-line input[data-v-13b12426]:disabled{color:var(--muted);background:var(--bg)}.np-line-foot[data-v-13b12426]{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px}.rate-card-error[data-v-71f0646e]{margin:10px 0 0;color:var(--red);font-size:12px}.contract-add[data-v-71f0646e]{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.contract-add input[data-v-71f0646e]{flex:1 1 160px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit}.cycle-picker[data-v-d5f3e444]{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filters-off .field[data-v-d5f3e444]{opacity:.45}.pager[data-v-d5f3e444]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}.pager select[data-v-d5f3e444]{padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);font-family:inherit;font-size:13px}.form-error[data-v-c41199ec]{margin:14px 0 0;color:var(--red)}.pill[data-v-c41199ec]{white-space:normal}.tp-modal[data-v-c41199ec]{max-width:680px}.tp-person[data-v-c41199ec]{display:flex;gap:6px;align-items:center;margin-top:6px}.tp-person select[data-v-c41199ec]{flex:1;min-width:0}.tp-person select[data-v-c41199ec],.tp-person input[type=number][data-v-c41199ec]{padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13px;background:var(--card)}.tp-person input[data-v-c41199ec]:disabled{color:var(--muted);background:var(--bg)}.tp-lead[data-v-c41199ec]{display:flex;align-items:center;gap:4px;font-size:12px;white-space:nowrap}.tp-unit[data-v-c41199ec]{color:var(--muted);font-size:12px}.tp-dept[data-v-c41199ec]{display:flex;gap:6px;align-items:center;margin-top:12px}.tp-dept-title[data-v-c41199ec]{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;font-weight:600;background:var(--bg)}.tp-dept-share[data-v-c41199ec]{flex:none;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px;color:var(--muted);background:var(--bg);white-space:nowrap}.tp-indent[data-v-c41199ec]{padding-left:16px}.tp-foot[data-v-c41199ec]{display:flex;align-items:center;gap:10px;margin-top:8px}.funds-head[data-v-6d3545a2]{display:flex;align-items:center;gap:8px}.funds-head .btn[data-v-6d3545a2]{margin-left:auto}.funds-input[data-v-6d3545a2]{width:80px;padding:6px 8px;border:1px solid var(--line);border-radius:8px;font:inherit;text-align:right;background:var(--card)}.project-topline[data-v-6d3545a2]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.project-topline .back[data-v-6d3545a2]{margin-bottom:0}.project-edit[data-v-6d3545a2]{flex:none}.tsm.crit[data-v-6d3545a2]{color:var(--red)}.step-error[data-v-6d3545a2]{margin:12px 0 0;color:var(--red);font-size:12.5px}.team-edit[data-v-6d3545a2]{width:24px;height:24px;margin-left:6px;vertical-align:middle;display:inline-flex}.team-edit svg[data-v-6d3545a2]{width:12px;height:12px}.project-delete[data-v-6d3545a2]{margin-top:24px;display:flex;justify-content:flex-end}.btn.danger[data-v-6d3545a2]{background:var(--red);border-color:var(--red);color:#fff}.btn.ghost.danger[data-v-6d3545a2]{background:transparent;color:var(--red)}.pc-modal[data-v-54651387]{max-width:1100px;width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}.planning-work-table[data-v-8649845a]{margin-bottom:16px}.week-table .plan-emp .tsm[data-v-8649845a]{font-weight:400}.note.error[data-v-8649845a]{color:var(--red)}.week-table .plan-item-link[data-v-8649845a]{all:unset;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;height:34px;min-height:34px;font-size:11px;line-height:1.3;overflow:hidden;cursor:pointer;border-radius:6px}.week-table .plan-item-link[data-v-8649845a]:hover{background:var(--accent-soft)}.week-table .plan-item-link strong[data-v-8649845a],.week-table .plan-item-link .tsm[data-v-8649845a]{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-table .plan-add[data-v-8649845a]{display:inline-block;margin-top:6px}.week-table td.menu-on[data-v-8649845a]{z-index:6}.week-table .period-head[data-v-8649845a],.week-table .period-cell[data-v-8649845a]{border-left:2px solid var(--line)}.give-modal[data-v-8649845a]{max-width:520px}.add-menu[data-v-8649845a]{position:relative}.add-menu-pop[data-v-8649845a]{display:none;position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:200px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 16px 44px #00000029}.add-menu-pop.on[data-v-8649845a]{display:block}.add-menu-pop.row-pop[data-v-8649845a]{right:auto;left:0}.add-menu-pop button[data-v-8649845a]{all:unset;box-sizing:border-box;display:block;width:100%;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600}.add-menu-pop button[data-v-8649845a]:hover{background:var(--bg)}.form-error[data-v-cb729534]{margin:0 0 10px;color:var(--red);font-size:12px}.employee-form[data-v-99096f33]{max-width:560px}.employee-form .freelancer-form[data-v-99096f33]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media (max-width: 560px){.employee-form .freelancer-form[data-v-99096f33]{grid-template-columns:1fr}}.form-error[data-v-99096f33]{margin:14px 0 0;color:var(--red)}.field-error[data-v-99096f33]{margin:4px 0 0;color:var(--red);font-size:11px;line-height:1.3}.employees-table thead th[data-v-c0e1f865]{white-space:normal;overflow:visible;text-overflow:clip}.employees-table .row-actions[data-v-c0e1f865]{white-space:nowrap}.profile-card[data-v-0b8ca189]{max-width:820px}.profile-actions[data-v-0b8ca189]{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.story[data-v-0b8ca189]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.form-error[data-v-0b8ca189]{margin:10px 0 0;color:var(--red);font-size:12px}.form-error[data-v-37ad0ba7],.form-error[data-v-d8425e03]{margin:14px 0 0;color:var(--red)}.modal-actions .danger[data-v-d8425e03]{margin-right:auto;color:var(--red)}.purchases-note[data-v-d09cdcad]{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.form-error[data-v-d09cdcad],.form-error[data-v-326c05b9]{margin:14px 0 0;color:var(--red)}.cashflow-view .click[data-v-a6040e2f]{cursor:pointer}.cashflow-view .click[data-v-a6040e2f]:hover{text-decoration:underline}.login-page[data-v-2fb1d54f]{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card[data-v-2fb1d54f]{width:100%;max-width:380px;padding:26px;border-top:0}.login-card .brand[data-v-2fb1d54f]{padding:0 0 18px}.login-error[data-v-2fb1d54f]{margin:12px 0 0;color:var(--red);font-size:13px}.login-submit[data-v-2fb1d54f]{margin-top:18px;width:100%;justify-content:center}.platform-page[data-v-781914e8]{max-width:1040px;margin:0 auto;padding:20px 24px 60px}.platform-top[data-v-781914e8]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:24px}.platform-top .brand[data-v-781914e8]{padding:0}.platform-account[data-v-781914e8]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vat-row[data-v-781914e8]{display:flex;gap:8px}.vat-cell[data-v-781914e8]{display:inline-flex;gap:4px;align-items:center;white-space:nowrap}.vat-cell input[data-v-781914e8]{width:56px}.field-error[data-v-781914e8]{margin:6px 0 0;color:var(--red);font-size:12px}:root{--bg:#f2f3f5;--card:#fff;--ink:#0a0b0f;--muted:#5b6472;--muted2:#8e97a5;--line:#e2e5ea;--line-strong:#0a0b0f;--accent:#3b28ff;--accent-soft:#ecebff;--green:#0a8f45;--green-bg:#e4f6ec;--amber:#b06f00;--amber-bg:#fdf1dc;--red:#d12a2a;--red-bg:#fdeaea;--blue:#1b4dff;--blue-bg:#e7ecff;--radius:14px}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Arial,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.01em}.num,.val,.pv{font-variant-numeric:tabular-nums}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.side{display:flex;flex-direction:column;background:var(--card);border-right:1px solid var(--line);padding:22px 16px;position:sticky;top:0;height:100vh;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;letter-spacing:-.3px;padding:0 8px 18px}.brand .dot{width:26px;height:26px;border-radius:8px;background:var(--ink);display:grid;place-items:center;color:#fff;font-size:12px;font-weight:800}.navlbl{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted2);padding:14px 10px 6px}.nav{display:flex;flex-direction:column;gap:2px}.nav button{all:unset;display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;cursor:pointer;color:var(--muted);font-weight:500}.nav button:hover{background:var(--bg)}.nav button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav button .i{width:18px;text-align:center}.side-footer{display:flex;align-items:center;gap:9px;margin-top:auto;padding:14px 8px 0;border-top:1px solid var(--line);font-size:12px}.side-footer .user{display:flex;flex-direction:column;min-width:0;flex:1}.side-footer .user strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-footer .user span{color:var(--muted);font-size:11px}.side-footer form{margin:0}.mobile-topbar{display:none}.main{padding:26px 34px 60px;min-width:0;width:100%}.top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.top-actions{display:flex;align-items:center;gap:8px;margin-left:auto;position:relative}.news-bell{all:unset;cursor:pointer;position:relative;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:18px;line-height:1}.news-bell:hover{border-color:var(--accent)}.news-bell-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--red);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;line-height:1;box-sizing:border-box}.news-bell-badge[hidden]{display:none!important}.news-modal{max-width:420px;width:100%}.news-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.news-modal-head h3{margin:0;font-size:18px}.news-modal-close{all:unset;cursor:pointer;width:32px;height:32px;display:grid;place-items:center;border-radius:8px;font-size:20px;line-height:1;color:var(--muted)}.news-modal-close:hover{background:var(--bg);color:var(--ink)}.news-modal-list{max-height:min(60vh,420px);overflow:auto}.h1{font-size:30px;font-weight:800;letter-spacing:-1.1px;margin:0}.h1-brand{display:block}.h1-proj{display:block;font-size:18px;font-weight:700;letter-spacing:-.4px;margin-top:4px;line-height:1.25}.sub{color:var(--muted);margin:3px 0 0;font-size:13.5px}.search{display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px 12px;min-width:210px}.search input{all:unset;flex:1;font-size:13.5px}.filters{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.filters-count{font-size:13px;color:var(--muted)}.filters-spacer{margin-left:auto}.project-list-section{width:100%}.project-list-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.project-list-head .filters,.project-list-head .planning-filters{margin-bottom:0;flex:1;min-width:0}.filters select{padding:8px 12px;border:1px solid var(--line);border-radius:10px;font-size:13px;background:var(--card);font-family:inherit;color:var(--ink)}.grid{display:grid;gap:14px}.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,1fr)}.g5{grid-template-columns:repeat(5,1fr)}.g6{grid-template-columns:repeat(6,1fr)}.project-head{display:block}.project-head-status{display:grid;gap:14px}.project-roadmap{overflow-x:auto}.project-roadmap .chain{min-width:840px;margin-top:8px}.project-roadmap .step{min-width:108px}.project-roadmap .step.action{cursor:pointer}.project-roadmap .step.action:hover .dt{border-color:var(--accent)}.check-item{display:flex;align-items:flex-start;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px;cursor:pointer}.check-item:last-child{border-bottom:0}.check-item input{margin-top:3px;flex-shrink:0}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.card{background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:none;transition:border-color .12s}.card.kpi:hover{border-color:#c9cdd6}.kpi-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}.kpi-link:hover{border-color:var(--accent)!important}.kpi-link:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px;border-color:var(--accent)!important}.cycle-link{all:unset;display:block;width:100%;box-sizing:border-box;cursor:pointer;border-radius:9px;padding:6px}.cycle-link:hover{background:var(--accent-soft)}.cycle-link:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.kpi .lbl{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.kpi .val{font-size:28px;font-weight:800;letter-spacing:-1px;margin-top:4px}.kpi .val.sm{font-size:18px}.kpi .hint{color:var(--muted);font-size:11.5px;margin-top:3px}.sec{margin-top:24px}.sec-h{display:flex;align-items:center;justify-content:space-between;margin:0 2px 12px}.sec-h h2{font-size:16px;font-weight:800;margin:0;letter-spacing:-.4px;flex:0 0 auto}.bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:8px}.bar>i{display:block;height:100%;border-radius:99px;background:var(--accent)}table{width:100%;border-collapse:collapse;font-size:13px}thead th{text-align:left;color:var(--muted);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.6px;padding:0 12px 10px;border-bottom:1.5px solid var(--ink)}.clients-table{table-layout:fixed}.clients-table th,.clients-table td{overflow:hidden;text-overflow:ellipsis}.clients-table th:nth-child(1),.clients-table td:nth-child(1){width:22%}.clients-table th:nth-child(2),.clients-table td:nth-child(2){width:11%;white-space:nowrap}.clients-table th:nth-child(3),.clients-table td:nth-child(3){width:12%;white-space:nowrap}.clients-table th:nth-child(4),.clients-table td:nth-child(4){width:10%;white-space:nowrap}.clients-table th:nth-child(5),.clients-table td:nth-child(5){width:15%;white-space:nowrap}.clients-table th:nth-child(6),.clients-table td:nth-child(6){width:15%;white-space:nowrap}.clients-table th:nth-child(7),.clients-table td:nth-child(7){width:15%;white-space:nowrap}tbody td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tfoot td{border-top:1.5px solid var(--ink);padding:11px 12px;vertical-align:top;font-size:12.5px}.tsm{font-size:10.5px;color:var(--muted);font-weight:400;margin-top:3px;line-height:1.4}tbody tr.click{cursor:pointer}tbody tr.click:hover{background:var(--bg)}.num{text-align:right;font-variant-numeric:tabular-nums}.pill{display:inline-block;font-size:11px;font-weight:600;padding:3px 9px;border-radius:99px;background:var(--bg);color:var(--muted)}.pill.green{background:var(--green-bg);color:var(--green)}.pill.amber{background:var(--amber-bg);color:var(--amber)}.pill.red{background:var(--red-bg);color:var(--red)}.pill.blue{background:var(--blue-bg);color:var(--blue)}.pill.with-icon{display:inline-flex;align-items:center;gap:4px;vertical-align:middle}.pill-warn{flex:0 0 auto;width:12px;height:12px}.crit{color:var(--red);font-weight:600}.crit.with-icon{display:inline-flex;align-items:center;gap:4px;vertical-align:middle}.btn{all:unset;box-sizing:border-box;cursor:pointer;background:var(--ink);color:#fff;font-weight:700;font-size:13px;padding:9px 16px;border-radius:10px;display:inline-flex;align-items:center;gap:7px;letter-spacing:-.2px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.ghost{background:var(--card);color:var(--ink);border:1.5px solid var(--line)}.btn.sm{padding:6px 11px;font-size:12px}.btn.icon{width:30px;height:30px;padding:0;justify-content:center;gap:0}.btn.icon svg{width:14px;height:14px;display:block}.row-actions{display:inline-flex;gap:4px;align-items:center;justify-content:flex-end}.back{all:unset;cursor:pointer;color:var(--muted);font-size:13px;font-weight:600;margin-bottom:12px;display:inline-flex;gap:6px}.mini{height:6px;border-radius:99px;background:var(--line);overflow:hidden;width:100px;display:inline-block;vertical-align:middle}.mini>i{display:block;height:100%;background:var(--accent)}.note{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:11px 13px;color:var(--muted);font-size:12.5px}.av{width:32px;height:32px;border-radius:9px;background:var(--accent-soft);color:var(--accent);display:inline-grid;place-items:center;font-weight:700;font-size:11px}.kv{display:grid;grid-template-columns:auto 1fr;gap:9px 18px;font-size:13px}.kv .k{color:var(--muted)}.kv .v{text-align:right;font-weight:600}.tag{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:1px 6px}.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:14px;align-items:start}.split>*{min-width:0}.split.dash-split{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.dash-split-main,.dash-split-wide{grid-column:1/-1}.feed{max-height:560px;overflow:auto}.bar.close-scale{position:relative;background:linear-gradient(to right,var(--red) 0%,var(--red) 22%,#ffcc22 38%,#ffcc22 80%,var(--green) 94%,var(--green) 100%)}.bar.close-scale>i{position:absolute;top:0;right:0;bottom:0;height:auto;width:calc(100% - var(--pct,0%));border-radius:99px;background:var(--line)}.close-scale-meta{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:6px;margin-bottom:2px;font-size:17px;color:var(--muted)}.close-scale-meta .pct{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}.close-scale-meta .amt{text-align:right;font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.close-scale-meta .pct .amt{text-align:left}.close-scale-meta .amt b{color:var(--ink);font-weight:800}.kpi.c{padding:12px 13px}.kpi.c .val{font-size:19px;margin-top:2px}.kpi.c .lbl{font-size:11px}.kpi.c .hint{font-size:10.5px;margin-top:2px}@media (max-width:1100px){.split{grid-template-columns:1fr}.split.dash-split .dash-split-main,.split.dash-split .dash-split-wide{grid-column:1/-1}}.pair{display:grid;grid-template-columns:1fr 1fr;margin-top:4px;align-items:center}.pair>div{position:relative}.pair>div:first-child{padding-right:16px}.pair>div+div{padding-left:16px;border-left:1px solid var(--line)}.pair>.cycle-link{position:relative}.pair>.cycle-link+.cycle-link{padding-left:12px;border-left:1px solid var(--line)}.pair .pv{font-size:19px;font-weight:700;letter-spacing:-.5px}.pair .pk{font-size:11px;color:var(--muted);font-weight:600;margin-top:1px}.rule{display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:2px 9px;margin-left:6px;white-space:nowrap;-webkit-user-select:none;user-select:none}.rule:hover{filter:brightness(.96)}.rule.gap{color:var(--red);background:var(--red-bg)}.rulenote{display:flex;align-items:flex-start;gap:9px;flex-wrap:wrap;cursor:pointer;font-size:15px;font-weight:700;letter-spacing:-.4px;color:var(--ink);border-left:4px solid var(--accent);background:linear-gradient(90deg,var(--accent-soft),transparent 70%);border-radius:0 10px 10px 0;padding:11px 14px;margin:10px 0 14px}.rulenote:hover{background:linear-gradient(90deg,var(--accent-soft),transparent 45%)}.rulenote .rn-mark{color:var(--accent);font-weight:800;font-size:16px}.rulenote .rn-s{flex:1;min-width:200px;display:flex;flex-direction:column;gap:1px}.rulenote .rn-prefix{font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.55px;color:var(--accent);font-weight:800}.rulenote .rn-topic{font-size:15px;line-height:1.35;color:var(--ink);font-weight:700}.rulenote .rn-more{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--accent);opacity:.75;padding-top:14px}.rulenote .rn-full{flex-basis:100%;font-size:12.5px;font-weight:400;line-height:1.65;color:#4a4a4a;letter-spacing:0;margin-top:6px}.rulenote.gap{border-left-color:var(--red);background:linear-gradient(90deg,var(--red-bg),transparent 70%)}.rulenote.gap .rn-mark,.rulenote.gap .rn-more{color:var(--red)}.rulenote.gap .rn-s{display:block}.rulenote.gap .rn-more{padding-top:0}.rulenote.gap .rn-full{color:#8a2b2b}.rule{font-size:12px}.rulebox{background:var(--accent-soft);border:1px solid #d4d4d1;border-radius:10px;padding:10px 12px;margin:8px 0 0;font-size:12.5px;line-height:1.6;color:#4a4a4a}.rulebox.gap{background:var(--red-bg);border-color:#cfcfcb;color:#8a2b2b}.rulebox b{font-weight:700}.src{display:none;cursor:help;color:var(--red);font-weight:800;margin-left:5px;font-size:10.5px;line-height:1;border:1.5px solid var(--red);border-radius:99px;padding:1px 6px;background:var(--red-bg);vertical-align:2px}body.dev .src{display:inline-block}.notif{display:flex;align-items:flex-start;gap:12px;padding:11px 4px;border-bottom:1px solid var(--line)}.notif:last-child{border-bottom:0}.notif .ic{width:32px;height:32px;border-radius:9px;background:var(--bg);display:grid;place-items:center;font-size:15px}.notif .tx{flex:1;font-size:13px}.notif .nt{display:block;margin-bottom:2px;font-size:13px}.notif .nx{line-height:1.45}.notif .dt{color:var(--muted);font-size:12px;white-space:nowrap;padding-top:1px}.ag-member{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px dashed var(--line);font-size:13px}.ag-member:last-child{border-bottom:0}.team{border:1px solid var(--line);border-radius:12px;padding:15px;background:var(--card);min-width:0}button.team.kpi-link{display:block;width:100%;box-sizing:border-box;transition:border-color .12s}.team .thd{display:flex;justify-content:space-between;align-items:flex-start}.team .load{font-size:20px;font-weight:700}.trow{display:flex;justify-content:space-between;font-size:12.5px;padding:4px 0;border-bottom:1px dashed var(--line)}.trow:last-of-type{border-bottom:0}.fund-summary{padding:15px;text-align:left}.fund-summary .fund-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;font-size:14px;font-weight:800}.fund-summary .fund-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px dashed var(--line);font-size:12px}.fund-summary .fund-row:last-child{border-bottom:0;padding-bottom:0}.fund-summary .fund-row span{color:var(--muted)}.fund-summary .fund-row b{text-align:right;font-variant-numeric:tabular-nums}.fund-list{display:grid;gap:22px}.fund-block .sec-h{margin-bottom:10px;justify-content:flex-start;gap:8px}.fund-split{display:grid;grid-template-columns:minmax(180px,1fr) 2fr;gap:14px;align-items:stretch}.fund-summary.gap{background:var(--red-bg);border-color:#cfcfcb}.fund-summary.safe .fund-ending{color:var(--green)}.fund-summary.gap .fund-ending{color:var(--red)}.fund-adjustment-form{display:grid;grid-template-columns:160px 160px minmax(220px,1fr) auto;gap:10px;align-items:end}.fund-adjustment-form .field{margin:0}.focus{display:flex;align-items:flex-start;gap:6px;background:#fff;color:var(--red);border-radius:8px;padding:8px 0 0;font-size:12px;line-height:1.35;margin:10px 0 0}.focus-icon{flex:0 0 auto;width:14px;height:14px;margin-top:1px}.manifest{font-size:clamp(26px,3.4vw,42px);font-weight:800;letter-spacing:-1.6px;line-height:1.08;margin:6px 0 22px;max-width:22ch;cursor:pointer}.manifest b{color:var(--accent)}.hour-row{padding:10px 0;border-bottom:1px solid var(--line)}.hour-row:last-child{border-bottom:0}.hour-row-h{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:6px}.hour-row-h span{color:var(--muted);white-space:nowrap}.signed-head{justify-content:flex-start;gap:10px;position:relative}.signed-head>:not(h2){flex:0 1 auto;margin-left:0}.dash-filter-head{margin-bottom:10px}.dash-filter-head h2{min-width:9.5rem}.dash-filter-tabs{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.period-picker{position:relative}.period-trigger{all:unset;display:inline-flex;align-items:center;gap:7px;cursor:pointer;background:var(--ink);color:#fff;border-radius:8px;padding:5px 10px;font-weight:700;font-size:12px;letter-spacing:-.2px}.period-trigger:hover{background:#25272d}.period-trigger .chev{font-size:10px;opacity:.7}.period-popover{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:40;width:300px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;box-shadow:0 16px 44px #00000029}.period-popover.on{display:block}.period-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-bottom:10px}.period-actions{display:flex;gap:8px;align-items:center}.period-fields label{min-width:0;display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:11px;font-weight:600}.period-fields input{box-sizing:border-box;width:100%;min-width:0;padding:8px 6px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit}.project-summary{display:flex;gap:8px 28px;flex-wrap:wrap;margin-top:12px;padding:14px 18px;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius);color:var(--muted);font-size:13px;line-height:1.45}.project-totals{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1.5px solid var(--ink);margin-top:4px;padding:12px 12px 8px}.project-total{min-width:0;padding:0 12px;border-left:1px solid var(--line)}.project-total:first-child{border-left:0;padding-left:0}.project-total .lbl{height:30px;display:flex;align-items:flex-start;line-height:1.2;color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.project-total .val{font-size:18px;font-weight:800;line-height:1.15;letter-spacing:-.45px;margin-top:5px;white-space:nowrap}.project-total .hint{color:var(--muted);font-size:10.5px;line-height:1.25;margin-top:4px;min-height:14px}.project-total-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border-top:0;border-right:0;border-bottom:0;font:inherit;color:inherit;text-align:left;cursor:pointer;width:100%}.project-total-link:hover{background:var(--accent-soft);border-radius:10px}.project-total-link:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px;border-radius:10px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14161c6b;display:none;place-items:center;z-index:50;padding:20px}.overlay.on{display:grid}.modal{background:var(--card);border-radius:16px;width:100%;max-width:460px;padding:22px;box-shadow:0 20px 60px #0003;max-height:90vh;overflow:auto}.modal.wide{max-width:640px}.modal h3{margin:0 0 4px;font-size:18px}.modal-x{all:unset;float:right;margin:-6px -6px 0 12px;cursor:pointer;width:32px;height:32px;display:grid;place-items:center;border-radius:8px;font-size:20px;line-height:1;color:var(--muted)}.modal-x:hover{background:var(--bg);color:var(--ink)}.modal-x:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 12px}.modal-head h3{margin:0;flex:1}.modal-head .modal-x{float:none;margin:0;flex-shrink:0}.np-appendix-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.np-appendix-row .field{margin-top:10px}.np-appendix-signed{display:flex;align-items:center;gap:8px;height:42px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.np-appendix-signed input{margin:0;flex-shrink:0}.np-calc-box{color:var(--ink)}.np-calc-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}.np-calc-box h4{margin:0 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted2)}.np-calc-box .kv{gap:6px 12px}.np-calc-box .kv .v.total{font-weight:800;color:var(--ink)}@media (max-width:560px){.np-calc-cols{grid-template-columns:1fr}}.np-stage-card{border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:8px}.np-stage-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.np-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px dashed var(--line);font-size:12.5px}.np-item:last-child{border-bottom:0}.stage-card{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin-top:10px}.stage-card.focused{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.stage-card .stage-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.project-stage-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.project-stage-node{all:unset;box-sizing:border-box;cursor:pointer;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--bg);display:grid;gap:4px}.project-stage-node:hover,.project-stage-node:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.project-stage-node.done{border-color:#b8ddc7;background:var(--green-bg)}.project-stage-node.current{box-shadow:inset 3px 0 0 var(--accent)}.stage-works{margin-top:10px}.stage-works .check-item{cursor:default}.stage-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.field{margin-top:13px}.field label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-size:14px;background:var(--card);font-family:inherit}.chain{display:flex;align-items:flex-start;margin-top:6px}.step{flex:1;min-width:96px;position:relative;text-align:center;padding:0 4px}.step:before{content:"";position:absolute;left:-50%;right:50%;top:11px;height:2.5px;background:var(--line);z-index:0}.step:first-child:before{display:none}.step.done:before{background:var(--green)}.step .dt{position:relative;z-index:1;width:24px;height:24px;border-radius:99px;margin:0 auto;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--card);color:var(--muted2);border:2.5px solid var(--line)}.step.done .dt{background:var(--green);color:#fff;border-color:var(--green)}.step.now .dt{background:var(--amber-bg);color:var(--amber);border-color:var(--amber)}.step .tt{font-size:11.5px;font-weight:700;margin-top:7px;letter-spacing:-.2px}.step .ss{font-size:10.5px;color:var(--muted);margin-top:1px}.step.now .tt{color:var(--amber)}.step:not(.done):not(.now) .tt{color:var(--muted2)}.drop{border:1.5px dashed #c9cdd6;border-radius:10px;padding:16px;text-align:center;color:var(--muted);font-size:12.5px;cursor:pointer;margin-top:10px;transition:border-color .12s,background .12s}.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.docrow{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:10px;padding:8px 11px;margin-top:8px;font-size:12.5px}.docrow .dn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.role-footer{display:block;padding:12px 8px 0}.role-menu{position:relative}.side-footer .role-person{all:unset;display:flex;align-items:center;gap:9px;box-sizing:border-box;width:100%;height:auto;margin:0;padding:8px;border-radius:10px;cursor:pointer;color:inherit;font:inherit;text-align:left}.side-footer .role-person:hover,.side-footer .role-person[aria-expanded=true]{background:var(--bg)}.role-popover{display:none;position:absolute;left:0;right:0;bottom:calc(100% + 6px);z-index:30;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 16px 44px #00000029}.role-popover.on{display:block}.side-footer .role-popover button{all:unset;display:block;width:100%;height:auto;box-sizing:border-box;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;color:inherit;text-align:left}.side-footer .role-popover button:hover{background:var(--bg)}.side-footer .role-popover button.on{background:var(--accent-soft);color:var(--accent)}.side-footer .role-popover .role-logout{color:var(--muted);font-weight:500;border-top:1px solid var(--line);margin-top:4px;padding-top:10px}.role-popover-label{padding:6px 10px 4px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;color:var(--muted)}.side-footer .role-popover .role-console{color:var(--muted);font-weight:500}.side-footer .role-popover button:disabled{opacity:.5;cursor:progress}.role-error{margin:4px 10px;font-size:12px;color:var(--red)}.side-footer .user .role-agency{display:block;font-size:11px;color:var(--muted)}.toolbar{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-bottom:14px}.toolbar .field{margin-top:0;min-width:150px;flex:1}.toolbar .field.compact{min-width:110px;max-width:160px}.table-scroll{overflow:auto}.planning-work-table{padding:0!important}.planning-work-table .week-table{min-width:100%}.planning-work-table .week-table thead th{padding-top:6px}.week-table{width:max-content;min-width:0;table-layout:fixed}.week-table col.col-spec{width:155px}.week-table col.col-proj{width:140px}.week-table th:nth-child(1),.week-table td:nth-child(1){width:155px;position:sticky;left:0;background:var(--card);z-index:3}.week-table th:nth-child(2),.week-table td:nth-child(2){width:140px;position:sticky;left:155px;background:var(--card);z-index:2;text-align:left}.week-table col.col-hour{width:40px}.week-table th.day-head{text-align:center;padding:0 0 10px}.week-table td.hour-cell{width:40px;padding:8px 0!important;vertical-align:top;text-align:center;background:var(--card)}.week-table .plan-list{display:flex;flex-direction:column;gap:6px}.week-table .plan-item{display:flex;flex-direction:column;justify-content:center;height:34px;min-height:34px;font-size:11px;line-height:1.3;overflow:hidden}.week-table .plan-item strong,.week-table .plan-item .tsm{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-table .plan-item strong{font-size:11px}.week-table .hours-only{display:flex;flex-direction:column;gap:6px}.week-table .hour-val{display:flex;align-items:center;justify-content:center;height:34px;min-height:34px;font-size:10.5px;line-height:1;font-variant-numeric:tabular-nums}.week-table button.hour-val{all:unset;box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:center;height:34px;min-height:34px;font-size:10.5px;line-height:1;font-variant-numeric:tabular-nums;cursor:pointer}.week-table button.hour-val:hover{background:var(--accent-soft);border-radius:6px}.week-table .hour-edit{width:100%;height:34px;border:1px solid var(--accent);border-radius:6px;text-align:center;font-size:10.5px;font-variant-numeric:tabular-nums;background:var(--card);font-family:inherit;padding:0}.week-table .hour-plan .hour-val:not(.empty){color:var(--accent);font-weight:600}.week-table .hour-fact .hour-val:not(.empty){font-weight:600}.week-table .hour-fact .hour-val.fact-under{color:var(--green)}.week-table .hour-fact .hour-val.fact-over{color:var(--red)}.week-table .hour-val.empty{color:var(--muted2);font-weight:400;padding:0}.week-table tr.employee-day-total td{border-top:1px solid var(--line)}.week-table tr.employee-day-total td:first-child{width:140px;position:sticky;left:155px;background:var(--card);z-index:2;text-align:left;vertical-align:middle}.week-table tr.employee-day-total .plan-total-label{display:flex;align-items:center;height:34px;color:var(--muted);font-size:11px;font-weight:700}.week-table tr.employee-day-total .hour-val:not(.empty){font-weight:700}.week-table tr.employee-day-total td.hour-cell{position:static;left:auto;z-index:auto;width:40px;text-align:center;vertical-align:middle;padding:6px 0!important}.week-table th.weekend,.week-table td.hour-cell.weekend{background:#eef0f3}.week-table td.hour-cell.weekend{color:var(--muted)}.week-table td.hour-cell.hour-absence{vertical-align:middle;background:var(--amber-bg);width:80px}.week-table .absence-mark{display:flex;align-items:center;justify-content:center;gap:2px;min-height:68px;padding:0 2px}.week-table .absence-mark .absence-label{all:unset;cursor:pointer;font-size:10px;font-weight:700;color:var(--amber)}.week-table .absence-mark .absence-x{all:unset;cursor:pointer;font-size:13px;line-height:1;color:var(--muted);padding:2px 4px}.week-table .absence-mark .absence-x:hover{color:var(--red)}.plan-emp{display:flex;align-items:center;gap:4px}.plan-emp .btn.sm{padding:0 7px;min-width:22px;height:22px}.absence-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.absence-list-row{display:flex;align-items:center;gap:8px}.absence-list-item{all:unset;flex:1;cursor:pointer;padding:4px 0}.absence-list-item span{display:block;font-size:12px;color:var(--muted);margin-top:2px}.hours-block{border-radius:7px;background:var(--accent-soft);color:var(--accent);padding:4px 6px;margin-top:4px;font-size:10.5px;line-height:1.3}.hours-block.fact{background:var(--green-bg);color:var(--green)}.hours-block.over{background:var(--red-bg);color:var(--red)}.planning-filters{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:14px;overflow:visible}.planning-filters .field{margin:0;min-width:190px;flex:0 1 190px}.planning-filters .field:has(.period-picker){position:relative;overflow:visible;z-index:5}.planning-filters .field .period-picker{width:100%}.planning-filters .field select,.planning-filters .field .period-trigger{box-sizing:border-box;width:100%;height:42px;min-height:42px;padding:0 12px;border-radius:10px;font-size:14px;font-family:inherit}.planning-filters .field .period-trigger{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:42px;min-height:42px;padding:0 12px;border-radius:10px;font-size:14px;line-height:1;background:var(--card);color:var(--ink);border:1px solid var(--line);font-weight:400;letter-spacing:0;cursor:pointer;font-family:inherit}.planning-filters .field .period-trigger:hover{background:var(--bg)}.planning-filters .field .period-trigger .period-trigger-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-filters .field .period-trigger .chev{flex-shrink:0;color:var(--muted);opacity:1;font-size:10px;line-height:1}.department-row td{background:var(--bg)!important;color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:8px 12px!important}.client-hours{border:1px solid var(--line);border-radius:8px;padding:6px;margin-top:5px;background:var(--card);font-size:10.5px;line-height:1.35}.client-hours strong{display:block;color:var(--ink);font-size:11px}.client-hours .proj{display:block;color:var(--muted);margin:1px 0 5px}.client-hours.green{border-color:#c6c6c2;background:var(--green-bg)}.client-hours.red{border-color:#f2c4c4;background:var(--red-bg)}.client-hours.blue{border-color:#cbd7f8;background:var(--blue-bg)}.resource-meter{height:7px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:6px}.resource-meter i{display:block;height:100%;border-radius:99px;background:var(--green)}.resource-meter.over i{background:var(--red)}.client-resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.cashflow-summary td{background:var(--bg);vertical-align:middle}.cashflow-summary .cashflow-breakdown{color:var(--muted);font-size:11.5px;text-align:right}.cashflow-summary .cashflow-net{font-size:16px;white-space:nowrap}.payout-table{min-width:1120px;table-layout:fixed}.payout-table col.payee{width:180px}.payout-table col.basis{width:190px}.payout-table col.fixed,.payout-table col.forecast,.payout-table col.shares,.payout-table col.correction{width:105px}.payout-table col.total{width:120px}.payout-table col.date{width:105px}.payout-table col.state{width:165px}.payout-table-free{min-width:720px}.payout-table-free col.payee{width:200px}.payout-table-free col.basis{width:240px}.payout-table-free col.total,.payout-table-free col.date{width:120px}.payout-table-free col.state{width:165px}.payout-status-select{width:100%;padding:6px 8px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;font-size:12px}.freelancer-form{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px 12px;align-items:start}.freelancer-form .field{margin:0;display:flex;flex-direction:column;min-width:0}.freelancer-form .field label{min-height:2.6em;line-height:1.3;display:flex;align-items:flex-start}.freelancer-form .wide{grid-column:span 2}.freelancer-form .full{grid-column:1/-1}.freelancer-form-actions{grid-column:1/-1;display:flex;justify-content:flex-start}.freelancer-form-actions .btn{width:max-content}.form-section{margin-top:16px}.form-section:first-child{margin-top:0}.form-section-title{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted2);margin-bottom:6px;min-height:1.2em;line-height:1.2}.form-section .freelancer-form{margin-top:0}.freelancer-form [hidden],.form-section[hidden]{display:none!important}.partner-contact-row{border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:8px}.partner-contact-row .freelancer-form{margin-top:0}.partner-contact-row .btn{margin-top:8px}.freelancer-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.survey-option-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;padding:10px 0;border-bottom:1px solid var(--line)}.survey-option-row:last-child{border-bottom:0}.survey-option-fields{display:grid;grid-template-columns:1fr 140px;gap:10px;align-items:end;flex:1}.survey-concept-preview{width:100%;height:88px;border-radius:10px;border:1px solid var(--line);object-fit:cover;background:var(--bg);display:block}.survey-concept-upload{display:flex;flex-direction:column;gap:6px}.survey-concept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.survey-concept-card{border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--bg)}.survey-concept-card img{width:100%;height:120px;object-fit:cover;border-radius:8px;display:block;margin-bottom:8px;background:var(--card)}.survey-concept-card .hour-row-h{margin-bottom:6px}@media (max-width:700px){.survey-option-fields{grid-template-columns:1fr}}@media (max-width:900px){.client-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.freelancer-form,.freelancer-stats{grid-template-columns:1fr 1fr}}@media (max-width:560px){.client-resource-grid,.freelancer-form,.freelancer-stats{grid-template-columns:1fr}.freelancer-form .wide{grid-column:auto}.planning-filters .field{min-width:100%;width:100%;flex:1 1 100%}.planning-filters .field select,.planning-filters .field .period-trigger{width:100%}}.empty{padding:28px;text-align:center;color:var(--muted)}.stack{display:flex;flex-direction:column;gap:8px}.amount-positive{color:var(--green);font-weight:700}.amount-negative{color:var(--red);font-weight:700}.access-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.access-card{border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--card)}.access-card strong{display:block;margin-bottom:3px}.access-card span{font-size:11.5px;color:var(--muted)}@media (max-width:900px){.app{grid-template-columns:1fr}.project-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.project-total:nth-child(4),.project-total:nth-child(7){border-left:0}.side{display:none;position:fixed;inset:0 auto 0 0;width:min(290px,86vw);z-index:80;box-shadow:18px 0 45px #00000029}.side.open{display:flex}.main{padding:18px 18px 48px}.mobile-topbar{display:flex;align-items:center;gap:10px;margin-bottom:16px}.mobile-topbar button{all:unset;cursor:pointer;width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--card);font-size:20px}.mobile-topbar strong{font-size:15px}.g6,.g5,.g4,.g3,.g2,.access-grid{grid-template-columns:1fr 1fr}.chain{flex-wrap:wrap;gap:10px}.step:before{display:none}}@media (max-width:700px){.fund-adjustment-form{grid-template-columns:1fr 1fr}.fund-adjustment-form .wide{grid-column:span 2}}@media (max-width:520px){.fund-adjustment-form{grid-template-columns:1fr}.fund-adjustment-form .wide{grid-column:auto}}@media (max-width:620px){.g6,.g5,.g4,.g3,.g2,.access-grid,.fund-split,.project-head{grid-template-columns:1fr}.project-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.project-total:nth-child(4){border-left:1px solid var(--line)}.project-total:nth-child(odd){border-left:0}.main{padding:14px 12px 40px}.h1{font-size:26px}.search{min-width:0;width:100%}}:root{--bg:#f4f4f2;--card:#fff;--ink:#0a0a0a;--muted:#6a6a6a;--muted2:#9c9c9c;--line:#e2e2df;--line-strong:#0a0a0a;--accent:#0a0a0a;--accent-soft:#eeeeec;--green:#0a0a0a;--green-bg:#eeeeec;--amber:#6a6a6a;--amber-bg:#f1f1ef;--red:#0a0a0a;--red-bg:#e6e6e3;--blue:#4a4a4a;--blue-bg:#efefed;--radius:0}*{border-radius:0!important}.btn,.btn.sm,.btn.ghost,.btn.icon{border-radius:999px!important}.news-bell-badge{border-radius:999px!important;background:#0a0a0a}.card{border:0;background:transparent;border-top:1px solid var(--ink);padding:16px 2px 6px;box-shadow:none}.card.kpi:hover,.kpi-link:hover{background:#ececea}.kpi-link:hover{border-color:transparent!important}.card.empty{border-top:1px solid #d4d4d1}.kpi-link:focus-visible,.cycle-link:focus-visible{outline:2px solid #0a0a0a;outline-offset:2px}thead th{border-bottom:1px solid #0a0a0a}tfoot td{border-top:1px solid #0a0a0a}.sec-h h2{font-size:12px;text-transform:uppercase;letter-spacing:.9px;font-weight:800}.pill{background:transparent;border:1px solid #d4d4d1;color:#6a6a6a}.pill.green{background:transparent;border-color:#0a0a0a;color:#0a0a0a;font-weight:700}.pill.blue{background:transparent;border-color:#9c9c9c;color:#4a4a4a}.pill.amber{background:#eeeeec;border-color:#d4d4d1;color:#4a4a4a}.pill.red{background:#0a0a0a;border-color:#0a0a0a;color:#fff;font-weight:700}.bar{background:#e6e6e3}.bar>i{background:#0a0a0a}.bar.close-scale{background:linear-gradient(to right,#0a0a0a,#0a0a0a 22%,#c6c6c2 38%,#c6c6c2 80%,#0a0a0a 94%,#0a0a0a)}.nav button.on{background:#0a0a0a;color:#fff}.rulenote .rn-full{color:#4a4a4a}.rulenote.gap .rn-full{color:#0a0a0a}.rulebox{border-color:#d4d4d1;color:#4a4a4a}.rulebox.gap{border-color:#bdbdb9;color:#0a0a0a}.fund-summary.gap,.drop{border-color:#bdbdb9}.week-table th.weekend,.week-table td.hour-cell.weekend{background:#f1f1ef}.client-hours.green{border-color:#0a0a0a}.client-hours.red{border-color:#bdbdb9}.client-hours.blue{border-color:#d4d4d1}.i svg{width:15px;height:15px;vertical-align:-2px;fill:currentColor}.news-bell svg{width:17px;height:17px;fill:currentColor}.search svg{width:14px;height:14px;fill:#6a6a6a;vertical-align:-2px}.dash-filter-tabs .btn,.signed-head .btn{background:transparent;color:#0a0a0a;border:1.5px solid #0a0a0a;font-weight:700}.dash-filter-tabs .btn.ghost,.signed-head .btn.ghost{border:1px solid #d4d4d1;color:#6a6a6a;font-weight:500}.dash-filter-tabs .btn:hover,.signed-head .btn:hover{background:#ececea}.team{border:0;background:transparent;border-top:1px solid var(--ink);padding:14px 2px 8px}.trow{border-bottom:1px solid var(--line)}:root{--green:#0a8f45;--green-bg:#e7f4ec;--red:#c92a2a;--red-bg:#fbeaea;--amber:#b06f00;--amber-bg:#fdf3dd;--blue:#1b4dff;--blue-bg:#e9eeff}.pill.green{background:var(--green-bg);border-color:transparent;color:var(--green);font-weight:600}.pill.amber{background:var(--amber-bg);border-color:transparent;color:var(--amber);font-weight:600}.pill.red{background:var(--red-bg);border-color:transparent;color:var(--red);font-weight:600}.pill.blue{background:var(--blue-bg);border-color:transparent;color:var(--blue);font-weight:600}.crit{color:var(--red)}.bar.close-scale{background:linear-gradient(to right,#d12a2a,#d12a2a 22%,#f2b705 38%,#f2b705 80%,#0a8f45 94%,#0a8f45)}.bar>i{--green:#9fd3a0;--red:#f0a3a3;--amber:#dfbd85;--blue:#aebde4;--ink:#8f8f8b}.bar.close-scale{background:linear-gradient(to right,#e2766b,#e2766b 30%,#ecc178 55%,#ecc178 82%,#9fd3a0 94%,#9fd3a0)}:root{--bg:#f7f7f5}.focus{background:transparent!important;border:0}html,body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Arial,sans-serif}.h1,.h1-brand,.h1-proj{font-family:Playfair Display,Georgia,Times New Roman,serif;letter-spacing:0}.h1{font-weight:700;line-height:1.18}.h1-proj{font-weight:600}.modal h3,.news-modal-head h3{font-family:Playfair Display,Georgia,serif;font-weight:700;letter-spacing:0}.thd b{font-family:Playfair Display,Georgia,serif;font-size:19px;font-weight:700}.sec-h h2{font-family:Inter,sans-serif}.kpi .val{letter-spacing:-.3px}
