:root{--mobile-bottom-nav-height: calc(64px + env(safe-area-inset-bottom, 0px)) }.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--mobile-bottom-nav-height);background:var(--sidebar-glass-bg);backdrop-filter:blur(28px) saturate(180%);-webkit-backdrop-filter:blur(28px) saturate(180%);border-top:1px solid var(--sidebar-glass-border);display:flex;align-items:center;justify-content:space-around;padding:0 12px env(safe-area-inset-bottom,0px) 12px;z-index:1000;box-shadow:0 -4px 20px #0003}.nav-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text-muted);text-decoration:none;font-size:10px;font-weight:600;min-width:60px;height:48px;transition:color .2s ease,background-color .2s ease,transform .16s ease;border-radius:12px;overflow:hidden;-webkit-tap-highlight-color:transparent}.nav-item svg{transition:transform .18s ease,filter .2s ease}.nav-item span{opacity:.8}.nav-item.active{color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 76%),0 0 12px color-mix(in srgb,var(--accent),transparent 86%)}.nav-item.active span{opacity:1}.nav-item.active svg{transform:scale(1.06);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--accent),transparent 78%))}@media(hover:none)and (pointer:coarse){.nav-item:active{transform:scale(.93)}}@media(min-width:769px){.mobile-bottom-nav{display:none}}.layout-native-mobile .mobile-bottom-nav{display:flex}@media(max-width:768px){:root[data-theme=light] .mobile-bottom-nav,:root[data-theme=light] .nav-item.active{box-shadow:none!important}:root[data-theme=light] .mobile-bottom-nav{background:#fffffff5;border-top-color:#6f63ef1f;backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%)}:root[data-theme=light] .nav-item.active svg{filter:none!important}}@media(max-width:768px){.dashboard.dashboard-mobile-oled{gap:14px!important;padding:calc(env(safe-area-inset-top,0px) + 10px) 14px calc(84px + env(safe-area-inset-bottom,0px)) 14px!important}.dashboard-mobile-oled .oled-momentum-strip{min-height:152px;height:152px;max-height:152px;padding:12px 12px 10px;border-radius:20px}.dashboard-mobile-oled .oled-momentum-overview{grid-template-columns:minmax(92px,112px) minmax(0,1fr);gap:8px;transform:none}.dashboard-mobile-oled .oled-momentum-left{padding:0;justify-content:center}.dashboard-mobile-oled .oled-momentum-ring-wrap{--momentum-ring-size: 94px;transform:none}.dashboard-mobile-oled .oled-momentum-ring-wrap .score-text{font-size:15px}.dashboard-mobile-oled .oled-momentum-bar-layout{gap:4px;grid-template-rows:auto minmax(0,1fr)}.dashboard-mobile-oled .oled-momentum-greeting{align-items:flex-start;justify-content:flex-end;text-align:left;padding-top:6px}.dashboard-mobile-oled .oled-momentum-greeting-line{font-size:10px;line-height:1.1}.dashboard-mobile-oled .oled-momentum-greeting-name{font-size:15px;line-height:1.05}.dashboard-mobile-oled .oled-momentum-week{padding:4px 18px 10px 2px}.dashboard-mobile-oled .oled-momentum-bars{gap:6px;padding:8px 0 6px;align-items:stretch}.dashboard-mobile-oled .oled-momentum-day-bar{width:100%;max-width:14px;min-height:8px}.dashboard-mobile-oled .oled-momentum-scale{right:-2px;font-size:9px}.dashboard-mobile-oled .dashboard-error-mobile{margin:-4px 0 0!important;padding:0 2px}.dashboard-mobile-loading{min-height:180px;display:flex;align-items:center;justify-content:center;color:#d6def5bd}.dashboard-mobile-oled .oled-empty-state{padding-top:2px!important}.dashboard-mobile-oled .oled-habit-list{gap:12px;padding:0 0 8px}.dashboard-mobile-oled .oled-habit-row{min-height:66px!important;max-height:66px!important;position:relative;isolation:isolate;overflow:hidden;gap:8px;padding:0 8px 0 10px;border-radius:20px;background:linear-gradient(180deg,#080b18eb,#04060ee6),linear-gradient(90deg,color-mix(in srgb,var(--habit-row-accent),transparent 78%) 0%,color-mix(in srgb,var(--habit-row-accent),transparent 89%) 30%,transparent 72%);backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%);box-shadow:inset 0 0 0 1px #ffffff0d,inset 0 1px #ffffff0b,inset 0 -1px #ffffff08,0 10px 24px #0000002e,-18px 0 30px -20px color-mix(in srgb,var(--habit-row-accent),transparent 58%)}.dashboard-mobile-oled .oled-habit-row:not(.oled-habit-row-create):before{content:"";position:absolute;inset:-14% 42% -14% -16%;background:radial-gradient(circle at 0% 50%,color-mix(in srgb,#ffffff,var(--habit-row-accent) 14%) 0%,color-mix(in srgb,var(--habit-row-accent),transparent 68%) 26%,color-mix(in srgb,var(--habit-row-accent),transparent 84%) 52%,transparent 78%);opacity:.58;pointer-events:none;z-index:0}.dashboard-mobile-oled .oled-habit-row>*{position:relative;z-index:1}.dashboard-mobile-oled .oled-habit-row-create{padding:0 10px;border:1px dashed rgba(220,227,255,.1);background:linear-gradient(180deg,#0e111fb8,#0a0c16b8);box-shadow:inset 0 0 0 1px #ffffff04,inset 0 -1px #ffffff06}.dashboard-mobile-oled .oled-habit-row-create-icon{width:30px;height:30px;color:#dce3ff6b}.dashboard-mobile-oled .oled-habit-main{gap:8px}.dashboard-mobile-oled .oled-habit-emoji{width:24px;font-size:24px}.dashboard-mobile-oled .oled-habit-name{font-size:13px;font-weight:700}.dashboard-mobile-oled .oled-habit-streak{min-width:46px;gap:4px;font-size:10px}.dashboard-mobile-oled .oled-habit-streak svg{width:13px;height:13px}.dashboard-mobile-oled .oled-habit-days{min-width:122px;gap:6px}.dashboard-mobile-oled .oled-day-toggle{width:26px;height:26px;border-radius:8px!important;font-size:12px;font-weight:700}}.habits-page{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:20px;overflow:hidden}.habits-page-panel{display:flex;flex-direction:column;height:100%;flex:1;min-height:0;padding:18px 18px 16px;overflow:hidden}.habits-page-header{margin-bottom:14px}.habits-page-panel .habit-list,.habits-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;flex:1;align-content:start;min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 2px 2px;scrollbar-gutter:stable}.habits-page-panel .habit-list .habit-card,.habits-page-grid .habit-card{padding:12px 14px!important;gap:12px!important;min-height:auto}.habit-card-clickable{cursor:pointer}.habits-page-panel .habit-list .habit-history-grid,.habits-page-grid .habit-history-grid{gap:clamp(4px,.35vw,5px)!important;margin-top:clamp(2px,.32vw,6px)}.habits-page-panel .habit-list .habit-history-label,.habits-page-grid .habit-history-label{font-size:clamp(.56rem,.5vw,.62rem)}.habits-page-panel .habit-list .habit-history-label .day-num,.habits-page-grid .habit-history-label .day-num{font-size:clamp(.5rem,.45vw,.58rem);margin-top:1px}.habits-page-panel .habit-list .habit-history-box,.habits-page-grid .habit-history-box{width:min(100%,clamp(24px,1.55vw,34px));border-radius:clamp(6px,.4vw,7px)}.danger-button{background:#ff6b6b1a!important;color:#ff6b6b!important;border:1px solid rgba(255,107,107,.2)!important}.danger-button:hover{background:#ff6b6b!important;color:#fff!important;border-color:#ff6b6b!important}.habit-details-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:clamp(12px,2.3vw,24px);background:#040810b8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.habit-details-modal{--habit-accent: #339AF0;--habit-accent-soft: color-mix(in srgb, var(--habit-accent), transparent 90%);width:min(1120px,100%);max-height:min(calc(100dvh - 24px),920px);border-radius:20px;border:1px solid color-mix(in srgb,var(--habit-accent),var(--border-subtle) 64%);background:linear-gradient(165deg,color-mix(in srgb,var(--habit-accent),transparent 90%) 0%,var(--bg-card) 45%,color-mix(in srgb,var(--habit-accent),transparent 94%) 100%);box-shadow:0 24px 42px #0000006b,0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 84%);display:flex;flex-direction:column;gap:12px;padding:clamp(14px,2.2vw,20px);overflow:hidden}.habit-details-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.habit-details-header-main{min-width:0}.habit-details-title{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-details-subtitle{margin:6px 0 0;color:var(--text-secondary);font-size:.92rem;font-weight:600}.habit-details-header-actions{display:inline-flex;align-items:center;gap:8px}.habit-details-modal .chart-settings-button{width:32px;height:32px;min-width:32px;min-height:32px;padding:0}.habit-details-content{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;gap:8px;align-items:stretch;overflow:hidden;position:relative}.habit-details-history-panel{--habit-details-history-body-height: clamp(264px, 36dvh, 352px);order:1;flex:0 0 auto;min-width:0;min-height:0;border:1px solid color-mix(in srgb,var(--habit-accent),transparent 78%);border-radius:16px;background:color-mix(in srgb,var(--habit-accent-soft),var(--surface-overlay-soft) 62%);padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;position:relative;z-index:1}.habit-details-history-panel.is-menu-open{overflow:visible;z-index:35}.habit-details-history-head{display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;z-index:3}.habit-details-history-title{font-size:1rem}.habit-details-history-menu{top:calc(100% + 8px);bottom:auto;right:0;width:320px;min-width:240px;max-width:calc(100vw - 64px);max-height:min(46vh,260px);overflow-y:auto;scrollbar-gutter:stable;padding:6px;gap:6px;border-color:color-mix(in srgb,var(--habit-accent),transparent 70%);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card),transparent 2%),color-mix(in srgb,var(--habit-accent),transparent 94%));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 16px 34px #00000057,0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 88%);z-index:120}.habit-details-history-menu .chart-menu-button{width:100%;min-height:34px;padding:0 10px!important;border-radius:10px!important;font-size:.8rem}.habit-details-history-head .chart-settings-button{border-color:color-mix(in srgb,var(--habit-accent),transparent 62%)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--habit-accent),transparent 88%),color-mix(in srgb,var(--habit-accent),transparent 93%))!important;box-shadow:inset 0 1px color-mix(in srgb,#ffffff,transparent 86%),0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 88%)}.habit-details-history-head .chart-settings-button:hover{border-color:color-mix(in srgb,var(--habit-accent),transparent 46%)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--habit-accent),transparent 84%),color-mix(in srgb,var(--habit-accent),transparent 91%))!important}.habit-details-history-head .chart-settings-button svg{color:color-mix(in srgb,var(--habit-accent),var(--text-primary) 30%)}.habit-details-history-menu .chart-menu-button.active{border-color:color-mix(in srgb,var(--habit-accent),transparent 54%)!important;background:color-mix(in srgb,var(--habit-accent),transparent 82%)!important;color:color-mix(in srgb,var(--habit-accent),#ffffff 18%)!important}.habit-details-history-scroll{--cell-gap: 7px;--month-row-height: 18px;--month-row-gap: 14px;--cell-size: var(--habit-history-cell-size, 34px);flex:1 1 auto;min-height:0;height:100%;display:flex;flex-direction:column;overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--habit-accent),var(--text-secondary) 58%) transparent}.habit-details-history-panel>.habit-details-history-scroll,.habit-details-history-panel>.habit-details-history-chart-card{flex:0 0 var(--habit-details-history-body-height);min-height:var(--habit-details-history-body-height);height:var(--habit-details-history-body-height)}.habit-details-history-scroll::-webkit-scrollbar{height:10px}.habit-details-history-scroll::-webkit-scrollbar-track{background:transparent;border-radius:999px}.habit-details-history-scroll::-webkit-scrollbar-thumb{background:linear-gradient(90deg,color-mix(in srgb,var(--habit-accent),transparent 36%),color-mix(in srgb,var(--habit-accent),var(--text-secondary) 52%));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.habit-details-history-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--habit-accent),transparent 20%),color-mix(in srgb,var(--habit-accent),var(--text-primary) 44%));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.habit-details-history-scroll::-webkit-scrollbar-button{width:0;height:0;display:none}.habit-details-history-chart-card{min-height:0;flex:1 1 auto;display:flex;flex-direction:column;overflow:hidden;height:100%}.habit-details-history-chart-header{margin-bottom:8px}.habit-details-history-chart-pill{min-width:112px}.habit-details-history-chart-wrapper{min-height:0;height:100%;padding:10px 2px 2px}.habit-details-history-chart-wrapper>.recharts-responsive-container{min-height:100%!important}.habit-details-history-chart-empty{flex:1 1 auto;min-height:0;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-secondary);font-size:.8rem;line-height:1.35;padding:12px}.habit-details-weeks-grid{width:max-content;display:flex;gap:var(--cell-gap);flex:0 0 auto;align-items:flex-start;padding-bottom:2px}.habit-details-week{width:var(--cell-size);min-width:var(--cell-size);display:grid;grid-template-rows:repeat(7,var(--cell-size));gap:var(--cell-gap)}.habit-details-week.is-current-week{position:relative}.habit-details-week.is-current-week:after{content:"";position:absolute;inset:-4px;border-radius:9px;border:1px solid color-mix(in srgb,var(--habit-accent),transparent 48%);pointer-events:none}.habit-details-day{width:var(--cell-size);min-width:var(--cell-size);height:var(--cell-size);min-height:var(--cell-size);aspect-ratio:1 / 1;border-radius:8px;border:1px solid transparent;background:transparent;color:transparent;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:transform .16s ease,border-color .2s ease,background .2s ease,color .2s ease}.habit-details-day.is-padding{opacity:.3;pointer-events:none}.habit-details-day.is-visible{border-color:#ffffff1a;background:#ffffff08;cursor:pointer}.habit-details-day.is-visible:hover{transform:scale(1.06);border-color:color-mix(in srgb,var(--habit-accent),transparent 36%);background:color-mix(in srgb,var(--habit-accent),transparent 86%)}.habit-details-day.is-streak{border-color:color-mix(in srgb,var(--habit-accent),transparent 72%);background:color-mix(in srgb,var(--habit-accent),transparent 90%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 84%),0 0 10px -6px color-mix(in srgb,var(--habit-accent),transparent 68%)}.habit-details-day.is-streak.is-streak-strong{border-color:color-mix(in srgb,var(--habit-accent),transparent 58%);background:color-mix(in srgb,var(--habit-accent),transparent 84%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 76%),0 0 14px -4px color-mix(in srgb,var(--habit-accent),transparent 60%)}.habit-details-day.is-checked{background:var(--habit-accent);border-color:color-mix(in srgb,var(--habit-accent),#ffffff 24%);color:#fff;box-shadow:0 0 10px color-mix(in srgb,var(--habit-accent),transparent 72%)}.habit-details-day.is-today{outline:2px solid color-mix(in srgb,var(--habit-accent),transparent 46%);outline-offset:1px}.habit-details-day:disabled{cursor:wait}.habit-details-month-row{width:max-content;display:flex;gap:var(--cell-gap);margin-top:var(--month-row-gap);min-height:var(--month-row-height);padding-bottom:1px;flex:0 0 auto}.habit-details-month-cell{position:relative;width:var(--cell-size);height:14px}.habit-details-month-cell span{position:absolute;top:0;left:0;white-space:nowrap;color:var(--text-secondary);font-size:.69rem;letter-spacing:.02em;opacity:.86}.habit-details-score-panel{order:0;flex-shrink:0;border:1px solid color-mix(in srgb,var(--habit-accent),transparent 82%);border-radius:14px;background:color-mix(in srgb,var(--habit-accent),transparent 94%);padding:10px;display:flex;flex-direction:column;gap:0;min-height:0;overflow:visible;position:relative;z-index:2}.habit-details-score-panel.is-menu-open{overflow:visible;z-index:40}.habit-details-score-head{position:absolute;top:10px;right:10px;z-index:45}.habit-details-score-menu-wrap{width:auto;margin-left:0}.habit-details-score-trigger{padding:0!important}.habit-details-score-menu{left:auto;right:0;min-width:124px;width:max-content;max-height:min(56vh,300px);overflow-y:auto;padding:6px;gap:6px;border-color:color-mix(in srgb,var(--habit-accent),transparent 70%);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-card),transparent 2%),color-mix(in srgb,var(--habit-accent),transparent 94%));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 16px 34px #00000057,0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 88%);z-index:70;pointer-events:auto}.habit-details-score-menu-button{width:100%;min-height:34px;justify-content:flex-start;padding:0 10px!important;border-radius:10px!important;font-size:.8rem}.habit-details-score-menu-button.active{border-color:color-mix(in srgb,var(--habit-accent),transparent 54%)!important;background:color-mix(in srgb,var(--habit-accent),transparent 82%)!important;color:color-mix(in srgb,var(--habit-accent),#ffffff 18%)!important}.habit-details-score-compact{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);align-items:flex-start;gap:10px;min-height:0;padding-top:2px}.habit-details-score-body{display:flex;align-items:center;justify-content:center;flex-shrink:0;align-self:center}.habit-details-score-circle{width:134px;height:134px}.habit-details-score-track{stroke:color-mix(in srgb,var(--habit-accent),transparent 86%)}.habit-details-score-progress{stroke:color-mix(in srgb,var(--habit-accent),#ffffff 12%);filter:drop-shadow(0 0 8px color-mix(in srgb,var(--habit-accent),transparent 74%));transition:stroke-dashoffset .5s ease}.habit-details-score-text{font-size:1.2rem;text-shadow:0 0 10px color-mix(in srgb,var(--habit-accent),transparent 74%)}.habit-details-score-value{font-size:.72rem;font-weight:700;line-height:1;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--habit-accent),#ffffff 28%);opacity:.88}.habit-details-score-metrics{min-width:0;display:flex;flex-direction:column;gap:7px;flex:1 1 auto;align-self:flex-start;justify-content:flex-start;padding-top:2px}.habit-details-score-line{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:1px}.habit-details-score-line span{color:var(--text-secondary);font-size:.64rem;letter-spacing:.05em;text-transform:uppercase}.habit-details-score-line strong{font-size:.8rem;line-height:1.25;color:color-mix(in srgb,var(--habit-accent),#ffffff 14%);text-align:left}.habit-details-score-meta{margin:0;color:var(--text-secondary);font-size:.74rem;line-height:1.35;text-align:left}@media(min-width:901px){.layout:not(.layout-native-mobile) .habit-details-score-compact{grid-template-columns:minmax(180px,228px) minmax(0,1fr);align-items:center;gap:clamp(18px,2.4vw,32px);min-height:168px;padding:8px 10px 8px 4px}.layout:not(.layout-native-mobile) .habit-details-score-metrics{gap:14px;justify-content:center;padding-top:0}.layout:not(.layout-native-mobile) .habit-details-score-line{gap:4px}.layout:not(.layout-native-mobile) .habit-details-score-line span{font-size:.76rem;letter-spacing:.08em}.layout:not(.layout-native-mobile) .habit-details-score-line strong{font-size:1.32rem;line-height:1.08}}.habit-details-streak-list{display:grid;grid-template-columns:1fr;gap:10px}.habit-details-streak-card{border:1px solid color-mix(in srgb,var(--habit-accent),transparent 80%);border-radius:14px;background:color-mix(in srgb,var(--habit-accent),transparent 95%);padding:10px 12px;display:flex;flex-direction:column;gap:6px}.habit-details-streak-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.habit-details-streak-value{font-size:1rem;line-height:1.2;color:color-mix(in srgb,var(--habit-accent),#ffffff 18%)}@media(min-width:1100px)and (max-aspect-ratio:17/10){.habits-page-panel .habit-list,.habits-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.habits-page-panel .habit-list .habit-card,.habits-page-grid .habit-card{padding:12px 14px!important;gap:12px!important;min-height:auto}.habits-page-panel .habit-list .habit-name,.habits-page-grid .habit-name{font-size:.92rem!important}.habits-page-panel .habit-list .habit-target-mini,.habits-page-grid .habit-target-mini{font-size:.7rem}.habits-page-panel .habit-list .habit-header-right,.habits-page-grid .habit-header-right{gap:8px}.habits-page-panel .habit-list .habit-edit-trigger,.habits-page-grid .habit-edit-trigger{width:26px!important;height:26px!important}.habits-page-panel .habit-list .habit-history-grid,.habits-page-grid .habit-history-grid{gap:4px!important;margin-top:2px}.habits-page-panel .habit-list .habit-history-label,.habits-page-grid .habit-history-label{font-size:.56rem}.habits-page-panel .habit-list .habit-history-label .day-num,.habits-page-grid .habit-history-label .day-num{font-size:.5rem;margin-top:1px}.habits-page-panel .habit-list .habit-history-box,.habits-page-grid .habit-history-box{width:min(100%,30px);border-radius:6px}}@media(min-width:769px)and (max-width:1360px),(min-width:769px)and (max-height:860px),(min-width:769px)and (max-aspect-ratio:16/10){.habits-page{overflow-y:auto}.habits-page-panel{height:auto;min-height:0}.habits-page-panel .habit-list,.habits-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.habit-details-overlay{padding:calc(10px + env(safe-area-inset-top,0px)) 10px calc(10px + env(safe-area-inset-bottom,0px))}.habits-page{padding:16px}.habits-page-panel{padding:16px 16px 14px}.habits-page-panel .habit-list,.habits-page-grid{grid-template-columns:1fr}.habit-details-modal{width:100%;max-height:min(calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 20px),920px)}.habit-details-content{display:flex;flex-direction:column;gap:10px;overflow-y:auto;overflow-x:visible;padding-right:2px}.habit-details-history-panel{--habit-details-history-body-height: 248px;flex:0 0 auto}.habit-details-history-menu{width:min(320px,calc(100vw - 52px));min-width:240px;max-height:220px}.habit-details-history-panel>.habit-details-history-scroll,.habit-details-history-panel>.habit-details-history-chart-card{flex:0 0 var(--habit-details-history-body-height);min-height:var(--habit-details-history-body-height);height:var(--habit-details-history-body-height)}.habit-details-history-scroll,.habit-details-history-chart-card{min-height:var(--habit-details-history-body-height);height:var(--habit-details-history-body-height)}.habit-details-streak-list{grid-template-columns:repeat(2,minmax(0,1fr))}.habit-details-score-circle{width:122px;height:122px}.habit-details-history-scroll{--cell-size: 24px;--cell-gap: 5px}}@media(max-width:768px){.habit-details-overlay{padding:calc(10px + env(safe-area-inset-top,0px)) 10px calc(10px + env(safe-area-inset-bottom,0px))}.habit-details-modal{width:100%;max-height:min(calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 20px),920px);border-radius:18px;padding:12px;gap:10px}.habit-details-header{gap:8px}.habit-details-subtitle{font-size:.84rem}.habit-details-score-panel{padding:10px}.habit-details-score-compact{gap:8px}.habit-details-score-circle{width:116px;height:116px}.habit-details-score-text{font-size:1.05rem}.habit-details-score-meta{font-size:.7rem}.habits-page{--habits-mobile-top-space: 72px;--habits-mobile-bottom-space: calc(44px + env(safe-area-inset-bottom, 0px)) ;box-sizing:border-box;height:calc(100vh - 20px);height:calc(100dvh - 20px);min-height:calc(100vh - 20px);min-height:calc(100dvh - 20px);min-height:0;padding:var(--habits-mobile-top-space) 16px calc(24px + env(safe-area-inset-bottom,0px));overflow:hidden}.habits-page-panel{max-height:none!important;height:calc(100vh - var(--habits-mobile-top-space) - var(--habits-mobile-bottom-space))!important;height:calc(100dvh - var(--habits-mobile-top-space) - var(--habits-mobile-bottom-space))!important;min-height:calc(100vh - var(--habits-mobile-top-space) - var(--habits-mobile-bottom-space))!important;min-height:calc(100dvh - var(--habits-mobile-top-space) - var(--habits-mobile-bottom-space))!important}.habits-page-header{align-items:flex-start}.habits-page-panel .habit-list,.habits-page-grid{min-height:0;overflow-y:auto;overflow-x:hidden;padding:4px 0 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.habits-page-panel .habit-list::-webkit-scrollbar,.habits-page-grid::-webkit-scrollbar{display:none}}.todos-page{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:20px;overflow:hidden}@media(max-width:768px){:root[data-theme=light] .todos-page{background:linear-gradient(180deg,#f7f9fd,#edf2f8);color:var(--text-primary)}:root[data-theme=light] .todos-page-container .todo-completed-sheet{border-color:#6f63ef24;background:linear-gradient(180deg,#fffffff5,#f3f7fcfa);box-shadow:inset 0 0 0 1px #ffffffb3,0 14px 28px #2e405a1f}:root[data-theme=light] .todos-page-container .todo-completed-sheet.expanded{box-shadow:inset 0 0 0 1px #ffffffc7,0 18px 36px #2e405a24}:root[data-theme=light] .todos-page-container .todo-open-column .section-title,:root[data-theme=light] .todos-page-container .todo-completed-column .section-title,:root[data-theme=light] .todos-page-container .todo-completed-toggle{color:var(--text-primary)}:root[data-theme=light] .todos-page-container .todo-completed-toggle svg,:root[data-theme=light] .todos-page-container .todo-popover-label{color:var(--text-secondary)}:root[data-theme=light] .todos-page-container .todo-completed-count{background:#6f63ef14;color:var(--accent)}:root[data-theme=light] .todos-page-container .todo-input{border-color:#6f63ef24;background:linear-gradient(180deg,#fffffffa,#f6f8fcfa);color:var(--text-primary);box-shadow:inset 0 1px #ffffffc7,0 14px 28px #2e405a1a}:root[data-theme=light] .todos-page-container .todo-input::placeholder{color:#607196b3}:root[data-theme=light] .todos-page-container .todo-deadline-toggle{border-color:#6f63ef1f;background:#6f63ef0f;color:var(--text-secondary);box-shadow:inset 0 0 0 1px #ffffff8c}:root[data-theme=light] .todos-page-container .todo-deadline-popover{background:#f8fafffa;border-color:#6f63ef24;box-shadow:0 18px 34px #2e405a24}:root[data-theme=light] .todos-page-container .todo-datetime-input{border-color:#6f63ef24;background:#fffffff5;color:var(--text-primary);color-scheme:light}:root[data-theme=light] .todos-page-container .todo-clear-button{border-color:#6f63ef1f;background:#6f63ef0d;color:var(--text-secondary);box-shadow:inset 0 0 0 1px #ffffff8c}:root[data-theme=light] .todos-page-container .todo-empty-state{border-color:#6f63ef29;background:linear-gradient(180deg,#ffffffeb,#f3f7fcf5);color:var(--text-secondary);box-shadow:inset 0 0 0 1px #ffffffa6}}.todos-page-container{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.todos-page-container .todo-drawer{flex:1;min-width:0;min-height:0}.todos-page-container .todo-drawer-panel,.todos-page-container .todo-drawer-panel.open{display:flex;flex:1;height:100%;min-height:0;opacity:1;pointer-events:auto;transform:none;overflow:hidden}.todos-page-container .todo-panel{flex:1;height:100%;min-height:0;padding:18px 18px 16px}.todos-page-container .todo-panel-grid{flex:1;height:100%;align-items:stretch;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:clamp(14px,1.8vw,18px)}.todos-page-container .todo-open-column,.todos-page-container .todo-completed-column{min-height:0}.todos-page-container .todo-open-list,.todos-page-container .todo-completed-list{flex:1;min-height:0;max-height:none}@media(max-width:980px){.todos-page{padding:16px}.todos-page-container .todo-panel{padding:16px 16px 14px}.todos-page-container .todo-panel-grid{grid-template-columns:1fr;height:auto}}@media(min-width:769px)and (max-width:1220px),(min-width:769px)and (max-height:860px),(min-width:769px)and (max-aspect-ratio:16/10){.todos-page{overflow-y:auto}.todos-page-container .todo-panel{height:auto;min-height:0}.todos-page-container .todo-panel-grid{grid-template-columns:1fr;height:auto}}@media(max-width:768px){.todos-page{box-sizing:border-box;height:100%;width:100%;display:flex!important;flex-direction:column!important;flex:1;justify-content:flex-start!important;padding:calc(env(safe-area-inset-top,0px) + 8px) 14px calc(var(--mobile-bottom-nav-height, 64px) + 12px) 14px!important;overflow:hidden!important;background:#000;color:#f5f7ff}.todos-page-container{flex:1!important;width:100%;max-height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}.todos-page-container .todo-drawer{flex:1;min-height:0;height:100%;overflow:hidden}.todos-page-container .todo-drawer-panel,.todos-page-container .todo-drawer-panel.open,.todos-page-container .todo-panel,.todos-page-container .todo-panel-grid{min-height:0!important;height:100%!important;display:flex!important;flex-direction:column!important}.todos-page-container .todo-panel{max-height:none!important;overflow:hidden!important;flex:1;padding:0!important;background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.todos-page-container .todo-panel-grid{flex:1;gap:18px;padding:0 0 2px}.todos-page-container .todo-open-column,.todos-page-container .todo-completed-column{display:flex;flex-direction:column;min-width:0}.todos-page-container .todo-open-column{flex:1 1 auto}.todos-page-container .todo-completed-column{flex:0 1 auto}.todos-page-container .todo-completed-column-sheet{margin-top:auto}.todos-page-container .todo-completed-sheet{--todo-completed-sheet-collapsed-height: 72px;--todo-completed-sheet-expanded-height: 280px;display:flex;flex-direction:column;height:var(--todo-completed-sheet-collapsed-height);overflow:hidden;border-radius:24px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#080b18f5,#04060ef2);box-shadow:inset 0 0 0 1px #ffffff08,0 14px 28px #0000002e;transition:height .3s cubic-bezier(.22,1,.36,1),box-shadow .2s ease,border-color .2s ease}.todos-page-container .todo-completed-sheet.expanded{height:var(--todo-completed-sheet-expanded-height);box-shadow:inset 0 0 0 1px #ffffff0a,0 18px 36px #00000038}.todos-page-container .todo-panel-header,.todos-page-container .todo-panel-header-completed{align-items:center;margin-bottom:12px}.todos-page-container .todo-completed-sheet .todo-panel-header-completed{min-height:var(--todo-completed-sheet-collapsed-height);margin:0;padding:0 14px;gap:10px;flex-shrink:0}.todos-page-container .todo-open-column .section-title{margin:0;font-size:1.55rem!important;line-height:1.06;letter-spacing:.01em;font-weight:760;color:#f5f7ff}.todos-page-container .todo-completed-column .section-title{margin:0;font-size:1.2rem;line-height:1.08;font-weight:740;color:#f5f7ff}.todos-page-container .todo-completed-toggle{flex:1;min-width:0;border:none;background:transparent;color:#f5f7ff;padding:0;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;text-align:left}.todos-page-container .todo-completed-toggle svg{color:#dce3ffb8;transition:transform .26s ease;flex-shrink:0}.todos-page-container .todo-completed-sheet.expanded .todo-completed-toggle svg{transform:rotate(180deg)}.todos-page-container .todo-completed-toggle-copy{display:inline-flex;align-items:center;gap:10px;min-width:0}.todos-page-container .todo-completed-count{min-width:26px;height:26px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;color:#dce3ffc2;font-size:12px;font-weight:700;line-height:1}.todos-page-container .todo-add-group{gap:14px;margin-bottom:12px}.todos-page-container .todo-add-row{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:0}.todos-page-container .todo-input-wrapper{min-height:60px}.todos-page-container .todo-input{height:60px;border-radius:20px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,#0a0d19f5,#050710f5);color:#f5f7ff;padding:0 58px 0 18px;box-shadow:inset 0 0 0 1px #ffffff06,0 14px 28px #0000002e}.todos-page-container .todo-input::placeholder{color:#dce3ff7a}.todos-page-container .todo-input:focus{border-color:#60e0a35c;box-shadow:0 0 0 3px #60e0a31f,0 14px 28px #0000002e}.todos-page-container .todo-deadline-toggle{right:10px;width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#dce3ffb8;box-shadow:inset 0 0 0 1px #ffffff05}.todos-page-container .todo-deadline-toggle.active{color:#60e0a3;background:#60e0a31f;border-color:#60e0a33d}.todos-page-container .todo-deadline-popover{left:0;right:0;width:auto;margin-top:10px;padding:14px;border-radius:18px;background:#0b0e1df5;border:1px solid rgba(255,255,255,.1);box-shadow:0 18px 34px #00000047}.todos-page-container .todo-popover-label{color:#dce3ffad;letter-spacing:.08em}.todos-page-container .todo-datetime-input{height:48px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:#ffffff0a;color:#f5f7ff;padding:0 12px;color-scheme:dark}.todos-page-container .todo-datetime-input:focus{border-color:#60e0a35c;box-shadow:0 0 0 3px #60e0a31f}.todos-page-container .todo-popover-close{align-self:flex-end;min-width:72px;border-radius:12px;padding:9px 14px;background:#49d391;color:#04110b}.todos-page-container .todo-save-button{width:100%;min-width:0;height:56px;border-radius:18px;border:1px solid rgba(85,224,155,.26);background:linear-gradient(180deg,#49d391,#3fc983);color:#04110b;font-size:1.03rem;font-weight:760;box-shadow:0 16px 30px #49d3912e,inset 0 1px #ffffff2e}.todos-page-container .todo-save-button:disabled{opacity:.62;box-shadow:none}.todos-page-container .todo-error-text{margin:10px 2px 0;font-size:13px;color:#ff9a9a}.todos-page-container .todo-open-list,.todos-page-container .todo-completed-list{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none;gap:10px;padding-right:2px}.todos-page-container .todo-open-list::-webkit-scrollbar,.todos-page-container .todo-completed-list::-webkit-scrollbar{display:none}.todos-page-container .todo-open-list{flex:1 1 auto;min-height:152px}.todos-page-container .todo-completed-list{flex:1 1 auto;min-height:126px;max-height:min(30vh,240px)}.todos-page-container .todo-completed-list-sheet{min-height:0;max-height:none;margin:0 12px 12px;padding-right:2px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .2s ease,transform .26s cubic-bezier(.22,1,.36,1)}.todos-page-container .todo-completed-list-sheet.expanded{opacity:1;transform:translateY(0);pointer-events:auto}.todos-page-container .todo-open-item,.todos-page-container .todo-completed-item{min-height:66px;padding:12px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#080b18eb,#04060ee6);box-shadow:inset 0 0 0 1px #ffffff08,0 12px 26px #00000029}.todos-page-container .todo-open-item:hover,.todos-page-container .todo-completed-item:hover{background:linear-gradient(180deg,#0a0e1cf0,#060812f0);border-color:#60e0a329}.todos-page-container .todo-open-item input[type=checkbox],.todos-page-container .todo-completed-item input[type=checkbox]{width:18px;height:18px;accent-color:#49d391}.todos-page-container .todo-item-content{gap:4px}.todos-page-container .todo-open-item-text,.todos-page-container .todo-completed-item span{font-size:14px;line-height:1.25}.todos-page-container .todo-open-item-text{color:#f5f7ff}.todos-page-container .todo-item-deadline{font-size:11px;color:#dce3ff94;gap:5px}.todos-page-container .todo-panel .todo-open-item.overdue{border-color:#ff7a7a57;background:linear-gradient(180deg,#230b10f0,#10060aeb);box-shadow:inset 0 0 0 1px #ff7a7a0f,0 14px 28px #0000002e}.todos-page-container .todo-panel .todo-open-item.overdue .todo-open-item-text,.todos-page-container .todo-panel .todo-open-item.overdue .todo-item-deadline{color:#ff9a9a}.todos-page-container .todo-completed-item{color:#dce3ffb8}.todos-page-container .todo-completed-item span{color:#dce3ffad;opacity:.88}.todos-page-container .todo-star-button{width:34px;height:34px;min-width:34px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff09;color:#dce3ffa3}.todos-page-container .todo-star-button:hover{border-color:#ffffff24;background:#ffffff0f;color:#f5f7ff}.todos-page-container .todo-star-button.active{color:#ffd166;border-color:#ffd16647;background:#ffd1661f;box-shadow:0 10px 18px #ffd1661a}.todos-page-container .todo-clear-button{min-width:0;height:38px;padding:0 14px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#ffffff09;color:#dce3ffb8;box-shadow:inset 0 0 0 1px #ffffff05}.todos-page-container .todo-clear-button:disabled{opacity:.45;box-shadow:none}.todos-page-container .todo-completed-sheet .todo-clear-button{flex-shrink:0}.todos-page-container .todo-empty-state{min-height:140px;border-radius:22px;border:1px dashed rgba(100,118,178,.28);background:linear-gradient(180deg,#0a0d18db,#05070fdb);color:#dce3ffbd;box-shadow:inset 0 0 0 1px #ffffff05;padding:18px}.todos-page-container .todo-completed-column .todo-empty-state{min-height:124px}}@media(max-width:768px){:root[data-theme=light] .todos-page-container .todo-completed-sheet,:root[data-theme=light] .todos-page-container .todo-completed-sheet.expanded,:root[data-theme=light] .todos-page-container .todo-input,:root[data-theme=light] .todos-page-container .todo-deadline-toggle,:root[data-theme=light] .todos-page-container .todo-deadline-popover,:root[data-theme=light] .todos-page-container .todo-clear-button,:root[data-theme=light] .todos-page-container .todo-open-item,:root[data-theme=light] .todos-page-container .todo-completed-item,:root[data-theme=light] .todos-page-container .todo-star-button,:root[data-theme=light] .todos-page-container .todo-star-button.active,:root[data-theme=light] .todos-page-container .todo-empty-state{box-shadow:none!important}:root[data-theme=light] .todos-page-container .todo-completed-sheet{background:linear-gradient(180deg,#fffffffa,#f6f9fdfa)}:root[data-theme=light] .todos-page-container .todo-input{background:#fffffffa;color:var(--text-primary)}:root[data-theme=light] .todos-page-container .todo-deadline-toggle,:root[data-theme=light] .todos-page-container .todo-clear-button,:root[data-theme=light] .todos-page-container .todo-star-button{background:#fffffff5;color:var(--text-secondary)}:root[data-theme=light] .todos-page-container .todo-deadline-popover{background:#f8fafffa;color:var(--text-primary)}:root[data-theme=light] .todos-page-container .todo-open-item,:root[data-theme=light] .todos-page-container .todo-completed-item{border-color:#6f63ef1f;background:linear-gradient(180deg,#fffffffa,#f7fafffa)}:root[data-theme=light] .todos-page-container .todo-open-item:hover,:root[data-theme=light] .todos-page-container .todo-completed-item:hover{background:linear-gradient(180deg,#fff,#f5f8fd);border-color:#6f63ef2e}:root[data-theme=light] .todos-page-container .todo-open-item-text,:root[data-theme=light] .todos-page-container .todo-completed-item span{color:var(--text-primary)}:root[data-theme=light] .todos-page-container .todo-completed-item{color:var(--text-secondary)}:root[data-theme=light] .todos-page-container .todo-item-deadline,:root[data-theme=light] .todos-page-container .todo-completed-toggle svg,:root[data-theme=light] .todos-page-container .todo-popover-label{color:var(--text-secondary)}:root[data-theme=light] .todos-page-container .todo-panel .todo-open-item.overdue{border-color:#dc606047;background:linear-gradient(180deg,#fff4f4fa,#ffededfa)}:root[data-theme=light] .todos-page-container .todo-panel .todo-open-item.overdue .todo-open-item-text,:root[data-theme=light] .todos-page-container .todo-panel .todo-open-item.overdue .todo-item-deadline{color:#c34a4a}:root[data-theme=light] .todos-page-container .todo-star-button.active{color:#cc9118;border-color:#d4901f57;background:#fff4dafa}:root[data-theme=light] .todos-page-container .todo-empty-state{border-color:#6f63ef29;background:linear-gradient(180deg,#fffffff5,#f4f7fcf5);color:var(--text-secondary)}}.routines-page{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:20px;overflow:hidden}.routines-page-container{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:hidden}.routines-panel-wrap{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.routines-explore{flex-shrink:0;padding:14px 0 12px;border-top:1px solid rgba(255,255,255,.08)}.routines-explore-label{margin:0 0 10px;padding:0 4px;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);font-weight:700}.routines-explore-scroll{display:flex;gap:12px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;-webkit-user-select:none;user-select:none}.routines-explore-scroll:active{cursor:grabbing}.routines-explore-scroll::-webkit-scrollbar{display:none}.routines-explore-card{flex:0 0 min(30vw,260px);min-height:68px!important;padding:12px 14px 11px 16px!important;border-radius:18px}.routines-explore-card .routine-slot-main{align-items:center;gap:8px}.routines-explore-card .routine-slot-title{font-size:15px;line-height:1.15}.routines-explore-card .routine-slot-streak{font-size:11px}.routines-explore-add{width:28px;height:28px;min-width:28px}.routines-explore-add svg{width:14px;height:14px}:root[data-theme=light] .routines-explore{border-top-color:#6f63ef1a}.routines-page-container .routines-card-standalone{flex:1;min-height:0;height:100%;padding:18px 18px 16px}.routines-page-container .routines-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-content:start;padding:4px 2px 2px;margin-top:0}.routines-page-container .routine-slot{min-height:98px}.routines-page-container .routine-slot-filled{padding:14px}.routines-page-container .routine-slot-title{font-size:18px}.routines-page-container .routine-slot-streak{font-size:12px}@media(max-width:1540px){.routines-page-container .routines-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:980px){.routines-page{padding:16px}.routines-page-container .routines-card-standalone{padding:16px 16px 14px}.routines-page-container .routines-grid{grid-template-columns:1fr}}@media(max-width:768px){.routines-page{padding:0;overflow:hidden;background:#000}.routines-page-container .routines-card-standalone{height:auto}.routines-page-container .routines-grid{overflow:visible;padding:4px 0 0}.routines-mobile-shell{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;padding:calc(env(safe-area-inset-top,0px) + 8px) 14px calc(var(--mobile-bottom-nav-height, 64px) + 12px) 14px;background:#000;color:#f5f7ff;overflow:hidden}.routines-mobile-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-shrink:0}.routines-mobile-title{margin:0;font-size:1.55rem;line-height:1.06;letter-spacing:.01em;font-weight:760;color:#f5f7ff}.routines-mobile-header-actions{display:flex;align-items:center;gap:8px}.routines-mobile-settings-wrap{position:relative}.routines-mobile-header-button{width:36px;min-width:36px;height:36px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:#f5f7ff;display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #ffffff08,0 10px 24px #0000002e}.routines-mobile-header-button:active{transform:scale(.98)}.routines-mobile-settings-menu{position:absolute;top:calc(100% + 10px);right:0;width:208px;z-index:30;background:#0b0e1df5;border:1px solid rgba(255,255,255,.12);border-radius:16px;box-shadow:0 18px 36px #00000047}.routines-mobile-content{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:2px;margin-right:-2px;scrollbar-width:none}.routines-mobile-content::-webkit-scrollbar{display:none}.routines-mobile-content.is-reordering{overflow:hidden}.routines-mobile-owned-list{display:flex;flex-direction:column;gap:10px;padding:0 2px 10px 0;position:relative}.routines-mobile-owned-slot{position:relative;width:100%}.routines-mobile-owned-slot.is-placeholder{z-index:0}.routines-mobile-owned-card,.routines-mobile-add-card{min-height:66px!important;border-radius:22px}.routines-mobile-owned-card{width:100%;padding:11px 16px 10px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),transparent 92%),#ffffff04 44%,color-mix(in srgb,var(--routine-accent),transparent 95%));border-color:color-mix(in srgb,var(--routine-accent),transparent 34%);box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 84%),0 18px 34px #0000002e;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,opacity .18s ease;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.routines-mobile-owned-card *{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.routines-mobile-owned-card.is-floating{transform:scale(1.01) rotate(-1deg);box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 64%),0 20px 38px #00000038,0 34px 72px color-mix(in srgb,var(--routine-accent),transparent 82%)}.routines-mobile-insert-slot{width:100%;border-radius:22px;border:1px dashed color-mix(in srgb,var(--routine-accent),transparent 70%);background:linear-gradient(180deg,#ffffff04,color-mix(in srgb,var(--routine-accent),transparent 94%));box-shadow:inset 0 0 0 1px #ffffff05,0 10px 22px #00000014}.routines-mobile-drag-overlay{position:fixed;z-index:60;pointer-events:none;will-change:transform,top,left}.routines-mobile-owned-card .routine-slot-main{align-items:center;gap:10px}.routines-mobile-owned-card .routine-slot-text{gap:4px}.routines-mobile-owned-card .routine-slot-title{font-size:15px;line-height:1.1}.routines-mobile-owned-card .routine-slot-streak{font-size:10px;color:color-mix(in srgb,var(--routine-accent),#d6def5 58%)}.routines-mobile-check{width:32px;height:32px;min-width:32px;justify-content:center}.routines-mobile-check svg{width:16px;height:16px}.routines-mobile-add-card{padding:0;border-color:#4c5c8c5c;background:linear-gradient(180deg,#060812fa,#03040cfa);box-shadow:inset 0 0 0 1px #ffffff08,0 16px 30px #00000029}.routines-mobile-add-icon{width:38px;height:38px;background:#ffffff09;color:#f5f7ff}.routines-mobile-add-icon svg{width:18px;height:18px}.routines-mobile-explore{flex-shrink:0;margin-top:auto;padding-top:10px;padding-bottom:0;border-top:1px solid rgba(255,255,255,.18)}.routines-mobile-explore-label{margin:0 0 10px;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.08em;color:#ffffffb3;font-weight:700}.routines-mobile-explore-scroll{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;touch-action:pan-x;overscroll-behavior-x:contain;padding:0 8px 2px 0;scrollbar-width:none;scroll-snap-type:x proximity}.routines-mobile-explore-scroll::-webkit-scrollbar{display:none}.routines-mobile-explore-card{flex:0 0 min(76vw,292px);min-height:60px!important;padding:10px 14px 9px 16px!important;border-radius:22px;scroll-snap-align:start;background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),transparent 92%),#ffffff04 44%,color-mix(in srgb,var(--routine-accent),transparent 95%))}.routines-mobile-explore-card .routine-slot-main{align-items:center;gap:8px}.routines-mobile-explore-card .routine-slot-text{gap:4px}.routines-mobile-explore-card .routine-slot-title{font-size:14px;line-height:1.1}.routines-mobile-explore-card .routine-slot-streak{font-size:10px;color:color-mix(in srgb,var(--routine-accent),#d6def5 58%)}.routines-mobile-explore-add{width:28px;height:28px;min-width:28px}.routines-mobile-explore-add svg{width:14px;height:14px}}@media(max-width:768px){:root[data-theme=light] .routines-page,:root[data-theme=light] .routines-mobile-shell{background:linear-gradient(180deg,#f7f9fd,#edf2f8);color:var(--text-primary)}:root[data-theme=light] .routines-mobile-title{color:var(--text-primary)}:root[data-theme=light] .routines-mobile-header-button{border-color:#6f63ef24;background:#fffffff5;color:var(--text-primary);box-shadow:none}:root[data-theme=light] .routines-mobile-settings-menu{background:#f7f9fdfa;border-color:#6f63ef24;box-shadow:none}:root[data-theme=light] .routines-mobile-owned-card,:root[data-theme=light] .routines-mobile-explore-card{background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),white 92%),#ffffffeb 46%,color-mix(in srgb,var(--routine-accent),white 95%));box-shadow:none}:root[data-theme=light] .routines-mobile-owned-card .routine-slot-streak,:root[data-theme=light] .routines-mobile-explore-card .routine-slot-streak{color:color-mix(in srgb,var(--routine-accent),var(--text-secondary) 74%)}:root[data-theme=light] .routines-mobile-add-card{border-color:#6f63ef24;background:linear-gradient(180deg,#ffffffeb,#f4f7fdf5);box-shadow:none}:root[data-theme=light] .routines-mobile-add-icon{background:#6f63ef14;color:var(--accent)}:root[data-theme=light] .routines-mobile-explore{border-top-color:#6f63ef24}:root[data-theme=light] .routines-mobile-explore-label{color:var(--text-secondary)}:root[data-theme=light] .routines-mobile-header-button svg,:root[data-theme=light] .routines-mobile-settings-menu,:root[data-theme=light] .routines-mobile-settings-menu .chart-menu-button,:root[data-theme=light] .routines-mobile-settings-menu .chart-menu-button svg{color:var(--text-primary)}}.native-auth-page{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;display:flex;justify-content:center;background:radial-gradient(circle at 18% 10%,rgba(83,163,255,.16),transparent 34%),radial-gradient(circle at 84% 90%,rgba(138,117,255,.13),transparent 36%),radial-gradient(circle at 74% 22%,rgba(98,218,163,.09),transparent 28%),#000;color:#f5f7ff;padding:calc(env(safe-area-inset-top,0px) + 14px) 18px calc(env(safe-area-inset-bottom,0px) + 14px);position:relative;overflow:hidden}.native-auth-page:before,.native-auth-page:after{content:"";position:absolute;inset:-12%;pointer-events:none;z-index:0}.native-auth-page:before{background:radial-gradient(circle at 24% 22%,rgba(83,153,255,.11),transparent 24%),radial-gradient(circle at 78% 26%,rgba(133,118,255,.1),transparent 24%),radial-gradient(circle at 62% 72%,rgba(98,223,176,.07),transparent 22%);filter:blur(26px);animation:native-auth-background-drift 18s ease-in-out infinite alternate}.native-auth-page:after{background:radial-gradient(circle at center,rgba(186,204,255,.055),transparent 38%);filter:blur(24px);animation:native-auth-center-breathe 12s ease-in-out infinite}.native-auth-glow{position:absolute;border-radius:999px;filter:blur(96px);pointer-events:none;opacity:.28;z-index:0}.native-auth-glow--top{width:280px;height:280px;top:-120px;left:-100px;background:#5babffb8}.native-auth-glow--bottom{width:300px;height:300px;right:-130px;bottom:-130px;background:#7fffc46b}.native-auth-entry-shell,.native-auth-email-shell{position:relative;z-index:1;width:min(100%,390px);height:100%}.native-auth-entry-shell{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:14px}.native-auth-entry-hero{display:grid;align-content:center;justify-items:center;gap:22px;padding-top:10px;text-align:center}.native-auth-entry-actions,.native-auth-email-panel{display:grid;gap:14px}.native-auth-entry-actions{align-content:end}.native-auth-email-shell{display:grid;align-content:center;gap:24px}.native-auth-email-header{display:grid;justify-items:center;gap:18px;text-align:center}.native-auth-logo{object-fit:contain;filter:drop-shadow(0 14px 28px rgba(0,0,0,.34)) drop-shadow(0 0 20px rgba(110,154,255,.14))}.native-auth-logo--entry{width:clamp(94px,27vw,122px);aspect-ratio:1}.native-auth-logo--compact{width:62px;aspect-ratio:1}.native-auth-copy-block{width:min(100%,304px);display:grid;gap:8px;justify-items:center}.native-auth-title{margin:0;font-size:clamp(2rem,7vw,2.7rem);line-height:1.02;letter-spacing:-.05em;font-weight:800}.native-auth-subtitle{margin:0;color:#cfd8eec7;font-size:1rem;line-height:1.45}.native-auth-action-button{width:100%;min-height:56px;border:0;border-radius:20px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:1rem;font-weight:760;color:#f5f7ff;cursor:pointer;transition:transform .18s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,opacity .22s ease}.native-auth-action-button:disabled{cursor:default;opacity:.68}.native-auth-action-button:active:not(:disabled){transform:scale(.985)}.native-auth-action-button--primary{background:linear-gradient(180deg,#5aa5fffa,#4484f5fa);box-shadow:0 0 0 1px #82b8ff2e,0 16px 34px #3669c457,0 0 28px #4f91ff33}.native-auth-action-button--secondary{border:1px solid rgba(100,124,186,.18);background:linear-gradient(180deg,#ffffff0a,#ffffff05),#070a16b8;box-shadow:inset 0 1px #ffffff0d,0 14px 30px #00000038}.native-auth-google-icon,.native-auth-button-icon{width:18px;height:18px;flex-shrink:0}.native-auth-form{display:grid;gap:18px}.native-auth-field{display:grid;gap:10px}.native-auth-label{color:#c1cbe5c2;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.native-auth-input{width:100%;min-height:56px;border-radius:18px;border:1px solid rgba(96,117,182,.22);background:linear-gradient(180deg,#ffffff07,#ffffff05),#080b16d6;color:#f5f7ff;padding:0 16px;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.native-auth-input::placeholder{color:#a2adca8a}.native-auth-input:focus{border-color:#679eff57;background:linear-gradient(180deg,#ffffff09,#ffffff06),#090c18eb;box-shadow:0 0 0 3px #5c8aff1a}.native-auth-submit-button{margin-top:4px}.native-auth-message{margin:0;border-radius:16px;padding:12px 14px;font-size:.88rem;line-height:1.45}.native-auth-message--error{border:1px solid rgba(255,130,130,.24);background:#63191942;color:#ffdada}.native-auth-message--info{border:1px solid rgba(112,163,255,.2);background:#3b5da92b;color:#e2edffeb}.native-auth-footer{display:grid;gap:10px;justify-items:center;padding-bottom:4px}.native-auth-switch,.native-auth-meta,.native-auth-legal{margin:0;text-align:center}.native-auth-switch{color:#b6c0dabd;font-size:.92rem}.native-auth-meta{color:#aab4ce9e;font-size:.82rem}.native-auth-switch-button{border:0;background:transparent;color:#fff;padding:0;font:inherit;font-weight:700;cursor:pointer}.native-auth-legal{color:#a3adc794;font-size:.76rem;line-height:1.5}.native-auth-legal a{color:#dde4f6d1;text-decoration:none}@keyframes native-auth-background-drift{0%{transform:translate3d(-1.5%,-1%,0) scale(1)}to{transform:translate3d(1.5%,1.25%,0) scale(1.03)}}@keyframes native-auth-center-breathe{0%,to{opacity:.72;transform:scale(.98)}50%{opacity:1;transform:scale(1.03)}}@media(max-width:420px){.native-auth-page{padding-left:15px;padding-right:15px}.native-auth-entry-shell,.native-auth-email-shell{width:min(100%,372px)}.native-auth-title{font-size:clamp(1.9rem,6.8vw,2.4rem)}}@media(max-height:840px){.native-auth-page{padding-top:calc(env(safe-area-inset-top,0px) + 10px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px)}.native-auth-entry-shell{gap:12px}.native-auth-entry-hero{gap:18px}.native-auth-email-shell{gap:20px}.native-auth-logo--entry{width:clamp(88px,24vw,110px)}.native-auth-logo--compact{width:56px}.native-auth-title{font-size:clamp(1.82rem,6.2vw,2.22rem)}.native-auth-subtitle{font-size:.95rem}.native-auth-form{gap:15px}.native-auth-field{gap:8px}.native-auth-action-button,.native-auth-input{min-height:52px}}.mobile-landing{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:radial-gradient(circle at 18% 12%,rgba(79,165,255,.18),transparent 34%),radial-gradient(circle at 82% 88%,rgba(126,111,255,.13),transparent 36%),radial-gradient(circle at 74% 26%,rgba(98,218,163,.11),transparent 28%),#000;color:#f5f7ff;padding:calc(env(safe-area-inset-top,0px) + 10px) 20px calc(env(safe-area-inset-bottom,0px) + 18px);position:relative;overflow:hidden}.mobile-landing:before,.mobile-landing:after{content:"";position:absolute;inset:-12%;pointer-events:none;z-index:0}.mobile-landing:before{background:radial-gradient(circle at 24% 22%,rgba(83,153,255,.12),transparent 24%),radial-gradient(circle at 78% 26%,rgba(133,118,255,.1),transparent 24%),radial-gradient(circle at 62% 72%,rgba(98,223,176,.08),transparent 22%);filter:blur(26px);animation:ml-background-drift 18s ease-in-out infinite alternate}.mobile-landing:after{background:radial-gradient(circle at center,rgba(186,204,255,.06),transparent 38%);filter:blur(24px);animation:ml-center-breathe 12s ease-in-out infinite}.ml-gloom{position:absolute;border-radius:50%;filter:blur(98px);z-index:0;opacity:.28;pointer-events:none}.ml-gloom--one{width:320px;height:320px;top:-130px;left:-120px;background:radial-gradient(circle,rgba(76,135,255,.82) 0%,transparent 72%)}.ml-gloom--two{width:320px;height:320px;right:-120px;bottom:-140px;background:radial-gradient(circle,rgba(120,255,193,.62) 0%,transparent 72%)}.ml-topbar,.ml-slider-shell,.ml-bottom{position:relative;z-index:1}.ml-topbar{display:flex;justify-content:flex-end;min-height:42px}.ml-skip-button{min-height:34px;padding:0 6px;border:0;background:transparent;color:#d6def5c2;font-size:.9rem;font-weight:650;cursor:pointer}.ml-skip-button.is-hidden{visibility:hidden;pointer-events:none}.ml-slider-shell{min-height:0;overflow:hidden}.ml-slider-track{display:flex;width:100%;height:100%;transition:transform .42s cubic-bezier(.22,1,.36,1)}.ml-slide{flex:0 0 100%;min-width:100%;height:100%;display:grid;align-items:center;padding:0 4px;text-align:center}.ml-slide--cta{position:relative}.ml-slide-stack{width:100%;height:100%;display:grid;align-content:center;justify-items:center;gap:22px}.ml-slide-visual,.ml-slide-copy{transition:opacity .42s cubic-bezier(.22,1,.36,1),transform .42s cubic-bezier(.22,1,.36,1)}.ml-slide-visual{opacity:.58;transform:translateY(12px) scale(.98)}.ml-slide-copy{opacity:.72;transform:translateY(10px)}.ml-slide.is-active .ml-slide-visual,.ml-slide.is-active .ml-slide-copy{opacity:1;transform:translateY(0) scale(1)}.ml-slide-visual{width:100%;min-height:0;display:grid;place-items:center}.ml-slide-copy{display:grid;gap:5px;justify-items:center;width:min(100%,292px);padding:0}.ml-theme-options{width:auto;display:flex;align-items:center;justify-content:center;gap:10px}.ml-slide--cta .ml-theme-options{position:absolute;left:50%;bottom:0;transform:translate(-50%)}.ml-theme-button{width:62px;min-width:62px;height:48px;min-height:48px;padding:0;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#dde5f7d6;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.ml-theme-button.is-active{border-color:#6ea8ff42;background:#4d7ddc24;box-shadow:inset 0 1px #ffffff0a,0 0 18px #6ea8ff1f}.ml-theme-button:active{transform:scale(.985)}.ml-theme-button svg{width:18px;height:18px}.ml-slide-title{margin:0;font-size:clamp(2rem,7.2vw,2.85rem);line-height:1.02;letter-spacing:-.05em;font-weight:800}.ml-slide-subtitle{margin:0;color:#d1daf1d1;font-size:1.05rem;line-height:1.45}.ml-logo-stage{position:relative;width:182px;height:182px;display:grid;place-items:center}.ml-logo-glow{position:absolute;inset:18%;background:radial-gradient(circle,rgba(59,104,255,.82) 0%,rgba(122,112,255,.44) 34%,rgba(114,255,203,.32) 58%,transparent 80%);filter:blur(54px);animation:ml-icon-breathe 6.8s ease-in-out infinite}.ml-slide-logo{position:relative;width:100%;max-width:182px;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 16px 30px rgba(0,0,0,.34)) drop-shadow(0 0 22px rgba(110,154,255,.14))}.ml-icon-shell>svg{width:54px;height:54px}.ml-icon-shell{width:182px;height:182px;padding:22px;border-radius:40px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#ffffff12,#ffffff06),radial-gradient(circle at 30% 24%,rgba(255,255,255,.06),transparent 54%),#070a16eb;display:grid;place-items:center;color:#7ca7ff;box-sizing:border-box;box-shadow:inset 0 1px #ffffff0f,inset 0 -12px 20px #0000001f,0 22px 46px #00000047;position:relative;isolation:isolate;animation:ml-icon-breathe 7.2s ease-in-out infinite}.ml-icon-shell:before{content:"";position:absolute;inset:-20px;border-radius:48px;background:radial-gradient(circle,rgba(110,168,255,.18),transparent 68%);filter:blur(22px);opacity:.55;z-index:-1}.ml-icon-shell.is-blue{color:#6ea8ff}.ml-icon-shell.is-blue:before{background:radial-gradient(circle,rgba(88,133,255,.24),transparent 68%)}.ml-icon-shell.is-green{color:#78ddb0}.ml-icon-shell.is-green:before{background:radial-gradient(circle,rgba(98,223,176,.22),transparent 68%)}.ml-icon-shell.is-purple{color:#9b8cff}.ml-icon-shell.is-purple:before{background:radial-gradient(circle,rgba(144,122,255,.22),transparent 68%)}.ml-icon-shell.is-blue,.ml-icon-shell.is-green,.ml-icon-shell.is-purple{box-shadow:inset 0 1px #ffffff0f,inset 0 -12px 20px #0000001f,0 0 42px #6ea8ff1a,0 22px 46px #00000047}.ml-score-preview{display:grid;place-items:center;position:relative;width:100%;height:100%;animation:ml-icon-breathe 7.2s ease-in-out infinite}.ml-score-preview:before{content:"";position:absolute;inset:-24px;border-radius:50%;background:radial-gradient(circle,rgba(107,135,255,.18) 0%,rgba(108,220,177,.12) 48%,transparent 72%);filter:blur(26px)}.ml-score-preview .score-circle{width:136px;height:136px}.ml-score-preview .score-text{font-size:2.24rem;font-weight:780;letter-spacing:-.04em}.ml-bottom{display:grid;gap:18px;align-items:center;padding-top:24px}.ml-pagination{display:flex;align-items:center;justify-content:center;gap:8px}.ml-dot{width:8px;height:8px;border-radius:999px;border:0;padding:0;background:#ffffff24;cursor:pointer;transition:width .28s ease,height .28s ease,background .28s ease,box-shadow .28s ease,opacity .28s ease,transform .28s ease}.ml-dot.is-active{width:32px;height:9px;background:linear-gradient(90deg,#6ea8ff,#7be1be);box-shadow:0 0 14px #6ea8ff47;transform:translateY(-1px)}.ml-continue-button{width:100%;min-height:56px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1rem;font-weight:760;position:relative;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),white 12%),var(--accent))!important;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),white 10%),0 14px 32px color-mix(in srgb,var(--accent),transparent 68%),0 0 24px color-mix(in srgb,var(--accent),transparent 74%);transition:transform .18s ease,box-shadow .22s ease,filter .22s ease}.ml-continue-button:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),white 16%),0 18px 34px color-mix(in srgb,var(--accent),transparent 64%),0 0 28px color-mix(in srgb,var(--accent),transparent 70%)}.ml-continue-button:active{transform:scale(.985)}@keyframes ml-background-drift{0%{transform:translate3d(-1.5%,-1%,0) scale(1)}to{transform:translate3d(1.5%,1.25%,0) scale(1.03)}}@keyframes ml-center-breathe{0%,to{opacity:.72;transform:scale(.98)}50%{opacity:1;transform:scale(1.03)}}@keyframes ml-icon-breathe{0%,to{transform:translateY(0) scale(1);filter:brightness(1)}50%{transform:translateY(-2px) scale(1.015);filter:brightness(1.04)}}@media(max-width:420px){.mobile-landing{padding-left:16px;padding-right:16px}.ml-slide{align-items:center}.ml-logo-stage{width:168px;height:168px}.ml-slide-logo{max-width:168px}.ml-icon-shell{width:168px;height:168px;padding:20px;border-radius:36px}.ml-score-preview .score-circle{width:126px;height:126px}.ml-slide--cta .ml-theme-options{bottom:0}}@media(max-height:820px){.mobile-landing{padding-top:calc(env(safe-area-inset-top,0px) + 8px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 14px)}.ml-slide{align-items:center}.ml-slide-stack{gap:18px}.ml-slide-title{font-size:clamp(1.86rem,6.8vw,2.4rem)}.ml-slide-subtitle{font-size:.98rem}.ml-logo-stage{width:160px;height:160px}.ml-slide-logo{max-width:160px}.ml-icon-shell{width:160px;height:160px;padding:18px}.ml-score-preview .score-circle{width:120px;height:120px}.ml-bottom{gap:14px;padding-top:18px}.ml-theme-button{min-height:46px}.ml-slide--cta .ml-theme-options{bottom:0}.ml-continue-button{min-height:52px}}:root{color-scheme:dark;--bg-main: #000000;--bg-sidebar: #0b0f1a;--bg-card: #111625;--bg-card-hover: #161c30;--border-subtle: #1c2238;--divider: #1a2034;--text-primary: #f5f7ff;--text-secondary: #b7bedd;--text-muted: #7c84a8;--accent: #8b7cff;--accent-hover: #a094ff;--accent-soft: rgba(139, 124, 255, .18);--accent-glow: rgba(139, 124, 255, .35);--surface-overlay: rgba(255, 255, 255, .03);--surface-overlay-soft: rgba(255, 255, 255, .02);--surface-overlay-hover: rgba(255, 255, 255, .06);--surface-border-strong: rgba(255, 255, 255, .12);--sidebar-glass-bg: rgba(11, 15, 26, .72);--sidebar-glass-border: rgba(255, 255, 255, .12);--sidebar-glass-shadow: 10px 0 30px rgba(0, 0, 0, .3);--mobile-toggle-shadow: 0 4px 16px rgba(0, 0, 0, .4);--overlay-backdrop: rgba(0, 0, 0, .4);--ring-track: #232b47;--success: #ffd36b;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--space-xs: 6px;--space-sm: 10px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--font-main-title: 28px;--font-section-title: 22px;--font-text: 14px;--font-small: 12px;--font-scale: 1;--sidebar-width: 250px;--sidebar-width-collapsed: 86px}:root[data-theme=light]{color-scheme:light;--bg-main: #eef2f7;--bg-sidebar: #e3e9f4;--bg-card: #f7f9fd;--bg-card-hover: #edf1f8;--border-subtle: #c9d4e7;--divider: #d5deec;--text-primary: #101729;--text-secondary: #425171;--text-muted: #607196;--accent: #6f63ef;--accent-hover: #5f53da;--accent-soft: rgba(111, 99, 239, .14);--accent-glow: rgba(111, 99, 239, .28);--surface-overlay: rgba(16, 23, 41, .04);--surface-overlay-soft: rgba(16, 23, 41, .03);--surface-overlay-hover: rgba(16, 23, 41, .08);--surface-border-strong: rgba(16, 23, 41, .14);--sidebar-glass-bg: rgba(239, 244, 251, .88);--sidebar-glass-border: rgba(120, 145, 186, .36);--sidebar-glass-shadow: 10px 0 30px rgba(21, 38, 66, .16);--mobile-toggle-shadow: 0 6px 18px rgba(25, 42, 70, .18);--overlay-backdrop: rgba(15, 23, 42, .14);--ring-track: #d7def0;--success: #d4901f}:root[data-density=compact]{--radius-lg: 14px;--radius-xl: 16px;--space-md: 12px;--font-text: 13px;--font-small: 11px}@media(max-width:768px){:root{--font-main-title: 20px;--font-section-title: 20px}}:root[data-contrast=high]{--text-secondary: color-mix(in srgb, var(--text-primary), #ffffff 20%);--border-subtle: color-mix(in srgb, var(--text-primary), transparent 70%)}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0}body{font-family:Inter,Arial,sans-serif;background:var(--bg-main);color:var(--text-primary);font-size:calc(var(--font-text) * var(--font-scale));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}a,button,[role=button]{-webkit-tap-highlight-color:transparent}a:focus:not(:focus-visible),button:focus:not(:focus-visible),[role=button]:focus:not(:focus-visible){outline:none}@media(hover:none)and (pointer:coarse){a,button,[role=button]{touch-action:manipulation;transition:transform .16s ease,filter .16s ease}a:active,button:active,[role=button]:active{transform:scale(.98);filter:brightness(1.04)}}.main-title{margin:0;font-size:calc(var(--font-main-title) * var(--font-scale));font-weight:700;line-height:1.15}.section-title{margin:0;font-size:calc(var(--font-section-title) * var(--font-scale));font-weight:600;line-height:1.2}.text-secondary{color:var(--text-secondary);font-size:calc(var(--font-text) * var(--font-scale))}.text-muted{color:var(--text-muted);font-size:calc(var(--font-small) * var(--font-scale))}.layout{display:flex;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;width:100%;overflow:hidden;background:var(--bg-main)}.layout-native-mobile{position:relative;display:block;width:100%;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden}.layout-native-mobile .sidebar,.layout-native-mobile .mobile-nav-toggle,.layout-native-mobile .sidebar-overlay{display:none!important}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);padding:18px 21px;display:flex;flex-direction:column;transition:width .34s cubic-bezier(.22,1,.36,1);flex-shrink:0;overflow-x:hidden}.glass-sidebar{background:var(--sidebar-glass-bg)!important;backdrop-filter:blur(24px) saturate(180%)!important;-webkit-backdrop-filter:blur(24px) saturate(180%)!important;border-right:1px solid var(--sidebar-glass-border)!important}.sidebar-close-mobile{position:absolute;top:14px;right:14px;width:36px!important;height:36px!important;background:var(--surface-overlay)!important;border:1px solid var(--surface-border-strong)!important;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-primary);z-index:100;cursor:pointer;transition:all .2s ease}.sidebar-close-mobile:active{transform:scale(.92);background:var(--surface-overlay-hover)!important}.sidebar:not(.open){width:var(--sidebar-width-collapsed)}.glass-sidebar{background:var(--sidebar-glass-bg)!important;backdrop-filter:blur(28px) saturate(180%)!important;-webkit-backdrop-filter:blur(28px) saturate(180%)!important;border-right:1px solid var(--sidebar-glass-border)!important;box-shadow:var(--sidebar-glass-shadow)}.sidebar-top{display:flex;flex-direction:column;align-items:flex-start;padding-left:0;min-height:120px;margin-bottom:20px;position:relative}.sidebar:not(.open) .sidebar-top{padding-left:0}.sidebar-toggle{width:44px;height:44px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer}.sidebar-toggle:hover{background:var(--surface-overlay);border-color:var(--border-subtle);box-shadow:0 0 10px var(--accent-glow)}.sidebar-close-mobile{position:absolute;top:18px;right:18px;width:36px;height:36px;background:var(--surface-overlay);border:1px solid var(--surface-border-strong);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-primary);z-index:100;cursor:pointer;box-shadow:var(--mobile-toggle-shadow);transition:all .2s cubic-bezier(.4,0,.2,1)}.sidebar-user-area{margin-top:18px;position:relative;width:100%;display:flex;flex-direction:row;align-items:center;gap:12px;transition:none}.sidebar:not(.open) .sidebar-user-area{gap:0;justify-content:flex-start}.sidebar-user-avatar{width:44px;height:44px;border-radius:var(--radius-md);background:var(--accent-soft);border:1px solid rgba(139,124,255,.25);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:var(--accent);transition:all .4s cubic-bezier(.4,0,.2,1);flex-shrink:0}.sidebar.open .sidebar-user-avatar{opacity:1;transform:scale(1);position:static;pointer-events:auto}.sidebar-user-box{transition:opacity .3s ease;width:100%;flex-shrink:0;white-space:nowrap}.sidebar:not(.open) .sidebar-user-box{opacity:0;pointer-events:none}.sidebar-greeting{margin:0 0 6px;color:var(--text-muted);font-size:var(--font-small);white-space:nowrap}.sidebar-user-box h3{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.sidebar-links{display:flex;flex-direction:column;gap:8px;flex:1}.sidebar-links a,.sidebar-bottom a,.sidebar-logout{display:flex;align-items:center;gap:12px;min-height:44px;padding:12px 14px;border-radius:var(--radius-md);color:var(--text-secondary);background:transparent;border:1px solid transparent;transition:all .2s ease;overflow:hidden}.link-label{transition:opacity .3s ease;display:inline-block;flex-shrink:0}.sidebar:not(.open) .link-label{opacity:0;pointer-events:none;position:absolute;left:56px}.sidebar-links a:hover,.sidebar-bottom a:hover,.sidebar-logout:hover{background:var(--surface-overlay);border-color:var(--border-subtle);color:var(--text-primary);box-shadow:0 0 10px var(--accent-glow)}.sidebar-links a.active,.sidebar-bottom a.active{background:var(--accent-soft);border-color:#8b7cff59;color:var(--text-primary)}:root[data-theme=light] .sidebar-toggle:hover,:root[data-theme=light] .sidebar-links a:hover,:root[data-theme=light] .sidebar-bottom a:hover,:root[data-theme=light] .sidebar-logout:hover{box-shadow:0 8px 18px color-mix(in srgb,var(--accent),transparent 88%)}.sidebar:not(.open) .sidebar-links a,.sidebar:not(.open) .sidebar-bottom a,.sidebar:not(.open) .sidebar-logout{width:44px;height:44px;min-width:44px;padding:0;justify-content:center}.mobile-nav-toggle{display:none;position:fixed;top:calc(14px + env(safe-area-inset-top));left:14px;z-index:1200;width:44px;height:44px;border-radius:var(--radius-md);background:var(--sidebar-glass-bg);border:1px solid var(--sidebar-glass-border);color:var(--text-primary);align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--mobile-toggle-shadow);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);transition:all .3s cubic-bezier(.22,1,.36,1)}.mobile-nav-toggle.hidden{transform:translate(-100px);opacity:0;pointer-events:none}.sidebar-overlay{display:none;position:fixed;inset:0;background:var(--overlay-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;transition:opacity .3s ease}.sidebar-overlay.active{opacity:1;pointer-events:auto}.mobile-only{display:none}@media(max-width:768px){.desktop-only{display:none!important}.mobile-only{display:flex!important}}.sidebar-bottom{display:flex;flex-direction:column;gap:8px}.dashboard{--dashboard-gap: clamp(14px, 1.6vw, 20px);flex:1;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(340px,.94fr);gap:var(--dashboard-gap);padding:clamp(14px,1.6vw,20px);min-width:0;height:100%;overflow:visible;box-sizing:border-box;align-items:stretch}.left-column{display:flex;flex-direction:column;gap:var(--dashboard-gap);min-width:0;overflow:visible;min-height:0}.dashboard.dashboard-single-column{grid-template-columns:1fr}.right-column{display:flex;flex-direction:column;gap:var(--dashboard-gap);min-width:0;min-height:0;overflow:hidden}.page-content{flex:1;display:flex;flex-direction:column;overflow:visible;height:100%;min-width:0;min-height:0}.layout-native-mobile .page-content{width:100%;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding:0 0 var(--mobile-bottom-nav-height, calc(64px + env(safe-area-inset-bottom, 0px)) ) 0!important;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.layout-native-mobile .page-content-dashboard,.layout-native-mobile .page-content-score,.layout-native-mobile .page-content-todos,.layout-native-mobile .page-content-routines,.layout-native-mobile .page-content-settings{padding:0!important}.layout-native-mobile .page-content-dashboard,.layout-native-mobile .page-content-score,.layout-native-mobile .page-content-settings{overflow:hidden!important}.page-content-dashboard{container-type:inline-size;container-name:dashboard-page}.sync-status-chip{position:fixed;right:18px;bottom:18px;z-index:1400;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:color-mix(in srgb,var(--bg-sidebar),transparent 12%);border:1px solid var(--sidebar-glass-border);color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.01em;box-shadow:0 10px 30px #0000003d;backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);pointer-events:none}.sync-status-chip-dot{width:8px;height:8px;border-radius:999px;background:#f6c94c;box-shadow:0 0 12px #f6c94c73}@media(min-width:769px){.page-content-dashboard{overflow:visible!important}}.mobile-page-intro{display:none}.habits-section{min-height:0;height:100%}.habit-list{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:6px 10px 6px 6px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#3a4266 transparent}.habit-list::-webkit-scrollbar{width:10px}.habit-list::-webkit-scrollbar-track{background:transparent;border-radius:999px}.habit-list::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#3a4266,#4c5788);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.habit-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#55619a,#6775ba);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.chart-wrapper{width:100%;height:240px}@media(max-width:768px){.sidebar,.mobile-nav-toggle,.sidebar-overlay{display:none!important}.page-content{padding-bottom:calc(64px + env(safe-area-inset-bottom))!important;overflow-y:auto!important}.page-content-dashboard,.page-content-score,.page-content-settings{padding-bottom:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;height:100%!important}.dashboard{display:flex!important;flex-direction:column!important;padding:calc(env(safe-area-inset-top,0px) + 12px) 16px calc(64px + env(safe-area-inset-bottom,0px)) 16px!important;gap:16px!important;overflow-y:auto!important;flex:1!important;height:100%!important;min-height:0!important}.left-column,.right-column,.left-stack{display:contents!important}.momentum-card{order:1!important;flex-shrink:0!important}.habits-section{order:2!important;display:flex!important;flex-direction:column!important;flex:1!important;min-height:0!important;overflow:hidden!important}.habit-list{display:flex!important;flex-direction:column!important;flex:1!important;overflow-y:auto!important;padding-right:4px!important;min-height:0!important;gap:12px!important}.routines-section,.routines-card,.performance-section,.chart-card,.todo-drawer{display:flex!important}.sync-status-chip{right:14px;bottom:calc(var(--mobile-bottom-nav-height, 64px) + 14px);font-size:11px;padding:7px 10px}.performance-section,.chart-card{order:4!important;min-height:320px!important}.todo-drawer{order:5!important}}@media(min-width:769px){@container dashboard-page (max-width: 1100px){.dashboard{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:clamp(14px,1.8vw,20px)!important;padding:clamp(14px,1.8vw,20px)!important;height:100%!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important}.left-column,.right-column,.left-stack{display:contents!important;height:auto!important;overflow:visible!important}.dashboard .card,.dashboard .todo-drawer{width:100%!important;height:auto!important;min-height:auto!important;flex:0 0 auto!important}.dashboard .habits-section{min-height:0!important;height:auto!important;max-height:none!important}}}@media(max-width:768px){.momentum-card--mobile-compact{padding:8px 12px!important;min-height:auto!important;gap:6px!important}.momentum-card--mobile-compact .momentum-visual-wrap{height:80px!important;margin-bottom:4px!important}.momentum-card--mobile-compact .momentum-label{font-size:14px!important;margin-bottom:4px!important}.momentum-card--mobile-compact .momentum-stats-grid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:12px!important;padding:4px 0!important;scrollbar-width:none}.momentum-card--mobile-compact .momentum-stats-grid::-webkit-scrollbar{display:none}.momentum-card--mobile-compact .momentum-stat-pill{flex:0 0 auto!important;padding:8px 6px!important;min-width:80px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;height:52px!important;background:#ffffff08!important;border-radius:10px!important}.momentum-card--mobile-compact .momentum-stat-label{font-size:10px!important;margin:0 0 6px!important;text-transform:uppercase!important;letter-spacing:.1em!important;opacity:.5!important;line-height:1!important;display:block!important}.momentum-card--mobile-compact .momentum-stat-value{font-size:16px!important;line-height:1!important;font-weight:700!important;display:block!important}.score-page-stack--mobile{display:flex!important;flex-direction:column!important;height:100%!important;gap:12px!important;overflow:hidden!important}.score-page-stack--mobile .score-tab-momentum-card{flex:0 0 calc(33% - 6px)!important;overflow:hidden!important;padding:12px!important}.score-page-stack--mobile .chart-card{flex:1!important;min-height:0!important}.score-tab-mobile-label,.score-tab-mobile-summary p{display:none!important}.routines-grid{max-height:480px!important;overflow-y:auto!important;padding:4px!important}}.card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);padding:20px}.interactive-card{transition:background .22s ease,border-color .22s ease,box-shadow .28s ease,transform .18s ease}.interactive-card:hover{background:var(--bg-card-hover);border-color:#8b7cff52;box-shadow:0 0 0 1px #8b7cff1a,0 8px 26px #8b7cff1a;transform:translateY(-1px)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.center-header{justify-content:center}.icon-button{width:40px;height:40px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-overlay);color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease,box-shadow .22s ease,transform .16s ease}.icon-button:hover{background:var(--accent-soft);border-color:#8b7cff57;box-shadow:0 0 0 1px #8b7cff1f,0 0 18px #8b7cff2e;transform:translateY(-1px)}.primary-button,.secondary-button,.chip-button{border:1px solid transparent;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1;transition:background .2s ease,border-color .2s ease,box-shadow .22s ease,transform .16s ease,opacity .2s ease}.primary-button svg,.secondary-button svg,.chip-button svg{flex-shrink:0;display:block}.primary-button{background:var(--accent);color:#fff;height:40px;padding:0 16px;font-size:var(--font-text);font-weight:500;display:inline-flex;align-items:center;justify-content:center}.routine-details-edit-actions .primary-button,.routine-details-edit-actions .secondary-button,.routine-details-actions .primary-button,.routine-player-actions .secondary-button{min-height:44px}.primary-button:hover{background:var(--accent-hover);box-shadow:0 0 0 1px #8b7cff29,0 0 20px #8b7cff3d;transform:translateY(-1px)}.secondary-button{background:var(--surface-overlay);color:var(--text-primary);border-color:var(--border-subtle);height:40px;padding:0 16px;font-size:var(--font-text);display:inline-flex;align-items:center;justify-content:center}.secondary-button:hover{background:var(--accent-soft);border-color:#8b7cff57;box-shadow:0 0 0 1px #8b7cff1a,0 0 16px #8b7cff29;transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{opacity:.6;cursor:not-allowed}.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.chip-button:active:not(:disabled),.icon-button:active:not(:disabled){transform:scale(.97);filter:brightness(.95)}.left-column{min-width:0;min-height:0;display:flex;flex-direction:column;height:100%}.left-stack{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,0fr);gap:0;min-height:0;height:100%;transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),gap .42s cubic-bezier(.22,1,.36,1)}.left-stack.todo-open{grid-template-rows:minmax(300px,1.16fr) minmax(220px,.92fr);gap:var(--dashboard-gap, 20px)}.habits-section,.momentum-section,.performance-section,.routines-section{min-height:0;height:100%;display:flex;flex-direction:column;min-width:0;overflow:visible}.habit-list{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:clamp(12px,1.6vw,20px);align-content:start;flex:1;min-height:0;overflow-y:auto;overflow-x:visible;padding-top:4px;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}.habit-list::-webkit-scrollbar{display:none;width:0;height:0}.dashboard-habits-section .card-header{margin-bottom:12px}.dashboard-habits-expand-wrap{margin-top:14px;display:flex;justify-content:center;flex-shrink:0}.dashboard-habits-expand-button{min-width:140px}.dashboard-mobile-end-spacer{display:none}.habit-card{--habit-accent: #339AF0;--habit-accent-glow: color-mix(in srgb, var(--habit-accent), transparent 84%);--habit-accent-soft: color-mix(in srgb, var(--habit-accent), transparent 92%);background:linear-gradient(165deg,color-mix(in srgb,var(--habit-accent),transparent 88%) 0%,var(--bg-card) 46%,color-mix(in srgb,var(--habit-accent),transparent 94%) 100%)!important;border:1px solid color-mix(in srgb,var(--habit-accent),var(--border-subtle) 72%)!important;border-radius:18px!important;padding:12px 14px!important;display:flex!important;flex-direction:column!important;gap:12px!important;position:relative!important;min-width:0;overflow:visible!important}.habit-card:hover{transform:translateY(-2px)!important;border-color:var(--habit-accent)!important;box-shadow:0 10px 24px -4px #00000040,0 0 16px -2px var(--habit-accent-glow)!important}.habit-card.streaking{border-color:color-mix(in srgb,var(--habit-accent),#ffffff 20%)!important;box-shadow:0 8px 20px -8px #00000047,0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 78%),0 0 18px -3px var(--habit-accent-glow)!important}.habit-header{display:flex!important;justify-content:space-between!important;align-items:flex-start!important}.habit-header-left{display:flex!important;align-items:flex-start!important;gap:10px!important;min-width:0;flex:1}.habit-header-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.habit-emoji{font-size:1.35rem;line-height:1;margin-top:2px;flex-shrink:0}.habit-title-group{min-width:0;display:flex;flex-direction:column;gap:2px}.habit-name{margin:0!important;font-size:1rem!important;font-weight:700!important;color:var(--text-primary)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-target-mini{margin-top:2px;font-size:.75rem;opacity:.65;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.habit-edit-trigger{background:#ffffff0a!important;border:1px solid var(--border-subtle)!important;color:var(--text-secondary)!important;width:28px!important;height:28px!important;border-radius:7px!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:all .2s!important}.habit-stats-row{display:flex!important;justify-content:space-between!important;align-items:center!important}.habit-flame-idle{color:var(--text-secondary)!important;opacity:.22!important}.habit-flame-streak{color:var(--habit-accent)!important;filter:drop-shadow(0 0 7px color-mix(in srgb,var(--habit-accent),transparent 70%))!important}.habit-flame-completed{color:color-mix(in srgb,var(--habit-accent),#ffffff 22%)!important;filter:drop-shadow(0 0 9px color-mix(in srgb,var(--habit-accent),transparent 58%)) drop-shadow(0 0 16px color-mix(in srgb,var(--habit-accent),transparent 74%))!important}.habit-period-progress{font-size:.8rem!important;color:var(--text-secondary)!important;font-weight:600!important}.habit-history-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;width:100%;margin-top:6px;padding-inline:1px;min-width:0;overflow:visible}.habit-history-cell{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;overflow:visible}.habit-history-label{display:flex;flex-direction:column;align-items:center;font-size:.62rem;font-weight:700;opacity:.45;line-height:1}.habit-history-cell.is-today .habit-history-label{opacity:1}.habit-history-label .day-name{text-transform:uppercase}.habit-history-label .day-num{margin-top:2px;font-size:.58rem;opacity:.7}.habit-history-box{background:#ffffff05!important;border:1px solid rgba(255,255,255,.05)!important;width:100%;max-width:100%;min-width:0;aspect-ratio:1;border-radius:7px;box-sizing:border-box;padding:0;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer!important;color:transparent!important}.habit-history-box:disabled{cursor:wait!important;opacity:.8}.habit-history-box.is-streak{background:color-mix(in srgb,var(--habit-accent),transparent 86%)!important;border-color:color-mix(in srgb,var(--habit-accent),transparent 70%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 82%),0 0 10px -6px var(--habit-accent-glow)}.habit-history-box.is-streak-strong{background:color-mix(in srgb,var(--habit-accent),transparent 80%)!important;border-color:color-mix(in srgb,var(--habit-accent),transparent 58%)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 74%),0 0 14px -4px var(--habit-accent-glow)}.habit-history-cell.checked .habit-history-box,.habit-history-box.is-checked{background:var(--habit-accent);border-color:var(--habit-accent);box-shadow:0 4px 12px -2px var(--habit-accent-glow),0 0 0 1px color-mix(in srgb,var(--habit-accent),#ffffff 22%);color:#fff!important}.habit-history-cell.checked .habit-history-box svg,.habit-history-box.is-checked svg{stroke-width:2.6;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35))}.habit-history-box:hover{transform:scale(1.08);background:#ffffff0f!important}.danger-button{border-color:#ff828238;color:#ffd3d3}.danger-button:hover{background:#ff6e6e1a;border-color:#ff828252;box-shadow:0 0 14px #ff6e6e1a}.score-card{min-height:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.momentum-card{align-items:stretch;justify-content:flex-start;container-type:inline-size;padding:clamp(14px,1.8vh,20px) clamp(14px,1.4vw,20px) clamp(16px,2.2vh,24px);border-color:var(--momentum-border, var(--border-subtle));position:relative;isolation:isolate;overflow:hidden;box-shadow:0 4px 20px #00000026;transition:background .28s cubic-bezier(.4,0,.2,1),border-color .28s cubic-bezier(.4,0,.2,1),box-shadow .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1)}.momentum-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(72% 58% at 50% 34%,var(--momentum-glow, transparent) 0%,rgba(0,0,0,0) 72%);opacity:.95;pointer-events:none;z-index:0}.momentum-card:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--momentum-border, transparent),inset 0 0 34px #ffffff04;pointer-events:none;z-index:0}.momentum-card>*{position:relative;z-index:1}.momentum-card:hover{transform:none;border-color:var(--momentum-border, rgba(139, 124, 255, .45));box-shadow:0 14px 32px #00000042,0 0 0 1px #ffffff05}:root[data-theme=light] .momentum-card{box-shadow:0 18px 34px #4961841f,0 4px 12px #6f63ef0f}:root[data-theme=light] .momentum-card:before{background:radial-gradient(78% 64% at 50% 34%,color-mix(in srgb,var(--momentum-glow, transparent),#ffffff 38%),#fff0 80%);opacity:.72}:root[data-theme=light] .momentum-card:hover{box-shadow:0 20px 38px #49618429,0 4px 16px #6f63ef14}.momentum-card--circle{--momentum-circle-shift: 0;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;grid-template-areas:"topbar topbar" "visual stats" "label stats";align-items:center;column-gap:clamp(28px,3.5vw,48px);row-gap:clamp(12px,1.6vh,22px)}.momentum-topbar{display:flex;align-items:flex-start;justify-content:space-between;width:100%;margin-bottom:0;position:relative;z-index:4}.momentum-topbar .chart-settings-button{width:40px;height:40px;min-width:40px;padding:0;border-radius:10px;box-sizing:border-box;flex:0 0 40px;display:inline-flex;align-items:center;justify-content:center}.momentum-card--circle .momentum-topbar{grid-area:topbar;margin-bottom:0;align-self:start}.momentum-topbar-spacer{width:40px;height:40px;visibility:hidden}.momentum-title{text-align:left;margin:0}.momentum-visual-wrap{width:100%;display:flex;align-items:center;justify-content:center;flex:1;margin-top:0;margin-bottom:4px;position:relative;z-index:1}.momentum-card--circle .momentum-visual-wrap{grid-area:visual;height:auto;margin:0;justify-content:center;padding-left:var(--momentum-circle-shift)}.momentum-card--circle .score-circle{width:clamp(152px,31cqi,250px);height:clamp(152px,31cqi,250px)}.momentum-card--circle .score-text{font-size:clamp(30px,6cqi,56px)}.score-bar-wrap{width:min(520px,100%);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto;row-gap:8px;column-gap:0}.score-bar-track{grid-column:1 / -1;grid-row:1;height:20px;border-radius:999px;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.score-bar-fill{height:100%;border-radius:999px;transition:width .35s ease,background .25s ease}.score-bar-value{grid-column:1;grid-row:2;justify-self:center;min-width:56px;text-align:center;font-size:24px;font-weight:700;color:var(--text-primary)}.momentum-label{margin:clamp(2px,.8vh,6px) 0 0 0;text-align:center;font-size:14px;font-weight:600;color:var(--text-primary)}.momentum-card--circle .momentum-label{grid-area:label;text-align:center;margin:2px 0 0;justify-self:stretch;padding-left:var(--momentum-circle-shift)}.momentum-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,10px);width:min(100%,420px);margin:auto auto 0}.momentum-card--circle .momentum-stats-grid{grid-area:stats;margin-top:0;align-self:center;padding-right:4px;width:100%;max-width:none;margin-left:0;margin-right:0}.momentum-stat-pill{border:1px solid var(--border-subtle);border-radius:14px;padding:10px 14px;min-height:70px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:4px}.momentum-stat-label{font-size:12px;color:var(--text-secondary)}.momentum-stat-value{font-size:18px;color:var(--text-primary);font-weight:700}@media(min-width:769px){.momentum-card,.momentum-card--circle{padding:20px}.momentum-card:not(.momentum-card--circle) .momentum-topbar{margin-bottom:20px}.momentum-card--circle .momentum-topbar{margin-bottom:0}.momentum-card--circle{grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;column-gap:clamp(32px,4vw,48px);row-gap:20px;align-items:center}.momentum-card--circle .momentum-visual-wrap{min-height:204px;align-self:center;justify-self:center;width:100%;padding-left:0}.momentum-card--circle .score-circle{width:204px;height:204px}.momentum-card--circle .score-text{font-size:clamp(30px,2.4vw,36px)}.momentum-card--circle .momentum-label{margin-top:0;padding-left:0;justify-self:center;width:min(240px,100%)}.momentum-card--circle .momentum-stats-grid{grid-area:stats;margin-top:0;align-self:center;padding-right:4px;width:100%;max-width:none;margin-left:0;margin-right:0}.momentum-card--circle .momentum-stat-pill{min-height:82px;padding:12px 14px}.momentum-card:not(.momentum-card--circle) .momentum-visual-wrap{height:90px;margin-top:0;margin-bottom:8px}.momentum-card:not(.momentum-card--circle) .score-bar-wrap{width:min(540px,100%)}.momentum-card:not(.momentum-card--circle) .momentum-label{margin:0 0 14px}.momentum-card:not(.momentum-card--circle) .momentum-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,10px);width:min(100%,420px);margin:auto auto 0}.momentum-card:not(.momentum-card--circle) .momentum-stat-pill{min-height:clamp(56px,6.8vh,68px)}}.momentum-page-card{max-width:1100px}.momentum-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.score-info-text{margin:8px 0 0;text-align:center}.score-page-subtitle{margin:10px 0 24px}.score-page-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:18px}.score-page-main-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px}.score-page-stats-card{display:flex;flex-direction:column;gap:14px;justify-content:center}.score-stat-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--border-subtle)}.score-stat-row:last-child{border-bottom:none}.score-circle{width:160px;height:160px;position:relative;flex-shrink:0;overflow:visible}.score-circle svg{width:100%;height:100%;display:block;transform:rotate(-90deg);overflow:visible}.score-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:var(--text-primary);will-change:transform,opacity}.score-text.is-updating{animation:score-text-update .24s ease}@keyframes score-text-update{0%{transform:scale(.92);opacity:.8}to{transform:scale(1);opacity:1}}.chart-card{min-height:0;height:100%;display:flex;flex-direction:column}.chart-header{align-items:flex-start;position:relative;margin-bottom:14px}.chart-subtitle{margin:6px 0 0}.chart-header-actions{display:flex;align-items:center;gap:10px}.chart-score-pill{min-width:118px;padding:9px 12px;border-radius:14px;border:1px solid var(--border-subtle);background:#ffffff08}.chart-score-pill-top{display:flex;align-items:center;gap:8px;margin-bottom:4px}.chart-score-pill-label{font-size:12px;color:var(--text-secondary)}.chart-score-pill-value{font-size:18px;font-weight:700;color:var(--text-primary)}.chart-settings-wrap{position:relative;z-index:6}.chart-settings-button{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0}.chart-settings-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:8px;box-shadow:0 12px 30px #0006;z-index:40;display:flex;flex-direction:column;gap:4px;pointer-events:auto}.habit-sort-menu{min-width:210px}.habit-sort-menu-label{padding:4px 8px 6px;font-size:12px;font-weight:700;color:var(--text-secondary)}.habit-sort-option,.habit-sort-direction-button{justify-content:space-between;width:100%}.habit-sort-menu-divider{height:1px;margin:4px 0;background:var(--border-subtle)}.chart-menu-button{justify-content:center;white-space:nowrap}.chart-menu-button.active{background:var(--accent-soft);border-color:#8b7cff61}.chart-empty-state{min-height:0;flex:1}.chart-wrapper{width:100%;min-height:140px;height:auto;flex:1;margin:0;padding:0 2px 10px 6px}.chart-hover-tooltip{background:color-mix(in srgb,var(--bg-card),transparent 4%);border:1px solid color-mix(in srgb,var(--accent),transparent 72%);border-radius:10px;padding:8px 10px;box-shadow:0 14px 30px #0c122242,0 0 18px color-mix(in srgb,var(--accent),transparent 88%);backdrop-filter:blur(14px) saturate(145%);-webkit-backdrop-filter:blur(14px) saturate(145%)}.chart-hover-tooltip-date{font-size:12px;color:var(--text-secondary);margin-bottom:2px}.chart-hover-tooltip-score{font-size:16px;font-weight:700;color:var(--text-primary)}:root[data-theme=light] .chart-hover-tooltip{background:#f7f9fdf5;border-color:#6f63ef38;box-shadow:0 16px 32px #2d426524,0 0 0 1px #ffffffb8}:root[data-theme=light] .chart-hover-tooltip-date{color:#5c6d91}.right-column{display:flex;flex-direction:column;gap:20px;min-width:0;min-height:0;height:100%;overflow:hidden}.dashboard .right-column{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:var(--dashboard-gap, 20px);align-items:stretch}.right-column>.score-card{flex:1 1 0}.right-column>.chart-card{flex:1 1 0}.right-column>.routines-card{flex:1 1 0}.right-column>.score-card,.right-column>.chart-card,.right-column>.routines-card{min-height:0}.dashboard .right-column>.score-card,.dashboard .right-column>.chart-card,.dashboard .right-column>.routines-card,.dashboard .right-column>.momentum-card,.dashboard .right-column>.momentum-card.momentum-card--circle,.dashboard .right-column>.momentum-card.momentum-card--bar{height:100%;min-height:0!important}.routines-card{min-height:0;height:100%;display:flex;flex-direction:column;margin-top:0}.dashboard .routines-card{container-type:inline-size}.routines-header-actions,.chart-header-actions,.habits-header-actions{display:flex;align-items:flex-start;gap:12px}.routines-header-actions,.habits-header-actions{align-items:center}.routines-subtitle{margin:6px 0 0}.routines-add-button{display:inline-flex;align-items:center;justify-content:center}.routines-header-actions>.routines-add-button.primary-button,.routines-header-actions .chart-settings-button{width:40px;min-width:40px;height:40px;padding:0;border-radius:10px;box-sizing:border-box;flex:0 0 40px;display:inline-flex;align-items:center;justify-content:center}.add-habit-button.primary-button,.routines-add-button.primary-button{width:40px;min-width:40px;height:40px;padding:0;border-radius:10px;font-size:24px;line-height:1}.habits-page-add-button.primary-button{white-space:nowrap}.routines-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.8vh,20px);flex:1;min-height:0;overflow-y:auto;padding-top:4px;padding-right:4px;margin-top:-4px;scrollbar-width:none;-ms-overflow-style:none}.routines-grid::-webkit-scrollbar{display:none;width:0;height:0}.routine-slot{min-height:clamp(90px,12vh,112px);border-radius:18px;border:1px solid var(--border-subtle);background:#ffffff05;transition:border-color .22s ease,background .22s ease,box-shadow .22s ease}.routine-slot-filled{--routine-accent: var(--accent);padding:16px;text-align:left;border-color:color-mix(in srgb,var(--routine-accent),var(--border-subtle) 68%);background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),transparent 90%),#ffffff05 42%,color-mix(in srgb,var(--routine-accent),transparent 94%))}.routine-slot-filled:hover{background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),transparent 86%),#ffffff0a 42%,color-mix(in srgb,var(--routine-accent),transparent 92%));border-color:color-mix(in srgb,var(--routine-accent),transparent 44%);box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 78%),0 0 18px color-mix(in srgb,var(--routine-accent),transparent 80%)}.routines-card-reorder-enabled{position:relative}.routines-card-reorder-enabled .routines-grid{padding-bottom:72px}.routines-reorder-controls{position:absolute;right:16px;bottom:14px;z-index:3;display:flex;align-items:center;gap:8px}.routines-slot-picker{width:0;opacity:0;overflow:hidden;pointer-events:none;transform:translate(10px);transition:width .26s cubic-bezier(.22,1,.36,1),opacity .18s ease,transform .26s cubic-bezier(.22,1,.36,1);display:flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--surface-overlay),transparent 12%);border:1px solid var(--border-subtle);border-radius:12px;padding:5px}.routines-slot-picker.active{width:188px;opacity:1;pointer-events:auto;transform:translate(0)}.routines-slot-button{width:38px;min-width:38px;height:38px;padding:0;border-radius:10px;font-weight:700}.routines-slot-button.active{background:color-mix(in srgb,var(--accent),transparent 80%);border-color:color-mix(in srgb,var(--accent),transparent 42%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 76%),0 0 12px color-mix(in srgb,var(--accent),transparent 84%)}.routines-reorder-toggle{width:42px;min-width:42px;height:42px;padding:0;border-radius:12px}.routines-reorder-toggle.active{background:color-mix(in srgb,var(--accent),transparent 78%);border-color:color-mix(in srgb,var(--accent),transparent 40%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 74%),0 0 14px color-mix(in srgb,var(--accent),transparent 82%)}.routines-card-reorder-mode .routine-slot-reorder{cursor:grab;-webkit-user-select:none;user-select:none}.routines-card-reorder-mode .routine-slot-reorder:active{cursor:grabbing}.routine-slot-dragging{opacity:.56;transform:scale(.985)}.routine-slot-drop-target{border-color:color-mix(in srgb,var(--accent),transparent 36%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 72%),0 0 18px color-mix(in srgb,var(--accent),transparent 82%)}@media(min-width:769px)and (max-height:940px){.dashboard{gap:14px!important;padding:14px!important}.left-column,.right-column{gap:14px!important}.dashboard .card{padding:16px!important}.dashboard .card-header{margin-bottom:14px!important}.chart-score-pill{min-width:104px;padding:7px 10px}.chart-score-pill-value{font-size:16px}.chart-wrapper{min-height:128px;padding:0 2px 6px 4px}}@media(min-width:769px)and (max-height:820px){.momentum-label{display:none}.momentum-stat-pill{min-height:44px}.chart-wrapper{min-height:112px}}.routine-slot-main{height:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.routine-slot-text{display:flex;flex-direction:column;gap:8px;min-width:0}.routine-slot-title{font-size:20px;font-weight:700;color:color-mix(in srgb,var(--routine-accent),#ffffff 18%);line-height:1.25;display:block;max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.routine-slot-streak{font-size:13px;color:color-mix(in srgb,var(--routine-accent),var(--text-secondary) 72%)}.routine-slot-indicator{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px}.routine-dashboard-slot{font-size:12px;font-weight:700;color:color-mix(in srgb,var(--routine-accent),#ffffff 42%);line-height:1;min-height:12px}.routine-check-circle{width:34px;height:34px;min-width:34px;border-radius:999px;border:1px solid color-mix(in srgb,var(--routine-accent),transparent 78%);display:grid;place-items:center;color:color-mix(in srgb,var(--routine-accent),#ffffff 68%);background:color-mix(in srgb,var(--routine-accent),transparent 92%);transition:background .2s ease,border-color .2s ease,box-shadow .25s ease,color .2s ease,transform .18s ease}.routine-check-circle-active{color:#65d58a;background:#65d58a1f;border-color:#65d58a57;box-shadow:0 0 0 1px #65d58a1a,0 0 16px #65d58a2e}.routine-check-circle-today{color:color-mix(in srgb,var(--routine-accent),#ffffff 18%);background:color-mix(in srgb,var(--routine-accent),transparent 86%);border-color:color-mix(in srgb,var(--routine-accent),transparent 58%);box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 86%),0 0 14px color-mix(in srgb,var(--routine-accent),transparent 86%)}.routine-slot-add{display:grid;place-items:center}.routine-slot-add:hover{background:#ffffff0a;border-color:#8b7cff42;box-shadow:0 0 0 1px #8b7cff1a,0 0 18px #8b7cff1a}.routine-slot-plus-wrap{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:#ffffff0a;color:var(--text-primary)}.routine-slot-empty{border-style:dashed;opacity:.18;pointer-events:none}.dashboard .routines-grid{gap:clamp(8px,1.8cqi,20px)}.dashboard .routine-slot{min-height:clamp(74px,14cqi,112px);border-radius:clamp(12px,2.8cqi,18px)}.dashboard .routine-slot-filled{padding:clamp(10px,2.2cqi,16px)}.dashboard .routine-slot-main{gap:clamp(8px,1.8cqi,14px)}.dashboard .routine-slot-text{gap:clamp(4px,1.1cqi,8px)}.dashboard .routine-slot-title{font-size:clamp(14px,3.6cqi,20px);line-height:1.18}.dashboard .routine-slot-streak{font-size:clamp(10px,2.1cqi,13px);line-height:1.25}.dashboard .routine-check-circle{width:clamp(28px,6.2cqi,34px);height:clamp(28px,6.2cqi,34px);min-width:clamp(28px,6.2cqi,34px)}.dashboard .routine-check-circle svg{width:clamp(12px,2.8cqi,16px);height:clamp(12px,2.8cqi,16px)}.dashboard .routine-slot-plus-wrap{width:clamp(34px,8.5cqi,46px);height:clamp(34px,8.5cqi,46px)}.dashboard .routine-slot-plus-wrap svg{width:clamp(18px,4.2cqi,26px);height:clamp(18px,4.2cqi,26px)}.routine-create-modal{max-width:620px;position:relative;overflow:hidden;background:linear-gradient(165deg,color-mix(in srgb,var(--accent),transparent 88%),#111625cc 40%,#111625ad);backdrop-filter:blur(24px) saturate(165%);-webkit-backdrop-filter:blur(24px) saturate(165%);border-color:color-mix(in srgb,var(--accent),var(--border-subtle) 72%);box-shadow:0 24px 42px #00000070,0 0 0 1px color-mix(in srgb,var(--accent),transparent 84%)}.routine-create-modal:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.03) 20%,transparent 42%),radial-gradient(120% 90% at 12% 0%,color-mix(in srgb,var(--accent),transparent 88%) 0%,transparent 60%);pointer-events:none;opacity:.95}.routine-create-modal:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px #ffffff14,inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 82%);pointer-events:none}.routine-create-modal>*{position:relative;z-index:1}.routine-create-header-actions{display:flex;align-items:center;gap:8px}.routine-topbar-icon-button{width:36px;min-width:36px;height:36px;padding:0!important;border-radius:12px!important;border:1px solid rgba(255,255,255,.1)!important;background:#ffffff08!important;color:#f5f7ff!important;display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 1px #ffffff08,0 10px 24px #0000002e}.routine-topbar-icon-button:hover{background:#ffffff08!important;border-color:#ffffff1a!important;box-shadow:inset 0 0 0 1px #ffffff08,0 10px 24px #0000002e!important;transform:none!important}.routine-topbar-icon-button:active:not(:disabled){transform:scale(.98)!important;filter:none!important}.routine-topbar-icon-button svg{width:20px;height:20px}.routine-modal-header-fields{display:grid;grid-template-columns:minmax(92px,108px) minmax(0,1fr);gap:12px;align-items:start}.routine-modal-header-fields .form-group{min-width:0;margin-bottom:0}.routine-modal-header-fields .routine-emoji-field{order:1}.routine-modal-header-fields .routine-name-field{order:2}.routine-modal-header-fields .routine-emoji-field input{text-align:center;padding-inline:12px}.routine-create-form{display:flex;flex-direction:column;min-height:0}.routine-create-form .modal-actions{margin-top:auto;padding-top:14px}.routine-builder-section{display:flex;flex-direction:column;gap:14px}.routine-builder-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.routine-builder-steps{display:flex;flex-direction:column;gap:12px}.routine-builder-steps-scroll{max-height:540px;overflow-y:auto;padding-right:6px;scrollbar-width:none;-ms-overflow-style:none}.routine-builder-steps-scroll::-webkit-scrollbar{display:none;width:0;height:0}.routine-builder-step-card{border:1px solid var(--border-subtle);border-radius:16px;padding:14px;background:#ffffff05}.routine-create-modal .routine-builder-step-card,.routine-details-modal .routine-edit-step-card{border-color:color-mix(in srgb,var(--accent),var(--border-subtle) 78%);background:linear-gradient(180deg,#181e31eb,#121829e6);backdrop-filter:blur(16px) saturate(145%);-webkit-backdrop-filter:blur(16px) saturate(145%);box-shadow:inset 0 1px #ffffff0a}.routine-create-modal .routine-builder-step-card .form-group input,.routine-details-modal .routine-edit-step-card .form-group input{background:#161c2de0}.routine-builder-step-grid{display:grid;grid-template-columns:1.45fr .75fr .55fr .55fr;gap:12px}.routine-builder-step-grid-unified{grid-template-columns:44px minmax(0,1fr) minmax(92px,108px);align-items:end;gap:10px}.routine-builder-step-grid-unified .form-group{min-width:0;margin-bottom:0}.routine-step-time-inputs{display:flex;align-items:center;gap:6px}.routine-step-time-single-input{text-align:center}.routine-step-time-unit{flex-shrink:0;color:var(--text-secondary);font-size:11px;font-weight:600}.routine-builder-step-actions{display:flex;justify-content:flex-end;margin-top:10px}.routine-details-modal{--routine-accent: var(--accent);--accent-soft: color-mix(in srgb, var(--routine-accent), transparent 86%);--accent-hover: color-mix(in srgb, var(--routine-accent), #ffffff 10%);position:relative;overflow:hidden;max-width:760px;max-height:calc(100dvh - 48px);display:flex;flex-direction:column;padding:26px;border:1px solid color-mix(in srgb,var(--routine-accent),var(--border-subtle) 68%);background:linear-gradient(165deg,color-mix(in srgb,var(--routine-accent),transparent 90%),#111625c7 38%,#111625a8);backdrop-filter:blur(24px) saturate(165%);-webkit-backdrop-filter:blur(24px) saturate(165%);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;box-shadow:0 24px 42px #0000006b,0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 84%)}.routine-details-modal:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.12) 0%,rgba(255,255,255,.04) 20%,transparent 42%),radial-gradient(120% 90% at 12% 0%,color-mix(in srgb,var(--routine-accent),transparent 88%) 0%,transparent 60%);pointer-events:none;opacity:.95}.routine-details-modal:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 1px #ffffff14,inset 0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 82%);pointer-events:none}.routine-details-modal>*{position:relative;z-index:1}.routine-details-modal input,.routine-details-modal textarea{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}.routine-details-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px;flex-shrink:0}.routine-details-header-left{min-width:0;flex:1}.routine-details-title-row{display:flex;align-items:center;gap:10px;min-width:0}.routine-details-title-edit-row{width:100%;display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center}.routine-details-routine-emoji{font-size:28px;line-height:1;flex-shrink:0}.routine-details-title{margin:0;color:color-mix(in srgb,var(--routine-accent),#ffffff 14%);text-shadow:0 0 14px color-mix(in srgb,var(--routine-accent),transparent 84%);max-width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.routine-details-title-input{width:100%;height:48px;border:1px solid color-mix(in srgb,var(--routine-accent),transparent 56%);border-radius:14px;background:#ffffff08;color:var(--text-primary);padding:0 14px;font-size:22px;font-weight:700;outline:none}.routine-details-emoji-input{width:100%;height:48px;border:1px solid color-mix(in srgb,var(--routine-accent),transparent 56%);border-radius:14px;background:#ffffff08;color:var(--text-primary);padding:0 12px;font-size:24px;text-align:center;outline:none}.routine-details-title-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--routine-accent),transparent 86%)}.routine-details-emoji-input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--routine-accent),transparent 86%)}.routine-details-subtitle{margin:10px 0 0;line-height:1;display:flex;align-items:center;gap:10px}.routine-details-status-pill{display:inline-flex;align-items:center;gap:6px;font-weight:700}.routine-details-completion-pill{font-size:18px;line-height:1}.routine-details-completion-pill.is-completed{color:color-mix(in srgb,var(--routine-accent),#ffffff 18%)}.routine-details-completion-pill.is-pending{color:var(--text-secondary);opacity:.8}.routine-details-header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;align-self:flex-start}.routine-delete-button{opacity:.72}.routine-details-modal .chart-settings-button{border-color:color-mix(in srgb,var(--routine-accent),transparent 76%);background:color-mix(in srgb,var(--routine-accent),transparent 93%)}.routine-details-modal .secondary-button,.routine-settings-modal .secondary-button{border-color:color-mix(in srgb,var(--routine-accent),transparent 82%)}.routine-details-edit-topbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:14px}.routine-details-edit-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end}.routine-details-icon-button{width:40px;height:40px;min-width:40px;padding:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center}.routine-details-save-button{box-shadow:0 0 16px color-mix(in srgb,var(--routine-accent),transparent 82%)}.routine-details-steps{display:flex;flex-direction:column;gap:14px}.routine-details-steps-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:6px;scrollbar-width:none;-ms-overflow-style:none}.routine-details-steps-scroll::-webkit-scrollbar{display:none;width:0;height:0}.routine-edit-steps-list{display:flex;flex-direction:column;gap:12px}.routine-edit-step-swipe{flex:0 0 auto;position:relative;overflow:hidden;border-radius:18px;touch-action:pan-y}.routine-edit-step-remove{position:absolute;top:0;right:0;bottom:0;width:176px;display:flex;align-items:center;justify-content:flex-end;padding:14px 12px}.routine-edit-step-remove .danger-button{min-width:148px;min-height:48px}.routine-edit-step-sheet{position:relative;z-index:1;transition:transform .18s ease;will-change:transform}.routine-edit-step-sheet.is-dragging{transition:none}.routine-edit-step-card{margin:0}.routine-details-modal .routine-builder-step-card{border-color:color-mix(in srgb,var(--routine-accent),transparent 82%);background:linear-gradient(180deg,#ffffff0a,color-mix(in srgb,var(--routine-accent),transparent 95%));backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:inset 0 1px #ffffff0a}.routine-details-step{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid color-mix(in srgb,var(--routine-accent),transparent 82%);border-radius:18px;padding:16px 18px;background:linear-gradient(180deg,#ffffff0d,color-mix(in srgb,var(--routine-accent),transparent 95%));backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:inset 0 1px #ffffff0a}.routine-details-step-left{display:flex;align-items:center;gap:12px;min-width:0}.routine-details-step-emoji{font-size:22px;line-height:1;flex-shrink:0}.routine-details-step-bullet{width:26px;height:26px;min-width:26px;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--routine-accent),transparent 86%);color:color-mix(in srgb,var(--routine-accent),#ffffff 18%);box-shadow:0 0 12px color-mix(in srgb,var(--routine-accent),transparent 88%)}.routine-details-step-title{font-size:16px;color:var(--text-primary);word-break:break-word;line-height:1.35}.routine-details-step-duration{font-size:14px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;background:color-mix(in srgb,var(--routine-accent),transparent 91%);border:1px solid color-mix(in srgb,var(--routine-accent),transparent 82%);border-radius:999px;padding:6px 10px}.routine-details-actions{display:flex;justify-content:center;margin-top:26px;flex-shrink:0}.routine-details-edit-footer{margin-top:auto}.routine-details-edit-footer .routine-details-edit-actions{width:100%;justify-content:center}.routine-start-button{min-width:240px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 78%),0 0 18px color-mix(in srgb,var(--routine-accent),transparent 84%)}.routine-details-modal .secondary-button:hover,.routine-settings-modal .secondary-button:hover{border-color:color-mix(in srgb,var(--routine-accent),transparent 62%);box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 86%),0 0 16px color-mix(in srgb,var(--routine-accent),transparent 88%)}.routine-details-modal .primary-button:hover,.routine-settings-modal .primary-button:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 72%),0 0 20px color-mix(in srgb,var(--routine-accent),transparent 80%)}.routine-details-empty{min-height:160px}.premade-routine-modal{max-width:760px}.premade-routine-modal .routine-details-header{margin-bottom:16px}.premade-routine-modal .routine-details-steps-scroll{max-height:420px}.premade-routine-actions{display:flex;justify-content:center;gap:10px;margin-top:20px}.premade-routine-error{margin-top:14px}.routine-player-overlay{padding:24px}.routine-player-modal{--routine-player-accent: var(--accent);max-width:620px;min-height:min(84vh,760px);padding:28px 28px 24px;display:flex;flex-direction:column;align-items:stretch;gap:24px;border-color:color-mix(in srgb,var(--routine-player-accent),rgba(255,255,255,.18) 72%);background:linear-gradient(145deg,color-mix(in srgb,var(--routine-player-accent),transparent 92%),#ffffff08 22%,#ffffff04),radial-gradient(circle at top center,color-mix(in srgb,var(--routine-player-accent),transparent 84%) 0%,transparent 46%),linear-gradient(180deg,color-mix(in srgb,var(--routine-player-accent),transparent 95%),#101426c7 34%,#0b0e1cd6);box-shadow:0 18px 50px #0000006b,0 0 0 1px color-mix(in srgb,var(--routine-player-accent),transparent 86%),0 0 36px color-mix(in srgb,var(--routine-player-accent),transparent 90%);backdrop-filter:blur(24px) saturate(145%);-webkit-backdrop-filter:blur(24px) saturate(145%);overflow:hidden;position:relative;isolation:isolate}.routine-player-modal:before{content:"";position:absolute;inset:-12% -18% auto;height:68%;background:radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--routine-player-accent),transparent 62%) 0%,color-mix(in srgb,var(--routine-player-accent),transparent 84%) 28%,transparent 78%);opacity:.95;pointer-events:none;z-index:0}.routine-player-modal>*{position:relative;z-index:1}.routine-player-shell{flex:1;min-height:0;display:grid;grid-template-rows:minmax(96px,auto) minmax(0,1fr) minmax(148px,auto);align-items:start;justify-items:center;gap:0;padding:8px 0 0}.routine-player-routine-name{margin:0;font-size:28px;font-weight:700;color:var(--text-primary);text-align:center}.routine-player-step-header{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:320px;min-height:96px;justify-content:flex-end;padding-bottom:10px;position:relative}.routine-player-close-button{position:absolute;top:0;right:0;width:48px;height:48px;padding:0!important;border-radius:16px!important}.routine-player-emoji{font-size:42px;line-height:1}.routine-player-emoji-placeholder{visibility:hidden}.routine-player-step-name{margin:0;font-size:28px;font-weight:700;color:var(--text-primary);text-align:center}.routine-player-main{width:100%;display:flex;align-items:center;justify-content:center;min-height:0;padding-bottom:6px}.routine-player-circle{position:relative;width:224px;height:224px;overflow:visible}.routine-player-circle:before{content:"";position:absolute;inset:-20%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--routine-player-accent),transparent 86%) 0%,color-mix(in srgb,var(--routine-player-accent),transparent 90%) 36%,transparent 74%);box-shadow:0 0 42px color-mix(in srgb,var(--routine-player-accent),transparent 88%),0 0 84px color-mix(in srgb,var(--routine-player-accent),transparent 94%);filter:blur(18px);opacity:.95;pointer-events:none;z-index:0}.routine-player-circle svg{width:100%;height:100%;display:block;transform:rotate(-90deg);position:relative;z-index:1}.routine-player-circle-track{stroke:color-mix(in srgb,var(--routine-player-accent),transparent 85%)}.routine-player-circle-progress{stroke:var(--routine-player-accent);transition:stroke-dashoffset .9s linear}.routine-player-circle-progress-finished{stroke:#65d58a}.routine-player-circle-content{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:18px;z-index:1}.routine-player-timer-text-wrap{display:flex;flex-direction:column;align-items:center;gap:8px}.routine-player-timer-label{font-size:18px;font-weight:600;color:color-mix(in srgb,var(--text-primary),transparent 10%)}.routine-player-timer-value{font-size:34px;font-weight:700;color:var(--text-primary)}.routine-player-footer{width:100%;min-height:136px;display:flex;align-items:flex-start;justify-content:center}.routine-player-controls-stack{width:100%;display:flex;flex-direction:column;align-items:center;gap:18px;flex-shrink:0}.routine-player-controls{width:100%;display:flex;align-items:flex-start;justify-content:center;gap:14px}.routine-player-control-button{padding:0!important;display:inline-flex;align-items:center;justify-content:center;border-radius:18px!important;flex:0 0 auto}.routine-player-control-button-side{width:56px;height:56px;background:linear-gradient(180deg,color-mix(in srgb,var(--routine-player-accent),transparent 91%),#ffffff06);border-color:color-mix(in srgb,var(--routine-player-accent),transparent 76%);box-shadow:inset 0 1px #ffffff12,0 0 18px color-mix(in srgb,var(--routine-player-accent),transparent 92%)}.routine-player-control-button-main{width:72px;height:72px;margin-top:-8px;border-radius:22px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--routine-player-accent),#ffffff 12%),color-mix(in srgb,var(--routine-player-accent),#0d1020 18%));box-shadow:0 0 0 1px color-mix(in srgb,var(--routine-player-accent),transparent 66%),0 0 22px color-mix(in srgb,var(--routine-player-accent),transparent 84%),inset 0 1px #ffffff24}.routine-player-control-button:disabled{opacity:.34;cursor:not-allowed;box-shadow:none;transform:none!important}.routine-player-next{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;color:color-mix(in srgb,var(--text-primary),transparent 28%);min-height:54px;justify-content:flex-start;padding-top:6px}.routine-player-next-empty{visibility:hidden}.routine-player-next-label{font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.routine-player-next-value{font-size:18px;font-weight:600;color:color-mix(in srgb,var(--text-primary),transparent 18%)}.routine-player-actions{width:100%;display:flex;justify-content:center;gap:12px}.routine-player-actions-single{justify-content:center}.routine-player-action-button{min-width:132px;display:inline-flex;align-items:center;justify-content:center;gap:8px}.routine-player-finish-button{min-width:0;width:72px;height:72px;margin-top:-8px;background:linear-gradient(180deg,color-mix(in srgb,var(--routine-player-accent),#ffffff 12%),color-mix(in srgb,var(--routine-player-accent),#0d1020 18%))}.routine-player-finish-slot{width:100%;min-height:136px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:0;gap:18px}.routine-player-finish-copy{visibility:visible}.routine-player-finished-wrap{position:relative;width:260px;height:260px;display:grid;place-items:center;align-self:center}.routine-confetti{position:absolute;inset:0;pointer-events:none}.routine-confetti-piece{position:absolute;width:10px;height:16px;border-radius:4px;opacity:0;left:50%;top:50%;transform:translate(-50%,-50%)}.confetti-1{background:#7c5cff;animation:confetti-1 1.1s ease-out forwards}.confetti-2{background:#65d58a;animation:confetti-2 1.05s ease-out forwards}.confetti-3{background:#ffd166;animation:confetti-3 1s ease-out forwards}.confetti-4{background:#ff7aa2;animation:confetti-4 1.15s ease-out forwards}.confetti-5{background:#6ecbff;animation:confetti-5 1.1s ease-out forwards}.confetti-6{background:#b392ff;animation:confetti-6 1s ease-out forwards}.confetti-7{background:#65d58a;animation:confetti-7 1.08s ease-out forwards}.confetti-8{background:#ffd166;animation:confetti-8 1.12s ease-out forwards}.confetti-9{background:#ff7aa2;animation:confetti-9 1.04s ease-out forwards}.confetti-10{background:#6ecbff;animation:confetti-10 1.06s ease-out forwards}.confetti-11{background:#7c5cff;animation:confetti-11 1.1s ease-out forwards}.confetti-12{background:#65d58a;animation:confetti-12 1s ease-out forwards}.todo-list{display:flex;flex-direction:column;gap:10px}.todo-item{display:flex;align-items:center;gap:10px;color:var(--text-primary);font-size:var(--font-text)}.todo-item input{accent-color:var(--accent)}.routine-chips{display:flex;gap:10px;flex-wrap:wrap}.chip-button{background:#5d6db3;border-color:#7a8bd4;color:#fff;padding:8px 14px;border-radius:var(--radius-pill);font-size:var(--font-text)}.chip-button:hover{box-shadow:0 0 0 1px #8b7cff1a,0 0 16px #8b7cff29;transform:translateY(-1px)}.card-empty-state{min-height:220px;display:grid;place-items:center;text-align:center;color:var(--text-secondary);border:1px dashed rgba(139,124,255,.18);border-radius:var(--radius-lg);background:#ffffff03}.card-empty-state h3{margin:0 0 8px}.card-empty-state p{margin:0}.dashboard-habit-create-cta{width:100%;border:1px dashed rgba(255,255,255,.14);border-radius:18px;background:linear-gradient(180deg,#ffffff0a,#ffffff05);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 16px;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease,transform .2s ease,box-shadow .2s ease}.dashboard-habit-create-cta:hover{border-color:#8b7cff47;background:linear-gradient(180deg,#8b7cff14,#ffffff08);color:var(--text-primary);transform:translateY(-1px);box-shadow:0 8px 20px #00000029}.dashboard-habit-create-cta--empty{min-height:220px;flex-direction:column;gap:14px}.dashboard-habit-create-cta--inline{min-height:84px;flex-shrink:0}.dashboard-habit-create-cta-icon{width:42px;height:42px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff0f;color:inherit;flex-shrink:0}.dashboard-habit-create-cta-label{font-size:.95rem;font-weight:600;letter-spacing:.01em;color:inherit}.dashboard-error{margin:0 0 14px;color:#ffb7c5;font-size:var(--font-text)}.modal-overlay{position:fixed;inset:0;background:#0000009e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;z-index:1300;animation:modal-overlay-in .16s ease}.modal-card{width:100%;max-width:520px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px;padding:22px;box-shadow:0 18px 50px #0000006b,0 0 0 1px #8b7cff14;animation:modal-card-in .2s cubic-bezier(.22,1,.36,1)}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-card-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.habit-modal-card{--habit-accent: var(--accent);max-width:min(560px,100%);max-height:min(92vh,760px);border-color:color-mix(in srgb,var(--habit-accent),var(--border-subtle) 68%);background:linear-gradient(165deg,color-mix(in srgb,var(--habit-accent),transparent 90%),color-mix(in srgb,var(--bg-card),transparent 2%) 46%,color-mix(in srgb,var(--habit-accent),transparent 95%));box-shadow:0 20px 46px #00000070,0 0 0 1px color-mix(in srgb,var(--habit-accent),transparent 82%);display:flex;flex-direction:column;gap:12px;padding:18px;overflow:hidden}.habit-modal-card .modal-header{margin-bottom:0}.habit-modal-card .habit-form{flex:1 1 auto;min-height:0;gap:12px;overflow-y:auto;overflow-x:hidden;padding-right:2px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--habit-accent),var(--text-secondary) 56%) transparent}.habit-modal-card .habit-form::-webkit-scrollbar{width:8px}.habit-modal-card .habit-form::-webkit-scrollbar-track{background:transparent}.habit-modal-card .habit-form::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--habit-accent),transparent 52%);border-radius:999px}.habit-modal-card .habit-identity-row{grid-template-columns:minmax(0,1fr) 112px;align-items:end}.habit-modal-card .habit-goal-interval-row,.habit-modal-card .habit-measurable-interval-row,.habit-modal-card .reminder-row{grid-template-columns:repeat(2,minmax(0,1fr))}.habit-modal-card .habit-measurable-main-row{grid-template-columns:repeat(3,minmax(0,1fr))}.habit-modal-card #habit-emoji{text-align:center;padding:0 8px;font-size:1rem}.habit-modal-card .settings-select{width:100%;height:40px;border-radius:10px;padding:0 12px}.habit-modal-card .interval-switch-button{height:40px;font-size:.84rem;border-radius:10px}.habit-modal-card .reminder-config-group{padding:10px}.habit-modal-card .reminder-days-wrap{width:100%}.habit-modal-card .reminder-days-trigger{width:100%;min-height:40px;justify-content:space-between;gap:8px;padding:0 10px!important;border-radius:10px!important}.habit-modal-card .reminder-days-menu{top:auto;bottom:calc(100% + 8px);left:0;right:0;width:100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.habit-modal-card .reminder-day-button{min-height:32px;justify-content:center;padding:0!important;border-radius:8px!important;font-size:11px}.habit-modal-card .reminder-day-button.active{border-color:color-mix(in srgb,var(--habit-accent),transparent 44%)!important;background:color-mix(in srgb,var(--habit-accent),transparent 82%)!important;color:var(--text-primary)!important}.habit-modal-card .reminder-weekday-grid{gap:6px}.habit-modal-card .reminder-weekday-chip{min-height:32px;font-size:12px;padding:0 10px}.habit-modal-card .color-picker-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:6px}.habit-modal-card .color-picker-circle{width:30px;height:30px;aspect-ratio:auto;justify-self:center}.habit-modal-card .modal-actions{margin-top:2px;position:sticky;bottom:0;padding-top:8px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg-card),transparent 8%) 32%)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.habit-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row-single{grid-template-columns:minmax(0,1fr)}.form-row-triple{grid-template-columns:repeat(3,minmax(0,1fr))}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-secondary);font-size:var(--font-text)}.form-group input{width:100%;height:44px;border:1px solid var(--border-subtle);border-radius:12px;background:#ffffff08;color:var(--text-primary);padding:0 14px;outline:none}.form-group input:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.interval-switch{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.habit-type-switch{grid-template-columns:repeat(2,minmax(0,1fr))}.interval-switch-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.interval-switch-measurable{grid-template-columns:repeat(3,minmax(0,1fr))}.interval-switch-button{height:44px;border-radius:12px;border:1px solid var(--border-subtle);background:#ffffff08;color:var(--text-secondary);transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease,transform .15s ease}.interval-switch-button:hover{background:#ffffff0f;color:var(--text-primary);transform:translateY(-1px)}.interval-switch-button.active{background:var(--accent-soft);color:var(--text-primary);border-color:#8b7cff61;box-shadow:0 0 0 1px #8b7cff1f}.form-preview{margin:0;color:var(--text-secondary);font-size:var(--font-text)}.form-static-pill{min-height:44px;border:1px solid var(--border-subtle);border-radius:12px;background:#ffffff08;color:var(--text-primary);display:flex;align-items:center;padding:0 14px}.habit-interval-group .form-preview{margin-top:2px}.habit-measurable-interval-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}@media(max-width:768px){.modal-overlay{padding:calc(env(safe-area-inset-top,0px) + 14px) 14px calc(var(--mobile-bottom-nav-height, 64px) + 14px) 14px}.modal-card{max-height:min(90vh,780px);overflow-y:auto}.form-row,.form-row-single,.form-row-triple{grid-template-columns:minmax(0,1fr)}.habit-modal-card{max-height:min(94vh,760px);border-radius:18px;padding:14px;gap:10px}.habit-modal-card .habit-identity-row{grid-template-columns:minmax(0,1fr) 92px;gap:10px}.habit-modal-card .habit-goal-interval-row,.habit-modal-card .habit-measurable-interval-row,.habit-modal-card .reminder-row{grid-template-columns:repeat(2,minmax(0,1fr))}.habit-modal-card .habit-measurable-main-row{grid-template-columns:repeat(3,minmax(0,1fr))}.habit-modal-card .form-group input{height:40px;border-radius:10px;padding:0 12px}.habit-modal-card .settings-select{height:36px;border-radius:9px;padding:0 10px}.habit-modal-card .interval-switch-button{height:36px;font-size:.78rem;border-radius:9px}.habit-modal-card .color-picker-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.habit-modal-card .color-picker-circle{width:26px;height:26px}.habit-modal-card .reminder-days-trigger{min-height:36px;border-radius:9px!important}.habit-modal-card .reminder-days-menu{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:5px}.habit-modal-card .reminder-day-button{min-height:30px;border-radius:7px!important;font-size:10.5px}}.reminder-config-group{border:1px solid var(--border-subtle);border-radius:14px;padding:12px;background:#ffffff05}.habit-value-modal{width:min(460px,100%)}.habit-value-close-button{width:38px;height:38px;min-width:38px;min-height:38px;padding:0}.reminder-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.reminder-section-label{color:var(--text-primary);font-size:var(--font-text);font-weight:600}.reminder-switch{position:relative;display:inline-block;width:44px;height:24px}.reminder-switch input{opacity:0;width:0;height:0}.reminder-switch-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--surface-overlay-soft);transition:.3s;border-radius:24px;border:1px solid var(--border-subtle)}.reminder-switch-slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.reminder-switch input:checked+.reminder-switch-slider{background-color:var(--accent);border-color:var(--accent)}.reminder-switch input:focus+.reminder-switch-slider{box-shadow:0 0 1px var(--accent)}.reminder-switch input:checked+.reminder-switch-slider:before{transform:translate(20px)}.reminder-weekday-grid{display:flex;flex-wrap:wrap;gap:8px}.reminder-weekday-chip{min-height:34px;padding:0 10px;border-radius:10px;border:1px solid var(--border-subtle);background:var(--surface-overlay-soft);color:var(--text-secondary);font-size:12px;font-weight:600;transition:border-color .18s ease,background .18s ease,color .18s ease}.reminder-weekday-chip.active{border-color:color-mix(in srgb,var(--accent),transparent 35%);background:color-mix(in srgb,var(--accent-soft),var(--surface-overlay-soft) 34%);color:var(--text-primary)}.reminder-inline-actions{display:flex;justify-content:flex-end}.routine-theme-card,.routine-frequency-card,.routine-reminder-card{margin-top:12px;border:1px solid color-mix(in srgb,var(--routine-accent),transparent 78%);border-radius:14px;padding:14px;background:color-mix(in srgb,var(--routine-accent),transparent 94%);display:flex;flex-direction:column;gap:12px}.routine-theme-card{margin-top:0}.routine-settings-modal{--routine-accent: var(--accent);--accent-soft: color-mix(in srgb, var(--routine-accent), transparent 86%);--accent-hover: color-mix(in srgb, var(--routine-accent), #ffffff 10%);max-width:680px;max-height:min(88vh,820px);overflow-y:auto;border:1px solid color-mix(in srgb,var(--routine-accent),var(--border-subtle) 70%);background:linear-gradient(165deg,color-mix(in srgb,var(--routine-accent),transparent 93%) 0%,var(--bg-card) 40%,color-mix(in srgb,var(--routine-accent),transparent 95%) 100%);box-shadow:0 24px 42px #0000006b,0 0 0 1px color-mix(in srgb,var(--routine-accent),transparent 84%)}.routine-settings-header-copy{min-width:0}.routine-settings-header-actions{display:flex;align-items:center;gap:8px}.routine-settings-delete-button{border-color:#ff6e6e57!important;background:#ff6e6e14!important;color:#ff8f8f!important;box-shadow:inset 0 0 0 1px #ff6e6e0f,0 10px 24px #0000002e}.routine-settings-delete-button:hover{border-color:#ff6e6e6b!important;background:#ff6e6e1f!important;color:#ff9d9d!important}.routine-settings-subtitle{margin:8px 0 0}.routine-settings-body{display:flex;flex-direction:column;gap:12px}.routine-settings-body>.routine-theme-card,.routine-settings-body>.routine-frequency-card,.routine-settings-body>.routine-reminder-card{margin-top:0}.routine-reminder-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.routine-reminder-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.routine-reminder-fields-row{display:flex;align-items:flex-start;gap:12px}.routine-reminder-field{flex:1 1 50%;min-width:0}.routine-reminder-days-wrap{width:100%}.routine-reminder-days-trigger{width:100%;min-height:44px;justify-content:space-between;gap:8px;padding:0 12px!important;border-radius:12px!important}.routine-reminder-days-menu{top:auto;bottom:calc(100% + 8px);left:0;right:0;width:100%;min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.routine-reminder-day-button{min-height:36px;justify-content:center;padding:0!important;border-radius:9px!important;font-size:12px}.routine-reminder-day-button.active{border-color:color-mix(in srgb,var(--routine-accent),transparent 44%)!important;background:color-mix(in srgb,var(--routine-accent),transparent 82%)!important;color:var(--text-primary)!important}.color-picker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:10px}.color-picker-circle{width:100%;aspect-ratio:1;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;padding:0}.color-picker-circle.active{border-color:#fff;transform:scale(1.08);box-shadow:0 0 10px #00000073}.color-picker-circle:hover{transform:scale(1.08)}.premium-color-control{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:14px;padding:14px 15px;border:1px solid color-mix(in srgb,var(--accent),transparent 74%);border-radius:18px;background:linear-gradient(155deg,color-mix(in srgb,var(--accent),transparent 92%),#0d121cf0);box-shadow:inset 0 1px #ffffff08,0 14px 30px #00000038}.premium-color-control-active{border-color:color-mix(in srgb,var(--accent),transparent 48%);box-shadow:inset 0 1px #ffffff0a,0 0 0 1px color-mix(in srgb,var(--accent),transparent 82%),0 14px 30px #0000003d}.premium-color-control-locked{cursor:pointer;text-align:left}.premium-color-control-copy{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.premium-color-control-copy strong{color:var(--text-primary);font-size:14px}.premium-color-control-copy span{color:var(--text-secondary);font-size:12px;line-height:1.45}.premium-color-control-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}.premium-color-control-swatch{width:18px;height:18px;border-radius:999px;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 0 4px #ffffff0a,0 10px 18px #00000047}.premium-color-control-wheel{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent),transparent 56%);background:color-mix(in srgb,var(--accent-soft),transparent 28%);color:var(--text-primary);font-size:12px;font-weight:600}.premium-color-control-wheel input{width:34px;height:34px;padding:0;border:none;background:transparent;cursor:pointer}.premium-color-control-wheel input::-webkit-color-swatch-wrapper{padding:0}.premium-color-control-wheel input::-webkit-color-swatch{border:1px solid rgba(255,255,255,.18);border-radius:10px}.premium-color-control-wheel input::-moz-color-swatch{border:1px solid rgba(255,255,255,.18);border-radius:10px}.premium-color-code{color:var(--text-secondary);font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.04em}.premium-color-lock-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent),transparent 56%);background:color-mix(in srgb,var(--accent-soft),transparent 36%);color:var(--text-primary);font-size:12px;font-weight:700;flex-shrink:0}.routine-color-picker-grid{max-width:420px}.routine-theme-help{margin:0}.form-error{margin:0;color:#ffb7c5;font-size:var(--font-text)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.settings-card{width:100%;max-width:none;margin:0;flex:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden}.settings-card.settings-card-expanded{max-width:none;width:100%;height:100%;min-height:0}.settings-page{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:clamp(16px,1.8vw,24px);overflow:hidden}.settings-shell{display:grid;grid-template-columns:minmax(250px,310px) minmax(0,1fr);gap:20px;flex:1;min-width:0;min-height:0;overflow:hidden}.settings-sidebar-card,.settings-detail-card{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column}.settings-sidebar-card{padding:18px;gap:18px;overflow:hidden}.settings-sidebar-header,.settings-mobile-list-header,.settings-detail-header-copy{display:flex;flex-direction:column;gap:6px}.settings-sidebar-header{margin-bottom:0}.settings-sidebar-nav{flex:1;min-height:0;display:flex;flex-direction:column;gap:12px}.settings-nav-list,.settings-mobile-list{display:flex;flex-direction:column;gap:8px;min-height:0;padding-top:2px}.settings-nav-list{overflow-y:auto;padding-right:4px}.settings-mobile-list{flex:1;overflow-y:auto;padding-right:4px}.settings-mobile-delete-item{margin-top:auto}.settings-nav-list,.settings-mobile-list,.settings-detail-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent),var(--text-secondary) 58%) transparent}.settings-nav-list::-webkit-scrollbar,.settings-mobile-list::-webkit-scrollbar,.settings-detail-scroll::-webkit-scrollbar{width:10px}.settings-nav-list::-webkit-scrollbar-track,.settings-mobile-list::-webkit-scrollbar-track,.settings-detail-scroll::-webkit-scrollbar-track{background:transparent;border-radius:999px}.settings-nav-list::-webkit-scrollbar-thumb,.settings-mobile-list::-webkit-scrollbar-thumb,.settings-detail-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),transparent 36%),color-mix(in srgb,var(--accent),var(--text-secondary) 52%));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.settings-nav-list::-webkit-scrollbar-thumb:hover,.settings-mobile-list::-webkit-scrollbar-thumb:hover,.settings-detail-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),transparent 20%),color-mix(in srgb,var(--accent),var(--text-primary) 44%));border-radius:999px;border:2px solid transparent;background-clip:padding-box}.settings-nav-item{width:100%;border:1px solid var(--border-subtle);border-radius:18px;background:var(--surface-overlay-soft);color:var(--text-primary);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .16s ease}.settings-nav-item:hover{border-color:color-mix(in srgb,var(--accent),transparent 38%);background:var(--surface-overlay);transform:translateY(-1px)}.settings-nav-item.active{border-color:color-mix(in srgb,var(--accent),transparent 18%);background:color-mix(in srgb,var(--accent-soft),var(--surface-overlay-soft) 34%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 76%),0 10px 22px #0000002e}.settings-nav-item-danger{border-color:#ff828238}.settings-nav-item-danger:hover,.settings-nav-item-danger.active{border-color:#ff828261;background:#ff6b6b14}.settings-mobile-delete-item,.settings-sidebar-delete-item{margin-top:auto}.settings-nav-item-copy{min-width:0;display:flex;flex-direction:column;gap:4px}.settings-nav-item-title{font-size:15px;font-weight:700;line-height:1.2}.settings-nav-item-summary{color:var(--text-secondary);font-size:12px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-nav-chevron{flex-shrink:0;opacity:.72}.settings-nav-item.active .settings-nav-chevron{opacity:1}.settings-sidebar-footer,.settings-mobile-actions{display:flex;flex-direction:column;gap:12px}.settings-mobile-actions{flex-shrink:0;padding-top:10px;border-top:1px solid var(--divider)}.settings-sidebar-footer{padding-top:14px;border-top:1px solid var(--divider)}.settings-sidebar-footer .secondary-button,.settings-mobile-actions .secondary-button,.settings-mobile-actions .primary-button{width:100%}.settings-detail-card{padding:0;overflow:hidden}.settings-detail-toolbar{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px 12px;background:linear-gradient(180deg,var(--bg-card) 80%,color-mix(in srgb,var(--bg-card),transparent 100%) 100%)}.settings-detail-toolbar-copy{min-width:0;min-height:20px;display:flex;align-items:center}.settings-detail-toolbar-save{display:flex;align-items:center;gap:12px;margin-left:auto}.settings-detail-header{padding:0 20px 14px;border-bottom:1px solid var(--divider)}.settings-detail-header-desktop{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-top:18px}.settings-detail-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:46px;flex-shrink:0}.settings-save-button-hidden{visibility:hidden;pointer-events:none}.settings-detail-scroll{flex:1;min-height:0;overflow-y:auto;padding:18px 20px 20px}.settings-detail-scroll-no-scroll{overflow:hidden}.settings-section-panel{border-top:none;padding-top:0;gap:16px}.settings-delete-section-panel{border:1px solid rgba(255,130,130,.22);border-radius:18px;padding:16px;background:linear-gradient(165deg,#ff5c781a,#1e101633)}.settings-mobile-shell{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.settings-mobile-list-card{flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;overflow:hidden}.settings-detail-card-mobile{height:auto}.settings-mobile-back-button{min-width:0}.settings-mobile-actions-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}.settings-mobile-actions-row .secondary-button{width:100%;min-width:0;justify-content:center}.settings-header{margin-bottom:22px}.settings-sections-grid{display:flex;flex-direction:column;gap:16px}.settings-floating-save{position:sticky;top:0;z-index:12;display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:4px 0 12px;margin-bottom:4px;background:linear-gradient(180deg,var(--bg-card) 78%,color-mix(in srgb,var(--bg-card),transparent 100%) 100%)}.settings-section{display:flex;flex-direction:column;gap:16px;padding-top:14px;border-top:1px solid var(--divider)}.settings-section:first-of-type{border-top:none;padding-top:0}.simple-settings-group{display:flex;flex-direction:column;gap:10px}.settings-label{color:var(--text-primary);font-size:var(--font-text);font-weight:600}.simple-settings-input-row{display:flex;align-items:center;gap:10px}.settings-number-input{width:110px;height:46px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-overlay);color:var(--text-primary);padding:0 14px;outline:none;font-size:16px}.settings-number-input:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.settings-input-suffix{color:var(--text-secondary);font-size:16px}.settings-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.settings-actions-spread{justify-content:space-between}.settings-saved-message{color:#b9f4c7;font-size:var(--font-text)}.settings-top-toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:50%;transform:translate(-50%);z-index:1400;width:min(calc(100vw - 28px),320px);padding:12px 16px;border-radius:16px;border:1px solid rgba(132,255,185,.22);background:linear-gradient(180deg,#20342bf5,#111e19f5);color:#dfffe8;text-align:center;font-size:14px;font-weight:600;box-shadow:0 18px 34px #00000047,0 0 24px #6effac1f;animation:settings-top-toast-in .22s cubic-bezier(.22,1,.36,1)}.app-top-toast{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:50%;transform:translate(-50%);z-index:1700;width:min(calc(100vw - 28px),360px);padding:12px 16px;border-radius:16px;border:1px solid rgba(132,255,185,.22);background:linear-gradient(180deg,#20342bf5,#111e19f5);color:#dfffe8;text-align:center;font-size:14px;font-weight:600;line-height:1.35;box-shadow:0 18px 34px #00000047,0 0 24px #6effac1f;animation:settings-top-toast-in .22s cubic-bezier(.22,1,.36,1)}.settings-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}.settings-select,.settings-time-input{width:100%;height:44px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-overlay);color:var(--text-primary);padding:0 12px;outline:none}.settings-select{color-scheme:dark}:root[data-theme=light] .settings-select{color-scheme:light}.settings-select option{background-color:var(--bg-card);color:var(--text-primary)}.settings-select:focus,.settings-time-input:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.settings-toggle-row{display:flex;align-items:center;gap:10px;min-height:44px;border:1px solid var(--border-subtle);border-radius:12px;padding:10px 12px;color:var(--text-primary);background:var(--surface-overlay-soft);font-size:var(--font-text)}.settings-toggle-row-with-info{position:relative;justify-content:space-between;gap:12px;overflow:visible}.settings-toggle-main{flex:1;min-width:0;display:flex;align-items:center;gap:10px;cursor:pointer}.settings-toggle-row input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;margin:0}.settings-toggle-label{flex:1;min-width:0}.settings-info-wrap{position:static;display:inline-flex;align-items:center}.settings-info-icon{width:18px;height:18px;min-width:18px;padding:0;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent),transparent 52%);background:color-mix(in srgb,var(--accent-soft),transparent 36%);color:var(--text-secondary);font-size:11px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;cursor:pointer;transition:border-color .08s ease,color .08s ease,box-shadow .08s ease,background .08s ease}.settings-info-icon:hover,.settings-info-icon:focus-visible{border-color:color-mix(in srgb,var(--accent),transparent 26%);color:var(--text-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 86%);outline:none}.settings-info-tooltip{position:absolute;left:12px;right:12px;bottom:calc(100% + 8px);width:auto;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);font-size:12px;line-height:1.35;padding:8px 10px;box-shadow:0 10px 26px #00000057,0 0 0 1px #8b7cff14;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .08s ease,transform .08s ease;z-index:30}.settings-info-wrap:hover .settings-info-tooltip,.settings-info-wrap:focus-within .settings-info-tooltip{opacity:1;transform:translateY(0)}.settings-range{width:100%;accent-color:var(--accent)}.settings-accent-group{grid-column:1 / -1}.settings-accent-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:8px}.settings-accent-button{border:1px solid var(--border-subtle);border-radius:12px;min-height:40px;padding:8px 10px;background:var(--surface-overlay-soft);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease,transform .16s ease}.settings-accent-button:hover{border-color:color-mix(in srgb,var(--accent),transparent 35%);background:var(--surface-overlay);transform:translateY(-1px)}.settings-accent-button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft),var(--surface-overlay-soft) 42%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 74%)}.settings-accent-dot{width:14px;height:14px;border-radius:999px;box-shadow:0 0 0 2px #ffffff14;flex-shrink:0}.pro-settings-card{display:flex;flex-direction:column;gap:18px;padding:22px;border-radius:24px;border:1px solid color-mix(in srgb,var(--accent),transparent 72%);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent),transparent 84%),transparent 34%),linear-gradient(160deg,#080b12fa,#0e1521f0);box-shadow:inset 0 1px #ffffff0a,0 22px 46px #00000047}.pro-settings-card-premium{border-color:color-mix(in srgb,var(--accent),transparent 58%);background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent),transparent 82%),transparent 30%),radial-gradient(circle at bottom left,rgba(255,255,255,.03),transparent 38%),linear-gradient(160deg,#05080efc,#0a101cf5);box-shadow:inset 0 1px #ffffff0d,0 28px 60px #00000057,0 0 0 1px color-mix(in srgb,var(--accent),transparent 86%)}.pro-settings-hero{display:flex;flex-direction:column;gap:10px}.pro-settings-badge{align-self:flex-start;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent),transparent 54%);background:color-mix(in srgb,var(--accent-soft),transparent 24%);color:var(--text-primary);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.pro-settings-copy{max-width:620px;margin:0}.pro-settings-benefits{display:grid;gap:12px}.pro-settings-success-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.pro-settings-success-card{display:flex;align-items:flex-start;gap:12px;padding:16px 16px 17px;border-radius:20px;border:1px solid color-mix(in srgb,var(--accent),transparent 78%);background:linear-gradient(180deg,#ffffff0b,#ffffff05);box-shadow:inset 0 1px #ffffff0a,0 10px 24px #0000002e}.pro-settings-success-card>div{display:flex;flex-direction:column;gap:4px}.pro-settings-success-card strong{color:var(--text-primary);font-size:14px}.pro-settings-success-card span{color:var(--text-secondary);font-size:13px;line-height:1.5}.pro-settings-success-mark{width:28px;height:28px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-primary);font-size:15px;font-weight:700;border:1px solid color-mix(in srgb,var(--accent),transparent 58%);background:color-mix(in srgb,var(--accent-soft),transparent 28%);box-shadow:0 0 18px color-mix(in srgb,var(--accent),transparent 80%)}.pro-settings-benefit{display:flex;flex-direction:column;gap:4px;padding:14px 15px;border-radius:18px;border:1px solid rgba(255,255,255,.05);background:#ffffff08}.pro-settings-benefit strong{color:var(--text-primary);font-size:14px}.pro-settings-benefit span{color:var(--text-secondary);font-size:13px;line-height:1.5}.pro-settings-meta{display:flex;flex-wrap:wrap;gap:10px}.pro-settings-secondary{display:flex;flex-direction:column;gap:10px}.pro-settings-secondary-label{color:var(--text-tertiary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pro-settings-meta-pill{min-width:108px;padding:10px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.05);background:#ffffff08;display:flex;flex-direction:column;gap:4px}.pro-settings-meta-pill span{color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.pro-settings-meta-pill strong{color:var(--text-primary);font-size:14px}.pro-settings-dev-note{margin:0;color:#b9f4c7;font-size:13px}.pro-settings-thankyou{display:flex;flex-direction:column;gap:4px;padding-top:4px;border-top:1px solid rgba(255,255,255,.06)}.pro-settings-thankyou-title{margin:0;color:var(--text-primary);font-size:14px;font-weight:600}.pro-settings-thankyou-copy{margin:0}.pro-settings-thankyou-copy-muted{color:var(--text-tertiary);font-size:12px}.pro-paywall-modal{position:relative;max-width:min(560px,100%);overflow:hidden;border-color:color-mix(in srgb,var(--accent),transparent 66%);background:linear-gradient(165deg,#060910fa,#0a101cf2);box-shadow:0 26px 60px #00000075,0 0 0 1px color-mix(in srgb,var(--accent),transparent 82%)}.pro-paywall-backdrop{position:absolute;inset:0;background:radial-gradient(circle at top right,color-mix(in srgb,var(--accent),transparent 82%),transparent 34%),radial-gradient(circle at bottom left,color-mix(in srgb,#65d58a,transparent 88%),transparent 30%);pointer-events:none}.pro-paywall-header,.pro-paywall-footer{position:relative;z-index:1}.pro-paywall-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.pro-paywall-copy{display:flex;flex-direction:column;gap:8px}.pro-paywall-eyebrow{color:#c9f9d8;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.pro-paywall-description,.pro-paywall-note{margin:0}.pro-paywall-benefits{position:relative;z-index:1;display:grid;gap:12px;margin-top:20px}.pro-paywall-benefit{display:flex;align-items:flex-start;gap:12px;padding:14px 15px;border-radius:18px;border:1px solid rgba(255,255,255,.05);background:#ffffff08}.pro-paywall-benefit>div{display:flex;flex-direction:column;gap:4px}.pro-paywall-benefit strong{color:var(--text-primary);font-size:14px}.pro-paywall-benefit span{color:var(--text-secondary);font-size:13px;line-height:1.45}.pro-paywall-benefit-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:color-mix(in srgb,var(--accent-soft),transparent 20%);color:var(--text-primary);font-size:15px;font-weight:700;flex-shrink:0}.pro-paywall-footer{margin-top:18px;display:flex;flex-direction:column;gap:14px}.pro-paywall-actions{justify-content:flex-end}.settings-time-row{display:flex;align-items:center;gap:10px}.settings-backup-group{justify-content:flex-start}.settings-hidden-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.settings-backup-status{margin:0;color:#b9f4c7;font-size:var(--font-text)}.settings-support-link{color:var(--accent);text-decoration:none;width:fit-content}.settings-support-link:hover{text-decoration:underline}.settings-support-input,.settings-support-textarea{width:100%;border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-overlay);color:var(--text-primary);padding:10px 12px;outline:none}.settings-support-input{height:44px}.settings-support-textarea{min-height:120px;max-height:clamp(160px,34vh,260px);resize:vertical;overflow-y:auto;line-height:1.4}.settings-support-message-textarea{min-height:176px;height:176px;max-height:176px;resize:none;overscroll-behavior:contain}.settings-delete-textarea{resize:none}.settings-support-input:focus,.settings-support-textarea:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.settings-delete-section{border-top-color:#ff828242}.settings-delete-error{margin:0;color:#ffb7c5;font-size:var(--font-text)}.settings-delete-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:#0508128f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.settings-delete-dialog{width:min(100%,460px);border-radius:20px;border:1px solid rgba(255,120,120,.36);background:linear-gradient(165deg,#ff587438,#220c14f0 60%,#180a10f5);box-shadow:0 20px 46px #00000080,0 0 0 1px #ff787829,0 0 34px #ff587433;padding:20px;display:flex;flex-direction:column;gap:14px}.settings-delete-dialog .section-title{color:#ffd9dc}.settings-delete-dialog .text-secondary{color:#ffc4cd}.settings-delete-dialog-actions{justify-content:center}.settings-reset-dialog{border-color:#78a2ff4d;background:linear-gradient(165deg,#4a76ff29,#141a30f0 44%,#080c18fa)}.settings-reset-dialog .section-title{color:#edf3ff}.settings-reset-dialog .text-secondary{color:#dae4fbc7}@keyframes settings-top-toast-in{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.reminder-battery-hint-modal{width:min(440px,calc(100vw - 32px));padding:20px}.reminder-battery-hint-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.reminder-battery-hint-copy{margin:0;line-height:1.5}.reminder-battery-hint-actions{margin-top:20px;justify-content:flex-end}.settings-success-toast{position:fixed;top:14px;left:50%;z-index:1300;transform:translate(-50%,-140%);min-width:240px;max-width:min(92vw,420px);border-radius:14px;border:1px solid rgba(130,255,180,.42);background:linear-gradient(165deg,#5ae68cf0,#189958f2);color:#f3fff7;font-size:var(--font-text);font-weight:600;text-align:center;padding:12px 16px;box-shadow:0 14px 28px #00000052,0 0 0 1px #a2ffc333,0 0 22px #5cf5994d;pointer-events:none;animation:settings-toast-slide-in-out 3s ease forwards}@keyframes settings-toast-slide-in-out{0%{opacity:0;transform:translate(-50%,-140%)}12%{opacity:1;transform:translate(-50%)}82%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-140%)}}.settings-time-separator{color:var(--text-secondary);font-size:var(--font-text)}@media(max-width:900px){.settings-page{padding:16px}.settings-shell{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:16px}.settings-floating-save{flex-direction:column;align-items:stretch;gap:8px}.settings-floating-save .settings-saved-message{text-align:right}.settings-floating-save .primary-button{width:100%}.settings-grid-two{grid-template-columns:1fr}.settings-accent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-actions-spread{flex-direction:column;align-items:stretch}.settings-detail-toolbar,.settings-detail-header,.settings-detail-scroll{padding-left:16px;padding-right:16px}}@media(min-width:1200px)and (min-height:700px){.settings-card{overflow:hidden}.settings-header{margin-bottom:12px}.settings-floating-save{padding:2px 0 8px;margin-bottom:2px}.settings-sections-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-content:start}.settings-section{border:1px solid var(--border-subtle);border-radius:12px;background:var(--surface-overlay-soft);border-top:1px solid var(--border-subtle);padding:10px;gap:10px}.settings-section:first-of-type{border-top:1px solid var(--border-subtle);padding-top:10px}.settings-section .section-title{font-size:20px}.simple-settings-group{gap:8px}.settings-label{font-size:14px}.settings-grid-two{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.settings-accent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-toggle-row{min-height:38px;padding:8px 10px;font-size:14px;gap:8px}.settings-number-input{width:92px;height:40px;padding:0 10px;font-size:14px}.settings-input-suffix{font-size:14px}.settings-select,.settings-time-input,.settings-support-input{height:40px;padding:0 10px;font-size:14px}.settings-time-row{gap:8px}.settings-time-separator{font-size:14px}.settings-actions-spread{margin-top:10px;padding-top:10px;border-top:1px solid var(--divider)}}@media(max-width:768px){.settings-support-section{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 18px)}.settings-support-message-textarea{min-height:220px;height:220px;max-height:220px}.settings-page{padding:calc(env(safe-area-inset-top,0px) + 8px) 14px calc(var(--mobile-bottom-nav-height, 64px) + 14px) 14px;overflow:hidden;background:#000}.settings-mobile-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.settings-mobile-list-card,.settings-detail-card-mobile{flex:1;min-height:0;overflow:hidden;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none}.settings-mobile-list-card{--settings-mobile-actions-reserve: 36px;gap:12px}.settings-mobile-list-header{flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-bottom:0;flex-shrink:0}.settings-mobile-list-header .main-title{font-size:1.55rem!important;line-height:1.06;letter-spacing:.01em;font-weight:760;color:#f5f7ff}.settings-mobile-list-header .text-secondary{display:none}.settings-nav-item{padding:14px}.settings-nav-item-summary{white-space:normal}.settings-mobile-list{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:0;overflow:visible;margin-bottom:0;padding-bottom:0}.settings-mobile-list-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch}.settings-mobile-list-pair .settings-nav-item{min-height:66px;align-items:center}.settings-mobile-list-pair .settings-nav-item-summary{display:none}.settings-detail-toolbar-mobile{padding:14px 0 10px;flex-wrap:nowrap;background:#000}.settings-detail-toolbar-mobile .settings-detail-toolbar-save{min-width:0;min-height:46px;flex:1;justify-content:flex-end}.settings-detail-header{padding:0 0 12px}.settings-detail-scroll{overflow-y:auto;min-height:0;flex:1;padding:12px 0 0;overscroll-behavior-y:contain}.settings-detail-scroll.settings-detail-scroll-no-scroll{overflow:hidden!important;overscroll-behavior:none;scrollbar-width:none}.settings-detail-scroll.settings-detail-scroll-no-scroll::-webkit-scrollbar{display:none}.settings-mobile-actions{flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding-top:8px}.settings-card,.settings-card.settings-card-expanded{height:auto;min-height:0;overflow:visible}}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;padding:clamp(18px,3.2vw,38px) 16px;overflow:hidden;background:radial-gradient(circle at 14% 10%,rgba(68,165,255,.22),transparent 44%),radial-gradient(circle at 82% 14%,rgba(90,222,184,.16),transparent 42%),var(--bg-main)}.auth-gloom{position:absolute;border-radius:999px;pointer-events:none;filter:blur(38px);opacity:.84}.auth-gloom--one{width:min(44vw,520px);aspect-ratio:1;top:-20%;left:-10%;background:#5daaff38}.auth-gloom--two{width:min(38vw,460px);aspect-ratio:1;right:-10%;bottom:-16%;background:#5cdeba33}.auth-shell{width:min(1060px,100%);margin:0 auto;position:relative;z-index:1;display:grid;gap:16px}.auth-close-button{position:fixed;top:max(14px,env(safe-area-inset-top));right:16px;width:42px;height:42px;border-radius:12px;border:1px solid color-mix(in srgb,var(--border-subtle),#7bbdff 22%);background:color-mix(in srgb,var(--bg-card),rgba(69,150,255,.14) 30%);color:var(--text-primary);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;letter-spacing:.04em;z-index:50;transition:background .2s ease,border-color .2s ease,transform .16s ease,box-shadow .2s ease}.auth-close-button:hover{background:color-mix(in srgb,var(--accent-soft),rgba(114,181,255,.26) 34%);border-color:color-mix(in srgb,var(--accent),#7dc1ff 30%);box-shadow:0 10px 24px #00000042;transform:translateY(-1px)}.auth-panel,.auth-card{width:100%;border:1px solid var(--border-subtle);border-radius:24px;background:linear-gradient(155deg,#121c36eb,#0a1123e6),var(--bg-card);box-shadow:0 20px 44px #00000059}.auth-panel{display:grid;gap:12px;align-content:start;padding:24px}.auth-badge{display:inline-flex;align-items:center;justify-content:center;justify-self:start;padding:7px 12px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent-soft),rgba(54,154,255,.2) 36%);border:1px solid color-mix(in srgb,var(--accent),#67adff 24%);color:var(--text-primary);font-size:var(--font-small);font-weight:700;letter-spacing:.02em}.auth-panel-title{margin:0;font-size:clamp(30px,6vw,44px);line-height:1.06;letter-spacing:-.02em;max-width:16ch}.auth-panel-copy{margin:0;color:var(--text-secondary);line-height:1.58;max-width:55ch}.auth-benefits{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}.auth-benefit-item{position:relative;border:1px solid color-mix(in srgb,var(--border-subtle),#68afff 18%);border-radius:14px;padding:12px 14px 12px 34px;background:color-mix(in srgb,var(--surface-overlay),transparent 30%)}.auth-benefit-item:before{content:"";position:absolute;left:14px;top:17px;width:8px;height:8px;border-radius:999px;background:linear-gradient(180deg,#72e2ff,#5e9eff);box-shadow:0 0 0 3px #68afff29}.auth-benefit-item h3{margin:0;font-size:15px;line-height:1.35}.auth-benefit-item p{margin:6px 0 0;color:var(--text-secondary);font-size:var(--font-text);line-height:1.46}.auth-card{max-width:470px;justify-self:center;align-self:center;padding:30px 26px;text-align:center}.auth-card-kicker{margin:0;color:color-mix(in srgb,var(--text-secondary),#9ad2ff 34%);font-size:var(--font-small);font-weight:700;letter-spacing:.09em;text-transform:uppercase}.auth-title{margin:10px 0 0;font-size:clamp(29px,6vw,40px);line-height:1.08;letter-spacing:-.02em}.auth-card-copy{margin:12px 0 0;color:var(--text-secondary);line-height:1.58}.auth-button{width:100%;margin-top:22px;min-height:44px;font-weight:600}.auth-signup-button{min-height:52px;font-size:16px;font-weight:700}.auth-signin-button{width:100%;margin-top:10px;min-height:42px;font-weight:600}.auth-divider{margin:14px 0;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:var(--font-small);text-transform:uppercase;letter-spacing:.06em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:color-mix(in srgb,var(--border-subtle),#7cbfff 14%)}.auth-divider span{padding:0 12px}.auth-form{display:grid;gap:10px}.auth-field{display:grid;gap:6px;text-align:left}.auth-label{color:var(--text-secondary);font-size:var(--font-small);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.auth-input{width:100%;min-height:42px;border-radius:11px;border:1px solid color-mix(in srgb,var(--border-subtle),#74bcff 16%);background:color-mix(in srgb,var(--bg-main),#102244 10%);color:var(--text-primary);padding:0 12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.auth-input::placeholder{color:color-mix(in srgb,var(--text-muted),#9fcfff 16%)}.auth-input:focus{border-color:color-mix(in srgb,var(--accent),#7ec4ff 26%);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-soft),transparent 32%);background:color-mix(in srgb,var(--bg-main),#0f2346 14%)}.auth-email-actions{margin-top:4px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth-email-button{width:100%;min-height:40px;font-weight:600}.auth-error{margin:14px 0 0;border:1px solid rgba(255,130,130,.38);background:#6319195c;border-radius:12px;padding:10px 12px;color:#ffd8d8;font-size:var(--font-small);line-height:1.45}.auth-info{margin:14px 0 0;border:1px solid color-mix(in srgb,var(--accent),#8fe7ff 20%);background:color-mix(in srgb,var(--accent-soft),transparent 42%);border-radius:12px;padding:10px 12px;color:color-mix(in srgb,var(--text-primary),#9edfff 18%);font-size:var(--font-small);line-height:1.45}.auth-legal{margin:14px 0 0;color:var(--text-muted);font-size:var(--font-small);line-height:1.5}.auth-legal a{color:var(--text-secondary);text-decoration:none;font-weight:600}.auth-legal a:hover{color:var(--text-primary);text-decoration:underline}.auth-meta{margin:12px 0 0}.auth-secondary-link{color:var(--text-secondary);text-decoration:none;font-size:var(--font-small);font-weight:600}.auth-secondary-link:hover{color:var(--text-primary);text-decoration:underline}@media(max-width:959px){.auth-panel{order:2}.auth-card{order:1}}@media(min-width:960px){.auth-shell{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:22px}.auth-panel{padding:30px}.auth-card{justify-self:stretch;max-width:none;padding:34px 30px}.auth-close-button{top:18px;right:22px}}@media(max-width:620px){.auth-page{padding:16px 12px}.auth-panel,.auth-card{border-radius:20px}.auth-panel,.auth-card{padding:20px}.auth-panel-title{font-size:clamp(26px,9vw,34px)}.auth-email-actions{grid-template-columns:1fr}.auth-close-button{width:40px;height:40px;right:12px}}.loading-screen{min-height:100vh;display:grid;place-items:center;background:var(--bg-main);color:var(--text-primary);font-size:16px}.todo-drawer{--todo-handle-offset: -28px;position:relative;min-height:0;display:flex;flex-direction:column;overflow:visible;z-index:2}.todo-drawer.todo-drawer-open{--todo-handle-offset: -1px}.todo-inline-toggle,.todo-inline-toggle-open{position:absolute;left:50%;top:0;width:auto;height:auto;border:none;background:transparent;padding:0;z-index:30;transform:translate(-50%,var(--todo-handle-offset));overflow:visible;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .22s ease}@media(max-width:768px){.dashboard{display:flex!important;flex-direction:column!important;padding:76px 16px 40px!important;gap:24px!important;overflow-y:scroll!important;-webkit-overflow-scrolling:touch;height:100vh!important}.left-column,.right-column,.left-stack{display:contents!important}.dashboard .card{position:relative!important;width:100%!important;height:auto!important;min-height:auto!important;flex-shrink:0!important;margin:0!important;transform:none!important}.dashboard .momentum-card{order:1!important}.dashboard .habits-section{order:2!important;display:flex!important;max-height:none!important;min-height:0!important;height:auto!important}.dashboard .routines-card{order:3!important;position:static!important;margin-top:0!important}.dashboard .chart-card{order:4!important;min-height:380px!important;position:static!important;margin-top:0!important}.dashboard .todo-drawer{order:5!important;display:block!important;margin-top:10px!important;position:static!important;min-height:auto!important}.dashboard .habit-list{grid-template-columns:1fr!important}.dashboard .dashboard-habits-expand-button{width:100%}.section-title{font-size:20px!important}.dashboard .todo-inline-toggle,.dashboard .todo-inline-toggle-open{display:none!important}.dashboard .todo-drawer-panel{opacity:1!important;pointer-events:auto!important;transform:none!important;display:block!important;height:auto!important;min-height:500px}.dashboard .todo-panel{transform:none!important;opacity:1!important}}.todo-inline-toggle-pill{width:74px;height:28px;border-radius:16px 16px 0 0;border:1px solid var(--border-subtle);border-bottom:none;background:var(--bg-card);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #00000024,0 0 0 1px #8b7cff0f;transition:border-radius .32s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.todo-inline-toggle-pill.open{border-radius:0 0 16px 16px;border:1px solid var(--border-subtle);border-top:none;background:var(--bg-card);box-shadow:0 -6px 18px #00000024,0 0 0 1px #8b7cff0f}.todo-inline-chevron{width:11px;height:11px;border-right:2px solid var(--text-secondary);border-bottom:2px solid var(--text-secondary);display:inline-block;transition:transform .32s ease,margin .32s ease}.todo-inline-chevron.up{transform:rotate(-135deg);margin-top:4px}.todo-inline-chevron.down{transform:rotate(45deg);margin-bottom:4px}.todo-drawer-panel{flex:1;min-height:0;height:100%;overflow:visible;opacity:0;pointer-events:none;transform:translateY(-10px);transition:opacity .3s ease,transform .42s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.todo-drawer-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)}.todo-panel{min-height:0;height:100%;display:flex;flex-direction:column;padding-top:22px}.todo-panel-grid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:clamp(14px,1.8vw,18px)}.todo-open-column,.todo-completed-column{min-width:0;min-height:0;display:flex;flex-direction:column}.todo-panel-header,.todo-panel-header-completed{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.todo-add-row{display:flex;align-items:center;gap:10px;margin-bottom:14px}.todo-input{flex:1;width:100%;height:44px;border:1px solid var(--border-subtle);border-radius:12px;background:#ffffff08;color:var(--text-primary);padding:0 44px 0 14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.todo-add-group{position:relative;display:flex;flex-direction:column;gap:12px}.todo-input-wrapper{position:relative;flex:1;display:flex;align-items:center}.todo-deadline-toggle{position:absolute;right:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:transparent;color:var(--text-secondary);border:none;cursor:pointer;transition:all .2s ease;z-index:2}.todo-deadline-toggle:hover{background:#ffffff0d;color:var(--text-primary)}.todo-deadline-toggle.active{color:var(--accent);background:#8b7cff1a}.todo-deadline-popover{position:absolute;top:100%;right:0;margin-top:8px;background:#1a1b26;border:1px solid var(--border-subtle);border-radius:12px;padding:14px;width:240px;box-shadow:0 10px 25px #0006;display:flex;flex-direction:column;gap:10px;z-index:100;animation:popoverFadeIn .2s ease-out}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.todo-popover-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.todo-datetime-input{background:#ffffff0d;border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);padding:8px;outline:none;font-family:inherit}.todo-datetime-input:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.todo-popover-close{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px;font-weight:600;cursor:pointer;transition:opacity .2s}.todo-popover-close:hover{opacity:.9}.todo-save-button{height:44px;min-width:80px}.todo-input:focus{border-color:#8b7cff73;box-shadow:0 0 0 3px #8b7cff1f}.todo-open-list,.todo-completed-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;overflow-y:auto;padding-right:4px;scrollbar-width:none;-ms-overflow-style:none}.todo-open-list::-webkit-scrollbar,.todo-completed-list::-webkit-scrollbar{display:none;width:0;height:0}.todo-row-clickable{cursor:pointer}.todo-open-item,.todo-completed-item{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:14px;background:#ffffff05;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.todo-open-item:hover,.todo-completed-item:hover{background:#ffffff0a;border-color:#8b7cff3d}.todo-open-item input[type=checkbox],.todo-completed-item input[type=checkbox]{accent-color:var(--accent);pointer-events:none}.todo-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.todo-open-item-text{color:var(--text-primary);word-break:break-word}.todo-item-deadline{font-size:11px;color:var(--text-secondary);display:flex;align-items:center;gap:4px;opacity:.8}.todo-item-deadline .deadline-icon{opacity:.6}.todo-panel .todo-open-item.overdue{border-color:#ff6b6b73;background:#ff6b6b14;box-shadow:0 0 10px #ff6b6b0d}.todo-panel .todo-open-item.overdue .todo-open-item-text{color:#ff8e8e;font-weight:500}.todo-panel .todo-open-item.overdue .todo-item-deadline{color:#ff8e8e;opacity:1}.todo-completed-item{color:var(--text-secondary)}.todo-completed-item span{flex:1;min-width:0;text-decoration:line-through;opacity:.85;word-break:break-word}.todo-star-button{width:32px;height:32px;min-width:32px;border:1px solid color-mix(in srgb,var(--text-secondary),transparent 76%);border-radius:10px;background:var(--surface-overlay-soft);color:color-mix(in srgb,var(--text-secondary),transparent 12%);display:inline-flex;align-items:center;justify-content:center;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}.todo-star-button svg{display:block}.todo-star-button:hover{background:var(--surface-overlay-hover);border-color:color-mix(in srgb,var(--accent),transparent 72%);color:var(--text-primary)}.todo-star-button:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 86%)}.todo-star-button.active{color:#ffd166;border-color:#ffd16666;background:color-mix(in srgb,#ffd166,transparent 88%);box-shadow:0 8px 18px #ffd1661f}.todo-star-button.active svg{fill:currentColor}:root[data-theme=light] .todo-star-button{border-color:#6f63ef29;background:#6f63ef0a;color:#425171f0}:root[data-theme=light] .todo-star-button.active{color:#cc9118;border-color:#d4901f57;background:#d4901f24;box-shadow:0 8px 18px #d4901f1f}:root[data-theme=light] .todo-deadline-popover{background:#f8fafff5;border-color:#6f63ef29;box-shadow:0 18px 34px #2e405a24}:root[data-theme=light] .todo-datetime-input{background:#fffffff0;border-color:#6f63ef2e;color:#1f2944f5;box-shadow:inset 0 1px #ffffff73;color-scheme:light}:root[data-theme=light] .todo-datetime-input::-webkit-calendar-picker-indicator{opacity:.82}:root[data-theme=light] .interactive-card:hover{border-color:color-mix(in srgb,var(--accent),transparent 80%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 92%),0 10px 24px #2e405a14}:root[data-theme=light] .icon-button:hover{border-color:color-mix(in srgb,var(--accent),transparent 80%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 90%),0 8px 18px #2e405a14}:root[data-theme=light] .primary-button:hover{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 88%),0 10px 20px color-mix(in srgb,var(--accent),transparent 84%)}:root[data-theme=light] .secondary-button:hover{border-color:color-mix(in srgb,var(--accent),transparent 80%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 91%),0 8px 18px #2e405a12}:root[data-theme=light] .interval-switch-button.active{border-color:color-mix(in srgb,var(--accent),transparent 58%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 88%)}:root[data-theme=light] .settings-nav-item.active{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 86%),0 10px 20px #2e405a14}:root[data-theme=light] .settings-accent-button.active{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 84%),0 6px 14px #2e405a0f}:root[data-theme=light] .settings-info-icon:hover,:root[data-theme=light] .settings-info-icon:focus-visible{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent),transparent 90%)}:root[data-theme=light] .color-picker-circle.active{box-shadow:0 0 0 1px #ffffffe6,0 8px 18px #2e405a1a}@media(min-width:769px){.dashboard .momentum-card,:root[data-theme=light] .dashboard .momentum-card{box-shadow:none}.dashboard .momentum-card:hover{background:var(--bg-card-hover);border-color:#8b7cff52;box-shadow:0 0 0 1px #8b7cff1a,0 8px 26px #8b7cff1a;transform:translateY(-1px)}:root[data-theme=light] .dashboard .momentum-card:hover{border-color:color-mix(in srgb,var(--accent),transparent 80%);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 92%),0 10px 24px #2e405a14}}.todo-clear-button{min-width:92px}.todo-empty-state{flex:1;min-height:88px;display:grid;place-items:center;border:1px dashed rgba(139,124,255,.16);border-radius:14px;color:var(--text-secondary);background:#ffffff04;text-align:center}@keyframes confetti-1{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-120px,-130px) rotate(260deg)}}@keyframes confetti-2{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-70px,-150px) rotate(220deg)}}@keyframes confetti-3{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-20px,-145px) rotate(200deg)}}@keyframes confetti-4{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(35px,-150px) rotate(300deg)}}@keyframes confetti-5{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(90px,-135px) rotate(260deg)}}@keyframes confetti-6{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(130px,-110px) rotate(240deg)}}@keyframes confetti-7{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-110px,-60px) rotate(180deg)}}@keyframes confetti-8{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(115px,-65px) rotate(210deg)}}@keyframes confetti-9{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-140px,-20px) rotate(280deg)}}@keyframes confetti-10{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(145px,-15px) rotate(300deg)}}@keyframes confetti-11{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(-60px,-170px) rotate(240deg)}}@keyframes confetti-12{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}10%{opacity:1}to{opacity:0;transform:translate(55px,-175px) rotate(280deg)}}@media(max-width:768px){.momentum-card{padding:16px!important;min-height:auto!important;display:grid!important;grid-template-columns:100px 1fr!important;grid-template-areas:"header header" "visual stats";gap:12px 16px!important;align-items:center}.momentum-topbar{grid-area:header;margin-bottom:0!important}.momentum-visual-wrap{grid-area:visual;display:flex!important;align-items:center;justify-content:center;height:auto!important;margin:0!important}.score-circle{width:90px!important;height:90px!important}.score-text{font-size:16px!important}.momentum-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,10px);width:min(100%,420px);margin:auto auto 0}.momentum-stat-pill{min-height:42px!important;padding:4px 6px!important;border-radius:10px!important}.momentum-stat-label{font-size:9px!important}.momentum-stat-value{font-size:13px!important}.momentum-label{display:none}.momentum-card--circle{grid-template-columns:100px 1fr!important;grid-template-areas:"header header" "visual stats"!important}.momentum-card--circle .momentum-topbar{grid-area:header}.momentum-card--circle .momentum-visual-wrap{grid-area:visual;justify-content:center!important;padding-left:0!important}.momentum-card--circle .momentum-stats-grid{grid-area:stats;margin-top:0;align-self:center;padding-right:4px;width:100%;max-width:none;margin-left:0;margin-right:0}.habit-card{padding:8px 12px!important;gap:4px!important}.habit-card h4{font-size:15px!important;margin-bottom:0!important}.habit-emoji{font-size:16px!important}.habit-card p{font-size:10px!important;margin:0!important;opacity:.8}.habit-progress{margin:4px 0!important}.habit-progress-bar{height:6px!important}.habit-actions{gap:6px!important}.habit-action-button{padding:4px!important;font-size:0!important;min-width:32px!important;height:32px!important}.habit-action-button svg{margin:0!important;width:14px;height:14px}.section-title{font-size:17px!important}.add-habit-button.primary-button,.routines-add-button.primary-button{padding:0!important;width:28px!important;height:28px!important;min-width:28px!important;display:flex!important;align-items:center;justify-content:center;font-size:17px!important;border-radius:8px!important}.routines-header-actions>.routines-add-button.primary-button,.routines-header-actions .chart-settings-button,.habits-header-actions>.add-habit-button.primary-button,.habits-header-actions .chart-settings-button{width:28px!important;min-width:28px!important;height:28px!important;border-radius:8px!important;flex-basis:28px!important}.habits-page-add-button.primary-button{min-width:0;height:32px;padding:0 12px;border-radius:8px;font-size:14px}.habit-reset-info{display:none}.card-header{margin-bottom:12px!important}.logout-section{margin-top:24px;padding-top:24px;border-top:1px solid var(--border-subtle)}.routine-details-header-actions{align-self:flex-start}.routine-details-edit-topbar,.routine-details-edit-actions{justify-content:flex-end}.routine-details-step{flex-direction:column;align-items:stretch}.routine-details-step-duration{white-space:normal}.routine-player-overlay{place-items:stretch;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px calc(var(--mobile-bottom-nav-height, 64px) + 12px) 14px}.routine-player-modal{width:100%!important;max-width:none!important;max-height:none!important;height:100%!important;min-height:0!important;border-radius:28px!important;padding:18px 16px!important}.routine-player-shell{grid-template-rows:minmax(112px,auto) minmax(0,1fr) minmax(164px,auto);padding:0}.routine-player-step-header{gap:6px;min-height:112px;padding-bottom:18px}.routine-player-close-button{width:46px;height:46px;border-radius:15px!important}.routine-player-emoji{font-size:34px}.routine-player-step-name,.routine-player-routine-name{font-size:24px}.routine-player-main{align-items:center;justify-content:center;padding-top:0;padding-bottom:10px}.routine-player-circle{width:min(74vw,296px);height:min(74vw,296px)}.routine-player-timer-label{font-size:17px}.routine-player-timer-value{font-size:32px}.routine-player-footer{min-height:148px}.routine-player-controls-stack{gap:18px}.routine-player-controls{gap:12px}.routine-player-control-button-side{width:54px;height:54px}.routine-player-control-button-main{width:68px;height:68px;margin-top:-7px;border-radius:20px!important}.routine-player-next-label{font-size:12px}.routine-player-next-value{font-size:17px}.routine-player-finish-slot{min-height:148px;padding-top:0;gap:18px}.routine-player-actions{flex-direction:column}.routine-player-action-button{width:100%}.routine-player-finish-button{width:68px;height:68px;margin-top:-7px}.routine-details-modal,.routine-create-modal{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;display:flex!important;flex-direction:column!important;border-radius:24px!important;margin:0!important;border:1px solid rgba(255,255,255,.12)!important;padding-bottom:calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom,0px) + 2px)!important;flex:1!important;min-height:0!important}.routine-details-modal,.routine-create-modal{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 14px)!important}.routine-details-steps-scroll,.routine-builder-steps-scroll{max-height:none!important;flex:1!important;min-height:0!important}.routine-details-steps,.routine-builder-section{display:flex!important;flex-direction:column!important;flex:1!important;min-height:0!important}.routine-details-actions{margin-top:auto!important;padding-top:10px}.routine-create-form{display:flex!important;flex-direction:column!important;flex:1!important;min-height:0!important;gap:16px!important}.routine-create-form .modal-actions{margin-top:auto!important;position:sticky;bottom:0;padding-top:10px;padding-bottom:2px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bg-card),transparent 8%) 32%)}.routine-modal-header-fields{grid-template-columns:minmax(84px,96px) minmax(0,1fr);gap:10px}.routine-builder-step-grid-unified{grid-template-columns:44px minmax(0,1fr) minmax(84px,96px);gap:8px}.routine-reminder-fields-row{gap:10px}.todo-add-row{flex-direction:column;align-items:stretch}}@media(max-width:768px){.dashboard{flex:1!important;height:100%!important;min-height:0!important;overflow:hidden!important;padding:calc(env(safe-area-inset-top,0px) + 12px) 14px calc(64px + env(safe-area-inset-bottom,0px)) 14px!important;gap:12px!important}.page-content-dashboard,.page-content-todos{padding:0!important}.dashboard-mobile-end-spacer{display:block;order:6;width:100%;height:20px;flex:0 0 20px;pointer-events:none}.left-column,.right-column,.left-stack{display:contents!important}.dashboard .card,.dashboard .todo-drawer{flex:0 0 auto!important}.dashboard .habits-section{flex:1!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.right-column>.score-card,.right-column>.chart-card,.right-column>.routines-card{flex:0 0 auto!important}.momentum-card,.momentum-card--circle{order:1!important;min-height:336px!important;height:336px!important;padding:16px 14px 22px!important;display:grid!important;align-items:start!important;align-content:start!important}.dashboard .momentum-card,.dashboard .momentum-card--circle{padding:20px!important}.dashboard .momentum-card--mobile-compact,.dashboard .momentum-card--mobile-compact.momentum-card--circle{height:auto!important;min-height:auto!important;padding:12px 14px!important}.dashboard .momentum-card--mobile-compact.momentum-card--circle .score-circle{width:90px!important;height:90px!important}.dashboard .momentum-card--mobile-compact .momentum-stats-grid{height:auto!important;grid-template-rows:auto!important;align-self:center!important}.dashboard .momentum-card--mobile-compact .momentum-stat-pill{height:auto!important;min-height:34px!important;padding:5px 6px!important}.momentum-card{grid-template-columns:1fr!important;grid-template-areas:"topbar" "visual" "label" "stats"!important;grid-template-rows:auto auto auto auto!important;row-gap:10px!important}.momentum-card--circle{grid-template-columns:minmax(144px,1fr) minmax(0,1.02fr)!important;grid-template-areas:"topbar topbar" "summary stats"!important;grid-template-rows:auto minmax(0,1fr)!important;column-gap:14px!important;row-gap:10px!important}.momentum-topbar,.momentum-card--circle .momentum-topbar{grid-area:topbar!important;margin-bottom:0!important;align-self:start!important}.momentum-visual-wrap,.momentum-card--circle .momentum-visual-wrap{grid-area:visual!important;height:auto!important;min-height:0!important;margin:0!important;justify-content:center!important;padding-left:0!important}.momentum-card:not(.momentum-card--circle) .momentum-visual-wrap{min-height:82px!important}.momentum-card--circle .momentum-visual-wrap{min-height:136px!important;align-self:center!important;justify-self:center!important;width:100%!important;padding-left:10px!important}.momentum-circle-mobile-summary{grid-area:summary!important;min-height:0!important;height:100%!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:10px!important}.momentum-circle-mobile-summary .momentum-visual-wrap{min-height:0!important;padding-left:10px!important}.momentum-card--circle .score-circle{width:122px!important;height:122px!important}.momentum-card--circle .score-text{font-size:18px!important}.momentum-label,.momentum-card--circle .momentum-label{grid-area:label!important;display:block!important;margin:0!important;text-align:center!important;padding-left:0!important;font-size:13px!important}.momentum-card--circle .momentum-label{justify-self:center!important;align-self:start!important;width:100%!important;padding-left:10px!important}.momentum-circle-mobile-summary .momentum-label{width:100%!important;padding-left:10px!important;margin-top:2px!important}.dashboard .momentum-card--circle{min-height:325px!important;height:325px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-areas:"topbar topbar" "summary stats"!important;grid-template-rows:auto minmax(0,1fr)!important;row-gap:10px!important;column-gap:12px!important}.dashboard .momentum-card:not(.momentum-card--circle){min-height:325px!important;height:325px!important}.dashboard .chart-card,.dashboard .routines-card{min-height:325px!important;height:325px!important}.dashboard .momentum-circle-mobile-summary{grid-area:summary!important;height:100%!important;align-self:stretch!important;justify-content:center!important;gap:8px!important}.dashboard .momentum-circle-mobile-summary .momentum-visual-wrap{min-height:0!important;padding-left:0!important;justify-content:center!important;justify-self:center!important;width:100%!important}.dashboard .momentum-card--circle .score-circle{width:140px!important;height:140px!important}.dashboard .momentum-card--circle .momentum-label{width:100%!important;padding-left:0!important}.dashboard .momentum-card--circle .momentum-stats-grid{grid-area:stats!important;display:grid!important;grid-template-columns:1fr!important;grid-template-rows:repeat(4,minmax(0,1fr))!important;gap:8px!important;height:100%!important;align-self:stretch!important;justify-self:stretch!important;padding-right:2px!important}.score-bar-wrap{width:100%!important;gap:10px!important}.score-bar-value{min-width:48px!important;font-size:20px!important}.momentum-stats-grid,.momentum-card--circle .momentum-stats-grid{grid-area:stats;margin-top:0;align-self:center;padding-right:4px;width:100%;max-width:none;margin-left:0;margin-right:0}.momentum-card--circle .momentum-stat-pill{min-height:0!important;height:100%!important}.momentum-card:not(.momentum-card--circle) .momentum-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1.2vh,10px);width:min(100%,420px);margin:auto auto 0}.momentum-stat-pill{min-height:54px!important;padding:8px 10px!important}.momentum-card--circle .momentum-stat-label{font-size:13px!important;font-weight:500!important;line-height:1.2!important}.chart-card{min-height:320px!important}.chart-wrapper{min-height:220px!important;padding:0 8px 8px!important}.dashboard .todo-drawer{order:5!important;display:block!important;margin-top:8px!important}.dashboard .todo-inline-toggle,.dashboard .todo-inline-toggle-open{display:none!important}.dashboard .todo-drawer-panel,.dashboard .todo-drawer-panel.open{opacity:1!important;pointer-events:auto!important;transform:none!important;display:block!important;height:auto!important;min-height:0!important}.dashboard .todo-panel{--todo-mobile-row-height: 64px;--todo-mobile-row-gap: 10px;padding-top:20px!important;overflow:hidden!important}.dashboard .todo-panel-grid{grid-template-columns:1fr!important;gap:14px!important}.dashboard .todo-panel-header,.dashboard .todo-panel-header-completed{margin-bottom:12px!important;align-items:center!important}.dashboard .todo-add-row{flex-direction:column!important;align-items:stretch!important;gap:8px!important}.dashboard .todo-save-button{width:100%!important}.dashboard .todo-open-column,.dashboard .todo-completed-column{min-width:0!important}.dashboard .todo-clear-button{min-width:0!important;padding:0 10px!important}.dashboard .todo-open-list,.dashboard .todo-completed-list{gap:var(--todo-mobile-row-gap)!important;overflow-y:auto!important}.dashboard .todo-open-list{height:calc((var(--todo-mobile-row-height) * 3) + (var(--todo-mobile-row-gap) * 2))!important;min-height:calc((var(--todo-mobile-row-height) * 3) + (var(--todo-mobile-row-gap) * 2))!important;max-height:calc((var(--todo-mobile-row-height) * 3) + (var(--todo-mobile-row-gap) * 2))!important}.dashboard .todo-completed-list{height:calc((var(--todo-mobile-row-height) * 2) + var(--todo-mobile-row-gap))!important;min-height:calc((var(--todo-mobile-row-height) * 2) + var(--todo-mobile-row-gap))!important;max-height:calc((var(--todo-mobile-row-height) * 2) + var(--todo-mobile-row-gap))!important}.dashboard .todo-open-item,.dashboard .todo-completed-item{min-height:var(--todo-mobile-row-height)!important;max-height:var(--todo-mobile-row-height)!important;overflow:hidden!important}.dashboard .todo-open-item-text,.dashboard .todo-completed-item span{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.dashboard .momentum-card,.dashboard .momentum-card--circle,.dashboard .momentum-card--bar{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;padding:14px 20px 2px!important;flex-shrink:0!important;grid-template-columns:unset!important;grid-template-areas:unset!important;grid-template-rows:unset!important;overflow:visible!important}.dashboard .momentum-card .momentum-topbar,.dashboard .momentum-card--circle .momentum-topbar{flex-shrink:0!important;margin-bottom:0!important;height:auto!important}.momentum-topbar .chart-settings-button{background:#ffffff0a!important;border:1px solid var(--border-subtle)!important;color:var(--text-secondary)!important;width:28px!important;height:28px!important;min-width:28px!important;flex:0 0 28px!important;border-radius:7px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.momentum-topbar .chart-settings-button svg{width:14px!important;height:14px!important}.momentum-mobile-row{display:flex!important;align-items:center!important;gap:20px!important;flex:1!important;min-height:0!important;overflow:hidden!important}.momentum-mobile-row .momentum-visual-wrap{flex:0 0 50%!important;display:flex!important;align-items:center!important;justify-content:center!important}.momentum-mobile-row .score-circle{width:76px!important;height:76px!important}.momentum-mobile-row .score-text{font-size:16px!important}.momentum-compact-stats{list-style:none!important;margin:0!important;padding:2px 0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:8px!important;flex:1!important;min-height:0!important}.momentum-compact-stats li{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:13px!important;line-height:1.2!important;padding:2px 0!important;border-bottom:1px solid rgba(255,255,255,.04)}.momentum-compact-stats li:last-child{border-bottom:none}.momentum-compact-stats li span{color:var(--text-secondary)!important;font-weight:500!important}.momentum-compact-stats li strong{color:var(--text-primary)!important;font-weight:700!important;margin-left:12px!important}.dashboard .habits-section.card{flex:1!important;min-height:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.dashboard .habits-section .habit-list{flex:1!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important}}@media(min-width:769px){.momentum-card.momentum-card--circle,.momentum-card.momentum-card--bar{display:grid;grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"topbar topbar" "visual stats" "label stats";align-items:center;padding:clamp(16px,1.7vw,20px) clamp(16px,1.7vw,20px) clamp(18px,2vh,24px);min-width:0;min-height:clamp(300px,35vh,388px);height:auto}.momentum-card.momentum-card--circle,.momentum-card.momentum-card--bar{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(10px,1.8cqi,22px);row-gap:clamp(10px,1.5cqi,18px)}.momentum-card.momentum-card--circle .momentum-topbar,.momentum-card.momentum-card--bar .momentum-topbar{grid-area:topbar;margin-bottom:0;align-self:start}.momentum-card.momentum-card--circle .momentum-visual-wrap,.momentum-card.momentum-card--bar .momentum-visual-wrap{grid-area:visual;margin:0;width:100%;min-width:0;display:flex;align-items:center;justify-content:center;justify-self:center;align-self:center;padding-left:0}.momentum-card.momentum-card--circle .momentum-visual-wrap{min-height:clamp(120px,26cqi,204px)}.momentum-card.momentum-card--bar .momentum-visual-wrap{min-height:clamp(120px,26cqi,160px)}.momentum-card.momentum-card--circle .momentum-label,.momentum-card.momentum-card--bar .momentum-label{grid-area:label;margin:0;text-align:center;justify-self:center;width:min(320px,100%);padding-left:0}.momentum-card.momentum-card--circle .momentum-title,.momentum-card.momentum-card--bar .momentum-title{font-size:clamp(18px,6.4cqi,22px)}.momentum-card.momentum-card--circle .momentum-label,.momentum-card.momentum-card--bar .momentum-label{width:100%;font-size:clamp(11px,2.7cqi,14px);line-height:1.2}.momentum-card.momentum-card--circle .momentum-stats-grid,.momentum-card.momentum-card--bar .momentum-stats-grid{grid-area:stats;width:100%;max-width:none;min-width:0;margin:0;justify-self:stretch;align-self:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(8px,1.6cqi,14px);padding-right:2px}.momentum-card.momentum-card--circle .momentum-stat-pill,.momentum-card.momentum-card--bar .momentum-stat-pill{width:100%;height:100%;min-height:clamp(62px,12cqi,90px);padding:clamp(10px,2cqi,16px)}.momentum-card.momentum-card--circle .score-circle{width:clamp(112px,29cqi,210px);height:clamp(112px,29cqi,210px)}.momentum-card.momentum-card--circle .score-text{font-size:clamp(24px,5.8cqi,36px)}.momentum-card.momentum-card--circle .momentum-stat-pill,.momentum-card.momentum-card--bar .momentum-stat-pill{min-height:clamp(56px,11.5cqi,90px);padding:clamp(8px,1.8cqi,14px);border-radius:clamp(10px,2cqi,14px)}.momentum-card.momentum-card--circle .momentum-stat-label,.momentum-card.momentum-card--bar .momentum-stat-label{font-size:clamp(10px,2.3cqi,12px)}.momentum-card.momentum-card--circle .momentum-stat-value,.momentum-card.momentum-card--bar .momentum-stat-value{font-size:clamp(15px,3.8cqi,18px);line-height:1.1}.momentum-card.momentum-card--bar .score-bar-wrap{width:100%;max-width:none;margin-inline:auto;row-gap:clamp(6px,1.4cqi,10px)}.momentum-card.momentum-card--bar .score-bar-track{height:clamp(12px,3cqi,20px)}.momentum-card.momentum-card--bar .score-bar-value{min-width:0;font-size:clamp(20px,5.4cqi,32px)}}@media(min-width:769px)and (max-width:1280px){.dashboard{padding:clamp(12px,1.4vw,18px)!important;gap:clamp(12px,1.4vw,18px)!important}.left-column,.right-column{gap:clamp(12px,1.4vw,18px)!important}.dashboard .card{padding:clamp(14px,1.35vw,18px)!important}.momentum-card.momentum-card--circle,.momentum-card.momentum-card--bar{column-gap:clamp(12px,1.8vw,22px)}.momentum-card.momentum-card--circle .score-circle{width:clamp(108px,28cqi,194px);height:clamp(108px,28cqi,194px)}.momentum-card.momentum-card--circle .momentum-stat-pill,.momentum-card.momentum-card--bar .momentum-stat-pill{min-height:80px;padding:12px}}@media(min-width:769px){@container dashboard-page (max-width: 1100px){.dashboard .momentum-card{order:1!important}.dashboard .habits-section{order:2!important;display:flex!important}.dashboard .routines-card{order:3!important}.dashboard .chart-card{order:4!important}.dashboard .momentum-card,.dashboard .chart-card,.dashboard .routines-card{min-height:clamp(300px,38vh,380px)!important;height:clamp(300px,38vh,380px)!important}.dashboard .todo-drawer{order:5!important;display:block!important;margin-top:8px!important}.dashboard .todo-inline-toggle,.dashboard .todo-inline-toggle-open{display:none!important}.dashboard .todo-drawer-panel,.dashboard .todo-drawer-panel.open{opacity:1!important;pointer-events:auto!important;transform:none!important;display:block!important;height:auto!important;min-height:0!important}.dashboard .todo-panel,.dashboard .todo-panel-grid{height:auto!important}.dashboard .todo-panel-grid{grid-template-columns:1fr!important}}}@media(max-width:768px){.dashboard.dashboard-mobile-oled{background:#000!important;color:#f5f7ff!important;display:flex!important;flex-direction:column!important;gap:10px!important;padding:calc(env(safe-area-inset-top,0px) + 8px) 14px calc(72px + env(safe-area-inset-bottom,0px)) 14px!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.pull-refresh-indicator{--pull-offset: 0px;position:sticky;top:0;z-index:24;height:0;width:100%;display:flex;justify-content:center;pointer-events:none;opacity:0;transform:translateY(calc(var(--pull-offset) - 56px));transition:transform .18s cubic-bezier(.22,1,.36,1),opacity .14s ease}.pull-refresh-indicator.is-visible{opacity:1}.pull-refresh-circle{width:38px;height:38px;border-radius:999px;background:#3e4248f5;color:#fff;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 26px #00000047,inset 0 1px #ffffff08;transform:scale(.92);transition:transform .15s ease,box-shadow .15s ease}.pull-refresh-circle.is-ready{transform:scale(1);box-shadow:0 14px 28px #00000057,inset 0 1px #ffffff0a}.pull-refresh-circle svg{width:22px;height:22px;display:block}.pull-refresh-circle svg .pull-refresh-icon{transform-origin:center;transform-box:view-box;transition:transform .18s cubic-bezier(.22,1,.36,1)}.pull-refresh-circle.is-spinning svg .pull-refresh-icon{animation:pull-refresh-spin .9s linear infinite}@keyframes pull-refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.oled-momentum-strip{--oled-momentum-panel-height: 148px;--oled-momentum-border: rgba(139, 124, 255, .58);--oled-momentum-glow: rgba(139, 124, 255, .32);display:flex;flex-direction:column;justify-content:flex-start;gap:1px;min-height:var(--oled-momentum-panel-height);height:var(--oled-momentum-panel-height);max-height:var(--oled-momentum-panel-height);width:100%;padding:10px;border-radius:16px;border:1px solid var(--oled-momentum-border);background:linear-gradient(156deg,color-mix(in srgb,var(--oled-momentum-border),transparent 90%),#0a0d1c80 56%,#080a1499);box-shadow:inset 0 1px #ffffff12,0 0 0 1px color-mix(in srgb,var(--oled-momentum-border),transparent 64%),0 0 26px color-mix(in srgb,var(--oled-momentum-glow),transparent 72%);backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%);transition:transform .16s ease,box-shadow .2s ease,background .2s ease;cursor:default;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.oled-momentum-strip,.oled-momentum-strip *{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.oled-momentum-strip.is-pressing{transform:scale(.992);box-shadow:inset 0 1px #ffffff0f,0 0 0 1px color-mix(in srgb,var(--oled-momentum-border),transparent 56%),0 0 32px color-mix(in srgb,var(--oled-momentum-glow),transparent 66%)}.oled-momentum-strip.is-bar-mode{display:block;min-height:var(--oled-momentum-panel-height);height:var(--oled-momentum-panel-height);max-height:var(--oled-momentum-panel-height);padding:10px}.oled-momentum-overview{flex:1 1 auto;min-height:0;width:100%;display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);align-items:stretch;gap:10px;pointer-events:none;transform:translateY(-3px)}.oled-momentum-greeting{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;pointer-events:none}.oled-momentum-greeting-line{font-size:11px;line-height:1;font-weight:520;letter-spacing:.01em;color:#e6ebfbb3}.oled-momentum-greeting-name{font-size:15px;line-height:1.03;font-weight:700;letter-spacing:.01em;color:#f5f7ff}.oled-momentum-bar-layout{height:100%;width:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:stretch;gap:6px}.oled-momentum-left{min-width:0;height:100%;display:flex;align-items:center;justify-content:flex-start;padding:2px 0 2px 4px}.oled-momentum-ring-wrap{--momentum-ring-size: 102px;width:var(--momentum-ring-size);height:var(--momentum-ring-size);display:flex;align-items:center;justify-content:center;border-radius:999px;box-shadow:0 0 22px color-mix(in srgb,var(--momentum-glow, #8b7cff),transparent 44%);transform:translate(-1px)}.oled-momentum-ring-wrap .score-circle{width:var(--momentum-ring-size);height:var(--momentum-ring-size)}.oled-momentum-ring-wrap .score-text{font-size:17px}.oled-momentum-week{position:relative;min-width:0;height:100%;display:flex;align-items:stretch;padding:6px 18px 12px 6px}.oled-momentum-bars{width:100%;height:100%;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:6px;padding:7px 0 8px}.oled-momentum-day{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center}.oled-momentum-day-bar{--oled-day-bar-color: #8b7cff;--oled-day-bar-glow: rgba(139, 124, 255, .48);width:clamp(8px,1.8vw,11px);height:0%;min-height:5px;border-radius:999px;opacity:.9;transform-origin:bottom center;background:linear-gradient(180deg,color-mix(in srgb,var(--oled-day-bar-color),#ffffff 8%) 0%,var(--oled-day-bar-color) 100%);box-shadow:0 0 10px color-mix(in srgb,var(--oled-day-bar-glow),transparent 42%),inset 0 1px #ffffff3d;animation:oled-momentum-bar-rise .34s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--oled-bar-stagger, 0ms);transition:height .26s ease,opacity .2s ease,box-shadow .24s ease}.oled-momentum-day-bar.is-today{opacity:1;box-shadow:0 0 14px color-mix(in srgb,var(--oled-day-bar-glow),transparent 22%),0 0 22px color-mix(in srgb,var(--oled-day-bar-glow),transparent 48%),inset 0 1px #ffffff4d}.oled-momentum-day-bar.is-perfect{background:linear-gradient(180deg,color-mix(in srgb,#f4c95d,#ffffff 20%),color-mix(in srgb,var(--oled-day-bar-color),#f4c95d 18%));box-shadow:0 0 10px color-mix(in srgb,var(--oled-day-bar-glow),transparent 42%),0 0 16px #f4c95d42,inset 0 1px #fff5d65c}.oled-momentum-scale{position:absolute;right:2px;font-size:10px;line-height:1;font-weight:650;letter-spacing:.02em;color:#ced6f0b8;text-shadow:0 1px 2px rgba(0,0,0,.35)}.oled-momentum-scale--top{top:2px}.oled-momentum-scale--bottom{bottom:5px}@keyframes oled-momentum-bar-rise{0%{transform:scaleY(.04);opacity:.42}to{transform:scaleY(1);opacity:.9}}.oled-inline-stats{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:5px;min-width:0;min-height:0}.oled-inline-stat-line{display:flex;align-items:baseline;justify-content:center;gap:4px;font-size:13px;white-space:nowrap}.oled-inline-stat-line strong{font-size:16px;font-weight:700;color:#f5f7ff}.oled-inline-stat-line span{font-size:13px;color:#9ea8cb}.oled-score-bar-shell{width:100%;max-width:170px;display:flex;flex-direction:column;justify-content:center;height:100%;align-items:center}.oled-momentum-strip.is-bar-mode .oled-score-bar-shell{max-width:none;padding-inline:12px;height:100%;justify-content:center}.oled-score-bar-track{width:100%;height:20px;border-radius:999px;background:#ffffff17;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.oled-momentum-strip.is-bar-mode .oled-score-bar-track{height:22px}.oled-score-bar-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;transition:width .24s ease;box-shadow:0 0 18px #8b7cff59}.oled-score-bar-value{position:relative;z-index:1;font-size:12px;font-weight:700;color:#f5f7ff;letter-spacing:.02em;text-shadow:0 1px 3px rgba(0,0,0,.45);animation:oled-value-pop .22s ease}.oled-inline-stats-bar{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:8px;padding:0 12px 6px}.oled-inline-stats-bar .oled-inline-stat-line{font-size:11px;gap:3px;justify-content:center}.oled-inline-stats-bar .oled-inline-stat-line:nth-child(1){justify-content:flex-start}.oled-inline-stats-bar .oled-inline-stat-line:nth-child(3){justify-content:flex-end}.oled-inline-stats-bar .oled-inline-stat-line strong{font-size:13px;font-weight:650}.oled-inline-stats-bar .oled-inline-stat-line span{font-size:11px}.dashboard-error-mobile{margin-top:-2px!important;margin-bottom:2px!important;font-size:12px!important}.oled-empty-state{border:none!important;background:transparent!important;padding:0!important;text-align:left!important}.oled-habit-list{flex:0 0 auto;min-height:0;display:flex;flex-direction:column;gap:7px;overflow:visible;padding:2px 0 6px;scrollbar-width:none;-ms-overflow-style:none}.oled-habit-list::-webkit-scrollbar{display:none}.oled-habit-row{--habit-row-accent: #8b7cff;min-height:58px;max-height:58px;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;border-radius:10px;background:linear-gradient(90deg,color-mix(in srgb,var(--habit-row-accent),transparent 95%) 0%,transparent 58%);padding:0 2px 0 4px;box-shadow:inset 0 -1px #ffffff0f,0 0 16px color-mix(in srgb,var(--habit-row-accent),transparent 94%);user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.oled-habit-row-create{border:1px dashed rgba(220,227,255,.1);background:linear-gradient(180deg,#ffffff05,#ffffff03);box-shadow:inset 0 0 0 1px #ffffff04,inset 0 -1px #ffffff06;grid-template-columns:1fr;place-items:center;padding:0 10px;color:#dce3ff75;cursor:pointer;transition:transform .14s ease,opacity .14s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.oled-habit-row-create:active{transform:scale(.988);opacity:.88}.oled-habit-row-create-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(220,227,255,.06);background:#ffffff05;color:inherit}.oled-habit-create-cta{width:100%;min-height:58px;border:1px dashed rgba(255,255,255,.12);border-radius:10px;background:#ffffff08;color:#dce3ff;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 12px;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .14s ease,opacity .14s ease;-webkit-tap-highlight-color:transparent}.oled-habit-create-cta:active{transform:scale(.988);opacity:.88}.oled-habit-create-cta--empty{min-height:132px;flex-direction:column;gap:12px;justify-content:center;border-color:#ffffff29}.oled-habit-create-cta--inline{justify-content:center}.oled-habit-create-cta-icon{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff14;color:inherit;flex-shrink:0}.oled-habit-create-cta-label{font-size:13px;font-weight:600;line-height:1.1;color:inherit}.oled-habit-main{width:100%;border:none;background:transparent;padding:0;margin:0;text-align:left;min-width:0;display:flex;align-items:center;gap:8px;cursor:pointer;transition:transform .14s ease,opacity .14s ease;-webkit-tap-highlight-color:transparent}.oled-habit-main.is-pressing{transform:scale(.984);opacity:.84}.oled-habit-emoji{font-size:17px;width:20px;text-align:center;line-height:1;flex-shrink:0}.oled-habit-name{min-width:0;font-size:13.5px;font-weight:600;color:#f5f7ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oled-habit-streak{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:42px;color:#7e89ab;font-size:11.5px;font-weight:600}.oled-habit-streak.is-active{color:#f4a84a}.oled-habit-days{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;min-width:108px}.oled-day-toggle{width:22px;height:22px;border:none;border-radius:999px;background:#ffffff14;color:#7e89ab;display:inline-flex;align-items:center;justify-content:center;padding:0;font-size:11px;font-weight:700;line-height:1;transition:transform .14s ease,background .2s ease,color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.oled-day-toggle svg{stroke:currentColor}.oled-day-toggle.is-checked{background:var(--accent-soft);color:#fff;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent),transparent 74%),0 0 11px color-mix(in srgb,var(--accent),transparent 82%);animation:oled-day-check-pop .19s ease}.oled-day-toggle:active{transform:scale(.86)}.oled-settings-overlay{padding:16px!important;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;animation:modal-overlay-in .16s ease}.oled-settings-modal{width:100%;max-width:none;border-radius:18px;padding:16px;max-height:min(80vh,440px);overflow-y:auto;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;animation:modal-card-in .2s cubic-bezier(.22,1,.36,1)}.oled-settings-modal *{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.oled-settings-header h3{margin:0;font-size:18px}.oled-settings-header p{margin:6px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.35}.oled-settings-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}@keyframes oled-day-check-pop{0%{transform:scale(.8)}65%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes oled-value-pop{0%{transform:scale(.92);opacity:.78}to{transform:scale(1);opacity:1}}}:root[data-theme=light] .settings-delete-section-panel{border-color:#d4901f2e;background:linear-gradient(165deg,#fff1f3f5,#fffafcfa)}:root[data-theme=light] .settings-top-toast{border-color:#48ba772e;background:linear-gradient(180deg,#f4fff8fa,#ecfaf1fa);color:#165330;box-shadow:0 18px 34px #2e405a1f,0 0 24px #48ba7714}:root[data-theme=light] .settings-delete-error{color:#c54d6b}@media(max-width:768px){:root[data-theme=light] .settings-page,:root[data-theme=light] .settings-detail-toolbar-mobile{background:linear-gradient(180deg,#f7f9fd,#edf2f8)}:root[data-theme=light] .settings-mobile-list-header .main-title{color:var(--text-primary)}:root[data-theme=light] .dashboard.dashboard-mobile-oled{background:linear-gradient(180deg,#f7f9fd,#edf2f8)!important;color:var(--text-primary)!important}:root[data-theme=light] .dashboard .card,:root[data-theme=light] .dashboard .todo-drawer,:root[data-theme=light] .dashboard .interactive-card,:root[data-theme=light] .dashboard .icon-button,:root[data-theme=light] .dashboard .primary-button,:root[data-theme=light] .dashboard .secondary-button,:root[data-theme=light] .dashboard .chip-button,:root[data-theme=light] .dashboard .chart-settings-menu,:root[data-theme=light] .dashboard .chart-settings-button,:root[data-theme=light] .dashboard .habit-card,:root[data-theme=light] .dashboard .habit-history-box,:root[data-theme=light] .dashboard .routine-slot,:root[data-theme=light] .dashboard .routine-check-circle,:root[data-theme=light] .dashboard .routines-slot-button,:root[data-theme=light] .dashboard .routines-reorder-toggle,:root[data-theme=light] .dashboard .momentum-card,:root[data-theme=light] .dashboard .momentum-card--circle,:root[data-theme=light] .dashboard .momentum-card--bar{box-shadow:none!important}:root[data-theme=light] .pull-refresh-circle{background:#f8fafff5;color:var(--accent);box-shadow:none!important}:root[data-theme=light] .momentum-topbar .chart-settings-button{background:#fffffff5!important;border-color:#6f63ef29!important;color:var(--text-primary)!important}:root[data-theme=light] .dashboard .card{background:#fffffffa!important;border-color:#6f63ef24!important}:root[data-theme=light] .dashboard .momentum-card,:root[data-theme=light] .dashboard .momentum-card--circle,:root[data-theme=light] .dashboard .momentum-card--bar{background:linear-gradient(180deg,#fffffffa,#f7fafffa)!important;border-color:#6f63ef24!important}:root[data-theme=light] .dashboard .momentum-card:before{background:none!important;opacity:0!important}:root[data-theme=light] .dashboard .momentum-card:after{box-shadow:none!important}:root[data-theme=light] .dashboard .chart-settings-menu{background:#f8fafffa!important;border-color:#6f63ef24!important}:root[data-theme=light] .dashboard .chart-menu-button,:root[data-theme=light] .dashboard .chart-menu-button svg,:root[data-theme=light] .dashboard .chart-settings-button svg{color:var(--text-primary)!important}:root[data-theme=light] .dashboard .habit-card{--habit-accent-glow: color-mix(in srgb, var(--habit-accent), #ffffff 90%);--habit-accent-soft: color-mix(in srgb, var(--habit-accent), #ffffff 93%);background:linear-gradient(165deg,color-mix(in srgb,var(--habit-accent),#ffffff 93%),#fffffffa 46%,color-mix(in srgb,var(--habit-accent),#ffffff 96%))!important;border-color:color-mix(in srgb,var(--habit-accent),rgba(111,99,239,.14) 72%)!important}:root[data-theme=light] .dashboard .habit-card:hover,:root[data-theme=light] .dashboard .habit-card.streaking{box-shadow:none!important}:root[data-theme=light] .dashboard .habit-edit-trigger{background:#fffffff5!important;border-color:#6f63ef24!important;color:var(--text-secondary)!important}:root[data-theme=light] .dashboard .habit-flame-streak,:root[data-theme=light] .dashboard .habit-flame-completed,:root[data-theme=light] .dashboard .habit-history-cell.checked .habit-history-box svg,:root[data-theme=light] .dashboard .habit-history-box.is-checked svg{filter:none!important}:root[data-theme=light] .dashboard .habit-history-box{background:#fffffff5!important;border-color:#6f63ef1f!important}:root[data-theme=light] .dashboard .habit-history-box.is-streak{background:color-mix(in srgb,var(--habit-accent),#ffffff 88%)!important;border-color:color-mix(in srgb,var(--habit-accent),transparent 66%)!important;box-shadow:none!important}:root[data-theme=light] .dashboard .habit-history-box.is-streak-strong{background:color-mix(in srgb,var(--habit-accent),#ffffff 82%)!important;border-color:color-mix(in srgb,var(--habit-accent),transparent 56%)!important;box-shadow:none!important}:root[data-theme=light] .dashboard .habit-history-cell.checked .habit-history-box,:root[data-theme=light] .dashboard .habit-history-box.is-checked{box-shadow:none!important}:root[data-theme=light] .dashboard .habit-history-box:hover{box-shadow:none!important;background:color-mix(in srgb,var(--habit-accent),#ffffff 94%)!important}:root[data-theme=light] .dashboard .routine-slot{background:#fffffffa!important;border-color:#6f63ef24!important}:root[data-theme=light] .dashboard .routine-slot-filled,:root[data-theme=light] .dashboard .routine-slot-filled:hover{background:linear-gradient(160deg,color-mix(in srgb,var(--routine-accent),#ffffff 92%),#fffffffa 44%,color-mix(in srgb,var(--routine-accent),#ffffff 95%))!important;border-color:color-mix(in srgb,var(--routine-accent),rgba(111,99,239,.14) 70%)!important;box-shadow:none!important}:root[data-theme=light] .dashboard .routine-slot-title,:root[data-theme=light] .dashboard .routine-check-circle,:root[data-theme=light] .dashboard .routine-dashboard-slot{color:var(--text-primary)!important}:root[data-theme=light] .dashboard .routine-slot-streak{color:var(--text-secondary)!important}:root[data-theme=light] .dashboard .routine-check-circle{background:#fffffff5!important;border-color:color-mix(in srgb,var(--routine-accent),transparent 76%)!important}:root[data-theme=light] .dashboard .routine-check-circle-active,:root[data-theme=light] .dashboard .routine-check-circle-today,:root[data-theme=light] .dashboard .routines-slot-button.active,:root[data-theme=light] .dashboard .routines-reorder-toggle.active,:root[data-theme=light] .dashboard .routine-slot-drop-target,:root[data-theme=light] .dashboard .routine-slot-add:hover{box-shadow:none!important}:root[data-theme=light] .dashboard .routine-check-circle-active{background:#65d58a1f!important;border-color:#65d58a47!important}:root[data-theme=light] .dashboard .routine-check-circle-today{background:color-mix(in srgb,var(--routine-accent),#ffffff 88%)!important;border-color:color-mix(in srgb,var(--routine-accent),transparent 58%)!important}:root[data-theme=light] .dashboard .oled-momentum-strip{--oled-momentum-border: rgba(101, 213, 138, .34);--oled-momentum-glow: rgba(101, 213, 138, .12);background:linear-gradient(180deg,#fffffffa,#f5f9fefa)!important;border-color:#65d58a57!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}:root[data-theme=light] .dashboard .oled-momentum-strip.is-pressing{box-shadow:none!important}:root[data-theme=light] .dashboard .oled-momentum-greeting-line,:root[data-theme=light] .dashboard .oled-inline-stat-line span,:root[data-theme=light] .dashboard .oled-momentum-scale{color:var(--text-secondary)!important;text-shadow:none!important}:root[data-theme=light] .dashboard .oled-momentum-greeting-name,:root[data-theme=light] .dashboard .oled-inline-stat-line strong,:root[data-theme=light] .dashboard .oled-score-bar-value{color:var(--text-primary)!important;text-shadow:none!important}:root[data-theme=light] .dashboard .oled-momentum-ring-wrap,:root[data-theme=light] .dashboard .oled-score-bar-fill,:root[data-theme=light] .dashboard .oled-momentum-day-bar,:root[data-theme=light] .dashboard .oled-momentum-day-bar.is-today,:root[data-theme=light] .dashboard .oled-momentum-day-bar.is-perfect{box-shadow:none!important}:root[data-theme=light] .dashboard .oled-score-bar-track{background:#6f63ef1f!important}:root[data-theme=light] .dashboard .oled-habit-row{background:linear-gradient(90deg,color-mix(in srgb,var(--habit-row-accent),#ffffff 88%),#fffffffa 54%,#f7fafffa)!important;border:1px solid color-mix(in srgb,var(--habit-row-accent),rgba(111,99,239,.14) 74%)!important;box-shadow:none!important}:root[data-theme=light] .dashboard .oled-habit-name{color:var(--text-primary)!important}:root[data-theme=light] .dashboard .oled-habit-streak{color:var(--text-secondary)!important}:root[data-theme=light] .dashboard .oled-habit-streak.is-active{color:#d18b24!important}:root[data-theme=light] .dashboard .oled-day-toggle{border:1px solid rgba(52,107,186,.24)!important;background:#fffffff5!important;color:#5f6f95!important;box-shadow:none!important}:root[data-theme=light] .dashboard .oled-day-toggle.is-checked{background:color-mix(in srgb,var(--accent),#ffffff 18%)!important;border-color:color-mix(in srgb,var(--accent),transparent 52%)!important;color:#fff!important;box-shadow:none!important}:root[data-theme=light] .dashboard .oled-habit-row-create,:root[data-theme=light] .dashboard .oled-habit-create-cta{border-color:#6f63ef29!important;background:#fffffff5!important;color:var(--text-secondary)!important;box-shadow:none!important}:root[data-theme=light] .dashboard .oled-habit-row-create-icon,:root[data-theme=light] .dashboard .oled-habit-create-cta-icon{border-color:#6f63ef24!important;background:#6f63ef14!important;color:var(--accent)!important}:root[data-theme=light] .routine-details-modal .routine-topbar-icon-button,:root[data-theme=light] .premade-routine-modal .routine-topbar-icon-button,:root[data-theme=light] .routine-settings-modal .routine-topbar-icon-button{border-color:#6f63ef29!important;background:#fffffff5!important;color:var(--text-primary)!important;box-shadow:none!important}:root[data-theme=light] .routine-details-modal .routine-topbar-icon-button:hover,:root[data-theme=light] .premade-routine-modal .routine-topbar-icon-button:hover,:root[data-theme=light] .routine-settings-modal .routine-topbar-icon-button:hover{border-color:#6f63ef33!important;background:#f8fafffa!important;color:var(--text-primary)!important;box-shadow:none!important}}.score-page.score-page-clean{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;padding:12px 18px 18px;background:#000;color:#f5f7ff;overflow:hidden}:root[data-theme=light] .score-page.score-page-clean{background:linear-gradient(180deg,#f7f9fd,#edf2f8);color:var(--text-primary)}:root[data-theme=light] .score-info-line span,:root[data-theme=light] .score-insight-label,:root[data-theme=light] .score-weekly-row-label,:root[data-theme=light] .score-secondary-text,:root[data-theme=light] .score-chart-empty-state,:root[data-theme=light] .score-section-placeholder{color:var(--text-secondary)}:root[data-theme=light] .score-info-line strong,:root[data-theme=light] .score-insight-value,:root[data-theme=light] .score-weekly-row-value,:root[data-theme=light] .score-performance-title{color:var(--text-primary)}:root[data-theme=light] .performance-chart--score .chart-settings-button{border-color:#6f63ef24;background:#ffffffd1;box-shadow:0 10px 22px #2e405a1a}:root[data-theme=light] .performance-chart--score .chart-settings-button:hover{border-color:#6f63ef33;background:#fffffff0}:root[data-theme=light] .performance-chart--score .chart-settings-menu{background:#f7f9fdfa;border-color:#6f63ef24;box-shadow:0 18px 34px #2e405a24}:root[data-theme=light] .performance-chart--score .recharts-cartesian-axis-tick-value{fill:#425171e6}@media(max-width:768px){:root[data-theme=light] .score-summary-layout:after,:root[data-theme=light] .score-performance-section:before{background:#6f63ef24}}.score-screen{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);flex:1;min-width:0;min-height:0;gap:0}.score-summary-section{--score-accent: #65d58a;--score-glow: rgba(101, 213, 138, .22);--score-label-size: clamp(.76rem, 1.1vw, .9rem);--score-standard-value-size: clamp(1.22rem, 2.08vw, 1.68rem);--score-primary-value-size: clamp(1.4rem, 2.46vw, 1.98rem);--score-neutral-accent: #8b7cff;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;align-content:stretch;gap:10px;padding:0 0 12px}.score-summary-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3.4vw,32px);position:relative;min-height:0;height:100%}.score-summary-column{min-height:0;display:grid;grid-template-rows:minmax(0,1.18fr) minmax(0,1fr);gap:clamp(18px,2.6vh,28px)}.score-ring-column{position:relative;display:flex;align-items:center;justify-content:center;min-height:0}.score-ring-column:before{content:"";position:absolute;left:50%;top:50%;width:clamp(240px,38vw,360px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:999px;background:radial-gradient(circle,color-mix(in srgb,var(--score-glow),#ffffff 10%) 0%,color-mix(in srgb,var(--score-glow),transparent 36%) 42%,transparent 74%);filter:blur(18px);opacity:.98;pointer-events:none}.score-ring-column.is-gold:before{background:radial-gradient(circle,rgba(244,201,93,.44) 0%,rgba(244,201,93,.18) 42%,transparent 74%)}.score-summary-subcolumn{min-height:0;display:flex;flex-direction:column;justify-content:space-between}.score-ring-column .score-circle{width:clamp(348px,51vw,556px);height:clamp(348px,51vw,556px);max-width:none;flex-shrink:0;filter:drop-shadow(0 0 24px color-mix(in srgb,var(--score-glow),transparent 8%)) drop-shadow(0 0 58px color-mix(in srgb,var(--score-glow),transparent 42%))}.score-ring-column.is-gold .score-circle{filter:drop-shadow(0 0 28px rgba(244,201,93,.56)) drop-shadow(0 0 64px rgba(244,201,93,.24))}.score-ring-column .score-text{font-size:clamp(2.9rem,8.4vw,4.9rem);letter-spacing:-.04em;font-weight:780}.score-info-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-self:stretch;place-items:center;gap:12px;min-width:0;height:100%}.score-info-line{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0}.score-info-line span,.score-insight-label,.score-weekly-row-label{font-size:var(--score-label-size);font-weight:560;letter-spacing:.05em;color:#dee5f8b3}.score-info-line span,.score-insight-label{text-transform:uppercase}.score-info-line strong{font-size:var(--score-standard-value-size);line-height:1.04;font-weight:760;color:#f4f7fffa}.score-insight{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px}.score-insight--primary{min-width:0;justify-content:flex-start}.score-insight--comparison{display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-self:stretch;align-content:stretch;gap:clamp(8px,1.2vh,14px)}.score-insight--best{justify-content:flex-start}.score-insight--subtle{justify-self:stretch}.score-insight-value{margin:0;font-size:var(--score-primary-value-size);line-height:1.04;font-weight:780;color:#f5f7fffa;white-space:nowrap}.score-insight-value--subvalue{margin-top:8px}.score-secondary-text{margin-left:6px;font-size:.9em;font-weight:650;color:#d6def5cc}.score-insight-comparison{display:flex;flex-direction:column;justify-content:center;gap:clamp(10px,1.5vh,16px);min-height:0;height:100%;min-width:0}.score-insight-delta{font-size:var(--score-primary-value-size);font-weight:780;letter-spacing:.01em;align-self:flex-start}.score-weekly-row{display:flex;align-items:baseline;gap:8px;min-width:0}.score-weekly-row-label{text-transform:none;white-space:nowrap}.score-weekly-row-value{font-size:var(--score-primary-value-size);line-height:1.04;font-weight:780;color:#f5f7fffa}.score-insight-delta.is-positive{color:var(--score-accent)}.score-insight-delta.is-negative{color:#ff8f8f}.score-insight-delta.is-neutral{color:var(--score-neutral-accent)}.score-sync-note{margin:0;font-size:.74rem;line-height:1.3;color:#ffb7b7d1}.score-performance-section{min-height:0;display:flex;overflow:hidden;position:relative;padding-top:14px}.performance-chart.performance-chart--score{width:100%;min-height:0;display:flex;flex-direction:column;background:transparent;border:none;box-shadow:none;padding:0}.score-performance-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:2px}.score-performance-title{margin:0;font-size:clamp(1.5rem,2.9vw,2.08rem);line-height:1.06;letter-spacing:.01em;color:#f2f5ff}.performance-chart--score .chart-header-actions{gap:0}.performance-chart--score .chart-settings-button{width:40px;height:40px;min-width:40px;min-height:40px;border-radius:14px;border-color:#ffffff1a;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.performance-chart--score .chart-settings-button:hover{border-color:#ffffff2e;background:#ffffff0f}.performance-chart--score .chart-settings-menu{background:#0b0e1df5;border-color:#ffffff1f}.score-chart-wrapper{width:100%;min-height:0;flex:1;padding-top:8px;-webkit-tap-highlight-color:transparent}.performance-chart--score .score-chart-wrapper,.performance-chart--score .score-chart-wrapper .recharts-wrapper,.performance-chart--score .score-chart-wrapper .recharts-surface{outline:none;box-shadow:none;border:none;-webkit-tap-highlight-color:transparent}.performance-chart--score .score-chart-wrapper:focus,.performance-chart--score .score-chart-wrapper:focus-visible,.performance-chart--score .score-chart-wrapper:active,.performance-chart--score .score-chart-wrapper .recharts-wrapper:focus,.performance-chart--score .score-chart-wrapper .recharts-wrapper:focus-visible,.performance-chart--score .score-chart-wrapper .recharts-wrapper:active,.performance-chart--score .score-chart-wrapper .recharts-surface:focus,.performance-chart--score .score-chart-wrapper .recharts-surface:focus-visible,.performance-chart--score .score-chart-wrapper .recharts-surface:active{outline:none;box-shadow:none;border:none}.score-chart-empty-state,.score-section-placeholder{width:100%;min-height:0;flex:1;display:flex;align-items:center;justify-content:center;font-size:.9rem;color:#cad4f0bd}.performance-chart--score .recharts-surface{overflow:visible}.performance-chart--score .recharts-cartesian-axis-tick-value{font-size:.8rem;fill:#d2dcf6db}@media(max-width:1024px){.score-page.score-page-clean{padding:12px 14px 16px}}@media(max-width:768px){.score-page.score-page-clean{padding:calc(env(safe-area-inset-top,0px) + 8px) 14px calc(78px + env(safe-area-inset-bottom,0px));overflow-y:auto}.score-screen{min-height:calc(100vh - 116px);min-height:calc(100dvh - 116px)}.score-summary-section{--score-label-size: .68rem;--score-standard-value-size: clamp(1.1rem, 5vw, 1.36rem);--score-primary-value-size: clamp(1.22rem, 5.6vw, 1.5rem);gap:8px;padding-bottom:10px}.score-summary-layout{--score-column-row-gap: 18px;gap:12px}.score-summary-layout:after{content:"";position:absolute;left:0;right:0;top:calc(((100% - var(--score-column-row-gap)) * .5412844) + (var(--score-column-row-gap) * .5) - 10px);height:1px;background:#ffffff2e;pointer-events:none}.score-summary-column{gap:var(--score-column-row-gap)}.score-performance-section:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#ffffff2e;pointer-events:none}.score-ring-column .score-circle{width:clamp(356px,88vw,432px);height:clamp(356px,88vw,432px);max-width:none;flex-shrink:0}.score-info-stack{gap:8px}.score-insight{gap:6px}.score-insight-comparison{gap:10px}.score-insight-delta{font-size:1.08rem}.score-sync-note{font-size:.72rem}.score-performance-title{font-size:1.55rem}.performance-chart--score .chart-settings-button{width:36px;height:36px;min-width:36px;min-height:36px;border-radius:12px}}.landing-page{position:relative;min-height:100vh;overflow:clip;color:#eef3ff;background:radial-gradient(circle at 14% 10%,rgba(65,150,255,.23),transparent 44%),radial-gradient(circle at 84% 15%,rgba(76,219,164,.21),transparent 46%),radial-gradient(circle at 58% 88%,rgba(126,118,255,.2),transparent 56%),#040914}.landing-gloom{position:fixed;pointer-events:none;z-index:0;filter:blur(34px);opacity:.94;transform:translateZ(0);will-change:transform}.landing-gloom--one{width:46vw;max-width:760px;aspect-ratio:1;top:-22%;right:-13%;border-radius:999px;background:radial-gradient(circle at 35% 34%,rgba(112,208,255,.58),rgba(64,98,255,.17) 64%,transparent 78%)}.landing-gloom--two{width:40vw;max-width:650px;aspect-ratio:1;top:34%;left:-11%;border-radius:999px;background:radial-gradient(circle at 62% 52%,rgba(100,255,201,.5),rgba(78,130,255,.14) 58%,transparent 80%)}.landing-gloom--three{width:36vw;max-width:560px;aspect-ratio:1;bottom:-15%;right:18%;border-radius:999px;background:radial-gradient(circle at 50% 50%,rgba(154,136,255,.44),rgba(94,116,255,.14) 62%,transparent 78%)}.landing-spark-layer{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.landing-spark{position:absolute;border-radius:999px;transform:translateZ(0);mix-blend-mode:screen;filter:saturate(114%);border:1px solid rgba(220,244,255,.22);background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.45) 0%,rgba(255,255,255,.08) 36%,transparent 68%)}.landing-spark:before{content:"";position:absolute;inset:-255%;border-radius:999px;pointer-events:none}.landing-spark:after{content:"";position:absolute;width:32%;height:32%;top:18%;left:20%;border-radius:999px;background:#ffffff80;filter:blur(.6px);pointer-events:none}.landing-spark--teal{background:#5fffe0eb;box-shadow:0 0 13px #46ffdcad,0 0 22px #46ffdc57}.landing-spark--teal:before{background:radial-gradient(circle,rgba(70,255,220,.46) 0%,rgba(70,255,220,.09) 57%,transparent 78%)}.landing-spark--blue{background:#78aeffeb;box-shadow:0 0 13px #6ea6ffb3,0 0 22px #5b92ff52}.landing-spark--blue:before{background:radial-gradient(circle,rgba(110,166,255,.47) 0%,rgba(92,146,255,.1) 57%,transparent 78%)}.landing-spark--violet{background:#afa0ffe6;box-shadow:0 0 12px #a694ffa8,0 0 20px #9984ff52}.landing-spark--violet:before{background:radial-gradient(circle,rgba(166,148,255,.42) 0%,rgba(153,132,255,.1) 57%,transparent 78%)}.landing-spark--mint{background:#92f8bde6;box-shadow:0 0 13px #7af4b1ad,0 0 22px #6ee7a352}.landing-spark--mint:before{background:radial-gradient(circle,rgba(121,244,177,.45) 0%,rgba(110,231,163,.1) 58%,transparent 79%)}.landing-container{position:relative;z-index:1;width:min(1160px,calc(100% - 34px));margin-inline:auto}.landing-nav{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(146,164,221,.2);background:linear-gradient(180deg,#070d1cd1,#070d1c99),#070d1c9e;backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%)}.landing-nav-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:12px}.landing-brand{display:inline-flex;align-items:center;gap:10px;color:#f2f6ff;text-decoration:none;font-size:18px;font-weight:700;letter-spacing:.01em}.landing-brand img{width:36px;height:36px;border-radius:11px}.landing-links{display:none;align-items:center;gap:18px}.landing-links a{color:#e1e9ffdb;text-decoration:none;font-size:14px;font-weight:600;letter-spacing:.01em;transition:color .2s ease,opacity .2s ease}.landing-links a:hover{color:#fff}.landing-nav-cta{min-width:126px;text-decoration:none}.landing-main{position:relative;z-index:1;display:flex;flex-direction:column;gap:72px;padding:30px 0 146px}.landing-hero{position:relative;display:flex;flex-direction:column;align-items:center;gap:48px;padding:64px 24px 24px;border:none;background:transparent;box-shadow:none}.landing-eyebrow{margin:0;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#a5e0ffe6;font-weight:700}.landing-hero-copy{text-align:center;margin:0 auto;display:flex;flex-direction:column;align-items:center}.landing-hero-copy h1{margin:10px 0 0;font-size:clamp(38px,9.2vw,64px);line-height:1.08;padding-bottom:.06em;max-width:14ch;letter-spacing:-.035em;font-weight:800;background:linear-gradient(to bottom,#fff,#ffffffb3);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.landing-subtitle{margin:20px 0 0;max-width:68ch;font-size:clamp(16px,3.4vw,20px);color:#d7e0f7d9;line-height:1.6}.landing-hero-actions{margin-top:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;width:100%}.landing-hero-primary{display:inline-flex;align-items:center;justify-content:center;text-align:center;padding:16px 36px;font-size:18px;font-weight:700;border-radius:999px;transition:transform .2s ease,box-shadow .2s ease;background:linear-gradient(135deg,#60a5fa,#6366f1 52%,#8b5cf6) padding-box,linear-gradient(135deg,#b8d6ff80,#bda7ff6b) border-box;background-repeat:no-repeat;background-size:100% 100%;color:#fff;text-decoration:none;box-shadow:0 8px 20px #6366f140;border:1px solid transparent}.landing-hero-primary:hover{background:linear-gradient(135deg,#60a5fa,#6366f1 52%,#8b5cf6) padding-box,linear-gradient(135deg,#b8d6ff80,#bda7ff6b) border-box;transform:translateY(-2px);box-shadow:0 12px 28px #6366f166}.landing-trust-note{font-size:14px;color:#c8d2f0b3;margin-top:2px;text-align:center}.landing-hero-mockup-wrapper{position:relative;width:100%;max-width:1040px;margin:0 auto;perspective:1200px;z-index:10}.mockup-laptop{position:relative;width:100%;border-radius:12px 12px 0 0;overflow:hidden;background:#111421;border:1px solid rgba(255,255,255,.1);border-bottom:none;box-shadow:0 40px 80px #00000080}.mockup-laptop-browser{height:32px;background:#1a1e30;border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;padding:0 16px;gap:8px}.mockup-browser-dot{width:10px;height:10px;border-radius:50%;background:#3a415a}.mockup-browser-dot:nth-child(1){background:#ff5f56}.mockup-browser-dot:nth-child(2){background:#ffbd2e}.mockup-browser-dot:nth-child(3){background:#27c93f}.mockup-laptop img{width:100%;display:block;border-radius:0 0 8px 8px}.mockup-mobile{position:absolute;bottom:-40px;right:-30px;width:25%;min-width:200px;aspect-ratio:9/19;border-radius:32px;background:#0b0f19;border:8px solid #1a1e30;overflow:hidden;box-shadow:-10px 20px 40px #0009;z-index:20}.mockup-mobile img{width:100%;height:100%;display:block}@media(max-width:768px){.mockup-mobile{right:-10px;bottom:-20px;width:35%;min-width:140px;border-width:6px;border-radius:24px}}.landing-points{margin:32px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:16px 24px;color:#cedaf7bf;font-size:13px;list-style:none}.landing-points li{display:flex;align-items:center;gap:8px}.landing-points li:before{content:"✦";color:var(--accent);font-size:10px}.landing-why{display:grid;gap:16px}.landing-why-title{margin:0;font-size:clamp(22px,4.6vw,34px);line-height:1.15;letter-spacing:-.012em}.landing-why-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px;grid-template-columns:1fr}.landing-why-card{border-radius:20px;border:1px solid rgba(255,255,255,.08);padding:24px;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:all .3s cubic-bezier(.22,1,.36,1)}.landing-why-card:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translateY(-4px)}.landing-why-icon-box{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#8b7cff33,#8b7cff0d);border:1px solid rgba(139,124,255,.2);display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--accent)}.landing-why-card h3{margin:0;font-size:17px;line-height:1.35}.landing-why-card p{margin:8px 0 0;color:#cddaf6e0;line-height:1.5}.landing-hero-visual{margin:0;border-radius:20px;overflow:hidden;border:1px solid rgba(150,167,224,.26);background:#080f1fbf;box-shadow:inset 0 0 0 1px #ffffff08,0 20px 38px #040a1975}.landing-hero-visual img{width:100%;height:auto;display:block}.landing-section{display:grid;gap:20px}.landing-section--features,.landing-section--steps{padding:8px 0 0}.landing-section--trust{padding:6px 0 0}.landing-section--faq{padding:4px 0 0}.landing-section-head h2{margin:8px 0 0;font-size:clamp(27px,5.2vw,42px);line-height:1.1;letter-spacing:-.015em}.landing-feature-blocks{display:flex;flex-direction:column;gap:120px;margin-top:64px}.landing-feature-block{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.landing-feature-block--reverse .landing-feature-text{order:2}.landing-feature-block--reverse .landing-feature-visual{order:1}.landing-feature-text{max-width:480px}.landing-feature-icon-box{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#8b7cff33,#8b7cff0d);border:1px solid rgba(139,124,255,.2);display:flex;align-items:center;justify-content:center;margin-bottom:24px;color:var(--accent)}.landing-feature-text h3{font-size:clamp(28px,4vw,36px);line-height:1.15;margin:0 0 16px;font-weight:700;letter-spacing:-.01em}.landing-feature-text p{font-size:16px;color:#c8d7f0d9;line-height:1.6;margin:0}.landing-feature-visual{position:relative;width:100%;aspect-ratio:4/3;border-radius:24px;background:#ffffff05;border:1px solid rgba(255,255,255,.08);overflow:hidden;box-shadow:0 20px 40px #0000004d}.feature-glass-box{width:100%;height:100%;background:radial-gradient(circle at top right,rgba(139,124,255,.15),transparent 60%)}.feature-glass-box--1{background:radial-gradient(circle at top left,rgba(76,219,164,.15),transparent 60%)}.feature-glass-box--2{background:radial-gradient(circle at bottom right,rgba(65,150,255,.15),transparent 60%)}.feature-glass-box--3{background:radial-gradient(circle at bottom left,rgba(100,200,255,.15),transparent 60%)}@media(max-width:840px){.landing-feature-block{grid-template-columns:1fr;gap:32px}.landing-feature-block--reverse .landing-feature-text{order:1}.landing-feature-block--reverse .landing-feature-visual{order:2}.landing-feature-text{max-width:100%}.landing-feature-blocks{gap:80px;margin-top:48px}}.landing-steps-grid{display:grid;grid-template-columns:1fr;gap:14px}.landing-step-card{border-radius:18px;padding:20px;border:1px solid rgba(137,154,219,.2);background:linear-gradient(160deg,#111c37d9,#0a1125db),#0b1124ad;box-shadow:0 10px 24px #03091852}.landing-step-card span{font-size:11px;letter-spacing:.1em;font-weight:800;color:#a0dbffe0}.landing-step-card h3{margin:9px 0 0;font-size:21px;letter-spacing:-.01em}.landing-step-card p{margin:10px 0 0;color:#d1dcf8e0;line-height:1.56}.landing-utility-card{border-radius:22px;padding:20px;border:1px solid rgba(145,163,220,.24);background:linear-gradient(155deg,#121f3bdb,#091124e0),#090f1fd1;display:grid;gap:20px;align-items:center;box-shadow:0 18px 42px #03081866}.landing-utility-copy h2{margin:8px 0 0;font-size:clamp(28px,4.8vw,40px);line-height:1.12;letter-spacing:-.015em}.landing-utility-copy p{margin:12px 0 0;color:#d0dbf6e6;line-height:1.6;max-width:56ch}.landing-fact-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}.landing-fact-item{border:1px solid rgba(149,167,226,.18);border-radius:14px;padding:12px 14px;background:#121d3a9e}.landing-fact-item h3{margin:0;font-size:15px;font-weight:700}.landing-fact-item p{margin:6px 0 0;font-size:14px;color:#cdd8f2db;line-height:1.45}.landing-proof-grid{display:grid;gap:12px}.landing-proof-card{margin:0;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#080e1fb8;box-shadow:0 32px 64px #00000080}.landing-proof-card img{width:100%;height:auto;display:block}.landing-faq-list{display:flex;flex-direction:column;gap:12px;max-width:800px;margin:0 auto}.landing-faq-item{border-bottom:1px solid rgba(255,255,255,.1);background:transparent;overflow:hidden;border-radius:0}.landing-faq-item:first-child{border-top:1px solid rgba(255,255,255,.1)}.landing-faq-trigger{width:100%;padding:24px 16px;border:0;background:transparent;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;cursor:pointer;font-size:18px;font-weight:500;transition:color .15s ease}.landing-faq-trigger:hover{color:var(--accent)}.landing-faq-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:#ffffff80;font-size:24px;flex-shrink:0;font-weight:300}.landing-faq-content{overflow:hidden}.landing-faq-content p{margin:0;padding:0 16px 24px;color:#c8d7f0d9;line-height:1.6;font-size:16px}.landing-final-cta{text-align:center;align-items:center;padding:80px 24px;background:transparent;border:none;box-shadow:none;max-width:800px;margin:0 auto}.landing-final-cta h2{margin:0;font-size:clamp(36px,6vw,56px);line-height:1.1;letter-spacing:-.02em;font-weight:800}.landing-final-cta p{margin:16px auto 32px;color:#c8d7f0d9;max-width:48ch;font-size:18px;line-height:1.5}.landing-footer{position:relative;z-index:1;border-top:1px solid rgba(145,159,214,.22);background:#070c1bcc}.landing-footer-inner{min-height:74px;display:flex;flex-direction:column;justify-content:center;gap:12px;padding:16px 0}.landing-footer-brand{display:inline-flex;align-items:center;gap:10px;font-weight:700}.landing-footer-brand img{width:24px;height:24px}.landing-footer-links{display:inline-flex;align-items:center;flex-wrap:wrap;gap:14px}.landing-footer-links a{color:#d3dfffd9;text-decoration:none;font-size:14px}.landing-footer-links a:hover{color:#fff}.legal-page{min-height:100vh;padding:32px 16px;color:#eef3ff;background:radial-gradient(circle at 14% 10%,rgba(65,150,255,.23),transparent 44%),radial-gradient(circle at 84% 15%,rgba(76,219,164,.21),transparent 46%),#040914}.legal-shell{width:min(860px,100%);margin:0 auto;display:grid;gap:14px}.legal-kicker{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#a5e0ffe6}.legal-title{margin:0;font-size:clamp(30px,6vw,48px);letter-spacing:-.02em}.legal-updated{margin:0;color:#c6d5f5d9;font-size:14px}.legal-card{margin-top:6px;border-radius:20px;border:1px solid rgba(148,166,224,.22);padding:22px;background:linear-gradient(160deg,#111c37db,#0a1125db),#0b1124ad}.legal-card h2{margin:20px 0 0;font-size:clamp(20px,4vw,28px);letter-spacing:-.01em}.legal-card h2:first-child{margin-top:0}.legal-card p{margin:8px 0 0;color:#d0dcf8e6;line-height:1.62}.legal-card a{color:#a5e0fff2}.legal-card a:hover{color:#fff}.legal-back-link{justify-self:start;text-decoration:none}.landing-mobile-cta{display:none}.landing-mobile-cta-button{text-decoration:none}.landing-page a:focus-visible,.landing-faq-trigger:focus-visible{outline:2px solid rgba(122,202,255,.95);outline-offset:2px;border-radius:10px}@media(max-width:719px){.landing-mobile-cta{position:fixed;left:0;right:0;bottom:max(10px,env(safe-area-inset-bottom));z-index:40;display:flex;justify-content:center;pointer-events:none;padding:0 14px}.landing-mobile-cta-button{width:min(540px,100%);pointer-events:auto;box-shadow:0 16px 36px #03081670}}@media(min-width:720px){.landing-main{gap:82px;padding:34px 0 90px}.landing-hero-actions{flex-direction:column;align-items:center}.landing-hero-primary,.landing-hero-secondary{min-width:188px}.landing-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-why-grid,.landing-steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-footer-inner{flex-direction:row;align-items:center;justify-content:space-between}.legal-page{padding:40px 24px}.legal-card{padding:28px}}@media(min-width:1024px){.landing-container{width:min(1160px,calc(100% - 48px))}.landing-links{display:inline-flex}.landing-main{gap:94px;padding:44px 0 94px}.landing-hero{grid-template-columns:1.04fr minmax(0,.96fr);gap:30px;padding:34px}.landing-features-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.landing-utility-card{grid-template-columns:1.03fr minmax(0,.97fr);padding:26px}.landing-proof-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.landing-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
