.head-row[data-v-107bc100]{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.ranges[data-v-107bc100]{display:flex;gap:6px}.chip[data-v-107bc100]{padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-size:11px;transition:color .15s,border-color .15s,background .15s}.chip.on[data-v-107bc100]{color:var(--aqua-100);border-color:var(--aqua-300);background:rgba(46,200,189,.12)}.legend[data-v-107bc100]{display:flex;flex-wrap:wrap;gap:4px 14px;margin:12px 0 2px;font-size:11.5px;color:var(--ink-2)}.lg[data-v-107bc100]{display:inline-flex;align-items:center;gap:6px}.lg-key[data-v-107bc100]{width:12px;height:3px;border-radius:2px;display:inline-block}.dist-bg[data-v-107bc100]{background:var(--chart-distance)}.dur-bg[data-v-107bc100]{background:var(--chart-duration)}.trend-wrap[data-v-107bc100]{width:100%;margin-top:8px}svg[data-v-107bc100]{display:block;cursor:crosshair}.grid[data-v-107bc100]{stroke:var(--line);stroke-width:1}.tick[data-v-107bc100]{fill:var(--muted);font-family:var(--font-num);font-size:10px}.series[data-v-107bc100]{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.series.dist[data-v-107bc100]{stroke:var(--chart-distance)}.series.dur[data-v-107bc100]{stroke:var(--chart-duration)}.dot[data-v-107bc100]{stroke:var(--surface);stroke-width:2}.dot.dist[data-v-107bc100]{fill:var(--chart-distance)}.dot.dur[data-v-107bc100]{fill:var(--chart-duration)}.cross[data-v-107bc100]{stroke:var(--tick);stroke-width:1;pointer-events:none}.tip-row[data-v-107bc100]{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:11.5px;color:var(--ink-2)}.tip-row b[data-v-107bc100]{color:var(--ink);font-weight:700;font-size:13px}:root{color-scheme:dark;--bg:#051a1f;--surface:#0a2a31;--surface-2:#0e3540;--line:rgba(154,226,219,.11);--ink:#e9f7f3;--ink-2:#9dc6c1;--muted:#6e9a97;--aqua-100:#7df4e3;--aqua-300:#2ec8bd;--coral:#ff7a59;--coral-deep:#ef6440;--lv0:#10333c;--lv1:#14606a;--lv2:#178e93;--lv3:#2ec8bd;--lv4:#7df4e3;--chart-distance:#17a8b3;--chart-duration:#d94e2c;--glow-1:radial-gradient(1100px 520px at 85% -10%,rgba(46,200,189,.07),transparent 60%);--glow-2:radial-gradient(900px 480px at -15% 25%,rgba(23,142,147,.06),transparent 60%);--glow-3:radial-gradient(760px 700px at 50% 118%,rgba(20,96,106,.12),transparent 62%);--tile-line:rgba(157,198,193,.028);--card-sheen:linear-gradient(180deg,rgba(157,198,193,.05),rgba(157,198,193,0) 40%);--card-shadow:0 14px 34px rgba(2,10,12,.5);--tick:rgba(233,247,243,.3);--placeholder:rgba(110,154,151,.55);--scrollbar:#155061;--today-ring:rgba(125,244,227,.9);--pop-bg:#0d3841;--pop-line:rgba(125,244,227,.24);--pop-shadow:0 10px 26px rgba(2,10,12,.55);--row-line:rgba(157,198,193,.07);--danger-ink:#ff9a80;--cell:11px;--font-sans:system-ui,-apple-system,"Segoe UI","PingFang SC","HarmonyOS Sans SC","Microsoft YaHei UI","Microsoft YaHei",sans-serif;--font-num:ui-monospace,"Cascadia Code","SF Mono",Consolas,"Roboto Mono",monospace}:root[data-theme=light]{color-scheme:light;--bg:#eef4f4;--surface:#fff;--surface-2:#e9f1f1;--line:rgba(13,74,80,.16);--ink:#10343a;--ink-2:#3d6367;--muted:#6b8b8d;--aqua-100:#0c7f78;--aqua-300:#149e94;--lv0:#e7efef;--lv1:#b7e2dd;--lv2:#74c8c0;--lv3:#2ba69e;--lv4:#0b6f6a;--chart-distance:#149e94;--chart-duration:#ef6440;--glow-1:radial-gradient(1100px 520px at 85% -10%,rgba(46,200,189,.1),transparent 60%);--glow-2:radial-gradient(900px 480px at -15% 25%,rgba(23,142,147,.07),transparent 60%);--glow-3:radial-gradient(760px 700px at 50% 118%,rgba(20,96,106,.1),transparent 62%);--tile-line:rgba(61,99,103,.05);--card-sheen:linear-gradient(180deg,rgba(46,200,189,.05),rgba(46,200,189,0) 40%);--card-shadow:0 14px 34px rgba(23,60,64,.1);--tick:rgba(16,52,58,.26);--placeholder:rgba(84,116,118,.6);--scrollbar:#b9d6d4;--today-ring:rgba(20,158,148,.9);--pop-bg:#fff;--pop-line:rgba(13,74,80,.16);--pop-shadow:0 10px 26px rgba(23,60,64,.16);--row-line:rgba(13,74,80,.1);--danger-ink:#d94e2c}*{box-sizing:border-box}body,fieldset,form,h1,h2,h3,legend,p{margin:0;padding:0}button,input{font:inherit;color:inherit}button{cursor:pointer}::-moz-selection{background:rgba(46,200,189,.3)}::selection{background:rgba(46,200,189,.3)}:focus-visible{outline:2px solid var(--aqua-300);outline-offset:2px;border-radius:4px}body{min-height:100dvh;font-family:var(--font-sans);color:var(--ink);line-height:1.5;background:var(--glow-1),var(--glow-2),var(--glow-3),var(--bg)}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:repeating-linear-gradient(0deg,var(--tile-line) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,var(--tile-line) 0 1px,transparent 1px 44px);-webkit-mask-image:radial-gradient(85% 55% at 50% 0,#000,transparent 78%);mask-image:radial-gradient(85% 55% at 50% 0,#000,transparent 78%)}.foot,.top,main{position:relative;z-index:1}.top{max-width:760px;margin:0 auto;padding:20px 18px 14px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:flex;align-items:baseline;gap:9px}.wordmark .mark{font-size:24px;line-height:1;color:var(--aqua-300);transform:rotate(-14deg);translate:0 1px}.wordmark h1{font-size:21px;font-weight:800;letter-spacing:.22em}.wordmark .sub{font-family:var(--font-num);font-size:10px;letter-spacing:.32em;color:var(--muted)}.count-chip{display:flex;align-items:baseline;gap:5px;padding:6px 13px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:11px;color:var(--muted)}.count-chip b{font-family:var(--font-num);font-size:15px;color:var(--aqua-100);font-weight:700}.top-actions{display:flex;align-items:center;gap:8px}.theme-btn{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);font-size:15px;line-height:1;-webkit-tap-highlight-color:transparent;transition:border-color .15s,transform .15s}.theme-btn:hover{border-color:rgba(157,198,193,.35)}.theme-btn:active{transform:scale(.92)}main{max-width:760px;margin:0 auto;padding:2px 16px 44px;display:flex;flex-direction:column;gap:16px}.card{background:var(--card-sheen),var(--surface);border:1px solid var(--line);border-radius:18px;padding:20px 18px;box-shadow:var(--card-shadow)}.card-head h2{font-size:15px;font-weight:700;letter-spacing:.06em}.card-sub{margin-top:2px;font-size:12px;color:var(--muted)}.reveal{animation:rise .55s cubic-bezier(.2,.7,.3,1) both;animation-delay:calc(var(--d, 0)*75ms)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}}.hero{text-align:center;padding-top:26px}.today-line{font-size:13px;color:var(--ink-2);letter-spacing:.05em}.dive-zone{position:relative;width:168px;height:168px;margin:16px auto 10px;display:grid;place-items:center}.rings i{position:absolute;inset:8px;border-radius:50%;border:1px solid rgba(46,200,189,.26);animation:pulse 3.4s ease-out infinite}.rings i:nth-child(2){animation-delay:1.7s}@keyframes pulse{0%{transform:scale(.74);opacity:.8}to{transform:scale(1.22);opacity:0}}.dive-btn{position:relative;width:124px;height:124px;border:0;border-radius:50%;background:none;-webkit-tap-highlight-color:transparent}.dive-btn:before{inset:0;background:repeating-conic-gradient(var(--tick) 0 1.6deg,transparent 1.6deg 30deg);-webkit-mask:radial-gradient(closest-side,transparent calc(100% - 11px),#000 calc(100% - 10px));mask:radial-gradient(closest-side,transparent calc(100% - 11px),#000 calc(100% - 10px))}.dive-btn:after,.dive-btn:before{content:"";position:absolute;border-radius:50%}.dive-btn:after{inset:11px;background:radial-gradient(120% 120% at 30% 22%,#ff9a76,var(--coral-deep) 58%,#d94e2c);box-shadow:0 12px 32px rgba(242,96,58,.32),inset 0 2px 6px hsla(0,0%,100%,.35),inset 0 -10px 18px rgba(120,25,5,.35)}.dive-btn-face{position:absolute;inset:11px;z-index:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#2a0d05;font-weight:800;transition:transform .15s}.dive-btn:hover .dive-btn-face{transform:scale(1.05)}.dive-btn:active .dive-btn-face{transform:scale(.95)}.dive-btn:disabled{cursor:not-allowed}.dive-btn:disabled .dive-btn-face{opacity:.45}.dive-btn:disabled:active .dive-btn-face,.dive-btn:disabled:hover .dive-btn-face{transform:none}.dive-emoji{font-size:27px;filter:drop-shadow(0 2px 3px rgba(90,20,5,.3))}.dive-text{font-size:14px;letter-spacing:.14em}.ripple{position:absolute;left:50%;top:50%;width:124px;height:124px;margin:-62px 0 0 -62px;border-radius:50%;border:2px solid rgba(125,244,227,.55);animation:rippleOut .9s ease-out forwards;pointer-events:none}@keyframes rippleOut{0%{transform:scale(.8);opacity:.85}to{transform:scale(2);opacity:0}}.hero-hint{font-size:12.5px;color:var(--muted)}.checkin-form{margin-top:18px;padding-top:18px;text-align:left;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:14px;animation:formIn .25s ease both}@keyframes formIn{0%{opacity:0;transform:translateY(-6px)}}.form-title{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--aqua-100)}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px}.field-row .field:first-child{grid-column:1/-1}.field{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ink-2);border:0;min-width:0}.field input{background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;color:var(--ink);font-size:14px;width:100%;min-width:0;transition:border-color .15s,box-shadow .15s}.field input::-moz-placeholder{color:var(--placeholder)}.field input::placeholder{color:var(--placeholder)}.field input:focus{outline:none;border-color:var(--aqua-300);box-shadow:0 0 0 3px rgba(46,200,189,.16)}.date-shell{position:relative;display:flex;align-items:center;min-height:42px;padding:0 30px 0 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;font-size:14px;transition:border-color .15s,box-shadow .15s;cursor:pointer}.date-shell:after{content:"🗓";position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.55}.date-shell input[type=date]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;-webkit-tap-highlight-color:transparent}.date-shell:focus-within{border-color:var(--aqua-300);box-shadow:0 0 0 3px rgba(46,200,189,.16)}.date-view{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--ink)}.date-view.ph{color:var(--placeholder)}.field input[type=number]{-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.field input[type=number]::-webkit-inner-spin-button,.field input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field legend{margin-bottom:6px;padding:0}.mood-row{display:flex;flex-wrap:wrap;gap:8px}.mood-btn{width:44px;height:44px;border-radius:50%;background:var(--surface-2);border:1px solid var(--line);font-size:20px;line-height:1;transition:transform .15s,background .15s,border-color .15s,box-shadow .15s;filter:grayscale(.5) opacity(.75)}.mood-btn:hover{filter:none}.mood-btn.on{filter:none;transform:scale(1.08);background:rgba(46,200,189,.16);border-color:var(--aqua-300);box-shadow:0 0 0 3px rgba(46,200,189,.15)}.form-actions{display:flex;justify-content:flex-end;gap:10px}.btn{padding:10px 20px;border-radius:12px;border:1px solid transparent;font-size:14px;font-weight:700;transition:filter .15s,border-color .15s,color .15s,background .15s}.btn.primary{background:linear-gradient(180deg,#ff8a66,var(--coral-deep));color:#2a0d05;box-shadow:0 6px 18px rgba(242,96,58,.28)}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink-2)}.btn.ghost:hover{color:var(--ink);border-color:rgba(157,198,193,.3)}.btn.aqua{background:rgba(46,200,189,.12);border-color:rgba(46,200,189,.4);color:var(--aqua-100)}.btn.aqua:hover{background:rgba(46,200,189,.2)}.btn.danger{background:transparent;border-color:rgba(255,122,89,.35);color:var(--danger-ink)}.btn.danger:hover{border-color:rgba(255,122,89,.7);background:rgba(255,122,89,.08)}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tile{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px 12px 11px;display:flex;flex-direction:column;gap:3px;min-width:0}.t-label{font-size:11px;color:var(--muted);letter-spacing:.05em}.t-value{font-family:var(--font-num);font-size:22px;font-weight:600;display:flex;align-items:baseline;gap:4px;min-width:0;flex-wrap:wrap}.t-value.sm{font-size:17px}.t-value.xs{font-size:14px}.t-value>span{overflow-wrap:anywhere}.t-value i{font-style:normal;font-size:11px;font-weight:400}.t-sub,.t-value i{color:var(--muted)}.t-sub{font-size:10.5px;opacity:.85}.hm-frame{position:relative}.hm-frame:before{content:"";position:absolute;left:0;top:0;bottom:0;width:36px;z-index:2;pointer-events:none;background:linear-gradient(90deg,var(--surface) 12%,transparent)}.hm-scroll{overflow-x:auto;margin:14px -4px 0;padding:0 4px 6px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}.hm-scroll::-webkit-scrollbar{height:6px}.hm-scroll::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:3px}.hm-scroll::-webkit-scrollbar-track{background:transparent}.hm-inner{display:inline-block;min-width:100%}.hm-months{position:relative;height:15px;margin-left:18px;font-family:var(--font-num);font-size:10px;color:var(--muted)}.hm-months span{position:absolute;top:2px;white-space:nowrap}.hm-body{display:flex;gap:4px;align-items:flex-start}.hm-weekdays{display:grid;grid-template-rows:repeat(7,var(--cell));gap:2px;width:14px;font-size:9px;color:var(--muted);position:sticky;left:0;z-index:3;background:var(--surface)}.hm-weekdays span{line-height:var(--cell)}.hm-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,var(--cell));grid-auto-columns:var(--cell);gap:2px}.cell{border-radius:3px;transition:transform .12s,filter .12s}.cell,.lv0{background:var(--lv0)}.lv1{background:var(--lv1)}.lv2{background:var(--lv2)}.lv3{background:var(--lv3)}.lv4{background:var(--lv4)}.cell.void{background:transparent}.cell.today{outline:1.5px solid var(--today-ring);outline-offset:1px}.cell:not(.void):focus-visible,.cell:not(.void):hover{filter:brightness(1.3);transform:scale(1.35);z-index:2}.cell:focus-visible{outline:2px solid var(--aqua-100);outline-offset:1px}.hm-foot{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:11px;color:var(--muted)}.if-touch{display:none}@media (hover:none){.if-touch{display:inline}.if-mouse{display:none}}.hm-legend{display:inline-flex;align-items:center;gap:3px}.sw{width:10px;height:10px;border-radius:3px;display:inline-block}.tooltip{position:fixed;z-index:60;max-width:232px;padding:8px 11px;background:var(--pop-bg);border:1px solid var(--pop-line);border-radius:10px;box-shadow:var(--pop-shadow);font-size:12px;pointer-events:none}.tt-date{color:var(--muted);font-size:11px;margin-bottom:2px}.tt-val{color:var(--ink);font-weight:700;font-size:13px}.tt-mood{margin-top:2px;font-size:13px}.tt-note{margin-top:3px;color:var(--ink-2);font-size:11.5px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history{max-height:min(560px,62vh);overflow-y:auto;overscroll-behavior:contain;margin-top:4px;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent}.history::-webkit-scrollbar{width:6px}.history::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:3px}.history::-webkit-scrollbar-track{background:transparent}.month-h{position:sticky;top:0;z-index:1;background:var(--surface);display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 2px}.month-h:first-child{margin-top:4px}.month-h h3{font-size:13px;font-weight:700;color:var(--ink-2);letter-spacing:.04em}.month-sub{font-family:var(--font-num);font-size:11px;color:var(--muted)}.h-row{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--row-line)}.h-day{min-width:38px;text-align:center}.h-day b{display:block;font-family:var(--font-num);font-size:19px;font-weight:600;line-height:1.15}.h-day span{font-size:10px;color:var(--muted)}.h-main{flex:1;min-width:0}.h-meta{display:inline-block;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:top;background:var(--surface-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:11.5px}.h-meta,.h-note{color:var(--ink-2)}.h-note{margin-top:6px;font-size:12.5px;line-height:1.55}.h-actions{display:flex;gap:6px}.ib-mini{display:none}.icon-btn{background:none;border:1px solid var(--line);border-radius:8px;padding:4px 9px;font-size:11px;color:var(--muted);transition:color .15s,border-color .15s}.icon-btn:hover{color:var(--ink);border-color:rgba(157,198,193,.3)}.icon-btn.danger:hover{color:var(--danger-ink);border-color:rgba(255,122,89,.45)}.empty{padding:28px 0 22px;text-align:center;color:var(--muted);font-size:13px}.data-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.data-note{margin-top:13px;font-size:11.5px;color:var(--muted);line-height:1.65}.sync-setup{display:flex;flex-direction:column;gap:14px;margin-top:14px}.sync-help{font-size:11.5px;color:var(--muted);line-height:1.7}.sync-help a{color:var(--aqua-300)}.sync-help b{color:var(--ink-2)}.sync-save-row{display:flex;justify-content:flex-end}.foot{max-width:760px;margin:0 auto;padding:0 16px 34px;text-align:center}.lane{width:min(280px,70%);height:3px;margin:0 auto 14px;border-radius:2px;background:repeating-linear-gradient(90deg,rgba(46,200,189,.32) 0 12px,transparent 12px 24px)}.foot p{font-size:11px;color:var(--muted);letter-spacing:.06em}.store-banner{position:relative;z-index:5;padding:10px 16px;background:#5c2413;color:#ffd9c9;font-size:12.5px;text-align:center}.toast{position:fixed;left:50%;bottom:28px;z-index:70;transform:translateX(-50%) translateY(10px);padding:10px 20px;background:var(--pop-bg);border:1px solid var(--pop-line);border-radius:12px;box-shadow:var(--pop-shadow);font-size:13px;color:var(--ink);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}@media (min-width:700px){:root{--cell:12px}.stats{grid-template-columns:repeat(6,minmax(0,1fr))}.field-row{grid-template-columns:1.2fr minmax(0,1fr) minmax(0,1fr)}.field-row .field:first-child{grid-column:auto}}@media (max-width:699px){.date-view,.field input{font-size:16px}.h-row{gap:10px}.h-day{min-width:34px}.h-meta{font-size:11px;padding:3px 8px}.ib-full{display:none}.ib-mini{display:inline}.icon-btn{padding:4px 8px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}