.base-dialog{background:var(--color-scrim);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;justify-content:center;align-items:center;padding:24px;animation:.2s base-dialog-rise;display:flex;position:fixed;inset:0}.base-dialog__card{background:var(--color-surface);border:1px solid var(--color-border);width:100%;max-height:80vh;color:var(--color-text);border-radius:18px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:18px;padding:24px;display:flex;overflow-y:auto;box-shadow:0 30px 80px #0003}@keyframes base-dialog-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.flow-stats{--flow-stats-heat-0:color-mix(in srgb, #ebedf1, #141c28 calc(var(--theme-text) * 100%));--flow-stats-heat-1:color-mix(in srgb, #cfe0ff, #16305c calc(var(--theme-text) * 100%));--flow-stats-heat-2:color-mix(in srgb, #9cc0ff, #1e4590 calc(var(--theme-text) * 100%));--flow-stats-heat-3:color-mix(in srgb, #5e93ff, #2e6bff calc(var(--theme-text) * 100%));--flow-stats-heat-4:color-mix(in srgb, #2e6bff, #5e93ff calc(var(--theme-text) * 100%));--flow-stats-heat-5:color-mix(in srgb, #123fa8, #a8c6ff calc(var(--theme-text) * 100%));flex-direction:column;justify-content:flex-start;align-items:stretch;gap:28px;max-width:1080px;margin:0 auto;padding:36px 32px 72px;display:flex}.flow-stats__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.flow-stats__heading{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;display:flex}.flow-stats__date,.flow-stats__panel-note{color:var(--color-muted);font-size:var(--font-size-2xs)}.flow-stats__date{font-size:var(--font-size-xs)}.flow-stats__title-row{justify-content:flex-start;align-items:center;gap:12px;display:flex}.flow-stats__title{font-size:var(--font-size-xl);letter-spacing:-.02em;font-weight:600}.flow-stats__today,.flow-stats__jump{border:1px solid var(--color-border);color:var(--color-muted);white-space:nowrap;transition:color var(--duration-ui) ease, border-color var(--duration-ui) ease;background:0 0}.flow-stats__today:hover,.flow-stats__jump:hover{border-color:var(--color-flow);color:var(--color-flow)}.flow-stats__today{font-size:var(--font-size-xs);border-radius:10px;padding:7px 13px}.flow-stats__calendar{background:var(--color-success-soft);border:1px solid var(--color-success-line);color:var(--color-success-ink);font-size:var(--font-size-2xs);border-radius:999px;justify-content:flex-start;align-items:center;gap:8px;padding:7px 12px;font-weight:500;display:flex}.flow-stats__calendar.is-off{background:var(--color-danger-soft);border-color:var(--color-danger-line);color:var(--color-danger-ink)}.flow-stats__calendar.is-off .flow-stats__calendar-dot{background:var(--color-danger)}.flow-stats__calendar-dot{background:var(--color-success);border-radius:50%;width:7px;height:7px}.flow-stats__status{color:var(--color-muted)}.flow-stats__cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.flow-stats__card,.flow-stats__panel{background:var(--color-surface);border:1px solid var(--color-border);transition:background-color var(--duration-theme) ease}.flow-stats__card{border-radius:15px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:10px;padding:20px;display:flex}.flow-stats__card-label{color:var(--color-muted);font-size:var(--font-size-2xs)}.flow-stats__card-value{font-family:var(--font-mono);letter-spacing:-.02em;white-space:nowrap;font-size:1.4375rem;font-weight:500}.flow-stats__card-value--accent{color:var(--color-flow)}.flow-stats__card-note{color:var(--color-faint);font-size:var(--font-size-2xs)}.flow-stats__panel{border-radius:var(--radius-l);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:18px;min-width:0;padding:24px;display:flex}.flow-stats__panel--tight{gap:14px}.flow-stats__panel-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.flow-stats__panel-head--wrap{flex-wrap:wrap}.flow-stats__panel-title{font-size:.9375rem;font-weight:600}.flow-stats__timeline{background:var(--color-surface-2);border-radius:var(--radius-m);height:96px;position:relative;overflow:hidden}.flow-stats__grid{background:var(--color-border);width:1px;position:absolute;top:0;bottom:0}.flow-stats__block{border-radius:7px;justify-content:flex-start;align-items:center;min-width:4px;padding:0 8px;display:flex;position:absolute;overflow:hidden}.flow-stats__block-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.625rem;font-weight:600;overflow:hidden}.flow-stats__axis{color:var(--color-faint);font-family:var(--font-mono);justify-content:space-between;align-items:center;font-size:.625rem;display:flex}.flow-stats__heat-tools{justify-content:flex-start;align-items:center;gap:12px;display:flex}.flow-stats__jump{font-size:var(--font-size-2xs);border-radius:9px;justify-content:flex-start;align-items:center;gap:7px;padding:6px 11px;font-weight:500;display:flex}.flow-stats__jump.is-away{border-color:var(--color-flow);color:var(--color-flow)}.flow-stats__jump-dot{background:currentColor;border-radius:2px;width:7px;height:7px}.flow-stats__heat-scroll{padding-bottom:4px;overflow-x:auto}.flow-stats__heat{gap:10px;min-width:min-content;display:flex}.flow-stats__weekdays{color:var(--color-faint);font-family:var(--font-mono);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:3px;padding-top:17px;font-size:.5625rem;line-height:11px;display:flex}.flow-stats__weekdays span{height:11px}.flow-stats__heat-body{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:5px;display:flex}.flow-stats__months,.flow-stats__weeks{gap:3px;display:flex}.flow-stats__months span{width:11px;color:var(--color-faint);font-family:var(--font-mono);white-space:nowrap;font-size:.5625rem}.flow-stats__week{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:3px;display:flex}.flow-stats__cell{background:var(--flow-stats-heat-0);width:11px;height:11px;transition:transform var(--duration-ui) ease, box-shadow var(--duration-ui) ease;border:1px solid #0000;border-radius:3px;padding:0;display:block}.flow-stats__cell:not(:disabled):hover{transform:scale(1.35)}.flow-stats__cell--0{border-color:var(--color-border)}.flow-stats__cell--1{background:var(--flow-stats-heat-1)}.flow-stats__cell--2{background:var(--flow-stats-heat-2)}.flow-stats__cell--3{background:var(--flow-stats-heat-3)}.flow-stats__cell--4{background:var(--flow-stats-heat-4)}.flow-stats__cell--5{background:var(--flow-stats-heat-5)}.flow-stats__cell.is-future{cursor:default;background:0 0;border-color:#0000}.flow-stats__cell.is-picked{box-shadow:0 0 0 2px var(--color-text)}.flow-stats__scale{border-top:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:14px;display:flex}.flow-stats__scale-legend{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;display:flex}.flow-stats__bands{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:14px;display:flex}.flow-stats__band{color:var(--color-muted);font-family:var(--font-mono);white-space:nowrap;justify-content:flex-start;align-items:center;gap:7px;font-size:.625rem;display:flex}.flow-stats__less-more{color:var(--color-faint);justify-content:flex-start;align-items:center;gap:7px;font-size:.625rem;display:flex}.flow-stats__split{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:14px;display:grid}.flow-stats__donut{border-radius:50%;align-self:center;width:180px;height:180px;position:relative}.flow-stats__donut-hole{background:var(--color-surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;inset:30px}.flow-stats__donut-total{font-family:var(--font-mono);font-size:1.1875rem;font-weight:500}.flow-stats__legend{flex-direction:column;justify-content:flex-start;align-items:stretch;display:flex}.flow-stats__legend-row{justify-content:flex-start;align-items:center;gap:12px;padding:11px 0;display:flex}.flow-stats__legend-row+.flow-stats__legend-row{border-top:1px solid var(--color-border)}.flow-stats__legend-dot{border-radius:2px;flex:none;width:8px;height:8px}.flow-stats__legend-name{min-width:0;font-size:var(--font-size-s);white-space:nowrap;text-overflow:ellipsis;flex:auto;overflow:hidden}.flow-stats__legend-dur{width:72px;font-family:var(--font-mono);font-size:var(--font-size-s);text-align:right;font-weight:500}.flow-stats__legend-pct{width:44px;color:var(--color-faint);font-family:var(--font-mono);font-size:var(--font-size-2xs);text-align:right}@media (width<=600px){.flow-stats{padding:24px 16px 48px}.flow-stats__axis span:nth-child(2n){visibility:hidden}}.away-dialog__intro{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:7px;display:flex}.away-dialog__title{font-size:1.125rem;font-weight:600}.away-dialog__text{color:var(--color-muted);font-size:var(--font-size-s);line-height:1.6}.away-dialog__options{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;display:flex}.away-dialog__option{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-m);text-align:left;transition:border-color var(--duration-ui) ease;border-radius:12px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:3px;padding:12px 14px;font-weight:600;display:flex}.away-dialog__option:hover{border-color:var(--color-flow)}.away-dialog__option--primary{background:var(--color-flow-soft);border-color:var(--color-flow-line)}.away-dialog__hint{color:var(--color-muted);font-size:var(--font-size-xs);font-weight:400}.hourglass-dial{pointer-events:none;position:absolute;inset:-14%}.hourglass-dial__canvas{width:100%;height:100%;display:block}.timer-panel{--timer-panel-state:var(--color-muted);--timer-panel-pill-bg:var(--color-surface-2);--timer-panel-pill-line:var(--color-border);--timer-panel-clock:var(--color-text);flex-direction:column;justify-content:center;align-items:center;gap:44px;min-height:100%;padding:56px 32px;display:flex;position:relative}.timer-panel--flow{--timer-panel-state:var(--color-flow);--timer-panel-pill-bg:var(--color-flow-soft);--timer-panel-pill-line:var(--color-flow-line)}.timer-panel--break{--timer-panel-state:var(--color-rest);--timer-panel-pill-bg:var(--color-rest-soft);--timer-panel-pill-line:var(--color-rest-line);--timer-panel-clock:var(--color-rest)}.timer-panel__skins{background:var(--color-surface-2);border-radius:10px;justify-content:flex-start;align-items:center;gap:2px;padding:3px;display:flex;position:absolute;top:20px;right:24px}.timer-panel__skin{color:var(--color-muted);font-size:var(--font-size-xs);transition:background-color var(--duration-ui) ease, color var(--duration-ui) ease;background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:5px;padding:5px 10px;display:flex}.timer-panel__skin[aria-pressed=true]{background:var(--color-surface);color:var(--color-text);font-weight:600}.timer-panel__skin-tag{background:var(--color-flow-soft);color:var(--color-flow);border-radius:5px;padding:0 5px;font-size:.625rem;font-weight:600}.timer-panel__pill{background:var(--timer-panel-pill-bg);border:1px solid var(--timer-panel-pill-line);border-radius:999px;justify-content:flex-start;align-items:center;gap:10px;padding:7px 14px;display:flex}.timer-panel__pill-dot{background:var(--timer-panel-state);border-radius:50%;width:7px;height:7px}.timer-panel__pill-label{color:var(--timer-panel-state);font-size:var(--font-size-xs);letter-spacing:.06em;font-weight:600}.timer-panel__dial{aspect-ratio:1;justify-content:center;align-items:center;width:min(360px,82vw);display:flex;position:relative}.timer-panel__ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.timer-panel__ring-track,.timer-panel__ring-value{fill:none;stroke-width:3px}.timer-panel__ring-track{stroke:var(--color-ring-track)}.timer-panel__ring-value{stroke:var(--timer-panel-state);stroke-linecap:round;transition:stroke-dashoffset .9s,stroke .6s}.timer-panel__disc{opacity:0;background:#ff9f1c21;border-radius:50%;width:0;height:0;transition:width .9s,height .9s,opacity .9s;position:absolute}.timer-panel--break .timer-panel__disc{opacity:1;width:80%;height:80%}.timer-panel__ink{--timer-panel-clock:var(--color-bg);pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:-14%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.timer-panel__ink .timer-panel__caption-text{color:var(--color-bg)}.timer-panel__ink .timer-panel__swatch{background:var(--color-bg)}.timer-panel__center{flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:relative}.timer-panel__clock{color:var(--timer-panel-clock);font-family:var(--font-mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:clamp(2.75rem,12vw,4rem);font-weight:500;line-height:1;transition:color .6s}.timer-panel__picker,.timer-panel__caption{max-width:236px;font-size:var(--font-size-s);border:1px solid #0000;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:7px 13px;display:flex}.timer-panel__picker{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text);transition:border-color var(--duration-ui) ease, transform var(--duration-ui) ease}.timer-panel__picker:hover,.timer-panel__picker.is-open{border-color:var(--color-flow)}.timer-panel__picker:hover{transform:translateY(-1px)}.timer-panel__swatch{border-radius:2px;flex:none;width:7px;height:7px}.timer-panel__picker-name,.timer-panel__caption-text,.timer-panel__option-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.timer-panel__caption-text{color:var(--color-muted)}.timer-panel__caret{color:var(--color-muted);flex:none;font-size:.625rem}.timer-panel__menu{background:var(--color-surface);border:1px solid var(--color-border);z-index:20;border-radius:12px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:6px;width:min(300px,80vw);margin-top:10px;padding:8px;animation:.2s timer-panel-rise;display:flex;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 18px 44px #0000002e}.timer-panel__menu-search{background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-s);border-radius:9px;padding:9px 11px}.timer-panel__menu-search:focus{border-color:var(--color-flow)}.timer-panel__menu-list{flex-direction:column;justify-content:flex-start;align-items:stretch;max-height:196px;display:flex;overflow-y:auto}.timer-panel__menu-empty{color:var(--color-muted);font-size:var(--font-size-xs);padding:10px}.timer-panel__option{color:var(--color-text);font-size:var(--font-size-s);text-align:left;transition:background-color var(--duration-ui) ease;background:0 0;border:none;border-radius:9px;justify-content:flex-start;align-items:center;gap:9px;padding:10px;display:flex}.timer-panel__option:hover{background:var(--color-surface-2)}.timer-panel__option.is-picked{background:var(--color-flow-soft);color:var(--color-flow)}.timer-panel__option-total{color:var(--color-faint);font-family:var(--font-mono);flex:none;font-size:.625rem}.timer-panel__energy{flex-direction:column;justify-content:center;align-items:center;gap:10px;max-width:420px;display:flex}.timer-panel__dots{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;min-height:13px;display:flex}.timer-panel__dot{background:var(--timer-panel-state);border:1px solid var(--timer-panel-state);border-radius:3px;width:9px;height:9px;transition:background-color .4s;transform:rotate(45deg)}.timer-panel__dot--next{border-color:var(--color-ring-track);background:0 0}.timer-panel__overflow{color:var(--timer-panel-state);font-family:var(--font-mono);font-size:var(--font-size-2xs)}.timer-panel__energy-label,.timer-panel__hint{color:var(--color-muted);font-size:var(--font-size-2xs);text-align:center}.timer-panel__hint{font-size:var(--font-size-xs)}.timer-panel__controls{flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex}.timer-panel__controls--break{width:100%;max-width:420px}.timer-panel__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.timer-panel__primary,.timer-panel__rest,.timer-panel__ghost{transition:background-color var(--duration-ui) ease, color var(--duration-ui) ease, transform var(--duration-ui) ease;border-radius:14px}.timer-panel__primary:active,.timer-panel__rest:active,.timer-panel__ghost:active{transform:translateY(1px)}.timer-panel__primary{background:var(--color-flow);color:#fff;font-size:var(--font-size-l);border:none;padding:17px 40px;font-weight:600}.timer-panel__primary:hover{background:var(--color-flow-strong)}.timer-panel__primary:disabled{opacity:.4}.timer-panel__primary--small{padding:16px 30px;font-size:.9375rem}.timer-panel__rest{background:var(--color-rest);color:#1a1206;border:none;padding:16px 34px;font-size:.9375rem;font-weight:600}.timer-panel__rest:hover{background:#ffb449}.timer-panel__ghost{border:1px solid var(--color-border);color:var(--color-muted);font-size:var(--font-size-m);background:0 0;padding:16px 24px}.timer-panel__ghost:hover{color:var(--color-text)}.timer-panel__bar{background:var(--color-surface-2);border-radius:4px;width:100%;height:6px;overflow:hidden}.timer-panel__bar-fill{background:var(--color-rest);border-radius:4px;height:100%;transition:width .9s linear;display:block}.timer-panel__error{max-width:420px;color:var(--color-danger-ink);font-size:var(--font-size-xs);text-align:center}.timer-panel__skins,.timer-panel__pill,.timer-panel__energy,.timer-panel__controls,.timer-panel__caption{transition:opacity .3s}.timer-panel.is-zen .timer-panel__skins,.timer-panel.is-zen .timer-panel__pill,.timer-panel.is-zen .timer-panel__energy,.timer-panel.is-zen .timer-panel__controls,.timer-panel.is-zen .timer-panel__caption{pointer-events:none;opacity:0;transition:opacity 1.4s}.timer-panel--hourglass{gap:56px}@media (width<=600px){.timer-panel{gap:32px;padding:64px 16px 32px}.timer-panel__skins{top:12px;right:12px}}@keyframes timer-panel-rise{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}:root{--theme-surface:0;--theme-text:0;--light-bg:#f5f6f8;--light-surface:#fff;--light-surface-2:#eef0f4;--light-border:#e2e5ea;--light-text:#151a21;--light-muted:#6a7382;--light-faint:#9ba3b0;--dark-bg:#080b12;--dark-surface:#111823;--dark-surface-2:#0d141e;--dark-border:#1e2836;--dark-text:#eef2f8;--dark-muted:#7e8798;--dark-faint:#5a6373;--color-bg:color-mix(in srgb, var(--light-bg), var(--dark-bg) calc(var(--theme-surface) * 100%));--color-bg-fade:color-mix(in srgb, var(--color-bg) 86%, transparent);--color-surface:color-mix(in srgb, var(--light-surface), var(--dark-surface) calc(var(--theme-surface) * 100%));--color-surface-2:color-mix(in srgb, var(--light-surface-2), var(--dark-surface-2) calc(var(--theme-surface) * 100%));--color-border:color-mix(in srgb, var(--light-border), var(--dark-border) calc(var(--theme-surface) * 100%));--color-sidebar:color-mix(in srgb, var(--light-surface), #0b111a calc(var(--theme-surface) * 100%));--color-ring-track:var(--color-border);--color-text:color-mix(in srgb, var(--light-text), var(--dark-text) calc(var(--theme-text) * 100%));--color-muted:color-mix(in srgb, var(--light-muted), var(--dark-muted) calc(var(--theme-text) * 100%));--color-faint:color-mix(in srgb, var(--light-faint), var(--dark-faint) calc(var(--theme-text) * 100%));--color-flow:#2e6bff;--color-flow-strong:#1b4fd1;--color-flow-soft:#2e6bff1a;--color-flow-line:#2e6bff59;--color-rest:#ff9f1c;--color-rest-ink:#c77400;--color-rest-soft:#ff9f1c1a;--color-rest-line:#ff9f1c59;--color-success:#35c08a;--color-success-ink:color-mix(in srgb, #1e8f63, #6fe0b0 calc(var(--theme-text) * 100%));--color-success-soft:#35c08a1f;--color-success-line:#35c08a66;--color-danger:#ff5a5f;--color-danger-ink:#e13b41;--color-danger-soft:#ff5a5f1f;--color-danger-line:#ff5a5f66;--color-scrim:#06090f73;--group-1:#2e6bff;--group-2:#ff5a5f;--group-3:#8b5cf6;--group-4:#ff9f1c;--group-5:#14b8a6;--group-6:#f43f87;--font-sans:inter, "Helvetica Neue", helvetica, "PingFang TC", "Noto Sans TC", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, menlo, monospace;--font-size-2xs:.6875rem;--font-size-xs:.75rem;--font-size-s:.8125rem;--font-size-m:.875rem;--font-size-l:1rem;--font-size-xl:1.75rem;--radius-s:8px;--radius-m:11px;--radius-l:16px;--duration-theme:.6s;--duration-ui:.2s;--cubic-FiSo:cubic-bezier(.37, .99, .92, .96);--cubic-FiFo:cubic-bezier(.25, .65, .85, .45);--cubic-SiRo:cubic-bezier(.31, 1.26, .19, 1.11);--cubic-SiMo:cubic-bezier(.3, 1, .94, 1.1)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--font-size-m);-webkit-font-smoothing:antialiased;transition:background-color var(--duration-theme) ease, color .18s ease;line-height:1.6}a{color:var(--color-flow);text-decoration:none}a:hover{color:var(--color-flow-strong)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}input:focus,select:focus,textarea:focus{outline:none}:focus-visible{outline:2px solid var(--color-flow);outline-offset:2px}::selection{background:#2e6bff40}h1,h2,h3,p{margin:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
