:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand-blue:#0a5fd6;--brand-red:#e0392f;--brand-gradient:linear-gradient(120deg, var(--brand-blue) 0%, var(--brand-red) 100%);--ink:#17171c;--bg:#f4f4f7;--surface:#fff;--card-bg:#fff;--card-border:#e3e3e8;--tile-border:#17171c;--row-alt:#17171c06;--row-hover:#0a5fd60f;--muted:#6b6b76;--pos:#16823e;--hover:#17171c0d}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f2f3f8;--bg:#15171e;--surface:#1e212b;--card-bg:#1e212b;--card-border:#3a4150;--tile-border:#57607280;--row-alt:#ffffff0a;--row-hover:#60a0ff29;--muted:#b2b8c6;--pos:#47d67f;--hover:#ffffff17}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f2f3f8;--bg:#15171e;--surface:#1e212b;--card-bg:#1e212b;--card-border:#3a4150;--tile-border:#57607280;--row-alt:#ffffff0a;--row-hover:#60a0ff29;--muted:#b2b8c6;--pos:#47d67f;--hover:#ffffff17}*,:before,:after{box-sizing:border-box}html,body{height:100%}html.modal-open{overflow:hidden}html.modal-open.modal-gutter{scrollbar-gutter:stable}.lt-body,.time-modal{overscroll-behavior:contain}body{background:radial-gradient(ellipse 900px 600px at 0% 0%, #0a5fd61a, transparent 60%), radial-gradient(ellipse 900px 600px at 100% 100%, #e0392f1a, transparent 60%), var(--bg);color:var(--ink);background-repeat:no-repeat;background-attachment:fixed;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.wrap{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2.5rem;min-height:100vh;padding:3rem;display:flex}.logo{width:auto;height:96px}.card{background:radial-gradient(ellipse 500px 320px at 0% 0%, #0a5fd61f, transparent 60%), radial-gradient(ellipse 500px 320px at 100% 100%, #e0392f1f, transparent 60%), var(--card-bg);border:1px solid var(--tile-border);width:100%;max-width:600px;box-shadow:0 10px 30px var(--hover);border-radius:20px;padding:4rem 5rem}.card h1{margin:0 0 1rem;font-size:2.25rem}button,a.btn{background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:.95rem 2.2rem;font-size:1.05rem;font-weight:600;text-decoration:none;transition:opacity .15s,transform .15s;display:inline-block}button:hover,a.btn:hover{opacity:.92;transform:translateY(-1px)}.muted{color:var(--muted);margin:0 0 2rem;font-size:1.05rem}.notice{color:var(--muted);margin:2rem 0 0;font-size:.8rem;line-height:1.6}.app{flex-direction:column;min-height:100vh;display:flex}.nav{z-index:10;background:var(--surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--card-border);position:sticky;top:0}.nav-inner{align-items:center;gap:1.5rem;max-width:1100px;margin:0 auto;padding:.7rem 1.5rem;display:flex}.nav-brand{flex-shrink:0;align-items:center;display:flex}.nav-brand img{width:auto;height:32px}.nav-links{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.nav-link{color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:.3rem;padding:.5rem .9rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.nav-link:hover{color:var(--ink);background:var(--hover)}.nav-link.is-active{color:var(--brand-blue);background:#0a5fd61a}.nav-link-ext{opacity:.7;font-size:.8em}.nav-user{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.nav-user-name{color:var(--muted);white-space:nowrap;font-size:.9rem}.nav-signout{color:var(--muted);border:1px solid var(--card-border);background:0 0;border-radius:999px;padding:.45rem 1rem;font-size:.9rem;font-weight:600}.nav-signout:hover{color:var(--ink);background:var(--hover);opacity:1;transform:none}.app-main{flex:1}.page{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem 4rem}.page-head{margin-bottom:2rem}.page-head h1{margin:0 0 .4rem;font-size:1.9rem}.page-head .muted{margin:0;font-size:1rem}.page-loading{justify-content:center;align-items:center;min-height:40vh;display:flex}.page-spinner{border:3px solid var(--card-border);border-top-color:var(--brand-red);border-radius:50%;width:34px;height:34px;animation:.7s linear infinite page-spin}@keyframes page-spin{to{transform:rotate(360deg)}}.module-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;display:grid}.module-card{color:inherit;background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:1.4rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block}.module-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #17171c14}.module-card-top{justify-content:flex-start;align-items:center;gap:.75rem;margin-bottom:.6rem;display:flex}.module-card-title{font-size:1.1rem;font-weight:700}.module-card-desc{color:var(--muted);margin:0;font-size:.92rem;line-height:1.5}.module-card-replaces{color:var(--muted);border-top:1px solid var(--card-border);margin:.9rem 0 0;padding-top:.7rem;font-size:.78rem}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.68rem;font-weight:700}.badge-live{color:var(--brand-blue);background:#0a5fd61f}.badge-building{color:var(--brand-red);background:#e0392f1f}.badge-planned{color:var(--muted);background:#17171c14}.panel{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:1.75rem}.panel-title{margin:0 0 1rem;font-size:1.3rem}.checklist{color:var(--muted);margin:.75rem 0 0;padding-left:1.25rem;line-height:1.8}.link{color:var(--brand-blue);font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}.subtabs{border-bottom:1px solid var(--card-border);gap:.25rem;margin-top:1.25rem;display:flex}.subtab{color:var(--muted);border-bottom:2px solid #0000;margin-bottom:-1px;padding:.55rem .9rem;font-size:.95rem;font-weight:600;text-decoration:none}.subtab:hover{color:var(--ink)}.subtab.is-active{color:var(--brand-blue);border-bottom-color:var(--brand-blue)}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.kpi{background:var(--card-bg);border:1px solid var(--card-border);border-radius:14px;flex-direction:column;gap:.2rem;padding:1.1rem 1.3rem;display:flex}.kpi-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:700}.kpi-value{font-size:1.5rem;font-weight:700}.kpi-sub{color:var(--muted);font-size:.82rem}.panel+.panel{margin-top:1.25rem}.panel-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.panel-head .panel-title{margin:0}.table{border-collapse:collapse;width:100%;font-size:.92rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--card-border);vertical-align:top;padding:.55rem .6rem}.table th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem}.table .num{text-align:right;white-space:nowrap}.table td,.table th{white-space:nowrap}.invoice-lines td,.invoice-lines th,.line-editor td,.line-editor th{white-space:normal}.table-tight td,.table-tight th{padding-top:.4rem;padding-bottom:.4rem}.cell-clip{text-overflow:ellipsis;max-width:18rem;overflow:hidden}.cell-flex{text-overflow:ellipsis;width:100%;max-width:0;overflow:hidden}.table-scroll{overflow-x:auto}.table.iv-pays td{white-space:normal;overflow-wrap:anywhere}.table.iv-pays th{white-space:nowrap}.dv2>.iv-below .rv-card-head{margin-bottom:14px}.table.iv-pays .num,.table.iv-pays .iv-date{white-space:nowrap;overflow-wrap:normal}.chk{align-items:center;gap:.5rem;flex-direction:row!important;font-weight:500!important}.table tfoot td{border-bottom:none;font-weight:600}.table tfoot .invoice-total td{border-top:2px solid var(--ink);font-size:1.05rem}.pill{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#17171c14;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.pill-draft{color:var(--muted);background:#17171c14}.pill-sent{color:var(--brand-blue);background:#0a5fd624}.pill-overdue{color:var(--brand-red);background:#e0392f24}.pill-paid{color:#16823e;background:#16823e29}.pill-void{color:var(--muted);background:#17171c1a;text-decoration:line-through}.pill-issued{color:#16823e;background:#16823e29}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;margin-top:.75rem;display:grid}.form-grid label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}.form-grid .col-2{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;padding:.5rem .6rem;font-weight:400}.form-grid input:focus,.form-grid textarea:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.disclosure summary{cursor:pointer;color:var(--brand-blue);padding:.3rem 0;font-weight:600}.disclosure[open] summary{margin-bottom:.5rem}.disclosure summary.btn{background:var(--brand-gradient);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600;text-decoration:none;list-style:none;transition:opacity .15s,transform .15s;display:inline-block}.disclosure summary.btn::-webkit-details-marker{display:none}.disclosure summary.btn::marker{content:""}.disclosure summary.btn:hover{opacity:.92;transform:translateY(-1px)}.expenses-panel .panel-head{align-items:flex-start}.filterbar{flex-wrap:wrap;gap:.4rem;margin:.75rem 0 1rem;display:flex}.filter-chip{text-transform:capitalize;color:var(--muted);border:1px solid var(--card-border);border-radius:999px;padding:.3rem .8rem;font-size:.85rem;font-weight:600;text-decoration:none}.filter-chip.is-active{color:#fff;background:var(--brand-blue);border-color:var(--brand-blue)}.btn-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.btn-row form{display:inline}.btn-ghost{color:var(--ink);border:1px solid var(--card-border);background:0 0;border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600}.btn-ghost:hover{background:var(--hover);opacity:1;transform:none}.btn-link-danger{color:var(--brand-red);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;font-weight:600}.btn-link-danger:hover{opacity:1;text-decoration:underline;transform:none}.kv{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.6rem 1.5rem;margin:.5rem 0 0;display:grid}.kv dt{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.78rem}.kv dd{margin:.1rem 0 0}.kv dd .kv-inline-form{display:inline}.kv dd.kv-lines span{white-space:nowrap;display:block}.client-facts{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.6rem;margin:.25rem 0 .75rem;display:grid}.client-facts .cf-tile{border:1px solid var(--card-border);background:var(--row-alt);border-radius:10px;min-width:0;padding:.7rem .85rem}.client-facts .cf-tall{grid-row:span 2}.client-facts dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem;font-weight:600}.client-facts dd{overflow-wrap:anywhere;margin:.3rem 0 0;font-weight:500;line-height:1.45}.client-facts .cf-lines{flex-direction:column;gap:.15rem;display:flex}.client-facts .cf-lines span{overflow-wrap:normal;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.client-facts .cf-address{white-space:pre-line}.client-facts .cf-link{color:inherit;text-decoration:none}.client-facts .cf-link:hover{color:var(--brand-blue);text-decoration:underline}.client-facts .cf-note,.client-facts .cf-empty{color:var(--muted);font-weight:400}.client-facts .cf-pos{color:var(--pos)}.plain-list{margin:.5rem 0 0;padding:0;line-height:2;list-style:none}.invoice-sheet{max-width:780px}.invoice-top{flex-wrap:wrap;justify-content:flex-start;gap:1.5rem;display:flex}.invoice-title{margin:0 0 .3rem;font-size:1.3rem}.invoice-meta{text-align:right}.invoice-meta p{margin:.15rem 0}.invoice-number{font-size:1.15rem;font-weight:700}.invoice-billto{margin:1.5rem 0}.invoice-billto p{margin:.15rem 0}.invoice-lines{margin-top:.5rem}.invoice-bank{white-space:pre-line;margin-top:1.25rem}@media print{.nav,.subtabs,.sidebar,.sidebar-toggle,.sidebar-scrim,.theme-switch,.toast,.fab-time-entry,.fab-timer-badge,.no-print{display:none!important}body{background:#fff}.shell{display:block}.shell-main{border-left:none}.page{padding:0}.panel{box-shadow:none;background:0 0;border:none;padding:0}.invoice-sheet{max-width:none}.dv2,.shell-main>.topbar+.dv2,.shell-main>.topbar+.page>.dv2{gap:0!important;max-width:none!important;margin-top:0!important;padding:0!important}}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.stack{flex-direction:column;gap:1.25rem;display:flex}.line-editor{margin:.25rem 0;overflow-x:auto}.line-editor .table td,.line-editor .table th{padding:.35rem .4rem}.line-editor input{font:inherit;border:1px solid var(--card-border);background:var(--surface);width:100%;color:var(--ink);border-radius:6px;padding:.4rem .5rem}.line-editor input:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.line-editor input.tar{text-align:right}.line-editor .line-desc{vertical-align:top}.line-editor .table .line-no{vertical-align:top;width:2.25rem;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.8rem}.line-editor .line-add{flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:.5rem;display:flex}.item-pick-pop{border:1px solid var(--card-border);background:var(--surface);border-radius:10px;flex-basis:100%;max-width:560px;padding:10px;box-shadow:0 6px 20px #10182814}.item-pick-list{max-height:280px;margin:8px 0 0;padding:0;list-style:none;overflow-y:auto}.item-pick-list button{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 10px;display:flex}.item-pick-list button.is-at{background:color-mix(in srgb, var(--brand-blue) 10%, transparent)}.item-pick-list small{color:var(--muted);font-size:.75rem;display:block}.item-pick-rate{text-align:right;font-variant-numeric:tabular-nums;flex:none}.item-pick-none{color:var(--muted);padding:8px 10px;font-size:.875rem}.item-pick-manage{margin:8px 10px 0;font-size:.8125rem;display:inline-block}.item-active{align-self:end;align-items:center;gap:8px;display:flex}.item-active input{width:auto}.item-edit-note{color:var(--muted);margin:0;font-size:.8125rem}tr.is-inactive td{color:var(--muted)}.item-search input{border:1px solid var(--card-border);background:var(--surface);width:220px;max-width:100%;color:var(--ink);font:inherit;border-radius:8px;padding:.45rem .7rem}.item-modal-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.item-delete{color:var(--danger,#d23a4c)}.item-inactive-tag{background:color-mix(in srgb, var(--muted) 15%, transparent);color:var(--muted);border-radius:999px;margin-left:8px;padding:1px 7px;font-size:.6875rem}.line-editor td.line-tools{white-space:nowrap;vertical-align:top;padding-top:.6rem}.line-move{vertical-align:middle;align-items:center;gap:2px;margin-right:4px;display:inline-flex}.line-grip{cursor:grab;color:var(--muted);-webkit-user-select:none;user-select:none;padding:0 4px;font-size:1rem;line-height:1}.line-arrow{border:1px solid var(--card-border);background:var(--surface);width:22px;height:22px;color:var(--ink);cursor:pointer;border-radius:5px;justify-content:center;align-items:center;padding:0;font-size:.75rem;line-height:1;display:inline-flex}.line-arrow:disabled{opacity:.35;cursor:default}.line-editor td.line-tools>*{vertical-align:middle}.line-editor tr.is-dragging{opacity:.45}.line-editor tr.is-drop-above td{box-shadow:inset 0 2px 0 var(--brand-blue)}.line-editor tr.is-drop-below td{box-shadow:inset 0 -2px 0 var(--brand-blue)}.line-editor .line-from{color:var(--muted);margin:.3rem 0 0;font-size:.75rem}.line-editor .line-heading{font-weight:600}.line-editor .line-billing{width:100%;margin-top:.3rem;font-size:.85rem;display:block}.line-editor textarea{font:inherit;border:1px solid var(--card-border);background:var(--surface);width:100%;min-width:16rem;color:var(--ink);resize:vertical;border-radius:6px;margin-top:.3rem;padding:.4rem .5rem;font-size:.85rem;display:block}.line-editor textarea:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.invoice-subject{margin:1rem 0;font-weight:600}.toast{z-index:50;color:#fff;background:#16823e;border-radius:10px;align-items:center;gap:.5rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:600;animation:.2s toast-in;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 24px #17171c33}.toast-tick{font-weight:700}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))}}.pager{color:var(--muted);flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1rem;font-size:.85rem;display:flex}.pager-per{align-items:center;gap:.35rem;display:inline-flex}.pager-perlink{color:var(--muted);border:1px solid var(--card-border);border-radius:6px;padding:.15rem .5rem;text-decoration:none}.pager-perlink.is-active{color:#fff;background:var(--brand-blue);border-color:var(--brand-blue)}.pager-nav{align-items:center;gap:.6rem;margin-left:auto;display:inline-flex}.pager-btn{color:var(--brand-blue);font-weight:600;text-decoration:none}.pager-btn.is-disabled{color:var(--muted);pointer-events:none;opacity:.5}.pager-pageno{color:var(--ink)}.pager-nav{flex-wrap:wrap;gap:.35rem}.pager-btn{margin:0 .25rem}.pager-num{text-align:center;min-width:1.9rem;color:var(--muted);border:1px solid var(--card-border);border-radius:6px;padding:.15rem .45rem;text-decoration:none}.pager-num:hover{border-color:var(--brand-blue)}.pager-num.is-active{color:#fff;background:var(--brand-blue);border-color:var(--brand-blue)}.pager-gap{color:var(--muted)}.al-pager{padding:0 16px 14px}.al-pager:empty{display:none}.shell{min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--card-border);flex-direction:column;flex-shrink:0;align-self:flex-start;gap:1.1rem;width:268px;height:100vh;padding:1.1rem .9rem;display:flex;position:sticky;top:0}.sidebar-head{justify-content:space-between;align-items:center;min-height:34px;display:flex}.sidebar-brand{align-items:center;padding:0 .4rem;display:flex;overflow:hidden}.sidebar-wordmark{width:auto;height:44px}.sidebar-mark{width:30px;height:30px}.sidebar-mark-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sidebar-mark-light{display:none}:root:not([data-theme=light]) .sidebar-mark-dark{display:block}}:root[data-theme=dark] .sidebar-mark-light{display:none}:root[data-theme=dark] .sidebar-mark-dark,:root[data-theme=light] .sidebar-mark-light{display:block}:root[data-theme=light] .sidebar-mark-dark,.sidebar-wordmark-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sidebar-wordmark-light{display:none}:root:not([data-theme=light]) .sidebar-wordmark-dark{display:block}}:root[data-theme=dark] .sidebar-wordmark-light{display:none}:root[data-theme=dark] .sidebar-wordmark-dark,:root[data-theme=light] .sidebar-wordmark-light{display:block}:root[data-theme=light] .sidebar-wordmark-dark{display:none}.nav-icon{flex-shrink:0;width:20px;height:20px}.sidebar.is-collapsed{width:78px;padding-left:.5rem;padding-right:.5rem}.sidebar.is-collapsed .sidebar-head{justify-content:center}.sidebar.is-collapsed .sidebar-link,.sidebar.is-collapsed .sidebar-signout{flex-direction:column;justify-content:center;gap:.2rem;padding:.5rem .2rem}.sidebar.is-collapsed .sidebar-label{text-align:center;white-space:normal;font-size:.62rem;font-weight:600;line-height:1.1;display:block;overflow:visible}.sidebar-nav{flex-direction:column;gap:.15rem;display:flex}.sidebar-group{flex-direction:column;display:flex}.sidebar-link{color:var(--muted);border-radius:8px;align-items:center;gap:.6rem;padding:.5rem .7rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.sidebar-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-link:hover{color:var(--ink);background:var(--hover)}.sidebar-link.is-active{color:var(--brand-blue);background:#0a5fd61a}.sidebar-link.is-section{color:var(--ink)}.sidebar-sub{border-left:1px solid var(--card-border);flex-direction:column;gap:.1rem;margin:.15rem 0 .35rem .5rem;padding-left:.6rem;display:flex}.sidebar-sublink{color:var(--muted);border-radius:7px;padding:.4rem .6rem;font-size:.9rem;font-weight:500;text-decoration:none}.sidebar-sublink:hover{color:var(--ink);background:var(--hover)}.sidebar-foot{border-top:1px solid var(--card-border);flex-direction:column;gap:.6rem;margin-top:auto;padding-top:.75rem;display:flex}.sidebar-user{border-radius:8px;align-items:center;gap:.4rem;padding:.35rem .5rem;text-decoration:none;display:flex}.sidebar-user:hover{background:var(--hover)}.theme-switch{box-sizing:border-box;z-index:40;cursor:pointer;filter:drop-shadow(0 3px 8px #17171c4d);background:0 0;border:none;justify-content:center;align-items:center;width:64px;height:64px;padding:0;display:flex;position:fixed;top:2rem;right:2rem}.theme-switch-icon{width:56px;height:56px}.theme-switch:hover{transform:translateY(-2px)scale(1.08)}@media (max-width:640px){.theme-switch{top:1rem;right:1rem}}.theme-switch-embed{top:.5rem}.sidebar-foot form{width:100%}.sidebar-signout{width:100%;color:var(--muted);border:1px solid var(--card-border);background:0 0;border-radius:8px;align-items:center;gap:.55rem;padding:.5rem .7rem;font-size:.88rem;font-weight:600;display:flex}.sidebar-signout .nav-icon{width:18px;height:18px}.sidebar-signout:hover{color:var(--brand-red);opacity:1;background:#e0392f0f;border-color:#e0392f66;transform:none}.sidebar.is-collapsed .sidebar-signout{justify-content:center;padding:.5rem 0}.shell-main{border-left:1px solid var(--card-border);flex:1;min-width:0}@media (max-width:900px){.shell-main{border-left:none}}.page-title{margin:0 0 1.5rem;font-size:2.25rem}.sidebar-grouphead{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none}.sidebar-grouphead.is-active{color:var(--ink);font-weight:600}.dash-cols{flex-direction:column;gap:1.25rem;margin-top:1.25rem;display:flex}.chart-grid{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:20px;display:grid}.dv2 .chart-card{background:var(--d-surface);border:1px solid var(--d-border);box-shadow:var(--d-shadow);border-radius:14px;padding:18px 20px 14px}.dv2 .chart-title{letter-spacing:-.01em;color:var(--d-ink);margin:0 0 .75rem;font-size:16px;font-weight:600}.kpi-warn .kpi-value{color:var(--brand-red)}.kpi-link{color:inherit;text-decoration:none;transition:transform .12s,box-shadow .12s}.kpi-link:hover{transform:translateY(-2px);box-shadow:0 8px 20px #17171c14}.bars{align-items:flex-end;gap:1.25rem;height:160px;padding:.5rem 0 0;display:flex}.bars-col{flex-direction:column;flex:1;align-items:center;gap:.4rem;height:100%;display:flex}.bars-stack{flex:1;justify-content:center;align-items:flex-end;gap:4px;width:100%;display:flex}.bar{border-radius:4px 4px 0 0;width:26px;min-height:2px}.bar-rev{background:#16823e}.bar-exp{background:var(--brand-red)}.bars-label{color:var(--muted);font-size:.78rem}.bars-legend{color:var(--muted);gap:1.25rem;margin-top:.75rem;font-size:.82rem;display:flex}.swatch{border-radius:3px;width:10px;height:10px;margin-right:.35rem;display:inline-block}.swatch-rev{background:#16823e}.swatch-exp{background:var(--brand-red)}.embed-page{flex-direction:column;height:calc(100vh - 1px);display:flex}.embed-bar{border-bottom:1px solid var(--card-border);justify-content:flex-start;align-items:center;padding:.6rem 1.5rem;font-size:.9rem;font-weight:600;display:flex}.embed-frame{border:0;flex:1;width:100%}.sidebar-toggle{z-index:30;background:var(--surface);border:1px solid var(--card-border);border-radius:8px;padding:.35rem .7rem;font-size:1.1rem;line-height:1;display:none;position:fixed;top:.75rem;left:.75rem}.sidebar-scrim{display:none}@media (max-width:900px){.sidebar{z-index:25;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 40px #17171c26}.sidebar.is-open{transform:translate(0)}.sidebar-toggle{display:block}.sidebar.is-open~.sidebar-scrim{z-index:20;background:#17171c4d;display:block;position:fixed;inset:0}.shell-main{padding-top:3rem}}.panel,.kpi,.chart-card,.module-card,.card{border-color:var(--tile-border);transition:border-color .15s,box-shadow .15s,transform .15s,background .15s}.btn-ghost,.filter-chip,.pager-perlink,.pager-btn,.sidebar-signout{border-color:var(--card-border)}.kpi-link:hover,.module-card:hover,a.chart-card:hover{border-color:var(--brand-red);transform:translateY(-2px);box-shadow:0 8px 24px #e0392f24}.kpi-link:focus-visible,.module-card:focus-visible,.link:focus-visible,button:focus-visible,a.btn:focus-visible{outline:2px solid var(--brand-red);outline-offset:2px}.panel:hover{border-color:var(--ink)}.table{border-spacing:0}.table thead th{background:var(--row-alt);border-bottom:1px solid var(--tile-border)}.table tbody td{border-bottom:1px solid var(--card-border)}.table tbody tr:nth-child(2n) td{background:var(--row-alt)}.table tbody tr:hover td{background:var(--row-hover)}.table tbody tr:last-child td{border-bottom:none}.table-tight th:first-child,.table-tight td:first-child{padding-left:.9rem}.table-tight th:last-child,.table-tight td:last-child{padding-right:.9rem}.table tfoot td{background:0 0}.kpi-good .kpi-value{color:var(--pos)}.period-select{flex-wrap:wrap;gap:.6rem;display:flex}.period-select-input{border:1px solid var(--card-border);background:var(--surface,#fff);color:var(--ink);cursor:pointer;border-radius:8px;padding:.5rem .8rem;font-size:.9rem;font-weight:600}.period-select-input:hover{border-color:var(--brand-red)}.event-list,.todo-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.event-item{border-bottom:1px solid var(--card-border);align-items:baseline;gap:.6rem;padding:.4rem 0;font-size:.9rem;display:flex}.event-item:last-child{border-bottom:none}.event-time{color:var(--brand-blue);white-space:nowrap;font-size:.82rem;font-weight:600}.event-subject{flex:1;font-weight:500}.todo-add{align-items:center;gap:.5rem;margin-bottom:.9rem;display:flex}.todo-input{border:1px solid var(--card-border);background:var(--surface,#fff);height:46px;color:var(--ink);border-radius:8px;flex:1;padding:.6rem .9rem;font-size:.95rem}.todo-item{border-bottom:1px solid var(--card-border);align-items:center;gap:.6rem;padding:.35rem 0;display:flex}.todo-item:last-child{border-bottom:none}.todo-check{border:1.5px solid var(--card-border);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;width:18px;height:18px;padding:0}.todo-check:hover{border-color:var(--brand-red)}.todo-title{flex:1;font-size:.9rem}.todo-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0 .3rem;font-size:1.1rem;line-height:1}.todo-remove:hover{color:var(--brand-red)}.todo-due{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:.78rem}.todo-due-overdue{color:var(--brand-red);font-weight:600}.note-add{align-items:flex-start;gap:.5rem;margin-bottom:.9rem;display:flex}.note-input{border:1px solid var(--card-border);resize:vertical;background:var(--surface,#fff);color:var(--ink);border-radius:8px;flex:1;padding:.5rem .7rem;font-family:inherit;font-size:.9rem}.note-list{flex-direction:column;gap:.6rem;max-height:420px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.note-item{border:1px solid var(--card-border);background:var(--card-bg);border-radius:10px;padding:.6rem .7rem}.note-body{white-space:pre-wrap;margin-bottom:.4rem;font-size:.9rem}.note-meta{justify-content:flex-start;align-items:center;font-size:.78rem;display:flex}.pages-layout{gap:1.25rem;display:flex}.pages-sidebar{border-right:1px solid var(--card-border);flex-shrink:0;width:200px;padding-right:1rem}.pages-new{gap:.4rem;margin-bottom:.8rem;display:flex}.pages-list{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.pages-link{color:var(--ink);border-radius:8px;padding:.4rem .6rem;font-size:.9rem;text-decoration:none;display:block}.pages-link:hover{background:var(--hover,#0000000a)}.pages-link.is-active{color:var(--brand-blue);background:#0a5fd61a;font-weight:600}.pages-content{flex-direction:column;flex:1;gap:1rem;min-width:0;display:flex}.pages-content-head{justify-content:space-between;align-items:center;display:flex}@media (max-width:700px){.pages-layout{flex-direction:column}.pages-sidebar{border-right:none;border-bottom:1px solid var(--card-border);width:100%;padding-bottom:1rem;padding-right:0}}.pages-new .todo-input{min-width:0}.pages-new button{flex-shrink:0;padding:.5rem .7rem;font-size:.85rem}.note-flow{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.note-flow-item{border-bottom:1px solid var(--card-border);padding:.4rem 0}.note-flow-item:last-child{border-bottom:none}.note-flow-item .note-body{margin-bottom:.2rem}.note-add-bare{margin-bottom:.9rem}.note-add-bare .note-input{width:100%}.note-flow{max-height:420px;padding-right:.5rem;overflow-y:auto}.module-card{box-shadow:0 1px 2px #17171c0a,0 8px 24px #17171c0d}.module-card:hover{box-shadow:0 4px 10px #17171c12,0 16px 32px #17171c14}.panel{box-shadow:0 1px 2px #17171c08,0 6px 20px #17171c0a}.kpi{transition:box-shadow .15s,transform .15s;box-shadow:0 1px 2px #17171c08}.kpi:hover{transform:translateY(-1px);box-shadow:0 4px 12px #17171c0f}.module-icon-badge{width:36px;height:36px;color:var(--brand-blue);background:linear-gradient(135deg,#0a5fd61f,#e0392f1f);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.module-icon-badge .nav-icon{width:18px;height:18px}.kpi-accent-blue{border-top:3px solid var(--brand-blue)}.kpi-accent-amber{border-top:3px solid #d97706}.kpi-accent-green{border-top:3px solid #16823e}.home-grid{grid-template-columns:1fr 1fr;gap:1.75rem;display:grid}.home-grid .pages-panel{grid-column:1/-1}@media (max-width:900px){.home-grid{grid-template-columns:1fr}}.note-body-editable{cursor:text;border-radius:6px;margin:-.15rem -.3rem .2rem;padding:.15rem .3rem}.note-body-editable:hover{background:#0a5fd60f}.note-edit-input{border:1px solid var(--brand-blue);background:var(--surface,#fff);width:100%;color:var(--ink);resize:vertical;border-radius:6px;margin-bottom:.2rem;padding:.3rem .5rem;font-family:inherit;font-size:.9rem}.kpi-add{cursor:pointer;color:var(--muted);background:0 0;border-style:dashed;flex-direction:row;justify-content:center;align-items:center;gap:.5rem;font-family:inherit}.kpi-add:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.kpi-add-plus{font-size:1.3rem;font-weight:600;line-height:1}.time-modal{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;width:100%;max-width:460px;max-height:95vh;padding:1.75rem;overflow-y:auto;box-shadow:0 20px 60px #00000040}.modal-backdrop{white-space:normal;text-align:left;z-index:100;background:#17171c80;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-backdrop>[tabindex="-1"]:focus{outline:none}.time-modal-head{border-bottom:1px solid var(--card-border);cursor:move;-webkit-user-select:none;user-select:none;justify-content:flex-start;align-items:flex-start;margin-bottom:.9rem;padding-bottom:.9rem;display:flex}.time-modal-title{margin:0;font-size:1.05rem}.time-modal-sub{color:var(--muted);margin:.2rem 0 0;font-size:.8rem}.time-modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:.1rem .3rem;font-size:1.2rem;line-height:1}.time-modal-close:hover{color:var(--brand-red)}.time-field{flex-direction:column;gap:.3rem;margin-bottom:.9rem;display:flex}.time-label{color:var(--ink);font-size:.82rem;font-weight:600}.time-label .req{color:var(--brand-red)}.time-field input,.time-field select,.time-field textarea{border:1px solid var(--card-border);background:var(--surface,#fff);color:var(--ink);border-radius:8px;padding:.55rem .7rem;font-family:inherit;font-size:.9rem}.time-field textarea{resize:vertical}.time-modal-actions{gap:.6rem;margin-top:.4rem;display:flex}.time-modal-actions button[type=submit]{background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:.6rem 1.4rem;font-size:.9rem;font-weight:600}.time-modal-actions .btn-ghost{border-radius:999px;padding:.6rem 1.2rem;font-size:.9rem}.time-modal-actions button.pay-delete[type=submit]{color:var(--d-danger,#e0392f);background:0 0;border:1px solid;margin-left:auto}.time-range{align-items:center;gap:.5rem;display:flex}.time-range input{flex:1}.time-range-to{color:var(--muted);flex-shrink:0;font-size:.85rem}.time-mode-toggle{color:var(--brand-blue);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin-top:.1rem;padding:.2rem 0;font-size:.78rem;font-weight:600}.time-mode-toggle:hover{text-decoration:underline}.home-grid{align-items:stretch}.home-grid>.panel{height:100%}.home-grid>*{align-self:stretch;margin:0;align-self:stretch!important;margin:0!important}.todo-check{position:relative}.todo-check:hover:after{content:"✓";color:var(--brand-red);justify-content:center;align-items:center;font-size:12px;line-height:1;display:flex;position:absolute;inset:0}.todo-item.is-done .todo-check{background:var(--brand-blue);border-color:var(--brand-blue)}.todo-item.is-done .todo-check:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:11px;line-height:1;display:flex;position:absolute;inset:0}.todo-item.is-done .todo-title{color:var(--muted);text-decoration:line-through}.todo-list{max-height:192px;padding-right:.4rem;overflow-y:auto}.home-grid .hours-panel,.home-grid .calendar-panel{grid-column:1/-1}.cal-week{border:1px solid var(--card-border);border-radius:10px;overflow:hidden}.cal-week-head,.cal-allday-row,.cal-week-body{grid-template-columns:50px repeat(5,1fr);display:grid}.cal-week-head{border-bottom:1px solid var(--card-border)}.cal-day-head{text-align:center;border-left:1px solid var(--card-border);padding:.5rem .3rem}.cal-day-name{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.72rem;display:block}.cal-day-num{font-size:1.05rem;font-weight:700;display:block}.cal-allday-row{border-bottom:1px solid var(--card-border);min-height:26px}.cal-allday-cell{border-left:1px solid var(--card-border);padding:3px 4px}.cal-allday-event{background:var(--brand-blue);color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;margin-bottom:2px;padding:1px 6px;font-size:.7rem;font-weight:600;overflow:hidden}.cal-week-body{position:relative}.cal-time-col{border-right:1px solid var(--card-border)}.cal-hour-label{color:var(--muted);text-align:right;box-sizing:border-box;padding-right:6px;font-size:.68rem;line-height:1}.cal-day-col{border-left:1px solid var(--card-border);border-bottom:1px solid var(--card-border);position:relative}.cal-hour-line{border-top:1px dashed var(--card-border);box-sizing:border-box}.cal-event{border-left:3px solid var(--brand-blue);color:var(--ink);background:#0a5fd624;border-radius:4px;padding:2px 5px;font-size:.72rem;position:absolute;left:3px;right:3px;overflow:hidden}.cal-event-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.cal-nav{align-items:center;gap:.5rem;display:flex}.cal-nav-today{border:1px solid var(--card-border);color:var(--ink);border-radius:999px;padding:.35rem .9rem;font-size:.82rem;font-weight:600;text-decoration:none}.cal-nav-today:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.cal-nav-arrow{border:1px solid var(--card-border);width:28px;height:28px;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;font-size:1rem;text-decoration:none;display:flex}.cal-nav-arrow:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.cal-nav-label{margin-left:.4rem;font-size:1rem;font-weight:700}.cal-week-body{max-height:260px;overflow-y:auto}.cal-week-head,.cal-allday-row{scrollbar-color:transparent transparent;overflow-y:scroll}.cal-week-head::-webkit-scrollbar{background:0 0}.cal-allday-row::-webkit-scrollbar{background:0 0}.cal-week-head::-webkit-scrollbar-thumb{background:0 0}.cal-allday-row::-webkit-scrollbar-thumb{background:0 0}.fab-time-entry{box-sizing:border-box;z-index:40;cursor:pointer;filter:drop-shadow(0 3px 8px #17171c4d);background:0 0;border:none;justify-content:center;align-items:center;width:64px;height:64px;padding:0;transition:transform .15s;display:flex;position:fixed;bottom:2rem;right:2rem}.fab-clock-icon{width:56px;height:56px}.fab-time-entry:hover{transform:translateY(-2px)scale(1.08)}.fab-timer-badge{z-index:40;background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:14px;flex-direction:column;align-items:center;gap:.35rem;max-width:200px;padding:.5rem .9rem;display:flex;position:fixed;bottom:6.5rem;right:2rem;box-shadow:0 3px 10px #17171c4d}.fab-timer-badge-label{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-size:.78rem;font-weight:600;overflow:hidden}.fab-timer-badge-task{opacity:.85;white-space:normal;-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;max-width:180px;font-size:.68rem;line-height:1.2;display:-webkit-box;overflow:hidden}.fab-timer-badge-time{font-variant-numeric:tabular-nums;font-size:1rem;font-weight:700}.fab-timer-badge-state{text-transform:uppercase;letter-spacing:.04em;opacity:.85;font-size:.7rem}.time-timer{align-items:center;gap:.75rem;display:flex}.time-timer-display{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700}.time-timer-btn{cursor:pointer;border:none;border-radius:999px;padding:.45rem 1.1rem;font-size:.85rem;font-weight:600}.time-timer-start{background:var(--brand-gradient);color:#fff}.time-timer-pause{background:var(--card-border);color:var(--ink)}.time-timer-hint{color:var(--muted);align-self:center;font-size:.78rem}.home-grid .tasks-panel{grid-column:1/-1}.projects-content{border-top:1px solid var(--card-border);flex-direction:column;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.todo-add button[type=submit]{justify-content:center;align-items:center;padding:.5rem 1.1rem;font-size:.9rem;display:inline-flex}.todo-date-wrap{flex:none;width:46px;height:46px;position:relative}.todo-date{color:#0000;opacity:0;cursor:pointer;background:0 0;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.todo-date::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.todo-date-icon{pointer-events:none;width:34px;height:34px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.todo-project-select{cursor:pointer;flex:0 0 140px;width:140px}.todo-client-tag{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:600}.todo-assignee-tag{white-space:nowrap;background:var(--hover);color:var(--muted);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:.7rem;font-weight:600}.todo-filters{align-items:center;gap:.5rem;display:flex}.todo-filter-clear{padding:.45rem 1.1rem;font-size:.85rem}.todo-filter-select{font-weight:600}.todo-filter-measure{visibility:hidden;white-space:nowrap;pointer-events:none;font-size:.9rem;font-weight:600;position:absolute}.tasks-panel .panel-head .panel-title{margin-top:-8px}.time-billable{flex-direction:row;align-items:center;gap:.5rem;display:flex}.time-billable input[type=checkbox]{cursor:pointer;width:16px;height:16px}.home-grid .projects-panel{grid-column:1/-1}.timesheet-panel .panel-head .panel-title,.hours-panel .panel-head .panel-title{margin-top:-8px}.page-document{resize:none;width:100%;min-height:300px;max-height:420px;color:var(--ink);background:0 0;border:none;outline:none;padding:.5rem 0;font-family:inherit;font-size:.95rem;line-height:1.6;overflow-y:auto}.btn-sm{padding:.5rem 1.1rem;font-size:.9rem}.page-doc-wrap{flex-direction:column;display:flex}.page-doc-toolbar{gap:.4rem;margin-bottom:.6rem;display:flex}.page-doc-toolbar button{background:var(--card-bg);color:var(--ink);border:1px solid var(--card-border);cursor:pointer;border-radius:6px;width:30px;height:30px;padding:0;font-size:.85rem;line-height:1}.page-doc-toolbar button:hover{border-color:var(--brand-blue)}.page-document:empty:before{content:"Start typing…";color:var(--muted)}.page-doc-toolbar-float{z-index:1000;background:var(--surface,#fff);border:1px solid var(--card-border);border-radius:8px;margin:0;padding:.4rem;position:fixed;box-shadow:0 8px 24px #00000026}.page-doc-toolbar-sep{background:var(--card-border);width:1px;margin:0 .2rem}.page-doc-toolbar-float button:nth-child(n+7){width:auto;padding:0 .6rem;font-size:.78rem}.time-modal-wide{max-width:880px}a.btn.btn-sm{padding:.5rem 1.1rem;font-size:.9rem}.quotes-panel .panel-head .panel-title{margin-top:-8px}.invoices-panel .panel-head .panel-title{margin-top:-14px}.time-modal .form-grid{gap:.6rem 1rem;margin-top:.5rem}.items-panel .panel-head .panel-title{margin-top:-8px}.task-link-btn{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}.time-modal p{overflow-wrap:break-word;word-break:break-word}.task-detail-body{max-width:100%;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}.bulk-head{flex-wrap:nowrap;min-height:34px}.bulk-actions{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.bulk-actions .dv2-count{margin-left:.4rem}.bulk-selected{text-align:right;color:var(--d-muted);margin:4px 0 8px;font-size:13px}.sidebar-search{border:1px solid var(--card-border);background:var(--hover);border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.2rem;padding:.45rem .65rem;display:flex}.sidebar-search-icon{width:16px;height:16px;color:var(--muted);flex-shrink:0}.sidebar-search-input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:.9rem}.sidebar.is-collapsed .sidebar-search{display:none}.sidebar-section-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:.3rem .7rem .25rem;font-size:.68rem;font-weight:700}.sidebar.is-collapsed .sidebar-section-title{display:none}.sidebar-avatar{width:32px;height:32px;color:var(--brand-blue);background:#0a5fd61f;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.sidebar-user-info{flex-direction:column;gap:.05rem;min-width:0;display:flex}.sidebar-user-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.sidebar-role{text-transform:uppercase;letter-spacing:.04em;color:var(--brand-blue);font-size:.65rem;font-weight:700}.sidebar-search{position:relative}.sidebar-results{z-index:20;background:var(--surface);border:1px solid var(--card-border);border-radius:8px;flex-direction:column;gap:.1rem;max-height:320px;padding:.3rem;display:flex;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #17171c2e}.sidebar-result{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;border-radius:6px;align-items:baseline;gap:.45rem;padding:.4rem .5rem;display:flex}.sidebar-result:hover,.sidebar-result.is-active{background:var(--hover)}.sidebar-result-type{text-transform:uppercase;letter-spacing:.04em;color:var(--brand-blue);flex-shrink:0;font-size:.62rem;font-weight:700}.sidebar-result-label{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;overflow:hidden}.sidebar-result-sublabel{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;margin-left:auto;font-size:.78rem;overflow:hidden}.sidebar-edgetab{border:1px solid var(--card-border);background:var(--surface);width:26px;height:32px;color:var(--muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-top:-6px;padding:0;font-size:.9rem;line-height:1;transition:color .12s,border-color .12s;display:flex}.sidebar-edgetab:hover{color:var(--ink);border-color:var(--brand-red)}.sidebar.is-collapsed .sidebar-edgetab{height:32px;position:absolute;top:50%;right:-13px;transform:translateY(-50%);box-shadow:0 2px 10px #17171c29}.sidebar.is-collapsed .sidebar-edgetab:hover{transform:translateY(-50%)}.sidebar.is-collapsed .sidebar-user{justify-content:center;padding:.35rem 0}.sidebar-flyout-wrap{position:relative}.sidebar-flyout{background:var(--surface);border:1px solid var(--card-border);z-index:30;border-radius:8px;flex-direction:column;gap:.1rem;min-width:180px;margin-left:0;padding:.35rem;display:none;position:absolute;top:0;left:100%;box-shadow:0 8px 24px #17171c2e}.sidebar-flyout.is-open,.sidebar-flyout-wrap:focus-within .sidebar-flyout{display:flex}.sidebar-flyout-title{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:.25rem .5rem;font-size:.68rem;font-weight:700}.sidebar-flyout-link{color:var(--muted);white-space:nowrap;border-radius:6px;padding:.4rem .6rem;font-size:.88rem;font-weight:500;text-decoration:none}.sidebar-flyout-link:hover{color:var(--ink);background:var(--hover)}.sidebar-flyout-link.is-active{color:var(--brand-blue);background:#0a5fd61a;font-weight:600}.time-duration{align-items:center;gap:.4rem;display:flex}.time-duration input{flex:none;width:64px}.time-duration-unit{color:var(--muted);flex-shrink:0;font-size:.85rem}.btn-row a.btn-ghost,.btn-row button.btn-ghost,.btn-row form button[type=submit]{background:var(--brand-gradient);color:#fff;vertical-align:middle;box-sizing:border-box;border:none;border-radius:999px;padding:.5rem 1.1rem;font-size:.9rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-block}.btn-row a.btn-ghost:hover,.btn-row button.btn-ghost:hover,.btn-row form button[type=submit]:hover{opacity:.92;transform:translateY(-1px)}.expenses-panel .disclosure form button[type=submit]{padding:.5rem 1.1rem;font-size:.9rem}.invoice-sheet.iv-doc{--ink:#1b1b1f;--muted:#4a4a50;--card-border:#c9c9c9;--surface:#fff;--hover:#f4f3f1;color:var(--ink);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;padding:2.5rem 2.75rem;font-size:.85rem;line-height:1.35}.iv-top{justify-content:space-between;align-items:flex-start;display:flex}.iv-logo{width:290px;height:auto;margin-left:-22px;display:block}.iv-title{text-align:right}.iv-title p{margin:0}.iv-doc-title{font-size:2.4rem;line-height:1.1}.iv-doc-no{font-weight:700;margin-top:.2rem!important}.iv-bal-label{font-size:.8rem;font-weight:700;margin-top:1.1rem!important}.iv-bal{font-size:1.2rem;font-weight:700}.iv-supplier{margin-top:.9rem}.iv-supplier span,.iv-supplier strong{display:block}.iv-mid{flex-wrap:wrap;justify-content:space-between;gap:2rem;margin-top:2rem;display:flex}.iv-bill p{margin:0}.iv-meta-row{margin-bottom:.45rem;display:flex}.iv-meta-key{text-align:right;width:130px;padding-right:1.6rem}.iv-meta-val{text-align:right;width:160px}.iv-subject-label{margin:1.2rem 0 0}.iv-subject{margin:.4rem 0 1.2rem}.iv-gap{height:1.2rem}.iv-subject-edit-link{margin-left:10px;font-size:12.5px}.iv-subject-add,.iv-subject-edit{margin:1.2rem 0}.iv-subject-input{border:1px solid var(--d-border,#d0d5dd);width:100%;font:inherit;background:var(--d-surface,#fff);color:inherit;border-radius:8px;margin:.4rem 0 .6rem;padding:8px 10px}.iv-subject-actions{align-items:center;gap:12px;display:flex}.iv-subject-error{color:var(--d-danger,#e0392f);font-size:12.5px}.iv-table{border-collapse:collapse;width:100%}.iv-table th{color:#fff;text-align:left;background:#3b3b3b;padding:.45rem .6rem;font-weight:400}.iv-table td{vertical-align:top;border-bottom:1px solid #c9c9c9;padding:.55rem .6rem}.iv-table .r{text-align:right;white-space:nowrap}.iv-desc-detail{color:#333;white-space:pre-wrap;margin-top:.1rem;font-size:.72rem}.iv-totals{justify-content:space-between;margin-top:.3rem;display:flex}.iv-totals-hours{padding:.4rem .3rem}.iv-totals-box{width:230px}.iv-tot-row{justify-content:space-between;padding:.4rem .8rem;display:flex}.iv-tot-row.iv-grey{background:#f4f3f1}.iv-thanks{margin:2rem 0 0}.iv-pay-title{margin:1.1rem 0 0;font-size:.8rem;font-weight:700}.iv-pay{margin-top:.8rem}.iv-pay span{display:block}.iv-sig{width:auto;height:45px;margin-top:1.4rem;display:block}.iv-sig-space{height:45px;margin-top:1.4rem}.iv-sig-label{margin:.15rem 0 0}.iv-terms{border-top:1px solid #c9c9c9;margin-top:2.5rem;padding-top:1.5rem}.iv-terms h3{margin:0;font-size:1rem}.iv-terms h3.iv-terms-gap{margin-top:1.8rem}.iv-terms h4{margin:.9rem 0 0;font-size:.85rem}.iv-terms p{margin:.3rem 0 0;font-size:.72rem}.iv-terms p.iv-accept{margin-top:1rem}.dv2>.invoice-sheet.iv-doc{border:1px solid var(--d-border);width:100%;box-shadow:var(--d-shadow);border-radius:14px;align-self:center}.zt-list{font-size:14px}.zt-row{border-bottom:1px solid var(--d-line);grid-template-columns:18px minmax(0,1fr) 130px 96px 110px 128px;align-items:center;gap:12px;min-height:44px;padding:6px 12px;display:grid}.zt-row .num{text-align:right;font-variant-numeric:tabular-nums}.zt-row-head{letter-spacing:.04em;text-transform:uppercase;min-height:36px;color:var(--d-muted);font-size:11.5px;font-weight:600}.zt-row.is-unused{color:var(--d-muted)}.zt-row:not(.zt-row-head):not(.zt-add):hover{background:var(--d-hover)}.zt-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.zt-name .pill{margin-left:8px}.zt-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.dv2 .zt-row input:not([type=checkbox]),.dv2 .zt-row select{border:1px solid var(--d-border);background:var(--d-surface);width:100%;height:34px;color:var(--d-ink);border-radius:8px;padding:0 10px;font-size:13.5px}.dv2 .zt-row input:focus,.dv2 .zt-row select:focus{border-color:var(--d-accent);outline:none}.zt-check{color:var(--d-ink2);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.zt-add{margin-bottom:8px;padding:0 12px 14px}.dv2 button.zt-link{box-shadow:none;color:var(--d-accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:500}.dv2 button.zt-link:hover{opacity:1;text-decoration:underline;transform:none}.dv2 button.zt-link.is-danger{color:var(--d-danger)}.dv2 button.zt-link:disabled{opacity:.5;cursor:default}@media (max-width:760px){.zt-list{overflow-x:auto}.zt-row{min-width:670px}}.dv2 select.btn-select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right .85rem center / 12px, var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:999px;height:auto;padding:.5rem 2.2rem .5rem 1.1rem;font-size:.9rem;font-weight:600;transition:opacity .15s,transform .15s}.dv2 select.btn-select:hover{opacity:.92;transform:translateY(-1px)}.dv2 select.btn-select option{color:#101828;background:#fff}.dv2 .tasks-panel .todo-input{border-color:var(--d-border);background:var(--d-surface);color:var(--d-ink);border-radius:10px}.dv2 .tasks-panel .todo-input:focus{border-color:var(--d-accent);outline:none}.dv2 .tasks-panel .todo-item{border-bottom-color:var(--d-line)}.dv2>.iv-below{box-sizing:border-box;align-self:center;width:100%;max-width:795.707px}@media print{.dv2>.invoice-sheet.iv-doc{box-shadow:none;border:none;border-radius:0}.invoice-sheet.iv-doc{padding:0}.iv-terms{break-before:page;border-top:none;padding-top:0}.iv-table tr{break-inside:avoid}}.iv-note-text{margin:.4rem 0 0;font-size:.75rem}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-latin.woff2)format("woff2")}:root{--hv-text:#101828;--hv-muted:#667085;--hv-subtle:#98a2b3;--hv-control:#344054;--hv-group:#475467;--hv-border:#e7e9ee;--hv-border-hover:#cfd4dc;--hv-grid:#eef0f3;--hv-line:#f0f2f5;--hv-dashed:#d0d5dd;--hv-panel:#fff;--hv-field:#fbfbfc;--hv-soft:#f9fafb;--hv-btn-hover:#f2f4f7;--hv-accent:#2446c7;--hv-accent-hover:#1a3399;--hv-accent-soft:#eaeefb;--hv-nonbill:#f0a1ab;--hv-event-bg:#e3e9fb;--hv-event-fg:#1a3399;--hv-today-col:#fafbff;--hv-hatch-a:#f4f5f7;--hv-hatch-b:#eceef2;--hv-red:#d6344b;--hv-red-soft:#fdf0f2;--hv-amber:#b35a14;--hv-tip-bg:#101828;--hv-shadow:0 1px 2px #1018280a;--hv-tag-ink:100%;--hv-tag-base:#000;--hv-tag-tint:11%}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hv-text:var(--ink);--hv-muted:var(--muted);--hv-subtle:#8b93a4;--hv-control:var(--ink);--hv-group:var(--muted);--hv-border:var(--card-border);--hv-border-hover:#5b6477;--hv-grid:#ffffff12;--hv-line:#ffffff0d;--hv-dashed:#4a5263;--hv-panel:var(--card-bg);--hv-field:#ffffff08;--hv-soft:#ffffff0a;--hv-btn-hover:#ffffff0f;--hv-accent:#7f9bff;--hv-accent-hover:#a3b8ff;--hv-accent-soft:#7f9bff29;--hv-nonbill:#b04a57;--hv-event-bg:#7f9bff2e;--hv-event-fg:#c9d4ff;--hv-today-col:#7f9bff0d;--hv-hatch-a:#ffffff08;--hv-hatch-b:#ffffff12;--hv-red:#ff7086;--hv-red-soft:#ff70861f;--hv-amber:#f0a45c;--hv-tip-bg:#0b0d12;--hv-shadow:none;--hv-tag-ink:45%;--hv-tag-base:#fff;--hv-tag-tint:26%}}:root[data-theme=dark]{--hv-text:var(--ink);--hv-muted:var(--muted);--hv-subtle:#8b93a4;--hv-control:var(--ink);--hv-group:var(--muted);--hv-border:var(--card-border);--hv-border-hover:#5b6477;--hv-grid:#ffffff12;--hv-line:#ffffff0d;--hv-dashed:#4a5263;--hv-panel:var(--card-bg);--hv-field:#ffffff08;--hv-soft:#ffffff0a;--hv-btn-hover:#ffffff0f;--hv-accent:#7f9bff;--hv-accent-hover:#a3b8ff;--hv-accent-soft:#7f9bff29;--hv-nonbill:#b04a57;--hv-event-bg:#7f9bff2e;--hv-event-fg:#c9d4ff;--hv-today-col:#7f9bff0d;--hv-hatch-a:#ffffff08;--hv-hatch-b:#ffffff12;--hv-red:#ff7086;--hv-red-soft:#ff70861f;--hv-amber:#f0a45c;--hv-tip-bg:#0b0d12;--hv-shadow:none;--hv-tag-ink:45%;--hv-tag-base:#fff;--hv-tag-tint:26%}.theme-switch{border:1px solid var(--hv-border);background:var(--hv-panel);width:38px;height:38px;color:var(--hv-group);filter:none;border-radius:10px;top:2rem;right:2.5rem}.theme-switch-icon{stroke:currentColor;width:17px;height:17px}.theme-switch-icon [stroke=none]{fill:currentColor}.theme-switch:hover{border-color:var(--hv-border-hover);transform:none}.timer-pill{z-index:40;border:1px solid var(--hv-border);background:var(--hv-panel);height:38px;color:var(--hv-text);border-radius:999px;align-items:center;font-family:Geist,system-ui,sans-serif;font-size:13.5px;display:flex;position:fixed;top:2rem;right:calc(2.5rem + 46px);overflow:hidden}.timer-pill:hover{border-color:var(--hv-border-hover)}.timer-pill-main,.timer-pill-stop{height:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:0;align-items:center;display:flex}.timer-pill-main{gap:10px;padding:0 10px 0 12px}.timer-pill-main:hover,.timer-pill-stop:hover{opacity:1;transform:none}.timer-pill-dot{background:var(--hv-red);border-radius:50%;width:8px;height:8px}.timer-pill-time{font-variant-numeric:tabular-nums;font-family:Geist Mono,ui-monospace,monospace;font-weight:500}.timer-pill-client{color:var(--hv-muted);white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.timer-pill-stop{color:var(--hv-accent);gap:10px;padding:0 14px 0 0;font-weight:600}.timer-pill-stop:before{content:"";background:var(--hv-border);width:1px;height:16px}@media (max-width:640px){.theme-switch{top:1rem;right:1rem}.timer-pill{top:1rem;right:calc(1rem + 46px)}.timer-pill-client{display:none}}@media print{.timer-pill{display:none!important}}.home-v2{color:var(--hv-text);-webkit-font-smoothing:antialiased;flex-direction:column;gap:20px;max-width:1480px;padding:28px 40px 56px;font-family:Geist,system-ui,sans-serif;display:flex}.home-v2 button,.home-v2 input,.home-v2 select{font-family:inherit}.home-v2 input::placeholder{color:var(--hv-subtle)}.home-v2 .home-head{padding:0 460px 4px 0}.home-v2 .page-title{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:600}.home-v2 .home-row{align-items:start;gap:20px;margin:0;display:grid}.home-v2 .home-row-top{grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr))}.home-v2 .home-row-bottom{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))}@media (max-width:1100px){.home-v2 .home-head{padding-top:3rem;padding-right:0}}@media (max-width:640px){.home-v2{padding:20px 16px 40px}}.home-v2 .panel{background:var(--hv-panel);border:1px solid var(--hv-border);box-shadow:var(--hv-shadow);border-radius:14px;margin:0;padding:0}.home-v2 .panel:hover{border-color:var(--hv-border)}.home-v2 .panel+.panel{margin-top:0}.home-v2 .panel-head{justify-content:space-between;align-items:center;gap:12px;margin:0;padding:18px 20px 14px;display:flex}.home-v2 .projects-panel .panel-head,.home-v2 .pages-panel .panel-head{padding-bottom:10px}.home-v2 .panel-title,.home-v2 .panel-head .panel-title,.home-v2 .tasks-panel .panel-head .panel-title,.home-v2 .hours-panel .panel-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.home-v2 .panel-count{letter-spacing:0;color:var(--hv-subtle);margin-left:8px;font-size:13px;font-weight:400}.home-v2 .panel>.muted{margin:0;padding:0 20px 20px;font-size:13.5px}.home-v2 .btn-sm,.home-v2 .cal-nav-today,.home-v2 .cal-nav-arrow,.home-v2 .todo-filter-select,.home-v2 .todo-filter-clear{border:1px solid var(--hv-border);background:var(--hv-panel);height:30px;color:var(--hv-control);box-shadow:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex;transform:none}.home-v2 .btn-sm,.home-v2 .cal-nav-today,.home-v2 .todo-filter-clear{padding:0 12px}.home-v2 .cal-nav-arrow{width:30px;color:var(--hv-group);padding:0;font-size:17px}.home-v2 .btn-sm:hover,.home-v2 .cal-nav-today:hover,.home-v2 .cal-nav-arrow:hover,.home-v2 .todo-filter-select:hover,.home-v2 .todo-filter-clear:hover{background:var(--hv-btn-hover);opacity:1;text-decoration:none;transform:none}.home-v2 .todo-filters{gap:6px}.home-v2 .todo-filter-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2398a2b3' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding:0 28px 0 10px}.home-v2 .cal-nav{align-items:center;gap:6px;display:flex}.home-v2 .cal-nav-label{color:var(--hv-control);margin:0 6px 0 0;font-size:13.5px;font-weight:500}.home-v2 .cal-week{border:none;border-top:1px solid var(--hv-grid);border-radius:0 0 14px 14px;overflow:hidden}.home-v2 .cal-week-head,.home-v2 .cal-week-body{grid-template-columns:52px repeat(5,minmax(0,1fr))}.home-v2 .cal-week-head{border-bottom:1px solid var(--hv-grid);overflow:hidden}.home-v2 .cal-week-body{max-height:none;overflow:hidden}.home-v2 .cal-time-col{border-right:none}.home-v2 .cal-day-head{border-left:1px solid var(--hv-grid);justify-content:center;align-items:center;gap:6px;padding:10px 0;display:flex}.home-v2 .cal-day-name{color:var(--hv-muted);text-transform:uppercase;letter-spacing:0;font-size:12px;font-weight:500;display:inline}.home-v2 .cal-day-num{min-width:26px;height:26px;color:var(--hv-text);border-radius:13px;place-items:center;padding:0 4px;font-size:13.5px;font-weight:600;display:grid}.home-v2 .cal-day-head.is-today .cal-day-num{background:var(--hv-accent);color:#fff}.home-v2 .cal-day-col{border-left:1px solid var(--hv-grid);border-bottom:none}.home-v2 .cal-day-col.is-today{background:var(--hv-today-col)}.home-v2 .cal-hour-line{border-top:1px solid var(--hv-line)}.home-v2 .cal-hour-label{color:var(--hv-subtle);text-align:right;padding:4px 8px 0 0;font-family:Geist Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.2}.home-v2 .cal-event{background:var(--hv-event-bg);color:var(--hv-event-fg);border:none;border-radius:7px;padding:5px 8px;font-size:12px;line-height:1.3;left:4px;right:4px}.home-v2 .cal-event-title{font-weight:600}.home-v2 .cal-event-time{opacity:.8;white-space:nowrap;text-overflow:ellipsis;font-family:Geist Mono,ui-monospace,monospace;font-size:10.5px;display:block;overflow:hidden}.home-v2 .cal-event-break{background:repeating-linear-gradient(135deg, var(--hv-hatch-a) 0 6px, var(--hv-hatch-b) 6px 12px);color:var(--hv-muted)}.home-v2 .tasks-panel{flex-direction:column;display:flex}.home-v2 .tasks-panel .todo-add{margin:0;display:block}.home-v2 .todo-compose{border:1px solid var(--hv-border);background:var(--hv-field);border-radius:11px;margin:0 20px 8px}.home-v2 .todo-compose:focus-within{border-color:var(--hv-accent)}.home-v2 .todo-compose-input{width:100%;height:auto;color:var(--hv-text);background:0 0;border:0;outline:none;padding:12px 14px 6px;font-size:14px}.home-v2 .todo-compose-row{flex-wrap:wrap;align-items:center;gap:6px;padding:4px 8px 8px 10px;display:flex}.home-v2 .todo-chip{border:1px dashed var(--hv-dashed);height:26px;color:var(--hv-muted);background:var(--hv-panel);cursor:pointer;border-radius:7px;align-items:center;gap:5px;max-width:220px;padding:0 9px;font-size:12.5px;display:flex;position:relative}.home-v2 .todo-chip.is-set{color:var(--hv-text)}.home-v2 .todo-chip-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.home-v2 .todo-chip select,.home-v2 .todo-chip input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.home-v2 .todo-chip.is-from-text{border-style:solid;border-color:var(--hv-accent);background:var(--hv-accent-soft);color:var(--hv-accent)}.home-v2 .todo-chip.is-disabled{opacity:.55;cursor:not-allowed}.home-v2 .todo-chip.is-disabled select{cursor:not-allowed}.home-v2 .pl-repeat-tag{color:var(--hv-accent);align-items:center;gap:4px;display:inline-flex}.home-v2 .pl-repeat-mark{background:var(--hv-accent-soft);width:18px;height:18px;color:var(--hv-accent);border-radius:5px;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.home-v2 .pl-row.is-upcoming{opacity:.55}.home-v2 .pl-row.is-upcoming:hover{opacity:.8}.home-v2 .pl-up-mark{border:1.5px dashed var(--hv-dashed);width:18px;height:18px;color:var(--hv-subtle);border-radius:5px;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.home-v2 .pl-up-mark svg{width:10px;height:10px}.home-v2 .pl-up-tag{letter-spacing:.02em;text-transform:uppercase;color:var(--hv-subtle);font-size:11px;font-weight:600}.home-v2 .pl-repeat-title{color:var(--hv-text);font-size:14px}.home-v2 .pl-repeat-label{color:var(--hv-accent)}.home-v2 .pl-repeat-stop{border:1px solid var(--hv-border);height:30px;color:var(--hv-muted);white-space:nowrap;cursor:pointer;background:0 0;border-radius:999px;padding:0 14px;font-size:12.5px;font-weight:500}.home-v2 .pl-repeat-stop:hover{border-color:var(--hv-red);color:var(--hv-red)}.home-v2 .pl-repeat-row .pl-side{gap:6px;display:flex}.home-v2 .pl-edit-hint{color:var(--hv-muted);margin:0;font-size:12.5px}.home-v2 .pl-edit-check{color:var(--hv-text);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:flex}.home-v2 .tp-repeat{color:var(--hv-text);flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;font-size:14px;display:flex}.home-v2 .tp-repeat svg{color:var(--hv-accent)}.home-v2 .tp-repeat .tp-hint{margin:0}.home-v2 .tp-repeat-select{border:1px solid var(--hv-border);background:var(--hv-panel);width:100%;height:34px;color:var(--hv-text);border-radius:8px;padding:0 10px;font-size:13.5px}.home-v2 .todo-time-wrap{display:inline-flex}.home-v2 .todo-chip button.todo-chip-btn{height:100%;box-shadow:none;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;margin:0 -9px;padding:0 9px;display:inline-flex}.home-v2 .todo-chip button.todo-chip-btn:hover{opacity:1;transform:none}.home-v2 .time-pop{z-index:70;border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:12px;width:248px;padding:10px;font-family:Geist,system-ui,sans-serif;position:fixed;box-shadow:0 12px 32px -12px #10182847}.home-v2 .time-pop-input{border:1px solid var(--hv-border);background:var(--hv-field);width:100%;height:34px;color:var(--hv-text);border-radius:8px;outline:none;padding:0 10px;font-size:13px}.home-v2 .time-pop-input:focus{border-color:var(--hv-accent)}.home-v2 .time-pop-hint{color:var(--hv-accent);margin:6px 2px 0;font-size:12px}.home-v2 .time-pop-hint.is-bad{color:var(--hv-muted)}.home-v2 .time-pop-quick{gap:6px;margin:8px 0;display:flex}.home-v2 .time-pop button{border:1px solid var(--hv-border);background:var(--hv-panel);height:28px;box-shadow:none;color:var(--hv-control);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:7px;padding:0 10px;font:500 12.5px Geist,system-ui,sans-serif}.home-v2 .time-pop button:hover{background:var(--hv-btn-hover);opacity:1;transform:none}.home-v2 .time-pop button.is-active{border-color:var(--hv-accent);background:var(--hv-accent-soft);color:var(--hv-accent)}.home-v2 .time-pop-grid{border-top:1px solid var(--hv-line);grid-template-columns:repeat(4,1fr);gap:4px;padding-top:8px;display:grid}.home-v2 .time-pop-grid.is-first{margin-top:8px}.home-v2 .time-pop-grid button{padding:0}.home-v2 .todo-compose-add{background:var(--hv-accent);color:#fff;border:0;border-radius:7px;height:28px;margin-left:auto;padding:0 12px;font-size:13px;font-weight:600}.home-v2 .todo-compose-add:hover{background:var(--hv-accent-hover);opacity:1;transform:none}.home-v2 .todo-groups{padding:4px 0 10px}.home-v2 .todo-group-head{letter-spacing:.05em;text-transform:uppercase;color:var(--hv-group);align-items:center;gap:8px;margin:0;padding:12px 20px 4px;font-size:11.5px;font-weight:600;display:flex}.home-v2 .todo-group-head.is-overdue{color:var(--hv-red)}.home-v2 .todo-group-head.is-muted{color:var(--hv-subtle)}.home-v2 .todo-group-count{color:var(--hv-subtle);letter-spacing:0;margin:0;font-family:Geist Mono,ui-monospace,monospace;font-weight:500}.home-v2 .todo-list{max-height:none;margin:0;padding:0;list-style:none;overflow:visible}.home-v2 .todo-item-rich{border:none;align-items:center;gap:12px;padding:9px 20px;display:flex}.home-v2 .todo-item-rich:hover{background:var(--hv-soft)}.home-v2 .todo-item-rich form{margin:0;display:flex}.home-v2 .todo-tick{border:1.5px solid var(--hv-border-hover);background:var(--hv-panel);cursor:pointer;border-radius:6px;flex-shrink:0;place-items:center;width:18px;height:18px;padding:0;display:grid}.home-v2 .todo-tick:hover{border-color:var(--hv-accent);opacity:1;transform:none}.home-v2 .todo-item-rich.is-done .todo-tick{background:var(--hv-accent);border-color:var(--hv-accent)}.home-v2 .todo-body{flex:1;min-width:0}.home-v2 .todo-item-rich .todo-title{color:var(--hv-text);text-wrap:pretty;font-size:14px;line-height:1.4;display:block}.home-v2 .todo-item-rich.is-done .todo-title{color:var(--hv-subtle);text-decoration:line-through}.home-v2 .todo-client-line,.home-v2 .today-client-tag{background:color-mix(in srgb, var(--cl) var(--hv-tag-tint), transparent);max-width:100%;color:color-mix(in srgb, var(--cl) var(--hv-tag-ink), var(--hv-tag-base));white-space:nowrap;text-overflow:ellipsis;border-radius:999px;margin-top:4px;padding:1px 8px;font-size:12px;font-weight:600;line-height:1.5;display:inline-block;overflow:hidden}.home-v2 .todo-item-rich.is-done .todo-client-line,.home-v2 .today-row.is-done .today-client-tag{opacity:.55}.home-v2 .todo-due-mono{color:var(--hv-muted);white-space:nowrap;font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.home-v2 .todo-due-mono.is-soon{color:var(--hv-amber)}.home-v2 .todo-due-mono.is-overdue{color:var(--hv-red)}.home-v2 .todo-due-mono.is-done{color:var(--hv-subtle)}.home-v2 .todo-avatar{border-radius:50%;flex-shrink:0;place-items:center;width:24px;height:24px;font-size:10px;font-weight:600;display:grid}.home-v2 .todo-trash{width:24px;height:24px;color:var(--hv-dashed);cursor:pointer;background:0 0;border:0;border-radius:6px;flex-shrink:0;place-items:center;padding:0;display:grid}.home-v2 .todo-trash:hover{color:var(--hv-red);background:var(--hv-red-soft);opacity:1;transform:none}.home-v2 .todo-empty{color:var(--hv-subtle);margin:0;padding:24px 20px;font-size:13.5px}:is(.home-v2,.staff-hours) .hours-panel{padding:18px 20px 20px}.home-v2 .panel-count.is-overdue{white-space:nowrap;background:var(--hv-red-soft);color:var(--hv-red);border-radius:999px;margin-left:6px;padding:1px 8px;font-weight:600;display:inline-block}.home-v2 #tasks{scroll-margin-top:72px}.home-v2 .task-summary{padding:18px 20px 16px}.ts-head{flex-direction:column;gap:14px;margin-bottom:16px;display:flex}.ts-stats{flex-wrap:wrap;gap:36px;display:flex}.ts-stat{flex-direction:column;display:flex}.ts-stat-label{color:var(--hv-muted);font-size:12px}.ts-stat-value{letter-spacing:-.02em;margin-top:2px;font-size:24px;font-weight:600}.ts-stat-value.is-warn,.ts-warn{color:var(--hv-red)}.ts-table{border-collapse:collapse;width:100%;font-size:13.5px}.ts-table th{border-bottom:1px solid var(--hv-line);text-align:left;color:var(--hv-muted);white-space:nowrap;padding:8px 10px;font-size:11.5px;font-weight:500}.ts-table td{border-bottom:1px solid var(--hv-line);white-space:nowrap;padding:9px 10px}.ts-table .num{text-align:right;font-variant-numeric:tabular-nums}.ts-table tbody tr:hover td{background:var(--hv-soft)}.ts-table tfoot td{border-bottom:none;font-weight:600}.ts-name{font-weight:500}.ts-link{color:inherit;text-decoration:none}.ts-link:hover{color:var(--hv-accent);text-decoration:underline}.ts-table tbody tr.is-active td{background:var(--hv-accent-soft)}.ts-table tbody tr.is-active .ts-link{color:var(--hv-accent)}.ts-good{color:#16a34a;font-weight:600}.ts-strong{font-weight:600}.ts-bar-col{width:28%;min-width:90px}.ts-bar{background:var(--hv-soft);border-radius:4px;height:8px;display:block;overflow:hidden}.ts-bar-open{background:var(--hv-accent);border-radius:4px;height:100%;display:block}.ts-bar-overdue{background:var(--hv-red);height:100%;display:block}.ts-note{color:var(--hv-subtle);margin:12px 0 0;font-size:12px}@media (max-width:640px){.ts-stats{gap:20px}.ts-bar-col{display:none}}:is(.home-v2,.staff-hours) .hours-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}:is(.home-v2,.staff-hours) .hours-head-left{flex-direction:column;gap:14px;display:flex}:is(.home-v2,.staff-hours) .hours-stats{flex-wrap:wrap;gap:36px;display:flex}:is(.home-v2,.staff-hours) .hours-stat{flex-direction:column;display:flex}:is(.home-v2,.staff-hours) .hours-stat-label{color:var(--hv-muted);font-size:12px}:is(.home-v2,.staff-hours) .hours-stat-value{letter-spacing:-.02em;margin-top:2px;font-size:24px;font-weight:600}:is(.home-v2,.staff-hours) .hours-stat-value small{color:var(--hv-subtle);font-size:14px;font-weight:500}:is(.home-v2,.staff-hours) .hours-head-right{align-items:center;gap:16px;display:flex}:is(.home-v2,.staff-hours) .hours-legend{color:var(--hv-group);align-items:center;gap:6px;font-size:12.5px;display:flex}:is(.home-v2,.staff-hours) .hours-legend-dot{border-radius:3px;width:10px;height:10px}:is(.home-v2,.staff-hours) .hours-legend-dot.is-billable{background:var(--hv-accent)}:is(.home-v2,.staff-hours) .hours-legend-dot.is-nonbillable{background:var(--hv-nonbill)}:is(.home-v2,.staff-hours) .hours-chart{grid-template-columns:36px minmax(0,1fr);margin-top:22px;display:grid}:is(.home-v2,.staff-hours) .hours-chart-yaxis{height:200px;color:var(--hv-subtle);flex-direction:column;justify-content:space-between;margin-top:-6px;font-family:Geist Mono,ui-monospace,monospace;font-size:10.5px;display:flex}:is(.home-v2,.staff-hours) .hours-chart-plot{background-image:repeating-linear-gradient(to top, var(--hv-grid) 0 1px, transparent 1px 47px);border-bottom:1px solid var(--hv-dashed);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:10px;height:188px;display:grid}:is(.home-v2,.staff-hours) .hours-chart-col{cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;padding:0;display:flex;position:relative}:is(.home-v2,.staff-hours) .hours-chart-col:hover{opacity:1;transform:none}:is(.home-v2,.staff-hours) .hours-chart-bar{width:min(100%,38px);transition:opacity .12s;display:block}:is(.home-v2,.staff-hours) .hours-chart-bar.is-nonbillable{background:var(--hv-nonbill);border-radius:5px 5px 0 0}:is(.home-v2,.staff-hours) .hours-chart-bar.is-billable{background:var(--hv-accent)}:is(.home-v2,.staff-hours) .hours-chart-tip{z-index:2;background:var(--hv-tip-bg);color:#fff;white-space:nowrap;pointer-events:none;border-radius:7px;flex-direction:column;align-items:flex-start;padding:6px 9px;font-size:11.5px;line-height:1.5;display:flex;position:absolute}:is(.home-v2,.staff-hours) .hours-chart-tip-title{font-weight:600}:is(.home-v2,.staff-hours) .hours-chart-tip-line{color:#cfd4dc;font-family:Geist Mono,ui-monospace,monospace}:is(.home-v2,.staff-hours) .hours-chart-tip-client{color:#98a2b3;font-size:11px}:is(.home-v2,.staff-hours) .hours-chart-labels{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;padding-top:8px;display:grid}:is(.home-v2,.staff-hours) .hours-chart-labels span{text-align:center;color:var(--hv-muted);font-size:12px}:is(.home-v2,.staff-hours) .hours-chart-labels span.is-current{color:var(--hv-text);font-weight:600}.home-v2 .proj-list{margin:0;padding:0 8px 10px;list-style:none}.home-v2 .proj-row{border-radius:10px;align-items:center;gap:12px;padding:10px 12px;display:flex}.home-v2 .proj-row:hover{background:var(--hv-soft)}.home-v2 .proj-avatar{border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:12px;font-weight:600;display:grid}.home-v2 .proj-body{flex-direction:column;flex:1;min-width:0;display:flex}.home-v2 .proj-client{font-size:14px;font-weight:500}.home-v2 .proj-sub{color:var(--hv-muted);margin-top:2px;font-size:12px}.home-v2 .proj-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.home-v2 .proj-badge{background:var(--hv-accent-soft);color:var(--hv-accent);white-space:nowrap;border-radius:6px;padding:4px 9px;font-size:12.5px;font-weight:500;text-decoration:none}.home-v2 .proj-badge:hover{color:var(--hv-accent-hover);text-decoration:underline}.home-v2 .pages-empty{border:1px dashed var(--hv-dashed);border-radius:10px;align-items:center;gap:14px;margin:4px 20px 20px;padding:22px;display:flex}.home-v2 .pages-empty strong{font-size:14px;font-weight:500;display:block}.home-v2 .muted-line{color:var(--hv-muted);margin-top:2px;font-size:13px;display:block}.home-v2 .pages-empty-icon{background:var(--hv-btn-hover);width:36px;height:36px;color:var(--hv-muted);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.home-v2 .pages-empty-icon svg{width:17px;height:17px}.home-v2 .pages-panel .pages-layout{padding:0 20px 20px}.home-v2 .home-row-bottom>.projects-panel,.home-v2 .home-row-bottom>.pages-panel{flex-direction:column;height:340px;display:flex;overflow:hidden}.home-v2 .home-row-bottom>.projects-panel .proj-list{flex:1;min-height:0;overflow-y:auto}.home-v2 .home-row-bottom>.pages-panel .pages-layout{flex:1;min-height:0}.home-v2 .home-row-bottom>.pages-panel .pages-sidebar,.home-v2 .home-row-bottom>.pages-panel .pages-content{min-height:0;overflow-y:auto}@media (max-width:700px){.home-v2 .home-row-bottom>.pages-panel{height:auto}.home-v2 .home-row-bottom>.pages-panel .pages-sidebar,.home-v2 .home-row-bottom>.pages-panel .pages-content{overflow-y:visible}}.home-v2 .todo-avatar,.home-v2 .proj-avatar{background:var(--av-bg);color:var(--av-fg)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .home-v2 .todo-avatar,:root:not([data-theme=light]) .home-v2 .proj-avatar{background:color-mix(in srgb, var(--av-fg) 30%, transparent);color:color-mix(in srgb, var(--av-fg) 35%, #fff)}}:root[data-theme=dark] .home-v2 .todo-avatar,:root[data-theme=dark] .home-v2 .proj-avatar{background:color-mix(in srgb, var(--av-fg) 30%, transparent);color:color-mix(in srgb, var(--av-fg) 35%, #fff)}body{-webkit-font-smoothing:antialiased;font-family:Geist,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select,textarea{font-family:inherit}:root{--hv-sidebar:#fbfbfc;--hv-nav-hover:#f0f2f5}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hv-sidebar:var(--surface);--hv-nav-hover:#ffffff0f}}:root[data-theme=dark]{--hv-sidebar:var(--surface);--hv-nav-hover:#ffffff0f}.sidebar{background:var(--hv-sidebar);border-right:1px solid var(--hv-border);gap:0;padding:20px 14px}.sidebar:not(.is-collapsed){width:248px}.sidebar-head{min-height:0;padding:4px 0 20px}.sidebar:not(.is-collapsed) .sidebar-wordmark{margin-left:-4px}.sidebar.is-collapsed .sidebar-head{padding:4px 0 20px}.sidebar-brand{padding:0;text-decoration:none}.sidebar:not(.is-collapsed) .sidebar-edgetab{border:1px solid var(--hv-border);background:var(--hv-panel);width:28px;height:28px;color:var(--hv-muted);border-radius:7px;margin-top:0;font-size:15px}.sidebar:not(.is-collapsed) .sidebar-edgetab:hover{background:var(--hv-btn-hover);border-color:var(--hv-border);color:var(--hv-text)}.sidebar-search{border:1px solid var(--hv-border);background:var(--hv-panel);cursor:text;border-radius:9px;gap:8px;height:36px;margin:0;padding:0 10px}.sidebar-search:focus-within{border-color:var(--hv-accent)}.sidebar-search-icon{width:15px;height:15px;color:var(--hv-subtle)}.sidebar-search-input{color:var(--hv-text);font-size:13.5px}.sidebar-search-input::placeholder{color:var(--hv-subtle)}.sidebar-kbd{color:var(--hv-muted);border:1px solid var(--hv-border);background:var(--hv-soft);white-space:nowrap;border-radius:5px;flex-shrink:0;padding:1px 5px;font-family:Geist Mono,ui-monospace,monospace;font-size:11px}.sidebar-nav{gap:2px;margin-top:22px;overflow-y:auto}.sidebar.is-collapsed .sidebar-nav{margin-top:8px;overflow:visible}.sidebar.is-collapsed .sidebar-flyout{border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:10px;min-width:200px;margin-left:6px;padding:6px;box-shadow:0 12px 32px #10182829}@media (min-width:901px){.sidebar.is-collapsed{z-index:45}}.sidebar.is-collapsed .sidebar-flyout:before{content:"";width:8px;position:absolute;top:0;bottom:0;left:-8px}.sidebar-section+.sidebar-section{margin-top:0}.sidebar-section-title{letter-spacing:.06em;color:var(--hv-subtle);padding:0 10px 6px;font-size:11px;font-weight:600}.sidebar-section+.sidebar-section .sidebar-section-title{padding-top:18px}.sidebar-link{color:var(--hv-group);border-radius:8px;font-size:14px;font-weight:500;text-decoration:none}.sidebar:not(.is-collapsed) .sidebar-link{gap:10px;height:34px;padding:0 10px}.sidebar .nav-icon{width:17px;height:17px}.sidebar-link:hover{background:var(--hv-nav-hover);color:var(--hv-text)}.sidebar-link.is-active,.sidebar-grouphead.is-active{background:var(--hv-accent-soft);color:var(--hv-accent);font-weight:600}.sidebar-sub{border:none;margin:2px 0 4px;padding:0}.sidebar-sublink{height:30px;color:var(--hv-muted);border-radius:8px;align-items:center;padding:0 10px 0 37px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.sidebar-sublink:hover{background:var(--hv-nav-hover);color:var(--hv-text)}.sidebar-sublink.is-active{color:var(--hv-accent);background:0 0;font-weight:600}.sidebar-foot{border-top:none;margin-top:auto;padding-top:12px;position:relative}.sidebar-usercard{width:100%;color:var(--hv-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.sidebar-usercard:hover,.sidebar-usercard[aria-expanded=true]{background:var(--hv-nav-hover);opacity:1;transform:none}.sidebar.is-collapsed .sidebar-usercard{justify-content:center;padding:8px 0}.sidebar-avatar{background:var(--hv-accent);color:#fff;border-radius:50%;width:32px;height:32px;font-size:12px;font-weight:600}.sidebar-user-info{flex:1;gap:0;min-width:0}.sidebar-user-name{color:var(--hv-text);font-size:13.5px;font-weight:600}.sidebar-user-role{color:var(--hv-muted);font-size:12px}.sidebar-usercard-chevron{color:var(--hv-subtle);flex-shrink:0}.sidebar-usermenu{z-index:30;border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:10px;padding:4px;position:absolute;bottom:calc(100% - 4px);left:0;right:0;box-shadow:0 8px 24px #1018281f}.sidebar.is-collapsed .sidebar-usermenu{width:180px;bottom:0;left:calc(100% + 8px);right:auto}.sidebar-usermenu form{margin:0}.sidebar-usermenu-item{width:100%;height:34px;color:var(--hv-text);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.sidebar-usermenu-item:hover{background:var(--hv-nav-hover);opacity:1;transform:none}.sidebar-usermenu-item.is-danger:hover{color:var(--hv-red);background:var(--hv-red-soft)}.sidebar-usermenu-item .nav-icon{width:15px;height:15px}.home-v2 .tasks-panel .todo-groups{flex:1;min-height:0;overflow-y:auto}@media (min-width:1280px){.home-v2 .home-row-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}.home-v2 .home-row-top>.tasks-panel{contain:size}}.home-v2 .todo-title-btn{text-align:left;width:100%;font:inherit;color:var(--hv-text);cursor:pointer;background:0 0;border:0;border-radius:0;padding:0;font-size:14px;line-height:1.4;display:block}.home-v2 .todo-title-btn:hover{color:var(--hv-accent);opacity:1;transform:none}.home-v2 .todo-pencil:hover{color:var(--hv-accent);background:var(--hv-accent-soft)}.home-v2 .todo-item-editing{background:var(--hv-soft);display:block}.home-v2 .todo-item-editing:hover{background:var(--hv-soft)}.home-v2 .todo-edit{flex-direction:column;gap:8px;display:flex}.home-v2 .todo-edit-input{border:1px solid var(--hv-accent);background:var(--hv-panel);width:100%;height:auto;color:var(--hv-text);border-radius:8px;outline:none;padding:8px 10px;font-size:14px}.home-v2 .todo-edit .todo-compose-row{padding:0}.home-v2 .todo-edit-cancel{border:1px solid var(--hv-border);background:var(--hv-panel);height:28px;color:var(--hv-control);border-radius:7px;margin-left:auto;padding:0 12px;font-size:13px;font-weight:500}.home-v2 .todo-edit-cancel:hover{background:var(--hv-btn-hover);opacity:1;transform:none}.home-v2 .todo-edit-save{margin-left:0}:root{--lt-fill:#f2f3f6;--lt-fill-hover:#eceef2;--lt-foot:#f7f8fa}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lt-fill:#ffffff0f;--lt-fill-hover:#ffffff17;--lt-foot:#ffffff08}}:root[data-theme=dark]{--lt-fill:#ffffff0f;--lt-fill-hover:#ffffff17;--lt-foot:#ffffff08}.home-actions{z-index:40;align-items:center;gap:8px;font-family:Geist,system-ui,sans-serif;display:flex;position:fixed;top:2rem;right:calc(2.5rem + 46px)}.home-actions .timer-pill{position:static}.timer-pill.is-paused .timer-pill-dot{background:var(--hv-subtle)}.log-time-btn,.lt-grad-btn{background:var(--brand-gradient);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-weight:600;display:inline-flex}.log-time-btn{height:38px;padding:0 18px 0 16px;font-size:13.5px}.log-time-btn:hover,.lt-grad-btn:hover{opacity:.92;transform:none}.lt-grad-btn:disabled{opacity:.5;cursor:not-allowed}.home-v2 .home-head{padding-right:560px}@media (max-width:1100px){.home-v2 .home-head{padding-top:3rem;padding-right:0}}@media (max-width:640px){.home-actions{top:1rem;right:calc(1rem + 46px)}.home-actions .timer-pill-client{display:none}}@media print{.home-actions{display:none!important}}.time-modal.lt-modal{background:var(--hv-panel);max-width:460px;color:var(--hv-text);border:none;border-radius:20px;flex-direction:column;padding:0;font-family:Geist,system-ui,sans-serif;display:flex;overflow:hidden}.time-modal.lt-modal.lt-window{white-space:normal;text-align:left;border:1px solid var(--hv-border);width:calc(100% - 32px);max-width:640px;max-height:calc(100vh - 32px);position:fixed;top:50%;left:50%;box-shadow:0 12px 36px #1018282e}.lt-fade{z-index:99;pointer-events:none;background:#17171c73;animation:.15s ease-out lt-fade-in;position:fixed;inset:0}@keyframes lt-fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.lt-fade{animation:none}}.time-modal.lt-modal.lt-window.is-front{box-shadow:0 24px 64px #10182852}.lt-head{cursor:move;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 22px 10px;display:flex}.lt-title{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600}.lt-sub{color:var(--hv-muted);margin:4px 0 0;font-size:13px}.lt-head-actions{flex-shrink:0;gap:2px;display:flex}.lt-close{width:30px;height:30px;color:var(--hv-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;padding:0;display:grid}.lt-close:hover{background:var(--lt-fill);color:var(--hv-text);opacity:1;transform:none}.lt-form{flex-direction:column;min-height:0;display:flex}.lt-body{flex-direction:column;gap:16px;padding:10px 22px 22px;display:flex;overflow-y:auto}.lt-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.lt-field{flex-direction:column;gap:7px;min-width:0;display:flex}.lt-label{color:var(--hv-text);font-size:13.5px;font-weight:600}.lt-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.lt-req{color:var(--hv-red)}.lt-link{color:var(--hv-accent);cursor:pointer;background:0 0;border:none;border-radius:0;padding:0;font-size:13px;font-weight:500}.lt-link:hover{opacity:1;text-decoration:underline;transform:none}.lt-link:disabled{color:var(--hv-subtle);cursor:not-allowed;text-decoration:none}.lt-input{background:var(--lt-fill);width:100%;height:42px;color:var(--hv-text);border:1px solid #0000;border-radius:12px;outline:none;padding:0 12px;font-family:inherit;font-size:14.5px}.lt-input:hover{background:var(--lt-fill-hover)}.lt-input:focus{border-color:var(--hv-accent);background:var(--hv-panel)}.lt-input:disabled{color:var(--hv-muted);cursor:not-allowed}input[type=date].lt-input{font-family:Geist Mono,ui-monospace,monospace}.lt-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2398a2b3' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:34px}.lt-select-wrap{display:block;position:relative}.lt-client-dot{background:var(--hv-subtle);pointer-events:none;border-radius:2px;width:9px;height:9px;margin-top:-4.5px;position:absolute;top:50%;left:12px}.lt-select-dotted{padding-left:28px}.lt-textarea{resize:vertical;height:auto;min-height:92px;padding:10px 12px;line-height:1.45}.lt-count{text-align:right;font-variant-numeric:tabular-nums;color:var(--hv-muted);margin-top:6px;font-size:11.5px;display:block}.lt-ai-note{color:var(--hv-amber,#b45309);margin-top:4px;font-size:12px;display:block}.lt-count.is-over{color:var(--hv-red,#d6344b);font-weight:600}.lt-timer{background:var(--lt-fill);border-radius:14px;align-items:center;gap:12px;padding:10px 10px 10px 16px;display:flex}.lt-timer-dot{background:var(--hv-subtle);border-radius:50%;flex-shrink:0;width:8px;height:8px}.lt-timer.is-running .lt-timer-dot{background:var(--hv-red);box-shadow:0 0 0 3px #d6344b2e}.lt-timer-display{letter-spacing:.01em;font-variant-numeric:tabular-nums;flex:1;font-family:Geist Mono,ui-monospace,monospace;font-size:26px;font-weight:600}.lt-timer-btn{height:38px;padding:0 22px;font-size:14px}.lt-range{grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;display:grid}.lt-range input[type=time]{font-family:Geist Mono,ui-monospace,monospace}.lt-range-total{text-align:right;min-width:64px;color:var(--hv-muted);font-family:Geist Mono,ui-monospace,monospace;font-size:13.5px}.lt-range-total.is-invalid{color:var(--hv-red)}.lt-billable{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.lt-billable-title{font-size:14px;font-weight:600;display:block}.lt-billable-sub{color:var(--hv-muted);margin-top:1px;font-size:12.5px;display:block}.lt-switch{appearance:none;background:var(--hv-dashed);cursor:pointer;border-radius:999px;flex-shrink:0;width:38px;height:22px;margin:0;transition:background .15s;position:relative}.lt-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #10182833}.lt-switch:checked{background:var(--hv-accent)}.lt-switch:checked:after{transform:translate(16px)}.lt-switch:focus-visible{outline:2px solid var(--hv-accent);outline-offset:2px}.lt-foot{background:var(--lt-foot);border-top:1px solid var(--hv-border);align-items:center;gap:10px;padding:16px 22px;display:flex}.lt-hint{color:var(--hv-subtle);flex:1;font-size:12.5px}.lt-hint.is-error{color:var(--hv-red,#d6344b);font-weight:500}.lt-hint kbd{color:var(--hv-muted);font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.lt-cancel{background:var(--lt-fill);height:40px;color:var(--hv-text);cursor:pointer;border:none;border-radius:999px;padding:0 20px;font-size:14px;font-weight:500}.lt-cancel:hover{background:var(--lt-fill-hover);opacity:1;transform:none}.lt-save{height:40px;padding:0 24px;font-size:14px}@media (max-width:520px){.lt-grid{grid-template-columns:1fr}.lt-hint{display:none}}.lt-form{flex:auto}.time-modal.lt-modal>form{flex-direction:column;flex:auto;min-height:0;display:flex}.lt-body{flex:auto;min-height:0}fieldset.lt-body{border:0;min-width:0;margin:0}.sidebar-avatar{position:relative;overflow:hidden}.sidebar-avatar-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.topbar{z-index:40;pointer-events:none;justify-content:flex-end;align-items:center;gap:8px;height:66px;padding:28px 40px 0;display:flex;position:sticky;top:0}.topbar>*{pointer-events:auto}.topbar:empty{display:none}.topbar .theme-switch{position:static}.shell-main>.topbar+.home-v2{margin-top:-66px}.header-actions{align-items:center;gap:8px;font-family:Geist,system-ui,sans-serif;display:flex}.header-actions .timer-pill{position:static}.shift-clock{font-family:Geist,system-ui,sans-serif;position:relative}.topbar button.shift-pill{border:1px solid var(--hv-border);background:var(--hv-panel);height:38px;color:var(--hv-text);cursor:pointer;box-shadow:none;border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 14px;font:600 13.5px Geist,system-ui,sans-serif;display:inline-flex}.topbar button.shift-pill:hover{border-color:var(--hv-border-hover);opacity:1;transform:none}.topbar button.shift-pill:disabled{opacity:.55;cursor:default}.topbar button.shift-pill.is-on{font-variant-numeric:tabular-nums}.shift-dot{background:#1f9d55;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #1f9d552e}.shift-menu{z-index:60;border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:14px;width:240px;padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px -12px #10182840}.shift-menu-line{color:var(--hv-muted);margin:0 0 4px;font-size:13px}.shift-menu-line strong{color:var(--hv-text)}.shift-menu .shift-menu-out{width:100%;height:38px;margin-top:10px}.shift-menu-link{text-align:center;color:var(--hv-accent);margin-top:10px;font-size:12.5px;font-weight:600;text-decoration:none;display:block}.shift-error{z-index:60;background:var(--hv-red-soft);width:240px;color:var(--hv-red);cursor:pointer;border-radius:10px;padding:10px 12px;font-size:12.5px;position:absolute;top:calc(100% + 8px);right:0}.shift-reminder{z-index:55;border:1px solid var(--hv-border);border-left:4px solid var(--hv-amber);background:var(--hv-panel);max-width:560px;color:var(--hv-text);pointer-events:auto;border-radius:14px;align-items:center;gap:12px;padding:12px 14px 12px 16px;font:13.5px/1.45 Geist,system-ui,sans-serif;display:flex;position:fixed;top:84px;right:40px;box-shadow:0 12px 32px -12px #10182840}.shift-reminder .lt-grad-btn{flex:none;height:34px;padding:0 16px}.topbar button.shift-reminder-dismiss{color:var(--hv-muted);cursor:pointer;box-shadow:none;background:0 0;border:none;flex:none;padding:0;font:600 12.5px Geist,system-ui,sans-serif}.topbar button.shift-reminder-dismiss:hover{color:var(--hv-text);opacity:1;transform:none}.shift-modal{max-width:500px}.time-modal.lt-modal.shift-clock-modal{max-width:540px}.shift-clock-modal .lt-foot{flex-wrap:wrap;justify-content:flex-end}.shift-clock-modal .lt-foot button{white-space:nowrap}.shift-clock-modal .lt-foot .lt-save{min-width:136px}.shift-notify-link{color:var(--brand-blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin-top:10px;padding:0;font-size:12.5px;display:block}.shift-notify-link:hover{text-decoration:underline}.shift-modal-error{background:var(--hv-red-soft);color:var(--hv-red);border-radius:10px;margin:0 22px 12px;padding:10px 12px;font-size:13px}.lt-body .shift-modal-error{margin:0}button.shift-delete{color:var(--hv-red);cursor:pointer;box-shadow:none;background:0 0;border:none;margin-right:auto;padding:0;font:600 13px Geist,system-ui,sans-serif}button.shift-delete:hover{opacity:1;text-decoration:underline;transform:none}@media (max-width:640px){.shift-reminder{flex-wrap:wrap;top:64px;left:12px;right:12px}}.iv-credit{border:1px solid var(--d-border);border-left:4px solid var(--d-ok);background:var(--d-ok-soft);color:var(--d-ink);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:16px 0 4px;padding:14px 16px;font-size:14px;display:flex}.iv-credit-ref{color:var(--d-muted);align-items:center;gap:8px;margin-left:auto;font-size:13px;display:flex}.iv-credit-ref input{width:240px;max-width:100%}.iv-writeoff{border-top:1px solid var(--d-border);margin-top:16px;padding-top:12px}.iv-writeoff-hint{color:var(--d-muted);margin:8px 0 12px;font-size:13px}.iv-writeoff-row td{color:var(--d-muted);font-style:italic}.credit-balance{color:var(--d-muted);margin-left:8px;font-size:13px;font-weight:500}.pill.credit-kind{background:var(--d-hover);color:var(--d-ink2)}.pill.credit-kind.is-overpayment,.pill.credit-kind.is-manual,.pill.credit-kind.is-credit_note{background:var(--d-ok-soft);color:var(--d-ok)}.pill.credit-kind.is-applied{background:var(--d-accent-soft);color:var(--d-accent)}.pill.credit-kind.is-refund{background:var(--d-warn-soft);color:var(--d-warn)}.credit-in{color:var(--d-ok);font-weight:600}.credit-out{color:var(--d-ink2)}.credit-actions{flex-direction:column;gap:4px;margin-top:16px;display:flex}.staff-onshift{flex-wrap:wrap;gap:10px;display:flex}.staff-onshift-chip{border:1px solid var(--d-border);background:var(--d-surface2);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:13.5px;display:inline-flex}.staff-onshift-chip span:last-child,.staff-muted{color:var(--d-muted)}.bank-explain{color:var(--d-muted);margin:-4px 0 16px;font-size:13px}.bank-pending-badge{background:var(--d-warn-soft);color:var(--d-warn);vertical-align:middle;border-radius:999px;margin-left:10px;padding:2px 10px;font-size:12px;font-weight:600}.bank-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:start;gap:10px;display:grid}.bank-stat{border:1px solid var(--d-border);background:var(--d-surface2);border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.bank-stat>span{color:var(--d-muted);font-size:12px}.bank-stat>strong{color:var(--d-ink);font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.bank-stat.is-main{border-color:var(--d-accent);background:var(--d-accent-soft)}.bank-stat.is-main .bank-balance{font-size:22px}.bank-balance{font-variant-numeric:tabular-nums;color:var(--d-ink);font-weight:700}.bank-balance.is-up{color:var(--d-ok)}.bank-balance.is-down{color:var(--d-danger)}.bank-subhead{color:var(--d-ink);margin:22px 0 8px;font-size:14px;font-weight:600}.bank-row-actions{white-space:nowrap;justify-content:flex-end;gap:12px;display:flex}.bank-amount{grid-template-columns:1fr 1fr;gap:12px;display:grid}.leave-cost{color:var(--d-muted);margin:0;font-size:12.5px}.leave-from{color:var(--d-muted);margin:10px 0 0;font-size:12.5px}.leave-from .zt-link{font-size:inherit}.pill.leave-ext{vertical-align:middle;margin-left:8px}.leave-stats .bank-stat{box-sizing:border-box;min-height:92px}.leave-stat-sub{color:var(--d-muted);font-size:11.5px}.leave-over{color:var(--d-danger)}.leave-hint{margin-top:4px;display:block}.sc-net{vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10.5px;font-weight:600}.sc-net.is-office{color:var(--d-ok);background:var(--d-ok-soft)}.sc-net.is-elsewhere{color:var(--d-muted);border:1px solid var(--d-border,#14141e1f)}.sc-flags{vertical-align:middle;flex-wrap:wrap;gap:4px;display:inline-flex}.sc-flag{white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:600}.sc-flag.is-warn{color:var(--d-danger);background:color-mix(in srgb, var(--d-danger) 12%, transparent)}.sc-flag.is-info{color:var(--d-muted);border:1px solid var(--d-border,#14141e1f)}.sc-flag.is-done{color:var(--d-muted);border:1px dashed var(--d-border,#14141e2e)}.sc-flag.is-done:before{content:"✓ "}.dv2 button.sc-review-btn{white-space:nowrap;cursor:pointer;font-size:11px}.dv2 button.sc-flag.sc-review-btn{font-family:inherit}.sc-flag.is-reviewed{color:var(--d-ok);background:var(--d-ok-soft);border:0}.sc-review-list ul{gap:4px;margin:6px 0 0;padding-left:18px;font-size:13px;display:grid}.sc-sub-head{margin:22px 0 8px;font-size:13px;font-weight:700}.dv2 button.payroll-closed{cursor:pointer;border:0;font-family:inherit}.payroll-close-log{color:var(--d-muted);gap:3px;margin:12px 0 0;padding-left:18px;font-size:12.5px;display:grid}.sc-review-link{vertical-align:middle;margin-left:10px;font-size:12px;text-decoration:none}.sc-pending{border:1px solid var(--d-border,#14141e1f);border-radius:12px;gap:4px;padding:10px 12px;font-size:13px;display:grid}.sc-pending .zt-link{justify-self:start}.cr-field{max-width:560px}.cr-hosts{color:var(--d-muted);margin:6px 0 0;padding:0;font-size:12.5px;list-style:none}.cr-hosts strong{color:var(--d-ink);font-weight:600}.cr-host-error{color:var(--d-danger)}.m365-fixes{color:var(--d-danger);margin:12px 0 0;padding-left:18px;font-size:13px}.m365-fixes li+li{margin-top:4px}.lc-cover{white-space:nowrap}.lc-cover .pill{margin-left:4px}.lc-ooo-note{color:var(--d-muted);white-space:normal;margin-top:3px;font-size:11.5px;display:block}.lc-gate{color:var(--d-muted);white-space:nowrap;font-size:12px}.lc-handover{white-space:pre-line;font-size:12.5px}.lc-ooo{border:1px solid var(--d-border,#14141e14);border-radius:12px;gap:4px;margin:14px 0 0;padding:10px 14px;font-size:13px;display:grid}.lc-ooo form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.lc-ooo .staff-muted{font-size:12px}.lc-tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.lc-tasks li{grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:10px;display:grid}.lc-task-title{overflow-wrap:anywhere;min-width:0;font-size:13px}.lc-task-title small{color:var(--d-muted);font-size:11.5px;display:block}.lc-task-no{font-weight:600}@media (max-width:560px){.lc-tasks li{grid-template-columns:1fr}}@media (max-width:900px){.topbar{height:50px;padding:12px 12px 0 56px}.shell-main>.topbar+.home-v2{margin-top:0}}@media (max-width:640px){.header-actions .timer-pill-client{display:none}.log-time-btn{padding:0 12px}}@media print{.topbar{display:none!important}}.timer-pill-wrap{position:relative}.timer-pill-count{border:none;border-left:1px solid var(--hv-border);height:100%;color:var(--hv-muted);cursor:pointer;background:0 0;border-radius:0;align-items:center;gap:3px;padding:0 10px;font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px;font-weight:600;display:flex}.timer-pill-count:hover,.timer-pill-count[aria-expanded=true]{background:var(--hv-btn-hover);color:var(--hv-text);opacity:1;transform:none}.timer-list{border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:12px;width:340px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 32px #10182824}.timer-list-head{letter-spacing:.06em;text-transform:uppercase;color:var(--hv-subtle);padding:6px 8px 8px;font-size:11px;font-weight:600}.timer-list-row{border-radius:8px;align-items:center;gap:4px;display:flex}.timer-list-row:hover{background:var(--hv-soft)}.timer-list-main{min-width:0;color:var(--hv-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;align-items:center;gap:10px;padding:8px;display:flex}.timer-list-main:hover{opacity:1;transform:none}.timer-list-row .timer-pill-dot{background:var(--hv-subtle);flex-shrink:0}.timer-list-row.is-running .timer-pill-dot{background:var(--hv-red)}.timer-list-text{flex-direction:column;flex:1;min-width:0;display:flex}.timer-list-client{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.timer-list-task{color:var(--hv-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.timer-list-action{height:28px;color:var(--hv-accent);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:0 8px;font-size:12.5px;font-weight:600}.timer-list-discard{width:28px;height:28px;color:var(--hv-dashed);cursor:pointer;background:0 0;border:none;border-radius:7px;place-items:center;padding:0;display:grid}.timer-list-action:hover,.timer-list-discard:hover{background:var(--hv-btn-hover);opacity:1;transform:none}.timer-list-discard:hover{color:var(--hv-red);background:var(--hv-red-soft)}.home-v2 .home-kicker{color:var(--hv-muted);margin:0 0 6px;font-size:13px}.home-v2 .home-sub{color:var(--hv-group);margin:8px 0 0;font-size:15px}.home-v2 .home-since{flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px;display:flex}.home-v2 .home-since-label{letter-spacing:.06em;text-transform:uppercase;color:var(--hv-subtle);margin-right:4px;font-size:11.5px;font-weight:600}.home-v2 .home-chip{border:1px solid var(--hv-border);background:var(--hv-panel);height:28px;color:var(--hv-text);border-radius:999px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:inline-flex}.home-v2 .home-chip-dot{border-radius:50%;width:7px;height:7px}.home-v2 .home-chip-dot.is-red{background:var(--hv-red)}.home-v2 .home-chip-dot.is-blue{background:var(--hv-accent)}.home-v2 .today-panel{flex-direction:column;display:flex}.home-v2 .today-toggle{background:var(--hv-btn-hover);border-radius:10px;padding:3px;display:inline-flex}.home-v2 .today-toggle a{height:26px;color:var(--hv-muted);border-radius:7px;align-items:center;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.home-v2 .today-toggle a.is-active{background:var(--hv-panel);color:var(--hv-text);box-shadow:0 1px 2px #10182814}.home-v2 .today-progress{background:var(--hv-btn-hover);border-radius:999px;height:4px;margin:0 20px 6px;overflow:hidden}.home-v2 .today-progress span{border-radius:inherit;background:var(--brand-gradient);height:100%;transition:width .3s;display:block}.home-v2 .today-scroll{flex:1;min-height:0;padding:0 0 12px;overflow-y:auto}.home-v2 .today-section{letter-spacing:.06em;text-transform:uppercase;color:var(--hv-subtle);padding:14px 20px 6px;font-size:11.5px;font-weight:600}.home-v2 .today-section.is-alert{color:var(--hv-red)}.home-v2 .today-alert{background:var(--hv-red-soft);border-radius:10px;align-items:center;gap:12px;margin:2px 12px 6px;padding:12px;display:flex}.home-v2 .today-alert-icon{background:var(--hv-panel);width:26px;height:26px;color:var(--hv-red);border-radius:7px;flex-shrink:0;place-items:center;display:grid}.home-v2 .today-row{grid-template-columns:44px 22px minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:9px 20px;display:grid}.home-v2 .today-row:hover{background:var(--hv-soft)}.home-v2 .today-row form{margin:0;display:flex}.home-v2 .today-time{color:var(--hv-muted);font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.home-v2 .today-time.is-overdue{color:var(--hv-red)}.home-v2 .today-check{border:1.5px solid var(--hv-border-hover);background:var(--hv-panel);cursor:pointer;border-radius:6px;place-items:center;width:20px;height:20px;padding:0;display:grid}.home-v2 .today-check:hover{border-color:var(--hv-accent);opacity:1;transform:none}.home-v2 .today-check.is-done{background:var(--hv-accent);border-color:var(--hv-accent)}.home-v2 .today-marker{border-radius:6px;width:20px;height:20px}.home-v2 .today-marker.is-event{background:var(--hv-event-bg)}.home-v2 .today-marker.is-break{background:repeating-linear-gradient(135deg, var(--hv-hatch-a) 0 4px, var(--hv-hatch-b) 4px 8px)}.home-v2 .today-marker.is-log{background:var(--brand-gradient)}.home-v2 .today-body-text{flex-direction:column;min-width:0;display:flex}.home-v2 .today-title{color:var(--hv-text);font-size:14px;line-height:1.4}.home-v2 .today-alert .today-title{font-weight:600}.home-v2 .today-sub{color:var(--hv-muted);align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.home-v2 .today-sub .today-client-tag{margin-top:0}.home-v2 .today-row.is-done .today-title{color:var(--hv-subtle);text-decoration:line-through}.home-v2 .today-row.is-break .today-title,.home-v2 .today-row.is-break .today-sub{color:var(--hv-subtle)}.home-v2 .today-btn-soft{background:var(--hv-accent-soft);height:30px;color:var(--hv-accent);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:0 14px;font-size:13px;font-weight:600}.home-v2 .today-btn-soft:hover{filter:brightness(.97);opacity:1;transform:none}.home-v2 .today-btn-grad{white-space:nowrap;height:30px;padding:0 16px;font-size:13px}.home-v2 .today-now{grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;padding:2px 20px;display:grid}.home-v2 .today-now-time{color:var(--hv-red);font-family:Geist Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.home-v2 .today-now-line{background:var(--hv-red);height:1px;position:relative}.home-v2 .today-now-line:before{content:"";background:var(--hv-red);border-radius:50%;width:8px;height:8px;position:absolute;top:-3.5px;left:0}.home-v2 .today-note{color:var(--hv-muted);margin:0;padding:4px 20px 8px;font-size:13px}@media (min-width:1280px){.home-v2 .home-row-top>.today-panel,.home-v2 .home-row-top>.tasks-panel{contain:size;min-height:600px}}.dv2{--d-surface:#fff;--d-surface2:#fbfbfc;--d-border:#e7e9ee;--d-line:#eef0f3;--d-ink:#101828;--d-ink2:#344054;--d-muted:#667085;--d-faint:#98a2b3;--d-hover:#f2f4f7;--d-accent:#2a4bb0;--d-accent-hover:#1f3a8f;--d-accent-soft:#e9edf8;--d-danger:#d23a4c;--d-danger-soft:#fdf0f2;--d-warn:#b35a14;--d-warn-soft:#fdf3e8;--d-ok:#1f8a4c;--d-ok-soft:#e7f6ec;--d-violet:#6b3fd4;--d-violet-soft:#efe9fd;--d-brand:linear-gradient(90deg, #2a4bb0, #d23a4c);--d-shadow:0 1px 2px #1018280a, 0 4px 16px #1018280d;--d-tip:#101828}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dv2{--d-surface:#14171f;--d-surface2:#181c25;--d-border:#252a36;--d-line:#1e222d;--d-ink:#eceef3;--d-ink2:#c4c9d4;--d-muted:#8b93a5;--d-faint:#5f6778;--d-hover:#1c202b;--d-accent:#6f8ae6;--d-accent-hover:#8ca2ee;--d-accent-soft:#1b2447;--d-danger:#e8606f;--d-danger-soft:#3a1a21;--d-warn:#f0a35c;--d-warn-soft:#33240f;--d-ok:#4cc38a;--d-ok-soft:#11301f;--d-violet:#a88bf0;--d-violet-soft:#241c3d;--d-brand:linear-gradient(90deg, #5b78e0, #e8606f);--d-shadow:none;--d-tip:#0b0d12}}:root[data-theme=dark] .dv2{--d-surface:#14171f;--d-surface2:#181c25;--d-border:#252a36;--d-line:#1e222d;--d-ink:#eceef3;--d-ink2:#c4c9d4;--d-muted:#8b93a5;--d-faint:#5f6778;--d-hover:#1c202b;--d-accent:#6f8ae6;--d-accent-hover:#8ca2ee;--d-accent-soft:#1b2447;--d-danger:#e8606f;--d-danger-soft:#3a1a21;--d-warn:#f0a35c;--d-warn-soft:#33240f;--d-ok:#4cc38a;--d-ok-soft:#11301f;--d-violet:#a88bf0;--d-violet-soft:#241c3d;--d-brand:linear-gradient(90deg, #5b78e0, #e8606f);--d-shadow:none;--d-tip:#0b0d12}.dv2{max-width:1480px;color:var(--d-ink);flex-direction:column;gap:20px;margin:0 auto;padding:28px 40px 72px;font-family:Geist,system-ui,sans-serif;display:flex}.dv2.is-narrow{max-width:1160px}.shell-main>.topbar+.dv2{margin-top:-66px}.page:has(>.dv2){max-width:none;margin:0;padding:0}.shell-main>.topbar+.page>.dv2{margin-top:-66px}.dv2 button,.dv2 input,.dv2 select{font-family:inherit}.dv2 a:not(.btn):not(.btn-sm):not(.btn-ghost):not(.pager-perlink):not(.pager-num){color:var(--d-accent)}.dv2-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;padding:0 0 4px;display:flex}.dv2-head>:first-child{max-width:calc(100% - 560px)}.dv2-head>.dv2-head-actions{flex-basis:100%;justify-content:flex-end;margin-top:-8px}.dv2-head h1{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:600}.dv2-head h1.doc-title{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.dv2-head h1.doc-title .pill{letter-spacing:0;text-transform:capitalize;padding:6px 12px;font-size:13px;font-weight:600;line-height:1}.dv2-head p{color:var(--d-muted);margin:6px 0 0;font-size:14px}.dv2-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (max-width:1100px){.dv2-head>:first-child{max-width:none}.dv2-head>.dv2-head-actions{flex-basis:auto;margin:0 0 0 auto}.shell-main>.topbar+.dv2{margin-top:0}}@media (max-width:640px){.dv2{padding:20px 16px 48px}}.dv2-card{background:var(--d-surface);border:1px solid var(--d-border);box-shadow:var(--d-shadow);border-radius:14px}.dv2-card.is-soft{border:none;border-radius:16px}.dv2-card-pad{padding:18px 20px 20px}.dv2-card h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.dv2-count{color:var(--d-faint);font-size:13px}.dv2-seg{border:1px solid var(--d-border);background:var(--d-surface);border-radius:10px;gap:2px;padding:3px;display:flex}.dv2-seg.is-filled{background:var(--d-hover);border:none}.dv2-seg.is-raised{box-shadow:var(--d-shadow);border:none}.dv2-seg a,.dv2-seg button{height:30px;color:var(--d-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;align-items:center;padding:0 12px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.dv2-seg a:hover,.dv2-seg button:hover{color:var(--d-ink);opacity:1;text-decoration:none;transform:none}.dv2-seg .is-active{background:var(--d-accent-soft);color:var(--d-accent)}.dv2-seg-select-input{height:30px;color:var(--d-ink);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:500}.dv2-seg-select-input:hover{background:var(--d-hover)}.dv2-seg-select-input:focus-visible{outline:2px solid var(--d-accent);outline-offset:-2px}.dv2-grad{background:var(--d-brand);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:13.5px;font-weight:600;display:inline-flex;position:relative}.dv2-grad:hover{filter:brightness(1.08);opacity:1;transform:none}.dv2-grad select{opacity:0;cursor:pointer;position:absolute;inset:0}.dv2-mono{font-family:Geist Mono,ui-monospace,monospace}.dv2-table-head{background:var(--d-surface2);border-top:1px solid var(--d-line);border-bottom:1px solid var(--d-line);letter-spacing:.05em;text-transform:uppercase;color:var(--d-faint);padding:10px 20px;font-size:11.5px;font-weight:600}.dv2-table-head button{all:unset;cursor:pointer}.dv2-tip{z-index:2;background:var(--d-tip);color:#fff;white-space:nowrap;pointer-events:none;border:1px solid #2a3040;border-radius:8px;padding:8px 10px;font-size:11.5px;line-height:1.6;position:absolute}.dv2-tip .dv2-mono{color:#cfd4dc}:where(.dv2) button:where(:not(.btn):not(.btn-sm):not(.btn-ghost)){color:inherit;font-size:inherit;font-weight:inherit;background:0 0;border:none;border-radius:0;align-items:center;padding:0;display:inline-flex}:where(.dv2) button:where(:not(.btn):not(.btn-sm):not(.btn-ghost)):hover{opacity:1;transform:none}:where(.dv2) input{height:auto;box-shadow:none;color:var(--d-ink);background:0 0;border:none;border-radius:0;outline:none;margin:0;padding:0;font-size:14px}:where(.dv2) input::placeholder{color:var(--d-faint)}.dv2-head-actions{margin-left:auto}.rv-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px;display:grid}.rv-kpi{padding:18px 20px}.rv-kpi-label,.rv-kpi-sub{color:var(--d-muted);font-size:12.5px}.rv-kpi-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--d-ink);margin-top:6px;font-size:26px;font-weight:600}.rv-kpi-value.is-ok{color:var(--d-ok)}.rv-kpi-value.is-danger{color:var(--d-danger)}.rv-kpi-sub{margin-top:6px}a.rv-kpi{text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:block}a.rv-kpi:hover{border-color:var(--d-accent);transform:translateY(-1px);box-shadow:0 4px 16px #2a4bb01f}.rv-pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));align-items:stretch;gap:20px;display:grid}.rv-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.rv-card-head.is-baseline{flex-wrap:nowrap;align-items:baseline}.rv-card-head .dv2-mono{font-size:13px}.rv-legend{color:var(--d-muted);gap:16px;font-size:12.5px;display:flex}.rv-legend span{align-items:center;gap:6px;display:flex}.rv-legend i{border-radius:3px;width:10px;height:10px}.rv-legend i.is-rev,.rv-bar.is-rev{background:var(--d-accent)}.rv-legend i.is-exp,.rv-bar.is-exp{background:var(--d-danger)}.bl{flex-direction:column;gap:2px;margin:14px 0 0;padding:0;list-style:none;display:flex}.bl-row{color:inherit;border-radius:8px;grid-template-columns:minmax(0,1.4fr) minmax(0,1.4fr) auto;align-items:center;gap:14px;margin:0 -10px;padding:8px 10px;text-decoration:none;display:grid}a.bl-row:hover,a.bl-row:focus-visible,div.bl-row:hover{background:var(--d-hover)}a.bl-row:focus-visible{outline:2px solid var(--d-accent);outline-offset:-2px}.bl-label{text-overflow:ellipsis;white-space:nowrap;color:var(--d-ink2);font-size:13.5px;overflow:hidden}.bl-track{height:10px;display:block}.bl-bar{border-radius:0 4px 4px 0;height:100%;display:block}.bl-value{text-align:right;font-variant-numeric:tabular-nums;min-width:96px;color:var(--d-ink);white-space:nowrap;font-size:13.5px;font-weight:600}.bl-value.is-zero{color:var(--d-muted);font-weight:400}.bl-sub{color:var(--d-muted);margin-top:1px;font-size:11.5px;font-weight:400;display:block}.bl-head-total{color:var(--d-ink);flex-direction:column;align-items:flex-end;font-size:18px;font-weight:600;line-height:1.2;display:flex}.bl-head-total span{color:var(--d-muted);font-size:12px;font-weight:500}.bl-head-total span.is-overdue{color:var(--d-danger)}.bl-tone-expense{background:var(--d-danger)}.bl-tone-muted{background:var(--bl-muted)}.dv2{--bl-muted:#98a2b3;--bl-age-1:#99aedf;--bl-age-2:#7994d3;--bl-age-3:#5a79c7;--bl-age-4:#4062bb;--bl-age-5:#2a4bb0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dv2{--bl-muted:#5d6575;--bl-age-1:#4a5b94;--bl-age-2:#5b71ba;--bl-age-3:#6f8ae6;--bl-age-4:#8da4ed;--bl-age-5:#a9bcf3}}:root[data-theme=dark] .dv2{--bl-muted:#5d6575;--bl-age-1:#4a5b94;--bl-age-2:#5b71ba;--bl-age-3:#6f8ae6;--bl-age-4:#8da4ed;--bl-age-5:#a9bcf3}.bl-tone-age-1{background:var(--bl-age-1)}.bl-tone-age-2{background:var(--bl-age-2)}.bl-tone-age-3{background:var(--bl-age-3)}.bl-tone-age-4{background:var(--bl-age-4)}.bl-tone-age-5{background:var(--bl-age-5)}@media (max-width:560px){.bl-row{grid-template-columns:minmax(0,1fr) auto;row-gap:6px}.bl-track{grid-area:2/1/auto/-1}}.rv-chart{grid-template-columns:44px minmax(0,1fr);margin-top:22px;display:grid}.rv-yaxis{height:232px;color:var(--d-faint);flex-direction:column;justify-content:space-between;margin-top:-6px;font-size:10.5px;display:flex}.rv-plot{background-image:repeating-linear-gradient(to top, var(--d-line) 0 1px, transparent 1px 55px);border-bottom:1px solid var(--d-border);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:6px;height:220px;display:grid}.rv-col{justify-content:center;align-items:flex-end;gap:3px;height:100%;transition:opacity .15s;display:flex;position:relative}.rv-bar{border-radius:4px 4px 0 0;width:min(45%,16px)}.rv-tip{left:50%;transform:translate(-50%)}.rv-labels{grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;padding-top:8px;display:grid}.rv-labels span{text-align:center;color:var(--d-faint);font-size:12px}.rv-labels span.is-in{color:var(--d-ink2)}.rv-cats{flex-direction:column;gap:14px;margin-top:20px;display:flex}.rv-cat-row{justify-content:space-between;align-items:baseline;gap:12px;font-size:13.5px;display:flex}.rv-cat-nums{white-space:nowrap;align-items:baseline;gap:12px;display:flex}.rv-cat-nums .rv-strong{font-size:12.5px}.rv-cat-nums .rv-faint{text-align:right;min-width:30px;font-size:12px}.rv-cat-track{background:var(--d-line);border-radius:3px;height:6px;margin-top:6px;overflow:hidden}.rv-cat-track span{background:var(--d-danger);border-radius:3px;height:100%;display:block}.rv-ink2{color:var(--d-ink2)}.rv-muted{color:var(--d-muted)}.rv-faint{color:var(--d-faint)}.rv-strong{color:var(--d-ink);font-weight:500}.rv-empty{color:var(--d-muted);margin:20px 0 0;font-size:13.5px}.rv-clients{overflow:hidden}.rv-clients-head{align-items:baseline;gap:8px;padding:18px 20px 14px;display:flex}.rv-clients .rv-empty{margin:0;padding:16px 20px}.rv-grid{grid-template-columns:minmax(0,2.2fr) minmax(0,2fr) 90px 140px 64px;align-items:center;gap:16px;display:grid}.rv-grid .is-num{text-align:right;justify-content:flex-end}.rv-row{border-bottom:1px solid var(--d-line);padding:12px 20px;font-size:13px}.dv2 a.rv-row{color:var(--d-ink);text-decoration:none}.dv2 a.rv-row:hover{background:var(--d-hover);text-decoration:none}.rv-client{align-items:center;gap:10px;min-width:0;display:flex}.rv-initials{background:var(--d-accent-soft);width:28px;height:28px;color:var(--d-accent);border-radius:7px;flex-shrink:0;place-items:center;font-size:11px;font-weight:600;display:grid}.rv-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.rv-share-bar{background:var(--d-line);border-radius:4px;height:8px;overflow:hidden}.rv-share-bar span{background:var(--d-accent);border-radius:4px;height:100%;display:block}.rv-total{padding:12px 20px;font-size:13px;font-weight:600}@media (max-width:760px){.rv-grid{grid-template-columns:minmax(0,1fr) 70px 120px}.rv-grid>:nth-child(2),.rv-grid>:nth-child(5){display:none}}.ac-roles{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px;display:grid}.ac-role-head{align-items:center;gap:10px;display:flex}.ac-badge{background:var(--d-hover);color:var(--d-ink2);letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:3px 8px;font-size:11.5px;font-weight:600}.ac-badge.is-admin{background:var(--d-accent-soft);color:var(--d-accent)}.ac-role-note{color:var(--d-muted);font-size:13px}.ac-role-text{color:var(--d-ink2);margin:12px 0 0;font-size:14px;line-height:1.55}.ac-extras{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.ac-extras span{background:var(--d-hover);color:var(--d-ink2);border-radius:6px;padding:4px 9px;font-size:12.5px}.ac-invite-head{padding:18px 20px 4px}.ac-invite-head p{color:var(--d-muted);margin:4px 0 0;font-size:13px}.ac-invite-body{padding:14px 20px 18px}.ac-invite-row{flex-wrap:wrap;gap:8px;display:flex}.ac-email{background:var(--d-hover);min-width:240px;height:40px;color:var(--d-faint);border:1px solid #0000;border-radius:10px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.ac-email.is-error{border-color:var(--d-danger)}.ac-email input{flex:1;min-width:0}.ac-invite-row .dv2-seg button{height:32px;padding:0 14px}.dv2-grad.ac-invite-btn{height:40px;padding:0 18px}.ac-error{color:var(--d-danger);margin:8px 0 0;font-size:12.5px}.ac-people{overflow:hidden}.ac-people-head{align-items:baseline;gap:8px;padding:18px 20px 14px;display:flex}.ac-people .dv2-table-head{border:none}.ac-grid{grid-template-columns:minmax(160px,2fr) minmax(90px,.8fr) minmax(90px,.8fr) 140px;align-items:center;gap:16px;display:grid}.ac-row{border-bottom:1px solid var(--d-line);padding:12px 20px}.ac-row:hover{background:var(--d-hover)}.ac-person{align-items:center;gap:12px;min-width:0;display:flex}.ac-avatar{background:var(--d-accent-soft);width:34px;height:34px;color:var(--d-accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:600;display:grid;position:relative;overflow:hidden}.ac-avatar.is-you{background:var(--d-brand);color:#fff}.ac-avatar.is-pending{color:var(--d-faint);border:1.5px dashed var(--d-faint);background:0 0}.ac-avatar-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.ac-person-text{min-width:0}.ac-person-name{align-items:center;gap:8px;min-width:0;font-size:14px;font-weight:500;display:flex}.ac-person-name>span:first-child,.ac-person-email{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.ac-person-email{color:var(--d-muted);font-size:12.5px}.ac-you{background:var(--d-hover);color:var(--d-muted);border-radius:5px;flex-shrink:0;padding:0 5px;font-size:11px;font-weight:500}.ac-row:hover .ac-you{background:var(--d-surface)}.ac-role{background:var(--d-hover);color:var(--d-ink2);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:4px 9px;font-size:12px;font-weight:600;display:inline-flex;position:relative}.ac-role.is-admin{background:var(--d-accent-soft);color:var(--d-accent)}.ac-role:not(.is-disabled):not(.is-locked):hover{filter:brightness(.97)}.ac-role.is-disabled,.ac-role.is-locked{cursor:default}.ac-role select{opacity:0;cursor:pointer;position:absolute;inset:0}.ac-seen{color:var(--d-muted);font-size:13px}.ac-seen.is-pending{color:var(--d-warn)}.ac-actions{justify-content:flex-end;display:flex}.ac-managed{color:var(--d-faint);white-space:nowrap;font-size:12px}.dv2 .ac-remove{background:var(--d-hover);height:28px;color:var(--d-ink2);cursor:pointer;border-radius:7px;padding:0 10px;font-size:12.5px;font-weight:500}.dv2 .ac-remove:hover{background:var(--d-danger-soft);color:var(--d-danger)}.ac-row:hover .ac-remove:not(:hover){background:var(--d-surface)}.ac-env-note{color:var(--d-muted);align-items:center;gap:8px;padding:12px 20px;font-size:12.5px;display:flex}.ac-code{background:var(--d-hover);color:var(--d-ink2);border-radius:4px;padding:1px 5px;font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.ac-note{color:var(--d-muted);margin:0;padding:16px 20px;font-size:13.5px}@media (max-width:640px){.ac-grid{grid-template-columns:minmax(0,1fr) auto}.ac-grid>:nth-child(3){display:none}.ac-grid>:nth-child(4){grid-column:1/-1;justify-content:flex-start}}.au-head-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:-8px;display:flex}.dv2 .au-report-btn{border:1px solid var(--d-border);background:var(--d-surface);height:38px;color:var(--d-ink2);cursor:pointer;border-radius:999px;padding:0 16px;font-size:13.5px;font-weight:600}.dv2 .au-report-btn:hover{background:var(--d-hover);color:var(--d-ink)}.au-filters{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.au-search{background:var(--d-surface);min-width:240px;height:40px;box-shadow:var(--d-shadow);color:var(--d-faint);border-radius:10px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.au-search input{flex:1;min-width:0}.dv2 .au-clear{color:var(--d-faint);cursor:pointer;font-size:12.5px}.dv2 .au-clear:hover{color:var(--d-ink)}.au-filters .dv2-seg{background:var(--d-surface)}.au-filters .dv2-seg button{height:32px}.au-cats{flex-wrap:wrap;gap:6px;margin-top:-8px;display:flex}.dv2 .au-cats button{background:var(--d-surface);height:30px;color:var(--d-ink2);cursor:pointer;border-radius:999px;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500}.dv2 .au-cats button:hover{background:var(--d-hover)}.dv2 .au-cats button.is-active{background:var(--d-ink);color:var(--d-surface)}.au-cats .dv2-mono{opacity:.7;font-size:11.5px}.au-list>div:first-child .au-day{border-radius:16px 16px 0 0}.au-day{z-index:2;background:var(--d-surface);align-items:baseline;gap:10px;padding:14px 20px 8px;display:flex;position:sticky;top:0}.au-day-label{font-size:13px;font-weight:600}.au-day-sub{color:var(--d-faint);font-size:12.5px}.dv2 .au-row{text-align:left;width:100%;color:var(--d-ink);cursor:pointer;grid-template-columns:72px 28px minmax(0,1fr) auto 16px;align-items:center;gap:14px;padding:10px 20px;font-size:14px;display:grid}.dv2 .au-row:hover,.dv2 .au-row.is-open{background:var(--d-hover)}.au-time{color:var(--d-muted);font-size:12px}.au-avatar{border-radius:50%;place-items:center;width:28px;height:28px;font-size:10.5px;font-weight:600;display:grid}.au-text{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;line-height:1.4;display:flex}.au-actor{font-weight:600}.au-verb{color:var(--d-ink2)}.au-subject{overflow-wrap:anywhere;font-weight:500}.au-extra{color:var(--d-muted)}.au-pill{border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600}.au-times{background:var(--d-hover);color:var(--d-ink2);border-radius:6px;padding:2px 7px;font-size:11.5px;font-weight:600}.au-row:hover .au-times,.au-row.is-open .au-times{background:var(--d-surface)}.au-cat{white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;display:flex}.au-cat .dv2-mono{opacity:.85}.au-chev{color:var(--d-faint);transition:transform .15s}.au-row.is-open .au-chev{transform:rotate(90deg)}.au-detail{background:var(--d-surface2);border-radius:12px;grid-template-columns:90px minmax(0,1fr);gap:8px 16px;margin:0 20px 10px 106px;padding:14px 16px;font-size:12.5px;display:grid}.au-detail>span:nth-child(odd){color:var(--d-faint)}.au-detail>span:nth-child(2n){color:var(--d-ink2);overflow-wrap:anywhere}.au-all-times{flex-wrap:wrap;gap:4px;display:flex}.au-all-times span{background:var(--d-hover);border-radius:5px;padding:2px 6px;font-size:11.5px}.au-empty{text-align:center;color:var(--d-muted);padding:40px 20px;font-size:14px}.tone-accent{background:var(--d-accent-soft);color:var(--d-accent)}.tone-warn{background:var(--d-warn-soft);color:var(--d-warn)}.tone-ok{background:var(--d-ok-soft);color:var(--d-ok)}.tone-violet{background:var(--d-violet-soft);color:var(--d-violet)}.tone-danger{background:var(--d-danger-soft);color:var(--d-danger)}.tone-muted{background:var(--d-hover);color:var(--d-muted)}@media (max-width:640px){.dv2 .au-row{grid-template-columns:56px minmax(0,1fr) 16px}.dv2 .au-row .au-avatar,.dv2 .au-row .au-cat{display:none}.au-detail{margin-left:20px}}.si{--s-bg:#f6f6f9;--s-surface:#fff;--s-line:#eef0f3;--s-ink:#101828;--s-ink2:#344054;--s-muted:#667085;--s-faint:#98a2b3;--s-hover:#f2f4f7;--s-accent:#2a4bb0;--s-accent-soft:#e9edf8;--s-danger:#d23a4c;--s-danger-soft:#fdf0f2;--s-ok:#1f8a4c;--s-ok-soft:#e7f6ec;--s-warn:#b35a14;--s-warn-soft:#fdf3e8;--s-brand:linear-gradient(90deg, #2a4bb0, #d23a4c);--s-shadow:0 1px 2px #1018280a, 0 12px 40px #10182814}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .si{--s-bg:#0c0e13;--s-surface:#14171f;--s-line:#1e222d;--s-ink:#eceef3;--s-ink2:#c4c9d4;--s-muted:#8b93a5;--s-faint:#5f6778;--s-hover:#1c202b;--s-accent:#6f8ae6;--s-accent-soft:#1b2447;--s-danger:#e8606f;--s-danger-soft:#3a1a21;--s-ok:#4cc38a;--s-ok-soft:#11301f;--s-warn:#f0a35c;--s-warn-soft:#33240f;--s-brand:linear-gradient(90deg, #5b78e0, #e8606f);--s-shadow:none}}:root[data-theme=dark] .si{--s-bg:#0c0e13;--s-surface:#14171f;--s-line:#1e222d;--s-ink:#eceef3;--s-ink2:#c4c9d4;--s-muted:#8b93a5;--s-faint:#5f6778;--s-hover:#1c202b;--s-accent:#6f8ae6;--s-accent-soft:#1b2447;--s-danger:#e8606f;--s-danger-soft:#3a1a21;--s-ok:#4cc38a;--s-ok-soft:#11301f;--s-warn:#f0a35c;--s-warn-soft:#33240f;--s-brand:linear-gradient(90deg, #5b78e0, #e8606f);--s-shadow:none}.si{background:var(--s-bg);min-height:100vh;color:var(--s-ink);flex-direction:column;justify-content:center;align-items:center;gap:32px;padding:48px 20px;font-family:Geist,system-ui,sans-serif;display:flex}.si-logo{width:auto;height:64px}.si-logo-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .si-logo-light{display:none}:root:not([data-theme=light]) .si-logo-dark{display:block}}:root[data-theme=dark] .si-logo-light{display:none}:root[data-theme=dark] .si-logo-dark{display:block}.si-card{background:var(--s-surface);width:min(440px,100%);box-shadow:var(--s-shadow);text-align:center;border-radius:20px;flex-direction:column;align-items:center;padding:40px 36px 32px;display:flex}.si-card.is-callback{padding:44px 36px 40px}.si-card h1{letter-spacing:-.025em;margin:0;font-size:26px;font-weight:600}.si-card.is-callback h1{letter-spacing:-.02em;margin-top:18px;font-size:22px}.si-lead{color:var(--s-muted);margin:8px 0 0;font-size:14.5px}.si-card.is-callback .si-lead{margin-top:6px;font-size:14px}.fb-job{border:1px solid var(--s-line);color:var(--s-text);text-align:center;overflow-wrap:anywhere;border-radius:12px;margin:14px 0 4px;padding:10px 14px;font-size:14.5px;font-weight:600}.fb-form{flex-direction:column;align-items:center;width:100%;display:flex}.fb-stars{gap:8px;margin-top:18px;display:flex}.fb-star{cursor:pointer;color:var(--s-line);background:0 0;border:none;padding:2px;transition:transform .12s,color .12s}.fb-star.is-on{color:#f0a63a}.fb-star:hover{transform:scale(1.08)}.fb-star:disabled{cursor:default}.fb-label{min-height:20px;color:var(--s-muted);margin:6px 0 14px;font-size:13.5px;font-weight:600}.fb-form .si-notice{width:100%}.si-input.fb-comment{resize:vertical;height:auto;min-height:96px;margin-top:4px;padding:10px 14px}.fb-google{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;margin-top:18px;display:flex}.si-caption{letter-spacing:.08em;text-transform:uppercase;color:var(--s-muted);margin:0;font-size:12px;font-weight:700}.si-input{border:1px solid var(--s-line);background:var(--s-surface);width:100%;height:46px;color:var(--s-ink);border-radius:10px;padding:0 14px;font-size:14.5px}.si-input:focus{border-color:var(--s-accent);outline:none}.si-input::placeholder{color:var(--s-faint)}.si-hint{width:100%;color:var(--s-faint);text-align:left;margin:8px 0 0;padding:0 4px;font-size:12.5px;line-height:1.45}.si-pw{width:100%;position:relative}.si-pw .si-input{padding-right:46px}.si .si-pw-toggle{width:34px;height:34px;box-shadow:none;color:var(--s-faint);cursor:pointer;background:0 0;border:none;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.si .si-pw-toggle:hover{background:var(--s-hover);color:var(--s-ink);opacity:1;transform:translateY(-50%)}.si .si-pw-toggle:focus-visible{outline:2px solid var(--s-accent);outline-offset:1px}.si-notice{text-align:left;border-radius:12px;width:100%;margin-top:22px;padding:12px 14px;font-size:13px;line-height:1.5}.si-notice.is-ok{background:var(--s-ok-soft);color:var(--s-ok)}.si-notice.is-accent{background:var(--s-accent-soft);color:var(--s-accent)}.si-notice.is-danger{background:var(--s-danger-soft);color:var(--s-danger)}.si-notice.is-warn{background:var(--s-warn-soft);color:var(--s-warn)}.si-notice-title{font-weight:600}.si-notice-body{color:var(--s-ink2);margin-top:2px}.si-notice form{margin-top:8px}.si a.si-link{color:var(--s-accent);font-size:13px;font-weight:500;text-decoration:none}.si a.si-link:hover{text-decoration:underline}.si-card.is-wide{width:min(640px,100%)}.si-section-title{text-align:left;width:100%;color:var(--s-ink);margin:0 0 10px;font-size:14px;font-weight:600}.si-docs{text-align:left;flex-direction:column;gap:8px;width:100%;display:flex}.si-doc{background:var(--s-hover);color:var(--s-ink);border-radius:12px;align-items:center;gap:12px;padding:10px 14px;font-size:13.5px;text-decoration:none;display:flex}.si-doc:hover{box-shadow:inset 0 0 0 1px var(--s-line)}.si-doc-num{color:var(--s-accent);font-weight:600}.si-doc-date{color:var(--s-muted);flex:1}.si-doc-amount{font-variant-numeric:tabular-nums;font-weight:600}.si-doc-status{background:var(--s-surface);color:var(--s-muted);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.si-doc-status.is-paid,.si-doc-status.is-accepted{background:var(--s-ok-soft);color:var(--s-ok)}.si-doc-status.is-overdue,.si-doc-status.is-declined{background:var(--s-danger-soft);color:var(--s-danger)}.si-quote-meta{width:100%;color:var(--s-muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin:18px 0 10px;font-size:13px;display:flex}.si-lines{border-collapse:collapse;text-align:left;width:100%;color:var(--s-ink);font-size:13.5px}.si-lines th{border-bottom:1px solid var(--s-line);color:var(--s-muted);padding:8px 6px;font-size:12px;font-weight:600}.si-lines td{border-bottom:1px solid var(--s-line);vertical-align:top;overflow-wrap:anywhere;padding:9px 6px}.si-lines .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.si-lines tfoot td{border-bottom:none;font-weight:600}.si-lines tfoot tr.is-sub td{color:var(--s-muted);padding-top:6px;padding-bottom:0;font-weight:400}.si-line-per{color:var(--s-muted);margin-top:2px;font-size:11.5px;font-weight:400;display:block}.si-check{text-align:left;color:var(--s-ink2);cursor:pointer;align-items:flex-start;gap:10px;margin-top:14px;font-size:13.5px;line-height:1.5;display:flex}.si-check input{width:16px;height:16px;accent-color:var(--s-brand);flex:none;margin-top:3px}.si-form{flex-direction:column;align-items:center;width:100%;display:flex}.si-remembered{background:var(--s-hover);text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;margin-top:24px;padding:12px 14px;display:flex}.si-avatar{background:var(--s-brand);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;font-size:13px;font-weight:600;display:grid}.si-avatar.is-lg{width:56px;height:56px;font-size:18px;position:relative;overflow:hidden}.si-remembered-text{flex:1;min-width:0}.si-remembered-name{font-size:14px;font-weight:600}.si-remembered-email{color:var(--s-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.si button.si-link{color:var(--s-accent);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:0;padding:4px 6px;font-size:12.5px;font-weight:500;display:inline}.si button.si-link:hover{opacity:1;text-decoration:underline;transform:none}.si button.si-switch{margin-top:12px;padding:4px 8px;font-size:13px}.si button.si-btn,.si a.si-btn{background:var(--s-brand);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:12px;width:100%;height:48px;margin-top:26px;padding:0 20px;font-size:15px;font-weight:600;transition:opacity .15s;display:flex}.si button.si-btn.is-tight,.si a.si-btn.is-tight{margin-top:14px}.si button.si-btn:hover,.si a.si-btn:hover{opacity:1;filter:brightness(1.08);transform:none}.si a.si-btn{text-decoration:none}.si button.si-btn:disabled{opacity:.6;cursor:not-allowed;filter:none}.si button.si-btn[aria-busy=true]{cursor:progress}.si button.si-btn.is-quiet,.si a.si-btn.is-quiet{color:var(--s-accent);box-shadow:inset 0 0 0 1px var(--s-line);background:0 0}.si-input.si-code{text-align:center;letter-spacing:.3em;font-variant-numeric:tabular-nums;font-size:22px;font-weight:600}.si-input.si-code::placeholder{letter-spacing:.3em}.si-qr{box-shadow:0 0 0 1px var(--s-line);border-radius:12px;margin:14px auto 6px;display:block}.si-key{letter-spacing:.04em;color:var(--s-ink);word-break:break-word;margin:6px 0 0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13.5px;font-weight:600}.si-mfa-steps{text-align:left;width:100%;color:var(--s-ink2);margin:22px 0 0;padding-left:20px;font-size:14px;line-height:1.55}.si-mfa-steps li+li{margin-top:6px}.si-ms{background:#fff;border-radius:4px;grid-template-columns:8px 8px;gap:2px;padding:4px;display:grid}.si-ms span{width:8px;height:8px}.si-secured{color:var(--s-muted);align-items:center;gap:8px;margin-top:18px;font-size:12.5px;display:flex}.si-rule{background:var(--s-line);width:100%;height:1px;margin:26px 0 20px}.si-legal{color:var(--s-muted);text-wrap:pretty;margin:0;font-size:12px;line-height:1.6}.si-progress{background:var(--s-line);border-radius:2px;width:100%;height:4px;margin-top:26px;overflow:hidden}.si-progress span{background:var(--s-brand);border-radius:2px;height:100%;transition:width .35s;display:block}.si-steps{text-align:left;flex-direction:column;gap:8px;width:100%;margin-top:22px;display:flex}.si-step{color:var(--s-faint);align-items:center;gap:10px;font-size:13px;display:flex}.si-step.is-done,.si-step.is-current{color:var(--s-ink2)}.si-step-dot{background:var(--s-line);color:#fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:grid}.si-step.is-done .si-step-dot{background:var(--s-ok)}.si-step.is-current .si-step-dot{background:var(--s-accent)}.si-foot{color:var(--s-faint);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;font-size:12.5px;display:flex}.si-foot a{color:var(--s-muted);text-decoration:none}.si-foot a:hover{text-decoration:underline}@media (max-width:480px){.si-card{padding:32px 22px 26px}}.si-avatar-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.pill.bank-holiday{background:var(--d-violet-soft);color:var(--d-violet);margin-left:6px}.rv-card-head.bank-head{align-items:center}.dv2 button.bank-btn{padding:5px 13px;font-size:12.5px;line-height:1.3}.shift-pager{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.shift-pager-nav{align-items:center;gap:10px;margin-left:auto;display:inline-flex}.dv2 a.btn.shift-pager-btn{padding:5px 13px;font-size:12.5px;line-height:1.3}.dv2 a.btn.shift-pager-btn.is-disabled{opacity:.35;pointer-events:none}.shift-pager-no{color:var(--d-muted);font-size:12.5px}.bank-balance-col{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.bank-balance-col>.bank-stat{align-self:stretch}.staff-hours .hours-head-right{flex-wrap:wrap}.staff-hours .hours-chart-plot,.staff-hours .hours-chart-labels{grid-template-columns:repeat(var(--cols,31), minmax(0, 1fr));gap:4px}.staff-hours .hours-chart-col{cursor:default}.staff-hours .hours-chart-bar{width:min(100%,22px)}.staff-hours .hours-chart-labels span{font-size:10.5px}.staff-hours .hours-chart-labels span.is-off{color:var(--hv-subtle);opacity:.7}.staff-hours .hours-chart-tip.is-left{left:0}.staff-hours .hours-chart-tip.is-right{right:0}.dv2 .lt-foot button.lt-cancel{background:var(--lt-fill);height:40px;color:var(--hv-text);border-radius:999px;justify-content:center;padding:0 20px;font-size:14px;font-weight:500}.dv2 .lt-foot button.lt-cancel:hover{background:var(--lt-fill-hover)}.dv2 .lt-foot button.lt-grad-btn{background:var(--brand-gradient);color:#fff;border-radius:999px;justify-content:center;height:40px;padding:0 24px;font-size:14px;font-weight:600}.dv2 .lt-foot button.lt-grad-btn:hover{opacity:.92}.dv2 .lt-foot button.lt-grad-btn:disabled{opacity:.5;cursor:not-allowed}.dv2 .lt-foot button.shift-delete{color:var(--hv-red);margin-right:auto;font-size:13px;font-weight:600}.form-grid .form-hint{color:var(--muted);font-size:12px;font-weight:400}.form-grid label.form-check{color:var(--ink);cursor:pointer;flex-flow:wrap;align-items:center;column-gap:.5rem}.form-grid label.form-check input{width:auto;margin:0;padding:0}.form-grid label.form-check .form-hint{flex-basis:100%}.dv2 button.expense-files-btn{border:1px dashed var(--d-border);color:var(--d-muted);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:12.5px;display:inline-flex}.dv2 button.expense-files-btn:hover{border-color:var(--d-accent);color:var(--d-accent)}.dv2 button.expense-files-btn.has-files{background:var(--d-accent-soft);color:var(--d-accent);border-style:solid;border-color:#0000;font-weight:600}.expense-files-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.expense-files-list li{border:1px solid var(--lt-fill-hover);background:var(--lt-fill);border-radius:10px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.expense-files-list li>a:first-child{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.expense-files-size{color:var(--hv-muted);white-space:nowrap;font-size:12px}.expense-files-list .expense-files-action{white-space:nowrap;font-size:12.5px}.dv2 .expense-files-list button.expense-files-action.is-danger{color:var(--hv-red);font-size:12.5px}.expense-files-empty,.expense-files-hint{color:var(--hv-muted);margin:0;font-size:12.5px}.btn-sm,a.btn{white-space:nowrap}.home-v2 .btn-sm{background:var(--brand-gradient);color:#fff;border:0;border-radius:999px;font-weight:600}.home-v2 .btn-sm:hover{background:var(--brand-gradient);opacity:.92}.home-v2 .todo-compose-add{background:var(--brand-gradient);border-radius:999px}.home-v2 .todo-compose-add:hover{background:var(--brand-gradient);opacity:.92}.home-v2 .modal-backdrop .btn-sm,.home-v2 .modal-backdrop .btn-ghost{height:34px;padding:0 1.1rem;font-size:.9rem}.expense-actions{white-space:nowrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.expense-actions form{margin:0;display:inline}.zt-row>input[type=checkbox]{width:15px;height:15px;accent-color:var(--d-accent);cursor:pointer;margin:0}.zt-row.is-selected{background:var(--d-hover)}.zt-bulk{background:var(--d-hover);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 8px;padding:8px 12px;display:flex}.zt-bulk-count{color:var(--d-ink);margin-right:4px;font-size:13px;font-weight:600}.dv2 button.zt-link.zt-bulk-clear{color:var(--d-muted);margin-left:auto}.zt-notice{background:var(--d-ok-soft);color:var(--d-ok);border-radius:12px;margin:0 0 8px;padding:8px 12px;font-size:13px}.zt-notice.is-error{background:var(--d-danger-soft);color:var(--d-danger)}.zt-copy-list{border:1px solid var(--d-line);border-radius:10px;max-height:200px;margin:0;padding:0;font-size:13px;list-style:none;overflow-y:auto}.zt-copy-list li{border-bottom:1px solid var(--d-line);justify-content:space-between;gap:12px;padding:7px 12px;display:flex}.zt-copy-list li:last-child{border-bottom:0}.zt-copy-list .num{font-variant-numeric:tabular-nums;color:var(--d-muted)}.pf-card{padding:24px}.pf-id{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.pf-avatar{background:var(--d-brand);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:64px;height:64px;font-size:22px;font-weight:600;display:grid;position:relative;overflow:hidden}.pf-who{flex:1;min-width:0}.pf-name{letter-spacing:-.01em;color:var(--d-ink);flex-wrap:wrap;align-items:center;gap:10px;font-size:20px;font-weight:600;display:flex}.pf-email{color:var(--d-muted);overflow-wrap:anywhere;margin-top:3px;font-size:14px}.pf-manage{flex-shrink:0}.pf-facts{border-top:1px solid var(--d-line);grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px 24px;margin:22px 0 0;padding:18px 0 0;display:grid}.pf-facts dt{letter-spacing:.04em;text-transform:uppercase;color:var(--d-muted);font-size:12px;font-weight:600}.pf-facts dd{color:var(--d-ink);margin:5px 0 0;font-size:14px}.pf-note{color:var(--d-muted);margin:18px 0 0;font-size:13px}.pf-activity-head{padding:20px 20px 8px}.pf-activity{padding-bottom:8px}.pf-day{letter-spacing:.04em;text-transform:uppercase;color:var(--d-muted);padding:12px 20px 6px;font-size:12px;font-weight:600}.pf-row{color:var(--d-ink);grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:9px 20px;font-size:14px;display:grid}.pf-row:hover{background:var(--d-hover)}.pf-time{color:var(--d-muted);font-size:12px}.pf-verb{color:var(--d-ink)}.pf-empty{padding:0 20px 20px}@media (max-width:640px){.pf-manage{text-align:center;justify-content:center;width:100%}.pf-row .au-cat{display:none}.pf-row{grid-template-columns:44px minmax(0,1fr)}}.et-tabs{flex-wrap:wrap;align-self:flex-start}.et-tabs a{gap:6px}.et-dot{background:var(--d-accent);border-radius:50%;width:6px;height:6px}.et-info{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.et-info h2{margin:0 0 4px}.et-info p{color:var(--d-ink2);margin:0;font-size:13.5px}.et-info .et-subject{color:var(--d-muted);margin-top:4px}.et-subject .dv2-mono{color:var(--d-ink)}.et-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;display:grid}.et-pane{flex-direction:column;min-width:0;padding:16px;display:flex}.et-pane-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.et-pane-head h3{margin:0;font-size:15px}.et-hint{color:var(--d-muted);font-size:12.5px}.et-vars{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.et-vars-label{color:var(--d-muted);margin-right:2px;font-size:12.5px}.dv2 button.et-var{border:1px solid var(--d-border);background:var(--d-surface);color:var(--d-accent);cursor:pointer;border-radius:6px;padding:3px 8px;font:500 12px/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.dv2 button.et-var:hover{border-color:var(--d-accent);background:var(--d-accent-soft)}.et-code{border:1px solid var(--d-border);background:var(--d-hover);width:100%;min-height:560px;color:var(--d-ink);tab-size:2;resize:vertical;white-space:pre;border-radius:10px;flex:1;padding:12px 14px;font:12.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow:auto}.et-code:focus{border-color:var(--d-accent);outline:none}.et-warn{color:var(--d-danger);margin:8px 0 0;font-size:12.5px}.et-preview-note{margin:-4px 0 10px}.et-frame-wrap{background:#e4e5ea;border-radius:10px;flex:1;justify-content:center;min-height:560px;padding:12px;display:flex;overflow:auto}.et-frame{background:#fff;border:0;border-radius:6px;width:100%;min-height:560px;transition:width .2s}.et-frame.is-mobile{flex-shrink:0;width:390px}.et-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.et-actions .zt-notice{flex-basis:100%;margin:0}.et-actions-gap{flex:1}@media (max-width:1100px){.et-grid{grid-template-columns:1fr}.et-code,.et-frame-wrap,.et-frame{min-height:420px}}.rm-state{align-items:flex-start;gap:12px;display:flex}.rm-toggle{color:var(--d-ink2);cursor:pointer;flex-shrink:0;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.rm-state p{color:var(--d-ink2);text-wrap:pretty;margin:0;font-size:14px;line-height:1.5}.zt-notice.rm-notice{margin-top:20px}.dv2-head>.zt-notice.rm-head-notice{flex-basis:100%;max-width:none;margin:0}.sys-key-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:14px;display:flex}.sys-key-forms{flex-direction:column;gap:10px;margin-top:14px;display:flex}.sys-key-edit{margin-top:12px}.xr-list{flex-direction:column;gap:14px;margin-top:12px;display:flex}.xr-draft{border:1px solid var(--d-line,var(--card-border));border-radius:12px;padding:14px 16px}.xr-head{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;margin-bottom:10px;display:flex}.xr-head .bs-sub{white-space:normal;overflow-wrap:anywhere}.xr-links{flex-wrap:wrap;align-items:flex-start;gap:6px 16px;font-size:13px;display:flex}.xr-warn{color:var(--hv-amber);margin:0 0 10px;font-size:13px;font-weight:600}.xr-note{color:var(--d-muted);margin:0 0 10px;font-size:13px}.xr-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sys-key-forms .sys-key-form{border-top:1px solid var(--d-line,var(--card-border));margin-top:0;padding-top:10px}.sys-key-form-title{color:var(--d-ink,var(--ink));flex:0 0 220px;align-self:center;font-size:13.5px;font-weight:600}.sys-key-form label.sys-key-never{flex-direction:row;align-self:center;align-items:center;gap:6px;font-weight:500}.sys-key-form label.sys-key-never input{width:16px;min-width:0;height:16px;accent-color:var(--brand-blue);padding:0}.sys-key-form label{color:var(--d-muted);flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.sys-key-form input{min-width:180px;font:inherit;border:1px solid var(--d-border,var(--card-border));background:var(--d-surface,var(--surface));color:var(--d-ink,var(--ink));border-radius:8px;padding:.5rem .6rem;font-weight:400}.sys-key-form input:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.et-row-actions{justify-content:flex-end;gap:8px;display:inline-flex}.et-row-actions form{margin:0}.bs-sub.et-error{white-space:normal;max-width:420px;color:var(--hv-red)}.et-log-title{margin:22px 0 10px;font-size:15px;font-weight:600}.table.et-log td:first-child,.table.et-log td:nth-child(2){white-space:nowrap;min-width:0}.table.et-log td.et-log-from{text-overflow:ellipsis;max-width:220px;overflow:hidden}.table.et-log td.et-log-subject{text-overflow:ellipsis;max-width:300px;overflow:hidden}.table.et-log td.et-log-result{white-space:normal;min-width:200px}.table.et-log td.et-log-result .bs-sub{white-space:normal}.rm-bar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.rm-bar .rm-line-one{color:var(--d-ink2);flex:260px;margin:0;font-size:14px}.rm-bar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.sr-intro{color:var(--hv-subtle);margin:0 0 14px;font-size:13px;line-height:1.55}.sr-form{flex-wrap:wrap;align-items:flex-end;gap:10px 14px;display:flex}.sr-field{color:var(--hv-subtle);flex-direction:column;gap:4px;font-size:12px;display:flex}.sr-field .lt-input{width:136px}.sr-check{min-height:36px;color:var(--hv-text);cursor:pointer;align-items:center;gap:7px;font-size:13px;display:flex}.sr-notice{color:var(--hv-subtle);align-self:center;font-size:12.5px}.sr-notice.is-error{color:var(--hv-red);font-weight:500}.sr-desktop{border-top:1px solid var(--hv-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:16px;padding-top:14px;display:flex}.sr-desktop p{color:var(--hv-muted);flex:320px;margin:0;font-size:13px;line-height:1.55}.sr-desktop strong{color:var(--hv-text)}.sr-switches{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.sr-switch .rm-line-one{font-size:13.5px}.sr-person{border-top:1px solid var(--hv-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;padding:12px 0;display:flex}.sr-who{flex-direction:column;flex:220px;gap:3px;font-size:14px;display:flex}.sr-who .staff-muted{font-size:12.5px}.br-switch{margin-bottom:16px}.br-form{flex-direction:column;gap:10px;display:flex}.br-rows{flex-direction:column;gap:8px;max-width:520px;display:flex}.br-row{grid-template-columns:minmax(0,1fr) 120px 92px;gap:8px;display:grid}.br-row-head{color:var(--hv-subtle);font-size:12px}.br-hint{color:var(--hv-subtle);margin:0;font-size:12.5px}.br-calendar-error{color:var(--hv-red)}.br-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.br-list li{border-top:1px solid var(--hv-border);justify-content:space-between;gap:12px;padding:9px 0;font-size:14px;display:flex}.br-list li:first-child{border-top:none}.br-list span{color:var(--hv-subtle);font-size:13px}.br-profile{border-top:1px solid var(--hv-border);flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:14px;padding-top:12px;display:flex}.br-profile .staff-muted{flex:280px;font-size:13px;line-height:1.5}.br-modal{max-width:480px}.br-modal .lt-foot{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:14px 18px}.br-modal .lt-foot button{white-space:nowrap;padding:0 16px}.br-head{align-items:center;gap:14px;display:flex}.br-icon{background:color-mix(in srgb, var(--brand-blue) 12%, transparent);width:48px;height:48px;color:var(--brand-blue);border-radius:14px;flex:none;justify-content:center;align-items:center;display:inline-flex}.br-when{color:var(--hv-subtle);margin:2px 0 0;font-size:13px}.br-body{color:var(--hv-text);margin:0;font-size:14.5px;line-height:1.6}@media (max-width:520px){.br-row{grid-template-columns:minmax(0,1fr) 100px 72px}}.nt-modal{max-width:640px}.nt-modal .lt-foot{justify-content:flex-end;gap:8px;padding:14px 18px}.nt-body{max-height:min(60vh,560px);overflow-y:auto}.nt-text{color:var(--d-ink2,var(--d-ink));font-size:14px;line-height:1.6}.nt-text h4{color:var(--d-ink);margin:14px 0 4px;font-size:14px;font-weight:700}.nt-text p{margin:0 0 10px}.nt-text ul{margin:0 0 10px;padding-left:20px}.nt-text li{margin:0 0 4px}.nt-text>:first-child{margin-top:0}.nt-list{margin:12px 0 0;padding:0;list-style:none}.nt-item{border-top:1px solid var(--d-line);padding:14px 0}.nt-item:first-child{border-top:none;padding-top:4px}.nt-item-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.nt-item-head strong{color:var(--d-ink);display:block}.nt-item-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.nt-details{margin-top:8px}.nt-details>summary{cursor:pointer;font-size:13px}.nt-details[open]>summary{margin-bottom:10px}.nt-details .nt-text{border:1px solid var(--d-line);background:var(--d-hover);border-radius:10px;padding:12px 14px}.nt-confirm{align-items:center;gap:10px;margin-top:10px;display:flex}.nt-error{color:var(--d-danger);font-size:13px}.nt-who{color:var(--d-muted);margin:8px 0 0;font-size:13px}.nt-who strong{color:var(--d-ink)}.nt-yes{color:var(--d-ink2,var(--d-ink))}.nt-no{color:var(--d-warn)}.nt-archived{margin-top:12px}.nt-archived>summary{cursor:pointer;font-size:13px}.nt-input{resize:vertical;min-height:200px;font-family:inherit;line-height:1.5}.lt-check{color:var(--d-ink);align-items:center;gap:8px;margin-top:4px;font-size:14px;display:flex}.endpoint-health .eh-overdue{color:var(--d-ink2,var(--ink));margin:0 0 12px;font-size:13px}.eh-scroll{overflow-x:auto}.eh-table{table-layout:fixed;min-width:1060px}.eh-table td{white-space:normal;vertical-align:middle;overflow-wrap:anywhere}.eh-table .eh-col-client{width:17%}.eh-table .eh-col-computer{width:14%}.eh-table .eh-col-desc{width:18%}.eh-table .eh-col-status{width:96px}.eh-table .eh-col-when{width:150px}.eh-table .eh-col-task{width:130px}.eh-table .eh-nowrap,.eh-table .num{white-space:nowrap}.eh-table td.eh-oneline,.eh-table td.eh-oneline>.bs-sub{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;overflow:hidden}.eh-sev{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.2;display:inline-block}.eh-sev.is-bad{background:var(--d-danger-soft,#fdf0f2);color:var(--d-danger,#e0392f)}.eh-sev.is-warn{color:#b45309;background:#d9770624}.eh-sev.is-info{color:var(--brand-blue);background:#0a5fd61f}.eh-table form{margin:0;display:inline}.eh-agent.is-online{color:#16823e}button.tasks-refresh{border:1px solid var(--hv-border);color:var(--hv-control);box-shadow:none;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;margin-right:auto;padding:5px 12px;font-size:12.5px;font-weight:600;display:inline-flex;transform:none}button.tasks-refresh:hover{border-color:var(--hv-border-hover)}.eh-agent.is-online:before{content:"";vertical-align:1px;background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.btn-sm.eh-task-open,.home-v2 .btn-sm.eh-task-open{background:linear-gradient(var(--hv-panel), var(--hv-panel)) padding-box, var(--brand-gradient) border-box;white-space:nowrap;border:1.5px solid #0000;text-decoration:none}.btn-sm.eh-task-open:hover,.home-v2 .btn-sm.eh-task-open:hover{background:linear-gradient(var(--hv-btn-hover), var(--hv-btn-hover)) padding-box, linear-gradient(var(--hv-panel), var(--hv-panel)) padding-box, var(--brand-gradient) border-box;opacity:1}.eh-computer{color:inherit;border-bottom:1px dashed var(--hv-border-hover);text-decoration:none}.eh-computer:hover{color:var(--brand-blue);border-bottom-color:currentColor}.home-v2 .btn-sm.eh-add,.home-v2 .btn-sm.eh-task-open{box-sizing:border-box;justify-content:center;min-width:108px;height:30px}.eh-task-open span{background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600}.dv2 p{text-wrap:pretty}.rm-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.rm-actions.rm-inline{margin-top:0}.rm-note{color:var(--d-muted);margin:12px 0 0;font-size:13px}.fb-avg{color:var(--d-muted);font-size:13px}.fb-sub{letter-spacing:.04em;text-transform:uppercase;color:var(--d-muted);margin:22px 0 8px;font-size:13px;font-weight:700}.fb-state{color:var(--d-muted);font-size:12.5px}.table tr.fb-low td{background:#e0392f0f}.table.fb-table td.fb-job-cell,.table.fb-table td.fb-client-cell{text-overflow:ellipsis;max-width:190px;overflow:hidden}.table.fb-table td.fb-comment-cell{white-space:normal;min-width:180px}.fb-done{margin-top:6px}.rm-jump{align-self:flex-start}.rm-group{flex-direction:column;gap:20px;scroll-margin-top:24px;display:flex}.rm-group+.rm-group{margin-top:16px}.rm-group-head{margin-bottom:16px}.rm-group-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--d-accent);margin-bottom:4px;font-size:11.5px;font-weight:600;display:block}.dv2-card .rm-group-head h2{font-size:19px}.rm-group-head p{color:var(--d-muted);text-wrap:pretty;margin:6px 0 0;font-size:13.5px;line-height:1.55}.rm-line{color:var(--d-ink2);margin:4px 0 12px;font-size:13.5px}.rm-line strong{color:var(--d-ink)}button.task-files-btn{min-width:24px;height:24px;color:var(--hv-dashed,var(--muted));background:0 0;border:0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:3px;padding:0 5px;font-size:11.5px;font-weight:600;display:inline-flex}button.task-files-btn:hover{opacity:1;color:var(--hv-text,inherit);background:var(--hv-nav-hover,#0000000d);transform:none}button.task-files-btn.has-files{color:var(--hv-accent,#2446c7)}.time-modal.lt-modal.task-files-modal{max-width:560px}.task-files-empty,.task-files-hint{color:var(--hv-muted,var(--muted));margin:0;font-size:12.5px}.task-files-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.task-files-grid li{flex-direction:column;gap:4px;min-width:0;display:flex}.task-files-thumb{border:1px solid var(--hv-border,var(--card-border));background:var(--hv-surface-2,#00000008);border-radius:10px;place-items:center;height:100px;display:grid;overflow:hidden}.task-files-thumb img{object-fit:cover;width:100%;height:100%}.task-files-doc{color:var(--hv-muted,var(--muted));font-size:13px;font-weight:700}.task-files-name{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.task-files-meta{color:var(--hv-muted,var(--muted));font-size:11.5px}.task-files-meta a{color:inherit}button.task-files-remove{color:var(--hv-red,#d6344b);font-size:inherit;background:0 0;border:0;border-radius:0;padding:0;font-weight:500}button.task-files-remove:hover{text-decoration:underline;transform:none}.task-files-drop{border:1.5px dashed var(--hv-border,var(--card-border));color:var(--hv-muted,var(--muted));border-radius:12px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:18px;font-size:13px;display:flex}.task-files-drop strong{color:var(--hv-text,inherit);font-weight:600}.task-files-drop.is-over{border-color:var(--hv-accent,#2446c7);background:var(--hv-surface-2,#00000008)}.time-modal.lt-modal.send-modal{max-width:760px}.send-fields{flex-direction:column;gap:8px;display:flex}.send-row{grid-template-columns:70px 1fr auto;align-items:center;gap:10px;font-size:14px;display:grid}.send-row>.lt-input{grid-column:2/4;height:38px}.send-row.has-link>.lt-input{grid-column:2}.send-row.is-top{align-items:start}.send-label{color:var(--hv-muted,var(--muted));font-size:12.5px;font-weight:600}.send-to,.send-subject{color:var(--hv-text,var(--ink));overflow-wrap:anywhere}.send-subject{grid-column:2/4;font-weight:600}.send-bcc-link{font-size:13px}.send-always-cc{color:var(--hv-muted,var(--muted));margin:-2px 0 0 80px;font-size:12.5px}.send-contacts{flex-wrap:wrap;gap:6px;margin-left:80px;display:flex}.send-chip{background:var(--lt-fill,var(--d-hover));color:var(--hv-text,var(--ink));border:1px solid var(--hv-border,var(--card-border));box-shadow:none;cursor:pointer;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:500;transform:none}.send-chip:hover:not(:disabled){border-color:var(--brand-blue)}.send-chip.is-added{opacity:.6;cursor:default}.send-files{flex-direction:column;grid-column:2/4;gap:6px;margin:0;padding:0;list-style:none;display:flex}.send-files li{align-items:center;gap:8px;min-width:0;font-size:13.5px;display:flex}.send-file-icon{background:var(--d-accent-soft,#0a5fd61f);color:var(--brand-blue);border-radius:4px;flex:none;padding:2px 5px;font-size:10px;font-weight:700}.send-file-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.send-file-meta{color:var(--hv-muted,var(--muted));flex:none;font-size:12px}.send-file-meta.is-over{color:var(--brand-red);font-weight:600}.send-file-remove{box-shadow:none;color:var(--brand-red);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:16px;line-height:1;transform:none}.send-files-add{flex-wrap:wrap}.send-preview-label{color:var(--hv-muted,var(--muted));margin:0 0 6px;font-size:12.5px;font-weight:600}.send-frame{border:1px solid var(--hv-border,var(--card-border));background:#fff;border-radius:12px;width:100%;height:420px;display:block}@media (max-width:640px){.send-row{grid-template-columns:1fr auto}.send-row>.send-label,.send-row>.lt-input,.send-subject,.send-files{grid-column:1/-1}.send-contacts{margin-left:0}}.todo-add:has(.todo-add-files){flex-wrap:wrap}.todo-add-files{flex-wrap:wrap;flex-basis:100%;align-items:center;gap:6px;font-size:12.5px;display:flex}.home-v2 .todo-add-files{margin:0 20px 8px}.todo-add-file{border:1px solid var(--hv-border,var(--card-border));background:var(--hv-panel,var(--surface));max-width:240px;color:var(--hv-text,var(--ink));border-radius:7px;align-items:center;gap:5px;padding:3px 4px 3px 8px;display:inline-flex}.todo-add-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.todo-add-file button{box-shadow:none;color:var(--brand-red);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:15px;line-height:1;transform:none}.todo-add-note{color:var(--brand-red)}.task-clash{background:var(--hv-red-soft);color:var(--hv-red);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 0;padding:8px 10px;font-size:13px;line-height:1.4;display:flex}.task-clash-times{flex-wrap:wrap;gap:6px;display:inline-flex}button.task-clash-time{border:1px solid var(--hv-red);height:26px;color:var(--hv-red);cursor:pointer;box-shadow:none;background:0 0;border-radius:999px;padding:0 10px;font-family:Geist Mono,ui-monospace,monospace;font-size:12px;transform:none}button.task-clash-time:hover{background:var(--hv-red);color:#fff}button.task-files-btn.todo-attach-btn{min-width:34px;height:34px}.stmt-period{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.stmt-dates{color:var(--d-muted,var(--muted));align-items:center;gap:6px;font-size:13px;display:flex}.stmt-dates input[type=date]{border:1px solid var(--d-border,var(--card-border));background:var(--d-surface2,var(--surface));height:32px;color:var(--d-ink,var(--ink));font:inherit;border-radius:8px;padding:0 8px}.stmt-stats{margin-bottom:6px}.stmt-ageing{margin-top:12px}.stmt-opening td{color:var(--d-muted,var(--muted))}.stmt-detail{color:var(--d-muted,var(--muted));font-size:12.5px}.stmt-overdue{color:var(--d-danger,var(--brand-red));font-weight:600}.stmt-note{color:var(--d-muted,var(--muted));margin:10px 0 0;font-size:13px}.send-invoice-pick{cursor:pointer;align-items:center;gap:8px;min-width:0;display:inline-flex}.send-invoice-pick input{width:15px;height:15px;margin:0}.pd-doc{flex-direction:column;align-self:center;width:100%;max-width:795.707px;display:flex}.pdf-sheets{flex-direction:column;gap:18px;display:flex}.pdf-sheet{box-sizing:border-box;aspect-ratio:595.28/841.89;border:1px solid var(--d-border,#e4e7ec);width:100%;height:auto;box-shadow:var(--d-shadow,0 8px 24px #10182814);background:#fff;border-radius:6px;display:block}.pdf-sheet-wait{color:#667085;place-items:center;font-size:14px;display:grid}.iv-subject .pd-label{letter-spacing:.08em;color:var(--d-muted);margin-bottom:6px;font-size:11px;font-weight:700}.iv-subject .pd-subject{color:var(--d-ink);font-size:15px;font-weight:700;line-height:1.35}.iv-subject .pd-subject-add{margin:0}.pd-subject-link{font:inherit;letter-spacing:0;color:var(--d-accent);cursor:pointer;background:0 0;border:none;margin-left:10px;padding:0;font-size:12px}.pd-subject-link:hover{text-decoration:underline}.pd-subject-input{box-sizing:border-box;width:100%;font:inherit;border:1px solid var(--d-border);color:var(--d-ink);background:var(--d-surface);border-radius:8px;padding:7px 10px;font-size:15px}.pd-subject-actions{align-items:center;gap:12px;margin-top:8px;display:flex}.pd-subject-error{color:var(--d-danger);font-size:13px}@media print{.pd-doc{max-width:none}.pdf-sheets{gap:0}.pdf-sheet{box-shadow:none;border:none;border-radius:0}.pdf-sheet+.pdf-sheet{break-before:page}}.home-v2 .backup-summary{padding:18px 20px 16px}.home-v2 .panel-count.is-ok{white-space:nowrap;color:#16a34a;background:#16a34a1f;border-radius:999px;margin-left:6px;padding:1px 8px;font-weight:600;display:inline-block}.bs-table td{vertical-align:top}.bs-table th{padding-top:10px;padding-bottom:10px}.bs-table td{padding-top:14px;padding-bottom:14px;line-height:1.4}.bs-table .bs-sub{margin-top:4px}.bs-table .bs-nights{padding-top:3px}.bs-table .bs-night{height:18px}.home-v2 .backup-summary:not(.endpoint-health){padding:22px 22px 20px}.bs-sub{color:var(--hv-subtle);margin-top:2px;font-size:12px;font-weight:400;display:block}.bs-state{align-items:center;gap:6px;font-weight:600;display:inline-flex}.bs-state:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}.bs-state.is-ok{color:#16a34a}.bs-state.is-warn{color:var(--hv-amber)}.bs-state.is-bad{color:var(--hv-red)}.bs-state.is-none{color:var(--hv-subtle)}.sc-head-state{vertical-align:2px;margin-left:8px;font-size:13px}.sv-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:14px;display:grid}.sv-server{border:1px solid var(--hv-border);border-top:3px solid #16a34a;border-radius:14px;flex-direction:column;min-width:0;padding:16px 18px;display:flex}.sv-server.is-warn{border-top-color:var(--hv-amber)}.sv-server.is-bad{border-top-color:var(--hv-red)}.sv-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.sv-host{font-size:15px;display:block}.sv-head>.bs-state{white-space:nowrap;flex-shrink:0}.sv-empty{color:var(--hv-muted);margin:0;font-size:13px;line-height:1.55}.sv-checks{gap:0;margin:0;display:grid}.sv-check{border-top:1px solid var(--hv-border);grid-template-columns:minmax(110px,38%) 1fr;gap:12px;padding:7px 0;font-size:13px;display:grid}.sv-check dt{color:var(--hv-subtle)}.sv-check dd{color:var(--hv-text);overflow-wrap:anywhere;min-width:0;margin:0}.sv-units{margin-top:14px}.sv-units h3{color:var(--hv-subtle);margin:0 0 8px;font-size:12px;font-weight:600}.sv-units ul{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sv-unit{border:1px solid var(--hv-border);border-radius:999px;align-items:center;gap:8px;padding:4px 10px;font-size:12.5px;display:inline-flex}.sv-unit.is-bad{border-color:var(--hv-red)}.sv-unit.is-warn{border-color:var(--hv-amber)}.sv-unit-name{font-family:Geist Mono,ui-monospace,monospace;font-size:12px}.sv-foot{color:var(--hv-subtle);margin:auto 0 0;padding-top:14px;font-size:12px}.sv-server.is-maint{border-top-color:var(--hv-accent)}.bs-state.is-maint{color:var(--hv-accent)}.sv-maint{margin-top:14px;font-size:13px;line-height:1.55}.sv-maint p{margin:0 0 6px}.sv-maint.is-on{border:1px solid var(--hv-accent);border-radius:10px;margin:0 0 12px;padding:10px 12px}.sv-maint.is-stuck{border:1px solid var(--hv-amber);border-radius:10px;margin:0 0 12px;padding:10px 12px}.sv-maint-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.sv-maint-form{flex-direction:column;gap:10px;margin-top:10px;display:flex}.sv-maint-form label{flex-direction:column;gap:4px;max-width:220px;font-weight:500;display:flex}.sv-maint-monitors{border:1px solid var(--hv-border);border-radius:10px;flex-direction:column;gap:6px;min-width:0;margin:0;padding:8px 12px 10px;display:flex}.sv-maint-monitors legend{color:var(--hv-subtle);padding:0 4px;font-size:12px;font-weight:600}.sv-maint-form .sv-maint-monitors label{overflow-wrap:anywhere;flex-direction:row;align-items:center;gap:8px;max-width:none;font-weight:400}.sv-maint-monitors input{width:16px;height:16px;accent-color:var(--brand-blue);flex-shrink:0}.bs-nights{gap:3px;padding-top:4px;display:flex}.bs-night{background:var(--hv-soft);border-radius:3px;flex:1 1 0;min-width:6px;max-width:26px;height:14px}.bs-table thead th{vertical-align:bottom}.bs-night-days{margin-top:6px;padding-top:0}.bs-night-day{text-align:center;min-width:6px;max-width:26px;color:var(--hv-text,inherit);flex:1 1 0;font-size:11px;font-weight:600;line-height:1.2;overflow:hidden}.bs-night-day span{color:var(--hv-muted);font-size:9.5px;font-weight:500;display:block}.bs-night-day.is-today,.bs-night-day.is-today span{color:var(--hv-accent,#2446c7)}.bs-night.is-ok{background:#16a34a}.bs-night.is-failed{background:#dc2626}.bs-night.is-missed{background:#f97316}.bs-night.is-pending{background:#86efac}.bs-night.is-before{background:#c7d2fe}:root[data-theme=dark] .bs-night.is-before{background:#3b4a7a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .bs-night.is-before{background:#3b4a7a}}.bs-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bs-actions{flex-wrap:wrap;gap:8px;display:flex}.bs-actions form{margin:0}.home-v2 .bs-manage,.home-v2 .bs-manage:hover{color:#fff;flex:none;gap:6px;text-decoration:none}.bs-night.is-warning{background:#eab308}button.bs-night{cursor:pointer;font:inherit;border:0;padding:0;display:block}button.bs-night:hover,button.bs-night:focus-visible{outline:2px solid var(--hv-accent,#2446c7);outline-offset:1px}.bs-night-modal{max-width:760px}.bs-night-modal .time-modal-sub .bs-state{font-weight:600}.bs-night-nav{gap:6px;margin-left:auto;display:flex}.bs-night-nav+.time-modal-close{margin-left:8px}.bs-night-nav button:disabled{opacity:.35;cursor:default}.bs-night-modal .time-modal-head+.bs-run{border-top:0;padding-top:0}.bs-night-note{color:var(--muted);margin:.8rem 0 .2rem}.bs-run{border-top:1px solid var(--border,#7f7f7f40);margin-top:.9rem;padding-top:.8rem}.bs-run-head{align-items:center;gap:10px;display:flex}.bs-run-time{font-variant-numeric:tabular-nums;font-weight:600}.time-modal .bs-run-title{white-space:pre-line;margin:.3rem 0 0}.time-modal .bs-run-meta{color:var(--muted);margin:.2rem 0 0;font-size:.8rem}.time-modal .bs-run-preview{margin:.4rem 0 0;font-size:.85rem}.bs-run-email{border:1px solid var(--border,#7f7f7f40);background:#fff;border-radius:8px;width:100%;height:min(60vh,560px);margin-top:.6rem;display:block}.bs-run-email.is-note{background:0 0;height:auto;padding:.6rem .8rem}.bs-legend{color:var(--hv-muted);flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;font-size:12px;display:flex}.bs-legend>span{align-items:center;gap:6px;display:inline-flex}.bs-legend .bs-night{flex:none;width:12px;height:12px}.bs-night.is-skip{background:repeating-linear-gradient(135deg, var(--hv-soft) 0 3px, transparent 3px 6px)}.bs-table tbody tr.bs-first-client td{border-top:2px solid var(--hv-line)}.cb-mailbox{margin:0;font-size:14px}.cb-table td{vertical-align:top}.cb-paused td{opacity:.6}.cb-actions{white-space:nowrap;align-items:center;gap:14px;display:flex}.cb-actions>form{margin:0;display:flex}.cb-table td:first-child,.cb-table td:nth-child(2){white-space:normal;min-width:150px}.time-modal.cb-modal{max-width:620px}.cb-modal .form-grid{margin:0 0 1rem}.cb-modal .time-modal-head{cursor:default}.cb-modal .time-modal-close{margin-left:auto}@media (max-width:560px){.cb-modal .form-grid{grid-template-columns:1fr}}.time-modal.proj-modal{max-width:600px}.proj-modal .time-modal-head{cursor:default}.proj-modal .time-modal-close{margin-left:auto}.sidebar-link{position:relative}.sidebar-badge{color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:11.5px;font-weight:700;line-height:1;display:inline-flex}.sidebar-badge.is-critical{background:var(--hv-red,#d6344b)}.sidebar-badge.is-warning{background:var(--hv-amber,#d97706)}.sidebar.is-collapsed .sidebar-badge{width:9px;min-width:0;height:9px;box-shadow:0 0 0 2px var(--hv-sidebar,var(--surface,#fff));padding:0;font-size:0;position:absolute;top:5px;right:calc(50% - 15px)}.al-tabs{align-self:flex-start;margin-bottom:4px}.al-tabs .dv2-mono{opacity:.7;margin-left:6px;font-size:11.5px}.sys-tabs{align-self:flex-start;max-width:100%;margin-bottom:4px;overflow-x:auto}.sys-tabs a{white-space:nowrap}.sys-tab-count{color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:7px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.sys-tab-count.is-warn{background:var(--hv-amber)}.sys-tab-count.is-bad{background:var(--hv-red)}.sys-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.sys-page .rv-card-head{margin-bottom:18px}.al-list{padding:4px 0}.al-empty{color:var(--d-muted);padding:28px 22px;font-size:14px}.al-row{border-left:3px solid #0000;grid-template-columns:84px minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px 20px;display:grid}.al-row+.al-row{border-top:1px solid var(--d-border)}.al-row.is-critical{border-left-color:var(--hv-red,#d6344b)}.al-row.is-warning{border-left-color:var(--hv-amber,#d97706)}.al-level{border-radius:999px;justify-self:start;padding:3px 9px;font-size:11.5px;font-weight:600}.al-level.is-critical{color:var(--hv-red,#d6344b);background:#d6344b1f}.al-level.is-warning{color:var(--hv-amber,#b45309);background:#d9770624}.al-title{color:var(--d-ink);overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.al-times{color:var(--d-muted);margin-left:8px;font-size:12px;font-weight:500}.al-meta{color:var(--d-muted);flex-wrap:wrap;gap:4px 14px;margin-top:4px;font-size:12.5px;display:flex}.al-task{color:var(--d-accent);font-weight:600}.al-detail{margin-top:8px;font-size:13px}.al-detail summary{cursor:pointer;color:var(--d-ink2);font-weight:600}.al-detail pre{background:var(--d-hover);white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:var(--d-ink2);border-radius:8px;margin:6px 0 0;padding:10px 12px}.al-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}@media (max-width:720px){.al-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px 16px}.al-actions{justify-content:flex-start}}.al-actions .btn-sm.al-quiet{border:1px solid var(--d-border);color:var(--d-ink2);background:0 0}.al-actions .btn-sm.al-quiet:hover{background:var(--d-hover);color:var(--d-ink);opacity:1}.cn-explain{color:var(--d-ink2,var(--ink));max-width:72ch;margin:0;font-size:13.5px}.cn-facts{grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 14px;font-size:13.5px;display:grid}.cn-facts dt{color:var(--d-muted,var(--muted))}.cn-facts dd{color:var(--d-ink,var(--ink));margin:0}.ap-pickers{flex-wrap:wrap;gap:14px 28px;display:flex}.ap-picker{align-items:flex-end;gap:10px;display:flex}.ap-picker label{color:var(--d-muted,var(--muted));flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.ap-picker select,.ap-picker input{font:inherit;min-width:0;max-width:100%;font-size:13.5px}.ap-summary{margin-top:6px}.ap-summary .ap-section th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--d-muted,var(--muted));padding-top:18px;font-size:11.5px}.ap-summary tr:first-child.ap-section th{padding-top:6px}.ap-summary .ap-total td{color:var(--d-ink,var(--ink));font-weight:700}.ap-summary td.is-danger{color:var(--d-danger)}.pill-warn{background:var(--d-warn-soft,#c9720a24);color:var(--d-warn,#b35a14)}.rv-kpi-value.is-warn{color:var(--d-warn,#b35a14)}.as-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-bottom:12px;display:flex}.as-filter-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.as-filter-form select,.as-filter-form input{font:inherit;max-width:100%;font-size:13.5px}.as-check{align-items:flex-start;flex-direction:row!important;gap:8px!important;font-weight:500!important}.as-check input{margin-top:3px}.as-error{color:var(--d-danger)}.as-links{gap:10px;display:grid}.as-link-row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.as-link-row>span{flex:220px;min-width:220px}.as-link-row select{font:inherit;max-width:100%;font-size:13.5px}.si.is-preview{justify-content:flex-start;padding-top:24px}.si-preview{border:1px dashed var(--s-warn);background:var(--s-warn-soft);width:min(640px,100%);color:var(--s-ink);border-radius:14px;flex-direction:column;gap:12px;padding:14px 16px;font-size:13.5px;line-height:1.5;display:flex}.si-preview-text{flex-direction:column;gap:4px;display:flex}.si-preview-text strong{color:var(--s-warn);letter-spacing:.06em;text-transform:uppercase;font-size:11.5px}.si-preview-note{color:var(--s-ink2);font-size:12.5px}.si-preview-form{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.si-preview-form .si-input{flex:240px;width:auto;min-width:0;height:40px}.si button.si-preview-btn{background:var(--s-brand);color:#fff;cursor:pointer;border:none;border-radius:999px;height:40px;padding:0 20px;font-size:14px;font-weight:600}.si-preview-fieldset{border:0;min-width:0;margin:0;padding:0}.si button.si-link:disabled{opacity:.6;cursor:not-allowed;text-decoration:none}.pf-lead{max-width:78ch;margin:0 0 12px}.pf-table td,.pf-table th{white-space:nowrap}.pf-table td:first-child{white-space:normal;min-width:160px}.pf-table tfoot td{font-weight:700}.pf-muted{color:var(--d-muted)}.pf-sub{color:var(--d-muted);font-size:11.5px;font-weight:400;display:block}.pf-rate{font-weight:600}.pf-rate.is-low,.pf-old{color:var(--d-warn,#b35a14)}.pf-bar-col{min-width:150px}.pf-bar{vertical-align:middle;background:var(--d-line,#e5e5ea);border-radius:99px;width:96px;height:8px;margin-right:10px;display:inline-block;overflow:hidden}.pf-bar span{background:var(--d-accent,#0a5fd6);border-radius:99px;height:100%;display:block}.pf-bar-pct{font-variant-numeric:tabular-nums;font-weight:600}.pf-periods{scrollbar-width:none;max-width:100%;overflow-x:auto}.pf-periods a{white-space:nowrap;flex-shrink:0}.dv2-head>.pf-head-actions{min-width:0;max-width:100%}.cb-table td.rt-covers{white-space:normal;min-width:220px;max-width:300px}.cb-table td.rt-result{white-space:normal;min-width:260px}.rt-report,.rt-run{margin-top:12px}.rt-run p{margin:0 0 6px}.rt-problems{color:var(--hv-red);margin:0 0 8px;padding-left:20px;font-size:13px}.rt-output{background:var(--d-hover,#f4f5f7);white-space:pre;border-radius:8px;max-height:360px;margin:0;padding:10px 12px;font-size:12px;line-height:1.45;overflow:auto}.ts-note code{overflow-wrap:anywhere;font-size:11.5px}.cl-portal-state{margin:4px 0 0}.cl-work{margin-top:10px}.cl-work-list{margin:6px 0 0;padding:0;list-style:none}.cl-work-list li{border-top:1px solid var(--d-line);color:var(--d-ink);grid-template-columns:92px minmax(0,1fr) auto;align-items:start;gap:12px;padding:9px 0;font-size:13.5px;display:grid}.cl-work-date{color:var(--d-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.cl-work-text{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}.cl-item{border-top:1px solid var(--d-line);grid-template-columns:124px minmax(0,1fr) auto;gap:14px;padding:12px 0;display:grid}.cl-item:first-child{border-top:0}.cl-date{color:var(--d-muted);white-space:nowrap;padding-top:1px;font-size:13px}.cl-main{min-width:0}.cl-main p{margin:0}.cl-summary{color:var(--d-ink);overflow-wrap:anywhere;font-size:14px;font-weight:500}.cl-system{background:var(--d-accent-soft);color:var(--d-accent);vertical-align:1px;white-space:nowrap;border-radius:6px;margin-right:8px;padding:1px 7px;font-size:11.5px;font-weight:600;display:inline-block}.cl-main .cl-details{color:var(--d-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px;font-size:13px}.cl-main .cl-meta{color:var(--d-faint);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;display:flex}.cl-portal{border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.cl-portal.is-shown{background:var(--d-ok-soft);color:var(--d-ok)}.cl-portal.is-hidden{background:var(--d-hover);color:var(--d-muted)}.cl-edit{margin-top:2px}.cl-edit summary{padding:2px 0;font-size:12.5px}.cl-actions{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.cl-link-btn{color:var(--d-accent);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:600}.cl-link-btn:hover{opacity:1;text-decoration:underline;transform:none}@media (max-width:640px){.cl-item{grid-template-columns:minmax(0,1fr);gap:6px}.cl-actions{flex-direction:row;justify-content:flex-start;gap:16px}.cl-work-list li{grid-template-columns:minmax(0,1fr) auto}.cl-work-date{grid-column:1/-1}}.home-v2 .todo-chip.is-on{border-style:solid;border-color:var(--hv-accent);background:var(--hv-accent-soft);color:var(--hv-accent)}.todo-change-tag{background:var(--hv-accent-soft);color:var(--hv-accent);border-radius:5px;margin-right:6px;padding:0 6px;font-size:10.5px;font-weight:600}.si-changes{text-align:left;flex-direction:column;gap:8px;width:100%;display:flex}.si-change{background:var(--s-hover);color:var(--s-ink);border-radius:12px;gap:12px;padding:10px 14px;font-size:13.5px;display:flex}.si-change-date{color:var(--s-muted);font-variant-numeric:tabular-nums;flex:none}.si-change-main{flex:1;min-width:0}.si-change-main p{margin:0}.si-change-summary{overflow-wrap:anywhere}.si-change-system{background:var(--s-accent-soft);color:var(--s-accent);border-radius:6px;margin-right:8px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-block}.si-change-main .si-change-details{color:var(--s-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px;font-size:12.5px}.si-change-main .si-change-client{color:var(--s-faint);margin-top:4px;font-size:12px}.si-changes-more{text-align:left;width:100%;margin-top:8px}.si-pager{justify-content:space-between;align-items:center;gap:10px;width:100%;margin-top:10px;display:flex}.si-pager-btn{border:1px solid var(--s-line);color:var(--s-accent);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:6px 14px;font-size:13px;font-weight:600}.si-pager-btn:hover:not(:disabled){background:var(--s-hover)}.si-pager-btn:disabled{color:var(--s-muted);opacity:.5;cursor:default}.si-pager-info{color:var(--s-muted);font-variant-numeric:tabular-nums;text-align:center;font-size:13px}@media (max-width:420px){.si-pager-count{display:none}}.si-changes-more summary{color:var(--s-accent);cursor:pointer;padding:4px 0;font-size:13px;font-weight:600}.si-changes-more[open] summary{margin-bottom:8px}@media (max-width:520px){.si-change{flex-direction:column;gap:4px}}:root{--pl-green:#1f7a44;--pl-violet:#6b3fd4;--pl-violet-soft:#f1ecfd;--pl-amber-soft:#fdf0e6;--pl-grey-soft:#f2f4f7;--pl-now:#d6344b;--pl-kbd:#f2f4f7}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--pl-green:#47d67f;--pl-violet:#b69bff;--pl-violet-soft:#b69bff24;--pl-amber-soft:#f0a45c24;--pl-grey-soft:#ffffff12;--pl-now:#ff7086;--pl-kbd:#ffffff14}}:root[data-theme=dark]{--pl-green:#47d67f;--pl-violet:#b69bff;--pl-violet-soft:#b69bff24;--pl-amber-soft:#f0a45c24;--pl-grey-soft:#ffffff12;--pl-now:#ff7086;--pl-kbd:#ffffff14}.home-v2 .pl-grid{grid-template-columns:minmax(0,1fr) 400px}@media (max-width:1180px){.home-v2 .pl-grid{grid-template-columns:minmax(0,1fr)}}.home-v2 .pl{flex-direction:column;min-width:0;display:flex}.home-v2 .pl-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;padding:20px 22px 0;display:flex}.home-v2 .pl-heading{letter-spacing:-.01em;color:var(--hv-text);margin:0;font-size:18px;font-weight:600}.home-v2 .pl-count{color:var(--hv-muted);margin-left:6px;font-size:13px;font-weight:400}.home-v2 .pl-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.home-v2 .pl-tools button.tasks-refresh{margin-right:0}.home-v2 .pl-seg{background:var(--pl-grey-soft);border-radius:10px;padding:3px;display:inline-flex}.home-v2 .pl-seg a{color:var(--hv-muted);border-radius:8px;padding:5px 12px;font-size:13px;font-weight:500;text-decoration:none}.home-v2 .pl-seg a.is-active{background:var(--hv-panel);color:var(--hv-text);box-shadow:0 1px 2px #10182814}.home-v2 .pl-select{border:1px solid var(--hv-border);background-color:var(--hv-panel);min-width:0;max-width:220px;height:32px;color:var(--hv-control);font:inherit;border-radius:8px;padding:0 28px 0 12px;font-size:13px}.home-v2 .pl-chips{flex-wrap:wrap;gap:6px;padding:14px 22px 0;display:flex}.home-v2 .pl-chip{border:1px solid var(--hv-border);height:28px;color:var(--hv-control);font:inherit;cursor:pointer;box-shadow:none;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;font-weight:500;display:inline-flex;transform:none}.home-v2 .pl-chip span{color:var(--hv-subtle);font-size:11.5px}.home-v2 .pl-chip:hover{border-color:var(--hv-border-hover)}.home-v2 .pl-chip.is-active{border-color:var(--hv-text);background:var(--hv-text);color:var(--hv-panel)}.home-v2 .pl-chip.is-active span{color:inherit;opacity:.75}.home-v2 .pl-add{padding:14px 22px 4px}.home-v2 .pl-add .todo-add{margin:0;display:block}.home-v2 .pl-add .todo-compose{margin:0}.home-v2 .pl-add .pl-add-btn{background:var(--brand-gradient);color:#fff;opacity:.85;border:0;margin-left:auto}.home-v2 .pl-add .pl-add-btn:hover{opacity:1}.home-v2 .todo-chip.todo-chip-p1{color:var(--hv-red);border-color:color-mix(in srgb, var(--hv-red) 35%, transparent)}.home-v2 .todo-chip.todo-chip-p2{color:var(--hv-amber);border-color:color-mix(in srgb, var(--hv-amber) 35%, transparent)}.home-v2 .pl-body{padding:8px 22px 6px}.home-v2 .pl-section{margin-top:14px}.home-v2 .pl-section-head{border-bottom:1px solid var(--hv-line);align-items:baseline;gap:8px;padding-bottom:8px;display:flex}.home-v2 .pl-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--hv-control);font-size:11px;font-weight:700}.home-v2 .pl-section-sub{color:var(--hv-subtle);font-size:12px}.home-v2 .pl-done-note{color:var(--hv-subtle);margin:6px 0 0;font-size:12.5px}.home-v2 .pl-pager{border-top:1px solid var(--hv-line);margin:18px 0 8px;padding-top:14px}.home-v2 .pl-pager button.pager-perlink,.home-v2 .pl-pager button.pager-num,.home-v2 .pl-pager button.pager-btn{font:inherit;cursor:pointer;box-shadow:none;transform:none}.home-v2 .pl-pager button.pager-perlink,.home-v2 .pl-pager button.pager-num{background:0 0}.home-v2 .pl-pager button.pager-perlink.is-active,.home-v2 .pl-pager button.pager-num.is-active{background:var(--brand-blue)}.home-v2 .pl-pager button.pager-btn{background:0 0;border:0;padding:0}.home-v2 .pl-empty{color:var(--hv-subtle);margin:0;padding:14px 0 14px 86px;font-size:13px}.home-v2 .pl-list{margin:0;padding:0;list-style:none}.home-v2 .pl-row{border-radius:10px;grid-template-columns:64px 18px minmax(0,1fr) auto;align-items:start;column-gap:12px;margin:0 -8px;padding:12px 8px;display:grid}.home-v2 .pl-row+.pl-row{border-top:1px solid #0000}.home-v2 .pl-row.is-selected{background:var(--hv-soft);box-shadow:inset 2px 0 0 var(--hv-accent)}.home-v2 .pl-when{color:var(--hv-muted);white-space:nowrap;flex-direction:column;padding-top:1px;font-family:Geist Mono,ui-monospace,monospace;font-size:12px;line-height:1.5;display:flex}.home-v2 .pl-when.is-late{color:var(--hv-red)}.home-v2 .pl-when.is-any{color:var(--hv-subtle)}.home-v2 .pl-tick{border:1.5px solid var(--hv-dashed);background:var(--hv-panel);cursor:pointer;width:18px;height:18px;box-shadow:none;border-radius:5px;place-items:center;margin-top:1px;padding:0;display:grid;transform:none}.home-v2 .pl-tick:hover{border-color:var(--hv-accent)}.home-v2 .pl-row:has(.pl-when.is-late) .pl-tick:not(.is-done){border-color:color-mix(in srgb, var(--hv-red) 55%, transparent)}.home-v2 .pl-tick.is-done{border-color:var(--hv-accent);background:var(--hv-accent)}.home-v2 .pl-main{min-width:0}.home-v2 .pl-title{width:100%;color:var(--hv-text);font:inherit;text-align:left;cursor:pointer;box-shadow:none;background:0 0;border:0;margin:0;padding:0;font-size:14px;line-height:1.45;display:block;transform:none}.home-v2 .pl-title>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.home-v2 .pl-title:hover{color:var(--hv-accent)}.home-v2 .pl-row.is-done .pl-title{color:var(--hv-subtle);text-decoration:line-through}.home-v2 .pl-meta{color:var(--hv-muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:6px;font-size:12px;display:flex}.home-v2 .pl-no{white-space:nowrap;color:var(--hv-subtle);font-family:Geist Mono,ui-monospace,monospace;font-size:11.5px}.home-v2 .pl-pri{background:var(--pl-grey-soft);color:var(--hv-control);border-radius:4px;padding:1px 5px;font-family:Geist Mono,ui-monospace,monospace;font-size:11px;font-weight:600}.home-v2 .pl-pri.is-p1{background:var(--hv-red-soft);color:var(--hv-red)}.home-v2 .pl-pri.is-p2{background:var(--pl-amber-soft);color:var(--hv-amber)}.home-v2 .pl-client{background:color-mix(in srgb, var(--cl) var(--hv-tag-tint), transparent);max-width:240px;color:color-mix(in srgb, var(--cl) var(--hv-tag-ink), var(--hv-tag-base));white-space:nowrap;text-overflow:ellipsis;border-radius:6px;padding:1px 8px;font-weight:500;overflow:hidden}.home-v2 .pl-kind.is-change{color:var(--hv-accent);font-weight:500}.home-v2 .pl-kind.is-email{color:var(--brand-blue);font-weight:500}.home-v2 .pl-logtask{max-width:180px;color:var(--hv-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.todo-chip-slot{display:contents}.home-v2 .pl-est{color:var(--hv-muted)}.home-v2 .pl-est.is-logged{color:var(--pl-green)}.home-v2 .pl-meta button.task-files-btn{background:0 0;border:0;height:20px;padding:0 4px}.home-v2 .pl-meta button.task-files-btn:not(.has-files){opacity:0}.home-v2 .pl-row:hover .pl-meta button.task-files-btn,.home-v2 .pl-row.is-selected .pl-meta button.task-files-btn,.home-v2 .pl-meta button.task-files-btn:focus-visible{opacity:1}.home-v2 .pl-meta button.task-files-btn.has-files{color:var(--hv-accent)}.home-v2 .pl-note{background:var(--hv-soft);border:1px solid var(--hv-line);max-width:100%;color:var(--hv-control);border-radius:8px;margin:8px 0 0;padding:4px 10px;font-size:12.5px;line-height:1.45;display:inline-block}.home-v2 .pl-side{align-items:center;gap:8px;display:flex}.home-v2 .pl-status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.home-v2 .pl-status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.home-v2 .pl-status.is-in_progress{background:var(--hv-accent-soft);color:var(--hv-accent)}.home-v2 .pl-status.is-waiting{background:var(--pl-violet-soft);color:var(--pl-violet)}.home-v2 .pl-status.is-waiting_vendor{background:var(--pl-amber-soft);color:var(--hv-amber)}.home-v2 .pl-status.is-on_hold{background:var(--pl-grey-soft);color:var(--hv-muted)}.home-v2 .pl-avatar{background:var(--av-bg);width:26px;height:26px;color:var(--av-fg);border-radius:50%;place-items:center;font-size:10.5px;font-weight:700;display:inline-grid}.home-v2 .pl-start{background:var(--hv-accent-soft);height:30px;color:var(--hv-accent);cursor:pointer;box-shadow:none;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 14px;font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px;font-weight:600;display:inline-flex;transform:none}.home-v2 .pl-start:hover{background:var(--hv-accent);color:#fff}.home-v2 .pl-row.is-event{padding-top:10px;padding-bottom:10px}.home-v2 .pl-ev-mark{background:var(--hv-event-bg);border-radius:5px;width:18px;height:18px;margin-top:1px}.home-v2 .pl-row.is-break .pl-ev-mark{background:repeating-linear-gradient(135deg, var(--hv-hatch-a) 0 3px, var(--hv-hatch-b) 3px 6px)}.home-v2 .pl-ev-title{color:var(--hv-event-fg);font-size:14px}.home-v2 .pl-row.is-break .pl-ev-title,.home-v2 .pl-row.is-break .pl-when{color:var(--hv-subtle)}.home-v2 .pl-ev-sub{color:var(--hv-subtle);margin-left:10px;font-size:12px}.home-v2 .pl-now{grid-template-columns:64px minmax(0,1fr);align-items:center;column-gap:12px;padding:4px 0;display:grid}.home-v2 .pl-now-time{color:var(--pl-now);font-family:Geist Mono,ui-monospace,monospace;font-size:12px;font-weight:600}.home-v2 .pl-now-line{background:var(--pl-now);height:1px;margin-left:4px;position:relative}.home-v2 .pl-now-line:before{content:"";background:var(--pl-now);border-radius:50%;width:8px;height:8px;position:absolute;top:-3.5px;left:-4px}.home-v2 .pl-row.is-editing{background:var(--hv-soft);border:1px solid var(--hv-border);margin:6px -8px;display:block}.home-v2 .pl-edit{gap:10px;display:grid}.home-v2 .pl-edit-head{align-items:center;gap:10px;display:flex}.home-v2 .pl-edit-title,.home-v2 .pl-edit-note{border:1px solid var(--hv-border);background:var(--hv-panel);width:100%;color:var(--hv-text);font:inherit;border-radius:8px;padding:8px 10px;font-size:14px}.home-v2 .pl-edit-note{resize:vertical;font-size:13px}.home-v2 .pl-status-chip.is-in_progress{color:var(--hv-accent)}.home-v2 .pl-status-chip.is-waiting{color:var(--pl-violet)}.home-v2 .pl-status-chip.is-waiting_vendor{color:var(--hv-amber)}.home-v2 .pl-status-chip.is-on_hold{color:var(--hv-muted)}.home-v2 .pl-edit-actions{align-items:center;gap:8px;display:flex}.home-v2 .pl-spacer{flex:1}.home-v2 .pl-edit-delete{color:var(--hv-red);font:inherit;cursor:pointer;box-shadow:none;background:0 0;border:0;font-size:13px;transform:none}.home-v2 .pl-keys{border-top:1px solid var(--hv-line);color:var(--hv-subtle);flex-wrap:wrap;gap:8px 22px;margin-top:auto;padding:14px 22px;font-size:12px;display:flex}.home-v2 .pl-keys kbd{border:1px solid var(--hv-border);background:var(--pl-kbd);min-width:18px;color:var(--hv-control);text-align:center;border-radius:4px;margin-right:4px;padding:1px 5px;font-family:Geist Mono,ui-monospace,monospace;font-size:11px;display:inline-block}.home-v2 .pl-keys kbd+kbd{margin-left:-2px}@media (hover:none),(max-width:640px){.home-v2 .pl-keys{display:none}}@media (max-width:640px){.home-v2 .pl-head,.home-v2 .pl-chips,.home-v2 .pl-add,.home-v2 .pl-body{padding-left:14px;padding-right:14px}.home-v2 .pl-tools,.home-v2 .pl-select{width:100%;max-width:none}.home-v2 .pl-row{grid-template-columns:48px 18px minmax(0,1fr)}.home-v2 .pl-repeat-row .pl-when{white-space:normal}.home-v2 .pl-side{grid-column:3;margin-top:8px}.home-v2 .pl-empty{padding-left:70px}.home-v2 .pl-now{grid-template-columns:48px minmax(0,1fr)}}.home-v2 .pl-rail{grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;min-width:0;display:grid}.home-v2 .pr-card{padding:18px}.home-v2 .pr-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--hv-accent);margin:0 0 10px;font-size:11px;font-weight:700}.home-v2 .pr-kicker.is-red{color:var(--hv-red)}.home-v2 .pr-away{gap:10px;margin:0;padding:0;list-style:none;display:grid}.home-v2 .pr-away li{gap:2px;font-size:13px;display:grid}.home-v2 .pr-away .pr-row-head{gap:8px}.home-v2 .pr-away .pr-mono{white-space:nowrap}.home-v2 .pr-away-pending{color:var(--hv-muted);font-weight:400}.home-v2 .pr-away-cover{color:var(--hv-muted)}.home-v2 .pr-away-cover.is-gap{color:var(--hv-red);font-weight:600}.home-v2 .pr-away-soon{margin-top:16px}.home-v2 .pr-next-title{color:var(--hv-text);margin:0 0 14px;font-size:14.5px;line-height:1.5}.home-v2 .pr-next-title.is-muted{color:var(--hv-muted);margin:0}.home-v2 .pr-start{background:var(--brand-gradient);color:#fff;width:100%;height:40px;font:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.home-v2 .pr-start:hover{filter:brightness(1.06)}.home-v2 .pr-alerts{border-color:color-mix(in srgb, var(--hv-red) 35%, var(--hv-border))}.home-v2 .pr-alert{gap:2px;font-size:13px;display:grid}.home-v2 .pr-alert+.pr-alert{margin-top:10px}.home-v2 a.pr-alert.is-link{text-decoration:none}.home-v2 a.pr-alert.is-link:hover strong{text-decoration:underline}.home-v2 .pr-alert strong{color:var(--hv-red);font-weight:600}.home-v2 .pr-alert span{color:var(--hv-muted)}.home-v2 .pr-title{color:var(--hv-text);margin:0;font-size:14px;font-weight:600}.home-v2 .pr-row-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.home-v2 .pr-mono{color:var(--hv-muted);white-space:nowrap;font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px}.home-v2 .pr-mono.is-ok{color:var(--hv-accent)}.home-v2 .pr-mono.is-warn,.home-v2 .pr-mono.is-over{color:var(--hv-red)}.home-v2 .pr-mono.is-muted{color:var(--hv-subtle)}.home-v2 .pr-bar{background:var(--pl-grey-soft);border-radius:999px;height:5px;margin-top:10px;overflow:hidden}.home-v2 .pr-bar span{border-radius:inherit;background:var(--hv-accent);height:100%;display:block}.home-v2 .pr-bar.is-brand span{background:var(--brand-gradient)}.home-v2 .pr-bar.is-warn span,.home-v2 .pr-bar.is-over span{background:var(--hv-red)}.home-v2 .pr-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.home-v2 .pr-tile{background:var(--hv-soft);border:1px solid var(--hv-line);border-radius:10px;gap:2px;padding:10px 12px;display:grid}.home-v2 .pr-tile strong{color:var(--hv-text);font-size:20px;font-weight:600}.home-v2 .pr-tile span{color:var(--hv-muted);font-size:11.5px}.home-v2 .pr-tile.is-red strong{color:var(--hv-red)}.home-v2 .pr-tile.is-violet strong{color:var(--pl-violet)}.home-v2 .pr-contracts{gap:16px;margin:14px 0 0;padding:0;list-style:none;display:grid}.home-v2 .pr-contracts .pr-bar{margin-top:8px}.home-v2 .pr-name{min-width:0;color:var(--hv-text);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.home-v2 .pr-days-card{padding:6px 18px}.home-v2 .pr-days{margin:0;padding:0;list-style:none}.home-v2 .pr-days li{color:var(--hv-text);justify-content:space-between;gap:12px;padding:10px 0;font-size:13px;display:flex}.home-v2 .pr-days li+li{border-top:1px solid var(--hv-line)}.home-v2 .pr-repeat{margin:12px 0 0;padding:0;list-style:none}.home-v2 .pr-repeat li{grid-template-columns:minmax(0,1fr);gap:2px;padding:9px 0;font-size:13px;display:grid}.home-v2 .pr-repeat li+li{border-top:1px solid var(--hv-line)}.home-v2 .pr-repeat-sub{min-width:0;color:var(--hv-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.home-v2 .pr-repeat-empty{color:var(--hv-muted);margin:8px 0 0;font-size:13px}.home-v2 .pr-link{font:inherit;color:var(--hv-accent);cursor:pointer;background:0 0;border:0;margin-top:8px;padding:0;font-size:13px;font-weight:600}.home-v2 .pr-link:hover{text-decoration:underline}.home-v2 .tp{z-index:60;border:1px solid var(--hv-border);background:var(--hv-panel);border-radius:18px;flex-direction:column;width:min(420px,100vw - 24px);animation:.16s ease-out tp-in;display:flex;position:fixed;top:12px;bottom:12px;right:12px;box-shadow:0 24px 48px -12px #10182838,0 4px 12px #1018280f}@keyframes tp-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.home-v2 .tp{animation:none}}.home-v2 .tp-head{justify-content:space-between;align-items:center;padding:16px 20px 4px;display:flex}.home-v2 .tp-no{color:var(--hv-muted);font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px}.home-v2 .tp-no span{color:var(--hv-subtle);font-family:inherit}.home-v2 .tp-close{border:1px solid var(--hv-border);width:30px;height:30px;color:var(--hv-muted);cursor:pointer;background:0 0;border-radius:8px;place-items:center;padding:0;display:grid}.home-v2 .tp-close:hover{background:var(--hv-btn-hover);color:var(--hv-text)}.home-v2 .tp-body{flex:auto;min-height:0;padding:4px 20px 16px;overflow-y:auto}.home-v2 .tp-title{width:100%;color:var(--hv-text);font:inherit;resize:none;background:0 0;border:1px solid #0000;border-radius:8px;margin:0 0 14px -6px;padding:4px 6px;font-size:17px;font-weight:500;line-height:1.45;display:block;overflow:hidden}.home-v2 .tp-title:hover{border-color:var(--hv-border)}.home-v2 .tp-title:focus{border-color:var(--hv-accent);background:var(--hv-field);outline:none}.home-v2 .tp-facts{grid-template-columns:1fr 1fr;gap:14px 16px;margin:0 0 18px;display:grid}.home-v2 .tp-facts dt{letter-spacing:.06em;text-transform:uppercase;color:var(--hv-subtle);margin-bottom:3px;font-size:11px;font-weight:600}.home-v2 .tp-facts dd{color:var(--hv-text);margin:0;font-size:13.5px}.home-v2 .tp-facts dd.is-late{color:var(--hv-red);font-weight:500}.home-v2 .tp-facts .tp-fact-wide{grid-column:1/-1}.home-v2 .tp-facts .tp-fact-wide dd{overflow-wrap:anywhere}.home-v2 .tp-actions{gap:10px;margin-bottom:22px;display:flex}.home-v2 .tp-feedback{color:var(--hv-text);cursor:pointer;align-items:flex-start;gap:10px;margin:-8px 0 22px;font-size:13.5px;font-weight:500;display:flex}.home-v2 .tp-feedback input{width:16px;height:16px;accent-color:var(--hv-accent);flex:none;margin:2px 0 0}.home-v2 .tp-feedback .tp-hint{margin:2px 0 0;font-weight:400;display:block}.home-v2 .tp-start{background:var(--brand-gradient);color:#fff;height:42px;font:inherit;cursor:pointer;border:0;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:600;display:flex}.home-v2 .tp-start:hover{filter:brightness(1.06)}.home-v2 .tp-done{border:1px solid var(--hv-border);background:var(--hv-panel);height:42px;color:var(--hv-text);font:inherit;cursor:pointer;border-radius:999px;padding:0 20px;font-size:14px;font-weight:500}.home-v2 .tp-done:hover{border-color:var(--hv-border-hover);background:var(--hv-btn-hover)}.home-v2 .tp-section{margin-bottom:20px}.home-v2 .tp-section h3{letter-spacing:.06em;text-transform:uppercase;color:var(--hv-subtle);margin:0 0 8px;font-size:11px;font-weight:600}.home-v2 .tp-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.home-v2 .tp-row h3{margin-bottom:8px}.home-v2 .tp-pills{flex-wrap:wrap;gap:8px;display:flex}.home-v2 .tp-pill{border:1px solid var(--hv-border);background:var(--hv-panel);height:30px;color:var(--hv-control);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12.5px;display:inline-flex}.home-v2 .tp-pill:hover{border-color:var(--hv-border-hover);background:var(--hv-btn-hover)}.home-v2 .tp-status:before{content:"";background:var(--st,var(--hv-subtle));border-radius:50%;width:6px;height:6px}.home-v2 .tp-status.is-open{--st:var(--hv-subtle)}.home-v2 .tp-status.is-in_progress{--st:var(--hv-accent)}.home-v2 .tp-status.is-waiting{--st:var(--pl-violet)}.home-v2 .tp-status.is-waiting_vendor{--st:var(--hv-amber)}.home-v2 .tp-status.is-on_hold{--st:var(--hv-muted)}.home-v2 .tp-status.is-done{--st:var(--pl-green)}.home-v2 .tp-status.is-active{border-color:var(--st);background:color-mix(in srgb, var(--st) 10%, var(--hv-panel));color:var(--st);font-weight:500}.home-v2 .tp-handoff{margin-top:10px}.home-v2 .tp-seg{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.home-v2 .tp-seg-btn{border:1px solid var(--hv-border);background:var(--hv-panel);height:34px;color:var(--hv-control);cursor:pointer;border-radius:10px;padding:0;font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px}.home-v2 .tp-seg-btn:hover{border-color:var(--hv-border-hover)}.home-v2 .tp-seg-btn.is-active{border-color:var(--hv-text);background:var(--hv-btn-hover);color:var(--hv-text);font-weight:600}.home-v2 .tp-seg-btn.is-p1.is-active{border-color:var(--hv-red);background:var(--hv-red-soft);color:var(--hv-red)}.home-v2 .tp-seg-btn.is-p2.is-active{border-color:var(--hv-amber);background:var(--pl-amber-soft);color:var(--hv-amber)}.home-v2 .tp-contract{background:var(--hv-soft);border-radius:12px;margin-bottom:20px;padding:12px 14px;font-size:13px}.home-v2 .tp-contract strong{color:var(--hv-text);font-weight:600}.home-v2 .tp-mono{color:var(--hv-muted);white-space:nowrap;font-family:Geist Mono,ui-monospace,monospace;font-size:12.5px}.home-v2 .tp-mono.is-ok{color:var(--hv-accent)}.home-v2 .tp-mono.is-warn,.home-v2 .tp-mono.is-over{color:var(--hv-red)}.home-v2 .tp-bar{background:var(--pl-grey-soft);border-radius:999px;height:5px;margin-top:10px;overflow:hidden}.home-v2 .tp-bar span{border-radius:inherit;background:var(--hv-accent);height:100%;display:block}.home-v2 .tp-bar.is-warn span,.home-v2 .tp-bar.is-over span{background:var(--hv-red)}.home-v2 .tp-note{border:1px solid var(--hv-border);background:var(--hv-field);width:100%;color:var(--hv-text);font:inherit;resize:vertical;border-radius:10px;padding:10px 12px;font-size:13.5px;line-height:1.5;display:block}.home-v2 .tp-note:focus{border-color:var(--hv-accent);outline:none}.home-v2 .tp-hint{color:var(--hv-subtle);margin:6px 0 0;font-size:12.5px}.home-v2 .tp-logged{margin:0;padding:0;list-style:none}.home-v2 .tp-logged li{border-top:1px solid var(--hv-line);grid-template-columns:52px minmax(0,1fr) auto;align-items:baseline;gap:10px;padding:8px 0;font-size:13px;display:grid}.home-v2 .tp-logged-text{-webkit-line-clamp:2;color:var(--hv-text);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.home-v2 .tp-logged-sub{color:var(--hv-subtle);font-size:12px;display:block}.home-v2 .tp-bill{color:var(--pl-green);white-space:nowrap;font-size:12px}.home-v2 .tp-bill.is-non{color:var(--hv-subtle)}.home-v2 .tp-foot{border-top:1px solid var(--hv-border);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.home-v2 .tp-delete,.home-v2 .tp-edit{height:32px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0 12px;font-size:13px}.home-v2 .tp-delete{color:var(--hv-red)}.home-v2 .tp-delete:hover{background:var(--hv-red-soft)}.home-v2 .tp-edit{color:var(--hv-control);border:1px solid var(--hv-border)}.home-v2 .tp-edit:hover{background:var(--hv-btn-hover)}@media (max-width:520px){.home-v2 .tp{width:calc(100vw - 16px);top:8px;bottom:8px;right:8px}.home-v2 .tp-head,.home-v2 .tp-body,.home-v2 .tp-foot{padding-left:16px;padding-right:16px}}.home-v2 .tp button:hover{opacity:1;transform:none}.payroll-head{flex-wrap:wrap;align-items:center;gap:10px}.payroll-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.payroll-hint{margin:0 0 10px;font-size:13px}.payroll-warn{background:var(--d-danger-soft);color:var(--d-danger);border-radius:10px;margin:0 0 10px;padding:8px 12px;font-size:13px}.payroll-table{table-layout:fixed;min-width:640px}.payroll-table .payroll-item-col{width:150px}.payroll-table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}.payroll-table .payroll-item{color:var(--d-ink);font-weight:600}.payroll-table tr.is-total td{color:var(--d-ink);font-weight:700}.table-scroll+.payroll-hint{margin-top:10px}.payroll-stats{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:4px 0 16px;display:grid}.payroll-stats>div{background:var(--d-hover);border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.payroll-stats span{color:var(--d-muted);font-size:12px}.payroll-stats strong{font-variant-numeric:tabular-nums;font-size:15px}.payroll-stats .is-due strong{color:var(--d-danger)}.payroll-stats .is-done strong{color:var(--d-ok)}.payroll-lists{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;display:grid}.payroll-list-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.payroll-list-head .bank-subhead{margin:0}.payroll-unset{margin:0;padding:0;list-style:none}.payroll-unset li{border-bottom:1px solid var(--d-line);justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.payroll-unset li:last-child{border-bottom:0}.payroll-check{align-items:center;gap:8px;font-size:13.5px;display:flex}.ts-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ts-title-row .panel-title{margin:0}a.ts-report-btn{text-decoration:none}.tr-list{scroll-margin-top:72px}.tr-table .tr-group th{letter-spacing:.04em;text-transform:uppercase;color:var(--d-faint);border-bottom:0;padding-bottom:0;font-size:11px}.tr-table tbody tr.is-active td{background:var(--d-accent-soft)}.tr-table td:first-child{white-space:nowrap;min-width:0}.tr-name{font-weight:500}.tr-table td.tr-title{white-space:normal;min-width:220px;max-width:420px}.tr-good{color:var(--d-ok);font-weight:600}.tr-warn{color:var(--d-danger);font-weight:600}.tr-strong{font-weight:600}.tr-pri{background:var(--d-hover);color:var(--d-ink2);border-radius:4px;padding:1px 6px;font-size:11.5px;font-weight:600}.tr-pri.is-p1{background:var(--d-danger-soft);color:var(--d-danger)}.tr-pri.is-p2{background:var(--d-warn-soft);color:var(--d-warn)}.sl-table td.sl-name{white-space:normal;min-width:200px}.sl-table td.sl-name>a{font-weight:500}.sl-table td.sl-next{white-space:normal;min-width:160px}.sl-table td.sl-details{white-space:normal;min-width:150px}.sl-table td.sl-details .pf-sub{margin-top:4px;display:block}.dv2-seg.sl-stages,.sl-check .dv2-seg{flex-wrap:wrap}.sl-check{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:12px 0;display:flex}.table-scroll:has(>.sl-table){margin-top:10px}.sl-opps{margin:0;padding:0;list-style:none}.sl-opp{border-top:1px solid var(--d-line);justify-content:space-between;align-items:flex-start;gap:16px;padding:14px 0;display:flex}.sl-opp:first-child{border-top:0;padding-top:4px}.sl-opp-body{flex:1;min-width:0}.sl-opp-body p{color:var(--d-ink2);margin:4px 0 0;font-size:13.5px}.sl-opp-body p.sl-opp-offer{color:var(--d-muted);overflow-wrap:anywhere;font-size:13px}.sl-kind{background:var(--d-accent-soft);color:var(--d-accent);border-radius:4px;margin-right:8px;padding:1px 6px;font-size:11.5px;font-weight:600;display:inline-block}.sl-opp-actions{flex-shrink:0;gap:8px;display:flex}@media (max-width:640px){.sl-opp{flex-direction:column}}.hub-head{margin-bottom:14px}.hub-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.hub-actions form{margin:0}.hub-actions input:not([type=checkbox]):not([type=radio]),.hub-actions select,.hub-field{font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;min-width:0;max-width:100%;padding:.4rem .6rem;font-size:13.5px}.hub-actions input[type=email],.hub-actions input[type=text]{width:220px}.hub-note{margin:12px 0 0}.hub-panel{border-bottom:1px solid var(--card-border);margin:0 0 18px;padding:0 0 18px}.sl-mail-follow{margin:0 0 12px}.sl-mail-wrong{margin:4px 0 0}.ri-subject{color:var(--d-ink);margin:0 0 10px;font-weight:600}.ri-check{align-items:flex-start;gap:8px;font-weight:400;flex-direction:row!important}.ri-check input{width:auto;margin-top:3px}.ri-from{background:var(--d-surface);color:var(--d-muted);border-radius:12px;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0 0 14px;padding:10px 14px;font-size:13px;display:flex}.ri-hold{margin-left:auto}.home-v2 .pl-sla{white-space:nowrap;background:var(--pl-grey-soft);color:var(--hv-control);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:500}.home-v2 .pl-sla.is-warn{background:var(--pl-amber-soft);color:var(--hv-amber)}.home-v2 .pl-sla.is-bad{background:var(--hv-red-soft);color:var(--hv-red);font-weight:600}.home-v2 .pl-sla.is-ok{background:color-mix(in srgb, var(--pl-green) 14%, transparent);color:var(--pl-green)}.sla-near{color:var(--d-warn);font-weight:600}.sla-targets input{width:9rem}.pop-match{color:var(--d-ink,var(--ink));flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 10px;font-size:13px;display:flex}.pop-rows{flex-direction:column;gap:8px;margin:0 0 12px;display:flex}.pop-row select,.pop-row input,.pop-reason,.pop-add input{font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;padding:.5rem .6rem}.pop-row select:focus,.pop-row input:focus,.pop-add input:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.pop-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pop-row select{flex:320px;min-width:0}.pop-row input{text-align:right;flex:0 0 9rem}.pop-hint{color:var(--d-muted);flex-basis:100%;font-size:12.5px}.pop-rows-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.pop-total{font-weight:600}.pop-off{color:var(--hv-amber);font-weight:600}.pop-reason{width:auto;margin-left:auto}.pop-add{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.pop-add input{flex:0 320px;min-width:0}@media (max-width:640px){.pop-row input{flex:8rem}.pop-reason{margin-left:0}}.doc-filter{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.doc-filter select,.doc-filter input{font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;min-width:0;padding:.45rem .6rem}.doc-filter select{flex:0 260px}.doc-filter input{flex:260px}.doc-groups{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px 28px;display:grid}.doc-group h3{letter-spacing:.04em;text-transform:uppercase;color:var(--d-muted);margin:0 0 6px;font-size:12px;font-weight:600}.doc-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.doc-list li{flex-wrap:wrap;align-items:baseline;gap:4px 8px;display:flex}.doc-list .bs-sub{white-space:normal;overflow-wrap:anywhere;flex-basis:100%}.doc-title{font-weight:600}.doc-client{color:var(--d-muted);font-size:12.5px}.doc-new{border-top:1px solid var(--d-line,var(--card-border));flex-wrap:wrap;align-items:center;gap:6px;margin-top:18px;padding-top:14px;display:flex}.doc-missing{font-size:12.5px}.doc-facts{flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;display:flex}.doc-body{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--d-ink,var(--ink));font-size:14.5px;line-height:1.6}.doc-body-input{min-height:320px;font-family:Geist Mono,ui-monospace,monospace;font-size:13.5px;line-height:1.55}@media (max-width:640px){.doc-groups{grid-template-columns:1fr}}.rp-cost{color:var(--d-muted);flex-direction:column;gap:4px;font-size:12.5px;font-weight:600;display:flex}.rp-cost input{text-align:right;width:10rem}.fc-card{margin-bottom:16px}.fc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 32px;display:grid}.fc-lines{flex-direction:column;gap:4px;margin:10px 0 0;font-size:13px;display:flex}.fc-lines div{justify-content:space-between;gap:12px;display:flex}.fc-lines dt{color:var(--d-muted)}.fc-lines dd{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}@media (max-width:860px){.fc-grid{grid-template-columns:1fr}}.sc-steps{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.sc-steps li{align-items:flex-start;gap:10px;font-size:14px;display:flex}.sc-steps li form{margin:0}.sc-tick{border:1.5px solid var(--card-border);background:var(--surface);color:#fff;cursor:pointer;border-radius:6px;flex:0 0 22px;width:22px;height:22px;padding:0;font-size:13px;font-weight:700;line-height:1}.sc-tick:disabled{cursor:default;opacity:.6}.sc-steps li.is-done .sc-tick{background:var(--d-ok,#16a34a);border-color:var(--d-ok,#16a34a)}.sc-steps li.is-done .sc-text{color:var(--d-muted);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent)}.sc-text .bs-sub{text-decoration:none;display:block}.ps-form{align-items:stretch;gap:12px}.ps-label{text-align:left;flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.ps-textarea{resize:vertical;height:auto;padding:10px 14px}.ps-file{font-size:13px}.ps-note{color:var(--si-muted,#6b7280);text-align:left;margin:4px 0 0;font-size:12.5px}.ps-list{flex-direction:column;gap:8px;width:100%;display:flex}.ps-item{border:1px solid var(--card-border);text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.ps-item-main{min-width:0}.ps-item-title{overflow-wrap:anywhere;font-size:14px;font-weight:600}.ps-no{opacity:.7;font-family:Geist Mono,ui-monospace,monospace;font-size:12px;font-weight:500}.ps-item-sub{opacity:.75;overflow-wrap:anywhere;font-size:12.5px}.ps-status{background:color-mix(in srgb, currentColor 10%, transparent);border-radius:999px;flex:none;padding:3px 8px;font-size:12px;font-weight:600}.ps-status.is-ok{color:#16a34a}.ps-status.is-warn{color:#c2410c}.pay-amount{flex-direction:column;align-items:center;gap:2px;margin:18px 0 20px;display:flex}.pay-amount span{text-transform:uppercase;letter-spacing:.05em;opacity:.7;font-size:12.5px}.pay-amount strong{font-variant-numeric:tabular-nums;font-size:32px;font-weight:700}.pay-amount .pay-due{text-transform:none;letter-spacing:0;font-size:13px}.pay-bank{text-align:left;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px 16px;width:100%;margin:14px 0 0;display:grid}.pay-bank dt{opacity:.7;font-size:12px}.pay-bank dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:700}.si-doc-wrap{align-items:stretch;gap:8px;display:flex}.si-doc-wrap .si-doc{flex:auto;min-width:0}.si-docs.has-pay .si-doc-wrap{grid-template-columns:minmax(0,1fr) 104px;display:grid}.si-docs .si-doc-status{text-align:center;box-sizing:border-box;min-width:72px}.si-pay-btn{color:#fff;white-space:nowrap;background:#e0392f;border-radius:10px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-size:13.5px;font-weight:700;text-decoration:none;transition:background-color .15s;display:inline-flex}.si-pay-btn:hover{background:#c42e25}.si-pay-btn:focus-visible{outline-offset:2px;outline:2px solid #e0392f}.si-pay-btn.is-lg{min-height:46px;padding:0 30px;font-size:15px}.si-pay-due{border:1px solid var(--s-line);background:linear-gradient(#e0392f, #e0392f) top / 100% 4px no-repeat, var(--s-surface);text-align:left;border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 20px;width:100%;margin:0 0 20px;padding:22px 20px 18px;display:flex;overflow:hidden}.si-pay-due-main{min-width:0}.si-pay-due-label{color:var(--s-accent);margin:0;font-size:13px;font-weight:700}.si-pay-due-amount{letter-spacing:-.01em;color:#e0392f;font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:30px;font-weight:700}.si-pay-due-note{color:var(--s-muted);margin:2px 0 0;font-size:12.5px}.si-pay-due-action{flex-direction:column;align-items:center;gap:6px;display:flex}.si-pay-due-ways{color:var(--s-muted);white-space:nowrap;font-size:11.5px}.si-pay-due-hint{max-width:260px;color:var(--s-muted);margin:0;font-size:12.5px;line-height:1.5}@media (max-width:520px){.si-doc{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"num status""date amount";gap:4px 10px;display:grid}.si-doc-num{grid-area:num}.si-docs .si-doc-status{grid-area:status;justify-self:end;min-width:0}.si-doc-date{grid-area:date}.si-doc-amount{grid-area:amount;justify-self:end}.si-docs.has-pay .si-doc-wrap{grid-template-columns:1fr;gap:6px}.si-pay-slot{display:none}.si-pay-due{flex-direction:column;align-items:stretch}.si-pay-due-action .si-pay-btn{width:100%}.si-pay-due-hint{max-width:none}}.copy-link{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.m365-findings{flex-direction:column;gap:12px;display:flex}.m365-finding{align-items:flex-start;gap:12px;display:flex}.m365-finding .bs-state{flex:0 0 76px}.m365-finding p{white-space:normal;overflow-wrap:anywhere;margin:2px 0 0}.m365-list{overflow-wrap:anywhere;flex-direction:column;gap:3px;margin:0;padding-left:18px;font-size:13.5px;display:flex}a.btn.btn-ghost{color:var(--ink);border:1px solid var(--card-border);box-shadow:none;background:0 0}a.btn.btn-ghost:hover{background:var(--hover)}.pop-add .rp-cost input{flex:none}.pop-add:has(.rp-cost){align-items:flex-end}.rp-why{white-space:normal!important}.br-upload-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.br-sub{margin-top:2px;font-size:12px}.br-faint{color:var(--d-muted,var(--hv-muted))}.br-in{color:var(--d-ok,#16823e)}.br-crumb{margin:0 0 4px;font-size:13px}.br-accounts{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:12px;display:grid}.br-account{border:1px solid var(--d-border);background:var(--d-surface2);color:inherit;border-radius:12px;gap:4px;padding:14px 16px;text-decoration:none;display:grid}.br-account:hover{border-color:var(--d-accent)}.br-account .pill{justify-self:start}.br-account-name{color:var(--d-ink);font-weight:600}.br-account-bal{letter-spacing:-.01em;color:var(--d-ink);font-size:20px;font-weight:600}.br-progress{align-items:center;gap:8px;min-width:120px;display:flex}.br-progress-bar{background:var(--d-hover);border-radius:99px;flex:1;height:6px;overflow:hidden}.br-progress-bar>span{background:var(--d-ok,#16823e);border-radius:99px;height:100%;display:block}.br-progress-text{color:var(--d-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12px}.br-progress.is-big .br-progress-bar{height:8px}.br-tiles{grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.4fr);gap:12px;display:grid}.br-tile{background:var(--d-surface2);border:1px solid var(--d-border);border-radius:12px;gap:6px;padding:12px 14px;display:grid}.br-tile-label{color:var(--d-muted);font-size:12px;font-weight:600}.br-tile-value{color:var(--d-ink);font-variant-numeric:tabular-nums;font-size:18px;font-weight:600}.br-check{border-radius:10px;margin:14px 0 0;padding:10px 12px;font-size:13.5px}.br-check.is-ok{background:var(--d-ok-soft);color:var(--d-ok)}.br-check.is-warn{background:var(--d-warn-soft);color:var(--d-warn);font-weight:500}.br-check.is-info{background:var(--d-hover);color:var(--d-muted)}.br-chips{flex-wrap:wrap;gap:6px;display:flex}.br-chip{border:1px solid var(--d-border);border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;text-decoration:none;display:inline-flex}.br-chip:hover{border-color:var(--d-accent)}.br-chip-text{color:var(--d-ink2)}.br-chip-n{color:var(--d-faint);font-variant-numeric:tabular-nums}.br-chip.is-active{background:var(--d-ink);border-color:var(--d-ink)}.br-chip.is-active .br-chip-text{color:var(--d-surface)}.br-chip.is-active .br-chip-n{color:var(--d-surface);opacity:.7}.br-lines td{vertical-align:top}.br-lines td.br-desc,.br-lines td.br-with{white-space:normal;overflow-wrap:anywhere}.br-lines tr.is-matched td,.br-lines tr.is-ignored td{color:var(--d-muted)}.br-desc{min-width:200px;max-width:380px}.br-desc>span:first-child{overflow-wrap:anywhere;display:block}.br-break{color:var(--d-warn);margin-top:4px;font-size:12px;font-weight:600;display:block}.br-amt{white-space:nowrap;font-variant-numeric:tabular-nums}.br-with{min-width:240px;max-width:420px}.br-match{flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:4px;font-size:13px;display:flex}.br-suggest{margin-top:4px;font-size:13px}.br-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.btn.is-danger{color:var(--d-danger)}.br-modal{width:min(640px,100vw - 32px)}.br-tabs{border-bottom:1px solid var(--hv-line);gap:4px;padding:0 20px;display:flex}.br-tab{color:var(--hv-muted);font:inherit;cursor:pointer;box-shadow:none;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 12px;font-size:14px;font-weight:500;transform:none}.br-tab.is-active{color:var(--hv-text);border-bottom-color:var(--hv-accent)}.br-picks{border:1px solid var(--hv-line);border-radius:12px;max-height:320px;margin:10px 0 6px;padding:0;list-style:none;overflow-y:auto}.br-picks li+li{border-top:1px solid var(--hv-line)}.br-picks label{color:var(--hv-text);cursor:pointer;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;font-size:13.5px;display:grid}.br-picks label.is-exact{background:var(--hv-accent-soft)}.br-picks input{width:16px;height:16px;accent-color:var(--hv-accent)}.br-pick-date{color:var(--hv-muted);white-space:nowrap;font-size:12.5px}.br-pick-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.br-pick-amt{font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width:900px){.br-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.br-tile-wide{grid-column:1/-1}}@media (max-width:600px){.br-picks label{grid-template-columns:auto minmax(0,1fr) auto}.br-pick-date,.br-lines thead{display:none}.br-lines,.br-lines tbody{display:block}.br-lines tr{border-bottom:1px solid var(--d-line);grid-template-columns:minmax(0,1fr) auto;padding:10px 0;display:grid}.br-lines td{border:none;min-width:0;max-width:none;padding:2px 0;display:block}.br-lines td.br-desc,.br-lines td.br-with{grid-column:1/-1}.br-lines td.br-desc{order:3}.br-lines td.br-with{order:4}}.pf-tiles{grid-template-columns:repeat(5,minmax(0,1fr))}.pf-off{color:var(--d-warn)}.pf-test{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.pf-test .br-faint{font-size:13px}.pf-live-note{margin-top:14px}.pf-detail{white-space:normal;overflow-wrap:anywhere;min-width:240px}.br-check code,.pf-detail code{overflow-wrap:anywhere;font-size:12.5px}@media (max-width:720px){.pf-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.cl-version{font-family:var(--font-mono,ui-monospace, monospace);white-space:nowrap;font-size:13px;font-weight:600}.cl-now{align-items:baseline;gap:14px;display:flex}.cl-now .cl-version{font-size:18px}.cl-now-title{color:var(--d-ink);font-size:16px;font-weight:600}.cl-summary{color:var(--d-ink2);margin:4px 0 0;font-size:13.5px;line-height:1.5}.cl-meta{margin:6px 0 0;font-size:13px}.cl-db{margin-left:6px}.table td.cl-wrap{white-space:normal;overflow-wrap:anywhere;min-width:260px}.cl-note{margin-top:12px}.cl-day+.cl-day{margin-top:18px}.cl-day-head{color:var(--d-muted);margin:0 0 6px;font-size:12.5px;font-weight:600}.cl-list{margin:0;padding:0;list-style:none}.cl-item{border-top:1px solid var(--d-line);align-items:baseline;gap:12px;padding:9px 0;display:flex}.cl-item .cl-version{flex:0 0 52px}.cl-body{flex:1;min-width:0}.cl-title{color:var(--d-ink2);overflow-wrap:anywhere;font-size:14px;line-height:1.5}.cl-title strong{color:var(--d-ink);font-weight:600}.cl-tags{flex-wrap:wrap;align-items:center;gap:8px;margin-top:5px;font-size:12.5px;display:flex}.cl-tags:empty{display:none}@media (max-width:600px){.cl-item{flex-direction:column;gap:2px}.cl-item .cl-version{flex:none}}.lt-grid.lt-grid-3{grid-template-columns:1fr 1fr 1fr}@media (max-width:520px){.lt-grid.lt-grid-3{grid-template-columns:1fr}}.payroll-page button.bank-btn,.payroll-page a.btn.shift-pager-btn,.payroll-page button.shift-pager-btn{padding:.5rem 1.1rem;font-size:.9rem;line-height:normal}.payroll-page .payroll-head{margin-bottom:16px}.payroll-page .payroll-actions{gap:10px}.payroll-page .payroll-list-head{margin-bottom:12px}.payroll-page .payroll-stats{margin:12px 0 22px}.payroll-page .payroll-lists{gap:24px}.payroll-page .payroll-warn{margin-bottom:14px}.payroll-page .btn.btn-sm.btn-ghost{padding:7px 16.6px}.payroll-note{background:var(--d-hover);border-radius:12px;margin:0 0 14px;padding:12px 14px;font-size:13px;line-height:1.5}.payroll-note strong{color:var(--d-ink);margin-bottom:4px;display:block}.payroll-note p{color:var(--d-muted);margin:0 0 6px}.payroll-note ul{margin:0;padding-left:18px}.payroll-returns{gap:12px;margin-top:14px;display:grid}.payroll-returns .payroll-note{min-width:0;margin:0}.payroll-returns .table-scroll,.payroll-returns .payroll-warn{margin:8px 0}.payroll-returns+.payroll-hint{margin-top:10px}.ci-label-form{align-items:center;gap:8px;display:flex}.ci-label-form input[name=label]{min-width:140px;max-width:260px;font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;flex:1;padding:.4rem .6rem}.ci-label-form input[name=label]:focus{border-color:var(--brand-blue);outline:2px solid #0a5fd659}.ci-actions form{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ci-uptime{font-variant-numeric:tabular-nums;font-weight:600;display:block}.ci-strip{flex-wrap:wrap;gap:3px;margin:6px 0 4px;display:flex}.ci-strip.is-small{flex-wrap:nowrap;gap:2px;margin:4px 0 0}.ci-day{background:var(--card-border);border-radius:2px;width:10px;height:22px}.ci-strip.is-small .ci-day{border-radius:1px;width:4px;height:14px}.ci-day.is-green{background:var(--d-ok)}.ci-day.is-amber{background:var(--d-warn)}.ci-day.is-red{background:var(--d-danger)}.ci-chart{width:100%;height:auto;margin:4px 0 8px;display:block}.ci-chart-grid{stroke:var(--card-border);stroke-width:1px}.ci-chart-text{fill:var(--muted);font-size:11px}.ci-chart-area{fill:var(--brand-blue);fill-opacity:.12}.ci-chart-line{fill:none;stroke:var(--brand-blue);stroke-width:1.5px}.ci-chart-down{fill:var(--d-danger);fill-opacity:.22}.ci-steps{margin:0 0 0 1.25rem;padding:0}.ci-steps li{margin:4px 0}.ci-page{flex-direction:column;gap:20px;display:flex}.ci-page>*{margin-top:0;margin-bottom:0}.ci-page .rv-card-head{margin-bottom:12px}.ci-page .rv-card-head h2{margin:0}.ci-head-note{color:var(--d-muted);text-align:right;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12.5px;overflow:hidden}.ci-pill{background:var(--d-hover);color:var(--d-muted);border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12.5px;font-weight:600;line-height:20px;display:inline-flex}.ci-pill:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.ci-pill.is-ok{background:var(--d-ok-soft);color:var(--d-ok)}.ci-pill.is-bad{background:var(--d-danger-soft);color:var(--d-danger)}.ci-pill.is-warn{background:var(--d-warn-soft);color:var(--d-warn)}.ci-meta{color:var(--d-muted);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:8px;font-size:13px;display:flex}.ci-kpis{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:16px}.ci-strip:not(.is-small){flex-wrap:nowrap;gap:2px}.ci-strip:not(.is-small) .ci-day{flex:1 1 0;width:auto;min-width:2px;height:28px}.ci-table td{vertical-align:middle}.ci-table .bs-sub{display:block}.ci-when{white-space:nowrap;font-variant-numeric:tabular-nums}.ci-uptime-cell{flex-direction:column;gap:2px;display:flex}.ci-legend{color:var(--d-muted);flex-wrap:wrap;gap:6px 18px;margin-top:6px;font-size:12px;display:flex}.ci-key{align-items:center;gap:6px;display:inline-flex}.ci-swatch{background:var(--card-border);border-radius:2px;width:10px;height:10px}.ci-swatch.is-green{background:var(--d-ok)}.ci-swatch.is-amber{background:var(--d-warn)}.ci-swatch.is-red{background:var(--d-danger);opacity:.8}.ci-swatch.is-line{background:var(--brand-blue);border-radius:2px;width:14px;height:3px}.ci-bars-office{fill:var(--d-danger)}.ci-bars-after{fill:var(--d-warn);opacity:.85}.ci-bars-ok{fill:var(--d-ok);opacity:.7}.ci-bars-off{fill:var(--d-hover)}.ci-bars-hit{fill:#0000}.ci-month.is-ok{fill:var(--d-ok);opacity:.8}.ci-month.is-warn{fill:var(--d-warn)}.ci-month.is-danger{fill:var(--d-danger)}.ci-chart-target{stroke:var(--ink);stroke-width:1.25px;stroke-dasharray:5 4;opacity:.55;pointer-events:none}.ci-swatch.is-target{border-top:2px dashed var(--ink);opacity:.55;background:0 0;border-radius:0;width:14px;height:0}.ci-uptime.is-ok{color:var(--d-ok)}.ci-uptime.is-warn{color:var(--d-warn)}.ci-uptime.is-danger{color:var(--d-danger)}.ci-report{flex-direction:column;gap:14px;display:flex}.ci-report-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ci-report-row .ci-row-label{color:var(--d-muted);min-width:92px;font-size:13px}.ci-report-row input[type=date],.ci-report-row input[type=text],.ci-report-row select{font:inherit;border:1px solid var(--card-border);background:var(--surface);color:var(--ink);border-radius:8px;padding:.35rem .55rem}.ci-report-row input[name=target]{width:90px}@media (max-width:640px){.ci-report-row .ci-row-label{min-width:100%}.ci-report-row input[type=date]{flex:130px;min-width:0}}.ci-chart g:hover>.ci-bars-hit{fill:var(--row-hover)}.ci-fold{padding:0}.ci-fold>summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding:16px 20px;list-style:none;display:flex}.ci-fold>summary::-webkit-details-marker{display:none}.ci-fold>summary:before{content:"›";width:10px;color:var(--d-muted);transition:transform .15s;display:inline-block}.ci-fold[open]>summary:before{transform:rotate(90deg)}.ci-fold-title{font-size:15px;font-weight:600}.ci-fold-sub{color:var(--d-muted);font-size:12.5px}.ci-fold-body{padding:0 20px 18px 44px}.ci-fold-body .ts-note:first-child{margin-top:0}@media (max-width:640px){.ci-head-note{display:none}.ci-strip:not(.is-small){gap:1px}.ci-strip:not(.is-small) .ci-day{border-radius:1px;min-width:0}.ci-fold-body{padding-left:20px}}.cd-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.cd-actions form{display:inline-flex}.cd-table td:first-child{text-align:center;width:44px}.cd-hint{margin:-4px 0 0}.cd-details{gap:0;margin:0;display:grid}.cd-detail{border-top:1px solid var(--card-border);grid-template-columns:140px 1fr auto;align-items:start;gap:12px;padding:10px 0;display:grid}.cd-detail:first-child{border-top:0}.cd-detail dt{color:var(--muted);padding-top:4px;font-size:13px}.cd-detail dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding-top:4px}.cd-summary{cursor:pointer;list-style-position:outside}.cd-summary h2{display:inline}@media (max-width:640px){.cd-detail{grid-template-columns:1fr auto}.cd-detail dt{grid-column:1/-1;padding-top:0}}.sig-preview{border:1px solid var(--border,#e4e7ec);background:#fff;border-radius:8px;place-self:start;padding:10px 14px;display:inline-flex}.sig-preview img{width:auto;max-width:100%;height:56px;display:block}
