:root{--bg:#fff;--sidebar:#f7f7f5;--surface:#f5f5f3;--surface-hover:#efefec;--fg:#262624;--muted:#74736f;--faint:#a6a5a0;--line:#e9e9e6;--primary:#262624;--primary-fg:#fff;--primary-hover:#3a3a37;--scrim:#26262429;--danger:#d1453b;--radius:12px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#191919;--sidebar:#202020;--surface:#252525;--surface-hover:#2e2e2e;--fg:#ebebe9;--muted:#a19f9a;--faint:#6f6e6a;--line:#333331;--primary:#ebebe9;--primary-fg:#191919;--primary-hover:#d6d6d3;--scrim:#00000080;--danger:#ec6a5e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#191919;--sidebar:#202020;--surface:#252525;--surface-hover:#2e2e2e;--fg:#ebebe9;--muted:#a19f9a;--faint:#6f6e6a;--line:#333331;--primary:#ebebe9;--primary-fg:#191919;--primary-hover:#d6d6d3;--scrim:#00000080;--danger:#ec6a5e;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);min-height:100dvh;color:var(--fg);letter-spacing:.02em;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic UI,sans-serif;font-size:16px;line-height:1.6}body.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}button{font:inherit;letter-spacing:inherit;color:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--fg);outline-offset:2px}.app{max-width:640px;padding:calc(env(safe-area-inset-top) + 28px) max(20px, env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 172px) max(20px, env(safe-area-inset-left));margin:0 auto}@media (width>=860px){.app{max-width:1180px;padding:40px 40px 160px}}.top{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 24px -10px;display:flex}.top-nav{color:var(--fg)}.top-end{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.view-switch{background:var(--surface);border-radius:999px;flex:none;padding:3px;display:flex;position:relative}.view-switch:before{content:"";background:var(--bg);border-radius:999px;width:42px;transition:transform .22s cubic-bezier(.2,.8,.2,1);position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 3px #0000001f}.view-switch[data-view=projects]:before{transform:translate(42px)}.view-switch button{width:42px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;place-items:center;padding:0;transition:color .2s;display:grid;position:relative}.view-switch button[aria-pressed=true]{color:var(--fg)}@media (prefers-reduced-motion:reduce){.view-switch:before{transition:none}}.top-title-input{min-width:0;font:inherit;color:var(--fg);text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;outline:none;flex:1;padding:0;font-size:26px;font-weight:650;overflow:hidden}.top-title-input:focus-visible{box-shadow:0 0 0 2px var(--line)}.calendar-connect{display:flex}.calendar-connect-pill{background:var(--surface);border-radius:999px;align-items:center;height:34px;padding-right:3px;display:flex}.calendar-connect-main{height:100%;color:var(--fg);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:999px 0 0 999px;align-items:center;gap:7px;padding:0 4px 0 12px;font-size:13px;font-weight:600;display:flex}.calendar-connect-x{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;display:grid}@media (hover:hover){.calendar-connect-pill:hover{background:var(--surface-hover)}.calendar-connect-x:hover{color:var(--fg)}}.top-title{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:650}.icon-button{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;place-items:center;padding:0;display:grid}@media (hover:hover){.icon-button:hover{color:var(--fg);background:var(--surface)}}.board{flex-direction:column;gap:28px;display:flex}@media (width>=860px){.board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:28px;display:grid}.col{border-radius:16px;min-height:calc(100dvh - 200px);margin:-8px;padding:8px;transition:background-color .15s}.col.is-over{background:var(--sidebar)}}.col-head{align-items:center;min-height:28px;margin-bottom:8px;display:flex}@media (width<=859px){.col-today .col-head{display:none}}.col-title{letter-spacing:.06em;color:var(--muted);align-items:center;gap:6px;margin:0;padding:0;font-size:13px;font-weight:600;display:inline-flex}.col-title.is-toggle{cursor:pointer;background:0 0;border:none}.col.is-over .col-title{color:var(--fg)}.cards{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.link-button{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:14px}@media (hover:hover){.link-button:hover:not(:disabled){color:var(--fg);text-underline-offset:4px;text-decoration:underline}}.link-button:disabled{opacity:.5;cursor:default}.clear-done{margin-top:12px}.card{border-radius:var(--radius);touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;scroll-margin-top:80px;scroll-margin-bottom:150px;position:relative}.card.is-source{display:none}.card-body{background:var(--surface);border-radius:var(--radius);align-items:flex-start;gap:14px;padding:15px 16px;transition:background-color .6s;display:flex;position:relative}.card.is-fresh .card-body{background:var(--surface-hover);transition:none}.card-reveal{color:var(--primary-fg);background:var(--primary);border-radius:var(--radius);align-items:center;padding:0 22px;display:flex;position:absolute;inset:0}.card-reveal.is-left{justify-content:flex-end}.card-reveal svg{transition:transform .15s}.card-reveal.is-armed svg{transform:scale(1.3)}.check{color:#0000;border:1.5px solid var(--faint);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;margin-top:2px;padding:0;transition:background-color .18s,border-color .18s,color .18s;display:grid;position:relative}.check:before{content:"";position:absolute;inset:-11px}.card.is-done .check,.card.is-completing .check,.card-body.is-done .check{color:var(--primary-fg);background:var(--primary);border-color:var(--primary)}.card.is-completing .check{animation:.26s ease-out pop}.card-main{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.card-meta{flex-wrap:wrap;align-items:center;gap:2px 12px;max-width:100%;display:flex}.card-due{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex}.card-due.is-today,.card-due.is-soon{color:var(--fg)}.card-due.is-overdue{color:var(--danger)}.card-goal{max-width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:12px;line-height:1.5;display:inline-flex;overflow:hidden}.card-text{white-space:pre-wrap;overflow-wrap:anywhere;outline:none;flex:1;align-self:stretch;min-width:0;font-size:17px;line-height:1.6;transition:color .2s}.card.is-target .card-body{background:var(--surface-hover)}.card.is-target .check{border-color:var(--fg);animation:1.6s ease-out infinite target-pulse}.card.is-teach .card-body:after{content:"";background:var(--fg);pointer-events:none;width:24px;height:28px;animation:.9s ease-in-out infinite teach-bounce;position:absolute;top:-30px;left:16px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'><path d='M12 3v19M5 15l7 8 7-8' stroke='black' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 28'><path d='M12 3v19M5 15l7 8 7-8' stroke='black' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>") 50%/contain no-repeat}.card-text:focus-visible{outline:2px solid var(--fg);outline-offset:4px;border-radius:4px}.card.is-done .card-text,.card.is-completing .card-text,.card-body.is-done .card-text{color:var(--faint)}.card-edit{min-width:0;font:inherit;color:var(--fg);resize:none;-webkit-user-select:text;user-select:text;background:0 0;border:none;outline:none;flex:1;margin:0;padding:0;font-size:16px;line-height:1.5;overflow:hidden}.card-delete{display:none}@media (hover:hover) and (pointer:fine){.card-body{cursor:grab}.card:hover .card-body{background:var(--surface-hover)}.card-text{cursor:text}.check:hover{color:var(--faint);border-color:var(--muted)}.card.is-done .check:hover{color:var(--primary-fg)}.card-delete{width:24px;height:24px;color:var(--faint);opacity:0;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;place-items:center;margin:-1px -4px 0 0;padding:0;display:grid}.card:hover .card-delete,.card-delete:focus-visible{opacity:1}.card-delete:hover{color:var(--fg)}}.placeholder{background:var(--sidebar);border:1.5px dashed var(--line);border-radius:var(--radius);list-style:none}.ghost{z-index:50;pointer-events:none;position:fixed;top:0;left:0}.ghost .card-body{background:var(--surface-hover);transform:scale(1.02)rotate(-.6deg)}.fab{right:max(20px, calc(env(safe-area-inset-right) + 16px));bottom:calc(env(safe-area-inset-bottom) + 22px);z-index:30;width:62px;height:62px;color:var(--primary-fg);background:var(--primary);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;transition:transform .18s,opacity .18s,background-color .15s;display:grid;position:fixed}@media (hover:hover){.fab:hover{background:var(--primary-hover)}}.fab:active{transform:scale(.94)}.fab.is-hidden{opacity:0;pointer-events:none;transform:scale(.8)}@media (width>=860px){.fab{bottom:40px;right:40px}}.task-backdrop{z-index:35;background:var(--scrim);animation:.18s ease-out fade-in;position:fixed;inset:0}.task-sheet{z-index:40;padding:16px 16px calc(env(safe-area-inset-bottom) + 12px);background:var(--bg);opacity:0;pointer-events:none;border-radius:20px 20px 0 0;flex-direction:column;gap:10px;transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .2s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.task-sheet.is-open{opacity:1;pointer-events:auto;transform:none}@media (width>=860px){.task-sheet{border-radius:18px;width:min(560px,100% - 80px);padding:18px 18px 14px;inset:16vh auto auto 50%;transform:translate(-50%,-12px)}.task-sheet.is-open{transform:translate(-50%)}}.task-input{width:100%;min-height:30px;max-height:160px;font:inherit;color:var(--fg);resize:none;background:0 0;border:none;outline:none;margin:0;padding:2px;font-size:18px;font-weight:600;line-height:1.5}.task-input::placeholder{color:var(--faint);font-weight:500}.task-row{align-items:center;gap:6px;display:flex}.task-chips{flex-wrap:wrap;flex:1;gap:6px;min-width:0;display:flex}.task-chip{max-width:100%;min-height:34px;color:var(--muted);border:1px solid var(--line);border-radius:9px;align-items:center;display:inline-flex}.task-chip-main{min-width:0;min-height:32px;color:inherit;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0 10px;font-size:14px;font-weight:600;display:inline-flex;overflow:hidden}.task-chip-x{width:26px;height:32px;color:inherit;cursor:pointer;background:0 0;border:none;place-items:center;margin-left:-6px;padding:0;display:grid}.task-chip.is-due.is-today,.task-chip.is-due.is-soon,.task-chip.is-due.is-later,.task-chip.is-set{color:var(--fg);background:var(--surface);border-color:#0000}.task-chip.is-due.is-overdue{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.task-chip.is-parsed{animation:.3s ease-out pop}.task-cancel{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.task-send{width:44px;height:44px;color:var(--primary-fg);background:var(--primary);cursor:pointer;border:none;border-radius:12px;flex:none;place-items:center;padding:0;display:grid}.task-send:disabled{opacity:.25;cursor:default}.due-backdrop{z-index:75;background:var(--scrim);animation:.15s ease-out fade-in;position:fixed;inset:0}.due-picker,.goal-menu{z-index:76;overscroll-behavior:contain;max-height:78dvh;padding:8px 0 calc(env(safe-area-inset-bottom) + 12px);background:var(--bg);border-radius:20px 20px 0 0;animation:.22s cubic-bezier(.2,.8,.2,1) sheet-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@media (width>=860px){.due-picker,.goal-menu{border-radius:16px;width:340px;max-height:72vh;animation:.15s ease-out fade-in;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.due-quick,.goal-menu ul{border-bottom:1px solid var(--line);margin:0;padding:4px 8px 8px;list-style:none}.goal-menu ul{border-bottom:none}.due-quick button,.goal-menu button{width:100%;min-height:48px;color:var(--fg);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:14px;padding:0 12px;font-size:16px;font-weight:600;display:flex}.due-quick button svg,.goal-menu button svg{color:var(--muted);flex:none}.due-quick button.is-picked,.goal-menu button.is-picked{background:var(--surface)}@media (hover:hover){.due-quick button:hover,.goal-menu button:hover{background:var(--surface)}}.due-quick-label{flex:1}.due-quick-date{color:var(--muted);font-size:14px;font-weight:500}.due-calendar{padding:10px 16px 4px}.due-month h3{margin:12px 4px 8px;font-size:15px;font-weight:700}.due-weekdays,.due-week{grid-template-columns:repeat(7,1fr);justify-items:center;display:grid}.due-weekdays span{color:var(--muted);font-size:12px}.due-week button{font-variant-numeric:tabular-nums;width:38px;height:38px;color:var(--fg);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;margin:2px 0;padding:0;font-size:15px;display:grid}.due-week button:disabled{color:var(--faint);cursor:default}.due-week button.is-today{box-shadow:inset 0 0 0 1.5px var(--fg);font-weight:800}.due-week button.is-picked{color:var(--primary-fg);background:var(--primary);font-weight:700}.undo{bottom:calc(env(safe-area-inset-bottom) + 150px);z-index:60;color:var(--primary-fg);white-space:nowrap;background:var(--primary);cursor:pointer;border:none;border-radius:999px;padding:10px 22px;font-size:15px;font-weight:600;line-height:1.5;animation:.2s ease-out undo-in;position:fixed;left:50%;transform:translate(-50%)}.undo.is-top{top:calc(env(safe-area-inset-top) + 12px);bottom:auto}@media (width>=860px){.undo{bottom:116px}}.sheet-backdrop{z-index:70;background:var(--scrim);position:fixed;inset:0}.sheet{z-index:71;max-height:92dvh;padding:12px 20px calc(env(safe-area-inset-bottom) + 24px);background:var(--bg);border-radius:22px 22px 0 0;flex-direction:column;gap:18px;animation:.22s cubic-bezier(.2,.8,.2,1) sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:auto}@media (width>=640px){.sheet{border-radius:20px;width:360px;padding:12px 22px 22px;animation:.16s ease-out fade-in;inset:50% auto auto 50%;transform:translate(-50%,-50%)}}.sheet-close{align-self:flex-end;margin:0 -10px -10px 0}.segmented{background:var(--surface);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;display:grid}.segmented.is-two{grid-template-columns:repeat(2,1fr)}.segment{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 0;font-size:13px}.segment.is-active{color:var(--fg);background:var(--bg);font-weight:600}.sheet-account{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:18px;display:flex}.button{min-height:48px;color:var(--primary-fg);background:var(--primary);border:1px solid var(--primary);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:12px 22px;font-size:14px;font-weight:600;transition:background-color .2s,transform .2s;display:inline-flex}@media (hover:hover){.button:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}}.button:active:not(:disabled){transform:scale(.985)}.button.is-outline{color:var(--fg);border-color:var(--line);background:0 0}@media (hover:hover){.button.is-outline:hover:not(:disabled){background:var(--surface);border-color:var(--line)}}.button:disabled{opacity:.45;cursor:default}.auth{width:min(100%,440px);min-height:100dvh;padding:calc(env(safe-area-inset-top) + 28px) 28px calc(env(safe-area-inset-bottom) + 36px);flex-direction:column;margin:0 auto;display:flex}.auth-brand{margin:0;line-height:0}.auth-brand img{width:auto;height:34px}.logo-dark{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-light{display:none}:root:not([data-theme=light]) .logo-dark{display:inline}}:root[data-theme=dark] .logo-light{display:none}:root[data-theme=dark] .logo-dark{display:inline}.auth-body{margin:auto 0;padding:48px 0}.auth-title{font-feature-settings:"palt";letter-spacing:-.045em;margin:0 0 32px;font-size:min(56px,min(100vw,440px)/8.3 - 6.74699px);font-weight:800;line-height:1.2}.auth-title>span{white-space:nowrap;display:block}.auth-title.is-small{letter-spacing:-.04em;margin-bottom:14px;font-size:clamp(28px,7.5vw,34px);line-height:1.3}.auth-recipient{color:var(--muted);overflow-wrap:anywhere;margin:0 0 24px;font-size:14px;font-weight:600}.auth-form{flex-direction:column;gap:10px;display:flex}.field{width:100%;min-height:56px;font:inherit;color:var(--fg);background:var(--surface);border:1px solid #0000;border-radius:12px;outline:none;margin:0;padding:0 18px;font-size:16px;transition:border-color .15s}.field::placeholder{color:var(--faint)}.field:focus{border-color:var(--fg)}.field.is-code{font-variant-numeric:tabular-nums;letter-spacing:.42em;text-align:center;min-height:68px;font-size:28px}.field.is-code::placeholder{letter-spacing:.42em}.auth-error{margin:4px 2px 0;font-size:13px;line-height:1.7}.auth-form .button{min-height:52px;margin-top:10px}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:12px 20px;margin-top:22px;display:flex}.pet{bottom:calc(env(safe-area-inset-bottom) + 6px);left:max(10px, calc(env(safe-area-inset-left) + 6px));z-index:30;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;width:112px;padding:0;display:flex;position:fixed}@media (width>=860px){.pet{bottom:28px;left:28px}}.pet.is-speaking{z-index:46}.pet-body{transform-origin:50% 90%;place-items:center;width:112px;height:112px;display:grid}.pet-canvas{width:112px;height:112px}.pet-level{align-items:center;gap:6px;margin-top:-4px;padding:2px 4px;display:flex}.pet-lv{font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--fg);font-size:12px;font-weight:700}.pet-gauge{background:var(--line);border-radius:999px;width:64px;height:6px;position:relative;overflow:hidden}.pet-gauge>span{background:var(--fg);border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0 auto 0 0}.pet.is-level-up .pet-level,.pet.is-cheering .pet-level{animation:1.2s ease-out level-glow}.pet.is-level-up .pet-lv{animation:.4s ease-out 2 pop}.pet:after{content:"";background:var(--fg);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:10px}.pet.is-evolving:after{animation:1.2s ease-out evolve-flash}.pet.is-evolving .pet-body{animation:.7s ease-in-out evolve-shake}.pet-orb{z-index:80;background:var(--fg);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in srgb, var(--fg) 12%, transparent);pointer-events:none;border-radius:50%;position:fixed}@keyframes level-glow{20%{transform:scale(1.15)}40%{transform:scale(1)}}@keyframes evolve-flash{0%{opacity:0;transform:scale(.6)}45%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes evolve-shake{20%,60%{transform:rotate(-6deg)scale(1.04)}40%,80%{transform:rotate(6deg)scale(1.04)}}.guide-backdrop{z-index:44;background:var(--scrim);animation:.2s ease-out fade-in;position:fixed;inset:0}.guide{right:max(12px, calc(env(safe-area-inset-right) + 12px));bottom:calc(env(safe-area-inset-bottom) + 144px);left:max(12px, calc(env(safe-area-inset-left) + 12px));z-index:45;max-width:460px;max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 168px);transform-origin:48px 100%;animation:bubble-pop .46s linear(0, .22 8%, .6 18%, .92 28%, 1.06 38%, 1.08 45%, 1.04 56%, 1 68%, .995 80%, 1);flex-direction:column;display:flex;position:fixed}.guide.is-wide{width:420px;bottom:168px;left:28px}.guide-bubble{min-height:0;color:var(--primary-fg);background:var(--primary);border-radius:24px;flex-direction:column;display:flex;position:relative;overflow:hidden}.guide-body{overscroll-behavior:contain;flex-direction:column;flex:auto;gap:14px;min-height:0;padding:20px 20px 14px;display:flex;overflow-y:auto}.guide-foot{flex-direction:column;flex:none;gap:12px;padding:0 20px 18px;display:flex}.guide-foot:empty{display:none}.guide-tail{background:var(--primary);border-radius:3px;width:18px;height:18px;position:absolute;bottom:-7px;left:45px;transform:rotate(45deg)}.guide.is-wide .guide-tail{left:47px}.guide-close{width:32px;height:32px;color:color-mix(in srgb, var(--primary-fg) 55%, transparent);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:10px;right:10px}.guide-heard{max-width:85%;color:var(--primary-fg);background:color-mix(in srgb, var(--primary-fg) 14%, transparent);border-radius:16px 16px 4px;align-self:flex-end;margin:0 28px 0 0;padding:8px 14px;font-size:15px;line-height:1.5}.guide-heard span{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.guide-line{letter-spacing:.01em;word-break:auto-phrase;cursor:default;margin:0;font-size:19px;font-weight:650;line-height:1.55;animation:.24s ease-out line-in}.guide-rest{visibility:hidden}.guide-close-space{float:right;width:26px;height:22px}.guide-chips{align-items:center;gap:8px;display:flex}.guide-chips-scroll{overscroll-behavior-x:contain;scrollbar-width:none;flex:1;align-items:center;gap:8px;min-width:0;margin:-4px -20px;padding:4px 20px;display:flex;overflow-x:auto}.guide-chips-scroll::-webkit-scrollbar{display:none}.guide-chips-scroll.has-end{margin-right:0;padding-right:12px}.guide-chips-scroll>*{flex:none}.guide-chips-end{flex:none;margin-left:auto;display:flex}.guide-chip{white-space:nowrap;text-align:left;min-height:42px;color:var(--primary-fg);background:color-mix(in srgb, var(--primary-fg) 14%, transparent);cursor:pointer;border:none;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 16px;font-size:16px;font-weight:600;line-height:1.4;transition:background-color .15s,transform .15s;display:inline-flex}@media (hover:hover){.guide-chip:hover{background:color-mix(in srgb, var(--primary-fg) 22%, transparent)}}.guide-chip:active{transform:scale(.96)}.guide-chip.is-picked{color:var(--primary);background:var(--primary-fg)}.guide-added{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.guide-added li{background:color-mix(in srgb, var(--primary-fg) 8%, transparent);border-radius:12px;align-items:center;gap:10px;padding:6px 4px 6px 10px;font-size:16px;line-height:1.45;animation:.32s cubic-bezier(.2,.8,.2,1) added-in;display:flex}.guide-added-mark{width:20px;height:20px;color:var(--primary);background:var(--primary-fg);border-radius:50%;flex:none;place-items:center;display:grid}.guide-added-text{overflow-wrap:anywhere;flex:1;min-width:0}.guide-added-when{color:color-mix(in srgb, var(--primary-fg) 60%, transparent);flex:none;font-size:13px}.guide-added-remove{width:32px;height:32px;color:color-mix(in srgb, var(--primary-fg) 55%, transparent);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.guide-input{align-items:flex-end;gap:8px;display:flex}.guide-field,.guide-recording{min-width:0;min-height:48px;font:inherit;color:var(--primary-fg);background:color-mix(in srgb, var(--primary-fg) 10%, transparent);resize:none;border:none;border-radius:24px;outline:none;flex:1;margin:0;padding:12px 16px;font-size:17px;line-height:1.4}.guide-field::placeholder{color:color-mix(in srgb, var(--primary-fg) 45%, transparent)}.guide-field:focus{background:color-mix(in srgb, var(--primary-fg) 16%, transparent)}.guide-recording{font-variant-numeric:tabular-nums;align-items:center;gap:10px;display:flex}.guide-rec-dot{background:#e5484d;border-radius:50%;width:10px;height:10px;animation:1s ease-in-out infinite rec-blink}.guide-round{width:48px;height:48px;color:var(--primary);background:var(--primary-fg);cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;padding:0;transition:transform .15s;display:grid}.guide-round:active{transform:scale(.94)}.guide-round:disabled{opacity:.35;cursor:default}.guide-round.is-recording{animation:1.4s ease-out infinite rec-ring}.guide-primary,.guide-secondary{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-width:48px;min-height:48px;padding:0 20px;font-size:16px;font-weight:650;transition:transform .15s;display:inline-flex}.guide-primary{color:var(--primary);background:var(--primary-fg)}.guide-secondary{color:color-mix(in srgb, var(--primary-fg) 75%, transparent);background:0 0}.guide-primary:active,.guide-secondary:active{transform:scale(.96)}.guide-primary:disabled{opacity:.35}.guide-bubble button:focus-visible{outline-color:var(--primary-fg)}.guide-dots{gap:6px;padding:6px 2px;display:flex}.guide-dots span{background:var(--primary-fg);border-radius:50%;width:8px;height:8px;animation:1.1s ease-in-out infinite dot-wave}.guide-dots span:nth-child(2){animation-delay:.15s}.guide-dots span:nth-child(3){animation-delay:.3s}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.guide-draft{background:color-mix(in srgb, var(--primary-fg) 8%, transparent);border-radius:16px;flex-direction:column;gap:8px;padding:14px 16px;animation:.32s cubic-bezier(.2,.8,.2,1) added-in;display:flex}.guide-draft-title{align-items:flex-start;gap:8px;margin:0;font-size:17px;font-weight:700;line-height:1.45;display:flex}.guide-draft-title svg{flex:none;margin-top:4px}.guide-draft-facts{flex-direction:column;gap:2px;margin:0;font-size:14px;display:flex}.guide-draft-facts div,.guide-draft-today{gap:10px;margin:0;font-size:14px;display:flex}.guide-draft-facts dt,.guide-draft-today span{width:4.2em;color:color-mix(in srgb, var(--primary-fg) 60%, transparent);flex:none}.guide-draft-facts dd{margin:0}.guide-draft-steps{counter-reset:step;flex-direction:column;gap:4px;margin:2px 0 0;padding:0 0 0 4px;font-size:14px;line-height:1.45;list-style:none;display:flex}.guide-draft-steps li{counter-increment:step;gap:10px;display:flex}.guide-draft-steps li:before{content:counter(step);width:20px;height:20px;color:var(--primary);background:var(--primary-fg);border-radius:50%;flex:none;place-items:center;margin-top:1px;font-size:11px;font-weight:700;display:grid}.drawer-backdrop{z-index:70;background:var(--scrim);animation:.2s ease-out fade-in;position:fixed;inset:0}.drawer{z-index:71;width:min(300px,84vw);padding:calc(env(safe-area-inset-top) + 16px) 16px calc(env(safe-area-inset-bottom) + 20px) max(16px, env(safe-area-inset-left));background:var(--bg);flex-direction:column;gap:20px;animation:.24s cubic-bezier(.2,.8,.2,1) drawer-in;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.drawer-top{justify-content:space-between;align-items:center;min-height:44px;display:flex}.drawer-brand{align-items:center;padding-left:6px;display:flex}.drawer-brand img{width:auto;height:26px}.drawer-switches,.theme-switch{align-items:center;display:flex}.theme-switch button,.sound-switch{width:34px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;display:grid}.theme-switch button[aria-pressed=true],.sound-switch[aria-pressed=true]{color:var(--fg)}@media (hover:hover){.theme-switch button:hover,.sound-switch:hover{color:var(--fg)}}.sound-switch{margin-left:6px}.drawer-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.drawer-level{background:var(--surface);border-radius:16px;flex:1;grid-template-columns:auto 1fr;align-items:center;gap:4px 12px;padding:14px 16px;display:grid}.drawer-lv{font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:22px;font-weight:800}.drawer-gauge{background:var(--line);border-radius:999px;height:8px;position:relative;overflow:hidden}.drawer-gauge>span{background:var(--fg);border-radius:999px;position:absolute;inset:0 auto 0 0}.drawer-next{color:var(--muted);grid-column:1/-1;font-size:12px}.drawer-pages{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.drawer-page{width:100%;min-height:52px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;padding:0 14px;font-size:17px;font-weight:600;display:flex}.drawer-page.is-current{color:var(--fg);background:var(--surface)}@media (hover:hover){.drawer-page:hover{color:var(--fg)}}.drawer-foot{border-top:1px solid var(--line);flex-direction:column;margin-top:auto;padding-top:12px;display:flex}.page{max-width:680px;margin:0 auto}.goal-list{flex-direction:column;gap:10px;margin:0 0 14px;padding:0;list-style:none;display:flex}.goal-card{text-align:left;background:var(--surface);cursor:pointer;border:none;border-radius:16px;flex-direction:column;gap:6px;width:100%;padding:18px 18px 16px;transition:background-color .15s;display:flex}@media (hover:hover){.goal-card:hover{background:var(--surface-hover)}}.goal-card-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.goal-card-title{word-break:auto-phrase;font-size:18px;font-weight:700;line-height:1.45}.goal-card-by{color:var(--muted);flex:none;font-size:13px}.goal-card-why{color:var(--muted);font-size:14px}.goal-card-road{align-items:center;margin-top:6px;display:flex}.goal-dot{flex:1;height:10px;position:relative}.goal-dot:before{content:"";background:var(--line);height:2px;position:absolute;top:4px;left:0;right:0}.goal-dot:after{content:"";background:var(--bg);border:2px solid var(--faint);box-sizing:border-box;border-radius:50%;width:10px;height:10px;position:absolute;top:0;left:0}.goal-dot.is-done:before,.goal-dot.is-done:after{background:var(--fg);border-color:var(--fg)}.goal-dot.is-current:after{border-color:var(--fg);box-shadow:0 0 0 3px color-mix(in srgb, var(--fg) 15%, transparent)}.goal-card-flag{color:var(--faint);flex:none;place-items:center;display:grid}.goal-card.is-reached .goal-card-flag{color:var(--fg)}.goal-new{width:100%;min-height:56px;color:var(--muted);border:1.5px dashed var(--line);cursor:pointer;background:0 0;border-radius:16px;justify-content:center;align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.goal-hero{flex-direction:column;gap:12px;margin-bottom:28px;display:flex}.goal-title{letter-spacing:-.01em;word-break:auto-phrase;text-wrap:balance;margin:0;font-size:26px;font-weight:800;line-height:1.35}.goal-facts{flex-direction:column;gap:4px;margin:0;display:flex}.goal-facts div{gap:12px;font-size:15px;display:flex}.goal-facts dt{width:4.5em;color:var(--muted);flex:none}.goal-facts dd{margin:0}.goal-meter{align-items:center;gap:12px;display:flex}.goal-meter-bar{background:var(--surface);border-radius:999px;flex:1;height:8px;position:relative;overflow:hidden}.goal-meter-bar>span{background:var(--fg);border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1);position:absolute;inset:0 auto 0 0}.goal-meter-text{font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.goal-talk{min-height:40px;color:var(--fg);background:var(--surface);cursor:pointer;border:none;border-radius:999px;align-self:flex-start;padding:0 16px;font-size:14px;font-weight:600}.road{margin:0;padding:0;list-style:none;position:relative}.road-stop{gap:16px;padding-bottom:26px;display:flex;position:relative}.road-stop:not(:last-child):before{content:"";border-left:3px dotted var(--faint);width:0;position:absolute;top:34px;bottom:2px;left:16px}.road-stop.is-done:not(:last-child):before{border-left:3px solid var(--fg)}.road-node{z-index:1;width:35px;height:35px;color:var(--primary-fg);background:var(--bg);border:2.5px solid var(--faint);cursor:pointer;border-radius:50%;flex:none;place-items:center;padding:0;display:grid;position:relative}.road-stop.is-done .road-node{background:var(--fg);border-color:var(--fg)}.road-stop.is-current .road-node{border-color:var(--fg);animation:1.6s ease-out infinite target-pulse}.road-stop.is-start .road-node{cursor:default}.road-stop.is-goal .road-node{color:var(--faint);cursor:default}.road-stop.is-goal.is-done .road-node{color:var(--primary-fg)}.road-label{flex-direction:column;flex:1;gap:4px;min-width:0;padding-top:5px;display:flex}.road-text{font-size:17px;font-weight:600;line-height:1.5}.road-stop:not(.is-done):not(.is-current) .road-text{color:var(--muted)}.road-count{font-variant-numeric:tabular-nums;color:var(--muted);margin-left:8px;font-size:13px;font-weight:700}.road-planning{gap:5px;margin-bottom:14px;padding:0 6px;display:inline-flex}.road-planning span{background:var(--fg);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite dot-wave}.road-planning span:nth-child(2){animation-delay:.15s}.road-planning span:nth-child(3){animation-delay:.3s}.road-node{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.road-date{color:var(--muted);font-size:13px}.road-here{align-items:flex-end;gap:8px;margin:-4px 0 0 -6px;display:flex}.road-today{min-height:40px;color:var(--primary-fg);background:var(--primary);cursor:pointer;border:none;border-radius:999px;align-items:center;gap:6px;margin-bottom:4px;padding:0 16px;font-size:15px;font-weight:650;display:inline-flex}.road-tasks{flex-direction:column;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.road-tasks li{background:var(--surface);border-radius:var(--radius);align-items:flex-start;gap:12px;padding:12px 14px;font-size:16px;line-height:1.5;transition:background-color .6s;display:flex}.road-tasks li.is-fresh{background:var(--surface-hover);transition:none}.road-tasks li>span:first-of-type{flex:1}.road-task-when{color:var(--muted);flex:none;font-size:12px}.goal-remove{margin:24px auto 0;display:block}.log-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px;display:grid}.log-stats>div{background:var(--surface);border-radius:14px;flex-direction:column;gap:2px;padding:14px 14px 12px;display:flex}.log-stat-number{font-variant-numeric:tabular-nums;font-size:28px;font-weight:800;line-height:1.2}.log-stat-label{color:var(--muted);font-size:12px}.heat{grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin-bottom:26px;display:grid}.heat-week{grid-template-rows:repeat(7,1fr);gap:4px;display:grid}.heat-cell{aspect-ratio:1;background:var(--surface);cursor:pointer;border:none;border-radius:4px;width:100%;padding:0}.heat-cell:disabled{cursor:default}.heat-cell.level-1{background:color-mix(in srgb, var(--fg) 25%, var(--surface))}.heat-cell.level-2{background:color-mix(in srgb, var(--fg) 50%, var(--surface))}.heat-cell.level-3{background:color-mix(in srgb, var(--fg) 75%, var(--surface))}.heat-cell.level-4{background:var(--fg)}.heat-cell.is-future{background:0 0}.log-days{flex-direction:column;gap:22px;display:flex}.log-day{scroll-margin-top:16px}.log-day-head{align-items:center;gap:10px;margin:0 0 8px;font-size:15px;font-weight:700;display:flex}.log-day-count{min-width:24px;height:22px;color:var(--primary-fg);background:var(--primary);border-radius:999px;place-items:center;padding:0 7px;font-size:12px;font-weight:700;display:grid}.log-entries{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.log-entries li{align-items:flex-start;gap:12px;padding:8px 2px;font-size:16px;line-height:1.5;display:flex}.log-mark{width:20px;height:20px;color:var(--primary-fg);background:var(--fg);border-radius:50%;flex:none;place-items:center;margin-top:2px;display:grid}.log-mark.is-reach{color:var(--fg);background:var(--surface)}.log-reach .log-text{font-weight:700}.log-body{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.log-text{overflow-wrap:anywhere}.log-goal{max-width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0;font-size:12px;display:inline-flex;overflow:hidden}@keyframes drawer-in{0%{transform:translate(-100%)}}@keyframes bubble-pop{0%{opacity:0;transform:scale(.55)translateY(12px)}20%{opacity:1}}@keyframes line-in{0%{opacity:.4;transform:translateY(3px)}}@keyframes added-in{0%{opacity:0;transform:translateY(6px)scale(.98)}}@keyframes dot-wave{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@keyframes rec-blink{50%{opacity:.3}}@keyframes rec-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--primary-fg) 45%, transparent)}to{box-shadow:0 0 0 14px #0000}}@keyframes target-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--fg) 30%, transparent)}70%,to{box-shadow:0 0 0 10px #0000}}@keyframes teach-bounce{50%{transform:translateY(5px)}}@keyframes pop{50%{transform:scale(1.18)}}@keyframes undo-in{0%{opacity:0;transform:translate(-50%,8px)}}@keyframes sheet-up{0%{transform:translateY(100%)}}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}.dev-badge{top:env(safe-area-inset-top);z-index:100;color:#fff;white-space:nowrap;pointer-events:none;background:#d1453b;border-radius:0 0 8px 8px;padding:3px 12px;font-size:12px;font-weight:700;position:fixed;left:50%;transform:translate(-50%)}.due-time{border-bottom:1px solid var(--line);align-items:center;gap:14px;min-height:52px;margin:0 8px;padding:0 12px;font-size:16px;font-weight:600;display:flex}.due-time>svg{color:var(--muted);flex:none}.due-time-input{min-width:96px;min-height:36px;font:inherit;font-variant-numeric:tabular-nums;color:var(--fg);background:var(--surface);border:none;border-radius:9px;padding:0 10px;font-size:16px}.due-time-clear{width:32px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;padding:0;display:grid}.pet-hint{bottom:calc(env(safe-area-inset-bottom) + 76px);left:max(124px, calc(env(safe-area-inset-left) + 120px));z-index:30;max-width:min(240px,100vw - 220px);font:inherit;text-align:left;color:var(--primary-fg);background:var(--primary);cursor:pointer;word-break:auto-phrase;transform-origin:0 100%;animation:bubble-pop .46s linear(0, .22 8%, .6 18%, .92 28%, 1.06 38%, 1.08 45%, 1.04 56%, 1 68%, .995 80%, 1) both, hint-nudge 7s ease-in-out 4s infinite;-webkit-tap-highlight-color:transparent;border:none;border-radius:16px;padding:9px 14px;font-size:14px;font-weight:650;line-height:1.45;position:fixed}.pet-hint:active{transform:scale(.96)}.pet-hint-tail{background:var(--primary);border-radius:2px;width:12px;height:12px;position:absolute;bottom:12px;left:-5px;transform:rotate(45deg)}@media (width>=860px){.pet-hint{max-width:280px;bottom:100px;left:146px}}@keyframes hint-nudge{0%,86%,to{transform:none}90%{transform:translateY(-4px)rotate(-1.5deg)}94%{transform:translateY(0)rotate(1deg)}}.cal-strip{scrollbar-width:none;gap:8px;margin:0 -20px 24px;padding:2px 20px;list-style:none;display:flex;overflow-x:auto}.cal-strip::-webkit-scrollbar{display:none}.cal-strip li{flex:none}.cal-event{max-width:220px;font:inherit;text-align:left;color:var(--fg);background:var(--surface);cursor:pointer;border:none;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px 10px;display:flex}@media (hover:hover){.cal-event:hover{background:var(--surface-hover)}}.cal-event-time{font-variant-numeric:tabular-nums;color:var(--muted);align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.cal-event-title{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:15px;font-weight:600;overflow:hidden}@media (width>=860px){.cal-strip{margin:0 -40px 28px;padding:2px 40px}.cal-strip.carousel{scroll-padding-inline:40px}}.cal-open{width:56px;min-height:100%;color:var(--fg);justify-content:center;align-self:stretch;align-items:center;padding:0}.cal-strip li{display:flex}.cal-sheet{gap:16px;max-height:none;padding-top:6px;overflow:hidden}.sheet-grip{cursor:ns-resize;touch-action:none;flex:none;place-items:center;height:22px;margin:0 -16px -10px;display:grid}.sheet-grip span{background:var(--line);border-radius:999px;width:40px;height:5px}.cal-sheet .cal-agenda{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:8px;overflow-y:auto}@media (width>=860px){.cal-sheet{height:min(640px,76vh)!important}.sheet-grip{display:none}}.cal-sheet-head{justify-content:space-between;align-items:center;display:flex}.cal-sheet-title{margin:0;font-size:20px;font-weight:700}.cal-sheet-head .icon-button{margin-right:-6px}.cal-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-day{font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 0 12px;display:flex;position:relative}.cal-day-week{color:var(--muted);font-size:11px;font-weight:600}.cal-day-date{font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.cal-day.has-events:after{content:"";opacity:.5;background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;bottom:5px}.cal-day.is-picked{color:var(--primary-fg);background:var(--primary)}.cal-day.is-picked .cal-day-week{color:inherit;opacity:.75}@media (hover:hover){.cal-day:not(.is-picked):hover{background:var(--surface)}}.cal-agenda{flex-direction:column;gap:6px;min-height:120px;margin:0;padding:0;list-style:none;display:flex}.cal-item{width:100%;font:inherit;text-align:left;color:var(--fg);background:var(--surface);cursor:pointer;border:none;border-radius:12px;align-items:baseline;gap:14px;padding:12px 14px;display:flex}.cal-item:disabled{cursor:default}.cal-item.is-past{color:var(--faint);background:0 0}@media (hover:hover){.cal-item:not(:disabled):hover{background:var(--surface-hover)}}.cal-item-time{font-variant-numeric:tabular-nums;min-width:92px;color:var(--muted);flex:none;font-size:13px;font-weight:700}.cal-item.is-past .cal-item-time{color:inherit}.cal-item-title{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15px;font-weight:600;line-height:1.45}.cal-empty{min-height:120px;color:var(--faint);place-items:center;font-size:14px;display:grid}.cal-empty .guide-dots span{background:var(--faint)}.card-extra{color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.detail-backdrop{z-index:50;background:var(--scrim);animation:.18s ease-out fade-in;position:fixed;inset:0}.detail{z-index:51;max-height:88dvh;padding:18px 16px calc(env(safe-area-inset-bottom) + 12px);overscroll-behavior:contain;background:var(--bg);border-radius:20px 20px 0 0;flex-direction:column;gap:14px;animation:.22s cubic-bezier(.2,.8,.2,1) sheet-up;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@media (width>=860px){.detail{border-radius:18px;width:min(600px,100% - 80px);max-height:76vh;padding:22px 22px 14px;animation:.18s ease-out fade-in;inset:12vh auto auto 50%;transform:translate(-50%)}}.detail-head{align-items:flex-start;gap:12px;display:flex}.detail-head .check{margin-top:6px}.detail-head .check.is-on{color:var(--primary-fg);background:var(--primary);border-color:var(--primary)}.detail-head .icon-button{flex:none;margin:-4px -6px 0 0}.detail-title{min-width:0;font:inherit;color:var(--fg);resize:none;background:0 0;border:none;outline:none;flex:1;margin:0;padding:2px 0;font-size:20px;font-weight:700;line-height:1.5}.detail-title.is-done{color:var(--muted);text-decoration:line-through}.detail-chips{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;gap:6px;margin:-2px -16px;padding:2px 16px 2px 52px;display:flex;overflow-x:auto}.detail-chips::-webkit-scrollbar{display:none}.detail-chips.carousel{scroll-padding-inline:52px 16px}@media (width>=860px){.detail-chips{margin:-2px -22px;padding:2px 22px 2px 58px}.detail-chips.carousel{scroll-padding-inline:58px 22px}}.detail-chips .task-chip-main{flex:none;max-width:220px}.detail-chips .task-chip.is-delete{justify-content:center;min-width:40px;padding:0 11px}.detail-chips .task-chip{border:1px solid var(--line)}.detail-chips .task-chip.is-set,.detail-chips .task-chip.is-due.is-today,.detail-chips .task-chip.is-due.is-soon,.detail-chips .task-chip.is-due.is-later{border-color:#0000}.detail-chips .task-chip.is-due.is-overdue{border-color:color-mix(in srgb, var(--danger) 35%, transparent)}.detail-note-box{background:var(--surface);border-radius:14px;flex-direction:column;display:flex}.detail-note{width:100%;min-height:84px;font:inherit;color:var(--fg);resize:none;background:0 0;border:none;outline:none;margin:0;padding:12px 14px 4px;font-size:16px;line-height:1.7}.detail-note-tools{align-items:center;padding:0 6px 6px;display:flex}.detail-attach{width:36px;height:36px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;display:grid;position:relative}.detail-attach input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.detail-attach.is-busy{opacity:.4}@media (hover:hover){.detail-attach:hover{color:var(--fg);background:var(--surface-hover)}}.detail-note::placeholder{color:var(--faint)}.detail-files{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.detail-file{background:var(--surface);border-radius:12px;min-height:96px;position:relative;overflow:hidden}.detail-file a{height:100%;min-height:96px;color:var(--fg);flex-direction:column;justify-content:flex-end;gap:2px;padding:10px;text-decoration:none;display:flex}.detail-file a>svg{color:var(--muted);margin-bottom:auto}.detail-file.is-image a{padding:0}.detail-file img{object-fit:cover;width:100%;height:96px;display:block}.detail-file-name{word-break:break-all;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.detail-file-size{color:var(--muted);font-size:11px}.detail-file-x{width:24px;height:24px;color:var(--fg);background:color-mix(in srgb, var(--bg) 82%, transparent);cursor:pointer;border:none;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.detail-file.is-uploading{place-items:center;display:grid}.detail-file.is-uploading .guide-dots span{background:var(--muted)}.detail-error{color:var(--danger);margin:-4px 0 0;font-size:13px;font-weight:600}.settings{flex-direction:column;gap:28px;max-width:560px;display:flex}.settings-me{flex-direction:column;align-items:center;gap:10px;display:flex}.settings-avatar{background:var(--surface);border-radius:50%;place-items:end center;width:108px;height:108px;display:grid;overflow:hidden}.settings-name{font-variant-numeric:tabular-nums;margin:0;font-size:22px;font-weight:800}.settings-group{flex-direction:column;gap:8px;display:flex}.settings-label{color:var(--muted);margin:0 0 0 18px;font-size:15px;font-weight:700}.settings-card{background:var(--surface);border-radius:22px;margin:0;padding:0;list-style:none;overflow:hidden}.settings-card>li{position:relative}.settings-card>li+li:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:56px;right:0}.settings-row{width:100%;min-height:58px;font:inherit;color:var(--fg);text-align:left;background:0 0;border:none;align-items:center;gap:14px;padding:12px 18px;font-size:17px;display:flex}.settings-row>svg{flex:none}.settings-row.is-button{cursor:pointer}@media (hover:hover){.settings-row.is-button:hover{background:var(--surface-hover)}}.settings-row.is-busy{opacity:.5}.settings-row.is-danger{color:var(--danger)}.settings-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-sub{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.settings-value{max-width:45%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:none;font-size:15px;overflow:hidden}.settings-chevron,.settings-done{color:var(--faint);flex:none;place-items:center;display:grid}.settings-done{color:var(--fg)}.settings-row .theme-switch{margin-right:-8px}.settings-help{color:var(--muted);margin:0 18px;font-size:13px;line-height:1.6}.switch{background:color-mix(in srgb, var(--fg) 16%, transparent);border-radius:999px;flex:none;width:44px;height:26px;transition:background-color .18s;position:relative}.switch:after{content:"";background:var(--bg);border-radius:50%;width:20px;height:20px;transition:transform .2s cubic-bezier(.2,.8,.2,1);position:absolute;top:3px;left:3px}.switch.is-on{background:var(--primary)}.switch.is-on:after{background:var(--primary-fg);transform:translate(18px)}@media (prefers-reduced-motion:reduce){.pet-hint{animation:none}}.carousel{scroll-snap-type:x proximity;scroll-padding-inline:20px}.carousel>*{scroll-snap-align:start}.carousel[data-more=end]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000004d);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000004d)}.carousel[data-more=start]{-webkit-mask-image:linear-gradient(90deg,#0000004d,#000 44px);mask-image:linear-gradient(90deg,#0000004d,#000 44px)}.carousel[data-more=both]{-webkit-mask-image:linear-gradient(90deg,#0000004d,#000 44px calc(100% - 44px),#0000004d);mask-image:linear-gradient(90deg,#0000004d,#000 44px calc(100% - 44px),#0000004d)}.card-grip{width:18px;color:var(--faint);opacity:.7;cursor:grab;touch-action:none;flex:none;align-self:stretch;place-items:start center;margin:-15px -10px -15px -12px;padding-top:21px;display:grid}.card.is-done .card-grip{opacity:.4}@media (hover:hover){.card:hover .card-grip{opacity:1}}.quick-add{-webkit-user-select:auto;user-select:auto;-webkit-touch-callout:default}.quick-add .card-body{cursor:text}.quick-add .card-grip{visibility:hidden}.quick-add .check{border-color:color-mix(in srgb, var(--faint) 60%, transparent);cursor:text}.quick-add-input{width:100%;font:inherit;color:var(--fg);background:0 0;border:none;outline:none;margin:0;padding:0;font-size:17px;line-height:1.6;display:block}.quick-add-input::placeholder{color:var(--faint)}.quick-add-input:focus-visible{outline:none}.quick-add .card-body:focus-within{background:var(--surface-hover)}.subtasks{flex-direction:column;flex:none;gap:2px;margin:-4px 0 0;padding:0 0 0 36px;display:flex}.subtask-list{overscroll-behavior:contain;flex-direction:column;gap:2px;max-height:172px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.subtask{align-items:center;gap:12px;min-height:40px;display:flex}.subtask .check{width:20px;height:20px;margin-top:0}.subtask .check.is-on{color:var(--primary-fg);background:var(--primary);border-color:var(--primary)}.subtask-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:16px;line-height:1.5}.subtask.is-done .subtask-text{color:var(--muted);text-decoration:line-through}.subtask-x{width:28px;height:28px;color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.subtask.is-new .check{border-color:color-mix(in srgb, var(--faint) 60%, transparent)}.subtask-input{min-width:0;font:inherit;color:var(--fg);background:0 0;border:none;outline:none;flex:1;margin:0;padding:6px 0;font-size:16px}.subtask-input::placeholder{color:var(--faint)}.card-steps{font-variant-numeric:tabular-nums;gap:4px;font-size:12px;font-weight:600}.detail-chips .task-chip.is-split{gap:6px}.detail-chips .task-chip.is-split:disabled{cursor:default}.chip-dots{padding:0 2px}.chip-dots span{background:var(--muted);width:5px;height:5px}@media (hover:hover){.detail-chips .task-chip.is-delete:hover{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, transparent)}}.confirm-backdrop{z-index:80;background:var(--scrim);animation:.15s ease-out fade-in;position:fixed;inset:0}.confirm{z-index:81;background:var(--bg);border-radius:20px;flex-direction:column;gap:8px;width:min(320px,100vw - 48px);padding:22px 20px 16px;animation:.15s ease-out fade-in;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.confirm-title{margin:0;font-size:17px;font-weight:700}.confirm-note{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.confirm-name{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.confirm-actions{gap:8px;margin-top:10px;display:flex}.confirm-actions button{min-height:46px;font:inherit;cursor:pointer;border:none;border-radius:12px;flex:1;font-size:16px;font-weight:700}.confirm-cancel{color:var(--fg);background:var(--surface)}.confirm-ok{color:#fff;background:var(--danger)}.folder-icon{width:24px;height:24px;color:var(--muted);flex:none;place-items:center;margin-top:2px;display:grid}.folder-icon.is-new{color:var(--line)}.folder-card .card-body,.folder-card .card-text{cursor:pointer}.folder-edit{width:36px;height:36px;color:var(--faint);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:none;place-items:center;margin:-5px -8px -5px 0;padding:0;display:grid}.folder-edit[aria-pressed=true]{color:var(--fg)}@media (hover:hover){.folder-edit:hover{color:var(--fg);background:var(--surface-hover)}}.folder-name-input{width:100%;font:inherit;color:var(--fg);background:var(--bg);-webkit-user-select:text;user-select:text;border:none;border-radius:8px;outline:none;margin:-2px -6px;padding:2px 6px;font-size:17px;line-height:1.6}.folder-card.is-editing .card-body{cursor:default}.folder-name-input:focus,.folder-name-input:focus-visible{box-shadow:0 0 0 1.5px var(--line);outline:none}.card.is-drop-into .card-body{background:var(--surface-hover);box-shadow:inset 0 0 0 2px var(--fg)}.project-folders{margin-bottom:28px}@media (width>=860px){.projects,.project-folders{max-width:640px}}.drop-up{top:calc(env(safe-area-inset-top) + 10px);z-index:49;max-width:calc(100% - 40px);min-height:40px;color:var(--fg);white-space:nowrap;text-overflow:ellipsis;background:var(--surface);border:1.5px dashed var(--line);border-radius:999px;align-items:center;gap:6px;padding:0 18px;font-size:14px;font-weight:600;display:none;position:fixed;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 4px 16px #0000001f}body.is-dragging .drop-up{display:flex}.drop-up.is-drop-into{color:var(--bg);background:var(--fg);border-color:var(--fg)}.drop-up span{text-overflow:ellipsis;overflow:hidden}.project-menu-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.project-menu-new{cursor:text;align-items:center;gap:14px;min-height:48px;padding:0 12px;display:flex}.project-menu-new svg{color:var(--line);flex:none}.project-menu-new input{min-width:0;font:inherit;color:var(--fg);background:0 0;border:none;outline:none;flex:1;padding:0;font-size:16px;font-weight:600}.project-menu-new input::placeholder{color:var(--faint)}
