/* Shared work surfaces: opaque for reading; world HUD keeps its glass. */
:root { --work-bg:var(--palette-page,#e4ecf5); --work-panel:var(--palette-panel,#f8fbff); --work-row:var(--palette-row); --work-selected:var(--palette-selected); }
html :is(#work-panel,#board-panel,#reports-panel,.modal-panel) { background:var(--work-bg);backdrop-filter:none!important;-webkit-backdrop-filter:none!important; }
html .modal-panel {background:var(--work-panel)}
html #work-panel {width:min(1000px,96vw);height:auto;max-height:90dvh;min-height:400px;padding:0;border-radius:26px;overflow:hidden;border:1px solid var(--glass-line)}
#work-header {padding:14px 22px;margin:0;border-bottom:1px solid var(--glass-line);background:var(--work-panel);flex-wrap:wrap}
#work-header h2 {font-size:16px;font-weight:500;letter-spacing:0;display:flex;align-items:center;gap:10px}
#work-header h2 span {color:var(--glass-muted)}
#work-home {border:0;background:none;color:var(--glass-ink);font:inherit;padding:0;cursor:pointer}
#work-tabs {margin:0 0 0 auto;border:0;background:none;padding:0;border-radius:0}
#work-tab-desk {display:none}
#work-close {display:none}
html #work-tabs button {border-radius:12px;background:var(--work-row);color:var(--glass-accent);padding:6px 12px;min-height:34px;display:inline-flex;align-items:center;gap:7px}
html #work-tabs button[aria-selected="true"] {background:var(--work-selected)}
#work-tabs kbd {font:12px inherit;border:1px solid var(--glass-line);border-radius:4px;padding:1px 4px;margin-left:7px}
#work-content {overflow:auto;display:block}
html #work-panel :is(#desk-panel,#tracker-panel) {padding:28px;display:block;overflow:visible}
html #work-panel #desk-header {display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:28px}
html #work-panel #desk-header h2 {display:block;font-size:27px;font-weight:500;margin:0}
#desk-scroll {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(190px,31%);gap:26px;overflow:visible;max-height:none;flex:none}
#desk-work-column,#desk-side-column {min-width:0}
html .desk-section {padding:0;margin:0 0 24px;border:0}
html .desk-section-head {font-size:14px;letter-spacing:0;font-weight:500;margin-bottom:12px;color:var(--glass-ink)}
#desk-clock,#desk-sofar-section,#desk-ongoing-section {display:none!important}
#desk-side-column #desk-waiting {display:block;color:var(--glass-muted);font-size:13px}
#desk-calendar-body {font-size:13px;color:var(--glass-muted)}
html .desk-meeting {display:block;border-left:2px solid var(--glass-accent);padding-left:12px;margin-top:12px}
#desk-new-work {margin-top:16px;font-size:13px;color:var(--glass-muted)}
#desk-new-work summary,.work-next summary,#tracker-all-tasks>summary {cursor:pointer;padding:12px 0;}
#desk-work-footer {padding-top:16px;margin-top:8px;color:var(--glass-muted);font-size:12px;display:flex;justify-content:space-between}
#desk-work-footer:after {content:'Your tasks & tickets'}
.work-task-row {display:flex;align-items:center;gap:8px;padding:15px 0;border-bottom:1px solid var(--glass-line)}
.work-task-copy {flex:1;min-width:0}
.work-task-name {display:block;border:0;background:none;color:var(--glass-ink);font:500 14px var(--glass-font);text-align:left;padding:0;cursor:pointer;overflow-wrap:anywhere}
.work-task-name:hover {color:var(--glass-accent)}
.work-task-meta {color:var(--glass-muted);font-size:12px;margin-top:5px;line-height:1.5}
.work-task-time {font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--glass-accent)}
.work-overdue {color:var(--palette-warn)}
.work-empty {font-size:13px;color:var(--glass-muted);padding:12px 0}
.work-next {margin-top:8px;color:var(--glass-muted);font-size:12px}
.work-next h3 {font-size:12px;font-weight:400;margin-top:18px}
.work-next .work-task-row {border-bottom:0}
.work-help-card {width:100%;display:block;text-align:left;background:var(--work-panel);border:1px solid var(--glass-line);border-radius:16px;padding:16px;color:var(--glass-ink);font:13px var(--glass-font);margin-bottom:12px;cursor:pointer}
.work-help-card p {margin:12px 0;line-height:1.5}
.work-help-card small {color:var(--glass-muted);font-size:12px}
html :is(.tracker-btn,.hud-project-btn,.board-tab,.modal-panel button) {border-radius:12px}
html #work-panel .tracker-btn {background:var(--work-selected);border-color:transparent;color:var(--glass-accent)}
html #work-panel button.hud-project-btn {border-radius:12px;background:var(--work-row);color:var(--glass-accent)}
#tracker-hero,#tracker-catchup-open {display:none!important}
#tracker-search-row {margin:0 0 20px}
#tracker-search {background:var(--work-panel);border:1px solid var(--glass-line);border-radius:12px;padding:10px 13px;font-size:14px}
#tracker-scroll {overflow:visible;max-height:none}
#tracker-all-tasks {margin-top:20px;border-top:1px solid var(--glass-line)}
#tracker-all-tasks>summary {font-size:14px;color:var(--glass-ink)}
html .tracker-folder {border:1px solid var(--glass-line);border-radius:20px;background:var(--work-row);margin:10px 0;overflow:hidden}
html .tracker-folder-header {padding:15px 16px;border:0;background:none}
html .tracker-folder.expanded {background:var(--work-panel)}
html .tracker-folder.expanded>.tracker-folder-header {background:var(--work-selected)}
html .tracker-folder-name {font-size:15px;font-weight:500}
html .tracker-categories {padding:8px 10px 12px;margin:0;border:0}
html .tracker-category {border:0;border-radius:12px;margin:4px 0;background:none}
html .tracker-category.expanded {background:var(--work-bg);box-shadow:inset 0 0 0 1px var(--glass-line)}
html .tracker-category-header {background:none;border:0;padding:11px 12px}
html .tracker-category-name {font-size:13px}
html .tracker-projects {padding:6px 12px 12px;margin:0;border:0}
html .tracker-project {border-radius:12px;background:var(--work-panel);border-color:var(--glass-line);margin:8px 0}
/* Quick timer rows stay dense and visually grouped, like the original tracker. */
html #work-panel :is(.tracker-now-row,.tracker-recent-row) {display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-height:42px;box-sizing:border-box;border:1px solid var(--glass-line);border-radius:12px;background:var(--work-panel);padding:6px 10px;margin:0;box-shadow:none}
html #work-panel .tracker-now-row {background:var(--work-selected);border-color:var(--glass-accent)}
html #work-panel .tracker-now-row.paused {background:var(--work-row);border-color:var(--glass-line)}
html #work-panel :is(.tracker-now-name,.tracker-recent-name) {flex:0 1 auto;max-width:65%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;line-height:1.4;cursor:pointer}
html #work-panel :is(.tracker-now-breadcrumb,.tracker-recent-breadcrumb) {flex:1 1 70px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}
html #work-panel .tracker-now-dot {display:block;font-size:10px;color:var(--glass-accent)}
html #work-panel :is(.tracker-now-elapsed,.tracker-recent-elapsed) {margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}
html #work-panel :is(.tracker-now-row,.tracker-recent-row)>button {flex:none;min-height:30px;padding:5px 10px;font-size:12px;box-shadow:none;border-radius:9px}
html #work-panel .tracker-now-row>.tracker-pill {width:30px;height:30px;padding:6px}
html #work-panel #tracker-recent-list,html #work-panel #tracker-now-list {gap:5px}
html .tracker-section-label {font-size:12px;letter-spacing:0;color:var(--glass-muted)}
#work-task-detail {z-index:24}
.work-task-detail {width:min(620px,94vw);max-height:88dvh;overflow:auto}
.work-detail-fields {display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.work-detail-fields label {display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--glass-muted)}
.work-detail-fields label[hidden] {display:none}
.work-detail-fields :is(input,select,textarea) {font:14px var(--glass-font);padding:8px;border:1px solid var(--glass-line);border-radius:10px;background:var(--work-bg);color:var(--glass-ink);min-width:0}
.work-detail-fields input[type=checkbox] {align-self:flex-start}
/* Stopping a timer keeps the active/passive slider as the main decision.
   Corrections are fast 15-minute nudges, backed by the existing safe HH:MM
   accounting fields rather than a second calculation path. */
#stop-classify :is(.stop-classify-adjust-row,#stop-classify-skip,.modal-slider-hint) {display:none!important}
/* THE COMMENT BOX IS BACK (2026-10-09). This compact pass hid it outright along
   with the HH:MM rows, so for a month there was nowhere to say why a job ran
   long — and the Billing review now reads exactly these comments beside their
   day. It leads the window: a comment is the one thing typed here. */
#stop-classify-extra-row {gap:5px;margin:10px 0 4px}
#stop-classify-extra-row label {font-size:13px;font-weight:600;color:var(--glass-ink)}
html #stop-classify .modal-extra-time {font:14px var(--glass-font);padding:9px 6px;border:1px solid var(--glass-line);border-radius:10px;background:var(--work-bg);color:var(--glass-ink)}
html #stop-classify .modal-extra-time:focus {border-color:var(--glass-accent)}
#stop-classify-note-row {gap:5px;margin:10px 0 4px}
#stop-classify-note-row label {font-size:13px;font-weight:600;color:var(--glass-ink)}
#stop-classify .modal-note-optional {font-size:12px;font-weight:400;color:var(--glass-muted)}
html #stop-classify .modal-note {font:14px var(--glass-font);padding:9px 10px;border:1px solid var(--glass-line);border-radius:10px;background:var(--work-bg);color:var(--glass-ink)}
html #stop-classify .modal-note:focus {border-color:var(--glass-accent)}
#stop-classify .modal-note-hint {font-size:12px;color:var(--glass-muted)}
#stop-classify .modal-subhead {margin:12px 0 0;font-size:13px;font-weight:600;color:var(--glass-ink)}
#stop-classify-quick-adjust {display:grid;grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;margin:12px 0 2px;padding:9px 0}
.stop-quick-adjust-label {display:block;color:var(--glass-ink);font-size:13px;font-weight:500}
#stop-classify-adjustment-summary {display:block;margin-top:2px;color:var(--glass-muted);font-size:12px;min-height:16px}
.stop-quick-adjust-buttons {display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}
html #stop-classify .stop-quick-adjust-buttons .tracker-btn {min-height:31px;padding:6px 9px;font-size:12px;background:var(--work-row);color:var(--glass-accent);border-color:transparent;box-shadow:none}
html #stop-classify .stop-quick-adjust-buttons .tracker-btn.holding {background:var(--work-selected);border-color:var(--glass-accent);transform:translateY(-1px)}
html #stop-classify .stop-quick-adjust-buttons #stop-classify-subtract {color:var(--glass-ink)}
html #stop-classify .stop-quick-adjust-buttons #stop-classify-adjustment-reset {color:var(--glass-muted);background:transparent}
/* Reset reserves its slot even before it is needed, so the two correction
   buttons never jump sideways or stack after the first click. */
#stop-classify-adjustment-reset.hidden {display:inline-flex;visibility:hidden;pointer-events:none}
#stop-classify .modal-slider { margin:13px 0 7px; }
#stop-classify .modal-split-labels { margin-bottom:14px; }
#stop-classify-confirm {background:var(--work-selected);color:var(--glass-accent)}
@media(max-width:500px){#stop-classify-quick-adjust{align-items:flex-start;flex-direction:column}.stop-quick-adjust-buttons{justify-content:flex-start}}
@media(max-width:680px){html #work-panel {max-height:94dvh;width:98vw}#work-header {padding:14px;gap:8px}#work-header h2 {font-size:15px}html #work-panel :is(#desk-panel,#tracker-panel){padding:18px}#desk-scroll{grid-template-columns:1fr!important;gap:12px}.work-detail-fields{grid-template-columns:1fr}#work-tabs kbd{display:none}}
@media(max-width:420px){.work-task-row{flex-wrap:wrap}.work-task-copy{flex-basis:100%}#work-header h2{gap:5px}html #work-tabs button{padding:8px}#desk-work-footer:after{display:none}}
html .tracker-folder {padding:0}
html .tracker-pill {width:32px;height:32px;padding:7px;border-radius:12px;border:0;background:var(--work-row);color:var(--glass-accent);box-shadow:none}
html .tracker-pill.danger {border:0;color:var(--glass-accent)}
html .tracker-pill.danger:hover {background:var(--work-selected)}
html :is(.tracker-now-elapsed,.tracker-recent-elapsed) {font-size:14px;font-weight:400}
html #desk-today .desk-section-head {color:var(--glass-ink)}
#desk-new-work {margin-top:6px}
#desk-work-column>.desk-section {margin-bottom:6px}

/* Reports reads the same opaque material; printed invoice rules are untouched. */
@media screen { body:has(#app) .card {background:var(--work-panel);backdrop-filter:none;-webkit-backdrop-filter:none;border-color:var(--glass-line)} body:has(#app) #view-tabs {background:var(--work-row)} }
.work-personal-note{padding:8px 0}

.work-notify {display:flex;align-items:center;gap:8px;font-size:12px;margin-top:12px;color:var(--glass-muted)}
.work-notify[hidden] {display:none}

/* Match the reference chrome and typography rather than inheriting legacy caps. */
#work-title .work-logo {width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:8px;background:var(--work-selected);color:var(--glass-accent)}
.work-logo svg {width:20px;height:20px}
#work-tab-tracker svg {width:18px;height:18px;flex:none}
html #work-panel .desk-section-head {font:500 14px/1.5 var(--glass-font);letter-spacing:0;text-transform:none;border:0;padding:0;margin-bottom:10px}
html #work-panel .desk-section-count {font:400 12px/1.5 var(--glass-font);color:var(--glass-muted)}
html #work-panel #desk-header {position:relative;padding-right:52px;min-height:57px;gap:5px;margin-bottom:26px}
html #work-panel #desk-header h2 {font-size:26px;line-height:1.25;letter-spacing:-.7px}
#desk-avatar {position:absolute;right:0;top:4px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--work-row);color:var(--glass-ink);font-size:14px}
#desk-plate>.work-task-row:first-child {border-top:1px solid var(--glass-line)}
html .work-task-row :is(.tracker-btn,.hud-project-btn) {box-shadow:none;border-color:transparent;font-weight:400}
html #work-panel .work-task-row .tracker-btn {min-height:34px;padding:6px 12px}
html #work-panel .work-help-card {box-shadow:none}
html #work-panel .tracker-folder {border-radius:20px}
html #work-panel .tracker-category {border-radius:12px}
#work-panel :is(button,input,select):focus-visible {outline:2px solid var(--glass-accent);outline-offset:3px}
/* Native dialogs use the same opaque, paired foreground/background roles. */
html #disconnect-confirm {margin:auto;box-sizing:border-box;width:min(440px,calc(100vw - 32px));max-height:90dvh;overflow:auto;padding:28px;border:1px solid var(--palette-line);border-radius:24px;background:var(--work-panel);color:var(--palette-ink);font:14px/1.5 var(--glass-font);box-shadow:0 18px 60px #0003;backdrop-filter:none}
#disconnect-confirm::backdrop {background:var(--glass-scrim)}
#disconnect-confirm h2 {margin:0 0 10px;font-size:21px;font-weight:500;line-height:1.3;color:var(--palette-ink)}
#disconnect-confirm p {color:var(--palette-muted);margin:0}
#disconnect-confirm>div {display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:24px}
html #disconnect-confirm button {font:500 14px/1.4 var(--glass-font);padding:10px 14px;border-radius:12px;border:1px solid transparent;box-shadow:none;background:var(--work-row);color:var(--palette-ink);cursor:pointer}
html #disconnect-confirm #disconnect-yes {background:var(--work-selected);color:var(--palette-accent)}
#disconnect-confirm button:focus-visible {outline:2px solid var(--palette-accent);outline-offset:3px}

/* Timers is its own compact workspace; the Desk alone owns the daily columns. */
html #work-tabs button[hidden] {display:none}
html #work-tabs #work-tab-desk:not([hidden]) {display:inline-flex}
#work-header #work-location {color:var(--glass-ink)}
#work-menu[data-view="tracker"] #work-panel {width:min(580px,96vw);min-height:0;max-height:88dvh}
#work-menu[data-view="tracker"] #work-content {overflow:hidden}
html #work-menu[data-view="tracker"] #tracker-panel {display:flex;flex-direction:column;max-height:calc(88dvh - 66px);padding:16px 18px;overflow:hidden;box-sizing:border-box}
#work-menu[data-view="tracker"] #tracker-search-row {flex:none;margin:0 0 14px}
#work-menu[data-view="tracker"] #tracker-scroll {overflow:auto;min-height:0;flex:1 1 auto;padding-right:4px;scrollbar-gutter:stable}
#work-menu[data-view="tracker"] #tracker-footer {flex:none;padding:10px 0 0;border-top:1px solid var(--glass-line);margin-top:8px;justify-content:flex-start}
#work-menu[data-view="tracker"] #tracker-reports {flex:0 0 auto;width:auto;font-size:12px;padding:6px 12px}
#tracker-quick-empty {font-size:14px;line-height:1.5;color:var(--glass-muted);margin:6px 0 20px}
html #tracker-now .tracker-section-label,html #tracker-recent .tracker-section-label {text-transform:none;font-weight:500;font-size:13px;color:var(--glass-muted);letter-spacing:0}
#desk-side-column {align-self:start;position:sticky;top:0}
@media(max-width:680px){#desk-side-column{position:static}html #work-menu[data-view="tracker"] #tracker-panel{padding:18px;max-height:calc(88dvh - 80px)}}
#tracker-quick-empty.hidden {display:none}

#work-menu[data-view="tracker"] #work-header {padding:12px 18px}
#work-menu[data-view="tracker"] #tracker-all-tasks {margin-top:12px}
#work-menu[data-view="tracker"] #tracker-search {padding:8px 11px;font-size:13px}
#work-menu[data-view="tracker"] #tracker-recent .tracker-section-label {color:var(--glass-ink);font-weight:600;margin-bottom:8px}
@media(max-width:480px){html #work-panel :is(.tracker-now-breadcrumb,.tracker-recent-breadcrumb){display:none}html #work-panel :is(.tracker-now-name,.tracker-recent-name){flex:1;max-width:none}}

/* All tasks belongs to the compact Timers workspace. The tracker tree predates
   that workspace and otherwise brings its old, much larger type and deeply
   boxed hierarchy with it. Keep the information, but give every level one
   measured step of emphasis: folder > category > project > task. */
#work-menu[data-view="tracker"] #tracker-all-tasks {border-top:0;margin-top:10px}
#work-menu[data-view="tracker"] #tracker-all-tasks>summary {padding:10px 2px 9px;border-bottom:0;font-size:12px;font-weight:500;color:var(--glass-muted);list-style-position:outside}
#work-menu[data-view="tracker"] #tracker-all-tasks[open]>summary {color:var(--glass-ink)}
#work-menu[data-view="tracker"] #tracker-folders {gap:6px;padding-top:8px}

#work-menu[data-view="tracker"] .tracker-folder {margin:0;border-radius:14px;border:1px solid var(--glass-line);background:var(--work-panel);overflow:hidden}
#work-menu[data-view="tracker"] .tracker-folder.expanded {background:var(--work-panel)}
#work-menu[data-view="tracker"] .tracker-folder-header {min-height:46px;box-sizing:border-box;padding:10px 13px;gap:8px;background:var(--work-row);border:0;border-radius:0}
#work-menu[data-view="tracker"] .tracker-folder.expanded>.tracker-folder-header {background:var(--work-selected);border-bottom:1px solid var(--glass-line)}
#work-menu[data-view="tracker"] .tracker-folder-name {font-size:14px;font-weight:600;line-height:1.3;letter-spacing:-.1px}
#work-menu[data-view="tracker"] .tracker-total {font-size:12px;color:var(--glass-muted);margin:0;font-variant-numeric:tabular-nums}
#work-menu[data-view="tracker"] .tracker-caret {width:12px;flex:0 0 12px;font-size:10px;text-align:center;color:var(--glass-muted)}

#work-menu[data-view="tracker"] .tracker-categories {gap:0;margin:0;padding:5px 10px 9px}
#work-menu[data-view="tracker"] .tracker-category {margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
#work-menu[data-view="tracker"] .tracker-category+.tracker-category {border-top:1px solid var(--glass-line)}
#work-menu[data-view="tracker"] .tracker-category.expanded {background:transparent;box-shadow:none}
#work-menu[data-view="tracker"] .tracker-category-header {min-height:40px;box-sizing:border-box;padding:8px 4px;gap:7px;background:transparent;border:0;border-radius:0}
#work-menu[data-view="tracker"] .tracker-category-header:hover {background:transparent}
#work-menu[data-view="tracker"] .tracker-category-name {font-size:13px;font-weight:500;line-height:1.3}
#work-menu[data-view="tracker"] .tracker-category .tracker-rename-btn,
#work-menu[data-view="tracker"] .tracker-project .tracker-rename-btn {width:24px;height:24px;padding:5px;flex:0 0 24px}
#work-menu[data-view="tracker"] .tracker-category .tracker-delete-btn {width:24px;height:24px}

#work-menu[data-view="tracker"] .tracker-projects {gap:6px;margin:0;padding:2px 0 8px 19px}
#work-menu[data-view="tracker"] .tracker-project {margin:0;padding:0;border:1px solid var(--glass-line);border-radius:12px;background:var(--work-panel);overflow:hidden}
#work-menu[data-view="tracker"] .tracker-project-top {display:grid;grid-template-columns:12px minmax(0,1fr) auto auto auto 58px;grid-template-rows:auto auto;align-items:center;min-height:58px;box-sizing:border-box;column-gap:6px;row-gap:3px;padding:8px 9px}
#work-menu[data-view="tracker"] .tracker-project:has(.tracker-details)>.tracker-project-top {background:var(--work-row);border-bottom:1px solid var(--glass-line)}
#work-menu[data-view="tracker"] .tracker-project-top>.tracker-caret {grid-column:1;grid-row:1}
#work-menu[data-view="tracker"] .tracker-project-name {grid-column:2/6;grid-row:1;font-size:14px;font-weight:500;line-height:1.3;letter-spacing:-.1px}
#work-menu[data-view="tracker"] .tracker-project-top>.tracker-rename-btn {grid-column:6;grid-row:1;justify-self:end}
#work-menu[data-view="tracker"] .tracker-invoice-tag {grid-column:2/4;grid-row:2;justify-self:start;max-width:156px;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.4;border-radius:6px;padding:2px 6px}
#work-menu[data-view="tracker"] .tracker-who {grid-column:4;grid-row:2;display:inline-flex;width:auto;height:auto;padding:2px 6px;border:0;border-radius:6px;background:var(--work-row);color:var(--glass-muted);font-size:10px;line-height:1.4;white-space:nowrap;transform:none}
#work-menu[data-view="tracker"] .tracker-who.open {width:auto;height:auto;border:0;border-radius:6px;padding:2px 6px;font-size:10px}
#work-menu[data-view="tracker"] .tracker-pace-flag {grid-column:5;grid-row:2;padding:2px 6px;border-radius:6px;background:color-mix(in srgb,var(--glass-danger) 10%,transparent);font-size:10px;line-height:1.4;white-space:nowrap}
#work-menu[data-view="tracker"] .tracker-badge {grid-column:4/6;grid-row:2;font-size:10px}
#work-menu[data-view="tracker"] .tracker-time {grid-column:6;grid-row:2;min-width:58px;gap:0}
#work-menu[data-view="tracker"] .tracker-sitting {font-size:14px;line-height:1.1}
#work-menu[data-view="tracker"] .tracker-total-line {font-size:10px;line-height:1.25}

#work-menu[data-view="tracker"] .tracker-details {gap:8px;margin:0;padding:11px 12px 10px;border-top:0;font-size:12px;background:var(--work-panel)}
#work-menu[data-view="tracker"] .tracker-pace,
#work-menu[data-view="tracker"] .tracker-salary {gap:2px;margin:0;padding:6px 9px;border-left:2px solid var(--glass-line);font-size:12px;line-height:1.4;background:var(--work-row);border-radius:0 8px 8px 0}
#work-menu[data-view="tracker"] .tracker-pace.under {border-left-color:var(--glass-danger)}
#work-menu[data-view="tracker"] .tracker-pace-note,
#work-menu[data-view="tracker"] .tracker-salary-head,
#work-menu[data-view="tracker"] .tracker-salary-note {font-size:11px}
#work-menu[data-view="tracker"] .tracker-lines {margin:0}
#work-menu[data-view="tracker"] .tracker-manual-label {margin:0 0 3px;font-size:11px;font-weight:600;color:var(--glass-muted)}

#work-menu[data-view="tracker"] .tracker-line-row {min-height:36px;box-sizing:border-box;gap:6px;padding:5px 2px;border:0;border-radius:0;font-size:12px;color:var(--glass-ink)}
#work-menu[data-view="tracker"] .tracker-line-row+.tracker-task-assignment {margin-top:-3px}
#work-menu[data-view="tracker"] .tracker-line-name {font-size:12px;font-weight:500;line-height:1.3}
#work-menu[data-view="tracker"] .tracker-line-name:hover {color:var(--glass-accent)}
#work-menu[data-view="tracker"] #tracker .desk-check {width:16px;height:16px;flex:0 0 16px}
#work-menu[data-view="tracker"] .tracker-task-due {font-size:10px;line-height:1.4;padding:2px 5px;border:0;border-radius:6px;background:var(--work-row)}
#work-menu[data-view="tracker"] .tracker-task-due.late {border:0;background:color-mix(in srgb,var(--glass-danger) 10%,transparent)}
#work-menu[data-view="tracker"] .tracker-task-who {font-size:10px;letter-spacing:.5px;border-radius:6px;padding:2px 5px}
#work-menu[data-view="tracker"] .tracker-task-time {min-width:58px}
#work-menu[data-view="tracker"] .tracker-task-today {font-size:12px;line-height:1.2}
#work-menu[data-view="tracker"] .tracker-task-all {font-size:9px;line-height:1.2}
#work-menu[data-view="tracker"] .tracker-line-control {min-width:52px;gap:3px}
#work-menu[data-view="tracker"] .tracker-line-row .tracker-btn {min-height:28px;padding:4px 9px;border-radius:9px;font-size:11px}
#work-menu[data-view="tracker"] .tracker-line-row .tracker-delete-btn {width:22px;height:28px}
#work-menu[data-view="tracker"] .tracker-task-assignment {display:block;width:fit-content;max-width:calc(100% - 26px);margin:0 0 5px 24px;padding:0;border:0;background:transparent;color:var(--glass-muted);font-size:10px;line-height:1.35;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:none}
#work-menu[data-view="tracker"] .tracker-task-assignment:hover {background:transparent;color:var(--glass-accent)}
#work-menu[data-view="tracker"] .tracker-task-assignment.unassigned {color:var(--glass-accent)}
#work-menu[data-view="tracker"] .tracker-line-details {margin:2px 0 8px 22px;padding:8px 0 3px 10px;border-left:1px solid var(--glass-line)}
#work-menu[data-view="tracker"] .tracker-add-row {margin:6px 0 2px}
#work-menu[data-view="tracker"] .tracker-add-row .tracker-btn,
#work-menu[data-view="tracker"] .tracker-add-line-btn {min-height:28px;padding:4px 9px;border-radius:9px;font-size:11px;background:var(--work-row);color:var(--glass-muted)}
#work-menu[data-view="tracker"] .tracker-done-toggle {font-size:11px;padding:6px 2px}
#work-menu[data-view="tracker"] .tracker-controls {gap:5px;margin-top:2px;padding-top:8px;border-top:1px solid var(--glass-line)}
#work-menu[data-view="tracker"] .tracker-controls .tracker-btn {min-height:28px;padding:4px 9px;border-radius:9px;font-size:11px}

@media(max-width:480px){
  #work-menu[data-view="tracker"] .tracker-projects{padding-left:8px}
  #work-menu[data-view="tracker"] .tracker-invoice-tag{max-width:94px}
  #work-menu[data-view="tracker"] .tracker-task-all{display:none}
  #work-menu[data-view="tracker"] .tracker-task-time{min-width:34px}
  #work-menu[data-view="tracker"] .tracker-line-control{min-width:46px}
}

/* The project editor can be taller than a laptop's browser viewport. Constrain
   the card to the available page and scroll inside it, keeping both its top
   and bottom reachable instead of centring an over-tall card off-screen. */
#project-billing {box-sizing:border-box;padding:16px}
html #project-billing>.modal-panel {box-sizing:border-box;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;padding:22px 24px}
#project-billing .modal-actions {position:sticky;bottom:-22px;margin:12px -24px -22px;padding:12px 24px 22px;background:var(--work-panel);border-top:1px solid var(--glass-line);z-index:1}
@media(max-height:760px){
  html #project-billing>.modal-panel{padding-top:16px}
  #project-billing .modal-field{margin-bottom:8px}
  #project-billing .modal-actions{bottom:-22px}
}
