@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f1f5ee;--surface:#fffefb;--surface-2:#f7f9f4;--ink:#27352d;--ink-2:#627166;--ink-3:#98a59b;--line:#e3e9e0;--leaf:#5e9a78;--leaf-deep:#3e7558;--leaf-soft:#e3efe4;--sun:#f4c968;--sun-deep:#a8761b;--sun-soft:#fcf1d4;--sky:#a9cfe0;--sky-deep:#3f7c99;--sky-soft:#e2f0f6;--blossom:#e89a8b;--blossom-deep:#b45e4d;--blossom-soft:#fbe6e1;--lilac:#b4a6d9;--lilac-deep:#6c5ba0;--lilac-soft:#ede8f7;--r-sheet:32px;--r-card:20px;--r-group:22px;--r-pill:999px;--shadow-soft:0 1px 2px #27352d0a, 0 8px 24px #3e755814;--shadow-lift:0 -12px 32px #3e755814;--font:"Nunito Variable", "Nunito", ui-rounded, "SF Pro Rounded", system-ui, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);--tabbar-h:64px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px)}.tone-leaf{--tone:var(--leaf);--tone-deep:var(--leaf-deep);--tone-soft:var(--leaf-soft)}.tone-sun{--tone:var(--sun);--tone-deep:var(--sun-deep);--tone-soft:var(--sun-soft)}.tone-sky{--tone:var(--sky);--tone-deep:var(--sky-deep);--tone-soft:var(--sky-soft)}.tone-blossom{--tone:var(--blossom);--tone-deep:var(--blossom-deep);--tone-soft:var(--blossom-soft)}.tone-lilac{--tone:var(--lilac);--tone-deep:var(--lilac-deep);--tone-soft:var(--lilac-soft)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0;font-size:15px;font-weight:450;line-height:1.45}h1,h2,h3,p{margin:0}h1{letter-spacing:-.01em;font-size:27px;font-weight:750;line-height:1.15}h2{font-size:19px;font-weight:720;line-height:1.25}button,input,textarea{font:inherit;color:inherit}input,textarea,select{font-size:max(16px,1em)}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:3px solid color-mix(in srgb, var(--leaf) 55%, transparent);outline-offset:2px;border-radius:14px}img{display:block}.muted{color:var(--ink-2)}.splash{background:var(--bg);min-height:100dvh}.app{max-width:560px;min-height:100dvh;margin:0 auto}.main{padding-bottom:calc(var(--tabbar-h) + var(--safe-b) + 24px)}.main.is-home{padding-bottom:0}.home{flex-direction:column;min-height:100dvh;display:flex}.home-grid{flex-direction:column;flex:1;display:flex}.home-head{padding:calc(var(--safe-t) + 22px) 20px 4px;z-index:3;justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:relative}.home-date{margin-top:4px;font-size:14px}.home-date:first-letter{text-transform:uppercase}.fab{border-radius:var(--r-pill);background:var(--leaf);color:#fff;width:44px;height:44px;transition:transform .2s var(--ease);flex:none;place-items:center;display:grid;box-shadow:0 6px 16px #3e755847}.fab:active{transform:scale(.94)}.tl{isolation:isolate;height:clamp(340px,54dvh,520px);margin-top:-28px;position:relative;overflow:hidden}.tl-scenery{z-index:-1;background:linear-gradient(180deg, var(--bg) 0%, #eaf3ef 40%, #e8f1e3 100%);position:absolute;inset:0}.blob{filter:blur(42px);border-radius:50%;position:absolute}.blob-sky{background:var(--sky-soft);opacity:.95;width:70%;height:46%;top:6%;left:-14%}.blob-sun{background:var(--sun);opacity:.32;width:46%;height:34%;top:4%;right:-8%}.blob-meadow{opacity:.75;background:#cfe4cd;width:90%;height:50%;bottom:-14%;left:-20%}.blob-grove{opacity:.9;background:#d9ead5;width:60%;height:40%;bottom:8%;right:-16%}.tl-scroll{overscroll-behavior:contain;scrollbar-width:none;padding:104px 16px 124px;position:absolute;inset:0;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 96px calc(100% - 120px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 96px calc(100% - 120px),#0000 100%)}.tl-scroll::-webkit-scrollbar{display:none}.tl-list{--rail-x:66px;margin:0;padding:0;list-style:none}.tl-item,.tl-now{position:relative}.tl-item:before,.tl-now:before{content:"";left:calc(var(--rail-x) - 1.5px);background:repeating-linear-gradient(#b9cdbd 0 6px,#0000 6px 12px);border-radius:3px;width:3px;position:absolute;top:0;bottom:0}.tl-item.is-past:before{background:color-mix(in srgb, var(--leaf) 45%, #fff)}.tl-list>:first-child:before{top:50%}.tl-list>:last-child:before{bottom:50%}.tl-item{grid-template-columns:44px 44px 1fr;align-items:center;padding:6px 0;display:grid}.tl-time{color:var(--ink-2);font-variant-numeric:tabular-nums;text-align:right;font-size:13px;font-weight:650}.tl-node{background:var(--surface);color:#fff;border:2.5px solid #b9cdbd;border-radius:50%;justify-self:center;place-items:center;width:18px;height:18px;display:grid;position:relative}.is-taken .tl-node{background:var(--leaf);border-color:var(--leaf)}.is-missed .tl-node{border-color:var(--blossom);background:var(--blossom-soft)}.is-skipped .tl-node{border-color:var(--ink-3);background:var(--surface-2)}.is-before .tl-node{border-style:dashed;border-color:var(--ink-3)}.is-due .tl-node{border-color:var(--sun-deep);background:var(--sun)}.is-due .tl-node:after{content:"";background:var(--sun);opacity:.35;animation:breathe 2.4s var(--ease) infinite;z-index:-1;border-radius:50%;position:absolute;inset:-7px}@keyframes breathe{0%,to{opacity:.45;transform:scale(.7)}50%{opacity:0;transform:scale(1.25)}}.tl-card{border-radius:var(--r-card);min-width:0;box-shadow:var(--shadow-soft);background:#fffefbdb;align-items:center;gap:8px;padding:8px 8px 8px 10px;display:flex}.is-past.is-taken .tl-card,.is-skipped .tl-card,.is-before .tl-card{background:#fffefb9e}.is-due .tl-card{background:var(--surface);box-shadow:0 0 0 2px color-mix(in srgb, var(--sun) 70%, transparent), var(--shadow-soft)}.tl-card-main{text-align:left;border-radius:14px;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.tl-card-text{flex-direction:column;min-width:0;display:flex}.tl-name{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.tl-status{color:var(--ink-2);font-size:13px}.is-missed .tl-status{color:var(--blossom-deep)}.is-due .tl-status{color:var(--sun-deep);font-weight:650}.take-btn{border-radius:var(--r-pill);width:40px;height:40px;color:var(--leaf-deep);background:var(--leaf-soft);transition:transform .2s var(--ease), background .2s;flex:none;place-items:center;display:grid}.is-due .take-btn{background:var(--leaf);color:#fff}.take-btn:active{transform:scale(.9)}.tl-now{align-items:center;height:40px;display:flex}.tl-now:after{content:"";left:calc(var(--rail-x) + 14px);border-top:1.5px dashed color-mix(in srgb, var(--sun-deep) 45%, transparent);height:0;position:absolute;top:50%;right:4px}.tl-now-pill{z-index:1;margin-left:calc(var(--rail-x) - 34px);border-radius:var(--r-pill);background:var(--sun);color:#5c4310;padding:4px 12px;font-size:13px;font-weight:750;position:relative;box-shadow:0 4px 12px #a8761b38}.tl-now-pill:before{content:"";z-index:-1;border-radius:inherit;background:var(--sun);animation:2.4s cubic-bezier(.2,.6,.35,1) infinite now-pulse;position:absolute;inset:0}@keyframes now-pulse{0%{opacity:.55;transform:scale(1)}70%,to{opacity:0;transform:scale(1.18,1.6)}}.tl-now-pill span{font-variant-numeric:tabular-nums;margin-left:2px;font-weight:600}.tl-day{padding:18px 0 8px;position:relative}.tl-day span{margin-left:calc(var(--rail-x) - 30px);background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow-soft);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:700;display:inline-block;position:relative}.tl-item.is-later .tl-card{box-shadow:none;background:#fffefb8c}.tl-item.is-later .tl-card-main{min-height:0}.tl-item.is-later .tl-name,.tl-item.is-later .tl-time{color:var(--ink-2)}.tl-more{padding:4px 0 8px calc(var(--rail-x) + 22px);color:var(--ink-2);font-size:13px;position:relative}.tl-day:before,.tl-more:before{content:"";left:calc(var(--rail-x) - 1.5px);background:repeating-linear-gradient(#b9cdbd 0 6px,#0000 6px 12px);width:3px;position:absolute;top:0;bottom:0}.tl-rest{text-align:center;color:var(--ink-2);padding:40px 0}.tl-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:80px 32px 40px;display:flex;position:absolute;inset:0}.tl-empty-title{font-size:20px;font-weight:750}.tl-empty-text{color:var(--ink-2);max-width:28ch;margin-bottom:12px}.tl-blur{pointer-events:none;z-index:2;position:absolute;left:0;right:0}.tl-blur span{position:absolute;inset:0}.tl-blur-top{background:linear-gradient(180deg, var(--bg) 0%, var(--bg) 22%, color-mix(in srgb, var(--bg) 0%, transparent) 100%);height:120px;top:0}.tl-blur-bottom{height:130px;bottom:0}.tl-blur span:first-child{-webkit-backdrop-filter:blur(1.5px)}.tl-blur span:nth-child(2){-webkit-backdrop-filter:blur(4px)}.tl-blur span:nth-child(3){-webkit-backdrop-filter:blur(10px)}.tl-blur-top span:first-child{-webkit-mask-image:linear-gradient(#000 60%,#0000 100%);mask-image:linear-gradient(#000 60%,#0000 100%)}.tl-blur-top span:nth-child(2){-webkit-mask-image:linear-gradient(#000 30%,#0000 70%);mask-image:linear-gradient(#000 30%,#0000 70%)}.tl-blur-top span:nth-child(3){-webkit-mask-image:linear-gradient(#000 0%,#0000 40%);mask-image:linear-gradient(#000 0%,#0000 40%)}.tl-blur-bottom span:first-child{-webkit-mask-image:linear-gradient(#0000 0%,#000 40%);mask-image:linear-gradient(#0000 0%,#000 40%)}.tl-blur-bottom span:nth-child(2){-webkit-mask-image:linear-gradient(#0000 30%,#000 70%);mask-image:linear-gradient(#0000 30%,#000 70%)}.tl-blur-bottom span:nth-child(3){-webkit-mask-image:linear-gradient(#0000 60%,#000 100%);mask-image:linear-gradient(#0000 60%,#000 100%)}.drawer{--lift:0px;z-index:4;margin-top:calc(-40px - var(--lift));transition:margin-top .42s var(--ease);padding:10px 16px calc(var(--tabbar-h) + var(--safe-b) + 32px);background:var(--surface);border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-lift);flex:1 0 auto;position:relative}.drawer.is-dragging{transition:none}.drawer-handle{touch-action:none;cursor:grab;width:calc(100% + 32px);margin:-10px -16px 0;padding:10px 0 4px;display:block}.drawer-head{touch-action:none}.drawer-handle:focus-visible{outline:none}.drawer-handle:focus-visible .drawer-grabber{background:var(--leaf)}.drawer-grabber,.sheet-grabber{background:var(--line);border-radius:5px;width:38px;height:5px;margin:0 auto 14px;display:block}.drawer-head{align-items:center;gap:8px;padding:4px 4px 10px;display:flex}.count{border-radius:var(--r-pill);background:var(--leaf-soft);min-width:24px;height:24px;color:var(--leaf-deep);place-items:center;padding:0 8px;font-size:13px;font-weight:750;display:grid}.group{background:var(--surface-2);border-radius:var(--r-group);margin:0 0 8px;padding:0;list-style:none;overflow:hidden}.drawer .group{background:var(--bg)}.group>*+*{border-top:1px solid var(--line)}.group-title{color:var(--ink-2);padding:18px 6px 8px;font-size:14px;font-weight:700}.row{text-align:left;border-radius:0;align-items:center;gap:12px;width:100%;padding:11px 14px;transition:background .15s;display:flex}button.row:active{background:color-mix(in srgb, var(--leaf-soft) 70%, transparent)}.row-text{flex-direction:column;flex:1;min-width:0;display:flex}.row-title{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.row-sub{color:var(--ink-2);font-size:13px}.row-chev{color:var(--ink-3);flex:none}.row-photo{object-fit:cover;border-radius:50%;flex:none;width:42px;height:42px}.list-empty{color:var(--ink-2);text-align:center;padding:28px 16px}.med-badge{background:var(--tone-soft);color:var(--tone-deep);border-radius:50%;flex:none;place-items:center;display:grid}.dot{border:2.5px solid #b9cdbd;border-radius:50%;flex:none;width:12px;height:12px}.dot.is-taken{background:var(--leaf);border-color:var(--leaf)}.dot.is-missed{background:var(--blossom-soft);border-color:var(--blossom)}.dot.is-due{background:var(--sun);border-color:var(--sun-deep)}.dot.is-skipped{background:var(--surface-2);border-color:var(--ink-3)}.dot.is-before{border-style:dashed;border-color:var(--ink-3)}.btn{border-radius:var(--r-pill);min-height:46px;transition:transform .15s var(--ease), background .15s;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:700;display:inline-flex}.btn:active{transform:scale(.97)}.btn-wide{width:100%}.btn-primary{background:var(--leaf);color:#fff;box-shadow:0 6px 16px #3e75583d}.btn-soft{background:var(--leaf-soft);color:var(--leaf-deep)}.btn-ghost-danger{color:var(--blossom-deep);background:0 0}.btn-danger{background:var(--blossom-deep);color:#fff}.chip{border-radius:var(--r-pill);background:var(--surface);min-height:32px;color:var(--ink-2);box-shadow:inset 0 0 0 1px var(--line);flex:none;align-items:center;gap:4px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.chip-leaf{background:var(--leaf);color:#fff;box-shadow:none}.link{color:var(--leaf-deep);border-radius:10px;padding:8px 4px;font-weight:600}.link-strong{font-weight:800}.link-danger{color:var(--blossom-deep);text-align:left;padding:2px 0}.icon-btn{width:30px;height:30px;color:var(--ink-2);background:var(--line);border-radius:50%;flex:none;place-items:center;display:grid}.banner{border-radius:var(--r-group);background:var(--sun-soft);color:#6b5014;align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;font-size:14px;display:flex}.banner svg{flex:none}.banner p{flex:1}.banner-sky{background:var(--sky-soft);color:var(--sky-deep)}.avatar{background:var(--leaf-soft);color:var(--leaf-deep);letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;font-weight:800;line-height:1;display:inline-grid;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.tab-avatar{box-shadow:0 0 0 2px var(--surface)}.tabbar button.is-on .tab-avatar{box-shadow:0 0 0 2px var(--leaf)}.profile{align-items:center;gap:16px;padding:4px 4px 18px;display:flex}.profile-text{min-width:0}.profile-text h2{overflow-wrap:anywhere;font-size:19px}.profile-text p{overflow-wrap:anywhere}.account-body{max-width:640px}.account-hero{border-radius:var(--r-group);background:linear-gradient(135deg, var(--sky-soft), var(--leaf-soft));gap:14px;padding:20px;display:grid}.account-hero h2{margin-bottom:4px;font-size:17px}.account-hero .btn{justify-self:start}.account-icon{background:var(--surface);width:48px;height:48px;color:var(--sky-deep);border-radius:50%;place-items:center;display:grid}.row-icon{background:var(--leaf-soft);width:36px;height:36px;color:var(--leaf-deep);border-radius:50%;flex:none;place-items:center;display:grid}.row-icon.is-danger{background:var(--blossom-soft);color:var(--blossom-deep)}.row-title.is-danger,.row-sub.is-warn{color:var(--blossom-deep)}button.row:disabled{opacity:.6;cursor:default}.row-danger{background:var(--blossom-soft);flex-wrap:wrap}.row-actions{gap:8px;margin-left:auto;display:flex}.chip-danger{background:var(--blossom-deep);color:#fff;box-shadow:none}.chip:disabled,.btn:disabled{opacity:.6;cursor:default}.account-note{padding:16px 6px 8px}.signin h2{padding-top:4px;font-size:21px}.signin-lead{max-width:48ch;margin:6px 0 18px}.consent{color:var(--ink-2);cursor:pointer;align-items:flex-start;gap:12px;padding:14px 4px 4px;font-size:14px;display:flex}.consent input{width:22px;height:22px;accent-color:var(--leaf);flex:none;margin:1px 0 0}.inline-link{color:var(--leaf-deep);text-underline-offset:2px;font-weight:700;font-size:inherit;text-decoration:underline}.signin-cta{margin-top:14px}.btn-google{color:#1f1f1f;background:#fff;gap:12px;margin-top:18px;box-shadow:inset 0 0 0 1px #d6dcd3,0 2px 6px #27352d0f}.signin-divider{color:var(--ink-3);align-items:center;gap:12px;margin:18px 0 12px;font-size:13px;font-weight:650;display:flex}.signin-divider:before,.signin-divider:after{content:"";background:var(--line);flex:1;height:1px}.code-input{border-radius:var(--r-group);background:var(--surface-2);text-align:center;letter-spacing:.3em;font-variant-numeric:tabular-nums;width:100%;height:64px;color:var(--ink);border:0;outline:none;font-size:30px;font-weight:750}.code-input:focus{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--leaf) 50%, transparent)}.code-input::placeholder{color:var(--line)}.signin-alt{justify-content:space-between;margin-top:10px;display:flex}.signin-alt .link:disabled{color:var(--ink-3)}.legal{max-width:64ch;padding:4px 4px 8px}.legal h2{font-size:21px}.legal h3{margin:18px 0 6px;font-size:15px;font-weight:750}.legal p,.legal li{color:var(--ink-2);line-height:1.55}.legal ul{margin:6px 0;padding-left:20px}.legal a{color:var(--leaf-deep);font-weight:700}.legal-page{max-width:720px;padding:calc(var(--safe-t) + 28px) 20px 64px;margin:0 auto}.legal-page .legal{border-radius:var(--r-sheet);background:var(--surface);box-shadow:var(--shadow-soft);margin-top:20px;padding:28px 24px}.legal-back{color:var(--ink);align-items:center;gap:10px;font-weight:800;text-decoration:none;display:inline-flex}.legal-back img{border-radius:8px}.tabbar{z-index:20;left:50%;bottom:calc(10px + var(--safe-b));border-radius:var(--r-pill);-webkit-backdrop-filter:blur(18px)saturate(1.4);background:#fffefbc7;gap:4px;padding:6px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #27352d1f,inset 0 0 0 1px #fff9}.tabbar button{border-radius:var(--r-pill);height:48px;color:var(--ink-2);transition:background .25s var(--ease), color .25s;align-items:center;gap:6px;padding:0 18px;font-size:14px;font-weight:700;display:flex}.tabbar button.is-on{background:var(--leaf-soft);color:var(--leaf-deep)}.update-toast{z-index:21;left:50%;bottom:calc(var(--tabbar-h) + var(--safe-b) + 22px);border-radius:var(--r-pill);background:var(--ink);color:#fff;width:min(420px,100% - 32px);animation:toast-in .35s var(--ease);align-items:center;gap:12px;padding:10px 10px 10px 16px;font-size:14px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #27352d40}.update-toast p{flex:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}@media (width>=960px){.update-toast{bottom:32px;left:auto;right:32px;transform:none}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}}}.page{padding:calc(var(--safe-t) + 22px) 16px 0}.page-head{padding:0 4px 14px}.summary{border-radius:var(--r-group);background:linear-gradient(135deg, var(--leaf-soft), var(--sky-soft));gap:4px;margin-bottom:14px;padding:16px 18px;display:grid}.summary strong{color:var(--leaf-deep);font-weight:800}.segmented{border-radius:var(--r-pill);background:#e4ebe1;padding:4px;display:flex}.segmented button{border-radius:var(--r-pill);height:34px;color:var(--ink-2);transition:background .2s var(--ease), box-shadow .2s;flex:1;font-size:14px;font-weight:650}.segmented button.is-on{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px #27352d1a}.pill{border-radius:var(--r-pill);white-space:nowrap;flex:none;padding:3px 10px;font-size:12.5px;font-weight:750}.pill-ok{background:var(--leaf-soft);color:var(--leaf-deep)}.pill-late{background:var(--sun-soft);color:var(--sun-deep)}.pill-very-late,.pill-missed{background:var(--blossom-soft);color:var(--blossom-deep)}.pill-muted{background:var(--line);color:var(--ink-2)}.sheet-root{z-index:50;animation:fade-in .3s var(--ease) both;position:fixed;inset:0}.sheet-root.is-closing{animation:.24s both fade-out}.sheet-backdrop{-webkit-backdrop-filter:blur(6px);background:#27352d3d;position:absolute;inset:0}.sheet{background:var(--surface);max-width:560px;animation:rise .42s var(--ease) both;outline:none;flex-direction:column;margin:0 auto;display:flex;position:absolute;left:0;right:0;overflow:hidden}.sheet-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.is-closing .sheet{animation:.24s ease-in both sink}.sheet-float{bottom:calc(10px + var(--safe-b));border-radius:var(--r-sheet);width:calc(100% - 20px);max-height:88dvh;box-shadow:0 24px 60px #27352d33}.sheet-float .sheet-scroll{padding:10px 20px 22px}.sheet-full{top:calc(var(--safe-t) + 28px);border-radius:var(--r-sheet) var(--r-sheet) 0 0;bottom:0}.sheet-full .sheet-scroll{padding:10px 0 0}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(40px)scale(.98)}}@keyframes sink{to{opacity:0;transform:translateY(40px)}}.detail-photo{aspect-ratio:4/3;object-fit:cover;background:var(--surface-2);border-radius:24px;width:100%}.detail-art{background:radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--sun) 35%, transparent), transparent 55%), var(--tone-soft);border-radius:24px;place-items:center;height:150px;display:grid}.detail-art .med-badge{background:var(--surface)}.detail-head{padding:16px 4px 4px}.detail-head h2{font-size:23px}.detail-sub{color:var(--ink-2);margin-top:2px}.detail-schedule{color:var(--leaf-deep);margin-top:6px;font-size:14px;font-weight:650}.detail-desc{background:var(--surface-2);white-space:pre-wrap;border-radius:18px;max-width:70ch;margin:12px 0 4px;padding:14px 16px}.detail-desc.is-empty{color:var(--ink-3)}.row.is-static{cursor:default}.detail-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.detail-actions .btn{white-space:nowrap;flex:140px}.detail-delete{margin:6px auto 0;font-size:14px;display:flex}.detail-confirm{border-radius:var(--r-group);background:var(--leaf-soft);margin-top:18px;padding:16px}.detail-confirm.is-danger{background:var(--blossom-soft)}.detail-confirm p{font-size:14px;line-height:1.45}.detail-confirm .detail-actions{margin-top:12px}.detail-confirm .btn-soft{background:var(--surface)}.detail-schedule.is-finished{color:var(--ink-2)}.finished{margin-top:14px}.finished summary{cursor:pointer;color:var(--ink-2);border-radius:12px;align-items:center;gap:8px;padding:10px 4px;font-size:15px;font-weight:700;list-style:none;display:flex}.finished summary::-webkit-details-marker{display:none}.finished summary:focus-visible{outline:2px solid var(--leaf);outline-offset:2px}.finished-chev{transition:transform .25s var(--ease);margin-left:auto;transform:rotate(90deg)}.finished[open] .finished-chev{transform:rotate(-90deg)}.finished .group{margin-top:4px}.row.is-muted .row-photo,.row.is-muted .med-badge{filter:grayscale(.7);opacity:.75}.row.is-muted .row-title{color:var(--ink-2)}.detail-warn{text-align:center;color:var(--blossom-deep);margin-top:8px;font-size:13px}.form{flex-direction:column;min-height:100%;display:flex}.form-bar{z-index:2;background:var(--surface);grid-template-columns:1fr auto 1fr;align-items:center;padding:0 12px 10px;display:grid;position:sticky;top:-10px}.form-bar h2{font-size:16px}.form-bar .link:last-child{justify-self:end}.form-bar .link:first-child{justify-self:start}.form-body{padding:4px 16px calc(32px + var(--safe-b))}.photo-pick{align-items:center;gap:16px;padding:8px 4px 18px;display:flex}.photo-slot{background:var(--tone-soft);width:84px;height:84px;color:var(--tone-deep);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.photo-slot img{object-fit:cover;border-radius:50%;width:100%;height:100%}.photo-cam{background:var(--leaf);color:#fff;border:3px solid var(--surface);border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;bottom:-2px;right:-2px}.photo-help{flex-direction:column;font-size:14px;font-weight:650;display:flex}.photo-help .muted{font-weight:450}.field{align-items:center;gap:12px;width:100%;min-height:50px;padding:0 14px;display:flex}.field>span{white-space:nowrap;flex:none;min-width:76px;font-weight:650}.kind-grid+.group{margin-top:12px}.field input{text-align:right;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:12px 0}.field input::placeholder,.field-area::placeholder{color:var(--ink-3)}.field input[type=time],.field input[type=date]{font-variant-numeric:tabular-nums;color:var(--leaf-deep);font-weight:700}.field-add{color:var(--leaf-deep);gap:8px;font-weight:700}.field-area{resize:vertical;background:0 0;border:0;outline:none;width:100%;padding:14px;line-height:1.5;display:block}.field:focus-within,.field-area:focus{background:color-mix(in srgb, var(--leaf-soft) 55%, transparent)}.kind-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.field input::-webkit-calendar-picker-indicator{opacity:.45}.kind{background:var(--surface-2);color:var(--ink-2);border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:12px 4px 10px;font-size:13px;font-weight:650;transition:background .2s,color .2s;display:flex}.kind.is-on{background:var(--tone-soft);color:var(--tone-deep);box-shadow:inset 0 0 0 2px var(--tone)}.tones{gap:14px;padding:2px 6px;display:flex}.tone-dot{background:var(--tone);width:34px;height:34px;box-shadow:inset 0 0 0 3px var(--surface);border:2px solid #0000;border-radius:50%;transition:border-color .2s}.tone-dot.is-on{border-color:var(--tone-deep)}.days{justify-content:space-between;gap:6px;display:flex}.day{aspect-ratio:1;background:var(--surface-2);max-width:44px;color:var(--ink-2);border-radius:50%;flex:1;font-weight:750;transition:background .2s,color .2s}.day.is-on{background:var(--leaf);color:#fff}.hint{color:var(--ink-2);padding:8px 6px 0;font-size:13px}.group+.hint{padding-top:0}.form-error{background:var(--blossom-soft);color:var(--blossom-deep);border-radius:16px;margin-top:16px;padding:12px 14px;font-weight:650}.alarm{text-align:center;padding:8px 4px 0}.alarm-halo{background:radial-gradient(circle, var(--sun-soft) 40%, color-mix(in srgb, var(--sun) 40%, transparent) 70%, transparent 71%);border-radius:50%;place-items:center;width:132px;height:132px;margin:6px auto 16px;display:grid}.alarm-photo{object-fit:cover;border-radius:50%;width:96px;height:96px}.alarm h2{font-size:22px}.alarm .muted{margin-top:4px}.alarm-desc{max-width:36ch;color:var(--ink-2);margin:14px auto 0;font-size:14px}.alarm-actions{gap:10px;margin-top:22px;display:grid}.brand,.fab-label{display:none}.tl-scroll,.sheet-scroll,.drawer-scroll,.main{scrollbar-width:none}.tl-scroll::-webkit-scrollbar{display:none}.sheet-scroll::-webkit-scrollbar{display:none}.drawer-scroll::-webkit-scrollbar{display:none}.main::-webkit-scrollbar{display:none}.rail{z-index:6;opacity:0;width:12px;transition:opacity .4s var(--ease);touch-action:none;position:absolute;top:16px;bottom:16px;right:5px}.rail.is-off{display:none}.has-rail:hover>.rail,.tl:hover>.rail,.rail.is-active,.rail.is-dragging{opacity:1}.rail-thumb{border-radius:var(--r-pill);background:color-mix(in srgb, var(--leaf) 34%, transparent);cursor:grab;transition:left .2s var(--ease), right .2s var(--ease), background-color .2s;position:absolute;top:0;left:3.5px;right:3.5px}.rail:hover .rail-thumb,.rail.is-dragging .rail-thumb{background:color-mix(in srgb, var(--leaf) 60%, transparent);left:2px;right:2px}.rail.is-dragging .rail-thumb{cursor:grabbing}.rail-tl{top:44px;bottom:60px}.rail-sheet{top:30px;bottom:30px;right:6px}.rail-drawer{top:24px;bottom:24px;right:6px}.rail-main{display:none}@media (pointer:coarse){.rail{pointer-events:none}}@supports selector(::-webkit-scrollbar){::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background-color:color-mix(in srgb, var(--leaf) 30%, transparent);border-radius:var(--r-pill);background-clip:padding-box;border:4px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:color-mix(in srgb, var(--leaf) 55%, transparent)}}@supports not selector(::-webkit-scrollbar){html,textarea{scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--leaf) 40%, transparent) transparent}}.back-now{z-index:7;border-radius:var(--r-pill);background:var(--surface);height:36px;color:var(--leaf-deep);opacity:0;pointer-events:none;transition:opacity .3s var(--ease), transform .3s var(--ease);align-items:center;gap:6px;padding:0 16px 0 12px;font-size:13px;font-weight:750;display:inline-flex;position:absolute;bottom:56px;left:50%;transform:translate(-50%,10px);box-shadow:0 6px 18px #3e755829}.back-now.is-up{top:40px;bottom:auto;transform:translate(-50%,-10px)}.back-now.is-shown{opacity:1;pointer-events:auto;transform:translate(-50%)}.back-now-arrow{transform:rotate(90deg)}.is-up .back-now-arrow{transform:rotate(-90deg)}@media (width>=600px){.sheet-float{bottom:24px}}@media (width>=960px){:root{--side-w:236px;--gutter:40px}body{background:radial-gradient(1200px 600px at 85% -10%, color-mix(in srgb, var(--sun) 14%, transparent), transparent 60%), radial-gradient(900px 700px at -10% 110%, #dcebd8, transparent 60%), var(--bg);background-attachment:fixed}.app{grid-template-columns:var(--side-w) minmax(0, 1fr);max-width:1440px;display:grid}.main-shell{grid-area:1/2;min-width:0;height:100dvh;position:relative}.main{height:100%;padding:0 var(--gutter);overflow-y:auto}.rail-main{display:block;top:20px;bottom:20px;right:6px}.rail-tl{top:24px;bottom:24px;right:6px}.back-now{bottom:22px}.back-now.is-up{top:22px}.tabbar{height:100dvh;box-shadow:none;-webkit-backdrop-filter:none;border-right:1px solid var(--line);background:0 0;border-radius:0;flex-direction:column;grid-area:1/1;align-items:stretch;gap:4px;padding:32px 18px;position:sticky;top:0;bottom:auto;left:auto;transform:none}.brand{align-items:center;gap:10px;padding:0 10px 28px;font-size:17px;font-weight:800;display:flex}.brand img{border-radius:10px}.tabbar button{gap:12px;height:46px;padding:0 14px;font-size:15px}.tabbar svg{width:22px;height:22px}.home{flex-direction:column;height:100dvh;padding-bottom:32px;display:flex}.home-head{flex:none;align-items:center;padding:36px 4px 24px}.home-date{font-size:15px}.fab{gap:8px;width:auto;height:46px;padding:0 20px 0 16px;font-weight:750;display:inline-flex}.fab-label{display:inline}.home-grid{flex:1;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:24px;min-height:0;display:grid}.tl{border-radius:var(--r-sheet);height:100%;margin-top:0;box-shadow:inset 0 0 0 1px #fff9}.tl-scenery{background:linear-gradient(#edf4ef 0%,#eaf3ef 40%,#e6f0e1 100%)}.tl-scroll{padding:120px 28px 140px}.tl-list{--rail-x:76px;max-width:620px;margin:0 auto}.tl-item{grid-template-columns:52px 48px 1fr;padding:7px 0}.tl-blur-top{background:linear-gradient(#edf4ef 0% 15%,#edf4ef00 100%);height:130px}.tl-blur-bottom{height:150px}.tl-empty{padding:40px}.drawer{border-radius:var(--r-sheet);height:100%;min-height:0;box-shadow:var(--shadow-soft);flex-direction:column;margin-top:0;padding:0;display:flex;overflow:hidden}.drawer-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:24px 20px 20px;overflow-y:auto}.drawer-handle{display:none}.drawer{--lift:0px;transition:none}.drawer-head{touch-action:auto}.page{padding:36px 0 48px}.history{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:32px;max-width:1040px;display:grid}.history-side{position:sticky;top:36px}.history-side .segmented{border-radius:var(--r-group);flex-direction:column;gap:2px}.history-side .segmented button{text-align:left;border-radius:18px;flex:none;height:40px;padding:0 16px}.history-list>section:first-child .group-title{padding-top:4px}.history-list{padding-top:52px}.sheet-float,.sheet-full{border-radius:var(--r-sheet);height:fit-content;max-height:86dvh;margin:auto;top:0;bottom:0;box-shadow:0 30px 80px #27352d38}.sheet-float{width:min(500px,100% - 48px)}.sheet-float .sheet-scroll{padding:24px}.sheet-full{width:min(620px,100% - 48px)}.sheet-full .sheet-scroll{padding:22px 8px 0}.sheet-grabber{display:none}.form-bar{padding-top:0;top:-22px}.form-body{padding-bottom:28px}.kind-grid{grid-template-columns:repeat(7,1fr)}.kind{padding:12px 2px 10px;font-size:12px}@keyframes rise{0%{opacity:0;transform:translateY(16px)scale(.98)}}@keyframes sink{to{opacity:0;transform:translateY(12px)scale(.98)}}}@media (width>=960px) and (width<=1199px){:root{--side-w:200px;--gutter:28px}.home-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:20px}.tl-scroll{padding-left:14px;padding-right:14px}.tl-list{--rail-x:66px}.tl-item{grid-template-columns:44px 44px 1fr}.history{grid-template-columns:260px minmax(0,1fr);gap:24px}}@media (width>=1280px){:root{--side-w:260px;--gutter:56px}}@media (hover:hover) and (pointer:fine){button.row:hover,.tl-card-main:hover .tl-name{color:var(--leaf-deep)}button.row:hover{background:color-mix(in srgb, var(--leaf-soft) 50%, transparent)}.take-btn:hover{background:var(--leaf);color:#fff}.tabbar button:not(.is-on):hover{background:color-mix(in srgb, var(--leaf-soft) 55%, transparent);color:var(--ink)}.kind:not(.is-on):hover,.day:not(.is-on):hover{background:var(--leaf-soft)}.btn-google:hover{background:#f7f9f6}.btn-soft:hover{background:color-mix(in srgb, var(--leaf-soft) 70%, var(--leaf) 12%)}.btn-primary:hover,.fab:hover{background:var(--leaf-deep)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
