:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-offset: 16px;--toastify-toast-top: max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right: max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left: max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom: max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-toast-bd-radius: 6px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y: 0;position:relative;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0;overflow:hidden}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start;z-index:1}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{position:absolute;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sx-backdrop{--sx-ease: var(--ease-out);--sx-spring: var(--ease-spring);position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:flex-end;justify-content:center;padding:12px 16px 0;background:#2222206b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;animation:sxFade .3s var(--ease-out) both}.sx-backdrop.is-closing{pointer-events:none}.sx-sheet{position:relative;width:100%;max-width:520px;max-height:calc(100dvh - 40px);margin:0;box-sizing:border-box;display:flex;flex-direction:column;background:var(--bg-main);color:var(--text-primary);border-radius:24px 24px 0 0;box-shadow:0 -10px 40px -18px #00000073;padding-bottom:env(safe-area-inset-bottom,0px);animation:sxUp .46s var(--sx-ease) both;overflow:hidden}.sx-sheet.is-dragging{user-select:none;-webkit-user-select:none;cursor:grabbing}.sx-sheet.is-settling{transition:translate .36s var(--sx-spring)}.sx-grabber{position:relative;display:block;flex-shrink:0;width:100%;height:22px;touch-action:none;cursor:grab}.sx-grabber:before{content:"";position:absolute;left:50%;top:9px;width:38px;height:4px;border-radius:4px;background:var(--border-subtle);transform:translate(-50%);transition:width .25s var(--sx-ease),background-color .2s var(--ease-out)}.sx-sheet.is-dragging .sx-grabber:before{width:46px;background:var(--text-muted)}.sx-head{display:flex;align-items:center;gap:12px;padding:2px 20px 4px;flex-shrink:0;touch-action:none}.sx-head>*{flex:1;min-width:0}.sx-head-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.sx-head-text{display:flex;flex-direction:column;gap:3px;min-width:0}.sx-sub{font-size:.74rem;color:var(--text-muted)}.sx-title{font-family:var(--font-serif);margin:0;font-size:1.32rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}.sx-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 20px 20px}.sx-foot{flex-shrink:0;display:flex;align-items:center;gap:8px;padding:10px 20px 16px;background:var(--bg-main)}.sx-label{display:block;margin:18px 2px 8px;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.sx-label:first-child{margin-top:10px}.sx-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden}.sx-row{display:flex;align-items:center;gap:12px;width:100%;min-height:50px;padding:10px 14px;box-sizing:border-box;border:none;border-top:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);font:inherit;font-size:.86rem;text-align:left}.sx-row:first-child{border-top:none}button.sx-row{cursor:pointer;transition:background-color .2s var(--ease-out)}button.sx-row:hover,button.sx-row:focus-visible{background:var(--bg-mixed-subtle);outline:none}.sx-row-icon{flex-shrink:0;display:grid;place-items:center;color:var(--text-secondary)}.sx-row-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sx-row-meta{flex-shrink:0;display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:.78rem}button.sx-row .sx-row-meta svg{transition:transform .25s var(--sx-ease)}button.sx-row:hover .sx-row-meta svg{transform:translate(2px)}.sx-row.is-danger{justify-content:center;color:var(--state-bad, #ea6c6c);font-weight:700}.sx-row.is-danger:hover{background:#ea6c6c14}.sx-badge{flex-shrink:0;padding:3px 8px;border-radius:8px;font-size:.68rem;font-weight:600;color:#2f7a4c;background:#4eaa6e24}.sx-seg{--pad: 4px;position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));padding:var(--pad);border-radius:14px;background:var(--bg-mixed);isolation:isolate}.sx-seg:before{content:"";position:absolute;z-index:-1;top:var(--pad);bottom:var(--pad);left:var(--pad);width:calc((100% - var(--pad) * 2) / var(--n));border-radius:10px;background:var(--text-primary);box-shadow:0 4px 12px -6px #00000073;transform:translate(calc(100% * var(--idx)));transition:transform .42s var(--sx-spring)}.sx-seg-btn{min-height:40px;padding:6px 8px;border:none;background:transparent;color:var(--text-secondary);font:inherit;font-size:.8rem;line-height:1.25;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;border-radius:10px;transition:color .3s var(--ease-out);-webkit-tap-highlight-color:transparent}.sx-seg-btn.is-on{color:var(--bg-main);font-weight:700}.sx-seg-btn:not(.is-on):hover{color:var(--text-primary)}.sx-seg-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:1px}.sx-switch{position:relative;flex-shrink:0;width:46px;height:28px;padding:0;border:none;border-radius:28px;background:var(--border-subtle);cursor:pointer;transition:background-color .3s var(--ease-out)}.sx-switch.is-on{background:var(--text-primary)}.sx-switch-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--bg-surface);box-shadow:0 1px 3px #00000040;transition:transform .4s var(--sx-spring),width .2s var(--ease-out)}.sx-switch.is-on .sx-switch-thumb{transform:translate(18px)}.sx-switch:active .sx-switch-thumb{width:26px}.sx-switch.is-on:active .sx-switch-thumb{transform:translate(14px)}.sx-switch:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.sx-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 2px 8px}.sx-label-row .sx-label{margin:0}.sx-hint{margin:8px 2px 0;font-size:.7rem;line-height:1.45;color:var(--text-muted)}.sx-chips{display:flex;flex-wrap:wrap;gap:8px}.sx-chip{padding:8px 13px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);font:inherit;font-size:.76rem;line-height:1.3;text-align:left;cursor:pointer;transition:background-color .25s var(--ease-out),color .25s var(--ease-out),border-color .25s var(--ease-out),transform .2s var(--sx-spring);-webkit-tap-highlight-color:transparent}.sx-chip:hover{color:var(--text-primary)}.sx-chip:active{transform:scale(.96)}.sx-chip.is-on{background:var(--text-primary);border-color:var(--text-primary);color:var(--bg-main);font-weight:700}.sx-line-input{width:100%;box-sizing:border-box;padding:10px 2px;border:none;border-radius:0;border-bottom:1.5px solid var(--border-subtle);background:linear-gradient(var(--text-primary),var(--text-primary)) left bottom / 0 1.5px no-repeat;color:var(--text-primary);font:inherit;font-size:.86rem;outline:none;transition:background-size .4s var(--sx-ease)}.sx-line-input:focus{background-size:100% 1.5px}.sx-line-input::placeholder{color:var(--text-muted)}.sx-btn{flex:1;min-height:48px;padding:0 16px;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-primary);font:inherit;font-size:.88rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:transform .2s var(--sx-spring),background-color .2s var(--ease-out),opacity .2s var(--ease-out)}.sx-btn:active{transform:scale(.97)}.sx-btn.is-primary{flex:2;border-color:var(--text-primary);background:var(--text-primary);color:var(--bg-main);font-weight:800}.sx-btn.is-icon{flex:0 0 48px;padding:0;color:var(--text-secondary)}.sx-btn.is-danger{color:var(--state-bad, #ea6c6c)}.sx-btn:disabled{opacity:.6;cursor:default}.sx-note{margin:16px 0 2px;text-align:center;font-size:.7rem;color:var(--text-muted)}@media (min-width: 769px){.sx-backdrop{align-items:center;padding:24px}.sx-sheet{max-width:460px;max-height:min(780px,calc(100dvh - 48px));border-radius:24px;box-shadow:0 1px 2px #0000000d,0 30px 60px -28px #00000080;animation-name:sxPop}.sx-grabber{display:none}.sx-head{padding-top:22px}}@keyframes sxFade{0%{opacity:0}}@keyframes sxUp{0%{transform:translateY(100%)}to{transform:none}}@keyframes sxPop{0%{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.sx-sheet{animation:sxFade .2s var(--ease-out) both}.sx-seg:before,.sx-switch-thumb,.sx-sheet.is-settling{transition:none}}.ps-id{display:flex;align-items:center;gap:14px}.ps-avatar{position:relative;flex-shrink:0;width:56px;height:56px;border-radius:50%;background:var(--text-primary);color:var(--bg-main);display:grid;place-items:center;font-size:1.02rem;font-weight:800;letter-spacing:.02em;cursor:pointer}.ps-avatar-edit{position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-primary);display:grid;place-items:center;transition:transform .3s var(--ease-spring)}.ps-avatar:hover .ps-avatar-edit{transform:rotate(-12deg) scale(1.1)}.ps-id-text{min-width:0;display:flex;flex-direction:column;gap:2px}.ps-name-input{width:100%;min-width:0;padding:2px 0;border:none;border-bottom:1.5px solid transparent;background:linear-gradient(var(--text-primary),var(--text-primary)) left bottom / 0 1.5px no-repeat;color:var(--text-primary);font:inherit;font-size:1.3rem;font-weight:800;letter-spacing:-.02em;outline:none;transition:background-size .4s var(--ease-out)}.ps-name-input::placeholder{color:var(--text-muted);font-weight:700}.ps-name-input:focus{background-size:100% 1.5px}.ps-id-sub{font-size:.72rem;color:var(--text-muted)}.ps-steps{margin-top:12px}.ps-step{animation:psStepNext .38s var(--ease-out) both}.ps-step[data-dir=prev]{animation-name:psStepPrev}@keyframes psStepNext{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:none}}@keyframes psStepPrev{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:none}}.ps-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ps-tile{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;border-radius:16px;border:1px solid var(--border-subtle);background:var(--bg-surface);cursor:text;transition:border-color .2s var(--ease-out),box-shadow .25s var(--ease-out)}.ps-tile:focus-within{border-color:var(--text-primary);box-shadow:0 0 0 3px var(--bg-mixed)}.ps-tile-label{font-size:.7rem;color:var(--text-muted)}.ps-tile-value{display:flex;align-items:baseline;gap:4px;min-width:0}.ps-tile-input,.ps-tile-static{width:100%;min-width:0;padding:0;border:none;background:transparent;color:var(--text-primary);font:inherit;font-size:1.4rem;font-weight:800;line-height:1.2;outline:none;-moz-appearance:textfield}.ps-tile-static{width:auto}.ps-tile-input::-webkit-outer-spin-button,.ps-tile-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ps-tile-input::placeholder{color:var(--border-subtle)}.ps-unit{flex-shrink:0;font-size:.72rem;color:var(--text-muted)}.ps-tile-note{font-size:.66rem;color:var(--text-muted)}.ps-sleep{padding:12px 14px 14px}.ps-sleep-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:.86rem}.ps-sleep-head span{font-size:.74rem;color:var(--text-muted)}.ps-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;margin:0;border-radius:6px;background:linear-gradient(var(--text-primary),var(--text-primary)) left / var(--pct) 100% no-repeat,var(--bg-mixed);cursor:pointer}.ps-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;border:2.5px solid var(--text-primary);background:var(--bg-surface);transition:transform .2s var(--ease-spring)}.ps-range:active::-webkit-slider-thumb{transform:scale(1.15)}.ps-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;border:2.5px solid var(--text-primary);background:var(--bg-surface)}.ps-auto{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;padding:12px 14px;border:1px dashed var(--border-subtle);border-radius:16px}.ps-auto span{display:flex;flex-direction:column;gap:2px}.ps-auto strong{font-size:.92rem}.ps-auto small{font-size:.68rem;color:var(--text-muted)}.ps-option{align-items:flex-start;gap:12px}.ps-radio{flex-shrink:0;width:18px;height:18px;margin-top:1px;border-radius:50%;border:1.5px solid var(--border-subtle);box-sizing:border-box;transition:border-width .25s var(--ease-spring),border-color .2s var(--ease-out)}.ps-option.is-on .ps-radio{border:5.5px solid var(--text-primary)}.ps-option-text{display:flex;flex-direction:column;gap:3px;min-width:0}.ps-option-text strong{font-size:.84rem}.ps-option-text small{font-size:.7rem;line-height:1.45;color:var(--text-muted)}.ps-level-seg .sx-seg-btn{font-size:.72rem}.ps-macro-sum{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:16px 2px 12px}.ps-macro-sum strong{font-size:1.15rem}.ps-macro-sum span{font-size:.78rem;color:var(--text-secondary)}.ps-macro-sum small{flex-basis:100%;font-size:.68rem;color:var(--text-muted)}.ps-macros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ps-macro.is-wide{grid-column:1 / -1}@media (prefers-reduced-motion: reduce){.ps-step{animation:none}}.tm-name{width:100%;box-sizing:border-box;margin-top:6px;padding:8px 2px;border:none;border-radius:0;border-bottom:1.5px solid var(--border-subtle);background:linear-gradient(var(--text-primary),var(--text-primary)) left bottom / 0 1.5px no-repeat;color:var(--text-primary);font:inherit;font-size:1.15rem;font-weight:700;outline:none;transition:background-size .4s var(--ease-out),border-color .2s var(--ease-out)}.tm-name::placeholder{color:var(--text-muted);font-weight:500}.tm-name:focus{background-size:100% 1.5px}.tm-name.has-error{border-bottom-color:var(--state-bad, #ea6c6c)}.tm-error{display:block;margin:6px 2px 0;font-size:.72rem;color:var(--state-bad, #ea6c6c)}.tm-allday{display:inline-flex;align-items:center;gap:10px;font-size:.74rem;color:var(--text-secondary)}.tm-times{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px}.tm-time{position:relative;display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:16px;border:1px solid var(--border-subtle);background:var(--bg-surface);cursor:pointer;transition:border-color .2s var(--ease-out),box-shadow .25s var(--ease-out)}.tm-time:focus-within{border-color:var(--text-primary);box-shadow:0 0 0 3px var(--bg-mixed)}.tm-time-caption{font-size:.7rem;color:var(--text-muted)}.tm-time-big{font-size:1.4rem;font-weight:800;line-height:1.2;color:var(--text-primary)}.tm-time-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;font:inherit}.tm-time-arrow{display:grid;place-items:center;color:var(--text-muted)}.tm-durations{margin-top:10px}.ks-keys{flex-shrink:0;display:inline-flex;align-items:center;gap:6px}.ks-kbd{min-width:26px;height:26px;padding:0 8px;box-sizing:border-box;display:inline-grid;place-items:center;border-radius:8px;background:var(--bg-mixed);color:var(--text-primary);font:inherit;font-size:.74rem;font-weight:700}.ks-sep{font-size:.68rem;color:var(--text-muted)}:root{--bg-main: var(--bg-primary, #FAF7F2)}.m-page-shell{width:100%;max-width:520px;margin:0 auto;padding:0 14px calc(96px + env(safe-area-inset-bottom,0px));box-sizing:border-box;display:flex;flex-direction:column;gap:10px}.m-overview-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 2px;min-height:44px;box-sizing:border-box}.m-overview-title{font-family:var(--font-serif);font-size:1.45rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.02em;line-height:1.2}.m-month-nav-box{display:inline-flex;align-items:center;height:44px;box-sizing:border-box;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden;box-shadow:0 2px 8px #00000008;position:relative}.m-month-nav-btn{width:36px;height:44px;padding:0;border:none;background:transparent;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .15s var(--ease-out);flex-shrink:0}.m-month-nav-btn:active{background-color:var(--bg-mixed, #EBE7E0)}.m-month-nav-text-wrap{position:relative;display:flex;align-items:center;justify-content:center;height:44px;cursor:pointer}.m-month-nav-text{padding:0 12px;height:100%;display:flex;align-items:center;justify-content:center;font-size:.9375rem;font-weight:700;color:var(--text-primary);border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);letter-spacing:.04em;white-space:nowrap;font-family:var(--font-sans);line-height:1.3;-webkit-user-select:none;user-select:none}.m-month-nav-hidden-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;border:none;background:transparent;padding:0;margin:0}.m-overview-chart-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:14px 14px 10px;display:flex;flex-direction:column;gap:6px;box-shadow:0 2px 8px #00000008}.m-chart-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}.m-chart-card-title{font-size:13px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:normal;text-transform:none;font-family:var(--font-sans)}.m-chart-active-pill{display:inline-flex;align-items:center;gap:5px;align-self:center;height:28px;box-sizing:border-box;background-color:var(--bg-mixed-subtle, #F3F0EA);border:1px solid var(--border-subtle);border-radius:8px;padding:0 9px;font-size:.8125rem;color:var(--text-primary);font-family:var(--font-mono, monospace);line-height:1}.m-chart-active-pill strong{font-weight:800}.m-chart-active-rank{color:var(--text-secondary);font-weight:600}.m-chart-svg-wrap{width:100%;margin-top:-2px;touch-action:pan-y;-webkit-user-select:none;user-select:none}.m-chart-svg-wrap svg{width:100%;height:auto;display:block}@keyframes mBarGrowUp{0%{transform:scaleY(0);opacity:.15}60%{opacity:1}to{transform:scaleY(1);opacity:1}}.m-chart-bar-rect{animation:mBarGrowUp .52s var(--ease-out) both;will-change:transform}@keyframes mBadgeFadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.m-chart-badge-text{animation:mBadgeFadeIn .28s var(--ease-out) .18s both}.m-chart-axis-text{font-family:var(--font-mono, monospace)}.m-donut-chart-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 4px 4px;width:100%}.m-donut-svg-box{position:relative;width:114px;height:114px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.m-donut-svg{width:100%;height:100%;display:block}.m-donut-center-info{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.m-donut-center-percent{font-family:var(--font-serif);font-size:1.15rem;font-weight:800;color:var(--text-primary);line-height:1.1}.m-donut-center-rank{font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-top:2px;max-width:65px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-donut-side-box{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.m-donut-scope-tabs{display:inline-flex;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:9px;padding:2px;gap:2px;align-self:flex-start}.m-donut-scope-btn{border:none;background:transparent;padding:3px 9px;border-radius:7px;font-size:.8125rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s var(--ease-out);font-family:var(--font-sans)}.m-donut-scope-btn.active{background-color:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 3px #0000000f}.m-donut-legend-list{display:flex;flex-direction:column;gap:6px}.m-donut-legend-row{display:flex;align-items:flex-start;gap:8px}.m-donut-legend-dot{width:9px;height:9px;border-radius:3px;margin-top:3px;flex-shrink:0}.m-donut-legend-dot.done{background-color:var(--text-primary)}.m-donut-legend-dot.remain{background-color:var(--level-none, #E5E7EB);border:1px solid var(--border-subtle)}.m-donut-legend-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.m-donut-legend-label{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;color:var(--text-primary)}.m-donut-legend-label strong{font-family:var(--font-mono, monospace);font-weight:700}.m-donut-legend-sub{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-morph-hero{position:relative;width:100%;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;box-shadow:0 2px 8px #00000008;overflow:hidden;box-sizing:border-box;transition:border-bottom .3s var(--ease-out)}.m-morph-hero.is-todolist,.m-morph-hero.is-calories,.m-morph-hero.is-workout{border-bottom:3px solid var(--text-primary)}.m-morph-inner{width:100%;display:flex;flex-direction:column;box-sizing:border-box;transition:padding .38s var(--ease-out),gap .38s var(--ease-out)}.m-morph-hero.is-dashboard .m-morph-inner,.m-morph-hero.is-todolist .m-morph-inner,.m-morph-hero.is-calories .m-morph-inner,.m-morph-hero.is-workout .m-morph-inner{padding:12px 14px;gap:0}.m-morph-head-collapse{display:grid;width:100%;transition:grid-template-rows .38s var(--ease-out),opacity .16s var(--ease-out),transform .38s var(--ease-out),visibility 0s linear .38s}.m-morph-hero.is-dashboard .m-morph-head-collapse{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible;transition-delay:0s}.m-morph-hero.is-todolist .m-morph-head-collapse,.m-morph-hero.is-calories .m-morph-head-collapse,.m-morph-hero.is-workout .m-morph-head-collapse{grid-template-rows:0fr;opacity:0;transform:translateY(-6px);pointer-events:none;visibility:hidden}.m-morph-head{min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:8px}.m-morph-body{display:flex;align-items:center;justify-content:flex-start;gap:14px;position:relative;width:100%}.m-morph-hero.is-dashboard .m-morph-body{justify-content:space-between;gap:12px}.m-morph-hero.is-todolist .m-morph-body,.m-morph-hero.is-calories .m-morph-body,.m-morph-hero.is-workout .m-morph-body{justify-content:flex-start;gap:16px}.m-morph-left{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:width .38s var(--ease-out),height .38s var(--ease-out)}.m-morph-hero.is-dashboard .m-morph-left{width:120px;height:120px}.m-morph-hero.is-todolist .m-morph-left,.m-morph-hero.is-calories .m-morph-left,.m-morph-hero.is-workout .m-morph-left{width:58px;height:58px}.m-morph-donut-wrap{position:absolute;top:50%;left:50%;width:144px;height:144px;transform-origin:center center;transition:transform .38s var(--ease-out),opacity .24s var(--ease-out),visibility 0s linear .38s}.m-morph-hero.is-dashboard .m-morph-donut-wrap{transform:translate(-50%,-50%) scale(.8334);opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s}.m-morph-hero.is-todolist .m-morph-donut-wrap,.m-morph-hero.is-calories .m-morph-donut-wrap,.m-morph-hero.is-workout .m-morph-donut-wrap{transform:translate(-50%,-50%) scale(.44);opacity:0;pointer-events:none;visibility:hidden}.m-morph-ring-wrap{position:absolute;top:50%;left:50%;width:58px;height:58px;display:flex;align-items:center;justify-content:center;transform-origin:center center;transform:translate(-50%,-50%) scale(.65);opacity:0;pointer-events:none;visibility:hidden;transition:transform .38s var(--ease-out),opacity .28s var(--ease-out),visibility 0s linear .38s}.m-morph-hero.is-todolist .m-morph-ring-todo,.m-morph-hero.is-calories .m-morph-ring-cal,.m-morph-hero.is-workout .m-morph-ring-workout{visibility:visible;transition-delay:0s}.m-morph-hero.is-todolist .m-morph-ring-todo,.m-morph-hero.is-calories .m-morph-ring-cal,.m-morph-hero.is-workout .m-morph-ring-workout{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.m-morph-right{flex:1;min-width:0;align-self:stretch;position:relative;display:flex;flex-direction:column;justify-content:center}.m-morph-legend-collapse{display:grid;width:100%;transition:grid-template-rows .38s var(--ease-out),opacity .16s var(--ease-out),transform .38s var(--ease-out),visibility 0s linear .38s}.m-morph-hero.is-dashboard .m-morph-legend-collapse{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto;visibility:visible;transition-delay:0s}.m-morph-hero.is-todolist .m-morph-legend-collapse,.m-morph-hero.is-calories .m-morph-legend-collapse,.m-morph-hero.is-workout .m-morph-legend-collapse{grid-template-rows:0fr;opacity:0;transform:translateY(-6px);pointer-events:none;visibility:hidden}.m-morph-legend-wrap{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:6px;width:100%}.m-morph-hero{touch-action:pan-y}.m-morph-hero.is-dashboard{display:flex;align-items:stretch;gap:10px;width:calc(100% + 12px);margin:0 -6px;padding:0 6px;background-color:transparent;border:none;box-shadow:none;border-radius:0;overflow:hidden}.m-morph-hero.is-dashboard .m-morph-inner{flex:0 0 152px;min-width:0;overflow:hidden;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-right:3px solid var(--text-primary);border-radius:18px;box-shadow:0 2px 8px #00000008;transition:flex-basis .6s var(--ease-spring),padding .38s var(--ease-out),gap .38s var(--ease-out)}.m-morph-hero.is-dashboard.is-expanded .m-morph-inner{flex-basis:100%}.m-morph-hero.is-dashboard .m-morph-body{justify-content:flex-start;gap:0}.m-morph-hero.is-dashboard.is-expanded .m-morph-body{gap:12px}.m-morph-hero.is-dashboard .m-morph-legend-collapse{transition:opacity .3s var(--ease-out) .12s,grid-template-rows .38s var(--ease-out),visibility 0s linear 0s}.m-morph-hero.is-dashboard:not(.is-expanded) .m-morph-legend-collapse{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .15s var(--ease-out),visibility 0s linear .15s}.m-morph-hero.is-dashboard:not(.is-expanded) .m-morph-right{flex:0 0 0;width:0}.m-morph-streak{display:none;flex:0 0 calc(100% - 162px);min-width:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:12px 14px;box-sizing:border-box;border:1px solid var(--border-subtle);border-right:3px solid var(--text-primary);border-radius:18px;background-color:var(--bg-surface);box-shadow:0 2px 8px #00000008}.m-morph-hero.is-dashboard .m-morph-streak{display:flex}.m-morph-streak{justify-content:space-between;gap:4px}.m-streak-top{display:flex;align-items:baseline;gap:6px}.m-morph-streak-icon{color:#eba94f;align-self:center;fill:#eba94f40}.m-streak-num{font-size:2rem;font-weight:800;line-height:1;letter-spacing:-.02em;color:var(--text-primary)}.m-streak-unit{font-family:var(--font-mono, monospace);font-size:1rem;color:var(--text-secondary)}.m-streak-record{font-size:.75rem;color:var(--text-secondary);white-space:nowrap}.m-streak-dots{display:flex;justify-content:space-between;width:100%;margin-top:10px}.m-streak-dot-col{display:flex;flex-direction:column;align-items:center;gap:5px}.m-streak-dot{box-sizing:border-box;width:16px;height:16px;border-radius:50%;background-color:var(--level-none)}.m-streak-dot.done{background-color:#eba94f}.m-streak-dot.today{background-color:transparent;border:2px solid #EBA94F}.m-streak-dot-label{font-size:.625rem;color:var(--text-secondary)}.m-morph-stat-info-wrap{position:absolute;top:50%;left:0;right:0;display:flex;flex-direction:column;gap:2px;width:100%;opacity:0;transform:translateY(-50%) translateY(8px);pointer-events:none;visibility:hidden;transition:opacity .26s var(--ease-out),transform .38s var(--ease-out),visibility 0s linear .38s}.m-morph-hero.is-todolist .m-morph-stat-todo,.m-morph-hero.is-calories .m-morph-stat-cal,.m-morph-hero.is-workout .m-morph-stat-workout{visibility:visible;transition-delay:0s}.m-morph-hero.is-todolist .m-morph-stat-todo,.m-morph-hero.is-calories .m-morph-stat-cal,.m-morph-hero.is-workout .m-morph-stat-workout{opacity:1;transform:translateY(-50%) translateY(0);pointer-events:auto}@keyframes mTodoSectionEnter{0%{opacity:0;transform:translateY(0)}to{opacity:1;transform:translateY(0)}}.m-todo-fade-in-section,.m-tab-fade-in-section{display:flex;flex-direction:column;gap:10px;width:100%;animation:mTodoSectionEnter .35s var(--ease-out) forwards}.m-day-donut-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:14px 14px 12px;display:flex;flex-direction:column;gap:10px;box-shadow:0 2px 8px #00000008}.m-day-donut-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-day-donut-title{font-size:13px;font-weight:700;color:var(--text-primary);margin:0;font-family:var(--font-sans);text-transform:none}.m-day-donut-badge{font-size:13px;font-weight:600;padding:2px 8px;border-radius:6px;background-color:var(--bg-mixed-subtle, #F3F0EA);border:1px solid var(--border-subtle);color:var(--text-secondary);font-family:var(--font-mono, monospace)}.m-day-donut-body{display:flex;align-items:center;justify-content:space-between;gap:12px}.m-day-donut-svg-box{position:relative;width:132px;height:132px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.m-day-donut-svg{width:100%;height:100%;display:block}.m-day-donut-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.m-day-donut-pct{font-family:var(--font-serif);font-size:1.68rem;font-weight:800;color:var(--text-primary);line-height:1}.m-day-donut-pct-sign{font-size:calc(.5em + 2px);margin-left:2px}.m-day-donut-sub{font-size:calc(.74rem + 2px);font-weight:600;color:var(--text-secondary);margin-top:3px;white-space:nowrap}.m-day-donut-legend{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0}.m-day-legend-row{display:flex;align-items:flex-start;gap:0;padding:0;cursor:pointer;transition:all .15s var(--ease-out)}.m-day-legend-bar{height:5px;margin:3px 0 2px;border-radius:999px;background-color:var(--level-none, #e7e5e0);overflow:hidden}.m-day-legend-bar>span{display:block;height:100%;border-radius:999px;transition:width .38s var(--ease-out)}.m-day-legend-bar>.black{background-color:var(--text-primary)}.m-day-legend-bar>.yellow{background-color:#eba94f}.m-day-legend-bar>.blue{background-color:#74a5f2}.m-day-legend-row:active{transform:scale(.98)}.m-day-legend-swatch{display:none;width:9px;height:9px;border-radius:3px;margin-top:4px;flex-shrink:0}.m-day-legend-swatch.black{background-color:var(--text-primary)}.m-day-legend-swatch.yellow{background-color:#eba94f}.m-day-legend-swatch.blue{background-color:#74a5f2}.m-day-legend-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.m-day-legend-title-line{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;color:var(--text-primary)}.m-day-legend-head{display:flex;align-items:baseline;gap:8px;min-width:0;flex:1}.m-day-legend-title{font-weight:700;flex-shrink:0}.m-day-legend-pct{font-family:var(--font-mono, monospace);font-weight:800;font-size:.8125rem}.m-day-legend-pct.text-amber{color:#eba94f}.m-day-legend-pct.text-blue{color:#74a5f2}.m-day-legend-sub{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-home-empty-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:56px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;margin-top:8px;box-shadow:0 2px 8px #00000008}.m-home-empty-icon-wrap{width:60px;height:60px;border-radius:50%;background-color:var(--bg-mixed-subtle, #F3F0EA);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.m-home-empty-title{font-family:var(--font-serif);font-size:1rem;font-weight:700;color:var(--text-primary)}.m-home-empty-desc{font-size:.8125rem;color:var(--text-secondary);max-width:280px;margin:0;line-height:1.5}.m-top-container{display:flex;flex-direction:column;gap:8px}.m-top-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 2px;min-height:44px;box-sizing:border-box}.m-page-title{font-family:var(--font-serif);font-size:1.45rem;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.02em;line-height:1.2}.m-week-card{position:relative;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:3px solid var(--text-primary);border-radius:18px;padding:10px 10px 8px;display:flex;flex-direction:column;gap:4px;box-shadow:0 4px 14px #00000008}.m-week-controls-row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.m-week-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-week-card-title{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0}.m-week-head-actions{display:flex;align-items:center;gap:8px}.m-seg-pill{display:inline-flex;align-items:center;height:28px;box-sizing:border-box;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:9px;padding:2px;gap:2px}.m-seg-btn{width:28px;height:22px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .15s var(--ease-out)}.m-seg-btn.active{background-color:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 3px #0000000d}.m-seg-graph-img{width:14px;height:14px;object-fit:contain;display:block;opacity:.6;filter:brightness(0);transition:opacity .18s var(--ease-out)}.m-seg-btn.active .m-seg-graph-img{opacity:1}[data-theme=dark] .m-seg-graph-img{filter:brightness(0) invert(1)}.m-head-divider{width:1px;height:18px;background-color:var(--border-subtle)}.m-gear-btn{width:32px;height:32px;border-radius:9px;border:none;background:transparent;color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.m-month-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-month-dropdown-pill{display:inline-flex;align-items:center;gap:5px;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:8px;height:28px;box-sizing:border-box;padding:0 10px;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .15s var(--ease-out)}.m-week-step-btns{display:flex;align-items:center;gap:4px}.m-today-mini-pill{height:28px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;background-color:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px;padding:0 10px;font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .15s var(--ease-out)}.m-today-mini-pill.active{background-color:var(--text-primary);color:var(--bg-main);border-color:var(--text-primary)}.m-week-arrow-btn{width:28px;height:28px;box-sizing:border-box;border-radius:8px;border:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .15s var(--ease-out)}.m-month-quick-switcher{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:6px 8px;background-color:var(--bg-main);border-radius:10px;border:1px solid var(--border-subtle)}.m-month-step-btn{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:600;padding:4px 6px;cursor:pointer}.m-month-today-btn{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:6px}.m-week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;padding-top:2px}.m-week-day-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 2px;border-radius:13px;border:1px solid transparent;background:transparent;color:var(--text-primary);font-family:inherit;cursor:pointer;transition:all .16s var(--ease-out)}.m-week-day-col.outside-month{opacity:.45}.m-week-day-col.active{background-color:var(--bg-main);border-color:var(--border-subtle);box-shadow:0 2px 6px #0000000a}.m-week-day-name{font-size:.75rem;font-weight:500;color:var(--text-muted)}.m-week-day-num{font-size:.96rem;font-weight:800;color:var(--text-primary);line-height:1.1}.m-week-day-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--border-color);background:transparent;box-sizing:border-box}.m-week-day-dot.ring-perfect{background-color:var(--status-perfect, #5ECAA5);border-color:var(--status-perfect, #5ECAA5)}.m-week-day-dot.ring-good{background-color:#74a5f2;border-color:#74a5f2}.m-week-day-dot.ring-low{border-color:#f5bb5c}.m-month-native-input{height:28px;box-sizing:border-box;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:8px;padding:0 8px;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .15s var(--ease-out)}.m-month-native-input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}[data-theme=dark] .m-month-native-input::-webkit-calendar-picker-indicator{filter:invert(1)}.m-week-strip{touch-action:pan-y}.m-week-drag-edge{position:absolute;left:0;right:0;bottom:-3px;height:14px;touch-action:none;cursor:ns-resize;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;z-index:2}.m-cal-stage{display:flex;flex-direction:column;width:100%}.m-cal-week-collapse,.m-cal-month-collapse{display:grid;width:100%;transition:grid-template-rows .34s var(--ease-out),opacity .2s var(--ease-out),transform .3s var(--ease-out),visibility 0s linear .34s}.m-cal-collapse-inner{min-height:0;overflow:hidden}.m-cal-stage.is-week .m-cal-week-collapse,.m-cal-stage.is-month .m-cal-month-collapse{visibility:visible;transition-delay:0s}.m-cal-stage.is-week .m-cal-week-collapse{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto}.m-cal-stage.is-week .m-cal-month-collapse,.m-cal-stage.is-month .m-cal-week-collapse{grid-template-rows:0fr;opacity:0;transform:translateY(-6px);pointer-events:none;visibility:hidden}.m-cal-stage.is-month .m-cal-month-collapse{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto}.m-month-grid{padding-top:2px}.m-month-grid-head{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.m-month-grid-wd{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted)}.m-month-grid-body{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.m-month-grid-blank{height:40px}.m-month-grid-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:40px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-primary);font-family:inherit;cursor:pointer;transition:all .14s var(--ease-out)}.m-month-grid-cell.today .m-month-grid-num{font-weight:800}.m-month-grid-cell.active{background-color:var(--bg-main);border-color:var(--border-subtle);box-shadow:0 2px 6px #0000000a}.m-month-grid-num{font-size:.82rem;font-weight:700;line-height:1}.m-ring-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.m-ring-svg{display:block}.m-ring-track{stroke:var(--border-subtle);opacity:.65}.m-ring-progress{transition:stroke-dashoffset .35s var(--ease-out)}.m-ring-inner{position:absolute;top:7px;right:7px;bottom:7px;left:7px;border-radius:50%;background-color:var(--bg-main);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.m-macro-emoji{font-size:1.05rem;line-height:1}.m-primary-stat-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:3px solid var(--text-primary);border-radius:18px;padding:12px 14px;display:flex;align-items:center;gap:12px}.m-primary-stat-info{display:flex;flex-direction:column;gap:2px;min-width:0}.m-primary-stat-num-row{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.m-primary-big-num{font-size:1.55rem;font-weight:800;color:var(--text-primary);line-height:1.1}.m-primary-unit-label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}.m-primary-sub-title{font-size:.8125rem;font-weight:700;color:var(--text-secondary)}.m-sub-metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.m-state-morph-grid{grid-template-columns:1fr 1fr 1fr 0fr;column-gap:0;margin:0 -4px;--morph-dur: .28s;--morph-ease: var(--ease-out);transition:grid-template-columns var(--morph-dur) var(--morph-ease)}.m-state-morph-grid>.m-sub-metric-card,.m-state-morph-grid .m-sub-fiber-collapse>.m-sub-metric-card{margin:0 4px}.m-state-morph-grid.is-calories{grid-template-columns:1fr 1fr 1fr 1fr}.m-sub-fiber-collapse{min-width:0;overflow:hidden;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .26s var(--ease-out),visibility 0s linear var(--morph-dur)}.m-state-morph-grid.is-calories .m-sub-fiber-collapse{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s}.m-sub-metric-card{min-width:0}.m-sub-metric-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:3px solid var(--border-color);border-radius:18px;padding:10px 8px;display:flex;flex-direction:column;justify-content:space-between;gap:6px;text-align:left;font-family:inherit;color:var(--text-primary)}button.m-sub-metric-card{cursor:pointer}.m-sub-metric-card.accent-blue{border-bottom-color:#74a5f2}.m-sub-metric-card.accent-green{border-bottom-color:#5ecaa5}.m-sub-metric-card.accent-orange{border-bottom-color:#f5bb5c}.m-sub-metric-card.accent-purple{border-bottom-color:#a88df2}.m-sub-metric-top{display:flex;flex-direction:column;gap:2px}.m-sub-num-line{display:flex;align-items:baseline;gap:3px;flex-wrap:wrap}.m-sub-num-line strong{font-size:1.05rem;font-weight:800;color:var(--text-primary);line-height:1.15}.m-sub-num-line span{font-size:.75rem;color:var(--text-muted)}.m-sub-label{font-size:.8125rem;font-weight:700}.m-sub-label.text-blue{color:#74a5f2}.m-sub-label.text-green{color:#5ecaa5}.m-sub-label.text-orange{color:#f5bb5c}.m-sub-label.text-purple{color:#a88df2}.m-sub-label.macro-protein-text{color:#f48e68}.m-sub-label.macro-carb-text{color:#74a5f2}.m-sub-label.macro-fat-text{color:#f5bb5c}.m-sub-label.macro-fiber-text{color:#5dbc83}.m-state-morph-grid.is-calories .m-sub-metric-card.macro-protein{border-bottom-color:#f48e68}.m-state-morph-grid.is-calories .m-sub-metric-card.macro-carb{border-bottom-color:#74a5f2}.m-state-morph-grid.is-calories .m-sub-metric-card.macro-fat{border-bottom-color:#f5bb5c}.m-state-morph-grid.is-calories .m-sub-metric-card.macro-fiber{border-bottom-color:#5dbc83}.m-state-morph-grid.is-calories .m-macro-ratio-line{display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:0 2px;white-space:nowrap;letter-spacing:-.02em}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-slash{display:none}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-target{flex-basis:100%;text-align:center;line-height:1.2}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-target:before{content:"/ ";opacity:.7}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-num{font-size:.95rem;font-weight:800;line-height:1.15;color:var(--text-primary)}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-unit{font-size:.75rem;font-weight:600;color:var(--text-muted)}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-slash{font-size:.75rem;font-weight:500;color:var(--text-muted);opacity:.7;margin:0 1px}.m-state-morph-grid.is-calories .m-macro-ratio-line .m-sub-target{font-size:.75rem;font-weight:600;color:var(--text-muted)}.m-sub-num-line strong,.m-sub-num-line span,.m-sub-label{transition:font-size var(--morph-dur) var(--morph-ease)}.m-state-morph-grid.is-calories .m-sub-num-line strong{font-size:.92rem}.m-state-morph-grid.is-calories .m-sub-num-line span,.m-state-morph-grid.is-calories .m-sub-label{font-size:.75rem}.m-sub-metric-ring{display:flex;align-items:center;justify-content:center}.m-state-morph-grid .m-sub-metric-card{overflow:hidden;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;transition:padding var(--morph-dur) var(--morph-ease),gap var(--morph-dur) var(--morph-ease),border-radius var(--morph-dur) var(--morph-ease),border-bottom-color .35s var(--ease-out)}.m-state-morph-grid:is(.is-dashboard,.is-todolist) .m-sub-metric-card.m-state-tinted{border-bottom-color:var(--state-color)}.m-state-morph-grid:is(.is-dashboard,.is-todolist) .m-state-tinted .m-sub-top-layer.is-state .m-sub-num,.m-state-morph-grid:is(.is-dashboard,.is-todolist) .m-state-tinted .m-sub-top-layer.is-state .m-sub-label{color:var(--state-color);transition:color .3s var(--ease-out)}.m-state-morph-grid.is-dashboard .m-sub-metric-card,.m-state-morph-grid.is-expanded .m-sub-metric-card{padding:10px 8px;gap:6px;border-radius:16px;min-height:0}.m-state-morph-grid.is-dashboard .m-sub-metric-ring,.m-state-morph-grid.is-todolist .m-sub-metric-ring{order:-1}.m-state-morph-grid.is-todolist:not(.is-expanded) .m-sub-metric-card,.m-state-morph-grid.is-calories:not(.is-expanded) .m-sub-metric-card,.m-state-morph-grid.is-workout:not(.is-expanded) .m-sub-metric-card{padding:4px 8px;gap:0px;border-radius:13px;height:auto;min-height:0}.m-sub-metric-top-collapse{display:grid;width:100%;transform-origin:50% 0;transition:grid-template-rows var(--morph-dur) var(--morph-ease),transform var(--morph-dur) var(--morph-ease),opacity .22s ease-in,visibility 0s linear var(--morph-dur)}.m-state-morph-grid.is-dashboard .m-sub-metric-top-collapse,.m-state-morph-grid.is-expanded .m-sub-metric-top-collapse{grid-template-rows:1fr;opacity:1;transform:scale(1);pointer-events:auto;visibility:visible;transition:grid-template-rows var(--morph-dur) var(--morph-ease),transform var(--morph-dur) var(--morph-ease),opacity .2s var(--ease-out) .08s,visibility 0s}.m-state-morph-grid.is-switching:not(.is-expanded):not(.is-dashboard) .m-sub-metric-top-collapse{transition:grid-template-rows var(--morph-dur) var(--morph-ease),transform 0s,opacity 0s,visibility 0s}.m-state-morph-grid.is-todolist:not(.is-expanded) .m-sub-metric-top-collapse,.m-state-morph-grid.is-calories:not(.is-expanded) .m-sub-metric-top-collapse,.m-state-morph-grid.is-workout:not(.is-expanded) .m-sub-metric-top-collapse{grid-template-rows:0fr;opacity:0;transform:scale(.5);pointer-events:none;visibility:hidden}.m-state-morph-grid .m-sub-metric-top{white-space:nowrap;min-height:0;overflow:hidden;position:relative;width:100%;display:flex;align-items:flex-start;justify-content:center}.m-sub-top-layer{display:none;flex-direction:column;align-items:center;justify-content:center;width:100%;opacity:0;transition:opacity .24s var(--ease-out)}.m-state-morph-grid.is-dashboard .m-sub-top-layer.is-state,.m-state-morph-grid.is-todolist .m-sub-top-layer.is-state,.m-state-morph-grid.is-calories .m-sub-top-layer.is-calories,.m-state-morph-grid.is-workout .m-sub-top-layer.is-workout{display:flex;opacity:1}.m-state-morph-grid .m-sub-metric-ring{position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center;transition:height var(--morph-dur) var(--morph-ease)}.m-state-morph-grid.is-dashboard .m-sub-metric-ring,.m-state-morph-grid.is-expanded .m-sub-metric-ring{height:52px}.m-state-morph-grid.is-todolist:not(.is-expanded) .m-sub-metric-ring,.m-state-morph-grid.is-calories:not(.is-expanded) .m-sub-metric-ring,.m-state-morph-grid.is-workout:not(.is-expanded) .m-sub-metric-ring{height:30px}.m-sub-ring-layer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.65);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s var(--ease-out),transform var(--morph-dur) var(--morph-ease),visibility 0s linear var(--morph-dur)}.m-state-morph-grid:is(.is-todolist,.is-calories,.is-workout):not(.is-expanded) .m-sub-ring-layer:is(.is-state,.is-calories,.is-workout){transform:translate(-50%,-50%) scale(.58)}.m-state-morph-grid.is-dashboard .m-sub-ring-layer.is-state,.m-state-morph-grid.is-todolist .m-sub-ring-layer.is-state,.m-state-morph-grid.is-calories .m-sub-ring-layer.is-calories,.m-state-morph-grid.is-workout .m-sub-ring-layer.is-workout{visibility:visible;transition-delay:0s}.m-state-morph-grid.is-dashboard .m-sub-ring-layer.is-state,.m-state-morph-grid.is-todolist .m-sub-ring-layer.is-state,.m-state-morph-grid.is-calories .m-sub-ring-layer.is-calories,.m-state-morph-grid.is-workout .m-sub-ring-layer.is-workout{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.m-state-morph-grid .m-sub-top-layer.is-state .m-sub-num{font-size:.9375rem;letter-spacing:-.01em}.m-view-more-btn{align-self:center;display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;color:var(--text-muted);font-family:inherit;font-size:.8125rem;font-weight:600;padding:2px 10px;cursor:pointer}.rotate-90{transform:rotate(90deg)}.rotate-180{transform:rotate(180deg)}.m-more-drawer,.m-charts-drawer{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px}.m-more-stat-row{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;color:var(--text-secondary)}.m-ai-mini-text{margin:0;font-size:.8125rem;line-height:1.45;color:var(--text-secondary)}.m-section-divider{width:100%;height:1px;background-color:var(--border-subtle);margin:2px 0}.m-section-block{display:flex;flex-direction:column;gap:8px}.m-section-heading{font-family:var(--font-serif);font-size:1.05rem;font-weight:800;color:var(--text-primary);margin:0}.m-action-tiles-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.m-action-tile{position:relative;overflow:hidden;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:20px 12px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;font-family:inherit;color:var(--text-primary);cursor:pointer;transition:transform .14s var(--ease-out),border-color .14s var(--ease-out)}.m-action-tile:active{transform:scale(.98)}.m-action-tile.tile-featured{border:1.5px solid var(--text-primary)}.m-action-tile.tile-selected{background-color:var(--bg-main);border:1.5px solid var(--text-primary)}.m-action-tile.tile-muted{opacity:.72}.m-tile-info-icon{position:absolute;top:10px;left:10px;color:var(--text-muted);display:flex}.m-tile-ribbon{position:absolute;top:0;right:0;background-color:var(--text-primary);color:var(--bg-main);font-size:.75rem;font-weight:700;padding:3px 9px;border-bottom-left-radius:10px}.m-tile-icon-box{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);margin-bottom:2px}.m-tile-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);line-height:1.25}.m-tile-sub{font-size:.75rem;color:var(--text-muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.m-sheet-card,.m-logged-meals-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:10px}.m-session-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.m-session-pill{padding:6px 8px;border-radius:9px;border:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}.m-session-pill.active{background-color:var(--text-primary);color:var(--bg-main);border-color:var(--text-primary)}.m-custom-food-row{display:flex;gap:8px}.m-input{flex:1;min-width:0;padding:8px 10px;border-radius:9px;border:1px solid var(--border-color);background-color:var(--bg-main);color:var(--text-primary);font-family:inherit;font-size:.8125rem}.m-input-sm{flex:0 0 84px}.m-custom-food-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-state-Segment{display:flex;gap:6px}.m-mini-pill{padding:5px 9px;border-radius:8px;border:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}.m-mini-pill.active{border-color:var(--text-primary);color:var(--text-primary);font-weight:700}.m-btn-primary{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;border-radius:9px;border:none;background-color:var(--text-primary);color:var(--bg-main);font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer}.m-btn-xs{padding:5px 10px;font-size:.8125rem}.m-presets-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.m-preset-chip{padding:8px 10px;border-radius:10px;border:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-primary);font-family:inherit;text-align:left;display:flex;flex-direction:column;gap:2px;cursor:pointer}.m-preset-chip strong{font-size:.8125rem}.m-preset-chip span{font-size:.75rem;color:var(--text-muted)}.m-logged-head{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem}.m-logged-list{display:flex;flex-direction:column;gap:6px}.m-logged-item{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:10px;background-color:var(--bg-main);border:1px solid var(--border-subtle)}.m-logged-item-main{display:flex;flex-direction:column;gap:1px}.m-logged-item-main strong{font-size:.8125rem}.m-logged-item-main span{font-size:.75rem;color:var(--text-muted)}.m-icon-del-btn{width:28px;height:28px;border-radius:7px;border:none;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.m-water-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:15px 14px;display:flex;flex-direction:column;gap:14px}.m-water-head{display:flex;align-items:flex-start;justify-content:space-between}.m-water-title{font-family:var(--font-serif);font-size:.94rem;font-weight:700;color:var(--text-primary);margin:0 0 2px}.m-water-sub{font-size:.8125rem;color:var(--text-muted)}.m-water-ml-pill{font-size:.8125rem;font-weight:700;padding:3px 8px;border-radius:99px;background-color:var(--bg-main);border:1px solid var(--border-subtle);color:var(--text-secondary)}.m-water-cups-row{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.m-water-cup-btn{background:transparent;border:none;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}.m-cup-glass{width:100%;max-width:34px;height:42px;background-color:var(--bg-main);border:1px solid var(--border-subtle);clip-path:polygon(8% 0%,92% 0%,80% 100%,20% 100%);border-radius:4px 4px 7px 7px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:all .18s var(--ease-out)}.m-water-cup-btn.filled .m-cup-glass{background-color:#74a5f2;border-color:#74a5f2;color:#fff}.m-tasks-header-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-tasks-quick-pills{display:flex;align-items:center;gap:5px}.m-mini-action-pill{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border-radius:8px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}.m-clean-tasks-list{display:flex;flex-direction:column;gap:6px}.m-task-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);transition:opacity .28s var(--ease-out),background-color .28s var(--ease-out),border-color .28s var(--ease-out)}.m-task-item.checked{opacity:.72}.m-task-check-btn{position:relative;overflow:hidden;box-sizing:border-box;transition:border-color .24s var(--ease-out),transform .18s var(--ease-spring);width:24px;height:24px;border-radius:8px;border:1.5px solid var(--border-color);background-color:var(--bg-main);color:var(--bg-main);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;padding:0}.m-task-check-btn:active{transform:scale(.88)}.m-task-check-btn:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;background-color:var(--text-primary);border-radius:7px;transform:scale(0);opacity:0;transition:transform .22s var(--ease-out),opacity .18s var(--ease-out)}.m-task-check-btn.checked:before{transform:scale(1);opacity:1;transition:transform .28s var(--ease-spring),opacity .2s var(--ease-out)}.m-task-check-icon-wrap{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--bg-main, #fff);transform:scale(0);opacity:0;transition:transform .2s var(--ease-out),opacity .16s var(--ease-out)}.m-task-check-btn.checked .m-task-check-icon-wrap{transform:scale(1);opacity:1;transition:transform .3s var(--ease-spring) .03s,opacity .22s var(--ease-out) .03s}.m-task-check-btn.checked{border-color:var(--text-primary)}.m-task-item.is-cascading,.m-task-item.is-cascading .m-task-check-btn{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-task-item.is-cascading .m-task-check-btn:before{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-task-item.is-cascading .m-task-check-btn.checked .m-task-check-icon-wrap{transition-delay:calc(var(--task-idx, 0) * 40ms + 25ms)}.m-task-item.is-cascading .m-task-check-btn:not(.checked) .m-task-check-icon-wrap{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-task-item.is-cascading .m-task-title-text{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-task-item.is-cascading .m-task-title-text:after{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-task-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;cursor:pointer}.m-task-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-task-item.checked .m-task-title{text-decoration:none}.m-task-title-text{position:relative;display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom;transition:color .25s var(--ease-out)}.m-task-title-text:after{content:"";position:absolute;left:0;top:52%;width:100%;height:1.5px;background-color:var(--text-primary);pointer-events:none;transform-origin:left center;transform:scaleX(0);transition:transform .28s var(--ease-out)}.m-task-item.checked .m-task-title-text:after{transform:scaleX(1);transition:transform .32s var(--ease-out)}.m-task-meta{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-muted)}.m-task-boost{color:#f5bb5c;font-weight:700}.m-task-edit-btn{width:28px;height:28px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.m-empty-add-card{padding:24px 16px;border-radius:16px;border:1.5px dashed var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer}.m-todo{gap:12px;margin-top:8px;padding-top:16px;border-top:1px solid var(--border-subtle)}.m-todo-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.m-todo-heading{display:flex;flex-direction:column;gap:3px;min-width:0}.m-todo-title{font-family:var(--font-serif);font-size:1.15rem;font-weight:800;letter-spacing:-.01em}.m-todo-subtitle{font-size:.8125rem;color:var(--text-muted);font-family:var(--font-sans)}.m-todo-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.m-todo-icon-btn{width:36px;height:36px;border-radius:999px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .16s var(--ease-spring),background-color .2s var(--ease-out),color .2s var(--ease-out),border-color .2s var(--ease-out)}.m-todo-icon-btn:active{transform:scale(.9)}.m-todo-icon-btn.active{background-color:var(--bg-mixed);color:var(--text-primary);border-color:var(--border-color)}.m-todo-icon-btn.primary{background-color:var(--text-primary);color:var(--bg-main);border-color:var(--text-primary)}.m-todo-progress{height:5px;border-radius:999px;background-color:var(--bg-mixed);overflow:hidden}.m-todo-progress-fill{display:block;height:100%;border-radius:999px;background-color:var(--text-primary);transition:width .5s var(--ease-out)}.m-todo-search{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:12px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-muted);animation:mTodoSearchReveal .28s var(--ease-out)}.m-todo-search input{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:.8125rem;outline:none}.m-todo-search-clear{width:22px;height:22px;border-radius:999px;border:none;background-color:var(--bg-mixed);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.m-todo-list{gap:14px}.m-todo-group{display:flex;flex-direction:column;gap:8px}.m-todo-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.m-todo-group-label{font-size:.8125rem;font-weight:700;color:var(--text-secondary);font-family:var(--font-sans);letter-spacing:.02em}.m-todo-group-count{font-size:.8125rem;color:var(--text-muted);font-family:var(--font-mono, monospace)}.m-todo-no-results{padding:20px 12px;text-align:center;font-size:.8125rem;color:var(--text-muted);font-family:var(--font-sans)}.m-todo-allday-pills{display:flex;flex-wrap:wrap;gap:8px}.m-todo-allday-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 8px;border-radius:999px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:opacity .26s var(--ease-out),background-color .26s var(--ease-out),border-color .26s var(--ease-out)}.m-todo-allday-pill.checked{opacity:.6}.m-todo-allday-label{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.m-todo-allday-pill.checked .m-todo-allday-label{text-decoration:line-through;text-decoration-color:var(--text-muted)}.m-todo-allday-pill.is-cascading{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-todo-allday-pill.is-cascading .m-task-check-btn,.m-todo-allday-pill.is-cascading .m-task-check-btn:before{transition-delay:calc(var(--task-idx, 0) * 40ms)}.m-todo-allday-pill.is-cascading .m-task-check-btn.checked .m-task-check-icon-wrap{transition-delay:calc(var(--task-idx, 0) * 40ms + 25ms)}.m-todo-session-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden}.m-todo-session-card .m-task-item{border:none;border-radius:0;background:transparent;padding:12px 14px}.m-todo-session-card .m-task-item+.m-task-item{border-top:1px solid var(--border-subtle)}.m-todo-row{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.m-todo-row.is-upcoming{background-color:var(--bg-mixed)}.m-task-time{display:flex;flex-direction:column;gap:2px;min-width:42px;flex-shrink:0}.m-task-time-start{font-family:var(--font-mono, monospace);font-size:.82rem;font-weight:700;color:var(--text-primary);line-height:1}.m-task-time-sub{font-family:var(--font-mono, monospace);font-size:.75rem;color:var(--text-muted);line-height:1}.m-todo-row.is-upcoming .m-task-time-sub{color:var(--text-secondary);font-weight:600}.m-task-boost-star{color:var(--state-good);font-size:.7em;margin-left:4px}.m-task-cat{font-family:var(--font-sans);font-size:.75rem;color:var(--text-muted);flex-shrink:0;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-task-countdown{font-family:var(--font-mono, monospace);font-size:.8125rem;font-weight:600;color:var(--text-secondary);flex-shrink:0}.m-todo-focus-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1150;touch-action:none;overscroll-behavior:contain}.m-todo-focus-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a090880;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);animation:mTodoScrimIn .22s var(--ease-out) forwards}[data-theme=light] .m-todo-focus-scrim{background:#28262252}.m-todo-focus-card{position:absolute;transform-origin:center;animation:mTodoCardLift .26s var(--ease-spring) forwards}.m-todo-focus-card .m-task-item{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:14px;box-shadow:0 18px 50px #00000073;opacity:1}.m-todo-focus-actions{position:absolute;display:flex;gap:16px}.m-todo-focus-btn{width:54px;height:54px;border-radius:999px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 10px 30px #0006;transform:scale(0);animation:mTodoBtnPop .3s var(--ease-spring) forwards}.m-todo-focus-btn.edit{background-color:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);animation-delay:.06s}.m-todo-focus-btn.delete{background-color:var(--state-bad);color:#fff;animation-delay:.12s}@keyframes mTodoSearchReveal{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes mTodoScrimIn{0%{opacity:0}to{opacity:1}}@keyframes mTodoCardLift{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1.02)}}@keyframes mTodoBtnPop{0%{opacity:0;transform:scale(0) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (prefers-reduced-motion: reduce){.m-todo-search,.m-todo-focus-scrim,.m-todo-focus-card,.m-todo-focus-btn{animation:none;opacity:1}.m-todo-focus-card,.m-todo-focus-btn{transform:none}}.m-note-textarea{width:100%;box-sizing:border-box;border-radius:10px;border:1px solid var(--border-subtle);background-color:var(--bg-main);color:var(--text-primary);font-family:inherit;font-size:.8125rem;padding:8px 10px;resize:vertical}.m-note-actions{display:flex;justify-content:flex-end}.m-muscle-chips-scroll{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.m-muscle-chips-scroll::-webkit-scrollbar{display:none}.m-muscle-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 11px;border-radius:99px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;white-space:nowrap;cursor:pointer}.m-muscle-chip.active{background-color:var(--text-primary);color:var(--bg-main);border-color:var(--text-primary)}.m-workout-exercises-list{display:flex;flex-direction:column;gap:10px}.m-exercise-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:8px}.m-exercise-head{display:flex;align-items:center;gap:8px}.m-ex-index{font-size:.8125rem;font-weight:800;color:var(--text-muted)}.m-ex-name-input{flex:1;min-width:0;border:none;border-bottom:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);font-family:inherit;font-size:.9375rem;font-weight:700;padding:4px 2px}.m-sets-table{display:flex;flex-direction:column;gap:6px}.m-set-row{display:flex;align-items:center;gap:8px}.m-set-num{font-size:.8125rem;font-weight:700;color:var(--text-muted);width:22px}.m-set-field{flex:1;display:flex;align-items:center;gap:4px;background-color:var(--bg-main);border:1px solid var(--border-subtle);border-radius:8px;padding:4px 8px}.m-set-input{width:100%;border:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:700;text-align:center}.m-set-field span{font-size:.75rem;color:var(--text-muted)}.m-set-del-btn{width:24px;height:24px;border-radius:6px;border:none;background:transparent;color:var(--text-muted);font-size:1rem;cursor:pointer}.m-add-set-btn{padding:6px;border-radius:8px;border:1px dashed var(--border-color);background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}.m-calendar-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:15px 12px;display:flex;flex-direction:column;gap:10px}.m-calendar-card-head{display:flex;align-items:center;justify-content:space-between}.m-calendar-title{font-family:var(--font-serif);font-size:.9375rem;font-weight:700;color:var(--text-primary)}.m-calendar-sub{font-size:.8125rem;color:var(--text-muted)}.m-cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.m-cal-wd{font-size:.75rem;font-weight:600;color:var(--text-muted)}.m-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.m-cal-cell{aspect-ratio:1;border-radius:11px;border:1px solid transparent;background-color:var(--bg-main);color:var(--text-primary);font-family:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:2px;cursor:pointer}.m-cal-cell.empty{background:transparent;pointer-events:none}.m-cal-cell.selected{border-color:var(--text-primary);background-color:var(--bg-elevated)}.m-cal-cell.today .m-cal-day-num{text-decoration:underline}.m-cal-day-num{font-size:.8125rem;font-weight:700;line-height:1}.m-cal-dot{width:6px;height:6px;border-radius:50%;border:1px solid var(--border-color)}.m-cal-dot.cal-perfect{background-color:var(--status-perfect, #5ECAA5);border-color:var(--status-perfect, #5ECAA5)}.m-cal-dot.cal-good{background-color:#74a5f2;border-color:#74a5f2}.m-cal-dot.cal-low{background-color:#f5bb5c;border-color:#f5bb5c}.m-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:950;height:calc(66px + max(env(safe-area-inset-bottom,0px) - 14px,0px));padding:0 8px max(env(safe-area-inset-bottom,0px) - 14px,0px);background-color:var(--bg-surface);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-around;box-shadow:0 -4px 18px #0000000a}.m-bottom-nav-btn{width:48px;height:46px;border-radius:14px;border:none;background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;position:relative;z-index:1;transition:color .28s var(--ease-out),opacity .18s var(--ease-out)}.m-bottom-nav-btn.active{color:var(--bg-main)}.m-bottom-nav-pill{position:absolute;left:0;top:0;width:48px;height:46px;border-radius:14px;background-color:var(--text-primary);box-shadow:0 4px 10px #0000001f;opacity:0;pointer-events:none;z-index:0;will-change:transform}.m-bottom-center-btn{width:46px;height:46px;border-radius:50%;border:none;background-color:var(--text-primary);color:var(--bg-main);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;box-shadow:0 4px 12px #0000002e;transition:transform .16s var(--ease-spring),box-shadow .16s var(--ease-out),background-color .18s var(--ease-out);flex-shrink:0}.m-bottom-center-btn:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 6px 18px #0000003d}.m-bottom-center-btn:active{transform:scale(.92);box-shadow:0 2px 6px #0000001f}[data-theme=dark] .m-bottom-center-btn{background-color:var(--text-primary);color:var(--bg-main);box-shadow:0 4px 16px #00000073}[data-theme=dark] .m-bottom-center-btn:hover{box-shadow:0 6px 20px #0009}.m-bottom-nav-btn:disabled{cursor:default;opacity:.4}.m-bottom-logo-img{width:24px;height:24px;object-fit:contain;display:block;filter:brightness(0);transition:filter .28s var(--ease-out)}.m-bottom-nav-btn.active .m-bottom-logo-img{filter:brightness(0) invert(1)}[data-theme=dark] .m-bottom-nav-btn:not(.active) .m-bottom-logo-img{filter:brightness(0) invert(1)}[data-theme=dark] .m-bottom-nav-btn.active .m-bottom-logo-img{filter:brightness(0)}.m-bottom-graph-img{width:20px;height:20px;object-fit:contain;display:block;opacity:.65;filter:brightness(0);transition:opacity .28s var(--ease-out),filter .28s var(--ease-out)}.m-bottom-nav-btn.active .m-bottom-graph-img{opacity:1;filter:brightness(0) invert(1)}[data-theme=dark] .m-bottom-nav-btn:not(.active) .m-bottom-graph-img{filter:brightness(0) invert(1);opacity:.65}[data-theme=dark] .m-bottom-nav-btn.active .m-bottom-graph-img{filter:brightness(0);opacity:1}.m-bottom-icon-wrap{position:relative;display:inline-flex}.m-home-dot{position:absolute;top:-2px;right:-3px;width:6px;height:6px;border-radius:50%;background-color:#f38080}@media (max-width: 768px){.ai-floating-avatar-btn{display:none!important}.ai-floating-coach,.ai-coach-floating-wrapper{bottom:76px!important;right:12px!important;left:12px!important}.ai-floating-bubble,.ai-speech-bubble{max-width:100%!important;width:100%!important}.lp-features-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.lp-feature-card{padding:16px 12px!important;text-align:center!important;align-items:center!important}.lp-feature-desc{display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;font-size:.8125rem!important}.lp-subtitle,.lp-section-desc,.lp-cta-desc{font-size:.82rem!important}}.m-day-content{display:flex;flex-direction:column;gap:10px;transition:opacity .28s var(--ease-out)}.m-day-content.is-syncing{opacity:.5;pointer-events:none;animation:mSyncBreath 1.4s ease-in-out infinite}@keyframes mSyncBreath{0%,to{opacity:.42}50%{opacity:.6}}@keyframes mPopBounceA{0%{transform:scale(1)}35%{transform:scale(1.22)}65%{transform:scale(.95)}to{transform:scale(1)}}@keyframes mPopBounceB{0%{transform:scale(1)}35%{transform:scale(1.22)}65%{transform:scale(.95)}to{transform:scale(1)}}@keyframes mPopDigitA{0%{transform:translateY(3px) scale(.92)}45%{transform:translateY(-1.5px) scale(1.06)}to{transform:translateY(0) scale(1)}}@keyframes mPopDigitB{0%{transform:translateY(3px) scale(.92)}45%{transform:translateY(-1.5px) scale(1.06)}to{transform:translateY(0) scale(1)}}.m-count-pop.is-pop,.m-sub-num.is-pop,.m-primary-big-num.is-pop,.m-day-legend-pct.is-pop,.m-day-donut-pct.is-pop{display:inline-block}.m-count-pop.is-pop-a,.m-sub-num.is-pop-a,.m-primary-big-num.is-pop-a,.m-day-legend-pct.is-pop-a,.m-day-donut-pct.is-pop-a{animation:mPopDigitA .38s var(--ease-out)}.m-count-pop.is-pop-b,.m-sub-num.is-pop-b,.m-primary-big-num.is-pop-b,.m-day-legend-pct.is-pop-b,.m-day-donut-pct.is-pop-b{animation:mPopDigitB .38s var(--ease-out)}.m-water-cup-btn.is-pop-a .m-cup-glass{animation:mPopBounceA .38s var(--ease-out)}.m-water-cup-btn.is-pop-b .m-cup-glass{animation:mPopBounceB .38s var(--ease-out)}@media (prefers-reduced-motion: reduce){.m-day-content.is-syncing{animation:none;opacity:.6}.m-count-pop.is-pop,.m-sub-num.is-pop,.m-primary-big-num.is-pop,.m-day-legend-pct.is-pop,.m-day-donut-pct.is-pop,.m-water-cup-btn.is-pop .m-cup-glass{animation:none}}@keyframes mWeekFadeNext{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes mWeekFadePrev{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}.m-week-strip.week-anim-next{animation:mWeekFadeNext .32s var(--ease-out) both}.m-week-strip.week-anim-prev{animation:mWeekFadePrev .32s var(--ease-out) both}@media (prefers-reduced-motion: reduce){.m-week-strip.week-anim-next,.m-week-strip.week-anim-prev{animation:none}}.m-quick{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:8px;padding-top:16px;border-top:1px solid var(--border-subtle)}.m-quick-tasks{display:flex;flex-direction:column;gap:6px}.m-quick-more{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 0 2px;background:none;border:none;color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer}.m-quick-card{display:flex;flex-direction:column;padding:12px 14px;border-radius:16px;background-color:var(--bg-surface);border:1px solid var(--border-subtle)}.m-quick-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.m-quick-head-title{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:none;border:none;padding:0;color:var(--text-primary);font-family:var(--font-serif);text-align:left;cursor:pointer}.m-quick-head-text{display:flex;flex-direction:column;gap:1px;min-width:0}.m-quick-head-text strong{font-size:.92rem;font-weight:800}.m-quick-head-text small{font-size:.8125rem;color:var(--text-muted)}.m-quick-icon{width:32px;height:32px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background-color:var(--bg-main);border:1px solid var(--border-subtle);color:var(--text-primary)}.m-quick-icon.cal{color:#eba94f}.m-quick-icon.gym{color:#74a5f2}.m-quick-add{width:34px;height:34px;border-radius:50%;border:none;flex-shrink:0;background-color:var(--text-primary);color:var(--bg-main);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s var(--ease-out)}.m-quick-add:active{transform:scale(.9)}.m-quick-empty{display:block;margin-top:10px;padding-top:9px;border-top:1px solid var(--border-subtle);font-size:.8125rem;color:var(--text-muted)}.m-quick-history{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column}.m-quick-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--border-subtle);animation:mQuickItemIn .3s var(--ease-out) both}.m-quick-history-item.is-stacked{flex-direction:column;align-items:stretch;gap:3px}.m-quick-history-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.m-quick-history-left{min-width:0;display:flex;flex-direction:column;gap:2px}.m-quick-history-main{font-size:.9375rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.m-quick-history-meta{font-size:.8125rem;color:var(--text-muted)}.m-quick-history-value{flex-shrink:0;font-size:.8125rem;font-weight:800;color:var(--text-primary);text-align:right}@keyframes mQuickItemIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.m-quick-form{display:flex;flex-direction:column;gap:16px;min-width:0}.m-quick-field{display:flex;flex-direction:column;gap:6px;min-width:0}.m-quick-label{font-size:.8125rem;font-weight:700;color:var(--text-secondary)}.m-quick-input{box-sizing:border-box;width:100%;min-width:0;height:46px;padding:0 14px;border-radius:14px;border:1px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);font-family:inherit;font-size:16px;font-weight:600;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.m-quick-input:focus{border-color:var(--text-primary)}.m-quick-input.is-number{text-align:center}.m-quick-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.m-quick-segment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.m-quick-segment button{height:44px;border-radius:14px;border:1px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-secondary);font-family:inherit;font-size:.9375rem;font-weight:700;cursor:pointer;transition:background-color .2s var(--ease-out),color .2s var(--ease-out),border-color .2s var(--ease-out)}.m-quick-segment button.active{background-color:var(--text-primary);border-color:var(--text-primary);color:var(--bg-main)}.m-quick-note{margin:-4px 0 0;font-size:.8125rem;color:var(--text-muted)}.m-quick-note strong{color:var(--text-primary)}.m-quick-submit{width:100%;height:48px;display:flex;align-items:center;justify-content:center;gap:6px;border:none;border-radius:14px;background-color:var(--text-primary);color:var(--bg-main);font-family:inherit;font-size:.95rem;font-weight:800;cursor:pointer}.m-quick-submit:disabled{opacity:.4;cursor:not-allowed}.m-suggest{min-width:0}.m-suggest-list{position:fixed;z-index:1300;box-sizing:border-box;list-style:none;margin:0;padding:4px;border-radius:14px;background-color:var(--bg-surface);border:1px solid var(--border-color);box-shadow:0 12px 32px #0003;animation:mSuggestIn .14s var(--ease-out) both;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}@keyframes mSuggestIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.m-suggest-item{box-sizing:border-box;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:none;border-radius:10px;background:none;color:var(--text-primary);font-family:inherit;font-size:.9375rem;font-weight:600;text-align:left;cursor:pointer}.m-suggest-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-suggest-item:active{background-color:var(--bg-main)}.m-suggest-item small{color:var(--text-muted);font-size:.8125rem;font-weight:500;flex-shrink:0}.m-quick-tasks{gap:0;padding:0;border-radius:16px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);overflow:hidden}.m-quick-tasks-count{font-size:.8125rem;color:var(--text-muted)}.m-quick-tasks .m-task-item{border:none;border-top:1px solid var(--border-subtle);border-radius:0;background:transparent;padding:11px 14px}.m-quick-task-time{flex-shrink:0;font-size:.8125rem;font-weight:600;color:var(--text-muted);font-variant-numeric:tabular-nums}.m-quick-tasks .m-quick-more{border-top:1px solid var(--border-subtle);padding:11px 0;color:var(--text-muted)}.m-quick-tiles{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:10px}.m-quick-tile{--tone: var(--text-primary);display:flex;flex-direction:column;align-items:center;padding:12px 6px;border-radius:16px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);min-width:0}.m-quick-tile.water{--tone: #68C0EA}.m-quick-tile.cal{--tone: #F89E62}.m-quick-tile.gym{--tone: #74A5F2}.m-quick-ring{position:relative;width:min(100%,104px);aspect-ratio:1;padding:0;border:none;background:none;color:var(--tone);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;transition:transform .15s var(--ease-out)}.m-quick-ring:active{transform:scale(.94)}.m-quick-ring-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform:rotate(-90deg)}.m-quick-ring-svg circle{fill:none;stroke-width:6}.m-quick-ring-svg .track{stroke:var(--border-subtle)}.m-quick-ring-svg .arc{stroke:var(--tone);stroke-linecap:round;transition:stroke-dasharray .4s var(--ease-out)}.m-quick-ring-center{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px}.m-quick-ring-icon{position:relative;display:inline-flex}.m-quick-ring-icon .glyph{display:inline-flex;-webkit-mask-image:radial-gradient(circle at calc(100% - 1px) calc(100% - 1px),transparent 6.5px,#000 7px);mask-image:radial-gradient(circle at calc(100% - 1px) calc(100% - 1px),transparent 6.5px,#000 7px)}.m-quick-ring-icon .plus{position:absolute;right:-4px;bottom:-4px;color:var(--tone)}.m-quick-ring-value{display:flex;align-items:baseline;justify-content:center;gap:3px;white-space:nowrap;line-height:1}.m-quick-ring-value strong{font-size:.8125rem;font-weight:800;color:var(--text-primary)}.m-quick-ring-value small{font-size:.6rem;font-weight:700;color:var(--tone)}.m-quick-oneshot{display:flex;flex-direction:column;gap:8px}.m-quick-oneshot-label{font-size:.8125rem;color:var(--text-muted)}.m-quick-chips{display:flex;flex-wrap:wrap;gap:8px}.m-quick-chip{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:999px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer;transition:transform .15s var(--ease-out),background-color .15s var(--ease-out)}.m-quick-chip:active{transform:scale(.95);background-color:var(--bg-surface)}.m-quick-note-box{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-muted)}.m-quick-note-input{flex:1;min-width:0;background:none;border:none;outline:none;font-family:inherit;font-size:.9375rem;color:var(--text-primary)}.m-quick-note-input::placeholder{color:var(--text-muted)}.m-quick-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:-5px}.m-quick-tasks .m-task-item:first-child{border-top:none}.m-food-session-pill{position:relative;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:.8125rem;font-weight:700;flex-shrink:0}.m-food-session-native{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px;-moz-appearance:none;appearance:none;-webkit-appearance:none}.m-suggest.has-icon{position:relative}.m-suggest-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-muted);display:inline-flex;pointer-events:none}.m-suggest.has-icon .m-quick-input{height:54px;padding-left:46px;border-radius:16px;background:transparent;font-size:16px;font-weight:700}.m-food-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:-4px -2px 0;padding:4px 2px}.m-food-chips::-webkit-scrollbar{display:none}.m-food-chip{flex-shrink:0;padding:8px 14px;border-radius:999px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:700;white-space:nowrap;cursor:pointer}.m-food-chip:active{background:var(--bg-surface)}.m-food-weight-card{border:1px solid var(--border-color);border-radius:16px;overflow:hidden}.m-food-stepper{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 12px}.m-food-step-btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.m-food-step-btn:active{background:var(--bg-surface)}.m-food-weight-value{display:flex;align-items:baseline;justify-content:center;gap:4px}.m-food-weight-input{width:4.2ch;border:none;outline:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:2rem;font-weight:800;text-align:right;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.m-food-weight-input::-webkit-outer-spin-button,.m-food-weight-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.m-food-weight-unit{font-size:.9375rem;color:var(--text-muted)}.m-food-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;border-top:1px solid var(--border-subtle)}.m-food-presets button{padding:10px 0;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.9375rem;font-weight:700;cursor:pointer}.m-food-presets button.active{background:var(--text-primary);color:var(--bg-main)}.m-food-state{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--border-color);border-radius:16px}.m-food-state button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:42px;border:none;border-radius:12px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.9375rem;font-weight:700;cursor:pointer}.m-food-state button.active{background:var(--text-primary);color:var(--bg-main)}.m-food-submit{height:54px;border-radius:16px}.m-food-session-pill{padding:6px 11px;gap:5px;font-size:.8125rem}.m-food-form{gap:14px}.m-food-form .m-quick-field{gap:7px}.m-food-form .m-quick-label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}.m-suggest.has-icon .m-quick-input{height:50px;padding-left:44px;border-radius:14px;font-size:16px;font-weight:600}.m-food-chip{padding:7px 13px;font-size:.8125rem;font-weight:600}.m-food-step-btn{width:34px;height:34px}.m-food-weight-input{font-size:1.9rem}.m-food-presets button{padding:9px 0;font-size:.8125rem}.m-food-state button{height:38px;font-size:.9375rem}.m-food-submit{height:48px;border-radius:14px;font-size:.92rem}.m-food-icon-cook{color:#f28b82}.m-food-icon-raw{color:#86d6a4}.m-set-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.m-set-last{font-size:.8125rem;color:var(--text-muted)}.m-set-last b{color:var(--text-primary);font-weight:700}.m-set-params{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--border-color);border-radius:16px;overflow:hidden}.m-set-col{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px}.m-set-col+.m-set-col{border-left:1px solid var(--border-subtle)}.m-set-col-label{font-size:.8125rem;color:var(--text-muted)}.m-set-col-input{width:100%;border:none;outline:none;background:transparent;color:var(--text-primary);font-family:inherit;font-size:1.7rem;font-weight:800;text-align:center;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.m-set-col-input::-webkit-outer-spin-button,.m-set-col-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.m-set-col-btns{display:flex;gap:6px}.m-set-col-btns button{width:28px;height:28px;border-radius:50%;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.m-set-col-btns button:active{background:var(--bg-surface)}.m-set-repeat{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-family:inherit;font-size:.8125rem;font-weight:700;cursor:pointer}.m-set-repeat:active{background:var(--bg-surface)}.m-desk-aside,.m-desk-main:not(.m-day-content){display:contents}@media (min-width: 769px){.app-shell.is-mobile-ui .main-container{max-width:none;padding:20px 0 0;gap:0}.app-shell.is-mobile-ui .m-page-shell{max-width:560px;padding-bottom:120px}.app-shell.is-mobile-ui .m-bottom-nav{left:50%;right:auto;bottom:18px;width:400px;height:66px;padding:0 10px;transform:translate(-50%);border:1px solid var(--border-subtle);border-radius:24px;box-shadow:0 1px 2px #0000000a,0 18px 40px -18px #00000059}.app-shell.is-mobile-ui .m-bottom-nav-btn:not(.active):hover{color:var(--text-primary)}.app-shell.is-mobile-ui .ai-floating-avatar-btn{display:none!important}.app-shell.is-mobile-ui .ai-floating-coach,.app-shell.is-mobile-ui .ai-coach-floating-wrapper{bottom:100px!important}}@media (min-width: 1024px){.app-shell.is-mobile-ui .m-page-shell.m-desk-shell{max-width:1160px;padding:0 28px 120px;display:grid;grid-template-columns:minmax(380px,430px) minmax(0,1fr);column-gap:28px;align-items:start}.app-shell.is-mobile-ui .m-desk-aside{display:flex;flex-direction:column;gap:10px;position:sticky;top:16px;min-width:0}.app-shell.is-mobile-ui .m-desk-main{display:flex;flex-direction:column;gap:10px;min-width:0}.app-shell.is-mobile-ui .m-desk-main>:first-child>.m-section-divider:first-child{display:none}.app-shell.is-mobile-ui .m-desk-main>:first-child>:first-child{border-top:none;margin-top:0;padding-top:0}}:root{--m-ease-out: var(--ease-out);--m-ease-spring: var(--ease-spring);--m-shadow-rest: 0 1px 2px rgba(0, 0, 0, .035), 0 10px 26px -20px rgba(0, 0, 0, .3);--m-shadow-lift: 0 1px 2px rgba(0, 0, 0, .04), 0 18px 34px -22px rgba(0, 0, 0, .38)}[data-theme=dark]{--m-shadow-rest: 0 1px 2px rgba(0, 0, 0, .3), 0 12px 28px -18px rgba(0, 0, 0, .7);--m-shadow-lift: 0 1px 2px rgba(0, 0, 0, .35), 0 20px 36px -20px rgba(0, 0, 0, .85)}.m-desk-shell{animation:mPageEnter .5s var(--m-ease-out) both}@keyframes mPageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.m-desk-main[data-tab-dir=next]>.m-tab-fade-in-section,.m-desk-main[data-tab-dir=next]>.m-todo-fade-in-section{animation:mTabInNext .42s var(--m-ease-out) both}.m-desk-main[data-tab-dir=prev]>.m-tab-fade-in-section,.m-desk-main[data-tab-dir=prev]>.m-todo-fade-in-section{animation:mTabInPrev .42s var(--m-ease-out) both}@keyframes mTabInNext{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:none}}@keyframes mTabInPrev{0%{opacity:0;transform:translate(-22px)}to{opacity:1;transform:none}}.m-desk-main[data-tab-dir]>.m-tab-fade-in-section>*,.m-desk-main[data-tab-dir]>.m-todo-fade-in-section>*{animation:mBlockRise .5s var(--m-ease-out) both}.m-desk-main[data-tab-dir]>.m-tab-fade-in-section>:nth-child(2),.m-desk-main[data-tab-dir]>.m-todo-fade-in-section>:nth-child(2){animation-delay:50ms}.m-desk-main[data-tab-dir]>.m-tab-fade-in-section>:nth-child(n+3),.m-desk-main[data-tab-dir]>.m-todo-fade-in-section>:nth-child(n+3){animation-delay:.1s}@keyframes mBlockRise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.md-card,.md-stat,.m-day-donut-card,.m-week-card,.m-primary-stat-card,.m-quick-card,.ws-card,.wwc-card{box-shadow:var(--m-shadow-rest)}@media (hover: hover) and (pointer: fine){.md-card,.md-stat,.m-quick-card,.ws-card{transition:box-shadow .3s var(--ease-out),transform .35s var(--m-ease-out)}.md-card:hover,.ws-card:hover{box-shadow:var(--m-shadow-lift)}.md-stat:hover,.m-quick-card:hover{box-shadow:var(--m-shadow-lift);transform:translateY(-2px)}}.m-bottom-nav-btn{transition:color .28s var(--ease-out),opacity .18s var(--ease-out),transform .25s var(--m-ease-spring)}.m-bottom-nav-btn:active{transform:scale(.88)}.m-bottom-center-btn svg{transition:transform .4s var(--m-ease-spring)}.m-bottom-center-btn:hover svg{transform:rotate(90deg)}@media (prefers-reduced-motion: reduce){.m-desk-shell,.m-desk-main[data-tab-dir]>.m-tab-fade-in-section,.m-desk-main[data-tab-dir]>.m-todo-fade-in-section,.m-desk-main[data-tab-dir]>.m-tab-fade-in-section>*,.m-desk-main[data-tab-dir]>.m-todo-fade-in-section>*{animation:none!important}.md-stat:hover,.m-quick-card:hover,.m-bottom-nav-btn:active,.m-bottom-center-btn:hover svg{transform:none}}.m-edge-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#0000001f;animation:m-edge-fade .18s var(--ease-out)}.m-edge-zone{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:10001;width:28px;height:140px;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer}.m-edge-zone.is-left{right:auto;left:0}.m-edge-grabber{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:6px;height:56px;border-radius:99px;background:var(--text-muted);opacity:.7;transition:opacity .18s var(--ease-out)}.m-edge-zone.is-left .m-edge-grabber{right:auto;left:8px}.m-edge-zone.is-open .m-edge-grabber{opacity:0}.m-edge-rail{position:fixed;right:10px;top:50%;z-index:10002;display:flex;flex-direction:column;gap:6px;padding:6px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;box-shadow:0 6px 20px #0000001f;touch-action:none;-webkit-user-select:none;user-select:none;transform:translate(calc(100% + 12px),-50%);visibility:hidden;transition:transform .2s var(--ease-out),visibility 0s linear .2s}.m-edge-rail.is-left{right:auto;left:10px;transform:translate(calc(-100% - 12px),-50%)}.m-edge-rail.is-open{transform:translateY(-50%);visibility:visible;transition:transform .2s var(--ease-out),visibility 0s}.m-edge-rail.is-left.is-open{transform:translateY(-50%)}.m-edge-btn{position:relative;width:46px;height:44px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;border-radius:12px;color:var(--text-muted);cursor:pointer;transition:color .15s var(--ease-out),background-color .15s var(--ease-out)}.m-edge-btn.active{color:var(--text-primary);background-color:var(--bg-primary)}.m-edge-btn.active:before{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);width:3px;height:22px;border-radius:99px;background-color:var(--text-primary)}.m-edge-rail.is-left .m-edge-btn.active:before{left:auto;right:-6px}.m-edge-label{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);white-space:nowrap;font-size:.8125rem;font-weight:700;color:var(--bg-primary);background:var(--text-primary);padding:5px 10px;border-radius:9px;pointer-events:none}.m-edge-rail.is-left .m-edge-label{right:auto;left:calc(100% + 12px)}@keyframes m-edge-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.m-edge-rail,.m-edge-rail.is-open{transition:none}}:root{--ascii-font: "JetBrains Mono", monospace;--ascii-skeleton: var(--text-secondary, #5C5A55);--ascii-accent: var(--text-primary, #222220)}[data-theme=dark]{--ascii-skeleton: #6E6B62;--ascii-accent: #EDE9E1}.ars{font-family:var(--ascii-font)!important}.sk-box.ars{overflow:hidden}.sk-box .ars-block{background:var(--bg-surface);border:1px solid var(--border-subtle);box-sizing:border-box}[data-theme=dark] .sk-box .ars-block{background:#1b1a18;border-color:#383632}.sk-box{display:block;border-radius:var(--radius-sm, 6px);position:relative;overflow:hidden}.sk-stat-card{min-height:122px;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box}.sk-chart-box-line{min-height:268px}.sk-line-canvas{width:100%;height:165px;border-radius:var(--radius-sm);border:1px dashed var(--border-subtle);display:flex;align-items:flex-end;padding:14px 16px;gap:10px;box-sizing:border-box}.sk-chart-box-donut{min-height:280px}.sk-day-cell{cursor:default!important}.sk-day-score-summary{min-height:365px;display:flex;flex-direction:column;gap:14px;box-sizing:border-box}.sk-state-mini{height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:default!important}.sk-sleep-banner{height:36px;border-radius:var(--radius-sm);padding:8px 12px;display:flex;align-items:center;gap:8px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);box-sizing:border-box}.sk-timetable-skeleton{width:100%;background-color:var(--bg-surface);border:1px solid rgba(34,34,32,.08);border-radius:var(--radius-md);overflow:hidden;box-sizing:border-box}.sk-timetable-corner{width:80px;min-width:80px;height:48px;background-color:var(--bg-surface);border:1px solid rgba(34,34,32,.08);box-sizing:border-box}.sk-timetable-header-cell{width:160px;min-width:160px;height:48px;padding:8px 6px;text-align:center;border:1px solid rgba(34,34,32,.08);box-sizing:border-box;background-color:var(--bg-surface)}.sk-timetable-row{display:flex;height:78px;min-height:78px}.sk-timetable-y-cell{width:80px;min-width:80px;height:78px;border:1px solid rgba(34,34,32,.08);display:flex;align-items:center;justify-content:center;background-color:var(--bg-surface);box-sizing:border-box}.sk-timetable-task-cell{width:160px;min-width:160px;height:78px;padding:8px;border:1px solid rgba(34,34,32,.08);display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box}.sk-day-note-box{min-height:148px;box-sizing:border-box}.server-reconnect-banner{display:flex;align-items:center;justify-content:center;gap:10px;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:10px 18px;font-family:var(--font-sans);font-size:.8rem;font-weight:600;color:var(--text-primary);margin-bottom:16px;box-shadow:0 2px 8px #0000000a;animation:fadeIn .25s var(--ease-out);width:100%;box-sizing:border-box}.reconnect-pulse-dot{width:9px;height:9px;border-radius:50%;background-color:#f5bb5c;box-shadow:0 0 #f5bb5cb3;animation:reconnectPulse 1.6s infinite;flex-shrink:0}@keyframes reconnectPulse{0%{transform:scale(.95);box-shadow:0 0 #f5bb5cb3}70%{transform:scale(1.1);box-shadow:0 0 0 8px #f5bb5c00}to{transform:scale(.95);box-shadow:0 0 #f5bb5c00}}.session-restore-skeleton{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--bg-primary);padding:24px;box-sizing:border-box}.session-restore-inner{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}.session-restore-lines{display:flex;flex-direction:column;align-items:center;gap:8px}.session-restore-hint{font-size:.8rem;color:var(--text-secondary);max-width:380px}@media (max-width: 768px){.sk-stat-card{min-height:96px}.sk-timetable-corner,.sk-timetable-y-cell{width:58px;min-width:58px}.sk-timetable-header-cell,.sk-timetable-task-cell{width:124px;min-width:124px}.sk-timetable-row,.sk-timetable-y-cell,.sk-timetable-task-cell{height:68px;min-height:68px}.server-reconnect-banner{padding:8px 12px;font-size:.74rem;margin-bottom:12px}}.m-profile{--pf-size: 40px;--pf-item: 34px;--pf-gap: 2px;--pf-pad: 3px;--pf-ease: var(--ease-out);--pf-spring: var(--ease-spring);--pf-width: calc(var(--pf-size) + var(--pf-pad) + 3 * var(--pf-item) + 3 * var(--pf-gap));position:relative;flex-shrink:0;width:var(--pf-size);height:var(--pf-size);z-index:60}.m-profile-track{position:absolute;top:0;right:0;width:var(--pf-width);height:var(--pf-size);box-sizing:border-box;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-surface);box-shadow:0 1px 2px #0000000a,0 12px 26px -16px #0006;clip-path:inset(0 0 0 calc(100% - var(--pf-size)) round 999px);opacity:0;pointer-events:none;transition:clip-path .3s var(--pf-ease),opacity .2s var(--ease-out) .1s}.m-profile.is-open .m-profile-track{clip-path:inset(0 0 0 0 round 999px);opacity:1;transition:clip-path .46s var(--pf-ease),opacity .1s var(--ease-out)}.m-profile-items{position:absolute;top:0;right:calc(var(--pf-size) + var(--pf-gap));height:var(--pf-size);display:flex;align-items:center;gap:var(--pf-gap);visibility:hidden;transition:visibility 0s linear .3s}.m-profile.is-open .m-profile-items{visibility:visible;transition:visibility 0s}.m-profile-item{position:relative;width:var(--pf-item);height:var(--pf-item);padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);display:grid;place-items:center;cursor:pointer;opacity:0;transform:translate(14px) scale(.6);transition:opacity .14s var(--ease-out),transform .2s var(--ease-out),background-color .2s var(--ease-out),color .2s var(--ease-out);-webkit-tap-highlight-color:transparent}.m-profile.is-open .m-profile-item{opacity:1;transform:none;transition:opacity .25s var(--ease-out) calc(60ms + var(--i) * 55ms),transform .45s var(--pf-spring) calc(60ms + var(--i) * 55ms),background-color .2s var(--ease-out),color .2s var(--ease-out)}.m-profile-item:hover,.m-profile-item:focus-visible{background:var(--bg-main);color:var(--text-primary);outline:none}.m-profile.is-open .m-profile-item:active{transform:scale(.88);transition-delay:0s}.m-profile-item.is-danger{color:var(--state-bad, #ea6c6c)}.m-profile-item.is-danger:hover,.m-profile-item.is-danger:focus-visible{background:#ea6c6c1a;color:var(--state-bad, #ea6c6c)}.m-profile-item:after{content:attr(data-label);position:absolute;top:calc(100% + 8px);left:50%;padding:4px 8px;border-radius:7px;background:var(--text-primary);color:var(--bg-surface);font-family:var(--font-sans);font-size:.68rem;font-weight:600;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-4px);transition:opacity .15s var(--ease-out),transform .2s var(--pf-ease)}@media (hover: hover) and (pointer: fine){.m-profile-item:hover:after{opacity:1;transform:translate(-50%);transition-delay:.12s}}.m-profile-item:focus-visible:after{opacity:1;transform:translate(-50%)}.m-profile-trigger{position:relative;z-index:2;width:var(--pf-size);height:var(--pf-size);padding:0;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-primary);display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 2px #0000000a,0 6px 14px -10px #00000059;transition:transform .25s var(--pf-spring),background-color .3s var(--ease-out),color .3s var(--ease-out),border-color .3s var(--ease-out),box-shadow .3s var(--ease-out);-webkit-tap-highlight-color:transparent}.m-profile-trigger:active{transform:scale(.9)}.m-profile-trigger:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.m-profile.is-open .m-profile-trigger{background:var(--text-primary);color:var(--bg-surface);border-color:var(--text-primary);box-shadow:none}.m-profile-face{grid-area:1 / 1;display:grid;place-items:center;transition:opacity .2s var(--ease-out),transform .35s var(--pf-spring)}.m-profile-initials{font-family:var(--font-serif);font-size:.82rem;font-weight:800;letter-spacing:.02em;line-height:1}.m-profile-close{opacity:0;transform:rotate(-90deg) scale(.5)}.m-profile.is-open .m-profile-initials{opacity:0;transform:rotate(90deg) scale(.5)}.m-profile.is-open .m-profile-close{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.m-profile-track,.m-profile.is-open .m-profile-track{clip-path:none;transition:opacity .15s var(--ease-out)}.m-profile-item,.m-profile.is-open .m-profile-item,.m-profile-face{transform:none!important;transition:opacity .15s var(--ease-out)}}.md-period-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px}.md-period-btn{height:34px;border:none;border-radius:11px;background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-size:.8125rem;font-weight:600;cursor:pointer;transition:background-color .15s var(--ease-out),color .15s var(--ease-out)}.md-period-btn.active{background-color:var(--text-primary);color:var(--bg-surface);font-weight:800}.md-card{background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;padding:14px;box-shadow:0 2px 8px #00000008;box-sizing:border-box}.md-section-title{font-family:var(--font-serif);margin:10px 2px 0;font-size:.9375rem;font-weight:800;color:var(--text-primary);letter-spacing:-.01em}.md-muted{color:var(--text-secondary);font-size:.75rem}.md-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.md-hero-score{font-family:var(--font-serif);display:flex;align-items:baseline;margin-top:2px;color:var(--text-primary);font-weight:800;line-height:1.05}.md-hero-score strong{font-size:2.5rem;letter-spacing:-.03em}.md-hero-score span{font-size:1.1rem;margin-left:2px}.md-hero-right{text-align:right;display:flex;flex-direction:column;gap:2px}.md-hero-right strong{font-size:.9375rem;color:var(--text-primary)}.md-delta{margin-top:4px;font-size:.75rem;font-weight:700}.md-delta.up{color:var(--state-perfect)}.md-delta.down{color:var(--state-bad)}.md-hero-chart{margin-top:8px;touch-action:pan-y;-webkit-user-select:none;user-select:none}.md-hero-chart svg{width:100%;height:auto;display:block}.md-legend{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px;font-size:.6875rem;color:var(--text-secondary)}.md-legend span{display:inline-flex;align-items:center;gap:5px}.md-legend i{width:8px;height:8px;border-radius:2px;display:inline-block}.md-legend i.dash{width:12px;height:0;border-radius:0;border-top:2px dashed var(--state-good)}.md-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.md-stat{padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}.md-stat-label{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.md-stat-value{display:flex;align-items:baseline;gap:5px;font-size:1.5rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em;line-height:1.15}.md-stat-value small{font-size:.75rem;font-weight:600;color:var(--text-secondary);letter-spacing:0}.md-bar-track{height:6px;margin-top:6px;border-radius:99px;background-color:var(--level-none);overflow:hidden}.md-bar-fill{height:100%;border-radius:99px;transition:width .45s var(--ease-out)}.md-heat-scroll{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.md-heat-scroll::-webkit-scrollbar{display:none}.md-heat-scroll svg{display:block;max-width:none}.md-heat-legend{justify-content:flex-end;align-items:center;gap:4px;margin-top:8px}.md-weekday{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;align-items:end;height:110px}.md-weekday-col{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:5px;font-size:.6875rem;color:var(--text-secondary)}.md-weekday-bar{width:100%;min-height:3px;border-radius:8px 8px 0 0;background-color:var(--level-bad);transition:height .45s var(--ease-out)}.md-weekday-bar.best{background-color:var(--state-perfect)}.md-weekday-bar.worst{background-color:var(--state-bad)}.md-weekday-caption{margin-top:10px;font-size:.75rem;color:var(--text-primary)}.md-split{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}.md-split-right{text-align:right;display:flex;flex-direction:column;gap:2px}.md-split-right strong{font-size:1rem;color:var(--text-primary)}.md-macro-bar{display:flex;gap:3px;height:8px;margin-top:12px}.md-macro-bar span{border-radius:99px;min-width:3px}.md-workout-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.md-workout-grid .md-stat-value{font-size:1.3rem}.md-habit-list{display:flex;flex-direction:column;gap:12px}.md-habit-row-head{display:flex;justify-content:space-between;gap:8px;font-size:.8125rem;color:var(--text-primary)}.md-habit-row-head span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.md-habit-row-head span:last-child{font-weight:700;flex-shrink:0}.md-empty{padding:8px 0;text-align:center;color:var(--text-secondary);font-size:.8125rem}.md-month-row{display:flex;align-items:center;justify-content:space-between;padding:0 2px}.md-month-row .m-month-nav-btn{width:36px;height:36px;border-radius:10px}.md-month-row .m-month-nav-text-wrap{height:36px}.md-month-row .m-month-nav-text{border:none;font-size:.9375rem}.dsm-body{padding:8px 0 4px;margin:0 -20px;display:flex;flex-direction:column;align-items:center;gap:14px;overflow:hidden}.dsm-viewport{width:100%;overflow:hidden;touch-action:pan-y;cursor:grab}.dsm-viewport:active{cursor:grabbing}.dsm-track{display:flex;transition:transform .45s var(--ease-spring);will-change:transform}.dsm-track.swiping{transition:none}.dsm-slide{flex:0 0 100%;padding:0 16px;box-sizing:border-box;display:flex;justify-content:center}.dsm-card{--state-color: var(--text-primary);width:100%;max-width:260px;display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 16px 12px;border-radius:24px;background:var(--bg-surface);opacity:.45;transform:scale(.92);transition:opacity .35s var(--ease-out),transform .45s var(--ease-spring),border-color .2s var(--ease-out)}.dsm-card.is-active{opacity:1;transform:scale(1)}.dsm-card-head{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.dsm-state-name{margin:0;font-family:inherit;font-size:1.02rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);line-height:1.25}.dsm-state-kind{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--state-color);transition:color .2s var(--ease-out)}.dsm-ring{position:relative;width:168px;height:168px;touch-action:none;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.dsm-ring:focus-visible{border-radius:50%;box-shadow:0 0 0 2px var(--state-color)}.dsm-ring-svg{width:100%;height:100%;display:block;overflow:visible}.dsm-ring-track{fill:none;stroke:var(--bg-mixed)}.dsm-ring-fill{fill:none}.dsm-ring-handle-halo{opacity:.2}.dsm-ring-handle{fill:var(--bg-surface);filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}.dsm-ring:not(.dragging) .dsm-ring-fill{transition:stroke-dasharray .3s var(--ease-out),stroke .2s var(--ease-out)}.dsm-ring:not(.dragging) .dsm-ring-handle,.dsm-ring:not(.dragging) .dsm-ring-handle-halo{transition:cx .3s var(--ease-out),cy .3s var(--ease-out),r .15s var(--ease-out)}.dsm-ring-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:color .2s var(--ease-out)}.dsm-card-foot{min-height:22px;display:flex;align-items:center}.dsm-bonus-tag{font-size:.68rem;font-weight:600;padding:3px 10px;border-radius:999px;background-color:color-mix(in srgb,var(--state-color) 14%,transparent);color:var(--text-secondary);line-height:1.3}.dsm-bonus-tag.ghost{visibility:hidden}.dsm-dots{display:flex;align-items:center;gap:7px}.dsm-dot-nav{width:7px;height:7px;padding:0;border:none;border-radius:999px;background:var(--border-subtle);cursor:pointer;transition:width .3s var(--ease-out),background-color .2s var(--ease-out)}.dsm-dot-nav.active{width:20px;background:var(--text-primary)}.wwc-card{--wwc-accent: #F3B65C;--wwc-up: #5DBC83;--wwc-down: #EA6C6C;width:100%;box-sizing:border-box;padding:16px 16px 14px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-bottom:3px solid var(--text-primary);border-radius:18px;box-shadow:0 2px 8px #00000008}[data-theme=dark] .wwc-card{--wwc-up: #9FD278;--wwc-down: #F39590}.wwc-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.wwc-title{font-family:var(--font-serif);margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.wwc-streak{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-muted)}.wwc-bars{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:14px}.wwc-col{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:0;background:none;border:0;cursor:pointer;font:inherit}.wwc-bar-slot{height:80px;display:flex;align-items:flex-end}.wwc-bar{width:100%;border-radius:6px;box-sizing:border-box;transition:height .4s var(--ease-out),background-color .2s}.wwc-bar.has{background:var(--text-primary)}.wwc-bar.has{transform-origin:bottom;animation:wwc-grow .6s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 70ms)}@keyframes wwc-grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media (prefers-reduced-motion: reduce){.wwc-bar.has{animation:none}}.wwc-bar.zero{height:3px;background:var(--border-subtle)}.wwc-bar.future{height:6px;border:1px dashed var(--border-subtle);background:transparent}.wwc-col.is-selected .wwc-bar.has{background:var(--wwc-accent)}.wwc-day{text-align:center;font-size:13px;color:var(--text-muted)}.wwc-col.is-selected .wwc-day{color:var(--text-primary);font-weight:700}.wwc-foot{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 10px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--border-subtle);font-size:13px}.wwc-total{color:var(--text-secondary)}.wwc-total strong{color:var(--text-primary);font-size:15px;margin-left:4px}.wwc-change.up{color:var(--wwc-up)}.wwc-change.down{color:var(--wwc-down)}.ws-wrap{--ws-accent: #F3B65C;--ws-pr: #E98C6A;--ws-pink: #e58a9a;--ws-green: #6fa83a;display:flex;flex-direction:column;gap:14px;margin-bottom:14px}[data-theme=dark] .ws-wrap{--ws-pr: #f0997b;--ws-green: #9FD278}.ws-card{box-sizing:border-box;padding:16px;background:var(--bg-surface);border:1px solid var(--border-color, var(--text-primary));border-radius:18px;box-shadow:0 2px 8px #00000008}.ws-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.ws-head-left{display:flex;flex-direction:column;gap:3px;min-width:0}.ws-title{font-family:var(--font-serif);margin:0;font-size:15px;font-weight:500;color:var(--text-primary)}.ws-head-sub{font-size:13px;color:var(--text-muted)}.ws-empty{margin:4px 0 12px;font-size:13px;color:var(--text-muted)}.ws-pills{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:55%}.ws-pill{--pill-bg: rgba(243, 182, 92, .16);--pill-fg: #8a4b00;padding:3px 9px;font:inherit;font-size:13px;font-weight:700;color:var(--pill-fg);background:var(--pill-bg);border:1px solid transparent;border-radius:999px;cursor:pointer}.ws-pill.on{border-color:var(--pill-fg)}.ws-pill.c-nguc{--pill-bg: rgba(243, 182, 92, .18);--pill-fg: #8a4b00}.ws-pill.c-lung{--pill-bg: rgba(112, 164, 214, .16);--pill-fg: #1f5a96}.ws-pill.c-vai{--pill-bg: rgba(139, 92, 196, .16);--pill-fg: #5b3a99}.ws-pill.c-tay_sau{--pill-bg: rgba(40, 170, 140, .16);--pill-fg: #136b58}.ws-pill.c-tay_truoc{--pill-bg: rgba(220, 90, 130, .16);--pill-fg: #9a2f55}.ws-pill.c-core{--pill-bg: rgba(200, 170, 40, .2);--pill-fg: #7a6410}.ws-pill.c-leg{--pill-bg: rgba(93, 188, 131, .18);--pill-fg: #3f6b17}[data-theme=dark] .ws-pill.c-nguc{--pill-bg: rgba(243, 182, 92, .2);--pill-fg: #f5b765}[data-theme=dark] .ws-pill.c-lung{--pill-bg: rgba(141, 192, 238, .2);--pill-fg: #8cc3f0}[data-theme=dark] .ws-pill.c-vai{--pill-bg: rgba(170, 130, 230, .2);--pill-fg: #c4a6f0}[data-theme=dark] .ws-pill.c-tay_sau{--pill-bg: rgba(60, 200, 170, .2);--pill-fg: #7fddc6}[data-theme=dark] .ws-pill.c-tay_truoc{--pill-bg: rgba(240, 120, 160, .2);--pill-fg: #f4a0bf}[data-theme=dark] .ws-pill.c-core{--pill-bg: rgba(220, 190, 70, .2);--pill-fg: #e8d27a}[data-theme=dark] .ws-pill.c-leg{--pill-bg: rgba(159, 210, 120, .2);--pill-fg: #b3dc82}.ws-tag{padding:1px 5px;font-size:12px;font-weight:700;border-radius:5px;letter-spacing:.02em}.ws-tag.bw{color:#3f6b17;background:#5dbc8333}.ws-tag.mine{color:#8a4b00;background:#f3b65c33}.ws-tag.sys{color:var(--text-muted);background:var(--bg-mixed)}[data-theme=dark] .ws-tag.bw{color:#b3dc82}[data-theme=dark] .ws-tag.mine{color:#f5b765}.ws-ex{padding:12px 0;border-top:1px dashed var(--border-subtle)}.ws-ex:first-of-type{border-top:0;padding-top:0}.ws-ex-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.ws-ex-name{display:inline-flex;align-items:center;gap:6px;flex:1;min-width:0;padding:0;background:none;border:0;font:inherit;font-size:13px;font-weight:500;color:var(--text-primary);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.ws-ex-best{font-size:13px;color:var(--text-muted);white-space:nowrap}.ws-cols{display:flex;gap:5px}.ws-col{flex:1;box-sizing:border-box;min-width:0;padding:0;display:flex;flex-direction:column;justify-content:flex-end;gap:3px;background:none;border:0;font:inherit;cursor:pointer}.ws-col-bar{display:flex;align-items:flex-start;justify-content:center;padding-top:3px;box-sizing:border-box;background:var(--text-primary);color:var(--bg-surface);border-radius:6px 6px 3px 3px;font-size:12px;font-weight:700;transition:height .3s var(--ease-out)}.ws-col-in{line-height:1.3}.ws-col:not(.ws-col-add) .ws-col-bar{transform-origin:bottom;animation:ws-col-grow .5s var(--ease-spring) both;animation-delay:calc(var(--i, 0) * 60ms)}.ws-col:not(.ws-col-add) .ws-col-under{animation:ws-col-fade .4s var(--ease-out) both;animation-delay:calc(var(--i, 0) * 60ms + .15s)}.ws-col.is-new{animation:ws-col-open .34s var(--ease-out) both}.ws-col.is-new:not(.ws-col-add) .ws-col-bar{animation:ws-col-grow .5s var(--ease-spring) .26s both}.ws-col.is-new:not(.ws-col-add) .ws-col-under{animation:ws-col-fade .3s var(--ease-out) .45s both}@keyframes ws-col-open{0%{flex-grow:0;margin-left:-5px}to{flex-grow:1;margin-left:0}}@keyframes ws-col-grow{0%{transform:scaleY(0);opacity:0}to{transform:scaleY(1);opacity:1}}@keyframes ws-col-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.ws-col:not(.ws-col-add) .ws-col-bar,.ws-col:not(.ws-col-add) .ws-col-under,.ws-col.is-new,.ws-col.is-new:not(.ws-col-add) .ws-col-bar,.ws-col.is-new:not(.ws-col-add) .ws-col-under{animation:none}}.ws-col-under{text-align:center;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-col.is-pr .ws-col-bar{background:var(--ws-pr);color:#fff}.ws-col.is-pr .ws-col-under{color:var(--ws-pr);font-weight:700}.ws-col.is-editing .ws-col-bar{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 3px var(--text-primary)}.ws-col-add .ws-col-bar{align-items:center;background:transparent;color:var(--text-muted);border:1px dashed var(--border-subtle);padding-top:0}.ws-editor{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;background:var(--bg-mixed-subtle);border-radius:10px}.ws-editor label{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-muted)}.ws-editor input{width:58px;padding:5px 6px;font:inherit;font-size:13px;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px}.ws-editor .ws-name-input{flex:1;width:auto;min-width:0}.ws-icon-btn{margin-left:auto;padding:6px;display:inline-flex;color:var(--text-muted);background:none;border:0;cursor:pointer}.ws-next{margin:4px 0 10px;padding:12px;background:var(--bg-mixed-subtle);border-radius:12px}.ws-next-top{display:flex;align-items:center;gap:10px}.ws-next-icon{flex:0 0 auto;display:inline-flex;color:var(--ws-pr)}.ws-next-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text-muted)}.ws-next-text strong{font-size:13px;font-weight:500;color:var(--text-primary)}.ws-next-x{padding:4px;display:inline-flex;color:var(--text-muted);background:none;border:0;cursor:pointer}.ws-next-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.ws-next-empty{margin:0;font-size:13px;color:var(--text-muted)}.ws-alt{margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-subtle)}.ws-alt-label{display:block;margin-bottom:8px;font-size:13px;color:var(--text-muted)}.ws-alt-chips{display:flex;flex-wrap:wrap;gap:6px}.ws-alt-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;font:inherit;font-size:13px;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;cursor:pointer}.ws-alt-search{color:var(--text-muted);background:transparent;border-style:dashed}.ws-add-ex{width:100%;margin-top:4px;padding:9px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:13px;color:var(--text-muted);background:none;border:1px dashed var(--border-subtle);border-radius:12px;cursor:pointer}.ws-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:10px;margin-top:14px}.ws-btn-outline,.ws-btn-solid{padding:11px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:13px;font-weight:700;border-radius:12px;cursor:pointer}.ws-btn-outline.sm,.ws-btn-solid.sm{padding:8px;font-size:13px}.ws-btn-outline{color:var(--text-primary);background:transparent;border:1px solid var(--text-primary)}.ws-btn-solid{color:var(--bg-surface);background:var(--text-primary);border:1px solid var(--text-primary)}.ws-btn-solid:disabled{opacity:.6}.ws-rec-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ws-rec-grid>.ws-rec:last-child:nth-child(odd){grid-column:1 / -1}.ws-rec{padding:10px 12px;display:flex;flex-direction:column;gap:8px;font:inherit;text-align:left;color:var(--text-primary);background:transparent;border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer}.ws-rec.is-ready{background:#5dbc831f;border-color:var(--ws-green)}.ws-rec.is-selected{border-color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--text-primary)}.ws-rec-top{display:flex;justify-content:space-between;gap:6px;font-size:13px}.ws-rec-name{font-weight:700}.ws-rec-days{white-space:nowrap;font-size:13px;color:var(--text-muted)}.ws-rec-days.ready{color:var(--ws-green);font-weight:700}.ws-rec-track{display:block;height:4px;background:var(--bg-mixed);border-radius:4px;overflow:hidden}.ws-rec-fill{display:block;height:100%;border-radius:4px;transition:width .4s var(--ease-out)}.ws-rec-fill.low{background:var(--ws-pink)}.ws-rec-fill.mid{background:var(--ws-accent)}.ws-rec-fill.high,.ws-rec-fill.ready{background:var(--ws-green)}.ws-rec-scroll{display:flex;gap:10px;margin:0 -16px;padding:0 16px 2px;overflow-x:auto;scrollbar-width:none}.ws-rec-scroll::-webkit-scrollbar{display:none}.ws-pr{flex:0 0 150px;min-width:0;padding:10px 12px;display:flex;flex-direction:column;gap:4px;box-sizing:border-box;background:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);border-radius:12px}.ws-pr.is-today{background:#f3b65c24;border-color:var(--ws-accent)}.ws-pr-name{font-size:13px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-pr.is-today .ws-pr-name{color:var(--ws-accent)}.ws-pr-val{font-size:19px;color:var(--text-primary)}.ws-pr-sub{font-size:13px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-sheet{--ws-pr: #E98C6A;display:flex;flex-direction:column;gap:10px;padding-bottom:8px}[data-theme=dark] .ws-sheet{--ws-pr: #f0997b}.ws-sheet-search{width:100%;box-sizing:border-box;padding:10px 12px;font:inherit;font-size:15px;color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px}.ws-sheet-create{padding:10px 12px;font:inherit;font-size:13px;font-weight:700;text-align:left;color:var(--ws-pr);background:#e98c6a1a;border:1px dashed var(--ws-pr);border-radius:12px;cursor:pointer}.ws-sheet-list{display:flex;flex-direction:column}.ws-sheet-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 2px;font:inherit;text-align:left;color:var(--text-primary);background:none;border:0;border-bottom:1px dashed var(--border-subtle);cursor:pointer}.ws-sheet-row-main{display:flex;flex-direction:column;gap:2px;min-width:0}.ws-sheet-row-name{font-size:15px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-sheet-row-sub{font-size:13px;color:var(--text-muted)}.ws-sheet-tags{display:flex;gap:5px;flex:0 0 auto}.ws-form{display:flex;flex-direction:column;gap:10px}.ws-form-label{font-size:13px;color:var(--text-muted)}.ws-form-chips{display:flex;flex-wrap:wrap;gap:6px}.ws-form-chip{padding:6px 11px;font:inherit;font-size:13px;color:var(--text-primary);background:transparent;border:1px solid var(--border-subtle);border-radius:10px;cursor:pointer}.ws-form-chip.on{color:var(--bg-surface);background:var(--text-primary);border-color:var(--text-primary)}.ws-form-submit{margin-top:6px;width:100%}.ws-form-back{padding:8px;font:inherit;font-size:13px;color:var(--text-muted);background:none;border:0;cursor:pointer}.ws-next-empty-wrap{display:flex;align-items:center;justify-content:space-between;gap:10px}.ws-next-empty-wrap .ws-btn-outline.sm{flex:0 0 auto;padding:7px 12px}.ws-next{margin-bottom:12px}.ws-collapse{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .3s var(--ease-out),opacity .25s var(--ease-out),visibility 0s linear .3s}.ws-collapse.is-open{grid-template-rows:1fr;opacity:1;visibility:visible;transition-delay:0s}.ws-collapse-inner{min-height:0;overflow:hidden}@media (prefers-reduced-motion: reduce){.ws-collapse{transition:none}}.ws-col.is-removing{pointer-events:none;animation:ws-col-close .3s var(--ease-out) .12s both}.ws-col.is-removing .ws-col-bar{transform-origin:bottom;animation:ws-col-drop .35s cubic-bezier(.5,0,.75,0) both;animation-delay:0s}.ws-col.is-removing .ws-col-under{animation:ws-col-fade-out .2s var(--ease-out) both;animation-delay:0s}@keyframes ws-col-drop{to{transform:scaleY(0) scaleX(.6);opacity:0}}@keyframes ws-col-close{to{flex-grow:0;margin-left:-5px}}@keyframes ws-col-fade-out{to{opacity:0}}.ws-ex.is-vanishing{overflow:hidden;pointer-events:none;transform-origin:100% 0;animation:ws-ex-vanish .75s cubic-bezier(.55,0,.35,1) both}@keyframes ws-ex-vanish{0%{height:var(--h);opacity:1;transform:none;filter:none}55%{height:var(--h);opacity:0;transform:translate(45%) rotate(7deg) scale(.6);filter:blur(6px)}to{height:0;padding-top:0;padding-bottom:0;opacity:0;transform:translate(45%) rotate(7deg) scale(.6);filter:blur(6px)}}@media (prefers-reduced-motion: reduce){.ws-col.is-removing,.ws-col.is-removing .ws-col-bar,.ws-col.is-removing .ws-col-under,.ws-ex.is-vanishing{animation-duration:.01s}}.rt-wrap{margin-top:6px}.rt-row{display:grid;grid-template-columns:52px 1fr 52px;gap:8px}.rt-step,.rt-main{font:inherit;font-size:13px;font-weight:700;color:var(--text-primary);background:transparent;border:1px solid var(--text-primary);border-radius:12px;cursor:pointer}.rt-step{padding:11px 0;color:var(--text-secondary);border-color:var(--border-subtle)}.rt-main{position:relative;overflow:hidden;padding:11px}.rt-main.is-running{border-color:var(--text-primary)}.rt-main.is-done{color:var(--bg-surface);background:var(--text-primary)}.rt-fill{position:absolute;inset:0 auto 0 0;background:var(--bg-mixed);transition:width .25s linear}.rt-label{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:6px}.rt-hint{margin:8px 2px 0;font-size:13px;color:var(--text-muted)}.nc-card,.nm-card{--nc-calo: #ED985A;--nc-water: #70A4D6;--nc-body: var(--bg-surface);--nc-outline: var(--text-primary);--nc-face: var(--nc-outline);--nm-current-bg: var(--bg-mixed-subtle)}[data-theme=dark] .nc-card,[data-theme=dark] .nm-card{--nc-calo: #F4A66A;--nc-water: #8DC0EE;--nm-current-bg: var(--bg-mixed)}.m-sheet-panel{--nc-calo: #ED985A;--nc-water: #70A4D6}[data-theme=dark] .m-sheet-panel{--nc-calo: #F4A66A;--nc-water: #8DC0EE}.nc-card{margin:0;padding:10px;border:1px solid var(--border-subtle);border-bottom:3px solid var(--text-primary);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:0 2px 8px #00000008}.nc-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr);align-items:center;gap:4px}.nc-stat{display:flex;flex-direction:column;gap:2px;min-width:0}.nc-stat-left{align-items:flex-start;padding-left:4px}.nc-stat-right{align-items:flex-end;padding-right:4px;text-align:right}.nc-stat-name{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:700;color:var(--text-secondary)}.nc-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.nc-dot.calo{background:var(--nc-calo)}.nc-dot.water{background:var(--nc-water)}.nc-stat-big{font-size:1.45rem;font-weight:800;line-height:1.1;color:var(--text-primary);font-variant-numeric:tabular-nums}.nc-stat-sub{font-size:.75rem;color:var(--text-muted)}.nc-stat-pct{font-size:.82rem;font-weight:800}.nc-stat-pct.calo{color:var(--nc-calo)}.nc-stat-pct.water{color:var(--nc-water)}.nc-water-btn{margin-top:6px;display:inline-flex;align-items:center;gap:3px;padding:5px 9px;font:inherit;font-size:.8125rem;font-weight:800;color:var(--nc-water);background:transparent;border:1.5px solid var(--nc-water);border-radius:999px;cursor:pointer;-webkit-tap-highlight-color:transparent}.nc-water-btn:active{transform:scale(.94)}.nc-calo-btn{margin-top:6px;display:inline-flex;align-items:center;gap:3px;padding:5px 9px;font:inherit;font-size:.8125rem;font-weight:800;color:var(--nc-calo);background:transparent;border:1.5px solid var(--nc-calo);border-radius:999px;cursor:pointer;-webkit-tap-highlight-color:transparent}.nc-calo-btn:active{transform:scale(.94)}.nc-char-btn{padding:0;border:0;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent;display:block;justify-self:center;width:100%;max-width:116px}.nc-char-btn:active .nc-svg{transform:scale(.97)}.nc-svg{width:100%;height:auto;display:block;overflow:visible;transition:transform .15s var(--ease-out)}.nc-shadow{fill:#00000029}.nc-fill{transition:transform .9s var(--ease-out)}.nc-face{opacity:0;transition:opacity .35s var(--ease-out)}.nc-face.on{opacity:1}.nc-z{font-size:13px;font-weight:800;font-family:inherit}.nc-drop{animation:ncDrop 2.2s ease-in infinite}.nc-drop.d2{animation-delay:1.1s}@keyframes ncDrop{0%{transform:translateY(-3px);opacity:0}30%{opacity:1}to{transform:translateY(9px);opacity:0}}.nc-sparkles{opacity:0;transition:opacity .5s var(--ease-out)}.nc-sparkles.on{opacity:1}.nc-spark{transform-box:fill-box;transform-origin:center;animation:ncTwinkle 1.8s ease-in-out infinite}.nc-spark.s2{animation-delay:.4s}.nc-spark.s3{animation-delay:.9s}.nc-spark.s4{animation-delay:1.3s}@keyframes ncTwinkle{0%,to{transform:scale(.5);opacity:.5}50%{transform:scale(1.1);opacity:1}}.nc-pill{display:flex;align-items:center;justify-content:center;gap:8px;width:max-content;margin:10px auto 0;padding:6px 16px;font-size:.8125rem;font-weight:800;color:var(--text-primary);border:1.5px solid var(--border-color);border-radius:999px}.nc-pill-dot{width:9px;height:9px;border-radius:50%;background:var(--state-bad)}.nc-pill-dot.s1{background:var(--state-medium)}.nc-pill-dot.s2{background:var(--state-good)}.nc-pill-dot.s3{background:var(--state-perfect)}@media (prefers-reduced-motion: reduce){.nc-fill,.nc-face,.nc-sparkles{transition:none}.nc-drop,.nc-spark{animation:none}}.nm-card{margin:0 0 14px}.nm-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.nm-title{font-family:var(--font-serif);margin:0;font-size:.95rem;font-weight:800;color:var(--text-primary)}.nm-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;color:var(--text-primary);background:transparent;border:1.5px solid var(--border-color);border-radius:10px;cursor:pointer}.nm-icon-btn.sm{width:26px;height:26px;border-radius:8px;flex-shrink:0}.nm-table{border:1px solid var(--border-subtle);border-radius:16px;background:var(--bg-surface);overflow:hidden}.nm-session{background:transparent;transition:background-color .35s var(--ease-out)}.nm-session.current{background:var(--nm-current-bg)}.nm-session+.nm-session{border-top:1px solid var(--border-subtle)}.nm-session-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:12px 14px 8px;text-align:left;font:inherit;background:transparent;border:0;color:var(--text-primary)}.nm-session-head.as-btn{cursor:pointer;-webkit-tap-highlight-color:transparent}.nm-session-head.as-btn:active{background:var(--bg-mixed-subtle)}.nm-session.empty .nm-session-head{padding:12px 14px}.nm-session-name{font-size:.9375rem;font-weight:800;color:var(--text-primary)}.nm-session-name.muted{color:var(--text-muted);font-weight:700}.nm-session-time{margin-left:8px;font-size:.8125rem;font-weight:600;color:var(--text-muted)}.nm-session-kcal{font-size:.92rem;font-weight:800;color:var(--text-primary);font-variant-numeric:tabular-nums}.nm-session-add{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;padding:0;color:var(--text-primary);background:transparent;border:1.5px solid var(--border-color);border-radius:50%;cursor:pointer}.nm-session-add:active{transform:scale(.9)}.nm-session-items{padding:0 0 8px}.nm-item{position:relative;overflow:hidden}.nm-item-delete{position:absolute;top:0;right:0;bottom:0;width:92px;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--state-bad);border:0;cursor:pointer}.nm-item-main{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;background:var(--bg-surface);touch-action:pan-y;user-select:none;-webkit-user-select:none;transition:transform .22s var(--ease-out),opacity .18s var(--ease-out),background-color .35s var(--ease-out)}.nm-session.current .nm-item-main{background:var(--nm-current-bg)}.nm-item.removing{opacity:0;transition:opacity .17s var(--ease-out)}.nm-item-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9375rem;font-weight:700;color:var(--text-primary)}.nm-item-name em{font-style:normal;font-weight:500;font-size:.8125rem;color:var(--text-muted);margin-left:6px}.nm-item-kcal{flex-shrink:0;font-size:.8125rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.nm-hint{margin:10px 0 0;text-align:center;font-size:.8125rem;color:var(--text-muted)}.nm-primary{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:6px;padding:12px 14px;font:inherit;font-size:.9375rem;font-weight:800;color:var(--btn-hover-text);background:var(--btn-hover-bg);border:1.5px solid var(--btn-border);border-radius:12px;cursor:pointer}.nm-primary:disabled{opacity:.45;cursor:default}@media (prefers-reduced-motion: reduce){.nm-session,.nm-item-main,.nm-item.removing{transition:none}}.nm-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:var(--bg-mixed-subtle);border-radius:12px;margin-bottom:12px}.nm-seg-btn{padding:8px 0;font:inherit;font-size:.8125rem;font-weight:700;color:var(--text-secondary);background:transparent;border:0;border-radius:9px;cursor:pointer}.nm-seg-btn.active{color:var(--btn-hover-text);background:var(--btn-hover-bg)}.nm-search{display:flex;align-items:center;gap:8px;padding:0 12px;color:var(--text-muted);border:1.5px solid var(--border-color);border-radius:12px;background:var(--bg-surface)}.nm-search input,.nm-input{flex:1;min-width:0;padding:12px 0;font:inherit;font-size:.9375rem;color:var(--text-primary);background:transparent;border:0;outline:none}.nm-input{width:100%;box-sizing:border-box;padding:12px;border:1.5px solid var(--border-color);border-radius:12px;background:var(--bg-surface)}.nm-sugg{list-style:none;margin:10px 0 0;padding:0}.nm-sugg-row{display:flex;align-items:center;gap:8px;width:100%;padding:11px 4px;text-align:left;font:inherit;color:var(--text-primary);background:transparent;border:0;border-bottom:1px solid var(--border-subtle);cursor:pointer}.nm-sugg-row.create{color:var(--nc-calo);font-weight:800;border-bottom:0}.nm-sugg-name{flex:1;min-width:0;font-size:.9375rem;font-weight:700}.nm-sugg-kcal{font-size:.8125rem;color:var(--text-muted);white-space:nowrap}.nm-tag{padding:2px 7px;font-size:.75rem;font-weight:800;border-radius:999px;border:1px solid var(--border-subtle);color:var(--text-secondary);white-space:nowrap}.nm-tag.personal{color:var(--nc-calo);border-color:var(--nc-calo)}.nm-link-row{display:flex;align-items:center;gap:8px;margin-top:12px;padding:10px 2px;font:inherit;font-size:.82rem;font-weight:700;color:var(--text-secondary);background:transparent;border:0;cursor:pointer}.nm-link{font:inherit;font-size:.8125rem;font-weight:800;color:var(--nc-calo);background:transparent;border:0;cursor:pointer}.nm-picked{margin-top:4px;padding:14px;border:1.5px solid var(--border-color);border-radius:14px;background:var(--bg-surface)}.nm-picked-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.nm-picked-name{font-size:1rem;color:var(--text-primary)}.nm-picked-macros{display:flex;gap:12px;margin-top:6px;font-size:.8125rem;color:var(--text-secondary);flex-wrap:wrap}.nm-picked-kcal{margin:10px 0 12px;font-size:.9375rem;color:var(--text-secondary)}.nm-picked-kcal strong{font-size:2.2rem;line-height:1;color:var(--nc-calo);font-variant-numeric:tabular-nums}.nm-stepper{display:flex;align-items:center;justify-content:center;gap:14px}.nm-stepper button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--text-primary);background:transparent;border:1.5px solid var(--border-color);border-radius:50%;cursor:pointer}.nm-stepper label{display:flex;align-items:baseline;gap:4px;font-size:1rem;font-weight:800;color:var(--text-primary)}.nm-stepper input{width:72px;padding:6px 0;text-align:center;font:inherit;font-size:1.4rem;font-weight:800;color:var(--text-primary);background:transparent;border:0;border-bottom:2px solid var(--border-color);outline:none;-moz-appearance:textfield}.nm-stepper input::-webkit-outer-spin-button,.nm-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nm-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1.5px solid var(--border-subtle);margin-bottom:10px}.nm-tabs button{padding:10px 0;font:inherit;font-size:.9375rem;font-weight:700;color:var(--text-muted);background:transparent;border:0;border-bottom:2.5px solid transparent;margin-bottom:-1.5px;cursor:pointer}.nm-tabs button.active{color:var(--text-primary);border-bottom-color:var(--nc-calo)}.nm-cats{display:flex;gap:6px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}.nm-cats::-webkit-scrollbar{display:none}.nm-cat{flex-shrink:0;padding:6px 13px;font:inherit;font-size:.8125rem;font-weight:700;color:var(--text-secondary);background:transparent;border:1.5px solid var(--border-subtle);border-radius:999px;cursor:pointer}.nm-cat.active{color:var(--btn-hover-text);background:var(--btn-hover-bg);border-color:var(--btn-border)}.nm-lib{list-style:none;margin:0;padding:0}.nm-lib-row{display:flex;align-items:center;gap:8px;padding:10px 2px;border-bottom:1px solid var(--border-subtle)}.nm-lib-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.nm-lib-main strong{font-size:.9375rem;color:var(--text-primary)}.nm-lib-main span{font-size:.8125rem;color:var(--text-muted)}.nm-lib-add{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;color:var(--nc-calo);background:transparent;border:1.5px solid var(--nc-calo);border-radius:50%;cursor:pointer}.nm-empty{padding:24px 0;text-align:center;font-size:.8125rem;color:var(--text-muted)}.nm-foot{margin:12px 0 0;text-align:center;font-size:.8125rem;color:var(--text-muted)}.nm-foot.left{text-align:left;margin:8px 0 12px}.nm-macro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.nm-macro-box{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px;border:1.5px solid var(--border-color);border-radius:12px;background:var(--bg-surface);min-width:0}.nm-macro-box span{font-size:.75rem;font-weight:700;color:var(--text-secondary)}.nm-macro-box em{font-style:normal;font-size:.75rem;color:var(--text-muted)}.nm-macro-box input{width:100%;padding:2px 0;text-align:center;font:inherit;font-size:1.1rem;font-weight:800;color:var(--text-primary);background:transparent;border:0;outline:none;-moz-appearance:textfield}.nm-macro-box input::-webkit-outer-spin-button,.nm-macro-box input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.nm-macro-box.kcal{border-style:dashed}.nm-macro-box.kcal strong{font-size:1.1rem;color:var(--nc-calo)}.m-hero-slot{--hs-out: var(--ease-out);--hs-pop: var(--ease-spring);--hs-in: cubic-bezier(.4, 0, 1, 1)}.m-hero-slot.is-leaving>:not(.has-details){animation:mHsBlockOut .2s var(--hs-in) forwards}.m-hero-slot.is-entering>:not(.has-details){animation:mHsBlockIn .36s var(--hs-out) .1s backwards}@keyframes mHsBlockOut{to{opacity:0;transform:translateY(-4px)}}@keyframes mHsBlockIn{0%{opacity:0;transform:translateY(8px)}}.m-hero-slot.is-leaving .nc-pill{animation:mHsOutDown .15s var(--hs-in) 0s forwards}.m-hero-slot.is-leaving .nc-calo-btn,.m-hero-slot.is-leaving .nc-water-btn{animation:mHsOutShrink .14s var(--hs-in) .01s forwards}.m-hero-slot.is-leaving .nc-stat-left{animation:mHsOutLeft .18s var(--hs-in) .03s forwards}.m-hero-slot.is-leaving .nc-stat-right{animation:mHsOutRight .18s var(--hs-in) .03s forwards}.m-hero-slot.is-leaving .nc-char-btn{animation:mHsOutSink .2s var(--hs-in) .04s forwards}.m-hero-slot.is-entering .nc-char-btn{animation:mHsCharIn .55s var(--hs-pop) .06s backwards}.m-hero-slot.is-entering .nc-stat-left{animation:mHsInLeft .45s var(--hs-out) .16s backwards}.m-hero-slot.is-entering .nc-stat-right{animation:mHsInRight .45s var(--hs-out) .16s backwards}.m-hero-slot.is-entering .nc-calo-btn,.m-hero-slot.is-entering .nc-water-btn{animation:mHsPopIn .42s var(--hs-pop) .36s backwards}.m-hero-slot.is-entering .nc-pill{animation:mHsInUp .4s var(--hs-out) .46s backwards}.m-hero-slot.is-leaving .m-morph-left{animation:mHsOutShrink .18s var(--hs-in) .03s forwards}.m-hero-slot.is-leaving .m-morph-right{animation:mHsOutRight .18s var(--hs-in) 0s forwards}.m-hero-slot.is-entering .m-morph-left{animation:mHsPopIn .5s var(--hs-pop) .08s backwards}.m-hero-slot.is-entering .m-morph-right{animation:mHsInRight .45s var(--hs-out) .2s backwards}@keyframes mHsOutDown{to{opacity:0;transform:translateY(8px) scale(.9)}}@keyframes mHsOutShrink{to{opacity:0;transform:scale(.6)}}@keyframes mHsOutLeft{to{opacity:0;transform:translate(-16px)}}@keyframes mHsOutRight{to{opacity:0;transform:translate(16px)}}@keyframes mHsOutSink{to{opacity:0;transform:translateY(14px) scale(.9)}}@keyframes mHsCharIn{0%{opacity:0;transform:translateY(30px) scale(.84)}}@keyframes mHsInLeft{0%{opacity:0;transform:translate(-24px)}}@keyframes mHsInRight{0%{opacity:0;transform:translate(24px)}}@keyframes mHsPopIn{0%{opacity:0;transform:scale(.55)}}@keyframes mHsInUp{0%{opacity:0;transform:translateY(12px) scale(.92)}}@media (prefers-reduced-motion: reduce){.m-hero-slot *,.m-hero-slot>*{animation:none!important}}.msi-shell{--msi-ease: var(--ease-out);min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);padding:calc(var(--safe-area-top) + 16px) 20px calc(var(--safe-area-bottom) + 18px);box-sizing:border-box}.msi-top{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;font-size:.875rem;font-weight:700;letter-spacing:.04em;color:var(--text-primary);text-decoration:none}.msi-logo{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border-color);object-fit:cover;transition:transform .5s var(--msi-ease)}.msi-top:hover .msi-logo{transform:rotate(-12deg) scale(1.06)}.msi-body{flex:1;display:flex;flex-direction:column}.msi-hero{padding:40px 0 28px;border-bottom:1.5px dashed var(--border-subtle)}.msi-eyebrow{display:inline-block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.msi-title{font-family:var(--font-serif);font-size:2.125rem;line-height:1.15;font-weight:700;margin:12px 0 0}.msi-accent{color:var(--state-medium)}.msi-note{display:none}.msi-panel{flex:1;display:flex;flex-direction:column}.msi-form{flex:1;display:flex;flex-direction:column;padding-top:18px}.msi-label{font-size:.8125rem;color:var(--text-secondary);margin-top:14px;transition:color .2s var(--ease-out)}.msi-label:has(+.msi-input:focus),.msi-label:has(+.msi-pass .msi-input:focus){color:var(--state-medium)}.msi-input{width:100%;font:inherit;font-size:1rem;color:var(--text-primary);background:linear-gradient(var(--state-medium),var(--state-medium)) no-repeat left bottom / 0% 2px;border:none;border-bottom:1.5px solid var(--border-color);border-radius:0;padding:10px 0;outline:none;box-sizing:border-box;transition:background-size .45s var(--msi-ease)}.msi-input:focus{background-size:100% 2px}.msi-input::placeholder{color:var(--text-muted);opacity:.6}.msi-input-otp{font-size:1.75rem;letter-spacing:.5em;font-weight:700;padding:8px 0}.msi-pass{position:relative}.msi-pass .msi-input{padding-right:40px}.msi-eye{position:absolute;right:0;top:50%;transform:translateY(-50%);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:10px;transition:color .2s var(--ease-out),background-color .2s var(--ease-out)}.msi-eye:hover{color:var(--text-primary);background:var(--bg-mixed-subtle)}.msi-spacer{flex:1;min-height:32px}.msi-hold{position:relative;overflow:hidden;width:100%;min-height:58px;border-radius:16px;border:1.5px solid var(--text-primary);background:var(--text-primary);color:var(--bg-primary);font:inherit;font-size:1.0625rem;font-weight:700;cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none;box-shadow:0 8px 20px -10px #00000059;transition:transform .25s var(--msi-ease),box-shadow .25s var(--ease-out)}.msi-hold:hover{box-shadow:0 12px 26px -12px #00000073}.msi-hold.is-holding{transform:scale(.985);box-shadow:0 4px 12px -8px #00000059}.msi-hold.is-done{animation:msi-done .45s var(--msi-ease)}@keyframes msi-done{40%{transform:scale(1.02)}to{transform:none}}.msi-hold:disabled{opacity:.7}.msi-hold.is-loading .msi-hold-text:after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;vertical-align:middle;border-radius:50%;background:currentColor;animation:msi-blink .9s ease-in-out infinite}@keyframes msi-blink{50%{opacity:.2}}.msi-hold-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--state-medium);transform-origin:left center;transform:scaleX(0)}.msi-hold-text{position:relative;display:inline-block;animation:msi-label-in .28s var(--msi-ease)}@keyframes msi-label-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.msi-ghost{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;border:1.5px solid var(--border-subtle);background:transparent;color:var(--text-primary);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:border-color .2s var(--ease-out),background-color .2s var(--ease-out),transform .2s var(--msi-ease)}.msi-ghost:hover{border-color:var(--border-color);background:var(--bg-mixed-subtle)}.msi-ghost:active{transform:scale(.97)}.msi-ghost:disabled{opacity:.55;cursor:default}.msi-dev-otp{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding:10px 12px;border:1.5px dashed var(--state-medium);border-radius:12px;font-size:.8125rem;color:var(--text-secondary)}.msi-dev-otp strong{color:var(--text-primary);letter-spacing:.2em}.msi-spin{animation:msi-spin .9s linear infinite}@keyframes msi-spin{to{transform:rotate(360deg)}}.msi-hint{text-align:center;font-size:.8125rem;color:var(--text-secondary);margin:10px 0 0}.msi-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 10px;text-align:center;font-size:.875rem;color:var(--text-secondary);margin:14px 0 0}.msi-foot a{color:var(--text-primary);font-weight:700;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;text-decoration-color:var(--border-subtle);transition:text-decoration-color .2s var(--ease-out)}.msi-foot a:hover{text-decoration-color:var(--state-medium)}.msi-rise{animation:msi-rise .7s var(--msi-ease) both;animation-delay:var(--d, 0ms)}@keyframes msi-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.msi-line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}.msi-line>span{display:inline-block;transform:translateY(105%);animation:msi-line-up .9s var(--msi-ease) forwards;animation-delay:var(--d, 0ms)}@keyframes msi-line-up{to{transform:none}}.msi-terms{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.msi-terms li{display:flex;align-items:baseline;gap:14px;font-size:.9375rem;color:var(--text-secondary)}.msi-terms span{font-size:.75rem;color:var(--state-medium);font-weight:700}@media (min-width: 769px){.msi-shell{padding:28px 40px 40px}.msi-body{width:100%;max-width:1040px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,420px);align-items:center;gap:72px}.msi-hero{padding:0 0 0 4px;border-bottom:none}.msi-title{font-size:clamp(2.75rem,4.6vw,3.75rem);line-height:1.08;letter-spacing:-.02em;margin-top:18px}.msi-note{display:block;margin-top:40px;padding-top:28px;border-top:1.5px dashed var(--border-subtle);max-width:360px}.msi-panel{flex:none;background:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:22px;padding:22px 28px 26px;box-shadow:0 1px 2px #0000000a,0 24px 48px -28px #00000047;transition:box-shadow .4s var(--ease-out),transform .4s var(--msi-ease)}.msi-panel:focus-within{transform:translateY(-2px);box-shadow:0 1px 2px #0000000a,0 32px 60px -30px #00000057}.msi-form{padding-top:4px}.msi-spacer{flex:none;min-height:30px}}@media (prefers-reduced-motion: reduce){.msi-rise,.msi-line>span,.msi-hold-text,.msi-hold.is-done{animation:none!important;transform:none!important;opacity:1!important}}.wg-shell{min-height:100dvh;display:flex;flex-direction:column;background:#121211;color:#ede9e1;padding:calc(var(--safe-area-top) + 16px) 20px calc(var(--safe-area-bottom) + 18px);box-sizing:border-box}.wg-top{display:flex;justify-content:space-between;align-items:center}.wg-eyebrow{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#9e9a91}.wg-skip{font:inherit;font-size:.875rem;color:#9e9a91;background:transparent;border:none;padding:8px 0 8px 12px;cursor:pointer}.wg-loading{flex:1;display:flex;align-items:center;justify-content:center;font-size:.9375rem;color:#9e9a91}.wg-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:32px 0 24px}.wg-stats>div{display:flex;flex-direction:column}.wg-stat-num{font-size:3.5rem;line-height:1;font-weight:700;letter-spacing:-.03em}.wg-accent{color:#f0997b}.wg-stat-label{font-size:.875rem;color:#9e9a91;margin-top:6px}.wg-grid{display:grid;grid-template-columns:repeat(13,1fr);gap:4px}.wg-cell{aspect-ratio:1;border-radius:3px;display:block;animation:wg-pop .35s var(--ease-out) both}.wg-empty{background:#2c2c2a}.wg-low{background:#4a1b0c}.wg-mid{background:#993c1d}.wg-high{background:#e98c6a}.wg-top{background:#f0997b}.wg-future{background:transparent;border:1px solid #262522;box-sizing:border-box}.wg-cell.is-today{outline:2px solid #F0997B;outline-offset:1px;animation:wg-pop .35s ease-out both,wg-pulse 1.6s ease-in-out .8s infinite}.wg-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:10px;font-size:.75rem;color:#9e9a91}.wg-legend .wg-cell{width:12px;animation:none}.wg-message{font-size:1.125rem;line-height:1.45;margin:28px 0 0}.wg-cta{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:8px;min-height:56px;border-radius:16px;border:none;background:#f0997b;color:#121211;font:inherit;font-size:1.0625rem;font-weight:700;cursor:pointer}.wg-cta:active{transform:scale(.98)}@keyframes wg-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes wg-pulse{0%,to{outline-color:#f0997b}50%{outline-color:transparent}}@media (prefers-reduced-motion: reduce){.wg-cell,.wg-cell.is-today{animation:none}}:root{--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--bg-primary: #FAF7F2;--bg-main: var(--bg-primary);--bg-surface: #FFFDF9;--bg-mixed: #EBE7E0;--bg-mixed-subtle: #F3F0EA;--text-primary: #222220;--text-secondary: #5C5A55;--text-muted: #6B6860;--border-color: #222220;--border-subtle: #D6D1C7;--btn-bg: #FFFDF9;--btn-text: #222220;--btn-border: #222220;--btn-hover-bg: #222220;--btn-hover-text: #FAF7F2;--level-perfect: #222220;--level-good: #6E6B64;--level-bad: #B8B3A8;--level-none: #E6E2D8;--chart-line: #222220;--chart-area: rgba(34, 34, 32, .08);--chart-grid: #E2DDD3;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--font-sans: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Lora", Georgia, serif;--font-mono: "JetBrains Mono", monospace;--state-bad: #EA6C6C;--state-medium: #EB8D61;--state-good: #D59342;--state-perfect: #53AB74;--lp-spotlight: rgba(34, 34, 32, .07);--lp-orb-a: rgba(34, 34, 32, .1);--lp-orb-b: rgba(235, 169, 79, .1);--lp-orb-c: rgba(34, 34, 32, .05);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1)}[data-theme=dark]{--bg-primary: #121211;--bg-main: var(--bg-primary);--bg-surface: #1B1A18;--bg-mixed: #262522;--bg-mixed-subtle: #201F1C;--text-primary: #EDE9E1;--text-secondary: #9E9A91;--text-muted: #908C82;--border-color: #EDE9E1;--border-subtle: #383632;--btn-bg: #1B1A18;--btn-text: #EDE9E1;--btn-border: #4E4B44;--btn-hover-bg: #EDE9E1;--btn-hover-text: #121211;--level-perfect: #EDE9E1;--level-good: #9E9A91;--level-bad: #6E6B62;--level-none: #2E2D29;--chart-line: #EDE9E1;--chart-area: rgba(237, 233, 225, .08);--chart-grid: #282724;--state-bad: #F38080;--state-medium: #F89E62;--state-good: #F8CF6B;--state-perfect: #6CD090;--lp-spotlight: rgba(237, 233, 225, .09);--lp-orb-a: rgba(237, 233, 225, .07);--lp-orb-b: rgba(248, 207, 107, .09);--lp-orb-c: rgba(237, 233, 225, .04)}[data-theme=dark] .timetable-th,[data-theme=dark] .timetable-td{border-bottom:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle)}[data-theme=dark] .timetable-wrapper{border:1px solid var(--border-subtle)}[data-theme=dark] .modal-container{box-shadow:0 16px 40px #0009}html{font-size:16px;overflow-y:scroll;overflow-x:hidden;max-width:100%;scrollbar-gutter:stable}html.modal-open,body.modal-open{overflow:hidden!important}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:1rem;line-height:1.5;overflow-x:hidden;max-width:100%;-webkit-font-smoothing:antialiased;padding-top:max(calc(var(--safe-area-top) - 10px),0px);padding-bottom:var(--safe-area-bottom);padding-left:var(--safe-area-left);padding-right:var(--safe-area-right);-webkit-tap-highlight-color:transparent}body:before{content:"";position:fixed;top:0;left:0;right:0;height:var(--safe-area-top);background-color:var(--bg-primary);z-index:2000;pointer-events:none}button,input{font-family:var(--font-sans);color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible,[role=option]:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.app-shell{min-height:100vh;display:flex;flex-direction:column}.top-navbar{position:sticky;top:0;z-index:30;background-color:var(--bg-primary);border-bottom:1.5px solid var(--border-color);padding:12px 78px 14px;display:flex;flex-direction:column;gap:12px}.top-navbar-row-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px}.brand-block{display:flex;align-items:center;gap:12px;flex-shrink:0;cursor:pointer;border-radius:var(--radius-sm)}.brand-logo-mark{width:36px;height:36px;border:1.5px solid var(--border-color);background-color:var(--bg-surface);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.brand-logo-img{width:100%;height:100%;object-fit:contain;display:block}.brand-title{font-family:var(--font-serif);font-size:1.15rem;font-weight:700;letter-spacing:.06em}.brand-subtitle{font-size:.8125rem;color:var(--text-secondary)}.page-nav-tabs{display:flex;align-items:center;gap:6px;background-color:var(--bg-mixed-subtle);padding:4px;border-radius:var(--radius-md);border:1px solid var(--border-color);flex-shrink:0}.top-navbar-row-bottom{display:flex;align-items:center;justify-content:flex-start;width:100%}.nav-tab-btn{border-color:transparent;background-color:transparent;font-weight:600}.nav-tab-btn.active{background-color:var(--btn-hover-bg);color:var(--btn-hover-text);border-color:var(--btn-hover-bg)}.navbar-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.month-switcher,.day-date-switcher{display:flex;align-items:center;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;height:33px;box-sizing:border-box}.month-switcher .btn-icon,.day-date-switcher .btn-icon{border:none;border-radius:0;padding:0 10px;height:100%;display:inline-flex;align-items:center;justify-content:center;box-shadow:none}.month-display,.day-date-display{display:flex;align-items:center;gap:6px;padding:0 13px;font-family:var(--font-mono);font-size:.9375rem;font-weight:600;color:var(--text-primary);border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);height:100%;box-sizing:border-box;white-space:nowrap}.btn-minimal{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 13px;font-size:.82rem;font-weight:500;background-color:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-border);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .16s var(--ease-out),color .16s var(--ease-out),transform .1s var(--ease-out)}.btn-minimal:hover,.btn-minimal.active{background-color:var(--btn-hover-bg);color:var(--btn-hover-text)}.btn-minimal:active{transform:translateY(1px)}.btn-minimal:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:5px 10px;font-size:.8125rem}.btn-logout-header{border-color:#ea6c6c;color:#ea6c6c}.btn-logout-header:hover{background-color:#ea6c6c;color:#fff}.main-container{max-width:1650px;width:100%;margin:0 auto;padding:24px 36px 56px;display:flex;flex-direction:column;gap:24px}.section-header-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.section-heading{font-size:1.05rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin:0;line-height:1.25}.section-subtext{font-size:.82rem;color:var(--text-secondary);margin-top:2px}.month-rank-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background-color:var(--bg-mixed);border:1px solid var(--border-color);border-radius:999px;font-size:.82rem}.stats-cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.stat-card-highlight{background-color:var(--bg-mixed);border-width:1.5px}.stat-label{font-size:.8125rem;font-weight:600;letter-spacing:.05em;color:var(--text-secondary)}.stat-value-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.stat-big-number{font-family:var(--font-serif);font-size:1.85rem;font-weight:700;line-height:1.1}.stat-unit{font-family:var(--font-mono);font-size:.9375rem;color:var(--text-secondary)}.stat-tag{font-size:.8125rem;font-weight:600;padding:2px 8px;border:1px solid var(--border-color);border-radius:999px;background-color:var(--bg-surface)}.stat-footnote{font-size:.8125rem;color:var(--text-secondary)}.charts-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:16px}.chart-box{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:18px 20px;display:flex;flex-direction:column;justify-content:space-between;gap:14px}.chart-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px}.chart-title{font-family:var(--font-serif);font-size:.9375rem;font-weight:700;letter-spacing:.04em}.chart-subtitle{font-size:.8125rem;color:var(--text-secondary);margin-top:2px}.chart-active-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:var(--bg-mixed);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.8125rem;margin-top:8px;white-space:nowrap;max-width:100%}.chart-badge-sub{color:var(--text-secondary)}.line-chart-wrapper,.bar-chart-wrapper{width:100%;overflow:hidden}.line-chart-svg,.bar-chart-svg{width:100%;height:auto;display:block}.chart-axis-text{font-family:var(--font-mono);font-size:13px;fill:var(--text-secondary)}.chart-axis-text-active{font-weight:700;fill:var(--text-primary)}.chart-point-group,.chart-bar-group{outline:none}.chart-bar-group:focus-visible .chart-bar-rect{stroke:var(--text-primary);stroke-width:2px}.chart-bar-rect{transition:fill .15s var(--ease-out),opacity .15s var(--ease-out)}.chart-bar-group:hover .chart-bar-rect{opacity:.85}.chart-bar-group.is-selected .chart-bar-rect{opacity:1}.chart-bar-val-text{font-family:var(--font-mono);font-size:12px;font-weight:700;fill:var(--text-primary)}.chart-bar-group,.chart-point-group{cursor:pointer}.segmented-toggle{display:inline-flex;background-color:var(--bg-mixed);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:2px;gap:2px;margin-top:8px;width:fit-content}.seg-btn{border:none;background:transparent;padding:4px 10px;font-size:.8125rem;font-weight:600;border-radius:4px;cursor:pointer;transition:background-color .15s var(--ease-out),color .15s var(--ease-out)}.seg-btn:hover,.seg-btn.active{background-color:var(--btn-hover-bg);color:var(--btn-hover-text)}.donut-chart-layout{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px 0}.donut-svg-container{position:relative;width:170px;height:170px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.donut-center-info{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.donut-percent{font-family:var(--font-mono);font-size:1.45rem;font-weight:700;line-height:1.1}.donut-sub{font-size:.75rem;color:var(--text-secondary);margin-top:2px;max-width:105px}.donut-legend{flex:1;display:flex;flex-direction:column;gap:8px}.legend-row{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:var(--radius-sm);background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);font-size:.8125rem}.legend-left{display:flex;align-items:center;gap:8px}.legend-swatch{width:12px;height:12px;border-radius:3px;border:1px solid var(--border-color);display:inline-block}.legend-label{font-weight:600}.legend-pts{font-size:.8125rem;color:var(--text-secondary)}.legend-right{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.8125rem}.legend-pct{color:var(--text-secondary);min-width:34px;text-align:right}.month-days-section{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:22px}.grid-legend-pills{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0}.legend-pill{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--text-secondary);background-color:var(--bg-mixed-subtle);padding:4px 10px;border-radius:999px;border:1px solid var(--border-subtle);line-height:1.25}.dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--border-color)}.dot-perfect{background-color:var(--level-perfect)}.dot-good{background-color:var(--level-good)}.dot-mid{background-color:var(--level-bad)}.month-days-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.day-cell-card{text-align:left;padding:10px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background-color:var(--bg-primary);cursor:pointer;display:flex;flex-direction:column;gap:7px;min-width:0;box-sizing:border-box;overflow:hidden;transition:background-color .16s var(--ease-out),color .16s var(--ease-out),border-color .16s var(--ease-out),transform .12s var(--ease-out)}.day-cell-card.has-data{background-color:var(--bg-surface);border-color:var(--border-color)}.day-cell-card.empty-day{background-color:var(--bg-mixed-subtle)}.day-cell-card:hover,.day-cell-card.selected{background-color:var(--btn-hover-bg);color:var(--btn-hover-text);border-color:var(--btn-hover-bg)}.day-cell-card:hover .day-cell-weekday,.day-cell-card:hover .day-cell-footer,.day-cell-card.selected .day-cell-weekday,.day-cell-card.selected .day-cell-footer{color:var(--btn-hover-text);opacity:.82}.day-cell-card:hover .day-cell-rank-tag,.day-cell-card.selected .day-cell-rank-tag{background-color:transparent;color:var(--btn-hover-text);border-color:var(--btn-hover-text)}.day-cell-card:hover .day-cell-bar,.day-cell-card.selected .day-cell-bar{background-color:#ffffff38}.day-cell-card:hover .day-cell-bar-fill,.day-cell-card.selected .day-cell-bar-fill{background-color:var(--btn-hover-text)}.day-cell-top{display:flex;align-items:center;justify-content:space-between}.day-cell-number-wrap{display:flex;align-items:baseline;gap:6px}.day-cell-num{font-family:var(--font-mono);font-size:1.05rem;font-weight:700}.day-cell-weekday{font-size:.8125rem;color:var(--text-secondary)}.day-cell-today-tag{font-size:.75rem;font-weight:600;padding:1px 6px;border-radius:4px;border:1px solid currentColor}.day-cell-middle{display:flex;align-items:center;justify-content:space-between;gap:4px;min-width:0;width:100%}.day-cell-percent{font-family:var(--font-mono);font-size:1.05rem;font-weight:700;line-height:1;letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}.day-cell-rank-tag{font-size:.75rem;padding:1.5px 6px;border-radius:999px;background-color:var(--bg-mixed);border:1px solid var(--border-subtle);white-space:nowrap;line-height:1.25;flex-shrink:0;text-align:center}.day-cell-bar{width:100%;height:5px;background-color:var(--bg-mixed);border-radius:999px;overflow:hidden}.day-cell-bar-fill{height:100%;background-color:var(--text-primary);transition:width .25s var(--ease-out)}.day-cell-footer{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary)}.day-page-topbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-bottom:12px;border-bottom:1px dashed var(--border-subtle)}.day-stepper-btns{display:flex;align-items:center;gap:8px}.day-detail-section{background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;gap:20px}.day-detail-header{display:flex;align-items:stretch;justify-content:space-between;flex-wrap:wrap;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--border-subtle)}.day-detail-title-group{display:flex;flex-direction:column;justify-content:center;gap:6px}.day-tag-row{display:flex;align-items:center;gap:8px}.day-badge-mono{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;padding:3px 9px;background-color:var(--bg-mixed);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.day-weekday-pill{font-size:.8125rem;font-weight:600;padding:3px 9px;background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.today-indicator-pill{font-size:.8125rem;font-weight:600;padding:3px 9px;background-color:var(--text-primary);color:var(--bg-primary);border-radius:var(--radius-sm)}.day-rank-desc{font-size:.9375rem;color:var(--text-secondary)}.day-score-summary-card{min-width:0;max-width:100%;width:100%;flex:none;background-color:var(--bg-mixed);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;gap:12px}.day-score-main{display:flex;align-items:center;justify-content:space-between;gap:14px}.day-score-left{display:flex;flex-direction:column;gap:3px;min-width:0}.day-score-label{font-size:.6875rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary);text-transform:uppercase;white-space:nowrap}.day-score-big-row{display:flex;align-items:center;gap:8px}.day-score-big{font-family:var(--font-serif);font-size:1.85rem;font-weight:700;line-height:1.1;color:var(--text-primary)}.day-score-raw{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary);white-space:nowrap}.day-rank-box{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;text-align:right;padding:8px 14px;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex-shrink:0;min-width:120px;white-space:nowrap;box-shadow:0 1px 3px #00000005}.day-rank-label{font-size:.6875rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary);text-transform:uppercase}.day-rank-value{font-size:.95rem;font-weight:700;color:var(--text-primary);white-space:nowrap;line-height:1.25;margin-top:2px}.day-state-section{display:flex;flex-direction:column;gap:8px;width:100%}.day-state-header{display:flex;align-items:center;justify-content:space-between;width:100%}.day-state-section-label{font-size:.6875rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary);text-transform:uppercase}.btn-state-edit-link{background:none;border:none;color:var(--text-secondary);font-size:.8125rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:var(--radius-sm);transition:all .15s var(--ease-out)}.btn-state-edit-link:hover{color:var(--text-primary);background-color:var(--bg-surface)}.day-state-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}.state-mini-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:2px;cursor:pointer;transition:all .15s var(--ease-out);-webkit-user-select:none;user-select:none}.state-mini-card:hover{border-color:var(--text-primary);box-shadow:0 2px 6px #0000000f;transform:translateY(-1px)}.state-mini-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.state-text-val{font-size:.82rem;font-weight:700;white-space:nowrap;line-height:1.2}.state-text-val.state-text-bad{color:var(--state-bad, #EA6C6C)!important}.state-text-val.state-text-medium{color:var(--state-medium, #F29159)!important}.state-text-val.state-text-good{color:var(--state-good, #EBA94F)!important}.state-text-val.state-text-perfect{color:var(--state-perfect, #5DBC83)!important}.state-sleep-banner{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:5px 10px;display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;cursor:pointer;transition:all .15s var(--ease-out)}.state-sleep-banner:hover{border-color:var(--text-primary);box-shadow:0 2px 6px #0000000f}.state-sleep-title{color:var(--text-secondary)}.progress-bar-track{width:100%;height:8px;background-color:var(--bg-primary);border:none;border-radius:999px;position:relative;overflow:hidden;margin:2px 0}.progress-bar-fill{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--state-bad, #EA6C6C) 0%,var(--state-bad, #EA6C6C) 18%,var(--state-medium, #F29159) 36%,var(--state-good, #EBA94F) 64%,var(--state-perfect, #5DBC83) 82%,var(--state-perfect, #5DBC83) 100%);transition:clip-path .35s var(--ease-out),-webkit-clip-path .35s var(--ease-out),opacity .2s var(--ease-out);pointer-events:none}.day-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%}.day-quick-actions .btn-minimal{padding:7px 4px;font-size:.8125rem;white-space:nowrap;width:100%;justify-content:center;gap:5px}.day-workspace-layout{display:flex;flex-direction:column;gap:16px;width:100%}.overview-split-container{display:grid;grid-template-columns:580px minmax(0,1fr);gap:24px;align-items:flex-start;width:100%}.overview-split-left-col{display:flex;flex-direction:column;gap:16px;min-width:0}.overview-left-header{margin-bottom:2px}.stats-cards-grid-split{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px!important;margin-bottom:0!important}.charts-split-stack{display:flex;flex-direction:column;gap:16px;width:100%}.overview-split-right-col{min-width:0;width:100%}.overview-split-right-col .month-days-section{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:22px;height:100%}.day-split-page-wrapper{width:100%}.day-split-container{display:grid;grid-template-columns:460px minmax(0,1fr);gap:24px;align-items:flex-start;width:100%}.day-split-left-col{display:flex;flex-direction:column;gap:16px;min-width:0;padding:22px 24px}.day-split-left-col .day-page-topbar{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px;padding-bottom:0;border-bottom:none}.day-split-left-col .day-detail-title-group{gap:4px}.day-split-left-col .day-score-summary-card{min-width:0;max-width:100%;width:100%;flex:none}.day-table-pane .day-note-box{width:100%;margin-top:0}.day-split-right-col{display:flex;flex-direction:column;gap:14px;min-width:0;width:100%;padding:22px 24px}.day-split-right-col .day-mode-tab-bar{margin-bottom:0;display:flex;align-items:center;gap:8px}.day-table-pane,.day-calories-pane{width:100%;min-width:0;display:flex;flex-direction:column;gap:16px}@media (max-width: 1180px){.overview-split-container,.day-split-container{grid-template-columns:1fr;gap:20px;align-items:stretch;width:100%}}.tasks-display-container{display:flex;flex-direction:column;width:100%}.task-view-switch-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:12px;margin-bottom:16px;border-bottom:1.5px solid var(--border-subtle);gap:12px}.task-count-pill{display:inline-flex;align-items:baseline;gap:6px;font-family:var(--font-mono);font-size:.82rem;color:var(--text-secondary)}.task-count-num{font-size:1rem;font-weight:800;color:var(--text-primary)}.task-count-text{font-size:.8125rem;color:var(--text-secondary)}.task-view-toggle-btns{display:inline-flex;align-items:center;gap:8px}.view-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;border-radius:var(--radius-sm);background-color:var(--bg-surface);border:1.5px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .15s var(--ease-out)}.view-toggle-btn:hover{border-color:var(--border-color);color:var(--text-primary);background-color:var(--bg-mixed)}.view-toggle-btn.active{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:700;box-shadow:0 2px 6px #00000014}.tasks-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;width:100%}.task-card-item{background-color:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:var(--radius-md);padding:14px 16px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;gap:12px;cursor:pointer;transition:all .18s var(--ease-out);min-height:104px;box-shadow:0 1px 3px #00000008}.task-card-item:hover{border-color:var(--text-primary);box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.task-card-item.task-card-checked{background-color:var(--bg-mixed-subtle);border-color:var(--border-color);opacity:.88}.task-card-item.task-card-checked .task-card-title{text-decoration:line-through;opacity:.7}.task-card-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.task-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.task-badge-cat{font-size:.75rem;font-weight:700;padding:3px 8px;border-radius:var(--radius-sm);background:var(--bg-mixed);color:var(--text-secondary);border:1px solid var(--border-subtle);white-space:nowrap}.task-badge-boost{font-size:.75rem;font-weight:700;color:#d59342;background:#f5bb5c1f;padding:2px 5px;border-radius:3px;border:1px solid rgba(245,187,92,.3)}.task-badge-time{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.8125rem;font-weight:700;color:var(--text-secondary);background:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);padding:3px 8px;border-radius:4px;white-space:nowrap}.task-badge-allday{color:#d59342!important;background:#f5bb5c1f!important;border-color:#f5bb5c4d!important;font-family:inherit!important}.task-card-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.btn-edit-task{padding:4px;color:var(--text-muted);background:transparent;border:none;cursor:pointer;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s var(--ease-out),color .15s var(--ease-out),background-color .15s var(--ease-out)}.task-card-item:hover .btn-edit-task{opacity:1}.btn-edit-task:hover{color:var(--text-primary);background:var(--bg-mixed)}.task-card-body{display:flex;flex-direction:column;gap:4px}.task-card-title{font-size:1.02rem;font-weight:700;color:var(--text-primary);line-height:1.35;margin:0;word-break:break-word}.task-card-target{font-size:.8125rem;color:var(--text-secondary);line-height:1.35;margin:0}.btn-add-task-list-bottom{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:.9375rem;font-weight:600;border:1.5px dashed var(--border-subtle);border-radius:var(--radius-sm);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s var(--ease-out);margin-top:4px;width:100%}.btn-add-task-list-bottom:hover{border-color:var(--border-color);color:var(--text-primary);background-color:var(--bg-mixed-subtle)}@media (max-width: 860px){.tasks-list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.timetable-wrapper{width:100%;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 1px 4px #00000005;height:auto}.timetable-container{overflow-y:hidden!important;overflow-x:auto;height:auto!important;max-height:none!important;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior:contain!important}.timetable-container::-webkit-scrollbar{display:none;width:0;height:0}.timetable-table{width:max-content;min-width:100%;height:auto;border-collapse:separate!important;border-spacing:0!important;table-layout:fixed;font-size:.8125rem;background-color:var(--bg-surface)}.timetable-th,.timetable-td{border-bottom:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);border-top:none;border-left:none;box-sizing:border-box}.timetable-table thead th{background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle)}.timetable-corner-th{position:sticky!important;left:0!important;z-index:35!important;width:120px!important;min-width:120px!important;max-width:120px!important;height:48px!important;min-height:48px!important;padding:0!important;background-color:var(--bg-surface)!important;border-bottom:1px solid var(--border-subtle)!important;border-right:1px solid var(--border-subtle)!important;border-top:none!important;border-left:none!important;box-shadow:none!important}.diagonal-cell{position:relative;width:100%;height:48px;overflow:hidden}.diagonal-svg{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.diagonal-label{position:absolute;font-size:.75rem;font-weight:600;color:var(--text-secondary);line-height:1.1;-webkit-user-select:none;user-select:none;white-space:nowrap}.diagonal-time-label{top:8px;right:12px;text-align:right}.diagonal-task-label{bottom:8px;left:12px;text-align:left}.timetable-th-col{width:160px;min-width:160px;max-width:160px;height:48px;padding:8px 6px;text-align:center;background-color:var(--bg-surface);-webkit-user-select:none;user-select:none;position:static!important;vertical-align:middle!important}.timetable-col-header-text{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}.timetable-td-time{position:sticky!important;left:0!important;z-index:25!important;background-color:var(--bg-surface)!important;width:120px!important;min-width:120px!important;max-width:120px!important;height:78px!important;min-height:78px!important;vertical-align:middle!important;text-align:center!important;padding:0 8px!important;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border-subtle)!important;border-right:1px solid var(--border-subtle)!important;border-top:none!important;border-left:none!important;box-shadow:none!important;color:var(--text-muted)}.timetable-time-text{display:block;width:100%;text-align:center;font-family:var(--font-mono);font-size:.8125rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}.timetable-row:hover .timetable-td-time{color:var(--text-primary);font-weight:700}.timetable-row{overflow:visible!important}.timetable-td{position:relative;overflow:visible!important;padding:0!important;vertical-align:top;border:1px solid rgba(34,34,32,.08);box-sizing:border-box}.timetable-td-th-col,.timetable-td-task-cell,.timetable-td-empty-cell,.timetable-td-covered,.timetable-td-has-task{width:160px;min-width:160px;max-width:160px;height:78px;min-height:78px}.timetable-cell-track{position:relative;width:100%;height:78px;min-height:78px;box-sizing:border-box;overflow:visible}.grid-task-card{position:absolute;top:4px;bottom:4px;z-index:5!important;background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px 8px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:box-shadow .15s var(--ease-out),border-color .15s var(--ease-out),background-color .15s var(--ease-out)}.grid-task-card:hover{border-color:var(--border-color);box-shadow:0 4px 14px #00000017;background-color:var(--bg-surface);z-index:10!important}.timetable-td-covered{cursor:default}.grid-task-card-checked{background-color:var(--bg-surface);border-color:var(--border-color)}.grid-task-card-checked .grid-task-title{text-decoration:line-through;opacity:.75}.grid-task-top{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;width:100%}.grid-task-left{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.grid-task-badge-row{display:flex;align-items:center;gap:3px}.grid-task-badge{font-size:.75rem;font-weight:600;padding:1px 5px;border-radius:var(--radius-sm);background:var(--bg-mixed);color:var(--text-secondary);border:1px solid var(--border-subtle);width:fit-content;white-space:nowrap}.grid-task-boost{font-size:.75rem;font-weight:700;color:#d59342;background:#f5bb5c1f;padding:1px 3px;border-radius:3px}.grid-task-title{font-size:.8125rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}.grid-task-meta{font-size:.75rem;color:var(--text-muted)}.grid-task-right{display:flex;align-items:center;justify-content:center;flex-shrink:0;padding-top:1px}.timetable-checkbox{width:20px;height:20px;border-radius:4px;border:1.5px solid var(--text-muted);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;color:#fff;transition:all .15s var(--ease-out)}.timetable-checkbox:hover{border-color:var(--text-primary);transform:scale(1.08)}.timetable-checkbox.checked{background-color:var(--text-primary);border-color:var(--text-primary);color:var(--bg-surface)}.timetable-td-empty-cell{width:160px;min-width:160px;max-width:160px;height:78px;min-height:78px;padding:0;cursor:pointer;border:1px solid rgba(34,34,32,.08);transition:background-color .12s var(--ease-out)}.timetable-td-empty-cell:hover{background-color:#22222006}.grid-empty-target{width:100%;height:100%;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s var(--ease-out)}.timetable-td-empty-cell:hover .grid-empty-target{opacity:1}.grid-empty-plus-icon{color:var(--text-muted)}.tasks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.task-card{background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:13px 15px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;height:100%;cursor:pointer;transition:border-color .15s var(--ease-out),background-color .15s var(--ease-out)}.task-card-checked{background-color:var(--bg-surface);border-color:var(--border-color)}.task-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.task-index-title{display:flex;align-items:flex-start;gap:10px}.task-index{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;padding:3px 7px;background-color:var(--bg-mixed);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.task-title{font-size:.94rem;font-weight:600}.task-meta{font-size:.8125rem;color:var(--text-secondary)}.point-pill{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;padding:2px 8px;border-radius:999px;background-color:var(--bg-mixed);color:var(--text-secondary);border:1px solid var(--border-subtle)}.point-pill.active{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--border-color)}.task-level-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.level-btn{display:flex;align-items:center;justify-content:space-between;padding:7px 8px;font-size:.8125rem;font-weight:500;background-color:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-border);border-radius:var(--radius-sm);cursor:pointer;transition:background-color .15s var(--ease-out),color .15s var(--ease-out);white-space:nowrap;gap:3px}.level-btn:hover,.level-btn.selected{background-color:var(--btn-hover-bg);color:var(--btn-hover-text)}.level-btn-pts{font-family:var(--font-mono);font-size:.8125rem;opacity:.85;display:inline-flex;align-items:center}.day-note-box{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 20px;display:flex;flex-direction:column;gap:10px;width:100%;box-shadow:0 2px 8px #00000005}.day-note-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.day-note-label{font-size:.8125rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary)}.day-note-hint{font-size:.8125rem;color:var(--text-secondary);opacity:.85;font-style:italic}.day-note-input{width:100%;padding:11px 14px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-mixed-subtle);color:var(--text-primary);font-size:.9375rem;font-family:inherit;outline:none;resize:none;overflow-y:hidden;field-sizing:content;box-sizing:border-box;min-height:72px;line-height:1.5;transition:border-color .15s var(--ease-out),background-color .15s var(--ease-out)}.day-note-input:focus{background-color:var(--bg-surface);border-color:var(--text-primary);box-shadow:0 0 0 2px #2222201f}.day-note-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:4px}.btn-note-cancel{background-color:transparent;color:var(--text-secondary);border-color:var(--border-subtle)}.btn-note-cancel:hover:not(:disabled){background-color:var(--bg-mixed);color:var(--text-primary);border-color:var(--border-color)}.btn-note-save{font-weight:600}.ai-floating-coach{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}.ai-floating-bubble{width:360px;max-width:calc(100vw - 48px);background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:20px;padding:16px 18px;box-shadow:0 12px 36px #00000024;position:relative;pointer-events:auto;transform-origin:bottom right;transition:opacity .35s var(--ease-out),transform .35s var(--ease-out),visibility .35s var(--ease-out);display:flex;flex-direction:column;gap:10px}.ai-floating-bubble.is-closed{opacity:0;transform:translateY(14px) scale(.92);pointer-events:none;visibility:hidden}.ai-floating-bubble.is-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto;visibility:visible}.ai-floating-bubble:before{content:"";position:absolute;bottom:-12px;right:22px;width:0;height:0;border-left:12px solid transparent;border-right:0px solid transparent;border-top:12px solid var(--border-color);z-index:1}.ai-floating-bubble:after{content:"";position:absolute;bottom:-9.5px;right:23px;width:0;height:0;border-left:10px solid transparent;border-right:0px solid transparent;border-top:10px solid var(--bg-surface);z-index:2}.ai-speech-bubble-header{display:flex;align-items:center;justify-content:space-between}.ai-speech-badge{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;font-weight:700;letter-spacing:.05em;color:var(--text-secondary);background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);padding:3px 9px;border-radius:999px}.ai-bubble-actions{display:flex;align-items:center;gap:6px}.btn-ai-reload{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;font-weight:600;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;padding:3px 6px;border-radius:var(--radius-sm);transition:all .15s var(--ease-out)}.btn-ai-reload:hover:not(:disabled){background-color:var(--bg-mixed-subtle);color:var(--text-primary)}.btn-ai-reload:disabled{opacity:.5;cursor:not-allowed}.btn-ai-close{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .15s var(--ease-out),color .15s var(--ease-out)}.btn-ai-close:hover{background-color:var(--bg-mixed);color:var(--text-primary)}.ai-speech-bubble-body{min-height:44px;display:flex;align-items:center}.ai-bubble-message{font-size:.94rem;line-height:1.55;font-weight:500;color:var(--text-primary);margin:0;transition:opacity .2s var(--ease-out)}.ai-bubble-message.is-loading-pulse{opacity:.6}.ai-typing-indicator{display:flex;align-items:center;gap:6px;padding:8px 0}.typing-dot{width:7px;height:7px;border-radius:50%;background-color:var(--text-primary);animation:typingBounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0s}@keyframes typingBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1.1);opacity:1}}.typing-text{font-size:.8125rem;color:var(--text-secondary);margin-left:6px;font-style:italic}.ai-floating-avatar-btn{width:54px;height:54px;border-radius:50%;border:2px solid var(--border-color);background-color:var(--bg-surface);padding:0;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 20px #00000029;pointer-events:auto;position:relative;transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out)}.ai-floating-avatar-btn:hover{transform:scale(1.08);box-shadow:0 8px 26px #00000038}.ai-floating-avatar-btn:active{transform:scale(.95)}.ai-floating-avatar-btn.is-active{border-color:var(--text-primary)}.ai-floating-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.ai-avatar-glow-ring{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid var(--text-primary);animation:avatarPulse 1.8s infinite ease-in-out;pointer-events:none}@keyframes avatarPulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.16);opacity:.85}}.spin-anim{animation:spinSlow 1s linear infinite}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-page-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background-color:var(--bg-primary)}.auth-card{width:100%;max-width:460px;background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);padding:32px 28px;box-shadow:0 14px 36px #00000014;display:flex;flex-direction:column;gap:24px}.auth-brand-header{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--border-subtle)}.auth-logo-img{width:48px;height:48px;border-radius:50%;border:1.5px solid var(--border-color);object-fit:cover;flex-shrink:0}.auth-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:700;letter-spacing:.05em}.auth-subtitle{font-size:.82rem;color:var(--text-secondary);margin-top:2px}.auth-form{display:flex;flex-direction:column;gap:18px}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-icon{position:absolute;left:13px;color:var(--text-secondary);pointer-events:none}.auth-input-with-icon{padding-left:38px!important}.auth-otp-input{text-align:center;font-family:var(--font-mono);font-size:1.45rem!important;font-weight:700;letter-spacing:10px}.auth-dev-otp-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background-color:var(--bg-mixed);border:1px dashed var(--border-color);border-radius:var(--radius-sm);font-size:.82rem;font-family:var(--font-sans)}.auth-submit-btn{width:100%;padding:11px 16px;font-size:.9375rem;margin-top:4px}.auth-footer-links{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:16px;border-top:1px solid var(--border-subtle);font-size:.9375rem;color:var(--text-secondary)}.auth-footer-split{justify-content:space-between}.auth-link{display:inline-flex;align-items:center;gap:5px;color:var(--text-primary);font-weight:700;text-decoration:none}.auth-link:hover{text-decoration:underline}.app-footer{margin-top:auto;border-top:1px solid var(--border-subtle);background-color:var(--bg-mixed-subtle);padding:16px 24px;text-align:center;font-size:.8125rem;color:var(--text-secondary)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background-color:#2222207a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:20px;animation:modalFadeIn .28s var(--ease-out) forwards;overscroll-behavior:contain}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{width:100%;max-width:580px;background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 16px 40px #0000001f;overflow:hidden;animation:modalSlideUp .3s var(--ease-out) forwards;max-height:90vh;display:flex;flex-direction:column}.modal-container-wide{max-width:840px;width:95%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:18px 22px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;background-color:var(--bg-primary)}.modal-title-wrap{display:flex;align-items:center;gap:12px}.modal-icon-badge{width:36px;height:36px;border-radius:var(--radius-sm);background-color:var(--bg-mixed);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-title{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;letter-spacing:.03em}.modal-subtitle{font-size:.8125rem;color:var(--text-secondary)}.modal-subtitle code{font-family:var(--font-mono);font-weight:600;background-color:var(--bg-mixed);padding:1px 6px;border-radius:4px}.btn-modal-close{background:transparent;border:none;cursor:pointer;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .15s var(--ease-out)}.btn-modal-close:hover{background-color:var(--bg-mixed);color:var(--text-primary)}.modal-body{padding:22px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.modal-error-alert{padding:8px 12px;background-color:#ffebee;color:#c62828;border:1px solid #EF9A9A;border-radius:var(--radius-sm);font-size:.82rem;font-weight:500}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:.8125rem;font-weight:700;letter-spacing:.04em;color:var(--text-secondary)}.form-label-with-hint{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px}.form-hint{font-size:.8125rem;color:var(--text-muted);display:inline-flex;align-items:center;gap:4px}.required-star{color:#e53935}.form-input{width:100%;padding:10px 14px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-surface);font-size:.9375rem;outline:none;transition:box-shadow .15s var(--ease-out),border-color .15s var(--ease-out)}.form-input:focus{box-shadow:0 0 0 2px #22222026}.form-input-error{border-color:#ea6c6c!important;background-color:#fffdfd}.live-duplicate-badge{font-size:.8125rem;font-weight:600;color:#ea6c6c;background-color:#ffebee;padding:2px 8px;border-radius:999px;border:1px solid #FFCDD2}.form-input-sub{margin-top:6px;font-size:.9375rem;padding:8px 12px}.category-pills-wrap{display:flex;flex-wrap:wrap;gap:8px}.category-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.8125rem;font-weight:500;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:999px;cursor:pointer;transition:all .15s var(--ease-out)}.pill-check-box{width:15px;height:15px;border-radius:3px;border:1px solid var(--border-color);display:inline-flex;align-items:center;justify-content:center;background-color:var(--bg-surface)}.category-pill.active{background-color:var(--text-primary);color:var(--bg-primary)}.category-pill.active .pill-check-box{background-color:var(--bg-primary);color:var(--text-primary);border-color:var(--bg-primary)}.form-time-input-wrap{position:relative;width:100%}.form-time-field{font-family:var(--font-mono);font-size:.92rem;letter-spacing:.03em;text-align:center}.task-schedule-mode-group{margin-bottom:14px}.task-allday-switch-box{background:var(--bg-mixed-subtle);border:1.5px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 14px;transition:all .16s var(--ease-out)}.task-allday-switch-box:hover{border-color:var(--border-color)}.task-allday-switch-box.active{background:#f5bb5c12;border-color:#f5bb5c66}.task-allday-switch-label{display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;margin:0;width:100%}.task-allday-switch-left{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.task-allday-title-row{display:flex;align-items:center;gap:6px}.task-allday-icon{color:#eba94f;flex-shrink:0}.task-allday-title{font-size:.9375rem;font-weight:700;color:var(--text-primary)}.task-allday-desc{font-size:.8125rem;color:var(--text-muted);line-height:1.35}.toggle-switch-container{position:relative;width:42px;height:24px;flex-shrink:0}.toggle-switch-input{opacity:0;width:0;height:0;position:absolute}.toggle-switch-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);border-radius:24px;transition:.2s var(--ease-out)}.toggle-switch-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--bg-primary);border-radius:50%;transition:.2s var(--ease-out);box-shadow:0 1px 3px #00000040}.toggle-switch-input:checked+.toggle-switch-slider{background-color:#eba94f}.toggle-switch-input:checked+.toggle-switch-slider:before{transform:translate(18px)}.task-allday-notice{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f5bb5c14;border:1px solid rgba(245,187,92,.28);border-radius:var(--radius-sm);color:#d59342;font-size:.8125rem;font-weight:500;line-height:1.45}.task-allday-notice svg{flex-shrink:0}.task-time-range-inputs{display:flex;align-items:center;gap:12px;width:100%;box-sizing:border-box}.time-field-box{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}.time-field-label{font-size:.8125rem;font-weight:700;color:var(--text-secondary);letter-spacing:.02em}.time-range-separator{display:flex;align-items:center;justify-content:center;padding-top:18px;font-size:1.15rem;font-weight:700;color:var(--text-muted);flex-shrink:0;-webkit-user-select:none;user-select:none}.duration-quick-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:8px;padding:8px 12px;background-color:var(--bg-mixed-subtle);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);box-sizing:border-box}.duration-badge{font-size:.8125rem;color:var(--text-secondary)}.duration-badge strong{color:var(--text-primary);font-weight:700}.duration-presets{display:flex;align-items:center;gap:6px}.duration-preset-btn{padding:4px 9px;font-size:.8125rem;font-weight:600;border-radius:var(--radius-sm);background-color:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .12s var(--ease-out)}.duration-preset-btn:hover{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.quick-hours-strip{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.quick-hour-btn{font-family:var(--font-mono);font-size:.8125rem;font-weight:500;padding:4px 8px;border-radius:var(--radius-sm);background-color:var(--bg-mixed);color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;transition:all .15s var(--ease-out)}.quick-hour-btn:hover{border-color:var(--border-color);color:var(--text-primary);background-color:var(--bg-surface)}.quick-hour-btn.active{background-color:var(--text-primary);color:var(--bg-surface);border-color:var(--text-primary)}.scope-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.scope-option-card{display:flex;align-items:flex-start;padding:12px 14px;background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;position:relative;transition:all .15s var(--ease-out)}.scope-option-card:hover{border-color:var(--border-color);background-color:var(--bg-surface)}.scope-option-card.scope-option-selected{border-color:var(--border-color);background-color:var(--bg-surface);border-width:1.5px;box-shadow:0 2px 8px #0000000d}.scope-radio{display:none}.scope-card-content{display:flex;flex-direction:column;gap:4px;width:100%}.scope-card-header{display:flex;align-items:center;gap:8px;width:100%}.scope-radio-indicator{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-color);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.scope-radio-dot{width:8px;height:8px;border-radius:50%;background-color:var(--text-primary)}.scope-title{font-size:.9375rem;font-weight:700}.scope-desc{font-size:.8125rem;color:var(--text-secondary);line-height:1.35;padding-left:24px}.scope-option-card.scope-selected-bad{border-color:var(--state-bad, #EA6C6C)!important;background-color:#ea6c6c0f!important;box-shadow:0 0 0 1px var(--state-bad, #EA6C6C),0 3px 10px #ea6c6c14!important}.scope-option-card.scope-selected-bad .scope-title{color:var(--state-bad, #EA6C6C)!important}.scope-option-card.scope-selected-bad .scope-radio-indicator{border-color:var(--state-bad, #EA6C6C)!important}.scope-option-card.scope-selected-bad .scope-radio-dot{background-color:var(--state-bad, #EA6C6C)!important}.scope-option-card.scope-selected-medium{border-color:var(--state-medium, #F29159)!important;background-color:#f291590f!important;box-shadow:0 0 0 1px var(--state-medium, #F29159),0 3px 10px #f2915914!important}.scope-option-card.scope-selected-medium .scope-title{color:var(--state-medium, #F29159)!important}.scope-option-card.scope-selected-medium .scope-radio-indicator{border-color:var(--state-medium, #F29159)!important}.scope-option-card.scope-selected-medium .scope-radio-dot{background-color:var(--state-medium, #F29159)!important}.scope-option-card.scope-selected-good{border-color:var(--state-good, #EBA94F)!important;background-color:#eba94f12!important;box-shadow:0 0 0 1px var(--state-good, #EBA94F),0 3px 10px #eba94f14!important}.scope-option-card.scope-selected-good .scope-title{color:#d59342!important}.scope-option-card.scope-selected-good .scope-radio-indicator{border-color:var(--state-good, #EBA94F)!important}.scope-option-card.scope-selected-good .scope-radio-dot{background-color:var(--state-good, #EBA94F)!important}.scope-option-card.scope-selected-perfect{border-color:var(--state-perfect, #5DBC83)!important;background-color:#5dbc830f!important;box-shadow:0 0 0 1px var(--state-perfect, #5DBC83),0 3px 10px #5dbc8314!important}.scope-option-card.scope-selected-perfect .scope-title{color:#53ab74!important}.scope-option-card.scope-selected-perfect .scope-radio-indicator{border-color:var(--state-perfect, #5DBC83)!important}.scope-option-card.scope-selected-perfect .scope-radio-dot{background-color:var(--state-perfect, #5DBC83)!important}.tier-badge{font-size:.75rem;font-weight:700;padding:1px 7px;border-radius:999px;letter-spacing:.02em;margin-left:auto;border:1px solid transparent;flex-shrink:0}.tier-badge-bad{color:var(--state-bad, #EA6C6C);background-color:#ea6c6c17;border-color:#ea6c6c40}.tier-badge-medium{color:var(--state-medium, #F29159);background-color:#f2915917;border-color:#f2915940}.tier-badge-good{color:#d59342;background-color:#eba94f17;border-color:#eba94f40}.tier-badge-perfect{color:#53ab74;background-color:#5dbc8317;border-color:#5dbc8340}.modal-form-wrap{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.daily-state-modal-body,.profile-modal-body{flex:1;min-height:0;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:20px}.daily-state-modal-footer,.profile-modal-footer{padding:14px 22px;background-color:var(--bg-primary);border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;flex-shrink:0;margin-top:0}.modal-footer{margin-top:8px;padding-top:16px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.modal-footer-right{display:flex;align-items:center;gap:10px;margin-left:auto}.btn-delete-task{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.82rem;font-weight:600;color:#ea6c6c;border:1.5px solid #EA6C6C;background-color:transparent;border-radius:var(--radius-sm);cursor:pointer;transition:all .16s var(--ease-out)}.btn-delete-task:hover{background-color:#ea6c6c;color:#fff}.btn-save-task{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--border-color);font-weight:600}.btn-save-task:hover{background-color:var(--text-primary);color:var(--bg-primary);opacity:.9}.task-title-row{display:flex;align-items:center;gap:6px}.task-edit-indicator{opacity:0;color:var(--text-secondary);transition:opacity .15s var(--ease-out)}.task-card:hover .task-edit-indicator{opacity:.7}.empty-tasks-placeholder{grid-column:1 / -1;padding:40px 20px;text-align:center;border:1.5px dashed var(--border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary);font-size:.9375rem}.btn-profile-header,.btn-settings-header{border-width:1.5px;font-weight:600;background-color:var(--bg-mixed)}.profile-section-block{background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:12px}.profile-section-title{display:flex;align-items:center;gap:8px;font-size:.8125rem;font-weight:700;letter-spacing:.04em;color:var(--text-primary);border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.bio-preview-banner{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 12px;background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem;font-family:var(--font-sans)}.day-score-big-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.score-mod-pill{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;padding:2px 8px;border-radius:999px;background-color:var(--bg-surface);border:1px solid var(--border-color)}.boost-inline-tag{font-family:var(--font-mono);color:var(--text-primary)}.personal-state-strip{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.state-chip{font-size:.8125rem;padding:3px 9px;background-color:var(--bg-mixed);border:1px solid var(--border-subtle);border-radius:999px;color:var(--text-secondary)}.state-chip strong{color:var(--text-primary)}@media (max-width: 1080px){.tasks-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1024px){.top-navbar{padding:14px 36px}.main-container{padding:24px 36px 48px}.stats-cards-grid{grid-template-columns:repeat(2,1fr)}.charts-grid{grid-template-columns:1fr}}@media (max-width: 680px){.top-navbar{padding:12px 16px}.top-navbar-row-top{flex-direction:column;align-items:flex-start;gap:10px}.main-container{padding:18px 16px 40px}.tasks-grid,.stats-cards-grid{grid-template-columns:1fr}.donut-chart-layout{flex-direction:column}.day-score-summary-card{min-width:100%}.scope-cards-grid{grid-template-columns:1fr}}.Toastify__toast-container{padding:16px;width:auto;max-width:420px}.Toastify__toast{background-color:var(--bg-surface)!important;color:var(--text-primary)!important;font-family:var(--font-sans)!important;font-size:.9375rem!important;font-weight:500!important;border:1.5px solid var(--border-color)!important;border-radius:var(--radius-md)!important;box-shadow:0 10px 28px #0000001f!important;padding:14px 16px!important;min-height:52px!important}.Toastify__toast-body{padding:0!important;margin:0!important;gap:10px!important}.Toastify__toast-icon{width:20px!important;margin-right:8px!important}.Toastify__toast--success .Toastify__toast-icon svg{fill:#5dbc83!important}.Toastify__toast--error .Toastify__toast-icon svg{fill:#ea6c6c!important}.Toastify__toast--info .Toastify__toast-icon svg{fill:var(--text-primary)!important}.Toastify__toast--warning .Toastify__toast-icon svg{fill:#f29159!important}.Toastify__close-button{color:var(--text-secondary)!important;opacity:.7!important;transition:opacity .15s var(--ease-out)!important}.Toastify__close-button:hover{opacity:1!important;color:var(--text-primary)!important}.Toastify__progress-bar{height:3px!important;background:var(--text-primary)!important;border-bottom-left-radius:var(--radius-md)!important;border-bottom-right-radius:var(--radius-md)!important}.Toastify__progress-bar--success{background:#5dbc83!important}.Toastify__progress-bar--error{background:#ea6c6c!important}.Toastify__progress-bar--warning{background:#f29159!important}.Toastify__progress-bar--info{background:var(--text-primary)!important}.day-mode-tab-bar{display:flex;align-items:center;gap:8px;width:100%;margin-top:4px;margin-bottom:8px;border-bottom:1.5px solid var(--border-subtle);padding-bottom:10px}.day-mode-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;font-size:.9375rem;font-weight:500;border-radius:var(--radius-sm);background-color:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-subtle);cursor:pointer;transition:all .15s var(--ease-out)}.day-mode-btn:hover{color:var(--text-primary);border-color:var(--border-color);background-color:var(--bg-mixed-subtle)}.day-mode-btn.active{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600;box-shadow:0 2px 6px #00000014}.calories-tracker-container{display:flex;flex-direction:column;gap:16px;width:100%}.calories-unified-card{background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-md);padding:20px 22px;display:flex;flex-direction:column;gap:20px;box-shadow:0 2px 8px #00000005}.calories-section-divider{height:1px;background-color:var(--border-subtle);width:100%;margin:2px 0}.unsaved-badge{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;font-weight:600;color:#d59342;background-color:#fef3c7;border:1px solid #FCD34D;padding:4px 8px;border-radius:var(--radius-sm)}.btn-calories-reset{color:var(--text-secondary);border-color:var(--border-subtle)}.btn-calories-reset:hover{color:#ea6c6c;border-color:#ea6c6c}.btn-save-calories{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600;padding:8px 16px}.btn-save-calories:hover:not(:disabled){background-color:#000;transform:translateY(-1px)}.btn-save-calories:disabled{opacity:.38;cursor:not-allowed;transform:none!important;background-color:var(--bg-mixed-subtle);color:var(--text-tertiary);border-color:var(--border-subtle);box-shadow:none}.meal-sessions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%}.meal-session-card{background-color:var(--bg-primary);border:1.5px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;display:flex;flex-direction:column;gap:14px;min-height:240px;box-shadow:0 1px 4px #00000005;transition:border-color .15s var(--ease-out)}.meal-session-card:hover{border-color:var(--border-color)}.meal-session-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border-subtle)}.session-title-group{display:flex;align-items:center;gap:10px}.session-icon-box{width:32px;height:32px;border-radius:var(--radius-sm);background-color:var(--bg-mixed);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-primary)}.session-title{font-size:.96rem;font-weight:700;margin:0;color:var(--text-primary)}.session-time-pill{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary);background-color:var(--bg-mixed-subtle);padding:1px 6px;border-radius:var(--radius-sm);margin-top:2px}.btn-add-food{font-size:.8125rem;padding:4px 10px}.food-items-list{display:flex;flex-direction:column;gap:8px;flex:1}.food-empty-box{display:flex;align-items:center;justify-content:center;text-align:center;padding:30px 12px;color:var(--text-muted);font-size:.82rem;border:1px dashed var(--border-subtle);border-radius:var(--radius-sm);flex:1}.food-item-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:all .15s var(--ease-out)}.food-item-row:hover{border-color:var(--border-color);background-color:var(--bg-surface)}.food-item-left{display:flex;align-items:center;gap:10px;overflow:hidden}.food-time-tag{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;padding:2px 6px;background-color:var(--bg-mixed);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);flex-shrink:0}.food-prep-badge{font-size:.8125rem;font-weight:600;padding:2px 7px;border-radius:var(--radius-sm);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);background-color:var(--bg-mixed);color:var(--text-primary);line-height:1.2}.food-prep-badge.badge-raw{background-color:#fef2f2;border-color:#fecaca;color:#b91c1c}.food-prep-badge.badge-method-luoc,.food-prep-badge.badge-method-hap{background-color:#f0fdf4;border-color:#bbf7d0;color:#53ab74}.food-prep-badge.badge-method-nuong{background-color:#fff7ed;border-color:#fed7aa;color:#c2410c}.food-prep-badge.badge-method-xao{background-color:#fefce8;border-color:#fef08a;color:#a16207}.food-prep-badge.badge-method-chien{background-color:#fffbeb;border-color:#fde68a;color:#d59342}.food-prep-badge.badge-cooked{background-color:var(--bg-mixed);border-color:var(--border-subtle);color:var(--text-primary)}.food-prep-badge.badge-time{font-family:var(--font-mono);background-color:var(--bg-mixed);border-color:var(--border-subtle)}.food-info{display:flex;flex-direction:column;overflow:hidden}.food-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.food-weight{font-size:.8125rem;color:var(--text-secondary)}.food-header-line{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.food-item-macros{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:3px}.food-macro-tag{font-family:var(--font-mono);font-size:.75rem;font-weight:600;padding:1px 5px;border-radius:var(--radius-sm);line-height:1.25;border:1px solid transparent;white-space:nowrap}.food-macro-tag.cal{background-color:#fef3c7;color:#d59342;border-color:#fde68a}.food-macro-tag.pro{background-color:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.food-macro-tag.carb{background-color:#ecfdf5;color:#047857;border-color:#a7f3d0}.food-macro-tag.fat{background-color:#fff1f2;color:#be123c;border-color:#fecdd3}.food-macro-tag.fiber{background-color:#f5f3ff;color:#6d28d9;border-color:#ddd6fe}[data-theme=dark] .food-macro-tag.cal{background-color:#f5bb5c26;color:#f8cf6b;border-color:#f5bb5c40}[data-theme=dark] .food-macro-tag.pro{background-color:#74a5f226;color:#60a5fa;border-color:#74a5f240}[data-theme=dark] .food-macro-tag.carb{background-color:#5ecaa526;color:#34d399;border-color:#5ecaa540}[data-theme=dark] .food-macro-tag.fat{background-color:#f6859726;color:#f894a3;border-color:#f6859740}[data-theme=dark] .food-macro-tag.fiber{background-color:#a88df226;color:#a78bfa;border-color:#a88df240}.btn-food-delete{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color .15s var(--ease-out)}.btn-food-delete:hover{color:#ea6c6c;background-color:#ea6c6c14}.food-add-inline-form{background-color:var(--bg-mixed-subtle);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;gap:10px;margin-top:4px}.inline-form-inputs{display:flex;flex-direction:column;gap:8px}.inline-form-row{display:flex;gap:8px}.inline-input-group{display:flex;flex-direction:column;gap:3px}.inline-input-group.flex-2{flex:2}.inline-input-group.flex-1{flex:1}.inline-prep-group{display:flex;flex-direction:column;gap:8px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:8px 10px}.inline-prep-field{display:flex;flex-direction:column;gap:5px}.state-toggle-group,.method-toggle-group{display:flex;flex-wrap:wrap;gap:6px}.btn-state-pill,.btn-method-pill{font-size:.8125rem;font-weight:500;padding:4px 10px;border-radius:var(--radius-sm);background-color:var(--bg-primary);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .15s var(--ease-out);display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.btn-state-pill:hover,.btn-method-pill:hover{border-color:var(--text-primary);color:var(--text-primary)}.btn-state-pill.active,.btn-method-pill.active{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600}.inline-label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.inline-input{padding:6px 10px;font-size:.9375rem;background-color:var(--bg-surface)}.inline-form-actions{display:flex;align-items:center;gap:8px;margin-top:4px}.btn-confirm-add{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600}.nutrition-ai-section,.nutrition-ai-widget{display:flex;flex-direction:column;gap:16px;width:100%}.nutrition-ai-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap}.nutrition-ai-header-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.nutrition-ai-header-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.nutrition-ai-badge{display:inline-flex;align-items:center;gap:7px;font-size:.9375rem;font-weight:800;letter-spacing:.6px;color:var(--text-primary);background-color:var(--bg-mixed);padding:4px 10px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle)}.nutrition-ai-updated{font-size:.8125rem;font-family:var(--font-mono);color:var(--text-secondary)}.nutrition-macros-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;width:100%}.macro-card{background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:12px 14px;display:flex;flex-direction:column;gap:4px;transition:all .15s var(--ease-out)}.macro-card:hover{border-color:var(--border-color);background-color:var(--bg-surface)}.macro-calories{border-color:var(--border-color);background-color:var(--bg-mixed-subtle)}.macro-card-label{font-size:.8125rem;font-weight:700;letter-spacing:.5px;color:var(--text-secondary)}.macro-card-value{display:flex;align-items:baseline;gap:4px}.macro-card-value strong{font-family:var(--font-mono);font-size:1.45rem;font-weight:800;color:var(--text-primary);line-height:1.1}.macro-unit{font-size:.8125rem;color:var(--text-secondary);font-weight:600}.macro-desc{font-size:.8125rem;color:var(--text-muted)}.nutrition-ai-feedback-box{background-color:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:var(--radius-md);padding:16px 18px}.feedback-content-row{display:flex;align-items:flex-start;gap:12px}.feedback-ai-icon{width:28px;height:28px;border-radius:var(--radius-sm);background-color:var(--text-primary);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.feedback-ai-text{display:flex;flex-direction:column;gap:4px;flex:1}.feedback-label{font-size:.8125rem;font-weight:800;letter-spacing:.5px;color:var(--text-primary)}.feedback-paragraph{font-size:.9375rem;line-height:1.6;color:var(--text-primary);margin:0}.feedback-placeholder{color:var(--text-secondary);font-style:italic}@media (max-width: 1080px){.meal-sessions-grid{grid-template-columns:1fr}.nutrition-macros-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 680px){.calories-unified-card{padding:16px 14px;gap:16px}.nutrition-ai-header{flex-direction:column;align-items:stretch;gap:12px}.nutrition-ai-header-right{width:100%;justify-content:flex-end}.nutrition-macros-grid{grid-template-columns:repeat(2,1fr)}.macro-card-value strong{font-size:1.25rem}}.settings-modal-container{max-width:840px;width:95%}.settings-modal-body{padding:22px;display:flex;flex-direction:column;gap:22px}.settings-section{display:flex;flex-direction:column;gap:12px}.settings-section-header{display:flex;flex-direction:column;gap:3px}.settings-section-tag{font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--text-muted)}.settings-section-title{font-size:.95rem;font-weight:700;margin:0}.settings-section-desc{font-size:.8125rem;color:var(--text-secondary);line-height:1.4;margin:0}.theme-options-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.theme-options-grid{grid-template-columns:1fr}}.theme-card{display:flex;flex-direction:row;align-items:flex-start;gap:14px;padding:14px 16px;border-radius:var(--radius-md);border:1.5px solid var(--border-subtle);background-color:var(--bg-mixed-subtle);color:var(--text-primary);text-align:left;cursor:pointer;transition:all .18s var(--ease-out)}.theme-card:hover{border-color:var(--border-color);background-color:var(--bg-mixed)}.theme-card.active{border-color:var(--border-color);background-color:var(--bg-surface);box-shadow:0 2px 10px #0000000f}.theme-card-icon-box{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.theme-card-icon-box.light-preview{background-color:#faf7f2;color:#222220;border:1px solid #D6D1C7}.theme-card-icon-box.dark-preview{background-color:#181716;color:#ede9e1;border:1px solid #484642}.theme-card-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.theme-card-title-row{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.9375rem}.theme-badge-current{display:inline-flex;align-items:center;gap:3px;font-size:.75rem;font-weight:700;padding:2px 6px;border-radius:4px;background-color:var(--text-primary);color:var(--bg-primary)}.theme-card-desc{font-size:.8125rem;color:var(--text-secondary);line-height:1.35}.settings-features-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 680px){.settings-features-grid{grid-template-columns:1fr}}.feature-item-row{display:flex;align-items:center;gap:14px;padding:16px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background-color:var(--bg-surface);transition:all .18s var(--ease-out)}.feature-item-row:hover{border-color:var(--border-color)}.feature-item-icon-box{width:40px;height:40px;border-radius:var(--radius-sm);background-color:var(--bg-mixed);color:var(--text-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-item-text{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.feature-item-title-row{display:flex;align-items:center;gap:8px;font-size:.9375rem;flex-wrap:wrap}.feature-status-tag{font-family:var(--font-sans);font-size:.75rem;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.05em}.feature-status-tag.status-enabled{background-color:#5dbc83;color:#fff}.feature-status-tag.status-disabled{background-color:var(--bg-mixed);color:var(--text-muted);border:1px solid var(--border-subtle)}.feature-item-desc{font-size:.8125rem;color:var(--text-secondary);line-height:1.35;margin:0}.toggle-switch-btn{width:44px;height:24px;border-radius:999px;background-color:var(--bg-mixed);border:1.5px solid var(--border-subtle);position:relative;cursor:pointer;flex-shrink:0;transition:all .2s var(--ease-out);padding:0;display:inline-flex;align-items:center}.toggle-switch-thumb{position:absolute;top:50%;left:2.5px;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background-color:var(--text-muted);transition:transform .2s var(--ease-out),background-color .2s var(--ease-out)}.toggle-switch-btn.is-active{background-color:var(--text-primary);border-color:var(--text-primary)}.toggle-switch-btn.is-active .toggle-switch-thumb{transform:translate(20px,-50%);background-color:var(--bg-primary)}.settings-modal-footer{padding:14px 22px;display:flex;justify-content:flex-end;border-top:1px solid var(--border-subtle);background-color:var(--bg-primary)}.btn-close-settings{padding:6px 18px;font-weight:600}.btn-settings-header{padding:7px 9px;display:inline-flex;align-items:center;justify-content:center}.settings-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.settings-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);transition:all .15s var(--ease-out)}.settings-shortcuts-btn-wrap{display:flex}.settings-shortcuts-btn{max-width:380px;width:fit-content}.settings-action-btn:hover{background-color:var(--bg-mixed);border-color:var(--text-primary)}.settings-logout-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:var(--radius-sm);font-size:.82rem;font-weight:600;color:#ea6c6c;border:1px solid rgba(234,108,108,.35);background-color:#ea6c6c0a;cursor:pointer;transition:all .15s var(--ease-out);width:fit-content}.settings-logout-btn:hover{background-color:#ea6c6c;color:#fff;border-color:#ea6c6c}.water-tracker-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:16px 18px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease-out)}.water-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.water-card-title-group{display:flex;align-items:center;gap:12px}.water-icon-circle{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#7fcff42e,#58acdd47);color:#58acdd;display:flex;align-items:center;justify-content:center;flex-shrink:0}.water-droplet-icon{color:#58acdd}[data-theme=dark] .water-icon-circle{background:linear-gradient(135deg,#7fcff438,#58acdd59);color:#7fcff4}[data-theme=dark] .water-droplet-icon{color:#7fcff4}.water-card-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);line-height:1.2}.water-card-sub{font-size:.8125rem;color:var(--text-secondary);margin-top:2px}.water-target-label{display:inline-flex;align-items:center;gap:6px}.water-btn-edit-target{background:none;border:none;padding:2px;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;border-radius:3px;transition:color .15s var(--ease-out)}.water-btn-edit-target:hover{color:#58acdd}.water-target-edit-row{display:inline-flex;align-items:center;gap:4px}.water-target-input{width:68px;padding:2px 6px;font-size:.8125rem;font-family:var(--font-mono);font-weight:600;border:1px solid #58ACDD;border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary)}.water-btn-icon-tiny{padding:3px 6px;border:1px solid #58ACDD;border-radius:3px;background-color:#58acdd;color:#fff;cursor:pointer;display:inline-flex;align-items:center}.water-pct-badge{font-family:var(--font-mono);font-size:.8125rem;font-weight:700;padding:3px 9px;border-radius:999px;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);transition:all .2s var(--ease-out)}.water-pct-badge.goal-reached{background-color:#5dbc8324;color:#5dbc83;border-color:#5dbc8359}.water-stats-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.water-current-display{display:flex;align-items:baseline;gap:4px}.water-current-big{font-family:var(--font-serif);font-size:1.55rem;font-weight:800;color:var(--text-primary);line-height:1}.water-current-unit{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary);font-weight:500}.water-status-text{font-size:.8125rem;font-weight:600}.water-status-success{color:#5dbc83}.water-status-remaining{color:var(--text-secondary)}.water-progress-track{width:100%;height:9px;background-color:var(--bg-primary);border-radius:999px;overflow:hidden;position:relative}.water-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#7fcff4,#58acdd);transition:width .35s var(--ease-out)}.water-progress-fill.pulse{box-shadow:0 0 10px #7fcff4b3}.water-quick-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:2px}.water-quick-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background-color:var(--bg-primary);cursor:pointer;transition:all .15s var(--ease-out);font-size:.8125rem;font-weight:700;color:var(--text-primary);font-family:var(--font-mono)}.water-quick-btn:hover:not(:disabled){background-color:var(--bg-mixed);border-color:#58acdd;transform:translateY(-1px)}.water-quick-btn:active:not(:disabled){transform:translateY(0)}.water-quick-btn:disabled{opacity:.5;cursor:not-allowed}.water-btn-primary:hover:not(:disabled){border-color:#58acdd;color:#58acdd}.water-btn-secondary:hover:not(:disabled){border-color:#58acdd;color:#58acdd}.water-btn-tertiary:hover:not(:disabled){border-color:#58acdd;color:#58acdd}.water-btn-undo{color:var(--text-secondary)}.water-btn-undo:hover:not(:disabled){border-color:#ea6c6c!important;color:#ea6c6c!important}.water-quick-sub{font-size:.75rem;font-weight:500;color:var(--text-secondary);font-family:var(--font-sans)}.water-card-footer{display:flex;align-items:center;justify-content:space-between;font-size:.8125rem;padding-top:4px;border-top:1px dashed var(--border-color)}.water-footer-left{display:flex;align-items:center;gap:12px}.water-btn-link{background:none;border:none;padding:0;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-weight:500;display:inline-flex;align-items:center;gap:4px;transition:color .15s var(--ease-out)}.water-btn-link:hover{color:#58acdd;text-decoration:underline}.water-btn-reset{background:none;border:none;padding:0;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-weight:500;display:inline-flex;align-items:center;gap:4px;transition:color .15s var(--ease-out)}.water-btn-reset:hover:not(:disabled){color:#ea6c6c}.water-custom-form{display:flex;gap:8px;margin-top:4px}.water-custom-input{flex:1;padding:6px 10px;font-size:.8125rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary)}.water-custom-input:focus{border-color:#58acdd;outline:none}.water-btn-custom-add{padding:6px 12px;font-weight:600;border-color:#58acdd;color:#58acdd}.water-logs-list{display:flex;flex-direction:column;gap:6px;padding:10px;background-color:var(--bg-primary);border-radius:var(--radius-sm);border:1px solid var(--border-color);max-height:120px;overflow-y:auto}.water-logs-title{font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.water-logs-items{display:flex;flex-wrap:wrap;gap:6px}.water-log-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 7px;font-size:.8125rem;font-family:var(--font-mono);background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px}.water-log-time{color:var(--text-secondary);font-size:.75rem}.water-log-amount{font-weight:700;color:#58acdd}.water-log-amount.negative{color:#ea6c6c}.water-log-del{background:none;border:none;padding:0;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;display:inline-flex;align-items:center}.water-log-del:hover{color:#ea6c6c}.modal-shortcuts-container{max-width:840px;width:95%}.shortcuts-modal-body{padding:18px 22px;background-color:var(--bg-surface);overflow-y:auto}.shortcuts-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:flex-start}@media (max-width: 640px){.shortcuts-two-columns{grid-template-columns:1fr}}.shortcuts-col{display:flex;flex-direction:column;gap:14px;min-width:0}.shortcuts-group-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);transition:border-color .15s var(--ease-out)}.shortcuts-group-card:hover{border-color:var(--text-secondary)}.shortcuts-group-header{padding:9px 14px;background-color:var(--bg-surface);border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.shortcuts-group-title-row{display:flex;align-items:center;gap:7px}.shortcuts-group-icon{color:var(--text-secondary)}.shortcuts-group-tag{font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.06em;color:var(--text-secondary)}.shortcuts-group-count{font-family:var(--font-mono);font-size:.75rem;font-weight:600;padding:1px 6px;border-radius:999px;background-color:var(--bg-mixed);color:var(--text-muted);border:1px solid var(--border-subtle)}.shortcuts-list{display:flex;flex-direction:column}.shortcut-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;border-bottom:1px solid var(--border-subtle);transition:background-color .12s var(--ease-out)}.shortcut-row:last-child{border-bottom:none}.shortcut-row:hover{background-color:var(--bg-mixed)}.shortcut-label{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.shortcut-keys{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.shortcut-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:23px;padding:0 7px;font-family:var(--font-mono);font-size:.8125rem;font-weight:700;color:var(--text-primary);background-color:var(--bg-surface);border:1px solid var(--border-color);border-bottom:2px solid var(--border-color);border-radius:4px;box-shadow:0 1px 1px #0000000d;line-height:1}[data-theme=dark] .shortcut-kbd{background-color:#242933;border-color:#ffffff29;border-bottom-color:#ffffff47;box-shadow:0 1px 2px #0006}.kbd-sep{font-size:.75rem;color:var(--text-secondary);font-weight:500;padding:0 1px}.shortcuts-modal-footer{padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;background-color:var(--bg-primary);border-top:1px solid var(--border-subtle)}.shortcuts-hint-pill{display:flex;align-items:center;gap:7px;font-size:.8125rem;color:var(--text-secondary);line-height:1.35}.shortcuts-hint-icon{font-size:.9375rem;flex-shrink:0}.btn-close-shortcuts{padding:6px 16px;font-weight:600;white-space:nowrap}.btn-shortcuts-header{color:var(--text-secondary)}.btn-shortcuts-header:hover{background-color:var(--text-primary)!important;color:var(--bg-primary)!important;border-color:var(--text-primary)!important}.workout-tracker-container{display:flex;flex-direction:column;gap:16px;width:100%}.workout-muscle-selector-card,.workout-exercises-list-section{background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-md);padding:18px 20px;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000005}.workout-card-header{display:flex;flex-direction:column;gap:4px}.workout-header-title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;letter-spacing:.02em;color:var(--text-primary)}.workout-header-hint{font-size:.8125rem;color:var(--text-secondary)}.muscle-pill-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.muscle-pill-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:9999px;border:1px solid var(--border-subtle);background-color:var(--bg-primary);color:var(--text-secondary);font-size:.82rem;font-weight:500;cursor:pointer;transition:all .15s var(--ease-out)}.muscle-pill-btn:hover{border-color:var(--border-color);color:var(--text-primary);background-color:var(--bg-mixed-subtle)}.muscle-pill-btn.active{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600}.muscle-pill-icon{font-size:.95rem;line-height:1}.pill-check-icon{margin-left:2px}.exercise-title-container{position:relative;display:inline-flex;align-items:center;min-width:200px;max-width:450px}.exercise-title-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;background-color:var(--bg-mixed-subtle);border:1px dashed var(--border-subtle);transition:all .15s var(--ease-out)}.exercise-title-pill:hover{background-color:var(--bg-mixed);border-color:var(--border-color)}.exercise-title-pill.is-empty{border-style:dashed;border-color:#f5bb5c;background-color:#f5bb5c14}.exercise-title-unnamed{font-size:.9375rem;font-weight:600;color:#d59342}[data-theme=dark] .exercise-title-unnamed{color:#f8cf6b}.exercise-title-edit-icon{opacity:.45;transition:opacity .15s var(--ease-out)}.exercise-title-pill:hover .exercise-title-edit-icon{opacity:1}.exercise-title-input-wrapper{position:relative;width:100%;min-width:240px}.exercise-title-input{width:100%;padding:5px 10px;font-size:.9375rem;font-weight:700;border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);box-shadow:0 2px 6px #0000000f}.exercise-title-input:focus{outline:none;border-color:var(--text-primary)}.exercise-suggestions-popover{position:absolute;top:calc(100% + 6px);left:0;width:320px;max-width:90vw;background-color:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 8px 24px #00000024;z-index:100;overflow:hidden}.suggestions-header{display:flex;flex-direction:column;padding:7px 12px;background-color:var(--bg-mixed-subtle);border-bottom:1px solid var(--border-subtle);font-size:.8125rem;font-weight:700;color:var(--text-primary)}.suggestions-sub{font-size:.75rem;font-weight:400;color:var(--text-muted)}.suggestions-list{max-height:220px;overflow-y:auto}.suggestion-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--border-subtle);transition:background-color .12s var(--ease-out)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background-color:var(--bg-mixed)}.suggestion-name{font-size:.82rem;font-weight:600;color:var(--text-primary)}.suggestion-muscle{font-size:.75rem;color:var(--text-muted);background-color:var(--bg-mixed);padding:2px 6px;border-radius:4px;white-space:nowrap}.today-calendar-icon{display:inline-flex;align-items:center;justify-content:center;line-height:1}.today-cal-svg{display:block}.exercises-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--border-subtle);margin-bottom:14px}.list-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.9375rem}.live-metrics-pill{font-size:.8125rem;color:#d59342;background-color:#fef3c7;border:1px solid #FCD34D;padding:3px 8px;border-radius:var(--radius-sm)}[data-theme=dark] .live-metrics-pill{background-color:#f5bb5c26;border-color:#f5bb5c59;color:#f8cf6b}.btn-rir-guide{font-size:.8125rem;color:var(--text-secondary);border-color:var(--border-subtle)}.rir-explainer-banner{background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 14px;font-size:.8125rem;color:var(--text-secondary);margin-bottom:14px;line-height:1.5}.rir-explainer-banner ul{margin:6px 0 0 16px;padding:0}.empty-workout-box{padding:36px 16px;text-align:center;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:10px;font-size:.9375rem}.empty-workout-box .empty-icon{opacity:.4}.exercise-cards-stack{display:flex;flex-direction:column;gap:14px}.exercise-card{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background-color:var(--bg-primary);padding:12px 14px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s var(--ease-out)}.exercise-card:hover{border-color:var(--border-color)}.exercise-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.exercise-name-badge-group{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.exercise-index{font-size:.8125rem;font-weight:700;background-color:var(--bg-mixed);color:var(--text-secondary);padding:1px 6px;border-radius:4px;flex-shrink:0;align-self:flex-start}.exercise-title{font-size:.92rem;color:var(--text-primary);word-break:break-word}.btn-delete-ex{background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;outline:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:color .15s var(--ease-out)}.btn-delete-ex:hover{color:#ea6c6c;background:transparent!important;background-color:transparent!important}.sets-table-wrapper{overflow-x:auto;width:100%}.sets-table{width:100%;border-collapse:collapse;font-size:.82rem;table-layout:fixed}.sets-table th{text-align:left;font-size:.8125rem;font-weight:600;color:var(--text-muted);letter-spacing:.03em;padding:6px 8px;border-bottom:1px solid var(--border-subtle)}.sets-table td{padding:6px 8px;vertical-align:middle}.sets-table .col-set{width:44px}.sets-table .col-weight,.sets-table .col-reps,.sets-table .col-rir{width:calc((100% - 88px) / 3);min-width:105px}.sets-table .col-action{width:44px;text-align:center}.set-num-pill{display:inline-block;font-size:.8125rem;font-weight:700;width:24px;height:24px;line-height:24px;text-align:center;border-radius:50%;background-color:var(--bg-mixed);color:var(--text-primary)}.sets-table input[type=number]::-webkit-inner-spin-button,.sets-table input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}.sets-table input[type=number]{-moz-appearance:textfield!important;-webkit-appearance:textfield!important;appearance:textfield!important}.stepper-input-wrapper{position:relative;display:flex;align-items:center;width:100%;height:32px;box-sizing:border-box;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background-color:var(--bg-surface);transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out);overflow:hidden}.stepper-input-wrapper:hover{border-color:var(--border-color)}.stepper-input-wrapper:focus-within{border-color:var(--border-color);box-shadow:0 0 0 1px var(--border-color)}.stepper-native-input{flex:1;min-width:0;width:100%;height:100%;padding:4px 6px;border:none!important;background:transparent!important;background-color:transparent!important;box-shadow:none!important;color:var(--text-primary);font-size:.9375rem;font-weight:700;outline:none!important}.stepper-input-wrapper .unit-label{font-size:.8125rem;color:var(--text-muted);font-weight:600;padding-right:2px;pointer-events:none;-webkit-user-select:none;user-select:none;flex-shrink:0}.stepper-arrows-col{display:flex;flex-direction:column;justify-content:center;align-items:center;width:18px;height:100%;flex-shrink:0;padding-right:3px;padding-left:1px;-webkit-user-select:none;user-select:none}.stepper-arrow-btn{display:flex;align-items:center;justify-content:center;width:100%;height:12px;background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;outline:none!important;padding:0!important;cursor:pointer;color:var(--text-muted);border-radius:3px;transition:color .15s var(--ease-out),transform .1s var(--ease-out)}.stepper-arrow-btn:hover{color:var(--text-primary)!important}.stepper-arrow-btn:active{transform:scale(.85);color:var(--text-primary)!important}.stepper-arrow-up{margin-bottom:1px}.stepper-arrow-down{margin-top:1px}.set-input:focus,.set-select:focus{outline:none;border-color:var(--border-color)}.set-select{width:100%;padding:5px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background-color:var(--bg-surface);color:var(--text-primary);font-size:.82rem;font-weight:500}.btn-delete-set{background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;outline:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:color .15s var(--ease-out)}.btn-delete-set:hover:not(:disabled){color:#ea6c6c;background:transparent!important;background-color:transparent!important}.btn-delete-set:disabled{opacity:.25;cursor:not-allowed;pointer-events:none}.exercise-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:6px;width:100%}.btn-add-set{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:.8125rem;font-weight:500;padding:5px 12px;height:30px;box-sizing:border-box}.exercise-vol-tag{display:inline-flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;color:var(--text-secondary);background-color:var(--bg-mixed-subtle);border:1px solid var(--border-subtle);padding:5px 12px;height:30px;box-sizing:border-box;border-radius:var(--radius-sm);white-space:nowrap}.workout-bottom-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border-subtle);width:100%}.btn-add-exercise-bottom{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--border-color);background-color:var(--bg-surface);color:var(--text-primary);font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .15s var(--ease-out)}.btn-add-exercise-bottom:hover{background-color:var(--text-primary)!important;color:var(--bg-primary)!important;border-color:var(--text-primary)!important}.btn-reset-workout:disabled{opacity:.38;cursor:not-allowed;transform:none!important}.btn-save-workout{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary);font-weight:600;padding:8px 18px;display:inline-flex;align-items:center;gap:8px;transition:all .15s var(--ease-out)}.btn-save-workout:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.btn-save-workout:disabled{opacity:.38;cursor:not-allowed;transform:none!important}.workout-ai-coach-card{background:linear-gradient(135deg,#22222008,#2222200f);border:1.5px solid var(--border-color);border-radius:var(--radius-md);padding:18px 20px;display:flex;flex-direction:column;gap:14px}[data-theme=dark] .workout-ai-coach-card{background:linear-gradient(135deg,#ede9e10a,#ede9e112);border-color:#ede9e140}.ai-coach-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ai-coach-title{font-family:var(--font-serif);display:flex;align-items:center;gap:8px;font-size:.92rem;color:var(--text-primary)}.ai-sparkle-icon{color:#eba94f}.overload-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:700;letter-spacing:.03em}.status-overload_achieved{background-color:#5dbc831f;border:1px solid rgba(93,188,131,.4);color:#5dbc83}.status-maintained{background-color:#74a5f21f;border:1px solid rgba(116,165,242,.4);color:#2563eb}.status-deload_fatigued{background-color:#b78df21f;border:1px solid rgba(183,141,242,.4);color:#9333ea}.status-first_session{background-color:#f5bb5c1f;border:1px solid rgba(245,187,92,.4);color:#eba94f}.ai-metrics-ribbon{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;padding:10px 14px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.ribbon-metric{display:flex;flex-direction:column;gap:2px}.ribbon-metric .metric-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.ribbon-metric .metric-val{font-size:.92rem;color:var(--text-primary);font-weight:700}.ribbon-metric .metric-sub{font-size:.8125rem;color:var(--text-muted);font-weight:400}.ribbon-metric .gain-pos{color:#5dbc83}.ribbon-metric .gain-neg{color:#ea6c6c}.ai-coach-message-body{font-size:.9375rem;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px 14px}@media (max-width: 640px){.shelf-search-bar{width:100%;min-width:100%}.sets-table .col-weight,.sets-table .col-reps,.sets-table .col-rir{width:calc((100% - 80px) / 3);min-width:95px}.ai-metrics-ribbon{grid-template-columns:1fr 1fr}}.month-text-mobile,.nav-tab-text-mobile,.header-btn-icon-label,.state-label-mobile{display:none}@media (max-width: 768px){html{font-size:15px!important}.top-navbar{padding:6px 10px;gap:6px}.top-navbar-row-top{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:8px}.brand-block{display:flex;align-items:center;gap:6px;flex-shrink:0}.brand-logo-mark{width:26px;height:26px;font-size:.8125rem;flex-shrink:0}.brand-title{font-size:.9375rem;font-weight:800;line-height:1.1;margin:0}.brand-subtitle,.brand-user-name{display:none!important}.top-navbar-row-bottom{display:flex;align-items:center;justify-content:space-between;width:100%;gap:6px}.navbar-controls{display:flex;align-items:center;gap:4px;width:auto;margin-left:auto}.month-switcher,.day-date-switcher{display:inline-flex!important;align-items:center!important;height:34px!important;min-height:34px!important;padding:0!important;gap:0!important;min-width:0;flex:0 1 auto;border-radius:var(--radius-sm);box-sizing:border-box!important}.month-display,.day-date-display{padding:0 7px!important;font-size:.8125rem!important;font-weight:700!important;gap:4px!important;min-width:0;display:inline-flex!important;align-items:center!important}.month-text-desktop{display:none!important}.month-text-mobile{display:inline!important;font-weight:700}.month-switcher .btn-icon,.day-date-switcher .btn-icon{width:34px!important;height:34px!important;min-width:34px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;color:var(--text-primary)!important;background:transparent!important;opacity:.95;box-shadow:none!important}.month-switcher .btn-icon:hover,.day-date-switcher .btn-icon:hover,.month-switcher .btn-icon:active,.day-date-switcher .btn-icon:active{background:var(--bg-hover)!important}.month-switcher .btn-icon svg,.day-date-switcher .btn-icon svg{width:20px!important;height:20px!important;stroke-width:2.5!important;display:block!important}.btn-icon{width:26px;height:26px;padding:0}.header-btn-text{display:none!important}.btn-today-header{padding:0!important;width:32px!important;min-width:32px!important;height:32px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-shadow:none!important}.btn-today-header .today-cal-svg{width:20px!important;height:20px!important}.btn-add-header,.btn-profile-header,.btn-settings-header{padding:4px 6px!important;font-size:.8125rem!important;min-width:28px;height:28px;justify-content:center;gap:0!important}.btn-shortcuts-header{display:none!important}.page-nav-tabs{display:flex;align-items:center;gap:4px}.nav-tab-btn{padding:4px 7px!important;font-size:.8125rem!important;gap:4px;white-space:nowrap}.nav-tab-text-desktop{display:none!important}.nav-tab-text-mobile{display:inline!important;font-weight:600}.main-container{padding:8px 8px 32px;gap:10px;width:100%;max-width:100vw;overflow-x:hidden}.overview-split-container{display:flex;flex-direction:column;gap:10px;width:100%!important;align-items:stretch!important}.overview-split-left-col,.overview-split-right-col{display:contents;width:100%!important}.overview-left-header{order:1;margin-bottom:0;gap:4px}.section-subtext{display:none!important}.section-header-bar{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:6px;margin-bottom:2px}.section-title{font-size:.9375rem;line-height:1.2}.month-rank-pill{font-size:.8125rem;padding:3px 8px;width:auto;gap:4px}.stats-cards-grid-split{order:2;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-bottom:0!important;width:100%!important;box-sizing:border-box!important}.stat-card{width:100%!important;box-sizing:border-box!important;padding:8px 10px;gap:3px;min-height:0;min-width:0;overflow:hidden}.stat-label{font-size:.75rem;letter-spacing:.02em;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-value-row{display:flex;align-items:baseline;gap:3px;flex-wrap:wrap}.stat-big-number{font-size:1.15rem;line-height:1.1}.stat-unit{font-size:.75rem}.stat-tag{font-size:.75rem;padding:1px 4px}.stat-footnote{display:none!important}.month-days-section{order:3;padding:8px!important;border-radius:var(--radius-md)!important}.month-days-grid{padding-top:8px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}.day-cell{padding:6px;min-height:56px;gap:3px}.day-number{font-size:.8125rem}.day-weekday{font-size:.75rem;padding:1px 3px}.day-score-num,.day-tasks-ratio{font-size:.75rem}.day-cell-card{padding:8px 6px!important;gap:4px!important;min-height:60px!important;box-sizing:border-box!important}.day-cell-num{font-size:.92rem!important}.day-cell-weekday{font-size:.75rem!important}.day-cell-today-tag{font-size:.75rem!important;padding:1px 4px!important}.day-cell-middle{gap:2px!important}.day-cell-percent{font-size:.9375rem!important;letter-spacing:-.03em!important}.day-cell-rank-tag{font-size:.75rem!important;padding:1px 4px!important;line-height:1.2!important}.day-cell-bar{height:4px!important}.day-cell-footer{font-size:.75rem!important}.charts-split-stack{order:4;gap:8px}.chart-box{padding:8px 10px}.chart-header{flex-direction:row;align-items:center;justify-content:space-between;margin-bottom:6px}.chart-title{font-size:.8125rem}.chart-active-badge{font-size:.75rem;padding:2px 6px;width:auto}.line-chart-wrapper,.bar-chart-wrapper{height:120px}.donut-chart-layout{flex-direction:row;align-items:center;justify-content:space-around;gap:8px;min-height:0;padding:2px 0}.donut-svg-container{width:105px;height:105px}.donut-center-value{font-size:.95rem}.donut-legend{width:auto;gap:4px}.legend-item{font-size:.75rem}.day-split-container{display:flex;flex-direction:column;gap:8px}.day-split-left-col{padding:8px;border-radius:var(--radius-md);gap:6px;min-width:0;width:100%;overflow:hidden}.day-page-topbar{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-bottom:0}.day-date-switcher{gap:3px}.day-detail-date{font-size:.8125rem;padding:2px 6px}.day-detail-weekday,.today-pill{font-size:.75rem;padding:2px 5px}.day-score-summary-card{padding:8px;gap:6px;min-width:0!important;max-width:100%;border-radius:var(--radius-sm)}.day-score-main{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;gap:6px}.day-score-big-row{display:flex;align-items:baseline;gap:4px}.day-score-big{font-size:1.25rem}.score-mod-pill{font-size:.75rem;padding:1px 4px}.day-rank-box{padding:3px 6px;min-width:0;width:auto;gap:3px}.day-rank-label{display:none!important}.day-rank-val{font-size:.8125rem;font-weight:700}.day-state-box{display:flex;flex-direction:column;gap:4px}.day-state-cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.state-mini-card{padding:6px 4px;min-width:0;overflow:hidden;flex-direction:row;align-items:center;justify-content:center;gap:0;height:auto}.state-label-desktop,.state-label-mobile{display:none!important}.state-text-val{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.state-sleep-banner{padding:3px 6px;font-size:.75rem;gap:4px;height:auto}.progress-bar-track{height:4px}.day-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.day-quick-actions .btn-minimal{padding:5px 3px;font-size:.8125rem;justify-content:center;gap:2px}.quick-action-text{display:none!important}.day-split-right-col{padding:8px;border-radius:var(--radius-md);gap:8px;min-width:0;width:100%;overflow:hidden}.day-split-right-col .day-mode-tab-bar,.day-mode-tab-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding-bottom:6px;margin:0}.day-mode-btn{width:100%;justify-content:center;padding:6px 4px;font-size:.8125rem;gap:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.day-mode-btn svg{display:none!important}.task-view-switch-row{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:4px}.task-count-label{font-size:.8125rem;color:var(--text-secondary);font-weight:700}.task-view-switch-row{padding-bottom:8px;margin-bottom:12px;gap:8px}.task-count-pill{font-size:.8125rem}.task-count-num{font-size:.9375rem}.task-view-toggle-btns{display:inline-flex;align-items:center;gap:6px}.view-toggle-btn{padding:4px 8px;font-size:.8125rem;gap:4px;border-radius:var(--radius-sm)}.view-toggle-btn.active{background-color:var(--text-primary);color:var(--bg-primary);font-weight:700}.tasks-list-grid{grid-template-columns:1fr;gap:8px}.task-card-item{padding:9px 10px;min-height:0;gap:6px}.btn-edit-task{opacity:1!important}.task-card-title{font-size:.82rem!important}.task-badge-cat,.task-badge-boost,.task-badge-time{font-size:.75rem;padding:1px 5px}col.timetable-y-col{width:76px!important;min-width:76px!important}.timetable-corner-th,.timetable-td-time{position:static!important;left:auto!important;z-index:1!important;width:76px!important;min-width:76px!important;max-width:76px!important;padding:0 4px!important;text-align:center!important;vertical-align:middle!important;box-shadow:none!important}.timetable-corner-th{height:48px!important;min-height:48px!important}.timetable-td-time{height:62px!important;min-height:62px!important}.timetable-time-text{font-size:.8125rem!important;font-weight:700!important;white-space:nowrap!important}.timetable-corner-label{font-size:.75rem}.timetable-row-badge{font-size:.75rem;padding:2px}.timetable-th-col,.timetable-td-task-cell,.timetable-td-empty-cell,.timetable-td-covered,.timetable-td-has-task{width:110px;min-width:110px;max-width:110px;height:62px;min-height:62px}.timetable-cell-track{height:62px;min-height:62px}.grid-task-card{top:3px;bottom:3px;padding:4px 6px}.grid-task-title{font-size:.8125rem}.grid-empty-target{opacity:.45}.day-note-box{padding:8px 10px;gap:6px}.day-note-hint{display:none!important}.day-note-label{font-size:.8125rem}.day-note-textarea{font-size:.8125rem;min-height:52px;padding:6px 8px}.water-tracker-card{padding:10px;gap:8px}.water-card-header{flex-wrap:wrap;gap:6px}.water-card-title{font-size:.8125rem}.water-card-sub{font-size:.75rem}.water-current-big{font-size:1.2rem}.water-stats-row{flex-wrap:wrap;gap:4px}.water-quick-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.water-quick-btn{padding:5px 2px;font-size:.75rem}.water-quick-sub{font-size:.75rem}.water-card-footer{flex-wrap:wrap;gap:6px}.calories-unified-card{padding:10px;gap:10px}.meal-sessions-grid{grid-template-columns:1fr;gap:8px}.meal-session-card{padding:10px;min-height:0;gap:8px}.inline-form-row{flex-wrap:wrap;gap:4px}.input-dish-name{flex:1 1 100%;width:100%}.input-dish-weight,.input-dish-time{flex:1 1 calc(50% - 2px);width:auto;min-width:0}.food-item-row{padding:6px 8px;gap:6px;align-items:flex-start}.food-item-main{min-width:0;flex:1}.food-item-title-line{flex-wrap:wrap;gap:4px}.food-item-name{font-size:.8125rem;word-break:break-word}.food-item-macros{flex-wrap:wrap;gap:4px;font-size:.75rem}.nutrition-ai-header{flex-direction:column;align-items:stretch;gap:8px}.nutrition-ai-header-right{width:100%;display:flex;flex-wrap:wrap;gap:4px;justify-content:stretch}.nutrition-ai-header-right .unsaved-badge{width:100%;justify-content:center}.nutrition-ai-header-right .btn-minimal{flex:1 1 auto;justify-content:center;padding:7px 8px;font-size:.8125rem}.nutrition-macros-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nutrition-macros-grid .macro-stat-card:first-child{grid-column:1 / -1}.macro-stat-card{padding:8px 10px;min-width:0}.macro-card-value strong{font-size:1.15rem}.nutrition-ai-feedback-box{padding:10px}.feedback-content-row{gap:8px}.feedback-paragraph{font-size:.8125rem;line-height:1.45}.workout-muscle-selector-card,.workout-active-exercises-card,.workout-ai-coach-card{padding:10px;gap:10px;min-width:0;overflow:hidden}.workout-card-header{flex-direction:column;align-items:flex-start;gap:4px}.muscle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.muscle-group-btn{padding:8px 4px;gap:3px;min-width:0}.muscle-icon{font-size:1.1rem}.muscle-name{font-size:.8125rem;text-align:center}.exercise-picker-shelf{padding:8px;gap:8px}.shelf-header{flex-direction:column;align-items:stretch;gap:6px}.shelf-search-bar{width:100%!important;min-width:0!important}.custom-exercise-inline-form{display:flex;flex-wrap:wrap;width:100%;gap:4px}.custom-exercise-input{flex:1 1 100%;width:100%}.active-exercise-card{padding:8px;gap:6px;min-width:0}.exercise-name-title{font-size:.8125rem}.sets-table-wrapper{overflow-x:hidden;width:100%}.sets-table{width:100%;min-width:0!important;table-layout:fixed}.sets-table th,.sets-table td{padding:4px 2px;font-size:.8125rem}.sets-table .col-set{width:24px;text-align:center}.sets-table .col-weight,.sets-table .col-reps,.sets-table .col-rir{width:calc((100% - 50px) / 3);min-width:0!important}.sets-table .col-action{width:26px;text-align:center}.set-num-pill{width:19px;height:19px;line-height:19px;font-size:.75rem;margin:0 auto}.stepper-input-wrapper{height:28px;width:100%;border-radius:4px}.stepper-native-input{padding:2px;font-size:.8125rem;text-align:center;min-width:0}.stepper-arrows-col{width:14px;padding-right:1px;padding-left:0}.stepper-arrow-btn{height:11px}.btn-delete-set{padding:2px;display:inline-flex;align-items:center;justify-content:center}.btn-delete-set svg{width:14px;height:14px}.exercise-card{padding:10px;gap:8px;min-width:0}.exercise-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.exercise-name-badge-group{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.exercise-title-container{max-width:100%;min-width:0;flex:1}.exercise-title-pill{max-width:100%;padding:3px 8px;gap:6px}.exercise-title{font-size:.9375rem;line-height:1.3;word-break:break-word}.exercise-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:4px;width:100%}.btn-add-set,.exercise-vol-tag{font-size:.8125rem;padding:4px 8px;height:26px}.exercise-title-input-wrapper{min-width:0}.exercise-title-input{font-size:.82rem;padding:4px 8px}.exercise-suggestions-popover{width:min(300px,85vw)}.workout-bottom-actions{margin-top:10px;padding-top:10px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;width:100%}.workout-bottom-actions .btn-add-exercise-bottom,.workout-bottom-actions .btn-save-workout{justify-content:center;padding:8px 12px;font-size:.8125rem}.ai-metrics-ribbon{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px}.ai-coach-message-body{font-size:.8125rem;padding:8px 10px}.modal-backdrop{padding:8px}.modal-container{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 16px);border-radius:var(--radius-md)}.modal-header{padding:10px 12px}.modal-title{font-size:.9375rem}.modal-body,.daily-state-modal-body,.profile-modal-body,.settings-modal-body{padding:12px 10px;gap:12px}.daily-state-modal-footer,.profile-modal-footer{padding:8px 10px;gap:6px}.profile-section-block{padding:10px 8px;gap:8px}.scope-cards-grid{grid-template-columns:1fr;gap:6px}.scope-option-card{padding:8px 10px}.settings-action-grid{grid-template-columns:1fr;gap:8px}.settings-action-card{flex-direction:column;align-items:stretch;gap:8px;padding:10px}.settings-action-card .btn-minimal{width:100%;justify-content:center}.auth-page-wrapper{padding:10px}.auth-card{padding:18px 14px;gap:14px}.auth-card-title{font-size:1rem}.auth-otp-input{font-size:1.25rem;letter-spacing:5px;padding:8px}.Toastify__toast-container{padding:8px;width:100%;max-width:100vw;left:0;right:0}.ai-floating-coach{bottom:10px;right:10px;gap:6px}.ai-floating-bubble{width:calc(100vw - 20px);max-width:320px;padding:10px 12px}.ai-floating-avatar-btn{width:40px;height:40px}}@media (max-width: 480px){.month-days-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.muscle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-big-number{font-size:1.05rem}.day-mode-btn{font-size:.75rem;padding:5px 2px}.day-mode-btn svg{display:none}}.profile-inputs-grid-6{display:grid;grid-template-columns:1.5fr .9fr .75fr .95fr 1fr 1.25fr;gap:10px}select.form-input{color:var(--text-primary);background-color:var(--bg-surface);cursor:pointer;height:42px}select.form-input option{background-color:var(--bg-surface);color:var(--text-primary)}.custom-select-wrapper{position:relative;display:flex;align-items:center;width:100%}.custom-select-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:24px!important;cursor:pointer}.custom-select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:color .15s var(--ease-out)}.custom-select-wrapper:hover .custom-select-arrow,.custom-select-wrapper:focus-within .custom-select-arrow{color:var(--text-primary)}.macro-recommend-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:14px 16px;display:flex;flex-direction:column;gap:12px}.macro-recommend-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.macro-recommend-title{display:flex;align-items:center;gap:6px;font-size:.92rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.macro-recommend-desc{font-size:.8125rem;color:var(--text-secondary);margin:0;line-height:1.4}.macro-mode-switch{display:flex;gap:4px;background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:3px}.macro-mode-btn{padding:4px 10px;font-size:.8125rem;font-weight:600;border:none;background:transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;transition:all .15s var(--ease-out)}.macro-mode-btn:hover{color:var(--text-primary)}.macro-mode-btn.active{background-color:var(--bg-surface);color:var(--text-primary);box-shadow:0 1px 2px #0000001a}.macro-targets-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.macro-target-badge{background-color:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 12px;display:flex;flex-direction:column;gap:4px}.macro-target-badge.target-calories{border-color:var(--border-color);background-color:var(--bg-mixed-subtle)}.target-label{font-size:.75rem;font-weight:700;letter-spacing:.4px;color:var(--text-secondary)}.target-value{font-family:var(--font-mono);font-size:1.15rem;font-weight:800;color:var(--text-primary)}.target-unit{font-size:.8125rem;font-weight:600;color:var(--text-muted)}.target-note{font-size:.75rem;color:var(--text-muted)}.target-custom-wrap{display:flex;align-items:center;gap:4px}.target-custom-input{width:100%;padding:4px 6px;font-family:var(--font-mono);font-size:.95rem;font-weight:700;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-surface);color:var(--text-primary)}.target-custom-input:focus{outline:none;border-color:var(--text-primary)}.macro-target-val{font-family:var(--font-mono);font-size:.9375rem;font-weight:600;color:var(--text-muted);display:inline-flex;align-items:baseline;gap:3px}.macro-target-val .macro-unit{font-size:.8125rem}@media (max-width: 768px){.profile-inputs-grid-6{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.profile-inputs-grid-6>.form-group:first-child{grid-column:1 / -1}.macro-targets-grid{grid-template-columns:repeat(2,1fr)}.macro-targets-grid>.target-calories{grid-column:1 / -1}.btn-food-delete,.btn-edit-task,.btn-delete-set{min-width:32px;min-height:32px}}.lp-shell{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);color:var(--text-primary)}.lp-nav{position:sticky;top:0;z-index:30;background-color:var(--bg-primary);border-bottom:1.5px solid var(--border-color);transition:box-shadow .3s var(--ease-out)}.lp-nav.is-scrolled{box-shadow:0 8px 24px #00000014}.lp-progress{position:fixed;top:0;left:0;z-index:60;width:100%;height:3px;background-color:var(--text-primary);transform-origin:0 50%;transform:scaleX(0)}.lp-nav-inner{max-width:1200px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.lp-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--text-primary)}.lp-brand-logo{width:34px;height:34px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0}.lp-brand-name{font-family:var(--font-serif);font-weight:700;font-size:1.05rem;letter-spacing:.06em}.lp-nav-actions{display:flex;align-items:center;gap:10px}.lp-nav-login{text-decoration:none}.lp-nav-theme-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background-color:transparent;color:var(--text-primary);cursor:pointer;transition:background-color .16s var(--ease-out),color .16s var(--ease-out),border-color .16s var(--ease-out),transform .16s var(--ease-out)}.lp-nav-theme-btn:hover{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.lp-nav-theme-btn:active{transform:scale(.94)}.lp-nav-theme-btn:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.lp-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 20px;font-size:.9375rem;font-weight:700;letter-spacing:.02em;background-color:var(--text-primary);color:var(--bg-primary);border:1.5px solid var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;will-change:transform;transition:background-color .16s var(--ease-out),color .16s var(--ease-out),transform .55s var(--ease-out)}.lp-btn-primary:hover{background-color:transparent;color:var(--text-primary)}.lp-btn-primary:active{transform:translateY(1px)}.lp-btn-lg{padding:12px 26px;font-size:.95rem}.lp-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--border-subtle);background:radial-gradient(600px 400px at 80% -10%,var(--chart-area),transparent 70%),var(--bg-primary)}.lp-hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lp-orb{position:absolute;border-radius:50%}.lp-orb:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;filter:blur(46px)}.lp-orb-a{--p: .55;width:520px;height:520px;top:-240px;left:-160px;transform:translate3d(calc(var(--hx, 0px) * var(--p)),calc(var(--hy, 0px) * var(--p)),0);transition:transform .35s var(--ease-out)}.lp-orb-a:before{background:radial-gradient(circle,var(--lp-orb-a),transparent 70%);animation:lp-float-a 15s ease-in-out infinite}.lp-orb-b{--p: .85;width:420px;height:420px;top:-120px;right:-120px;transform:translate3d(calc(var(--hx, 0px) * var(--p)),calc(var(--hy, 0px) * var(--p)),0);transition:transform .35s var(--ease-out)}.lp-orb-b:before{background:radial-gradient(circle,var(--lp-orb-b),transparent 70%);animation:lp-float-b 19s ease-in-out infinite}.lp-orb-c{--p: 1.2;width:320px;height:320px;bottom:-160px;left:40%;transform:translate3d(calc(var(--hx, 0px) * var(--p)),calc(var(--hy, 0px) * var(--p)),0);transition:transform .35s var(--ease-out)}.lp-orb-c:before{background:radial-gradient(circle,var(--lp-orb-c),transparent 70%);animation:lp-float-c 23s ease-in-out infinite}.lp-sparkle{animation:lp-spin 8s linear infinite}@keyframes lp-float-a{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(24px,-34px,0) scale(1.07)}}@keyframes lp-float-b{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(-28px,26px,0) scale(1.05)}}@keyframes lp-float-c{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-40px,0) scale(1.1)}}@keyframes lp-spin{to{transform:rotate(360deg)}}.lp-hero-inner{max-width:1200px;margin:0 auto;padding:84px 24px 72px;display:flex;flex-direction:column;align-items:center;text-align:center}.lp-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:999px;background-color:var(--bg-surface)}.lp-title{font-family:var(--font-serif);margin-top:28px;font-size:clamp(2.1rem,6vw,4rem);font-weight:800;letter-spacing:.04em;line-height:1.05}.lp-subtitle{margin-top:20px;max-width:640px;font-size:1.05rem;line-height:1.7;color:var(--text-secondary)}.lp-cta-row{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}.lp-cta-row .btn-minimal,.lp-cta-row .lp-btn-primary{text-decoration:none}.lp-hero-stats{margin-top:48px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}.lp-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 26px;min-width:150px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--bg-surface)}.lp-stat-value{display:inline-flex;align-items:center;gap:6px;font-size:1.05rem;font-weight:700}.lp-stat-label{font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.lp-section{padding:72px 24px}.lp-section-alt{background-color:var(--bg-mixed-subtle);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}.lp-section-inner{max-width:1200px;margin:0 auto}.lp-section-head{text-align:center;margin-bottom:44px}.lp-section-title{font-family:var(--font-serif);font-size:1.6rem;font-weight:800;letter-spacing:.06em}.lp-section-desc{margin:12px auto 0;max-width:560px;font-size:.95rem;color:var(--text-secondary);line-height:1.65}.lp-features-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.lp-feature-grid-item{display:flex}.lp-feature-card{position:relative;width:100%;display:flex;flex-direction:column;gap:12px;padding:22px 20px;background-color:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;transform-style:preserve-3d;will-change:transform;transition:border-color .2s var(--ease-out)}.lp-feature-card:hover{border-color:var(--border-color)}.lp-card-spotlight{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;opacity:0;background:radial-gradient(340px circle at var(--mx, 50%) var(--my, 50%),var(--lp-spotlight),transparent 65%);transition:opacity .3s var(--ease-out);pointer-events:none}.lp-feature-card:hover .lp-card-spotlight{opacity:1}.lp-feature-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);transform:translateZ(26px);transition:transform .25s var(--ease-out),background-color .25s var(--ease-out),color .25s var(--ease-out)}.lp-feature-card:hover .lp-feature-icon{background-color:var(--text-primary);color:var(--bg-primary)}.lp-feature-title{font-family:var(--font-serif);font-size:1rem;font-weight:700;line-height:1.35;transform:translateZ(18px)}.lp-feature-desc{font-size:.9375rem;line-height:1.6;color:var(--text-secondary);transform:translateZ(10px)}.lp-demo-btn{margin-top:auto;display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:8px 14px;border:1.5px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background-color .2s var(--ease-out),color .2s var(--ease-out),border-color .2s var(--ease-out)}.lp-demo-btn:hover{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.lp-demo-btn-arrow{transition:transform .2s var(--ease-out)}.lp-demo-btn:hover .lp-demo-btn-arrow{transform:translate(3px)}.lp-demo-modal{max-width:900px}.lp-demo-body{padding:24px}.lp-demo-overview{display:flex;flex-direction:column;gap:16px;width:100%}.lp-ai-demo{display:flex;align-items:flex-start;gap:28px;flex-wrap:wrap}.lp-ai-demo-side{display:flex;flex-direction:column;align-items:center;gap:12px;flex:1 1 200px;min-width:200px}.lp-ai-demo-caption{font-size:.8125rem;color:var(--text-secondary);line-height:1.6;text-align:center;max-width:300px}.lp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.lp-step{padding:26px 24px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background-color:var(--bg-surface);position:relative}.lp-step-num{font-family:var(--font-serif);display:inline-block;font-size:1.9rem;font-weight:800;color:var(--text-primary);opacity:.25;line-height:1}.lp-step-title{font-family:var(--font-serif);margin-top:14px;font-size:1.05rem;font-weight:700}.lp-step-desc{margin-top:8px;font-size:.9375rem;line-height:1.6;color:var(--text-secondary)}.lp-cta-banner{padding:72px 24px}.lp-cta-banner-inner{max-width:820px;margin:0 auto;padding:44px 32px;text-align:center;border:1.5px solid var(--border-color);border-radius:var(--radius-lg);background-color:var(--bg-surface);display:flex;flex-direction:column;align-items:center;gap:14px}.lp-cta-icon{color:var(--text-primary)}.lp-cta-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:800;letter-spacing:.04em}.lp-cta-desc{max-width:460px;font-size:.95rem;line-height:1.6;color:var(--text-secondary)}.lp-cta-banner .lp-btn-primary{margin-top:8px}.lp-footer{margin-top:auto;border-top:1px solid var(--border-subtle);background-color:var(--bg-mixed-subtle);padding:20px 24px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;font-size:.8125rem;color:var(--text-secondary)}@media (max-width: 1024px){.lp-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.lp-hero-inner{padding:56px 20px 52px}.lp-nav-inner{padding:12px 16px}.lp-brand-name{font-size:.95rem}.lp-steps{grid-template-columns:1fr}.lp-section,.lp-cta-banner{padding:52px 18px}}@media (max-width: 480px){.lp-features-grid{grid-template-columns:1fr}.lp-stat{min-width:100%}.lp-cta-row{flex-direction:column;width:100%}.lp-cta-row .btn-minimal,.lp-cta-row .lp-btn-primary{width:100%}.lp-nav-inner{gap:8px;padding:12px}.lp-brand{gap:8px}.lp-nav-actions{gap:6px}.lp-nav-actions .btn-minimal,.lp-nav-actions .lp-btn-primary{padding:7px 10px;font-size:.8125rem;gap:5px;white-space:nowrap}.lp-nav-actions .btn-minimal svg,.lp-nav-actions .lp-btn-primary svg{display:none}.lp-brand-name{font-size:.8125rem;letter-spacing:.04em}}.reveal{opacity:0;transform:translateY(28px);filter:blur(4px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out),filter .7s var(--ease-out);will-change:opacity,transform,filter}.reveal.is-visible{opacity:1;transform:none;filter:none}@media (prefers-reduced-motion: reduce){.reveal{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}.lp-orb:before,.lp-sparkle{animation:none!important}.lp-orb,.lp-btn-primary,.lp-feature-card{transition:none!important}.lp-progress{display:none}}@media (max-width: 768px){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]):not([type=button]):not([type=submit]),textarea,select{font-size:max(16px,1em)!important}}
