:root{--navy:#1b3557;--navy-deep:#10223a;--bronze:#9a7344;--bronze-dark:#7d5c34;--sand:#f1ebe1;--bg:#faf7f2;--paper:#fff;--ink:#18202b;--ink-soft:#5b6573;--line:#e3ddd2;--brass:#9a7344;--teal:#1b3557;--teal-dark:#10223a;--overdue:#b3261e;--overdue-bg:#fbeae9;--soon:#c77800;--soon-bg:#fdf1df;--ok:#2e7d32;--ok-bg:#eaf5ea;--done:#8a8f98;--done-bg:#eee;--radius:12px;--shadow:0 1px 2px #10223a0d,0 6px 18px #10223a0f}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);min-height:100vh;font-family:Inter,system-ui,sans-serif;font-size:14.5px;line-height:1.5}h1,h2,h3,h4{color:var(--ink);margin:0;font-family:Playfair Display,Georgia,serif;font-weight:500}a{color:inherit}.mono{font-family:IBM Plex Mono,monospace}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:14px}.shell{min-height:100vh;display:flex}.sidebar{background:var(--navy-deep);color:#edeff3;flex-direction:column;flex-shrink:0;width:220px;height:100vh;padding:24px 0;display:flex;position:sticky;top:0;overflow-y:auto}.brand{text-align:center;border-bottom:1px solid #ffffff1f;margin-bottom:14px;padding:0 22px 20px}.brand-logo-frame{background:var(--bg);box-sizing:border-box;border-radius:10px;width:94px;margin:0 auto 14px;padding:8px}.brand-logo{background-image:url(/logo-transparent.png);background-position:-96px -92px;background-repeat:no-repeat;background-size:271px 271px;width:78px;height:50px}.brand .eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.brand h1{color:#fff;letter-spacing:.02em;font-family:Montserrat,sans-serif;font-size:18px;font-weight:600;line-height:1.25}.brand .role-tag{color:#9aa4bc;margin-top:6px;font-size:11px}.sidebar-quick-add{flex-direction:column;gap:8px;padding:0 12px 14px;display:flex}.sidebar-quick-add .btn{justify-content:center;width:100%}.sidebar-quick-add .btn.secondary{color:#fff;background:#ffffff0f;border-color:#ffffff2e}.sidebar-quick-add .btn.secondary:hover{background:#ffffff24}.nav{flex-direction:column;gap:2px;padding:0 12px;display:flex}.nav-btn{color:#c7ccda;text-align:left;background:0 0;border:none;border-left:3px solid #0000;border-radius:5px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.nav-btn .count{color:#c7ccda;background:#ffffff14;border-radius:20px;margin-left:auto;padding:1px 7px;font-family:IBM Plex Mono,monospace;font-size:11.5px}.nav-btn:hover{color:#fff;background:#ffffff0f}.nav-btn.active{color:#fff;border-left:3px solid var(--brass);background:#9a734438}.sidebar-foot{color:#8892a8;border-top:1px solid #ffffff1f;margin-top:auto;padding:16px 22px;font-size:11.5px}.sidebar-foot button{color:#fff;cursor:pointer;background:#ffffff14;border:none;border-radius:5px;width:100%;margin-top:10px;padding:8px 14px;font-size:12.5px;font-weight:600}.sidebar-foot button:hover{background:#ffffff29}.profile-trigger{text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;align-items:center;gap:10px;width:100%;margin-top:0;padding:9px 12px;display:flex}.profile-trigger:hover{background:#ffffff24}.profile-avatar{background:var(--brass);color:#10223a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:flex}.profile-trigger-text{flex-direction:column;gap:1px;min-width:0;display:flex}.profile-trigger-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:600;overflow:hidden}.profile-trigger-role{color:#9aa4bc;font-size:10.5px}.main{flex:1;min-width:0;max-width:none;padding:32px 40px 60px}@media (min-width:1800px){.main{padding-left:48px;padding-right:48px}}.page-head{z-index:19;background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:0;padding-bottom:22px;display:flex;position:sticky;top:0}.page-head .eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dark);margin-bottom:4px;font-family:IBM Plex Mono,monospace;font-size:11px}.page-head h2{font-size:26px}.page-head p.sub{color:var(--ink-soft);margin-top:4px;font-size:13.5px}.btn{border:1px solid var(--navy);background:var(--navy);color:#fff;border-radius:999px;align-items:center;gap:6px;padding:9px 18px;font-size:13.5px;font-weight:600;display:inline-flex}.btn:hover{background:var(--navy-deep)}.btn.secondary{color:var(--navy);border:1px solid var(--line);background:#fff}.btn.secondary:hover{background:var(--sand)}.btn.teal{background:var(--bronze);border-color:var(--bronze)}.btn.teal:hover{background:var(--bronze-dark)}.btn.danger{color:var(--overdue);background:0 0;border:1px solid #ebc9c7}.btn.danger:hover{background:var(--overdue-bg)}.btn.small{padding:6px 11px;font-size:12.5px}.btn:disabled{opacity:.5;cursor:not-allowed}.dashboard-search-row{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.dashboard-search-field{flex:1;min-width:220px;position:relative}.dashboard-search-field input{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:5px;padding:9px 32px 9px 12px}.dashboard-search-field .search-input-clear{right:8px}.ledger-strip-wrap{z-index:18;background:var(--bg);padding-bottom:26px;position:sticky}.ledger-strip{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);flex-wrap:wrap;margin-bottom:0;display:flex;overflow:hidden}.ledger-cell{text-align:left;min-width:130px;font:inherit;color:inherit;border:none;border-right:1px solid var(--line);background:0 0;flex:1;padding:16px 20px;position:relative}.ledger-cell:last-child{border-right:none}.ledger-cell:before{content:"";height:3px;position:absolute;top:0;left:0;right:0}.ledger-cell.c-overdue:before{background:var(--overdue)}.ledger-cell.c-soon:before{background:var(--soon)}.ledger-cell.c-ok:before{background:var(--ok)}.ledger-cell.c-total:before{background:var(--brass)}.ledger-cell.active{background:#f4f1e4}.ledger-cell .num{font-family:IBM Plex Mono,monospace;font-size:28px;font-weight:600}.ledger-cell .lbl{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;margin-top:2px;font-size:12px}.filters{z-index:16;background:var(--bg);flex-wrap:wrap;gap:10px;margin-bottom:0;padding-bottom:16px;display:flex;position:sticky}.filters select,.filters input[type=text]{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:5px;min-width:150px;padding:8px 10px}.filters input[type=text]{min-width:220px}.search-input-wrap{display:inline-block;position:relative}.search-input-wrap input[type=text]{padding-right:28px}.search-input-clear{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:3px;font-size:15px;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.search-input-clear:hover{color:var(--ink);background:#f1ebe1}.register{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow)}.register>.reg-row.head,.register>.crow.head{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.reg-toolbar{z-index:15;background:var(--paper);border-top-left-radius:var(--radius);border-top-right-radius:var(--radius);justify-content:space-between;align-items:center;padding:10px 14px;display:flex;position:sticky}.register>.reg-row:last-child,.register>.crow:last-child{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius)}.reg-row{border-bottom:1px solid var(--line);grid-template-columns:36px 6px 1.2fr 1fr 115px 1fr 90px 130px 150px 240px;align-items:center;padding:0;display:grid}.reg-row:last-child{border-bottom:none}.reg-row.head{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);z-index:15;background:#f4efe7;font-size:11px;font-weight:600;position:sticky}.reg-row.head>div{padding:9px 14px}.col-filter{flex-direction:column;gap:4px;display:flex}.col-filter select,.col-filter input[type=text]{text-transform:none;letter-spacing:normal;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:4px;width:100%;max-width:100%;padding:4px 6px;font-size:11.5px;font-weight:400}.col-filter .search-input-wrap{width:100%}.col-filter .search-input-wrap input[type=text]{padding-right:22px}.multiselect{width:100%;position:relative}.multiselect-trigger{text-transform:none;letter-spacing:normal;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;text-align:left;border-radius:4px;justify-content:space-between;align-items:center;gap:6px;width:100%;max-width:100%;padding:4px 6px;font-size:11.5px;font-weight:400;display:flex}.multiselect-trigger:hover{background:#f7f8f6}.multiselect-caret{color:var(--ink-soft);flex-shrink:0;font-size:10px}.multiselect-panel{z-index:30;background:var(--paper);border:1px solid var(--line);min-width:180px;max-width:260px;max-height:260px;box-shadow:var(--shadow);border-radius:6px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto}.multiselect-option{cursor:pointer;text-transform:none;letter-spacing:normal;color:var(--ink);white-space:nowrap;border-radius:4px;align-items:center;gap:8px;padding:5px 6px;font-size:12.5px;font-weight:400;display:flex}.multiselect-option:hover{background:#f4efe7}.multiselect-clear{text-align:left;border:none;border-bottom:1px solid var(--line);width:100%;color:var(--teal-dark);cursor:pointer;background:0 0;border-radius:0;margin-bottom:4px;padding:5px 6px;font-size:11.5px;font-weight:600;display:block}.multiselect-clear:hover{background:#f4efe7}.multiselect-search{border:1px solid var(--line);text-transform:none;letter-spacing:normal;width:100%;color:var(--ink);background:var(--paper);border-radius:4px;margin-bottom:6px;padding:5px 7px;font-size:12.5px;font-weight:400;display:block}.multiselect-empty{text-transform:none;letter-spacing:normal;color:var(--ink-soft);padding:5px 6px;font-size:12px;font-weight:400}.reg-row:not(.head):hover{background:#fafaf7}.tab{align-self:stretch}.tab.t-overdue{background:var(--overdue)}.tab.t-soon{background:var(--soon)}.tab.t-ok{background:var(--ok)}.tab.t-done{background:var(--done)}.reg-main{min-width:0;padding:13px 14px}.reg-main .task-type{font-size:14px;font-weight:600}.reg-main .task-notes{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12.5px;overflow:hidden}.reg-client{min-width:0;padding:13px 14px}.reg-client .cname{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.client-name-link{color:inherit;border-bottom:1px dashed var(--brass);text-decoration:none}.client-name-link:hover{color:var(--teal-dark)}.client-task-stats-link{color:inherit;border-bottom:1px dashed var(--line);text-decoration:none}.client-task-stats-link:hover{color:var(--teal-dark);border-bottom-color:var(--teal-dark)}.reg-client .ctype{color:var(--ink-soft);font-size:12px}.reg-client .cowner{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-style:italic;overflow:hidden}.reg-due{padding:13px 14px}.reg-due .date{font-family:IBM Plex Mono,monospace;font-weight:600}.reg-due .rel{margin-top:2px;font-size:12px}.due-edit{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:5px;padding:2px 5px;font-family:IBM Plex Mono,monospace;font-size:12.5px;font-weight:600}.source-pill .source-date{color:var(--ink-soft);margin-top:3px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.source-pill .created-by{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:10.5px;overflow:hidden}.rel.overdue{color:var(--overdue)}.rel.soon{color:var(--soon)}.rel.ok{color:var(--ok)}.status-pill{justify-content:center;padding:4px 14px;font-size:14px;display:flex}.pill{border-radius:20px;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-block}.pill.overdue{background:var(--overdue-bg);color:var(--overdue)}.pill.soon{background:var(--soon-bg);color:var(--soon)}.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.done{background:var(--done-bg);color:var(--done)}.status-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'><path d='M0 0l5 6 5-6z' fill='%234C5A73'/></svg>");background-position:right 7px center;background-repeat:no-repeat;background-size:9px;border:none;border-radius:20px;padding:3px 22px 3px 9px;font-size:11.5px;font-weight:600}.status-select.status-not-started{color:#4c5a73;background-color:#eef0f2}.status-select.status-in-progress{color:#1d5fa8;background-color:#e4effc}.status-select.status-waiting-client{color:#6b3fa0;background-color:#f1e9fb}.status-select.status-done,.status-select.client-status-active{background-color:var(--ok-bg);color:var(--ok)}.status-select.client-status-inactive{background-color:var(--done-bg);color:var(--done)}.priority-pill{padding:4px 8px;font-size:14px}.source-pill{padding:4px 8px;font-size:12.5px}.source-pill select:disabled{opacity:.7;cursor:default}.priority-select.priority-low{color:#6b7280;background-color:#eef0f2}.priority-select.priority-medium{background-color:var(--soon-bg);color:var(--soon)}.priority-select.priority-high{background-color:var(--overdue-bg);color:var(--overdue);font-weight:700}.assignee-pill{padding:4px 8px;font-size:12.5px;overflow:hidden}.assignee-select{color:var(--ink);background-color:#eef0f2;max-width:100%}.assignee-readonly{color:var(--ink-soft)}.reg-actions{justify-content:flex-end;gap:6px;padding:10px 14px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);border-radius:4px;padding:6px 9px;font-size:12px}.icon-btn:hover{color:var(--ink);background:#f1ebe1}.icon-btn.done-btn:hover{background:var(--ok-bg);color:var(--ok);border-color:#bee0be}.icon-btn.del-btn:hover{background:var(--overdue-bg);color:var(--overdue);border-color:#ebc9c7}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;display:grid}.photo-tile{border:1px solid var(--line);aspect-ratio:1;background:#eef0ee;border-radius:6px;position:relative;overflow:hidden}.photo-tile img{object-fit:cover;width:100%;height:100%;display:block}.photo-tile-loading{background:#e4e7e4;width:100%;height:100%}.photo-tile-delete{color:#fff;cursor:pointer;background:#16233da6;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:13px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.photo-tile-delete:hover{background:var(--overdue)}.photo-tile-meta{color:var(--ink-soft);word-break:break-word;margin-top:4px;font-size:10px;line-height:1.3}.empty{text-align:center;color:var(--ink-soft);padding:46px 20px}.empty h3{color:var(--ink);margin-bottom:6px}.client-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;display:grid}.task-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:14px;display:grid}.task-card{border:1px solid var(--line);border-left:4px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);padding:16px 18px;position:relative}.task-card.t-overdue{border-left-color:var(--overdue)}.task-card.t-soon{border-left-color:var(--soon)}.task-card.t-ok{border-left-color:var(--ok)}.task-card.t-done{border-left-color:var(--done);opacity:.6}.task-card h3{margin-bottom:2px;font-size:16px}.task-card .sub{color:var(--ink-soft);margin-bottom:10px;font-size:12.5px}.task-card .kv{border-top:1px dashed var(--line);justify-content:space-between;gap:10px;padding:3px 0;font-size:12.5px;display:flex}.task-card .kv:first-of-type{border-top:1px solid var(--line);margin-top:6px}.task-card .kv span:first-child{color:var(--ink-soft);flex-shrink:0}.task-card .kv span:last-child{text-align:right;text-overflow:ellipsis;overflow:hidden}.task-card .card-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.grid-filters{border:1px solid var(--line);border-radius:var(--radius);z-index:15;box-shadow:0 14px 0 0 var(--paper);background:#f4efe7;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex;position:sticky}.grid-filters .col-filter{text-transform:uppercase;letter-spacing:.06em;min-width:120px;color:var(--ink-soft);flex:1 0 120px;font-size:11px;font-weight:600}.client-select-cb{z-index:2;width:16px;height:16px;position:absolute;top:14px;left:14px}.client-row-select,.reg-row-select{justify-content:center;align-items:center;width:36px;display:flex}.crow{border-bottom:1px solid var(--line);grid-template-columns:36px 64px 1.3fr 1fr 1fr 1fr .9fr 1fr 90px 168px;align-items:center;display:grid}.crow:last-child{border-bottom:none}.crow.head{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);z-index:15;background:#f4efe7;font-size:11px;font-weight:600;position:sticky}.crow.head>*{margin:0;padding:9px 10px}.crow.head>.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;background:0 0;border:none}.crow.head>.sortable:hover{color:var(--ink)}.crow:not(.head):hover{background:#fafaf7}.crow>div{text-overflow:ellipsis;white-space:nowrap;padding:11px 10px;font-size:13px;overflow:hidden}.crow .cname2{font-weight:600}.crow .csub2{color:var(--ink-soft);font-size:11.5px}.client-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);padding:16px 18px;position:relative}.ctype-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark);background:#f1ebe1;border-radius:20px;padding:2px 8px;font-family:IBM Plex Mono,monospace;font-size:10.5px;display:inline-block}.client-card .ctype-tag{margin-bottom:8px}select.ctype-tag.ctype-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'><path d='M0 0l5 6 5-6z' fill='%23154E45'/></svg>");background-position:right 6px center;background-repeat:no-repeat;background-size:8px;border:none;padding-right:20px}.client-card h3{margin-bottom:2px;font-size:17px}.client-card .sub{color:var(--ink-soft);margin-bottom:10px;font-size:12.5px}.client-card .kv{border-top:1px dashed var(--line);justify-content:space-between;gap:10px;padding:3px 0;font-size:12.5px;display:flex}.client-card .kv:first-of-type{border-top:1px solid var(--line);margin-top:6px}.client-card .kv span:first-child{color:var(--ink-soft);flex-shrink:0}.client-card .kv span:last-child{text-align:right;text-overflow:ellipsis;font-family:IBM Plex Mono,monospace;font-weight:500;overflow:hidden}.client-card .card-actions{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.client-card.inactive{opacity:.55}.inactive-badge{color:var(--ink-soft);font-size:10.5px;position:absolute;top:14px;right:14px}.copyable{cursor:pointer;border-bottom:1px dashed #0000}.copyable:hover{border-bottom-color:var(--ink-soft)}.client-card h3 .copyable{border-bottom:1px dashed var(--brass)}.client-number-link{cursor:pointer}.client-number-link:hover{text-decoration:underline}.icon-btn-mini{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:0 0 0 5px;font-size:11px}.icon-btn-mini:hover{color:var(--ink)}.overlay{z-index:50;background:#16233d73;justify-content:center;align-items:flex-start;padding:40px 16px;display:none;position:fixed;inset:0;overflow-y:auto}.overlay.active{display:flex}.modal{background:var(--paper);border-radius:var(--radius);width:100%;max-width:640px;padding:26px 28px 28px;box-shadow:0 20px 60px #16233d4d}.modal h3{margin-bottom:2px;font-size:19px}.modal .modal-sub{color:var(--ink-soft);margin-bottom:18px;font-size:12.5px}.field-row{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.field-row.single{grid-template-columns:1fr}.field{flex-direction:column;gap:4px;display:flex}.field label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.03em;font-size:12px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:5px;width:100%;padding:9px 10px}.field input[type=checkbox]{flex:none;width:16px;height:16px;padding:0}.field label:has(>input[type=checkbox]){text-transform:none;letter-spacing:normal;color:var(--ink);font-size:13px;font-weight:400}.field textarea{resize:vertical;min-height:56px}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--brass);border-top:1px solid var(--line);margin:18px 0 8px;padding-top:12px;font-family:IBM Plex Mono,monospace;font-size:11px}.section-label:first-of-type{border-top:none;margin-top:6px;padding-top:0}.checkline{align-items:center;gap:8px;margin-bottom:12px;display:flex}.checkline input{width:auto}.checkline label{color:var(--ink);font-size:13.5px;font-weight:500}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.hint{color:var(--ink-soft);margin-top:-4px;margin-bottom:10px;font-size:11.5px}.dir-row{grid-template-columns:1fr 200px 100px 32px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.dir-row>*{min-width:0}.dir-row input{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px 9px}.owner-row{grid-template-columns:1fr 200px 32px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.owner-row>*{min-width:0}.owner-row input{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px 9px}.dir-row select,.owner-row select{border:1px solid var(--line);box-sizing:border-box;width:100%;font:inherit;background:#fff;border-radius:5px;padding:7px 9px}@media (max-width:640px){.dir-row{grid-template-columns:1fr 1fr}.owner-row{grid-template-columns:1fr 32px}}.dep-row{grid-template-columns:1fr 150px 130px 32px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.dep-row>*{min-width:0}.dep-row input{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px 9px}.row-remove{color:var(--overdue);cursor:pointer;background:0 0;border:none;font-size:16px}.craprog-row{grid-template-columns:1fr minmax(150px,1.6fr) .8fr .75fr .75fr .9fr 24px;align-items:center;gap:8px;width:100%;margin-bottom:6px;display:grid}.craprog-row>*{min-width:0}.craprog-row input,.craprog-row select{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px;font-size:13px}.report-tab-btn{background:var(--paper);border:1px solid var(--line);color:var(--ink-soft);border-radius:5px;padding:8px 14px;font-size:13px;font-weight:600}.report-tab-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}.report-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow);margin-bottom:16px;padding:18px 20px}.report-card h3{margin-bottom:4px;font-size:15px}.report-card .report-sub{color:var(--ink-soft);margin-bottom:14px;font-size:12.5px}.report-table{border-collapse:collapse;width:100%}.report-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);border-bottom:1px solid var(--line);padding:7px 10px;font-size:10.5px}.report-table td{border-bottom:1px solid var(--line);padding:8px 10px;font-size:13px}.report-table tr:last-child td{border-bottom:none}.report-bar-track{background:#eef0f0;border-radius:4px;width:100%;height:8px;overflow:hidden}.report-bar-fill{background:var(--teal);border-radius:4px;height:100%}.backup-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);max-width:640px;box-shadow:var(--shadow);margin-bottom:16px;padding:22px}.backup-box p{color:var(--ink-soft);font-size:13.5px}.backup-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.type-chip{border:1px solid var(--line);background:#fff;border-radius:5px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:6px 10px;font-size:13px;display:flex}.type-chip button{color:var(--overdue);cursor:pointer;background:0 0;border:none;font-size:15px;line-height:1}.bulk-bar{border:1px solid var(--brass);background:#f4f1e4;border-radius:5px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:none}.bulk-bar.active{display:flex}.dashboard-widgets-row{z-index:17;background:var(--bg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-bottom:0;padding-bottom:16px;display:grid;position:sticky}@media (max-width:900px){.dashboard-widgets-row{grid-template-columns:1fr}}.heatmap-row{gap:10px;display:flex}.heatmap-cell{border:1px solid var(--line);background:var(--paper);cursor:pointer;min-width:0;font:inherit;color:inherit;border-radius:8px;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:6px;min-height:104px;padding:12px 6px;transition:transform .1s;display:flex}@media (max-width:480px){.heatmap-row{gap:5px}.heatmap-cell{padding:8px 2px}.heatmap-dow{font-size:9px}.heatmap-daynum{font-size:15px}}.heatmap-cell:hover{transform:translateY(-2px)}.heatmap-cell.is-today{border-color:var(--brass);border-width:2px}.heatmap-cell.selected{outline:2px solid var(--teal-dark);outline-offset:-2px}.heatmap-dow{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:10.5px;font-weight:600}.heatmap-daynum{font-size:19px;font-weight:700}.heatmap-badge-slot{justify-content:center;align-items:center;height:40px;display:flex}.heatmap-badge{color:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;box-shadow:0 2px 6px #16233d2e}.workload-rows{flex-direction:column;gap:14px;display:flex}.workload-row{cursor:pointer;font:inherit;color:inherit;text-align:left;background:0 0;border:none;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;width:100%;padding:0;display:grid}.workload-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:13px;font-weight:700;display:flex;box-shadow:0 2px 6px #16233d26}.workload-main{min-width:0}.workload-name{text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px;font-size:13px;font-weight:600;overflow:hidden}.workload-bar-track{background:#eef0f2;border-radius:5px;height:9px;display:flex;overflow:hidden}.workload-bar-segment{height:100%}.workload-bar-segment.overdue{background:var(--overdue)}.workload-bar-segment.ok{background:var(--teal)}.workload-stat{text-align:right;white-space:nowrap}.workload-open-num{font-size:16px;font-weight:700;line-height:1.1}.workload-overdue{color:var(--overdue);font-size:11px;font-weight:600}.customize-dashboard{position:relative}.customize-panel{z-index:20;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:6px;min-width:220px;padding:12px 14px;position:absolute;top:calc(100% + 6px);right:0}.customize-panel-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:8px;font-size:11px;font-weight:600}.customize-panel-row{align-items:center;gap:10px;padding:5px 0;font-size:13px;display:flex}.customize-panel-row select{padding:3px 6px;font-size:12px}.dash-widget-compact{grid-column:span 1}.dash-widget-wide{grid-column:span 2}.dash-widget-full{grid-column:1/-1}.kpi-row{flex-wrap:wrap;gap:14px;display:flex}.kpi-tile{border:1px solid var(--line);background:#fafaf8;border-radius:6px;flex:1;min-width:130px;padding:12px 14px}.kpi-value{flex-wrap:wrap;align-items:baseline;gap:6px;font-family:"Source Serif 4",serif;font-size:22px;font-weight:700;display:flex}.kpi-label{color:var(--ink-soft);margin-top:2px;font-size:11px}.kpi-trend{font-size:12px;font-weight:700}.kpi-trend.up{color:var(--ok)}.kpi-trend.down{color:var(--overdue)}.breakdown-pies{flex-wrap:wrap;gap:20px;display:flex}.breakdown-pies>div{flex:1;min-width:180px}.breakdown-pie-title{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin-bottom:8px;font-size:11px;font-weight:600}.donut-wrap{align-items:center;gap:14px;display:flex}.donut-svg{flex-shrink:0;width:88px;height:88px;transform:rotate(-90deg)}.donut-legend{flex-direction:column;gap:4px;min-width:0;display:flex}.donut-legend-row{align-items:center;gap:6px;width:100%;font-size:12px;display:flex}button.donut-legend-row{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:2px 0}.donut-swatch{border-radius:2px;flex-shrink:0;width:9px;height:9px}.donut-legend-label{text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft);overflow:hidden}.donut-legend-value{margin-left:auto;padding-left:6px;font-weight:700}.filter-chip-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.filter-chip{border:1px solid var(--line);color:var(--ink);background:#f1ebe1;border-radius:20px;align-items:center;gap:6px;padding:5px 8px 5px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.filter-chip button{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:15px;line-height:1}.filter-chip button:hover{color:var(--overdue)}.auth-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;width:100%;max-width:380px;padding:32px 34px}.auth-logo{background-image:url(/logo-transparent.png);background-position:-69px -66px;background-repeat:no-repeat;background-size:194px 194px;width:56px;height:36px;margin:0 auto 16px;display:block}.auth-card h2{text-align:center;letter-spacing:.02em;margin-bottom:4px;font-family:Montserrat,sans-serif;font-size:22px;font-weight:600}.auth-card .sub{text-align:center;color:var(--ink-soft);margin-bottom:22px;font-size:13px}.auth-error{background:var(--overdue-bg);color:var(--overdue);border-radius:5px;margin-bottom:14px;padding:8px 12px;font-size:13px}.naics-suggestions{z-index:20;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:5px;max-height:220px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.naics-suggestion{cursor:pointer;padding:8px 10px;font-size:13px}.naics-suggestion:hover,.naics-suggestion.highlight{background:#f4efe7}.capture-tabs{gap:6px;margin-bottom:12px;display:flex}.capture-tabs button{border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;font:inherit;border-radius:5px;padding:7px 14px}.capture-tabs button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.capture-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:14px}.capture-box input[type=text],.capture-box textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);border-radius:5px;padding:11px 12px;font-size:15px}.capture-attach{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.capture-preview{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.capture-row{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:var(--radius);padding:12px 14px}.capture-row.incomplete{border-left-color:var(--soon)}.capture-line{color:var(--ink-soft);margin-bottom:8px;font-size:13px}.capture-fields{grid-template-columns:1fr 180px;gap:12px;display:grid}.capture-fields .field label{margin-bottom:4px;font-size:12px;display:block}.capture-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.capture-candidates{color:var(--ink-soft);margin-top:6px;font-size:12.5px}.capture-actions{flex-wrap:wrap;align-items:flex-start;gap:14px;display:flex}.capture-report{white-space:pre-wrap;font-size:13.5px}@media (max-width:700px){.capture-fields{grid-template-columns:1fr}}.work-board{grid-template-columns:repeat(6,minmax(210px,1fr));align-items:start;gap:12px;padding-bottom:12px;display:grid;overflow-x:auto}.work-col{border:1px solid var(--line);border-radius:var(--radius);background:#f1ebe1;min-height:140px;padding:10px}.work-col.over{outline:2px dashed var(--teal);background:#f1ebe1}.work-col-head{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.work-col-head .count{background:var(--paper);border-radius:10px;padding:1px 8px;font-family:IBM Plex Mono,monospace}.work-card{background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--ok);cursor:pointer;box-shadow:var(--shadow);border-radius:6px;margin-bottom:8px;padding:9px 10px;position:relative}.work-card.u-overdue{border-left-color:var(--overdue)}.work-card.u-soon{border-left-color:var(--soon)}.work-card.u-done{border-left-color:var(--line)}.work-card:hover{border-color:var(--teal)}.work-card-client{font-size:13px;font-weight:600}.work-card-task{color:var(--ink-soft);margin:2px 0 6px;font-size:12.5px}.work-card-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.work-card-foot{color:var(--ink-soft);justify-content:space-between;margin-top:6px;font-family:IBM Plex Mono,monospace;font-size:11.5px;display:flex}.work-card-move{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:4px;margin-top:8px;padding:3px 4px;font-size:12px}.work-badge{background:var(--ink);color:#fff;border-radius:10px;padding:1px 7px;font-size:11px}.work-badge.review{background:var(--teal)}.work-empty{color:var(--ink-soft);text-align:center;padding:14px 0;font-size:12px}.work-time-row{border-bottom:1px solid var(--line);grid-template-columns:110px 70px 1fr 24px;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:grid}.invoice-line{grid-template-columns:1fr 80px 100px 100px 28px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.invoice-line input{box-sizing:border-box;border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:5px;padding:8px 9px}.invoice-totals{flex-direction:column;gap:4px;font-size:13.5px;display:flex}.invoice-totals>div{justify-content:space-between;gap:12px;display:flex}.inv-status{color:var(--ink-soft);vertical-align:middle;background:#f1ebe1;border-radius:10px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-block}.inv-status.paid{color:var(--ok);background:#e3f1e4}.inv-status.overdue{background:var(--overdue-bg);color:var(--overdue)}.inv-status.partial,.inv-status.unpaid{background:var(--soon-bg);color:var(--soon)}.inv-status.void{text-decoration:line-through}@media (max-width:700px){.invoice-line{grid-template-columns:1fr 60px 80px 28px}.invoice-line .mono{display:none}}.capture-bar{z-index:30;background:var(--paper);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:14px;margin:-32px -40px 18px;padding:12px 40px;display:flex;position:sticky;top:0;box-shadow:0 1px #00000008}.capture-bar-field{flex:1;min-width:260px;max-width:820px;position:relative}.capture-bar-field>input{box-sizing:border-box;border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:10px 34px 10px 40px;font-size:14.5px}.capture-bar-field>input:focus{outline:2px solid var(--teal);outline-offset:-1px;background:var(--paper)}.capture-bar-icon{color:var(--ink-soft);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.capture-bar-field .search-input-clear{right:10px}.capture-bar-menu{z-index:40;border:1px solid var(--line);background:#fff;border-radius:8px;max-height:420px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 10px 30px #00000024}.capture-bar-group{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);padding:8px 12px 4px;font-size:11px}.capture-bar-item{cursor:pointer;padding:8px 12px;font-size:13.5px}.capture-bar-item.active{background:#f1ebe1}.capture-bar-sub{color:var(--ink-soft);margin-top:1px;font-size:12px}.capture-bar-notice{color:var(--ok);font-size:13px}.capture-bar-notice.error{color:var(--overdue)}.wf-layout{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:18px;display:grid}@media (max-width:900px){.wf-layout{grid-template-columns:minmax(0,1fr)}}.wf-list{z-index:13;background:var(--bg);flex-direction:column;align-self:start;gap:10px;min-width:0;display:flex;position:sticky}.wf-chips{gap:6px;margin-bottom:0}.wf-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);cursor:pointer;border-radius:20px;padding:3px 10px;font-size:12px}.wf-chip.active{background:var(--ink);border-color:var(--ink);color:#fff}.wf-clients{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);flex:1;min-height:0;overflow-y:auto}.wf-client{border:0;border-bottom:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:0 0;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;padding:9px 12px;display:grid}.wf-client:last-child{border-bottom:0}.wf-client:hover{background:#f1ebe1}.wf-client.active{box-shadow:inset 3px 0 0 var(--teal);background:#f1ebe1}.wf-client-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.wf-client-sub{color:var(--ink-soft);grid-column:1/-1;font-size:12px}.wf-svc{flex-wrap:wrap;gap:3px;display:inline-flex}.wf-svc span{color:var(--teal-dark);background:#f1ebe1;border-radius:4px;padding:2px 5px;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:600}.wf-search-row{align-items:center;gap:8px;display:flex}.wf-search-row>:first-child{flex:1;min-width:0}.wf-search-row .btn{white-space:nowrap}.wf-empty{color:var(--ink-soft);padding:16px;font-size:13px}.wf-main{flex-direction:column;gap:14px;min-width:0;display:flex}.wf-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.wf-head .eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--brass);font-family:IBM Plex Mono,monospace;font-size:11px}.wf-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.wf-year{color:var(--ink-soft);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.wf-year select{border:1px solid var(--line);background:#fff;border-radius:5px;padding:7px 9px}.wf-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding:6px 0 8px;display:flex}.wf-tab{border:1.5px solid var(--teal);color:var(--teal-dark);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:6px 16px;font-weight:600;display:inline-flex}.wf-tab:hover{background:#f6f1e9}.wf-tab.active{background:var(--teal);color:#fff}.wf-tab-icon{line-height:1}.wf-tab-badge{color:#10223a;background:#f2a541;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.wf-tab-badge.bad{color:#fff;background:#c0392b}.wf-panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:16px 18px}.wf-panel.hint-panel{color:var(--ink-soft);font-size:13px}.wf-panel-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.wf-panel-head h3{font-size:16px}.wf-panel-head .hint{margin:0}.wf-sum{color:var(--ink-soft);background:#f1ebe1;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-bottom:8px;padding:8px 10px;font-size:13px;display:flex}.wf-sum b{color:var(--ink)}.wf-sum-what{flex-basis:100%;font-size:12px}.wf-step{border-bottom:1px solid var(--line);grid-template-columns:32px minmax(0,1fr) auto;align-items:start;gap:4px 12px;padding:12px 0;display:grid}.wf-step:last-child{border-bottom:0}@media (max-width:640px){.wf-step{grid-template-columns:32px minmax(0,1fr)}.wf-step .wf-act{grid-column:2;justify-content:flex-start}}.wf-dot{border:2px solid var(--line);width:26px;height:26px;color:var(--ink-soft);background:#fff;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.wf-step.sent .wf-dot{background:var(--ok);border-color:var(--ok);color:#fff}.wf-step.current .wf-dot{border-color:var(--teal);color:var(--teal);box-shadow:0 0 0 4px #f1ebe1}.wf-step-title{font-weight:600}.wf-step-desc{color:var(--ink-soft);font-size:13px}.wf-msg{border:1px solid var(--line);-webkit-user-select:all;user-select:all;background:#f1ebe1;border-radius:5px;margin-top:6px;padding:2px 8px;font-size:12.5px;display:inline-block}.wf-act{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.wf-when{color:var(--ok);font-size:12px;font-weight:600}.wf-how{border:1px solid var(--line);background:#fff;border-radius:6px;margin-top:8px}.wf-how summary{cursor:pointer;color:var(--teal);padding:5px 10px;font-size:13px;font-weight:600}.wf-how ol{flex-direction:column;gap:5px;margin:0;padding:2px 12px 10px 32px;font-size:13px;display:flex}.wf-who{letter-spacing:.06em;text-transform:uppercase;border-radius:4px;margin-right:6px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.wf-who.c{color:var(--teal-dark);background:#f1ebe1}.wf-who.y{background:var(--soon-bg);color:var(--soon)}.wf-period{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 0;display:grid}.wf-period:last-child{border-bottom:0}@media (max-width:640px){.wf-period{grid-template-columns:minmax(0,1fr)}.wf-period .wf-act{justify-content:flex-start}}.wf-period-title{font-weight:600}.wf-period-sub{color:var(--ink-soft);font-size:12px}.wf-quick{flex-wrap:wrap;gap:8px;display:flex}.wf-setup-card{background:var(--soon-bg);color:var(--soon);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13.5px;display:flex}.wf-svc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px;display:grid}@media (max-width:640px){.wf-svc-grid{grid-template-columns:minmax(0,1fr)}}.wf-svc-grid .checkline{margin-bottom:6px;font-size:13.5px}.wf-table-wrap{overflow-x:auto}.wf-grp td{background:#f1ebe1;font-size:12.5px;font-weight:600}.wf-grp td span{color:var(--ink-soft);margin-left:8px;font-weight:400}.wf-kpis{margin-bottom:0}.wf-banner{background:var(--soon-bg);color:var(--soon);border-radius:8px;margin-bottom:12px;padding:10px 14px;font-size:13.5px}.wf-banner.bad{background:var(--overdue-bg);color:var(--overdue)}.wf-toast{background:var(--ink);color:#fff;z-index:60;border-radius:8px;max-width:calc(100vw - 32px);padding:10px 16px;font-size:13.5px;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000040}.wf-folders{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.wf-folders.compact{vertical-align:1px;gap:4px;margin:0 0 0 10px;font-weight:400;display:inline-flex}.wf-folder{border:1px solid var(--line);color:var(--teal-dark);white-space:nowrap;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:3px;padding:1px 8px;font-size:11.5px;line-height:18px;text-decoration:none;display:inline-flex}.wf-folder:hover{background:#f1ebe1;border-color:#e3d3bc}.wf-folderbar .wf-panel-head{margin-bottom:4px}.wf-profile-link{color:var(--ink);text-decoration:none}.wf-profile-link:hover{text-decoration:underline}.wf-profile-link.mono{color:var(--brass);vertical-align:3px;font-size:15px;font-weight:600}.wf-status-filter{flex-wrap:wrap;gap:6px;display:flex}.wf-setup-steps{flex-direction:column;gap:4px;margin:0 0 10px;padding-left:20px;font-size:13px;display:flex}.wf-sticky{z-index:14;background:var(--bg);box-shadow:0 -14px 0 var(--bg);flex-direction:column;gap:10px;margin-bottom:-14px;padding-bottom:10px;display:flex;position:sticky}.wf-sticky .wf-tabs{background:var(--bg)}@media (max-width:900px){.wf-list{position:static;height:auto!important}.wf-clients{max-height:320px}}.wf-runner{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);border-radius:8px;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;font-size:12.5px;display:flex}.wf-runner-dot{background:#b9b4a8;border-radius:50%;flex:none;width:9px;height:9px}.wf-runner.on .wf-runner-dot{background:var(--teal);box-shadow:0 0 0 3px #d6e9e5}.wf-runner.off{background:#fbf4e6;border-color:#ead9b5}.wf-note{border:1px solid var(--line);background:var(--paper);border-radius:6px;width:100%;max-width:520px;margin-top:8px;padding:5px 8px;font-size:12.5px;display:block}.wf-job{border:1px solid var(--line);background:var(--paper);border-left:3px solid #b9b4a8;border-radius:8px;flex-direction:column;gap:8px;max-width:760px;margin-top:10px;padding:10px 12px;display:flex}.wf-job.running,.wf-job.answered,.wf-job.queued{border-left-color:#c99a2e}.wf-job.review{border-left-color:var(--teal)}.wf-job.needs_input{background:#fdf5f0;border-left-color:#b5532a}.wf-job.failed{border-left-color:#a33a3a}.wf-job-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wf-job-badge{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:#ece9e1;border-radius:20px;padding:2px 8px;font-family:IBM Plex Mono,monospace;font-size:10.5px}.wf-job-badge.review{color:var(--teal-dark);background:#f1ebe1}.wf-job-badge.needs_input{color:#8a3d1c;background:#f6e1d6}.wf-job-badge.failed{color:#7e2a2a;background:#f4dada}.wf-job-badge.running,.wf-job-badge.answered,.wf-job-badge.queued{color:#7a5a12;background:#f5ebd3}.wf-job-report{white-space:pre-wrap;font-size:13px;line-height:1.5}.wf-job-error{white-space:pre-wrap;color:#7e2a2a;font-family:IBM Plex Mono,monospace;font-size:12px}.wf-job-files{flex-wrap:wrap;gap:6px;display:flex}.wf-job-ask{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.wf-job-ask textarea{width:100%;font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;font-size:13px}.wf-job-q{font-size:13px}.wf-page-head{margin-bottom:10px}.wf-page-head h2{align-items:baseline;gap:10px;font-size:20px;display:flex}.wf-page-head h2 .eyebrow{margin:0;font-size:10.5px}.wf-folderbar{background:var(--paper);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:5px 10px;display:flex}.wf-folderbar-k{color:var(--ink-soft);white-space:nowrap;font-size:12px;font-weight:600}.wf-folderbar .wf-folders.compact{margin:0}.wf-sticky{gap:6px;padding-bottom:6px}.wf-head{align-items:center}.wf-head h2{font-size:18px}.wf-head .eyebrow{display:none}.wf-meta{margin-top:2px}.wf-year{flex-direction:row;align-items:center;gap:6px}.wf-year select{padding:4px 8px}.wf-sticky .wf-tab{padding:5px 14px}.wf-panel-head h3 .wf-folders.compact{font-size:12px}.wf-page .page-head{position:static}body:has(.wf-page) .capture-bar{position:static}.wf-qbtn{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:stretch;display:inline-flex;overflow:hidden}.wf-qbtn.own{background:#faf7f2;border-color:#e3d3bc}.wf-qbtn button{font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:0;padding:5px 9px;font-size:12.5px}.wf-qbtn button:hover:not(:disabled){background:#f1ebe1}.wf-qbtn button:disabled{opacity:.5;cursor:default}.wf-qbtn .wf-qcopy{border-left:1px solid var(--line);color:var(--ink-soft);padding:5px 7px}.wf-quick-mine{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.wf-custom{flex-direction:column;gap:6px;margin-top:12px;display:flex}.wf-custom textarea{width:100%;font:inherit;border:1px solid var(--line);resize:vertical;background:#fff;border-radius:6px;padding:8px 10px;font-size:13px}.wf-custom-act{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wf-linkbtn{color:var(--teal-dark);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:12.5px;font-weight:600}.wf-quick-jobs{border-top:1px solid var(--line);flex-direction:column;gap:12px;margin-top:14px;padding-top:12px;display:flex}.wf-quick-job-title{font-size:13px}.wf-quick-jobs .wf-job{margin-top:4px}.wf-job-files{flex-direction:column;align-items:stretch;gap:4px}.wf-job-file{border:1px solid var(--line);background:#fff;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;padding:5px 8px;display:flex}.wf-job-file-name{color:var(--teal-dark);overflow-wrap:anywhere;font-size:13px;font-weight:600;text-decoration:none}.wf-job-file-name:hover{text-decoration:underline}.wf-job-file-path{min-width:120px;color:var(--ink-soft);overflow-wrap:anywhere;flex:1;font-size:11px}.wf-kpi-btn{font:inherit;text-align:left;cursor:pointer;border:1px solid var(--line)}.wf-kpi-btn:hover{border-color:#e3d3bc;box-shadow:0 2px 8px #0000000f}.wf-kpi-btn.active{border-color:var(--teal);box-shadow:inset 0 -3px 0 var(--teal)}.wf-client-row{border-bottom:1px solid var(--line);align-items:stretch;display:flex}.wf-client-row:last-child{border-bottom:0}.wf-client-row .wf-client{border-bottom:0;flex:1;min-width:0;padding-left:6px}.wf-client-row.picked{background:#faf7f2}.wf-pick{width:15px;height:15px;accent-color:var(--teal);cursor:pointer;flex:none;margin:11px 0 0 10px}.wf-bulk{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;display:flex}.wf-bulk-all{cursor:pointer;align-items:center;gap:6px;display:flex}.wf-bulk-all input{accent-color:var(--teal)}.wf-bulk-bar{background:#faf7f2;border:1px solid #e3d3bc;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.wf-bulk-q{flex-basis:100%;font-size:12.5px}.wf-infobar{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;align-items:stretch;display:flex;overflow:hidden}.wf-info-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px 18px;min-width:0;padding:9px 14px;display:grid}.wf-info{flex-direction:column;gap:1px;min-width:0;display:flex}.wf-info.wide{grid-column:span 2}.wf-info-k{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);white-space:nowrap;font-size:10px;font-weight:600}.wf-info-v{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.wf-info-actions{border-left:1px solid var(--line);background:#fafaf8;flex:none;grid-template-columns:1fr 1fr;align-content:center;gap:6px;min-width:190px;padding:9px 12px;display:grid}.wf-info-actions .wf-info-tasks,.wf-info-actions .btn:only-of-type{grid-column:1/-1}.wf-info-actions .btn{text-align:center;justify-content:center}.wf-info-tasks{text-align:center;color:var(--teal-dark);white-space:nowrap;background:#f1ebe1;border-radius:6px;padding:4px 8px;font-size:12.5px;text-decoration:none}.wf-info-tasks.overdue{color:#8a3d1c;background:#f6e1d6}.wf-info-tasks.none{color:var(--ink-soft);background:#ece9e1}.wf-info-tasks:hover{text-decoration:underline}@media (max-width:700px){.wf-infobar{flex-direction:column}.wf-info-actions{border-left:0;border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.wf-info.wide{grid-column:span 1}}.wf-ms-row{grid-template-columns:1fr 1fr;gap:6px;display:grid}.wf-ms{min-width:0;position:relative}.wf-ms-btn{border:1px solid var(--line);background:var(--paper);cursor:pointer;text-align:left;width:100%;font:inherit;border-radius:6px;flex-direction:column;align-items:flex-start;gap:0;padding:4px 22px 4px 9px;display:flex;position:relative}.wf-ms-btn:hover{border-color:#e3d3bc}.wf-ms.on .wf-ms-btn{border-color:var(--teal);background:#faf7f2}.wf-ms-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:9.5px;font-weight:600}.wf-ms-val{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12.5px;overflow:hidden}.wf-ms.on .wf-ms-val{color:var(--teal-dark);font-weight:600}.wf-ms-caret{color:var(--ink-soft);font-size:11px;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.wf-ms-menu{z-index:40;border:1px solid var(--line);background:#fff;border-radius:8px;width:max-content;min-width:100%;max-width:260px;padding:6px;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 10px 30px #00000024}.wf-ms-opt{cursor:pointer;white-space:nowrap;border-radius:5px;align-items:center;gap:8px;padding:5px 6px;font-size:13px;display:flex}.wf-ms-opt:hover{background:#f1ebe1}.wf-ms-opt input{accent-color:var(--teal)}.wf-ms-foot{border-top:1px solid var(--line);justify-content:space-between;margin-top:4px;padding-top:4px;display:flex}.wf-ms-summary{color:var(--ink-soft);justify-content:space-between;align-items:center;font-size:12px;display:flex}.wf-cf-row{border-bottom:1px dashed var(--line);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.6fr) auto;align-items:start;gap:10px;padding:8px 0;display:grid}.wf-cf-row .field{margin:0}.wf-cf-row textarea{min-height:64px}.wf-cf-act{gap:2px;padding-top:22px;display:flex}.wf-linkbtn:disabled{opacity:.35;cursor:default}.wf-linkbtn.danger{color:#a33a3a}.wf-cf-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:end;gap:10px 16px;display:grid}.wf-cf-grid .field{margin:0}.wf-cf-grid .wf-ms-btn{padding:8px 24px 8px 10px}@media (max-width:760px){.wf-cf-row{grid-template-columns:1fr}.wf-cf-act{padding-top:0}}.wf-info-rows{flex-direction:column;flex:1;justify-content:center;gap:8px;min-width:0;padding:9px 14px;display:flex}.wf-info-line{gap:18px;min-width:0;display:flex}.wf-info-line .wf-info{flex:1 1 0;min-width:0}.wf-info-line .wf-info.wide{flex:2 1 0;grid-column:auto}@media (max-width:700px){.wf-info-line{flex-wrap:wrap}.wf-info-line .wf-info{flex:40%}}.wf-info-rows{align-content:center;gap:8px 18px;display:grid}.wf-attach{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;font-size:12.5px;display:flex}.wf-attach select{border:1px solid var(--line);background:#fff;border-radius:5px;padding:2px 6px;font-size:12px}.wf-attach-list{flex-wrap:wrap;flex-basis:100%;gap:4px;display:flex}.wf-attach-file{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:4px;padding:1px 4px 1px 9px;font-size:12px;display:inline-flex}.wf-attach-skip{color:#8a3d1c;flex-basis:100%;font-size:12px}.wf-job-ups{flex-wrap:wrap;align-items:center;gap:4px;font-size:12px;display:flex}.wf-prof-tag{color:var(--teal-dark);white-space:nowrap;background:#f1ebe1;border-radius:10px;margin-left:6px;padding:1px 6px;font-size:10.5px}.wf-prof-tag.warn{color:#8a3d1c;background:#f6e1d6}.wf-home-link{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.wf-home-link:hover{color:var(--teal-dark);text-decoration:underline}.craprog-note{color:var(--ink-soft);grid-column:1/-1;margin:-2px 0 4px;font-size:12px}.craprog-note b{color:var(--ink)}.craprog-note .pay{border-left:3px solid var(--teal,#1b3557);background:var(--paper);margin-top:2px;padding:4px 8px}.ccpc-box{border:1px solid var(--line);background:var(--paper);border-radius:8px;margin:4px 0 12px;padding:10px 12px}.ccpc-box .checkline{font-weight:600}.ccpc-dates{gap:4px;margin-top:8px;display:grid}.ccpc-dates>div:not(.hint){justify-content:space-between;gap:12px;font-size:13px;display:flex}.ccpc-dates .pay{border-left:3px solid var(--teal,#1b3557);padding:4px 8px}.wf-viewtoggle{border:1px solid var(--line);border-radius:6px;margin-left:auto;display:inline-flex;overflow:hidden}.wf-viewtoggle button{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;padding:3px 9px;font-size:12px;font-weight:600}.wf-viewtoggle button.on{color:var(--teal-dark);background:#f1ebe1}.wf-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;margin-bottom:20px;display:grid}.wf-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);position:relative}.wf-card:hover{border-color:var(--teal)}.wf-card.picked{border-color:var(--teal);background:#f6f1e9}.wf-card .wf-pick{position:absolute;top:10px;right:10px}.wf-card-body{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 34px 12px 12px;display:flex}.wf-card-type{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-size:11px}.wf-card-name{word-break:break-word;font-size:14px;font-weight:600;line-height:1.3}.wf-card-next{color:var(--ink-soft);font-size:12.5px}@media (max-width:640px){.wf-grid{grid-template-columns:minmax(0,1fr)}}.wf-dl-card{text-align:left;color:var(--ink);cursor:pointer;width:100%;font:inherit;border-left-width:4px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;display:flex}.wf-dl-card.overdue{border-left-color:var(--overdue)}.wf-dl-card.soon{border-left-color:var(--soon)}.wf-dl-date{font-size:13px;font-weight:700}.wf-panel-head .wf-viewtoggle{margin-left:auto}.task-modal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.task-page{display:block}.task-page .task-page-card{width:100%;max-width:none;box-shadow:none;border:1px solid var(--line)}.svc-chips{flex-wrap:wrap;gap:6px;display:flex}.svc-chip{border:1.5px solid var(--teal);color:var(--teal-dark);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:4px 6px 4px 12px;font-size:13px;font-weight:600;display:inline-flex}.svc-chip.extra{color:#7a4e0b;background:#fdf7ec;border-color:#f2a541}.svc-chip button{cursor:pointer;color:inherit;background:0 0;border:0;padding:0 4px;font-size:15px;line-height:1}.svc-card{border:1px solid var(--line);background:var(--paper);border-left:4px solid #f2a541;border-radius:8px;margin-bottom:10px;padding:10px 12px}.svc-card.done{border-left-color:var(--teal);opacity:.85}.svc-card-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.svc-toggle{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;font-size:14px}.svc-name{font-weight:700}.svc-staff{color:var(--ink-soft);align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.svc-body{margin-top:10px}.svc-steps{margin:0 0 10px;padding-left:22px}.svc-steps li{border-bottom:1px solid var(--line);padding:6px 0}.svc-steps li.done .svc-step-t{color:var(--ink-soft)}.svc-steps li.cur .svc-step-t{font-weight:600}.svc-step-t{display:block}.svc-step-a{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.svc-docs{columns:2;column-gap:20px;margin-bottom:8px}.svc-docs .section-label{column-span:all}.svc-docs .checkline{break-inside:avoid}.svc-edit textarea{font-size:13px}@media (max-width:700px){.svc-docs{columns:1}}.wf-ask-open{color:#1b3557;cursor:pointer;background:#f6f1e9;border:1.5px solid #9a7344;border-radius:999px;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.wf-ask-open:hover{background:#ccfbf1}.wf-ask{background:#f6f1e9;border:1.5px solid #9a7344;border-radius:8px;flex-direction:column;gap:6px;max-width:640px;margin-top:8px;padding:10px;display:flex}.wf-ask textarea{width:100%;font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;font-size:13px}.wf-ask-k{color:#1b3557;font-size:12.5px;font-weight:700}.wf-ask-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wf-split{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.wf-split-main{flex-direction:column;gap:14px;min-width:0;display:flex}.wf-split-side{flex-direction:column;gap:14px;max-height:calc(100vh - 24px);display:flex;position:sticky;top:12px;overflow:auto}@media (max-width:1200px){.wf-split{grid-template-columns:minmax(0,1fr)}.wf-split-side{max-height:none;position:static}}.wf-chat{border:1.5px solid #9a7344}.wf-chat-log{flex-direction:column;gap:8px;max-height:52vh;padding:2px 2px 6px;display:flex;overflow:auto}.wf-chat-empty{color:var(--muted,#667);background:#f6f1e9;border-radius:8px;padding:10px;font-size:12.5px}.wf-chat-pair{flex-direction:column;gap:6px;display:flex}.wf-chat-msg{white-space:pre-wrap;word-break:break-word;border-radius:10px;padding:8px 10px;font-size:13px;line-height:1.45}.wf-chat-msg.me{color:#fff;background:#0d304f;border-bottom-right-radius:3px;align-self:flex-end;max-width:92%}.wf-chat-msg.ai{color:#0f172a;background:#f1f5f9;border-bottom-left-radius:3px;align-self:flex-start;max-width:96%}.wf-chat-msg.pending{color:#1b3557;font-style:italic}.wf-chat-msg.err{background:#fdecea}.wf-chat-who{opacity:.75;margin-bottom:2px;font-size:10.5px;font-style:normal;font-weight:700;display:block}.wf-chat-reply{flex-direction:column;gap:6px;margin-top:6px;display:flex}.wf-chat-reply textarea,.wf-chat-box textarea{width:100%;font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;font-size:13px}.wf-chat-box{border-top:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:6px;padding-top:8px;display:flex}.wf-chat-files{flex-wrap:wrap;gap:4px;font-size:12px;display:flex}.wf-guide-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.wf-guide-docs{color:var(--muted,#556);margin-top:2px;font-size:12px;line-height:1.4}.wf-step-wide{grid-column:2/-1;min-width:0}.wf-step-wide:empty{display:none}.wf-period .wf-step-wide{grid-column:1/-1}.wf-step-wide .wf-job{max-width:none}.gchat-fab{z-index:60;color:#fff;cursor:pointer;background:#1b3557;border:0;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700;position:fixed;bottom:18px;right:18px;box-shadow:0 6px 18px #0d304f40}.gchat-fab:hover{background:#115e59}.gchat{z-index:61;background:var(--paper,#fff);border:1.5px solid #9a7344;border-radius:12px;flex-direction:column;width:400px;max-width:calc(100vw - 24px);height:min(620px,100vh - 36px);display:flex;position:fixed;bottom:18px;right:18px;overflow:hidden;box-shadow:0 12px 32px #0d304f40}.gchat-head{color:#fff;background:#0d304f;align-items:center;gap:8px;padding:10px 12px;display:flex}.gchat-sub{opacity:.8;flex:1;font-size:11.5px}.gchat-x{color:#fff;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:22px;line-height:1}.gchat-log{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex;overflow:auto}.gchat-box{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding:8px 10px;display:flex}.gchat-box textarea{width:100%;font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;font-size:13px}.gchat-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media print{.gchat-fab,.gchat{display:none}}.gchat-pc{white-space:nowrap;font-size:11px;font-weight:700}.gchat-pc.on{color:#86efac}.gchat-pc.off{color:#fdba74}.wf-years{flex-wrap:wrap;gap:4px;padding:0 8px 6px 30px;display:flex}.wf-card .wf-years{padding:0 10px 10px}.wf-year-chip{color:#92400e;cursor:pointer;background:#fffbeb;border:1px solid #f59e0b;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.wf-year-chip:hover{background:#fef3c7}.wf-client-row{flex-wrap:wrap}.wf-client-row .wf-years{flex-basis:100%}.wf-cancel{border-color:#fca5a5}.wf-cancel-form{flex-direction:column;gap:8px;max-width:560px;display:flex}.wf-cancel-form .field{flex-direction:column;gap:4px;font-size:13px;display:flex}.wf-cancel-form select,.wf-cancel-form input[type=text]{font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 8px;font-size:13px}.wf-cancel-sure{align-items:flex-start;gap:8px;font-size:13px;display:flex}.btn.danger{color:#fff;background:#b42318;border-color:#b42318}.wf-cancelled{background:#fef2f2;border:1.5px solid #fca5a5;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0;padding:10px 12px;font-size:13px;display:flex}.client-focus-bar{background:#f6f1e9;border:1.5px solid #9a7344;border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;font-size:13.5px;display:flex}.client-card-notes{white-space:pre-wrap;color:var(--muted,#556);font-size:12.5px}.wf-timing{color:#1b3557;white-space:nowrap;gap:28px;margin-top:4px;font-size:12px;font-weight:600;display:flex}.pill.wf-task-done{color:#166534;background:#dcfce7}.wf-stage-state{border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12.5px;font-weight:700;display:inline-flex}.wf-stage-state .wf-when{font-weight:400}.wf-st-done{color:#166534;background:#dcfce7}.wf-st-work{color:#075985;background:#e0f2fe}.wf-st-ask{color:#92400e;background:#fef3c7}.wf-st-fail{color:#991b1b;background:#fee2e2}.wf-step.sent .wf-dot{color:#fff;background:#16a34a}.wf-complete{color:#166534;background:#dcfce7;border:1.5px solid #16a34a;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0;padding:10px 14px;font-size:14px;font-weight:700;display:flex}.wf-complete .hint{color:#166534;font-weight:400}.wf-complete-chip{color:#166534;background:#dcfce7;border-radius:999px;margin-right:6px;padding:1px 8px;font-size:11.5px;font-weight:700;display:inline-block}.wf-complete-time{color:#166534;margin-top:0;font-size:13px}.wf-card-progress{flex-direction:column;gap:3px;width:100%;display:flex}.wf-card-bar{background:#e5e7eb;border-radius:99px;width:100%;height:6px;display:block;overflow:hidden}.wf-card-bar>span{background:#16a34a;border-radius:99px;height:100%;display:block}.wf-card-meta{color:var(--ink-soft);font-size:11.5px}.wf-card-tasks{border-top:1px solid var(--line);flex-direction:column;gap:3px;width:100%;margin-top:2px;padding-top:6px;display:flex}.wf-card-tasks-h{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-soft);font-size:11px;font-weight:700}.wf-card-task{justify-content:space-between;gap:6px;width:100%;font-size:12px;display:flex}.wf-card-task-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.wf-card-task-due{white-space:nowrap;color:var(--ink-soft)}.wf-card-task-due.bad{color:var(--overdue);font-weight:700}.wf-card-task-due.soon{color:var(--soon);font-weight:700}.wf-card-task-more{color:var(--teal);font-size:11.5px}.wf-inprocess{border-color:#7dd3fc}.wf-inprocess .wf-panel-head h3{color:#075985}.wf-card-owner{color:var(--ink-soft);font-size:12px;line-height:1.35}a.wf-card .wf-card-owner,td .wf-card-owner{text-decoration:none;display:inline-block}.wf-redo{border-color:#fcd34d}.wf-redo-hist{color:var(--ink-soft);flex-direction:column;gap:3px;margin:0 0 10px;padding-left:18px;font-size:12.5px;display:flex}.wf-redo-warn{color:#92400e;background:#fffbeb;border:1px solid #f59e0b;border-radius:8px;padding:8px 10px;font-size:13px}.wf-cancel-form textarea{font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.sheet-opts{border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:5px;margin-top:6px;padding:10px;display:flex}.sheet-opt{align-items:flex-start;gap:7px;font-size:13px;line-height:1.35;display:flex}.sheet-opts textarea{font:inherit;border:1px solid var(--line);border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.addr-search{margin-bottom:6px;position:relative}.addr-search input,.addr-setup input{width:100%;font:inherit;border:1px dashed var(--line);background:#f8fafc;border-radius:6px;padding:6px 8px;font-size:13px}.addr-list{z-index:30;border:1px solid var(--line);background:#fff;border-radius:8px;max-height:260px;margin:2px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow:auto;box-shadow:0 8px 20px #0000001f}.addr-list button{all:unset;box-sizing:border-box;cursor:pointer;border-radius:6px;width:100%;padding:6px 8px;font-size:13px;display:block}.addr-list button:hover{background:#eef4fb}.addr-list button span{color:var(--ink-soft);font-size:12px}.addr-setup{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.addr-setup input{flex:1;min-width:180px}.wf-langs{flex-wrap:wrap;align-items:center;gap:4px 16px;display:flex}.wf-langs input[type=text],.wf-langs input:not([type]){font:inherit;border:1px solid var(--line);border-radius:6px;width:150px;padding:3px 6px;font-size:13px}.filters{flex-wrap:nowrap;align-items:center}.filters .search-input-wrap{flex:auto;min-width:260px}.filters .search-input-wrap input[type=text]{width:100%;min-width:0}.filters .multiselect{flex:0 0 190px;width:190px}.filters .multiselect-trigger{border-radius:5px;padding:8px 10px;font-size:13px}@media (max-width:720px){.filters{flex-wrap:wrap}.filters .search-input-wrap{flex-basis:100%}.filters .multiselect{flex:45%;width:auto}}.source-wf{color:var(--teal,#1b3557);margin-bottom:2px;font-size:11px;font-weight:600}.nav-btn .nav-icon{opacity:.78;flex:0 0 18px}.nav-btn:hover .nav-icon,.nav-btn.active .nav-icon{opacity:1}.nav-btn.active .nav-icon{color:var(--brass)}.nav-btn .nav-label{flex:auto;min-width:0}.task-card .sub .cowner{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.reg-client .cowner{font-style:normal}.wf-late{border-color:#e3d3bc}.wf-late-rows{flex-direction:column;gap:6px;display:flex;overflow-x:auto}.wf-late-row{grid-template-columns:130px 1.2fr 1.4fr 110px 100px 170px 140px 24px;align-items:center;gap:6px;min-width:900px;display:grid}.wf-late-row input,.wf-late-row select{font:inherit;border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;padding:5px 6px;font-size:13px}.wf-late-headrow span{color:var(--ink-soft);font-size:11.5px;font-weight:600}.wf-complete-times{flex-wrap:wrap;gap:6px 14px;margin-top:4px;display:flex}.wf-complete-times .wf-complete-time b{margin-right:4px;font-weight:600}.wf-time-all{border-left:2px solid #1b3557;padding-left:8px;font-weight:600}.wf-chat-ups{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:4px;font-size:12px;display:flex}.wf-chat-box .wf-attach,.gchat-box .wf-attach{margin:4px 0}.wf-dialog{border:1px solid var(--line);background:#f8fafc;border-radius:8px;flex-direction:column;gap:8px;margin:6px 0 8px;padding:8px 10px;display:flex}.wf-qa{flex-direction:column;gap:3px;display:flex}.wf-qa+.wf-qa{border-top:1px dashed var(--line);padding-top:8px}.wf-qa-line{white-space:pre-wrap;align-items:flex-start;gap:8px;font-size:13px;line-height:1.45;display:flex}.wf-qa-tag{color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-top:1px;font-size:11.5px;font-weight:700;display:inline-flex}.wf-qa-line.q .wf-qa-tag{background:#0d304f}.wf-qa-line.a .wf-qa-tag{background:#1b3557}.wf-qa-line.a.pending{color:var(--ink-soft);font-style:italic}.wf-qa-who{color:var(--ink-soft);font-size:11px;font-style:normal;display:block}.wf-qa-ups{color:var(--ink-soft);font-size:12px}.rel-block{border:1px solid var(--line);border-radius:var(--radius);background:#f7f8f5;margin-top:10px;padding:10px 12px 8px}.rel-title{text-transform:uppercase;letter-spacing:.08em;color:var(--brass);justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;font-family:IBM Plex Mono,monospace;font-size:10.5px;display:flex}.rel-household{border-bottom:1px dashed var(--line);margin-bottom:4px;padding-bottom:6px}.rel-household:last-child{border-bottom:none;margin-bottom:0}.rel-household-head{flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:flex}.rel-household-name{color:var(--ink);font-weight:600}.rel-manage{text-transform:none;letter-spacing:0;padding:2px 8px;font-family:Inter,system-ui,sans-serif;font-size:11px}.rel-empty{color:var(--ink-soft);font-size:12px}.rel-members,.rel-list{margin:4px 0 0;padding:0;font-size:12.5px;list-style:none}.rel-members li,.rel-list li{justify-content:space-between;gap:8px;padding:2px 0;display:flex}.rel-member-role{color:var(--ink-soft);white-space:nowrap;font-size:11.5px}.rel-more{color:var(--ink-soft);font-size:11.5px}.rel-row{border-top:1px dashed var(--line);grid-template-columns:96px 1fr;gap:8px;padding:5px 0;font-size:12.5px;display:grid}.rel-household+.rel-row{border-top:none}.rel-label{color:var(--ink-soft)}.rel-value{flex-direction:column;align-items:flex-start;gap:1px;min-width:0;display:flex}.rel-sub{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11.5px}.rel-row .rel-list{margin:0}.hh-code{background:var(--ink);color:#fff;letter-spacing:.02em;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.hh-status{border-radius:20px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.hh-status.suggested{background:var(--soon-bg);color:var(--soon)}.hh-status.confirmed{background:var(--ok-bg);color:var(--ok)}.hh-role-chip{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:20px;padding:0 8px;font-size:11px;display:inline-block}.hh-role-chip.head{border-color:var(--brass);color:var(--brass);font-weight:600}.hh-modal{max-width:720px}.hh-title{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.hh-warn{color:var(--overdue);font-weight:600}.hh-banner{background:var(--soon-bg);border:1px solid #f0d3a6;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding:10px 12px;font-size:13px;display:flex}.hh-list{flex-direction:column;gap:6px;display:flex}.hh-member{border:1px solid var(--line);background:#fff;border-radius:6px;grid-template-columns:20px 1fr 170px auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.hh-member.is-head{border-color:var(--brass);background:#fbf8ef}.hh-member select{border:1px solid var(--line);font:inherit;background:#fff;border-radius:5px;padding:6px 8px;font-size:12.5px}.hh-member-main{flex-direction:column;align-items:flex-start;min-width:0;font-size:13.5px;display:flex}.hh-member>.hh-role-chip{justify-self:start}.hh-type{color:var(--ink-soft);font-size:11.5px}.hh-note{color:var(--soon);font-size:11px}.hh-member-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.hh-split{background:#eef4f2;border:1px solid #c8ddd8;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;font-size:13px;display:flex}.hh-split select{border:1px solid var(--line);font:inherit;background:#fff;border-radius:5px;padding:6px 8px}.hh-add{grid-template-columns:1fr 170px auto;align-items:center;gap:8px;display:grid}.hh-add select{border:1px solid var(--line);font:inherit;background:#fff;border-radius:5px;padding:7px 9px}.hh-add input{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px 9px}.hh-error{color:var(--overdue);background:var(--overdue-bg);border-radius:5px;margin-top:10px;padding:8px 10px;font-size:13px}.party-row{grid-template-columns:1fr 210px 90px 32px;align-items:center;gap:8px;margin-bottom:6px;display:grid}.party-row>*{min-width:0}.party-row input{border:1px solid var(--line);box-sizing:border-box;border-radius:5px;width:100%;padding:7px 9px}.party-row select{border:1px solid var(--line);box-sizing:border-box;width:100%;font:inherit;background:#fff;border-radius:5px;padding:7px 9px}.dep-linked{color:var(--teal);font-size:11px}@media (max-width:640px){.hh-member{grid-template-columns:20px 1fr}.hh-member select,.hh-member-actions{grid-column:2}.hh-add,.party-row,.rel-row{grid-template-columns:1fr}}.rel-subhead{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:6px 0 0;font-size:10.5px}.rel-outside{opacity:.85}.rel-outside .rel-member-role{color:var(--soon);align-items:center;gap:6px;display:flex}.rel-add{padding:0 6px;font-size:10.5px;line-height:18px}.addr-inherited{color:var(--ink-soft);font-family:Inter,system-ui,sans-serif;font-size:10.5px;font-weight:400;display:block}.addr-missing{color:var(--ink-soft);font-family:Inter,system-ui,sans-serif;font-style:italic;font-weight:400}.modal-x{display:none}.voice-btn{border:1px solid var(--line);background:var(--paper);width:40px;height:40px;color:var(--teal-dark);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.voice-btn:hover{background:#f1ebe1}.voice-btn.on{background:var(--overdue);border-color:var(--overdue);color:#fff;animation:1.2s ease-in-out infinite voice-pulse}@keyframes voice-pulse{0%,to{box-shadow:0 0 #b4282873}50%{box-shadow:0 0 0 8px #b4282800}}.voice-error{color:var(--overdue);font-size:12px}.capture-voice{align-items:center;gap:10px;margin-bottom:10px;display:flex}.capture-new-client{color:var(--teal-dark);margin-top:4px}.capture-new-phone{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);border-radius:5px;margin-top:6px;padding:8px 10px}.label-optional{color:var(--ink-soft);text-transform:none;letter-spacing:0;font-weight:400}.cap-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);max-width:880px;padding:16px 18px 18px}.cap-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.cap-modes{background:#f1ebe1;border-radius:8px;gap:2px;padding:3px;display:inline-flex}.cap-modes button{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 14px;font-size:13.5px}.cap-modes button.on{background:var(--paper);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #00000014}.cap-label{color:var(--ink-soft);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.cap-text{box-sizing:border-box;border:1.5px solid var(--line);width:100%;font:inherit;background:var(--paper);color:var(--ink);resize:vertical;border-radius:8px;padding:11px 12px;font-size:15px;line-height:1.45}.cap-text:focus{border-color:var(--teal);outline:none}.cap-attach{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.cap-link{font:inherit;color:var(--teal-dark);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:600;text-decoration:underline}.cap-ai{margin-left:auto}.cap-files{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.cap-extra{white-space:pre-wrap;margin-top:10px}.cap-help{margin-top:12px}.cap-templates{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.cap-templates .cap-label{margin:0 4px 0 0}.cap-tpl{border:1px solid var(--line);background:var(--bg);border-radius:999px;align-items:center;display:inline-flex;overflow:hidden}.cap-tpl button{font:inherit;cursor:pointer;color:var(--ink);background:0 0;border:0;padding:5px 10px;font-size:12.5px}.cap-tpl .cap-tpl-x{color:var(--ink-soft);padding:5px 8px 5px 2px}.cap-plan{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.cap-line{color:var(--ink-soft);margin-bottom:10px;font-size:13px;font-style:italic}.cap-for{align-items:center;gap:12px;display:flex}.cap-for .cap-label{min-width:28px;margin:0}.cap-for-picker{flex:1;max-width:420px}.cap-chips{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.cap-chip{border:1px solid var(--line);background:var(--paper);font:inherit;color:var(--ink);cursor:pointer;border-radius:999px;padding:5px 11px;font-size:13px}.cap-chip:hover{border-color:var(--teal);background:#f0f6f4}.cap-chip-num{color:var(--ink-soft);font-size:12px}.cap-new{max-width:420px;margin-top:8px}.cap-plan-head{color:var(--brass);margin:16px 0 8px;font-size:13px;font-weight:600}.cap-plan-head .mono{color:var(--ink-soft);margin-left:6px;font-size:12px;font-weight:400}.cap-items{border:1px solid var(--line);border-radius:8px;overflow:hidden}.cap-item{border-bottom:1px solid var(--line)}.cap-item:last-child{border-bottom:0}.cap-item.off .cap-item-main{opacity:.45}.cap-item-row{align-items:center;gap:12px;padding:11px 14px;display:flex}.cap-item-row input[type=checkbox]{width:17px;height:17px;accent-color:var(--teal);flex-shrink:0}.cap-item-main{flex:1;min-width:0}.cap-kind{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:10.5px}.cap-item.kind-request .cap-kind{color:var(--soon)}.cap-item.kind-invoice .cap-kind{color:var(--teal-dark)}.cap-title{overflow-wrap:anywhere;margin:1px 0;font-size:14.5px;font-weight:600}.cap-meta{color:var(--ink-soft);font-size:12.5px}.cap-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:#f1ebe1;border-radius:4px;margin-right:4px;padding:1px 6px;font-family:IBM Plex Mono,monospace;font-size:10px;display:inline-block}.cap-edit{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:6px 4px;font-size:13px;font-weight:600}.cap-edit-box{flex-direction:column;gap:10px;padding:4px 14px 14px 43px;display:flex}.cap-edit-box input[type=text],.cap-edit-box input[type=date],.cap-edit-box input[type=number],.cap-edit-box select{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;background:var(--paper);border-radius:6px;padding:8px 10px}.cap-edit-box label{color:var(--ink-soft);margin-bottom:4px;font-size:12px;display:block}.cap-edit-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.cap-check{color:var(--ink);align-items:center;gap:8px;font-size:13px;display:flex}.cap-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.cap-tpl-save input[type=text]{border:1px solid var(--line);font:inherit;border-radius:6px;width:220px;min-width:0;max-width:100%;padding:6px 9px;font-size:13px}.cap-foot-btns{gap:8px;margin-left:auto;display:flex}.cap-report{white-space:pre-wrap;margin-top:12px;display:block}.m-topbar,.m-tabbar,.m-backdrop,.m-close,.wf-m-back{display:none}@media (max-width:800px){.shell{flex-direction:column}.m-topbar{z-index:40;background:var(--ink);color:#fff;padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top));align-items:center;gap:8px;display:flex;position:sticky;top:0}.m-icon-btn{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.m-icon-btn:active{background:#ffffff1f}.m-add-btn{background:var(--teal)}.m-brand{color:#fff;flex:1;justify-content:center;align-items:center;gap:8px;min-width:0;text-decoration:none;display:flex}.m-brand-logo{background:#fff url(/logo.png) -50px -48px/141px 141px no-repeat;border-radius:5px;flex-shrink:0;width:41px;height:26px;box-shadow:0 0 0 3px #fff}.m-brand-name{letter-spacing:.02em;font-family:Montserrat,sans-serif;font-size:17px;font-weight:600}.m-add-wrap{position:relative}.m-add-menu{z-index:45;background:#fff;border-radius:10px;min-width:170px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #00000040}.m-add-menu button{text-align:left;width:100%;font:inherit;color:var(--ink);background:0 0;border:0;border-radius:7px;padding:12px 14px;font-size:15px;font-weight:600;display:block}.m-add-menu button:active{background:#f1ebe1}.sidebar{z-index:70;width:min(300px,86vw);height:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);box-shadow:none;flex-direction:column;transition:transform .22s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-102%)}.sidebar.open{transform:none;box-shadow:8px 0 30px #00000059}.m-close{top:calc(8px + env(safe-area-inset-top));color:#fff;cursor:pointer;z-index:2;background:0 0;border:0;width:40px;height:40px;font-size:28px;line-height:1;display:block;position:absolute;right:8px}.brand{padding-top:20px}.nav-btn{padding:12px;font-size:15px}.m-backdrop{z-index:65;opacity:0;pointer-events:none;background:#0a122073;transition:opacity .2s;display:block;position:fixed;inset:0}.m-backdrop.open{opacity:1;pointer-events:auto}body.m-menu-open{overflow:hidden}.m-tabbar{z-index:45;border-top:1px solid var(--line);padding:4px 2px calc(4px + env(safe-area-inset-bottom));background:#fff;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #0000000f}.m-tab{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:6px 2px;font-size:10.5px;font-weight:600;text-decoration:none;display:flex}.m-tab.active{color:var(--teal-dark)}.m-tab-icon{display:flex;position:relative}.m-tab-badge{background:var(--overdue);color:#fff;text-align:center;border-radius:9px;min-width:16px;height:16px;padding:0 4px;font-size:9.5px;font-weight:700;line-height:16px;position:absolute;top:-6px;left:13px}.main{padding:14px 12px calc(84px + env(safe-area-inset-bottom))}.capture-bar{margin:-14px -12px 12px;padding:8px 12px;position:static}.capture-bar-field{min-width:0}.page-head,.ledger-strip-wrap,.dashboard-widgets-row,.filters,.reg-toolbar,.grid-filters,.reg-row.head,.crow.head{position:static!important;top:auto!important}.page-head{padding-bottom:14px}.page-head h2{font-size:22px}.page-head>div:last-child{flex-wrap:wrap;gap:8px;display:flex}.client-grid,.task-grid{grid-template-columns:minmax(0,1fr);gap:10px}.reg-row,.reg-row.head{grid-template-columns:6px 1fr}.reg-row-select,.reg-client,.source-pill,.reg-due,.priority-pill,.assignee-pill,.status-pill,.reg-actions{display:none}.field-row{grid-template-columns:1fr}.overlay{align-items:stretch;padding:0}.modal{min-height:100%;padding:calc(18px + env(safe-area-inset-top)) 16px calc(24px + env(safe-area-inset-bottom));box-sizing:border-box;border-radius:0;max-width:none!important}.modal .modal-actions,.modal .modal-footer{z-index:5;background:var(--paper);margin:20px -16px calc(-24px - env(safe-area-inset-bottom));padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);position:sticky;bottom:0;box-shadow:0 -6px 14px #0000000d}.modal .modal-actions .btn,.modal .modal-footer .btn{padding:11px 16px;font-size:15px}.task-modal-head{padding-right:46px;position:relative}.modal-x{width:42px;height:42px;color:var(--ink);cursor:pointer;background:#f1ebe1;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:26px;line-height:1;display:flex;position:absolute;top:-6px;right:-4px}.cap-card{padding:12px}.cap-text{min-height:96px}.cap-modes button{padding:7px 11px}.cap-for{flex-direction:column;align-items:stretch;gap:4px}.cap-for-picker{max-width:none}.cap-item-row{gap:10px;padding:10px}.cap-edit-box{padding:4px 10px 12px}.cap-foot{bottom:calc(64px + env(safe-area-inset-bottom));background:var(--paper);z-index:6;border-top:1px solid var(--line);padding:10px 0;position:sticky}.cap-foot-btns{width:100%}.cap-foot-btns .btn{flex:1;justify-content:center;padding:11px 12px;font-size:15px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}.wf-layout.has-client .wf-list{display:none}.wf-sticky{box-shadow:none;margin-bottom:0;position:static!important;top:auto!important}.wf-m-back{border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;border-radius:8px;align-self:flex-start;align-items:center;gap:4px;padding:8px 12px;font-size:14px;font-weight:600;display:inline-flex}.wf-tabs{flex-wrap:nowrap;overflow-x:auto}.wf-clients{max-height:none}.wf-client{padding-top:12px;padding-bottom:12px}.gchat-fab{bottom:calc(74px + env(safe-area-inset-bottom));padding:9px 14px;font-size:13px;right:12px}.gchat{bottom:calc(70px + env(safe-area-inset-bottom));height:min(560px,100vh - 150px);right:8px}}.wf-tabs{flex-wrap:wrap}.wf-tabs-time{color:var(--ink-soft);white-space:nowrap;align-self:center;gap:12px;margin-left:auto;padding:0 6px;font-size:12.5px;display:inline-flex}.wf-created{color:var(--ink-soft);font-size:11.5px;display:block}.search-suggest{z-index:60;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:240px;max-height:320px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 8px 24px #0d304f24}.search-suggest button{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--ink);background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:1px;padding:6px 8px;font-size:13px;display:flex}.search-suggest button.on,.search-suggest button:hover{background:#eef4f3}.search-suggest button span{color:var(--ink-soft);font-size:11.5px}.wf-cfr-go{background:#f6f1e9;border:1px solid #e3d3bc;border-radius:8px;flex-direction:column;gap:8px;margin:10px 0 4px;padding:10px 12px;display:flex}.wf-cfr-svc{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 12px;font-size:13px;display:grid}.wf-cfr-go input[type=text],.wf-cfr-go input:not([type]){font:inherit;border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:13px}.wf-cfr-go .btn{align-self:flex-start}.wf-cfr-nil{font-size:13px}.wf-cra-box{background:#fffbeb;border:1px solid #fcd34d;border-radius:8px;flex-direction:column;gap:6px;margin:8px 0 10px;padding:10px 12px;display:flex}.wf-cra-box textarea{font:inherit;border:1px solid var(--line);resize:vertical;border-radius:6px;padding:8px;font-size:13px}.task-wf-link{color:inherit;border-bottom:1px dashed;text-decoration:none}.task-wf-link:hover{color:#1b3557}a.source-wf{cursor:pointer;text-decoration:none}.wf-runner-par{align-items:center;gap:4px;margin-left:10px;font-size:12px;display:inline-flex}.wf-runner-par input{width:52px;font:inherit;border:1px solid var(--line);border-radius:4px;padding:2px 4px;font-size:12px}.reg-client .cwf{color:var(--navy,#0d304f);margin-top:2px;font-size:13.5px;font-weight:700}.task-card .sub .cwf{color:var(--navy,#0d304f);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:14px;font-weight:700;overflow:hidden}.pay{flex-direction:column;gap:10px;margin-top:10px;display:flex}.pay-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pay-tabs{flex-wrap:wrap;gap:4px;display:inline-flex}.pay-tabs button{font:inherit;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:6px 12px;font-size:13px}.pay-tabs button.on{color:#fff;background:#0d304f;border-color:#0d304f}.pay-bar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pay-msg{border-radius:6px;padding:8px 10px;font-size:13px}.pay-msg.ok{color:#065f46;background:#ecfdf5}.pay-msg.bad{color:#991b1b;background:#fef2f2}.pay-table{border-collapse:collapse;background:#fff;width:100%;font-size:13px}.pay-table th,.pay-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 8px}.pay-table th{color:var(--ink-soft);background:#f8fafc;font-size:11.5px;font-weight:600}.pay-table tr.muted td{opacity:.55}.pay-scroll{overflow-x:auto}.pay-lines input[type=number]{width:72px;font:inherit;border:1px solid var(--line);border-radius:5px;padding:3px 5px;font-size:12.5px}.pay-lines td{white-space:nowrap}.pay-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px 12px;display:grid}.pay-grid .field input,.pay-grid .field select{width:100%}.pay-check{align-items:center;gap:6px;flex-direction:row!important}.pay-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;display:grid}.pay-card{border:1px solid var(--line);background:#fff;border-radius:8px;flex-direction:column;gap:4px;padding:10px 12px;font-size:13px;display:flex}.pay-total{margin-top:4px;font-size:14px;font-weight:700}.pay-je{border-collapse:collapse;width:100%;font-size:12.5px}.pay-je td{border-bottom:1px dashed var(--line);padding:3px 4px}.pay-je td:nth-child(2),.pay-je td:nth-child(3){text-align:right;white-space:nowrap}.pay-logo-sm{border:1px solid var(--line);background:#fff;border-radius:4px;max-width:120px;max-height:32px;padding:2px}.pay-modal{width:calc(100vw - 32px);max-width:760px;max-height:90vh;overflow:auto}.pay-run{flex-direction:column;gap:10px;display:flex}.pay-warn{color:#b42318;font-size:11.5px;font-weight:600;display:block}.wf-runner-paused{color:#b45309}.wf-inprocess-bar{z-index:5;background:var(--bg);border:1px solid var(--line);border-left:4px solid var(--bronze);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:10px 14px;font-size:14px;position:sticky;top:0}.wf-inprocess-chips{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.wf-inprocess-chip{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:999px;padding:2px 10px;font-size:12px}.wf-inprocess-chip.on{border-color:var(--bronze);color:var(--bronze-dark);background:var(--sand);font-weight:600}.wf-inprocess-chip.done{color:#2e7d5b}.wf-now{text-align:left;flex-direction:column;gap:1px;margin:3px 0;display:flex}.wf-now-name{color:var(--navy);font-family:Playfair Display,Georgia,serif;font-size:15px;font-weight:600}.wf-now-stage{color:var(--ink-soft);font-size:12.5px}.wf-now-stage b{color:var(--bronze-dark);font-weight:600}.wf-email a{color:var(--navy);text-underline-offset:2px;text-decoration:underline}.wf-copy-btn{color:var(--bronze-dark);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:0 7px;font-size:11.5px}.wf-status-toggle{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:999px;padding:2px 10px;font-size:12px}.wf-status-toggle.active{color:#2e7d5b}.wf-status-toggle.inactive{color:var(--bronze-dark);background:var(--sand)}.wf-status-toggle:hover{border-color:var(--bronze)}.wf-review-badge{color:var(--bronze-dark);background:var(--sand);border:1px solid #e3d3bc;border-radius:999px;margin:2px 0;padding:1px 9px;font-size:12px;font-weight:600;display:inline-block}.wf-clients .wf-client{flex-direction:column;align-items:stretch;gap:2px;display:flex}.wf-clients .wf-client>*{min-width:0;max-width:100%}.wf-clients .wf-client .wf-card-owner{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.wf-row-flow{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.wf-row-stage{color:var(--ink-soft);align-items:center;gap:6px;font-size:12.5px;display:flex}.wf-row-stage-text{overflow-wrap:anywhere;flex:1;min-width:0}.wf-row-stage b{color:var(--bronze-dark);font-weight:600}.wf-row-review{background:var(--sand);border:1px solid #e3d3bc;border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 4px;font-size:13px;line-height:1;display:inline-flex}.wf-row-review sup{color:var(--bronze-dark);margin-left:1px;font-size:9px;font-weight:700}.wf-clients .wf-client .wf-created{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wf-clients .wf-client-sub{flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:2px;display:flex}.wf-card-body{align-items:stretch;gap:3px}.wf-card-body>*{min-width:0;max-width:100%}.wf-card-body>.pill{align-self:flex-start}.wf-card-body .wf-client-sub{flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:2px;display:flex}.wf-card-body .wf-card-progress{margin-top:3px}.wf-dl-card{align-items:stretch;gap:3px}.wf-dl-card>*{min-width:0;max-width:100%}.wf-dl-card>.pill,.wf-dl-card>.wf-complete-chip{align-self:flex-start}.wf-dl-card .wf-client-sub{flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:2px;display:flex}.selsearch{z-index:3000;border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;padding:6px;font-size:13.5px;display:flex;position:fixed;box-shadow:0 10px 28px #10223a2e}.selsearch-input{box-sizing:border-box;border:1px solid var(--line);width:100%;font:inherit;border-radius:7px;outline:none;margin-bottom:5px;padding:7px 9px}.selsearch-input:focus{border-color:var(--bronze);box-shadow:0 0 0 2px #9a734426}.selsearch-list{overflow-y:auto}.selsearch-group{letter-spacing:.04em;text-transform:uppercase;color:var(--bronze-dark);padding:6px 8px 3px;font-size:11px;font-weight:700}.selsearch-opt{cursor:pointer;color:var(--ink);border-radius:6px;padding:6px 9px;line-height:1.3}.selsearch-opt.active{background:#f1ebe1}.selsearch-opt.current{color:var(--navy);font-weight:600}.selsearch-opt.current:before{content:"✓ ";color:var(--bronze)}.selsearch-opt.disabled{color:#9aa0a8;cursor:default}.selsearch-empty{color:var(--ink-soft);padding:8px 9px}
