:root{--bg:#f7f8fa;--surface:#fff;--surface-strong:#eef2f4;--field:#fbfcfd;--border:#d9e0e6;--text:#4f5e68;--text-muted:#73818a;--text-strong:#172026;--accent:#176b66;--accent-soft:#176b6629;--success:#16824a;--success-text:#0f693b;--success-bg:#e6f5ed;--warning:#c78016;--warning-text:#80500c;--warning-bg:#fff3dd;--danger:#b42318;--danger-bg:#fff0ee;--shadow:0 16px 40px #141f2614, 0 2px 8px #141f260d;--sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0;overflow-x:hidden}#root{min-height:100svh;overflow-x:hidden}h1,h2,h3,p{overflow-wrap:anywhere}a{color:inherit}.login-shell,.app-shell{min-height:100svh}.login-shell{place-items:center;padding:16px;display:grid}.login-panel{border:1px solid var(--border);background:var(--surface);width:min(100%,430px);box-shadow:var(--shadow);border-radius:8px;padding:22px}.brand-mark{width:40px;height:40px;margin-bottom:12px;display:block}.brand-mark.small{width:32px;height:32px;margin:0}.eyebrow{color:var(--accent);text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.login-panel h1,.topbar h1,.pane-header h2,.empty-workspace h2{margin:0}.login-panel h1{font-size:34px;line-height:1.05}.login-form,.stacked-form,.task-form{gap:9px;display:grid}.login-form{margin-top:18px}.stacked-form{border:1px solid var(--border);background:var(--surface-strong);border-radius:8px;padding:12px}.task-form{border-bottom:1px solid var(--border);padding:10px 0 14px}.form-grid{grid-template-columns:minmax(0,1fr) 150px;gap:9px;display:grid}label{color:var(--text-strong);gap:5px;font-size:13px;font-weight:700;display:grid}label span{color:inherit}input,textarea,select{box-sizing:border-box;border:1px solid var(--border);width:100%;min-width:0;color:var(--text-strong);background:var(--field);font:inherit;border-radius:6px;outline:none;padding:8px 10px;font-size:15px}textarea{resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}button{font:inherit}.primary-button,.secondary-button,.ghost-button,.icon-button{cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;min-height:34px;font-size:14px;font-weight:800;display:inline-flex}.primary-button{color:#fff;background:var(--accent)}.secondary-button{color:var(--text-strong);background:var(--surface-strong);border:1px solid var(--border)}.ghost-button{color:var(--text-strong);border:1px solid var(--border);background:0 0;padding:0 10px}.icon-button{width:34px;height:34px;color:var(--text-strong);background:var(--surface-strong);border:1px solid var(--border);font-size:20px;line-height:1}.compact{white-space:nowrap;min-height:30px;padding:0 10px}.full-width{width:100%;margin-top:10px}button:hover:not(:disabled){filter:brightness(.98)}button:disabled{cursor:not-allowed;opacity:.62}.app-shell{background:var(--bg);overflow-x:hidden}.topbar{z-index:5;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:space-between;align-items:center;gap:12px;padding:10px 18px;display:flex;position:sticky;top:0}.identity,.user-pill,.pane-header,.task-main,.task-tools{align-items:center;display:flex}.identity{gap:9px}.identity>div{min-width:0}.topbar h1{font-size:20px;line-height:1.1}.user-pill{color:var(--text-strong);gap:8px;font-weight:800}.overview-strip{border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.overview-strip article{border-right:1px solid var(--border);padding:10px 18px}.overview-strip article:last-child{border-right:0}.overview-strip span{color:var(--text-strong);font-size:22px;font-weight:850;line-height:1;display:block}.overview-strip p,.muted,.empty-state,.empty-workspace p{color:var(--text-muted)}.overview-strip p{margin:3px 0 0;font-size:13px;font-weight:700}.workspace-grid{grid-template-columns:390px minmax(0,1fr);min-height:calc(100svh - 101px);display:grid}.projects-pane,.tasks-pane{padding:14px}.projects-pane{border-right:1px solid var(--border);background:var(--surface)}.tasks-pane{background:var(--bg)}.pane-header{justify-content:space-between;gap:10px;margin-bottom:10px}.pane-header h2{color:var(--text-strong);font-size:19px;line-height:1.15}.task-heading{align-items:flex-start}.task-heading .muted{max-width:760px;margin-top:3px}.project-list,.task-list{gap:8px;display:grid}.project-list{margin-top:10px}.project-card{border:1px solid var(--border);width:100%;min-width:0;color:inherit;background:var(--field);text-align:left;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 8px;padding:10px;display:grid}.project-open-area{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:7px;padding:0;display:grid}.delete-project-button{border:1px solid var(--danger);min-width:56px;min-height:28px;color:var(--danger);cursor:pointer;background:0 0;border-radius:6px;place-self:start end;padding:0 9px;font-size:12px;font-weight:850}.project-card.active{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}.project-card-title,.task-title{color:var(--text-strong);font-weight:850}.project-card-description,.task-description{color:var(--text-muted);font-size:14px;line-height:1.35}.metric-row,.done-row,.task-meta{flex-wrap:wrap;gap:6px;display:flex}.metric-row span,.done-row span,.task-meta span,.status-pill{border-radius:999px;align-items:center;min-height:22px;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.metric-row span{color:var(--text-strong);background:var(--surface-strong)}.done-row span{color:var(--success-text);background:var(--success-bg)}.summary-band{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:repeat(6,minmax(92px,1fr));display:grid;overflow:hidden}.summary-band span{color:var(--text-muted);border-right:1px solid var(--border);gap:2px;padding:9px 12px;font-size:12px;font-weight:800;display:grid}.summary-band span:last-child{border-right:0}.summary-band strong{color:var(--text-strong);font-size:20px}.task-tools{justify-content:space-between;gap:10px;padding:10px 0}.segmented-control{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:repeat(3,minmax(72px,1fr));padding:3px;display:inline-grid}.segmented-control button{min-height:30px;color:var(--text-muted);cursor:pointer;text-transform:capitalize;background:0 0;border:0;border-radius:6px;font-size:13px;font-weight:850}.segmented-control .selected{color:#fff;background:var(--accent)}.task-card{border:1px solid var(--border);background:var(--surface);border-left-width:5px;border-radius:8px;gap:10px;padding:11px;display:grid}.task-card.pending{border-left-color:var(--warning)}.task-card.done{border-left-color:var(--success)}.edit-task-form{gap:9px;display:grid}.edit-detail-grid{grid-template-columns:150px minmax(0,1fr);gap:9px;display:grid}.task-main{justify-content:space-between;align-items:flex-start;gap:9px}.task-title,.task-description{margin:0}.task-description{margin-top:2px}.task-meta span{color:var(--text-muted);background:var(--surface-strong)}.task-actions{flex-wrap:wrap;gap:8px;display:flex}.status-pill.pending{color:var(--warning-text);background:var(--warning-bg)}.status-pill.done{color:var(--success-text);background:var(--success-bg)}.notice,.form-error{border-radius:6px;margin:0;font-size:14px;font-weight:700}.notice{margin-bottom:10px;padding:8px 10px}.form-error{color:var(--danger)}.error{color:var(--danger);background:var(--danger-bg)}.empty-state,.empty-workspace{border:1px dashed var(--border);background:var(--surface);text-align:center;border-radius:8px;margin:12px 0 0;padding:12px}.empty-workspace{align-content:center;place-items:center;min-height:280px;display:grid}.empty-workspace .brand-mark{margin-inline:auto}.mobile-back-button{display:none}@media (width<=980px){.workspace-grid{grid-template-columns:1fr;min-height:auto}.project-list-open .tasks-pane,.project-detail-open .projects-pane{display:none}.projects-pane{border-right:0;border-bottom:1px solid var(--border)}.project-detail-open .tasks-pane{min-height:calc(100svh - 96px)}.mobile-back-button{width:100%;margin-bottom:10px;display:inline-flex}.summary-band{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-band span{border-bottom:1px solid var(--border)}}@media (width<=760px){.topbar{padding:8px 10px}.brand-mark.small{width:28px;height:28px}.topbar h1{font-size:18px}.eyebrow{margin-bottom:3px;font-size:10px}.overview-strip article{padding:8px 10px}.overview-strip span{font-size:19px}.overview-strip p{font-size:11px;line-height:1.2}.projects-pane,.tasks-pane{padding:10px}.project-list{-webkit-overflow-scrolling:touch;gap:8px;padding:0;display:grid;overflow:hidden visible}.project-card{grid-template-columns:minmax(0,1fr) 62px;width:100%}.project-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.summary-band{grid-template-columns:repeat(3,minmax(0,1fr))}.task-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.task-actions .compact{white-space:normal;width:100%;min-width:0;line-height:1.1}}@media (width<=640px){.login-panel{padding:18px}.task-main,.task-tools{flex-direction:column;align-items:stretch}.topbar{gap:8px;padding:8px 10px}.identity,.user-pill{min-width:0}.user-pill{flex-shrink:0}.ghost-button{min-height:32px;padding-inline:9px}.delete-project-button{width:100%;min-width:0;padding:0 6px}.overview-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-strip article{border-right:1px solid var(--border);border-bottom:0;padding:7px 8px}.overview-strip article:last-child{border-right:0}.projects-pane,.tasks-pane{padding:10px}.form-grid,.edit-detail-grid{grid-template-columns:1fr}.summary-band span{border-right:1px solid var(--border);min-width:0;padding:8px 7px}.segmented-control{width:100%}.task-card{padding:10px}.task-meta span,.metric-row span,.done-row span,.status-pill{min-height:24px}}@media (width<=420px){.topbar h1{font-size:16px}.user-pill span{display:none}.overview-strip article{padding-inline:6px}.summary-band{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{grid-template-columns:minmax(0,1fr) 54px}.task-actions{grid-template-columns:1fr}}
