:root{--purple-900:#3b1f6e;--purple-800:#4c2889;--purple-700:#5e35a1;--purple-600:#6d3fba;--purple-500:#7c4dcc;--purple-400:#9b72db;--purple-300:#b899e6;--purple-200:#d4c1f0;--purple-100:#ebe0f9;--purple-50:#f5f0fc;--coral-500:#e8625c;--magenta-500:#c44a8a;--white:#fff;--gray-25:#fbfafd;--gray-50:#f7f6fa;--gray-100:#f1eff6;--gray-200:#e4e0ec;--gray-300:#cdc7d9;--gray-400:#958ea4;--gray-500:#6b647a;--gray-600:#4d4759;--gray-700:#352f40;--gray-800:#1f1a2b;--gray-900:#15111d;--success:#1f7a4d;--success-light:#e3f4ea;--warning:#b45309;--warning-light:#fdf1dc;--danger:#b4332e;--danger-light:#fbe5e3;--info:#2563eb;--info-light:#e3ecfd;--bg-page:var(--gray-50);--bg-card:var(--white);--bg-input:var(--white);--bg-hover:var(--gray-100);--bg-sunk:var(--gray-100);--border-light:var(--gray-200);--border-default:var(--gray-300);--border-purple:var(--purple-200);--focus:#8a63d2;--focus-ring:0 0 0 3px #8a63d238;--brand-gradient:linear-gradient(90deg,var(--coral-500),var(--magenta-500),var(--purple-700));--brand-ring:conic-gradient(from 210deg,var(--coral-500),var(--magenta-500),var(--purple-700),var(--coral-500));--font-body:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"DM Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--shadow-xs:0 1px 2px #2814500d;--shadow-sm:0 1px 2px #2814500d,0 4px 16px #2814500d;--shadow-md:0 1px 2px #2814500f,0 6px 24px #28145014;--shadow-lg:0 2px 6px #28145012,0 16px 40px #2814501f;--shadow-purple:0 4px 18px #5e35a129;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--transition-fast:.15s ease;--transition-default:.25s ease;--sidebar-width:240px;--topbar-height:56px;--h-gold:#f8c034;--h-orange:#f47c28;--h-red:#ed4331;--h-pink:#eb358f;--h-lavender:#8975ab;--h-purple:#602a77;--h-sky:#249abc;--h-teal:#00a79e;--h-charcoal:#312e2d;--h-grey:#969799;--h-light:#e7e7e7}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);color:var(--gray-800);background:var(--bg-page);min-height:100vh;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}code,kbd,samp,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.app-shell{min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-card);border-right:1px solid var(--border-light);z-index:60;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.app-main{margin-left:var(--sidebar-width)}.sidebar-brand{border-bottom:1px solid var(--border-light);flex-shrink:0;padding:18px 16px 16px}.sidebar-logo{align-items:center;gap:10px;text-decoration:none;display:flex}.sidebar-logo-mark{background:var(--brand-ring);border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.sidebar-logo-mark:after{content:"";background:var(--bg-card);border-radius:50%;width:16px;height:16px}.sidebar-logo-text{letter-spacing:-.01em;color:var(--gray-900);font-size:1.125rem;font-weight:700}.sidebar-subtitle{color:var(--gray-500);margin-top:0;padding-left:40px;font-size:.6875rem;font-weight:500;line-height:1.3}.sidebar-nav{flex-direction:column;flex:1;gap:0;min-height:0;padding:12px 8px;display:flex;overflow:hidden auto}.sidebar-section{flex-direction:column;gap:2px;display:flex}.sidebar-section--labelled{margin-top:16px}.sidebar-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400);margin-bottom:4px;padding:0 12px;font-size:.66rem;font-weight:700}.sidebar-link{border-radius:var(--radius-md);color:var(--gray-600);transition:all var(--transition-fast);border-left:3px solid #0000;align-items:center;gap:10px;padding:8px 12px;font-size:.875rem;font-weight:500;text-decoration:none;display:flex}.sidebar-link-icon{color:var(--gray-500);flex-shrink:0;align-items:center;display:flex}.sidebar-link:hover{background:var(--purple-50);color:var(--gray-900)}.sidebar-link:hover .sidebar-link-icon{color:var(--purple-700)}.sidebar-link--active{background:var(--active-bg,var(--purple-50));color:var(--active-text,var(--purple-700));border-left-color:var(--active-border,var(--purple-700));padding-left:10px;font-weight:600}.sidebar-link--active .sidebar-link-icon{color:var(--active-text,#5e35a1)}.sidebar-link--active:hover{background:var(--active-bg,var(--purple-100));filter:brightness(.95)}.sidebar-link-label{white-space:nowrap}.sidebar-parent{cursor:pointer;background:0 0;border:none;justify-content:flex-start;width:100%;font-family:inherit}.sidebar-chevron{opacity:.5;flex-shrink:0;margin-left:auto;transition:transform .2s}.sidebar-chevron[data-expanded=true]{transform:rotate(180deg)}.sidebar-children{border-left:2px solid var(--purple-100);flex-direction:column;gap:1px;margin-top:2px;margin-left:14px;padding-left:12px;display:flex}.sidebar-child{border-left:none;gap:8px;padding:7px 12px;font-size:.82rem}.sidebar-child .sidebar-link-icon{color:#6b7080}.sidebar-child.sidebar-link--active{border-left-color:#0000;padding-left:12px}.sidebar-child.sidebar-link--active .sidebar-link-icon{color:#5e35a1}.sidebar-badge{color:#d97706;white-space:nowrap;background:#fef3c7;border-radius:8px;margin-left:auto;padding:1px 6px;font-size:.55rem;font-weight:600}.sidebar-footer{border-top:1px solid var(--border-light);flex-shrink:0;padding:8px}.sidebar-collapse-btn{border-radius:var(--radius-sm);cursor:pointer;color:#9a9fae;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:9px 12px;font-family:inherit;font-size:.75rem;transition:all .15s;display:flex}.sidebar-collapse-btn:hover{background:var(--purple-50);color:var(--purple-700)}.top-bar{background:var(--bg-card);border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-xs);height:var(--topbar-height);z-index:50;justify-content:space-between;align-items:center;gap:16px;padding:0 24px;display:flex;position:sticky;top:0}:root[data-sidebar-collapsed=true] .sidebar{width:56px}:root[data-sidebar-collapsed=true] .app-main{margin-left:56px}:root[data-sidebar-collapsed=true] .sidebar-brand{text-align:center;padding:12px 8px}:root[data-sidebar-collapsed=true] .sidebar-logo{justify-content:center}:root[data-sidebar-collapsed=true] .sidebar-logo-text,:root[data-sidebar-collapsed=true] .sidebar-subtitle{display:none}:root[data-sidebar-collapsed=true] .sidebar-nav{padding:12px 4px}:root[data-sidebar-collapsed=true] .sidebar-link{border-left-color:#0000;justify-content:center;gap:0;padding:9px 0}:root[data-sidebar-collapsed=true] .sidebar-link-label,:root[data-sidebar-collapsed=true] .sidebar-badge,:root[data-sidebar-collapsed=true] .sidebar-chevron,:root[data-sidebar-collapsed=true] .sidebar-children,:root[data-sidebar-collapsed=true] .sidebar-collapse-label,:root[data-sidebar-collapsed=true] .sidebar-section-label,:root[data-sidebar-collapsed=true] .sidebar-child{display:none}:root[data-sidebar-collapsed=true] .sidebar-parent{border-left:none;padding-left:0}:root[data-sidebar-collapsed=true] .sidebar-footer{text-align:center;padding:8px 4px}:root[data-sidebar-collapsed=true] .sidebar-collapse-btn{justify-content:center;padding:8px 0}.top-bar-search{flex:1;max-width:480px;position:relative}.top-bar-search-icon{color:var(--gray-400);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.top-bar-search-input{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--gray-50);width:100%;color:var(--gray-800);font-family:var(--font-body);transition:all var(--transition-fast);outline:none;padding:8px 12px 8px 36px;font-size:.875rem}.top-bar-search-input:focus{border-color:var(--purple-500);box-shadow:0 0 0 3px var(--purple-100);background:var(--white)}.top-bar-search-input:disabled{opacity:.5;cursor:not-allowed}.top-bar-actions{align-items:center;gap:8px;display:flex}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--border-light);background:var(--white);width:36px;height:36px;color:var(--gray-600);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.btn-icon:hover:not(:disabled){background:var(--gray-100);color:var(--gray-800)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.dropdown-wrapper{position:relative}.dropdown-menu{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);min-width:200px;box-shadow:var(--shadow-lg);z-index:100;padding:6px;animation:.15s dropdown-enter;position:absolute;top:calc(100% + 6px);right:0}@keyframes dropdown-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;transition:background var(--transition-fast);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:.875rem;display:flex}.dropdown-item:hover{background:var(--gray-100)}.dropdown-item--disabled{opacity:.5;cursor:not-allowed}.dropdown-item--disabled:hover{background:0 0}.dropdown-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--purple-600);background:var(--purple-50);border-radius:3px;padding:1px 6px;font-size:.65rem;font-weight:600}.main-content{flex:1;width:100%;max-width:none;margin:0 auto;padding:32px 32px 64px}body.full-width-page .main-content{max-width:none;padding:16px 16px 48px}.page-title{color:var(--gray-900);letter-spacing:-.015em;text-wrap:balance;font-size:1.625rem;font-weight:700;line-height:1.25}.page-subtitle{color:var(--gray-500);margin-top:4px;font-size:.9375rem}.section-title{letter-spacing:-.01em;color:var(--gray-800);margin-bottom:12px;font-size:1.0625rem;font-weight:700}.text-sm{color:var(--gray-500);font-size:.8125rem}.text-xs{color:var(--gray-400);font-size:.75rem}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px 24px}.card+.card{margin-top:16px}.job-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;padding:16px 20px;display:block}.job-card:hover{border-color:var(--border-purple);box-shadow:var(--shadow-purple);transform:translateY(-1px)}.job-card-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.job-card-title{color:var(--gray-800);font-size:.9375rem;font-weight:600}.job-card-meta{color:var(--gray-500);margin-top:2px;font-size:.8125rem}.status-pill{letter-spacing:.01em;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:.71875rem;font-weight:600;line-height:1.35;display:inline-flex}.status-pill--draft{background:var(--gray-100);color:var(--gray-600)}.status-pill--planned{background:var(--purple-50);color:var(--purple-600);box-shadow:inset 0 0 0 1px var(--purple-100)}.status-pill--in-progress,.status-pill--in_progress{background:var(--info-light);color:#1d4ed8}.status-pill--waiting,.status-pill--waiting_on_client{background:var(--warning-light);color:var(--warning)}.status-pill--review,.status-pill--ready_for_review{background:var(--purple-100);color:var(--purple-700)}.status-pill--review-followup,.status-pill--review_followup_required{color:#be185d;background:#fce7f3}.status-pill--finalising{color:#0369a1;background:#e0f2fe}.status-pill--done{background:var(--success-light);color:var(--success)}.status-pill--cancelled{background:var(--gray-100);color:var(--gray-500)}.status-pill--sent{background:var(--info-light);color:var(--info)}.status-pill--received{background:var(--warning-light);color:var(--warning)}.status-pill--applied{background:var(--success-light);color:var(--success)}.btn{border-radius:var(--radius-md);font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:.875rem;font-weight:600;line-height:1.4;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{background:var(--purple-700);border-color:var(--purple-700);color:var(--white);box-shadow:var(--shadow-xs)}.btn-primary:hover:not(:disabled){background:var(--purple-800);border-color:var(--purple-800);box-shadow:var(--shadow-purple)}.btn-secondary{background:var(--white);color:var(--gray-800);border:1px solid var(--border-light);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--white);border-color:var(--border-purple);color:var(--purple-700)}.btn-outline{background:var(--white);color:var(--purple-700);border:1px solid var(--purple-300)}.btn-outline:hover:not(:disabled){background:var(--purple-50);border-color:var(--purple-700)}.btn-ghost{color:var(--gray-600);background:0 0;padding:6px 12px}.btn-ghost:hover:not(:disabled){background:var(--purple-50);color:var(--purple-700)}.btn-sm{border-radius:var(--radius-sm);padding:5px 12px;font-size:.8125rem}.btn-status{background:var(--gray-100);color:var(--gray-600);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:600}.btn-status:hover{background:var(--purple-50);color:var(--purple-700);border-color:var(--purple-200)}.btn-status.active{background:var(--purple-100);color:var(--purple-800);border-color:var(--purple-300)}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{letter-spacing:.02em;color:var(--gray-500);font-size:.78125rem;font-weight:600}.form-input{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-input);width:100%;color:var(--gray-800);font-family:var(--font-body);transition:all var(--transition-fast);outline:none;padding:10px 12px;font-size:.9375rem}.form-input:hover:not(:focus):not(:disabled){border-color:var(--gray-400)}.form-input:focus{border-color:var(--purple-500);box-shadow:var(--focus-ring)}.form-input:disabled{background:var(--bg-sunk);color:var(--gray-500);cursor:not-allowed}.form-input::placeholder{color:var(--gray-400)}.divider{background:var(--border-light);border:none;height:1px;margin:16px 0}.empty-state{text-align:center;color:var(--gray-400);padding:48px 24px}.empty-state-text{color:var(--gray-500);font-size:.9375rem}.placeholder-sprint-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--purple-100);color:var(--purple-700);border-radius:999px;padding:4px 14px;font-size:.75rem;font-weight:700;display:inline-block}.placeholder-features{text-align:left;flex-direction:column;gap:10px;max-width:400px;margin:0 auto;display:flex}.placeholder-feature-item{color:var(--gray-600);align-items:center;gap:10px;font-size:.875rem;display:flex}.pickup-mode{background:var(--purple-50);border:1px solid var(--purple-200);border-radius:var(--radius-lg);padding:20px 24px}.pickup-label{text-transform:uppercase;letter-spacing:.08em;color:var(--purple-600);margin-bottom:8px;font-size:.7rem;font-weight:600}.resume-note{background:var(--white);border:1px solid var(--purple-200);border-left:3px solid var(--purple-500);border-radius:var(--radius-sm);color:var(--gray-700);margin-top:12px;padding:12px 16px;font-size:.9rem;line-height:1.5}.pickup-mode-v2{border-left:4px solid var(--purple-500);background:#fff;border-radius:12px;padding:24px 28px;box-shadow:0 1px 3px #0000000f}.pum-top{justify-content:space-between;align-items:flex-start;margin-bottom:2px;display:flex}.pum-label{text-transform:uppercase;letter-spacing:.14em;color:#b0b0b0;font-size:.6rem;font-weight:700}.pum-saved{background:var(--success-light);border-radius:var(--radius-sm);color:var(--success);margin-bottom:12px;padding:8px 12px;font-size:.85rem;font-weight:600}.pum-header{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.pum-client{color:var(--gray-900);font-size:1.1rem;font-weight:700}.pum-entity{color:var(--gray-500);font-size:1rem;font-weight:500}.pum-sep{color:#d0d0d0;font-weight:300}.pum-period{color:var(--gray-600);font-size:1.1rem;font-weight:600}.pum-stats{border-top:1px solid #f0f0f5;grid-template-columns:1fr 1fr auto 1fr;align-items:start;gap:0;margin-top:18px;padding-top:16px;display:grid}.pum-stat-cell{border-right:1px solid #f0f0f5;padding:0 20px}.pum-stat-cell:first-child{padding-left:0}.pum-stat-last{border-right:none}.pum-stat-donut{align-items:center;min-width:160px;display:flex}.pum-stat-label{text-transform:uppercase;letter-spacing:.08em;color:#aaa;font-size:.58rem;font-weight:700;line-height:1}.pum-stat-value{color:var(--gray-900);margin-top:3px;font-size:.85rem;font-weight:600}.pum-stat-sub{color:#aaa;margin-top:1px;font-size:.7rem;font-weight:500}.pum-muted{color:#ccc!important}.pum-overdue{color:#c62828!important}.pum-team{border-top:1px solid #f0f0f5;gap:24px;margin-top:16px;padding-top:14px;display:flex}.pum-team-member{align-items:center;gap:8px;display:flex}.pum-team-name{color:var(--gray-900);margin-top:2px;font-size:.8rem;font-weight:600}.pum-resume{color:#444;background:#f8f9fb;border:1px solid #eee;border-radius:8px;margin-top:16px;padding:12px 16px;font-size:.84rem;line-height:1.55}.pum-resume-label{text-transform:uppercase;letter-spacing:.08em;color:var(--purple-500);margin-bottom:4px;font-size:.6rem;font-weight:700}.pum-no-resume{color:#ccc;background:#fafafa;border:1px dashed #e0e0e0;border-radius:8px;margin-top:16px;padding:10px 16px;font-size:.8rem;font-style:italic}.njm-overlay{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.njm-modal{background:#fff;border-radius:16px;flex-direction:column;width:580px;max-width:95vw;max-height:90vh;animation:.2s ease-out njm-slide-in;display:flex;box-shadow:0 20px 60px #00000026}@keyframes njm-slide-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.njm-header{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.njm-title{color:var(--gray-900);font-size:1.15rem;font-weight:700}.njm-close{cursor:pointer;width:32px;height:32px;color:var(--gray-400);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.njm-close:hover{background:var(--gray-50);color:var(--gray-700)}.njm-progress{gap:4px;padding:16px 24px 0;display:flex}.njm-step{border-radius:8px;flex:1;align-items:center;gap:6px;padding:8px 12px;transition:all .25s;display:flex}.njm-step-future{background:var(--gray-50)}.njm-step-active{background:var(--purple-100);border:1px solid var(--purple-300)}.njm-step-done{background:var(--purple-500)}.njm-dot-future{background:var(--gray-200);width:22px;height:22px;color:var(--gray-400);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.65rem;font-weight:700;display:flex}.njm-dot-active{background:var(--purple-500);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.65rem;font-weight:700;display:flex}.njm-dot-done{width:22px;height:22px;color:var(--purple-500);background:#ffffffe6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;font-weight:700;display:flex}.njm-step-label{font-size:.75rem;font-weight:600}.njm-step-future .njm-step-label{color:var(--gray-400)}.njm-step-active .njm-step-label{color:var(--purple-700)}.njm-step-done .njm-step-label{color:#ffffffe6}.njm-body{flex:1;min-height:200px;padding:20px 24px;overflow-y:auto}.njm-section-label{color:var(--gray-700);margin-bottom:10px;font-size:.85rem;font-weight:600}.njm-context{background:var(--gray-50);border-radius:8px;align-items:center;gap:8px;margin-bottom:20px;padding:10px 14px;font-size:.85rem;display:flex}.njm-client-list{border:1px solid var(--border-light);border-radius:8px;max-height:220px;overflow-y:auto}.njm-client-row{cursor:pointer;border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:10px 14px;font-size:.85rem;transition:background .1s;display:flex}.njm-client-row:last-child{border-bottom:none}.njm-client-row:hover{background:var(--gray-50)}.njm-client-selected{font-weight:600;background:var(--purple-50)!important}.njm-entity-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.njm-entity-card{border:1px solid var(--border-light);cursor:pointer;border-radius:8px;padding:10px 14px;transition:all .15s}.njm-entity-card:hover{border-color:var(--purple-300);background:var(--purple-50)}.njm-entity-selected{box-shadow:0 0 0 2px var(--purple-200);border-color:var(--purple-500)!important;background:var(--purple-50)!important}.njm-category-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.njm-category-card{border:1px solid var(--border-light);cursor:pointer;text-align:center;color:var(--gray-600);border-radius:8px;padding:12px 16px;font-size:.85rem;font-weight:600;transition:all .15s}.njm-category-card:hover{border-color:var(--purple-300);background:var(--purple-50);color:var(--purple-700)}.njm-category-selected{box-shadow:0 0 0 2px var(--purple-200);border-color:var(--purple-500)!important;background:var(--purple-50)!important;color:var(--purple-700)!important}.njm-type-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px;display:grid}.njm-type-card{border:1px solid var(--border-light);cursor:pointer;color:var(--gray-600);border-radius:8px;padding:10px 14px;font-size:.82rem;font-weight:500;transition:all .15s}.njm-type-card:hover{border-color:var(--purple-300);background:var(--purple-50)}.njm-type-selected{font-weight:600;border-color:var(--purple-500)!important;background:var(--purple-100)!important;color:var(--purple-800)!important}.njm-engagement-banner{background:var(--purple-50);border:1px solid var(--purple-200);border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;display:flex}.njm-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.ri-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px 20px}.ri-card+.ri-card{margin-top:10px}.ri-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ri-title{color:var(--gray-800);font-size:.9375rem;font-weight:600}.ri-meta{color:var(--gray-500);flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px;font-size:.8125rem;display:flex}.ri-status-bar{flex-wrap:wrap;gap:6px;display:flex}.ri-body{border-top:1px solid var(--border-light);margin-top:12px;padding-top:12px}.alert{border-radius:var(--radius-md);margin-top:12px;padding:12px 16px;font-size:.875rem}.alert-error{background:var(--danger-light);color:var(--danger)}.alert-success{background:var(--success-light);color:var(--success)}.alert-info{background:var(--info-light);color:var(--info)}.login-page{background:var(--bg-page);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-container{width:100%;max-width:440px}.login-brand{text-align:center;margin-bottom:32px}.login-brand:before{content:"";background:radial-gradient(circle,var(--bg-page)0 12.5px,transparent 13.5px),var(--brand-ring);border-radius:50%;width:48px;height:48px;margin:0 auto 14px;display:block}.login-brand-name{color:var(--gray-900);letter-spacing:-.02em;font-size:2rem;font-weight:700}.login-brand-sub{color:var(--gray-500);margin-top:4px;font-size:.875rem}.login-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:36px 32px}.login-form{flex-direction:column;gap:20px;display:flex}.job-type-badge{border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;align-items:center;padding:1px 6px;font-size:.625rem;font-weight:700;display:inline-flex}.job-type-badge--BAS,.job-type-badge--BAS_JUNE{color:#1d4ed8;background:#dbeafe}.job-type-badge--IAS_PAYGW{color:#4338ca;background:#e0e7ff}.job-type-badge--PAYGI{color:#a21caf;background:#fae8ff}.job-type-badge--BTR{color:#be185d;background:#fce7f3}.job-type-badge--ITR{color:#c2410c;background:#fff7ed}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.csv-steps{border-bottom:1px solid var(--border-light);flex-wrap:wrap;gap:4px;padding:16px 0;display:flex}.csv-step{color:var(--gray-400);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.8125rem;display:flex}.csv-step--active{background:var(--purple-50);color:var(--purple-800);font-weight:600}.csv-step--done{color:var(--success)}.csv-step-number{background:var(--gray-100);width:22px;height:22px;color:var(--gray-500);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.csv-step--active .csv-step-number{background:var(--purple-700);color:var(--white)}.csv-step--done .csv-step-number{background:var(--success-light);color:var(--success)}.csv-step-label{white-space:nowrap}.csv-upload-zone{border:2px dashed var(--border-default);border-radius:var(--radius-lg);text-align:center;background:var(--gray-25);padding:32px}.import-spinner{border:4px solid var(--purple-100);border-top-color:var(--purple-700);border-radius:50%;width:48px;height:48px;margin:0 auto;animation:.8s linear infinite spin}.import-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#f8f9fbeb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.import-overlay-content{text-align:center;background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:90%;max-width:420px;padding:48px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.inline-editable-cell{cursor:pointer;position:relative}.inline-editable-cell:hover{background:var(--purple-50)!important}.inline-edit-value{color:var(--gray-700);border-bottom:1px dashed var(--gray-300);padding-bottom:1px;font-size:.875rem}.inline-edit-empty{color:var(--gray-400);font-size:.8125rem;font-style:italic}.inline-edit-input{border:1px solid var(--purple-500);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--gray-800);background:var(--white);box-shadow:0 0 0 3px var(--purple-100);outline:none;padding:4px 8px;font-size:.85rem}.edit-job-label{text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);margin-bottom:4px;font-size:.75rem;font-weight:600}.row-checkbox{width:16px;height:16px;accent-color:var(--purple-700);cursor:pointer;border-radius:3px}.data-table tbody tr.row-selected{background:var(--purple-50)!important}.data-table tbody tr.row-selected:hover{background:var(--purple-100)!important}.bulk-bar{z-index:250;animation:.2s bulk-bar-enter;position:fixed;bottom:64px;left:50%;transform:translate(-50%)}@keyframes bulk-bar-enter{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.bulk-bar-inner{background:var(--gray-900);border-radius:var(--radius-lg);align-items:center;gap:12px;min-width:400px;max-width:700px;padding:10px 16px;display:flex;box-shadow:0 8px 30px #00000040,0 2px 8px #00000026}.bulk-bar-count{color:var(--gray-300);white-space:nowrap;align-items:center;gap:6px;font-size:.8125rem;display:flex}.bulk-bar-count-number{background:var(--purple-700);min-width:24px;height:24px;color:var(--white);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.75rem;font-weight:700;display:inline-flex}.bulk-bar-divider{background:var(--gray-700);flex-shrink:0;width:1px;height:24px}.bulk-bar-actions{flex-wrap:wrap;gap:4px;display:flex}.bulk-bar-btn{border-radius:var(--radius-sm);font-family:var(--font-body);cursor:pointer;color:var(--gray-300);background:var(--gray-800);white-space:nowrap;border:none;align-items:center;gap:5px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.bulk-bar-btn:hover{background:var(--gray-700);color:var(--white)}.bulk-bar-btn--primary{background:var(--purple-700);color:var(--white)}.bulk-bar-btn--primary:hover{background:var(--purple-600)}.bulk-bar-btn--danger{color:var(--danger)}.bulk-bar-btn--danger:hover{background:#dc262626}.bulk-bar-btn--close{color:var(--gray-500);background:0 0}.bulk-bar-btn--close:hover{color:var(--gray-300);background:var(--gray-800)}.bulk-bar-btn-icon{align-items:center;display:inline-flex}.bulk-modal-overlay{z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;justify-content:center;align-items:center;animation:.15s dropdown-enter;display:flex;position:fixed;inset:0}.bulk-modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:400px;padding:24px}.bulk-modal-title{color:var(--gray-900);margin:0;font-size:1rem;font-weight:700}.bulk-modal-desc{color:var(--gray-500);margin:6px 0 0;font-size:.8125rem}.rollforward-modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:900px;max-height:80vh;padding:24px;display:flex}.rollforward-table-wrapper{border:1px solid var(--border-light);border-radius:var(--radius-md);max-height:50vh;overflow-y:auto}.toast-container{z-index:250;flex-direction:column;gap:8px;max-width:400px;display:flex;position:fixed;top:72px;right:24px}.toast{border-radius:var(--radius-md);box-shadow:var(--shadow-lg);cursor:pointer;align-items:center;gap:10px;padding:12px 16px;font-size:.8125rem;font-weight:500;animation:.25s toast-enter;display:flex}@keyframes toast-enter{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.toast--success{background:var(--success-light);color:var(--success);border:1px solid #bbf7d0}.toast--error{background:var(--danger-light);color:var(--danger);border:1px solid #fecaca}.toast--info{background:var(--info-light);color:var(--info);border:1px solid #bfdbfe}.toast-icon{flex-shrink:0;font-size:.875rem;font-weight:700}.toast-message{flex:1}@keyframes row-flash{0%{background:#dcfce7}to{background:0 0}}.data-table tbody tr.row-just-updated{animation:2s row-flash}.row-action-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--gray-400);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:flex}.row-action-btn:hover{background:var(--gray-100);color:var(--gray-700)}.row-action-menu{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-lg);z-index:100;padding:4px;animation:.15s dropdown-enter;position:absolute;top:calc(100% + 2px);right:0}.row-action-menu-item{width:100%;font-size:.8125rem;font-family:var(--font-body);color:var(--gray-700);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;padding:7px 12px;display:block}.row-action-menu-item:hover{background:var(--gray-100)}.row-action-menu-item--danger{color:var(--danger)}.row-action-menu-item--danger:hover{background:var(--danger-light)}.top-bar-hamburger{color:var(--gray-700);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin-right:4px;padding:8px;display:none}.top-bar-hamburger:hover{background:var(--purple-50);color:var(--purple-700)}@media (max-width:768px){:root{--sidebar-width:0px}.top-bar-hamburger{display:inline-flex}.sidebar{z-index:1000;width:260px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 0 30px #0000004d}body.sidebar-open .sidebar{transform:translate(0)}body.sidebar-open:before{content:"";z-index:999;background:#00000073;animation:.18s sidebar-fade-in;position:fixed;inset:0}@keyframes sidebar-fade-in{0%{opacity:0}to{opacity:1}}.app-main{margin-left:0}.top-bar{padding:0 12px}.top-bar-search{display:none}.main-content{padding:20px 16px 48px}.page-title{font-size:1.375rem}.login-card{padding:28px 20px}.login-brand-name{font-size:1.625rem}.ri-header{flex-direction:column}.ri-status-bar{margin-top:8px}.pickup-mode{padding:16px}.job-card{padding:14px 16px}.job-card-row{flex-direction:column;align-items:flex-start;gap:8px}.data-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{min-width:640px}.table-filters{flex-direction:column;align-items:stretch}.table-filters .form-input{max-width:100%!important}.tab-bar{gap:0}.tab-item{padding:8px 12px;font-size:.8125rem}.stat-grid{grid-template-columns:repeat(2,1fr);gap:8px}.csv-steps{flex-wrap:wrap;gap:4px}.csv-step-label{display:none}.csv-step--active .csv-step-label{display:inline}body.full-width-page .main-content{padding:8px 8px 48px}[data-tour=inbox-metrics]{grid-template-columns:repeat(2,1fr)!important}[data-tour=inbox-tabs]{-webkit-overflow-scrolling:touch;overflow-x:auto;flex-wrap:nowrap!important}button,.btn{min-height:36px}.btn-sm{min-height:30px}.thread-detail-drawer-pane,.task-drawer-pane{width:100vw!important;max-width:100vw!important}}@media (max-width:720px){.inbox-col-client,.inbox-col-labels,.inbox-col-assignee,.inbox-col-date{display:none!important}.inbox-row-body{flex-wrap:wrap!important}.inbox-row-mobile-meta{display:flex!important}}@media (max-width:768px){.settings-page-grid{border-radius:10px!important;grid-template-columns:1fr!important;min-height:0!important}.settings-page-grid>div:first-child{border-bottom:1px solid var(--border-light);border-right:none!important}.booking-modal-grid{grid-template-columns:1fr!important}}.xero-sync-mobile{display:none}.xero-sync-desktop{display:block}@media (max-width:720px){.xero-sync-mobile{display:block}.xero-sync-desktop{display:none}.tasks-filters,.my-work-stats{flex-direction:column!important;align-items:stretch!important}.my-work-stat-grid{grid-template-columns:repeat(2,1fr)!important}}.breadcrumbs{font-size:.8125rem}.breadcrumb-link{color:var(--purple-600);transition:color var(--transition-fast);text-decoration:none}.breadcrumb-link:hover{color:var(--purple-800);text-decoration:underline}.breadcrumb-sep{color:var(--gray-300);margin:0 4px}.breadcrumb-current{color:var(--gray-500);font-weight:500}.entity-type-badge{border-radius:var(--radius-sm);letter-spacing:.04em;text-transform:uppercase;background:var(--gray-100);color:var(--gray-600);align-items:center;padding:2px 8px;font-size:.65rem;font-weight:700;display:inline-flex}.entity-count-badge{background:var(--purple-100);color:var(--purple-700);border-radius:999px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}textarea.form-input{min-height:80px;line-height:1.5}.tab-bar{background:var(--bg-sunk);border:1px solid var(--border-light);-webkit-overflow-scrolling:touch;scrollbar-width:thin;border-radius:12px;align-items:center;gap:2px;width:fit-content;max-width:100%;padding:4px;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{height:6px}.tab-bar::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:3px}.tab-bar::-webkit-scrollbar-track{background:0 0}.tab-item{white-space:nowrap;color:var(--gray-500);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);font-size:.8125rem;font-weight:500;font-family:var(--font-body);white-space:nowrap;background:0 0;border:0;border-radius:9px;flex-shrink:0;align-items:center;gap:6px;padding:7px 14px;line-height:1.4;display:flex}.tab-item:hover{color:var(--gray-900);background:color-mix(in srgb,var(--bg-card)55%,transparent)}.tab-item--active,.tab-item--active:hover{color:var(--purple-700);background:var(--bg-card);font-weight:600;box-shadow:0 1px 2px #28145014,0 2px 8px #2814500f}.tab-badge{font-variant-numeric:tabular-nums;background:var(--gray-200);min-width:20px;height:18px;color:var(--gray-600);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.66rem;font-weight:700;display:inline-flex}.tab-item--active .tab-badge{background:var(--purple-700);color:#fff}.stat-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);text-align:left;flex-direction:column;gap:2px;padding:14px 16px;display:flex}.stat-value,.stat-card-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--gray-900);font-size:1.5rem;font-weight:500;line-height:1.2}.stat-label,.stat-card-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.06em;order:-1;margin-top:0;margin-bottom:4px;font-size:.6875rem;font-weight:600}.data-table-wrapper{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);scrollbar-width:thin;max-height:calc(100vh - 260px);overflow:auto}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.8125rem}.data-table thead{background:var(--gray-50);border-bottom:1px solid var(--border-light);z-index:10;position:sticky;top:0}.data-table thead:after{content:"";background:var(--border-light);height:1px;position:absolute;bottom:0;left:0;right:0}.data-table th{text-align:left;color:var(--gray-500);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;padding:10px 12px;font-size:.6875rem;font-weight:600}.data-table td{color:var(--gray-700);border-bottom:1px solid var(--gray-100);vertical-align:middle;padding:10px 12px}.data-table td.col-right{font-family:var(--font-mono);font-size:.78rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr.row-stripe{background:var(--gray-25)}.data-table tbody tr:hover,.table-row-clickable:hover td{background:var(--purple-50)}.data-table .col-right{text-align:right}.data-table .col-center{text-align:center}.table-link{color:var(--gray-800);transition:color var(--transition-fast);font-size:.8125rem;font-weight:600;text-decoration:none}.table-link:hover{color:var(--purple-700)}.table-entity{color:var(--gray-500);font-size:.78rem;font-weight:400}.table-ref{font-family:var(--font-mono);color:var(--gray-400);margin-top:1px;font-size:.66rem;display:block}.table-time-ago{color:var(--gray-500);white-space:nowrap;font-size:.75rem}.table-time-stale{color:var(--danger)}.table-nowrap{white-space:nowrap}.summary-bar-container{margin-bottom:4px}.summary-chips-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.summary-chip{background:var(--white);border:1px solid var(--border-light);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:500;transition:all .15s;display:inline-flex}.summary-chip:hover{border-color:var(--purple-700);background:#faf8ff}.summary-chip-on{background:#faf8ff;border-width:2px;padding:2px 9px}.summary-chip-count{font-size:.76rem;font-weight:700}.summary-chip-total{background:var(--purple-700);color:#fff;border-color:var(--purple-700);font-weight:600}.summary-chip-total:hover{background:var(--purple-700);border-color:var(--purple-700);opacity:.9}.summary-chip-total .summary-chip-count{color:#fff}.summary-chip-total.summary-chip-on{background:var(--purple-700)}.summary-progress-bar{background:var(--gray-100);border-radius:3px;gap:2px;height:5px;margin-top:8px;display:flex;overflow:hidden}.summary-bar-segment{cursor:pointer;border-radius:3px;min-width:3px;height:100%;transition:opacity .15s}.summary-bar-segment:hover{opacity:.75}.summary-filter-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px;display:flex}.filter-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.division-summary{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:20px;padding:16px 20px}.division-summary-stats{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.division-stat{flex-direction:column;align-items:center;gap:4px;min-width:60px;display:flex}.division-stat-value{color:var(--gray-900);font-size:1.25rem;font-weight:700;line-height:1}.division-stat-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:500}.sortable-header{align-items:center;gap:2px;display:inline-flex}.sort-indicator{color:var(--gray-300);justify-content:center;align-items:center;width:14px;height:14px;transition:color .15s;display:inline-flex}.sort-indicator--active{color:var(--purple-700)}.sort-indicator-idle{opacity:0;transition:opacity .15s}.data-table th:hover .sort-indicator-idle{opacity:.5}.data-table th:hover .sort-indicator{color:var(--gray-500)}.data-table th:hover .sort-indicator--active{color:var(--purple-700)}.column-filter-icon{width:20px;height:20px;color:var(--gray-300);cursor:pointer;border-radius:3px;justify-content:center;align-items:center;margin-left:1px;transition:all .15s;display:inline-flex}.column-filter-icon:hover{color:var(--purple-700);background:var(--purple-50)}.column-filter-icon--active{color:var(--purple-700);background:var(--purple-100)}.column-filter-dropdown{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);min-width:200px;max-width:300px;box-shadow:var(--shadow-lg);animation:.15s dropdown-enter}.column-filter-header{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:10px 12px 8px;display:flex}.column-filter-title{color:var(--gray-600);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.column-filter-clear{color:var(--purple-700);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-body);background:0 0;border:none;border-radius:3px;padding:2px 6px}.column-filter-clear:hover{background:var(--purple-50)}.column-filter-list{max-height:240px;padding:6px 4px;overflow-y:auto}.column-filter-option{border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;align-items:center;gap:8px;padding:5px 8px;font-size:.8125rem;transition:background .1s;display:flex}.column-filter-option:hover{background:var(--gray-50)}.column-filter-option-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table-filters{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.ts-stat-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);text-align:center;padding:14px 18px}.ts-stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);margin-bottom:4px;font-size:.7rem;font-weight:600}.ts-stat-value{color:var(--gray-800);font-family:DM Mono,monospace;font-size:1.25rem;font-weight:700}.timer-btn:hover{background:var(--purple-50)!important;color:var(--purple-700)!important}[data-theme=dark]{--bg-page:#252330;--bg-card:#2e2b3a;--bg-input:#342f44;--bg-hover:#3a3548;--border-light:#3e3a50;--border-default:#4a4560;--bg-sunk:#252330;--border-purple:#5a4a80;--focus:#b79af0;--focus-ring:0 0 0 3px #b79af040;--gray-25:#2e2b3a;--gray-50:#252330;--gray-100:#2e2b3a;--gray-200:#3e3a50;--gray-300:#4a4560;--gray-400:#6a6580;--gray-500:#8a86a0;--gray-600:#a8a4be;--gray-700:#c8c4d8;--gray-800:#e4e0f0;--gray-900:#f0edf8;--white:#2e2b3a;--purple-50:#602a7726;--purple-100:#602a7740;--purple-200:#8975ab4d;--purple-700:#8975ab;--success-light:#16a34a26;--warning-light:#d9770626;--danger-light:#dc262626;--info-light:#2563eb26;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #00000040;--shadow-md:0 4px 6px #0000004d;--shadow-lg:0 10px 15px #00000059}[data-theme=dark] .sidebar{background:#1e1c28;border-right-color:#3e3a50}[data-theme=dark] .sidebar-brand{border-bottom-color:#342f44}[data-theme=dark] .sidebar-logo-text{color:var(--h-lavender)}[data-theme=dark] .sidebar-subtitle{color:#5a5670}[data-theme=dark] .sidebar-link{color:#9896a8}[data-theme=dark] .sidebar-link:hover{color:#c8c4d8;background:#8975ab1f}[data-theme=dark] .sidebar-link--active{background:var(--active-bg,#602a7740);color:var(--active-text,#c4b5f4);border-left-color:var(--active-border,#8975ab)}[data-theme=dark] .sidebar-link--active .sidebar-link-icon{color:var(--active-text,#c4b5f4)}[data-theme=dark] .sidebar-badge{color:#6a6580;background:#ffffff14}[data-theme=dark] .sidebar-footer{border-top-color:#342f44}[data-theme=dark] .sidebar-collapse-btn{color:#5a5670}[data-theme=dark] .sidebar-collapse-btn:hover{color:#9896a8;background:#ffffff0f}[data-theme=dark] .sidebar-section-label{color:#5a5670}[data-theme=dark] .sidebar-link-icon{color:#6a6580}[data-theme=dark] .sidebar-children{border-left-color:#3e3a50}[data-theme=dark] .top-bar{border-bottom-color:#3e3a50}[data-theme=dark] .top-bar-btn-ghost{background:var(--h-purple)!important;border-color:var(--h-purple)!important;color:#f0edf8!important}[data-theme=dark] .top-bar-btn-ghost:hover{background:#7a3599!important}[data-theme=dark] .top-bar-icon-btn{color:var(--gray-600);background:0 0}[data-theme=dark] .top-bar-icon-btn:hover,[data-theme=dark] .top-bar-hamburger:hover{color:#c4b5f4;background:#8975ab24}[data-theme=dark] .sidebar-logo-mark:after{background:#1e1c28}[data-theme=dark] .tab-item--active,[data-theme=dark] .tab-item--active:hover{color:#c4b5f4;box-shadow:0 1px 2px #0000004d}[data-theme=dark] .tab-item--active .tab-badge{background:var(--h-purple);color:#f0edf8}[data-theme=dark] .card{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .data-table{border-color:var(--border-light)}[data-theme=dark] .data-table th{border-color:var(--border-light);color:var(--gray-600);background:#252330}[data-theme=dark] .data-table td{border-color:var(--border-light);color:var(--gray-700)}[data-theme=dark] .row-stripe{background:#ffffff05}[data-theme=dark] .row-selected{background:#602a7726!important}[data-theme=dark] .form-input{background:var(--bg-input);border-color:var(--border-light);color:var(--gray-800)}[data-theme=dark] .form-input:focus{border-color:var(--h-lavender);box-shadow:0 0 0 3px #8975ab26}[data-theme=dark] .form-input::placeholder{color:var(--gray-400)}[data-theme=dark] .btn-primary{background:var(--h-purple);border-color:var(--h-purple);color:#f0edf8}[data-theme=dark] .btn-primary:hover{background:#7a3599;border-color:#7a3599}[data-theme=dark] .btn-outline{border-color:var(--h-lavender);color:var(--h-lavender)}[data-theme=dark] .btn-outline:hover{background:#8975ab1f}[data-theme=dark] .btn-ghost{color:var(--gray-600)}[data-theme=dark] .btn-ghost:hover{background:var(--bg-hover);color:var(--gray-800)}[data-theme=dark] .modal-overlay{background:#0009}[data-theme=dark] .modal-content,[data-theme=dark] .pum-overlay,[data-theme=dark] .dropdown-menu{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .dropdown-item{color:var(--gray-700)}[data-theme=dark] .dropdown-item:hover{background:var(--bg-hover);color:var(--gray-800)}[data-theme=dark] .stat-card{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .alert-error{background:var(--danger-light);color:#fca5a5;border-color:#dc26264d}[data-theme=dark] .empty-state-text{color:var(--gray-500)}[data-theme=dark] .page-title{color:var(--gray-900)}[data-theme=dark] .page-subtitle{color:var(--gray-500)}[data-theme=dark] .section-title{color:var(--gray-800)}[data-theme=dark] .inline-editable-cell:hover{background:var(--bg-hover)}[data-theme=dark] .inline-edit-input{background:var(--bg-input);border-color:var(--border-default);color:var(--gray-800)}[data-theme=dark] .entity-type-badge{background:var(--bg-hover);color:var(--gray-600)}[data-theme=dark] .tab-btn{color:var(--gray-500)}[data-theme=dark] .tab-btn:hover{color:var(--gray-700)}[data-theme=dark] .tab-btn.active{color:var(--h-lavender);border-bottom-color:var(--h-lavender)}[data-theme=dark] .filter-group select,[data-theme=dark] .filter-group input{background:var(--bg-input);border-color:var(--border-light);color:var(--gray-700)}[data-theme=dark] .table-link{color:var(--h-lavender)}[data-theme=dark] .table-link:hover{color:#c4b5f4}[data-theme=dark] .job-header{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .jh-strip{background:linear-gradient(135deg,#249abc1f 0%,var(--bg-card)60%);border-bottom-color:var(--border-light)}[data-theme=dark] .jh-ref{background:var(--bg-hover);color:var(--gray-500)}[data-theme=dark] .jh-type{color:#6dd0ef}[data-theme=dark] .jh-client{color:var(--gray-800)}[data-theme=dark] .jh-dash{color:var(--gray-500)}[data-theme=dark] .jh-period{color:#c4b5f4;background:#5e35a133}[data-theme=dark] .jh-meta{border-bottom-color:var(--border-light)}[data-theme=dark] .jm-lbl{color:var(--gray-500)}[data-theme=dark] .jm-val{color:var(--gray-800)}[data-theme=dark] .bbar-wrap{background:var(--bg-hover)}[data-theme=dark] .sp-not-started{color:#9a9fae;background:#6b708026}[data-theme=dark] .sp-booked{color:#2dd4bf;background:#0d94882e}[data-theme=dark] .sp-in-progress{color:#fbbf24;background:#92400e26}[data-theme=dark] .sp-waiting-on-client{color:#fdba74;background:#c2410c2e}[data-theme=dark] .sp-in-review{color:#7dd3fc;background:#0369a126}[data-theme=dark] .sp-sent-for-signing{color:#a5b4fc;background:#4338ca33}[data-theme=dark] .sp-to-be-lodged{color:#c4b5fd;background:#7c3aed33}[data-theme=dark] .sp-done{color:#4ade80;background:#16a34a26}[data-theme=dark] .sp-lodged{color:#c4b5f4;background:#5e35a133}[data-theme=dark] .sp-cancelled{color:#f87171;background:#dc262626}[data-theme=dark] .jh-note{border-bottom-color:var(--border-light);color:var(--gray-600);background:#fffbf50d}[data-theme=dark] .jh-note:hover{background:#fffbf514}[data-theme=dark] .jh-note-edit{background:var(--bg-input);border-color:var(--border-light);color:var(--gray-800)}[data-theme=dark] .jh-note-edit:focus{border-color:#6dd0ef}[data-theme=dark] .jh-note-btn-cancel{background:var(--bg-hover);color:var(--gray-600)}[data-theme=dark] .job-tabs{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .jt-nav{border-bottom-color:var(--border-light);background:var(--bg-page)}[data-theme=dark] .jt-tab{color:var(--gray-500)}[data-theme=dark] .jt-tab.on{color:#6dd0ef;border-bottom-color:#6dd0ef}[data-theme=dark] .jt-tab:hover:not(.on){color:var(--gray-700)}[data-theme=dark] .ts-card{background:var(--bg-page);border-color:var(--border-light)}[data-theme=dark] .ts-card.warn{background:#d9770614;border-color:#d977064d}[data-theme=dark] .ts-card.over{background:#dc262614;border-color:#dc26264d}[data-theme=dark] .tsc-lbl,[data-theme=dark] .tsc-sub{color:var(--gray-500)}[data-theme=dark] .te-table th{color:var(--gray-500);border-bottom-color:var(--border-light)}[data-theme=dark] .te-table td{color:var(--gray-700);border-bottom-color:var(--border-light)}[data-theme=dark] .te-table tr:hover td{background:var(--bg-hover)}[data-theme=dark] .toast--success{color:#4ade80;background:#16a34a26;border-color:#16a34a4d}[data-theme=dark] .toast--error{color:#f87171;background:#dc262626;border-color:#dc26264d}[data-theme=dark] .toast--info{color:#93c5fd;background:#2563eb26;border-color:#2563eb4d}[data-theme=dark] .status-pill--draft{color:#9a9fae;background:#6b708026}[data-theme=dark] .status-pill--planned{color:#c4b5f4;background:#6d3fba26}[data-theme=dark] .status-pill--in-progress,[data-theme=dark] .status-pill--in_progress{color:#93c5fd;background:#2563eb26}[data-theme=dark] .status-pill--waiting,[data-theme=dark] .status-pill--waiting_on_client{color:#fbbf24;background:#d9770626}[data-theme=dark] .status-pill--review,[data-theme=dark] .status-pill--ready_for_review{color:#c4b5f4;background:#5e35a133}[data-theme=dark] .status-pill--review-followup,[data-theme=dark] .status-pill--review_followup_required{color:#f9a8d4;background:#be185d26}[data-theme=dark] .status-pill--finalising{color:#7dd3fc;background:#0369a126}[data-theme=dark] .status-pill--done{color:#4ade80;background:#16a34a26}[data-theme=dark] .status-pill--cancelled{color:#6a6580;background:#6b708026}[data-theme=dark] .status-pill--sent{color:#93c5fd;background:#2563eb26}[data-theme=dark] .status-pill--received{color:#fbbf24;background:#d9770626}[data-theme=dark] .status-pill--applied{color:#4ade80;background:#16a34a26}[data-theme=dark] .log-form-highlight{animation:none}[data-theme=dark] .bbar-label{color:var(--gray-700)}[data-theme=dark] .table-row-clickable:hover td{background:#8975ab14}[data-theme=dark] .cdl-stat{background:var(--bg-page);border-color:var(--border-light)}[data-theme=dark] .cdl-sec-label,[data-theme=dark] .cdl-key{color:var(--gray-500)}[data-theme=dark] .cdl-val{color:var(--gray-700)}[data-theme=dark] .day-cal{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .dch{border-bottom-color:var(--border-light)}[data-theme=dark] .dch-date{color:var(--gray-800)}[data-theme=dark] .dch-bar{background:var(--bg-hover)}[data-theme=dark] .tslots{border-left-color:var(--border-light)}[data-theme=dark] .tslot{border-bottom-color:var(--border-light)}[data-theme=dark] .tslot:hover{background:#8975ab14}[data-theme=dark] .tslot-dragover{background:#8975ab2e;outline-color:#8975ab80}[data-theme=dark] .zoom-btn{background:var(--bg-card);border-color:var(--border-light);color:var(--gray-400)}[data-theme=dark] .zoom-btn:hover:not(:disabled){color:#c4b5f4;background:#8975ab26;border-color:#8975ab66}[data-theme=dark] .zoom-lbl,[data-theme=dark] .tlbl{color:var(--gray-500)}[data-theme=dark] .blk-job{background:linear-gradient(135deg,#5e35a133,#5e35a11f);border-left-color:#b899e6}[data-theme=dark] .blk-internal{background:linear-gradient(135deg,#db277726,#db277714);border-left-color:#f472b6}[data-theme=dark] .blk-meeting{background:linear-gradient(135deg,#0891b226,#0891b214);border-left-color:#22d3ee}[data-theme=dark] .blk-emails{background:linear-gradient(135deg,#d9770626,#d9770614);border-left-color:#fbbf24}[data-theme=dark] .blk-break{background:linear-gradient(135deg,#16a34a26,#16a34a14);border-left-color:#4ade80}[data-theme=dark] .blk-lunch{opacity:.8;background:linear-gradient(135deg,#94a3b81a,#94a3b80d);border-left-color:#64748b}[data-theme=dark] .blk-personal{opacity:.7;background:linear-gradient(135deg,#94a3b814,#94a3b80a);border-left-color:#64748b}[data-theme=dark] .blk-draft-outlook{background:#0891b214;border-color:#0891b266 #0891b266 #0891b266 #22d3ee}[data-theme=dark] .blk-draft-job{background:#5e35a114;border-color:#5e35a166 #5e35a166 #5e35a166 #b899e6}[data-theme=dark] .blk-draft-note{background:#d9770614;border-color:#d9770666 #d9770666 #d9770666 #fbbf24}[data-theme=dark] .blk-gap{background:repeating-linear-gradient(45deg,#f47c280f,#f47c280f 4px,#f47c281f 4px 8px);border-color:#f47c2866}[data-theme=dark] .gap-lbl{color:#fbbf24}[data-theme=dark] .blk-title{color:var(--gray-800)}[data-theme=dark] .blk-sub,[data-theme=dark] .blk-dur{color:var(--gray-500)}[data-theme=dark] .blk-budget{background:var(--bg-hover)}[data-theme=dark] .tag-outlook{color:#7dd3fc;background:#0369a126}[data-theme=dark] .tag-job{color:#c4b5f4;background:#5e35a126}[data-theme=dark] .tag-note{color:#fbbf24;background:#92400e26}[data-theme=dark] .tag-timer{color:#4ade80;background:#16a34a26}[data-theme=dark] .tag-manual{background:var(--bg-hover);color:var(--gray-600)}[data-theme=dark] .tag-unpaid{color:#94a3b8;background:#64748b1a}[data-theme=dark] .week-cal{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .wk-head{border-bottom-color:var(--border-light)}[data-theme=dark] .wdh{border-right-color:var(--border-light)}[data-theme=dark] .wdh-n{color:var(--gray-500)}[data-theme=dark] .wdh-d{color:var(--gray-800)}[data-theme=dark] .wdh-bar{background:var(--bg-hover)}[data-theme=dark] .wcol{border-left-color:var(--border-light)}[data-theme=dark] .wslot{border-bottom-color:var(--border-light)}[data-theme=dark] .wslot:hover{background:#8975ab14}[data-theme=dark] .wslot-dragover{background:#8975ab2e;outline-color:#8975ab80}[data-theme=dark] .wtl{color:var(--gray-500)}[data-theme=dark] .wb-job{color:#c4b5f4;background:#5e35a133;border-left-color:#b899e6}[data-theme=dark] .wb-int{color:#fbcfe8;background:#db27771f;border-left-color:#f472b6}[data-theme=dark] .wb-meet{color:#67e8f9;background:#0891b226;border-left-color:#22d3ee}[data-theme=dark] .wb-email{color:#fde68a;background:#d9770626;border-left-color:#fbbf24}[data-theme=dark] .wb-break{color:#86efac;background:#16a34a26;border-left-color:#4ade80}[data-theme=dark] .wb-lunch{color:#94a3b8;opacity:.8;background:#94a3b814;border-left-color:#64748b}[data-theme=dark] .wb-draft{color:#7dd3fc;background:#0891b214;border-color:#0891b24d}[data-theme=dark] .wb-gap{color:#fbbf24;background:#f47c2814;border-color:#f47c284d}[data-theme=dark] .bb-dot.job{background:#b899e6}[data-theme=dark] .bb-dot.internal{background:#6b7280}[data-theme=dark] .bb-dot.break{background:#4ade80}[data-theme=dark] .bb-dot.lunch{background:#64748b}[data-theme=dark] .bb-dot.off{background:#4b5563}[data-theme=dark] .sc{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .sc-lbl{color:var(--gray-500)}[data-theme=dark] .sc-bar,[data-theme=dark] .tg{background:var(--bg-hover)}[data-theme=dark] .tgb{color:var(--gray-600)}[data-theme=dark] .tgb.on{background:var(--bg-card);color:#c4b5f4}[data-theme=dark] .nb{background:var(--bg-card);border-color:var(--border-light);color:var(--gray-600)}[data-theme=dark] .staff-sel{background:var(--bg-card);border-color:var(--border-light);color:var(--gray-700)}[data-theme=dark] .pw-badge{color:#c4b5f4;background:#5e35a133}[data-theme=dark] .log-panel{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .lp-head{border-bottom-color:var(--border-light);background:#8975ab1f}[data-theme=dark] .lp-title{color:#c4b5f4}[data-theme=dark] .lp-sub{color:#c4b5f499}[data-theme=dark] .lp-pre{color:#fbbf24;background:#d977061a;border-color:#d9770640}[data-theme=dark] .type-tog{background:var(--bg-hover)}[data-theme=dark] .tt{color:var(--gray-600)}[data-theme=dark] .tt.on-c{color:#c4b5f4;background:#5e35a126}[data-theme=dark] .tt.on-i{background:var(--bg-page);color:var(--gray-700)}[data-theme=dark] .lf label{color:var(--gray-600)}[data-theme=dark] .li,[data-theme=dark] .ls{background:var(--bg-input);border-color:var(--border-light);color:var(--gray-800)}[data-theme=dark] .ls.ap{color:#c4b5f4;background:#5e35a11f;border-color:#b899e6}[data-theme=dark] .ls.ag{color:#86efac;background:#16a34a1f;border-color:#4ade80}[data-theme=dark] .dur-w input{background:var(--bg-input);border-color:var(--border-light);color:var(--gray-800)}[data-theme=dark] .dur-w span{color:var(--gray-500)}[data-theme=dark] .mb-bar{background:var(--bg-hover)}[data-theme=dark] .ln-a{color:#fbbf24;background:#d977061a;border-color:#d9770640}[data-theme=dark] .ln-b{color:#93c5fd;background:#2563eb1a;border-color:#2563eb40}[data-theme=dark] .ln-r{color:#fca5a5;background:#dc26261a;border-color:#dc262640}[data-theme=dark] .la{border-top-color:var(--border-light)}[data-theme=dark] .la-c{background:var(--bg-card);border-color:var(--border-light);color:var(--gray-600)}[data-theme=dark] .la-s{background:#8975ab}[data-theme=dark] .auto-h{color:#c4b5f4}[data-theme=dark] .clock-bar{border-color:var(--border-light)}.top-bar:before{content:"";background:var(--brand-gradient);pointer-events:none;height:3px;position:absolute;top:0;left:0;right:0}.top-bar-title{letter-spacing:-.01em;color:var(--gray-900);white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;font-size:1rem;font-weight:700;display:flex}.top-bar-title:before{content:"";background:var(--section-colour,var(--purple-700));width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb,var(--section-colour,var(--purple-700))18%,transparent);border-radius:50%;flex-shrink:0}.top-bar-sep{background:var(--border-light);flex-shrink:0;width:1px;height:20px}.top-bar-search--oncolour{background:var(--bg-sunk);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);border:1px solid #0000}.top-bar-search--oncolour:focus-within{background:var(--bg-input);border-color:var(--purple-500);box-shadow:var(--focus-ring)}.top-bar-search-input--oncolour{color:var(--gray-800)!important;box-shadow:none!important;background:0 0!important;border:none!important}.top-bar-search-input--oncolour::placeholder{color:var(--gray-400)!important}.top-bar-search-input--oncolour:focus,.top-bar-search-input--oncolour:focus-visible{outline:none;box-shadow:none!important;background:0 0!important;border:none!important}.top-bar-search--oncolour .top-bar-search-icon{color:var(--gray-400)}.top-bar-btn-ghost{border-radius:var(--radius-md);font-family:var(--font-body);box-shadow:var(--shadow-xs);transition:background var(--transition-fast),box-shadow var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;font-size:.8125rem;font-weight:600;line-height:1.4;display:inline-flex;background:var(--purple-700)!important;color:#fff!important;border:1px solid var(--purple-700)!important}.top-bar-btn-ghost:hover{box-shadow:var(--shadow-md);background:var(--purple-800)!important}.top-bar-icon-btn{border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--bg-card);width:34px;height:34px;color:var(--gray-600);cursor:pointer;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.top-bar-icon-btn:hover{background:var(--purple-50);border-color:var(--border-purple);color:var(--purple-700)}.top-bar-breadcrumb{flex-shrink:0;align-items:center;gap:6px;padding-right:14px;display:flex}.top-bar-bc-parent{color:var(--gray-500);white-space:nowrap;font-size:.8125rem;text-decoration:none;transition:color .15s}.top-bar-bc-parent:hover{color:var(--purple-700)}.top-bar-bc-sep{color:var(--gray-300);flex-shrink:0;font-size:.75rem}.top-bar-bc-current{color:var(--gray-800);white-space:nowrap;font-size:.8125rem;font-weight:600}.top-bar-action-sep{background:var(--border-light);flex-shrink:0;width:1px;height:20px;margin:0 2px}@media (max-width:768px){.top-bar{gap:8px}.top-bar-breadcrumb,.top-bar-sep,.top-bar-action-sep{display:none}.top-bar-actions{gap:6px}.top-bar-btn-ghost{white-space:nowrap;padding:6px 10px}.top-bar-icon-btn{width:36px;height:36px}.stat-card{padding:12px}.stat-value,.stat-card-value{font-size:1.125rem}.top-bar .session-pill{display:none}}.stat-card{min-width:0}.client-detail-shell{min-height:calc(100vh - var(--topbar-height));flex-direction:column;margin:-32px -24px -64px;display:flex}.client-detail-two-panel{min-height:calc(100vh - var(--topbar-height));flex:1;display:flex;overflow:hidden}.client-detail-left{background:var(--bg-card);border-right:1px solid var(--border-light);flex-direction:column;flex-shrink:0;width:220px;display:flex;overflow-y:auto}.client-detail-right{background:var(--bg-page);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}@media (max-width:768px){.client-detail-two-panel{flex-direction:column;min-height:0;overflow:visible}.client-detail-left{border-right:none;border-bottom:1px solid var(--border-light);max-height:none;overflow-y:visible;width:100%!important}.client-detail-right{overflow:visible}}.client-detail-tab-content{flex:1;padding:16px 20px;overflow-y:auto}.cdl-avatar-row{border-bottom:1px solid var(--border-light);align-items:center;gap:9px;padding:14px 14px 12px;display:flex}.cdl-avatar{background:linear-gradient(135deg,var(--h-teal),#007a74);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.65rem;font-weight:700;display:flex}.cdl-name-block{flex:1;min-width:0}.cdl-name{color:var(--gray-800);font-size:.88rem;font-weight:700;line-height:1.2}.cdl-since{color:var(--gray-400);margin-top:1px;font-size:.62rem}.cdl-section{border-bottom:1px solid var(--border-light);padding:10px 14px}.cdl-section:last-child{border-bottom:none}.cdl-sec-label{text-transform:uppercase;letter-spacing:.09em;color:var(--gray-300);margin-bottom:6px;font-size:.58rem;font-weight:700}.cdl-kv{justify-content:space-between;align-items:baseline;padding:3px 0;display:flex}.cdl-key{text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);flex-shrink:0;font-size:.62rem;font-weight:700}.cdl-val{color:var(--gray-700);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:.76rem;font-weight:500;overflow:hidden}.cdl-val-link{color:var(--h-sky)}.cdl-val-phone{color:var(--h-purple)}.cdl-stat-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.cdl-stat{background:var(--bg-page);border:1px solid var(--border-light);border-radius:var(--radius-md);text-align:center;border-top-width:2px;padding:8px 10px}.cdl-stat-val{color:var(--gray-800);font-size:1.1rem;font-weight:700;line-height:1}.cdl-stat-lbl{text-transform:uppercase;letter-spacing:.07em;color:var(--gray-400);margin-top:2px;font-size:.55rem;font-weight:700}.cdl-entity-row{justify-content:space-between;align-items:center;padding:3px 0;display:flex}.cdl-entity-name{color:var(--gray-700);font-size:.75rem}.cdl-staff-row{justify-content:space-between;align-items:center;padding:3px 0;display:flex}.cdl-staff-role{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);font-size:.6rem;font-weight:700}.cdl-staff-name-r{align-items:center;gap:5px;display:flex}.cdl-av-sm{background:var(--h-purple);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.46rem;font-weight:700;display:flex}.cdl-staff-nm{color:var(--gray-700);font-size:.74rem;font-weight:600}.cdl-type-badge{color:#fff;white-space:nowrap;border-radius:4px;padding:1px 5px;font-size:.54rem;font-weight:700}@keyframes sk-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.sk{background:linear-gradient(90deg,var(--gray-100)25%,var(--gray-50)50%,var(--gray-100)75%);background-size:1200px 100%;border-radius:4px;animation:1.5s ease-in-out infinite sk-shimmer}[data-theme=dark] .sk{background:linear-gradient(90deg,#2e2b3a 25%,#353248 50%,#2e2b3a 75%) 0 0/1200px 100%;animation:1.5s ease-in-out infinite sk-shimmer}.sk-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:16px}.sk-table-wrapper{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.sk-table-head{background:var(--gray-50);border-bottom:1px solid var(--border-light);gap:20px;padding:9px 14px;display:flex}.sk-table-row{border-bottom:1px solid var(--border-light);align-items:center;gap:20px;padding:11px 14px;display:flex}.sk-table-row:last-child{border-bottom:none}.sk-chips{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.sk-tab-bar{background:var(--bg-card);border-bottom:2px solid var(--border-light);gap:4px;margin-bottom:16px;padding:0 16px;display:flex}.sk-tab{padding:10px 14px}.bottom-bar{z-index:200;background:#1a1a2e;border-top:1px solid #2d2d3e;align-items:center;gap:0;height:48px;padding:0 20px;display:flex;position:fixed;bottom:0;left:0;right:0}.bb-status{flex:1;align-items:center;gap:8px;display:flex}.bb-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.bb-dot.job{background:#a78bfa;animation:1.5s infinite pulse}.bb-dot.internal{background:#9ca3af}.bb-dot.break{background:#4ade80}.bb-dot.lunch{background:#475569}.bb-dot.off{background:#374151}.bb-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;max-width:300px;font-size:.75rem;font-weight:600;overflow:hidden}.bb-meta{color:#6b7280;white-space:nowrap;margin-left:10px;font-size:.65rem}.bb-time{font-family:var(--font-mono);color:#a78bfa;flex-shrink:0;margin-left:12px;font-size:.8rem;font-weight:700}.bb-divider{background:#2d2d3e;flex-shrink:0;width:1px;height:24px;margin:0 16px}.bb-actions{flex-shrink:0;gap:6px;display:flex}.bb-btn{font-size:.68rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;border-radius:5px;padding:4px 11px;transition:all .15s}.bb-switch{color:#d1d5db;background:#2d2d3e;border:1px solid #374151}.bb-switch:hover{background:#374151}.bb-done{background:var(--purple-700);color:#fff}.bb-clock{color:#9ca3af;background:#374151;border:1px solid #4b5563}.bb-inactive .bb-label{color:#6b7280}.bb-inactive .bb-time{color:#4b5563}.bb-budget{white-space:nowrap;flex-shrink:0;margin-left:10px;font-size:.68rem;font-weight:600}.bb-budget.green{color:#4ade80}.bb-budget.amber{color:#fbbf24}.bb-budget.red{color:#ef4444;font-weight:700}.bb-budget.red.pulse{animation:1.5s infinite pulse}.bb-clockoff{color:#9ca3af;background:#374151;border:1px solid #4b5563}.bb-clockoff:hover{color:#d1d5db;background:#4b5563}.bb-review{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px;transition:all .15s}.bb-review:hover{color:#d1d5db;background:#2d2d3e}.bottom-bar.over-budget{border-top:2px solid #ef4444}.pbar-clickable{border-radius:6px;padding:2px 6px;transition:background .15s}.pbar-clickable:hover{background:#ffffff0d}.qs-popover{z-index:310;background:#1e1e2e;border:1px solid #2d2d3e;border-radius:12px;width:380px;position:fixed;bottom:56px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 -8px 32px #0006}.qs-head{border-bottom:1px solid #2d2d3e;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.qs-title{color:#f59e0b;font-size:.78rem;font-weight:700}.qs-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px;display:flex}.qs-close:hover{color:#d1d5db}.qs-body{flex-direction:column;gap:8px;padding:12px 14px;display:flex}.qs-actions{border-top:1px solid #2d2d3e;justify-content:flex-end;gap:8px;padding:10px 14px;display:flex}body:has(.bottom-bar) .main-content{padding-bottom:104px}body:has(.bottom-bar) .sidebar{padding-bottom:52px}body:has(.bottom-bar) .sidebar-footer{margin-bottom:0}.modal-backdrop,.modal-overlay{z-index:500;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-card,#fff);border-radius:12px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal-header{border-bottom:1px solid var(--border-light,#e2e5eb);justify-content:space-between;align-items:center;padding:18px 24px 14px;display:flex}.modal-title{font-size:.95rem;font-weight:700}.modal-close{color:var(--gray-500);cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.1rem}.modal-close:hover{color:var(--gray-700)}.modal-body{flex-direction:column;gap:14px;padding:20px 24px;display:flex}.modal-footer{border-top:1px solid var(--border-light,#e2e5eb);justify-content:flex-end;gap:10px;padding:14px 24px 20px;display:flex}.jobs-by-status{flex-direction:column;gap:0;display:flex}.status-row{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:6px 0;display:flex}.status-row:last-child{border-bottom:none}.status-chip{text-transform:capitalize;border-radius:20px;padding:3px 10px;font-size:.72rem;font-weight:600}.status-count{color:var(--gray-700);font-size:.85rem;font-weight:700}[data-theme=dark] .modal-card{background:var(--bg-card)}[data-theme=dark] .modal-header{border-bottom-color:var(--border-light)}[data-theme=dark] .modal-footer{border-top-color:var(--border-light)}[data-theme=dark] .modal-close{color:var(--gray-400)}[data-theme=dark] .status-count{color:var(--gray-300)}.switch-modal{z-index:300;background:#1e1e2e;border:1px solid #2d2d3e;border-radius:12px;width:480px;max-height:calc(100vh - 120px);position:fixed;bottom:56px;left:50%;overflow:hidden auto;transform:translate(-50%);box-shadow:0 -8px 32px #0006}.sm-head{border-bottom:1px solid #2d2d3e;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.sm-title{color:#fff;font-size:.8rem;font-weight:700}.sm-close{color:#6b7280;cursor:pointer;background:0 0;border:none;padding:2px 6px;font-size:1rem}.sm-section{padding:8px 12px 4px}.sm-sec-lbl{text-transform:uppercase;letter-spacing:.07em;color:#4b5563;margin-bottom:5px;font-size:.58rem;font-weight:700}.sm-item{cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:7px 10px;transition:background .1s;display:flex}.sm-item:hover{background:#2d2d3e}.sm-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sm-name{color:#d1d5db;font-size:.75rem;font-weight:600}.sm-meta{color:#6b7280;margin-left:auto;font-size:.62rem}.sm-divider{background:#2d2d3e;height:1px;margin:6px 12px}.sm-footer{border-top:1px solid #2d2d3e;gap:6px;padding:8px 12px;display:flex}.sm-footer-btn{font-size:.72rem;font-weight:600;font-family:var(--font-body);cursor:pointer;text-align:center;border:none;border-radius:6px;flex:1;padding:7px}.sm-lunch{color:#7dd3fc;background:#1e3a5f}.sm-break{color:#86efac;background:#052e16}.sm-personal{color:#78716c;background:#1c1917;border:1px solid #2c2a28}.sm-quick{grid-template-columns:1fr 1fr;gap:6px;padding:8px 12px;display:grid}.sm-qa{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:10px 12px;transition:all .12s;display:flex}.sm-qa:hover{border-color:#ffffff1a}.sm-qa-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.sm-qa-label{color:#e5e7eb;font-size:.76rem;font-weight:600}.sm-search-wrap{padding:4px 12px 8px}.sm-search{color:#d1d5db;width:100%;font-size:.75rem;font-family:var(--font-body);background:#141420;border:1px solid #374151;border-radius:6px;outline:none;padding:7px 10px}.sm-search:focus{border-color:#8975ab}.sm-search-results{max-height:300px;overflow-y:auto}.ts-subnav{background:var(--bg-card);border-bottom:1px solid var(--border-light);align-items:center;margin-bottom:0;padding:0 20px;display:flex}.ts-subnav-inline{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);align-items:center;margin-bottom:16px;padding:0 12px;display:flex}.sn{color:#6b7080;cursor:pointer;white-space:nowrap;font-size:.82rem;font-weight:500;font-family:var(--font-body);background:0 0;border:none;border-bottom:3px solid #0000;padding:12px 16px;transition:all .15s}.sn.on{color:#5e35a1;border-bottom-color:#5e35a1;font-weight:700}.sn:hover:not(.on){color:var(--gray-900)}.sn-badge{color:var(--danger);background:#fee2e2;border-radius:10px;margin-left:4px;padding:1px 5px;font-size:.6rem;font-weight:700}.clock-bar{border-radius:var(--radius-md);background:linear-gradient(135deg,#1a1a2e,#2d1b69);align-items:center;gap:14px;margin-bottom:14px;padding:12px 16px;display:flex}.cb-icon{flex-shrink:0;font-size:1.2rem}.cb-text{color:#fff;flex:1}.cb-title{font-size:.82rem;font-weight:700}.cb-sub{color:#ffffff8c;margin-top:1px;font-size:.68rem}.cb-actions{flex-shrink:0;gap:7px;display:flex}.cb-btn{font-size:.74rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;padding:6px 13px}.cb-primary{color:#fff;background:#8975ab}.cb-ghost{color:#fff;background:#ffffff1a;border:1px solid #fff3}.cb-danger{color:#fff;background:#dc2626}.clock-bar.clocked{background:linear-gradient(135deg,#052e16,#14532d);border-left:3px solid #8975ab}.clock-bar.clocked .cb-title{color:#86efac}.ts-stats{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:14px;display:grid}.sc{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);border-top:3px solid #0000;padding:11px 13px}.sc.ts-accent{border-top-color:#8975ab}.sc.green-accent{border-top-color:var(--success)}.sc.amber-accent{border-top-color:var(--warning)}.sc-lbl{text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);margin-bottom:2px;font-size:.6rem;font-weight:600}.sc-val{font-size:1.2rem;font-weight:700;font-family:var(--font-mono);line-height:1.1}.sc-val.v-purple{color:var(--purple-700)}.sc-val.v-green{color:var(--success)}.sc-val.v-amber{color:var(--warning)}.sc-val.v-red{color:var(--danger)}.sc-bar{background:var(--gray-100);border-radius:2px;height:3px;margin:5px 0 2px;overflow:hidden}.sc-fill{border-radius:2px;height:100%}.sc-sub{color:var(--gray-400);font-size:.6rem}.vc{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.tg{background:var(--gray-100);border-radius:7px;gap:2px;padding:2px;display:flex}.tgb{font-size:.73rem;font-weight:600;font-family:var(--font-body);cursor:pointer;color:var(--gray-500);background:0 0;border:none;border-radius:5px;padding:5px 12px}.tgb.on{color:#8975ab;background:#fff;box-shadow:0 1px 3px #0000001a}.nb{border:1px solid var(--border-light);cursor:pointer;color:var(--gray-500);font-size:.72rem;font-family:var(--font-body);background:#fff;border-radius:5px;padding:4px 9px}.wk-lbl{font-size:.8rem;font-weight:600}.pw-badge{background:var(--purple-50);color:var(--purple-700);border-radius:10px;padding:2px 7px;font-size:.62rem;font-weight:600}.staff-sel{border:1px solid var(--border-light);font-family:var(--font-body);background:#fff;border-radius:6px;margin-left:auto;padding:5px 10px;font-size:.76rem}.cal-wrap{grid-template-columns:1fr;align-items:start;gap:14px;display:grid}.day-cal{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;display:flex;overflow:hidden}.day-cal.off{display:none}.dch{border-bottom:1px solid var(--border-light);align-items:center;gap:8px;padding:10px 14px;display:flex}.dch-date{font-size:.86rem;font-weight:700}.dch-sub{color:var(--warning);margin-top:1px;font-size:.66rem}.dch-prog{color:var(--gray-400);align-items:center;gap:7px;margin-left:auto;font-size:.65rem;display:flex}.dch-bar{background:var(--gray-100);border-radius:2px;width:68px;height:4px;overflow:hidden}.dch-fill{background:#8975ab;border-radius:2px;height:100%}.tgrid{grid-template-columns:38px 1fr;max-height:calc(100vh - 240px);display:grid;overflow-y:auto}.tlbls .tlbl{height:52px;color:var(--gray-400);font-size:.57rem;font-family:var(--font-mono);justify-content:flex-end;align-items:flex-start;padding-top:3px;padding-right:6px;display:flex}.tslots{border-left:1px solid var(--border-light);position:relative}.tslot{border-bottom:1px solid var(--gray-50);cursor:pointer;height:52px;transition:background .1s;position:relative}.tslot:hover{background:var(--purple-50)}.tslot-dragover{outline:2px dashed var(--purple-300);outline-offset:-2px;background:#5e35a11f}.zoom-ctrls{align-items:center;gap:3px;margin-left:8px;display:flex}.zoom-ctrls-vert{flex-direction:column;gap:2px}.zoom-btn{border:1px solid var(--border-light);background:var(--bg-card);cursor:pointer;width:22px;height:22px;color:var(--gray-500);border-radius:4px;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.zoom-btn:hover:not(:disabled){background:var(--purple-50);color:var(--purple-700);border-color:var(--purple-200)}.zoom-btn:disabled{opacity:.3;cursor:not-allowed}.zoom-lbl{color:var(--gray-400);text-align:center;min-width:48px;font-size:.55rem;font-weight:600}.blk[draggable=true],.wb[draggable=true]{cursor:grab}.blk[draggable=true]:active,.wb[draggable=true]:active{cursor:grabbing}.blk{cursor:pointer;z-index:2;border-radius:6px;padding:4px 8px;transition:box-shadow .15s;position:absolute;left:3px;right:3px;overflow:hidden}.blk:hover{box-shadow:0 2px 8px #00000026}.blk:after{content:"✏ EDIT";background:var(--purple-700);color:#fff;opacity:0;pointer-events:none;letter-spacing:.04em;border-radius:4px;padding:2px 7px;font-size:.58rem;font-weight:700;transition:opacity .12s;position:absolute;top:4px;right:6px;box-shadow:0 1px 4px #0003}.blk:hover:after{opacity:1}.blk-job{border-left:3px solid var(--purple-700);background:linear-gradient(135deg,#ede8ff,#ddd0ff)}.blk-internal{background:linear-gradient(135deg,#fdf2f8,#fce7f3);border-left:3px solid #db2777}.blk-meeting{background:linear-gradient(135deg,#e0f2fe,#bae6fd);border-left:3px solid #0891b2}.blk-emails{border-left:3px solid var(--warning);background:linear-gradient(135deg,#fef3c7,#fde68a)}.blk-break{border-left:3px solid var(--success);background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.blk-lunch{opacity:.75;background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-left:3px dashed #94a3b8}.blk-personal{opacity:.65;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-left:3px dashed #94a3b8}.blk-leave{background:linear-gradient(135deg,#fdf4ff,#f3e8ff);border-left:3px solid #9333ea}.blk-draft-outlook{background:#f0f9ff;border:2px dashed #0891b2;border-left:3px solid #0891b2}.blk-draft-job{border:2px dashed var(--purple-700);border-left:3px solid var(--purple-700);background:#faf8ff}.blk-draft-note{border:2px dashed var(--warning);border-left:3px solid var(--warning);background:#fffbeb}.blk-gap{background:repeating-linear-gradient(45deg,#fff8f0,#fff8f0 4px,#fff3e6 4px 8px);border:1.5px dashed #f47c28;justify-content:center;align-items:center;display:flex}.gap-lbl{color:#f47c28;font-size:.62rem;font-weight:600}.blk-active{border-right:3px solid #8975ab!important}.blk-active:after{content:"⏱";font-size:.65rem;position:absolute;top:3px;right:6px}.blk-title{white-space:nowrap;text-overflow:ellipsis;font-size:.69rem;font-weight:700;overflow:hidden}.blk-sub{color:var(--gray-500);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.blk-dur{font-size:.57rem;font-family:var(--font-mono);color:var(--gray-400);margin-top:1px}.blk-tag{border-radius:3px;margin-top:2px;padding:1px 4px;font-size:.57rem;font-weight:600;display:inline-block}.blk-budget{background:var(--gray-200);border-radius:0 0 6px 6px;height:3px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.blk-budget-fill{border-radius:0 0 6px 6px;height:100%}.tag-outlook{color:#0369a1;background:#e0f2fe}.tag-job{background:var(--purple-50);color:var(--purple-700)}.tag-note{color:#92400e;background:#fef3c7}.tag-timer{color:var(--success);background:#dcfce7}.tag-manual{background:var(--gray-100);color:var(--gray-500)}.tag-unpaid{color:#64748b;background:#f1f5f9;font-style:italic}.now-line{background:var(--danger);z-index:10;pointer-events:none;height:2px;position:absolute;left:0;right:0}.now-line:before{content:"";background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;left:-4px}.week-cal{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;display:none;overflow:hidden}.week-cal.on{display:flex}.wk-head{border-bottom:1px solid var(--border-light);grid-template-columns:38px repeat(7,1fr);display:grid}.wdh{text-align:center;border-right:1px solid var(--gray-50);padding:8px 4px}.wdh:last-child{border-right:none}.wdh-n{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);font-size:.57rem;font-weight:700}.wdh-d{margin-top:1px;font-size:.8rem;font-weight:700}.wdh-d.today{color:#fff;background:#8975ab;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;margin:2px auto 0;font-size:.74rem;display:flex}.wdh-h{font-size:.57rem;font-family:var(--font-mono);color:var(--gray-400);margin-top:2px}.wdh-bar{background:var(--gray-100);border-radius:2px;height:2px;margin-top:3px;overflow:hidden}.wdh-fill{border-radius:2px;height:100%}.wgrid{grid-template-columns:38px repeat(7,1fr);max-height:calc(100vh - 280px);display:grid;overflow-y:auto}.wtl{height:46px;color:var(--gray-400);font-size:.55rem;font-family:var(--font-mono);justify-content:flex-end;align-items:flex-start;padding-top:3px;padding-right:5px;display:flex}.wcol{border-left:1px solid var(--gray-50);position:relative}.wslot{border-bottom:1px solid var(--gray-25);cursor:pointer;height:46px}.wslot:hover{background:var(--purple-50)}.wslot-dragover{outline:2px dashed var(--purple-300);outline-offset:-2px;background:#5e35a11f}.wb{cursor:pointer;z-index:2;border-radius:4px;padding:2px 4px;font-size:.58rem;font-weight:600;line-height:1.3;position:absolute;left:1px;right:1px;overflow:hidden}.wb-job{border-left:2px solid var(--purple-700);color:#3b1f6e;background:#ede8ff}.wb-int{color:#9d174d;background:#fdf2f8;border-left:2px solid #db2777}.wb-meet{color:#075985;background:#e0f2fe;border-left:2px solid #0891b2}.wb-email{border-left:2px solid var(--warning);color:#78350f;background:#fef3c7}.wb-break{border-left:2px solid var(--success);color:#166534;background:#dcfce7}.wb-lunch{color:#64748b;opacity:.75;background:#f1f5f9;border-left:2px dashed #94a3b8}.wb-leave{color:#6b21a8;background:#fdf4ff;border-left:2px solid #9333ea}.wb-draft{color:#0369a1;background:#f0f9ff;border:1px dashed #0891b2}.wb-gap{color:#f47c28;background:#fff8f0;border:1px dashed #f47c28;justify-content:center;align-items:center;font-size:.56rem;display:flex}.log-panel{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);flex-direction:column;max-height:calc(100vh - 140px);display:flex;position:sticky;top:70px;overflow:hidden}.lp-head{border-bottom:1px solid var(--border-light);background:#f0ecf8;padding:10px 13px}.lp-title{color:#8975ab;font-size:.8rem;font-weight:700}.lp-sub{color:#8975ab;opacity:.8;margin-top:1px;font-size:.63rem}.lp-flash{animation:.5s lp-flash-anim}@keyframes lp-flash-anim{0%{box-shadow:0 0 0 3px #8975ab66}to{box-shadow:var(--shadow-xs)}}.lp-pre{color:var(--warning);background:#fff8f0;border:1px solid #fde68a;border-radius:5px;align-items:center;gap:5px;margin:8px 13px 0;padding:5px 8px;font-size:.63rem;display:flex}.type-tog{background:var(--gray-100);border-radius:7px;gap:2px;margin:9px 13px 0;padding:2px;display:flex}.tt{font-size:.69rem;font-weight:600;font-family:var(--font-body);cursor:pointer;text-align:center;color:var(--gray-500);background:0 0;border:none;border-radius:5px;flex:1;padding:5px 4px;transition:all .15s}.tt.on-c{background:var(--purple-50);color:var(--purple-700)}.tt.on-i{color:#333;background:#e8e9ee}.tt.on-l{color:#6b21a8;background:#fdf4ff}.lform{flex-direction:column;flex:1;gap:8px;padding:11px 13px;display:flex;overflow-y:auto}.lf{flex-direction:column;gap:2px;display:flex}.lf label{color:#444;font-size:.64rem;font-weight:600}.lf label .opt{color:var(--gray-400);font-weight:400}.lf-row2{grid-template-columns:1fr 1fr;gap:7px;display:grid}.li,.ls{border:1px solid var(--border-light);width:100%;font-family:var(--font-body);color:var(--gray-900);background:#fff;border-radius:6px;padding:5px 8px;font-size:.74rem}.ls{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236b7080' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:22px}.ls.ap{border-color:var(--purple-700);background:var(--purple-50);color:var(--purple-700);font-weight:500}.ls.ag{border-color:var(--success);color:#166534;background:#f0fdf4;font-weight:500}.auto-h{color:var(--purple-700);font-size:.59rem}.auto-h:before{content:"⚡"}.dur-row{grid-template-columns:1fr 1fr;gap:5px;display:grid}.dur-w{position:relative}.dur-w input{border:1px solid var(--border-light);width:100%;font-family:var(--font-body);border-radius:6px;padding:5px 22px 5px 7px;font-size:.74rem}.dur-w span{color:var(--gray-400);pointer-events:none;font-size:.59rem;font-family:var(--font-mono);position:absolute;top:50%;right:6px;transform:translateY(-50%)}.mb{margin-top:3px}.mb-bar{background:var(--gray-100);border-radius:2px;height:3px;overflow:hidden}.mb-fill{border-radius:2px;height:100%}.mb-meta{color:var(--gray-400);justify-content:space-between;margin-top:2px;font-size:.57rem;display:flex}.ln{border-radius:5px;gap:5px;padding:6px 8px;font-size:.67rem;line-height:1.4;display:flex}.ln-a{color:#78350f;background:#fef3c7;border:1px solid #fde68a}.ln-b{color:#075985;background:#e0f2fe;border:1px solid #bae6fd}.ln-r{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.la{border-top:1px solid var(--border-light);gap:6px;padding:9px 13px;display:flex}.la-c{font-family:var(--font-body);border:1px solid var(--border-light);color:var(--gray-500);cursor:pointer;background:#fff;border-radius:6px;padding:5px 11px;font-size:.73rem;font-weight:600}.la-s{font-family:var(--font-body);color:#fff;cursor:pointer;background:#8975ab;border:none;border-radius:6px;flex:1;padding:5px;font-size:.73rem;font-weight:600}.qlp{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);flex-direction:column;max-height:calc(100vh - 32px);animation:.15s dropdown-enter;display:flex;overflow:hidden}.qlp-head{border-bottom:1px solid var(--border-light);background:#f0ecf8;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.qlp-title{color:#8975ab;font-size:.78rem;font-weight:700}.qlp-close{cursor:pointer;color:#8975ab;background:0 0;border:none;border-radius:4px;align-items:center;padding:2px;display:flex}.qlp-close:hover{background:var(--purple-50)}.qlp-body{flex-direction:column;flex:1;gap:8px;padding:10px 12px;display:flex;overflow-y:auto}.qlp-body .type-tog{margin:0}.qlp-time{grid-template-columns:1fr 1fr;gap:8px;display:grid}.qlp-dur{color:#8975ab;font-size:.67rem;font-weight:600;font-family:var(--font-mono);text-align:right;margin-top:-4px}.qlp-actions{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.qlp-left{align-items:center;gap:6px;display:flex}.qlp-more{cursor:pointer;font-size:.68rem;font-family:var(--font-body);color:var(--purple-700);background:0 0;border:none;padding:0;font-weight:600}.qlp-more:hover{text-decoration:underline}.qlp-del{cursor:pointer;font-size:.68rem;font-family:var(--font-body);color:var(--danger);background:0 0;border:none;padding:0;font-weight:600}.qlp-del:hover{text-decoration:underline}.qlp-actions .la-s{flex:none;padding:5px 14px}.qlp-hours-info{color:var(--gray-500);flex-direction:column;gap:3px;font-size:.67rem;display:flex}.qlp-hours-info span{font-weight:500}.qlp-hours-bar{background:var(--gray-100);border-radius:3px;height:6px;overflow:hidden}.qlp-hours-fill{border-radius:3px;height:100%;transition:width .3s}[data-theme=dark] .qlp{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .qlp-head{border-bottom-color:var(--border-light);background:#8975ab1f}[data-theme=dark] .qlp-title,[data-theme=dark] .qlp-close{color:#c4b5f4}[data-theme=dark] .qlp-close:hover{background:#5e35a126}[data-theme=dark] .qlp-dur{color:#c4b5f4}[data-theme=dark] .qlp-actions{border-top-color:var(--border-light)}[data-theme=dark] .qlp-more{color:#c4b5f4}[data-theme=dark] .qlp-hours-info{color:var(--gray-400)}[data-theme=dark] .qlp-hours-bar{background:#ffffff14}.welcome-banner{color:#fff;background:linear-gradient(135deg,#5e35a1,#8975ab);border-radius:10px;align-items:center;gap:14px;margin-bottom:20px;padding:14px 20px;display:flex}.wb-icon{color:#ffffffe6;flex-shrink:0;font-size:1.4rem}.wb-text{flex:1}.wb-title{margin-bottom:2px;font-size:.9rem;font-weight:700}.wb-sub{opacity:.85;font-size:.75rem}.wb-btns{flex-shrink:0;gap:8px;display:flex}.wb-close{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;font-size:1.1rem;display:flex}.wb-close:hover{color:#fff}.tour-spotlight{z-index:1000;pointer-events:none;border:2px solid #5e35a180;border-radius:10px;transition:all .35s cubic-bezier(.4,0,.2,1);position:fixed;box-shadow:0 0 0 9999px #0a0814a6}.tour-tooltip{background:var(--bg-card);border:1px solid var(--border-light);box-shadow:var(--shadow-lg);border-radius:12px;animation:.2s dropdown-enter;overflow:hidden}.tt-head{color:#fff;background:linear-gradient(135deg,#5e35a1,#7c5dba);padding:14px 18px}.tt-step{text-transform:uppercase;letter-spacing:.08em;opacity:.75;margin-bottom:4px;font-size:.62rem}.tt-title{font-size:.88rem;font-weight:700}.tt-body{padding:14px 18px}.tt-text{color:var(--gray-700);margin-bottom:10px;font-size:.78rem;line-height:1.6}.tt-text strong{color:var(--purple-700);font-weight:700}.tt-tip{background:var(--purple-50);border:1px solid var(--purple-200);border-radius:var(--radius-sm);color:var(--purple-700);align-items:flex-start;gap:8px;margin-bottom:12px;padding:8px 10px;font-size:.72rem;line-height:1.5;display:flex}.tt-dots{justify-content:center;gap:4px;margin-bottom:4px;display:flex}.tt-dot{background:var(--gray-200);border-radius:50%;width:6px;height:6px;transition:all .2s}.tt-dot.done{background:var(--purple-400)}.tt-dot.current{background:var(--purple-700);border-radius:3px;width:16px}.tt-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:10px 18px;display:flex}.tt-skip{cursor:pointer;color:var(--gray-400);font-size:.68rem;font-family:var(--font-body);background:0 0;border:none}.tt-skip:hover{color:var(--gray-600);text-decoration:underline}.tour-overlay{z-index:1010;background:#0a081499;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.habits-modal{background:var(--bg-card);width:420px;box-shadow:var(--shadow-lg);border-radius:14px;animation:.2s dropdown-enter;overflow:hidden}.hm-head{text-align:center;color:#fff;background:linear-gradient(135deg,#16a34a,#22c55e);padding:20px 24px}.hm-icon{margin-bottom:6px}.hm-title{font-size:1.1rem;font-weight:700}.hm-sub{opacity:.85;margin-top:2px;font-size:.76rem}.hm-body{padding:20px 24px}.hm-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--gray-400);margin-bottom:10px;font-size:.62rem;font-weight:700}.hm-list{flex-direction:column;gap:10px;display:flex}.hm-item{color:var(--gray-700);align-items:flex-start;gap:10px;font-size:.78rem;line-height:1.5;display:flex}.hm-footer{border-top:1px solid var(--border-light);justify-content:center;padding:16px 24px;display:flex}[data-theme=dark] .tour-tooltip{background:var(--bg-card);border-color:var(--border-light)}[data-theme=dark] .tt-text{color:var(--gray-300)}[data-theme=dark] .tt-tip{color:#c4b5f4;background:#5e35a11f;border-color:#5e35a140}[data-theme=dark] .tt-dot{background:var(--gray-600)}[data-theme=dark] .tt-footer{border-top-color:var(--border-light)}[data-theme=dark] .habits-modal{background:var(--bg-card)}[data-theme=dark] .hm-item{color:var(--gray-300)}[data-theme=dark] .hm-footer{border-top-color:var(--border-light)}.hiw-section{margin-bottom:24px}.hiw-divider{border:none;border-top:1px solid var(--border-light);margin:20px 0}.hiw-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.hiw-card{background:var(--gray-25);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:14px 16px}.hiw-card-title{color:var(--purple-700);margin-bottom:4px;font-size:.78rem;font-weight:700}.hiw-card-text{color:var(--gray-600);font-size:.72rem;line-height:1.6}.hiw-card-list{color:var(--gray-600);margin:4px 0 0;padding-left:16px;font-size:.72rem;line-height:1.8}.hiw-habit{color:var(--gray-600);align-items:flex-start;gap:8px;padding:4px 0;font-size:.75rem;line-height:1.5;display:flex}.hiw-budget-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}[data-theme=dark] .hiw-card{border-color:var(--border-light);background:#ffffff08}[data-theme=dark] .hiw-card-text,[data-theme=dark] .hiw-card-list,[data-theme=dark] .hiw-habit{color:var(--gray-400)}.prompt-stack{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.prompt{background:linear-gradient(135deg,#1a1a2e,#2d1b69);border-radius:9px;align-items:center;gap:11px;padding:11px 14px;display:flex}.prompt-icon{flex-shrink:0;font-size:1rem}.prompt-text{color:#ffffffe0;flex:1;font-size:.72rem;line-height:1.5}.prompt-text strong{color:#fff}.prompt-actions{flex-shrink:0;gap:5px;display:flex}.p-btn{font-size:.67rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;border-radius:5px;padding:4px 10px}.p-yes{color:#fff;background:#8975ab}.p-no{color:#fff9;background:#ffffff14;border:1px solid #ffffff26}.eod-panel{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);overflow:hidden}.eod-head{background:linear-gradient(135deg,#1a1a2e,#2d1b69);align-items:center;gap:16px;padding:14px 18px;display:flex}.eod-h-info .eod-h-title{color:#fff;font-size:.9rem;font-weight:700}.eod-h-info .eod-h-sub{color:#ffffff80;margin-top:2px;font-size:.66rem}.eod-h-stats{gap:16px;margin-left:auto;display:flex}.eod-stat{text-align:right}.eod-sv{font-size:.95rem;font-weight:700;font-family:var(--font-mono);color:#fff}.eod-sl{color:#ffffff73;text-transform:uppercase;letter-spacing:.05em;font-size:.57rem}.eod-body{flex-direction:column;gap:7px;padding:14px 18px;display:flex}.ee{border:1px solid var(--border-light);border-radius:8px;overflow:hidden}.ee-row{align-items:center;gap:9px;padding:8px 12px;display:flex}.ee-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.ee-info{flex:1}.ee-title{font-size:.76rem;font-weight:600}.ee-meta{color:var(--gray-500);margin-top:1px;font-size:.63rem}.ee-dur{font-family:var(--font-mono);flex-shrink:0;font-size:.76rem;font-weight:700}.ee-btns{flex-shrink:0;gap:4px;margin-left:8px;display:flex}.ee-btn{font-size:.64rem;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;border-radius:4px;padding:3px 9px}.ee-confirm{color:var(--success);background:#dcfce7}.ee-edit{background:var(--gray-100);color:var(--gray-500)}.ee-discard{color:var(--danger);background:#fee2e2}.ee-ok{background:#f0fdf4;border-color:#bbf7d0}.ee-ok .ee-row{background:#f0fdf4}.chip{vertical-align:middle;border-radius:10px;align-items:center;margin-left:5px;padding:1px 6px;font-size:.58rem;font-weight:600;display:inline-flex}.chip-ok{color:var(--success);background:#dcfce7}.chip-draft{color:#92400e;background:#fef3c7}.chip-unpaid{color:#64748b;background:#f1f5f9}.eod-gap{background:#fff8f0;border:1.5px dashed #f47c28;border-radius:8px;align-items:center;gap:9px;padding:8px 12px;display:flex}.eg-info{flex:1}.eg-t{color:#f47c28;font-size:.74rem;font-weight:600}.eg-s{color:var(--warning);margin-top:1px;font-size:.62rem}.eg-btn{font-size:.67rem;font-weight:600;font-family:var(--font-body);cursor:pointer;color:#fff;background:#f47c28;border:none;border-radius:5px;flex-shrink:0;padding:4px 10px}.eod-shift{background:var(--gray-25);border:1px solid var(--border-light);border-radius:8px;align-items:center;gap:12px;padding:10px 14px;display:flex}.es-icon{flex-shrink:0;font-size:1rem}.es-info{flex:1}.es-title{font-size:.76rem;font-weight:600}.es-meta{color:var(--gray-500);margin-top:1px;font-size:.62rem}.es-stats{flex-shrink:0;gap:14px;display:flex}.es-s{text-align:right}.es-sv{font-family:var(--font-mono);font-size:.82rem;font-weight:700}.es-sl{color:var(--gray-400);text-transform:uppercase;font-size:.57rem}.eod-timeline{border-bottom:1px solid var(--border-light);padding:14px 18px}.eod-tl-label{text-transform:uppercase;letter-spacing:.07em;color:var(--gray-400);margin-bottom:6px;font-size:.58rem;font-weight:700}.eod-tl-wrap{background:var(--gray-25);border:1px solid var(--border-light);border-radius:6px;height:60px;position:relative;overflow:hidden}.eod-tl-hours{height:14px;display:flex;position:absolute;top:0;left:0;right:0}.eod-tl-hour{color:var(--gray-300);text-align:center;font-size:.48rem;font-family:var(--font-mono);border-right:1px solid var(--gray-100);flex:1;padding-top:1px}.eod-tl-blocks{position:absolute;inset:14px 0 0}.eod-tl-blk{border-radius:3px;min-width:2px;position:absolute;top:2px;bottom:2px}.eod-tl-blk.tl-job{background:linear-gradient(135deg,#c4b5fd,#a78bfa)}.eod-tl-blk.tl-internal{background:#d1d5db}.eod-tl-blk.tl-break{background:#86efac}.eod-tl-blk.tl-unpaid{opacity:.5;background:#94a3b8}.eod-tl-blk.tl-draft{background:repeating-linear-gradient(45deg,#bae6fd,#bae6fd 3px,#e0f2fe 3px 6px);border:1px dashed #0891b2}.eod-tl-blk.tl-gap{background:repeating-linear-gradient(45deg,#fff8f0,#fff8f0 3px,#fed7aa 3px 6px);border:1px dashed #f47c28}.eod-tl-now{z-index:3;background:#ef4444;width:2px;position:absolute;top:0;bottom:0}.eod-foot{background:var(--gray-25);border-top:1px solid var(--border-light);align-items:center;gap:10px;padding:11px 18px;display:flex}.eod-ft{color:var(--gray-500);flex:1;font-size:.71rem}.eod-fb{font-size:.76rem;font-weight:600;font-family:var(--font-body);cursor:pointer;color:#fff;background:#8975ab;border:none;border-radius:7px;padding:7px 16px}.sig-grid{grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:20px;display:grid}.sig{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:13px}.sig-icon{margin-bottom:7px;font-size:1.3rem}.sig-title{margin-bottom:3px;font-size:.76rem;font-weight:700}.sig-desc{color:var(--gray-500);font-size:.68rem;line-height:1.5}.sig-tag{border-radius:10px;margin-top:6px;padding:2px 6px;font-size:.58rem;font-weight:600;display:inline-block}.st-auto{color:var(--success);background:#dcfce7}.st-draft{color:#92400e;background:#fef3c7}.st-prompt{background:var(--purple-50);color:var(--purple-700)}.legend{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px;display:grid}.leg{background:var(--bg-card);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);border-radius:8px;align-items:center;gap:8px;padding:9px 11px;display:flex}.leg-dot{border-radius:3px;flex-shrink:0;width:12px;height:24px}.leg-name{font-size:.72rem;font-weight:600}.leg-meta{color:var(--gray-500);font-size:.62rem}.team-grid{grid-template-columns:repeat(3,1fr);gap:11px;display:grid}.tc{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:13px}.tc-head{align-items:center;gap:9px;margin-bottom:10px;display:flex}.av{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.75rem;font-weight:700;display:flex}.tc-name{font-size:.78rem;font-weight:600}.tc-role{color:var(--gray-400);font-size:.62rem}.tc-stats{grid-template-columns:1fr 1fr;gap:5px;margin-bottom:8px;display:grid}.tcs{background:var(--gray-25);text-align:center;border-radius:5px;padding:6px 8px}.tcs-v{font-size:.85rem;font-weight:700;font-family:var(--font-mono)}.tcs-l{color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em;font-size:.56rem}.tc-bar-wrap{background:var(--gray-100);border-radius:2px;height:4px;margin-bottom:4px;overflow:hidden}.tc-bar-fill{border-radius:2px;height:100%}.tc-flag{color:var(--warning);align-items:center;gap:3px;font-size:.63rem;display:flex}.manager-note{color:#78350f;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;gap:8px;margin-bottom:14px;padding:10px 14px;font-size:.73rem;line-height:1.5;display:flex}.session-pill{color:#fff;cursor:pointer;font-size:.72rem;font-weight:600;font-family:var(--font-body);background:#1a1a2e;border:none;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;display:flex}.session-dot{background:#a78bfa;border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulse}.session-time{font-family:var(--font-mono);color:#a78bfa}.job-header{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:visible}.jh-strip{border-bottom:1px solid var(--border-light);border-radius:var(--radius-md)var(--radius-md)0 0;background:linear-gradient(135deg,#e8f6fb 0%,#fff 60%);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;display:flex}.jh-ref{font-family:var(--font-mono);color:var(--gray-400);background:var(--gray-100);border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:.63rem}.jh-type{color:#249abc;flex-shrink:0;font-size:.8rem;font-weight:700}.jh-dash{color:var(--gray-400)}.jh-client{font-size:.82rem;font-weight:600}.jh-period{color:var(--purple-700);background:var(--purple-50);border-radius:10px;flex-shrink:0;padding:2px 9px;font-size:.7rem;font-weight:700}.jh-actions{flex-shrink:0;gap:6px;margin-left:auto;display:flex}.status-pill-jh{white-space:nowrap;border-radius:20px;flex-shrink:0;padding:3px 10px;font-size:.67rem;font-weight:700}.sp-not-started{color:#6b7080;background:#f0f1f5}.sp-booked{color:#0d9488;background:#ccfbf1}.sp-in-progress{color:#92400e;background:#fef3c7}.sp-waiting-on-client{color:#c2410c;background:#ffedd5}.sp-in-review{color:#0369a1;background:#e0f2fe}.sp-sent-for-signing{color:#4338ca;background:#e0e7ff}.sp-to-be-lodged{color:#7c3aed;background:#f3ecff}.sp-done{color:#16a34a;background:#dcfce7}.sp-lodged{color:#5e35a1;background:#ede8ff}.sp-cancelled{color:#dc2626;background:#fee2e2}.view-toggle{border:1px solid var(--border-default);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.view-toggle-btn{background:var(--bg-card);color:var(--gray-600);cursor:pointer;border:none;padding:5px 14px;font-size:.75rem;font-weight:600}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--border-default)}.view-toggle-btn--active{background:var(--purple-700);color:#fff}.jobs-board{align-items:flex-start;gap:12px;padding-bottom:12px;display:flex;overflow-x:auto}.jb-col{background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;flex:0 0 264px;width:264px;max-height:calc(100vh - 250px);display:flex}.jb-col--over{border-color:var(--purple-700);background:var(--purple-50)}.jb-col-head{border-bottom:1px solid var(--border-light);align-items:center;gap:7px;padding:10px 12px;display:flex}.jb-col-dot{border-radius:50%;flex:none;width:9px;height:9px}.jb-col-title{color:var(--gray-800);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;font-weight:700}.jb-col-count{color:var(--gray-500);background:var(--bg-card);border:1px solid var(--border-light);border-radius:10px;margin-left:auto;padding:1px 8px;font-size:.7rem;font-weight:600}.jb-col-body{flex-direction:column;gap:8px;min-height:60px;padding:8px;display:flex;overflow-y:auto}.jb-empty{color:var(--gray-400);text-align:center;border:1px dashed var(--border-light);border-radius:var(--radius-sm);padding:14px 0;font-size:.72rem}.jb-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);cursor:grab;padding:9px 10px}.jb-card:active{cursor:grabbing}.jb-card--dragging{opacity:.4}.jb-card--saving{opacity:.6;pointer-events:none}.jb-card-top{margin-bottom:6px}.jb-card-name{color:var(--gray-900);font-size:.82rem;font-weight:600;line-height:1.25;text-decoration:none}.jb-card-name:hover{color:var(--purple-700)}.jb-card-sub{color:var(--gray-500);font-weight:400}.jb-card-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.jb-card-period{color:var(--gray-600);font-size:.72rem;font-weight:500}.jb-card-ref{color:var(--gray-400);margin-left:auto;font-family:DM Mono,monospace;font-size:.62rem}.jb-card-foot{justify-content:space-between;align-items:center;gap:6px;display:flex}.jb-card-owner{color:var(--gray-700);align-items:center;gap:5px;font-size:.72rem;display:flex}.jb-card-owner--none{color:var(--gray-400);font-style:italic}.jb-card-due{color:var(--gray-500);font-size:.7rem;font-weight:500}.jb-card-due--overdue{color:var(--danger);font-weight:700}.jobs-board--compact .jb-col-body{gap:5px}.jobs-board--compact .jb-card{padding:6px 9px}.jobs-board--compact .jb-card-top{margin-bottom:3px}.jobs-board--compact .jb-card-name{font-size:.76rem}.jobs-board--compact .jb-card-meta{gap:5px;margin-bottom:0}.jobs-board--compact .jb-card-period{font-size:.68rem}.jobs-board--compact .jb-card-ref{display:none}.jobs-board--compact .jb-card-foot{margin-top:3px}.jobs-board--compact .jb-card-owner{display:none}.jobs-board--compact .jb-card-due{margin-left:auto}.sch-wrap{flex-direction:column;gap:10px;display:flex}.sch-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sch-nav{gap:2px;display:inline-flex}.sch-range{color:var(--gray-800);font-size:.85rem;font-weight:700}.sch-owner-load{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.sch-owner-chip{color:var(--gray-600);background:var(--gray-50);border:1px solid var(--border-light);white-space:nowrap;border-radius:12px;padding:2px 9px;font-size:.68rem}.sch-owner-chip strong{color:var(--purple-700)}.sch-body{align-items:flex-start;gap:10px;padding-bottom:10px;display:flex;overflow-x:auto}.sch-unscheduled{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#fbfaf7;flex-direction:column;flex:0 0 220px;width:220px;max-height:calc(100vh - 230px);display:flex}.sch-cols{flex:1;gap:8px;min-width:0;display:flex}.sch-cols--day{max-width:420px}.sch-col{background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;flex:1 1 0;min-width:150px;max-height:calc(100vh - 230px);display:flex}.sch-col--today{border-color:var(--purple-700);box-shadow:0 0 0 1px var(--purple-700)inset}.sch-col-head{border-bottom:1px solid var(--border-light);align-items:center;gap:6px;padding:8px 10px;display:flex}.sch-col-title{color:var(--gray-800);text-transform:uppercase;letter-spacing:.02em;font-size:.72rem;font-weight:700}.sch-col-count{color:var(--purple-700);background:var(--bg-card);border:1px solid var(--border-light);border-radius:10px;margin-left:auto;padding:1px 8px;font-size:.68rem;font-weight:700}.sch-col-body{flex-direction:column;gap:7px;min-height:50px;padding:7px;display:flex;overflow-y:auto}.sch-empty{color:var(--gray-400);text-align:center;border:1px dashed var(--border-light);border-radius:var(--radius-sm);padding:12px 0;font-size:.68rem}.sch-drop--over{background:var(--purple-50)}.sch-card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);cursor:grab;padding:7px 9px}.sch-card:active{cursor:grabbing}.sch-card--dragging{opacity:.4}.sch-card--saving{opacity:.6;pointer-events:none}.sch-card--late{border-left:3px solid var(--danger)}.sch-card-name{color:var(--gray-900);font-size:.78rem;font-weight:600;line-height:1.2;text-decoration:none;display:block}.sch-card-name:hover{color:var(--purple-700)}.sch-card-meta{align-items:center;gap:6px;margin-top:3px;display:flex}.sch-card-type{color:var(--gray-600);font-size:.68rem;font-weight:600}.sch-card-hours{color:var(--purple-700);margin-left:auto;font-family:DM Mono,monospace;font-size:.66rem;font-weight:700}.sch-card-foot{justify-content:space-between;align-items:center;gap:6px;margin-top:5px;display:flex}.sch-card-owner{color:var(--gray-700);align-items:center;gap:4px;font-size:.68rem;display:flex}.sch-card-owner--none{color:var(--gray-400);font-style:italic}.sch-card-due{color:var(--gray-500);font-size:.64rem}.sch-card-due--late{color:var(--danger);font-weight:700}.sch-month{flex-direction:column;flex:1;min-width:640px;display:flex}.sch-month-head{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;display:grid}.sch-month-dow{text-transform:uppercase;color:var(--gray-500);text-align:center;font-size:.66rem;font-weight:700}.sch-month-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.sch-month-cell{background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius-sm);flex-direction:column;gap:3px;min-height:96px;padding:4px;display:flex}.sch-month-cell--out{opacity:.5}.sch-month-cell--today{border-color:var(--purple-700)}.sch-month-cell-head{color:var(--gray-600);justify-content:space-between;align-items:center;font-size:.68rem;font-weight:700;display:flex}.sch-month-cell-total{color:var(--purple-700);font-family:DM Mono,monospace;font-size:.6rem}.sch-month-cell-body{flex-direction:column;gap:3px;display:flex;overflow-y:auto}.sch-month-cell .sch-card{padding:4px 6px}.sch-month-cell .sch-card-name{font-size:.7rem}.btn-timer{color:#fff;font-size:.72rem;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;background:#16a34a;border:none;border-radius:6px;align-items:center;gap:5px;padding:5px 12px;display:flex}.btn-timer.stop{background:#dc2626}.btn-timer.switch{background:#8975ab}.btn-timer:disabled,.bb-btn:disabled{cursor:progress;opacity:.85}.btn-spinner{vertical-align:-1px;border:1.5px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:.6s linear infinite spin;display:inline-block}.btn-edit{background:var(--gray-100);color:var(--gray-500);font-size:.72rem;font-weight:600;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;align-items:center;gap:5px;padding:5px 12px;display:flex}.btn-edit:hover{background:var(--gray-200);color:var(--gray-700)}.jh-meta{border-bottom:1px solid var(--border-light);align-items:center;gap:0;padding:8px 16px;display:flex}.jm{border-right:1px solid var(--border-light);flex-direction:column;flex-shrink:0;padding:0 14px;display:flex}.jm:first-child{padding-left:0}.jm-lbl{text-transform:uppercase;letter-spacing:.06em;color:var(--gray-400);margin-bottom:1px;font-size:.57rem;font-weight:700}.jm-val{white-space:nowrap;align-items:center;gap:4px;font-size:.78rem;font-weight:600;display:flex}.jm-val.amber{color:#d97706}.jm-val.muted{color:var(--gray-500);font-weight:400}.jm-budget{border-right:none;flex:1;min-width:0;padding-left:14px}.budget-row{align-items:center;gap:8px;margin-top:2px;display:flex}.bbar-wrap{background:var(--gray-100);border-radius:3px;flex:1;min-width:60px;height:5px;overflow:hidden}.bbar-fill{border-radius:3px;height:100%}.bbar-label{font-size:.7rem;font-family:var(--font-mono);white-space:nowrap;flex-shrink:0;font-weight:700}.jh-note{color:var(--gray-500);cursor:pointer;background:#fffbf5;border-bottom:1px solid #f5f5f8;align-items:flex-start;gap:7px;padding:7px 16px;font-size:.75rem;display:flex}.jh-note:hover{background:#fff8ee}.jh-note-icon{flex-shrink:0;width:14px;height:14px;margin-top:1px}.jh-note-empty{color:var(--gray-400);font-style:italic}.jh-note-edit{border:1px solid var(--border-default);width:100%;font-family:var(--font-body);resize:vertical;border-radius:6px;outline:none;padding:6px 10px;font-size:.75rem}.jh-note-edit:focus{border-color:#249abc}.jh-note-author{color:var(--gray-400);margin-top:2px;font-size:.65rem;display:block}.job-tabs{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.jt-nav{border-bottom:1px solid var(--border-light);background:var(--gray-25);padding:0 16px;display:flex}.jt-tab{color:var(--gray-500);cursor:pointer;white-space:nowrap;font-size:.76rem;font-weight:600;font-family:var(--font-body);background:0 0;border:none;border-bottom:3px solid #0000;padding:9px 14px}.jt-tab.on{color:#249abc;border-bottom-color:#249abc}.jt-tab:hover:not(.on){color:var(--gray-800)}.jt-badge{color:#dc2626;font-size:.58rem;font-weight:700;font-family:var(--font-body);background:#fee2e2;border-radius:8px;margin-left:3px;padding:1px 5px}.jt-body{padding:14px 16px}.time-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px;display:grid}.ts-card{background:var(--gray-25);border:1px solid var(--border-light);border-radius:7px;padding:9px 11px}.ts-card.warn{background:#fffbf5;border-color:#d97706}.ts-card.over{background:#fff5f5;border-color:#dc2626}.ts-clickable{cursor:pointer;transition:border-color .15s,background .15s}.ts-clickable:hover{border-color:var(--purple-300);background:#faf8ff}.ts-active{border-color:var(--purple-400)!important;background:#f5f0ff!important}.tsc-lbl{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);margin-bottom:2px;font-size:.59rem;font-weight:700}.tsc-val{font-size:1.1rem;font-weight:700;font-family:var(--font-mono);line-height:1}.tsc-sub{color:var(--gray-400);margin-top:2px;font-size:.62rem}.te-table{border-collapse:collapse;width:100%}.te-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);text-align:left;border-bottom:1px solid var(--border-light);padding:4px 6px;font-size:.6rem;font-weight:700}.te-table td{vertical-align:middle;border-bottom:1px solid #f5f5f8;padding:5px 6px;font-size:.73rem}.te-table tr:last-child td{border-bottom:none}.te-table tr:hover td{background:var(--gray-25)}.te-date{font-family:var(--font-mono);color:var(--gray-500);white-space:nowrap}.te-dur{font-family:var(--font-mono);white-space:nowrap;font-weight:700}.te-desc{color:var(--gray-800)}.wip-tag{white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:.6rem;font-weight:700}.wip-ok{color:#16a34a;background:#dcfce7}.wip-un{color:#d97706;background:#fef3c7}.wip-ov{color:#dc2626;background:#fee2e2}.log-btn{background:var(--purple-50);color:var(--purple-700);font-size:.72rem;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;margin-top:10px;padding:5px 12px}.log-btn:hover{background:var(--purple-100)}.ri-list{flex-direction:column;gap:6px;display:flex}.ri{background:var(--gray-25);border:1px solid var(--border-light);cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:8px 12px;display:flex}.ri:hover{background:var(--gray-50);border-color:var(--border-default)}.ri-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ri-name{flex:1;font-size:.77rem;font-weight:500}.ri-meta-text{color:var(--gray-400);white-space:nowrap;font-size:.65rem}.ri-tag{border-radius:4px;padding:2px 8px;font-size:.62rem;font-weight:700}.ri-sent{color:#0369a1;background:#e0f2fe}.ri-recv{color:#16a34a;background:#dcfce7}.ri-pend{color:#d97706;background:#fef3c7}.ri-applied{color:var(--purple-700);background:#ede8ff}.ri-draft{background:var(--gray-100);color:var(--gray-500)}.ri-add{background:var(--gray-100);color:var(--gray-500);font-size:.72rem;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;margin-top:10px;padding:5px 12px}.ri-add:hover{background:var(--gray-200);color:var(--gray-700)}.note-add{gap:8px;margin-bottom:12px;display:flex}.note-input{border:1px solid var(--border-light);font-family:var(--font-body);border-radius:6px;outline:none;flex:1;padding:7px 10px;font-size:.76rem}.note-input:focus{border-color:#249abc}.note-save{color:#fff;font-family:var(--font-body);cursor:pointer;background:#249abc;border:none;border-radius:6px;padding:6px 12px;font-size:.72rem;font-weight:700}.note-save:hover{background:#1d8aa8}.note-item{border-bottom:1px solid #f5f5f8;gap:9px;padding:9px 0;display:flex}.note-item:last-child{border-bottom:none}.ni-meta{color:var(--gray-400);margin-bottom:3px;font-size:.63rem}.ni-text{font-size:.77rem;line-height:1.5}.ni-tags{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.ni-tag{background:var(--gray-100);color:var(--gray-500);border-radius:4px;padding:1px 6px;font-size:.6rem;font-weight:600}.act-list{flex-direction:column;gap:1px;display:flex}.act-row{color:var(--gray-500);align-items:flex-start;gap:8px;padding:5px 0;font-size:.72rem;display:flex}.act-dot{background:var(--border-light);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:5px}.act-time{font-family:var(--font-mono);color:var(--gray-400);flex-shrink:0;width:70px;font-size:.62rem}.act-text strong{color:var(--gray-800);font-weight:600}.jh-edit-form{border-bottom:1px solid var(--border-light);padding:14px 16px}.jh-edit-grid{grid-template-columns:1fr 1fr 1fr;gap:14px;display:grid}.jh-edit-actions{justify-content:flex-end;gap:6px;margin-top:14px;display:flex}.status-dd-wrap{display:inline-flex;position:relative}.status-dd-trigger{cursor:pointer;-webkit-user-select:none;user-select:none}.status-dd-trigger:hover{opacity:.85}.status-dd-menu{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;min-width:180px;padding:4px;animation:.15s dropdown-enter;position:absolute;top:calc(100% + 4px);left:0}.status-dd-item{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;font-size:.75rem;font-weight:600;font-family:var(--font-body);color:var(--gray-700);background:0 0;border:none;align-items:center;gap:8px;padding:6px 10px;display:flex}.status-dd-item:hover{background:var(--gray-100)}.status-dd-item.active{background:var(--gray-50);color:#249abc}.status-dd-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.jh-note-actions{flex-shrink:0;gap:6px;margin-left:auto;display:flex}.jh-note-btn{font-size:.68rem;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;border-radius:5px;padding:3px 10px}.jh-note-btn-save{background:var(--purple-700);color:#fff}.jh-note-btn-save:hover{background:var(--purple-800)}.jh-note-btn-cancel{background:var(--gray-100);color:var(--gray-500)}.jh-note-btn-cancel:hover{background:var(--gray-200)}.te-actions{opacity:0;gap:4px;transition:opacity .15s;display:flex}.te-table tr:hover .te-actions{opacity:1}.te-act-btn{cursor:pointer;color:var(--gray-400);background:0 0;border:none;border-radius:4px;align-items:center;padding:2px;display:flex}.te-act-btn:hover{background:var(--gray-100);color:var(--gray-700)}.te-act-btn.danger:hover{color:#dc2626;background:#fee2e2}.te-edit-row{background:var(--gray-25);border:1px solid var(--border-light);border-radius:7px;margin-bottom:6px;padding:10px 12px}.te-edit-grid{grid-template-columns:1fr 80px 80px 1fr;align-items:end;gap:8px;display:grid}.te-edit-actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.te-delete-confirm{color:#991b1b;background:#fff5f5;border:1px solid #fecaca;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;font-size:.72rem;display:flex}.log-form-highlight{animation:.6s log-pulse}@keyframes log-pulse{0%{border-color:var(--purple-400);box-shadow:0 0 0 2px #5e35a126}to{border-color:var(--border-light);box-shadow:none}}.ri-add-form{background:var(--gray-25);border:1px solid var(--border-light);border-radius:7px;margin-top:10px;padding:12px}.ri-add-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;display:grid}.ri-add-full{grid-column:1/-1}.ri-add-actions{justify-content:flex-end;gap:6px;margin-top:8px;display:flex}.sc-dialog-overlay{z-index:2000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sc-dialog{background:#fff;border-radius:14px;width:90%;max-width:480px;overflow:hidden;box-shadow:0 8px 32px #0000002e}.sc-dialog-head{border-bottom:1px solid var(--border-light);padding:16px 20px;position:relative}.sc-dialog-head:before{content:"";background:linear-gradient(90deg,#ff6b6b,#ee36a8,#5e35a1);height:3px;position:absolute;top:0;left:0;right:0}.sc-dialog-body{color:var(--gray-600);padding:16px 20px;font-size:.78rem;line-height:1.6}.sc-dialog-foot{border-top:1px solid var(--border-light);background:var(--gray-25);justify-content:flex-end;gap:8px;padding:12px 20px;display:flex}:root{--portal-accent:#00a79e;--portal-accent-dark:#006660;--portal-accent-light:#00a79e14;--portal-accent-mid:#00a79e26;--portal-sidebar-width:260px}.portal-shell{background:var(--bg-page);min-height:100vh;display:flex}.portal-sidebar{width:var(--portal-sidebar-width);background:var(--white);border-right:1px solid var(--border-light);z-index:100;transition:transform var(--transition-default);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.portal-main-wrapper{margin-left:var(--portal-sidebar-width);flex-direction:column;flex:1;min-width:0;display:flex}.portal-brand{border-bottom:1px solid var(--border-light);padding:20px 20px 16px}.portal-brand-name{color:var(--portal-accent-dark);letter-spacing:-.3px;font-size:1.25rem;font-weight:700}.portal-brand-sub{color:var(--gray-400);margin-top:2px;font-size:.7rem}.portal-nav{flex:1;padding:12px 0;overflow-y:auto}.portal-nav-item{color:var(--gray-600);transition:all var(--transition-fast);border-left:3px solid #0000;align-items:center;gap:12px;padding:10px 20px;font-size:.82rem;font-weight:500;text-decoration:none;display:flex;position:relative}.portal-nav-item:hover{background:var(--portal-accent-light);color:var(--gray-800)}.portal-nav-item--active{background:var(--portal-accent-light);color:var(--portal-accent-dark);border-left-color:var(--portal-accent);font-weight:600}.portal-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.portal-nav-badge{background:var(--portal-accent);color:#fff;text-align:center;border-radius:10px;min-width:18px;margin-left:auto;padding:1px 7px;font-size:.6rem;font-weight:700}.portal-nav-divider{background:var(--border-light);height:1px;margin:8px 20px}.portal-sidebar-footer{border-top:1px solid var(--border-light);align-items:center;gap:10px;padding:16px 20px;display:flex}.portal-sidebar-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.7rem;font-weight:700;display:flex}.portal-sidebar-user{color:var(--gray-600);font-size:.75rem;line-height:1.3}.portal-sidebar-user strong{color:var(--gray-800);font-weight:600;display:block}.portal-topbar{height:var(--topbar-height);background:var(--white);border-bottom:1px solid var(--border-light);z-index:90;align-items:center;gap:12px;padding:0 16px;display:none;position:sticky;top:0}.portal-hamburger{cursor:pointer;border-radius:var(--radius-sm);color:var(--gray-600);background:0 0;border:none;align-items:center;padding:6px;display:flex}.portal-hamburger:hover{background:var(--gray-100)}.portal-topbar-brand{color:var(--portal-accent-dark);flex:1;font-size:1rem;font-weight:700}.portal-topbar-actions{align-items:center;gap:8px;display:flex}.portal-notif-btn{cursor:pointer;color:var(--gray-500);background:0 0;border:none;border-radius:50%;align-items:center;padding:6px;display:flex;position:relative}.portal-notif-btn:hover{background:var(--gray-100)}.portal-notif-dot{background:var(--danger);border:2px solid var(--white);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.portal-topbar-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.65rem;font-weight:700;display:flex}.portal-content{flex:1;width:100%;max-width:1200px;padding:28px 32px}.portal-page-title{color:var(--gray-900);margin-bottom:4px;font-size:1.35rem;font-weight:700}.portal-page-sub{color:var(--gray-500);margin-bottom:24px;font-size:.8rem}.portal-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:16px;padding:20px 24px}.portal-card-accent{border-top:3px solid var(--portal-accent)}.portal-card-title{color:var(--gray-800);margin-bottom:12px;font-size:.9rem;font-weight:700}.portal-card-subtitle{color:var(--gray-500);margin-bottom:16px;font-size:.72rem}.portal-stat-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.portal-stat-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);text-align:center;padding:16px 20px}.portal-stat-value{color:var(--portal-accent-dark);font-family:DM Mono,monospace;font-size:1.6rem;font-weight:700}.portal-stat-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-size:.65rem;font-weight:600}.portal-welcome{background:linear-gradient(135deg,var(--portal-accent)0%,#006660 100%);border-radius:var(--radius-lg);color:#fff;margin-bottom:24px;padding:28px 32px}.portal-welcome-title{margin-bottom:4px;font-size:1.5rem;font-weight:700}.portal-welcome-sub{opacity:.85;font-size:.85rem}.portal-dates-list{flex-direction:column;gap:8px;display:flex}.portal-date-row{border-bottom:1px solid var(--gray-100);align-items:center;gap:12px;padding:8px 0;display:flex}.portal-date-row:last-child{border-bottom:none}.portal-date-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.portal-date-dot.on-track{background:var(--success)}.portal-date-dot.approaching{background:var(--warning)}.portal-date-dot.overdue{background:var(--danger)}.portal-date-label{color:var(--gray-700);flex:1;font-size:.8rem;font-weight:500}.portal-date-value{color:var(--gray-500);font-family:DM Mono,monospace;font-size:.75rem}.portal-activity-list{flex-direction:column;display:flex}.portal-activity-item{border-bottom:1px solid var(--gray-100);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.portal-activity-item:last-child{border-bottom:none}.portal-activity-dot{background:var(--portal-accent);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.portal-activity-text{color:var(--gray-700);font-size:.8rem;line-height:1.4}.portal-activity-date{color:var(--gray-400);margin-top:2px;font-size:.7rem}.portal-actions-row{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.portal-btn-primary{background:var(--portal-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:600;font-family:var(--font-body);transition:background var(--transition-fast);border:none;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.portal-btn-primary:hover{background:var(--portal-accent-dark)}.portal-btn-outline{color:var(--portal-accent-dark);border:1px solid var(--portal-accent);border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-fast);background:0 0;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.portal-btn-outline:hover{background:var(--portal-accent-light)}.portal-filter-chips{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.portal-chip{cursor:pointer;border:1px solid var(--border-light);background:var(--white);color:var(--gray-600);font-size:.75rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-fast);border-radius:20px;padding:6px 16px}.portal-chip:hover{border-color:var(--portal-accent);color:var(--portal-accent-dark)}.portal-chip--active{background:var(--portal-accent);color:#fff;border-color:var(--portal-accent)}.portal-service-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.portal-service-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);transition:border-color var(--transition-fast);padding:16px 20px}.portal-service-card:hover{border-color:var(--portal-accent)}.portal-service-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.portal-service-name{color:var(--gray-800);font-size:.85rem;font-weight:700}.portal-service-desc{color:var(--gray-500);margin-bottom:10px;font-size:.72rem;line-height:1.4}.portal-service-meta{color:var(--gray-500);gap:16px;font-size:.7rem;display:flex}.portal-service-meta span{align-items:center;gap:4px;display:flex}.portal-cat-badge{text-transform:uppercase;letter-spacing:.3px;border-radius:12px;padding:2px 10px;font-size:.6rem;font-weight:700}.portal-cat-badge.bookkeeping{color:#0369a1;background:#e0f2fe}.portal-cat-badge.tax{color:#92400e;background:#fef3c7}.portal-cat-badge.admin{color:#6b21a8;background:#f3e8ff}.portal-cat-badge.advisory{color:#065f46;background:#d1fae5}.portal-status{text-transform:uppercase;border-radius:12px;padding:2px 10px;font-size:.6rem;font-weight:700}.portal-status.active{color:#16a34a;background:#dcfce7}.portal-status.upcoming{color:#2563eb;background:#dbeafe}.portal-status.completed{background:var(--gray-100);color:var(--gray-500)}.portal-status.not-applicable{background:var(--gray-100);color:var(--gray-400)}.portal-stepper{align-items:center;gap:0;margin:12px 0;display:flex}.portal-step{align-items:center;display:flex}.portal-step-dot{width:28px;height:28px;transition:all var(--transition-default);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;font-weight:700;display:flex}.portal-step-dot.done{background:var(--portal-accent);color:#fff}.portal-step-dot.current{border:2px solid var(--portal-accent);color:var(--portal-accent);background:#fff;animation:2s infinite portal-pulse}.portal-step-dot.future{background:var(--gray-200);color:var(--gray-400)}.portal-step-line{flex-shrink:0;width:40px;height:2px}.portal-step-line.done{background:var(--portal-accent)}.portal-step-line.future{background:var(--gray-200)}.portal-step-label{text-align:center;margin-top:4px;font-size:.6rem;font-weight:600}@keyframes portal-pulse{0%,to{box-shadow:0 0 #00a79e4d}50%{box-shadow:0 0 0 6px #00a79e00}}.portal-year-tabs{border-bottom:2px solid var(--border-light);gap:0;margin-bottom:24px;display:flex}.portal-year-tab{color:var(--gray-500);cursor:pointer;font-size:.82rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 24px}.portal-year-tab:hover{color:var(--gray-700)}.portal-year-tab--active{color:var(--portal-accent-dark);border-bottom-color:var(--portal-accent)}.portal-entity-group{margin-bottom:24px}.portal-entity-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.portal-entity-name{color:var(--gray-800);font-size:.85rem;font-weight:700}.portal-entity-type{text-transform:uppercase;background:var(--portal-accent-light);color:var(--portal-accent-dark);border-radius:4px;padding:2px 8px;font-size:.6rem;font-weight:700}.portal-tr-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:10px;padding:16px 20px}.portal-tr-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.portal-tr-period{color:var(--gray-700);font-size:.82rem;font-weight:600}.portal-tr-dates{color:var(--gray-500);gap:20px;margin-top:10px;font-size:.7rem;display:flex}.portal-tr-dates span strong{color:var(--gray-700)}.portal-team-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.portal-team-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);text-align:center;transition:border-color var(--transition-fast);padding:24px}.portal-team-card:hover{border-color:var(--portal-accent)}.portal-team-card.primary{border-left:4px solid var(--portal-accent)}.portal-team-avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 14px;font-size:1.4rem;font-weight:700;display:flex}.portal-team-name{color:var(--gray-800);margin-bottom:2px;font-size:1rem;font-weight:700}.portal-team-role{color:var(--portal-accent-dark);margin-bottom:2px;font-size:.78rem;font-weight:600}.portal-team-title{color:var(--gray-500);margin-bottom:14px;font-size:.72rem}.portal-team-contact{flex-direction:column;gap:6px;font-size:.75rem;display:flex}.portal-team-contact a{color:var(--gray-600);justify-content:center;align-items:center;gap:8px;text-decoration:none;display:flex}.portal-team-contact a:hover{color:var(--portal-accent-dark)}.portal-team-actions{margin-top:14px}.portal-budget-bar-bg{background:var(--gray-200);border-radius:4px;height:8px;overflow:hidden}.portal-budget-bar-fill{height:100%;transition:width var(--transition-default);border-radius:4px}.portal-budget-bar-fill.green{background:var(--success)}.portal-budget-bar-fill.amber{background:var(--warning)}.portal-budget-bar-fill.red{background:var(--danger)}.portal-pkg-summary{border-bottom:1px solid var(--border-light);grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:20px;padding:20px 0;display:grid}.portal-pkg-item{text-align:center}.portal-pkg-value{color:var(--gray-800);font-family:DM Mono,monospace;font-size:1.2rem;font-weight:700}.portal-pkg-label{color:var(--gray-500);text-transform:uppercase;margin-top:2px;font-size:.65rem;font-weight:600}.portal-pkg-line{border-bottom:1px solid var(--gray-100);grid-template-columns:1fr 80px 80px 80px 120px;align-items:center;gap:12px;padding:10px 0;font-size:.78rem;display:grid}.portal-pkg-line:last-child{border-bottom:none}.portal-pkg-svc{color:var(--gray-700);font-weight:600}.portal-pkg-hrs{color:var(--gray-500);text-align:center;font-family:DM Mono,monospace;font-size:.72rem}.portal-upload-zone{border:2px dashed var(--border-default);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:all var(--transition-fast);padding:48px 32px}.portal-upload-zone:hover{border-color:var(--portal-accent);background:var(--portal-accent-light)}.portal-upload-icon{color:var(--portal-accent);margin-bottom:12px;font-size:2rem}.portal-upload-text{color:var(--gray-600);font-size:.85rem;font-weight:500}.portal-upload-hint{color:var(--gray-400);margin-top:4px;font-size:.72rem}.portal-doc-row{border-bottom:1px solid var(--gray-100);align-items:center;gap:14px;padding:10px 0;display:flex}.portal-doc-row:last-child{border-bottom:none}.portal-doc-icon{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.6rem;font-weight:700;display:flex}.portal-doc-icon.pdf{color:#dc2626;background:#fee2e2}.portal-doc-icon.excel{color:#16a34a;background:#dcfce7}.portal-doc-icon.word{color:#2563eb;background:#dbeafe}.portal-doc-icon.image{color:#d97706;background:#fef3c7}.portal-doc-info{flex:1;min-width:0}.portal-doc-name{color:var(--gray-700);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:600;overflow:hidden}.portal-doc-meta{color:var(--gray-400);margin-top:1px;font-size:.68rem}.portal-doc-dl{border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--gray-600);cursor:pointer;font-size:.7rem;font-weight:600;font-family:var(--font-body);background:0 0;padding:5px 12px}.portal-doc-dl:hover{border-color:var(--portal-accent);color:var(--portal-accent-dark)}.portal-tabs{border-bottom:2px solid var(--border-light);gap:0;margin-bottom:20px;display:flex}.portal-tab{color:var(--gray-500);cursor:pointer;font-size:.8rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 20px}.portal-tab:hover{color:var(--gray-700)}.portal-tab--active{color:var(--portal-accent-dark);border-bottom-color:var(--portal-accent)}.portal-msg-layout{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--white);grid-template-columns:320px 1fr;gap:0;min-height:500px;display:grid;overflow:hidden}.portal-msg-list{border-right:1px solid var(--border-light);overflow-y:auto}.portal-msg-thread{border-bottom:1px solid var(--gray-100);cursor:pointer;transition:background var(--transition-fast);padding:14px 16px}.portal-msg-thread:hover{background:var(--gray-50)}.portal-msg-thread--active{background:var(--portal-accent-light);border-left:3px solid var(--portal-accent)}.portal-msg-thread-subj{color:var(--gray-800);align-items:center;gap:8px;font-size:.8rem;font-weight:600;display:flex}.portal-msg-unread-dot{background:var(--portal-accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.portal-msg-preview{color:var(--gray-500);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.72rem;overflow:hidden}.portal-msg-date{color:var(--gray-400);margin-top:4px;font-size:.65rem}.portal-msg-conversation{flex-direction:column;height:100%;display:flex}.portal-msg-conv-header{border-bottom:1px solid var(--border-light);color:var(--gray-800);padding:16px 20px;font-size:.9rem;font-weight:700}.portal-msg-conv-body{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.portal-msg-bubble{border-radius:var(--radius-md);max-width:70%;padding:10px 14px;font-size:.8rem;line-height:1.5}.portal-msg-bubble.staff{background:var(--gray-100);color:var(--gray-700);border-bottom-left-radius:4px;align-self:flex-start}.portal-msg-bubble.client{background:var(--portal-accent-light);color:var(--gray-800);border-bottom-right-radius:4px;align-self:flex-end}.portal-msg-sender{margin-bottom:4px;font-size:.65rem;font-weight:600}.portal-msg-bubble.staff .portal-msg-sender{color:var(--gray-500)}.portal-msg-bubble.client .portal-msg-sender{color:var(--portal-accent-dark)}.portal-msg-time{color:var(--gray-400);margin-top:4px;font-size:.6rem}.portal-msg-reply{border-top:1px solid var(--border-light);align-items:flex-end;gap:10px;padding:12px 20px;display:flex}.portal-msg-input{border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:.8rem;font-family:var(--font-body);resize:none;min-height:44px;max-height:120px;transition:border-color var(--transition-fast);flex:1;padding:10px 14px}.portal-msg-input:focus{border-color:var(--portal-accent);outline:none}.portal-msg-send{background:var(--portal-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:600;font-family:var(--font-body);white-space:nowrap;border:none;padding:10px 18px}.portal-msg-send:hover{background:var(--portal-accent-dark)}.portal-appt-grid{flex-direction:column;gap:14px;display:flex}.portal-appt-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-md);align-items:flex-start;gap:16px;padding:16px 20px;display:flex}.portal-appt-date-block{background:var(--portal-accent-light);border-radius:var(--radius-sm);text-align:center;flex-shrink:0;min-width:60px;padding:10px 14px}.portal-appt-day{color:var(--portal-accent-dark);font-size:1.4rem;font-weight:700;line-height:1}.portal-appt-month{color:var(--portal-accent);text-transform:uppercase;margin-top:2px;font-size:.6rem;font-weight:600}.portal-appt-details{flex:1}.portal-appt-type{color:var(--gray-800);margin-bottom:4px;font-size:.85rem;font-weight:700}.portal-appt-meta{color:var(--gray-500);font-size:.72rem;line-height:1.6}.portal-appt-meta a{color:var(--portal-accent-dark)}.portal-appt-attendees{flex-wrap:wrap;gap:4px;margin-top:8px;display:flex}.portal-appt-att-chip{background:var(--gray-100);color:var(--gray-600);border-radius:10px;padding:2px 8px;font-size:.6rem}.portal-appt-past{opacity:.6}.portal-mn-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);margin-bottom:10px;overflow:hidden}.portal-mn-header{cursor:pointer;transition:background var(--transition-fast);align-items:center;gap:12px;padding:14px 20px;display:flex}.portal-mn-header:hover{background:var(--gray-50)}.portal-mn-arrow{transition:transform var(--transition-fast);color:var(--gray-400)}.portal-mn-arrow.open{transform:rotate(90deg)}.portal-mn-date{color:var(--gray-700);font-size:.82rem;font-weight:600}.portal-mn-type{background:var(--portal-accent-light);color:var(--portal-accent-dark);border-radius:4px;padding:2px 8px;font-size:.65rem;font-weight:600}.portal-mn-body{border-top:1px solid var(--border-light);padding:0 20px 20px}.portal-mn-section{margin-top:16px}.portal-mn-section-title{color:var(--gray-600);text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:700}.portal-mn-list{color:var(--gray-700);padding-left:18px;font-size:.78rem;line-height:1.7}.portal-mn-action-row{border-bottom:1px solid var(--gray-100);align-items:center;gap:12px;padding:6px 0;font-size:.78rem;display:flex}.portal-mn-action-row:last-child{border-bottom:none}.portal-mn-action-task{color:var(--gray-700);flex:1}.portal-mn-action-owner{color:var(--gray-600);font-size:.7rem;font-weight:600}.portal-mn-action-due{color:var(--gray-500);font-family:DM Mono,monospace;font-size:.68rem}.portal-stars{gap:6px;margin-bottom:16px;display:flex}.portal-star{cursor:pointer;width:32px;height:32px;color:var(--gray-300);transition:color var(--transition-fast)}.portal-star.filled,.portal-star:hover{color:var(--portal-accent)}.portal-feedback-form{flex-direction:column;gap:16px;display:flex}.portal-feedback-textarea{border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:.8rem;font-family:var(--font-body);resize:vertical;width:100%;min-height:80px;transition:border-color var(--transition-fast);padding:12px 14px}.portal-feedback-textarea:focus{border-color:var(--portal-accent);outline:none}.portal-feedback-history{margin-top:24px}.portal-feedback-entry{border-bottom:1px solid var(--gray-100);padding:14px 0}.portal-feedback-entry:last-child{border-bottom:none}.portal-two-col{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:1024px){.portal-stat-grid{grid-template-columns:repeat(2,1fr)}.portal-two-col,.portal-msg-layout{grid-template-columns:1fr}.portal-msg-list{border-right:none;border-bottom:1px solid var(--border-light);max-height:300px}.portal-pkg-line{grid-template-columns:1fr 60px 60px 60px 100px}}@media (max-width:768px){.portal-sidebar{transform:translate(-100%)}.portal-sidebar.open{box-shadow:var(--shadow-lg);transform:translate(0)}.portal-main-wrapper{margin-left:0}.portal-topbar{display:flex}.portal-content{padding:16px}.portal-stat-grid{grid-template-columns:1fr 1fr}.portal-service-grid,.portal-team-grid{grid-template-columns:1fr}.portal-msg-bubble{max-width:90%}.portal-appt-card{flex-direction:column}.portal-pkg-line{grid-template-columns:1fr;gap:4px}.portal-pkg-hrs{text-align:left}.portal-pkg-summary{grid-template-columns:1fr;gap:12px}.portal-welcome{padding:20px}.portal-welcome-title{font-size:1.2rem}}.portal-overlay{z-index:99;background:#0000004d;display:none;position:fixed;inset:0}.portal-overlay.visible{display:block}.portal-appt-location{color:var(--gray-500);font-size:.72rem;display:block}.portal-appt-video-link{text-decoration:underline;color:var(--portal-accent-dark)!important}.portal-collapsible-header{cursor:pointer;color:var(--gray-600);font-size:.85rem;font-weight:600;font-family:var(--font-body);text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:12px 0;display:flex}.portal-collapsible-header:hover{color:var(--gray-800)}.portal-collapse-arrow{transition:transform var(--transition-fast);color:var(--gray-400)}.portal-collapse-arrow.open{transform:rotate(90deg)}.portal-past-section{margin-top:24px}.portal-section-heading{color:var(--gray-700);margin-top:24px;margin-bottom:12px;font-size:.9rem;font-weight:700}.portal-empty{text-align:center;color:var(--gray-500);padding:32px;font-size:.82rem}.portal-feedback-label{color:var(--gray-600);text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px;font-size:.72rem;font-weight:600;display:block}.portal-feedback-rating{margin-bottom:20px}.portal-feedback-field{margin-bottom:16px}.portal-feedback-field-display{margin-top:12px}.portal-feedback-field-display p{color:var(--gray-700);margin-top:4px;font-size:.8rem;line-height:1.5}.portal-feedback-entry-header{align-items:center;gap:16px;margin-bottom:12px;display:flex}.portal-feedback-entry-date{color:var(--gray-600);font-size:.75rem;font-weight:600}.portal-mn-attendees{color:var(--gray-500);margin-left:auto;font-size:.7rem}.portal-mn-text{color:var(--gray-700);font-size:.8rem;line-height:1.6}.portal-msg-thread-subj{color:var(--gray-800);font-size:.8rem;font-weight:600}.wp-progress-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.wp-progress-row{flex:1;align-items:center;gap:10px;min-width:200px;display:flex}.wp-progress-track{background:var(--gray-200);border-radius:4px;flex:1;max-width:280px;height:8px;overflow:hidden}.wp-progress-fill{border-radius:4px;height:100%;transition:width .4s}.wp-progress-text{color:var(--gray-600);white-space:nowrap;font-size:.78rem;font-weight:600}.wp-progress-actions{gap:4px;display:flex}.wp-section{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);margin-bottom:8px;overflow:hidden}.wp-section--done{border-color:var(--success-light)}.wp-section-header-row{align-items:center;display:flex}.wp-section-header{cursor:pointer;min-width:0;font-family:var(--font-body);text-align:left;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:10px 14px;display:flex}.wp-section-header:hover{background:var(--gray-25)}.wp-section-na-btn{border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--gray-500);font-family:var(--font-body);text-transform:uppercase;letter-spacing:.02em;cursor:pointer;transition:all var(--transition-fast);background:0 0;flex-shrink:0;margin-right:10px;padding:3px 10px;font-size:.68rem;font-weight:600}.wp-section-na-btn:hover{background:var(--gray-50);color:var(--gray-700);border-color:var(--gray-300)}.wp-section--na .wp-section-na-btn{background:var(--gray-100);color:var(--gray-700);border-color:var(--gray-300)}.wp-section--na .wp-section-title{color:var(--gray-400);text-decoration:line-through}.wp-section--na .wp-section-body{opacity:.6}.wp-section-chevron{color:var(--gray-400);transition:transform var(--transition-fast);flex-shrink:0}.wp-section-chevron.open{transform:rotate(90deg)}.wp-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--h-sky);flex:1;font-size:.8rem;font-weight:700}.wp-section--done .wp-section-title{color:var(--success)}.wp-section-count{color:var(--gray-400);background:var(--gray-100);border-radius:10px;padding:2px 8px;font-size:.68rem;font-weight:600}.wp-section-count--done{color:var(--success);background:var(--success-light)}.wp-section-body{border-top:1px solid var(--border-light)}.wp-table{border-collapse:collapse;width:100%;font-size:.8rem}.wp-table thead th{background:var(--gray-25);text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);border-bottom:1px solid var(--border-light);padding:6px 12px;font-size:.65rem;font-weight:600}.wp-table tbody tr{border-bottom:1px solid var(--gray-100)}.wp-table tbody tr:last-child{border-bottom:none}.wp-table tbody tr:hover{background:var(--gray-25)}.wp-row--checked{background:#16a34a08}.wp-row--checked .wp-item-label{color:var(--gray-400);text-decoration:line-through;-webkit-text-decoration-color:var(--gray-300);text-decoration-color:var(--gray-300)}.wp-check-cell{text-align:center;vertical-align:top;width:40px;padding:8px 4px 8px 12px}.wp-checkbox{border:2px solid var(--gray-300);cursor:pointer;background:var(--white);border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-size:0;transition:all .15s;display:inline-flex}.wp-checkbox:hover{border-color:var(--h-sky)}.wp-checkbox--checked{background:var(--success);border-color:var(--success)}.wp-checkbox--checked svg{color:#fff}.wp-item-cell{vertical-align:top;padding:8px 12px}.wp-item-label{color:var(--gray-800);font-weight:500;line-height:1.4}.wp-item-desc{color:var(--gray-500);margin-top:2px;font-size:.72rem;line-height:1.4}.wp-tax-code{background:var(--purple-50,#f3e8ff);color:var(--purple-700,#5e35a1);vertical-align:middle;letter-spacing:.02em;border-radius:4px;margin-right:6px;padding:1px 6px;font-family:DM Mono,monospace;font-size:.65rem;font-weight:700;display:inline-block}.wp-ref-cell{vertical-align:top;padding:8px 6px}.wp-ref-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--gray-700);background:var(--white);transition:border-color var(--transition-fast);padding:4px 8px;font-size:.75rem}.wp-ref-input:focus{border-color:var(--h-sky);outline:none;box-shadow:0 0 0 2px #249abc1a}.wp-table tr.wp-row--focus>td{background:var(--purple-50)}.wp-notes-cell{vertical-align:top;min-width:200px;padding:8px 12px 8px 6px}.wp-notes-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--gray-700);resize:vertical;background:var(--white);transition:border-color var(--transition-fast);overflow-wrap:anywhere;padding:4px 8px;font-size:.75rem;line-height:1.4;overflow:hidden}.wp-notes-input:focus{border-color:var(--h-sky);outline:none;box-shadow:0 0 0 2px #249abc1a}.wp-entities-hint{color:var(--gray-500);align-items:baseline;gap:6px;margin-top:4px;font-size:.68rem;line-height:1.35;display:flex}.wp-entities-hint>span{flex:1}.wp-entities-insert{color:var(--purple-700);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-size:.68rem;font-weight:600}.wp-entities-insert:hover{text-decoration:underline}.wp-signoff{border-radius:var(--radius-md);border:1px solid var(--border-light);background:var(--gray-25);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding:9px 14px;display:flex}.wp-signoff--ready_for_review{background:#fffbeb;border-color:#fed7aa}.wp-signoff--finalised{background:#ecfdf5;border-color:#a7f3d0}.wp-signoff-stage{color:var(--gray-800);font-size:.82rem;font-weight:700}.wp-signoff-sub{color:var(--gray-500);font-size:.76rem;font-weight:400}.wp-signoff-actions{flex-wrap:wrap;gap:8px;display:flex}.wp-signoff-lockbar{border-radius:var(--radius-sm);background:var(--gray-100);color:var(--gray-600);margin-bottom:10px;padding:8px 12px;font-size:.76rem}.tr-header-row{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:4px;display:flex}.tr-meta{align-items:flex-end;gap:16px;display:flex}.tr-meta-item{flex-direction:column;gap:4px;display:flex}.tr-save-status{padding-bottom:6px;font-size:.72rem}.tr-saving{color:var(--warning);font-weight:500}.tr-saved{color:var(--success);font-weight:500}.tr-table{border-collapse:collapse;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);width:100%;font-size:.8rem;overflow:hidden}.tr-table thead th{background:var(--gray-50);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);border-bottom:1px solid var(--border-light);padding:8px 12px;font-size:.7rem;font-weight:600}.tr-year-col{width:140px;text-align:right!important}.tr-table tbody tr{border-bottom:1px solid var(--gray-100)}.tr-table tbody tr:hover{background:var(--gray-25)}.tr-label{color:var(--gray-700);padding:6px 12px;font-size:.78rem}.tr-label-bold{color:var(--gray-800);padding:6px 12px;font-size:.78rem;font-weight:600}.tr-label-italic{color:var(--gray-500);padding:6px 12px;font-size:.76rem;font-style:italic}.tr-indent{padding-left:28px!important}.tr-amount-cell{text-align:right;vertical-align:middle;width:140px;padding:4px 8px}.tr-computed{font-family:var(--font-mono);color:var(--gray-700);font-size:.78rem;font-weight:500}.tr-total-amount{color:var(--gray-900);font-size:.82rem;font-weight:700}.tr-refund{color:var(--danger)!important}.tr-currency-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-mono);text-align:right;color:var(--gray-700);background:var(--white);transition:border-color var(--transition-fast);padding:3px 8px;font-size:.78rem}.tr-currency-input:focus{border-color:var(--h-sky);outline:none;box-shadow:0 0 0 2px #249abc1a}.tr-section-row td{text-transform:uppercase;letter-spacing:.04em;color:var(--h-sky);padding:8px 12px;font-size:.72rem;font-weight:700;background:var(--gray-50)!important}.tr-subtotal-row td{border-top:1px solid var(--gray-300);border-bottom:1px solid var(--gray-300)}.tr-highlight-row td{background:#249abc0a}.tr-total-row td{background:var(--gray-50);border-top:2px solid var(--gray-400);border-bottom:2px solid var(--gray-400)}.tr-dist-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--gray-700);background:var(--white);padding:3px 8px;font-size:.78rem}.tr-dist-input:focus{border-color:var(--h-sky);outline:none}.wp-status-cell{vertical-align:top;width:120px;padding:8px 6px 8px 12px}.wp-status-select{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);cursor:pointer;appearance:auto;transition:border-color var(--transition-fast);padding:4px 6px;font-size:.7rem;font-weight:600}.wp-status-select:focus{border-color:var(--h-sky);outline:none}.wp-row--na{opacity:.5}.wp-row--na .wp-item-label{text-decoration:line-through;-webkit-text-decoration-color:var(--gray-300);text-decoration-color:var(--gray-300)}.wp-comments-row td{border-bottom:1px solid var(--gray-100);padding:0 12px 4px}.wpc-inline{padding:2px 0}.wpc-inline-list{flex-direction:column;gap:3px;margin-bottom:4px;display:flex}.wpc-inline-item{flex-direction:column;gap:4px;padding:2px 0;font-size:.72rem;line-height:1.4;display:flex}.wpc-inline-row{align-items:flex-start;gap:6px;display:flex}.wpc-inline-item.wpc-resolved .wpc-inline-row{opacity:.5;text-decoration:line-through}.wpc-type-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:4px}.wpc-inline-body{color:var(--gray-700);flex:1}.wpc-inline-meta{color:var(--gray-400);white-space:nowrap;font-size:.65rem}.wpc-resolve-btn{cursor:pointer;color:var(--gray-400);background:0 0;border:none;padding:0 2px;font-size:.7rem}.wpc-resolve-btn:hover{color:var(--success)}.wpc-add-inline-btn{font-family:var(--font-body);color:var(--gray-400);cursor:pointer;background:0 0;border:none;padding:2px 0;font-size:.68rem}.wpc-add-inline-btn:hover{color:var(--h-sky)}.wpc-type-selector{gap:4px;margin-bottom:6px;display:flex}.wpc-type-btn{border-radius:var(--radius-sm);border:1px solid var(--gray-200);background:var(--white);font-family:var(--font-body);color:var(--gray-500);cursor:pointer;transition:all var(--transition-fast);padding:3px 8px;font-size:.65rem;font-weight:600}.wpc-type-btn.active{border-color:var(--type-color);color:var(--type-color);background:var(--white)}.wpc-type-icon{width:16px;height:16px;color:var(--white);border-radius:50%;justify-content:center;align-items:center;margin-right:4px;font-size:.6rem;font-weight:700;display:inline-flex}.wpc-inline-form{padding:4px 0}.wpc-inline-form-row{align-items:flex-start;gap:8px;display:flex}.wpc-inline-form-actions{flex-direction:column;gap:4px;display:flex}.wpc-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:100%;font-family:var(--font-body);color:var(--gray-700);resize:vertical;padding:6px 10px;font-size:.78rem;line-height:1.4}.wpc-input:focus{border-color:var(--h-sky);outline:none;box-shadow:0 0 0 2px #249abc1a}.wpc-full,.wpc-queries-view{flex-direction:column;gap:12px;display:flex}.wpc-stats-row{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.wpc-stat{background:var(--white);border:1px solid var(--border-light);border-top:3px solid var(--gray-300);border-radius:var(--radius-sm);text-align:center;font:inherit;color:inherit;cursor:pointer;padding:10px 12px;transition:box-shadow .12s,transform .12s,background .12s}.wpc-stat:hover{background:var(--gray-25);box-shadow:var(--shadow-xs)}.wpc-stat:focus-visible{outline:2px solid var(--purple-300,#b39ddb);outline-offset:2px}.wpc-stat--active{background:var(--purple-50,#f3e8ff);box-shadow:var(--shadow-purple,0 1px 6px #5e35a12e)}.wpc-stat--active .wpc-stat-label{color:var(--purple-700,#5e35a1)}.wpc-stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);margin-bottom:2px;font-size:.62rem;font-weight:600}.wpc-stat-value{font-size:1.2rem;font-weight:700;font-family:var(--font-mono)}.wpc-stat-sub{color:var(--gray-400);font-size:.62rem}.wpc-filter-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.wpc-filter-group{align-items:center;gap:4px;display:flex}.wpc-filter-label{color:var(--gray-500);margin-right:4px;font-size:.68rem;font-weight:600}.wpc-filter-btn{border-radius:var(--radius-sm);border:1px solid var(--gray-200);background:var(--white);font-family:var(--font-body);color:var(--gray-500);cursor:pointer;padding:4px 10px;font-size:.7rem;font-weight:500}.wpc-filter-btn.active{background:var(--h-sky);border-color:var(--h-sky);color:var(--white)}.wpc-list{flex-direction:column;gap:6px;display:flex}.wpc-card{border:1px solid var(--border-light);border-left:3px solid var(--gray-300);border-radius:var(--radius-sm);background:var(--white);padding:10px 12px}.wpc-card--resolved{opacity:.55}.wpc-card-header{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.wpc-card-type{text-transform:uppercase;letter-spacing:.03em;border-radius:10px;padding:2px 8px;font-size:.62rem;font-weight:700}.wpc-card-scope{color:var(--gray-400);font-size:.65rem;font-family:var(--font-mono)}.wpc-card-scope--link{cursor:pointer;color:var(--purple-700);background:0 0;border:none;padding:0}.wpc-card-scope--link:hover{text-decoration:underline}.wpc-card-meta{color:var(--gray-400);margin-left:auto;font-size:.65rem}.wpc-card-resolved-badge{color:var(--success);font-size:.62rem;font-weight:500}.wpc-card-body{color:var(--gray-700);font-size:.8rem;line-height:1.5}.wpc-card-actions{gap:8px;margin-top:6px;display:flex}.wpc-resolve-action{color:var(--success)!important}.wpc-add-form{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--gray-25);padding:12px}.finalised-return-strip{background:var(--bg-card);border:1px solid var(--border-light);border-left:4px solid var(--purple-700);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);align-items:center;gap:14px;margin-top:10px;padding:10px 14px;display:flex}.frs-icon{font-size:1.4rem;line-height:1}.frs-body{flex:1;min-width:0}.frs-title{text-transform:uppercase;letter-spacing:.02em;color:var(--purple-700);font-size:.75rem;font-weight:700}.frs-meta{color:var(--gray-600);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:.78rem;display:flex}.frs-meta-empty{color:var(--gray-500);font-style:italic}.frs-link{color:var(--purple-700);font-weight:600;text-decoration:none}.frs-link:hover{text-decoration:underline}.frs-sep{color:var(--gray-300)}.frs-error{color:var(--danger);margin-top:4px;font-size:.72rem}.frs-share-toggle{color:var(--gray-600);margin-top:4px;font-size:.72rem}.frs-share-toggle label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;display:inline-flex}.frs-share-toggle input[type=checkbox]{accent-color:var(--purple-700)}.frs-shared-badge{background:var(--success-light,#d1fae5);color:var(--success,#065f46);text-transform:uppercase;letter-spacing:.02em;border-radius:10px;margin-left:4px;padding:1px 8px;font-size:.65rem;font-weight:700;display:inline-block}.frs-actions label.btn{cursor:pointer}.frs-actions .btn-disabled{opacity:.5;cursor:not-allowed}.wpc-card-edit{flex-direction:column;gap:10px;margin-top:8px;display:flex}.wpc-queries-add-form{flex-direction:column;gap:10px;margin:4px 0 12px;display:flex}.wpc-queries-add-form .wpc-type-selector{margin-bottom:0}.wpc-action-row{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 4px;display:flex}.wpc-query-fields{flex-wrap:wrap;gap:10px;display:flex}.wpc-query-field{flex-direction:column;gap:4px;min-width:0;display:flex}.wpc-query-field .form-label{margin:0}.wpc-query-field--sm{flex:0 0 110px}.wpc-query-field--md{flex:200px}.wpc-card-account{align-items:center;gap:6px;margin:2px 0 4px;font-size:.75rem;display:flex}.wpc-card-account-num{background:var(--purple-50,#f3e8ff);color:var(--purple-700,#5e35a1);border-radius:4px;padding:1px 6px;font-family:DM Mono,monospace;font-weight:600;display:inline-block}.wpc-card-account-name{color:var(--gray-700);font-weight:500}.wpc-thread{border-left:2px solid var(--border-light);flex-direction:column;gap:8px;margin:8px 0 6px;padding-left:12px;display:flex}.wpc-thread--compact{gap:4px;margin:4px 0 4px 12px;padding-left:8px}.wpc-thread-list{flex-direction:column;gap:6px;display:flex}.wpc-reply{flex-direction:column;gap:2px;display:flex}.wpc-reply-header{color:var(--gray-500);align-items:center;gap:6px;font-size:.65rem;display:flex}.wpc-reply-author{color:var(--gray-700);font-weight:600}.wpc-reply-time{color:var(--gray-400)}.wpc-reply-delete{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:0 4px;font-size:.95rem;line-height:1}.wpc-reply-delete:hover{color:var(--danger);background:var(--gray-50)}.wpc-reply-body{color:var(--gray-700);white-space:pre-wrap;font-size:.78rem;line-height:1.45}.wpc-thread--compact .wpc-reply-body{font-size:.72rem}.wpc-reply-composer{align-items:flex-start;gap:6px;display:flex}.wpc-reply-input{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--white);resize:vertical;min-height:32px;color:var(--gray-700);flex:1;padding:6px 8px;font-family:inherit;font-size:.78rem;line-height:1.4}.wpc-reply-input:focus{border-color:var(--purple-300,#b39ddb);box-shadow:0 0 0 2px var(--purple-50,#f3e8ff);outline:none}.wpc-thread--compact .wpc-reply-input{min-height:26px;padding:4px 6px;font-size:.72rem}.wpc-reply-submit{flex-shrink:0;align-self:flex-end}.wpref-wrap{align-items:center;gap:2px;display:flex;position:relative}.wpref-actions{flex-shrink:0;gap:1px;display:flex}.wpref-btn{cursor:pointer;background:0 0;border:none;border-radius:3px;align-items:center;padding:2px 4px;font-size:.72rem;display:flex}.wpref-btn:hover{background:var(--gray-100)}.wpref-uploading{color:var(--warning);font-size:.65rem;position:absolute;top:100%;left:0}.wpref-linked{align-items:center;gap:4px;width:100%;display:flex}.wpref-chip{color:var(--h-sky);background:#e8f6fb;border-radius:4px;flex:1;align-items:center;gap:4px;min-width:0;padding:2px 8px;font-size:.7rem;text-decoration:none;display:flex;overflow:hidden}.wpref-chip:hover{background:#d0eff8}.wpref-chip-icon{flex-shrink:0}.wpref-chip-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wpref-remove{cursor:pointer;color:var(--gray-400);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:.85rem}.wpref-remove:hover{color:var(--danger)}.wpref-picker-overlay{z-index:200;background:#0000004d;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.wpref-picker{background:var(--white);border-radius:var(--radius-lg);width:480px;max-height:70vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.wpref-picker-header{border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.wpref-picker-close{cursor:pointer;color:var(--gray-400);background:0 0;border:none;font-size:1.2rem}.wpref-quicknav{border-bottom:1px solid var(--gray-50);flex-wrap:wrap;gap:4px;padding:8px 12px;display:flex}.wpref-quicknav-btn{border-radius:var(--radius-sm);border:1px solid var(--gray-200);background:var(--white);font-family:var(--font-body);color:var(--gray-500);cursor:pointer;padding:3px 10px;font-size:.68rem;font-weight:500}.wpref-quicknav-btn:hover{border-color:var(--h-sky);color:var(--h-sky)}.wpref-picker-list{flex:1;max-height:350px;overflow-y:auto}.wpref-picker-item{border:none;border-bottom:1px solid var(--gray-50);cursor:pointer;width:100%;font-family:var(--font-body);color:var(--gray-700);text-align:left;background:0 0;align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;display:flex}.wpref-picker-item:hover{background:var(--gray-25)}.wpref-picker-file:hover{background:#e8f6fb}.wpref-picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.wpref-picker-size{color:var(--gray-400);font-size:.65rem;font-family:var(--font-mono)}.wpbar{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);margin-bottom:12px;overflow:hidden}.wpbar--done{border-color:var(--success-light);background:#f9fef9}.wpbar-header{border-bottom:1px solid var(--gray-100);background:var(--gray-25);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.wpbar-progress{align-items:center;gap:8px;display:flex}.wpbar-track{background:var(--gray-200);border-radius:3px;width:100px;height:6px;overflow:hidden}.wpbar-fill{background:var(--success);border-radius:3px;height:100%;transition:width .3s}.wpbar-count{color:var(--gray-500);font-size:.7rem;font-weight:600}.wpbar-items{padding:6px 12px}.wpbar-item{border-bottom:1px solid var(--gray-50);justify-content:space-between;align-items:center;padding:4px 0;display:flex}.wpbar-item:last-child{border-bottom:none}.wpbar-item--done .wpbar-item-label{color:var(--success);text-decoration:line-through;-webkit-text-decoration-color:var(--gray-300);text-decoration-color:var(--gray-300)}.wpbar-item--na .wpbar-item-label{color:var(--gray-400);text-decoration:line-through;-webkit-text-decoration-color:var(--gray-200);text-decoration-color:var(--gray-200);font-style:italic}.wpbar-item-label{color:var(--gray-700);flex:1;min-width:0;font-size:.75rem}.wpbar-item-actions{flex-shrink:0;gap:2px;display:flex}.wpbar-status-btn{cursor:pointer;transition:opacity var(--transition-fast);font-size:.68rem;font-weight:700;font-family:var(--font-body);background:0 0;border:none;border-radius:4px;padding:2px 6px}.wpbar-status-btn:hover{background:var(--gray-50);opacity:1!important}.wpbar-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.03em;font-size:.68rem;font-weight:600}.wpbar-select{flex-shrink:0;width:90px;padding:2px 4px!important;font-size:.68rem!important}.wpbar-item-ref{flex-shrink:0}.wpbar-ref-tag{color:var(--h-sky);font-size:.65rem;font-family:var(--font-mono);background:#e8f6fb;border-radius:4px;align-items:center;gap:4px;padding:1px 6px;display:inline-flex}.wpbar-ref-remove{cursor:pointer;color:var(--gray-400);background:0 0;border:none;padding:0;font-size:.75rem;line-height:1}.wpbar-ref-remove:hover{color:var(--danger)}.wpbar-ref-add{border:1px dashed var(--gray-300);cursor:pointer;color:var(--gray-400);font-size:.62rem;font-weight:600;font-family:var(--font-body);background:0 0;border-radius:4px;padding:1px 6px}.wpbar-ref-add:hover{border-color:var(--h-sky);color:var(--h-sky)}.wp-link-btn{color:var(--h-sky);cursor:pointer;font-size:.65rem;font-weight:600;font-family:var(--font-body);vertical-align:middle;background:#e8f6fb;border:none;border-radius:4px;align-items:center;gap:2px;margin-left:6px;padding:1px 6px;display:inline-flex}.wp-link-btn:hover{color:#125670;background:#d0eff8}.ai-fab{background:linear-gradient(135deg,var(--h-sky),var(--h-purple));color:#fff;cursor:pointer;width:48px;height:48px;box-shadow:var(--shadow-lg);z-index:100;transition:transform var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:80px;right:20px}.ai-fab:hover{transform:scale(1.1)}.ai-panel{border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--white);width:420px;max-height:70vh;box-shadow:var(--shadow-lg);z-index:100;flex-direction:column;display:flex;position:fixed;bottom:80px;right:20px;overflow:hidden}.ai-panel-header{background:linear-gradient(135deg,var(--h-sky),var(--h-purple));color:#fff;align-items:center;gap:8px;padding:10px 14px;display:flex}.ai-panel-title{flex:1;font-size:.82rem;font-weight:700}.ai-panel-tokens{opacity:.7;font-size:.62rem;font-family:var(--font-mono)}.ai-panel-close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;padding:0 4px;font-size:1.2rem}.ai-panel-close:hover{opacity:1}.ai-panel-messages{flex:1;min-height:200px;max-height:50vh;padding:12px;overflow-y:auto}.ai-panel-empty{text-align:center;color:var(--gray-500);padding:20px 10px;font-size:.8rem}.ai-suggestions{flex-direction:column;gap:4px;margin-top:12px;display:flex}.ai-suggestion-btn{background:var(--gray-25);border:1px solid var(--gray-200);border-radius:var(--radius-sm);color:var(--gray-600);cursor:pointer;text-align:left;font-size:.72rem;font-family:var(--font-body);padding:6px 10px}.ai-suggestion-btn:hover{border-color:var(--h-sky);color:var(--h-sky)}.ai-msg{margin-bottom:10px}.ai-msg--user .ai-msg-content{background:var(--h-sky);color:#fff;border-radius:12px 12px 4px;margin-left:40px;padding:8px 12px;font-size:.8rem}.ai-msg--assistant .ai-msg-content{background:var(--gray-25);border:1px solid var(--gray-100);color:var(--gray-700);border-radius:12px 12px 12px 4px;margin-right:20px;padding:10px 12px;font-size:.78rem;line-height:1.6}.ai-thinking{color:var(--gray-400);font-style:italic}.ai-panel-input{border-top:1px solid var(--gray-100);background:var(--gray-25);align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.ai-input{border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-family:var(--font-body);resize:none;flex:1;padding:6px 10px;font-size:.78rem;line-height:1.4}.ai-input:focus{border-color:var(--h-sky);outline:none}.sp-picker{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);max-width:500px;overflow:hidden}.sp-picker-header{background:var(--gray-25);border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.sp-breadcrumbs{background:var(--gray-25);border-bottom:1px solid var(--gray-100);align-items:center;gap:2px;padding:6px 14px;font-size:.72rem;display:flex;overflow-x:auto}.sp-crumb{cursor:pointer;color:var(--h-sky);font-size:.72rem;font-family:var(--font-body);background:0 0;border:none;border-radius:3px;padding:2px 4px}.sp-crumb:hover{background:var(--gray-100)}.sp-crumb-sep{color:var(--gray-300)}.sp-picker-list{max-height:250px;padding:4px 0;overflow-y:auto}.sp-picker-empty{text-align:center;color:var(--gray-400);padding:20px;font-size:.8rem}.sp-folder-item{cursor:pointer;width:100%;font-family:var(--font-body);color:var(--gray-700);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;display:flex}.sp-folder-item:hover{background:var(--gray-25)}.sp-folder-name{flex:1}.sp-folder-count{color:var(--gray-400);font-size:.65rem}.sp-picker-create{border-top:1px solid var(--gray-100);gap:6px;padding:8px 14px;display:flex}.sp-picker-actions{border-top:1px solid var(--gray-100);background:var(--gray-25);gap:8px;padding:10px 14px;display:flex}.sp-files{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);margin-bottom:12px;overflow:hidden}.sp-files-header{background:var(--gray-25);border-bottom:1px solid var(--gray-100);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.sp-file-list{padding:4px 0}.sp-file-item{color:var(--gray-700);border-bottom:1px solid var(--gray-50);align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;text-decoration:none;display:flex}.sp-file-item:hover{background:var(--gray-25)}.sp-file-icon{flex-shrink:0;font-size:.9rem}.sp-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.sp-file-size{color:var(--gray-400);font-size:.68rem;font-family:var(--font-mono)}.sp-file-date{color:var(--gray-400);white-space:nowrap;font-size:.68rem}.tb-panel-overlay{z-index:150;background:#00000040;justify-content:flex-end;display:flex;position:fixed;inset:0}.tb-panel{background:var(--white);flex-direction:column;width:440px;max-width:90vw;height:100%;animation:.2s slideInRight;display:flex;overflow:hidden;box-shadow:-4px 0 20px #0000001a}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.tb-panel-header{border-bottom:1px solid var(--gray-100);background:var(--gray-25);flex-shrink:0;align-items:flex-start;gap:12px;padding:16px;display:flex}.tb-panel-title{color:var(--gray-800);font-size:.95rem;font-weight:700;line-height:1.3}.tb-panel-subtitle{color:var(--gray-500);margin-top:2px;font-size:.72rem}.tb-panel-close{cursor:pointer;color:var(--gray-400);background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:1.4rem}.tb-panel-close:hover{color:var(--gray-700)}.tb-panel-body{flex:1;padding:16px;overflow-y:auto}.tb-panel-balances{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.tb-panel-bal{background:var(--gray-25);border:1px solid var(--gray-100);border-radius:var(--radius-sm);text-align:center;padding:8px 10px}.tb-panel-bal-label{text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);margin-bottom:2px;font-size:.6rem;font-weight:600}.tb-panel-bal-value{font-size:.85rem;font-weight:700;font-family:var(--font-mono)}.tb-panel-section{margin-bottom:14px}.tb-panel-saving{color:var(--warning);font-size:.68rem;position:absolute;bottom:8px;right:12px}.tb-row-clickable{cursor:pointer}.tb-row-clickable:hover{background:#f0f9ff!important}.tb-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.date-input-wrap{align-items:center;width:100%;display:flex;position:relative}.date-input-text{width:100%;min-width:0;padding-right:28px!important;font-size:.78rem!important}.date-input-error{border-color:var(--danger)!important}.date-input-picker-btn{cursor:pointer;color:var(--gray-400);background:0 0;border:none;align-items:center;padding:2px;display:flex;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.date-input-picker-btn:hover{color:var(--h-sky)}.date-input-hidden{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.jt-tab--wp.on{color:var(--h-sky)!important;border-bottom-color:var(--h-sky)!important}.wp-subtab-container{margin:-14px -16px}.wp-subtab-nav{background:var(--gray-25);border-bottom:2px solid var(--gray-200);gap:0;padding:0 16px;display:flex;overflow-x:auto}.wp-subtab{color:var(--gray-500);cursor:pointer;white-space:nowrap;font-size:.76rem;font-weight:600;font-family:var(--font-body);transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:9px 14px}.wp-subtab:hover{color:var(--h-sky)}.wp-subtab--active{color:var(--h-sky);border-bottom-color:var(--h-sky)}.wp-subtab-body{padding:14px 16px}.div7a-container{flex-direction:column;gap:8px;display:flex}.div7a-card{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--white);overflow:hidden}.div7a-card-header{cursor:pointer;font-family:var(--font-body);align-items:center;gap:8px;padding:10px 14px;display:flex}.div7a-card-header:hover{background:var(--gray-25)}.div7a-card-title{color:var(--gray-800);flex:1;font-size:.82rem;font-weight:600}.div7a-card-amount{font-size:.78rem;font-weight:600;font-family:var(--font-mono);color:var(--gray-600)}.div7a-card-term{color:var(--gray-400);background:var(--gray-100);border-radius:10px;padding:2px 8px;font-size:.68rem;font-weight:500}.div7a-shortfall{color:var(--danger);background:#fef2f2;border-radius:10px;padding:2px 8px;font-size:.68rem;font-weight:600}.div7a-card-body{border-top:1px solid var(--border-light);padding:14px}.div7a-form-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}@media (min-width:768px){.div7a-form-grid{grid-template-columns:repeat(3,1fr)}}.ts-report{flex-direction:column;gap:16px;display:flex}.ts-report-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ts-report-actions{gap:8px;display:flex}.ts-period-bar{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;display:flex}.ts-period-presets{flex-wrap:wrap;gap:6px;display:flex}.ts-period-arrows{border-left:1px solid var(--border-light);border-right:1px solid var(--border-light);align-items:center;gap:6px;padding:0 8px;display:flex}.ts-period-label{color:var(--gray-700);text-align:center;min-width:180px;font-size:.78rem;font-weight:600;font-family:var(--font-mono)}.ts-period-custom{align-items:center;gap:6px;display:flex}.ts-paid-toggle{color:var(--gray-700);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;margin-left:auto;font-size:.78rem;display:flex}.ts-paid-toggle input{cursor:pointer}.ts-report-tabs{border-bottom:1px solid var(--border-light);gap:4px;display:flex}.ts-report-tabs .sn{color:var(--gray-600);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 14px;font-size:.8rem;font-weight:500}.ts-report-tabs .sn:hover{color:var(--gray-800)}.ts-report-tabs .sn.on{color:var(--purple-700);border-bottom-color:var(--purple-700);font-weight:600}.ts-report-loading{text-align:center;color:var(--gray-400);padding:60px;font-size:.85rem}.ts-detail-toolbar{align-items:center;gap:6px;margin-bottom:10px;display:flex}.ts-detail-card{overflow:hidden}.ts-detail-head{background:var(--bg-card);cursor:pointer;text-align:left;width:100%;font:inherit;border:none;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.ts-detail-head:hover{background:var(--gray-25)}.ts-detail-head-name{align-items:center;gap:6px;display:flex}.ts-detail-caret{color:var(--gray-400);width:14px;font-size:1rem;transition:transform .15s;display:inline-block}.ts-detail-caret[data-open=true]{transform:rotate(90deg)}.ts-detail-head-stats{color:var(--gray-700);flex-wrap:wrap;gap:16px;font-size:.78rem;display:flex}.ts-detail-body{border-top:1px solid var(--border-light)}.ts-detail-empty{text-align:center;color:var(--gray-400);padding:24px;font-size:.8rem}.ts-detail-table th{font-size:.7rem}.ts-report .print-only,.ts-print-header,.ts-print-pagebreak,.ts-print-section-title,.ts-print-card{display:none}@media print{@page{size:A4 landscape;margin:14mm 12mm}body{background:#fff!important}.sidebar,.topbar,.brand-strip,.ts-report-head,.ts-period-bar,.ts-report-tabs,.ts-detail-toolbar,.no-print{display:none!important}main,.app-main,.app-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}.ts-report .print-only{display:block}.ts-print-header{border-bottom:2px solid var(--purple-700);justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px;padding-bottom:12px;display:flex!important}.ts-print-brand{align-items:center;gap:12px;display:flex}.ts-print-brand img{object-fit:contain;max-width:160px;max-height:48px}.ts-print-brand-text{color:var(--purple-700);font-size:1.1rem;font-weight:700}.ts-print-brand-name{color:var(--gray-900);font-size:1rem;font-weight:700}.ts-print-brand-abn{color:var(--gray-500);font-size:.7rem}.ts-print-meta{text-align:right}.ts-print-title{color:var(--purple-700);font-size:1.15rem;font-weight:700}.ts-print-period{color:var(--gray-700);font-size:.85rem;font-family:var(--font-mono);margin-top:2px}.ts-print-generated{color:var(--gray-500);margin-top:4px;font-size:.7rem}.ts-print-section-title{color:var(--purple-700);text-transform:uppercase;letter-spacing:.06em;margin:14px 0 8px;font-size:.9rem;font-weight:700;display:block!important}.ts-print-pagebreak{page-break-after:always;break-after:page;display:block!important}.ts-print-card{border:1px solid var(--border-light);border-radius:4px;display:block!important}.ts-detail-card{page-break-inside:avoid;break-inside:avoid;box-shadow:none!important;border:1px solid var(--border-light)!important;margin-bottom:10px!important}.ts-detail-head{background:var(--gray-25)!important;padding:8px 12px!important}.ts-detail-caret{display:none!important}.ts-detail-body{display:block!important}.data-table{width:100%;font-size:.7rem!important}.data-table th,.data-table td{padding:4px 6px!important}.data-table thead{display:table-header-group}tr{page-break-inside:avoid;break-inside:avoid}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.feedback-inbox{flex-direction:column;gap:16px;display:flex}.feedback-inbox-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.feedback-archive-toggle{color:var(--gray-600);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.feedback-archive-toggle input[type=checkbox]{accent-color:var(--purple-700)}.feedback-kanban{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (max-width:900px){.feedback-kanban{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.feedback-kanban{grid-template-columns:1fr}}.feedback-column{background:var(--gray-25);border:1px solid var(--border-light);border-radius:var(--radius-md);flex-direction:column;min-height:200px;display:flex}.feedback-column-header{border-top:3px solid var(--gray-300);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.feedback-column-label{text-transform:uppercase;letter-spacing:.04em;color:var(--gray-700);font-size:.7rem;font-weight:700}.feedback-column-count{color:var(--gray-500);font-size:.7rem;font-family:var(--font-mono)}.feedback-column-body{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex}.feedback-column-empty{text-align:center;color:var(--gray-300);padding:12px 0;font-size:.78rem}.feedback-card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;gap:6px;padding:10px 12px;transition:box-shadow .12s,transform .12s;display:flex}.feedback-card:hover{box-shadow:var(--shadow-xs);transform:translateY(-1px)}.feedback-card:focus-visible{outline:2px solid var(--purple-300);outline-offset:2px}.feedback-card-title{color:var(--gray-800);font-size:.82rem;font-weight:600;line-height:1.35}.feedback-card-meta{color:var(--gray-500);flex-wrap:wrap;align-items:center;gap:5px;font-size:.66rem;display:flex}.feedback-card-actions{justify-content:flex-end;display:flex}.feedback-vote-btn{background:var(--white);border:1px solid var(--border-default);color:var(--gray-600);cursor:pointer;border-radius:16px;align-items:center;gap:4px;padding:3px 10px;font-family:inherit;font-size:.72rem;font-weight:600;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.feedback-vote-btn:hover{background:var(--gray-50);border-color:var(--purple-300);color:var(--purple-700)}.feedback-vote-btn--active{background:var(--purple-50);border-color:var(--purple-700);color:var(--purple-700)}.feedback-archived-list{flex-direction:column;gap:8px;display:flex}.feedback-row{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;opacity:.85;align-items:center;gap:10px;padding:10px 12px;display:flex}.feedback-row:hover{opacity:1;box-shadow:var(--shadow-xs)}.feedback-drawer-backdrop{z-index:600;background:#00000059;justify-content:flex-end;display:flex;position:fixed;inset:0}.feedback-drawer{background:var(--bg-card);flex-direction:column;width:min(560px,96vw);height:100%;display:flex;overflow:hidden;box-shadow:-10px 0 30px #00000026}.feedback-drawer-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 20px;display:flex}.feedback-drawer-title{color:var(--gray-800);font-size:1rem;font-weight:700;line-height:1.35}.feedback-drawer-body{flex-direction:column;flex:1;gap:16px;padding:16px 20px;display:flex;overflow-y:auto}.feedback-drawer-meta{color:var(--gray-500);flex-wrap:wrap;align-items:center;gap:6px;font-size:.72rem;display:flex}.feedback-drawer-page{font-family:var(--font-mono);background:var(--gray-50);color:var(--gray-700);border-radius:4px;padding:1px 6px;font-size:.7rem}.feedback-drawer-section{flex-direction:column;gap:6px;display:flex}.feedback-drawer-section-label{text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);font-size:.62rem;font-weight:700}.feedback-drawer-section-body{color:var(--gray-700);white-space:pre-wrap;font-size:.85rem;line-height:1.5}.feedback-drawer-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.feedback-status-picker{flex-wrap:wrap;gap:6px;display:flex}.feedback-status-btn{background:var(--white);border:1px solid var(--border-default);color:var(--gray-600);cursor:pointer;border-radius:16px;padding:4px 12px;font-family:inherit;font-size:.72rem;font-weight:600}.feedback-status-btn:hover{border-color:var(--status-color);color:var(--status-color)}.feedback-status-btn--active{background:var(--status-color);border-color:var(--status-color);color:var(--white)}.feedback-status-readonly{color:var(--gray-700);font-size:.85rem;font-weight:600}.feedback-replies{flex-direction:column;gap:8px;display:flex}.feedback-reply{background:var(--gray-25);border-radius:var(--radius-sm);padding:8px 10px}.feedback-reply-header{color:var(--gray-500);align-items:center;gap:6px;font-size:.66rem;display:flex}.feedback-reply-author{color:var(--gray-700);font-weight:600}.feedback-reply-time{color:var(--gray-400)}.feedback-reply-delete{color:var(--gray-400);cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:0 4px;font-size:.95rem;line-height:1}.feedback-reply-delete:hover{color:var(--danger);background:var(--gray-50)}.feedback-reply-body{color:var(--gray-700);white-space:pre-wrap;margin-top:2px;font-size:.78rem;line-height:1.45}.feedback-reply-composer{align-items:flex-start;gap:6px;margin-top:4px;display:flex}.feedback-reply-composer textarea{resize:vertical;flex:1;font-size:.78rem}.entity-detail-header{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.entity-detail-header-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entity-detail-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (max-width:768px){.entity-detail-grid{grid-template-columns:1fr;gap:16px}.entity-detail-header{margin-bottom:16px}}.form-grid-2{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:.75rem;display:grid}.form-grid-3{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:.75rem;display:grid}.pipeline-kanban{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:1rem;display:grid}.dashboard-grid-2{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:1.25rem;display:grid}@media (max-width:768px){.data-table.data-table--stack{border:0;width:100%;min-width:0}.data-table--stack thead{display:none}.data-table--stack tbody,.data-table--stack tr,.data-table--stack td{width:100%;display:block}.data-table--stack tr{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:8px;padding:10px 12px}.data-table--stack tr.row-stripe:nth-child(2n){background:var(--bg-card)}.data-table--stack td{text-align:right;overflow-wrap:anywhere;justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex;border:0!important;padding:3px 0!important}.data-table--stack td:before{content:attr(data-label);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);flex:none;font-size:.6875rem;font-weight:600}.data-table--stack td:first-child{text-align:left;font-size:.9375rem;padding-bottom:6px!important}.data-table--stack td:first-child:before,.data-table--stack td:not([data-label]):not(:first-child):before{content:none}.data-table--stack td[colspan]{text-align:center;display:block}.data-table--stack td[colspan]:before{content:none}.data-table--stack td>div{flex:1;max-width:70%;min-width:0!important}.card-head{flex-wrap:wrap;gap:8px}:not(.data-table-wrapper)>.data-table:not(.data-table--stack){-webkit-overflow-scrolling:touch;min-width:0;max-width:100%;display:block;overflow-x:auto}}.bd{--bd-line:#e6e9ef}.bd-tools{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.bd-period{width:auto;min-width:170px}.bd-search{flex:180px;max-width:280px}.bd-seg{border:1px solid var(--border-default);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.bd-seg button{background:var(--bg-card);font:inherit;color:var(--gray-600);cursor:pointer;border:0;min-height:38px;padding:8px 14px;font-size:13.5px;font-weight:600}.bd-seg button[aria-pressed=true]{background:var(--purple-700);color:#fff}.bd-bulk{top:calc(var(--topbar-height) + 8px);z-index:15;background:var(--gray-900);color:#fff;border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;padding:8px 12px;display:flex;position:sticky}.bd-bulk button{color:#fff;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff59;border-radius:8px;padding:6px 12px;font-size:13px}.bd-group{margin-bottom:18px}.bd-ghead{align-items:center;gap:10px;margin-bottom:6px;display:flex}.bd-gtoggle{cursor:pointer;font:inherit;color:var(--gc);background:0 0;border:0;align-items:center;gap:8px;padding:2px 0;font-size:16px;font-weight:600;display:flex}.bd-car{font-size:11px;transition:transform .15s;display:inline-block}.bd-car.is-closed{transform:rotate(-90deg)}.bd-gcount{color:var(--gray-400);font-size:12.5px}.bd-gbody{background:var(--bg-card);box-shadow:var(--shadow-sm);border-left:6px solid var(--gc);border-radius:8px;overflow-x:auto}.bd-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13.5px}.bd-table th{color:var(--gray-500);border-bottom:1px solid var(--bd-line);border-right:1px solid var(--bd-line);text-align:center;white-space:nowrap;text-overflow:ellipsis;padding:8px 6px;font-size:12.5px;font-weight:500;overflow:hidden}.bd-table td{border-bottom:1px solid var(--bd-line);border-right:1px solid var(--bd-line);text-align:center;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;height:40px;padding:0 6px;overflow:hidden}.bd-table tr:last-child td{border-bottom:0}.bd-table tbody tr:hover td{background:#f5f6f8}.bd-table tr.is-sel td{background:#eef3ff}.bd-table .bd-left{text-align:left}.bd-table td.bd-cell{padding:0}.bd-pill{color:#fff;width:100%;height:40px;font:inherit;letter-spacing:-.01em;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:0;padding:0 6px;font-size:13px;display:block;overflow:hidden}.bd-pill:hover{filter:brightness(1.05)}.bd-pill--round{border-radius:6px;width:auto;height:32px;padding:0 12px;display:inline-block}.bd-name{align-items:center;gap:6px;min-width:0;display:flex}.bd-exp{color:var(--gray-400);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;width:22px;height:22px;font-size:10px}.bd-exp:hover{background:var(--gray-100)}.bd-cname{font:inherit;color:var(--gray-900);cursor:pointer;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:100%;padding:0;font-weight:600;display:block;overflow:hidden}.bd-cname:hover{color:var(--purple-700);text-decoration:underline}.bd-sub{color:var(--gray-500);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.bd-bubble{color:var(--gray-400);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px;position:relative}.bd-bubble.has{color:#0073ea}.bd-bubble:hover{background:#e8f1fd}.bd-ucount{color:#fff;background:#0073ea;border-radius:99px;min-width:15px;height:15px;padding:0 3px;font-size:10px;line-height:15px;position:absolute;bottom:0;right:-2px}.bd-av{color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:inline-grid}.bd-av--none{background:var(--gray-200);color:var(--gray-500)}.bd-avbtn{cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0}.bd-hrs{font:inherit;cursor:pointer;color:var(--gray-600);background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:13px}.bd-hrs:hover{background:var(--purple-50);text-decoration:underline}.bd-hrs--low{color:#c77700}.bd-hrs--over{color:var(--danger);font-weight:600}.bd-hrs--none{color:var(--gray-400)}.bd-prog{font:inherit;color:var(--gray-500);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:12px;display:inline-flex}.bd-bar{background:var(--gray-200);border-radius:3px;width:46px;height:6px;display:inline-block;overflow:hidden}.bd-bar i{background:#00c875;height:100%;display:block}.bd-bar--big{width:100%;height:8px;margin-top:6px;display:block}.bd-note{width:100%;font:inherit;color:var(--gray-800);background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 6px;font-size:13.5px}.bd-note:hover{border-color:var(--border-default)}.bd-note:focus{border-color:var(--purple-700);background:var(--bg-card);outline:none}.bd-check{accent-color:#00c875;cursor:pointer;width:17px;height:17px}.bd-subrow td{background:#f7f8fa;height:36px;font-size:13px}.bd-tick{cursor:pointer;align-items:center;gap:10px;padding-left:36px;display:flex}.bd-tick--panel{border-bottom:1px solid var(--bd-line);padding:8px 0;font-size:14px}.bd-pop{z-index:60;background:var(--bg-card);border:1px solid var(--border-default);box-shadow:var(--shadow-lg);border-radius:10px;gap:4px;width:220px;max-height:60vh;padding:6px;display:grid;position:fixed;overflow:auto}.bd-popitem{color:#fff;font:inherit;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:0;border-radius:6px;height:34px;padding:0 8px;font-size:13px;overflow:hidden}.bd-popperson{font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:6px;font-size:13.5px;display:flex}.bd-popperson:hover{background:var(--gray-100)}.bd-scrim{z-index:70;background:#140a2840;position:fixed;inset:0}.bd-panel{background:var(--bg-card);z-index:71;width:min(500px,100%);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 30px #28145026}.bd-phead{border-bottom:1px solid var(--bd-line);padding:16px 18px 0}.bd-ptitle{overflow-wrap:anywhere;margin:0;font-size:19px}.bd-ptabs{gap:2px;margin-top:10px;display:flex;overflow-x:auto}.bd-ptabs button{font:inherit;color:var(--gray-500);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2.5px solid #0000;padding:9px 12px;font-size:14px;font-weight:600}.bd-ptabs button[aria-selected=true]{color:var(--purple-700);border-bottom-color:var(--purple-700)}.bd-pbody{flex:1;align-content:start;gap:12px;padding:16px 18px;display:grid;overflow:auto}.bd-composer{border:1px solid var(--border-default);border-radius:10px;gap:8px;padding:10px;display:grid}.bd-composer textarea{resize:vertical;font:inherit;color:var(--gray-900);background:0 0;border:0;font-size:15px}.bd-composer textarea:focus{outline:none}.bd-tags{flex-wrap:wrap;gap:6px;display:flex}.bd-tags button{border:1px solid var(--border-default);background:var(--bg-card);color:var(--gray-600);font:inherit;cursor:pointer;border-radius:99px;padding:4px 10px;font-size:12.5px;font-weight:600}.bd-tags button[aria-pressed=true]{background:var(--purple-700);border-color:var(--purple-700);color:#fff}.bd-upd{border:1px solid var(--bd-line);border-radius:10px;padding:10px 12px;font-size:14px}.bd-umeta{color:var(--gray-500);margin-bottom:4px;font-size:12.5px}.bd-umeta b{color:var(--gray-900)}.bd-time{display:grid}.bd-trow{border-bottom:1px solid var(--bd-line);grid-template-columns:62px 1fr 56px;gap:8px;padding:7px 0;font-size:13.5px;display:grid}.bd-mono{font-family:var(--font-mono,monospace);text-align:right}.bd-kv{grid-template-columns:130px 1fr;gap:8px 12px;margin:0;font-size:14px;display:grid}.bd-kv dt{color:var(--gray-500)}.bd-kv dd{overflow-wrap:anywhere;min-width:0;margin:0}.bd-cards{display:none}.bd-card{background:var(--bg-card);box-shadow:var(--shadow-sm);border-left:5px solid var(--gc);border-radius:10px;gap:8px;padding:12px;display:grid}.bd-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.bd-card-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bd-confetti{z-index:90;pointer-events:none;width:8px;height:12px;animation:1.6s ease-in forwards bd-fall;position:fixed;top:-10px}@keyframes bd-fall{to{opacity:.8;transform:translateY(105vh)rotate(540deg)}}@media (max-width:820px){.bd-gbody{display:none}.bd-cards{gap:8px;display:grid}}@media (prefers-reduced-motion:reduce){.bd-car{transition:none}}.bd-linkbtn{font:inherit;color:var(--purple-700);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:13px;font-weight:600}.bd-linkbtn:hover{text-decoration:underline}.bd-table th{position:relative}.bd-rz{cursor:col-resize;z-index:2;touch-action:none;width:9px;height:100%;position:absolute;top:0;right:0}.bd-rz:after{content:"";background:0 0;border-radius:2px;width:3px;transition:background .12s;position:absolute;top:20%;bottom:20%;right:0}.bd-rz:hover:after,.bd-resizing .bd-rz:after{background:#579bfc}.bd-resizing,.bd-resizing *{-webkit-user-select:none;user-select:none;cursor:col-resize!important}.bd-loading{color:var(--purple-700);align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.bd-spin{border:2px solid var(--purple-200);border-top-color:var(--purple-700);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite bd-spin}@keyframes bd-spin{to{transform:rotate(360deg)}}.bd.is-switching .bd-group{opacity:.45;pointer-events:none;transition:opacity .15s}.bd-edrow{align-items:center;gap:6px;display:flex}.bd-edrow .form-input{flex:1;min-width:0}.sidebar-row{position:relative}.sidebar-row .sidebar-link{padding-right:34px}.sidebar-star{width:28px;height:28px;color:var(--gray-400);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;place-items:center;transition:opacity .12s;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.sidebar-row:hover .sidebar-star,.sidebar-star:focus-visible,.sidebar-row.is-fav .sidebar-star{opacity:1}.sidebar-row.is-fav .sidebar-star{color:#f2a33a}.sidebar-star:hover{background:var(--gray-100);color:#f2a33a}@media (hover:none){.sidebar-star{opacity:.55}}.sidebar-more{text-align:left;width:calc(100% - 24px);min-height:36px;color:var(--purple-700);font:inherit;cursor:pointer;background:0 0;border:0;margin:4px 12px 0;padding:8px 15px;font-size:13px;font-weight:500;display:block}.sidebar-more:hover{text-decoration:underline}.sidebar-favhint{color:var(--gray-500);margin:4px 16px 6px;font-size:12px}:root[data-sidebar-collapsed=true] .sidebar-favhint,:root[data-sidebar-collapsed=true] .sidebar-more{display:none}[data-theme=dark] .sidebar-star:hover{background:#ffffff14}.bd-cards>*,.bd-card{min-width:0}.bd-card .bd-cname,.bd-card .bd-sub{white-space:normal;overflow-wrap:anywhere}.bd-card-top{align-items:center}.bd-card.is-sel{box-shadow:0 0 0 2px #579bfc}.bd-check--card{flex:none;width:22px;height:22px}.bd-pill--card{border-radius:8px;width:100%;height:40px;font-size:14px;font-weight:500;display:block}.bd-chip{color:#fff;font:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:13px;max-width:140px;height:26px;padding:0 9px;font-size:12px;overflow:hidden}.bd-settings{border-top:1px solid var(--bd-line);gap:10px;padding-top:12px;display:grid}.bd-settings-title{font-size:14px;font-weight:600}.bd-settings-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}@media (max-width:820px){.bd-tools .bd-period{flex:140px;min-width:0}.bd-tools .bd-search{flex:140px;min-width:0;max-width:none}.bd-bulk{top:calc(var(--topbar-height) + 4px)}.bd-bulk button{min-height:38px}}.bd-date{width:100%;font:inherit;color:var(--gray-700);background:0 0;border:1px solid #0000;border-radius:6px;padding:4px;font-size:13px}.bd-date:hover{border-color:var(--border-default)}.bd-cardate{color:var(--purple-700);cursor:pointer;border-radius:6px;align-items:center;padding:4px 6px;font-size:13px;font-weight:500;display:inline-flex;position:relative}.bd-cardate input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.bd-pdate{color:var(--gray-500);align-items:center;gap:8px;margin-top:8px;font-size:13px;display:inline-flex}.bd-pdate .form-input{width:auto;padding:4px 8px;font-size:13px}.bd-cal{gap:10px;display:grid}.bd-calhead{align-items:center;gap:8px;font-size:16px;display:flex}.bd-caltray{background:var(--bg-card);box-shadow:var(--shadow-sm);border:2px dashed #0000;border-radius:8px;padding:8px 10px}.bd-caltray.is-over{border-color:#579bfc}.bd-caltray-list{flex-wrap:wrap;gap:6px;max-height:140px;margin-top:6px;display:flex;overflow:auto}.bd-caltray-list .bd-calchip{width:auto;max-width:240px}.bd-calgrid{background:var(--bd-line);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr)) repeat(2,minmax(0,.55fr));gap:1px;display:grid;overflow:hidden}.bd-caldow{background:var(--gray-50);color:var(--gray-500);text-align:center;padding:6px 0;font-size:12px}.bd-calday{background:var(--bg-card);flex-direction:column;gap:3px;min-width:0;min-height:104px;padding:4px;display:flex}.bd-calday.is-out{background:var(--gray-25,#fafafa)}.bd-calday.is-out .bd-calday-n{color:var(--gray-300)}.bd-calday.is-today .bd-calday-n{color:var(--purple-700);font-weight:700}.bd-calday.is-over{outline-offset:-2px;outline:2px solid #579bfc}.bd-calday-n{color:var(--gray-500);justify-content:space-between;align-items:center;font-size:12px;display:flex}.bd-calcount{background:var(--gray-100);border-radius:99px;padding:0 6px;font-size:11px}.bd-calchip{width:100%;min-width:0;font:inherit;text-align:left;cursor:grab;background:#f5f6f8;border:0;border-left:4px solid;border-radius:4px;align-items:center;gap:4px;padding:2px 4px;font-size:12px;display:flex}.bd-calchip:hover{background:#e8f1fd}.bd-calchip .bd-av{flex:none;width:18px;height:18px;font-size:8px}.bd-calname{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.bd-calagenda{display:none}.bd-calagenda-day{background:var(--bg-card);box-shadow:var(--shadow-sm);border-radius:8px;gap:6px;padding:8px 10px;display:grid}.bd-calagenda-day .bd-calchip{padding:8px;font-size:14px}.bd-wl .bd-table th,.bd-wl .bd-table td{white-space:nowrap}.bd-wlcell{width:100%;height:40px;font:inherit;cursor:pointer;border:0;font-size:14px}@media (max-width:820px){.bd-calgrid{display:none}.bd-calagenda{gap:8px;display:grid}.bd-wl{display:block}.bd-wl .bd-table{min-width:640px}}.bd-avpair{align-items:center;display:inline-flex}.bd-avpair .bd-av+.bd-av{box-shadow:0 0 0 2px var(--bg-card);margin-left:-8px}.bd-seg--pop{width:100%;margin-bottom:4px}.bd-seg--pop button{flex:1;min-height:32px;padding:4px 8px;font-size:13px}.bd-pfields{flex-wrap:wrap;gap:6px 14px;margin-top:8px;display:flex}.bd-pfields .bd-pdate{margin-top:0}.bd-pfields select.form-input{width:auto;max-width:170px;padding:4px 8px;font-size:13px}.bd-wlname{font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-width:0;max-width:100%;padding:0;font-size:13.5px;display:inline-flex}.bd-wlname .bd-car{color:var(--gray-400)}.bd-wlopen td{white-space:normal;background:#f7f8fa;height:auto;padding:6px 4px}.bd-wllist{gap:3px;max-height:320px;display:grid;overflow:auto}.bd-wllist .bd-calname{white-space:normal;overflow-wrap:anywhere;line-height:1.25}.bd-traytoggle{width:100%;font:inherit;color:var(--gray-600);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-height:28px;padding:2px 0;font-size:13px;display:flex}.bd-traytoggle .bd-car{color:var(--gray-400)}.bd-traylink{color:var(--purple-700);margin-left:auto;font-weight:600}.mi{gap:14px;display:grid}.mi-step{font-size:15px;font-weight:700}.mi-list{gap:6px;display:grid}.mi-row{border-bottom:1px solid var(--border-light);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:10px;padding:6px 0;display:grid}.mi-name{min-width:0;display:grid}.mi-name b{overflow-wrap:anywhere;font-size:14px;font-weight:600}.mi-name .bd-sub{white-space:normal}.mi-opt{cursor:pointer;align-items:flex-start;gap:10px;padding:8px 0;font-size:14px;line-height:1.45;display:flex}.mi-opt input{width:18px;height:18px;accent-color:var(--purple-700);flex:none;margin-top:2px}.mi-diff{margin-top:8px;font-size:14px}.mi-diff summary{cursor:pointer;color:var(--purple-700);font-weight:600}.mi-cols{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:8px;display:grid}.mi-cols ul{margin:6px 0;padding-left:18px}.mi-result{border-radius:var(--radius-md);background:var(--success-light,#e7f8ef);gap:4px;margin-top:12px;padding:12px;font-size:14px;display:grid}@media (max-width:820px){.mi-row{grid-template-columns:1fr}}.bd-filter{flex:0 auto;width:auto;max-width:200px}.bd-add{margin-left:auto}.bd-addjob{z-index:72;background:var(--bg-card);width:min(440px,100% - 32px);box-shadow:var(--shadow-lg);border-radius:14px;gap:10px;padding:16px;display:grid;position:fixed;top:12vh;left:50%;transform:translate(-50%)}.bd-addjob .bd-seg{width:100%}.bd-addjob .bd-seg button{flex:1}.bd-addlist{gap:2px;max-height:260px;display:grid;overflow:auto}.bd-addpick{background:var(--purple-50);border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px;font-weight:600;display:flex}@media (max-width:820px){.bd-filter{flex:140px;min-width:0;max-width:none}.bd-add{margin-left:0}}.bd--compact .bd-table td,.bd--compact .bd-table td.bd-cell .bd-pill{height:30px}.bd--compact .bd-table .bd-sub{display:none}.bd--compact .bd-table .bd-av{width:22px;height:22px;font-size:9px}.bd--compact .bd-table .bd-note,.bd--compact .bd-table .bd-date{padding-top:2px;padding-bottom:2px}.bd--compact .bd-card .bd-sub{display:none}.bd--compact .bd-card{gap:6px;padding:8px 10px}.bd--compact .bd-card .bd-pill--card{height:32px}.bd-sort{font:inherit;color:inherit;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;min-width:16px;max-width:100%;min-height:20px;padding:0;overflow:hidden}.bd-sort:hover{color:var(--gray-900);text-decoration:underline}.bd-sort.is-on{color:var(--purple-700);font-weight:600}.bd-morefilters{flex-wrap:wrap;gap:8px;width:100%;display:flex}.bd-top{border-bottom:1px solid var(--border-light);flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:10px;display:flex}.bd-period2{border:1px solid var(--border-light);background:var(--bg-card);font:inherit;color:var(--gray-800);cursor:pointer;border-radius:8px;margin-bottom:6px;padding:6px 10px;font-size:14px;font-weight:600}.bd-tabs{scrollbar-width:none;flex:1;gap:2px;min-width:0;display:flex;overflow-x:auto}.bd-tabs::-webkit-scrollbar{display:none}.bd-tabs button[role=tab]{font:inherit;color:var(--gray-600);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 12px;font-size:14px}.bd-tabs button[role=tab]:hover{color:var(--gray-900);background:var(--gray-100);border-radius:6px 6px 0 0}.bd-tabs button[aria-selected=true]{color:var(--gray-900);border-bottom-color:var(--purple-700);font-weight:600}.bd-tabwrap{align-items:center;display:inline-flex}.bd-tabx{color:var(--gray-400);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:16px}.bd-tabx:hover{color:var(--danger)}.bd-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;display:flex}.bd-searchbox{height:34px;color:var(--gray-500);cursor:text;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.bd-searchbox:hover,.bd-searchbox:focus-within{border-color:var(--border-default);background:var(--bg-card)}.bd-searchbox input{font:inherit;width:120px;color:var(--gray-900);background:0 0;border:0;outline:none;font-size:14px}.bd-searchbox:focus-within input{width:200px}.bd-people{align-items:center;padding:0 4px;display:inline-flex}.bd-personbtn{cursor:pointer;background:0 0;border:0;border-radius:50%;margin-left:-4px;padding:2px}.bd-personbtn:first-child{margin-left:0}.bd-personbtn .bd-av{width:28px;height:28px;box-shadow:0 0 0 2px var(--bg-page)}.bd-personbtn.is-on .bd-av{box-shadow:0 0 0 2px var(--bg-page),0 0 0 4px var(--purple-700)}.bd-tool{height:34px;font:inherit;color:var(--gray-700);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:14px;display:inline-flex}.bd-tool:hover{background:var(--gray-100)}.bd-tool.is-on{color:#0b5cad;background:#dcebff}.bd-filterwrap{position:relative}.bd-fscrim{display:none}.bd-fpanel{z-index:65;width:min(820px,calc(100vw - var(--sidebar-width) - 60px));background:var(--bg-card);border-radius:12px;gap:12px;padding:16px 18px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 8px 30px #140a282e}.bd-fhead{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:15px;display:flex}.bd-fhead .bd-sub{margin-left:6px}.bd-fname{align-items:center;gap:8px;display:flex}.bd-fname .form-input{flex:1;min-width:0}.bd-fcols{grid-auto-columns:minmax(150px,1fr);grid-auto-flow:column;gap:12px;padding-bottom:4px;display:grid;overflow-x:auto}.bd-fcol{align-content:start;gap:6px;max-height:290px;padding-right:2px;display:grid;overflow-y:auto}.bd-ftitle{color:var(--gray-500);margin-bottom:2px;font-size:13px}.bd-fchip{font:inherit;color:var(--gray-800);cursor:pointer;text-align:left;background:#f5f6f8;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;min-height:36px;padding:7px 10px;font-size:13px;display:flex}.bd-fchip:hover{background:#ebedf2}.bd-fchip.is-on{background:#dcebff;border-color:#579bfc}.bd-fchip .bd-av{flex:none;width:20px;height:20px;font-size:8px}.bd-fdot{border-radius:50%;flex:none;width:12px;height:12px}.bd-flabel{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.bd-fn{color:var(--gray-500);font-size:12px}.bd-fclose{display:none}@media (max-width:820px){.bd-top{gap:6px}.bd-period2{margin-bottom:0}.bd-tabs{flex-basis:100%}.bd-searchbox{border-color:var(--border-default);background:var(--bg-card);flex:120px}.bd-searchbox input,.bd-searchbox:focus-within input{width:100%}.bd-fscrim{z-index:64;background:#140a284d;display:block;position:fixed;inset:0}.bd-fpanel{width:auto;max-height:82vh;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));border-radius:16px 16px 0 0;position:fixed;inset:auto 0 0;overflow-y:auto}.bd-fcols{grid-auto-columns:auto;grid-auto-flow:row;overflow:visible}.bd-fcol{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));max-height:none}.bd-ftitle{grid-column:1/-1}.bd-fclose{display:inline-flex}}.bd-fpanel{width:min(1000px,calc(100vw - var(--sidebar-width) - 60px))}.bd-fcols{grid-auto-columns:minmax(140px,1fr)}@media (max-width:820px){.bd-tooltext{display:none}.bd-searchbox{flex:90px;min-width:0}}.bd-trow--move{grid-template-columns:62px 1fr 56px}.bd-tmove{border:1px solid var(--border-light);background:var(--bg-card);font:inherit;color:var(--purple-700);cursor:pointer;border-radius:6px;grid-column:2/-1;justify-self:start;max-width:100%;padding:3px 6px;font-size:12.5px}.bd-ccline{color:var(--gray-500);flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;font-size:13px;display:flex}.bd-ccline code{font-family:var(--font-mono,monospace);color:var(--gray-800);background:var(--gray-100);overflow-wrap:anywhere;border-radius:5px;padding:2px 6px;font-size:12.5px}.bd-files{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.bd-file{background:var(--gray-100);border-radius:8px;align-items:center;gap:8px;max-width:100%;padding:6px 10px;font-size:13px;display:inline-flex}.bd-file a{color:var(--purple-700);overflow-wrap:anywhere;align-items:center;gap:6px;font-weight:600;text-decoration:none;display:inline-flex}.bd-file a:hover{text-decoration:underline}.bd-file .bd-filesp{color:var(--gray-600);font-size:12px;font-weight:500}.mi-addr{font-family:var(--font-mono,monospace);background:var(--gray-100);overflow-wrap:anywhere;border-radius:5px;padding:3px 7px;font-size:12.5px}.bd-carry{grid-template-rows:auto auto auto 1fr auto;width:min(560px,100% - 32px);max-height:88vh;top:6vh;overflow:hidden}.bd-carrylist{border-top:1px solid var(--border-light);gap:12px;min-height:0;max-height:56vh;padding-top:8px;display:grid;overflow-y:auto}.bd-carryhead{background:var(--bg-card);justify-content:space-between;align-items:center;margin-bottom:4px;padding:4px 0;font-size:13.5px;display:flex;position:sticky;top:0}.bd-carryrow{border-bottom:1px solid var(--border-light);cursor:pointer;align-items:center;gap:10px;padding:6px 0;font-size:14px;display:flex}
