:root{color:#27303f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;font-family:Noto Sans KR,Malgun Gothic,system-ui,sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;padding:0}button:focus-visible,input:focus-visible{outline:2px solid var(--activity-4,#1d6b41);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:22px;font-weight:500;line-height:30px}h2{font-size:20px;font-weight:500;line-height:28px}h3{font-size:16px;font-weight:500;line-height:24px}img{display:block}input{min-width:0}button:disabled{cursor:default}::selection{background:#d7e9d1}:root{--motion-ease:cubic-bezier(.22,1,.36,1)}html{overflow-x:clip}.date-cell,.month-preview-day,.grass button,.project-day-grid button{isolation:isolate;transition:background-color .48s ease,color .24s ease,box-shadow .32s var(--motion-ease),outline-color .32s ease;position:relative}.project-task-squares span{transition:background-color .48s}.date-cell:after,.month-preview-day:after,.grass button:after,.project-day-grid button:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;border:2px solid var(--activity-4,#1d6b41);position:absolute;inset:0}[data-tapping=true]:after{animation:date-ring .48s var(--motion-ease)}.date-cell.selected,.project-day-grid button.selected{box-shadow:0 3px 12px color-mix(in srgb,var(--activity-4) 18%,transparent)}@keyframes date-ring{0%{opacity:.7;scale:.88}to{opacity:0;scale:1.16}}button,a,input,textarea{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}button:active:not(:disabled){transition:scale .1s;scale:.97}button{transition:scale .18s var(--motion-ease),background-color .2s ease,color .2s ease}.planner-logo rect,.status,.project-task-squares span,.preview-date,.project-day-grid button{transition:fill .24s,background-color .24s,color .2s}.todo-name,.project-task-name{transition:color .2s,opacity .2s}.status.completed{animation:.16s soft-enter}.status-control:active:not(:disabled){scale:1}.bottom-dock a.active{background:0 0!important}.bottom-dock .dock-indicator{z-index:-1;background:var(--activity-4,#1d6b41);border-radius:24px;width:154px;height:48px;transition:background-color .24s;position:absolute;top:7px;left:8px}.bottom-dock[data-active=projects] .dock-indicator{left:64px}.bottom-dock a span{animation:soft-enter .18s var(--motion-ease)}.confirm[open],.project-popup[open]{animation:dialog-enter .28s var(--motion-ease)}.project-sheet[open]{animation:sheet-enter .3s var(--motion-ease)}dialog::backdrop{animation:.22s soft-enter}.project-menu,.task-sort-menu,.project-empty,.storage-error,.cloud-status,.cloud-conflict,.form-error,.login-error,.load-error{animation:soft-rise .22s var(--motion-ease)}.activity-disclosure img{transition:transform .2s var(--motion-ease)}@keyframes soft-enter{0%{opacity:0}to{opacity:1}}@keyframes soft-rise{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}@keyframes dialog-enter{0%{opacity:0;translate:0 12px;scale:.98}to{opacity:1;translate:0;scale:1}}@keyframes sheet-enter{0%{opacity:0;translate:0 28px}to{opacity:1;translate:0}}.loading-page{gap:24px;width:100%;max-width:864px;min-height:100svh;margin:auto;padding:28px 20px}.loading-label{color:#737a86;font-size:13px}.loading-skeleton{flex-direction:column;gap:16px;animation:.2s .15s both soft-enter;display:flex}.loading-skeleton>div{background:linear-gradient(100deg,#f0f2f4 20%,#f8f9fa 45%,#f0f2f4 70%) 0 0/240% 100%;border-radius:12px;animation:1.8s ease-in-out infinite skeleton-breathe}.skeleton-toolbar{width:55%;height:40px}.skeleton-calendar{height:180px}.skeleton-row{height:44px}.skeleton-row.short{width:65%}@keyframes skeleton-breathe{0%,to{background-position:100% 0}50%{background-position:0 0}}.load-error{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:64px 16px;display:flex}.load-error-icon{color:#b95a4c;background:#fff2ed;border-radius:50%;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.load-error p{color:#737a86;line-height:24px}.load-error button{background:var(--activity-4,#1d6b41);color:#fff;border-radius:12px;padding:12px 24px}html[data-motion=reduce] *,html[data-motion=reduce] :before,html[data-motion=reduce] :after{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){html:not([data-motion=full]) *,html:not([data-motion=full]) :before,html:not([data-motion=full]) :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}button:active:not(:disabled){scale:1}}.motion-settings h3{font-size:16px;font-weight:500}.motion-options{gap:8px;display:flex}.motion-options button{background:#f3f5f4;border-radius:12px;flex:1;padding:12px 8px}.motion-options button[aria-pressed=true]{background:var(--activity-1);color:var(--activity-4)}.motion-settings p{color:#737a86;font-size:12px;line-height:20px}.app{--activity-4:#1d6b41;--activity-0:#eef0f4;flex-direction:column;gap:16px;max-width:430px;min-height:100svh;margin:0 auto;padding:16px 20px 40px;display:flex}.main-header{align-items:center;gap:16px;height:54px;display:flex}.muted{color:#737a86;font-size:12px;line-height:18px}.main-header>.icon-button{width:44px;height:44px;margin-left:auto}.icon{object-fit:contain;width:20px;height:20px}.icon-button{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.icon-button:hover{background:#e8ebf0}.calendar-panel{background:#f7f8fa;border:1px solid #e3e6eb;border-radius:16px;flex-direction:column;gap:16px;padding:12px 20px;display:flex}.period{align-items:center;gap:4px;min-height:28px;display:flex}.period>span{white-space:nowrap;margin-right:auto;font-size:14px}.period .icon-button{width:24px;height:28px}.mode{background:var(--activity-1);width:28px;height:28px;color:var(--activity-4);border-radius:8px;margin:0 4px;font-size:12px}.date-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.date-cell{border-radius:4px;height:40px;font-size:12px}.date-cell.selected{outline:1.5px solid var(--activity-4);outline-offset:-1.5px}.date-cell.level-4{color:#fff}.date-cell.selected.level-4{box-shadow:0 0 0 1.5px var(--activity-4);outline-color:#fff}.date-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.date-heading h2{align-items:baseline;gap:6px;display:flex}.subtle{background:#eef0f4;width:28px;height:28px}.card{background:#f7f8fa;border:1px solid #e3e6eb;border-radius:12px;padding:12px}.categories{flex-direction:column;gap:12px;display:flex}.category{flex-direction:column;gap:8px;display:flex}.category-header{align-items:center;gap:8px;min-height:28px;display:flex}.category-header h3{overflow-wrap:anywhere}.progress-square{border-radius:2px;flex-shrink:0;width:12px;height:12px}.round{background:#eef0f4;border-radius:50%;width:24px;height:24px}.collapse{margin-left:auto}.collapse.is-collapsed .icon{transform:rotate(180deg)}.todos{flex-direction:column;gap:4px;display:flex}.todo-row{touch-action:pan-y;align-items:center;height:36px;display:flex;position:relative;overflow:hidden}.todo-main{width:calc(100% + var(--swipe-offset,0px) - var(--swipe-shift,0px));transform:translateX(var(--swipe-shift,0px));flex-shrink:0;align-items:center;transition:width .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);display:flex}.status-control,.status-spacer{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.status{border:1.25px solid var(--activity-4);background:#fff;border-radius:4px;flex-shrink:0;width:16px;height:16px;display:block}.status.completed{background:var(--activity-4)}.todo-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;height:36px;margin-left:4px;line-height:22px;overflow:hidden}.todo-actions{visibility:hidden;gap:4px;display:flex;position:absolute;right:0}.todo-actions .icon-button{background:#eef0f4;width:32px;height:32px}.delete-icon{background:#fbedec!important}.todo-row.is-moving .todo-main{will-change:width;transition:none}.swiped .todo-actions{visibility:visible}.inline-input{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.inline-input input{background:0 0;border:0;border-bottom:1px solid #737a86;border-radius:0;flex:1;width:100%;height:30px;padding:3px 0}.save-check{width:32px;height:32px;font-size:18px}.subheader{align-items:center;gap:8px;min-height:44px;margin-bottom:8px;display:flex}.subheader .icon-button{width:44px;height:44px}.profile{align-items:center;gap:16px;padding:16px;display:flex}.avatar{background:#e8ebf0;border-radius:50%;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.avatar .icon{width:24px;height:24px}.settings-card{flex-direction:column;gap:12px;margin-top:8px;padding:16px;display:flex}.swatches{justify-content:space-between;gap:4px;display:flex}.swatches button{flex-direction:column;flex:1;align-items:center;gap:8px;padding:8px 0;font-size:12px;display:flex}.swatch{border-radius:50%;width:24px;height:24px;margin:4px}.swatch.active{outline-offset:5px;outline:1.5px solid #27303f}.preview{background:#fff;border-radius:8px;flex-direction:column;gap:8px;padding:8px;display:flex}.preview>div{align-items:center;gap:4px;display:flex}.preview .status{margin:0 8px}.preview small{margin-right:auto;font-size:12px}.preview-date{border-radius:4px;place-items:center;width:36px;height:40px;font-size:12px;display:grid}.category-editor{flex-direction:column;gap:12px;display:flex}.editor-row{align-items:center;gap:8px;min-height:56px;display:flex}.category-name{overflow-wrap:anywhere;flex:1}.drag-handle{touch-action:none;cursor:grab;flex-shrink:0;place-items:center;width:24px;height:32px;display:grid}.drag-handle>span{flex-direction:column;gap:3px;display:flex}.drag-handle img{width:9px;height:3px}.dragging{outline:2px solid var(--activity-4);box-shadow:0 4px 10px #27303f12}.add-category{color:#737a86;background:#f7f8fa;border-radius:8px;width:100%;min-height:40px;margin-top:8px;font-size:12px}.confirm{color:#27303f;background:#fff;border:1px solid #e3e6eb;border-radius:20px;width:min(340px,100vw - 40px);padding:24px;box-shadow:0 16px 60px #27303f22}.confirm::backdrop{background:#27303f55}.confirm h2{text-align:center;font-size:18px}.warning{color:#b6413a;text-align:center;background:#fbedec;border-radius:8px;margin-top:16px;padding:12px;font-weight:500;line-height:24px}.dialog-actions{gap:8px;margin-top:24px;display:flex}.dialog-actions button{text-align:center;background:#eef0f4;border-radius:8px;flex:1;height:44px}.dialog-actions .danger{color:#fff;background:#b6413a}.year-grass{flex-direction:column;gap:16px;display:flex}.half-year{flex-direction:column;gap:6px;display:flex}.month-labels{color:#737a86;justify-content:space-between;font-size:10px;display:flex}.grass{gap:1px;display:grid}.grass-column{grid-template-rows:repeat(7,10px);gap:1px;display:grid}.grass button,.grass span{border-radius:1.5px;min-width:0;height:10px}.year-summary{flex-direction:column;gap:12px;display:flex}.year-summary p{font-size:12px}.storage-error{color:#b6413a;text-align:center;z-index:10;background:#fbedec;border-radius:20px;width:360px;max-width:calc(100vw - 24px);padding:12px 16px;font-size:12px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.storage-error button{margin:8px auto 0;text-decoration:underline;display:block}@media (width>=700px){body{background:#f7f8fa}.app{background:#fff;border-inline:1px solid #e3e6eb;max-width:430px}}@media (prefers-reduced-motion:reduce){.todo-main{transition:none}}@media (width<=360px){.app,.calendar-panel{padding-inline:12px}.period{gap:2px}.preview-date{width:30px}.date-heading h2{font-size:18px}}.inline-input input:focus-visible{border-bottom:2px solid var(--activity-4);outline:none}.draft .inline-input{margin-left:4px}.todo-row .todo-actions{align-items:center;height:36px}.sortable-row{transition:transform .18s cubic-bezier(.22,1,.36,1);position:relative}.sort-active{outline:1px solid var(--activity-2);cursor:grabbing;background:#fff;border-radius:8px;box-shadow:0 6px 18px #27303f20}.uncategorized-drop{color:#737a86;border:1px dashed #c9ced6;border-radius:8px}.todo-name{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.todo-actions{width:68px;transform:translateX(calc(72px + var(--swipe-offset,0px)));pointer-events:none;transition:transform .22s cubic-bezier(.22,1,.36,1)}.swiped .todo-actions{pointer-events:auto}.is-moving .todo-actions{pointer-events:none;transition:none}.sort-active .todo-actions{visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:reduce){.sortable-row,.todo-main,.todo-actions{transition:none}}.drag-handle{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:36px;height:36px}.drag-handle img{pointer-events:none}.todo-row.drop-before:before,.todo-row.drop-after:after{content:"";background:var(--activity-4);z-index:4;pointer-events:none;border-radius:2px;height:2px;position:absolute;left:36px;right:8px}.todo-row.drop-before:before{top:0}.todo-row.drop-after:after{bottom:0}.category.drop-category{background:var(--activity-1);box-shadow:inset 0 0 0 2px var(--activity-3)}.standalone-drop-gap.active{background:var(--activity-4);border-radius:3px;height:3px}.login-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:85dvh;display:flex}.google-login{color:#777;background:#fff;border:1px solid #ddd;border-radius:12px;padding:14px 32px}.login-screen p,.login-screen a{font-size:13px}.cloud-status{color:#69756d;text-align:center;margin:16px 0;font-size:12px}.cloud-conflict{margin-top:16px;font-size:13px}.cloud-conflict button,.settings-card>button{background:#fff;border:1px solid #d9dfda;border-radius:10px;margin:8px 8px 0 0;padding:10px 14px}.cloud-conflict li{margin:6px 0}.date-cell{justify-content:center;align-items:center;display:flex}.grass button.selected{outline:1.5px solid var(--activity-4);outline-offset:1px}.grass button.selected[style*=activity-4]{box-shadow:0 0 0 1.5px var(--activity-4);outline-color:#fff}.standalone-todos{border-bottom:1px solid #e3e6eb;padding:0 4px 8px}.uncategorized-drop{color:#737a86;border:1px dashed #c9ced6;border-radius:8px;place-items:center;min-height:32px;font-size:12px;display:grid}.date-heading .round{flex:0 0 28px;margin-left:auto}.date-heading .subtle{flex:0 0 28px}.standalone-drop-gap{border-radius:4px;height:8px;margin:-4px 0}.categories>.todo-row{margin-inline:4px}.category-drag-name{text-align:left;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:pan-y;cursor:grab}.category{flex-shrink:0;overflow:visible}.category:has(.todo-row.sort-active){z-index:4;position:relative}.category.drop-category-before:before,.category.drop-category-after:after{content:"";background:var(--activity-4);z-index:5;pointer-events:none;border-radius:3px;height:3px;position:absolute;left:12px;right:12px}.category.drop-category-before:before{top:-8px}.category.drop-category-after:after{bottom:-8px}@media (width>=600px){body{background:#f7f8fa}.app{background:#fff;border-inline:1px solid #e3e6eb;width:100%;max-width:none;padding:24px 32px 48px}}@media (width>=1024px){.app{background:#fff;border:0;gap:24px;max-width:1440px;margin:0 auto;padding:32px}.page-planner .main-header{flex-shrink:0;height:44px}.page-planner .main-header h1,.page-planner .main-header>.icon-button{display:none}.page-planner .main-header>.muted{color:#27303f;font-size:20px;font-weight:500;line-height:28px}.planner-content{grid-template-columns:minmax(320px,350px) minmax(0,1fr);align-items:start;gap:24px;min-width:0;display:grid}.day-detail{flex-direction:column;gap:12px;min-width:0;display:flex}.calendar-panel{min-width:0;padding:12px 16px}.categories{min-width:0}.page-categories .category-editor,.page-settings .profile,.page-settings .settings-card{max-width:800px}}@media (width<=1023px){.planner-content,.day-detail{flex-direction:column;gap:16px;min-width:0;display:flex}.date-heading{min-height:44px}}.desktop-period,.desktop-year,.context-calendar,.desktop-add-task,.planner-save-status,.week-day{display:none}@media (width>=1024px){body:has(.page-planner){background:#fff}.app.page-planner{gap:24px;max-width:1200px;padding:40px}.page-planner .main-header{gap:16px;height:44px}.page-planner .main-header>.muted{margin-right:auto;font-size:28px;line-height:38px}.page-planner .main-header>.icon-button{background:#f7f8fa;border-radius:22px;margin-left:0;display:inline-flex}.planner-save-status{color:#737a86;align-items:center;gap:8px;margin-right:16px;font-size:12px;display:flex}.planner-save-status:before{content:"";background:var(--activity-4);border-radius:50%;width:6px;height:6px}.desktop-period{align-items:center;gap:12px;height:44px;display:flex}.desktop-period>h2{margin-right:auto;font-size:20px;line-height:28px}.period-controls{align-items:center;gap:12px;display:flex}.period-controls .icon-button,.today-button{color:#737a86;background:#f7f8fa;border-radius:8px;height:36px}.today-button{width:56px;font-size:12px}.view-tabs{background:#f7f8fa;border-radius:10px;gap:3px;width:190px;height:40px;padding:4px;display:flex}.view-tabs button{color:#737a86;border-radius:7px;flex:1;min-width:0;font-size:12px}.view-tabs button[aria-pressed=true]{color:var(--activity-4);background:#fff}.planner-content{grid-template-columns:minmax(0,700fr) minmax(0,396fr);align-items:start;gap:24px}.primary-calendar{border-radius:12px;grid-column:1/-1;padding:12px}.primary-calendar>.period{display:none}.planner-view-week .primary-calendar .date-grid{gap:8px}.planner-view-week .primary-calendar .date-cell{flex-direction:column;gap:6px;height:68px}.planner-view-week .primary-calendar .week-day{font-size:12px;display:block}.planner-view-week .primary-calendar .date-cell>span:last-child{font-size:20px}.day-detail{gap:10px}.date-heading{height:44px;margin-bottom:0}.date-heading h2{margin-right:auto;font-size:24px}.desktop-add-task{color:#fff;background:var(--activity-4);border-radius:12px;order:3;height:44px;padding:0 24px;font-size:14px;display:block}.date-heading .mobile-add-task{display:none}.date-heading .subtle{order:2;margin-right:8px}.categories{gap:10px}.categories>.todo-row{background:#fff;border:1px solid #e3e6eb;border-radius:12px;height:56px;margin-inline:0;padding:10px 12px}.context-calendar{background:#fff;border-radius:12px;gap:16px;padding:16px 20px;display:flex}.context-calendar .period>span{font-size:16px}.context-weekdays{text-align:center;color:#737a86;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;font-size:12px;display:grid}.context-calendar .date-cell{height:36px;background:#fff!important}.context-calendar .date-cell.level-4{background:var(--activity-4)!important}.context-calendar .date-cell.level-1{background:var(--activity-1)!important}.context-calendar .date-cell.level-2{background:var(--activity-2)!important}.context-calendar .date-cell.level-3{background:var(--activity-3)!important}.context-calendar .date-cell.selected{outline:1.5px solid var(--activity-4);outline-offset:-1.5px}.context-calendar .date-cell.selected.level-4{box-shadow:0 0 0 1.5px var(--activity-4);outline-color:#fff}.planner-view-year .primary-calendar{background:#fff;height:170px;padding:14px 24px;overflow-x:auto}.mobile-year{display:none}.desktop-year{justify-content:center;min-width:898px;display:flex}.annual-grid{width:max-content}.annual-months{color:#3b4552;gap:3px;height:18px;margin-bottom:8px;font-size:12px;display:grid}.annual-months span{white-space:nowrap}.desktop-year .grass{gap:3px}.desktop-year .grass-column{grid-template-rows:repeat(7,14px);gap:3px}.desktop-year .grass button,.desktop-year .grass span{border-radius:3px;height:14px}.desktop-year .grass button.selected{outline:2px solid var(--activity-4);outline-offset:-2px}.planner-view-month .primary-calendar{grid-area:1/1}.planner-view-month .day-detail{grid-area:1/2}.planner-view-month .context-calendar{display:none}.planner-view-month .primary-calendar .date-cell{height:72px}.planner-view-month .date-heading{flex-wrap:wrap;height:auto;min-height:44px}.planner-view-week .primary-calendar{background:#fff}.planner-view-week .primary-calendar .date-cell{border-radius:8px;gap:4px}}.month-weekdays,.month-preview-grid{display:none}@media (width>=1024px){.planner-view-month .primary-calendar{background:#fff;gap:8px;padding:16px}.month-weekdays{text-align:center;color:#737a86;grid-template-columns:repeat(7,minmax(0,1fr));font-size:12px;line-height:18px;display:grid}.month-preview-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:0;display:grid}.month-preview-day,.month-preview-blank{min-width:0;height:104px}.month-preview-day{text-align:left;border-radius:8px;flex-direction:column;align-items:stretch;gap:8px;padding:8px;display:flex}.month-preview-day:hover{background:#f7f8fa}.month-preview-day.selected{background:var(--activity-1);outline:1.5px solid var(--activity-4);outline-offset:-1.5px}.month-day-number{font-size:14px;line-height:20px}.month-task-previews{flex-direction:column;gap:4px;min-width:0;display:flex}.month-task-preview{align-items:center;gap:4px;min-width:0;font-size:10px;line-height:14px;display:flex}.month-task-preview>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.month-task-dot{background:#a1a7af;border-radius:1px;flex-shrink:0;width:4px;height:4px}.month-task-preview.done .month-task-dot{background:var(--activity-4)}.month-task-preview.done{color:#737a86}.month-task-more{color:var(--activity-4);font-size:10px;line-height:14px}.mobile-month-grid{display:none}}@media (width>=600px){.app.page-settings{max-width:864px;margin-inline:auto}.page-settings>.subheader,.page-settings>.profile,.page-settings>.settings-card{width:100%;max-width:none}}.app.login-screen{background:#fff;border:0;justify-content:flex-start;align-items:stretch;gap:16px;width:100%;max-width:390px;min-height:100svh;padding:40px 24px 32px}.login-hero{text-align:center;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:20px;min-height:420px;display:flex}.login-hero h1{font-size:28px;font-weight:500;line-height:38px}.login-hero p{color:#737a86;font-size:14px;line-height:22px}.login-app-icon{background:#000;border-radius:21px;flex-shrink:0;width:88px;height:88px;position:relative;overflow:hidden}.login-app-icon img{position:absolute;top:0;left:7.92px}.login-app-icon span{color:#fff;letter-spacing:2px;text-align:center;font-size:11px;font-weight:700;line-height:13.75px;position:absolute;top:59.81px;left:0;right:0}.login-actions{text-align:center;flex-direction:column;gap:16px;margin-top:auto;display:flex}.login-screen .google-login{color:#27303f;background:#fff;border:1px solid #d1d1d1;border-radius:10px;flex-shrink:0;width:100%;height:48px;padding:0 16px;font-size:14px}.login-screen .google-login:disabled{opacity:.5}.login-screen .login-hint{color:#737a86;font-size:12px;line-height:22px}.login-error{color:#b6413a;background:#fbedec;border-radius:12px;padding:16px;line-height:20px;font-size:12px!important}.login-screen .login-preview-link{color:#737a86;font-size:11px}.account-entry{text-align:left;width:100%}.app.page-account{background:#fff;border:0;gap:20px;width:100%;max-width:390px;min-height:100svh;padding:24px 20px 32px}.page-account .subheader{height:44px;margin:0}.account-profile{border-radius:16px;align-items:center;gap:16px;min-height:100px;padding:20px 16px;display:flex}.account-profile .avatar img{width:24px;height:24px}.account-email{overflow-wrap:anywhere;border-radius:16px;flex-direction:column;gap:8px;min-height:92px;padding:16px;display:flex}.account-connection{border:0;flex-direction:column;gap:8px;min-height:80px;padding:12px 16px;display:flex}.account-connection button{text-align:left;color:#737a86;font-size:12px;line-height:22px}.account-logout{background:#fff;border:1px solid #e3e6eb;border-radius:12px;width:100%;min-height:48px;margin-top:auto}.first-use{flex-direction:column;gap:12px;padding:24px 0;display:flex}.first-use h3{font-size:18px;font-weight:400;line-height:24px}.first-use p{font-size:14px;line-height:24px}.first-use button{border-radius:10px;width:100%;height:48px;font-size:14px}.first-use-primary{background:var(--activity-4);color:#fff}.first-use-secondary{background:#fff;border:1px solid #d1d1d1}@media (width>=600px){:is(body:has(.login-screen),body:has(.page-account)){background:#fff}}@media (height<=650px){.login-hero{min-height:300px}}:is(body:has(.page-settings),body:has(.page-sync),body:has(.page-connections)){background:#fff}.app.page-settings{border:0;gap:20px;padding:24px 20px 32px}.page-settings .subheader{height:44px;margin:0}.page-settings .account-entry{border-radius:12px;gap:16px;height:82px;padding:16px}.account-entry>span:last-child{flex-direction:column;gap:0;display:flex}.settings-account-title{font-size:20px;font-weight:500;line-height:28px}.page-settings .settings-card{margin:0;padding:16px}.settings-sync-card{min-height:124px;gap:8px!important}.settings-sync-card>p{font-size:12px;line-height:22px}.settings-sync-entry{justify-content:space-between;align-items:center;width:100%;height:36px;display:flex;background:0 0!important;border:0!important;margin:0!important;padding:0!important}.settings-sync-entry>span:first-child{font-size:12px}.settings-sync-entry>span:last-child{align-items:center;gap:8px;display:flex}.settings-menu{text-align:left;color:#27303f;background:#f7f8fa;border-radius:10px;justify-content:space-between;align-items:center;min-height:48px;padding:12px;text-decoration:none;display:flex}.settings-menu>img{flex-shrink:0;width:20px;height:20px}.settings-sync-entry img{width:20px;height:20px}.page-settings .ai-entry{width:100%;min-height:64px;padding:16px;font-size:16px;font-weight:500}.theme-card{min-height:231px;gap:16px!important}.theme-card .swatches{gap:8px}.theme-card .swatches button{background:#fff;border:1px solid #e3e6eb;border-radius:10px;justify-content:center;gap:8px;height:76px;padding:0}.theme-card .swatches button[aria-pressed=true]{border:1.5px solid var(--activity-4)}.theme-card .swatch{justify-content:center;align-items:center;margin:0;display:flex}.theme-card .swatch img{width:14px;height:14px}.theme-card .preview{gap:6px;min-height:71px}.theme-card .preview>div{height:28px}.theme-card .preview-date{width:24px;height:28px}.preview-complete{color:var(--activity-4)}.app.page-sync,.app.page-connections{background:#fff;border:0;gap:16px;width:100%;max-width:430px;padding:24px 20px 32px}.page-sync .subheader,.page-connections .subheader{height:44px;margin:0}.sync-account{overflow-wrap:anywhere;flex-direction:column;gap:6px;min-height:120px;padding:8px 0 12px;display:flex}.sync-caption,.sync-connection{font-size:12px;line-height:22px}.sync-account h3{font-size:18px;line-height:28px}.sync-connection.connected{color:var(--activity-4)}.sync-divider{border:0;border-top:1px solid #e3e6eb;width:100%;margin:0}.sync-scope{flex-direction:column;gap:8px;min-height:174px;padding:4px 0 16px;display:flex}.sync-scope h3{color:#737a86;font-size:14px;line-height:22px}.sync-scope h4{margin:0;font-size:14px;font-weight:500;line-height:22px}.sync-scope p{color:#737a86;margin:0;font-size:12px;line-height:22px}.sync-primary{background:var(--activity-4);color:#fff;border-radius:10px;width:100%;height:48px;font-size:14px}.sync-primary:disabled{opacity:.5}.sync-result{color:#737a86;font-size:12px;line-height:20px}.sync-logout{color:#737a86;width:100%;height:44px;margin-top:16px;font-size:14px}.ai-guide{flex-direction:column;gap:16px;padding:20px;line-height:24px;display:flex}.ai-guide h4{margin:0}.ai-guide ol{margin:0;padding-left:20px}.ai-guide li+li{margin-top:8px}@media (width>=600px){.app.page-settings{max-width:864px;min-height:100svh;padding:32px}.app.page-sync,.app.page-connections{max-width:560px;min-height:100svh;padding:32px}}.page-settings .profile .icon{width:24px;height:24px}.ai-copy-prompt{background:var(--activity-4,#1d6b41);color:#fff;border-radius:12px;padding:14px 20px;font-weight:500}.ai-prompt-text{box-sizing:border-box;resize:vertical;width:100%;font:inherit;color:#27303f;background:#fff;border:1px solid #dce1e7;border-radius:8px;margin-top:12px;padding:12px;line-height:1.6;display:block}.ai-guide summary{cursor:pointer}.ai-guide a{color:var(--activity-4,#1d6b41)}.ai-connect-panel{background:#fff;border:1px solid #e7ece8;border-radius:24px;padding:32px;box-shadow:0 12px 40px #173f2410}.ai-connect-hero{text-align:center;flex-direction:column;align-items:center;margin-bottom:28px;display:flex}.ai-connect-mark{width:64px;height:64px;color:var(--activity-4,#1d6b41);background:#edf5ee;border-radius:20px;place-items:center;margin-bottom:20px;display:grid}.ai-connect-mark svg{width:32px;height:32px}.ai-connect-label{letter-spacing:.03em;color:#68766d;margin-bottom:10px;font-size:12px}.ai-connect-hero h3{letter-spacing:-.6px;font-size:24px;font-weight:500;line-height:34px}.ai-connect-hero p{color:#737d77;margin-top:10px;font-size:13px;line-height:22px}.ai-connect-panel .ai-copy-prompt{border-radius:14px;justify-content:center;align-items:center;gap:9px;width:100%;height:52px;padding:0;font-size:14px;text-decoration:none;display:flex}.ai-copy-prompt svg{width:19px;height:19px}.ai-connect-steps{border-top:1px solid #edf0ed;flex-direction:column;gap:24px;margin:30px 0 0;padding:26px 0 0;list-style:none;display:flex}.ai-connect-steps li{align-items:center;gap:14px;display:flex}.ai-step-number{color:#6b7a70;border:1px solid #e4eae5;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.ai-connect-steps h4{margin:0;font-size:14px;font-weight:500;line-height:22px}.ai-connect-steps p{color:#7c867f;margin-top:3px;font-size:12px;line-height:20px}.ai-copy-fallback{color:#737d77;margin-top:20px;font-size:12px}.ai-connect-panel:focus-within{outline-offset:4px}@media (width<=599px){.ai-connect-panel{padding:28px 22px}.ai-connect-hero h3{font-size:22px}}.app.page-settings{border:0;gap:22px;max-width:430px;padding:28px 20px 40px}.page-settings .settings-header{gap:12px;height:44px;min-height:44px;margin:0}.settings-header h2{font-size:22px;font-weight:500;line-height:32px}.settings-back{flex-shrink:0;place-items:center;width:8px;height:44px;font-size:24px;line-height:32px;display:grid}.settings-group,.page-settings .theme-card{background:#fff;border:1px solid #e3e6eb;border-radius:24px;width:100%;box-shadow:0 12px 40px #173f240f}.settings-group{flex-direction:column;gap:20px;padding:24px 22px;display:flex}.settings-row{text-align:left;border-radius:10px;flex-shrink:0;align-items:center;gap:14px;width:100%;min-width:0;height:58px;display:flex;position:relative}.settings-row+.settings-row{margin-top:21px}.settings-row+.settings-row:before{content:"";background:#e3e6eb;height:1px;position:absolute;top:-21px;left:0;right:0}.settings-row:hover{background:#f7faf7}.settings-row-icon{background:var(--activity-1,#d7e9d1);border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.settings-row-icon img{width:24px;height:24px}.settings-row-content{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.settings-row-title{min-height:27px;font-size:15px;font-weight:500;line-height:24px}.settings-row-description{color:#737a86;min-height:23px;font-size:12px;line-height:20px}.settings-row-description.connected{color:var(--activity-4)}.settings-row-chevron{color:#737a86;flex-shrink:0;width:20px;font-size:24px;line-height:39px}.page-settings .theme-card{min-height:259px;margin:0;padding:24px 22px;gap:18px!important}.page-settings .theme-card h3{font-size:16px;font-weight:500;line-height:26px}.page-settings .swatches button{color:#737a86}.page-settings .swatch{position:relative}.page-settings .swatch img.settings-swatch-color{width:24px;height:24px}.page-settings .swatch img.settings-swatch-check{width:14px;height:14px;position:absolute;top:5px;left:5px}.page-settings .theme-card .preview{gap:6px;height:71px;min-height:71px;padding:8px}.page-settings .theme-card .preview>.muted{line-height:22px}.page-settings .preview-complete{font-size:12px;line-height:22px}@media (width>=600px){.app.page-settings{max-width:864px;padding:28px 32px 40px}.settings-group,.page-settings .theme-card{padding-left:24px;padding-right:24px}.page-settings .theme-card{min-height:254px}.page-settings .theme-card .preview{height:66px;min-height:66px}}.login-app-icon{box-shadow:none!important;background:0 0!important;border:0!important}.login-app-icon img{width:88px!important;height:88px!important}.login-policy{color:#737a86;text-align:center;font-size:11px;line-height:20px}.login-policy a{color:inherit;text-decoration:none}.login-policy a:hover{text-decoration:underline}.page-planner .planner-brand{flex-shrink:0;align-items:center;gap:12px;margin-right:auto;display:flex}.page-planner .planner-logo{flex-shrink:0;width:36px;height:36px;display:block}.page-planner .planner-brand h1{color:#27303f;margin:0;font-size:22px;font-weight:500;line-height:32px;display:block}@media (width>=1024px){.page-planner .planner-logo{width:40px;height:40px}.page-planner .planner-brand h1{font-size:28px;line-height:38px}}.page-settings .preview-date{flex:1;width:auto;min-width:0;font-size:11px}.page-settings .preview>div{gap:4px}.app.page-account,.app.page-sync,.app.page-connections{background:#fff;border:0;gap:22px;width:100%;max-width:430px;padding:28px 20px 40px}.page-account .settings-header,.page-sync .settings-header,.page-connections .settings-header{gap:12px;height:44px;min-height:44px;margin:0}.page-account .card,.page-sync .settings-group{background:#fff;border:1px solid #e3e6eb;border-radius:24px;padding:24px 22px;box-shadow:0 12px 40px #173f240f}.page-account .account-profile{align-items:center;gap:16px;min-height:116px;display:flex}.page-account .account-profile .avatar{background:var(--activity-1);border-radius:18px;place-items:center;width:56px;height:56px;display:grid}.page-account .account-profile .avatar img{width:28px;height:28px}.page-account .account-profile>div{min-width:0}.page-account .account-profile h2{overflow-wrap:anywhere;font-size:20px;line-height:30px}.page-account .account-profile p{margin-top:4px}.page-account .account-email{flex-direction:column;gap:8px;display:flex}.page-account .account-email p{overflow-wrap:anywhere;font-size:15px;line-height:24px}.page-account .account-connection{flex-direction:column;gap:10px;display:flex}.page-account .account-connection p{color:var(--activity-4);font-size:15px}.page-account .account-connection button{color:#737a86;text-align:left;font-size:12px;line-height:22px}.page-account .account-data-link{color:#737a86;padding:0 8px;font-size:13px;line-height:24px;text-decoration:none}.page-account .account-logout,.page-sync .sync-logout{color:#737a86;background:#f7f8fa;border:1px solid #e3e6eb;border-radius:14px;width:100%;min-height:48px;margin:0}.page-sync .sync-account{gap:8px;min-height:0}.page-sync .sync-caption{color:#737a86}.page-sync .sync-account h3{overflow-wrap:anywhere;font-size:18px;line-height:28px}.page-sync .sync-scope{gap:10px;min-height:0}.page-sync .sync-scope h3{color:#27303f;margin-bottom:6px;font-size:16px;line-height:26px}.page-sync .sync-scope h4{font-size:15px;line-height:24px}.page-sync .sync-scope p{line-height:22px}.page-sync .sync-scope h4:not(:first-of-type){border-top:1px solid #e3e6eb;margin-top:8px;padding-top:18px}.page-sync .sync-primary{border-radius:14px;height:52px}.page-sync .sync-reconnect{color:#27303f;border:1px solid #e3e6eb;border-radius:14px;justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:14px 20px;font-size:14px;text-decoration:none;display:flex}.page-sync .sync-reconnect img{width:20px;height:20px}@media (width>=600px){.app.page-account,.app.page-sync,.app.page-connections{max-width:864px;padding:28px 32px 40px}.page-account .card,.page-sync .settings-group{padding:24px}}.bottom-dock{z-index:20;left:50%;bottom:max(12px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffef;border:1px solid #e3e6eb;border-radius:32px;align-items:center;gap:8px;width:228px;height:64px;padding:7px 8px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #2630401f}.bottom-dock a{color:#737a86;white-space:nowrap;border-radius:24px;flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:48px;height:48px;text-decoration:none;display:flex}.bottom-dock a.active{background:var(--activity-4,#1d6b41);color:#fff;width:154px}.bottom-dock img{width:24px;height:24px}.bottom-dock a.active img{filter:brightness(0)invert()}.bottom-dock a:not(.active) img{filter:brightness(0);opacity:.53}.page-planner{padding-bottom:108px!important}.projects-page{--activity-4:#1d6b41;--activity-1:#d7e9d1;--activity-0:#eef0f4;background:#fff;flex-direction:column;gap:20px;width:100%;max-width:1160px;min-height:100svh;margin:0 auto;padding:20px 20px 110px;display:flex}body:has(.projects-page){background:#fff}.project-header{flex-shrink:0;align-items:center;gap:12px;height:44px;display:flex}.project-header h1,.project-header h2{flex:1;min-width:0}.project-tool{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:24px;display:inline-flex}.project-tool img{max-width:24px;display:block}.project-tool:hover{background:#f7f8fa}.project-header>.icon-project-back{width:24px}.project-tabs{gap:8px;display:flex}.project-tabs button{color:#737a86;border-radius:8px;min-width:72px;height:36px;padding:0 16px}.project-tabs button[aria-selected=true]{background:var(--activity-1);color:var(--activity-4)}.project-card-grid{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.project-card{border:1px solid #e3e6eb;border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:16px;display:flex}.project-card-title{text-align:left;align-items:flex-start;gap:10px;width:100%;display:flex}.project-card-title h3{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:500;overflow:hidden}.project-card-title>div{text-align:right;width:62px;color:var(--activity-4);flex-direction:column;gap:4px;display:flex}.project-card-title small{color:#737a86;white-space:nowrap;font-size:12px;line-height:18px}.project-card{cursor:pointer}.project-card:focus-within{outline:1px solid var(--activity-4);outline-offset:2px}.project-unassigned{border:1px solid #e3e6eb;border-radius:12px;order:0;padding:16px}.project-task-squares{flex-wrap:wrap;gap:5px;display:flex}.project-task-squares span{background:var(--activity-0);border-radius:3px;flex-shrink:0;width:16px;height:16px}.project-task-squares span.done{background:var(--activity-4)}.project-expand{width:100%;height:36px;color:var(--activity-4);font-size:12px}.project-empty{text-align:center;flex-direction:column;align-items:center;gap:16px;margin:auto;padding:40px 0;display:flex}.project-empty p,.project-empty-copy{color:#737a86;line-height:22px}.project-local-note{color:#737a86;margin-top:auto;padding-top:24px;font-size:12px;line-height:18px}.project-summary{align-items:flex-start;gap:8px;display:flex}.project-summary h2{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:20px;overflow:hidden}.project-summary>div{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;width:72px;display:flex}.project-summary strong{color:var(--activity-4);font-size:20px;font-weight:500;line-height:28px}.project-summary span{color:#737a86;font-size:12px;line-height:18px}.project-summary small{color:#737a86;white-space:nowrap;font-size:10px;line-height:14px}.project-detail-columns{flex-direction:column;gap:20px;display:flex}.project-activity{border:1px solid #e3e6eb;border-radius:12px;order:0;min-width:0;padding:12px 19px}.project-activity>header,.project-task-panel>header{justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.project-activity>header>button{color:#737a86;min-height:36px;font-size:12px}.project-day-grid{overscroll-behavior:contain;scrollbar-gutter:auto;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:5px;max-height:240px;margin-top:12px;display:grid;overflow-y:auto}.project-day-grid button{aspect-ratio:1;border-radius:4px;min-height:40px;max-height:46px;font-size:13px}.project-day-grid .selected{outline:1.5px solid var(--activity-4);outline-offset:-1.5px}.project-task-panel{flex-direction:column;order:1;gap:8px;min-width:0;display:flex}.add-task{color:var(--activity-4);min-height:36px}.project-task-row{align-items:center;gap:4px;min-height:36px;display:flex}.project-task-name{text-align:left;overflow-wrap:anywhere;flex:1;min-width:0;line-height:22px}.project-task-row small{color:#737a86;flex-shrink:0;margin-left:8px;font-size:12px}.project-task-row.is-complete .project-task-name{color:#737a86;text-decoration:line-through}.completed-disclosure{color:#737a86;justify-content:space-between;min-height:36px;margin-top:12px;font-size:12px;display:flex}.project-empty-copy{padding:20px 0;font-size:12px}.day-filter{color:var(--activity-4);align-self:flex-start;min-height:32px;font-size:12px}.project-menu-anchor{position:relative}.project-menu{z-index:32;background:#fff;border:1px solid #e3e6eb;border-radius:12px;flex-direction:column;width:238px;padding:8px;display:flex;position:absolute;top:48px;right:0;box-shadow:0 8px 28px #27303f1a}.project-menu button{text-align:left;border-radius:8px;height:44px;padding:0 12px}.project-menu button:hover{background:#f7f8fa}.menu-dismiss{z-index:31;cursor:default;position:fixed;inset:0}.delete-text,.project-summary .delete-text{color:#c22e2e!important}.project-overdue{background:#fff5f2;border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.project-overdue>div{flex:1}.project-overdue strong{color:#c22e2e;font-weight:500}.project-overdue p{color:#737a86;margin-top:4px;font-size:12px;line-height:18px}.project-overdue button{color:#c22e2e;background:#fff;border:1px solid #c22e2e;border-radius:8px;flex-shrink:0;padding:8px 12px}.project-form-page{max-width:430px;padding-bottom:max(24px,env(safe-area-inset-bottom));gap:16px}.project-form-content{flex-direction:column;gap:16px;display:flex}.project-form-footer{background:#fff;margin-top:auto;padding-top:8px;position:sticky;bottom:0}.project-form-footer>button{width:100%}.project-field{color:#737a86;flex-direction:column;gap:8px;font-size:12px;line-height:18px;display:flex}.project-field input,.project-field textarea,.project-category-row input,.category-new-form input{color:#27303f;background:#fff;border:1px solid #e3e6eb;border-radius:8px;width:100%;padding:12px 16px;font-size:14px;line-height:22px}.project-field input{height:48px}.project-field textarea{resize:vertical;height:82px;font-family:inherit}.project-date-field{color:#27303f;text-align:left;border:1px solid #e3e6eb;border-radius:8px;align-items:center;gap:12px;height:48px;padding:12px;font-size:14px;display:flex}.project-date-field span{flex:1}.project-date-field img{width:20px;height:20px}.project-option{color:#737a86;text-align:left;justify-content:space-between;align-items:center;gap:12px;min-height:48px;font-size:14px;display:flex}.project-option span{color:#27303f;text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:72%;overflow:hidden}.form-error{color:#c22e2e;font-size:12px;line-height:18px}.projects-page .primary,.project-popup .primary{background:var(--activity-4,#1d6b41);color:#fff;border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:0 16px;display:flex}.projects-page .secondary,.project-popup .secondary{background:#fff;border:1px solid #e3e6eb;border-radius:12px;min-height:48px;padding:0 16px}.project-popup .destructive{color:#fff;background:#c22e2e;border-radius:8px;height:44px;padding:0 16px}.project-popup button:disabled,.projects-page button:disabled{opacity:.5}.full-width{width:100%}.project-popup{color:#27303f;background:#fff;border:1px solid #e3e6eb;border-radius:16px;width:min(390px,100vw - 32px);max-height:calc(100svh - 32px);margin:auto;padding:20px;font-family:inherit;position:fixed;inset:0;overflow:auto;box-shadow:0 20px 60px #27303f26}.project-popup[open]{flex-direction:column;gap:16px;display:flex}.project-popup::backdrop{background:#27303f44}.project-popup>header{flex-shrink:0;align-items:center;gap:8px;min-height:44px;display:flex}.project-popup>header h2{flex:1;font-size:20px}.project-popup>header>button{font-size:24px}.project-popup .project-field{flex-shrink:0}.project-actions{gap:8px;display:flex}.project-actions>button{flex:1;min-width:0;min-height:44px}.popup-copy{text-align:center;color:#737a86;font-size:14px;line-height:22px}.project-popup:has(.popup-copy)>header h2{text-align:center;font-size:16px}.project-month{justify-content:space-between;align-items:center;display:flex}.project-date-grid{grid-template-columns:repeat(7,36px);justify-content:space-between;row-gap:6px;display:grid}.project-date-grid>button{border-radius:4px;height:36px;font-size:12px}.project-date-grid .weekday{text-align:center;color:#737a86;font-size:12px;line-height:18px}.project-date-grid .selected{background:var(--activity-1,#d7e9d1);color:var(--activity-4,#1d6b41)}.project-complete-field{align-items:center;gap:12px;min-height:36px;display:flex}.project-complete-field input{accent-color:var(--activity-4);width:16px;height:16px}.project-more-details{color:#737a86;align-self:flex-start;min-height:36px;font-size:12px}.project-choices{flex-direction:column;gap:12px;display:flex}.project-choices button{text-align:left;border:1px solid #e3e6eb;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:12px 16px;display:flex}.project-choices button[aria-checked=true]{background:var(--activity-1,#d7e9d1);color:var(--activity-4,#1d6b41)}.project-category-list{flex-direction:column;gap:12px;display:flex}.project-category-row{background:#f7f8fa;border-radius:8px;align-items:center;gap:4px;padding:8px;display:flex}.project-category-row>span,.project-category-row>input{flex:1;min-width:0}.project-category-row>button{flex-shrink:0;min-width:24px;min-height:44px}.project-category-row>.project-tool{width:36px}.category-new-form{gap:8px;display:flex}.category-new-form input{flex:1;min-width:0}.project-activity>header>button,.add-task{min-height:24px}.project-day-grid{margin-top:16px}.project-category-row .icon-pencil{background:var(--activity-1,#d7e9d1)}.project-category-row .icon-project-trash{background:#fbedec}@media (width<=767px){.project-sheet{width:min(430px,100vw);max-height:90svh;padding-bottom:max(24px,env(safe-area-inset-bottom));border-radius:20px 20px 0 0;margin:0;inset:auto auto 0 50%;transform:translate(-50%)}.project-popup-full{border:0;border-radius:0;width:100vw;min-height:100svh;max-height:100svh;margin:0;inset:0}.project-popup-full>.full-width{margin-top:auto}.project-popup-full .project-field textarea{resize:none}}@media (width>=768px){.projects-page{padding:28px 28px 110px}.project-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-card{min-height:176px}.project-detail{gap:24px;max-width:896px;padding-inline:64px}.project-summary{gap:16px}.project-summary h2{font-size:24px;line-height:40px}.project-summary>div{width:104px}.project-summary strong{font-size:24px;line-height:32px}.project-summary small{font-size:12px;line-height:18px}.project-task-panel{border:1px solid #e3e6eb;border-radius:12px;padding:20px}.project-detail-columns{gap:24px}.project-form-page{max-width:480px;padding:28px 28px 24px}}@media (width>=1200px){.projects-page{padding:40px 20px 110px}.project-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-detail{max-width:1160px}.project-summary h2{font-size:28px}.project-detail-columns{grid-template-columns:minmax(0,700fr) minmax(0,396fr);align-items:start;display:grid}.project-task-panel{order:0}.project-activity{order:1}.project-form-page{max-width:480px;padding:28px 28px 24px}}@media (prefers-reduced-motion:reduce){.bottom-dock{scroll-behavior:auto}}.project-sync-notice{z-index:25;text-align:center;background:#f7f8fa;border:1px solid #e3e6eb;border-radius:12px;width:390px;max-width:calc(100vw - 32px);padding:12px 16px;font-size:12px;position:fixed;bottom:88px;left:50%;transform:translate(-50%)}.bottom-dock{z-index:40;bottom:calc(12px + env(safe-area-inset-bottom));isolation:isolate}.bottom-dock a{touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative}.bottom-dock a img,.bottom-dock a span{pointer-events:none}.project-sync-notice{bottom:calc(100px + env(safe-area-inset-bottom));z-index:30}.project-sync-notice>div{justify-content:center;gap:16px;margin-top:8px;display:flex}.project-sync-notice button{min-height:36px;padding:0 12px;text-decoration:underline}.project-task-panel>header select{font:inherit;color:#737a86;background:#fff;border:1px solid #e3e6eb;border-radius:8px;min-height:36px;margin-left:auto;padding:6px 8px;font-size:12px}.day-filter{border:1px solid var(--activity-4);background:#fff;border-radius:8px;padding:6px 10px;line-height:20px}.task-sort{margin-left:auto;position:relative}.task-sort-trigger{color:#737a86;background:#fff;border:1px solid #e3e6eb;border-radius:8px;align-items:center;gap:6px;min-height:36px;padding:0 10px;font-size:12px;display:flex}.task-sort-trigger img{width:16px;height:16px;transform:rotate(180deg)}.task-sort-trigger[aria-expanded=true]{border-color:var(--activity-4);color:var(--activity-4)}.task-sort-menu{z-index:45;background:#fff;border:1px solid #e3e6eb;border-radius:12px;width:220px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 24px #27303f18}.task-sort-menu>button{text-align:left;border-radius:8px;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:0 10px;font-size:14px;display:flex}.task-sort-menu>button:hover{background:#f7f8fa}.task-sort-menu>button[aria-checked=true]{background:var(--activity-1);color:var(--activity-4)}.task-sort-menu>button img{background:var(--activity-4);border-radius:50%;width:14px;height:14px}.task-sort-menu p{color:#737a86;margin:6px 10px 8px;font-size:11px;line-height:18px}.activity-disclosure{align-items:center;gap:4px;min-height:36px;padding:0 4px;display:inline-flex}.activity-disclosure img,.completed-disclosure img{flex-shrink:0;width:20px;height:20px}.activity-disclosure img.is-collapsed,.completed-disclosure img.is-collapsed{transform:rotate(180deg)}.completed-disclosure{align-items:center}.project-header .planner-logo{flex-shrink:0;width:36px;height:36px;display:block}@media (width>=1024px){.project-header .planner-logo{width:40px;height:40px}}.project-local-note{text-align:center;width:100%}.haru-site{--haru-green:#1d6b41;--haru-ink:#223128;--haru-muted:#68776c;color:var(--haru-ink);background:#fff;line-height:1.7}.haru-site a{color:inherit;text-decoration:none}.haru-site a:focus-visible{outline-offset:5px;outline:2px solid #1d6b41}.haru-header{justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:28px 40px;display:flex}.haru-brand{align-items:center;gap:11px;font-size:19px;font-weight:700;line-height:1.3;display:flex}.haru-brand small{letter-spacing:1px;color:#68776c;margin-top:2px;font-size:10px;font-weight:400;display:block}.haru-header nav{align-items:center;gap:30px;font-size:13px;display:flex}.haru-small-button{background:#f1f6ef;border-radius:12px;gap:24px;padding:10px 18px;font-weight:500;display:flex}.haru-hero{grid-template-columns:1fr 1fr;align-items:center;gap:64px;max-width:1200px;margin:auto;padding:80px 40px 100px;display:grid}.haru-eyebrow{letter-spacing:.7px;color:#48734f;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.haru-eyebrow i{background:#70a765;border-radius:50%;width:7px;height:7px}.haru-hero h1{letter-spacing:-2.5px;margin:22px 0 14px;font-size:54px;font-weight:700;line-height:1.25}.haru-slogan{color:var(--haru-green);letter-spacing:-.5px;font-size:24px;font-weight:500}.haru-description{color:var(--haru-muted);margin-top:24px;font-size:16px;line-height:1.9}.haru-actions{align-items:center;gap:24px;margin-top:32px;font-size:12px;display:flex}.haru-primary{background:var(--haru-green);border-radius:14px;justify-content:center;align-items:center;gap:32px;min-height:52px;padding:15px 22px;font-size:14px;font-weight:500;display:inline-flex;color:#fff!important}.haru-primary:hover{background:#155532}.haru-beta{color:#7c887f;margin-top:15px;font-size:11px;display:block}.haru-preview{background:#fff;border:1px solid #dce7dc;border-radius:24px;margin:20px 0 60px;position:relative;box-shadow:0 24px 70px #24553717}.haru-preview-top{color:#7c887f;border-bottom:1px solid #e9eee8;justify-content:space-between;align-items:center;padding:18px 22px;font-size:11px;display:flex}.haru-preview-dots{letter-spacing:3px;color:#c4d2c0;font-size:8px}.haru-preview-body{padding:32px}.haru-preview-date>span{letter-spacing:2px;color:#8b9b8c;font-size:10px}.haru-preview-date h2{margin-top:7px;font-size:22px;font-weight:600}.haru-preview-date p{color:#8b9b8c;margin-top:4px;margin-bottom:28px;font-size:12px}.haru-demo-task{border-bottom:1px solid #edf1ec;align-items:center;gap:12px;padding:15px 0;font-size:13px;display:flex}.haru-demo-task small{color:#92a38e;margin-left:auto;font-size:9px}.haru-check{border:1.5px solid #afbea9;border-radius:6px;flex-shrink:0;width:18px;height:18px}.haru-check.done{color:#fff;text-align:center;background:#1d6b41;border-color:#1d6b41;font-size:12px;line-height:17px}.haru-demo-task:has(.done)>span:nth-child(2){color:#95a091;text-decoration:line-through}.haru-demo-task.new{background:#f1f7ed;border:0;border-radius:10px;margin:0 -12px;padding-left:12px;padding-right:12px}.haru-week{text-align:center;color:#97a391;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:28px;font-size:10px;display:grid}.haru-week b{color:#63705f;border-radius:8px;place-items:center;height:30px;margin-top:5px;font-weight:400;display:grid}.haru-week b.active{color:#fff;background:#1d6b41}.haru-chat{color:#fff;background:#223c2b;border-radius:18px;width:85%;padding:18px 22px;position:absolute;bottom:-55px;right:-18px;box-shadow:0 14px 35px #173f2425}.haru-chat-label{color:#b2c9ab;letter-spacing:1px;font-size:9px}.haru-chat p{margin:5px 0 12px;font-size:15px}.haru-chat>div{color:#d3e5cc;font-size:11px}.haru-chat>div span{background:#446449;border-radius:6px;place-items:center;width:20px;height:20px;margin-right:7px;display:inline-grid}.haru-connected{text-align:center;background:#f6f8f3;border-block:1px solid #edf1e8;padding:28px 24px}.haru-connected>span{color:#8b9888;font-size:11px}.haru-connected>div{flex-wrap:wrap;justify-content:center;align-items:center;gap:28px;margin-top:12px;font-size:14px;display:flex}.haru-connected i{color:#a0b39a;font-style:normal;font-weight:400}.haru-section{max-width:1200px;margin:auto;padding:100px 40px}.haru-section h2{letter-spacing:-1.3px;margin-top:16px;font-size:34px;font-weight:600;line-height:1.4}.haru-features{grid-template-columns:repeat(3,1fr);gap:30px;margin-top:44px;display:grid}.haru-features article{background:#f8faf6;border-radius:22px;padding:30px}.haru-feature-icon{color:#4f7650;background:#e7efdf;border-radius:13px;place-items:center;width:42px;height:42px;font-size:12px;display:grid}.haru-features h3{margin-top:22px;font-size:18px;font-weight:600}.haru-features p{color:#73806f;margin-top:12px;font-size:13px;line-height:1.9}.haru-steps{border:1px solid #e3eade;border-radius:26px;grid-template-columns:1fr 1fr;gap:60px;max-width:1120px;margin:0 auto 80px;padding:48px;display:grid}.haru-steps h2{max-width:300px;margin-top:16px;font-size:28px;font-weight:600;line-height:1.5}.haru-steps ol{flex-direction:column;gap:25px;margin:0;padding:0;list-style:none;display:flex}.haru-steps li{gap:18px;display:flex}.haru-steps li b{color:#58824f;background:#eef4e8;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:12px;font-weight:400;display:grid}.haru-steps h3{font-size:15px}.haru-steps li p{color:#7c8878;margin-top:3px;font-size:12px}.haru-roadmap{text-align:center;padding:0 24px 70px}.haru-roadmap h2{font-size:18px}.haru-roadmap p{color:#87917f;margin-top:12px;font-size:12px;line-height:1.9}.haru-final{text-align:center;background:#f1f6eb;padding:64px 24px}.haru-final>img{margin:0 auto 20px}.haru-final h2{letter-spacing:-1px;font-size:28px;font-weight:600}.haru-final p{color:#6e8467;margin:9px 0 24px;font-size:16px}.haru-footer{justify-content:space-between;align-items:center;gap:28px;max-width:1200px;margin:auto;padding:40px;display:flex}.haru-footer nav{color:#778471;flex-wrap:wrap;gap:20px;font-size:11px;display:flex}.haru-footer>small{color:#9aa391;font-size:10px}.haru-info{max-width:800px;margin:auto;padding:44px 30px 80px}.haru-info>a:first-child{color:#74836e;font-size:12px}.haru-info h1{margin:30px 0 40px;font-size:32px;font-weight:600;line-height:1.4}.haru-info section{margin-bottom:30px}.haru-info h2{margin-bottom:10px;font-size:18px}.haru-info p{color:#657360;overflow-wrap:anywhere;font-size:14px;line-height:2}@media (width<=900px){.haru-hero{gap:32px;padding-top:50px}.haru-hero h1{font-size:42px}.haru-actions{flex-direction:column;align-items:flex-start;gap:16px}.haru-preview-body{padding:24px}.haru-features{gap:16px}.haru-features article{padding:22px}.haru-steps{gap:24px;margin-left:24px;margin-right:24px;padding:32px}.haru-footer{flex-wrap:wrap}}@media (width<=640px){.haru-header{padding:22px 24px}.haru-header nav>a:first-child:not(.haru-small-button){display:none}.haru-brand{font-size:17px}.haru-small-button{padding:8px 14px;font-size:12px}.haru-hero{grid-template-columns:1fr;gap:40px;padding:36px 24px 64px}.haru-hero h1{letter-spacing:-2px;font-size:43px}.haru-slogan{font-size:21px}.haru-description{font-size:14px}.haru-actions{flex-direction:row;align-items:center;gap:16px;font-size:10px}.haru-primary{gap:20px;padding:14px 16px;font-size:12px}.haru-preview{margin:0 10px 45px 0}.haru-chat{right:-10px}.haru-connected>div{gap:12px;font-size:11px}.haru-section{padding:60px 24px}.haru-section h2{font-size:28px}.haru-features{grid-template-columns:1fr;gap:14px;margin-top:30px}.haru-features article{padding:24px}.haru-features h3{margin-top:16px}.haru-steps{grid-template-columns:1fr;gap:28px;margin-bottom:50px;padding:26px}.haru-steps h2,.haru-final h2{font-size:24px}.haru-footer{flex-direction:column;align-items:flex-start;gap:24px;padding:30px 24px}.haru-info{padding:30px 24px 60px}.haru-info h1{font-size:27px}}.haru-data-intro{margin:-20px 0 32px}.haru-data-options{gap:14px;display:grid}.haru-data-options article,.haru-delete-request{border:1px solid #e3eade;border-radius:20px;padding:24px}.haru-data-options article>span{color:#7d9275;letter-spacing:1px;font-size:11px}.haru-data-options h2{margin-top:8px}.haru-data-options article>a{color:#1d6b41;margin-top:12px;font-size:13px;font-weight:500;display:inline-block}.haru-delete-request fieldset{border:0;margin:24px 0;padding:0}.haru-delete-request legend{margin-bottom:14px;font-weight:500}.haru-delete-request label{cursor:pointer;background:#f5f8f1;border-radius:12px;align-items:flex-start;gap:12px;margin-top:10px;padding:16px;display:flex}.haru-delete-request input{accent-color:#1d6b41;flex-shrink:0;width:18px;height:18px;margin:3px 0 0}.haru-delete-request strong{font-size:14px;font-weight:500}.haru-delete-request small{color:#75826f;margin-top:4px;font-size:12px;line-height:1.7;display:block}.haru-data p.haru-delete-note{color:#7b725b;background:#faf7ee;border-radius:12px;padding:16px;font-size:12px}.haru-data-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px;font-size:13px;display:flex}.haru-data-actions button{color:#1d6b41}.haru-data-actions button:disabled{color:#9da696}.haru-primary.disabled{opacity:.4;cursor:default}.haru-data p.haru-data-caption{margin-top:12px;font-size:11px}.haru-delete-request details{color:#6c7c65;margin-top:20px;font-size:12px}.haru-delete-request summary{cursor:pointer}.haru-delete-request textarea{resize:vertical;color:#52654a;background:#fafcf8;border:1px solid #dae3d4;border-radius:12px;width:100%;margin-top:12px;padding:14px;font:12px/1.8 inherit}.haru-data-process ol{color:#63745b;padding-left:20px;font-size:13px;line-height:2.1}.haru-data-links{color:#1d6b41;overflow-wrap:anywhere;flex-wrap:wrap;gap:18px;font-size:12px;display:flex}.account-data-link{color:var(--activity-4,#1d6b41);padding:12px 0;font-size:13px;text-decoration:none}.haru-delete-request input:focus-visible,.haru-delete-request textarea:focus-visible,.haru-delete-request summary:focus-visible{outline-offset:4px;outline:2px solid #1d6b41}.haru-legal{max-width:1120px;margin:0 auto;padding:48px 40px 80px}.haru-legal-heading>a:first-child{color:#73816f;font-size:12px}.haru-legal-label{color:#698462;letter-spacing:1.6px;margin-top:35px;font-size:11px;display:block}.haru-legal-heading h1{letter-spacing:-1.4px;margin-top:14px;font-size:38px;font-weight:600;line-height:1.4}.haru-legal-heading>p{color:#6e7b69;max-width:680px;margin-top:16px;font-size:15px;line-height:1.9}.haru-legal-meta{color:#82917c;flex-wrap:wrap;gap:12px 24px;margin-top:24px;font-size:11px;display:flex}.haru-legal-meta>span:last-child{color:#5f7b54;background:#eef4e8;border-radius:6px;padding:3px 9px}.haru-legal-switch{color:#1d6b41;flex-wrap:wrap;gap:20px;margin:22px 0 38px;font-size:12px;display:flex}.haru-legal-layout{border-top:1px solid #e3eade;grid-template-columns:220px minmax(0,1fr);gap:56px;padding-top:38px;display:grid}.haru-legal-toc{flex-direction:column;align-self:start;gap:12px;padding-right:18px;display:flex;position:sticky;top:24px}.haru-legal-toc h2{margin-bottom:6px;font-size:13px;font-weight:500}.haru-legal-toc a{color:#788570;font-size:11px;line-height:1.7}.haru-legal-toc a:hover{color:#1d6b41;text-decoration:underline}.haru-legal-body>section{border-bottom:1px solid #edf1e8;margin-bottom:30px;padding-bottom:30px;scroll-margin-top:30px}.haru-legal-body h2{margin-bottom:18px;font-size:18px;font-weight:500;line-height:1.6}.haru-legal-body p{color:#596951;overflow-wrap:anywhere;margin-top:12px;font-size:13px;line-height:2}.haru-legal-number{color:#8b9983;margin-right:7px}.haru-legal-table{border:1px solid #e3eade;border-radius:12px;margin-top:24px;overflow-x:auto}.haru-legal-table table{border-collapse:collapse;text-align:left;color:#5f7056;width:100%;min-width:480px;font-size:12px}.haru-legal-table caption{text-align:left;color:#819076;background:#f8faf5;padding:14px 16px;font-size:11px}.haru-legal-table th,.haru-legal-table td{vertical-align:top;border-top:1px solid #e3eade;padding:14px 16px;line-height:1.8}.haru-legal-table th{color:#344b2c;font-weight:500}.haru-legal-table tbody th{min-width:96px}.haru-legal-source{margin-top:12px;font-size:11px;display:inline-block;color:#1d6b41!important}.haru-legal-contact{color:#607456;background:#f3f7ed;border-radius:18px;flex-direction:column;align-items:flex-start;gap:8px;padding:26px;font-size:12px;display:flex}.haru-legal-contact>span{color:#8b9b81;font-size:10px}.haru-legal-contact strong{font-size:16px;font-weight:500}.haru-legal-contact>a:last-child{color:#1d6b41;margin-top:10px}.haru-legal-toc a:focus-visible{outline-offset:3px;outline:2px solid #1d6b41}@media (width<=760px){.haru-legal{padding:30px 24px 60px}.haru-legal-heading h1{font-size:30px}.haru-legal-heading>p{font-size:13px}.haru-legal-layout{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:26px}.haru-legal-toc{background:#f8faf5;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;padding:20px;display:grid;position:static}.haru-legal-toc h2{grid-column:1/-1}.haru-legal-body h2{font-size:17px}.haru-legal-body p{font-size:13px}.haru-legal-body>section{margin-bottom:24px;padding-bottom:24px}}
