:root{color-scheme:light;--font-body: "Figtree", "Segoe UI", system-ui, sans-serif;--font-display: var(--font-body);--bg: #f3f5f8;--surface: #ffffff;--sheet: #f3f5f8;--col: #e7ebf1;--track: #e3e8ef;--seg-on: #ffffff;--ink: #141922;--ink-2: #2f3847;--muted: #566070;--faint: #8691a2;--line: #dbe1e8;--hair: #ebeff4;--person-1: #2f5e9e;--person-2: #0b6b5e;--person-both: var(--faint);--avatar-tint-alpha: 15%;--chip: #e3e8ef;--page: #dfe4eb;--bar: #f3f5f8;--drawer-shadow: 0 10px 18px -10px rgb(20 25 34 / 35%);--well: #e4e9ef;--well-line: #d7dde6;--well-hair: #d4dae3;--well-shadow: inset 0 1px 3px rgb(20 25 34 / 14%);--brand: #6d45b8;--logo-solid: var(--brand);--logo-outline: var(--ink);--accent: var(--brand);--accent-ink: #ffffff;--accent-text: var(--brand);--accent-soft: #efe9f8;--danger: #b3261e;--danger-soft: #fbeaea;--warn: #a35200;--warn-soft: #fbf0e3;--radius: 12px;--radius-sm: 10px;--pill: 10px;--ring-wash-alpha: 14%;--today-wash-alpha: 4%;--c1: #2b7a4b;--c2: #8a5a2b;--c3: #5d7317;--c4: #b8386f;--c5: #55627a;--c6: #8e3f6b;--c7: #937000;--c8: #6e6458;--shadow-fab: 0 6px 18px rgb(0 0 0 / 24%);--shadow-lift: 0 14px 28px rgb(20 25 34 / 28%);--shadow-toast: 0 8px 22px rgb(0 0 0 / 28%);--shadow-sheet: 0 -10px 30px rgb(0 0 0 / 28%);--shadow-seg: 0 1px 2px rgb(0 0 0 / 16%);--scrim: rgb(8 12 22 / 50%);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--gutter: 16px;--tap: 44px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--font-display: "Sora", "Segoe UI", system-ui, sans-serif;--bg: #131929;--surface: #1c2440;--sheet: #161d31;--col: #182036;--track: #131929;--seg-on: #33406b;--ink: #eef0f8;--ink-2: #d3d8e8;--muted: #aab2cb;--faint: #8590ae;--line: #2f3a5e;--hair: #28335a;--person-1: #8db4ea;--person-2: #5fd0c0;--chip: #2b365c;--page: #0d1220;--bar: #161d31;--drawer-shadow: 0 10px 18px -10px rgb(0 0 0 / 60%);--well: #0e1324;--well-line: #232c4a;--well-hair: #1f2742;--well-shadow: inset 0 2px 5px rgb(0 0 0 / 50%);--brand: #b9a0f2;--accent-ink: #1b1422;--accent-soft: #3a3145;--danger: #ff9a8c;--danger-soft: #4a2a33;--warn: #f5b453;--warn-soft: #3f3424;--logo-solid: var(--ink);--logo-outline: var(--brand);--radius: 16px;--radius-sm: 12px;--pill: 12px;--ring-wash-alpha: 28%;--today-wash-alpha: 7%;--c1: #74cf98;--c2: #d6ac80;--c3: #b8cf6a;--c4: #f28db9;--c5: #b0bad0;--c6: #e3a0cc;--c7: #e3c260;--c8: #c4b8a8}}:root[data-theme=dark]{color-scheme:dark;--font-display: "Sora", "Segoe UI", system-ui, sans-serif;--bg: #131929;--surface: #1c2440;--sheet: #161d31;--col: #182036;--track: #131929;--seg-on: #33406b;--ink: #eef0f8;--ink-2: #d3d8e8;--muted: #aab2cb;--faint: #8590ae;--line: #2f3a5e;--hair: #28335a;--person-1: #8db4ea;--person-2: #5fd0c0;--chip: #2b365c;--page: #0d1220;--bar: #161d31;--drawer-shadow: 0 10px 18px -10px rgb(0 0 0 / 60%);--well: #0e1324;--well-line: #232c4a;--well-hair: #1f2742;--well-shadow: inset 0 2px 5px rgb(0 0 0 / 50%);--brand: #b9a0f2;--accent-ink: #1b1422;--accent-soft: #3a3145;--danger: #ff9a8c;--danger-soft: #4a2a33;--warn: #f5b453;--warn-soft: #3f3424;--logo-solid: var(--ink);--logo-outline: var(--brand);--radius: 16px;--radius-sm: 12px;--pill: 12px;--ring-wash-alpha: 28%;--today-wash-alpha: 7%;--c1: #74cf98;--c2: #d6ac80;--c3: #b8cf6a;--c4: #f28db9;--c5: #b0bad0;--c6: #e3a0cc;--c7: #e3c260;--c8: #c4b8a8}@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/figtree-latin-ext-400-normal-CXAzuTZb.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/figtree-latin-500-normal-BWnGEVsr.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/figtree-latin-ext-500-normal-Du0rIuHj.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/figtree-latin-ext-600-normal-DJlfifZj.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/figtree-latin-700-normal-th6qEP7c.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/figtree-latin-ext-700-normal-CS4sQkGV.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/sora-latin-ext-600-normal-Cue1zdhl.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/sora-latin-700-normal-9waGdLWo.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/sora-latin-ext-700-normal-DM0oy5s8.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}*,*:before,*:after{box-sizing:border-box}html{height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100%;background:var(--page);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.35;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}#root{min-height:100dvh;display:flex;flex-direction:column}h1,h2,h3,p{margin:0;font-weight:inherit;font-size:inherit}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none;padding:0;text-align:inherit}a{color:var(--accent-text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;margin:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border-radius:var(--pill);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:13.5px;font-weight:600;white-space:nowrap}.chip__dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}.icon-btn{width:var(--tap);height:var(--tap);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;color:var(--ink)}.icon-btn--on{background:var(--chip);color:var(--accent-text)}.icon-btn:disabled{color:var(--faint);opacity:.5;cursor:default}.textbtn{flex:0 0 auto;min-height:32px;padding:0 6px;font-size:13px;font-weight:600;color:var(--accent-text)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap);padding:0 16px;border-radius:var(--radius-sm);border:1px solid transparent;font-size:15px;font-weight:600;line-height:1.2;white-space:nowrap;transition:background-color .12s ease,opacity .12s ease}.btn--lg{min-height:52px;font-size:16px}.btn--block{display:flex;width:100%}.btn--primary{background:var(--accent);color:var(--accent-ink)}.btn--secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn--quiet{background:transparent;color:var(--accent-text);padding:0 10px}.btn--danger{background:transparent;color:var(--danger);padding:0 10px}.btn:disabled{opacity:.5;cursor:default}.btn:not(:disabled):active{opacity:.8}.checklist{display:flex;flex-direction:column}.step{display:flex;align-items:flex-start;gap:2px;min-height:var(--tap);border-top:1px solid var(--hair);background:var(--surface)}.step--dragging{position:relative;z-index:2;box-shadow:0 4px 14px #00000024}.step__tick{flex:0 0 36px;width:36px;height:var(--tap);display:flex;align-items:center;justify-content:flex-start}.step__box{width:18px;height:18px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:5px;border:2px solid var(--faint);color:var(--accent-ink)}.step--done .step__box{border-color:var(--accent);background:var(--accent)}.step__text{flex:1 1 auto;min-width:0;min-height:var(--tap);padding:12px 0;border:0;background:none;font:inherit;font-size:16px;line-height:20px;color:var(--ink);resize:none;overflow:hidden;field-sizing:content}.step__text:focus-visible,.checklist__add-input:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--accent)}.step--done .step__text{color:var(--muted);text-decoration:line-through}.step__delete,.step__handle{flex:0 0 36px;width:36px;height:var(--tap);display:flex;align-items:center;justify-content:center;color:var(--faint)}.step__handle{cursor:grab;touch-action:none}.checklist__add{display:flex;align-items:center;gap:6px;border-top:1px solid var(--hair);color:var(--faint)}.checklist__add-icon{flex:0 0 auto}.checklist__add-input{flex:1 1 auto;min-width:0;min-height:var(--tap);padding:0;border:0;background:none;font-size:16px;color:var(--ink)}.checklist__add-input::placeholder{color:var(--faint)}.checklist__add-btn{flex:0 0 auto;width:30px;height:30px;margin-right:3px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--accent);color:var(--accent-ink)}.sheet{position:fixed;inset:0;z-index:40;display:flex;flex-direction:column;justify-content:flex-end}.sheet__scrim{position:absolute;inset:0;background:var(--scrim);cursor:default}.sheet__box{position:relative;display:flex;flex-direction:column;max-height:93%;overflow:hidden;border-radius:18px 18px 0 0;box-shadow:var(--shadow-sheet);background:var(--sheet);animation:sheet-rise .22s ease-out}.sheet--dialog .sheet__box{background:var(--surface)}.sheet__header{flex:0 0 auto;position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:8px 6px 2px;font-size:15px;border-bottom:1px solid var(--hair);background:var(--surface);touch-action:none}.sheet__grip{position:absolute;top:4px;left:50%;width:36px;height:4px;margin-left:-18px;border-radius:2px;background:var(--line)}.sheet__heading{font-weight:600;padding-top:4px}.sheet__header-start{justify-self:start;display:flex;align-items:center}.sheet__header-end{justify-self:end;display:flex;align-items:center}.sheet__close{min-height:var(--tap);padding:0 10px;font-weight:600;color:var(--accent-text)}.sheet__subheader{flex:0 0 auto;border-bottom:1px solid var(--hair);background:var(--surface)}.sheet__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:14px 14px calc(14px + var(--safe-bottom));display:flex;flex-direction:column;gap:18px}.sheet--dialog .sheet__body{gap:12px}@keyframes sheet-rise{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}@media(min-width:900px){.sheet--panel{justify-content:stretch;align-items:stretch;flex-direction:row;justify-content:flex-end;pointer-events:none}.sheet--panel .sheet__scrim{display:none}.sheet--panel .sheet__box{pointer-events:auto;width:420px;max-height:none;height:100%;border-radius:0;border-left:1px solid var(--line);box-shadow:-8px 0 24px #0000001f;animation:panel-slide .2s ease-out}.sheet--panel .sheet__grip{display:none}.sheet--dialog{align-items:center;justify-content:center}.sheet--dialog .sheet__box{width:400px;border-radius:var(--radius)}.sheet--dialog .sheet__grip{display:none}}@keyframes panel-slide{0%{transform:translate(24px);opacity:0}to{transform:none;opacity:1}}.sheet__box:focus-visible{outline:none}.confirm__message{font-size:15px;line-height:1.45;color:var(--ink-2)}.confirm__actions{display:flex;flex-direction:column;gap:8px}.confirm__choices{display:flex;flex-direction:column;border-radius:var(--radius-sm);border:1px solid var(--line);overflow:hidden}.confirm__choice{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-top:1px solid var(--hair);background:var(--surface);font-size:15px;font-weight:500}.confirm__choice:first-child{border-top:0}.confirm__choice-hint{font-size:13px;font-weight:400;color:var(--muted)}.confirm__check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px;color:var(--ink-2)}.confirm__check input{width:18px;height:18px;accent-color:var(--accent)}.notion-chip{display:inline;padding:1px 7px 1px 5px;border-radius:6px;background:var(--chip);color:var(--ink-2);font-weight:600;text-decoration:none;-webkit-box-decoration-break:clone;box-decoration-break:clone}.notion-chip--link{background:var(--accent-soft);color:var(--accent-text)}.notion-chip__icon{margin-right:4px;vertical-align:-2px}.desc-editor{min-height:64px;padding:10px 0;border-top:1px solid var(--hair);font-size:16px;line-height:1.5;color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere;cursor:text}.desc-editor:focus,.desc-editor:focus-visible{outline:none}.desc-editor:focus-visible{box-shadow:inset 0 -2px 0 var(--accent)}.desc-editor--empty:before{content:attr(data-placeholder);color:var(--faint);pointer-events:none}.desc-editor .notion-chip{cursor:pointer}.desc-editor [data-href]{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.desc-editor:focus [data-href]{color:inherit;text-decoration:none;cursor:text}.seg{display:inline-flex;gap:3px;padding:3px;border-radius:8px;background:var(--track)}.seg--fill{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:4px;border-radius:var(--radius-sm)}.seg__opt{min-height:32px;padding:0 10px;border-radius:6px;font-size:13px;font-weight:500;color:var(--muted);white-space:nowrap}.seg--fill .seg__opt{text-align:center;min-height:38px;padding:0;border-radius:8px;font-weight:600}.seg__opt--on{background:var(--seg-on);color:var(--ink);box-shadow:var(--shadow-seg)}.rec__choice--on{color:var(--accent-text)}.rec__custom{display:flex;flex-direction:column;gap:12px}.rec__every{display:flex;align-items:center;gap:10px;font-size:15px}.rec__n{width:56px;height:36px;padding:0 8px;border-radius:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px;text-align:center}.rec__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.rec__day{height:40px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-weight:600}.rec__day--on{background:var(--ink);border-color:var(--ink);color:var(--bg)}.rows{display:flex;flex-direction:column;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-size:14px}.row{min-height:var(--tap);display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border-top:1px solid var(--hair);color:inherit;text-align:left}.row:first-child{border-top:0}.row--tall{min-height:48px}.row--picks{cursor:pointer}.row--disabled{color:var(--muted)}.row__label{display:flex;flex-direction:column;gap:2px;min-width:0}.row__hint{font-size:12px;color:var(--muted)}.row__end{display:flex;align-items:center;gap:8px;flex:0 0 auto;max-width:62%;font-weight:500;text-align:right}.row__value--muted{font-weight:400;color:var(--muted)}.row__value--tabular{font-variant-numeric:tabular-nums}.row__picker{position:relative;min-height:var(--tap)}.row__ghost{color:var(--muted);font-weight:400}.row__input{min-height:36px;padding:0 4px;border:0;border-radius:6px;background:transparent;color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums;text-align:right;font-size:16px;-webkit-appearance:none;appearance:none}.row__input::-webkit-date-and-time-value{text-align:right}.row__input--ghost{position:absolute;inset:0;width:100%;opacity:0}.row__clear{width:28px;height:36px;display:flex;align-items:center;justify-content:center;margin-right:-8px;border-radius:6px;font-size:18px;color:var(--muted)}.switch{flex:0 0 38px;width:38px;height:22px;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;padding:2px;border-radius:99px;background:var(--faint);transition:background-color .12s ease}.switch--on{justify-content:flex-end;background:var(--accent)}.switch--disabled{opacity:.45}.switch__knob{width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003}.panel__card{display:flex;flex-direction:column;padding:2px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface)}.panel__title{min-height:48px;padding:0;border:0;background:none;font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--ink)}.panel__title:focus-visible{outline:none;box-shadow:inset 0 -2px 0 var(--accent)}.panel__title::placeholder{color:var(--faint)}.panel__section{display:flex;flex-direction:column;gap:8px}.panel__eyebrow{padding-left:4px}.panel__chips{display:flex;flex-wrap:wrap;gap:6px}.chip--pick{min-height:36px;height:auto;padding:0 12px;font-weight:500;font-size:13px;border-color:var(--line);background:transparent;color:var(--ink)}.chip--new{gap:4px;border-style:dashed;color:var(--muted)}.chip--new-input{padding:0 4px 0 12px;border-color:var(--accent)}.chip--new-input input{width:9em;min-height:34px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:16px}.chip--new-input input:focus-visible{outline:none}.chip--pick.chip--on{border-color:var(--ink);background:var(--surface)}.panel__note{padding:0 4px;font-size:12px;color:var(--muted)}.panel__note--danger{color:var(--danger);padding:8px 0 10px}.panel__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px}.panel__made{font-size:12px;line-height:1.4;color:var(--muted)}.panel__gone{padding:20px 4px;color:var(--muted)}.panel__fields{display:contents;margin:0;padding:0;border:0;min-width:0}.panel__ro-note{margin:12px var(--gutter) 0;padding:8px 10px;border-radius:8px;background:var(--chip);font-size:13px;color:var(--muted)}.panel__helper{padding-left:4px;font-size:13px;color:var(--muted)}.panel__select{max-width:60%;height:36px;padding:0 8px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font-size:16px}.followup__custom{flex-wrap:wrap}.avatar{--person: var(--faint);width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:color-mix(in srgb,var(--person) var(--avatar-tint-alpha),var(--surface));color:var(--person);flex:0 0 auto}.avatar--p1{--person: var(--person-1)}.avatar--p2{--person: var(--person-2)}.avatar--small{width:20px;height:20px;font-size:10px}.avatar-pair{display:inline-flex}.avatar--stacked{box-shadow:0 0 0 2px var(--surface)}.avatar--overlap{margin-left:-6px}.ev--p1{--pc: var(--person-1)}.ev--p2{--pc: var(--person-2)}.ev--both{--pc: var(--person-both)}.evcount{flex:0 1 auto;min-width:0;height:28px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border-radius:14px;background:none;color:var(--muted);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.evcount--open{background:var(--chip);color:var(--ink-2)}.evcount__dots{display:inline-flex;gap:3px}.evcount__dot{width:7px;height:7px;border-radius:50%;background:var(--pc)}.evcount--open .evcount__dot{box-shadow:0 0 0 1.5px var(--chip)}.evchips{position:relative;padding-left:12px}.evchips__scroll{display:flex;gap:4px;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 28px 8px 0;scrollbar-width:none}.evchips__scroll::-webkit-scrollbar{display:none}.evchips__fade{position:absolute;top:4px;right:0;bottom:8px;width:28px;pointer-events:none;background:linear-gradient(to right,transparent,var(--evfade, var(--page)))}.evchip{flex:0 0 auto;height:32px;display:inline-flex;align-items:center;gap:5px;padding:0 10px 0 6px;border-radius:16px;background:color-mix(in srgb,var(--pc) 16%,var(--surface));color:var(--ink);font-size:12px;white-space:nowrap}.evchip__pin{margin-left:-1px;color:var(--muted)}.evcard{display:flex;flex-direction:column;gap:6px;padding:8px var(--gutter) 20px}.evcard__title{margin-bottom:6px;font-size:19px;font-weight:600;line-height:1.3;text-wrap:balance}.evcard__line{display:flex;align-items:center;gap:10px;min-height:32px;font-size:14px;color:var(--ink-2)}.evcard__line>svg{flex:0 0 20px;color:var(--muted)}.evcard__line--top{align-items:flex-start;padding-top:6px}.evcard__text{min-width:0;overflow-wrap:anywhere}.evcard__desc{white-space:pre-wrap;color:var(--muted)}.evcard__line a{font-weight:600;text-decoration:none}.evcard__actions{display:flex;flex-direction:column;gap:8px;margin-top:12px}.evcard__ext{text-decoration:none}.evcount__dot.ev--both,.cstrip__dot.ev--both{background:linear-gradient(90deg,var(--person-1) 50%,var(--person-2) 50%)}.quick{position:fixed;left:0;right:0;bottom:calc(68px + var(--safe-bottom));z-index:12;display:flex;align-items:center;gap:8px;padding:8px 12px;border-top:1px solid var(--line);background:var(--bg)}.quick__input{flex:1 1 auto;min-width:0;height:var(--tap);box-sizing:border-box;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px}.quick__input::placeholder{color:var(--faint)}.quick__who,.quick__lock,.quick__add,.quick__close{flex:0 0 var(--tap);width:var(--tap);height:var(--tap);box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.quick__lock{border:1px solid var(--line);color:var(--muted)}.quick__who{border:1px solid var(--line);background:var(--surface)}.quick__face{display:inline-flex;align-items:center}.quick__edit{flex:0 0 auto;height:var(--tap);display:flex;align-items:center;gap:6px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);color:var(--ink-2);font-size:14px;font-weight:600}.quick__lock--on{border-color:var(--ink);background:var(--ink);color:var(--bg)}.quick__add{background:var(--accent);color:var(--accent-ink)}.quick__close{color:var(--muted)}.fab{position:fixed;z-index:12;right:16px;bottom:calc(84px + var(--safe-bottom));width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:50%;box-shadow:var(--shadow-fab);background:var(--accent);color:var(--accent-ink)}.quick__cat{position:relative;flex:0 1 auto;min-width:0;display:flex;align-items:center}.quick__dot{position:absolute;left:11px;pointer-events:none}.quick__select{max-width:120px;height:var(--tap);box-sizing:border-box;padding:0 10px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:16px;appearance:none;-webkit-appearance:none;text-overflow:ellipsis}.quick__select--on{padding-left:26px;color:var(--ink);font-weight:600}.quick:not(.quick--header){display:grid;grid-template-columns:auto auto auto 1fr auto auto;grid-template-areas:"input input input input input add" "cat who lock . edit close";gap:8px}.quick:not(.quick--header) .quick__input{grid-area:input}.quick:not(.quick--header) .quick__add{grid-area:add}.quick:not(.quick--header) .quick__cat{grid-area:cat}.quick:not(.quick--header) .quick__who{grid-area:who}.quick:not(.quick--header) .quick__lock{grid-area:lock}.quick:not(.quick--header) .quick__close{grid-area:close}.quick:not(.quick--header) .quick__edit{grid-area:edit}.quick:not(.quick--header) .quick__select{max-width:180px}.quick--header{position:static;flex:1 1 260px;min-width:0;padding:0;border-top:0;background:transparent}.quick--header .quick__input,.quick--header .quick__select,.quick--header .quick__who,.quick--header .quick__lock,.quick--header .quick__edit,.quick--header .quick__add{height:38px}.quick--header .quick__lock,.quick--header .quick__add{flex-basis:38px;width:38px}.quick--header .quick__input{background:var(--bg)}.quick--header .quick__who{flex:0 0 auto;width:auto;min-width:38px;padding:0 6px}.quick--header .quick__input,.quick--header .quick__select{font-size:14px}.search{display:flex;flex-direction:column;gap:10px;padding:12px var(--gutter) 20px}.search__input{width:100%;height:42px;box-sizing:border-box;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);color:var(--ink);font-size:16px}.search__note{font-size:13px;color:var(--muted)}.search__results{margin:0;padding:0;list-style:none}.search__result{width:100%;display:flex;flex-direction:column;gap:2px;padding:10px 2px;border-top:1px solid var(--hair);text-align:left}.search__title{display:inline-flex;align-items:center;gap:6px;font-size:15px;color:var(--ink)}.search__result small{font-size:12px;color:var(--muted)}.search__result--done .search__title{color:var(--muted);text-decoration:line-through}.wordmark{font-family:Sora,Segoe UI,system-ui,sans-serif;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.wordmark__solid{color:var(--logo-solid)}.wordmark__zap{height:1em;width:2.069em;vertical-align:baseline;overflow:visible;color:var(--logo-outline)}.splash{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:100dvh}.splash__name{font-size:24px;color:var(--faint);animation:splash-pulse 1.4s ease-in-out infinite}@keyframes splash-pulse{0%,to{opacity:.5}50%{opacity:1}}.toast{position:fixed;z-index:30;left:12px;right:12px;bottom:calc(82px + var(--safe-bottom));min-height:48px;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 2px 16px;border-radius:var(--radius-sm);box-shadow:var(--shadow-toast);background:var(--ink);color:var(--bg);animation:toast-in .16s ease-out}.toast--raised{bottom:calc(194px + var(--safe-bottom))}.toast__text{font-weight:500}.toast__action{min-height:var(--tap);padding:0 12px;font-weight:700;text-decoration:underline;color:var(--bg)}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@media(min-width:900px){.toast,.toast--raised{left:auto;right:24px;bottom:24px;width:360px}}.update{position:fixed;z-index:31;top:calc(8px + var(--safe-top));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:6px 6px 6px 14px;border-radius:var(--pill);box-shadow:var(--shadow-toast);background:var(--ink);color:var(--bg);font-size:14px;font-weight:500;white-space:nowrap}.update__btn{min-height:36px;padding:0 12px;border-radius:8px;background:var(--bg);color:var(--ink);font-weight:700}.whatsnew{display:flex;flex-direction:column;gap:16px}.whatsnew__head{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:0 0 6px;font-size:14px;font-weight:400}.whatsnew__version{font-weight:700;color:var(--ink)}.whatsnew__date{color:var(--muted)}.whatsnew__current{font-size:12px;font-weight:600;color:var(--accent-text)}.whatsnew__items{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.45;color:var(--ink-2)}.whatsnew__lead,.whatsnew__more{margin:0;font-size:14px;color:var(--muted)}.feedback,.feedback__sent{display:flex;flex-direction:column;gap:12px}.feedback__actions{display:flex;gap:8px}.feedback__lead,.feedback__sent p{margin:0;font-size:15px;line-height:1.45;color:var(--ink-2)}.feedback__text{min-height:140px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;font-size:16px;line-height:1.45;resize:vertical}.feedback__text::placeholder{color:var(--faint)}.feedback__check{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px;color:var(--ink-2)}.feedback__check input{width:18px;height:18px;accent-color:var(--accent)}.feedback__line{margin:-8px 0 0 28px;font-size:13px;color:var(--muted)}.feedback__line--off{text-decoration:line-through}.feedback__error{margin:0;font-size:14px;color:var(--danger)}.shell{flex:1 1 auto;display:flex;flex-direction:column;min-height:100dvh;padding-top:var(--safe-top)}.shell__content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding-bottom:calc(80px + var(--safe-bottom))}.shell__tabs{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 8px calc(10px + var(--safe-bottom));border-top:1px solid var(--line);background:var(--surface)}.shell__tab{height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:12px;font-weight:600;color:var(--muted);text-decoration:none;border-radius:8px}.shell__tab--on{color:var(--accent-text)}.shell__head{flex:0 0 auto;display:flex;align-items:center;gap:8px 16px;padding:0 var(--gutter);background:var(--surface);border-bottom:1px solid var(--line)}.shell__logo{flex:0 0 auto;font-size:20px}.shell__head .shell__tabs{position:static;display:flex;gap:2px;padding:0;border:0;background:transparent}.shell__head .shell__tab{flex-direction:row;gap:8px;height:52px;padding:0 12px;font-size:14px;border-radius:0}.shell__head .shell__tab--on{box-shadow:inset 0 -3px 0 var(--accent)}.shell__search{flex:0 1 220px;height:38px;display:flex;align-items:center;gap:8px;padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);color:var(--faint);font-size:14px}.shell__search span{color:var(--muted)}@media(min-width:900px){.shell__content{padding-bottom:24px}}.shell__more{position:relative;display:contents}.shell__more>.shell__tab{width:100%}.shell__menu-scrim{position:fixed;inset:0;z-index:40;cursor:default}.shell__menu{position:fixed;z-index:41;min-width:200px;display:flex;flex-direction:column;padding:6px;border-radius:14px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sheet)}.shell__menu-item{min-height:44px;padding:0 12px;border-radius:8px;font-size:15px;font-weight:500;color:var(--ink);text-align:left}.shell__menu-item:hover,.shell__menu-item:focus-visible{background:var(--chip)}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:13px;font-weight:600;color:var(--ink-2)}.field__input{min-height:48px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px}.field__input::placeholder{color:var(--faint)}.field__hint{font-size:13px;color:var(--muted)}.field--error .field__input{border-color:var(--danger)}.field--error .field__hint{color:var(--danger)}.onboard{flex:1 1 auto;display:flex;flex-direction:column;gap:28px;width:100%;max-width:480px;margin:0 auto;padding:calc(24px + var(--safe-top)) var(--gutter) calc(24px + var(--safe-bottom))}.onboard--centre{justify-content:center;gap:40px}.onboard__brand{text-align:center}.onboard__name{font-family:var(--font-display);font-size:34px;font-weight:700;letter-spacing:-.01em}.onboard__tagline{margin-top:6px;font-size:16px;color:var(--muted)}.onboard__header{display:flex;flex-direction:column;gap:8px}.onboard__logo{align-self:flex-start;font-size:22px;line-height:1.2}.onboard__title{font-family:var(--font-display);font-size:26px;font-weight:700;line-height:1.2}.onboard__subtitle{font-size:17px;font-weight:600}.onboard__lead{font-size:15px;line-height:1.45;color:var(--muted)}.onboard__form,.onboard__actions,.onboard__alt{display:flex;flex-direction:column;gap:14px}.onboard__alt{padding-top:22px;border-top:1px solid var(--line)}.onboard__error{font-size:14px;color:var(--danger)}.onboard__note{font-size:14px;color:var(--muted)}.onboard__chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.onboard__buttons{display:flex;flex-wrap:wrap;gap:10px}.cats{display:flex;flex-direction:column;gap:10px}.cats__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.cats__row{display:flex;align-items:center;flex-wrap:wrap;gap:2px;min-height:var(--tap);border-top:1px solid var(--hair)}.cats__row:first-child{border-top:0}.cats__row--archived{color:var(--muted)}.cats__swatch-btn{width:36px;height:var(--tap);display:flex;align-items:center;justify-content:center}.cats__swatch{width:14px;height:14px;border-radius:50%;flex:0 0 auto}.cats__swatch--dim{opacity:.4;margin:0 11px}.cats__name{flex:1 1 auto;min-width:0;min-height:var(--tap);padding:0;border:0;background:none;font-size:16px;color:inherit}.cats__name--text{display:flex;align-items:center}.cats__lock{color:var(--faint);margin-right:4px}.cats__btn{width:36px;height:var(--tap);display:flex;align-items:center;justify-content:center;color:var(--muted)}.cats__btn:disabled{opacity:.3}.cats__archive{min-height:var(--tap);padding:0 8px;font-size:13px;font-weight:600;color:var(--accent-text)}.cats__archive--danger{color:var(--danger)}.cats__palette-row{flex:0 0 100%;padding:0 0 8px 36px}.cats__palette{display:inline-flex;flex-wrap:wrap;gap:6px}.cats__color{width:28px;height:28px;border-radius:50%;border:2px solid transparent;box-shadow:0 0 0 1px var(--line)}.cats__color--on{border-color:var(--surface);box-shadow:0 0 0 2px var(--ink)}.cats__add{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:10px;border-top:1px solid var(--hair)}.cats__input{flex:1 1 140px;min-width:0;height:var(--tap);padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:16px}.cats__archived summary{min-height:36px;display:flex;align-items:center;font-size:13px;color:var(--muted);cursor:pointer}.install{display:flex;align-items:flex-start;gap:8px;margin:8px var(--gutter) 0;padding:12px 6px 12px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--accent-soft)}.install__body{flex:1 1 auto;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.install__title{font-weight:600}.install__line{font-size:13.5px;line-height:1.4;color:var(--ink-2)}.install__close{flex:0 0 var(--tap);width:var(--tap);height:var(--tap);margin:-8px -4px -8px 0;display:flex;align-items:center;justify-content:center;color:var(--muted)}@media(min-width:900px){.install{max-width:720px;margin-left:auto;margin-right:auto}}.invites__make{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.invites__make .field{flex:1 1 200px}.invites__fresh{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:12px;border-radius:var(--radius-sm);background:var(--accent-soft)}.invites__code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:26px;font-weight:700;letter-spacing:.08em}.invites__mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-weight:600;letter-spacing:.04em}.invites__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.invites__row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;font-size:14px;border-top:1px solid var(--line)}.invites__row--used,.invites__row--expired,.invites__row--cancelled{color:var(--muted)}.invites__actions{display:flex;gap:4px}.src{display:flex;flex-direction:column;gap:12px}.src__line{font-size:14px;line-height:1.45;color:var(--ink-2)}.src__hint{font-size:12.5px;line-height:1.4;color:var(--muted)}.src__error{font-size:13px;color:var(--danger)}.src__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.src__row{display:flex;flex-direction:column;gap:4px;padding:6px 0 10px;border-top:1px solid var(--hair)}.src__row:first-child{border-top:0;padding-top:0}.src__toggle{min-height:var(--tap);display:flex;align-items:center;gap:10px;width:100%;color:var(--ink)}.src__dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto}.src__name{flex:1 1 auto;min-width:0;font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.src__owner{padding-left:20px}.src__select{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ink-2)}.src__select select{min-height:var(--tap);padding:0 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:15px;font-weight:400}.settings{display:flex;flex-direction:column;gap:22px;width:100%;max-width:720px;margin:0 auto;padding:8px var(--gutter) 24px}.settings__section{display:flex;flex-direction:column;gap:8px}.settings__section>.eyebrow{padding-left:4px}.settings__sub{padding:8px 4px 0;font-size:13px;font-weight:600;color:var(--ink-2)}.settings__card{display:flex;flex-direction:column;gap:14px;padding:14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.settings__line{font-size:14px;color:var(--ink-2)}.settings__line--muted{color:var(--muted)}.settings__row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;font-size:14px}.settings__row-label{display:flex;flex-direction:column;gap:2px}.settings__hint{font-size:12px;color:var(--muted)}.settings__stack{display:flex;flex-direction:column;gap:12px}.settings__row--wrap{flex-wrap:wrap}.settings__clean{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.settings__row--button{flex-wrap:nowrap;width:100%;text-align:left}.whose__btn{min-width:40px;height:var(--tap);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.whose__face{position:relative;display:inline-flex;align-items:center;padding:2px;border-radius:999px}.whose__btn--on .whose__face{box-shadow:0 0 0 2px var(--accent)}.whose__btn:focus-visible{outline:none}.whose__btn:focus-visible .whose__face{outline:2px solid var(--accent);outline-offset:3px}.whose__face .avatar{width:26px;height:26px;font-size:12px}.whose__face .avatar--overlap{margin-left:-8px}.whose__all{width:30px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:13px;background:var(--track);color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.3px}.whose__lock{width:32px;height:var(--tap);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;color:var(--muted)}.whose__lock--open{color:var(--accent-text)}.whose__lock:focus-visible{outline:2px solid var(--accent);outline-offset:-4px;border-radius:var(--radius-sm)}.whose__badge{position:absolute;right:-5px;bottom:-5px;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 2px var(--bar)}.whose__bar{display:flex;align-items:center;gap:6px;padding:0 12px 10px;background:var(--bar);animation:whose-drop .16s ease-out}.whose__wrap{position:relative;display:inline-flex}.whose__drop{position:absolute;top:calc(100% + 6px);left:50%;z-index:21;transform:translate(-50%);padding:6px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sheet);animation:whose-drop .16s ease-out}.whose__bar .seg{flex:1 1 auto}@keyframes whose-drop{0%{opacity:0;translate:0 -6px}}@media(prefers-reduced-motion:reduce){.whose__bar,.whose__drop{animation:none}}.filt__btn{position:relative}.filt__btn--on{color:var(--accent-text)}.filt__dot{position:absolute;top:9px;right:8px;width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 2px var(--bar, var(--surface))}.filt__sheet{display:flex;flex-direction:column;gap:18px;padding:12px var(--gutter) 20px}.filt__helper{font-size:13px;color:var(--muted)}.filt__sec{display:flex;flex-direction:column;gap:8px}.filt__chips{display:flex;flex-wrap:wrap;gap:6px}.filt__chip--on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.filt__actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.filt__wide{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.filt__sep{width:1px;height:22px;margin:0 4px;background:var(--line)}.ring-slot{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--surface)}.ring-slot--card{width:var(--tap);height:var(--tap)}.ring-slot--small{width:40px;height:34px}.ring-slot--mini{width:10px;height:10px}.ring{--ring: var(--faint);--wash: color-mix(in srgb, var(--ring) var(--ring-wash-alpha), transparent);box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2.5px solid var(--ring);background:var(--wash)}.ring--card{width:20px;height:20px}.ring--small{width:16px;height:16px;border-width:2px}.ring--mini{width:10px;height:10px;border-width:2px}.ring--none{--wash: var(--hair)}.ring--waiting{border-style:dashed}.ring--done{border:0;background:var(--ring)}.hgrid{--hour: 54px;--axis: 54px;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--surface)}.hgrid__allday{flex:0 0 auto;display:flex;align-items:flex-start;gap:6px;padding:6px 8px 6px 0;border-bottom:1px solid var(--line)}.hgrid__allday-label{flex:0 0 calc(var(--axis) - 6px);padding-top:7px;text-align:right;font-size:11px;color:var(--muted)}.hgrid__allday-list{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:4px}.hallday{max-width:100%;min-width:0;height:30px;display:inline-flex;align-items:center;gap:6px;padding:0 10px 0 7px;border-radius:6px;background:color-mix(in srgb,var(--pc) 20%,var(--surface));box-shadow:inset 3px 0 0 var(--pc);color:var(--ink);font-size:12.5px;font-weight:600}.hallday__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hgrid__scroll{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.hgrid__body{position:relative;margin:9px 8px 12px 0}.hgrid__hour{position:absolute;left:var(--axis);right:0;height:0;border-top:1px solid var(--hair)}.hgrid__label{position:absolute;right:calc(100% + 6px);top:-8px;font-size:11px;line-height:16px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.hgrid__lane{position:absolute;top:0;bottom:0;left:calc(var(--axis) + 2px);right:0}.hgrid__now{position:absolute;left:calc(var(--axis) - 2px);right:0;z-index:3;height:2px;margin-top:-1px;background:var(--danger);pointer-events:none}.hgrid__now-dot{position:absolute;left:-4px;top:-4px;width:10px;height:10px;border-radius:50%;background:var(--danger)}.hblock{position:absolute;box-sizing:border-box;display:flex;align-items:flex-start;overflow:hidden;border-radius:6px;color:var(--ink);text-align:left}.hblock__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px;pointer-events:none}.hblock__title{font-size:13px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hblock__meta{font-size:11.5px;line-height:1.3;color:var(--ink-2);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hblock--event{gap:6px;padding:4px 6px 4px 9px;background:color-mix(in srgb,var(--pc) 20%,var(--surface));box-shadow:inset 3px 0 0 var(--pc)}.hblock--compact{align-items:center;padding-top:0;padding-bottom:0}.hblock--compact .hblock__text{flex-direction:row;align-items:baseline;gap:6px}.hblock--compact .hblock__title{flex:0 1 auto}.hblock--compact .hblock__meta{flex:1 1 0}.hblock--task{--cat: var(--faint);padding-right:6px;border:1.5px solid var(--cat);background:var(--surface);touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.hblock--task .ring-slot{height:40px}.hblock--task .hblock__text{padding-top:5px}.hblock__meta--soon{color:var(--warn);font-weight:700}.hblock__meta--late{color:var(--danger);font-weight:700}.hblock__open{position:absolute;inset:0;border-radius:inherit}.hblock--lifted{opacity:.35}.hblock__handle{position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none}.hblock:has(.hblock__handle:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.hblock:focus-visible,.hallday:focus-visible{outline-offset:1px}.hblock__open:focus-visible{outline-offset:-2px}.cday{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.cstrip{flex:0 0 auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:2px 6px 4px;background:var(--surface);border-bottom:1px solid var(--line)}.cstrip__day{min-width:0;height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:10px;color:var(--ink)}.cstrip__wd{font-size:11px;font-weight:600;color:var(--muted)}.cstrip__n{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid transparent;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.cstrip__day--today .cstrip__n{border-color:var(--accent);color:var(--accent-text);font-weight:700}.cstrip__day--on .cstrip__n{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:700}.cstrip__dots{height:6px;display:flex;align-items:center;gap:3px}.cstrip__dot{width:6px;height:6px;border-radius:50%;background:var(--pc)}.cstrip__dot--task{background:var(--faint)}.cstrip__day--over{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px}.cday__notdone{flex:0 0 auto;width:100%;min-height:var(--tap);display:flex;align-items:center;gap:4px;padding:0 14px 0 16px;background:var(--surface);border-bottom:1px solid var(--line);color:var(--danger);font-size:13.5px;font-weight:700;text-align:left}.cday__notdone>span{flex:0 1 auto;min-width:0}.cpanel{flex:0 0 auto;display:flex;flex-direction:column;min-height:0;background:var(--surface);border-bottom:1px solid var(--line)}.cpanel--over{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px}.cpanel__head{flex:0 0 auto;display:flex;align-items:center;min-height:var(--tap);padding:0 4px 0 8px}.cpanel__toggle{flex:1 1 auto;min-width:0;min-height:var(--tap);display:flex;align-items:center;gap:6px;padding:0 4px;color:var(--muted)}.cpanel__counts{font-size:13px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.cpanel__add{color:var(--muted)}.cpanel__list{max-height:min(34dvh,280px);overflow-y:auto;overscroll-behavior:contain;border-top:1px solid var(--hair)}.cpanel__more{width:100%;min-height:var(--tap);padding:0 16px 0 52px;border-top:1px solid var(--hair);font-size:13.5px;font-weight:600;color:var(--accent-text);text-align:left}.cpanel__empty{padding:0 16px 12px 36px;font-size:13px;color:var(--muted)}.crow{position:relative;min-height:var(--tap);display:flex;align-items:center;gap:8px;padding:0 4px;border-top:1px solid var(--hair);background:var(--surface)}.crow:first-child{border-top:0}.crow__open{position:absolute;inset:0;width:100%;height:100%}.crow__open:focus-visible{outline-offset:-2px}.crow__title{flex:1 1 auto;min-width:0;font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.crow__info{flex:0 0 auto;min-width:0;max-width:45%;font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.crow__info--soon{color:var(--warn);font-weight:700}.crow__info--late{color:var(--danger);font-weight:700}.crow__who{flex:0 0 var(--tap);display:flex;align-items:center;justify-content:center;pointer-events:none}.crow--done{padding-left:calc(var(--tap) + 12px)}.crow__lock{margin:2px;color:var(--faint)}.crow--faint>.ring-slot,.crow--faint>.crow__who{opacity:.45}.crow--faint .crow__title{color:var(--muted)}.crow--done .crow__title{color:var(--muted);text-decoration:line-through}.crow--drag{touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.crow--lifted{opacity:.35;outline:1.5px dashed var(--faint);outline-offset:-4px}.crow__handle{position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none}.crow:has(.crow__handle:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.cghost{display:flex;align-items:center;gap:2px;max-width:260px;padding-right:12px;border:1.5px solid var(--accent);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-lift);font-size:14px;font-weight:600}.cghost__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.csheen{animation:csheen 1.6s ease-out}@keyframes csheen{0%,55%{box-shadow:inset 0 0 0 2px var(--accent);background-color:var(--accent-soft)}to{box-shadow:inset 0 0 0 2px transparent}}.cday--wide{gap:12px;width:100%;max-width:1280px;margin:0 auto;padding:12px var(--gutter) 16px}.cday--wide .cstrip{padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius)}.cday__main{flex:1 1 auto;min-height:0;display:flex;align-items:stretch;gap:12px}.cday__side{flex:0 0 320px;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.cday__side .cpanel{flex:1 1 auto;border-bottom:0}.cday__side .cpanel__list{flex:1 1 auto;max-height:none}.cday__hours{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius)}.card{--card-text: 56px;position:relative;background:var(--surface)}.card--faint .card__end .ring-slot,.card--faint .card__who{opacity:.45}.card--faint .card__title{color:var(--muted)}.card--pending .card__title:after{content:"";display:inline-block;width:5px;height:5px;margin-left:6px;vertical-align:middle;border-radius:50%;background:var(--faint)}.card--sheen{overflow:hidden}.card--sheen:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--accent) 22%,transparent) 50%,transparent 80%);background-size:250% 100%;animation:card-sheen 1.3s ease-out}.card--sheen:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 2px var(--accent);animation:card-ring 1.6s ease-out forwards}@keyframes card-sheen{0%{background-position:120% 0}to{background-position:-40% 0}}@keyframes card-ring{0%,60%{opacity:1}to{opacity:0}}.card__open{position:absolute;inset:0;width:100%;height:100%;border-radius:inherit}.card__grid{display:grid;grid-template-columns:calc(var(--card-text) - 4px) minmax(0,1fr) auto;align-items:start;padding:10px 4px}.card__who{display:flex;align-items:center;justify-content:center;min-height:22px;pointer-events:none}.card__end{display:flex;align-items:center;margin:-11px 0;padding-left:4px}.card__title{min-width:0;padding-top:1px;font-size:16px;line-height:1.3;font-weight:500;color:var(--ink);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;pointer-events:none}.card__lock{margin:3px;color:var(--faint)}.card__meta{grid-column:2 / 4;display:flex;align-items:center;gap:8px;margin-top:4px;margin-right:14px;min-width:0}.card__details{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:13px;color:var(--muted);pointer-events:none}.card__waiting{font-weight:600;color:var(--ink-2)}.card__date{display:inline-flex;align-items:center;gap:4px;font-variant-numeric:tabular-nums}.card__date--soon{color:var(--warn);font-weight:700}.card__date--late{color:var(--danger);font-weight:700}.card__kind{display:inline-flex;align-items:center;gap:3px}.card__tools{position:relative;z-index:1;flex:0 0 auto;display:flex;align-items:center;margin:-8px -6px -8px 0}.card__tool{height:36px;padding:0 4px;display:flex;align-items:center;color:var(--muted)}.card__tool--on{color:var(--ink)}.card__tool-box{height:22px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:4px;border-radius:6px;border:1px solid var(--faint);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}.card__tool--on .card__tool-box{border-color:var(--ink)}.card__tool-box--steps{padding:0 6px}.card__descline{grid-column:2 / 4;display:flex;align-items:flex-start;gap:2px;min-width:0;margin-top:2px;margin-right:8px}.card__desc-text{flex:1 1 auto;min-width:0;font-size:13px;line-height:20px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.card__descline--open .card__desc-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink-2);font-size:14px;line-height:1.5;pointer-events:auto;position:relative;z-index:1}.card__expand{position:relative;z-index:1;flex:0 0 auto;width:32px;height:32px;margin:-6px -6px -6px 0;display:flex;align-items:center;justify-content:center;color:var(--faint)}.card__expand svg{transition:transform .16s ease}.card__expand--open svg{transform:rotate(180deg)}.card__descline .card__tools{margin-top:-8px;margin-right:0}.card__steps{position:relative;z-index:1;display:flex;flex-direction:column;padding:0 14px 8px calc(var(--card-text) - 4px);margin-top:-4px}.card__step{min-height:36px;display:flex;align-items:flex-start;gap:10px;padding:0 4px;font-size:14px;color:var(--ink);text-align:left}.card__step--done{color:var(--muted)}.card__step-text{min-width:0;padding:8px 0;line-height:20px;overflow-wrap:anywhere}.card__step-box{flex:0 0 18px;width:18px;height:18px;margin-top:9px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:5px;border:2px solid var(--faint);color:var(--surface)}.card__step--done .card__step-box{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.card__step--done .card__step-text{text-decoration:line-through}.card__done-row{display:flex;align-items:center;min-height:34px;padding:0 6px 0 var(--card-text)}.card__done-row>.ring-slot{margin-left:2px}.card__done-title{flex:1 1 auto;min-width:0;font-size:15px;color:var(--muted);text-decoration:line-through;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.card__done-day{flex:0 0 auto;margin-left:8px;font-size:12px;color:var(--faint);pointer-events:none}@media(prefers-reduced-motion:reduce){.card--sheen:before{animation-duration:1.3s!important}.card--sheen:after{animation-duration:1.6s!important}}.card__select{width:22px;height:22px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;border-radius:6px;border:2px solid var(--faint);color:var(--accent-ink)}.card__select-slot{pointer-events:none}.card__select--on{border-color:var(--accent);background:var(--accent)}.card--selected{background:color-mix(in srgb,var(--accent) 9%,var(--surface))}.card__end .card__tools{margin:0}.dlist{display:flex;flex-direction:column;gap:8px}.dlist__head{display:flex;align-items:center;gap:6px;padding-left:4px}.dlist__title{flex:1 1 auto;min-width:0;font-size:15px;font-weight:700}.dlist__add{color:var(--muted)}.dlist__empty{padding:0 4px;font-size:13.5px;color:var(--muted)}.dlist__rows{overflow:hidden;border-radius:var(--radius);background:var(--surface)}.dlist__row{position:relative;border-top:1px solid var(--hair)}.dlist__row:first-child{border-top:0}.dlist__row--drag{touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.dlist__row--lifted{opacity:.35;outline:1.5px dashed var(--faint);outline-offset:-4px}.dlist__handle{position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none}.dlist__row:has(.dlist__handle:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.devent{width:100%;min-height:var(--tap);display:flex;align-items:center;gap:10px;padding:8px 12px 8px 14px;border-top:1px solid var(--surface);background:color-mix(in srgb,var(--pc) 20%,var(--surface));box-shadow:inset 3px 0 0 var(--pc);color:var(--ink);text-align:left}.devent:first-child{border-top:0}.devent__text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.devent__title{font-size:14.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.devent__meta{font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mphone{display:flex;flex-direction:column;gap:14px;width:100%;max-width:720px;margin:0 auto;padding:10px 12px 24px}.mphone__card{display:flex;flex-direction:column;gap:6px;padding:10px 6px;border-radius:var(--radius);background:var(--surface)}.mphone__weekdays,.mphone__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.mphone__weekdays{font-size:11px;font-weight:600;text-align:center;color:var(--muted)}.mphone__cell{height:54px;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;padding-top:3px;border-radius:10px;color:var(--ink)}.mphone__cell--blank{visibility:hidden}.mphone__num{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid transparent;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}.mphone__cell--today .mphone__num{border-color:var(--accent);color:var(--accent-text);font-weight:700}.mphone__cell--on .mphone__num{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:700}.mphone__dots,.mphone__bars{height:5px;display:flex;align-items:center;gap:3px}.mphone__dot{--mc: var(--muted);display:inline-block;flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:var(--mc)}.mphone__dot--faint{background:transparent;box-shadow:inset 0 0 0 1.25px var(--mc)}.mphone__bar{display:inline-block;flex:0 0 auto;width:10px;height:3px;border-radius:2px;background:var(--pc)}.mphone__legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin:4px 8px 0;font-size:12px;color:var(--muted)}.mphone__legend>span{display:inline-flex;align-items:center;gap:6px}.mphone__legend .mphone__dot{width:7px;height:7px}.shell:has(.cal){height:100dvh;min-height:0}.shell:has(.cal) .shell__content{overflow:hidden}.cal{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.cal__body{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden}.cal--month .cal__body{overflow-y:auto;overscroll-behavior:contain}.cal__loading{flex:1 1 auto}.ctop{flex:0 0 auto;display:flex;align-items:center;gap:2px;padding:4px 4px 4px 8px;background:var(--surface);border-bottom:1px solid var(--line)}@media(max-width:380px){.ctop{gap:0}}.ctop--wide{flex-wrap:wrap;gap:6px 8px;padding:6px var(--gutter)}.ctop__period{flex:0 1 auto;min-width:0;height:var(--tap);padding:0 4px;display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.15;white-space:nowrap}.ctop__period b{font-size:15px;font-weight:700}.ctop__period small{font-size:11px;font-weight:500;color:var(--muted)}.ctop__only{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ctop__spacer{flex:1 1 auto}.ctop__switch{margin-left:8px}.ctop__modes{flex:0 0 auto;padding:6px 12px;background:var(--surface);text-align:center}.ctop__offline{flex:0 0 auto;padding:6px 16px;font-size:12.5px;color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line)}.fcx{--fc-border-color: var(--line);--fc-page-bg-color: var(--surface);--fc-neutral-bg-color: var(--col);--fc-neutral-text-color: var(--muted);--fc-today-bg-color: color-mix(in srgb, var(--accent) var(--today-wash-alpha), transparent);--fc-now-indicator-color: var(--danger);--fc-event-bg-color: transparent;--fc-event-border-color: transparent;--fc-event-text-color: var(--ink);--fc-event-selected-overlay-color: transparent;--fc-highlight-color: var(--accent-soft);--fc-more-link-bg-color: var(--col);--fc-more-link-text-color: var(--ink-2);--fc-small-font-size: 11px;font-size:12px;color:var(--ink)}.cweek{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.fcx--week{flex:1 1 auto;min-height:0;padding:4px 4px 0 0;background:var(--surface)}.cweek__day{flex:0 0 auto;height:clamp(190px,42%,420px);overflow-y:auto;overscroll-behavior:contain;padding:10px 12px 88px;border-top:1px solid var(--line)}.fcx--month{width:100%;max-width:1280px;margin:0 auto;padding:12px var(--gutter) 24px}.fcx .fc{height:100%}.fcx .fc-theme-standard td,.fcx .fc-theme-standard th,.fcx .fc-theme-standard .fc-scrollgrid{border-color:var(--line)}.fcx--week .fc-scrollgrid{border-left:0;border-right:0}.fcx--month .fc-scrollgrid{overflow:hidden;border-radius:var(--radius);background:var(--surface)}.fcx .fc-timegrid-slot{height:22px}.fcx .fc-timegrid-slot-label-cushion,.fcx .fc-timegrid-axis-cushion{padding:0 5px 0 0;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.fcx .fc-timegrid-axis-cushion{max-width:34px;line-height:1.1;text-align:right}.fcx .fc-timegrid-now-indicator-line{border-width:2px 0 0}.fcx .fc-timegrid-now-indicator-arrow{display:none}.fcx .fc-col-header-cell{border-bottom:0}.fcx .fc-col-header-cell-cushion{display:block;padding:0}.fcx--month .fc-col-header-cell-cushion{padding:6px 0;font-size:12px;font-weight:600;color:var(--muted)}.fcx-dayhead{width:100%;min-height:var(--tap);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:3px 0;border-radius:10px;color:var(--ink)}.fcx-dayhead__wd{font-size:11px;font-weight:600;color:var(--muted)}.fcx-dayhead__n{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid transparent;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.fcx-dayhead--today .fcx-dayhead__n{border-color:var(--accent);color:var(--accent-text);font-weight:700}.fcx-dayhead--on .fcx-dayhead__n{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:700}.fcx-dayhead__dot{width:5px;height:5px;margin-top:1px;border-radius:50%;background:var(--faint)}.fcx-dayhead--over{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px}.fcx .fcx-col--on{background:color-mix(in srgb,var(--accent) 9%,transparent)}.cweek:not(.cweek--wide) .fc-daygrid-day-frame{min-height:0}.fcx .fc-daygrid-day-top{flex-direction:row}.fcx .fc-daygrid-day-number{width:100%;padding:2px 2px 0;color:var(--ink);text-decoration:none}.fcx-daycell{width:100%;display:flex;align-items:center;justify-content:space-between;gap:4px}.fcx-daycell__n{min-width:28px;height:28px;padding:0 4px;border-radius:14px;border:2px solid transparent;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink)}.fcx-daycell__n:hover{background:var(--chip)}.fcx .fc-day-today .fcx-daycell__n{border-color:var(--accent);color:var(--accent-text);font-weight:700}.fcx .fcx-day--on .fcx-daycell__n{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.fcx .fc-day-other .fc-daygrid-day-top{opacity:1}.fcx .fc-day-other .fcx-daycell__n{color:var(--muted)}.fcx-daycell__add{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);opacity:0}.fcx-daycell__add:hover{background:var(--chip);color:var(--ink)}.fcx .fc-daygrid-day:hover .fcx-daycell__add,.fcx-daycell__add:focus-visible{opacity:1}@media(hover:none){.fcx-daycell__add{opacity:1}}.fcx .fc-daygrid-day-frame{min-height:112px;cursor:pointer}.fcx .fc-event,.fcx .fc-event:focus{margin:1px;border:0;background:transparent;box-shadow:none}.fcx .fc-event:focus-visible{outline:2px solid var(--accent);outline-offset:0}.fcx .fc-timegrid-event .fc-event-main,.fcx .fc-daygrid-event .fc-event-main{height:100%;padding:0}.fcx .fc-timegrid-event-harness-inset .fc-timegrid-event{box-shadow:none}.fcx .fc-daygrid-event{white-space:normal}.fcx-ev{box-sizing:border-box;height:100%;min-height:20px;display:flex;flex-direction:column;gap:1px;padding:2px 4px 2px 7px;overflow:hidden;border-radius:5px;background:color-mix(in srgb,var(--pc) 20%,var(--surface));box-shadow:inset 3px 0 0 var(--pc);color:var(--ink);font-size:11px;font-weight:600;line-height:1.2;cursor:pointer}.fcx .fc-daygrid-event .fcx-ev{flex-direction:row;align-items:center;gap:4px}.fcx-ev__time{font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-2)}.fcx-ev__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcx .fc-timegrid-event .fcx-ev__title{white-space:normal;overflow-wrap:anywhere}.fcx .fc-timegrid-event-short .fcx-ev{flex-direction:row;align-items:center;gap:4px;padding-top:0;padding-bottom:0}.fcx .fc-timegrid-event-short .fcx-ev__title{white-space:nowrap}.fcx-task{--cat: var(--line);box-sizing:border-box;height:100%;min-height:20px;display:flex;align-items:center;gap:3px;padding:1px 3px;overflow:hidden;border-radius:5px;border:1.5px solid var(--cat);background:var(--surface);color:var(--ink);font-size:11px;font-weight:500;line-height:1.2;cursor:pointer}.fcx .fc-timegrid-event .fcx-task{flex-direction:column;align-items:flex-start;gap:1px;padding:3px 2px 3px 3px}.fcx-task__time{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted)}.fcx-task__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fcx .fc-timegrid-event .fcx-task__title{white-space:normal;overflow-wrap:anywhere}.fcx-task--faint{border-style:dashed;border-color:color-mix(in srgb,var(--cat) 50%,transparent)}.fcx-task--faint .fcx-task__time{opacity:.5}.fcx-task--faint .fcx-task__title{color:var(--muted)}.fcx-task--done{border-color:var(--hair)}.fcx-task--done .fcx-task__title{color:var(--muted);text-decoration:line-through}.fcx .fc-daygrid-more-link{font-size:11.5px;font-weight:600}.fcx .fc-event-dragging .fcx-task{box-shadow:var(--shadow-lift)}@media(min-width:900px){.fcx--week{width:100%;max-width:1280px;margin:0 auto;padding:12px var(--gutter) 16px;background:transparent}.fcx--week .fc-scrollgrid{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.fcx .fc-timegrid-slot{height:26px}.fcx-ev,.fcx-task{font-size:12px}}@media(max-width:899px){.ctop{background:var(--bar)}}.selbar{position:fixed;left:0;right:0;bottom:calc(68px + var(--safe-bottom));z-index:12;display:flex;flex-direction:column;gap:4px;padding:6px 8px 8px;border-top:1px solid var(--line);background:var(--bg)}.selbar__head{display:flex;align-items:center;gap:6px}.selbar__cancel{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--ink-2)}.selbar__count{font-size:14px;font-weight:600;color:var(--ink)}.selbar__actions{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}.selbar__act{flex:1 0 auto;min-width:58px;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:4px 6px;border-radius:10px;font-size:12px;font-weight:600;color:var(--ink-2)}.selbar__act:disabled{color:var(--faint)}.selbar__act--danger:not(:disabled){color:var(--danger)}.selbar__dot{width:14px;height:14px;margin:2px;border-radius:50%;border:2px solid currentColor}.selbar__who{height:18px;display:flex;align-items:center}.selbar__who span{width:13px;height:13px;border-radius:50%;border:2px solid currentColor}.selbar__who span+span{margin-left:-4px}.selpick{display:flex;flex-direction:column;border-radius:var(--radius-sm);border:1px solid var(--line);overflow:hidden}.selpick__row{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 14px;border-top:1px solid var(--hair);background:var(--surface);font-size:15px;font-weight:500;color:var(--ink);text-align:left}.selpick__row:first-child{border-top:0}.selpick__row--date{cursor:pointer}.selpick__label{display:flex;align-items:center;gap:8px}.selpick__hint{font-size:13px;font-weight:400;color:var(--muted)}.selpick__date{min-height:36px;border:0;background:transparent;color:var(--ink);font-size:16px}.selpick__note{margin:0;font-size:13px;color:var(--muted)}@media(min-width:900px){.selbar{left:50%;right:auto;bottom:calc(16px + var(--safe-bottom));width:min(560px,calc(100vw - 32px));transform:translate(-50%);border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sheet)}}.plan{display:flex;flex-direction:column}.shell:has(.plan--columns){height:100dvh;min-height:0}.shell:has(.plan--columns) .shell__content{overflow:hidden}.plan--columns{flex:1 1 auto;min-height:0}.plan--wide.plan--columns{padding-bottom:0}.ptop{display:flex;align-items:center;gap:2px;padding:4px 4px 4px 8px;background:var(--surface);border-bottom:1px solid var(--line)}.ptop--wide{flex-wrap:wrap;gap:6px 8px;padding:6px var(--gutter)}.ptop__week{flex:0 0 auto;height:var(--tap);padding:0 4px;display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.15;white-space:nowrap}.ptop__week b{font-size:15px;font-weight:700}.ptop__week small{font-size:11px;font-weight:500;color:var(--muted)}.ptop__only{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.ptop__spacer{flex:1 1 auto}@media(max-width:380px){.ptop{gap:0}}.ptop__layout{margin-left:8px}.ptop__menu-wrap{position:relative}.ptop__menu-scrim{position:fixed;inset:0;z-index:20;cursor:default}.ptop__menu{position:absolute;top:calc(100% + 4px);right:0;z-index:21;width:260px;display:flex;flex-direction:column;gap:6px;padding:12px 14px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sheet)}.ptop__menu .eyebrow+.seg{margin-bottom:6px}.ptop__connect{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px;padding:4px 10px 4px 16px;font-size:13px;color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line)}.ptop__offline{padding:6px 16px;font-size:12.5px;color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line)}@media(max-width:899px){.ptop,.ptop__connect,.ptop__offline{background:var(--bar)}}.phead{position:relative;z-index:4;padding-bottom:2px;border-radius:0 0 16px 16px;background:var(--bar);box-shadow:var(--drawer-shadow)}.phead .ptop,.phead .ptop__connect,.phead .ptop__offline{background:transparent;border-bottom:0}.phead .ptop{padding-bottom:0}.tray--drawer{gap:4px;margin:0;padding:0 12px 7px}.tray--drawer .tray__line{min-height:0;gap:6px;padding:0;border-radius:0;background:transparent}.tray--drawer .tray__count{height:30px;padding:0 9px;border-radius:8px;background:var(--chip)}.tray--drawer .tray__count--danger{background:var(--chip);color:var(--danger)}.tray--drawer .tray__count[aria-expanded=true]{background:var(--accent);color:var(--accent-ink);font-weight:600}.tray__add-row{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:0 14px 0 16px;border-bottom:1px solid var(--hair);font-size:14px;font-weight:600;color:var(--muted);text-align:left}.tray__drawer-group{--surface: var(--well);--hair: var(--well-hair);overflow:hidden;border-radius:var(--radius);border:1px solid var(--well-line);background:var(--well);box-shadow:var(--well-shadow)}.tray--drawer,.pstack__days{transition:opacity .18s ease}.plan--dim-week .pstack__days,.plan--dim-tray .tray--drawer{opacity:.4}.pstack__days{display:flex;flex-direction:column}.pstack__backdrop{position:absolute;inset:0;z-index:3}.tray__scroll{max-height:270px;overflow-y:auto;overscroll-behavior:contain}.tray__scroll--more{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 36px),transparent)}.tray__empty{margin:0;padding:12px 16px;font-size:13px;color:var(--muted)}.tray{display:flex;flex-direction:column;gap:8px;margin:10px 12px 0}.tray--flat{margin:0;gap:0}.tray__line{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:var(--tap);padding:8px;border-radius:var(--radius);background:var(--surface)}.tray--flat .tray__line{border-radius:0;background:transparent}.tray__count{flex:0 0 auto;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;border-radius:14px;background:var(--chip);color:var(--ink-2);font-size:13px;white-space:nowrap}.tray__count b{font-weight:700}.tray__count--danger{background:var(--danger-soft);color:var(--danger);font-weight:700}.tray__count[aria-expanded=true]{background:var(--accent);color:var(--accent-ink);font-weight:600}.tray__count--over{outline:2px dashed var(--accent);outline-offset:2px}.tray__group{overflow:hidden;border-radius:var(--radius);background:var(--surface)}.tray__group--flat{border-radius:0;border-top:1px solid var(--line)}.tray__ghead{display:flex;align-items:center;gap:8px;height:40px;padding:0 2px 0 14px}.tray__gcount{font-size:13px;color:var(--muted)}.tray__spacer{flex:1 1 auto}.tray__add{width:40px;height:40px;color:var(--muted)}.tray-strip{flex:0 0 52px;display:flex;flex-direction:column;align-items:center;gap:8px;padding-bottom:12px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.tray-strip__label,.dstrip__label{writing-mode:vertical-rl;font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--muted)}.tray-strip__count{writing-mode:vertical-rl;width:28px;padding:10px 0;border-radius:14px;background:var(--chip);color:var(--ink-2);font-size:13px;white-space:nowrap}.tray-col{flex:0 0 290px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.tray-col__head{flex:0 0 auto;display:flex;align-items:center;height:var(--tap);padding:0 8px}.tray-col__toggle{display:flex;align-items:center;gap:8px;height:var(--tap)}.tray-col__body{flex:1 1 auto;min-height:0;overflow-y:auto;border-top:1px solid var(--hair)}.pstack{position:relative;display:flex;flex-direction:column;padding-bottom:24px}.pstack--wide{width:100%;max-width:720px;margin:0 auto}.day{margin-top:6px}.day__head{position:sticky;top:var(--safe-top);z-index:3;display:flex;align-items:center;gap:6px;height:var(--tap);padding:0 4px 0 12px;background:var(--page)}.day__toggle{min-width:0;height:var(--tap);display:flex;align-items:center;gap:8px;padding:0 4px;color:var(--ink)}.day__title{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day__count{font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}.day--today .day__toggle,.day--today .day__count,.dcol--today .day__toggle,.dcol--today .day__count{color:var(--accent-text)}.day__spacer{flex:1 1 auto}.day__add{color:var(--muted)}.day__empty{padding:4px 16px 10px 40px;font-size:13px;color:var(--muted)}.drop-hot{background:var(--accent-soft);outline:2px dashed var(--accent);outline-offset:-2px;border-radius:var(--radius)}.drop-hot .day__head,.drop-hot .dcol__body,.drop-hot .plist{background:transparent}.plist{margin:0 12px;overflow:hidden;border-radius:var(--radius);background:var(--surface)}.plist--flat{margin:0;border-radius:0}.plist__row{position:relative;border-top:1px solid var(--hair)}.plist__row:first-child{border-top:0}.plist__row--drag{touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.plist__row--lifted{opacity:.35;outline:1.5px dashed var(--faint);outline-offset:-4px}.plist__handle{position:absolute;inset:0;z-index:-1;opacity:0;pointer-events:none}.plist__row:has(.plist__handle:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}.plist__ghost{width:100%;overflow:hidden;border:1.5px solid var(--accent);border-radius:var(--radius-sm);box-shadow:var(--shadow-lift)}.pstrip{flex:0 0 auto;display:flex;gap:6px;padding:6px 12px;overflow-x:auto;background:var(--surface);border-bottom:1px solid var(--line);scrollbar-width:none}.pstrip__day{flex:0 0 48px;height:var(--tap);border-radius:10px;border:1px solid var(--line);background:var(--surface);font-size:11px;line-height:1.25;text-align:center}.pstrip__day b{display:block;font-size:13px}.pstrip__day--today{border-color:var(--accent);color:var(--accent-text)}.ptray-panel{flex:0 0 auto;max-height:34%;overflow-y:auto;background:var(--surface);border-bottom:1px solid var(--line)}.pcols{flex:1 1 auto;min-height:0;display:flex;gap:10px;padding:10px 12px 12px;overflow-x:auto;scroll-snap-type:x mandatory}.dcol{flex:0 0 85%;display:flex;flex-direction:column;overflow:hidden;scroll-snap-align:start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);--evfade: var(--surface)}.dcol--today{border:1.5px solid var(--accent)}.dcol .day__head{position:static;flex-wrap:wrap;height:auto;min-height:var(--tap);background:var(--surface)}.pboard .day__title{overflow:visible;text-overflow:clip}.dcol__body{flex:1 1 auto;min-height:0;overflow-y:auto;border-top:1px solid var(--hair)}.dcol__body .plist{margin:0;border-radius:0}.pboard{flex:1 1 auto;min-height:0;display:flex;align-items:stretch;gap:10px;padding:12px var(--gutter) 16px;overflow-x:auto}.pboard .dcol{flex:1 1 230px;min-width:210px;scroll-snap-align:none}.dstrip{flex:0 0 48px;display:flex;flex-direction:column;align-items:center;gap:8px;padding-bottom:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.dstrip__label{color:var(--ink)}.skel{display:block;border-radius:6px;background:var(--hair);animation:skel-pulse 1.2s ease-in-out infinite}.skel--head{width:90px;height:12px;margin:2px 4px 6px}.skel__row{display:flex;align-items:center;gap:12px;padding:14px 12px;border-top:1px solid var(--hair)}.skel__row:first-child{border-top:0}.skel--ring{width:20px;height:20px;border-radius:50%;margin-left:8px}.skel--line{height:14px}@keyframes skel-pulse{0%,to{opacity:.6}50%{opacity:1}}.ptop__menu-row{min-height:44px;display:flex;align-items:center;gap:10px;margin:-4px -4px 4px;padding:0 8px;border-radius:8px;font-size:15px;font-weight:500;color:var(--ink);text-align:left}.ptop__menu-row--switch{justify-content:space-between}.ptop__menu-row:hover,.ptop__menu-row:focus-visible{background:var(--chip)}
