.login-page[data-v-e187d255]{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px;background:transparent}.login-card[data-v-e187d255]{width:100%;max-width:360px;background:var(--color-glass);border:1px solid var(--color-border);border-radius:28px;padding:36px 24px 28px;box-shadow:var(--shadow-float);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.login-header[data-v-e187d255]{text-align:center;margin-bottom:28px}.login-mark[data-v-e187d255]{display:block;width:48px;height:48px;margin:0 auto 16px;border-radius:16px;background:radial-gradient(circle at 30% 30%,var(--color-primary-light),var(--color-primary));box-shadow:0 8px 20px rgba(var(--color-primary-rgb),.35)}.login-kicker[data-v-e187d255]{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:6px}.login-title[data-v-e187d255]{font-size:28px;font-weight:700;letter-spacing:-.04em;margin-bottom:6px}.login-desc[data-v-e187d255]{font-size:14px;color:var(--color-text-secondary)}.login-form[data-v-e187d255]{display:flex;flex-direction:column;gap:16px}.login-error[data-v-e187d255]{font-size:13px;color:var(--color-danger);text-align:center}.login-btn[data-v-e187d255]{width:100%;padding:14px;font-size:16px;margin-top:4px}.login-btn[data-v-e187d255]:disabled{opacity:.65}.chart-overlay[data-v-308b5b84]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.chart-dialog[data-v-308b5b84]{width:100%;max-width:min(480px,calc(100vw - 32px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;max-height:calc(100dvh - 32px)}.chart-title[data-v-308b5b84]{font-size:17px;font-weight:700}.chart-container[data-v-308b5b84]{width:100%;height:max(240px,50vh);min-height:240px}.chart-hint[data-v-308b5b84]{font-size:12px;color:var(--color-text-secondary);text-align:center}.empty-state[data-v-308b5b84]{text-align:center;padding:32px 16px;color:var(--color-text-secondary)}.empty-icon[data-v-308b5b84]{font-size:36px;margin-bottom:8px}.empty-hint[data-v-308b5b84]{font-size:13px;margin-top:4px}.close-btn[data-v-308b5b84]{width:100%;padding:12px}.sleep-card[data-v-137d9ef4]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 18px;background:var(--color-surface);border:1px solid var(--color-border)}.sleep-card.asleep[data-v-137d9ef4]{background:var(--gradient-sleep);border-color:#b85a8247}.sleep-card.awake[data-v-137d9ef4]{background:var(--gradient-awake);border-color:#f0b04259}.sleep-head[data-v-137d9ef4]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px}.sleep-head-copy[data-v-137d9ef4]{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.sleep-toggle[data-v-137d9ef4]{flex-shrink:0;padding:9px 16px;border-radius:var(--radius-pill);font-size:13px;font-weight:700;color:#fff;background:var(--color-sleep-dark);box-shadow:0 6px 16px #b85a8259;transition:transform .2s var(--ease-out),background .2s var(--ease-out),box-shadow .2s var(--ease-out)}.sleep-toggle[data-v-137d9ef4]:active{transform:scale(.97)}.sleep-toggle.asleep[data-v-137d9ef4]{background:var(--color-awake-dark);box-shadow:0 6px 16px #e0942261}.sleep-toggle[data-v-137d9ef4]:disabled{opacity:.7}.sleep-empty[data-v-137d9ef4]{width:100%;display:flex;align-items:center;justify-content:space-between;padding:4px 0 2px}.sleep-empty-label[data-v-137d9ef4]{font-size:15px;font-weight:600;color:var(--color-text-secondary)}.sleep-hero[data-v-137d9ef4]{display:flex;align-items:flex-end;gap:12px;padding:4px 0 2px}.sleep-label[data-v-137d9ef4]{font-size:12px;font-weight:600;letter-spacing:.06em;flex-shrink:0;padding-bottom:4px}.sleep-card.asleep .sleep-label[data-v-137d9ef4]{color:var(--color-sleep)}.sleep-card.awake .sleep-label[data-v-137d9ef4]{color:var(--color-awake)}.sleep-time[data-v-137d9ef4]{font-size:34px;font-weight:650;line-height:1;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.sleep-card.asleep .sleep-time[data-v-137d9ef4]{color:var(--color-sleep-ink)}.sleep-card.awake .sleep-time[data-v-137d9ef4]{color:var(--color-awake-ink)}.sleep-today[data-v-137d9ef4]{font-size:13px;color:var(--color-text-secondary)}.sleep-detail[data-v-137d9ef4]{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-width:0;font-size:12px;font-weight:600;white-space:nowrap}.sleep-card.asleep .sleep-detail[data-v-137d9ef4],.sleep-card.asleep .sleep-today[data-v-137d9ef4]{color:var(--color-sleep)}.sleep-card.awake .sleep-detail[data-v-137d9ef4],.sleep-card.awake .sleep-today[data-v-137d9ef4]{color:var(--color-awake)}.sleep-soothe[data-v-137d9ef4]{flex-shrink:0;padding:4px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:.02em;color:#fff;background:var(--color-awake-dark);box-shadow:0 4px 12px #b07d3247}.sleep-chart-link[data-v-137d9ef4]{font-size:12px;font-weight:600;color:var(--color-text-secondary)}.sleep-card.asleep .sleep-chart-link[data-v-137d9ef4]{color:var(--color-sleep)}.sleep-card.awake .sleep-chart-link[data-v-137d9ef4]{color:var(--color-awake)}.chart-overlay[data-v-645f3e60]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.chart-dialog[data-v-645f3e60]{width:100%;max-width:min(480px,calc(100vw - 32px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;max-height:calc(100dvh - 32px)}.chart-title[data-v-645f3e60]{font-size:17px;font-weight:700}.chart-container[data-v-645f3e60]{width:100%;height:max(240px,50vh);min-height:240px}.chart-hint[data-v-645f3e60]{font-size:12px;color:var(--color-text-secondary);text-align:center}.empty-state[data-v-645f3e60]{text-align:center;padding:32px 16px;color:var(--color-text-secondary)}.empty-icon[data-v-645f3e60]{font-size:36px;margin-bottom:8px}.empty-hint[data-v-645f3e60]{font-size:13px;margin-top:4px}.close-btn[data-v-645f3e60]{width:100%;padding:12px}.feed-tab[data-v-8a2b0812]{display:flex;flex-direction:column;flex:1;min-height:0;gap:0}.feed-scroll[data-v-8a2b0812]{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;gap:12px;padding:16px}.last-feed-banner[data-v-8a2b0812]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 18px;background:var(--gradient-feed);border:1px solid rgba(var(--color-primary-rgb),.28)}.last-feed-banner.empty[data-v-8a2b0812]{flex-direction:row;align-items:center;justify-content:space-between;background:var(--color-surface);border-color:var(--color-border)}.banner-main[data-v-8a2b0812]{display:flex;align-items:flex-end;gap:12px}.banner-label[data-v-8a2b0812]{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--color-primary-dark);flex-shrink:0;padding-bottom:4px}.banner-time[data-v-8a2b0812]{font-size:34px;font-weight:650;color:var(--color-text);line-height:1;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.banner-meta[data-v-8a2b0812]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;color:var(--color-text-secondary)}.banner-amount[data-v-8a2b0812]{font-weight:650;font-size:14px;color:var(--color-on-primary);background:var(--color-primary);padding:4px 10px;border-radius:var(--radius-pill);margin-bottom:2px}.banner-divider[data-v-8a2b0812]{opacity:.45}.banner-empty[data-v-8a2b0812]{font-size:15px;font-weight:600;color:var(--color-text-secondary)}.stats[data-v-8a2b0812]{display:flex;align-items:center;justify-content:space-around;padding:16px 12px}.stat-item[data-v-8a2b0812]{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;min-width:0}.stat-item--clickable[data-v-8a2b0812]{border-radius:var(--radius-sm);padding:4px 6px;transition:background .2s var(--ease-out)}.stat-item--clickable[data-v-8a2b0812]:active{background:var(--color-primary-light)}.stat-value[data-v-8a2b0812]{font-size:24px;font-weight:650;letter-spacing:-.04em;color:var(--color-text);font-variant-numeric:tabular-nums}.stat-label[data-v-8a2b0812]{font-size:12px;color:var(--color-text-secondary)}.stat-hint[data-v-8a2b0812]{font-size:10px;color:var(--color-primary-dark);font-weight:600;opacity:.8}.stat-divider[data-v-8a2b0812]{width:1px;height:32px;background:var(--color-border)}.section-title[data-v-8a2b0812]{font-size:13px;font-weight:600;letter-spacing:.06em;margin-bottom:12px;color:var(--color-text-secondary)}.amount-grid[data-v-8a2b0812]{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}.amount-btn[data-v-8a2b0812]{position:relative;display:flex;flex-direction:column;align-items:center;padding:14px 8px;border-radius:18px;border:1px solid rgba(var(--color-primary-rgb),.18);background:var(--color-chip);color:var(--color-text);-webkit-text-fill-color:currentColor;transition:transform .2s var(--ease-out),background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.amount-btn[data-v-8a2b0812]:active{transform:scale(.97)}.amount-btn.active[data-v-8a2b0812]{border-color:transparent;background:var(--color-primary);color:var(--color-on-primary);-webkit-text-fill-color:currentColor;box-shadow:0 8px 20px rgba(var(--color-primary-rgb),.35)}.amount-value[data-v-8a2b0812]{font-size:22px;font-weight:650;letter-spacing:-.03em;color:inherit;font-variant-numeric:tabular-nums}.amount-unit[data-v-8a2b0812]{font-size:12px;color:var(--color-text-secondary);-webkit-text-fill-color:currentColor}.amount-btn.active .amount-unit[data-v-8a2b0812]{color:var(--color-on-primary-muted);-webkit-text-fill-color:currentColor}.default-tag[data-v-8a2b0812]{position:absolute;top:-7px;right:-2px;background:var(--color-accent);color:var(--color-on-primary);-webkit-text-fill-color:currentColor;font-size:10px;padding:2px 7px;border-radius:var(--radius-pill);font-weight:600}.custom-amount[data-v-8a2b0812]{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:18px;border:1px solid var(--color-border);background:var(--color-bg);transition:background .2s var(--ease-out),border-color .2s var(--ease-out)}.custom-amount.active[data-v-8a2b0812]{border-color:var(--color-primary);background:var(--color-primary-light)}.custom-label[data-v-8a2b0812]{font-size:14px;font-weight:600;color:var(--color-text-secondary);flex-shrink:0}.custom-input-wrap[data-v-8a2b0812]{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.custom-input[data-v-8a2b0812]{flex:1;min-width:0;padding:6px 8px;border:none;background:transparent;font-size:18px;font-weight:650;color:var(--color-text);text-align:right;font-variant-numeric:tabular-nums}.custom-input[data-v-8a2b0812]:focus{outline:none}.custom-input[data-v-8a2b0812]::placeholder{font-size:14px;font-weight:400;color:var(--color-text-secondary)}.custom-unit[data-v-8a2b0812]{font-size:13px;color:var(--color-text-secondary)}.record-section[data-v-8a2b0812]{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 16px 0;margin-top:4px;background:transparent}.record-btn[data-v-8a2b0812]{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;padding:16px 20px;border-radius:22px;background:var(--color-primary);color:var(--color-on-primary);-webkit-text-fill-color:currentColor;box-shadow:0 10px 28px rgba(var(--color-primary-rgb),.38);transition:transform .22s var(--ease-out),background .22s var(--ease-out),box-shadow .22s var(--ease-out)}.record-btn[data-v-8a2b0812]:active{transform:scale(.98)}.record-btn.success[data-v-8a2b0812]{background:var(--color-success);box-shadow:0 10px 28px #5d9b6e52}.record-icon[data-v-8a2b0812]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;line-height:1}.record-icon svg[data-v-8a2b0812]{width:26px;height:26px}.record-copy[data-v-8a2b0812]{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.record-text[data-v-8a2b0812]{font-size:17px;font-weight:700;letter-spacing:-.02em}.record-amount[data-v-8a2b0812]{font-size:12px;opacity:.88;font-variant-numeric:tabular-nums}.record-hint[data-v-8a2b0812]{font-size:13px;color:var(--color-success);font-weight:500}.calendar-overlay[data-v-17e406f1]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;animation:overlay-in .25s var(--ease-out)}.calendar-panel[data-v-17e406f1]{width:100%;max-width:340px;background:var(--color-surface);border-radius:24px;padding:20px;border:1px solid var(--color-border);box-shadow:var(--shadow-float);animation:dialog-in .32s var(--ease-out)}.calendar-header[data-v-17e406f1]{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.nav-btn[data-v-17e406f1]{width:36px;height:36px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary);font-size:22px;font-weight:600}.month-label[data-v-17e406f1]{font-size:16px;font-weight:700}.week-row[data-v-17e406f1]{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.week-cell[data-v-17e406f1]{text-align:center;font-size:12px;color:var(--color-text-secondary);font-weight:600}.days-grid[data-v-17e406f1]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day-cell[data-v-17e406f1]{position:relative;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:50%;font-size:14px;transition:all .15s;min-width:0;padding:2px 0}.calendar-panel.has-amounts .day-cell[data-v-17e406f1]{border-radius:10px;aspect-ratio:auto;min-height:44px}.day-cell.other-month[data-v-17e406f1]{opacity:.35}.day-cell.today[data-v-17e406f1]:not(.selected){box-shadow:inset 0 0 0 2px var(--color-accent);background:var(--color-awake-light)}.day-cell.selected[data-v-17e406f1]{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.35)}.day-cell.marked[data-v-17e406f1]:not(.selected){background:var(--color-calendar-marked)}.day-cell.disabled[data-v-17e406f1]{opacity:.25;cursor:not-allowed}.day-num[data-v-17e406f1]{line-height:1.1;font-weight:600}.day-amount[data-v-17e406f1]{font-size:9px;font-weight:700;line-height:1;color:var(--color-primary);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 1px}.day-cell.selected .day-amount[data-v-17e406f1]{color:var(--color-on-primary-muted)}.day-dot[data-v-17e406f1]{position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:var(--color-primary-dark)}.day-cell.selected .day-dot[data-v-17e406f1]{background:var(--color-on-primary)}.calendar-hint[data-v-17e406f1]{display:flex;align-items:center;gap:6px;margin-top:14px;font-size:12px;color:var(--color-text-secondary)}.dot-sample[data-v-17e406f1]{width:5px;height:5px;border-radius:50%;background:var(--color-primary-dark)}.amount-sample[data-v-17e406f1]{font-size:10px;font-weight:700;color:var(--color-primary);background:var(--color-calendar-marked);padding:1px 4px;border-radius:4px}.calendar-actions[data-v-17e406f1]{display:flex;gap:8px;margin-top:12px}.action-btn[data-v-17e406f1]{flex:1}.date-picker-field[data-v-f48fd45a]{min-width:0}.date-picker-label[data-v-f48fd45a]{display:block;font-size:13px;color:var(--color-text-secondary);font-weight:500;margin-bottom:6px}.date-picker-wrap[data-v-f48fd45a]{padding:0;overflow:hidden;min-width:0}.date-picker-wrap.card[data-v-f48fd45a]{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow)}.date-picker-field.embedded .date-picker-wrap[data-v-f48fd45a]{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:none}.date-trigger[data-v-f48fd45a]{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:left;min-width:0}.date-icon[data-v-f48fd45a]{width:28px;height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--color-primary-light);color:var(--color-primary-dark);font-size:14px}.date-info[data-v-f48fd45a]{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.date-label[data-v-f48fd45a]{font-size:15px;font-weight:700;color:var(--color-text)}.date-sub[data-v-f48fd45a]{font-size:12px;color:var(--color-text-secondary)}.date-arrow[data-v-f48fd45a]{font-size:20px;color:var(--color-text-secondary);flex-shrink:0}.confirm-overlay[data-v-fb559211]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000;animation:overlay-in .25s var(--ease-out)}.confirm-dialog[data-v-fb559211]{width:100%;max-width:320px;background:var(--color-surface);border-radius:24px;padding:24px;border:1px solid var(--color-border);box-shadow:var(--shadow-float);animation:dialog-in .32s var(--ease-out)}.confirm-title[data-v-fb559211]{font-size:18px;font-weight:700;letter-spacing:-.02em;margin-bottom:10px}.confirm-message[data-v-fb559211]{font-size:14px;color:var(--color-text-secondary);line-height:1.5;margin-bottom:20px}.confirm-actions[data-v-fb559211]{display:flex;gap:10px}.confirm-actions .btn[data-v-fb559211]{flex:1;padding:12px}.btn-danger[data-v-fb559211]{background:var(--color-danger);color:#fff;box-shadow:0 6px 16px #c45c5c47}.btn-danger[data-v-fb559211]:hover{background:#b04e4e}.edit-overlay[data-v-2fb5a0aa]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-2fb5a0aa]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden;max-height:calc(100dvh - 48px);overflow-y:auto}.edit-title[data-v-2fb5a0aa]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-2fb5a0aa]{--row-input-height: 44px;display:flex;flex-direction:column;gap:14px;min-width:0}.mode-toggle[data-v-2fb5a0aa]{display:flex;gap:16px}.mode-option[data-v-2fb5a0aa]{display:flex;align-items:center;gap:6px;font-size:14px;cursor:pointer}.shared-amount input[data-v-2fb5a0aa]{width:120px;max-width:100%}.rows[data-v-2fb5a0aa]{display:flex;flex-direction:column;gap:10px}.row-item[data-v-2fb5a0aa]{--row-label-offset: 25.5px ;display:flex;align-items:flex-start;gap:10px;min-width:0}.row-fields[data-v-2fb5a0aa]{flex:1;display:flex;gap:10px;min-width:0}.row-fields .field[data-v-2fb5a0aa]{flex:1;min-width:0}.field label[data-v-2fb5a0aa]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.row-fields .field input[data-v-2fb5a0aa],.shared-amount input[data-v-2fb5a0aa]{height:var(--row-input-height);padding:0 12px;border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:16px;background:var(--color-bg);color:var(--color-text);box-sizing:border-box;-moz-appearance:none;appearance:none;-webkit-appearance:none}.row-fields .field input[data-v-2fb5a0aa]{width:100%;min-width:0;max-width:100%}.row-fields .field input[data-v-2fb5a0aa]:focus,.shared-amount input[data-v-2fb5a0aa]:focus{outline:none;border-color:var(--color-primary)}.remove-row[data-v-2fb5a0aa]{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-secondary);margin-top:calc(var(--row-label-offset) + 6px + (var(--row-input-height) - 32px) / 2)}.add-row-btn[data-v-2fb5a0aa]{width:100%}.edit-actions[data-v-2fb5a0aa]{display:flex;gap:10px;margin-top:4px}.edit-actions .btn[data-v-2fb5a0aa]{flex:1;padding:12px}.edit-overlay[data-v-2d102fbd]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-2d102fbd]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden;max-height:calc(100dvh - 48px);overflow-y:auto}.edit-title[data-v-2d102fbd]{font-size:17px;font-weight:700;margin-bottom:8px}.edit-hint[data-v-2d102fbd]{font-size:12px;color:var(--color-text-secondary);margin-bottom:4px}.edit-form[data-v-2d102fbd]{--row-input-height: 44px;display:flex;flex-direction:column;gap:14px;min-width:0}.rows[data-v-2d102fbd]{display:flex;flex-direction:column;gap:12px}.row-item[data-v-2d102fbd]{display:flex;align-items:flex-end;gap:8px;min-width:0}.row-item .field[data-v-2d102fbd]{flex:1;min-width:0}.field label[data-v-2d102fbd]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.row-item .field input[data-v-2d102fbd]{width:100%;min-width:0;height:var(--row-input-height);padding:0 12px;border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:16px;background:var(--color-bg);color:var(--color-text);box-sizing:border-box;-moz-appearance:none;appearance:none;-webkit-appearance:none}.row-item .field input[data-v-2d102fbd]:focus{outline:none;border-color:var(--color-primary)}.status-switch[data-v-2d102fbd]{display:flex;flex-shrink:0;padding:3px;height:var(--row-input-height);box-sizing:border-box;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px}.status-btn[data-v-2d102fbd]{padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--color-text-secondary)}.status-btn.asleep.active[data-v-2d102fbd]{background:var(--color-sleep-dark);color:#fff}.status-btn.awake.active[data-v-2d102fbd]{background:var(--color-awake-dark);color:#fff}.remove-row[data-v-2d102fbd]{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-secondary);margin-bottom:6px}.add-row-btn[data-v-2d102fbd]{width:100%}.edit-error[data-v-2d102fbd]{font-size:13px;color:#c62828}.edit-actions[data-v-2d102fbd]{display:flex;gap:10px;margin-top:4px}.edit-actions .btn[data-v-2d102fbd]{flex:1;padding:12px}.chart-overlay[data-v-d86d66a1]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.chart-dialog[data-v-d86d66a1]{width:100%;max-width:min(480px,calc(100vw - 32px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:12px;max-height:calc(100dvh - 32px)}.chart-title[data-v-d86d66a1]{font-size:17px;font-weight:700}.chart-container[data-v-d86d66a1]{width:100%;height:max(240px,50vh);min-height:240px}.chart-hint[data-v-d86d66a1]{font-size:12px;color:var(--color-text-secondary);text-align:center}.empty-state[data-v-d86d66a1]{text-align:center;padding:32px 16px;color:var(--color-text-secondary)}.empty-icon[data-v-d86d66a1]{font-size:36px;margin-bottom:8px}.empty-hint[data-v-d86d66a1]{font-size:13px;margin-top:4px}.close-btn[data-v-d86d66a1]{width:100%;padding:12px}.feed-timeline[data-v-81940762]{padding:16px 16px 16px 12px}.timeline-row[data-v-81940762]{display:flex;align-items:stretch;gap:12px;min-width:0}.track-col[data-v-81940762]{width:24px;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.node-row[data-v-81940762]{align-items:center}.node-dot[data-v-81940762]{width:9px;height:9px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-surface);box-shadow:0 0 0 2px var(--color-primary-light);flex-shrink:0}.node-card[data-v-81940762]{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--color-bg);border-radius:16px;border:1px solid var(--color-border);user-select:none;-webkit-user-select:none;touch-action:manipulation;cursor:pointer;transition:background .2s var(--ease-out),border-color .2s var(--ease-out),transform .2s var(--ease-out)}.node-card[data-v-81940762]:active{background:var(--color-primary-light);border-color:transparent;transform:scale(.99)}.node-time[data-v-81940762]{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.node-amount[data-v-81940762]{font-size:15px;font-weight:600;color:var(--color-on-primary);background:var(--color-primary);padding:4px 12px;border-radius:20px;flex-shrink:0}.gap-row[data-v-81940762]{min-height:36px}.track-line[data-v-81940762]{width:2px;flex:1;min-height:28px;background:linear-gradient(to bottom,var(--color-primary-light),var(--color-border));border-radius:1px}.gap-interval[data-v-81940762]{flex:1;align-self:center;padding:4px 0 4px 4px;font-size:12px;color:var(--color-text-secondary);line-height:1.3}.edit-overlay[data-v-1676b328]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-1676b328]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden}.edit-title[data-v-1676b328]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-1676b328]{display:flex;flex-direction:column;gap:14px;min-width:0}.field[data-v-1676b328]{min-width:0}.field label[data-v-1676b328]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.field input[data-v-1676b328]{width:100%;min-width:0;max-width:100%}.edit-actions[data-v-1676b328]{display:flex;gap:10px;margin-top:4px}.edit-actions .btn[data-v-1676b328]{flex:1;padding:12px}.sleep-timeline[data-v-ffe8994e]{padding:16px 16px 16px 12px}.timeline-row[data-v-ffe8994e]{display:flex;align-items:stretch;gap:12px;min-width:0}.track-col[data-v-ffe8994e]{width:24px;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.node-row[data-v-ffe8994e]{align-items:center}.node-dot[data-v-ffe8994e]{width:10px;height:10px;border-radius:50%;border:2px solid var(--color-surface);flex-shrink:0}.node-dot.asleep[data-v-ffe8994e]{background:var(--color-sleep-dark);box-shadow:0 0 0 2px var(--color-sleep-light)}.node-dot.awake[data-v-ffe8994e]{background:var(--color-awake-dark);box-shadow:0 0 0 2px var(--color-awake-light)}.node-card[data-v-ffe8994e]{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--color-border);user-select:none;-webkit-user-select:none;touch-action:manipulation;cursor:pointer}.node-card.asleep[data-v-ffe8994e]{background:var(--gradient-sleep);border-color:#b85a8238}.node-card.awake[data-v-ffe8994e]{background:var(--gradient-awake);border-color:#f0b04247}.node-time[data-v-ffe8994e]{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}.node-card.asleep .node-time[data-v-ffe8994e]{color:var(--color-sleep-ink)}.node-card.awake .node-time[data-v-ffe8994e]{color:var(--color-awake-ink)}.node-status[data-v-ffe8994e]{font-size:13px;font-weight:700;padding:4px 12px;border-radius:20px;flex-shrink:0}.node-card.asleep .node-status[data-v-ffe8994e]{color:var(--color-sleep);background:var(--color-status-pill)}.node-card.awake .node-status[data-v-ffe8994e]{color:var(--color-awake);background:var(--color-status-pill)}.gap-row[data-v-ffe8994e]{min-height:36px}.track-line[data-v-ffe8994e]{width:2px;flex:1;min-height:28px;border-radius:1px;background:var(--color-border)}.track-line.asleep[data-v-ffe8994e]{background:linear-gradient(to bottom,var(--track-sleep),var(--color-border))}.track-line.awake[data-v-ffe8994e]{background:linear-gradient(to bottom,var(--track-awake),var(--color-border))}.gap-interval[data-v-ffe8994e]{flex:1;align-self:center;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 8px;padding:4px 0 4px 4px;font-size:12px;font-weight:600;color:var(--color-text-secondary);line-height:1.35;min-width:0}.gap-interval.asleep[data-v-ffe8994e]{color:var(--color-sleep)}.gap-interval.awake[data-v-ffe8994e]{color:var(--color-awake)}.gap-main[data-v-ffe8994e]{flex-shrink:0}.sleep-tag[data-v-ffe8994e]{display:inline-flex;align-items:center;flex-shrink:0;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.3}.sleep-tag.nap[data-v-ffe8994e]{color:#ad1457;border:1px solid rgba(173,20,87,.2);background:#fce4ec}.sleep-tag.rest[data-v-ffe8994e]{color:#6a1b9a;border:1px solid rgba(106,27,154,.2);background:#f3e5f5}.sleep-tag.sweet[data-v-ffe8994e]{color:#4527a0;border:1px solid rgba(69,39,160,.2);background:#ede7f6}.sleep-tag.dream[data-v-ffe8994e]{color:#283593;border:1px solid rgba(40,53,147,.22);background:#e8eaf6}.sleep-tag.sound[data-v-ffe8994e]{color:#1565c0;border:1px solid rgba(21,101,192,.22);background:#e3f2fd}.sleep-tag.thunder[data-v-ffe8994e]{color:#1a237e;border:1px solid rgba(26,35,126,.22);background:#e8eaf6}.edit-overlay[data-v-b4a301d0]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-b4a301d0]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden;max-height:calc(100dvh - 48px);overflow-y:auto}.edit-title[data-v-b4a301d0]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-b4a301d0]{display:flex;flex-direction:column;gap:14px;min-width:0}.field label[data-v-b4a301d0],.status-label[data-v-b4a301d0]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.field input[data-v-b4a301d0]{width:100%;min-width:0;max-width:100%}.status-switch[data-v-b4a301d0]{display:flex;padding:3px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px}.status-btn[data-v-b4a301d0]{flex:1;padding:10px 12px;border-radius:999px;font-size:14px;font-weight:700;color:var(--color-text-secondary)}.status-btn.asleep.active[data-v-b4a301d0]{background:var(--color-sleep-dark);color:#fff}.status-btn.awake.active[data-v-b4a301d0]{background:var(--color-awake-dark);color:#fff}.edit-actions[data-v-b4a301d0]{display:flex;gap:10px;margin-top:4px}.edit-actions .btn[data-v-b4a301d0]{flex:1;padding:12px}.history-tab[data-v-567e060b]{display:flex;flex-direction:column;gap:12px;min-width:0}.history-sticky[data-v-567e060b]{position:sticky;top:0;z-index:20;display:flex;flex-direction:column;gap:12px;margin:0 -16px;padding:16px 16px 12px;background:var(--color-bg);box-shadow:none}.kind-switch[data-v-567e060b]{display:flex;padding:4px;background:var(--color-chip);border:1px solid var(--color-border);border-radius:var(--radius-pill);box-shadow:var(--shadow)}.kind-btn[data-v-567e060b]{flex:1;padding:8px 12px;border-radius:var(--radius-pill);font-size:13px;font-weight:650;color:var(--color-text-secondary);transition:background .22s var(--ease-out),color .22s var(--ease-out),box-shadow .22s var(--ease-out)}.kind-btn.active[data-v-567e060b]{background:var(--color-primary);color:var(--color-on-primary);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.32)}.kind-btn.sleep.active[data-v-567e060b]{background:var(--color-sleep-dark);color:#fff;box-shadow:0 4px 12px #7a586c4d}.date-nav-row[data-v-567e060b]{display:flex;align-items:stretch;gap:8px;min-width:0}.date-picker-flex[data-v-567e060b]{flex:1;min-width:0}.day-nav-btn[data-v-567e060b]{width:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:16px;box-shadow:var(--shadow);font-size:22px;font-weight:500;color:var(--color-text);line-height:1;transition:transform .2s var(--ease-out),background .2s var(--ease-out)}.day-nav-btn[data-v-567e060b]:active{transform:scale(.94);background:var(--color-primary-light)}.action-row[data-v-567e060b]{display:flex;gap:10px}.action-btn[data-v-567e060b]{flex:1;padding:12px;font-weight:600;box-shadow:var(--shadow)}.hint[data-v-567e060b]{font-size:13px;margin-top:4px}.day-loading[data-v-567e060b]{text-align:center;padding:36px 12px;color:var(--color-text-secondary);font-size:14px}.day-summary[data-v-567e060b]{display:flex;justify-content:space-between;padding:8px 4px 0;font-size:13px;color:var(--color-text-secondary)}.timeline-hint[data-v-567e060b]{font-size:12px;color:var(--color-text-secondary);text-align:center;padding:0 4px}.growth-chart[data-v-4356de8f]{display:flex;flex-direction:column;gap:8px}.chart-header[data-v-4356de8f]{display:flex;justify-content:space-between;align-items:center}.chart-title[data-v-4356de8f]{font-size:14px;font-weight:600;color:var(--color-text-secondary)}.chart-latest[data-v-4356de8f]{font-size:13px;color:var(--color-text-secondary)}.chart-latest strong[data-v-4356de8f]{color:var(--color-text);font-size:16px}.chart-wrap[data-v-4356de8f]{position:relative;overflow:visible;touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none}.chart-svg[data-v-4356de8f]{display:block;width:100%;height:120px;background:var(--color-bg);border-radius:var(--radius-sm)}.chart-point[data-v-4356de8f]{pointer-events:none;opacity:.85;transition:opacity .1s}.chart-point.active[data-v-4356de8f]{opacity:1;stroke:#fff;stroke-width:1.5}.chart-tooltip[data-v-4356de8f]{position:absolute;max-width:calc(100% - 8px);background:#3e2723eb;color:#fff;font-size:12px;padding:6px 10px;border-radius:8px;white-space:nowrap;pointer-events:none;z-index:10;box-shadow:0 2px 8px #00000026;transition:left .08s ease,top .08s ease}.chart-tooltip[data-v-4356de8f]:after{content:"";position:absolute;width:8px;height:8px;background:#3e2723eb;transform:rotate(45deg)}.chart-tooltip.align-center[data-v-4356de8f]:not(.below):after{left:50%;bottom:-4px;transform:translate(-50%) rotate(45deg)}.chart-tooltip.align-left[data-v-4356de8f]:not(.below):after{left:14px;bottom:-4px}.chart-tooltip.align-right[data-v-4356de8f]:not(.below):after{right:14px;bottom:-4px}.chart-tooltip.below.align-center[data-v-4356de8f]:after{left:50%;top:-4px;transform:translate(-50%) rotate(45deg)}.chart-tooltip.below.align-left[data-v-4356de8f]:after{left:14px;top:-4px}.chart-tooltip.below.align-right[data-v-4356de8f]:after{right:14px;top:-4px}.chart-hint[data-v-4356de8f]{font-size:11px;color:var(--color-text-secondary);text-align:center}.chart-labels[data-v-4356de8f]{display:flex;justify-content:space-between;font-size:11px;color:var(--color-text-secondary);padding:0 4px}.chart-empty[data-v-4356de8f]{padding:20px;text-align:center;font-size:13px;color:var(--color-text-secondary);background:var(--color-bg);border-radius:var(--radius-sm)}.growth-timeline[data-v-c8ef3380]{padding:4px 0}.timeline-row[data-v-c8ef3380]{display:flex;align-items:stretch;gap:12px;min-width:0}.track-col[data-v-c8ef3380]{width:24px;flex-shrink:0;display:flex;flex-direction:column;align-items:center}.node-row[data-v-c8ef3380]{align-items:center}.node-dot[data-v-c8ef3380]{width:9px;height:9px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-surface);box-shadow:0 0 0 2px var(--color-primary-light);flex-shrink:0}.node-card[data-v-c8ef3380]{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--color-bg);border-radius:16px;border:1px solid var(--color-border);user-select:none;-webkit-user-select:none;touch-action:manipulation;cursor:pointer;transition:background .2s var(--ease-out),border-color .2s var(--ease-out)}.node-card[data-v-c8ef3380]:active{background:var(--color-primary-light);border-color:transparent}.node-date[data-v-c8ef3380]{font-size:14px;font-weight:600;flex-shrink:0}.node-values[data-v-c8ef3380]{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.node-val[data-v-c8ef3380]{font-size:13px;font-weight:600;padding:4px 10px;border-radius:20px}.node-val.height[data-v-c8ef3380]{background:var(--color-height-bg);color:var(--color-height-fg)}.node-val.weight[data-v-c8ef3380]{background:var(--color-weight-bg);color:var(--color-weight-fg)}.gap-row[data-v-c8ef3380]{min-height:36px}.track-line[data-v-c8ef3380]{width:2px;flex:1;min-height:28px;background:linear-gradient(to bottom,var(--color-height-bg),var(--color-border));border-radius:1px}.gap-change[data-v-c8ef3380]{flex:1;align-self:center;padding:4px 0 4px 4px;font-size:12px;color:var(--color-text-secondary);line-height:1.4}.edit-overlay[data-v-7a5a20a1]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-7a5a20a1]{width:100%;max-width:360px;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.edit-title[data-v-7a5a20a1]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-7a5a20a1]{display:flex;flex-direction:column;gap:14px;min-width:0}.field-row[data-v-7a5a20a1]{display:flex;gap:12px;min-width:0}.field[data-v-7a5a20a1]{flex:1;min-width:0}.field label[data-v-7a5a20a1]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.field input[data-v-7a5a20a1]{width:100%;min-width:0}.hint[data-v-7a5a20a1]{font-size:12px;color:var(--color-text-secondary)}.edit-actions[data-v-7a5a20a1]{display:flex;gap:10px}.edit-actions .btn[data-v-7a5a20a1]{flex:1;padding:12px}.edit-overlay[data-v-70f9e6a9]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-70f9e6a9]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden}.edit-title[data-v-70f9e6a9]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-70f9e6a9]{display:flex;flex-direction:column;gap:14px;min-width:0}.field-row[data-v-70f9e6a9]{display:flex;gap:12px;min-width:0}.field[data-v-70f9e6a9]{flex:1;min-width:0}.field label[data-v-70f9e6a9]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.field input[data-v-70f9e6a9]{width:100%;min-width:0}.hint[data-v-70f9e6a9]{font-size:12px;color:var(--color-text-secondary)}.edit-actions[data-v-70f9e6a9]{display:flex;gap:10px}.edit-actions .btn[data-v-70f9e6a9]{flex:1;padding:12px}.profile-tab[data-v-3a0170a2]{display:flex;flex-direction:column;gap:16px;min-width:0;overflow-x:hidden;padding-top:16px}.section-title[data-v-3a0170a2]{font-size:15px;font-weight:600;margin-bottom:16px}.record-growth-btn[data-v-3a0170a2]{width:100%;padding:14px;font-size:16px;font-weight:600;box-shadow:var(--shadow)}.chart-gap[data-v-3a0170a2]{height:20px}.timeline-hint[data-v-3a0170a2]{font-size:12px;color:var(--color-text-secondary);text-align:center;margin-top:10px}.hint[data-v-3a0170a2]{font-size:13px;margin-top:4px}.edit-overlay[data-v-d9342e54]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.edit-dialog[data-v-d9342e54]{width:100%;max-width:min(360px,calc(100vw - 48px));min-width:0;background:var(--color-surface);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);overflow-x:hidden}.edit-title[data-v-d9342e54]{font-size:17px;font-weight:700;margin-bottom:16px}.edit-form[data-v-d9342e54]{display:flex;flex-direction:column;gap:14px;min-width:0}.field label[data-v-d9342e54]{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--color-text-secondary)}.field input[data-v-d9342e54]{width:100%;min-width:0}.age-display[data-v-d9342e54]{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--color-primary-light);border-radius:var(--radius-sm);font-size:14px;color:var(--color-primary-dark)}.age-icon[data-v-d9342e54]{font-size:18px}.edit-actions[data-v-d9342e54]{display:flex;gap:10px}.edit-actions .btn[data-v-d9342e54]{flex:1;padding:12px}.settings-tab[data-v-4ca554df]{display:flex;flex-direction:column;gap:16px;min-width:0;overflow-x:hidden;padding-top:16px}.section-title[data-v-4ca554df]{font-size:15px;font-weight:600;margin-bottom:6px}.section-desc[data-v-4ca554df]{font-size:13px;color:var(--color-text-secondary);margin-bottom:16px}.profile-card .section-title[data-v-4ca554df]{margin-bottom:4px}.profile-card .section-desc[data-v-4ca554df]{margin-bottom:0}.profile-header[data-v-4ca554df]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.profile-avatar[data-v-4ca554df]{font-size:32px;line-height:1;flex-shrink:0}.profile-summary[data-v-4ca554df]{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.profile-row[data-v-4ca554df]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--color-bg);border-radius:var(--radius-sm)}.profile-label[data-v-4ca554df]{font-size:13px;color:var(--color-text-secondary);flex-shrink:0}.profile-value[data-v-4ca554df]{font-size:14px;font-weight:600;text-align:right;min-width:0;word-break:break-word}.profile-age[data-v-4ca554df]{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--color-primary-light);border-radius:var(--radius-sm);font-size:14px;color:var(--color-primary-dark)}.age-icon[data-v-4ca554df]{font-size:18px}.edit-profile-btn[data-v-4ca554df]{width:100%;padding:14px;font-size:16px}.theme-options[data-v-4ca554df]{display:flex;flex-direction:column;gap:8px}.theme-option[data-v-4ca554df]{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg);text-align:left;transition:border-color .2s var(--ease-out),background .2s var(--ease-out),box-shadow .2s var(--ease-out)}.theme-option.active[data-v-4ca554df]{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 4px 14px rgba(var(--color-primary-rgb),.16)}.theme-swatch[data-v-4ca554df]{width:36px;height:36px;border-radius:12px;overflow:hidden;flex-shrink:0;display:flex;border:1px solid var(--color-border)}.theme-swatch-a[data-v-4ca554df],.theme-swatch-b[data-v-4ca554df]{flex:1;height:100%}.theme-swatch[data-preview=dawn] .theme-swatch-a[data-v-4ca554df]{background:#fff6f0}.theme-swatch[data-preview=dawn] .theme-swatch-b[data-v-4ca554df]{background:#f06a5a}.theme-swatch[data-preview=starry] .theme-swatch-a[data-v-4ca554df]{background:#0e1733}.theme-swatch[data-preview=starry] .theme-swatch-b[data-v-4ca554df]{background:#f3d36a}.theme-swatch[data-preview=auto] .theme-swatch-a[data-v-4ca554df]{background:linear-gradient(180deg,#fff6f0 50%,#0e1733 50%)}.theme-swatch[data-preview=auto] .theme-swatch-b[data-v-4ca554df]{background:linear-gradient(180deg,#f06a5a 50%,#f3d36a 50%)}.theme-copy[data-v-4ca554df]{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-name[data-v-4ca554df]{font-size:15px;font-weight:700;color:var(--color-text)}.theme-hint[data-v-4ca554df]{font-size:12px;color:var(--color-text-secondary);line-height:1.4}.theme-option.active .theme-name[data-v-4ca554df]{color:var(--color-primary-dark)}.theme-current[data-v-4ca554df]{margin-top:10px;font-size:12px;font-weight:600;color:var(--color-primary-dark)}.reminder-panels[data-v-4ca554df]{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.reminder-panel[data-v-4ca554df]{padding:14px;border-radius:var(--radius-sm);background:var(--color-bg);border:1px solid var(--color-border)}.reminder-panel-head[data-v-4ca554df]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.reminder-panel-title[data-v-4ca554df]{display:flex;align-items:flex-start;gap:10px;min-width:0}.reminder-panel-icon[data-v-4ca554df]{font-size:22px;line-height:1.2;flex-shrink:0}.reminder-panel-name[data-v-4ca554df]{font-size:15px;font-weight:700;color:var(--color-text)}.reminder-panel-hint[data-v-4ca554df]{margin-top:2px;font-size:12px;color:var(--color-text-secondary);line-height:1.4}.interval-caption[data-v-4ca554df]{font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px}.toggle-btn[data-v-4ca554df]{min-width:52px;padding:8px 12px;border-radius:999px;border:1px solid var(--color-border);font-size:13px;font-weight:700;color:var(--color-text-secondary);flex-shrink:0}.toggle-btn.on[data-v-4ca554df]{border-color:var(--color-success);background:var(--color-success-soft);color:var(--color-success-ink)}.interval-group[data-v-4ca554df]{display:flex;gap:6px;flex-wrap:wrap}.interval-btn[data-v-4ca554df]{padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:12px;font-weight:600;color:var(--color-text-secondary);background:var(--color-surface)}.interval-btn.active[data-v-4ca554df]{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary-dark)}.interval-btn[data-v-4ca554df]:disabled{opacity:.45}.custom-interval[data-v-4ca554df]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.custom-field[data-v-4ca554df]{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border);font-size:13px;color:var(--color-text-secondary)}.custom-field input[data-v-4ca554df]{width:48px;border:none;background:transparent;font-size:16px;font-weight:700;color:var(--color-text);text-align:center;padding:0;-moz-appearance:textfield}.custom-field input[data-v-4ca554df]::-webkit-outer-spin-button,.custom-field input[data-v-4ca554df]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.custom-preview[data-v-4ca554df]{width:100%;font-size:12px;color:var(--color-primary-dark);font-weight:600}.reminder-saved[data-v-4ca554df]{font-size:12px;color:var(--color-success);margin-bottom:8px}.push-box[data-v-4ca554df]{margin-top:4px;padding:12px;border-radius:var(--radius-sm);background:var(--color-bg)}.push-title[data-v-4ca554df]{font-size:14px;font-weight:600;margin-bottom:4px}.push-desc[data-v-4ca554df],.push-warn[data-v-4ca554df]{font-size:12px;color:var(--color-text-secondary);margin-bottom:8px}.push-warn[data-v-4ca554df]{color:var(--color-awake)}.push-meta[data-v-4ca554df]{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--color-text-secondary);margin-bottom:10px}.push-actions[data-v-4ca554df]{display:flex;flex-direction:column;gap:8px}.push-btn[data-v-4ca554df]{width:100%;padding:12px;font-size:15px}.push-btn.secondary[data-v-4ca554df]{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary)}.push-message[data-v-4ca554df]{margin-top:8px;font-size:12px;color:var(--color-primary-dark)}.option-list[data-v-4ca554df]{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.option-item[data-v-4ca554df]{display:grid;grid-template-columns:24px 1fr 76px;align-items:center;gap:8px;min-width:0}.option-index[data-v-4ca554df]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.option-input-wrap[data-v-4ca554df]{display:flex;align-items:center;gap:4px;min-width:0}.option-input[data-v-4ca554df]{width:100%;min-width:0;max-width:100%;padding:10px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:16px;background:var(--color-bg);text-align:center}.option-input[data-v-4ca554df]:focus{outline:none;border-color:var(--color-primary)}.option-unit[data-v-4ca554df]{font-size:13px;color:var(--color-text-secondary);flex-shrink:0}.default-btn[data-v-4ca554df]{width:100%;padding:8px 4px;border-radius:var(--radius-sm);font-size:11px;font-weight:500;border:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap;text-align:center;transition:all .15s}.default-btn.active[data-v-4ca554df]{border-color:var(--color-accent);background:var(--color-awake-light);color:var(--color-awake-ink)}.save-btn[data-v-4ca554df]{width:100%;padding:14px;font-size:16px}.save-btn.saved[data-v-4ca554df]{background:var(--color-success)}.storage-status[data-v-4ca554df]{display:flex;gap:12px;align-items:flex-start}.storage-icon[data-v-4ca554df]{font-size:28px}.storage-mode[data-v-4ca554df]{font-weight:600;font-size:15px}.storage-desc[data-v-4ca554df]{font-size:13px;color:var(--color-text-secondary);margin-top:4px}.last-saved[data-v-4ca554df]{margin-top:12px;font-size:12px;color:var(--color-text-secondary)}.logout-section[data-v-4ca554df]{padding:16px}.logout-btn[data-v-4ca554df]{width:100%;padding:14px;font-size:16px;background:transparent;border:1px solid var(--color-border);color:var(--color-danger);border-radius:var(--radius-pill)}.logout-btn[data-v-4ca554df]:hover{background:var(--color-primary-light);border-color:var(--color-danger)}.overdue-icons[data-v-2e9f88aa]{display:flex;align-items:center;gap:4px;flex-shrink:0}.overdue-icon-btn[data-v-2e9f88aa]{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow)}.overdue-icon-btn.feed[data-v-2e9f88aa]{background:var(--color-primary-light);border-color:rgba(var(--color-primary-rgb),.35)}.overdue-icon-btn.soothe[data-v-2e9f88aa]{background:var(--color-sleep-light);border-color:#7a586c47}.overdue-icon-btn[data-v-2e9f88aa]:active{transform:scale(.94)}.overdue-icon-emoji[data-v-2e9f88aa]{font-size:16px;line-height:1;display:inline-block}.shake[data-v-2e9f88aa]{animation:overdue-shake-2e9f88aa 1.1s ease-in-out infinite;transform-origin:50% 80%}@keyframes overdue-shake-2e9f88aa{0%,to{transform:rotate(0)}12%{transform:rotate(-14deg)}24%{transform:rotate(12deg)}36%{transform:rotate(-10deg)}48%{transform:rotate(8deg)}60%{transform:rotate(-4deg)}72%{transform:rotate(2deg)}}@media(prefers-reduced-motion:reduce){.shake[data-v-2e9f88aa]{animation:overdue-pulse-2e9f88aa 1.6s ease-in-out infinite}@keyframes overdue-pulse-2e9f88aa{0%,to{opacity:1;transform:scale(1)}50%{opacity:.72;transform:scale(1.08)}}}.overdue-dialog-overlay[data-v-2e9f88aa]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1800;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay-bg);backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15);animation:overlay-in .25s var(--ease-out);animation:overdue-fade-in-2e9f88aa .2s ease-out}@keyframes overdue-fade-in-2e9f88aa{0%{opacity:0}to{opacity:1}}.overdue-dialog[data-v-2e9f88aa]{width:100%;max-width:300px;padding:24px 20px 18px;border-radius:var(--radius);background:var(--color-surface);box-shadow:0 12px 40px #3e272338;text-align:center;animation:overdue-pop-in-2e9f88aa .28s cubic-bezier(.34,1.4,.64,1)}@keyframes overdue-pop-in-2e9f88aa{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.overdue-dialog-hero[data-v-2e9f88aa]{font-size:40px;line-height:1;margin-bottom:10px}.overdue-dialog-title[data-v-2e9f88aa]{font-size:20px;font-weight:800;color:var(--color-primary-dark)}.overdue-dialog.feed .overdue-dialog-title[data-v-2e9f88aa]{color:var(--color-danger)}.overdue-dialog.soothe .overdue-dialog-title[data-v-2e9f88aa]{color:var(--color-sleep)}.overdue-dialog-desc[data-v-2e9f88aa]{margin-top:8px;font-size:13px;line-height:1.5;color:var(--color-text-secondary)}.overdue-dialog-actions[data-v-2e9f88aa]{display:flex;gap:8px;margin-top:18px}.btn-later[data-v-2e9f88aa],.btn-go[data-v-2e9f88aa]{flex:1;padding:11px 12px;border-radius:999px;font-size:14px;font-weight:700}.btn-later[data-v-2e9f88aa]{background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-go.feed[data-v-2e9f88aa]{background:linear-gradient(135deg,#ff7043,#e53935);color:#fff}.btn-go.soothe[data-v-2e9f88aa]{background:linear-gradient(135deg,#7e57c2,#5e35b1);color:#fff}.celebration-overlay[data-v-73fc1921]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--overlay-bg);backdrop-filter:blur(10px) saturate(1.1);-webkit-backdrop-filter:blur(10px) saturate(1.1);animation:fade-in-73fc1921 .25s ease-out}@keyframes fade-in-73fc1921{0%{opacity:0}to{opacity:1}}.celebration-canvas[data-v-73fc1921]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.celebration-card[data-v-73fc1921]{position:relative;z-index:1;width:100%;max-width:320px;padding:28px 24px 20px;border-radius:var(--radius);background:var(--color-surface);box-shadow:0 12px 40px #3e272333;text-align:center;animation:pop-in-73fc1921 .35s cubic-bezier(.34,1.4,.64,1)}@keyframes pop-in-73fc1921{0%{opacity:0;transform:scale(.85) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.celebration-emoji[data-v-73fc1921]{font-size:48px;line-height:1;margin-bottom:12px}.celebration-message[data-v-73fc1921]{font-size:22px;font-weight:800;color:var(--color-primary-dark);line-height:1.35;word-break:break-word}.celebration-sub[data-v-73fc1921]{margin-top:10px;font-size:12px;color:var(--color-text-secondary)}.celebration-btn[data-v-73fc1921]{width:100%;margin-top:18px;padding:12px;font-size:16px}.celebration-dismiss[data-v-73fc1921]{display:block;width:100%;margin-top:10px;padding:4px;border:none;background:transparent;font-size:12px;color:var(--color-primary-dark);cursor:pointer;text-underline-offset:2px}.celebration-dismiss[data-v-73fc1921]:active{opacity:.7}.auth-loading[data-v-455909bc]{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.auth-loading .loading-spinner[data-v-455909bc]{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin-455909bc .8s linear infinite}.loading-text[data-v-455909bc]{color:var(--color-text-secondary);font-size:14px}.app[data-v-455909bc]{display:flex;flex-direction:column;height:100%;overflow:hidden;-webkit-user-select:none;user-select:none;background:transparent}.header[data-v-455909bc]{position:relative;flex-shrink:0;padding:calc(10px + var(--safe-top)) 20px 14px;color:var(--color-text);background:transparent}.header-content[data-v-455909bc]{position:relative;display:flex;flex-direction:column;gap:10px}.header-top[data-v-455909bc]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.title-block[data-v-455909bc]{min-width:0}.kicker[data-v-455909bc]{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:2px}.title[data-v-455909bc]{font-size:28px;font-weight:700;letter-spacing:-.04em;line-height:1.15}.header-actions[data-v-455909bc]{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-top:4px}.refresh-btn[data-v-455909bc]{width:34px;height:34px;border-radius:50%;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);box-shadow:var(--shadow);display:flex;align-items:center;justify-content:center;transition:transform .2s var(--ease-out)}.refresh-btn[data-v-455909bc]:active{transform:scale(.94)}.refresh-btn[data-v-455909bc]:disabled{opacity:.5}.refresh-dot[data-v-455909bc]{font-size:14px;font-weight:600}.header-meta[data-v-455909bc]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-chip[data-v-455909bc]{display:inline-flex;align-items:baseline;gap:4px;padding:4px 10px;border-radius:var(--radius-pill);background:var(--color-glass);border:1px solid var(--color-border);font-size:12px;color:var(--color-text-secondary)}.meta-value[data-v-455909bc]{font-weight:700;color:var(--color-text);font-variant-numeric:tabular-nums}.storage-badge[data-v-455909bc]{background:var(--color-surface);border:1px solid var(--color-border);padding:5px 10px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;color:var(--color-text-secondary);flex-shrink:0}.storage-badge.failed[data-v-455909bc]{background:var(--color-awake-light);border-color:#b07d3240;color:var(--color-awake-ink)}.storage-badge.pending[data-v-455909bc]{opacity:.85}.main[data-v-455909bc]{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:0 16px 16px}.main--feed[data-v-455909bc]{overflow:hidden;display:flex;flex-direction:column;padding-left:0;padding-right:0}.main--feed .tab-panel.active[data-v-455909bc]{display:flex!important;flex:1;min-height:0}.loading[data-v-455909bc]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 0;color:var(--color-text-secondary)}.loading-spinner[data-v-455909bc]{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin-455909bc .8s linear infinite}.load-error[data-v-455909bc]{text-align:center;padding:0 24px;line-height:1.6}.retry-btn[data-v-455909bc]{min-width:140px}@keyframes spin-455909bc{to{transform:rotate(360deg)}}.tab-bar[data-v-455909bc]{flex-shrink:0;display:flex;margin:0 14px calc(8px + var(--safe-bottom));padding:6px;background:var(--color-glass);border:1px solid var(--color-border);border-radius:26px;box-shadow:var(--shadow-float);backdrop-filter:blur(20px) saturate(1.2);-webkit-backdrop-filter:blur(20px) saturate(1.2);z-index:100}.tab-item[data-v-455909bc]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 6px;color:var(--color-text-secondary);border-radius:20px;transition:color .22s var(--ease-out),background .22s var(--ease-out),transform .22s var(--ease-out)}.tab-item.active[data-v-455909bc]{color:var(--color-primary-dark);background:var(--color-primary-light)}.tab-item[data-v-455909bc]:active{transform:scale(.96)}.tab-icon-wrap[data-v-455909bc]{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.tab-icon-wrap svg[data-v-455909bc]{width:22px;height:22px}.tab-label[data-v-455909bc]{font-size:10px;font-weight:600;letter-spacing:.04em}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #fff6f0;--color-surface: #ffffff;--color-primary: #f06a5a;--color-primary-dark: #e25145;--color-primary-light: #ffe3dc;--color-accent: #ffb347;--color-sleep: #d17a9c;--color-sleep-rgb: 209, 122, 156;--color-sleep-dark: #b85a82;--color-sleep-light: #fde8f1;--color-awake: #f5b042;--color-awake-dark: #e09422;--color-awake-light: #fff4dc;--color-text: #3a2a24;--color-text-secondary: #8d6e63;--color-border: rgba(226, 120, 100, .22);--color-success: #4caf6a;--color-success-ink: #3d7a4d;--color-danger: #ef5b5b;--overlay-bg: rgba(80, 36, 28, .42);--color-primary-rgb: 240, 106, 90;--color-on-primary: #ffffff;--color-on-primary-muted: rgba(255, 255, 255, .82);--color-glass: rgba(255, 253, 251, .78);--color-chip: #fff1ea;--color-success-soft: #e8f0ea;--color-sleep-ink: #5c3d4e;--color-awake-ink: #8a5a20;--gradient-feed: linear-gradient(160deg, #ffe8e1 0%, #fff7f2 72%);--gradient-sleep: linear-gradient(160deg, #fbdce8 0%, #fff5f8 78%);--gradient-awake: linear-gradient(160deg, #ffe9c2 0%, #fff8ea 78%);--color-status-pill: rgba(255, 255, 255, .7);--color-calendar-marked: #ffd5cc;--color-chart-axis: #f0e0d8;--track-sleep: #f8bbd0;--track-awake: #ffe0b2;--color-height-bg: #ffebee;--color-height-fg: #e57373;--color-weight-bg: #fff3e0;--color-weight-fg: #e65100;--glow-1: rgba(240, 106, 90, .2);--glow-2: rgba(255, 179, 71, .13);--glow-3: rgba(240, 106, 90, .12);--glow-4: rgba(209, 122, 156, .1);--radius: 22px;--radius-sm: 14px;--radius-pill: 999px;--shadow: 0 1px 2px rgba(44, 33, 28, .04), 0 8px 28px rgba(44, 33, 28, .06);--shadow-float: 0 10px 40px rgba(44, 33, 28, .14);--ease-out: cubic-bezier(.22, 1, .36, 1);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px)}html[data-theme=starry]{--color-bg: #0e1733;--color-surface: #1c274c;--color-primary: #f3d36a;--color-primary-dark: #ffe9a0;--color-primary-light: #2a3560;--color-accent: #7ee8d0;--color-sleep: #d4c4fa;--color-sleep-rgb: 212, 196, 250;--color-sleep-dark: #7d5ec8;--color-sleep-light: #2a2458;--color-awake: #f3d08a;--color-awake-dark: #b87a28;--color-awake-light: #2e2a1c;--color-text: #f4f1ea;--color-text-secondary: #b7c3e4;--color-border: rgba(170, 196, 255, .22);--color-success: #6ed9a0;--color-success-ink: #b6f0d0;--color-danger: #ff8a8a;--overlay-bg: rgba(6, 10, 28, .64);--color-primary-rgb: 243, 211, 106;--color-on-primary: #141c38;--color-on-primary-muted: rgba(20, 28, 56, .72);--color-glass: rgba(14, 24, 56, .72);--color-chip: #243058;--color-success-soft: #1c3a30;--color-sleep-ink: #f3ebff;--color-awake-ink: #ffe9c4;--gradient-feed: linear-gradient(160deg, #243056 0%, #1c274c 72%);--gradient-sleep: linear-gradient(160deg, #2a2458 0%, #1c274c 78%);--gradient-awake: linear-gradient(160deg, #2e2a1c 0%, #1c274c 78%);--color-status-pill: rgba(232, 236, 255, .12);--color-calendar-marked: #3a4670;--color-chart-axis: #8a98c4;--track-sleep: #6a5a9a;--track-awake: #8a7040;--color-height-bg: #3a2a58;--color-height-fg: #e8c4ff;--color-weight-bg: #3a3220;--color-weight-fg: #f5d08a;--glow-1: rgba(64, 230, 186, .32);--glow-2: rgba(138, 96, 255, .3);--glow-3: rgba(56, 176, 255, .22);--glow-4: rgba(255, 120, 200, .18);--shadow: 0 1px 2px rgba(8, 12, 32, .35), 0 8px 28px rgba(8, 16, 48, .4);--shadow-float: 0 10px 40px rgba(8, 12, 36, .5)}html{height:100%;font-size:16px;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-text-size-adjust:100%;color-scheme:light;background-color:var(--color-bg);background-image:linear-gradient(to bottom,var(--color-bg) 0,var(--color-bg) 64px,transparent 150px),radial-gradient(ellipse 72% 210px at 108% 220px,var(--glow-1),transparent 70%),radial-gradient(ellipse 58% 190px at -8% 48%,var(--glow-2),transparent 70%),radial-gradient(ellipse 64% 170px at 100% 86%,var(--glow-3),transparent 72%),radial-gradient(ellipse 50% 150px at 0% 78%,var(--glow-4),transparent 70%)}html[data-theme=starry]{color-scheme:dark;background-image:linear-gradient(to bottom,var(--color-bg) 0,var(--color-bg) 56px,transparent 160px),radial-gradient(ellipse 88% 42% at 6% 28%,var(--glow-1),transparent 72%),radial-gradient(ellipse 78% 48% at 96% 40%,var(--glow-2),transparent 70%),radial-gradient(ellipse 86% 36% at 52% 92%,var(--glow-3),transparent 68%),radial-gradient(ellipse 52% 44% at 78% 10%,var(--glow-4),transparent 70%),radial-gradient(ellipse 40% 28% at 28% 72%,rgba(243,211,106,.1),transparent 70%)}html[data-theme=starry]:before{content:"";position:fixed;top:-12%;right:-8%;bottom:-12%;left:-8%;pointer-events:none;z-index:0;background:radial-gradient(ellipse 58% 30% at 22% 38%,rgba(64,230,186,.22),transparent 72%),radial-gradient(ellipse 50% 34% at 84% 48%,rgba(138,96,255,.2),transparent 70%);filter:blur(18px);animation:aurora-drift 22s ease-in-out infinite alternate}html[data-theme=starry] body{position:relative;z-index:1}@keyframes aurora-drift{0%{transform:translate3d(-2.5%,-1.5%,0) rotate(-2deg)}to{transform:translate3d(3%,2.5%,0) rotate(2deg)}}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;height:100%;min-height:100dvh;min-height:-webkit-fill-available;background-color:transparent;color:var(--color-text);line-height:1.5;-webkit-font-smoothing:antialiased}button{font-family:inherit;color:inherit;-webkit-text-fill-color:currentColor;cursor:pointer;border:none;background:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}input{font-family:inherit;color:inherit;-webkit-text-fill-color:currentColor;max-width:100%}input[type=date],input[type=datetime-local],input[type=time]{-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:0;max-width:100%}#app{height:100%;min-height:100dvh;min-height:-webkit-fill-available;max-width:480px;margin:0 auto;overflow:hidden;background-color:transparent}.card{background:var(--color-surface);border-radius:var(--radius);padding:14px 18px;box-shadow:var(--shadow);border:1px solid var(--color-border);min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--radius-pill);font-size:15px;font-weight:600;letter-spacing:.01em;transition:transform .22s var(--ease-out),opacity .2s var(--ease-out),background .2s var(--ease-out),box-shadow .2s var(--ease-out)}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-primary);color:var(--color-on-primary);-webkit-text-fill-color:currentColor;box-shadow:0 6px 18px rgba(var(--color-primary-rgb),.32)}.btn-primary:hover{background:var(--color-primary-dark)}.btn-ghost{background:var(--color-primary-light);color:var(--color-primary-dark)}.btn-outline{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);box-shadow:none}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:13px;color:var(--color-text-secondary);font-weight:500}.field input{width:100%;max-width:100%;min-width:0;padding:12px 14px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:16px;background:var(--color-bg);color:var(--color-text);transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out)}.field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb),.2);background:var(--color-surface)}.empty-state{text-align:center;padding:36px 16px;color:var(--color-text-secondary)}.empty-state .icon{font-size:40px;margin-bottom:12px}@keyframes pulse-ring{0%{transform:scale(1);opacity:.6}to{transform:scale(1.4);opacity:0}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.fade-in{animation:fade-in .4s var(--ease-out) forwards}.field-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0}.edit-dialog,.chart-dialog,.overdue-dialog{animation:dialog-in .32s var(--ease-out)}@media(max-width:360px){.field-row{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.fade-in,.btn{animation:none;transition:none}html[data-theme=starry]:before{animation:none}}
