/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:"Vazirmatn", system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.grid{display:grid}}html{font-family:Vazirmatn,system-ui,sans-serif}:root{color-scheme:light;--bg:#f7f8fc;--surface:#fff;--text:#202638;--subtext:#737e92;--line:#e9ecf3;--soft:#f4f5fa;--accent:#7566f0;--accent-soft:#f1efff;--navy:#17233c;--shadow:0 8px 32px #232c4f09}html.dark{color-scheme:dark;--bg:#101725;--surface:#1b2537;--text:#edf1fa;--subtext:#a6b1c5;--line:#344157;--soft:#263247;--accent:#a69cff;--accent-soft:#32304e;--navy:#121d34;--shadow:0 8px 32px #00000021}*{box-sizing:border-box}body{background:var(--bg);min-width:320px;color:var(--text);margin:0;font-size:14px;line-height:1.65}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,label.button:focus-visible{outline-offset:3px;outline:3px solid #36cfa0}button,input,textarea,select{-webkit-tap-highlight-color:transparent}svg{flex-shrink:0}h1,h2,h3,p{margin-top:0}.app-shell{background:var(--bg);min-height:100dvh;display:flex}.content{animation:.24s both page-in}@keyframes page-in{0%{opacity:.65;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes tour-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}html[dir=ltr] .desktop-sidebar{border-left:0;border-right:1px solid var(--line)}html[dir=ltr] .side-link,html[dir=ltr] .year-tile,html[dir=ltr] .item-menu button{text-align:left}html[dir=ltr] .brand{justify-content:flex-start}html[dir=ltr] .brand span{text-align:left}html[dir=ltr] .brand small{direction:ltr}html[dir=ltr] .item-menu{left:auto;right:0}html[dir=ltr] .month-cell{text-align:left}html[dir=ltr] .switch.on i{transform:translate(20px)}html[dir=ltr] .period-controls svg{transform:rotate(0)}.section-heading h2{align-items:center;gap:8px;display:inline-flex}.upcoming-card{margin-top:22px}.upcoming-card .quiet-copy{overflow-wrap:anywhere;padding:4px 0}.mini-bar i,.goal-track i{transition:width .25s}.check-button.checked{animation:.2s check-pop}@keyframes check-pop{50%{transform:scale(1.13)}}button:active{transform:scale(.97)}.tour-shell{min-height:100dvh;padding:65px 16px max(20px,env(safe-area-inset-bottom));background:radial-gradient(circle at 80% 0%,#7566f030,transparent 45%),var(--bg);place-items:center;display:grid;position:relative}.tour-lang{top:max(14px,env(safe-area-inset-top));color:var(--accent);z-index:2;align-items:center;gap:8px;display:flex;position:absolute;right:16px}.tour-lang select{background:var(--surface);border-radius:99px;width:auto;max-width:175px}.tour-card{background:var(--surface);border:1px solid var(--line);border-radius:28px;width:100%;min-width:0;max-width:580px;padding:24px clamp(18px,5vw,38px);overflow:hidden;box-shadow:0 24px 80px #17233c16}.tour-top,.tour-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.tour-brand{letter-spacing:.8px;color:var(--text);direction:ltr;align-items:center;gap:10px;font-size:17px;font-weight:900;display:flex}.tour-skip{color:var(--subtext);background:0 0;border:0;min-height:44px;padding:0 8px}.tour-scene{text-align:center;animation:.3s both tour-in}.tour-art{color:#7566f0;isolation:isolate;background:linear-gradient(145deg,#edeaff,#f7f8fc);border-radius:36px;place-items:center;width:min(210px,52vw);height:min(210px,52vw);margin:20px auto 24px;display:grid;position:relative}.tour-art svg{z-index:1;filter:drop-shadow(0 8px 12px #7566f04a)}.tour-art .art-orbit{border:2px dashed #7566f050;border-radius:50%;width:75%;height:75%;position:absolute;transform:rotate(-25deg)}.tour-art .art-bubble{color:#17233c;background:#36cfa0;border-radius:15px;place-items:center;width:48px;height:48px;display:grid;position:absolute;bottom:14px;right:-9px;box-shadow:0 8px 20px #36cfa055}.tour-art.art-0{color:#fff;background:linear-gradient(145deg,#17233c,#7566f0);border-radius:50%}.tour-art.art-1{background:linear-gradient(145deg,#e7e3ff,#f9f8ff)}.tour-art.art-2{color:#159f76;background:linear-gradient(145deg,#dcf9f0,#f8fffc)}.tour-art.art-3{background:linear-gradient(145deg,#e9e7ff,#f6f3ff)}.tour-art.art-4{color:#4b77c9;background:linear-gradient(145deg,#e6efff,#f9fbff)}.tour-art.art-5{color:#bc7924;background:linear-gradient(145deg,#fff2de,#fffbf3)}.tour-art.art-6{background:linear-gradient(145deg,#e6e3ff,#e3faf2)}.tour-scene h1{margin:0 0 9px;font-size:clamp(23px,5vw,32px)}.tour-body{color:var(--subtext);max-width:440px;margin:0 auto 16px;font-size:16px;line-height:1.8}.tour-translation{background:var(--soft);text-align:start;max-width:450px;color:var(--subtext);border-radius:14px;gap:2px;margin:auto;padding:12px 16px;font-size:13px;display:grid}.tour-translation small{color:var(--accent);font-weight:800}.tour-translation b{color:var(--text)}.tour-bottom{margin-top:25px}.tour-progress{direction:ltr;gap:6px;margin-bottom:20px;display:flex}.tour-progress span{background:var(--soft);border-radius:99px;flex:1;height:5px;transition:background .25s}.tour-progress span.active{background:#7566f0}.tour-actions .button-primary{margin-inline-start:auto}.reminder-row{border-top:1px solid var(--line)}.reminder-row>div{min-width:0}@media(max-width:560px){.tour-card{padding:20px 16px}.tour-art{border-radius:27px;width:136px;height:136px;margin:5px auto 15px}.tour-art>svg{width:48px}.tour-art .art-bubble{width:36px;height:36px}.tour-body{font-size:14px}.tour-translation{font-size:12px}.tour-bottom{margin-top:15px}}@media(prefers-reduced-motion:reduce){.content,.tour-scene,.check-button.checked{animation:none}}.desktop-sidebar{background:var(--surface);border-left:1px solid var(--line);flex-direction:column;flex:0 0 254px;width:254px;height:100vh;min-height:100vh;padding:34px 17px 24px;display:flex;position:sticky;top:0}.brand,.mobile-brand{color:var(--navy);letter-spacing:.4px;direction:ltr;justify-content:flex-end;align-items:center;gap:11px;padding:0 16px;font-size:18px;font-weight:900;display:flex}.dark .brand,.dark .mobile-brand{color:#fff}.brand span{text-align:right;flex-direction:column;line-height:1.2;display:flex}.brand small{letter-spacing:0;color:var(--subtext);direction:rtl;margin-top:7px;font-size:10px;font-weight:500}.brand-mark{color:#fff;background:linear-gradient(145deg,#7566f0,#5a51dd);border-radius:13px;place-items:center;width:37px;height:37px;display:grid;position:relative;box-shadow:0 5px 12px #7566f047}.brand-mark:before{content:"";border:2px solid #36cfa0;border-left-color:#0000;border-radius:50%;position:absolute;top:5px;right:5px;bottom:5px;left:5px;transform:rotate(-28deg)}.brand-mark svg{width:19px;position:relative}.side-nav{gap:7px;margin-top:60px;display:grid}.side-link{width:100%;color:var(--subtext);text-align:right;background:0 0;border:0;border-radius:12px;align-items:center;gap:14px;min-height:49px;padding:12px 17px;font-weight:600;transition:background .2s,color .2s;display:flex}.side-link:hover,.side-link.active{background:var(--accent-soft);color:var(--accent)}.side-bottom{margin-top:auto}.sidebar-foot{color:var(--subtext);padding:24px 17px 0;font-size:12px;display:block}.main-column{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:82px;min-height:82px;padding:0 40px;display:flex}.topbar-title{font-size:16px;font-weight:800}.topbar-actions{gap:12px;display:flex}.icon-button{width:44px;height:44px;color:var(--subtext);background:var(--soft);border:0;border-radius:12px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:inline-flex}.icon-button:hover{color:var(--accent);background:var(--accent-soft)}.icon-button.small{background:0 0;width:36px;height:36px}.icon-button.bordered{border:1px solid var(--line);background:var(--surface)}.mobile-brand{display:none}.mobile-brand b{font-size:16px}.content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:40px 42px 80px}.app-footer{color:var(--subtext);text-align:center;padding:0 42px 35px;font-size:12px}.app-footer span{color:var(--accent);margin:0 4px}.eyebrow{color:var(--accent);margin-bottom:9px;font-size:13px;font-weight:700;display:block}h1{margin-bottom:5px;font-size:clamp(25px,2.6vw,34px);font-weight:900;line-height:1.45}h2{margin-bottom:0;font-size:18px;font-weight:800;line-height:1.5}h3{margin-bottom:5px;font-size:18px;font-weight:800}.muted{color:var(--subtext);margin-bottom:0}.welcome-row,.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.date-pill{background:var(--surface);border:1px solid var(--line);color:var(--subtext);white-space:nowrap;border-radius:11px;align-items:center;gap:9px;padding:10px 14px;display:flex}.hero-card{color:#fff;background:linear-gradient(112deg,#17233c,#26345b 57%,#544caa);border-radius:24px;justify-content:space-between;align-items:center;gap:22px;min-height:238px;margin-bottom:28px;padding:32px 39px;display:flex;position:relative;overflow:hidden}.hero-card:before,.hero-card:after{content:"";pointer-events:none;border:1px solid #ffffff20;border-radius:50%;width:210px;height:210px;position:absolute;top:-120px;left:20%}.hero-card:after{width:300px;height:300px;top:50%;left:auto;right:-150px}.hero-copy{z-index:1;position:relative}.hero-label{background:#ffffff20;border-radius:100px;margin-bottom:14px;padding:4px 12px;font-size:12px;display:inline-block}.hero-copy h2{margin-bottom:5px;font-size:clamp(22px,2.4vw,31px)}.hero-copy p{color:#c8d0e5;margin-bottom:24px}.hero-actions,.backup-actions,.dialog-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button{border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:45px;padding:9px 17px;font-weight:700;text-decoration:none;transition:transform .15s,background .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{color:#fff;background:#7566f0;box-shadow:0 5px 14px #7566f02b}.button-primary:hover{background:#6555df}.button-white{color:#332978;background:#fff}.button-glass{color:#fff;background:#ffffff20;border-color:#ffffff35}.button-glass:hover{background:#ffffff30}.button-outline{background:var(--surface);color:var(--text);border-color:var(--line)}.button-outline:hover{background:var(--soft)}.button-danger{color:#fff;background:#e45a67}.progress-ring{z-index:1;border-radius:50%;flex:0 0 166px;place-items:center;width:166px;height:166px;padding:12px;display:grid;position:relative;box-shadow:0 0 0 12px #ffffff0d}.progress-ring>div{background:#253052;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.progress-ring strong{font-size:30px;font-weight:900;line-height:1.2}.progress-ring span{color:#c8d0e5;font-size:12px}.home-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.right-stack{gap:22px;min-width:0;display:grid}.section-card,.planner-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:19px;min-width:0;padding:22px}.today-section{min-height:364px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:21px;display:flex}.section-kicker{color:var(--subtext);margin-bottom:3px;font-size:12px;font-weight:600;display:block}.count-badge{background:var(--accent-soft);width:27px;height:27px;color:var(--accent);vertical-align:middle;border-radius:8px;place-items:center;margin-right:4px;font-size:13px;display:inline-grid}.link-button,.text-action{color:var(--accent);white-space:nowrap;background:0 0;border:0;align-items:center;gap:5px;min-height:40px;font-weight:700;display:inline-flex}.link-button:hover,.text-action:hover{opacity:.75}.section-symbol,.report-icon{border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.section-symbol.mint,.report-icon.green{color:#159f76;background:#e3faf2}.section-symbol.violet,.report-icon.purple{background:var(--accent-soft);color:var(--accent)}.item-list{display:grid}.item-card{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-width:0;padding:15px 0;display:flex}.item-card:last-child{border-bottom:0}.check-button{background:var(--soft);color:#aab1c0;border:0;border-radius:12px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}.check-button:hover{background:var(--accent-soft);color:var(--accent)}.check-button.checked{color:#139e73;background:#e3faf2}.item-info{flex:1;min-width:0}.item-title-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.item-info strong{overflow-wrap:anywhere;font-weight:700}.item-card.is-done .item-info strong{color:var(--subtext);text-decoration:line-through}.priority-badge{color:#a66c10;background:#fff4dd;border-radius:6px;padding:1px 6px;font-size:11px}.item-meta{color:var(--subtext);flex-wrap:wrap;gap:8px;margin-top:2px;font-size:12px;display:flex}.item-meta span{align-items:center;gap:3px;display:inline-flex}.item-meta span+span:before{content:"·";margin-left:5px}.status-note{color:var(--accent);font-size:12px;display:block}.status-note.overdue{color:#ce7942}.item-menu-wrap{flex-shrink:0;position:relative}.item-menu{background:var(--surface);border:1px solid var(--line);z-index:20;border-radius:12px;width:215px;padding:7px;display:grid;position:absolute;top:36px;left:0;box-shadow:0 18px 45px #0002}.item-menu button{text-align:right;color:var(--text);background:0 0;border:0;border-radius:8px;min-height:38px;padding:9px 10px}.item-menu button:hover{background:var(--soft)}.danger-text,.item-menu button.danger-text{color:#e05c6a}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:205px;padding:18px;display:flex}.empty-icon{background:var(--accent-soft);width:50px;height:50px;color:var(--accent);border-radius:15px;place-items:center;margin-bottom:13px;display:grid}.empty-state strong{font-size:16px}.empty-state p{color:var(--subtext);max-width:320px;margin:5px 0 7px}.quiet-copy{color:var(--subtext);margin-bottom:0;font-size:13px}.week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:16px;display:grid}.week-day{color:var(--subtext);background:0 0;border:0;border-radius:12px;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:7px 1px;display:flex}.week-day b{color:var(--text);font-weight:800}.week-day.current,.week-day:hover{background:var(--accent-soft);color:var(--accent)}.week-day.current b{color:var(--accent)}.week-day i{background:0 0;border-radius:50%;width:4px;height:4px}.week-day i.has-events{background:#36cfa0}.mini-goal{margin-top:15px}.mini-goal>div:first-child{justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.mini-goal span{color:var(--subtext)}.mini-bar,.goal-track{background:var(--soft);border-radius:30px;height:7px;margin-top:8px;overflow:hidden}.mini-bar i,.goal-track i{border-radius:inherit;background:#7566f0;height:100%;display:block}.page-heading{margin-bottom:27px}.planner-panel{padding:24px}.segmented{background:var(--soft);border-radius:12px;width:fit-content;max-width:100%;margin-bottom:26px;padding:5px;display:flex}.segmented button{color:var(--subtext);background:0 0;border:0;border-radius:9px;min-height:40px;padding:8px 18px;font-weight:600}.segmented button.selected{background:var(--surface);color:var(--accent);box-shadow:0 2px 9px #17233c12}.period-bar{justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px;display:flex}.period-controls{align-items:center;gap:8px;display:flex}.today-button{min-height:44px;color:var(--accent);background:var(--accent-soft);border:0;border-radius:10px;padding:0 13px;font-weight:700}.day-summary{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.day-summary span{color:var(--subtext);background:var(--soft);border-radius:9px;align-items:center;gap:7px;padding:6px 10px;display:inline-flex}.weekly-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:9px;display:grid}.weekly-tile{border:1px solid var(--line);background:var(--surface);color:var(--subtext);border-radius:13px;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:14px 4px;display:flex}.weekly-tile b{color:var(--text);font-size:22px}.weekly-tile small{font-size:11px}.weekly-tile.active,.weekly-tile:hover{border-color:var(--accent);background:var(--accent-soft)}.tile-dots,.month-dots{gap:3px;height:7px;display:flex}.tile-dots i,.month-dots i{background:var(--accent);border-radius:50%;width:5px;height:5px}.tile-dots i.complete-dot,.month-dots i.complete-dot{background:#36cfa0}.subsection-title{margin-top:26px;font-size:16px;font-weight:800}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.month-weekday{text-align:center;color:var(--subtext);white-space:nowrap;text-overflow:clip;padding-bottom:10px;font-size:12px;font-weight:700;overflow:hidden}.month-cell{border:1px solid var(--line);background:var(--surface);text-align:right;min-width:0;min-height:75px;color:var(--text);border-radius:9px;flex-direction:column;align-items:flex-start;gap:9px;padding:9px;display:flex}.month-cell.outside{opacity:.4}.month-cell.today-cell>span{color:var(--accent);font-weight:900}.month-cell.active,.month-cell:hover{border-color:var(--accent);background:var(--accent-soft)}.calendar-note{color:var(--subtext);margin:18px 0 0;font-size:12px}.year-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.year-tile{text-align:right;background:var(--surface);border:1px solid var(--line);min-width:0;color:var(--text);border-radius:13px;justify-items:start;gap:10px;padding:18px;display:grid}.year-tile:hover{border-color:var(--accent);background:var(--accent-soft)}.year-tile>svg:first-child{color:var(--accent)}.year-tile span{color:var(--subtext);font-size:12px}.year-tile>svg:last-child{color:var(--accent);justify-self:end}.habit-grid,.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.habit-card,.goal-card{background:var(--surface);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow);border-radius:18px;padding:22px}.habit-top,.goal-card-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.habit-icon,.goal-icon{background:var(--accent-soft);width:45px;height:45px;color:var(--accent);border-radius:13px;place-items:center;display:grid}.goal-icon{color:#169e75;background:#e3faf2}.habit-card p,.goal-card p{color:var(--subtext);overflow-wrap:anywhere;min-height:24px;margin-bottom:23px}.habit-foot{border-top:1px solid var(--line);color:var(--subtext);justify-content:space-between;align-items:center;gap:8px;padding-top:16px;font-size:12px;display:flex}.habit-action{background:var(--accent-soft);min-height:38px;color:var(--accent);border:0;border-radius:9px;align-items:center;gap:5px;padding:6px 12px;font-weight:700;display:inline-flex}.habit-action.done{color:#159f76;background:#e3faf2}.rest-label{white-space:nowrap}.goal-stats{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.goal-stats strong{color:var(--accent);font-size:22px}.goal-stats small{color:var(--subtext);font-size:12px;font-weight:500}.goal-stats>span{font-weight:700}.goal-track{height:9px;margin:12px 0 20px}.goal-add{width:100%;min-height:42px;color:var(--accent);background:var(--accent-soft);border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;font-weight:700;display:flex}.goal-add:hover{filter:brightness(.97)}.report-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:22px;display:grid}.report-card{background:var(--surface);border:1px solid var(--line);min-height:154px;color:var(--subtext);border-radius:17px;flex-direction:column;justify-content:space-between;gap:9px;padding:22px;display:flex}.report-card strong{color:var(--text);font-size:31px;line-height:1.2}.report-card.primary-report{color:#efedff;background:#7566f0;border-color:#0000}.report-card.primary-report strong{color:#fff;font-size:38px}.report-card p{margin:0}.report-icon.amber{color:#b67925;background:#fff2df}.chart-card{max-width:800px}.chart-bars{grid-template-columns:repeat(7,minmax(0,1fr));gap:15px;padding:10px 5px;display:grid}.chart-column{color:var(--subtext);flex-direction:column;align-items:center;gap:8px;font-size:12px;display:flex}.chart-track{background:var(--soft);border-radius:7px;align-items:flex-end;width:min(100%,46px);height:140px;display:flex;overflow:hidden}.chart-track i{background:#7566f0;border-radius:7px;width:100%;min-height:0;transition:height .3s;display:block}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.settings-card h2{border-bottom:1px solid var(--line);padding-bottom:13px}.setting-row{justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.setting-row+.setting-row{border-top:1px solid var(--line)}.setting-row>div{gap:2px;display:grid}.setting-row strong{font-weight:700}.setting-row span,.settings-description,.settings-hint{color:var(--subtext);font-size:13px}.setting-row select{max-width:170px}select,input,textarea{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:10px;outline:none;width:100%;min-height:44px;padding:10px 12px}select:focus,input:focus,textarea:focus{border-color:var(--accent)}.settings-hint{margin:0}.settings-description{margin:15px 0}.switch{background:#cad0db;border:0;border-radius:30px;flex:0 0 48px;align-items:center;width:48px;height:28px;padding:3px;display:flex}.switch.on{background:#7566f0}.switch i{background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .2s;display:block}.switch.on i{transform:translate(-20px)}.offline-badge{background:var(--soft);color:var(--subtext);border-radius:10px;align-items:flex-start;gap:8px;padding:12px;font-size:12px;display:flex}.visually-hidden{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toast{z-index:80;color:#fff;background:#202638;border-radius:12px;align-items:center;gap:18px;max-width:min(420px,100% - 32px);padding:12px 16px;display:flex;position:fixed;bottom:24px;left:24px;box-shadow:0 15px 35px #0003}.toast button{color:#fff;background:0 0;border:0;place-items:center;display:grid}.error-banner{color:#8d531f;background:#fff1e2;border-radius:10px;margin-bottom:20px;padding:12px 16px}.modal-backdrop{z-index:60;background:#101725a8;justify-content:center;align-items:center;padding:15px;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.editor-dialog,.confirm-dialog{background:var(--surface);color:var(--text);border-radius:21px;width:100%;max-width:580px;max-height:min(90dvh,900px);overflow-y:auto;box-shadow:0 25px 75px #0003}.editor-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:23px 26px 17px;display:flex}.editor-header .eyebrow{margin-bottom:0}.editor-header h2{font-size:22px}.editor-form{gap:15px;padding:21px 26px 25px;display:grid}.form-field{gap:6px;min-width:0;display:grid}.form-field label{font-size:13px;font-weight:700}.form-field label>span{color:#e45a67}.form-field label small{color:var(--subtext);font-weight:400}textarea{resize:vertical}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.weekday-select{flex-wrap:wrap;gap:7px;display:flex}.weekday-select button{background:var(--soft);border:1px solid var(--line);width:42px;height:42px;color:var(--text);border-radius:10px}.weekday-select button.active{background:var(--accent);border-color:var(--accent);color:#fff}.form-hint{color:var(--subtext);align-items:flex-start;gap:8px;margin:0;font-size:12px;display:flex}.form-hint svg{color:var(--accent)}.form-error{color:#ca4455;margin:0;font-weight:600}.editor-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding-top:14px;display:flex}.confirm-dialog{text-align:center;max-width:430px;padding:28px}.confirm-icon{color:#d95767;background:#fff0f0;border-radius:15px;place-items:center;width:55px;height:55px;margin:0 auto 17px;display:grid}.confirm-dialog h2{margin-bottom:8px;font-size:21px}.confirm-dialog p{color:var(--subtext)}.confirm-dialog .dialog-actions{justify-content:center}.bottom-nav{display:none}@media(max-width:1100px){.desktop-sidebar{flex-basis:215px;width:215px}.content{padding:32px 27px 65px}.home-grid{grid-template-columns:1fr}.right-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.right-stack>.section-card:last-child:nth-child(odd){grid-column:1/-1}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.desktop-sidebar{display:none}.topbar{z-index:25;height:65px;min-height:65px;padding:0 18px;padding-top:env(safe-area-inset-top);box-sizing:content-box;position:sticky;top:0}.topbar-title{display:none}.mobile-brand{gap:9px;padding:0;font-size:19px;display:flex}.mobile-brand .brand-mark{border-radius:10px;width:31px;height:31px}.settings-shortcut{display:inline-flex}.content{padding:25px 17px 105px}.app-footer{padding:0 18px 107px}.bottom-nav{z-index:35;min-height:67px;padding:4px 4px max(4px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 20px #0000000b}.bottom-nav button{min-width:0;color:var(--subtext);background:0 0;border:0;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;min-height:55px;font-size:10px;font-weight:700;display:flex}.bottom-nav button.active{color:var(--accent);background:var(--accent-soft)}.toast{bottom:calc(79px + env(safe-area-inset-bottom));left:16px}.welcome-row,.page-heading{align-items:flex-start}.date-pill{display:none}.hero-card{padding:27px}.right-stack{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid{grid-template-columns:1fr}}@media(max-width:560px){.welcome-row,.page-heading{flex-direction:column;gap:15px;margin-bottom:22px}.page-heading>.button{width:100%}.hero-card{align-items:flex-start;gap:16px;padding:24px 20px}.hero-copy{flex:1;min-width:0}.hero-copy p{margin-bottom:17px;font-size:13px}.hero-actions{gap:7px}.hero-actions .button{min-height:41px;padding:8px 10px;font-size:12px}.progress-ring{flex-basis:88px;width:88px;height:88px;margin-top:24px;padding:7px;box-shadow:0 0 0 6px #ffffff0d}.progress-ring strong{font-size:19px}.progress-ring span{font-size:8px}.home-grid,.right-stack,.habit-grid,.goal-grid{grid-template-columns:1fr;gap:15px}.right-stack>.section-card:last-child:nth-child(odd){grid-column:auto}.section-card,.planner-panel{padding:17px}.segmented{width:100%}.segmented button{flex:1;padding:7px 2px;font-size:12px}.period-bar{align-items:flex-start}.period-bar h2{font-size:15px}.period-controls{gap:3px}.period-controls .icon-button{width:36px;height:36px}.period-controls .today-button{min-height:36px;padding:0 8px}.weekly-grid{gap:3px}.weekly-tile{padding:10px 1px;font-size:10px}.weekly-tile b{font-size:17px}.weekly-tile small{font-size:9px}.month-grid{gap:3px}.month-weekday{font-size:10px}.month-cell{min-height:47px;padding:5px;font-size:12px}.year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-grid{gap:9px}.report-card{min-height:135px;padding:14px;font-size:12px}.report-card strong{font-size:25px}.chart-bars{gap:6px}.form-grid{grid-template-columns:1fr}.editor-header{padding:18px}.editor-form{padding:16px 18px 22px}.editor-footer .button{flex:1;padding:8px}}@media(max-width:380px){.hero-card{flex-direction:column-reverse}.progress-ring{align-self:flex-end;margin:0}.hero-actions .button{flex:1}.period-bar{flex-wrap:wrap}.period-controls{margin-right:auto}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
