@import "https://fonts.googleapis.com/css2?family=Manrope:wght@500;600&display=swap";:root{color:#1a1a1a;background:#f5f5f2;font-family:Arial,Helvetica,sans-serif}body{min-width:320px;min-height:100vh;margin:0}:root{--cream:#f6f2ea;--cream-light:#fbf8f2;--blue:#27459d;--blue-dark:#1b347d;--blue-soft:#6075bb;--orange:#fd4c22;--orange-dark:#d83d18;--nordic-lake:var(--blue);--marie:var(--orange);--charcoal:var(--blue);--charcoal-dark:var(--blue-dark);--text:#000;--text-muted:#5f5a54;--border:#d8d2c8}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}html,body{overflow-x:hidden}body{background:var(--cream)}.app{background:var(--cream);width:100%;min-height:100vh;color:var(--text);grid-template-columns:250px minmax(0,1fr);font-family:PP Mori,Manrope,Arial,sans-serif;display:grid}.sidebar{background:var(--charcoal);min-height:100vh;color:var(--cream);padding:30px 20px}.sidebar-title{letter-spacing:-.03em;text-transform:uppercase;margin:0 0 34px;font-size:23px;font-weight:800}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar nav h2{text-transform:uppercase;letter-spacing:.1em;color:#f7f5ef7a;margin:26px 12px 8px;font-size:11px;font-weight:700}.sidebar button{width:100%;color:var(--cream);font:inherit;text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:0;padding:10px 12px;font-weight:700}.sidebar button:hover{background:var(--charcoal-dark)}.sidebar button.active{background:var(--orange);color:#fff}.sidebar button.new-project-button{color:var(--cream);margin-top:14px}.sidebar button.new-project-button:hover,.sidebar button.new-project-button.active{background:var(--orange);color:#fff}.sidebar-short{display:none}main{background:var(--cream);width:100%;min-width:0;padding:48px 58px}main h1,main h2,main h3{letter-spacing:-.035em;text-transform:uppercase;font-weight:800}main h1{margin-top:0;margin-bottom:8px;font-size:35px}main h2{margin-top:38px;margin-bottom:14px;font-size:21px}main section{padding-top:2px}main section+section{margin-top:12px}.project-header{margin-bottom:34px}.project-title-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.project-title-row h1{margin-bottom:0}.project-page h2,.project-page h3{font-style:italic}.project-info{color:var(--text-muted);flex-wrap:wrap;gap:6px;margin-top:8px;font-size:15px;font-style:italic;display:flex}.project-summary{color:var(--text-muted);font-style:italic}.project-edit-button{border:1px solid var(--border);width:auto;color:var(--text-muted);text-transform:uppercase;cursor:pointer;background:0 0;padding:6px 10px;font-size:12px;font-weight:700}.project-edit-button:hover{border-color:var(--charcoal);color:var(--charcoal)}.project-edit-form{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;max-width:760px;margin-top:24px;padding-top:20px;display:grid}.project-edit-form label{text-transform:uppercase;gap:6px;font-size:12px;font-weight:700;display:grid}.project-edit-form input{width:100%}.project-edit-actions{grid-column:1/-1;gap:8px;margin-top:4px;display:flex}input,select,textarea,button{font-family:PP Mori,Manrope,Arial,sans-serif}input,select,textarea{border:1px solid var(--border);background:var(--cream-light);max-width:100%;color:var(--text);border-radius:0;padding:10px 12px;font-size:15px}input:focus,select:focus,textarea:focus{outline:2px solid var(--nordic-lake);outline-offset:-1px}.project-task-form{grid-template-columns:minmax(0,1fr) 160px 130px 130px auto;gap:12px;display:grid}.new-project-form{gap:18px;max-width:620px;display:grid}.new-project-form label{text-transform:uppercase;gap:8px;font-weight:700;display:grid}.form-actions,.project-edit-actions,.task-edit-actions{gap:8px;display:flex}.project-task-form button,.form-actions button,.primary-button{border:1px solid var(--charcoal);background:var(--charcoal);color:var(--cream);text-transform:uppercase;cursor:pointer;padding:10px 16px;font-weight:800}.project-task-form button:hover,.form-actions button:hover,.primary-button:hover{background:var(--marie);border-color:var(--marie)}.secondary-button{border:1px solid var(--border);color:var(--text);text-transform:uppercase;cursor:pointer;background:0 0;padding:8px 14px;font-weight:700}.secondary-button:hover{border-color:var(--blue);color:var(--blue)}.deadline{text-transform:uppercase;font-weight:600}.deadline-today,.deadline-overdue{color:var(--marie);font-weight:800}.deadline-future{color:var(--text-muted)}.deadline-none{color:var(--text-muted);font-style:italic}.project-task-row,.dashboard-task-row{border-bottom:1px solid var(--border);align-items:baseline;gap:12px;padding:8px 0;display:grid}.project-task-row{grid-template-columns:minmax(0,1fr) auto auto auto}.dashboard-task-row{grid-template-columns:150px minmax(0,1fr) auto auto}.dashboard-task-project{font-weight:700}.dashboard-task-title{min-width:0}.complete-task-button,.edit-task-button{border:1px solid var(--border);width:auto;color:var(--text-muted);text-transform:uppercase;cursor:pointer;background:0 0;padding:4px 8px;font-size:11px;font-weight:700}.complete-task-button:hover{border-color:var(--charcoal);background:var(--charcoal);color:var(--cream)}.edit-task-button:hover{border-color:var(--nordic-lake);background:var(--nordic-lake);color:#fff}.task-edit-form{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) 160px 130px 130px auto;align-items:center;gap:12px;padding:10px 0;display:grid}.task-edit-actions{justify-content:flex-end}.task-edit-actions button{padding:7px 10px;font-size:11px}.archive-task-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:20px;padding:8px 0;display:grid}.archive-task-row span{color:var(--text-muted);text-transform:uppercase;font-size:13px;font-style:italic}.archives-search{max-width:720px;margin-top:32px}.archives-search input{width:100%;padding:13px 15px;font-size:16px}.archives-count{color:var(--text-muted);margin-top:12px;font-size:13px;font-style:italic}.archives-results{margin-top:28px}.global-archive-row{border-bottom:1px solid var(--border);grid-template-columns:180px minmax(0,1fr) 230px auto;align-items:center;gap:20px;padding:11px 0;display:grid}.global-archive-project{text-transform:uppercase;gap:8px;display:flex}.global-archive-project strong{color:var(--text-muted)}.global-archive-task{font-weight:600}.global-archive-date{color:var(--text-muted);text-transform:uppercase;font-size:13px;font-style:italic}.archive-open-button{border:1px solid var(--border);width:auto;color:var(--text-muted);text-transform:uppercase;cursor:pointer;background:0 0;padding:5px 9px;font-size:11px;font-weight:700}.archive-open-button:hover{background:var(--charcoal);border-color:var(--charcoal);color:var(--cream)}.agency-calendar-section{border-top:1px solid var(--border);width:100%;min-width:0;margin-top:70px;padding-top:24px}.calendar-header{justify-content:space-between;align-items:center;gap:30px;margin-bottom:24px;display:flex}.calendar-header h2{margin:0}.calendar-controls{align-items:center;gap:6px;display:flex}.calendar-controls button{border:1px solid var(--charcoal);color:var(--charcoal);text-transform:uppercase;cursor:pointer;background:0 0;padding:7px 11px;font-weight:700}.calendar-controls button:hover{background:var(--charcoal);color:var(--cream)}.calendar-month-title{text-transform:uppercase;margin-bottom:10px;font-size:18px;font-weight:800}.calendar-scroll{width:100%;max-width:100%;overflow-x:auto}.calendar-grid{border-top:1px solid var(--border);border-left:1px solid var(--border);grid-template-columns:repeat(7,minmax(110px,1fr));min-width:780px;display:grid}.calendar-weekday{border-right:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--text-muted);padding:8px 10px;font-size:12px;font-weight:800}.calendar-day{border-right:1px solid var(--border);border-bottom:1px solid var(--border);min-height:120px;padding:8px}.calendar-day-empty{background:#00000004}.calendar-day-today{background:#2f4cab1a}.calendar-day-number{margin-bottom:8px;font-size:13px;font-weight:800}.calendar-day-today .calendar-day-number{background:var(--nordic-lake);color:#fff;justify-content:center;align-items:center;min-width:24px;height:24px;display:inline-flex}.calendar-day-tasks{flex-direction:column;gap:4px;display:flex}.calendar-task{background:#0000000d;gap:5px;padding:4px 5px;font-size:11px;display:flex;overflow:hidden}.calendar-task strong{flex-shrink:0}.calendar-task span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.calendar-task-urgent{color:var(--marie);background:#ff5a2f29}.calendar-task-waiting{color:var(--text);background:#2f4cab1f}.calendar-more{color:var(--text-muted);margin-top:2px;font-size:10px;font-style:italic}.auth-screen{background:var(--charcoal);justify-content:center;align-items:center;min-height:100vh;padding:24px;font-family:PP Mori,Manrope,Arial,sans-serif;display:flex}.auth-card{background:var(--cream);width:100%;max-width:380px;color:var(--text);gap:18px;padding:34px;display:grid}.auth-card h1{text-transform:uppercase;margin:0;font-size:32px;font-weight:800}.auth-intro{color:var(--text-muted);margin:-8px 0 8px;font-style:italic}.auth-card label{text-transform:uppercase;gap:7px;font-size:12px;font-weight:700;display:grid}.auth-card input{width:100%;font-size:16px}.auth-card button{border:1px solid var(--charcoal);background:var(--charcoal);color:var(--cream);text-transform:uppercase;cursor:pointer;padding:11px 16px;font-weight:800}.auth-card button:disabled{opacity:.6;cursor:wait}.auth-error{color:var(--marie);margin:0;font-size:13px;font-weight:700}.app-loading{text-transform:uppercase;background:var(--cream);min-height:100vh;color:var(--text);justify-content:center;align-items:center;font-family:PP Mori,Manrope,Arial,sans-serif;font-weight:700;display:flex}.app-error{border-left:3px solid var(--marie);color:var(--marie);margin:0 0 20px;padding:10px 12px;font-weight:700}@media (width<=800px){.app{min-height:100vh;display:block}.sidebar{z-index:100;scrollbar-width:none;width:84px;height:100dvh;min-height:100vh;padding:20px 9px;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar::-webkit-scrollbar{display:none}.sidebar-title{text-align:center;margin-bottom:24px;font-size:22px}.sidebar-full{display:none}.sidebar-short{display:block}.sidebar nav h2{text-align:center;margin:18px 0 8px}.sidebar button{text-align:center;letter-spacing:0;min-height:44px;padding:10px 4px;font-size:13px}.sidebar-plus{font-size:23px;line-height:1}main{width:calc(100% - 84px);min-width:0;margin-left:84px;padding:24px 14px 42px;overflow-x:hidden}main h1{font-size:28px}main h2{margin-top:31px;margin-bottom:10px;font-size:18px}input,select,textarea{font-size:16px}.project-title-row{align-items:flex-start}.project-info{flex-direction:column;gap:3px;font-size:13px}.project-info span:nth-child(2n){display:none}.project-task-form,.task-edit-form,.project-edit-form{grid-template-columns:1fr}.project-task-form input,.project-task-form select,.project-task-form button,.task-edit-form input,.task-edit-form select{width:100%}.dashboard-task-row{grid-template-columns:minmax(0,1fr) 34px;grid-template-areas:"project complete""title complete""deadline complete";align-items:center;gap:2px 10px;padding:12px 0}.dashboard-task-project{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;grid-area:project;font-size:10px;font-weight:700}.dashboard-task-title{grid-area:title;font-size:16px;font-weight:700;line-height:1.15}.dashboard-task-row .deadline{white-space:normal;grid-area:deadline;max-width:145px;margin-top:4px;font-size:11px;font-weight:500;line-height:1.2}.dashboard-task-row .deadline-overdue{color:var(--marie);white-space:pre-line;font-weight:600}.dashboard-task-row .deadline-today{font-weight:600}.project-task-row{grid-template-columns:minmax(0,1fr) 34px;grid-template-areas:"title complete""deadline complete""edit edit";align-items:center;gap:3px 10px;padding:12px 0}.project-task-title{grid-area:title;font-size:16px;line-height:1.15}.project-task-row .deadline{grid-area:deadline;max-width:145px;font-size:11px;font-weight:500;line-height:1.2}.project-task-row .deadline-overdue{white-space:pre-line;font-weight:600}.project-task-row .edit-task-button{background:0 0;border:0;grid-area:edit;justify-self:start;margin-top:4px;padding:2px 0;font-size:10px}.complete-task-button{border-color:var(--border);grid-area:complete;justify-content:center;place-self:center end;align-items:center;width:32px;height:32px;padding:0;font-size:0;display:inline-flex}.complete-task-button:before{content:"+";font-size:22px;font-weight:400;line-height:1}.archive-task-row{grid-template-columns:1fr;gap:4px}.global-archive-row{grid-template-columns:1fr;gap:5px;padding:14px 0}.archives-search{margin-top:20px}.agency-calendar-section{margin-top:48px;padding-top:18px}.calendar-header{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:14px}.calendar-header h2{font-size:18px}.calendar-controls{gap:4px;width:100%}.calendar-controls button{padding:6px 7px;font-size:10px}.calendar-controls .calendar-today-button{text-align:center;flex:1}.calendar-month-title{margin-bottom:7px;font-size:14px}.calendar-scroll{overflow-x:visible}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:0}.calendar-weekday{text-align:center;padding:5px 1px;font-size:9px}.calendar-day{min-width:0;min-height:62px;padding:4px 3px}.calendar-day-number{margin-bottom:3px;font-size:10px}.calendar-day-today .calendar-day-number{min-width:18px;height:18px;font-size:9px}.calendar-day-tasks{gap:2px}.calendar-task{justify-content:center;width:100%;padding:1px 2px;font-size:8px;line-height:1.1}.calendar-task span{display:none}.calendar-task strong{text-overflow:ellipsis;max-width:100%;overflow:hidden}.calendar-more{text-align:center;margin-top:1px;font-size:8px}.auth-screen{padding:18px}.auth-card{padding:28px 22px}}.notification-time-setting{gap:6px;display:grid}.notification-time-label{text-transform:uppercase;font-size:12px;font-weight:700}.notification-time-inputs{align-items:center;gap:8px;display:flex}.notification-time-inputs select{width:90px}.notification-time-separator{font-size:22px;font-weight:700}html,body,button,input,select,textarea{font-family:PP Mori,Manrope,Arial,sans-serif;font-weight:500}h1,h2,h3,button,strong,.project-tab{font-weight:600}body{letter-spacing:-.01em}.project-tabs{border-bottom:1px solid var(--border);gap:28px;margin:24px 0 34px;display:flex}.project-tab{appearance:none;color:var(--text-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 0 11px}.project-tab:hover{color:var(--text)}.project-tab-active{color:var(--text);border-bottom-color:var(--orange)}.project-tab-count{background:#27459d1a;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:7px;padding:0 5px;font-size:11px;display:inline-flex}.project-notes{max-width:1000px}.project-notes-heading{margin-bottom:22px}.project-notes-heading h2{margin-bottom:5px}.project-notes-heading p{color:var(--text-muted);margin:0}.project-note-compose{border:1px solid var(--border);background:var(--cream-light);gap:10px;margin-bottom:30px;padding:18px;display:grid}.project-note-compose input,.project-note-compose textarea,.project-note-edit input,.project-note-edit textarea{box-sizing:border-box;width:100%}.project-note-compose textarea,.project-note-edit textarea{resize:vertical;min-height:140px;line-height:1.55}.project-note-compose-actions{justify-content:flex-end;display:flex}.project-notes-empty{color:var(--text-muted)}.project-notes-list{gap:16px;display:grid}.project-note-card{border:1px solid var(--border);background:var(--cream);padding:20px}.project-note-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:15px;display:flex}.project-note-header h3{margin:0 0 4px;font-size:18px}.project-note-header span{color:var(--text-muted);font-size:12px}.project-note-content{white-space:pre-wrap;line-height:1.6}.project-note-actions{gap:8px;display:flex}.project-note-edit{gap:10px;display:grid}.project-note-delete{opacity:.65}.project-note-delete:hover{border-color:var(--orange);color:var(--orange);opacity:1}@media (width<=700px){.project-tabs{gap:22px;margin-top:18px;margin-bottom:26px}.project-note-compose{padding:14px}.project-note-card{padding:15px}.project-note-header{display:grid}.project-note-actions{flex-wrap:wrap}}
