.screen-layout{background:var(--bg);border-left:1px solid var(--line);border-right:1px solid var(--line);grid-template-columns:240px 1fr;max-width:1440px;min-height:100vh;margin:0 auto;display:grid}.screen-main{min-width:0;padding:28px 36px 64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:6px;display:flex}.entry-btn{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.05em;color:var(--ink-2);cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;align-items:center;gap:6px;margin-top:4px;padding:7px 16px;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.entry-btn:hover{background:var(--line-2);border-color:var(--ink-4);color:var(--ink)}.entry-btn-group{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;margin-top:4px;display:flex}.page-title{letter-spacing:-.4px;color:var(--ink);margin:0;font-size:24px;font-weight:600}.page-sub{color:var(--ink-3);margin:4px 0 0;font-size:14px}.page-date{color:var(--ink-4);letter-spacing:.04em;margin:6px 0 0;font-size:12px}.sticky-head{z-index:20;background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:24px;position:-webkit-sticky;position:sticky;top:0}.summary-row{align-items:stretch;display:flex}.summary-stat{border-right:1px solid var(--line-2);flex-direction:column;flex:1;gap:4px;padding:16px 22px;display:flex}.summary-stat:last-child{border-right:0}.stat-num{letter-spacing:-.6px;color:var(--ink);font-size:26px;font-weight:600;line-height:1}.stat-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-4);font-size:11px;font-weight:600}.summary-stat.red .stat-num,.summary-stat.red .stat-label{color:var(--red)}.summary-stat.amber .stat-num,.summary-stat.amber .stat-label{color:var(--amber)}.filter-row{border-top:1px solid var(--line-2);align-items:center;padding:10px 0;display:flex}.filter-tabs{background:var(--line-2);border-radius:8px;gap:2px;padding:3px;display:flex}.filter-tab{font:inherit;cursor:pointer;color:var(--ink-3);background:0 0;border:0;border-radius:6px;align-items:center;gap:7px;padding:6px 14px;font-size:13px;font-weight:500;transition:background .1s,color .1s;display:inline-flex}.filter-tab.active{color:var(--ink);background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.06)}.tab-count{font-family:var(--font-mono);color:var(--ink-4);font-size:11px;font-weight:500}.filter-tab.active .tab-count{color:var(--ink-3)}.table-wrap{margin-top:18px}.task-table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}.task-table thead th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-4);border-bottom:1px solid var(--line);background:var(--bg);padding:10px 12px;font-size:11px;font-weight:600}.task-table tbody td{border-bottom:1px solid var(--line-2);vertical-align:middle;padding:13px 12px}.task-table tbody tr:hover td{background:#fafbfc}.section-row td{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);border-top:1px solid var(--line-2);-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:11px;font-weight:600;background:#fafbfc!important;padding:8px 12px!important}.section-row.today td{color:var(--amber)}.section-row.overdue td{color:var(--red)}.section-row.upcoming td{color:var(--blue)}.section-row-collapsible{cursor:pointer}.section-row-collapsible:hover td{background:#f4f5f7!important}.section-chevron{vertical-align:middle;flex-shrink:0;margin-bottom:1px;margin-right:6px;transition:transform .18s;display:inline-block;transform:rotate(-90deg)}.section-chevron.open{transform:rotate(0)}.section-pill{font-family:var(--font-mono);border:1px solid var(--line);color:var(--ink-3);letter-spacing:.02em;background:#fff;border-radius:3px;margin-left:8px;padding:1px 6px;font-size:10px;font-weight:500;display:inline-block}.section-row.today .section-pill{color:var(--amber);background:var(--amber-soft);border-color:#fed7aa}.section-row.overdue .section-pill{color:var(--red);border-color:var(--red-line);background:var(--red-soft)}.section-row.upcoming .section-pill{color:var(--blue);border-color:var(--blue-line);background:var(--blue-soft)}.section-suffix{color:var(--ink-4);text-transform:none;letter-spacing:0;margin-left:6px;font-weight:400}.task-row.today td:first-child{border-left:2px solid var(--amber);padding-left:14px}.task-row.overdue td:first-child{border-left:2px solid var(--red);padding-left:14px}.task-row.upcoming td:first-child{border-left:2px solid var(--blue);padding-left:14px}.task-row._completing td{background:#f0fdf4;transition:background .3s}.task-row._completing .col-task{color:var(--ink-4)}.task-row._completing .task-check{accent-color:#16a34a}.account-name{color:var(--ink);letter-spacing:-.1px;white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.account-name-link{cursor:pointer}.account-name-link:hover{color:var(--teal);text-decoration:underline}.type-chip{font-family:var(--font-mono);letter-spacing:.08em;vertical-align:middle;border:1px solid var(--line);color:var(--ink-4);text-transform:uppercase;background:#fff;border-radius:3px;margin-left:6px;padding:1px 5px;font-size:9px;font-weight:500;display:inline-block}.type-chip.client{border-color:var(--teal-line);color:var(--teal);background:var(--teal-bg)}.stars-row{align-items:center;gap:4px;margin-top:3px;display:flex}.star-on{color:var(--ink-2)}.star-off{color:var(--ink-5)}.star-num{font-family:var(--font-mono);color:var(--ink-4);font-size:10px}.col-task{color:var(--ink-2);word-break:break-word}.task-text{white-space:pre-wrap;display:block}.task-text-clamped{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.task-show-more{color:var(--ink-4);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-top:3px;padding:0;font-family:inherit;font-size:11px;text-decoration:underline;display:inline-block}.task-show-more:hover{color:var(--ink-2)}.prio{width:26px;height:26px;font-family:var(--font-mono);border:1px solid transparent;border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.prio.p5{background:var(--red);color:#fff}.prio.p4{color:#9a3412;background:#fde2c4;border-color:#fbd49b}.prio.p3{color:var(--amber);background:#fff7ed;border-color:#fed7aa}.prio.p2{background:var(--line-2);color:var(--ink-2);border-color:var(--line)}.prio.p1{color:var(--ink-4);border-color:var(--line);background:#fff}.medium-tag{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:4px;padding:3px 7px;font-size:11px}.mono{font-family:var(--font-mono)}.col-due{color:var(--ink-2);white-space:nowrap;font-size:13px}.days-pill{font-family:var(--font-mono);background:var(--line-2);color:var(--ink-2);white-space:nowrap;border-radius:4px;align-items:center;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex}.days-pill.overdue{background:var(--red-soft);color:var(--red);font-weight:600}.days-pill.today{background:var(--amber-soft);color:var(--amber);font-weight:600}.days-pill.upcoming{background:var(--blue-soft);color:var(--blue);font-weight:600}.task-expand-btn{display:none}.col-actions{padding-right:10px!important}.task-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.task-check{cursor:pointer;width:15px;height:15px;accent-color:var(--ink-3);border-radius:3px;flex-shrink:0}.task-menu-btn{width:26px;height:26px;color:var(--ink-4);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;line-height:1;transition:opacity .1s,background .1s;display:inline-flex}.task-row:hover .task-menu-btn{opacity:1}.task-menu-btn:hover{background:var(--line-2);color:var(--ink-2)}@media (max-width:900px){.task-menu-btn{opacity:.4}}.task-menu-dropdown{z-index:200;border:1px solid var(--line);background:#fff;border-radius:8px;min-width:140px;position:fixed;overflow:hidden;box-shadow:0 4px 16px rgba(0,0,0,.12)}.task-menu-item{text-align:left;width:100%;font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:none;padding:9px 14px;font-size:13px;transition:background .1s;display:block}.task-menu-item:hover{background:var(--line-2)}.task-menu-item.danger{color:var(--red)}.task-menu-item.danger:hover{background:var(--red-soft)}.delete-confirm-row td{background:var(--red-soft);border-bottom:1px solid var(--red-line)}.col-delete-confirm{flex-wrap:wrap;align-items:center;gap:12px;display:flex;padding:13px 16px!important}.delete-confirm-msg{color:var(--ink-2);flex:1;font-size:13px}.delete-confirm-msg strong{color:var(--ink)}.btn-confirm-delete{border:1px solid var(--red);background:var(--red);color:#fff;font:inherit;cursor:pointer;border-radius:6px;padding:5px 14px;font-size:12px;font-weight:600;transition:opacity .1s}.btn-confirm-delete:hover{opacity:.85}.btn-cancel-delete{border:1px solid var(--line);color:var(--ink-3);font:inherit;cursor:pointer;background:#fff;border-radius:6px;padding:5px 14px;font-size:12px;transition:background .1s}.btn-cancel-delete:hover{background:var(--line-2)}.table-foot{color:var(--ink-4);justify-content:space-between;align-items:center;margin-top:14px;font-size:12px;display:flex}.loading-state,.empty-state{text-align:center;color:var(--ink-4);padding:48px 12px;font-size:14px}.error-state{color:var(--red);padding:48px 0}.error-state code{font-family:var(--font-mono);background:var(--line-2);border-radius:4px;padding:2px 6px}@media (max-width:900px){.screen-layout{grid-template-columns:1fr}.screen-main{padding:20px 18px 48px}.summary-row{flex-direction:column}.summary-stat{border-right:0;border-bottom:1px solid var(--line-2)}.sticky-head{top:var(--topbar-h)}}@media (max-width:640px){.screen-main{padding:16px 14px 88px}.page-sub,.page-date,.entry-btn-group,.table-foot{display:none}.summary-row{flex-direction:row}.summary-stat{border-right:1px solid var(--line-2);border-bottom:0;padding:12px 8px}.summary-stat:last-child{border-right:0}.stat-num{font-size:20px}.filter-tabs{width:100%}.filter-tab{flex:1;justify-content:center;padding:7px 8px;font-size:12px}.tab-count{display:none}.table-wrap{margin-top:12px}.task-table,.task-table tbody{display:block}.task-table thead{display:none}.task-table tbody td{border:0;padding:0;display:block}.task-table tbody tr:hover td{background:0 0}.section-row{display:block}.section-row td{border-top:0;border-bottom:0;padding:14px 2px 6px!important}.task-row{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:1fr auto;grid-template-areas:"account actions""task task""days days";align-items:center;gap:8px 10px;margin-bottom:8px;padding:12px 14px;display:grid}.task-row.expanded{grid-template-areas:"account actions""task task""days days""prio prio""due due""medium medium"}.task-row.today{border-left:3px solid var(--amber)}.task-row.overdue{border-left:3px solid var(--red)}.task-row.upcoming{border-left:3px solid var(--blue)}.task-row td:first-child{border-left:0;padding-left:0}.task-row._completing{background:#f0fdf4}.col-account{grid-area:account}.col-task{grid-area:task}.col-days{grid-area:days}.col-actions{grid-area:actions;justify-self:end;padding-right:0!important}.col-priority{grid-area:prio}.col-due{grid-area:due}.col-medium{grid-area:medium}.stars-row,.task-table tbody td.col-priority,.task-table tbody td.col-medium,.task-table tbody td.col-due{display:none}.account-name{white-space:normal;font-size:14px}.col-task{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:13px}.col-days{justify-content:space-between;align-items:center;display:flex}.task-expand-btn{width:30px;height:30px;color:var(--ink-4);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.task-expand-chevron{transition:transform .18s}.task-row.expanded .task-expand-chevron{transform:rotate(180deg)}.task-table tbody tr.task-row.expanded td.col-priority,.task-table tbody tr.task-row.expanded td.col-medium,.task-table tbody tr.task-row.expanded td.col-due{color:var(--ink-2);align-items:center;gap:8px;font-size:12px;display:flex}.task-row.expanded td.col-priority{border-top:1px solid var(--line-2);margin-top:2px;padding-top:10px}.col-priority:before,.col-due:before,.col-medium:before{content:attr(data-label);text-transform:uppercase;letter-spacing:.06em;width:64px;color:var(--ink-4);flex-shrink:0;font-size:10px;font-weight:600}.col-priority .prio{width:23px;height:23px;font-size:11px}.task-row.delete-confirm-row{border-left:0;border-radius:10px;padding:0;display:block}.col-delete-confirm{padding:12px 14px!important}.task-menu-btn{opacity:1;width:34px;height:34px;font-size:18px}.task-check{width:18px;height:18px}.table-foot{flex-direction:column;align-items:flex-start;gap:4px}}
