:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-synthesis:none;--canvas:#f4f2ed;--canvas-glow:#ffffffd6;--text:#17171a;--secondary:#77757d;--tertiary:#a4a1a8;--card:#ffffffad;--card-border:#ffffffd1;--button:#1c1c21;--button-text:#fff;--accent:#6268a6;--accent-soft:#6268a61f;--accent-ring:#6268a6a3;--separator:#23202914;--danger:#c24d53;--shadow:0 24px 70px #3530401c, 0 2px 10px #1e1b240a;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Helvetica Neue,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}html{background:var(--canvas);-webkit-text-size-adjust:100%;min-height:100%}body{min-width:320px;min-height:100%;color:var(--text);background:radial-gradient(circle at 50% -10%, var(--canvas-glow) 0, transparent 48%), var(--canvas);overscroll-behavior:none;-webkit-tap-highlight-color:transparent;margin:0}button,input{font:inherit}button{color:inherit}button:focus-visible{outline:3px solid var(--accent-ring);outline-offset:3px}.app-shell{grid-template-rows:minmax(268px,42dvh) minmax(382px,58dvh);width:min(100%,520px);min-height:100dvh;margin:0 auto;display:grid;overflow:hidden}.summary-panel{padding:calc(env(safe-area-inset-top) + 14px) 24px 18px;z-index:2;flex-direction:column;align-items:center;display:flex;position:relative}.app-header{justify-content:space-between;align-items:center;width:100%;display:flex}.tracker-selector{letter-spacing:-.02em;cursor:pointer;background:0 0;border:0;border-radius:16px;align-items:center;gap:8px;max-width:calc(100% - 58px);min-height:40px;padding:0 10px 0 0;font-size:17px;font-weight:650;display:inline-flex}.active-tracker-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selector-chevron{opacity:.55;border-bottom:1.6px solid;border-right:1.6px solid;flex:none;width:7px;height:7px;transform:translateY(-2px)rotate(45deg)}.menu-wrap{position:relative}.icon-button{width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--separator);cursor:pointer;background:#ffffff70;border:0;border-radius:50%;justify-content:center;align-items:center;gap:3px;display:flex}.menu-button span{background:currentColor;border-radius:50%;width:3px;height:3px}.menu{border:1px solid var(--card-border);-webkit-backdrop-filter:blur(24px)saturate(160%);z-index:20;transform-origin:100% 0;background:#f9f8f5eb;border-radius:18px;width:210px;padding:8px;animation:.16s ease-out menu-in;position:absolute;top:47px;right:0;box-shadow:0 18px 50px #19171e2e}.menu[hidden],.file-input{display:none}.menu-note{color:var(--tertiary);letter-spacing:.02em;margin:7px 10px 9px;font-size:11px}.menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;min-height:42px;padding:0 10px;font-size:15px}.menu button:active{background:var(--accent-soft)}.menu button:disabled{color:var(--tertiary);opacity:.45;cursor:default}.menu-separator{background:var(--separator);height:1px;margin:6px 10px}.summary-content{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;padding-top:4px;display:flex}.eyebrow{color:var(--secondary);letter-spacing:.12em;margin:0 0 1px;font-size:13px;font-weight:550}.count-line{justify-content:center;align-items:baseline;line-height:1;display:flex;transform:translate(8px)}.day-count{letter-spacing:-.075em;font-variant-numeric:tabular-nums;font-size:clamp(76px,24vw,112px);font-weight:250}.day-unit{color:var(--secondary);margin-left:10px;font-size:18px;font-weight:500}.count-line.empty{transform:none}.count-line.empty .day-count{color:var(--tertiary);letter-spacing:0}.count-line.empty .day-unit{display:none}.last-record{min-height:18px;color:var(--secondary);margin:5px 0 0;font-size:13px}.record-today{min-width:150px;height:46px;color:var(--button-text);background:var(--button);cursor:pointer;border:0;border-radius:23px;justify-content:center;align-items:center;gap:7px;padding:0 20px;font-size:15px;font-weight:600;transition:transform .15s,opacity .15s,background .15s;display:inline-flex;box-shadow:0 9px 24px #14131829}.record-today:active:not(:disabled){transform:scale(.96)}.record-today.recorded{color:var(--accent);background:var(--accent-soft);box-shadow:none}.record-today:disabled{opacity:1;cursor:default}.button-icon{font-size:19px;font-weight:400;line-height:1}.calendar-panel{min-height:0;padding:6px 12px calc(env(safe-area-inset-bottom) + 12px)}.calendar-card{border:1px solid var(--card-border);background:var(--card);height:100%;min-height:362px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(28px)saturate(150%);border-radius:32px 32px 0 0;padding:22px 18px 14px}.calendar-header{justify-content:space-between;align-items:center;height:52px;padding:0 4px;display:flex}.month-button{cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:flex-start;padding:0;display:flex}.month-title{letter-spacing:-.035em;font-size:21px;font-weight:650}.month-subtitle{color:var(--tertiary);margin-top:3px;font-size:11px}.month-navigation{gap:8px;display:flex}.calendar-nav{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.calendar-nav:before{content:"";border-bottom:1.8px solid;border-left:1.8px solid;width:7px;height:7px;transform:translate(1px)rotate(45deg)}.next-month:before{transform:translate(-1px)rotate(225deg)}.calendar-nav:disabled{opacity:.28;cursor:default}.calendar-nav:active:not(:disabled){transform:scale(.92)}.weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.weekdays{height:34px;color:var(--tertiary);text-align:center;align-items:end;padding-bottom:6px;font-size:11px;font-weight:600}.calendar-grid{grid-template-rows:repeat(6,minmax(38px,1fr));align-items:center;height:calc(100% - 86px)}.calendar-day{font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;justify-self:center;align-items:center;width:40px;height:40px;padding:0;font-size:15px;transition:background .14s,transform .14s;display:flex;position:relative}.calendar-day:active:not(:disabled){background:var(--accent-soft);transform:scale(.88)}.calendar-day:disabled{color:var(--tertiary);opacity:.34;cursor:default}.calendar-day.today{box-shadow:inset 0 0 0 1.5px var(--accent-ring);color:var(--accent);font-weight:650}.calendar-day.marked:not(.today){background:var(--accent-soft);color:var(--accent);font-weight:650}.event-dot{background:0 0;border-radius:50%;width:4px;height:4px;position:absolute;bottom:4px}.calendar-day.marked .event-dot{background:var(--accent)}.sheet-dialog{width:min(100% - 24px,430px);max-height:min(76dvh,620px);margin:auto auto calc(env(safe-area-inset-bottom) + 12px);border:1px solid var(--card-border);color:var(--text);-webkit-backdrop-filter:blur(34px)saturate(170%);background:#f9f8f5f5;border-radius:28px;padding:10px 20px 20px;box-shadow:0 26px 90px #14121947}.sheet-dialog[open]{animation:.22s cubic-bezier(.22,.82,.28,1) sheet-in}.sheet-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0e47}.sheet-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.sheet-kicker{color:var(--tertiary);letter-spacing:.1em;margin:0 0 4px;font-size:11px;font-weight:650}.sheet-dialog h2{letter-spacing:-.04em;margin:0;font-size:24px}.sheet-close{width:34px;height:34px;color:var(--secondary);background:var(--separator);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0 0 2px;font-size:23px;line-height:1;display:grid}.tracker-list{overscroll-behavior:contain;max-height:min(45dvh,360px);overflow-y:auto}.tracker-option{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:17px;grid-template-columns:12px 1fr 22px;align-items:center;gap:12px;width:100%;min-height:58px;padding:0 14px;display:grid}.tracker-option+.tracker-option{margin-top:3px}.tracker-option:active{background:var(--separator)}.tracker-option.active{background:var(--accent-soft);color:var(--accent)}.tracker-option-mark{background:var(--separator);border-radius:50%;width:9px;height:9px}.tracker-option.active .tracker-option-mark{background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)}.tracker-option-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:590;overflow:hidden}.tracker-check{opacity:0;text-align:right;font-weight:700}.tracker-option.active .tracker-check{opacity:1}.new-tracker-button{width:100%;height:50px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:0;border-radius:16px;justify-content:center;align-items:center;gap:7px;margin-top:12px;font-size:15px;font-weight:650;display:flex}.tracker-editor{padding-bottom:22px}.tracker-editor h2{margin-bottom:18px}.tracker-name-field{border:1px solid var(--separator);background:var(--separator);border-radius:17px;align-items:center;gap:10px;height:56px;padding:0 13px 0 16px;display:flex}.tracker-name-input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:17px}.tracker-name-input::placeholder{color:var(--tertiary)}.name-count{color:var(--tertiary);font-variant-numeric:tabular-nums;font-size:11px}.editor-error{min-height:18px;color:var(--danger);margin:7px 3px 9px;font-size:12px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.date-dialog{width:min(100% - 24px,430px);margin:auto auto calc(env(safe-area-inset-bottom) + 12px);border:1px solid var(--card-border);color:var(--text);-webkit-backdrop-filter:blur(34px)saturate(170%);background:#f9f8f5f0;border-radius:28px;padding:10px 22px 22px;box-shadow:0 26px 90px #14121947}.date-dialog[open]{animation:.22s cubic-bezier(.22,.82,.28,1) sheet-in}.date-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0e47}.dialog-handle{background:var(--separator);border-radius:3px;width:38px;height:5px;margin:0 auto 20px}.dialog-icon{background:var(--accent-soft);border-radius:50%;width:42px;height:42px;margin:0 auto 13px}.dialog-icon:after{content:"＋";height:100%;color:var(--accent);place-items:center;font-size:25px;display:grid}.delete-mode .dialog-icon{background:#c24d531f}.delete-mode .dialog-icon:after{content:"−";color:var(--danger)}.date-dialog h2{text-align:center;letter-spacing:-.03em;margin:0;font-size:21px}.dialog-message{color:var(--secondary);text-align:center;margin:7px 0 20px;font-size:14px;line-height:1.5}.dialog-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.dialog-actions button{cursor:pointer;border:0;border-radius:15px;height:48px;font-weight:600}.dialog-cancel{background:var(--separator)}.dialog-confirm{color:#fff;background:var(--accent)}.delete-mode .dialog-confirm{background:var(--danger)}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom) + 24px);z-index:50;color:#fff;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);opacity:0;white-space:nowrap;background:#1c1c21e6;border-radius:18px;max-width:calc(100% - 40px);padding:11px 16px;font-size:13px;transition:transform .22s,opacity .22s;position:fixed;transform:translate(-50%,12px);box-shadow:0 12px 34px #0000002e}.toast.show{opacity:1;transform:translate(-50%)}@keyframes menu-in{0%{opacity:0;transform:scale(.94)translateY(-4px)}}@keyframes sheet-in{0%{opacity:0;transform:translateY(28px)scale(.98)}}@media (prefers-color-scheme:dark){:root{--canvas:#0d0e12;--canvas-glow:#40435d2e;--text:#f1f0f4;--secondary:#9b99a3;--tertiary:#6d6b74;--card:#1c1d23b8;--card-border:#ffffff13;--button:#f1f0f4;--button-text:#17171b;--accent:#959ad5;--accent-soft:#959ad524;--accent-ring:#959ad5b8;--separator:#ffffff17;--danger:#e36b71;--shadow:0 28px 80px #00000047}.icon-button{background:#ffffff0a}.menu,.date-dialog,.sheet-dialog{background:#1f2026f5}}@media (height<=720px) and (orientation:portrait){.app-shell{grid-template-rows:270px 397px;min-height:667px;overflow:auto}.summary-panel{padding-bottom:12px}.day-count{font-size:74px}.calendar-card{padding-top:16px}}@media (orientation:landscape) and (height<=540px){.app-shell{width:min(100%,920px);min-height:100dvh;padding:8px max(8px, env(safe-area-inset-right)) 8px max(8px, env(safe-area-inset-left));grid-template-rows:100dvh;grid-template-columns:minmax(300px,42%) minmax(430px,58%)}.summary-panel{padding-top:max(10px, env(safe-area-inset-top))}.calendar-panel{padding:0}.calendar-card{border-radius:30px}.day-count{font-size:72px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}@media (width>=700px) and (orientation:portrait){.app-shell{padding-bottom:18px}.calendar-card{border-radius:32px}}
/*$vite$:1*/