@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap");:root{--primary:#1a3a5c;--primary-hover:#152f4c;--primary-light:#e8f0f8;--primary-text:#fff;--bg:#e8e5dc;--surface:#fff;--surface-alt:#f9f8f4;--surface-2:#f7f6f3;--border:rgba(0,0,0,.08);--border-strong:rgba(0,0,0,.14);--text:#1a1a1a;--text-muted:#1a1a1a;--text-faint:#8a8a8a;--sidebar-bg:#1a3a5c;--sidebar-text:hsla(0,0%,100%,.85);--sidebar-active:hsla(0,0%,100%,.15);--sidebar-hover:hsla(0,0%,100%,.08);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#0284c7;--info-bg:#e0f2fe;--row-divider:rgba(0,0,0,.22);--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:14px;--shadow-sm:0 1px 3px rgba(0,0,0,.06);--shadow-md:0 4px 12px rgba(0,0,0,.08);--font:"DM Sans",-apple-system,sans-serif;--font-mono:"DM Mono",monospace;--row-height:38px;--sidebar-width:165px;--topbar-height:48px}[data-theme=finnacc]{--primary:#0077b6;--primary-hover:#0096c7;--primary-light:#ebf8ff;--primary-text:#fff;--bg:#ebf8ff;--surface:#fff;--surface-alt:#f4fbff;--surface-2:#d4f0ff;--border:rgba(0,59,92,.1);--border-strong:rgba(0,59,92,.18);--text:#1e293b;--text-muted:#1e293b;--text-faint:#64748b;--sidebar-bg:#003b5c;--sidebar-text:hsla(0,0%,100%,.88);--sidebar-active:rgba(72,202,228,.22);--sidebar-hover:hsla(0,0%,100%,.1);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#00a8e8;--info-bg:#d4f0ff;--row-divider:rgba(0,59,92,.16);--shadow-sm:0 1px 3px rgba(0,59,92,.06);--shadow-md:0 4px 16px rgba(0,59,92,.08)}[data-theme=crisp]{--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#dbeafe;--primary-text:#fff;--bg:#fff;--surface:#fff;--surface-alt:#fafafa;--surface-2:#f5f7fa;--border:rgba(15,23,42,.06);--border-strong:rgba(15,23,42,.1);--text:#0f172a;--text-muted:#0f172a;--text-faint:#64748b;--sidebar-bg:#1f2937;--sidebar-text:hsla(0,0%,100%,.88);--sidebar-active:hsla(0,0%,100%,.16);--sidebar-hover:hsla(0,0%,100%,.08);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#2563eb;--info-bg:#dbeafe;--row-divider:rgba(15,23,42,.08);--shadow-sm:0 1px 2px rgba(15,23,42,.04);--shadow-md:0 2px 8px rgba(15,23,42,.06)}[data-theme=slate]{--primary:#2563eb;--primary-hover:#1d4ed8;--primary-light:#dbeafe;--primary-text:#fff;--bg:#f8fafc;--surface:#fff;--surface-alt:#f5f7fa;--surface-2:#f1f5f9;--border:rgba(0,0,0,.08);--border-strong:rgba(0,0,0,.14);--text:#0f172a;--text-muted:#0f172a;--text-faint:#94a3b8;--sidebar-bg:#1e293b;--sidebar-text:hsla(0,0%,100%,.85);--sidebar-active:hsla(0,0%,100%,.15);--sidebar-hover:hsla(0,0%,100%,.08);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#0284c7;--info-bg:#e0f2fe;--row-divider:rgba(0,0,0,.18);--shadow-sm:0 1px 3px rgba(0,0,0,.06);--shadow-md:0 4px 12px rgba(0,0,0,.08)}[data-theme=charcoal]{--primary:#60a5fa;--primary-hover:#3b82f6;--primary-light:#1e3a5f;--primary-text:#fff;--bg:#2d3340;--surface:#353c4a;--surface-alt:#3a4250;--surface-2:#2a3140;--border:hsla(0,0%,100%,.12);--border-strong:hsla(0,0%,100%,.22);--text:#f1f5f9;--text-muted:#cbd5e1;--text-faint:#94a3b8;--sidebar-bg:#1f2937;--sidebar-text:hsla(0,0%,100%,.85);--sidebar-active:hsla(0,0%,100%,.15);--sidebar-hover:hsla(0,0%,100%,.08);--success:#22c55e;--success-bg:#14532d;--warning:#f59e0b;--warning-bg:#451a03;--danger:#ef4444;--danger-bg:#450a0a;--info:#38bdf8;--info-bg:#0c1a2e;--row-divider:hsla(0,0%,100%,.2);--shadow-sm:0 1px 3px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4)}[data-theme=dark],[data-theme=midnight]{--primary:#3b82f6;--primary-hover:#2563eb;--primary-light:#1e3a5f;--primary-text:#fff;--bg:#0f1117;--surface:#1a1d27;--surface-alt:#1f2230;--surface-2:#13151f;--border:hsla(0,0%,100%,.12);--border-strong:hsla(0,0%,100%,.2);--text:#e8e8e8;--text-muted:#b3b3b3;--text-faint:#8c8c8c;--sidebar-bg:#0f1117;--sidebar-text:hsla(0,0%,100%,.75);--sidebar-active:hsla(0,0%,100%,.1);--sidebar-hover:hsla(0,0%,100%,.05);--success:#22c55e;--success-bg:#14532d;--warning:#f59e0b;--warning-bg:#451a03;--danger:#ef4444;--danger-bg:#450a0a;--info:#38bdf8;--info-bg:#0c1a2e;--row-divider:hsla(0,0%,100%,.2);--shadow-sm:0 1px 3px rgba(0,0,0,.3);--shadow-md:0 4px 12px rgba(0,0,0,.4)}[data-theme=sky]{--primary:#0284c7;--primary-hover:#0369a1;--primary-light:#e0f2fe;--primary-text:#fff;--bg:#eaf3fa;--surface:#fff;--surface-alt:#f4f8fc;--surface-2:#e2eef7;--border:rgba(15,23,42,.06);--border-strong:rgba(15,23,42,.1);--text:#0c4a6e;--text-muted:#1e3a52;--text-faint:#5a7689;--sidebar-bg:#0c3a52;--sidebar-text:hsla(0,0%,100%,.88);--sidebar-active:hsla(0,0%,100%,.16);--sidebar-hover:hsla(0,0%,100%,.08);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#0284c7;--info-bg:#e0f2fe;--row-divider:rgba(15,23,42,.08);--shadow-sm:0 1px 2px rgba(2,132,199,.06);--shadow-md:0 2px 8px rgba(2,132,199,.1)}[data-theme=sage]{--primary:#047857;--primary-hover:#065f46;--primary-light:#d1fae5;--primary-text:#fff;--bg:#e8efea;--surface:#fff;--surface-alt:#f1f5f2;--surface-2:#dde7e0;--border:rgba(15,40,30,.08);--border-strong:rgba(15,40,30,.12);--text:#14532d;--text-muted:#166534;--text-faint:#5a6e62;--sidebar-bg:#1b3d2c;--sidebar-text:hsla(0,0%,100%,.9);--sidebar-active:hsla(0,0%,100%,.15);--sidebar-hover:hsla(0,0%,100%,.08);--success:#16a34a;--success-bg:#dcfce7;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#0284c7;--info-bg:#e0f2fe;--row-divider:rgba(15,40,30,.08);--shadow-sm:0 1px 2px rgba(15,40,30,.05);--shadow-md:0 2px 8px rgba(15,40,30,.08)}[data-theme=mayfair]{--font:"Manrope","DM Sans",-apple-system,sans-serif;--primary:#24364d;--primary-hover:#1a293c;--primary-light:#e9eef4;--primary-text:#fff;--bg:#f6f4ee;--surface:#fffdf9;--surface-alt:#faf8f2;--surface-2:#f0ede4;--border:rgba(36,46,38,.08);--border-strong:rgba(36,46,38,.14);--text:#1d2433;--text-muted:#4c5566;--text-faint:#8a8f99;--sidebar-bg:#101c2c;--sidebar-text:hsla(41,42%,93%,.88);--sidebar-active:rgba(176,141,62,.28);--sidebar-hover:hsla(0,0%,100%,.07);--success:#2f7d4f;--success-bg:#e4f1e8;--warning:#a16207;--warning-bg:#f7eeda;--danger:#b3362e;--danger-bg:#f8e6e4;--info:#9a7b34;--info-bg:#f3ead6;--row-divider:rgba(36,46,38,.1);--shadow-sm:0 1px 2px rgba(29,36,51,.05),0 2px 8px rgba(29,36,51,.04);--shadow-md:0 2px 6px rgba(29,36,51,.06),0 10px 28px rgba(29,36,51,.07)}[data-theme=mayfair] h1,[data-theme=mayfair] h2{font-family:Fraunces,Georgia,serif;letter-spacing:.01em;font-weight:600}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{font-family:var(--font);font-size:13px;color:var(--text);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s}h1{font-size:22px}h1,h2{font-weight:600}h2{font-size:18px}h3{font-size:15px}h3,h4{font-weight:600}h4,p{font-size:13px}p{line-height:1.6}table,table td,table td *,table th{font-family:var(--font)!important}table td,table th{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong,rgba(0,0,0,.18));border-radius:8px;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-faint,rgba(0,0,0,.32))}*{scrollbar-width:thin;scrollbar-color:var(--border-strong,rgba(0,0,0,.18)) transparent}.pf-sidebar-scroll{scrollbar-color:hsla(0,0%,100%,.32) transparent}.pf-sidebar-scroll::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:8px;background-clip:padding-box}.pf-sidebar-scroll::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}::selection{background:var(--primary-light);color:var(--text)}:focus-visible{outline:2px solid var(--primary);outline-offset:1px;border-radius:4px}a,button,input,select,textarea{transition:background-color .13s ease,border-color .13s ease,color .13s ease,box-shadow .13s ease,opacity .13s ease}[role=button],button,input[type=checkbox],input[type=radio],label[for],select,summary{cursor:pointer}[role=button][aria-disabled=true],button:disabled,button[aria-disabled=true],button[disabled],input:disabled,select:disabled{cursor:not-allowed}.app-layout{height:100vh}.app-layout,.main-content{display:flex;overflow:hidden}.main-content{flex:1 1;flex-direction:column;margin-left:var(--sidebar-width)}.btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-md);border:.5px solid var(--border-strong);background:var(--surface);color:var(--text);font-family:var(--font);font-size:12px;font-weight:500;cursor:pointer;transition:all .12s;white-space:nowrap;text-decoration:none}.btn:hover{background:var(--surface-2)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.btn-primary:hover{background:var(--primary-hover)}.btn-success{background:var(--success-bg);color:var(--success);border-color:var(--success)}.btn-danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.btn-warning{background:var(--warning-bg);color:var(--warning);border-color:var(--warning)}.btn-sm{padding:4px 9px;font-size:11px}.btn-lg{padding:9px 18px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.form-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.form-label .required{color:var(--danger);margin-left:2px}.form-label .hint{font-weight:400;color:var(--text-faint);font-size:10px;margin-left:4px;text-transform:none;letter-spacing:0}input.form-input,select.form-input,textarea.form-input{width:100%;padding:8px 10px;border:.5px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:var(--font);font-size:13px;outline:none;transition:border-color .15s}input.form-input:focus,select.form-input:focus,textarea.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}input.form-input.error{border-color:var(--danger)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:12px;gap:12px}.card{background:var(--surface);border:.5px solid var(--border-strong);border-radius:var(--radius-lg);padding:16px}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:10px;border-bottom:.5px solid var(--border)}.card-title{font-size:13px;font-weight:600}.pill{display:inline-flex;align-items:center;padding:2px 9px;border-radius:20px;font-size:10.5px;font-weight:600;white-space:nowrap;cursor:pointer;border:none;font-family:var(--font);transition:filter .1s}.pill:hover{filter:brightness(.92)}.pill-not-started{background:#e8e8e8;color:#444}.pill-in-progress{background:#dbeafe;color:#1e4fa0}.pill-waiting{background:#fef3c7;color:#92400e}.pill-in-review{background:#ede9fe;color:#5b21b6}.pill-done{background:#d1fae5;color:#065f46}.pill-overdue{background:#fee2e2;color:#991b1b}.pill-on-hold{background:#f1f5f9;color:#475569}.pill-sent-hmrc{background:#fce7f3;color:#9d174d}.pill-approved{background:#ecfdf5;color:#065f46}.badge{display:inline-block;padding:1px 7px;border-radius:4px;font-size:10px;font-weight:600}.badge-blue{background:#dbeafe;color:#1e4fa0}.badge-green{background:#dcfce7;color:#166534}.badge-amber{background:#fef3c7;color:#92400e}.badge-purple{background:#ede9fe;color:#5b21b6}.badge-red{background:#fee2e2;color:#991b1b}.badge-grey{background:#e8e8e8;color:#444}.badge-teal{background:#ccfbf1;color:#0f766e}.badge-mtd{background:#fdf4ff;color:#6b21a8;border:.5px solid #d8b4fe}.data-table{width:100%;border-collapse:collapse;font-size:12px}.data-table thead th{position:-webkit-sticky;position:sticky;top:0;z-index:10;background:var(--surface-2);border-bottom:.5px solid var(--border-strong);border-right:.5px solid var(--border);padding:0;height:30px;text-align:left;font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.3px;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.data-table tbody tr{border-bottom:.5px solid var(--border);transition:background .07s}.data-table tbody tr:hover{background:var(--surface-2)}.data-table tbody td{border-right:.5px solid var(--border);padding:0 10px;height:var(--row-height);vertical-align:middle;white-space:nowrap;overflow:hidden;max-width:180px;text-overflow:ellipsis}.data-table tbody tr.done-row{opacity:.42}.data-table tbody tr.done-row td:first-child{text-decoration:line-through}.pf-board-row>td{background:inherit}.pf-row-menu-btn{opacity:0;transition:opacity .1s}.pf-board-row:hover .pf-row-menu-btn,tr:hover>td .pf-row-menu-btn{opacity:.5}.pf-row-menu-btn:hover{opacity:1!important}.avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;flex-shrink:0}.avatar-sm{width:18px;height:18px;font-size:7.5px}.avatar-lg{width:36px;height:36px;font-size:13px}.av-blue{background:#bfdbfe;color:#1e40af}.av-green{background:#bbf7d0;color:#166534}.av-amber{background:#fde68a;color:#92400e}.av-purple{background:#ddd6fe;color:#5b21b6}.av-coral{background:#fecaca;color:#991b1b}.av-teal{background:#99f6e4;color:#0f766e}.date-text{font-family:var(--font-mono);font-size:11px}.date-overdue{color:var(--danger);font-weight:600}.date-soon{color:var(--warning)}.date-ok{color:var(--text-muted)}.spinner{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--primary);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.toast-container{position:fixed;bottom:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:8px}.toast{background:#1e293b;color:#fff;padding:10px 14px;border-radius:var(--radius-md);font-size:12.5px;font-weight:500;max-width:300px;line-height:1.4;box-shadow:var(--shadow-md);animation:slideIn .2s ease}.toast.success{background:#166534}.toast.error{background:#991b1b}.toast.warning{background:#92400e}@keyframes slideIn{0%{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:500;display:flex;align-items:flex-start;justify-content:center;padding-top:60px}.modal{background:var(--surface);border-radius:var(--radius-lg);border:.5px solid var(--border-strong);width:500px;max-width:96%;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.modal-wide{width:680px}.modal-header{padding:14px 18px;border-bottom:.5px solid var(--border);display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;flex-shrink:0}.modal-close{cursor:pointer;color:var(--text-muted);font-size:18px}.modal-body{padding:18px;overflow-y:auto;flex:1 1;display:flex;flex-direction:column;gap:12px}.modal-footer{padding:12px 18px;border-top:.5px solid var(--border);display:flex;justify-content:flex-end;gap:8px;flex-shrink:0}.info-box{background:var(--info-bg);border:.5px solid var(--info);border-radius:var(--radius-md);color:var(--info)}.info-box,.warn-box{padding:10px 12px;font-size:12px;line-height:1.6}.warn-box{background:var(--warning-bg);border:.5px solid var(--warning);border-radius:var(--radius-md);color:var(--warning)}.error-box{background:var(--danger-bg);border:.5px solid var(--danger);border-radius:var(--radius-md);color:var(--danger)}.error-box,.success-box{padding:10px 12px;font-size:12px;line-height:1.6}.success-box{background:var(--success-bg);border:.5px solid var(--success);border-radius:var(--radius-md);color:var(--success)}@media (max-width:768px){:root{--sidebar-width:0px}.main-content{margin-left:0}}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.flex-1{flex:1 1}.w-full{width:100%}.text-muted{color:var(--text-muted)}.text-sm{font-size:11px}.font-mono{font-family:var(--font-mono)}.font-600{font-weight:600}.hidden{display:none}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}