@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");:root{--bg:#f7f8f5;--paper:#fff;--ink:#252a27;--muted:#90958f;--line:#eceee9;--green:#517a5d;--font-body:"DM Sans",sans-serif;--font-display:"Manrope",sans-serif}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:14px}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #3e6644}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#fcfcfa;border-right:1px solid #edeee9;padding:27px 16px 18px;display:flex;flex-direction:column;z-index:4}.brand{height:37px;display:flex;align-items:center;gap:9px;padding:0 10px;color:#29332b;text-decoration:none;font:800 21px var(--font-display);letter-spacing:-1.2px}.brand-mark{width:28px;height:28px;display:grid;place-items:center;background:#60856a;border-radius:9px;color:white;box-shadow:inset 0 -2px 0 #496f53}.brand-dot{color:#cc805f}.workspace-switch{height:58px;margin:30px 0 28px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:flex;align-items:center;gap:10px;text-align:left}.profile-avatar,.workspace-avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:9px;background:#e8efe5;color:#55785a;font:700 14px var(--font-display)}.profile-copy,.workspace-copy{min-width:0;display:flex;flex-direction:column;gap:3px;flex:1 1}.profile-copy strong,.workspace-copy strong{font-size:12px;font-weight:700}.profile-copy small,.workspace-copy small{font-size:10px;color:var(--muted)}.workspace-switch>svg{color:#999}.side-label{padding:0 11px;margin-bottom:9px;color:#9b9e98;font:600 9px var(--font-display);letter-spacing:1.05px;display:flex;align-items:center;justify-content:space-between}.main-nav{display:grid;grid-gap:3px;gap:3px}.nav-link{height:38px;border:0;background:transparent;border-radius:7px;padding:0 10px;color:#747a74;display:flex;align-items:center;gap:11px;text-align:left;font-size:12px;font-weight:500;transition:background .18s,color .18s;width:100%}.nav-link:hover{background:#f1f3ef;color:#414b43}.nav-link.active{background:#edf2eb;color:#52765a;font-weight:700}.nav-count{margin-left:auto;font:500 10px var(--font-display);color:#9b9f98}.nav-link.active .nav-count{color:#597b60}.project-label{margin-top:30px}.project-label button{border:0;background:transparent;color:#90958f;display:grid;place-items:center;padding:2px}.project-link{height:34px;padding-left:13px}.project-dot{width:7px;height:7px;border-radius:50%;margin-right:3px}.dot-coral{background:#d7876b}.dot-blue{background:#849ab9}.dot-yellow{background:#d3ab5b}.add-project{margin:5px 0 0 12px;border:0;background:none;color:#969b94;display:flex;align-items:center;gap:9px;font-size:11px;padding:8px 0}.sidebar-bottom{margin-top:auto}.quote-card{position:relative;overflow:hidden;margin:0 3px 23px;padding:16px 14px 15px;border-radius:10px;background:#f1f4ed;border:1px solid #e9ede4}.quote-spark{color:#799078}.quote-card p{position:relative;z-index:1;margin:12px 0 8px;color:#4c584c;font:600 12px/1.65 var(--font-display)}.quote-card small{position:relative;z-index:1;color:#989e94;font-size:10px}.quote-orbit{position:absolute;width:81px;height:81px;border:1px solid #e4eadd;border-radius:50%;right:-35px;top:-30px;box-shadow:0 0 0 12px #edf1e8,0 0 0 23px #f0f3eb}.muted-link{height:34px;font-size:11px;gap:10px}.profile-row{margin-top:13px;border-top:1px solid var(--line);padding:15px 4px 0;display:flex;align-items:center;gap:9px}.profile-avatar{width:31px;height:31px;border-radius:50%;background:#e5ebe2}.profile-copy strong{max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.profile-copy small{font-size:9px}.profile-action{opacity:.65}.main-area{min-height:100vh;margin-left:250px}.topbar{height:73px;padding:0 48px;border-bottom:1px solid #edeee9;justify-content:space-between;background:rgba(252,252,250,.82)}.breadcrumbs,.topbar{display:flex;align-items:center}.breadcrumbs{gap:10px;color:#999e97;font-size:11px}.breadcrumbs strong{font-weight:600;color:#59625a}.crumb-slash{color:#d0d3cd}.top-actions{gap:20px}.search-box,.top-actions{display:flex;align-items:center}.search-box{height:34px;width:205px;gap:8px;padding:0 9px;border:1px solid #e9ebe6;background:#fff;border-radius:7px;color:#a2a69f}.search-box input{width:100%;min-width:0;border:0;outline:0!important;color:#4e564f;font-size:11px;background:transparent}.search-box input::placeholder{color:#aaaea8}.search-box kbd{gap:2px;padding:3px 5px;border:1px solid #ededeb;background:#fafaf9;border-radius:4px;color:#a1a49f;font-size:9px}.search-box kbd,.sync-status{display:flex;align-items:center;white-space:nowrap}.sync-status{gap:6px;font-size:10px;color:#92978f}.sync-status>span{width:6px;height:6px;border-radius:50%;background:#94b694}.sync-status.local>span{background:#d7ac6a}.avatar-top{width:30px;height:30px;border:0;background:#e4ebe1;color:#58705b;font:700 12px var(--font-display)}.content-wrap{max-width:1050px;margin:0 auto;padding:50px 58px 23px}.welcome-row{position:relative;min-height:156px;display:flex;justify-content:space-between;overflow:hidden}.eyebrow{display:flex;align-items:center;gap:8px;margin:3px 0 13px;color:#899188;font-size:11px}.eyebrow-line{width:17px;height:1px;background:#8da18b}.welcome-row h1{position:relative;z-index:1;margin:0;color:#2c342d;font:700 34px/1.2 var(--font-display);letter-spacing:-1.45px}.welcome-row h1 span:not(.title-period){color:#628368}.title-period{color:#ce886c}.mobile-break{display:none}.welcome-subtitle{margin:10px 0 0;color:#959a93;font-size:12px}.welcome-decoration{position:absolute;right:30px;top:-36px;width:240px;height:186px;opacity:.72}.deco-sun{position:absolute;right:71px;top:36px;width:69px;height:69px;border-radius:50%;background:#e9efdf}.deco-arc{position:absolute;border:1px solid #dfe8d6;border-radius:50%;width:141px;height:141px;top:0;right:35px}.arc-two{width:185px;height:185px;top:-21px;right:13px;border-color:#e6ebdf}.deco-star{position:absolute;color:#d5a575}.star-one{right:183px;top:55px;font-size:15px}.star-two{right:38px;top:91px;font-size:13px}.deco-dot{position:absolute;right:164px;top:127px;width:6px;height:6px;border-radius:50%;background:#91a98b}.overview-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:13px;gap:13px;margin:23px 0 40px}.overview-card{height:86px;position:relative;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #ebede8;border-radius:9px;background:#fff;box-shadow:0 2px 7px #33451c05}.overview-icon{width:36px;height:36px;flex-shrink:0;border-radius:9px;display:grid;place-items:center}.icon-peach{color:#bd795e;background:#fbefea}.icon-green{color:#648465;background:#edf3ec}.icon-lilac{color:#7e7ca0;background:#f0eff8}.overview-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.overview-copy>span{color:#989d96;font-size:10px;white-space:nowrap}.overview-copy strong{color:#39423a;font:700 20px var(--font-display);letter-spacing:-.6px}.overview-copy strong small{font:500 10px var(--font-body);letter-spacing:0;color:#959a93}.overview-mini{height:3px;width:37px;border-radius:5px;background:#f1e5df;margin-left:auto;overflow:hidden}.overview-mini span{display:block;height:100%;border-radius:5px;background:#d39075}.overview-note{margin-left:auto;color:#95a28f;font-size:9px;white-space:nowrap}.overview-note span{color:#d4a66c}.overview-bars{margin-left:auto;height:27px;display:flex;align-items:flex-end;gap:3px}.overview-bars i{width:4px;border-radius:3px;background:#dfe8dc;height:10px}.overview-bars i:nth-child(2),.overview-bars i:nth-child(6){height:17px}.overview-bars i:nth-child(3),.overview-bars i:nth-child(5){height:13px}.overview-bars i:nth-child(4){height:24px;background:#a6b99f}.task-panel{border:1px solid #ebede8;background:#fff;border-radius:10px;box-shadow:0 3px 12px #38422406}.task-panel-head{min-height:91px;padding:20px 22px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f0f1ed}.section-kicker{display:flex;align-items:center;gap:7px;color:#999e97;font:600 9px var(--font-display);letter-spacing:1px}.section-indicator{width:6px;height:6px;border-radius:50%;background:#d48c6e}.task-panel-head h2{display:flex;align-items:center;gap:9px;margin:7px 0 0;color:#353c36;font:700 19px var(--font-display);letter-spacing:-.5px}.task-total{min-width:19px;height:19px;display:grid;place-items:center;border-radius:6px;background:#f2f4ef;color:#899087;font:600 10px var(--font-body)}.task-controls{gap:7px}.filter-button,.task-controls{display:flex;align-items:center}.filter-button{height:31px;padding:0 8px;gap:6px;border:1px solid #eaede8;border-radius:6px;background:#fff;color:#828880;font-size:10px}.filter-button>svg:first-child{color:#969d94}.filter-button>svg:last-child{color:#a7aaa4}.view-button{width:31px;justify-content:center;padding:0}.view-button svg:last-child{display:none}.add-task-button{height:32px;margin-left:4px;padding:0 11px;border:0;border-radius:6px;background:#5f8266;color:white;display:flex;align-items:center;gap:5px;font-size:10px;font-weight:600;box-shadow:0 2px 4px #526f5629;transition:background .2s,transform .2s}.add-task-button:hover,.auth-submit:hover,.save-task:hover{background:#4d7255;transform:translateY(-1px)}.task-list{padding:0 21px}.task-row{min-height:67px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #f0f1ed;animation:row-in .28s both;animation-delay:calc(var(--row-index)*35ms)}@keyframes row-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.task-check{width:18px;height:18px;flex:0 0 18px;display:grid;place-items:center;padding:0;border:1.5px solid #d6dbd4;border-radius:6px;background:white;color:white;transition:all .2s}.task-check:hover{border-color:#84a286;background:#f1f5f0}.task-check.checked{border-color:#6d9272;background:#6d9272}.task-text{flex:1 1;min-width:0}.task-text h3{margin:0;color:#424943;font-size:12px;font-weight:600;transition:color .2s}.task-text p{margin:4px 0 0;color:#a3a7a0;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-done .task-text h3{text-decoration:line-through;color:#a9ada7}.priority-tag{min-width:61px;padding:5px 7px;display:flex;justify-content:center;align-items:center;gap:5px;border-radius:5px;font-size:9px;white-space:nowrap}.priority-tag i{width:5px;height:5px;border-radius:50%;background:currentColor}.priority-high{background:#faf0eb;color:#c67e61}.priority-medium{background:#f8f4e9;color:#b79653}.priority-low{background:#f0f3ee;color:#7b9474}.due-date{min-width:76px;display:flex;align-items:center;gap:5px;color:#a0a49e;font-size:9px;white-space:nowrap}.due-date svg{color:#aeb3aa}.icon-button{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:#a2a79f;padding:0;transition:background .15s,color .15s}.icon-button:hover{background:#f3f4f1;color:#626c62}.delete-task{opacity:0;transition:opacity .15s}.delete-task:focus-visible,.task-row:hover .delete-task{opacity:1}.list-footer{min-height:47px;padding:0 22px;justify-content:space-between;color:#a2a69f;font-size:9px}.list-footer,.list-footer>span{display:flex;align-items:center}.list-footer>span{gap:7px}.footer-spark{color:#c99a69}.list-footer button{border:0;background:none;color:#718a70;font-size:9px}.list-footer button span{margin-left:4px}.empty-state{min-height:208px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:#f1f4ee;color:#82967c;margin-bottom:12px}.empty-state strong{font:600 13px var(--font-display);color:#59625a}.empty-state p{margin:6px 0 0;color:#a0a59e;font-size:10px}.empty-state>button{margin-top:13px;border:0;background:none;color:#628269;font-size:10px;display:flex;align-items:center;gap:5px}.new-task-form{margin:15px 21px 2px;padding:8px;display:flex;align-items:center;gap:8px;border:1px solid #dce6d9;border-radius:7px;background:#fbfcfa}.form-leading{width:25px;height:25px;display:grid;place-items:center;color:#6e8a6d}.new-task-form input,.new-task-form select{min-width:0;border:0;background:transparent;color:#4b554b;font-size:10px;outline:0}.new-task-form input:first-of-type{flex:1 1}.new-task-form input[type=date]{width:115px;color:#848b83}.new-task-form select{width:70px;color:#848b83}.save-task{height:27px;padding:0 10px;border:0;border-radius:5px;background:#5f8266;color:white;font-size:10px;transition:.15s}.cancel-task{flex-shrink:0}.page-footer{padding:24px 3px 0;display:flex;justify-content:space-between;color:#a4a8a1;font-size:9px}.footer-heart{color:#ce8a6c;margin-left:3px}.menu-toggle,.mobile-brand,.mobile-scrim{display:none}.toast{position:fixed;z-index:12;right:25px;bottom:25px;display:flex;align-items:center;gap:9px;padding:11px 13px;border:1px solid #e5eae2;border-radius:8px;background:#fff;box-shadow:0 8px 24px #26351712;color:#505b50;font-size:11px;animation:row-in .2s}.toast-check{width:18px;height:18px;display:grid;place-items:center;background:#eaf2e8;color:#628366;border-radius:50%}.toast button{margin-left:8px;padding:2px;border:0;background:none;color:#a1a69f}.modal-backdrop{position:fixed;inset:0;z-index:15;display:grid;place-items:center;padding:20px;background:#1e2a1e5c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .15s}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;width:min(100%,390px);padding:34px 35px 28px;border:1px solid #ebeee8;border-radius:13px;background:#fff;box-shadow:0 18px 70px #19261825}.modal-close{position:absolute;right:14px;top:14px}.auth-logo{display:flex;justify-content:center}.auth-modal h2{margin:17px 0 7px;text-align:center;color:#303831;font:700 19px var(--font-display);letter-spacing:-.5px}.auth-modal>p{margin:0 0 24px;text-align:center;color:#959b94;font-size:11px;line-height:1.5}.auth-modal form{display:grid;grid-gap:13px;gap:13px}.auth-modal label{display:grid;grid-gap:6px;gap:6px;color:#606860;font-size:10px;font-weight:600}.auth-modal input{height:38px;padding:0 11px;border:1px solid #e8ebe6;border-radius:6px;background:#fcfcfb;color:#444c45;font-size:11px}.auth-modal input::placeholder{color:#b6bab4}.auth-submit{height:39px;margin-top:3px;border:0;border-radius:6px;background:#5f8266;color:white;font-size:11px;font-weight:600;transition:.18s}.auth-submit:disabled{opacity:.65}.auth-message{padding:8px;border-radius:5px;background:#fbf2eb;color:#b16f56;font-size:10px}.auth-switch{display:flex;justify-content:center;gap:5px;margin-top:20px;color:#969c95;font-size:10px}.auth-switch button{border:0;background:none;color:#5e8064;font-size:10px;font-weight:700}.auth-config-hint{margin-top:15px;padding-top:12px;border-top:1px solid #eff0ed;color:#9ba099;text-align:center;font-size:9px}.auth-config-hint code{color:#70856c;background:#f3f5f0;padding:2px 4px;border-radius:3px}@media(min-width:1450px){.content-wrap{padding-top:59px}.welcome-row{min-height:170px}.overview-row{margin-top:29px;margin-bottom:45px}.task-row{min-height:73px}}@media(max-width:1100px){.sidebar{width:225px}.main-area{margin-left:225px}.topbar{padding:0 32px}.content-wrap{padding:42px 34px 20px}.overview-card{gap:9px;padding:12px}.overview-mini{display:none}.overview-bars{gap:2px}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .25s ease;width:270px;box-shadow:12px 0 30px #20301c10}.sidebar.sidebar-open{transform:translateX(0)}.main-area{margin-left:0}.mobile-scrim{position:fixed;z-index:3;inset:0;display:block;border:0;background:#28342744}.topbar{height:59px;padding:0 18px}.breadcrumbs{display:none}.mobile-brand{display:flex;align-items:center;gap:7px;font:800 17px var(--font-display);letter-spacing:-.8px}.small-mark{width:24px;height:24px;border-radius:7px}.menu-toggle{display:grid;margin-right:2px}.top-actions{gap:11px}.search-box{width:35px;height:32px;padding:0;justify-content:center;border-color:transparent;background:transparent}.search-box input,.search-box kbd,.sync-status{display:none}.avatar-top{width:29px;height:29px}.content-wrap{padding:34px 19px 18px}.welcome-row{min-height:147px}.welcome-row h1{font-size:30px}.welcome-subtitle{font-size:11px}.welcome-decoration{right:-65px;top:-27px;transform:scale(.78);transform-origin:top right;opacity:.5}.mobile-break{display:initial}.overview-row{gap:8px;margin:19px 0 26px}.overview-card{height:78px;padding:10px;gap:8px;min-width:0}.overview-icon{width:30px;height:30px;border-radius:8px}.overview-icon svg{width:16px}.overview-copy>span{font-size:9px;overflow:hidden;text-overflow:ellipsis}.overview-copy strong{font-size:17px}.overview-copy strong small{font-size:9px}.overview-bars,.overview-note{display:none}.task-panel-head{min-height:84px;padding:16px 14px}.task-panel-head h2{font-size:17px}.task-controls{gap:5px}.filter-button{height:30px;padding:0 7px}.filter-button span,.view-button{display:none}.add-task-button{height:31px;padding:0 8px;margin-left:0}.add-task-button span{font-size:9px}.task-list{padding:0 13px}.task-row{min-height:65px;gap:9px}.task-text h3{font-size:11px}.task-text p{font-size:9px}.priority-tag{min-width:49px;padding:4px 5px;font-size:8px}.due-date{min-width:62px;font-size:8px;gap:3px}.due-date svg{width:11px}.delete-task{opacity:.55;width:23px}.task-check{width:17px;height:17px;flex-basis:17px}.list-footer{padding:0 13px}.list-footer,.list-footer button,.page-footer{font-size:8px}.new-task-form{margin:12px 12px 0;flex-wrap:wrap}.new-task-form input:first-of-type{min-width:calc(100% - 50px)}.new-task-form input[type=date]{margin-left:33px}.toast{right:14px;bottom:14px;left:14px;justify-content:flex-start}.auth-modal{padding:32px 24px 24px}}@media(max-width:380px){.content-wrap{padding-left:13px;padding-right:13px}.overview-card{padding:8px;gap:6px}.overview-copy>span{font-size:8px}.overview-copy strong{font-size:15px}.priority-tag{display:none}.due-date{margin-left:auto}.filter-button:not(.view-button){width:30px;justify-content:center}.filter-button:not(.view-button) span,.filter-button:not(.view-button) svg:last-child{display:none}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--accent:#52765a;--accent-strong:#3e6644;--accent-soft:#edf2eb;--accent-pale:#e8efe5;--accent-text:#47664a;--accent-border:#a7b8a3}html[data-theme=ocean]{--accent:#3d7294;--accent-strong:#315c79;--accent-soft:#eaf2f7;--accent-pale:#e4eff6;--accent-text:#315c79;--accent-border:#a6c0d2}html[data-theme=violet]{--accent:#755d98;--accent-strong:#5d467e;--accent-soft:#f0edf6;--accent-pale:#ece6f5;--accent-text:#5d467e;--accent-border:#b9aad0}html[data-theme=terracotta]{--accent:#a45f43;--accent-strong:#80472f;--accent-soft:#f7eee9;--accent-pale:#f4e8e1;--accent-text:#80472f;--accent-border:#d6ad9c}html[data-theme] button:focus-visible,html[data-theme] input:focus-visible,html[data-theme] select:focus-visible{outline-color:var(--accent-strong)}html[data-theme] .brand-mark{background:var(--accent);box-shadow:inset 0 -2px 0 var(--accent-strong)}html[data-theme] .avatar-top,html[data-theme] .profile-avatar,html[data-theme] .workspace-avatar{background:var(--accent-pale);color:var(--accent-strong)}html[data-theme] .nav-link.active{background:var(--accent-soft);color:var(--accent-strong)}html[data-theme] .add-project,html[data-theme] .list-footer button,html[data-theme] .nav-link.active .nav-count,html[data-theme] .task-open-icon,html[data-theme] .task-open:hover .task-text h3,html[data-theme] .welcome-row h1 span:not(.title-period){color:var(--accent-strong)}html[data-theme] .project-link .project-dot,html[data-theme] .project-link.active .project-dot{background:var(--accent)}html[data-theme] .icon-green{background:var(--accent-soft);color:var(--accent)}html[data-theme] .add-task-button,html[data-theme] .app-modal-done,html[data-theme] .auth-submit,html[data-theme] .github-form button:not(:disabled),html[data-theme] .reminder-form button,html[data-theme] .save-task,html[data-theme] .task-edit-actions button[type=submit]{background:var(--accent);border-color:var(--accent);color:#fff}html[data-theme] .subtask-check.checked,html[data-theme] .subtask-progress span,html[data-theme] .task-check.checked{background:var(--accent);border-color:var(--accent)}html[data-theme] .empty-icon,html[data-theme] .toast-check{background:var(--accent-soft);color:var(--accent-strong)}html[data-theme] .app-modal-title,html[data-theme] .detail-add-form button,html[data-theme] .settings-action,html[data-theme] .task-edit-actions button,html[data-theme] .task-edit-toggle{color:var(--accent-strong)}html[data-theme] .settings-action,html[data-theme] .settings-project form input,html[data-theme] .task-edit-actions button,html[data-theme] .task-edit-form input,html[data-theme] .task-edit-form select,html[data-theme] .task-edit-form textarea,html[data-theme] .task-edit-toggle{border-color:var(--accent-border)}html[data-theme] .detail-add-form button,html[data-theme] .settings-action{background:var(--accent-soft);border-color:var(--accent-border)}html[data-theme] .theme-option.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.global-request-status{position:fixed;z-index:30;top:82px;right:15px;min-height:36px;padding:0 12px;display:flex;align-items:center;gap:8px;border:1px solid #dfe7dc;border-radius:18px;background:#fff;color:#4d5d4e;box-shadow:0 4px 16px #26351718;font-size:11px;font-weight:600}.global-request-status .spin{color:var(--accent)}.avatar-top{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--accent-border);border-radius:50%;background:var(--accent-pale);color:var(--accent-strong);font:700 11px var(--font-display);letter-spacing:.2px;cursor:pointer;transition:transform .15s,box-shadow .15s}.avatar-top:hover{transform:translateY(-1px);box-shadow:0 0 0 3px var(--accent-soft)}.theme-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.theme-option{position:relative;min-width:112px;min-height:48px;padding:6px 9px;display:flex;align-items:center;gap:8px;border:1px solid #e2e7df;border-radius:7px;background:#fff;color:#4f594f;text-align:left;font-size:11px}.theme-option:disabled{opacity:.65;cursor:wait}.theme-option.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.theme-swatch{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:50%;color:#fff}.theme-saving{margin-left:auto;color:var(--accent)}.theme-save-status{display:flex!important;align-items:center;gap:6px;color:var(--accent-strong)!important}@media(max-width:760px){.global-request-status{top:64px;right:8px;min-height:32px;padding:0 9px;font-size:10px}.avatar-top{flex-basis:34px;width:34px;height:34px}.theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.theme-option{min-width:0}}html[data-theme] .detail-add-form:focus-within,html[data-theme] .drive-link-form:focus-within,html[data-theme] .project-create-form:focus-within,html[data-theme] .search-box:focus-within,html[data-theme] .sort-control:focus-within,html[data-theme] .upload-file-button:focus-within{outline-color:var(--accent);border-color:var(--accent-border)}.sort-control{height:31px;padding:0 8px;display:flex;align-items:center;gap:6px;border:1px solid #eaede8;border-radius:6px;background:#fff;color:#828880}.sort-control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;max-width:75px;border:0;outline:0;background:transparent;color:#747b73;font-size:10px}.sort-control svg:first-child{color:#969d94}.sort-control svg:last-child{color:#a7aaa4}.task-item{border-bottom:1px solid #f0f1ed}.task-item .task-row{border-bottom:0}.task-open{min-width:0;flex:1 1;display:flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;text-align:left}.task-open:hover .task-text h3{color:#517a5d}.task-open-icon{flex-shrink:0;color:#a9afa7;transition:transform .18s}.task-expanded .task-open-icon{transform:rotate(90deg);color:#628269}.task-pr-summary,.task-subtask-summary{display:flex;align-items:center;gap:4px;color:#84927f;font-size:9px;white-space:nowrap}.task-pr-summary{padding:4px 6px;border-radius:4px;background:#f1f3f1;color:#667268}.task-pr-summary.merged{background:#edf4eb;color:#568052}.task-pr-summary.closed{background:#f8efeb;color:#b97860}.task-details{padding:17px 18px 18px 49px;background:#fafbf9;border-top:1px solid #f0f1ed;animation:detail-open .18s ease-out}@keyframes detail-open{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.detail-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:24px;gap:24px}.detail-block{min-width:0}.detail-heading{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#5b645b;font-size:10px;font-weight:700}.resource-count,.subtask-count{padding:2px 6px;border-radius:4px;background:#eef1ec;color:#798378;font-size:9px;font-weight:500}.subtask-progress{height:3px;margin:-3px 0 7px;border-radius:3px;background:#e8ece6;overflow:hidden}.subtask-progress span{display:block;height:100%;border-radius:3px;background:#83a17d;transition:width .2s}.subtask-list{display:grid;grid-gap:1px;gap:1px}.subtask-item{min-height:30px;display:flex;align-items:center;gap:8px;color:#626a62;font-size:10px}.subtask-item>span{flex:1 1;min-width:0;overflow-wrap:anywhere}.subtask-check{width:16px;height:16px;flex:0 0 16px;display:grid;place-items:center;padding:0;border:1px solid #d4dad2;border-radius:5px;background:white;color:white}.subtask-check:hover{border-color:#7f9b7a}.subtask-check.checked{border-color:#779674;background:#779674}.subtask-done{text-decoration:line-through;color:#a3a9a1}.detail-icon-button{width:25px;height:25px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:#a0a79e}.detail-icon-button:hover:not(:disabled){background:#eef1ec;color:#62705f}.detail-icon-button:disabled{opacity:.5}.detail-add-form{height:32px;margin-top:5px;padding:0 8px;display:flex;align-items:center;gap:7px;border:1px solid #e8ebe6;border-radius:5px;background:#fff;color:#98a095}.detail-add-form input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#505950;font-size:10px}.detail-add-form input::placeholder{color:#a6aca4}.detail-add-form button{flex:0 0 auto;padding:4px 7px;border:0;border-radius:4px;background:#eef3ec;color:#587a58;font-size:9px}.detail-add-form button:disabled{opacity:.5;cursor:not-allowed}.resource-list{display:grid;grid-gap:2px;gap:2px;margin-bottom:8px}.resource-item{gap:3px}.resource-item,.resource-open{min-width:0;display:flex;align-items:center}.resource-open{flex:1 1;gap:8px;padding:4px 5px;border:0;border-radius:5px;background:transparent;color:#8a9388;text-align:left}.resource-open:hover{background:#f0f3ee}.resource-icon{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border-radius:5px}.file-kind{background:#f7eee9;color:#b97b61}.link-kind{background:#edf2e9;color:#698268}.resource-name{min-width:0;flex:1 1;display:grid;grid-gap:3px;gap:3px}.resource-name strong{color:#606960;font-size:9px;font-weight:600}.resource-name small,.resource-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-name small{color:#9da39b;font-size:8px}.resource-open>svg{flex:0 0 auto}.link-form{margin-top:3px}.upload-file-button{min-height:31px;margin-top:7px;padding:0 8px;display:flex;align-items:center;justify-content:space-between;border:1px dashed #dfe5dc;border-radius:5px;color:#6d826b;cursor:pointer}.upload-file-button:hover{border-color:#9bb197;background:#f6f8f4}.upload-file-button input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.upload-file-button:focus-within{outline:3px solid #b6d4bb;outline-offset:2px}.upload-file-button>span{display:flex;align-items:center;gap:6px;font-size:9px}.upload-file-button small{color:#a2a89f;font-size:8px}.upload-disabled{color:#a0a79f;cursor:not-allowed}.github-block{margin-top:16px;padding-top:13px;border-top:1px solid #e9ece7}.github-heading{display:flex;align-items:center;gap:8px;color:#59625a}.github-heading>svg{flex:0 0 auto;color:#727e72}.github-heading>div{display:grid;grid-gap:3px;gap:3px;min-width:0;flex:1 1}.github-heading strong{font-size:10px}.github-heading small{color:#989f97;font-size:9px}.github-status{padding:4px 7px;border-radius:4px;background:#f0f2ef;color:#707970;font-size:9px;white-space:nowrap}.github-status.open{background:#edf2e9;color:#617c5d}.github-status.merged{background:#edf4eb;color:#568052}.github-status.closed{background:#f8efeb;color:#b97860}.github-form{display:flex;align-items:center;gap:6px;margin-top:9px}.github-form input{height:31px;min-width:0;flex:1 1;padding:0 9px;border:1px solid #e5e9e3;border-radius:5px;background:#fff;color:#566056;font-size:9px}.github-form input::placeholder{color:#a6aca4}.github-form button{height:30px;padding:0 9px;border:0;border-radius:5px;background:#5f8266;color:#fff;font-size:9px}.github-form button:disabled{opacity:.5;cursor:not-allowed}.github-form .unlink-pr{background:transparent;color:#a26f5e}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(max-width:760px){.sort-control{width:31px;justify-content:center;padding:0}.sort-control select{position:absolute;width:31px;height:31px;opacity:0;cursor:pointer}.sort-control svg:last-child{display:none}.task-row{gap:7px}.task-pr-summary{font-size:8px;padding:3px 4px}.task-subtask-summary{font-size:8px}.task-details{padding:15px 12px 16px}.detail-columns{grid-template-columns:1fr;gap:17px}.detail-add-form{height:36px}.github-block{margin-top:15px}.github-heading small{font-size:8px}}@media(max-width:380px){.task-pr-summary,.task-subtask-summary{display:none}.due-date{min-width:57px}}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #52765a;outline-offset:2px}.detail-add-form:focus-within,.search-box:focus-within,.sort-control:focus-within,.upload-file-button:focus-within{outline:3px solid #52765a;outline-offset:2px}.subtask-check,.task-check{border-color:#879583}.detail-add-form input::placeholder,.due-date,.github-form input::placeholder,.github-heading small,.resource-name small,.task-text p,.upload-file-button small{color:#6d756b}.priority-high{color:#89573f}.priority-medium{color:#78602d}.priority-low{color:#52684b}.task-pr-summary,.task-subtask-summary{color:#52654f}.github-status.closed,.task-pr-summary.closed{color:#895740}.github-status.merged,.task-pr-summary.merged{color:#456d42}.resource-open{color:#647267}.detail-heading,.resource-name strong{color:#4e594d}.github-status.open,.github-status.pending{color:#53664f}.detail-icon-button{color:#6b756a}.detail-add-form,.github-form input,.sort-control,.upload-file-button{border-color:#879583}.github-form button:not(:disabled){background:#52765a}.project-list{display:grid;grid-gap:2px;gap:2px}.project-link .project-dot{flex:0 0 7px;background:#6d8b6d}.project-link.active .project-dot{background:#52765a}.project-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-empty{margin:3px 11px 5px;color:#6d756b;font-size:10px;line-height:1.5}.project-create-form{margin:3px 3px 7px;padding:4px;display:flex;align-items:center;gap:2px;border:1px solid #879583;border-radius:6px;background:#fff}.project-create-form:focus-within{outline:3px solid #52765a;outline-offset:2px}.project-create-form input{width:100%;min-width:0;padding:5px;border:0;outline:0;background:transparent;color:#414a41;font-size:10px}.project-create-form input::placeholder{color:#6d756b}.project-create-form button{width:25px;height:25px;flex:0 0 25px;display:grid;place-items:center;border:0;border-radius:4px;background:transparent;color:#59775b}.project-create-form button:hover{background:#eef3ec}.project-create-form button:disabled{opacity:.5;cursor:not-allowed}.task-project-select{display:flex;align-items:center;gap:9px;margin:0 0 14px;color:#596459;font-size:10px;font-weight:600}.task-project-select select{max-width:min(260px,70%);height:29px;padding:0 8px;border:1px solid #879583;border-radius:5px;background:#fff;color:#465246;font-size:10px}.new-task-form .new-task-project{width:120px;border:0}.new-task-form .new-task-project option{color:#3f493f}.project-label{margin-top:25px}.toast{max-width:min(520px,calc(100vw - 50px))}.toast-message{min-width:0;overflow-wrap:anywhere;line-height:1.45}@media(max-width:760px){.project-create-form{margin-left:4px;margin-right:4px}.task-project-select{flex-wrap:wrap}.task-project-select select{max-width:100%}.new-task-form .new-task-project{width:135px}}.task-detail-controls{display:flex;flex-wrap:wrap;gap:18px}.task-detail-controls .task-project-select{margin-bottom:12px}.resource-hint{margin:8px 0 5px;color:#6d756b;font-size:9px;line-height:1.5}.drive-link-form{display:grid;grid-gap:6px;gap:6px}.drive-link-form>input{height:31px;min-width:0;padding:0 9px;border:1px solid #879583;border-radius:5px;background:#fff;color:#566056;font-size:9px}.drive-link-form>input::placeholder{color:#6d756b}.drive-link-form .link-form{margin-top:0}.drive-link-form .link-form input{font-size:9px}.drive-link-form:focus-within{outline:3px solid #52765a;outline-offset:2px;border-radius:5px}.kanban-board{display:grid;grid-template-columns:repeat(5,minmax(205px,1fr));align-items:start;grid-gap:11px;gap:11px;padding:19px 18px 24px;overflow-x:auto}.kanban-column{min-width:205px;min-height:290px;padding:10px;border:1px solid #e7ebe5;border-radius:8px;background:#f6f7f5}.kanban-column-head{height:31px;margin:0 1px 10px;display:flex;align-items:center;gap:8px}.kanban-column-head h3{flex:1 1;margin:0;color:#536052;font-size:10px;font-weight:700}.kanban-status-dot{width:8px;height:8px;border-radius:50%;background:#94a28e}.kanban-dot-in_progress{background:#6d8eae}.kanban-dot-blocked{background:#bd805f}.kanban-dot-review{background:#9b83b0}.kanban-dot-done{background:#648766}.kanban-count{min-width:20px;padding:3px 6px;border-radius:5px;background:#e9ede7;color:#626f60;text-align:center;font-size:9px}.kanban-cards{display:grid;grid-gap:8px;gap:8px}.kanban-card{position:relative;padding:11px;border:1px solid #e8ebe6;border-radius:7px;background:#fff;box-shadow:0 2px 5px #26351708;cursor:-webkit-grab;cursor:grab}.kanban-card:active{cursor:-webkit-grabbing;cursor:grabbing}.kanban-card-expanded{border-color:#91a98c;box-shadow:0 0 0 2px #52765a20}.kanban-card-done{background:#fbfcfa}.kanban-card-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.kanban-card .priority-tag{min-width:0;padding:4px 6px;font-size:8px}.kanban-move-control{position:relative;display:flex;align-items:center;gap:3px;color:#647267}.kanban-move-control select{max-width:89px;padding:3px 15px 3px 1px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#566056;font-size:8px}.kanban-move-control>svg:last-child{position:absolute;right:1px;pointer-events:none}.kanban-card-title{width:100%;margin:10px 0 0;padding:0;display:flex;align-items:flex-start;justify-content:space-between;gap:7px;border:0;background:transparent;color:#414a41;text-align:left;font-size:11px;font-weight:650;line-height:1.45}.kanban-card-title:hover{color:#52765a}.kanban-card-title svg{flex:0 0 auto;color:#5c805e}.kanban-card-description{margin:5px 0 0;color:#6d756b;font-size:9px;line-height:1.5;overflow-wrap:anywhere}.kanban-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:11px;color:#697568;font-size:8px}.kanban-card-meta>span{display:flex;align-items:center;gap:4px}.kanban-due.overdue{color:#9a5849}.kanban-pr{color:#697568}.kanban-pr.merged{color:#456d42}.kanban-delete{position:absolute;right:7px;bottom:7px;padding:3px 5px;border:0;border-radius:4px;background:transparent;color:#826c62;font-size:8px;opacity:0}.kanban-card:hover .kanban-delete,.kanban-delete:focus-visible{opacity:1}.kanban-empty{min-height:45px;display:grid;place-items:center;border:1px dashed #d8ded6;border-radius:6px;color:#6d756b;font-size:9px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1000px){.kanban-board{grid-template-columns:repeat(5,minmax(220px,1fr));padding-left:13px;padding-right:13px}}@media(max-width:760px){.task-detail-controls{display:grid;grid-gap:0;gap:0}.kanban-board{grid-template-columns:repeat(5,minmax(235px,1fr));gap:9px;padding:14px 12px 18px}.kanban-column{min-height:265px}.kanban-delete{opacity:.7}}.reminder-section{margin:15px 0;padding:12px;border:1px solid #e6ebe4;border-radius:7px;background:#fff}.reminder-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.reminder-heading>div{display:grid;grid-gap:4px;gap:4px}.reminder-heading strong{color:#4e594d;font-size:10px}.reminder-heading small,.reminder-permission-note{color:#626e61;font-size:9px}.reminder-permission{min-height:28px;padding:0 9px;border:1px solid #d8e1d5;border-radius:5px;background:#f4f7f2;color:#536f52;font-size:9px}.reminder-permission:disabled{cursor:default;color:#536f52}.reminder-permission-note{margin:7px 0 0}.reminder-form{display:flex;align-items:flex-end;gap:8px;margin-top:10px}.reminder-form label{display:grid;flex:1 1;grid-gap:5px;gap:5px;color:#566056;font-size:9px}.reminder-form input{height:31px;min-width:0;padding:0 8px;border:1px solid #879583;border-radius:5px;background:#fff;color:#424b42;font-size:9px}.reminder-form button{height:31px;padding:0 10px;border:0;border-radius:5px;background:#52765a;color:#fff;font-size:9px}.reminder-scheduled{margin:8px 0 0;color:#536f52;font-size:9px}.reminder-snooze{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px}.reminder-snooze>span{margin-right:3px;color:#626e61;font-size:9px}.reminder-snooze button{min-height:25px;padding:0 7px;border:1px solid #e2e8df;border-radius:5px;background:#fafbf9;color:#566056;font-size:8px}.reminder-snooze button:hover{border-color:#91a98c;background:#f2f6f0}@media(max-width:760px){.reminder-section{padding:10px}.reminder-heading{align-items:flex-start;flex-direction:column}.reminder-form{align-items:stretch;flex-direction:column}.reminder-form button{align-self:flex-start}}.app-modal{position:fixed;inset:0;margin:auto;width:min(560px,calc(100vw - 32px));max-height:min(88dvh,760px);overflow-y:auto;padding:27px;border:1px solid #e3e8e0;border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 18px 70px #19261825}.app-modal::-webkit-backdrop{background:#1e2a1e8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-modal::backdrop{background:#1e2a1e8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-modal-title{display:flex;align-items:center;gap:10px;padding-right:42px;color:#55745a}.app-modal-title h2{margin:0;color:#303a31;font:700 19px var(--font-display);letter-spacing:-.4px}.app-modal-close{position:absolute;right:16px;top:15px;width:44px;height:44px}.app-modal-done{min-height:44px;margin-top:18px;padding:0 13px;display:inline-flex;align-items:center;gap:7px;border:0;border-radius:6px;background:#5f8266;color:#fff;font-size:12px;font-weight:600}.app-help-content,.app-settings-content{display:grid;grid-gap:12px;gap:12px;margin-top:21px}.app-help-content>p{margin:0 0 2px;color:#636e63;font-size:12px;line-height:1.65}.app-help-content>div{display:grid;grid-template-columns:minmax(112px,1fr) auto;align-items:center;grid-gap:5px 12px;gap:5px 12px;padding:11px 0;border-bottom:1px solid #edf0eb}.app-help-content strong,.settings-section h3{margin:0;color:#435044;font-size:12px;font-weight:700}.app-help-content span{grid-column:1/-1;color:#687268;font-size:11px;line-height:1.55}.app-help-content kbd{padding:5px 7px;border:1px solid #e1e6df;border-radius:4px;background:#f7f8f6;color:#556455;font:500 10px var(--font-body)}.app-settings-content{gap:0}.settings-section{position:relative;padding:14px 0;border-bottom:1px solid #edf0eb}.settings-section h3{margin-bottom:6px}.settings-section p{margin:0;color:#586458;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.settings-section small{display:block;margin-top:4px;color:#687367;font-size:10px;line-height:1.5}.settings-action,.settings-signout{min-height:44px;margin-top:9px;padding:0 10px;display:inline-flex;align-items:center;gap:7px;border:1px solid #879583;border-radius:5px;background:#f7f9f6;color:#4c694e;font-size:11px}.settings-signout{border-color:#8b756a;background:#fbf6f3;color:#8b5947}.settings-project{min-height:48px;display:flex;align-items:center;gap:5px;border-top:1px solid #f0f2ee}.settings-project>span{min-width:0;flex:1 1;overflow-wrap:anywhere;color:#566156;font-size:11px}.settings-project form button,.settings-project>button{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:5px;background:transparent;color:#778175}.settings-project form button:hover,.settings-project>button:hover{background:#f2f5f0;color:#47664a}.settings-project form{width:100%;display:flex;align-items:center;gap:4px}.settings-project form input{min-width:0;flex:1 1;height:44px;padding:0 9px;border:1px solid #879583;border-radius:5px;background:#fff;color:#384238;font-size:12px}.settings-project form button:disabled{opacity:.45;cursor:default}.app-dialog-message{margin:10px 0 0;color:#9a5849;font-size:11px;line-height:1.5}.task-edit-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 9px;color:#536052;font-size:11px}.task-edit-toggle{min-height:44px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border:1px solid #879583;border-radius:5px;background:#fff;color:#526e53;font-size:10px}.task-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0 0 15px;padding:13px;border:1px solid #e3e9e1;border-radius:7px;background:#fafbf9}.task-edit-form label{min-width:0;display:grid;grid-gap:5px;gap:5px;color:#536052;font-size:10px}.task-edit-form input,.task-edit-form select,.task-edit-form textarea{width:100%;min-width:0;min-height:40px;padding:8px 9px;border:1px solid #879583;border-radius:5px;background:#fff;color:#3f4940;font-size:12px}.task-edit-form textarea{resize:vertical;line-height:1.5}.task-edit-notes{grid-column:1/-1}.task-edit-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px}.task-edit-actions button{min-height:44px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;border:1px solid #879583;border-radius:5px;background:#fff;color:#566256;font-size:11px}.task-edit-actions button[type=submit]{border-color:#5f8266;background:#5f8266;color:#fff}.task-edit-actions button:disabled{opacity:.55;cursor:default}.workspace-switch{cursor:default}.workspace-switch>svg{display:none}@media(max-width:560px){.app-modal{padding:23px 18px 19px;max-height:88dvh}.app-modal-title h2{font-size:17px}.task-edit-form{grid-template-columns:minmax(0,1fr)}.task-edit-actions,.task-edit-notes{grid-column:1}.app-help-content>div{grid-template-columns:minmax(0,1fr) auto}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3e6644;outline-offset:2px}.search-box:focus-within{outline:3px solid #3e6644;outline-offset:2px}