:root{--bg: #f5f5f3;--surface: #ffffff;--surface-2: #ebebea;--fg: #1e1e1e;--fg-2: #444444;--muted: #909090;--line: #1e1e1e;--line-2: #e0e0de;--accent: #a7c5e8;--accent-fg: #1e1e1e;--hatch: #d4d4d2;--note: #d29047;--note-bg: rgba(210, 144, 71, .1);--danger: #d97b76;--danger-bg: rgba(217, 123, 118, .08);--success: #8bbd91;--brand-pink: #f472b6;--brand-coral: #f87171;--brand-purple: #a855f7;--brand-purple-fg: #ffffff;--brand-teal: #71717a;--brand-teal-fg: #ffffff;--brand-blue: #60a5fa;--brand-yellow: #fbbf24;--brand-mint: #16a34a;--brand-peach: #fb923c;--brand-lavender: #1d4ed8;--brand-pink-fg: #ffffff;--brand-blue-fg: #ffffff;--brand-yellow-fg: #ffffff;--brand-mint-fg: #ffffff;--brand-peach-fg: #ffffff;--brand-lavender-fg: #ffffff;--brand-coral-fg: #ffffff;--chart-1: var(--brand-blue);--chart-2: var(--brand-peach);--chart-3: var(--brand-mint);--chart-4: var(--brand-yellow);--paper: var(--bg);--paper-2: var(--surface-2);--ink: var(--fg);--ink-2: var(--fg-2);--font-display: "Mali", system-ui, sans-serif;--font-ui: "Mali", system-ui, sans-serif;--font-mono: "Mali", system-ui, sans-serif;--tg-bar-h: 0px;--app-bar-h: 56px;--tab-bar-h: 72px;--page-tone: var(--brand-purple);--page-tone-fg: var(--brand-purple-fg);--tone-bg: color-mix(in srgb, var(--page-tone) 3%, var(--bg));--tone-soft: color-mix(in srgb, var(--page-tone) 8%, var(--surface));--tone-medium: color-mix(in srgb, var(--page-tone) 14%, var(--surface));--tone-card-shadow: color-mix(in srgb, var(--page-tone) 10%, transparent);--grid-line: rgba(0, 0, 0, .018);--grid-size: 22px;--paper-grid: linear-gradient(to right, var(--grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--grid-line) 1px, transparent 1px)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;color-scheme:light;background-color:var(--bg);background-image:var(--paper-grid);background-size:var(--grid-size, 22px) var(--grid-size, 22px);background-attachment:fixed;color:var(--fg);font-family:var(--font-ui);font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{overscroll-behavior-y:contain}#app{min-height:100%;display:flex;flex-direction:column}button{font:inherit;color:inherit}input,textarea,select{font:inherit}.panel-enter-active,.panel-leave-active{transition:transform .22s ease,opacity .22s ease}.panel-enter-from,.panel-leave-to{transform:translateY(20px);opacity:0}.overlay-enter-active,.overlay-leave-active{transition:opacity .22s ease}.overlay-enter-from,.overlay-leave-to{opacity:0}.overlay-enter-active>:last-child,.overlay-leave-active>:last-child{transition:transform .22s ease}.overlay-enter-from>:last-child,.overlay-leave-to>:last-child{transform:translateY(20px)}.appbar[data-v-caf796e4]{position:sticky;top:0;z-index:19;flex:0 0 auto;padding-top:max(env(safe-area-inset-top,0px),var(--app-safe-top, 0px));background:var(--tone-medium);border-bottom:2px solid var(--page-tone);transition:background .35s cubic-bezier(.2,.8,.2,1),border-color .35s cubic-bezier(.2,.8,.2,1)}.appbar-inner[data-v-caf796e4]{height:var(--app-bar-h);padding:0 16px;display:flex;align-items:center;justify-content:center}.page-title[data-v-caf796e4]{margin:0;font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:.01em;line-height:1;color:var(--page-tone);transition:color .35s cubic-bezier(.2,.8,.2,1)}.pageview-frame[data-v-936d7922]{flex:1 1 auto;min-height:0;overflow:hidden;position:relative;background-color:var(--paper);background-image:var(--paper-grid);background-size:var(--grid-size) var(--grid-size)}.strip[data-v-936d7922]{display:flex;width:300%;height:100%;transition:transform .35s cubic-bezier(.2,.8,.2,1);touch-action:pan-y;-webkit-user-select:none;user-select:none}.page[data-v-936d7922]{width:33.3333%;height:100%;overflow-y:auto;overflow-x:hidden;padding:16px;box-sizing:border-box;background-color:var(--tone-bg)}.page-calendar[data-v-936d7922]{--page-tone: var(--brand-purple);--page-tone-fg: var(--brand-purple-fg)}.page-portfolio[data-v-936d7922]{--page-tone: var(--brand-peach);--page-tone-fg: var(--brand-peach-fg)}.page-goals[data-v-936d7922]{--page-tone: var(--brand-lavender);--page-tone-fg: var(--brand-lavender-fg)}.tabbar[data-v-883baa15]{position:relative;flex:0 0 auto;background:var(--surface);display:flex;align-items:flex-start;overflow:hidden;z-index:20;padding-bottom:max(env(safe-area-inset-bottom,0px),var(--app-safe-bottom, 0px))}.indicator[data-v-883baa15]{position:absolute;top:0;left:0;width:33.3333%;height:4px;border-radius:0 0 4px 4px;background:var(--page-tone);transition:transform .2s cubic-bezier(.2,.8,.2,1),background .35s cubic-bezier(.2,.8,.2,1);pointer-events:none}.tab[data-v-883baa15]{flex:1 1 0;min-width:0;height:var(--tab-bar-h);border:none;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;font-family:var(--font-ui);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);padding:0 4px;transition:color .2s ease;white-space:nowrap}.tab.active[data-v-883baa15]{font-weight:700;color:var(--page-tone)}.ico[data-v-883baa15]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.38;transition:opacity .2s ease}.ico svg[data-v-883baa15]{width:22px;height:22px}.tab.active .ico[data-v-883baa15]{opacity:1}.login-screen[data-v-f394019c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;background:linear-gradient(170deg,#c2410c,#fb923c 60%,#fed7aa);overflow:hidden;animation:screen-enter-f394019c .4s ease both}.top-section[data-v-f394019c]{flex:1 1 0;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding-top:max(env(safe-area-inset-top,0px),var(--app-safe-top, 0px))}.rings[data-v-f394019c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;overflow:visible;animation:rings-enter-f394019c .9s cubic-bezier(.34,1.56,.64,1) .1s both}.rings circle[data-v-f394019c]{fill:none;stroke:#fff6;stroke-width:1.5;stroke-dasharray:6 18}.rings circle[data-v-f394019c]:nth-child(1){animation:dash-run-f394019c 120s linear infinite}.rings circle[data-v-f394019c]:nth-child(2){animation:dash-run-f394019c 180s linear infinite reverse}.rings circle[data-v-f394019c]:nth-child(3){animation:dash-run-f394019c 240s linear infinite}.floats[data-v-f394019c]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.dot[data-v-f394019c]{position:absolute;border-radius:50%;background:#ffffff59}.dot-1[data-v-f394019c]{width:10px;height:10px;top:18%;left:14%;animation:float-f394019c 4s ease-in-out infinite}.dot-2[data-v-f394019c]{width:7px;height:7px;top:22%;left:82%;animation:float-f394019c 5s ease-in-out 1s infinite}.dot-3[data-v-f394019c]{width:14px;height:14px;top:68%;left:78%;animation:float-f394019c 3.8s ease-in-out .5s infinite}.dot-4[data-v-f394019c]{width:6px;height:6px;top:72%;left:20%;animation:float-f394019c 4.5s ease-in-out 1.8s infinite}.orbit-system[data-v-f394019c]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.planet[data-v-f394019c]{position:absolute;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ffffffe6}.planet-cal[data-v-f394019c]{width:44px;height:44px;background:#a855f740;box-shadow:0 0 10px 2px #a855f74d,inset 0 -3px 6px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#e9d5ff;animation:orbit-sm-f394019c 30s linear infinite,planet-enter-f394019c .5s ease .7s both}.planet-port[data-v-f394019c]{width:44px;height:44px;background:#fb923c40;box-shadow:0 0 10px 2px #fb923c4d,inset 0 -3px 6px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fed7aa;animation:orbit-md-f394019c 45s linear infinite,planet-enter-f394019c .5s ease .85s both}.planet-goal[data-v-f394019c]{width:44px;height:44px;background:#1d4ed840;box-shadow:0 0 10px 2px #1d4ed84d,inset 0 -3px 6px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#bfdbfe;animation:orbit-lg-f394019c 60s linear infinite,planet-enter-f394019c .5s ease 1s both}.logo[data-v-f394019c]{position:relative;width:60%;max-width:220px;height:auto;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;animation:logo-pop-f394019c .7s cubic-bezier(.34,1.56,.64,1) .3s both;filter:drop-shadow(0 8px 24px rgba(0,0,0,.18));z-index:1}.bottom-section[data-v-f394019c]{background:var(--surface);border-radius:24px 24px 0 0;padding:24px 32px max(32px,env(safe-area-inset-bottom,0px),var(--app-safe-bottom, 0px));display:flex;flex-direction:column;justify-content:flex-start;gap:6px;animation:card-up-f394019c .6s cubic-bezier(.2,.8,.2,1) .2s both}.welcome[data-v-f394019c]{margin:0;font-family:var(--font-display);font-size:40px;font-weight:800;color:var(--fg);line-height:1.05;animation:text-in-f394019c .5s cubic-bezier(.2,.8,.2,1) .5s both}.sub[data-v-f394019c]{margin:0 0 12px;font-family:var(--font-ui);font-size:15px;color:var(--muted);animation:text-in-f394019c .5s cubic-bezier(.2,.8,.2,1) .6s both}.btn-row[data-v-f394019c]{display:flex;align-items:center;justify-content:space-between;animation:text-in-f394019c .5s cubic-bezier(.2,.8,.2,1) .7s both}.btn-row:not(.loading) .fab[data-v-f394019c]{animation:fab-pulse-f394019c 2s ease-in-out 1s infinite}.btn-label[data-v-f394019c]{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--fg-2)}.fab[data-v-f394019c]{width:56px;height:56px;border-radius:50%;border:none;background:linear-gradient(135deg,#ea580c,#fdba74);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;box-shadow:0 4px 20px #c2410c66;transition:opacity .15s ease}.fab[data-v-f394019c]:disabled{opacity:.55;cursor:default}.fab svg[data-v-f394019c]{width:22px;height:22px}.err[data-v-f394019c]{margin:8px 0 0;padding:8px 12px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:14px;text-align:center}@keyframes screen-enter-f394019c{0%{opacity:0}to{opacity:1}}@keyframes rings-enter-f394019c{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes logo-pop-f394019c{0%{opacity:0;transform:scale(.3)}75%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}@keyframes planet-enter-f394019c{0%{opacity:0}to{opacity:1}}@keyframes card-up-f394019c{0%{transform:translateY(80px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes text-in-f394019c{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fab-pulse-f394019c{0%,to{transform:scale(1);box-shadow:0 4px 20px #f472b673}50%{transform:scale(1.08);box-shadow:0 6px 28px #f472b6a6}}@keyframes dash-run-f394019c{0%{stroke-dashoffset:0}to{stroke-dashoffset:-240}}@keyframes orbit-sm-f394019c{0%{transform:rotate(0) translate(150px) rotate(0)}to{transform:rotate(360deg) translate(150px) rotate(-360deg)}}@keyframes orbit-md-f394019c{0%{transform:rotate(120deg) translate(210px) rotate(-120deg)}to{transform:rotate(480deg) translate(210px) rotate(-480deg)}}@keyframes orbit-lg-f394019c{0%{transform:rotate(240deg) translate(270px) rotate(-240deg)}to{transform:rotate(600deg) translate(270px) rotate(-600deg)}}@keyframes float-f394019c{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.brand-card[data-v-ddaebc8c]{box-sizing:border-box;padding:14px 16px;display:flex;flex-direction:column;gap:10px;min-width:0}.shift-panel[data-v-f319ecf3] .brand-card{gap:8px;padding:10px 12px}.head[data-v-f319ecf3]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1.5px dashed var(--page-tone)}.head .ttl[data-v-f319ecf3]{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--fg)}.head .day[data-v-f319ecf3]{flex:1;min-width:0;font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--fg);display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}.holiday-badge[data-v-f319ecf3]{font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--brand-coral);background:color-mix(in srgb,var(--brand-coral) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--brand-coral) 30%,transparent);border-radius:4px;padding:1px 6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.important-badge[data-v-f319ecf3]{font-family:var(--font-ui);font-size:11px;font-weight:600;color:var(--brand-blue);background:color-mix(in srgb,var(--brand-blue) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--brand-blue) 30%,transparent);border-radius:4px;padding:1px 6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.edit-btn[data-v-f319ecf3],.done-btn[data-v-f319ecf3]{background:none;border:none;font-size:18px;cursor:pointer;padding:8px;margin:-8px;line-height:1;outline:none;flex-shrink:0}.view-row[data-v-f319ecf3]{display:flex;align-items:flex-start;gap:10px;padding:4px 0}.view-info[data-v-f319ecf3]{flex:1;display:flex;flex-direction:column;gap:3px}.view-shift[data-v-f319ecf3]{display:flex;align-items:center}.shift-pill[data-v-f319ecf3]{font-family:var(--font-display);font-size:14px;font-weight:600;padding:3px 10px;border-radius:20px;color:#fff}.shift-pill.p.work[data-v-f319ecf3]{background:var(--brand-mint)}.shift-pill.p.work.hour-07[data-v-f319ecf3]{background:#166534;color:#fff}.shift-pill.p.work.hour-08[data-v-f319ecf3]{background:#16a34a;color:#fff}.shift-pill.p.work.hour-12[data-v-f319ecf3]{background:#4ade80;color:var(--fg)}.shift-pill.b.work[data-v-f319ecf3]{background:var(--brand-blue)}.shift-pill.off[data-v-f319ecf3]{background:#8a8a8a1a;color:var(--fg-2);border:1.5px dashed var(--muted)}.shift-pill.vac[data-v-f319ecf3]{background:#fb923c26;color:var(--fg);border:1.5px solid var(--brand-peach)}.no-shift[data-v-f319ecf3]{font-family:var(--font-display);font-size:16px;color:var(--muted)}.view-note[data-v-f319ecf3]{font-family:var(--font-ui);font-size:12px;color:var(--fg-2)}.group[data-v-f319ecf3]{display:flex;flex-direction:column;gap:6px}.lbl[data-v-f319ecf3]{display:flex;align-items:center;gap:8px;font-family:var(--font-ui);font-size:13px;color:var(--fg-2)}.who[data-v-f319ecf3]{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:13px;border:1.5px solid var(--fg);flex-shrink:0}.who.p[data-v-f319ecf3]{background:var(--brand-mint);color:var(--brand-mint-fg)}.who.b[data-v-f319ecf3]{background:var(--brand-blue);color:var(--brand-blue-fg)}.lbl .name[data-v-f319ecf3]{flex:1;font-family:var(--font-display);font-weight:600;color:var(--fg);font-size:14px}.lbl .clear-btn[data-v-f319ecf3]{font-family:var(--font-display);font-size:14px;color:var(--muted);background:none;border:none;padding:4px 10px;cursor:pointer;border-radius:8px}.lbl .clear-btn[data-v-f319ecf3]:hover{color:var(--fg);background:var(--surface-2)}.chips[data-v-f319ecf3]{display:grid;gap:6px}.chips.cols-3[data-v-f319ecf3]{grid-template-columns:repeat(3,1fr)}.chips.cols-2[data-v-f319ecf3]{grid-template-columns:repeat(2,1fr)}.chip[data-v-f319ecf3]{display:flex;align-items:center;gap:4px;padding:6px 8px 10px;border:2px solid var(--line-2);border-radius:10px;background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--font-ui);font-size:12px;color:var(--fg);min-height:36px;position:relative;overflow:hidden;outline:none}.chip.on.p[data-v-f319ecf3]{border-color:var(--brand-mint);background:color-mix(in srgb,var(--brand-mint) 14%,var(--surface));color:var(--fg)}.chip.on.p.hour-07[data-v-f319ecf3]{border-color:#166534;background:color-mix(in srgb,#166534 14%,var(--surface))}.chip.on.p.hour-08[data-v-f319ecf3]{border-color:#16a34a;background:color-mix(in srgb,#16a34a 14%,var(--surface))}.chip.on.p.hour-12[data-v-f319ecf3]{border-color:#4ade80;background:color-mix(in srgb,#4ade80 14%,var(--surface))}.chip.on.b[data-v-f319ecf3]{border-color:var(--brand-blue);background:color-mix(in srgb,var(--brand-blue) 14%,var(--surface));color:var(--fg)}.chip.on[data-v-f319ecf3]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:5px}.chip.on.p[data-v-f319ecf3]:after{background:var(--brand-mint)}.chip.on.p.hour-07[data-v-f319ecf3]:after{background:#166534}.chip.on.p.hour-08[data-v-f319ecf3]:after{background:#16a34a}.chip.on.p.hour-12[data-v-f319ecf3]:after{background:#4ade80}.chip.on.b[data-v-f319ecf3]:after{background:var(--brand-blue)}.chip.off[data-v-f319ecf3]{background:repeating-linear-gradient(45deg,var(--surface) 0 4px,var(--surface-2) 4px 8px)}.chip.vac[data-v-f319ecf3]{background:#fb923c1a}.chip.on.p.off[data-v-f319ecf3],.chip.on.b.off[data-v-f319ecf3]{background:repeating-linear-gradient(45deg,var(--surface) 0 4px,var(--surface-2) 4px 8px);border-color:var(--muted);color:var(--fg)}.chip.on.p.vac[data-v-f319ecf3],.chip.on.b.vac[data-v-f319ecf3]{background:#fb923c2e;border-color:var(--brand-peach);color:var(--fg)}.chip.on.p.off[data-v-f319ecf3]:after,.chip.on.b.off[data-v-f319ecf3]:after{background:var(--muted)}.chip.on.p.vac[data-v-f319ecf3]:after,.chip.on.b.vac[data-v-f319ecf3]:after{background:var(--brand-peach)}.chip .label[data-v-f319ecf3]{flex:1;text-align:left;font-family:var(--font-display);font-size:13px}.note[data-v-f319ecf3]{width:100%;box-sizing:border-box;border:1.5px dashed var(--page-tone);border-radius:8px;background:var(--surface);padding:6px 10px;font-family:var(--font-ui);font-size:13px;color:var(--fg);outline:none}.note[data-v-f319ecf3]::placeholder{color:var(--muted)}.note[data-v-f319ecf3]:focus{border-style:solid;border-color:var(--page-tone)}.upcoming-wrap[data-v-c2765656]{display:flex;flex-direction:column;gap:4px}.inc-group-label[data-v-c2765656]{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--fg-2);padding:6px 0 2px;margin-top:4px}.inc-group-label[data-v-c2765656]:first-child{margin-top:0}.empty[data-v-c2765656]{font-family:var(--font-ui);font-size:13px;color:var(--muted);padding:4px;font-style:italic}.inc-card[data-v-c2765656]{border:1.5px solid var(--page-tone);border-radius:10px;background:var(--surface);overflow:hidden}.inc-card.sunday[data-v-c2765656]{border-color:var(--brand-coral)}.inc-card.sunday .inc-date[data-v-c2765656]{background:var(--brand-coral)}.inc-card.sunday .inc-row[data-v-c2765656]{border-bottom-color:color-mix(in srgb,var(--brand-coral) 35%,transparent)}.inc-card.saturday[data-v-c2765656]{border-color:var(--brand-teal)}.inc-card.saturday .inc-date[data-v-c2765656]{background:var(--brand-teal)}.inc-card.saturday .inc-row[data-v-c2765656]{border-bottom-color:color-mix(in srgb,var(--brand-teal) 35%,transparent)}.inc-date-wrap[data-v-c2765656]{display:flex;flex-direction:row;align-items:stretch}.inc-date[data-v-c2765656]{background:var(--page-tone);color:var(--page-tone-fg);font-family:var(--font-display);font-size:13px;font-weight:700;padding:4px 10px;flex:1 0 auto}.inc-important[data-v-c2765656]{background:color-mix(in srgb,var(--brand-blue) 18%,var(--surface));color:var(--brand-blue);border-left:1.5px dashed color-mix(in srgb,var(--brand-blue) 40%,transparent);font-family:var(--font-ui);font-size:11px;font-weight:600;padding:3px 10px;display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0}.inc-holiday[data-v-c2765656]{background:var(--brand-coral);color:#fff;border-left:1.5px dashed rgba(255,255,255,.45);font-family:var(--font-ui);font-size:11px;font-weight:600;padding:3px 10px;display:flex;align-items:center;gap:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0}.inc-row[data-v-c2765656]{display:flex;align-items:center;gap:8px;padding:5px 10px;border-bottom:1px dashed var(--page-tone)}.inc-row[data-v-c2765656]:last-child{border-bottom:none}.tag[data-v-c2765656]{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:11px;border:1.5px solid var(--fg);flex-shrink:0}.tag-p[data-v-c2765656]{background:var(--brand-mint);color:var(--brand-mint-fg)}.tag-b[data-v-c2765656]{background:var(--brand-blue);color:var(--brand-blue-fg)}.inc-meta[data-v-c2765656]{flex:1;min-width:0;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.inc-name[data-v-c2765656]{font-family:var(--font-display);font-size:14px;font-weight:600;color:var(--fg)}.inc-time[data-v-c2765656]{font-family:var(--font-ui);font-size:11px;color:var(--fg-2)}.cal-view[data-v-953728cf]{display:flex;flex-direction:column;gap:12px;--card-shadow: var(--tone-card-shadow);overflow-x:hidden}.seg[data-v-953728cf] .brand-card,.mhead[data-v-953728cf] .brand-card{padding:6px}.seg-grid[data-v-953728cf]{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.seg-btn[data-v-953728cf]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:8px 0;font-family:var(--font-display);font-size:15px;font-weight:600;color:var(--fg-2);border-radius:8px;cursor:pointer}.seg-btn.on[data-v-953728cf]{background:var(--page-tone);color:var(--page-tone-fg)}.mhead-inner[data-v-953728cf]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 8px}.mhead-inner .title[data-v-953728cf]{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--fg);white-space:nowrap}.nav[data-v-953728cf]{display:flex;gap:6px}.nav-btn[data-v-953728cf]{min-width:28px;height:28px;border:1.5px solid var(--page-tone);border-radius:8px;background:var(--surface);font-family:var(--font-display);font-size:16px;font-weight:700;color:var(--fg);cursor:pointer;padding:0 8px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.nav-btn.today-btn[data-v-953728cf]{font-size:12px;font-weight:700}.cal-head[data-v-953728cf]{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;font-family:var(--font-ui);font-size:12px;color:var(--muted);padding:0 2px}.cal-grid-wrap[data-v-953728cf]{position:relative;overflow:hidden}.cal-grid-drag[data-v-953728cf]{will-change:transform}.cal-grid-drag.is-snapping[data-v-953728cf]{transition:transform .22s ease}.cal-grid[data-v-953728cf]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.grid-left-enter-active[data-v-953728cf],.grid-right-enter-active[data-v-953728cf]{transition:transform .22s ease,opacity .22s ease}.grid-left-leave-active[data-v-953728cf],.grid-right-leave-active[data-v-953728cf]{transition:transform .22s ease,opacity .22s ease;position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.grid-left-enter-from[data-v-953728cf]{transform:translate(100%);opacity:0}.grid-left-leave-to[data-v-953728cf],.grid-right-enter-from[data-v-953728cf]{transform:translate(-100%);opacity:0}.grid-right-leave-to[data-v-953728cf]{transform:translate(100%);opacity:0}.cell[data-v-953728cf]{aspect-ratio:1 / 1.35;border:1px solid color-mix(in srgb,var(--page-tone) 35%,var(--line-2));border-radius:8px;background:var(--surface);display:flex;flex-direction:column;overflow:hidden;cursor:pointer;transition:border-color .12s ease;position:relative}.cell.today[data-v-953728cf]{background:color-mix(in srgb,var(--page-tone) 8%,var(--surface))}.cell.selected[data-v-953728cf]{background:color-mix(in srgb,var(--page-tone) 10%,var(--surface))}.cell.sunday[data-v-953728cf]{border-color:color-mix(in srgb,var(--brand-coral) 40%,var(--line-2))}.cell.saturday[data-v-953728cf]{border-color:color-mix(in srgb,var(--brand-teal) 40%,var(--line-2))}.cell.all-off[data-v-953728cf]{background:color-mix(in srgb,var(--muted) 6%,var(--surface))}.cell.holiday[data-v-953728cf]{border-color:color-mix(in srgb,var(--brand-coral) 55%,var(--line-2))}.cell.dim[data-v-953728cf]{cursor:default;opacity:.38}.num[data-v-953728cf]{flex:1;font-family:var(--font-display);font-weight:700;font-size:11px;color:var(--fg);display:flex;align-items:flex-start;justify-content:space-between;padding:3px 4px 0}.note-icon[data-v-953728cf]{font-size:9px;line-height:18px}.num span[data-v-953728cf]:not(.note-icon):not(.iday-icon){width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;box-sizing:border-box}.cell.today .num span[data-v-953728cf]:not(.note-icon){background:var(--fg);color:var(--surface);font-weight:800}.cell.selected .num span[data-v-953728cf]:not(.note-icon):not(.iday-icon){border:1.5px dashed var(--fg)}.cell.dim .num[data-v-953728cf]{color:var(--muted)}.hday-icon[data-v-953728cf]{color:var(--brand-coral);flex-shrink:0;margin-top:2px}.iday-icon[data-v-953728cf]{font-size:11px;line-height:1;flex-shrink:0;margin-top:2px;padding-right:2px;display:flex;align-items:center;justify-content:center;width:11px;height:11px}.shift-bars[data-v-953728cf]{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.bar[data-v-953728cf]{height:16px;width:100%;min-width:0;display:flex;align-items:center;justify-content:flex-start;padding:0 2px;box-sizing:border-box;overflow:hidden}.bar-txt[data-v-953728cf]{font-family:var(--font-mono);font-size:clamp(8px,2.5vw,10px);font-weight:700;letter-spacing:-.02em;line-height:1;white-space:nowrap;color:var(--fg);flex:1 1 0;min-width:0;overflow:hidden}.note-mark[data-v-953728cf]{flex:0 0 auto;opacity:.85;margin-left:1px;color:var(--fg);display:flex;align-items:center}.bar.empty[data-v-953728cf]{background:transparent}.bar.p.work[data-v-953728cf]{background:#16a34a1f;border-left:2.5px solid var(--brand-mint)}.bar.p.work.hour-07[data-v-953728cf]{background:#14532d1f;border-left-color:#166534}.bar.p.work.hour-08[data-v-953728cf]{background:#16a34a1f;border-left-color:#16a34a}.bar.p.work.hour-12[data-v-953728cf]{background:#4ade8026;border-left-color:#4ade80}.bar.b.work[data-v-953728cf]{background:#60a5fa26;border-left:2.5px solid var(--brand-blue)}.bar.off[data-v-953728cf]{background:#8a8a8a14;border-left:2px solid var(--muted)}.bar.p.vac[data-v-953728cf],.bar.b.vac[data-v-953728cf]{background:#fb923c1f;border-left:2.5px solid var(--brand-peach)}.panel-spacer[data-v-953728cf]{height:480px;flex-shrink:0;pointer-events:none}.panel-wrap[data-v-953728cf]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.panel-backdrop[data-v-953728cf]{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040}.panel-sheet[data-v-953728cf]{position:relative;overflow:hidden;padding-bottom:calc(var(--tab-bar-h) + max(env(safe-area-inset-bottom,0px),var(--app-safe-bottom, 0px)) + 8px);transition:transform .28s cubic-bezier(.25,.46,.45,.94)}.panel-sheet.is-dragging[data-v-953728cf]{transition:none}.carousel-track[data-v-953728cf]{display:flex;gap:8px;transition:transform .28s cubic-bezier(.25,.46,.45,.94)}.panel-sheet.is-dragging .carousel-track[data-v-953728cf]{transition:none}.carousel-item[data-v-953728cf]{width:80vw;flex-shrink:0}.panel-slot[data-v-953728cf]{position:relative;overflow:hidden}.slide-left-enter-active[data-v-953728cf],.slide-right-enter-active[data-v-953728cf]{transition:transform .22s ease,opacity .22s ease}.slide-left-leave-active[data-v-953728cf],.slide-right-leave-active[data-v-953728cf]{transition:transform .22s ease,opacity .22s ease;position:absolute;top:0;right:0;bottom:0;left:0}.slide-left-enter-from[data-v-953728cf]{transform:translate(110%);opacity:0}.slide-left-leave-to[data-v-953728cf],.slide-right-enter-from[data-v-953728cf]{transform:translate(-110%);opacity:0}.slide-right-leave-to[data-v-953728cf]{transform:translate(110%);opacity:0}.peek-item[data-v-953728cf]{cursor:pointer}.peek-card[data-v-953728cf]{height:100%;min-height:80px;border-radius:16px;border:2px solid var(--page-tone);background:var(--surface);opacity:.5;display:flex;align-items:center}.peek-prev[data-v-953728cf]{justify-content:flex-end;padding-right:10px}.peek-next[data-v-953728cf]{justify-content:flex-start;padding-left:10px}.peek-lbl[data-v-953728cf]{font-family:var(--font-display);font-size:13px;font-weight:600;color:var(--fg);white-space:nowrap;writing-mode:vertical-rl}.err[data-v-953728cf]{margin:0;padding:8px 12px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:14px}.brand-button[data-v-bd232d03]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:10px 18px;cursor:pointer;font-family:var(--font-display);font-size:20px;font-weight:700;letter-spacing:.01em;line-height:1;min-height:48px;display:inline-flex;align-items:center;justify-content:center;transition:filter .12s ease}.brand-button.block[data-v-bd232d03]{display:flex;width:100%}.brand-button[data-v-bd232d03]:hover:not(.disabled){filter:brightness(.97)}.brand-button.disabled[data-v-bd232d03]{opacity:.55;cursor:not-allowed}.overlay-wrap[data-v-9cbe73fd]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.overlay-backdrop[data-v-9cbe73fd]{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040}.overlay-sheet[data-v-9cbe73fd]{position:relative;padding:0 12px calc(var(--tab-bar-h) + max(env(safe-area-inset-bottom,0px),var(--app-safe-bottom, 0px)) + 12px)}.edit-sheet[data-v-9cbe73fd] .brand-card{gap:12px;padding:16px 18px;background:color-mix(in srgb,var(--page-tone) 6%,var(--surface))}.h[data-v-9cbe73fd]{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--fg);padding-bottom:8px;border-bottom:1.5px dashed var(--page-tone)}.row[data-v-9cbe73fd]{display:flex;align-items:center;gap:10px}.row label[data-v-9cbe73fd]{font-family:var(--font-ui);font-size:13px;color:var(--fg-2);width:84px;flex-shrink:0}.inp[data-v-9cbe73fd]{flex:1;border:2px solid var(--page-tone);border-radius:8px;background:var(--surface);padding:8px 12px;font-family:var(--font-display);font-size:18px;color:var(--fg);outline:none}.inp[data-v-9cbe73fd]:focus{border-color:var(--fg)}.err[data-v-9cbe73fd]{margin:0;padding:6px 10px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:13px}.overlay-wrap[data-v-bec17ec0]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.overlay-backdrop[data-v-bec17ec0]{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040}.overlay-sheet[data-v-bec17ec0]{position:relative;padding:0 12px calc(var(--tab-bar-h) + max(env(safe-area-inset-bottom,0px),var(--app-safe-bottom, 0px)) + 12px)}.goal-sheet[data-v-bec17ec0] .brand-card{gap:12px;padding:16px 18px;background:color-mix(in srgb,var(--page-tone) 6%,var(--surface))}.h[data-v-bec17ec0]{font-family:var(--font-display);font-size:18px;font-weight:700;color:var(--fg);padding-bottom:8px;border-bottom:1.5px dashed var(--page-tone)}.row[data-v-bec17ec0]{display:flex;align-items:center;gap:10px}.row label[data-v-bec17ec0]{font-family:var(--font-ui);font-size:13px;color:var(--fg-2);width:84px;flex-shrink:0}.inp[data-v-bec17ec0]{flex:1;border:2px solid var(--page-tone);border-radius:8px;background:var(--surface);padding:8px 12px;font-family:var(--font-display);font-size:18px;color:var(--fg);outline:none}.inp[data-v-bec17ec0]:focus{border-color:var(--fg)}.clear-row[data-v-bec17ec0]{display:flex;justify-content:flex-end}.clear-btn[data-v-bec17ec0]{background:none;border:none;font-family:var(--font-ui);font-size:12px;color:var(--muted);cursor:pointer;padding:2px 4px;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:2px}.err[data-v-bec17ec0]{margin:0;padding:6px 10px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:13px}.overlay-wrap[data-v-bec17ec0]{--overlay-enter-duration: .28s;--overlay-leave-duration: .2s}.overlay-enter-active[data-v-bec17ec0]{transition:opacity var(--overlay-enter-duration) ease}.overlay-leave-active[data-v-bec17ec0]{transition:opacity var(--overlay-leave-duration) ease}.overlay-enter-from[data-v-bec17ec0],.overlay-leave-to[data-v-bec17ec0]{opacity:0}.donut-inner[data-v-97c2a0e3]{display:flex;align-items:center;gap:18px}.donut[data-v-97c2a0e3]{width:108px;height:108px;border-radius:50%;position:relative;flex-shrink:0}.donut .hole[data-v-97c2a0e3]{position:absolute;top:20px;right:20px;bottom:20px;left:20px;background:color-mix(in srgb,var(--page-tone) 4%,var(--surface));border-radius:50%}.donut-legend[data-v-97c2a0e3]{flex:1;display:flex;flex-direction:column;gap:8px;font-family:var(--font-ui);font-size:12px}.donut-legend .li[data-v-97c2a0e3]{display:flex;align-items:center;gap:9px}.donut-legend .sw[data-v-97c2a0e3]{width:8px;height:8px;border-radius:2px;flex-shrink:0}.donut-legend .name[data-v-97c2a0e3]{flex:1;color:var(--fg-2)}.donut-legend .pct[data-v-97c2a0e3]{font-weight:700;color:var(--fg);font-family:var(--font-display);font-size:13px}.portfolio-view[data-v-1b482f37]{display:flex;flex-direction:column;gap:12px;--card-shadow: var(--tone-card-shadow)}.summary-card[data-v-1b482f37] .brand-card{padding:20px 22px;gap:5px;background:var(--tone-soft)}.summary-header[data-v-1b482f37]{display:flex;align-items:center;justify-content:space-between}.summary-edit-btn[data-v-1b482f37]{width:28px;height:28px;border:1.5px solid var(--line-2);border-radius:8px;background:transparent;cursor:pointer;color:var(--muted);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,color .15s}.summary-edit-btn[data-v-1b482f37]:hover{border-color:var(--page-tone);color:var(--fg)}.summary-card .lbl[data-v-1b482f37]{font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.summary-card .val[data-v-1b482f37]{font-family:var(--font-display);font-size:40px;font-weight:700;letter-spacing:-.02em;color:var(--fg);line-height:1.1;margin-top:2px}.summary-card .delta[data-v-1b482f37]{font-family:var(--font-ui);font-size:13px;color:var(--fg-2);margin-top:2px}.summary-card .delta.up[data-v-1b482f37]{color:var(--success)}.summary-card .delta.down[data-v-1b482f37]{color:var(--danger)}.summary-card .delta.muted[data-v-1b482f37]{color:var(--muted)}.divider[data-v-1b482f37]{height:1.5px;background:color-mix(in srgb,var(--page-tone) 30%,transparent);margin:8px 0 4px}.asset-list[data-v-1b482f37]{display:flex;flex-direction:column;gap:6px}@keyframes asset-in-1b482f37{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.asset-group[data-v-1b482f37]{animation:asset-in-1b482f37 .38s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--si, 0) * 65ms + .12s);display:flex;flex-direction:column;gap:0}@keyframes fade-up-1b482f37{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.total-card[data-v-1b482f37]{animation:fade-up-1b482f37 .4s cubic-bezier(.2,.8,.2,1) both}.asset[data-v-1b482f37] .brand-card{padding:0}.asset-inner[data-v-1b482f37]{display:flex;align-items:center;gap:14px;padding:0}.ico[data-v-1b482f37]{width:36px;height:36px;border-radius:9px;border:1.5px solid rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;flex-shrink:0}.meta-col[data-v-1b482f37]{flex:1;min-width:0;overflow:hidden}.name[data-v-1b482f37]{font-family:var(--font-display);font-weight:600;font-size:14px;color:var(--fg);white-space:nowrap}.updated[data-v-1b482f37]{font-family:var(--font-ui);font-size:10px;color:var(--muted);margin-top:1px}.goal-tag[data-v-1b482f37]{display:block;margin-top:4px;font-family:var(--font-ui);font-size:11px;color:var(--note);background:var(--note-bg);border-radius:4px;padding:1px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.goal-tap[data-v-1b482f37]{cursor:pointer;text-decoration:underline;text-decoration-style:dashed;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--note) 50%,transparent)}.num[data-v-1b482f37]{text-align:right;font-family:var(--font-display)}.num .v[data-v-1b482f37]{font-size:14px;font-weight:700;color:var(--fg);letter-spacing:-.01em}.num .d[data-v-1b482f37]{font-family:var(--font-ui);font-size:10px;color:var(--fg-2);margin-top:2px}.num .d.up[data-v-1b482f37]{color:var(--success);font-weight:600}.num .d.down[data-v-1b482f37]{color:var(--danger);font-weight:600}.pencil[data-v-1b482f37]{width:32px;height:32px;border:1.5px solid var(--line-2);border-radius:8px;background:transparent;cursor:pointer;font-family:var(--font-display);font-size:16px;color:var(--muted);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s,background .15s}.pencil[data-v-1b482f37]:hover{border-color:var(--page-tone);color:var(--fg);background:#00000008}.btc-detail[data-v-1b482f37]{font-family:var(--font-mono);font-size:9px;color:var(--muted);margin-top:2px;text-align:right;white-space:nowrap}.err[data-v-1b482f37]{margin:0;padding:8px 12px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:14px}.goal-row[data-v-1b482f37]{display:flex;align-items:center;justify-content:space-between;gap:8px}.goal-row-left[data-v-1b482f37]{display:flex;align-items:center;gap:5px;min-width:0}.goal-icon[data-v-1b482f37]{color:var(--page-tone);flex-shrink:0}.goal-lbl[data-v-1b482f37]{font-family:var(--font-ui);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap}.goal-badge[data-v-1b482f37]{font-family:var(--font-ui);font-size:11px;font-weight:700;color:var(--success);background:color-mix(in srgb,var(--success) 12%,transparent);border-radius:999px;padding:1px 7px;white-space:nowrap}.goal-val[data-v-1b482f37]{font-family:var(--font-display);font-size:13px;font-weight:700;color:var(--fg-2);white-space:nowrap}.goal-bar-wrap[data-v-1b482f37]{display:flex;align-items:center;gap:8px}.goal-bar[data-v-1b482f37]{flex:1;height:8px;border:1.5px solid color-mix(in srgb,var(--page-tone) 40%,transparent);border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--page-tone) 8%,var(--surface));display:flex}.goal-bar-seg[data-v-1b482f37]{height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);flex-shrink:0}.goal-pct[data-v-1b482f37]{font-family:var(--font-display);font-size:12px;font-weight:700;color:var(--muted);width:36px;text-align:right;flex-shrink:0}.goal-form[data-v-626802f3] .brand-card{gap:12px;padding:16px}.gf-title[data-v-626802f3]{width:100%;border:none;border-bottom:2px dashed var(--page-tone);font-family:var(--font-display);font-size:22px;font-weight:600;padding:4px 0 8px;background:transparent;outline:none;color:var(--fg)}.gf-title[data-v-626802f3]:focus{border-bottom-color:var(--page-tone)}.gf-desc[data-v-626802f3]{width:100%;border:none;font-family:var(--font-ui);font-size:14px;padding:2px 0;background:transparent;outline:none;color:var(--fg-2)}.gf-row[data-v-626802f3]{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.gf-row-lbl[data-v-626802f3]{font-family:var(--font-display);font-size:14px;color:var(--muted);width:70px;flex-shrink:0}.gf-chip[data-v-626802f3]{font-family:var(--font-display);font-size:13px;border:1.5px solid var(--page-tone);padding:4px 12px;border-radius:999px;color:var(--fg);background:var(--surface);cursor:pointer;-webkit-user-select:none;user-select:none}.gf-chip[data-v-626802f3]:disabled{opacity:.6;cursor:not-allowed}.gf-chip.on[data-v-626802f3]{background:var(--page-tone);color:var(--page-tone-fg);border-color:var(--fg)}.gf-chip.who[data-v-626802f3]{display:inline-flex;align-items:center;gap:5px}.gf-chip.who .dot[data-v-626802f3]{width:9px;height:9px;border-radius:50%;background:var(--brand-mint);display:inline-block}.gf-chip.who.b .dot[data-v-626802f3]{background:var(--brand-blue)}.gf-chip.who.both .dot[data-v-626802f3]{background:linear-gradient(90deg,var(--brand-mint) 50%,var(--brand-blue) 50%)}.err[data-v-626802f3]{margin:0;padding:6px 10px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:13px}.gf-actions[data-v-626802f3]{display:flex;gap:8px}.goals-view[data-v-d30875f8]{display:flex;flex-direction:column;gap:12px;--card-shadow: var(--tone-card-shadow)}.year-head[data-v-d30875f8] .brand-card{padding:6px}.year-head-inner[data-v-d30875f8]{display:flex;align-items:center;gap:10px;padding:6px 10px}.y[data-v-d30875f8]{font-family:var(--font-display);font-size:22px;font-weight:700;color:var(--fg)}.yr-nav[data-v-d30875f8]{width:28px;height:28px;border:1.5px solid var(--page-tone);border-radius:8px;background:var(--surface);font-family:var(--font-display);font-size:16px;color:var(--fg);cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:0}.yr-nav[data-v-d30875f8]:disabled{opacity:.35;cursor:not-allowed}.progress[data-v-d30875f8]{flex:1;margin:0 4px;height:10px;border:1.5px solid var(--fg);border-radius:999px;overflow:hidden;background:var(--surface);position:relative}.progress-fill[data-v-d30875f8]{display:block;height:100%;background:var(--page-tone);border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1)}.month-tick[data-v-d30875f8]{position:absolute;top:1px;bottom:1px;width:1px;background:#00000026;pointer-events:none;transform:translate(-50%)}.pct[data-v-d30875f8]{font-family:var(--font-ui);font-size:13px;color:var(--fg-2);white-space:nowrap;flex-shrink:0}.filter-row[data-v-d30875f8]{position:relative;display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:2px 0 3px}.filter-row[data-v-d30875f8]::-webkit-scrollbar{display:none}.filter-pill[data-v-d30875f8]{position:absolute;top:2px;bottom:3px;border-radius:999px;background:var(--page-tone);border:1.5px solid var(--fg);transition:left .25s cubic-bezier(.2,.8,.2,1),width .25s cubic-bezier(.2,.8,.2,1),opacity .15s ease;pointer-events:none;z-index:0}.filter-chip[data-v-d30875f8]{position:relative;z-index:1;font-family:var(--font-display);font-size:13px;border:1.5px solid var(--page-tone);padding:5px 12px;border-radius:999px;color:var(--fg);background:transparent;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:color .2s ease,border-color .2s ease}.filter-chip.on[data-v-d30875f8]{color:#fff;border-color:transparent}.goal-list[data-v-d30875f8]{display:flex;flex-direction:column;gap:10px;position:relative}.goal-move[data-v-d30875f8]{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.goal-leave-active[data-v-d30875f8]{transition:opacity .22s ease,transform .22s ease;position:absolute;width:100%}.goal-leave-to[data-v-d30875f8]{opacity:0;transform:scale(.96)}@keyframes goal-in-d30875f8{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.goal-wrap[data-v-d30875f8]{animation:goal-in-d30875f8 .38s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--si, 0) * 55ms)}.goal-wrap[data-v-d30875f8]{position:relative}.swipe-outer[data-v-d30875f8]{position:relative;border-radius:14px;overflow:hidden}.swipe-del-bg[data-v-d30875f8]{position:absolute;right:0;top:0;bottom:0;width:72px;background:var(--danger);display:flex;align-items:center;justify-content:center}.swipe-del-btn[data-v-d30875f8]{background:transparent;border:none;font-size:22px;cursor:pointer;padding:8px;line-height:1}.swipe-content[data-v-d30875f8]{position:relative;z-index:1}.goal-wrap[data-v-d30875f8] .brand-card{padding:0}.goal-inner[data-v-d30875f8]{display:flex;gap:12px;padding:14px 14px 14px 24px;align-items:flex-start;position:relative}.goal-stripe[data-v-d30875f8]{position:absolute;left:10px;top:14px;bottom:14px;width:4px;border-radius:2px;opacity:.85}.owner-p .goal-stripe[data-v-d30875f8]{background:var(--brand-mint)}.owner-b .goal-stripe[data-v-d30875f8]{background:var(--brand-blue)}.owner-both .goal-stripe[data-v-d30875f8]{background:linear-gradient(to bottom,var(--brand-mint),var(--brand-blue))}.goal-wrap.done .goal-inner[data-v-d30875f8]{opacity:.55}.check[data-v-d30875f8]{width:26px;height:26px;border:2px solid var(--fg);border-radius:8px;background:var(--surface);cursor:pointer;flex-shrink:0;position:relative;margin-top:1px;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease;padding:0}.goal-wrap.done .check[data-v-d30875f8]{background:var(--brand-mint);border-color:var(--brand-mint)}.check-svg[data-v-d30875f8]{width:14px;height:14px;overflow:visible}.check-mark[data-v-d30875f8]{fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .28s cubic-bezier(.2,.8,.2,1)}.check-mark.checked[data-v-d30875f8]{stroke-dashoffset:0}.body[data-v-d30875f8]{flex:1;min-width:0}.title[data-v-d30875f8]{font-family:var(--font-display);font-weight:600;font-size:18px;color:var(--fg)}.title.done[data-v-d30875f8]{text-decoration:line-through;color:var(--muted)}.desc[data-v-d30875f8]{font-family:var(--font-ui);font-size:14px;color:var(--fg-2);margin-top:2px}.meta-line[data-v-d30875f8]{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.chip[data-v-d30875f8]{font-family:var(--font-ui);font-size:12px;border:1.5px solid var(--page-tone);padding:3px 10px;border-radius:999px;color:var(--fg-2)}.chip.who[data-v-d30875f8]{display:inline-flex;align-items:center;gap:5px}.chip.who .dot[data-v-d30875f8]{width:9px;height:9px;border-radius:50%;background:var(--brand-mint)}.chip.who.b .dot[data-v-d30875f8]{background:var(--brand-blue)}.chip.who.both .dot[data-v-d30875f8]{background:linear-gradient(90deg,var(--brand-mint) 50%,var(--brand-blue) 50%)}.empty[data-v-d30875f8]{text-align:center;padding:28px 0;font-family:var(--font-display);font-size:18px;color:var(--muted)}.goal-add[data-v-d30875f8]{display:flex;align-items:center;justify-content:center;gap:10px;border:1.5px dashed var(--page-tone);border-radius:14px;background:var(--surface);padding:14px;color:var(--muted);font-family:var(--font-display);font-size:16px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.goal-add[data-v-d30875f8]:hover{border-color:var(--fg);color:var(--fg)}.err[data-v-d30875f8]{margin:0;padding:8px 12px;border:1.5px solid var(--danger);border-radius:8px;color:var(--danger);font-family:var(--font-ui);font-size:14px}.shell{height:100dvh;overflow:hidden;display:flex;flex-direction:column;background:var(--paper);padding-top:0;padding-bottom:0;padding-left:max(env(safe-area-inset-left,0px),var(--app-safe-left, 0px));padding-right:max(env(safe-area-inset-right,0px),var(--app-safe-right, 0px));box-sizing:border-box}.app-wrap{flex:1 1 0;display:flex;flex-direction:column;overflow:hidden;min-height:0}.login-enter-active,.login-leave-active{transition:opacity .5s ease}.login-enter-from,.login-leave-to{opacity:0}
