:root{--bg:#f4f5fb;--surface:#fff;--surface-2:#eff1f9;--text:#1c2233;--muted:#5b6478;--border:#dde1ee;--primary:#4f46e5;--primary-soft:color-mix(in srgb, var(--primary) 10%, var(--surface));--primary-contrast:#fff;--brand-gradient:linear-gradient(135deg, #6d6bf5 0%, #4f46e5 55%, #7c3aed 100%);--danger:#b42318;--success:#067647;--warning:#b54708;--warning-bg:#fff7e0;--radius-sm:12px;--radius:16px;--radius-lg:22px;--radius-xl:28px;--shadow-sm:0 1px 2px #1c22330f, 0 1px 3px #1c22330a;--shadow-md:0 8px 24px -10px #1c223338;--shadow-lg:0 18px 44px -16px #1c223361;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--tab-h:64px;--header-h:60px;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}:root[data-theme=dark]{--bg:#0f121c;--surface:#181d2b;--surface-2:#212840;--text:#e8ebf5;--muted:#9aa3b8;--border:#2b3248;--primary:#8b85ff;--primary-contrast:#12151f;--danger:#ff8a80;--success:#5fd49b;--warning:#f7b955;--warning-bg:#3a3320;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 8px 24px -10px #0009;--shadow-lg:0 18px 44px -16px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f121c;--surface:#181d2b;--surface-2:#212840;--text:#e8ebf5;--muted:#9aa3b8;--border:#2b3248;--primary:#8b85ff;--primary-contrast:#12151f;--danger:#ff8a80;--success:#5fd49b;--warning:#f7b955;--warning-bg:#3a3320;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 8px 24px -10px #0009;--shadow-lg:0 18px 44px -16px #000000b3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);-webkit-font-smoothing:antialiased;min-height:100vh;margin:0;line-height:1.5}h1,h2,h3{letter-spacing:-.015em;line-height:1.25}h1{margin:0 0 1rem;font-size:1.5rem}h2{margin:1.6rem 0 .7rem;font-size:1.05rem;font-weight:700}h3{margin:1rem 0 .5rem;font-size:1rem}a{color:var(--primary)}p{margin:0 0 .75rem}code{background:var(--surface-2);word-break:break-all;border-radius:8px;padding:.1rem .4rem;font-size:.85em}.page{max-width:760px;margin:0 auto;padding:1.25rem 1rem 2rem}.page.narrow{max-width:440px;padding-top:2.5rem}.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}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}html{scroll-behavior:auto!important}}.auth{flex-direction:column;min-height:100dvh;display:flex}.auth__hero{color:#fff;padding:calc(1.5rem + env(safe-area-inset-top)) 1.5rem 4.75rem;background:radial-gradient(120% 90% at 100% 0,#8b5cf6 0%,#0000 55%),linear-gradient(135deg,#4f46e5 0%,#5b3fd8 60%,#6d28d9 100%);border-radius:0 0 32px 32px;position:relative;overflow:hidden}.auth__hero:after{content:"";background:#ffffff14;border-radius:50%;width:260px;height:260px;position:absolute;top:-80px;right:-90px}.auth__brand{letter-spacing:-.01em;align-items:center;gap:.7rem;font-size:1.45rem;font-weight:800;display:flex;position:relative}.auth__tagline{opacity:.92;margin:.55rem 0 0;font-size:1rem;position:relative}.auth__features{margin:2rem 0 0;padding:0;list-style:none;display:none;position:relative}.auth__features li{align-items:flex-start;gap:.7rem;margin-bottom:.85rem;display:flex}.auth__features li span{background:#fff3;border-radius:50%;flex:none;place-items:center;width:1.4rem;height:1.4rem;font-size:.8rem;display:grid}.auth__panel{flex:1;width:100%;max-width:460px;margin:-3.25rem auto 0;padding:0 1rem 2rem;position:relative}.auth__card{background:var(--surface);border:1px solid var(--border);border-radius:22px;padding:1.6rem 1.35rem;box-shadow:0 18px 40px -18px #1f295059}.auth__card h1{letter-spacing:-.015em;margin:0 0 .35rem;font-size:1.55rem}.auth__sub{color:var(--muted);margin:0 0 1.35rem}.auth__sub--center{text-align:center}.auth__form{display:block}.auth__submit{border-radius:12px;min-height:50px;margin-top:.5rem;font-size:1rem}.auth__alert{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger);border-radius:12px;margin:0 0 1rem;padding:.7rem .9rem;font-size:.92rem}.auth__alert a{color:inherit;font-weight:600}.auth__below{margin-top:1.1rem}.auth__switch{text-align:center;color:var(--muted);margin:0 0 1rem}.auth__switch a{font-weight:600}.auth__legal{text-align:center;color:var(--muted);margin:1rem .5rem 0;font-size:.75rem}.auth__terms{margin:1rem 0 .5rem;font-size:.9rem}.auth__tips{color:var(--muted);margin:0 0 1.25rem;padding-left:1.1rem;font-size:.9rem}.auth__badge{width:64px;height:64px;color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, var(--surface));border-radius:20px;place-items:center;margin-bottom:1rem;display:grid}.auth__badge svg{width:30px;height:30px}.auth__badge--ok{color:var(--success);background:color-mix(in srgb, var(--success) 14%, var(--surface))}.afield{margin-bottom:1rem}.afield__top{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.afield__label{font-size:.9rem;font-weight:600}.afield__link{font-size:.85rem;font-weight:600}.afield__control{align-items:center;display:flex;position:relative}.afield__icon{width:20px;height:20px;color:var(--muted);pointer-events:none;position:absolute;left:.85rem}.afield .afield__control input{border:1.5px solid var(--border);background:var(--surface);width:100%;min-height:50px;color:var(--text);font:inherit;border-radius:12px;padding:.65rem 2.9rem .65rem 2.7rem;transition:border-color .15s,box-shadow .15s}.afield .afield__control input::placeholder{color:color-mix(in srgb, var(--muted) 70%, transparent)}.afield .afield__control input:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 18%, transparent);outline:none}.afield--error .afield__control input{border-color:var(--danger)}.afield__toggle{width:40px;height:40px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;right:.35rem}.afield__toggle:hover{color:var(--text)}.afield__toggle svg{width:20px;height:20px}.afield__hint{color:var(--muted);margin:.3rem 0 0;font-size:.82rem}.afield__error{color:var(--danger);margin:.3rem 0 0;font-size:.85rem}.checklist{color:var(--muted);grid-template-columns:1fr 1fr;gap:.3rem .75rem;margin:-.25rem 0 .5rem;padding:0;font-size:.82rem;list-style:none;display:grid}.checklist li{align-items:center;gap:.45rem;transition:color .15s;display:flex}.checklist li.ok{color:var(--success)}.checklist__dot{border:1.5px solid var(--border);border-radius:50%;flex:none;place-items:center;width:1.05rem;height:1.05rem;font-size:.65rem;font-weight:700;display:grid}.checklist li.ok .checklist__dot{background:var(--success);border-color:var(--success);color:var(--surface)}@media (width>=900px){.auth{flex-direction:row}.auth__hero{border-radius:0;flex-direction:column;flex:50%;justify-content:center;padding:4rem 4.5rem;display:flex}.auth__brand{font-size:1.8rem}.auth__tagline{max-width:22rem;font-size:1.35rem;font-weight:600}.auth__features{font-size:1.02rem;display:block}.auth__panel{flex-direction:column;flex:50%;justify-content:center;align-items:center;max-width:none;margin:0;padding:2.5rem;display:flex}.auth__card,.auth__below{width:100%;max-width:440px}}.btn{white-space:nowrap;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface);min-height:46px;color:var(--text);font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-weight:600;text-decoration:none;transition:transform 80ms,box-shadow .15s,background .15s,border-color .15s;display:inline-flex}.btn:hover{border-color:color-mix(in srgb, var(--primary) 40%, var(--border))}.btn:active{transform:scale(.98)}.btn.primary{background:var(--brand-gradient);color:#fff;border-color:#0000;box-shadow:0 8px 18px -8px #4f46e5b3}.btn.primary:hover{filter:brightness(1.06)}.btn.soft{background:var(--primary-soft);color:var(--primary);border-color:#0000}.btn.danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:0 0}.btn.danger.solid{background:var(--danger);border-color:var(--danger);color:#fff}.btn.small{border-radius:12px;min-height:38px;padding:.3rem .85rem;font-size:.9rem}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn .icon{width:1.15em;height:1.15em}.btn:focus-visible,.icon-btn:focus-visible,a:focus-visible,.list__row:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:2px}.icon-btn{border:1.5px solid var(--border);background:var(--surface);width:42px;height:42px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:14px;flex:none;place-items:center;transition:background .15s,border-color .15s;display:inline-grid}.icon-btn:hover{background:var(--surface-2)}.icon-btn .icon{width:22px;height:22px}.icon-btn.plain{background:0 0;border-color:#0000}.icon-btn.danger{color:var(--danger)}.icon{flex:none;width:1.25em;height:1.25em}.tile{background:var(--primary-soft);width:42px;height:42px;color:var(--primary);border-radius:13px;flex:none;place-items:center;display:grid}.tile .icon{width:22px;height:22px}.tile.brand{background:var(--brand-gradient);color:#fff;box-shadow:0 8px 16px -8px #4f46e5b3}.tile.ok{background:color-mix(in srgb, var(--success) 14%, var(--surface));color:var(--success)}.tile.warn{background:var(--warning-bg);color:var(--warning)}.tile.danger{background:color-mix(in srgb, var(--danger) 12%, var(--surface));color:var(--danger)}.avatar{background:var(--brand-gradient);color:#fff;letter-spacing:.02em;border-radius:13px;flex:none;place-items:center;width:40px;height:40px;font-size:.95rem;font-weight:700;display:grid}.avatar.lg{border-radius:18px;width:56px;height:56px;font-size:1.2rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:.85rem;padding:1.1rem}.card.link{color:inherit;text-decoration:none;transition:box-shadow .15s,transform .1s;display:block}.card.link:hover{box-shadow:var(--shadow-md)}.card.flush{padding:0;overflow:hidden}.card.hero{background:var(--brand-gradient);color:#fff;box-shadow:var(--shadow-lg);border:0;position:relative;overflow:hidden}.card.hero:after{content:"";background:#ffffff1a;border-radius:50%;width:220px;height:220px;position:absolute;top:-90px;right:-70px}.card.hero>*{z-index:1;position:relative}.card__title{align-items:center;gap:.6rem;margin:0 0 .85rem;font-size:1rem;font-weight:700;display:flex}.list{margin:0;padding:0;list-style:none}.list__row{border:0;border-bottom:1px solid var(--border);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;align-items:center;gap:.85rem;padding:.85rem 1rem;text-decoration:none;display:flex}.list__row:last-child{border-bottom:0}.list__row:hover{background:var(--surface-2)}.list__body{flex:1;min-width:0}.list__title{font-weight:600;display:block}.list__sub{color:var(--muted);margin-top:.1rem;font-size:.86rem;display:block}.list__chev{color:var(--muted);flex:none;width:20px;height:20px}.list__row.danger .list__title{color:var(--danger)}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.row.between{justify-content:space-between}.row.nowrap{flex-wrap:nowrap}.stack>*+*{margin-top:.75rem}.muted{color:var(--muted);font-size:.9rem}.grow{flex:1;min-width:0}.badge{background:var(--surface-2);color:var(--muted);border-radius:999px;align-items:center;gap:.3rem;padding:.15rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.badge.ok{background:color-mix(in srgb, var(--success) 15%, var(--surface));color:var(--success)}.badge.warn{background:var(--warning-bg);color:var(--warning)}.badge.danger{background:color-mix(in srgb, var(--danger) 13%, var(--surface));color:var(--danger)}.badge.info{background:var(--primary-soft);color:var(--primary)}.sev{--c:hsl(calc(135 - var(--n,5) * 13.5) 68% 42%);background:color-mix(in srgb, var(--c) 16%, var(--surface));color:var(--c)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .sev{--c:hsl(calc(135 - var(--n,5) * 13.5) 78% 66%)}}:root[data-theme=dark] .sev{--c:hsl(calc(135 - var(--n,5) * 13.5) 78% 66%)}.notice{background:var(--warning-bg);color:var(--text);border-radius:var(--radius);align-items:flex-start;gap:.7rem;margin-bottom:1rem;padding:.8rem 1rem;font-size:.88rem;display:flex}.notice .icon{color:var(--warning);margin-top:.1rem}.error-banner,.success-banner{border-radius:var(--radius-sm);margin-bottom:1rem;padding:.65rem .95rem;font-size:.92rem}.error-banner{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger)}.success-banner{background:color-mix(in srgb, var(--success) 12%, transparent);color:var(--success)}.error{color:var(--danger);margin-top:.25rem;font-size:.85rem}.empty{text-align:center;color:var(--muted);padding:2rem 1rem}.empty .tile{border-radius:20px;width:64px;height:64px;margin:0 auto 1rem}.empty .tile .icon{width:30px;height:30px}.empty strong{color:var(--text);margin-bottom:.25rem;font-size:1.05rem;display:block}.empty p{max-width:24rem;margin-inline:auto}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--surface-2) 25%, color-mix(in srgb, var(--surface-2) 60%, var(--surface)) 50%, var(--surface-2) 75%);background-size:200% 100%;animation:1.3s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.field{margin-bottom:1rem;display:block}.field>span.label{margin-bottom:.3rem;font-size:.9rem;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],input[type=date],input[type=time],input[type=number],input[type=datetime-local],select,textarea{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:48px;color:var(--text);font:inherit;padding:.55rem .85rem;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 16%, transparent);outline:none}textarea{resize:vertical;min-height:96px}.field .error{margin-top:.25rem}.check{align-items:flex-start;gap:.6rem;margin-bottom:.65rem;display:flex}.check input{width:20px;height:20px;accent-color:var(--primary);margin-top:.25rem}.chips{flex-wrap:wrap;gap:.45rem;display:flex}.chip{position:relative}.chip input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.chip span{border:1.5px solid var(--border);background:var(--surface);border-radius:999px;padding:.45rem .9rem;font-size:.9rem;transition:background .15s,border-color .15s,color .15s;display:inline-block}.chip input:checked+span{background:var(--primary-soft);border-color:var(--primary);color:var(--primary);font-weight:600}.chip input:focus-visible+span{outline:3px solid color-mix(in srgb, var(--primary) 55%, transparent);outline-offset:2px}.tag{background:var(--primary-soft);color:var(--primary);border:0;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .4rem .3rem .8rem;font-size:.88rem;font-weight:600;display:inline-flex}.tag button{background:color-mix(in srgb, var(--primary) 18%, transparent);width:22px;height:22px;color:inherit;cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.tag button .icon{width:14px;height:14px}.intensity{grid-template-columns:repeat(11,1fr);gap:5px;display:grid}.intensity button{border:1.5px solid var(--border);background:var(--surface);min-height:46px;color:var(--text);font:inherit;cursor:pointer;border-radius:12px;padding:0;font-weight:700;transition:transform 80ms}.intensity button:active{transform:scale(.94)}.intensity button[aria-pressed=true]{background:var(--c);border-color:var(--c);color:#fff;box-shadow:0 6px 14px -6px var(--c)}.intensity button{--c:hsl(calc(135 - var(--n) * 13.5) 68% 42%)}.segmented{background:var(--surface-2);scrollbar-width:none;border-radius:14px;gap:2px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.segmented button{font:inherit;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:.45rem .95rem;font-size:.88rem;font-weight:600}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.calendar{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.calendar .dow{text-align:center;color:var(--muted);padding:4px 0;font-size:.75rem;font-weight:600}.calendar .day{aspect-ratio:1;background:var(--surface);color:var(--text);font:inherit;cursor:pointer;border:1.5px solid #0000;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;padding:0;font-weight:600;transition:transform 80ms;display:flex;position:relative}.calendar .day:active{transform:scale(.94)}.calendar .day.empty{cursor:default;background:0 0}.calendar .day.today{border-color:var(--primary);color:var(--primary)}.calendar .day.has{background:color-mix(in srgb, var(--c) 18%, var(--surface));color:var(--c);--c:hsl(calc(135 - var(--level,5) * 13.5) 68% 42%)}.calendar .day.has small{font-size:.62rem;font-weight:700}.calendar .day.selected{outline:3px solid var(--primary);outline-offset:1px}.legend{color:var(--muted);align-items:center;gap:.5rem;font-size:.78rem;display:flex}.legend i{background:linear-gradient(90deg,#22b447,#b4b422,#b42222);border-radius:99px;width:90px;height:8px;display:block}.bar{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.bar>i{background:var(--brand-gradient);border-radius:999px;height:100%;display:block}.bars{grid-template-columns:repeat(11,1fr);align-items:end;gap:6px;height:130px;display:grid}.bars div{background:var(--c);--c:hsl(calc(135 - var(--n) * 13.5) 68% 46%);border-radius:8px 8px 3px 3px;min-height:3px}.bars-labels{text-align:center;color:var(--muted);grid-template-columns:repeat(11,1fr);gap:6px;margin-top:.35rem;font-size:.72rem;display:grid}.stats{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}@media (width>=640px){.stats{grid-template-columns:repeat(4,1fr)}}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:.9rem}.stat .tile{border-radius:11px;width:36px;height:36px;margin-bottom:.6rem}.stat .tile .icon{width:19px;height:19px}.stat strong{letter-spacing:-.02em;font-size:1.5rem;line-height:1.1;display:block}.stat span{color:var(--muted);font-size:.82rem}body.has-modal{overflow:hidden}dialog.sheet{color:var(--text);background:0 0;border:0;width:100%;max-width:none;max-height:none;margin:auto 0 0;padding:0;overflow:visible}dialog.sheet::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c0f1e8c}.sheet__panel{background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;box-shadow:var(--shadow-lg);max-height:92dvh;padding-bottom:env(safe-area-inset-bottom);flex-direction:column;animation:.22s cubic-bezier(.2,.8,.2,1) sheet-up;display:flex}.sheet__grip{background:var(--border);border-radius:99px;flex:none;width:40px;height:4px;margin:.6rem auto 0}.sheet__header{flex:none;align-items:center;gap:.75rem;padding:.85rem 1.1rem .25rem 1.25rem;display:flex}.sheet__title{flex:1;margin:0;font-size:1.15rem}.sheet__desc{color:var(--muted);margin:0;padding:0 1.25rem .25rem;font-size:.9rem}.sheet__body{overscroll-behavior:contain;flex:1;padding:.75rem 1.25rem 1.1rem;overflow-y:auto}.sheet__footer{border-top:1px solid var(--border);flex:none;gap:.6rem;padding:.85rem 1.25rem 1.1rem;display:flex}.sheet__footer .btn{flex:1}@keyframes sheet-up{0%{opacity:0;transform:translateY(32px)}}@keyframes sheet-in{0%{opacity:0;transform:translate(32px)}}@media (width>=720px){dialog.sheet{width:min(540px,92vw);margin:auto}dialog.sheet.lg{width:min(720px,94vw)}.sheet__panel{border-radius:var(--radius-xl);max-height:88dvh;animation-name:pop}.sheet__grip{display:none}}@keyframes pop{0%{opacity:0;transform:scale(.96)}}dialog.sheet.drawer{width:min(400px,100vw);height:100dvh;margin:0 0 0 auto}dialog.sheet.drawer .sheet__panel{border-radius:var(--radius-xl) 0 0 var(--radius-xl);height:100%;max-height:none;animation-name:sheet-in}dialog.sheet.drawer .sheet__grip{display:none}@media (prefers-reduced-motion:reduce){.sheet__panel{animation:none}}.toasts{left:0;right:0;bottom:calc(var(--tab-h) + 1.6rem + env(safe-area-inset-bottom));z-index:100;pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;padding:0 1rem;display:flex;position:fixed}@media (width>=900px){.toasts{bottom:1.5rem}}.toast{pointer-events:auto;background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:16px;align-items:center;gap:.6rem;max-width:420px;padding:.7rem 1rem;font-size:.92rem;font-weight:600;animation:.2s ease-out sheet-up;display:flex}.toast .icon{width:20px;height:20px}.toast.success .icon{color:#5fd49b}.toast.error .icon{color:#ff8a80}.fab{z-index:35;right:1rem;bottom:calc(var(--tab-h) + 1.5rem + env(safe-area-inset-bottom));background:var(--brand-gradient);color:#fff;min-width:58px;height:58px;font:inherit;cursor:pointer;border:0;border-radius:20px;justify-content:center;align-items:center;gap:.5rem;padding:0 1.15rem;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;box-shadow:0 14px 28px -10px #4f46e5cc}.fab .icon{width:24px;height:24px}.fab:active{transform:scale(.96)}@media (width>=900px){.fab{bottom:2rem;right:2.25rem}}.formbar{z-index:20;bottom:calc(var(--tab-h) + 1.4rem + env(safe-area-inset-bottom));background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:22px;gap:.6rem;margin-top:1rem;padding:.55rem;display:flex;position:sticky}.formbar .btn{flex:1}@media (width>=900px){.formbar{max-width:520px;margin-inline:auto;bottom:1rem}}.sev-badge{border-radius:14px;flex:none;place-items:center;min-width:44px;height:44px;font-size:1.15rem;font-weight:800;display:grid}.pill-row{flex-wrap:wrap;gap:.4rem;display:flex}.section-title{justify-content:space-between;align-items:center;gap:.75rem;margin:1.5rem 0 .65rem;display:flex}.section-title h2{margin:0}.link-btn{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:.25rem .1rem;font-weight:600;text-decoration:none}.themes{grid-template-columns:repeat(3,1fr);gap:.65rem;display:grid}.themes__now{grid-column:1/-1;margin:.15rem 0 0}.theme{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer;flex-direction:column;align-items:stretch;gap:.4rem;padding:.6rem;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.theme[aria-checked=true]{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb, var(--primary) 15%, transparent)}.theme__preview{border:1px solid #7880a040;border-radius:10px;align-content:start;gap:4px;height:64px;padding:8px;display:grid}.theme__preview i{border-radius:4px;height:8px;display:block}.theme__preview i:first-child{width:55%}.theme__preview i:nth-child(2){opacity:.55;width:85%}.theme__preview i:nth-child(3){width:40%;background:linear-gradient(135deg,#6d6bf5,#7c3aed)!important}.theme--light .theme__preview{background:#f4f5fb}.theme--light .theme__preview i{background:#1c2233}.theme--dark .theme__preview{background:#0f121c}.theme--dark .theme__preview i{background:#e8ebf5}.theme--system .theme__preview{background:linear-gradient(115deg,#f4f5fb 50%,#0f121c 50%)}.theme--system .theme__preview i{background:#6b7390}.theme__label{align-items:center;gap:.35rem;font-size:.9rem;font-weight:700;display:flex}.theme__label .icon{width:16px;height:16px;color:var(--muted)}.theme__hint{color:var(--muted);font-size:.75rem;line-height:1.25}.theme__check{background:var(--primary);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:.4rem;right:.4rem}.theme__check .icon{width:13px;height:13px}@media (width<=420px){.theme__hint{display:none}}.chart{width:100%;height:auto;display:block;overflow:visible}.chart__label{fill:var(--muted);font-size:9px;font-weight:600}.chart__value{fill:var(--text);font-size:9px;font-weight:700}.chart__grid{stroke:var(--border);stroke-width:1px;stroke-dasharray:3 4}.donut{flex-wrap:wrap;align-items:center;gap:1.1rem;display:flex}.donut__svg{flex:none;width:140px;height:140px;margin-inline:auto}.donut__total{fill:var(--text);font-size:20px;font-weight:800}.donut__legend{flex:1;min-width:180px;margin:0;padding:0;list-style:none}.donut__legend li{border-bottom:1px solid var(--border);align-items:center;gap:.6rem;padding:.35rem 0;font-size:.9rem;display:flex}.donut__legend li:last-child{border-bottom:0}.donut__legend i{border-radius:4px;flex:none;width:12px;height:12px}.delta{white-space:nowrap;border-radius:999px;align-items:center;gap:.2rem;margin-top:.35rem;padding:.1rem .5rem;font-size:.74rem;font-weight:700;display:inline-flex}.delta.good{background:color-mix(in srgb, var(--success) 15%, var(--surface));color:var(--success)}.delta.bad{background:color-mix(in srgb, var(--danger) 13%, var(--surface));color:var(--danger)}.delta.flat{background:var(--surface-2);color:var(--muted)}.card .chart-title{margin:0 0 .6rem;font-size:.92rem;font-weight:700}.two-col{gap:.85rem;display:grid}@media (width>=760px){.two-col{grid-template-columns:1fr 1fr}}.burden__top{flex-wrap:wrap;align-items:center;gap:1.1rem;display:flex}.burden__donut{flex:none;width:150px;margin-inline:auto}.burden__donut .donut__legend{display:none}.burden__text{flex:1;min-width:210px}.burden__headline{letter-spacing:-.01em;margin:0;font-size:1.25rem}.burden__bar{background:color-mix(in srgb, #22c55e 55%, var(--surface-2));border-radius:99px;height:12px;margin-bottom:.55rem;overflow:hidden}.burden__bar i{background:#ef4444;border-radius:99px;height:100%;display:block}.burden__time{border-top:1px solid var(--border);align-items:flex-start;gap:.7rem;margin-top:1rem;padding-top:.9rem;display:flex}.burden__time .icon{width:22px;height:22px;color:var(--primary);margin-top:.1rem}.burden__open{border-radius:var(--radius);background:var(--warning-bg);color:var(--text);align-items:flex-start;gap:.7rem;margin-top:1rem;padding:.8rem .9rem;font-size:.9rem;display:flex}.burden__open .icon{width:20px;height:20px;color:var(--warning);flex:none;margin-top:.1rem}.switch-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.85rem .9rem}.switch-card+.switch-card{margin-top:.6rem}.switch-card.is-disabled{opacity:.6}.switch-card.is-plain{background:0 0;border:0;border-radius:0;margin:0 0 1rem;padding:0}.switch-card.is-plain .switch-row{padding:.15rem 0}.switch-row{cursor:pointer;align-items:center;gap:.8rem;display:flex}.switch-card.is-disabled .switch-row{cursor:not-allowed}.switch-row .tile{border-radius:12px;flex:none;width:40px;height:40px}.switch-row__text{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.switch-row__text small{font-size:.85rem;line-height:1.35}.switch{appearance:none;background:color-mix(in srgb, var(--muted) 35%, var(--surface));width:50px;height:30px;cursor:inherit;border-radius:999px;flex:none;margin:0;transition:background .18s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch:checked{background:var(--primary)}.switch:checked:after{transform:translate(20px)}.switch:focus-visible{outline:3px solid color-mix(in srgb, var(--primary) 40%, transparent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.switch-card__extra{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.75rem;font-size:.9rem}.settings-section{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:1.4rem 0 .6rem;font-size:.8rem;font-weight:700}.settings-section:first-of-type{margin-top:.2rem}.status-line{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.time-pair{align-items:center;gap:.6rem;display:flex}.time-pair label{flex:1}.time-pair .label{color:var(--muted);margin-bottom:.25rem;font-size:.85rem;display:block}.shell{min-height:100dvh;display:flex}.shell__main{flex-direction:column;flex:1;min-width:0;display:flex}.shell__header{z-index:30;min-height:calc(var(--header-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 1rem 0;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);align-items:center;gap:.6rem;display:flex;position:sticky;top:0}.shell__logo{flex:none;display:flex}.shell__title{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;margin:0;font-size:1.2rem;font-weight:800;overflow:hidden}.shell__actions{flex:none;align-items:center;gap:.5rem;display:flex}.shell__content{width:100%;max-width:980px;padding:1.1rem 1rem calc(var(--tab-h) + 2.6rem + env(safe-area-inset-bottom));margin:0 auto}.tabbar{z-index:40;left:.6rem;right:.6rem;bottom:calc(.6rem + env(safe-area-inset-bottom));height:var(--tab-h);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:24px;padding:.35rem;display:flex;position:fixed}.tabbar a{min-width:0;color:var(--muted);-webkit-tap-highlight-color:transparent;border-radius:18px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.68rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.tabbar a .icon{width:23px;height:23px}.tabbar a.router-link-active{background:var(--primary-soft);color:var(--primary)}.shell__side{display:none}@media (width>=900px){.tabbar,.shell__logo{display:none}.shell__side{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex:none;width:256px;height:100dvh;padding:1.25rem .9rem;display:flex;position:sticky;top:0}.shell__content{padding:1.5rem 2rem 3rem}.shell__header{padding-inline:2rem}}.side__brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:.7rem;padding:.25rem .5rem 1.25rem;font-size:1.2rem;font-weight:800;text-decoration:none;display:flex}.side__nav{flex-direction:column;flex:1;gap:.25rem;display:flex}.side__nav a{color:var(--muted);border-radius:14px;align-items:center;gap:.8rem;padding:.7rem .85rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:flex}.side__nav a:hover{background:var(--surface-2);color:var(--text)}.side__nav a.router-link-active{background:var(--primary-soft);color:var(--primary)}.side__nav .icon{width:22px;height:22px}.side__user{background:var(--surface-2);width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;border:0;border-radius:16px;align-items:center;gap:.75rem;padding:.7rem;display:flex}.side__user>div>strong{white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;display:block;overflow:hidden}.side__user>div>span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;display:block;overflow:hidden}.usermenu{position:relative}.usermenu__panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(300px,100vw - 2rem);box-shadow:var(--shadow-lg);z-index:60;transform-origin:100% 0;padding:.5rem;animation:.14s ease-out pop;position:absolute;top:calc(100% + 10px);right:0}.usermenu__head{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;margin-bottom:.35rem;padding:.75rem .75rem .9rem;display:flex}.usermenu__head>div strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.usermenu__head>div>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;display:block;overflow:hidden}.usermenu__item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:.75rem;padding:.65rem .75rem;font-size:.92rem;font-weight:600;text-decoration:none;display:flex}.usermenu__item:hover{background:var(--surface-2)}.usermenu__item .icon{color:var(--muted);width:20px;height:20px}.usermenu__item.danger,.usermenu__item.danger .icon{color:var(--danger)}.usermenu__sep{background:var(--border);height:1px;margin:.35rem .25rem}.pm__label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:baseline;margin:1.5rem .2rem .6rem;font-size:.74rem;font-weight:800;display:flex}.pm__label:first-child{margin-top:0}.pm__label span{letter-spacing:0;text-transform:none;font-weight:600}.pm__actions{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.pm__action{border:1.5px solid var(--border);background:var(--surface);min-height:96px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:20px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.85rem;text-decoration:none;transition:transform 80ms,border-color .15s,box-shadow .15s;display:flex}.pm__action:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border));box-shadow:var(--shadow-sm)}.pm__action:active{transform:scale(.97)}.pm__action-label{font-size:.92rem;font-weight:700;line-height:1.25}.pm__action.primary{background:var(--brand-gradient);color:#fff;border-color:#0000;flex-direction:row;grid-column:1/-1;justify-content:flex-start;align-items:center;gap:.9rem;min-height:0;box-shadow:0 14px 26px -14px #4f46e5e6}.pm__action.primary .tile{color:#fff;box-shadow:none;background:#fff3}.pm__action.primary .pm__action-label{font-size:1rem}.pm__toc{flex-direction:column;gap:.3rem;display:flex}.pm__toc-item{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;align-items:center;gap:.8rem;padding:.55rem .65rem;font-weight:600;transition:background .15s;display:flex;position:relative}.pm__toc-item:hover{background:var(--surface-2)}.pm__toc-item .tile{width:38px;height:38px}.pm__toc-item.active{background:var(--primary-soft);color:var(--primary)}.pm__toc-item.active:before{content:"";background:var(--primary);border-radius:4px;width:3.5px;position:absolute;top:22%;bottom:22%;left:0}.pm__toc-item.active .tile{background:var(--primary);color:#fff}.anchor{scroll-margin-top:calc(var(--header-h) + 14px)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.install[data-v-830981a5]{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--primary) 30%, var(--border));background:color-mix(in srgb, var(--primary) 8%, var(--surface));align-items:flex-start;gap:.85rem;margin-bottom:1rem;padding:.9rem 1rem;display:flex;position:relative}.install__icon[data-v-830981a5]{border-radius:11px;flex:none}.install__body[data-v-830981a5]{min-width:0}.install__body p[data-v-830981a5]{color:var(--muted);margin:.2rem 0 .1rem;font-size:.88rem}.install__share[data-v-830981a5]{vertical-align:-.2em;width:1.1em;height:1.1em;color:var(--primary)}.install__actions[data-v-830981a5]{gap:.5rem;margin-top:.6rem;display:flex}.install__close[data-v-830981a5]{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.25rem .5rem;font-size:1.4rem;line-height:1;position:absolute;top:.25rem;right:.5rem}
