*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0}:root{--bg0:#fffcfa;--bg1:#fff1eb;--bg2:#ffded6;--bg3:#ffd9d1;--bg4:#ffd3cc;--bg5:#ffcdc7;--bg6:#ffc7c2;--bg7:#ffc1bd;--bg8:#ffbbb8;--bg9:#ffb1ad;--bg10:#ffa8a3;--text1:#121212;--text2:#333;--text3:#666;--text4:#999;--text5:#ccc;--text6:#e6e6e6;--text7:#ededed;--text8:#f2f2f2;--text9:#f7f7f7;--text10:#fafafa;--color-l1:#4cc5b1;--color-l2:#f15d46;--color-l3:#7a887e;--color-l4:#6659de;--color-l5:#f85761;--color-l6:#f0c000;--color-l7:#76ad8e;--color-l8:#2568d4;--color-l9:#405672;--color-l10:#383838;--color-warning:#ef4444;--primary:#00aeff;--primary-H:199;--primary-S:100%;--primary-L:50%;--secondary:#ff8f93;--secondary-H:358;--secondary-S:100%;--secondary-L:78%;accent-color:var(--primary);--margin:1rem;--box-radius:18px;--box-shadow:0 2px 4px -1px #ca3d120f, 0 4px 8px -2px #ca3d120d;--menu-shadow:0 6px 24px hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .2), 0 2px 4px hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .1);--transition:all .2s ease;--curve-out:cubic-bezier(.12, 0, .9, -.14);--curve-in:cubic-bezier(.41, 1.22, .54, 1.24);--transition-out:all .22s var(--curve-out);--transition-in:all .17s var(--curve-in);text-rendering:optimizelegibility;text-wrap:pretty;color:var(--text1);scrollbar-color:var(--bg3) var(--bg0);font-family:snpro,"Alibaba Health 2.0",yuanti sc,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}:root.dark-mode{--primary:#5c7edb;--primary-H:224;--primary-S:64%;--primary-L:61%;--secondary:#b22e61;--secondary-H:337;--secondary-S:59%;--secondary-L:44%;--bg0:#0d0e12;--bg1:#191c24;--bg2:#2f3442;--bg3:#485065;--bg4:#606c8a;--bg5:#7885a5;--bg6:#9aa5c1;--bg7:#b3bdd6;--bg8:#ced6e9;--bg9:#e9edf6;--bg10:#fff;--text1:#c2c8d6;--text2:#a5adc0;--text3:#9198ac;--text4:#7a8194;--text5:#656b7b;--text6:#585d6a;--text7:#4b4f58;--text8:#3e4047;--text9:#2b2d31;--text10:#212326;--color-l1:#4cc5b1;--color-l2:#f15d46;--color-l3:#7a887e;--color-l4:#665ace;--color-l5:#f85761;--color-l6:#bc9b15;--color-l7:#76ad8e;--color-l8:#2568d4;--color-l9:#536e93;--color-l10:#45424d;scrollbar-color:var(--bg3) var(--bg0);--box-shadow:0 2px 4px -1px #0003, 0 4px 8px -2px #0000001a;--menu-shadow:0 6px 24px #0003, 0 2px 4px #0000001a}body{background:var(--bg1)}img{margin:0}em{font-style:normal}button,input{font-family:inherit}[role=button],[role=menuitem]{cursor:pointer}hr{background-color:var(--bg3);opacity:.65;width:100%;height:5px;image-rendering:smooth;-webkit-mask-image:url(wavy.svg);mask-image:url(wavy.svg);-webkit-mask-size:10px 5px;mask-size:10px 5px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}::selection{background:var(--primary);color:var(--bg0)}a{color:inherit;transition:var(--transition-out);text-decoration:none;&:hover{color:var(--bg6);transition:var(--transition-in)}}.empty-status{padding:var(--margin);color:var(--text4);flex-direction:column;flex:1 0 auto;justify-content:center;align-items:center;gap:.5em;font-size:1rem;display:flex}.module-state{width:100%;min-height:140px;padding:var(--margin);color:var(--text4);text-align:left;box-sizing:border-box;justify-content:center;align-items:center;gap:.8em;display:flex}.module-state i{color:var(--text4);font-size:1.15rem}.module-state strong,.module-state span{display:block}.module-state strong{color:var(--text3);margin-bottom:.15em;font-size:1rem;font-weight:400}.module-state span{font-size:.82rem;line-height:1.5}.module-state-error i{color:var(--secondary)}.dashboard-module-alert{background:color-mix(in srgb, var(--secondary) 10%, var(--bg0));color:var(--text2);border-radius:var(--radius-m);border:1px solid #f8576140;grid-column:1/-1;align-items:center;gap:.75em;padding:.9em 1em;font-size:.9rem;display:flex}.dashboard-module-alert i{color:var(--secondary)}.dashboard{padding:var(--margin)}.dashboard>.inner{gap:var(--margin);grid-template-columns:1fr 1fr 1fr;max-width:1200px;margin:0 auto;display:grid}#home-page .dashboard>.inner{grid-template-rows:max-content max-content 40px auto min-content 1fr;grid-template-areas:"nav nav nav""overall today today""overall summary summary""apps summary summary""apps chart chart""apps history history"}#home-page.no-heartbeat-sync .dashboard>.inner{grid-template:"nav nav"max-content"firstsync firstsync"1fr/1fr 1fr}.box{background:var(--bg0);padding:var(--margin);border-radius:var(--box-radius);box-shadow:var(--box-shadow);--delay:0s;position:relative;&:target{outline:2px solid var(--primary);outline-offset:-2px}}.duang{--duang-color:var(--bg0);--duang-offset:var(--box-radius);--duang-height:calc(var(--margin) * .5);--duang-opacity:1;--duang-width:55%;&:after,&:before{content:"";left:var(--duang-offset);width:var(--duang-width);height:var(--duang-height);background-color:var(--duang-color);animation:shake-in .6s var(--curve-in) var(--delay) both;transform-origin:50% 0;opacity:var(--duang-opacity);background-repeat:no-repeat;background-size:100% 100%;position:absolute;top:100%;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20' preserveAspectRatio='none'%3E%3Cpath d='M0 0h100s-9 22.5-33.533 12.5S39.98 20 30 20C6 20 0 0 0 0'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20' preserveAspectRatio='none'%3E%3Cpath d='M0 0h100s-9 22.5-33.533 12.5S39.98 20 30 20C6 20 0 0 0 0'/%3E%3C/svg%3E")}&:after{right:var(--duang-offset);left:unset;animation:shake-in .8s var(--curve-in) var(--delay) both}}.duang:hover:after,.duang:hover:before{animation:shake-in2 .2s var(--curve-in) var(--delay) both}@keyframes shake-in{0%{transform:scaleY(0)}16%{transform:scaleY(1)}32%{transform:scaleY(0)}48%{transform:scaleY(.7)}64%{transform:scaleY(0)}76%{transform:scaleY(.4)}to{transform:scaleY(0)}}@keyframes shake-in2{0%{transform:scaleY(0)}48%{transform:scaleY(.7)}to{transform:scaleY(0)}}.shake-item{animation:shake-box .4s var(--curve-in) var(--delay) both;&:first-of-type{--delay:0s}&:nth-of-type(2){--delay:50ms}&:nth-of-type(3){--delay:.1s}&:nth-of-type(4){--delay:.15s}&:nth-of-type(5){--delay:.2s}&:nth-of-type(6){--delay:.25s}&:nth-of-type(7){--delay:.3s}&:nth-of-type(8){--delay:.35s}}@keyframes shake-box{0%{opacity:0;transform:none}20%{transform:translate(2px)scaleX(1.02)scaleY(.98)}40%{transform:translateY(-1px)translate(1px)scaleX(.985)scaleY(1.015)}60%{transform:translateY(0)translate(-2px)scaleX(1.01)scaleY(.99)}80%{transform:translateY(1px)translate(-1px)scaleX(.995)scaleY(1.005)}to{opacity:1;transform:none}}.box h3{color:var(--text1);& i{color:var(--bg4);animation:.4s var(--curve-in) icon-pop var(--delay) both;margin-right:.4em}}@keyframes icon-pop{0%{opacity:.3;transform:scale(0)rotate(-130deg)}60%{opacity:1;transform:scale(1.1)}80%{transform:scale(.75)}to{transform:scale(.9)rotate(0)}}#settings-page .box.info form .form-group,#settings-page .box.password form .form-group{grid-template-columns:1fr 1fr;align-items:center;gap:.75rem;display:grid}#settings-page .box.info form .form-group>label,#settings-page .box.password form .form-group>label{text-align:left;justify-self:start}#settings-page .box.info form .text-box,#settings-page .box.password form .text-box{width:100%}#settings-page .box:not(.avatar) form .btn-bottom{margin:1.5em auto 0;font-size:.875rem;display:block}#settings-page .box:not(.avatar) form .form-actions{flex-wrap:wrap;justify-content:center;gap:.75em;margin-top:1.5em;display:flex}#settings-page .box:not(.avatar) form .form-actions .btn-bottom{margin:0}.nav{justify-content:space-between;align-items:center;gap:calc(var(--margin) * 2);user-select:none;grid-area:nav;font-size:1rem;display:flex}.nav-left{align-items:center;gap:calc(var(--margin) / 2);cursor:pointer;flex:1 0 auto;display:flex}.nav h1{font-family:title,yuanti sc,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.7em;font-weight:400;line-height:1;position:relative;&:after{content:"BETA";background:hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .2);color:var(--secondary);border-radius:1em;padding:.1em .3em;font-family:"Alibaba Health 2.0",yuanti sc,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.5rem;font-weight:700;position:absolute;top:-.3em;left:100%}}@media (width<=768px){.nav h1:after{display:none}}.nav-left h1 span{--duration:.3s;animation:bounce var(--duration) ease-out;display:inline-block}@keyframes bounce{0%,to{transform:translateY(0)}25%{transform:translateY(-.2em)}50%{transform:translateY(.08em)}75%{transform:translateY(-.05em)}}.nav-left h1 span:first-child{animation-delay:calc(var(--duration) * .75)}.nav-left h1 span:nth-child(2){animation-delay:calc(var(--duration) * 1)}.nav-left h1 span:nth-child(3){animation-delay:calc(var(--duration) * 1.25)}.nav-left a{align-items:center;gap:calc(var(--margin) / 2);cursor:pointer;color:var(--text1);transition:var(--transition-out);display:flex;&:hover{color:var(--primary);transition:var(--transition-in)}}.nav-logo{width:2.5rem;height:2.5rem}.nav-center{align-items:center;gap:calc(var(--margin) * 2);font-size:1.2em;display:flex;&>a{transition:var(--transition-out);color:var(--text3);position:relative}&>a>span{display:inline-block;position:relative}&>a>span:after{content:"";opacity:0;width:100%;transition:var(--transition-out);background-color:var(--secondary);height:5px;display:block;position:absolute;bottom:-4px;left:0;-webkit-mask-image:url(wavy-thick.svg);mask-image:url(wavy-thick.svg);-webkit-mask-size:10px 5px;mask-size:10px 5px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}&>a:hover{color:var(--secondary);transition:var(--transition-in);font-weight:700;&>span:after{opacity:1;transition:var(--transition-in);animation:wavy-offset 2.2s var(--curve-in) infinite;background-color:var(--bg5)}}&>a:active{transition:var(--transition-in);scale:.95}&>.current{color:var(--text1);transition:var(--transition-in);font-weight:700;&>span:after{opacity:1;transition:var(--transition-in)}}&>a>i{transition:var(--transition-out);font-size:1.3em;display:none}&>.current>i{color:var(--secondary)}&>a:hover>i{color:var(--secondary);transition:var(--transition-in);scale:1.1}}@media (width<=768px){.nav-center{gap:calc(var(--margin) * 2.75)}.nav-center a>span{display:none}.nav-center a>i{display:block}}@keyframes wavy-offset{0%{mask-position:0 0}70%{mask-position:100% 0}to{mask-position:100% 0}}.nav-right{align-items:center;gap:var(--margin);flex:none;justify-content:flex-end;display:flex;position:relative}.nav-user-wrap{position:relative}.nav-user-btn{border:2px solid var(--text6);background:var(--text8);cursor:pointer;width:2.5rem;height:2.5rem;transition:var(--transition-out);border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.nav-user-btn:hover{border-color:var(--secondary);transition:var(--transition-in)}.nav-user-avatar-img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.nav-user-btn-placeholder{width:100%;height:100%;color:var(--text5);justify-content:center;align-items:center;font-size:1.1rem;display:flex}.nav-user-menu{text-align:left;background:var(--bg1);box-shadow:var(--menu-shadow);z-index:80;transform-origin:80% 0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease, transform .18s var(--curve-in), visibility 0s linear .18s;border-radius:12px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-16px)translate(16px)scale(.6)rotate(5deg);&>.inner{grid-template-columns:auto max-content;grid-template-areas:"theme profile""settings settings";gap:8px;display:grid}}.nav-user-menu.is-open,.nav-user-menu[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s ease, transform .18s var(--curve-in), visibility 0s linear 0s;transform:translateY(0)scale(1)}.nav-user-menu-card{background:var(--bg0);border-radius:4px}.user-menu-status{grid-area:profile;padding:12px;& .name{color:var(--text2);word-break:break-word;font-size:.95rem;font-weight:700;line-height:1.35;display:block}}.nav-theme-toggle{background:var(--bg0);color:var(--text3);cursor:pointer;grid-area:theme;justify-content:center;align-items:center;gap:4px;padding:10px 12px;display:flex;a&{transition:none}}.nav-theme-toggle-icon{width:1.15rem;color:var(--text4);justify-content:center;align-items:center;font-size:.95rem;display:inline-flex}.nav-theme-toggle-switch{background:linear-gradient(-135deg, hsla(var(--primary-H), var(--primary-S), calc(var(--primary-L) + 10%), .3), hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .5));border-radius:999px;flex:none;width:2.2rem;height:1.45rem;position:relative}.nav-theme-toggle-knob{background:var(--bg0);border-radius:50%;width:calc(1.45rem - 4px);height:calc(1.45rem - 4px);transition:transform .22s,background .22s;position:absolute;top:2px;left:2px}.nav-theme-toggle[aria-checked=true] .nav-theme-toggle-knob{background:var(--bg1);transform:translate(.75rem)}.nav-theme-toggle[aria-checked=true] .nav-theme-toggle-icon-moon{color:var(--primary)}.nav-theme-toggle[aria-checked=false] .nav-theme-toggle-icon-sun{color:var(--secondary)}.nav-theme-toggle[aria-checked=false] .nav-theme-toggle-icon-moon,.nav-theme-toggle[aria-checked=true] .nav-theme-toggle-icon-sun{color:var(--text5)}.user-menu-settings{text-align:center;grid-area:settings;justify-content:center;padding:11px 12px;font-size:.875rem;font-weight:700;transition:none}.user-menu-settings span{min-width:0}.nav-user-status-dot{border:2px solid var(--bg0);pointer-events:none;border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;left:-2px}.nav-user-status-dot.online{background:#1ecb6b}.nav-user-status-dot.offline{background:var(--text5)}.nav-user-menu-status{color:var(--text4);align-items:center;gap:6px;margin-top:4px;font-size:.78rem;display:flex}.nav-user-menu-status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.nav-user-menu-status.online .nav-user-menu-status-dot{background:#1ecb6b}.nav-user-menu-status.offline .nav-user-menu-status-dot{background:var(--text5)}.nav-user-menu-status.online{color:#1a9d56}.overall{text-align:left;padding:var(--margin);gap:calc(var(--margin) * .75);flex-direction:column;grid-area:overall;display:flex;position:relative}.overall-membership{box-sizing:border-box;border-radius:2rem;flex-flow:wrap;justify-content:space-between;align-items:center;gap:.5em;width:100%;padding:.3em;display:flex;&.pro,&.expiring{background:linear-gradient(135deg,gold 0%,orange 100%);background:hsla(var(--primary-H), var(--primary-S), var(--primary-L), .15);color:var(--primary)}&.trial,&.trial_expired,&.expired{background:hsla(var(--primary-H), var(--primary-S), var(--primary-L), .2);color:var(--primary)}}.membership-badge{border-radius:2rem;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.8rem;font-weight:700;display:inline-flex;& i{font-size:.7rem}}.membership-expire{opacity:.6;margin:0 .75em 0 .5em;font-size:.75rem;font-weight:700}.btn-primary.btn-subscribe{background:linear-gradient(135deg, var(--primary) 0%, #08f 100%);color:#fff;font-size:.8rem;font-weight:700;&:disabled{opacity:.7;cursor:not-allowed;box-shadow:none;transform:none}}.overall-rows{flex-direction:column;gap:.75em;width:100%;display:flex}.overall-row{justify-content:space-between;align-items:center;gap:.5em;width:100%;padding:.2em .5em;display:flex;&:after{content:"";background-color:var(--bg3);height:5px;image-rendering:smooth;opacity:.65;flex:1 0 auto;order:2;display:block;-webkit-mask-image:url(wavy.svg);mask-image:url(wavy.svg);-webkit-mask-size:10px 5px;mask-size:10px 5px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}}.overall-row-label{flex:none;order:1}.info-button{cursor:pointer;opacity:.5;transition:var(--transition-out);margin-left:4px;font-size:.9em;&:hover{transition:var(--transition-in);opacity:1}}.first-sync-guide{border-radius:12px;grid-template:"icon intro""icon paths""icon note"/1fr 3fr;align-items:start;gap:.55rem .85rem;margin-top:0;padding:.85rem .95rem;display:grid}.first-sync-panel{grid-area:firstsync;align-items:center;display:flex}.first-sync-icon{grid-area:icon;justify-content:center;align-items:center;min-height:100%;display:flex}.first-sync-icon img{object-fit:contain;width:min(100%,240px);height:auto}.first-sync-intro{grid-area:intro;padding-bottom:.6rem}.first-sync-intro p{color:var(--text3);font-size:.9rem;line-height:1.6}.first-sync-guide h3{color:var(--text1);align-items:center;gap:.45rem;margin:0 0 .45rem;font-size:1rem;font-weight:700;display:flex}.first-sync-paths{grid-area:paths;gap:5em;display:flex}.first-sync-path{color:var(--text2);flex:1 0 35%;font-size:.875rem;line-height:1.6}.first-sync-subtitle{color:var(--text2);font-size:1rem;font-weight:700}.first-sync-illustration{background:var(--text8);border-radius:calc(var(--box-radius) / 2);height:13rem;margin:.5em 0 1em;overflow:hidden;&>img{object-fit:cover;width:100%;height:100%}}.first-sync-guide a{color:var(--text1);text-underline-offset:2px;text-decoration:underline 1px wavy;text-decoration-color:var(--primary);font-weight:700;&:hover{color:var(--primary)}}.first-sync-guide em{background:var(--secondary);width:1rem;height:1rem;color:var(--bg0);text-align:center;border-radius:50%;margin-right:.5em;font-size:.7rem;font-weight:700;display:inline-block}.first-sync-note{color:var(--text4);grid-area:note;margin-top:.65rem;padding-top:.55rem;font-size:.8rem;line-height:1.5}.first-sync-bodytext>div{margin-top:.5em}.badges-icons{vertical-align:middle;user-select:none;flex-wrap:wrap;align-items:center;gap:.1em;display:inline-flex}.badge-item{transition:var(--transition);align-items:center;gap:4px;display:inline-flex;position:relative}.badge-item-icon{user-select:none;width:1em;height:1em;transition:var(--transition-out);display:block;.badge-item:hover &{transition:var(--transition-in);z-index:2;scale:1.8}}.badge-item-count{color:#000000b3;backdrop-filter:blur(10px);letter-spacing:-.1em;transition:var(--transition-out);background:#ffffff80;border-radius:2em;margin-left:.1em;padding:.1em .3em;font-size:.6rem;font-weight:700;position:absolute;bottom:-.3em;right:-.3em;.badge-item:hover &{transition:var(--transition-in);z-index:3;bottom:-1em;right:-1em}}.badge-item-tooltip{color:var(--bg0);text-shadow:0 1px 1px hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .8);text-align:center;opacity:0;width:300%;transition:var(--transition-out);z-index:4;pointer-events:none;background:hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .4);backdrop-filter:blur(10px);border-radius:8px;padding:.3em .5em;font-size:.75rem;font-weight:700;position:absolute;bottom:140%;left:-100%;.badge-item:hover &{opacity:1;transition:var(--transition-in)}}.overall-row-value{color:var(--secondary);font-variant-numeric:tabular-nums;order:3;font-size:2rem;font-weight:700}.unit-symbol{opacity:.7;margin-left:.1em;font-size:.5em;.box-list &,.ranking-list &{font-size:.8em}.today-details &{opacity:.5;font-size:1em}}.subscription-status{grid-area:subscription;justify-content:space-between;align-items:center;display:grid}.weekly-summary{text-align:center;min-height:60px;padding:calc(var(--margin) * .75) var(--margin);flex-direction:column;grid-area:summary;justify-content:center;align-items:center;display:flex}.weekly-summary .summary-text{color:var(--text2);padding:.5em .2em .25em;font-size:1.25rem;font-weight:700;line-height:1.4;&:before,&:after{content:"\"";color:var(--secondary);font-size:1.5rem;font-weight:700}&:after{content:"\""}}.weekly-summary .summary-meta{color:var(--text4);justify-content:center;align-items:center;gap:1.5rem;margin-bottom:.5em;font-size:.875rem;display:flex}.weekly-summary .summary-date{color:var(--text4)}.weekly-summary .summary-link{color:var(--primary);transition:var(--transition-out);border-radius:.4em;align-items:center;gap:.35rem;padding:.2em .4em;font-weight:700;display:inline-flex;&:hover{background:hsla(var(--primary-H), var(--primary-S), var(--primary-L), .1);transition:var(--transition-in)}& i{transition:var(--transition-out);transform-origin:0}&:hover i{transition:var(--transition-in);transform:translate(1px)scaleX(1.1)scaleY(.8)}}.today{grid-area:today;justify-content:space-around;padding-top:0;padding-bottom:0;display:flex}.history{grid-area:history;justify-content:center;display:flex}.stat-card.today-rate{flex:none;grid-template-columns:5rem 1fr;grid-template-areas:"icon label""icon value"".details"}@media (width<=768px){.stat-card.today-rate{grid-template-columns:auto auto auto;grid-template-areas:"icon label.""icon value details";margin-bottom:0}}.stat-card.today-chart-card{gap:calc(var(--margin) / 1);flex-direction:column;flex:0 0 66.6%;justify-content:center;padding-left:0;padding-right:0;display:flex}.stat-card.today-chart-card #todayIdleRateChart,.stat-card.today-chart-card .empty-state{width:100%!important}.today-details{color:var(--text3);flex-direction:column;grid-area:details;gap:.5em;font-size:.75rem;display:flex;&>span{align-items:center;gap:.2em;display:inline-flex}&>span.today-details-focus>strong{color:var(--primary)}&>span.today-details-idle>strong{color:var(--secondary)}}.chart-card{grid-area:chart}.box-header{justify-content:space-between;align-items:center;gap:var(--margin);margin-bottom:12px;display:flex}.box-title-hint{color:var(--text3);margin-bottom:1em}.chart-content{display:none}.chart-card:has(#view-week:checked) .chart-weekly,.chart-card:has(#view-month:checked) .chart-monthly,.chart-card:has(#view-year:checked) .chart-yearly{display:block}#weeklyStackedChart{align-content:center;height:240px}#weeklyStackedChart .apexcharts-bar-area{transform-box:fill-box;transform-origin:50% 100%}#weeklyStackedChart .weekly-bar-animate{animation:weekly-bar-pop .58s var(--curve-in) var(--weekly-bar-delay,0s) both}@keyframes weekly-bar-pop{0%{opacity:.2;transform:scaleY(0)}72%{opacity:1;transform:scaleY(1.06)}to{opacity:1;transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){#weeklyStackedChart .weekly-bar-animate{animation:none}}.chart-card:has(#view-week:checked) .tab-group label[for=view-week],.chart-card:has(#view-month:checked) .tab-group label[for=view-month],.chart-card:has(#view-year:checked) .tab-group label[for=view-year]{background:var(--secondary);color:var(--bg0)}.apexcharts-text{color:var(--text4);& *{color:currentColor}}.chart-legend{margin:var(--margin) 0 0;justify-content:center;align-items:center;gap:1.5em;font-size:.875rem;display:flex}.legend-item{align-items:center;gap:.5em;display:flex}.legend-dot{border-radius:50%;width:.75em;height:.75em;display:inline-block}.legend-dot-focus{background:var(--primary)}.legend-dot-idle{background:var(--secondary)}.legend-label{color:var(--text2);font-weight:500}.month-calendar{gap:calc(var(--margin) / 2);background:var(--bg1);padding:calc(var(--margin) / 2);border-radius:calc(var(--box-radius) / 2.5);flex-direction:column;display:flex}.calendar-grid{gap:calc(var(--margin) / 4);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-header{margin-bottom:0}.calendar-header-cell{text-align:center;color:var(--text2);font-size:.75rem}.calendar-body .day{aspect-ratio:3/2;border-radius:calc(var(--box-radius) / 5);background:var(--bg0);transition:var(--transition-out);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.calendar-body .day .date{color:var(--text4);font-size:.7rem;position:absolute;top:6px;left:6px}.calendar-body .day .rings{width:50%;height:70%;transition:var(--transition-out);position:absolute;bottom:15%;right:.5em}.calendar-body .day:hover .rings{transition:var(--transition-in)}.ring-bg{stroke:var(--bg1);stroke-width:5px;fill:none}.calendar-body .day .ring-bg,.calendar-body .day .ring-bg-inner{opacity:.15}.calendar-body .day .ring-outer,.calendar-body .day .ring-inner{stroke-linecap:round;animation:dasharray .5s var(--curve-in) calc(var(--n) * 13ms) both;transition:stroke-dasharray .3s}.ring-outer{stroke:var(--primary);stroke-width:5px;fill:none}@keyframes dasharray{0%{stroke-dasharray:0 var(--dasharray2)}to{stroke-dasharray:var(--dasharray1) var(--dasharray2)}}.ring-inner{stroke:var(--secondary);stroke-width:5px;fill:none}.ring-bg-inner{stroke:var(--bg1);stroke-width:5px;fill:none}.ring-label{fill:var(--text2);user-select:none;text-anchor:middle;dominant-baseline:central}.calendar-body .day .ring-label{fill:var(--text2);user-select:none;font-size:10px;font-weight:700;& .unit-symbol{font-size:.8em}}.calendar-body .day.no-time .rings{display:none}.calendar-body .day.is-today{outline:2px solid hsla(var(--primary-H), var(--primary-S), var(--primary-L), .6);outline-offset:-2px}.calendar-body .day.is-future{opacity:.25}@media (width<=900px){.calendar-grid{gap:6px}.calendar-body .day .date{font-size:.65rem}.calendar-body .day .rings{width:40px;height:40px}.calendar-body .day .ring-label{font-size:9px}.box-header{flex-wrap:wrap;gap:.5rem}}.year-contributions{--year-day-size:11px;--year-day-gap:2.5px;--year-week-width:calc(var(--year-day-size) + var(--year-day-gap));gap:calc(var(--margin) / 4);background:var(--bg1);padding:calc(var(--margin) / 2) calc(var(--margin) / 2) var(--margin);border-radius:calc(var(--box-radius) / 2.5);flex-direction:column;display:flex;overflow-x:auto}.year-months{gap:calc(var(--margin) / 4);align-items:flex-start;min-height:1.2em;display:flex}.year-weekday-labels-placeholder{flex-shrink:0}.year-month-labels{gap:var(--year-day-gap);flex:auto;min-width:0;display:flex}.year-month-label{color:var(--text3);text-align:left;white-space:nowrap;width:var(--year-day-size);flex-shrink:0;font-size:.75rem}.year-grid-wrapper{gap:calc(var(--margin) / 4);display:flex}.year-weekday-labels,.year-weekday-labels-placeholder{width:1.2em;padding-right:calc(var(--margin) / 4)}.year-weekday-labels{gap:var(--year-day-gap);flex-direction:column;justify-content:space-between;display:flex}.year-weekday-label{color:var(--text3);height:var(--year-day-size);font-size:.7rem;line-height:var(--year-day-size);text-align:right}.year-contributions-grid{gap:var(--year-day-gap);flex-wrap:nowrap;flex:1;min-width:0;display:flex}.year-week{gap:var(--year-day-gap);flex-direction:column;display:flex}.year-day{width:var(--year-day-size);height:var(--year-day-size);border-radius:calc(var(--box-radius) / 8);background:var(--bg0);cursor:pointer;transition:var(--transition-out);animation:dayShow .5s var(--curve-in) calc(var(--n) * 4ms) both;flex-direction:column;display:flex;overflow:hidden;&.level-1{background:color-mix(in srgb-linear, var(--primary) 100%, var(--secondary) 0%)}&.level-2{background:color-mix(in srgb-linear, var(--primary) 67%, var(--secondary) 33%)}&.level-3{background:color-mix(in srgb-linear, var(--primary) 33%, var(--secondary) 67%)}&.level-4{background:color-mix(in srgb-linear, var(--primary) 0%, var(--secondary) 100%)}}@keyframes dayShow{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}.year-day:hover{transition:var(--transition-in);z-index:10;transform:scale(1.2);box-shadow:0 2px 8px #00000026}.year-day.no-data{background:var(--bg0);cursor:default;pointer-events:none}.year-day.no-data:hover{box-shadow:none;transform:none}.year-day.is-today{outline:2px solid hsla(var(--primary-H), var(--primary-S), var(--primary-L), .8);outline-offset:1px}.year-day.is-future{opacity:.25}@media (width<=900px){.year-contributions{--year-day-size:8px;--year-day-gap:2px;padding:calc(var(--margin) / 2)}.year-day{width:var(--year-day-size);height:var(--year-day-size)}.year-weekday-label{height:var(--year-day-size);font-size:.65rem;line-height:var(--year-day-size)}.year-month-label{font-size:.7rem}.year-contributions-grid,.year-week{gap:var(--year-day-gap)}}.apps-card{flex-direction:column;grid-area:apps;align-items:stretch;display:flex;&>.inner{display:contents}}.app-list-wrapper{flex:auto;position:relative;&:after{content:"";background:linear-gradient(to bottom, #fff0, var(--bg0));pointer-events:none;width:100%;height:3rem;display:block;position:absolute;bottom:0;left:0}}.app-list-wrapper>.box-list{width:100%;height:100%;padding-bottom:2rem;font-size:.875rem;position:absolute;top:0;left:0;overflow-y:auto}.apps-card .list-value{font-weight:700;transition:opacity .15s}.apps-card .working .list-value{color:var(--primary)}.apps-card .cat-actions{opacity:0;pointer-events:none;transition:var(--transition-out);z-index:2;background:var(--text7);box-shadow:-4px 0 0 var(--bg0);border-radius:.6rem;gap:.25rem;padding:.25rem;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.apps-card li{position:relative}.apps-card li:hover .cat-actions{opacity:1;pointer-events:auto;transition:var(--transition-in)}.apps-card li:hover .list-value{opacity:0}.cat-btn{background:var(--text5);color:var(--text2);cursor:pointer;border:none;border-radius:.35rem;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;font-size:.65rem;transition:background .15s,color .15s,transform .1s;display:flex;&:hover{transform:scale(1.15)}}.cat-btn-work.active,.cat-btn-work:hover{background:var(--primary);color:var(--bg0)}.cat-btn-idle.active,.cat-btn-idle:hover{background:var(--secondary);color:var(--bg0)}.cat-btn-ignore:hover{background:var(--color-warning);color:var(--bg0)}.cat-btn.loading{opacity:.5;pointer-events:none}.ignored-footer{background:var(--bg0);border-radius:0 0 calc(var(--box-radius) / 2) calc(var(--box-radius) / 2);z-index:2;width:100%;transition:var(--transition-out);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;bottom:0;left:0;&.open{box-shadow:0 0 0 8px var(--bg0), 0 -4px 16px 8px #00000014;border-radius:calc(var(--box-radius) / 2);transition:var(--transition-in)}}.ignored-toggle{color:var(--text3);cursor:pointer;z-index:11;align-items:center;gap:.35rem;padding:.5rem 0;font-size:.8rem;text-decoration:none;display:flex;&:hover{color:var(--text1)}}.ignored-arrow{margin-left:auto;font-size:.6rem;transition:transform .2s}.ignored-panel{opacity:0;max-height:0;transition:max-height .3s;transition:var(--transition-out);border-bottom:1px solid #0000;overflow:hidden;&.open{opacity:1;max-height:20rem;transition:var(--transition-in);border-bottom-color:var(--text5);overflow-y:auto}& .box-list{padding:.25rem 0;font-size:.8rem}& li{gap:.5rem}}.cat-btn-restore{color:var(--text3);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:.25rem;order:3;align-items:center;gap:.25rem;width:auto;padding:.15rem .5rem;font-size:.75rem;display:flex;&:hover{background:var(--bg2);color:var(--text1)}}.apps-card li.fade-out{opacity:0;max-height:0;margin:0;padding:0;transition:opacity .2s,max-height .25s .1s;overflow:hidden}.leaderboard{z-index:1;grid-column:1/span 3}.tabs{gap:calc(var(--margin) * 1);flex-direction:column;display:flex}.tab-switcher{align-items:center;gap:calc(var(--margin) / 1);user-select:none;margin:0 auto;font-size:.875rem;display:flex;.box-header>&{margin-left:auto;margin-right:unset;font-size:.75rem}}.tab-group{background:hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .1);background:var(--bg1);border:1px solid #0000;border-radius:3em;align-items:center;gap:.25em;padding:.25em;display:flex}.tab-btn{cursor:pointer;transition:var(--transition-out);color:var(--text1);background:0 0;border:none;border-radius:3em;justify-content:center;align-items:center;gap:.5em;padding:.5em 1em;font-family:inherit;font-weight:700;display:flex;& i{opacity:.5;max-width:0;transition:var(--transition-out);scale:0}&.active>i{opacity:.6;max-width:1em;transition:var(--transition-in);color:var(--bg0);font-weight:400;scale:1}&:hover{color:var(--secondary);transition:var(--transition-in)}&:active{color:var(--text1);transition:var(--transition-in);scale:.98}}.tab-btn.active{background:var(--secondary);color:var(--bg0);transition:var(--transition-in);pointer-events:none;border-color:#0000;animation:.2s scale-in}@keyframes scale-in{0%{transform:none}33%{transform:scaleX(1.1)scaleY(.95)}67%{transform:scaleX(.97)scaleY(1.05)}to{transform:none}}.tab-panels{display:block}.tab-panel{gap:calc(var(--margin) * 1);flex-direction:column;display:flex;@media (width>=768px){padding:0 var(--margin)}}.tab-panel[hidden]{display:none!important}.tab-panel.active{display:flex}#leaderboard-page .dashboard>.inner{grid-template-rows:auto auto auto auto 1fr;grid-template-areas:"nav nav nav""leaderboard leaderboard privacy-notice""leaderboard leaderboard my-stats""leaderboard leaderboard badge-leaderboard""leaderboard leaderboard policies""leaderboard leaderboard."}.leaderboard-privacy-notice{grid-area:privacy-notice;& a{color:var(--text1);text-underline-offset:.2em;text-decoration:underline}& a:hover{color:var(--primary)}}.demo-fixed-notice{z-index:80;background:var(--primary);max-width:15em;box-shadow:var(--menu-shadow);color:var(--bg0);text-align:center;border-radius:1rem 0 0 1rem;padding:.8rem .6rem .8rem 1rem;font-size:1rem;line-height:1.6;position:fixed;top:45vh;right:0;& .btn.btn-primary{background:var(--bg0);color:var(--primary);margin-top:.5rem;font-size:.875rem}}@media (width<=900px){.demo-fixed-notice{max-width:none;min-width:unset;color:var(--bg0);border:1px solid var(--secondary);background:var(--secondary);backdrop-filter:blur(10px);border-radius:1rem;font-size:1rem;inset:auto 20vw 1rem;& .btn.btn-primary{background:var(--bg0);color:var(--secondary)}#aquarium &{background:#0000004d;border:none;bottom:6rem}}}.my-week-stats{grid-area:my-stats;& .list-value{font-weight:700}}.leaderboard-policies{grid-area:policies;& .box-list li:after{opacity:0}}.leaderboard-description{margin-bottom:calc(var(--margin) * 1);padding:calc(var(--margin) * .75);background:var(--bg1);border-radius:calc(var(--box-radius) * .5);color:var(--text2);text-align:center;align-self:center;font-size:.875rem;& i{color:var(--bg5);margin-right:.5em}}.leaderboard{grid-area:leaderboard}.ranking-list{font-variant-numeric:tabular-nums;list-style:none}.ranking-list li{gap:calc(var(--margin) / 2);grid-template-columns:2em auto 1fr max-content;align-items:center;padding:10px 0;display:grid}.ranking-list .spacer{background-color:var(--bg3);opacity:.65;height:5px;image-rendering:smooth;flex:1 0 auto;-webkit-mask-image:url(wavy.svg);mask-image:url(wavy.svg);-webkit-mask-size:10px 5px;mask-size:10px 5px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.ranking-list .rank{color:var(--text5);text-align:left;font-weight:700}.ranking-list li.top-3 .rank{color:var(--primary)}.ranking-list .name{align-items:center;gap:12px;min-width:0;display:flex}.ranking-list li.top-3 .name{font-weight:700}.ranking-list .name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ranking-list .value{color:var(--secondary);font-weight:700}.ranking-list li.top-3 .value{color:var(--primary)}.ranking-list .avatar{background:var(--bg1);width:36px;height:36px;color:var(--bg9);transition:var(--transition-out);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:inline-flex}.paid-member-avatar{position:relative}.paid-member-mark{z-index:2;border:2px solid var(--bg0);color:#6f4300;background:linear-gradient(135deg,#ffe381,#f5b83f);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:9px;line-height:1;display:inline-flex;position:absolute;top:-4px;right:-6px}.nav-user-btn.paid-member-avatar:hover{border-color:#f5c542}.ranking-list li:hover .avatar{box-shadow:0 0 0 2px var(--bg4);transition:var(--transition-in);scale:1.05}.ranking-list .avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%}.ranking-list .avatar-initial{font-weight:700;display:inline-block}.ranking-list .ellipsis-separator{grid-column:1/-1;justify-content:center;align-items:center;padding:.5em 1em;display:flex}.ranking-list .ellipsis{background:var(--bg1);color:var(--bg5);border-radius:2em;padding:0 .6em;font-size:1em;font-weight:700}.user-with-badges{position:relative}.badges-tooltip{background:var(--bg0);box-shadow:var(--menu-shadow);z-index:1000;opacity:0;transform-origin:0 0;min-width:280px;max-width:400px;transition:var(--transition-out);pointer-events:none;--arrow-left:-4px;--arrow-right:auto;border-radius:12px;padding:16px;transition-delay:.1s;position:absolute;top:-4px;left:48px;translate:8px;.dark-mode &{background:var(--bg1)}.ranking-list>li:hover &{opacity:1;visibility:visible;pointer-events:auto;transition:var(--transition-in);translate:0;scale:1}&:before{content:"";top:16px;left:var(--arrow-left);right:var(--arrow-right);background:var(--bg0);width:12px;height:12px;box-shadow:-2px 2px 2px hsla(var(--secondary-H), var(--secondary-S), var(--secondary-L), .1);border-radius:2px;position:absolute;transform:rotate(45deg)}.dark-mode &:before{background:var(--bg1);box-shadow:none}}.badges-tooltip-header{color:var(--text2);& .user-bio{padding-top:.5em;font-size:.75rem;font-weight:400;line-height:1.5}}.badges-tooltip-title{font-size:.875rem;font-weight:700}.user-bio-markdown{& p{margin:0 0 .45em}& p:last-child{margin-bottom:0}& h1,& h2,& h3,& h4,& h5,& h6{margin:.2em 0 .35em;font-size:.85rem;line-height:1.35}& ul,& ol{margin:.45em 0 0;padding-left:1.25em}& li{margin:.15em 0}& blockquote{border-left:3px solid var(--text5);color:var(--text3);margin:.5em 0 0;padding-left:.75em}& code{background:var(--bg2);border-radius:4px;padding:.1em .35em;font-size:.9em}& pre{background:var(--bg2);border-radius:6px;margin:.5em 0 0;padding:.6em;overflow-x:auto}& a{color:var(--text1);text-underline-offset:2px;text-decoration:underline wavy;text-decoration-color:var(--primary);font-weight:700}& a:hover{color:var(--primary)}}.badges-tooltip-content{flex-direction:column;gap:12px;display:flex;& .badges-section{border-top:1px dotted var(--text5);flex-wrap:wrap;align-items:center;gap:12px;margin-top:1em;padding-top:1em;display:flex}& .badge-item{transition:var(--transition);align-items:center;gap:4px;display:inline-flex;position:relative}& .badge-item-icon{user-select:none;width:48px;height:48px;transition:var(--transition-out);display:block;.badge-item:hover &{transition:var(--transition-in);z-index:2;scale:1.15}}}.badge-leaderboard{z-index:1;grid-area:badge-leaderboard}@media (width<=768px){.badges-tooltip{min-width:240px;max-width:calc(100vw - 40px)}.badges-tooltip-content .badge-item-icon{width:40px;height:40px}}@media (hover:none) and (pointer:coarse){.user-with-badges{-webkit-tap-highlight-color:transparent}.user-with-badges.active .badges-tooltip{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}}.leaderboard .no-data{color:var(--text4);text-align:center;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1em;width:100%;padding:2em 1em;display:flex;&>i{color:var(--text6);font-size:3em}}.box-list{font-variant-numeric:tabular-nums;flex-direction:column;gap:.75em;margin:0;padding:0;list-style:outside;display:flex}.box-list li{justify-content:space-between;align-items:center;gap:.5em;display:flex;&:before{content:"";background:var(--primary);width:.35em;height:.35em;color:var(--primary);border-radius:100%;display:inline-block}&:after{content:"";background-color:var(--bg3);height:5px;image-rendering:smooth;opacity:.65;transition:var(--transition-out);flex:1 0 auto;order:2;display:block;-webkit-mask-image:url(wavy.svg);mask-image:url(wavy.svg);-webkit-mask-size:10px 5px;mask-size:10px 5px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}&:hover:after{background:var(--bg8);transition:var(--transition-in)}.no-value-list &:after{border:none}}.box-list li:hover .list-label{font-weight:700}.box-list .list-value{color:var(--secondary);order:3}.stat-card{gap:calc(var(--margin) / 2) calc(var(--margin) * 1);padding-left:2rem;padding:var(--margin);text-align:center;transition:var(--transition-in);flex:1 0 auto;grid-template-columns:5rem 1fr;grid-template-areas:"icon label""icon value";align-items:center;display:grid}.stat-icon{background:var(--bg0);border-radius:50%;grid-area:icon;justify-content:center;align-items:center;width:5rem;height:5rem;font-size:1.5em;display:flex;position:relative;overflow:hidden;& img{object-fit:cover;z-index:1;width:80%;height:80%}}.stat-icon .icon-base{object-fit:cover;filter:blur(20px)saturate(1.3);opacity:.45;z-index:0;width:140%;height:140%;position:absolute;top:-20%;left:-20%}.stat-value{color:var(--primary);text-align:left;grid-area:value;align-self:start;font-size:2em;font-weight:700}.today-rate.level-1 .stat-value{color:var(--color-l1)}.today-rate.level-2 .stat-value{color:var(--color-l2)}.today-rate.level-3 .stat-value{color:var(--color-l3)}.today-rate.level-4 .stat-value{color:var(--color-l4)}.today-rate.level-5 .stat-value{color:var(--color-l5)}.today-rate.level-6 .stat-value{color:var(--color-l6)}.today-rate.level-7 .stat-value{color:var(--color-l7)}.today-rate.level-8 .stat-value{color:var(--color-l8)}.today-rate.level-9 .stat-value{color:var(--color-l9)}.today-rate.level-10 .stat-value{color:var(--color-l10)}.stat-label{color:var(--text4);text-align:left;grid-area:label;align-self:end;font-size:1rem}.btn{background:var(--secondary);color:var(--bg0);transition:var(--transition-out);cursor:pointer;user-select:none;border:none;border-radius:25px;padding:.6em 1.1em;font-size:1em;font-weight:700;text-decoration:none;display:inline-block;&.btn-primary{background:var(--primary)}&.btn-secondary{background:var(--text4);color:var(--bg0)}&.btn-ghost{color:var(--text1);border:1px solid var(--text5);background:0 0}&:hover{filter:brightness(1.1);transition:var(--transition-in);color:var(--bg0);scale:1.02}&:active{transition:var(--transition-in);filter:brightness(.9);scale:.98}&>.fa-solid{margin-right:.25em}}.text-box{border:1px solid var(--text5);background:var(--bg0);transition:var(--transition-out);color:var(--text2);border-radius:.5em;padding:.6em .75em;font-family:inherit;&:hover{border-color:var(--secondary);transition:var(--transition-in)}&:focus{border-color:var(--primary);background:var(--bg0);transition:var(--transition-in);outline:none}&:focus::placeholder{opacity:0}&:read-only{background:var(--text6);border-color:var(--text6)}&::placeholder{color:var(--text7);transition:var(--transition-in)}}.form-tabs{margin-bottom:30px;display:flex}.alert{border-radius:10px;margin-bottom:20px;padding:15px;font-size:.9em}.alert-error{color:#c33;background:#fee;border:1px solid #fcc}.alert-success{color:#363;background:#efe;border:1px solid #cfc}.auth-form-footer{text-align:center;border-top:1px solid var(--bg3);margin-top:30px;padding-top:20px}.auth-form-footer a:hover{text-decoration:underline}.tab-item{cursor:pointer;border:none;border-bottom:2px solid hsla(var(--primary-H), var(--primary-S), var(--primary-L), .2);color:var(--text2);transition:all .3s;transition:var(--transition-out);background:0 0;flex:1;padding:15px;font-size:1.1em;font-weight:700;&:hover{color:var(--primary);transition:var(--transition-in)}}.tab-item.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-content{display:none}.tab-content.active{display:block}#login-page body{background:var(--bg1);justify-content:center;align-items:center;min-height:100vh;display:flex}.submit-btn{width:100%;margin-top:1em}.third-party-divider{color:var(--text5);align-items:center;gap:1em;margin:1.5em 0 1em;font-size:.85em;display:flex;&:before,&:after{content:"";background:var(--text7);flex:1;height:1px}}.third-party-btn{text-align:center;background:var(--bg2);color:var(--text2);display:block;&+.third-party-btn{margin-top:.6em}&:hover{color:var(--text1)}}.github-login-btn .github-mark{vertical-align:-.15em;width:1em;height:1em;margin-right:.4em}.email-verify-hint{cursor:help;margin-left:.35em;font-size:.9em}.email-verify-hint.verified{color:#39ac60}.email-verify-hint.unverified{color:#e6861a}.auth-container{background:var(--bg0);box-shadow:var(--box-shadow);border-radius:32px;grid-template-columns:1fr 1fr;width:100%;max-width:900px;min-height:600px;display:grid;overflow:hidden}.auth-brand{background:var(--bg3);color:var(--bg0);text-align:center;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.auth-brand:before{content:"";background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><defs><pattern id=\"fish\" patternUnits=\"userSpaceOnUse\" width=\"20\" height=\"20\"><circle cx=\"10\" cy=\"10\" r=\"2\" fill=\"rgba(255,255,255,0.1)\"/></pattern></defs><rect width=\"100\" height=\"100\" fill=\"url(%23fish)\"/></svg>");width:200%;height:200%;animation:20s linear infinite float;position:absolute;top:-50%;left:-50%}@keyframes float{0%{transform:translate(-100px)translateY(-100px)}to{transform:translate(100px)translateY(100px)}}.auth-brand-content{z-index:1;position:relative}.auth-brand-banner{object-fit:cover;width:100%;height:100%}.auth-brand-title{margin-bottom:15px;font-family:title,yuanti sc,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:3em;font-weight:400;position:absolute;bottom:4rem;left:3rem;right:3rem}.auth-brand-subtitle{opacity:.9;font-size:1.1em;line-height:1.6}.auth-form{padding:calc(var(--margin) * 1) calc(var(--margin) * 3) calc(var(--margin) * 3);flex-direction:column;justify-content:center;display:flex}#settings-page .dashboard>.inner{grid-template:"nav nav nav"min-content"avatar subscription password"min-content"avatar privacy password"min-content"avatar privacy info"min-content"sessions sessions info""sessions sessions data"1fr/6fr 8fr 7fr}#settings-page .avatar{grid-area:avatar}#settings-page .info{grid-area:info}#settings-page .privacy{grid-area:privacy}#settings-page .password{grid-area:password}#settings-page .sessions{grid-area:sessions}#settings-page .data{grid-area:data;& .box-list>li:after{opacity:0}}#settings-page .subscription{grid-area:subscription}.sessions-logout{padding-top:1rem}.subscription-status{grid-template-columns:auto 1fr auto;grid-template-areas:"badge.btn""hint hint price";align-items:center;gap:.5rem;padding:.5rem 0;display:grid}.subscription-badge{border-radius:8px;grid-area:badge;align-items:center;gap:.4rem;padding:.4rem .8rem;font-size:1.1rem;font-weight:700;display:flex}.subscription-badge.trial{color:var(--primary);background:hsla(var(--primary-H), var(--primary-S), var(--primary-L), .1)}.subscription-badge.pro{color:#6f4300;background:linear-gradient(135deg,#ffe381,#f5b83f)}.subscription-badge.expiring{color:#e07b2a;background:#e07b2a1a}.subscription-badge.expired{color:var(--secondary);background:var(--bg2)}.subscription-hint{color:var(--text3);grid-area:hint;font-size:.875rem}.subscription-price{color:var(--text3);text-align:center;grid-area:price;font-size:.875rem;font-weight:700}.subscription-status .btn-subscribe{grid-area:btn;font-size:1rem}.box.avatar{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:1em;display:flex}.avatar-preview-section{flex-direction:column;align-items:center;gap:1rem;width:100%;display:flex;position:relative}.avatar-preview{border:3px solid var(--text6);width:120px;height:120px;color:var(--secondary);border-radius:50%;overflow:hidden}.avatar-preview.paid-member-avatar,.avatar-placeholder.paid-member-avatar{overflow:visible}.avatar-preview.paid-member-avatar .paid-member-mark,.avatar-placeholder.paid-member-avatar .paid-member-mark{width:28px;height:28px;font-size:14px;bottom:4px;right:2px}.avatar-preview img{object-fit:cover;border-radius:50%;width:100%;height:100%}.avatar-delete-form{z-index:1;justify-content:center;align-items:center;width:100%;height:120px;display:flex;position:absolute;top:0;left:0;translate:-50px -50px}.avatar-actions{flex-direction:column;gap:.5em;width:100%;display:flex}.avatar-upload-form{width:100%}.file-input-wrapper{justify-content:center;align-items:center;gap:.5em;display:flex}.file-input-wrapper label{cursor:pointer;margin:0}.avatar-empty-section{flex-direction:column;flex:1 0 auto;align-items:center;gap:1em;display:flex}.avatar-placeholder{background:var(--text7);width:120px;height:120px;color:var(--text5);border:2px dashed var(--text5);border-radius:50%;justify-content:center;align-items:center;display:flex}.hint-text{color:var(--text4);text-align:center;flex-direction:column;flex:1 0 auto;place-content:center flex-end;width:100%;margin:.5rem 0 0;font-size:.875rem;display:flex}.form-group{margin-bottom:.5em}.form-label{color:var(--text3);transition:var(--transition-out);margin-bottom:.5em;font-weight:400;display:inline-block;.form-group:focus-within &{color:var(--text1);transition:var(--transition-in)}& i{color:var(--text5);transition:var(--transition-out);margin-right:.2em}.form-group:focus-within & i{color:var(--text3);transition:var(--transition-in)}}.form-input{border:2px solid var(--text6);width:100%;transition:var(--transition-out);background:var(--text10);color:var(--text2);border-radius:10px;padding:.9em;font-size:1em;&:hover{border-color:var(--primary);transition:var(--transition-in)}&:focus{border-color:var(--primary);background:var(--bg0);transition:var(--transition-in);outline:none}&:read-only{background:var(--text6);border-color:var(--text6)}&::placeholder{color:var(--text5);font-weight:400}}.toast-container{z-index:10000;pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.toast{background:var(--bg0);color:var(--text2);border-radius:var(--box-radius);border:4px solid var(--bg0);border-top:unset;box-shadow:var(--menu-shadow);pointer-events:auto;opacity:0;min-width:300px;max-width:500px;transition:var(--transition-out);border-top-left-radius:0;border-top-right-radius:0;align-items:center;gap:.75rem;padding:1em 1.5em;font-size:1rem;font-weight:700;display:flex;transform:translateY(-20px)}.toast.show{opacity:1;transition:var(--transition-in);transform:translateY(0)}.toast.hide{opacity:0;transition:var(--transition-out);transform:translateY(-20px)}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.toast-message{flex:1;line-height:1.5}.toast-close{color:var(--text4);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:4px;font-size:18px;line-height:1;transition:all .2s;display:flex}.toast-close:hover{background:var(--primary);color:var(--bg0)}.toast.success{border-color:#10b981}.toast.success .toast-icon{color:#10b981;background:#10b9811a}.toast.error{border-color:#ef4444}.toast.error .toast-icon{color:#ef4444;background:#ef44441a}.toast.info{border-color:var(--primary)}.toast.info .toast-icon{color:var(--primary);background:#00adff1a}.toast.warning{border-color:#f59e0b}.toast.warning .toast-icon{color:#f59e0b;background:#f59e0b1a}.box-list .app-item-hidden{display:none!important}.box-list.expanded .app-item-hidden{display:flex!important}.box-list li:not(.working):before{background-color:var(--secondary)}.app-more-wrapper{justify-content:center;margin-top:.75rem;padding:1rem 0 .5rem;display:flex}.app-more-btn .more-icon{font-size:.75rem;transition:transform .3s}@media (width<=900px){.mobile-hide{display:none}.dashboard>.inner{gap:var(--margin);flex-direction:column;display:flex}.nav{font-size:.75rem}.nav-right{min-width:unset}.nav-center{gap:.75em;margin:0 0 0 .5em}.today,.history{flex-direction:column}.user-info{text-align:center;margin-top:20px;position:static}.tab-group{flex-wrap:wrap;justify-content:center;gap:.2em .5em}.tab-btn{padding:.3em .6em}.app-list-wrapper{height:25vh}.apps-card li.cat-open .cat-actions{opacity:1;pointer-events:auto}.apps-card li.cat-open .list-value{opacity:0}.auth-container{margin:0 1rem;display:block}.auth-brand{height:20vh}.auth-brand-content{height:100%}.auth-brand-title{bottom:1rem}.auth-form{padding:1rem 2rem 2rem}}@media (width<=768px){.toast-container{top:10px;left:10px;right:10px;transform:none}.toast{min-width:unset;width:100%}}.app-footer{padding:var(--margin) var(--margin) calc(var(--margin) * 2);text-align:center;color:var(--text3);font-size:.75rem}.app-footer-inner{gap:calc(var(--margin) / 2);flex-direction:column;max-width:1200px;margin:0 auto;display:flex}.app-footer-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:.5em;display:flex}.app-footer-links a{color:var(--text3);transition:var(--transition-out)}.app-footer-links a:hover{color:var(--primary);transition:var(--transition-in)}.app-footer-links em{opacity:.5;font-style:normal}.app-footer-copy a{color:var(--text3);transition:var(--transition-out);text-decoration:none}.app-footer-copy a:hover{color:var(--primary);transition:var(--transition-in)}.modal{z-index:1000;opacity:0;visibility:hidden;transition:var(--transition);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[aria-hidden=false]{opacity:1;visibility:visible;pointer-events:auto}.modal-backdrop{backdrop-filter:blur(4px);background:#00000080;position:fixed;inset:0}.modal-dialog{background:var(--bg0);border-radius:var(--box-radius);width:calc(100% - 2rem);max-width:600px;max-height:80vh;transition:var(--transition);z-index:1001;flex-direction:column;display:flex;position:relative;transform:scale(.9);box-shadow:0 20px 60px #0000004d}.modal[aria-hidden=false] .modal-dialog{transform:scale(1)}.modal-header{padding:calc(var(--margin) * 1.5);border-bottom:1px solid var(--bg2);flex:none;justify-content:space-between;align-items:center;gap:1rem;display:flex}.modal-title{color:var(--text1);font-size:1.5rem;font-weight:700}.modal-close{appearance:none;color:var(--text4);cursor:pointer;width:2rem;height:2rem;transition:var(--transition-out);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:2rem;line-height:1;display:flex}.modal-close:hover{background:var(--primary);color:var(--bg0);transition:var(--transition-in)}.modal-content{padding:calc(var(--margin) * 1.5);color:var(--text2);flex:auto;line-height:1.8;overflow-y:auto}.modal-content-center{text-align:center}.contact-card{background:var(--bg1);border-radius:calc(var(--box-radius) - 4px);grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);align-items:center;gap:1.25rem;padding:.5rem .5rem .5rem 1rem;display:grid}.contact-card-copy{font-size:1rem}.contact-card-title{color:var(--text1);font-weight:700;line-height:1.5}.footer-modal-qr{border-radius:.5rem;width:min(100%,280px);display:block}.contact-card-qr{width:min(100%,220px)}.modal-content h3{color:var(--text1);margin-top:1.5rem;margin-bottom:.75rem;font-size:1.2rem;font-weight:700}.modal-content h3:first-child{margin-top:0}.modal-content p{margin-bottom:1rem}.modal-content ul{margin-bottom:1rem;padding-left:1.5rem}.modal-content li{margin-bottom:.5rem}.modal-content a{color:var(--primary);text-underline-offset:.2em;text-decoration:underline}.modal-content a:hover{color:var(--secondary)}@media (width<=768px){.calendar-body .day{aspect-ratio:2/3;position:relative;& .rings{width:80%;bottom:.2em;left:10%}}.modal-dialog{max-width:calc(100% - 1rem)}.modal-header,.modal-content{padding:var(--margin)}.modal-title{font-size:1.25rem}.contact-card{grid-template-columns:1fr;padding:.875rem}.contact-card-copy{text-align:left}}#modal-points .points-rules{flex-direction:column;gap:1rem;display:flex}#modal-points .rule-item{background:var(--bg1);border-radius:12px;align-items:center;gap:1rem;padding:.75rem;display:flex}#modal-points .rule-icon{background:var(--bg0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:3rem;height:3rem;padding:6px;display:flex}#modal-points .rule-icon-img{object-fit:contain;width:100%;height:100%}#modal-points .rule-info{flex:1}#modal-points .rule-title{color:var(--text1);margin-bottom:.2em;font-weight:700}#modal-points .rule-desc{color:var(--text3);font-size:.875rem;line-height:1.4}#modal-points .rule-points{color:var(--secondary);font-size:1.1rem;font-weight:700}.expired-blur{position:relative;overflow:hidden}.expired-blur>:not(.expired-lock),.expired-blur.apps-card :is(.box-header,.app-list-wrapper){filter:blur(4px);opacity:.6;pointer-events:none}.expired-lock{color:var(--secondary);letter-spacing:.02em;z-index:2;background:#000000b3;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;top:12px;right:12px}@font-face{font-family:title;src:url(momoyu-title.woff2)format("woff2");font-display:block;font-weight:400}@font-face{font-family:snpro;src:url(snpro-semibold.woff2)format("woff2");font-display:auto;font-weight:700}@font-face{font-family:snpro;src:url(snpro-light.woff2)format("woff2");font-display:auto;font-weight:400}@font-face{font-family:snpro;src:url(snpro-extrabold.woff2)format("woff2");font-display:auto;font-weight:900}#reports-page .timeline-end{color:var(--text4);letter-spacing:.18em;text-transform:uppercase;user-select:none;justify-content:center;align-items:center;gap:.8rem;margin-top:1rem;font-size:.76rem;font-weight:700;display:flex}#reports-page .timeline-end:before,#reports-page .timeline-end:after{content:"";background:linear-gradient(90deg, transparent, var(--text5));width:clamp(38px,10vw,88px);height:1px}#reports-page .timeline-end:after{background:linear-gradient(90deg, var(--text5), transparent)}.notification-modal{z-index:1100}.notification-dialog{text-align:center;max-width:480px;position:relative}.notification-header-image{pointer-events:none;width:16rem;height:8rem;position:absolute;top:-4rem;left:50%;transform:translate(-50%)}.notification-header-image img{object-fit:contain;width:100%;height:100%;display:block}.notification-content{text-align:left;padding:1.5rem}.notification-content p{margin-bottom:1rem}.notification-content ul{margin:1rem 0;padding-left:1.5rem}.notification-content li{margin-bottom:.5rem;&::marker{color:var(--secondary)}}.notification-content .badge-showcase{background:#ffffff1a;border-radius:16px;flex-direction:column;align-items:center;gap:.75rem;margin:1.5rem 0;padding:1.5rem;display:flex}.notification-content .badge-icon-large{object-fit:contain;width:100px;height:100px}.notification-content .badge-name{font-size:1.25rem;font-weight:700}.notification-content .badge-stat,.notification-content .badge-period{opacity:.8;margin-bottom:.5rem;font-size:.875rem}.notification-content .badges-grid{background:var(--bg2);border-radius:calc(var(--box-radius) / 2);grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;margin:1.5rem 0;padding:1rem;display:grid}.notification-content .badge-item{text-align:center;flex-direction:column;align-items:center;gap:.5rem;display:flex}.notification-content .badge-icon{object-fit:contain;width:60px;height:60px}.notification-content .badge-label{font-size:.75rem;font-weight:700;line-height:1.3}.notification-content .expires-info{background:var(--bg1);color:var(--text1);border-radius:.5em;margin:1em 0 0;padding:.5em 1em;& strong{color:var(--secondary)}& i{color:var(--bg8)}}.notification-actions{flex-wrap:wrap;justify-content:center;gap:1rem;padding:0 1.5rem 1.5rem;display:flex}code{background:var(--text7);color:var(--text1);border-radius:.2em;padding:.1em .35em;font-family:Courier New,Courier,monospace;font-size:.95em}@media (width<=480px){.notification-dialog{max-width:calc(100% - 2rem)}.notification-title{font-size:1.25rem}.notification-content .badge-icon-large{width:80px;height:80px}.notification-actions{flex-direction:column}}