@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--bg:#faf8f7;--paper:#fff;--ink:#352f38;--muted:#938b96;--line:#eee9ed;--pink:#b95e83;--pink-dark:#984768;--blush:#f5e7ee;--green:#679d86;--shadow:0 14px 45px #44304408;--radius:22px;font-family:Manrope,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select{outline-offset:5px}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #c77b9f}a{color:inherit}svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}button{border:0;background:none}.layout{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;padding:32px 22px 22px;border-right:1px solid var(--line);background:#fffdfc;display:flex;flex-direction:column;z-index:10}.brand{display:flex;align-items:center;gap:11px;padding:0 12px 35px;text-decoration:none}.brandmark{width:38px;height:38px;border-radius:13px;background:var(--pink);color:white;display:grid;place-items:center;font-size:27px;font-weight:800;box-shadow:0 4px 12px #b95e8330}.brandname{font-size:24px;font-weight:800;letter-spacing:-1px}.brandheart{color:var(--pink);font-size:12px;vertical-align:top}.nav-label{text-transform:uppercase;letter-spacing:1.8px;font-size:10px;font-weight:800;color:#aca1ad;margin:20px 14px 13px}.navbtn{display:flex;align-items:center;gap:13px;width:100%;padding:13px 15px;margin:3px 0;border-radius:12px;text-align:left;color:#827887;font-size:13px;font-weight:650;transition:background .18s,color .18s}.navbtn:hover{background:#f8f3f5}.navbtn.active{background:var(--blush);color:var(--pink-dark)}.navbtn.active svg{stroke-width:2}.badge{margin-left:auto;background:#fff9fc;border-radius:7px;padding:2px 7px;font-size:10px}.project-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:var(--project,#9dadd6);flex-shrink:0}.sidebar .project-dot{margin:0 5px}.side-bottom{margin-top:auto;padding-top:25px}.premium-teaser{background:linear-gradient(120deg,#f7eef3,#f4effa);border:1px solid #eee2ec;border-radius:16px;padding:17px;margin:18px 0}.premium-teaser strong{font-size:12px}.premium-teaser p{font-size:11px;color:#9a8295;line-height:1.8;margin:7px 0 0}.premium-teaser svg{color:var(--pink);width:17px}.profile{display:flex;align-items:center;gap:10px;padding:17px 9px 0;border-top:1px solid var(--line)}.avatar{height:35px;width:35px;display:grid;place-items:center;border-radius:50%;background:#f3e7eb;color:var(--pink);font-size:13px;font-weight:800}.profile strong{font-size:12px}.profile small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.profile>svg{margin-left:auto;color:var(--muted);width:16px}.content{grid-column:2;padding:27px 43px 55px;max-width:1540px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:30px}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:10px;align-items:center}.breadcrumb span{color:#c6bec7}.top-actions{display:flex;align-items:center;gap:12px}.preview-badge{font-size:10px;border:1px solid var(--line);border-radius:7px;color:#9c8593;padding:5px 9px;background:#fff}.icon-btn{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:11px;color:#948391}.icon-btn:hover{background:var(--blush);color:var(--pink-dark)}.search{position:relative;display:flex;align-items:center;gap:8px;width:220px;background:white;border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:#a49aa7}.search svg{width:16px}.search input{width:100%;border:0;outline:0;background:none;font-size:11px;min-width:0}.search kbd{font:9px system-ui;color:#aaa;border:1px solid var(--line);padding:2px 4px;border-radius:4px;white-space:nowrap}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.eyebrow{font-size:11px;color:var(--muted);margin-bottom:8px;letter-spacing:.3px}h1{margin:0;font-size:30px;letter-spacing:-1.2px;font-weight:800;line-height:1.35}.wave{font-size:25px;display:inline-block;margin-left:5px}p.subtitle{font-size:12px;color:var(--muted);margin:9px 0 0;line-height:1.8}.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--pink);color:white;padding:12px 18px;border-radius:11px;font-size:12px;font-weight:700;box-shadow:0 4px 14px #b95e8320;transition:background .18s,transform .18s;white-space:nowrap}.primary:hover{background:var(--pink-dark);transform:translateY(-1px)}.primary svg{width:17px;height:17px}.secondary{border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:12px;font-weight:650;background:white}.secondary:hover{background:var(--bg)}.hero{position:relative;height:218px;border-radius:var(--radius);overflow:hidden;margin-bottom:30px;background:#f4e2e5;box-shadow:var(--shadow)}.hero img{position:absolute;width:68%;height:100%;right:0;object-fit:cover;object-position:55% 58%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f5e5e8 0%,#f5e5e8 28%,#f5e5e8e6 37%,#f5e5e830 66%,transparent)}.hero-copy{position:relative;z-index:1;padding:28px 34px;max-width:52%}.hero-tag{font-size:9px;text-transform:uppercase;letter-spacing:1.7px;font-weight:800;color:#b1798c;display:flex;align-items:center;gap:7px}.hero-tag svg{width:13px;height:13px}.hero h2{font-size:29px;line-height:1.35;letter-spacing:-1px;margin:12px 0 8px;font-weight:800;color:#745364}.hero p{font-size:11px;line-height:1.9;color:#a17b8d;max-width:270px;margin:0}.hero-pill{display:inline-flex;gap:5px;align-items:center;font-size:9px;margin-top:14px;padding:5px 9px;background:#ffffff80;border:1px solid #ffffff90;border-radius:7px;color:#9e6d83}.hero-pill svg{width:12px;height:12px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:27px;align-items:start}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.section-heading h2{font-size:17px;font-weight:800;letter-spacing:-.4px;margin:0}.count{font-size:11px;color:var(--muted);margin-left:8px;font-weight:500}.text-button{font-size:11px;color:var(--pink);padding:5px 0;display:flex;align-items:center;gap:4px}.text-button svg{width:14px;height:14px}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:22px}.week-day{border:1px solid transparent;border-radius:13px;min-height:66px;padding:9px 4px;text-align:center;position:relative}.week-day .weekday{font-size:9px;display:block;color:#a69ba6;margin-bottom:6px;text-transform:uppercase}.week-day strong{font-size:15px;font-weight:750}.week-day .dot{width:3px;height:3px;display:block;border-radius:50%;background:#c989a7;position:absolute;bottom:5px;left:calc(50% - 1.5px)}.week-day:hover{background:#f3edef}.week-day.selected{background:var(--pink);color:white;box-shadow:0 5px 15px #b95e8323}.week-day.selected .weekday{color:#f3dce6}.week-day.selected .dot{background:white}.week-day.is-today:not(.selected){border-color:#e8c4d4}.filters{display:flex;gap:6px;margin-bottom:22px;flex-wrap:wrap}.filter{font-size:10px;padding:7px 12px;border-radius:8px;color:#a294a0;white-space:nowrap}.filter.active{background:#eee8ec;color:#6f5b6b;font-weight:750}.task-group-title{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;font-weight:800;color:#a297a3;margin:21px 0 10px;display:flex;align-items:center;gap:7px}.task-group-title span{margin-left:auto;font-size:9px;letter-spacing:0;font-weight:500;color:#b3a9b2}.tasks{display:flex;flex-direction:column;gap:9px}.task-row{border:1px solid var(--line);border-radius:14px;padding:15px 14px;background:white;display:flex;align-items:center;gap:12px;transition:border-color .16s,box-shadow .16s;min-height:77px}.task-row:hover{border-color:#dcc4d0;box-shadow:0 5px 18px #49364905}.check{width:20px;height:20px;border:1.5px solid #ded5de;border-radius:7px;padding:0;display:grid;place-items:center;flex-shrink:0;transition:all .16s}.check:hover{border-color:var(--pink);background:var(--blush)}.check svg{width:13px;height:13px;opacity:0}.task-row.done .check{background:#a9bfaf;border-color:#a9bfaf;color:white}.task-row.done .check svg{opacity:1}.task-row.done .task-title{text-decoration:line-through;color:#aaa0a9}.task-title{font-size:12px;font-weight:700;line-height:1.7;text-align:left;padding:0;max-width:100%;word-break:break-word}.task-body{flex:1;min-width:0}.task-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:9px;color:#ada2ad;margin-top:5px}.task-meta svg{width:11px;height:11px}.meta-item{display:inline-flex;align-items:center;gap:4px}.project-tag{border-radius:5px;background:var(--tint,#f4f1f5);padding:2px 6px;color:var(--shade,#a08bab);font-size:9px;display:inline-flex;gap:4px;align-items:center}.project-tag .project-dot{width:5px;height:5px}.task-actions{display:flex;gap:3px;align-items:center}.task-actions .icon-btn{width:25px;height:28px}.task-actions svg{width:14px;height:14px}.task-actions .more{color:#bbb0bd}.quick-add{width:100%;border:1px dashed #ddced8;color:#b98da5;border-radius:13px;text-align:left;padding:13px 14px;display:flex;gap:8px;align-items:center;font-size:11px;margin-top:13px}.quick-add:hover{background:#fcf0f6}.quick-add svg{width:15px}.panel{background:white;border:1px solid var(--line);border-radius:18px;padding:21px;margin-bottom:18px;box-shadow:var(--shadow)}.panel-title{font-size:12px;font-weight:800;margin:0 0 16px;display:flex;align-items:center;gap:7px}.panel-title svg{width:16px;color:#b899a8}.progress-ring{width:114px;height:114px;border-radius:50%;margin:20px auto 17px;background:conic-gradient(var(--pink) var(--progress,0%),#f4edf1 0);padding:8px;position:relative}.progress-ring:before{content:'';position:absolute;inset:8px;background:white;border-radius:50%}.progress-ring-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring strong{font-size:27px;letter-spacing:-1px}.progress-ring small{font-size:8px;color:var(--muted);margin-top:2px}.progress-caption{text-align:center;font-size:11px;color:#827082;line-height:1.8}.mini-stats{display:flex;justify-content:space-around;border-top:1px solid var(--line);margin-top:17px;padding-top:16px;text-align:center}.mini-stats strong{display:block;font-size:16px}.mini-stats span{font-size:8px;color:var(--muted);display:block;margin-top:3px}.streak-card{display:flex;align-items:center;gap:12px;padding:16px 18px;background:#fff8ef;border:1px solid #f5e9d9;border-radius:16px;margin-bottom:18px}.streak-icon{font-size:25px}.streak-card strong{font-size:11px;display:block;color:#a87f51}.streak-card small{font-size:9px;color:#c3a480;display:block;margin-top:4px}.aside-project{display:flex;gap:10px;padding:10px 0;align-items:center;text-align:left;width:100%}.project-icon{width:37px;height:37px;border-radius:12px;background:var(--tint,#f4f1f8);display:grid;place-items:center;font-size:18px}.aside-project strong{font-size:11px;display:block}.aside-project small{font-size:9px;color:var(--muted);display:block;margin-top:3px}.aside-project>svg{width:14px;margin-left:auto;color:#b7abb7}.quote{font-size:10px;line-height:1.9;text-align:center;color:#b9a7b3;margin:22px 14px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-card{position:relative;background:white;border:1px solid var(--line);border-radius:20px;min-height:200px;padding:23px;text-align:left;transition:transform .18s,border-color .18s;overflow:hidden}.project-card:hover{transform:translateY(-3px);border-color:#dcb7c9}.project-card .project-icon{width:48px;height:48px;border-radius:15px;font-size:24px;margin-bottom:23px}.project-card h3{font-size:17px;letter-spacing:-.4px;margin:0 0 8px}.project-card p{font-size:10px;color:var(--muted);margin:0 0 17px}.project-card .arrow{position:absolute;top:23px;right:20px;color:#b8adb8}.progress-line{height:4px;background:#f2edf1;border-radius:10px;overflow:hidden}.progress-line span{display:block;height:100%;background:var(--project);border-radius:10px}.new-project{border:1.5px dashed #e0cdd9;background:transparent;color:#b48aa2;display:flex;align-items:center;justify-content:center;gap:9px;min-height:200px;font-size:12px}.project-detail-head{display:flex;align-items:center;gap:15px}.project-detail-head .project-icon{width:58px;height:58px;font-size:27px;border-radius:17px}.back-link{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:11px;margin-bottom:20px;padding:0}.back-link svg{width:15px}.empty{text-align:center;padding:40px 20px;color:var(--muted);font-size:12px;line-height:1.9}.empty-icon{width:56px;height:56px;border-radius:18px;background:var(--blush);color:#c397ac;display:grid;place-items:center;margin:0 auto 15px}.empty strong{display:block;color:#796575;font-size:14px}.empty p{margin:7px 0 18px}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:23px}.calendar-main{background:white;border:1px solid var(--line);border-radius:20px;padding:24px}.month-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}.month-head h2{margin:0;font-size:18px;text-transform:capitalize}.month-controls{display:flex;align-items:center;gap:6px}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays div{font-size:10px;color:#a99daa;text-align:center;padding:10px 0}.calendar-day{min-height:78px;border:1px solid transparent;border-radius:12px;text-align:left;padding:10px 8px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.calendar-day:hover{background:#fcf4f8}.calendar-day.selected{background:var(--blush);border-color:#edd4df}.calendar-day.today strong{background:var(--pink);color:white;border-radius:7px;padding:4px 6px;margin:-4px -6px}.calendar-day.outside{opacity:.3}.calendar-day strong{font-size:12px;font-weight:650}.calendar-dots{display:flex;gap:3px;flex-wrap:wrap}.calendar-dots i{width:5px;height:5px;border-radius:50%;background:var(--project,#ccb6c9)}.calendar-day small{font-size:8px;color:#aa7d95}.selected-day-heading{font-size:15px;text-transform:capitalize;margin:4px 0 19px}.calendar-side .task-row{padding:12px;min-height:73px}.calendar-side .task-title{font-size:11px}.calendar-side .task-actions{display:none}.calendar-side .task-meta{gap:5px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stat-card{background:white;border:1px solid var(--line);padding:23px;border-radius:18px}.stat-card .icon-label{color:var(--muted);font-size:10px;display:flex;gap:8px;align-items:center}.stat-card .icon-label svg{width:16px;color:var(--pink)}.stat-card strong{font-size:32px;letter-spacing:-1px;display:block;margin:15px 0 3px}.stat-card small{font-size:10px;color:#a5a}.stat-card small{color:var(--muted)}.chart{height:180px;display:flex;gap:18px;align-items:end;padding:15px 10px 25px}.chart-day{flex:1;height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:8px;position:relative}.chart-bar{width:65%;max-width:45px;background:#efd5e1;border-radius:7px 7px 3px 3px;min-height:4px}.chart-day.current .chart-bar{background:var(--pink)}.chart-day span{font-size:9px;color:var(--muted);position:absolute;bottom:-20px}.chart-day small{font-size:9px;color:#a68498}.settings-list{max-width:700px}.settings-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0;border-bottom:1px solid var(--line)}.settings-item strong{font-size:12px;display:block}.settings-item p{font-size:10px;color:var(--muted);margin:5px 0 0;line-height:1.7}.toggle{width:38px;height:23px;border-radius:20px;background:#e6dfe5;padding:3px;flex-shrink:0}.toggle:before{content:'';width:17px;height:17px;border-radius:50%;background:white;display:block;box-shadow:0 1px 3px #0001;transition:transform .2s}.toggle.on{background:var(--pink)}.toggle.on:before{transform:translateX(15px)}.premium-hero{padding:38px;border-radius:23px;background:linear-gradient(130deg,#f3e1eb,#eee6fa);margin-bottom:25px;max-width:760px}.premium-hero>svg{width:36px;height:36px;color:var(--pink)}.premium-hero h2{font-size:28px;letter-spacing:-1px;margin:16px 0 9px}.premium-hero p{font-size:12px;color:#a17f96;line-height:1.9;max-width:430px}.premium-feature{display:flex;gap:12px;align-items:center;font-size:12px;margin:20px 0}.premium-feature svg{color:var(--pink);width:18px}.premium-feature.future{color:#a79aa6}.tiny-note{font-size:10px;color:#a99aa7;line-height:1.8;margin-top:17px}.bottom-nav{display:none}dialog{border:1px solid #eee3eb;border-radius:23px;padding:0;width:min(460px,calc(100vw - 28px));max-height:90dvh;color:var(--ink);box-shadow:0 20px 100px #38263125}dialog::backdrop{background:#35263845;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:23px 25px 12px}.dialog-head h2{font-size:19px;margin:0;letter-spacing:-.6px}.dialog-body{padding:8px 25px 25px}.form-field{display:block;margin:13px 0 17px}.form-field>span{display:block;font-size:10px;font-weight:700;color:#9c8d9c;margin-bottom:8px}.form-field input,.form-field select{width:100%;padding:12px 13px;border:1px solid #e8dfe6;background:#fff;border-radius:10px;font-size:12px;color:var(--ink);min-width:0}.form-field input:focus,.form-field select:focus{outline:0;border-color:#c989a7;box-shadow:0 0 0 3px #f7edf2}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .form-field{margin-top:0}.dialog-actions{display:flex;justify-content:space-between;gap:10px;margin-top:24px}.dialog-actions .primary{flex:1}.danger{color:#b46a76}.icon-picker{display:flex;flex-wrap:wrap;gap:8px}.icon-choice{width:40px;height:40px;border-radius:12px;background:#faf6f8;font-size:22px;border:1.5px solid transparent}.icon-choice.selected{border-color:var(--pink);background:var(--blush)}.form-message{font-size:11px;line-height:1.8;color:#a48195;padding:10px 12px;border-radius:10px;background:#fcf4f8}.switch-row{display:flex;align-items:center;gap:9px;font-size:11px;color:#988692;margin-top:4px}.switch-row input{accent-color:var(--pink)}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);padding:12px 20px;border:1px solid #ecdce5;background:#fffdfd;color:#816173;border-radius:12px;box-shadow:0 8px 40px #60445420;z-index:100;font-size:12px;opacity:0;pointer-events:none;transition:all .2s;max-width:90vw;text-align:center}#toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-logo{display:none}.page{animation:enter .22s ease-out}@keyframes enter{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.content{padding-left:60px;padding-right:60px}.hero{height:245px}.hero-copy{padding-top:36px}.hero h2{font-size:34px}}
@media(max-width:1150px){.layout{grid-template-columns:210px 1fr}.sidebar{width:210px;padding:28px 15px}.content{padding:25px 28px}.workspace{grid-template-columns:minmax(0,1fr) 235px;gap:18px}.panel{padding:17px}.hero-copy{padding:25px}.hero h2{font-size:26px}.project-grid{grid-template-columns:repeat(2,1fr)}.calendar-layout{grid-template-columns:1fr}.calendar-side .tasks{display:grid;grid-template-columns:1fr 1fr}.search{width:185px}.top-actions{gap:5px}}
@media(max-width:900px){.layout{grid-template-columns:190px 1fr}.sidebar{width:190px;padding:25px 12px}.brand{padding-left:7px;gap:8px}.brandname{font-size:22px}.brandmark{width:33px;height:33px;font-size:23px}.content{padding:22px}.workspace{grid-template-columns:1fr}.right-column{display:grid;grid-template-columns:1fr 1fr;gap:15px}.right-column .streak-card,.right-column .quote{display:none}.right-column .panel{margin:0}.hero{height:200px}.hero-copy{max-width:57%;padding:22px}.hero h2{font-size:24px}.hero p{font-size:10px}h1{font-size:26px}.page-heading .primary{padding:11px 13px}.search{width:155px}.search kbd{display:none}.preview-badge{font-size:8px}.stat-grid{gap:10px}.stat-card{padding:17px}}
@media(max-width:650px){.layout{display:block}.sidebar{display:none}.content{padding:18px 18px 110px}.topbar{margin-bottom:25px;gap:10px}.breadcrumb{display:none}.mobile-logo{display:flex;align-items:center;gap:7px;font-weight:800;font-size:19px;letter-spacing:-.7px}.mobile-logo .brandmark{width:27px;height:27px;font-size:20px;border-radius:9px}.top-actions{margin-left:auto;gap:4px}.search{width:34px;padding:8px;border:0;background:none}.search input,.search kbd{display:none}.search:focus-within{position:absolute;left:17px;right:17px;top:15px;width:auto;background:white;border:1px solid var(--line);z-index:20}.search:focus-within input{display:block}.search svg{width:18px;height:18px;cursor:pointer}.topbar .icon-btn{width:28px}.preview-badge{padding:4px 7px;font-size:8px}.page-heading{align-items:flex-start;margin-bottom:21px;gap:8px}.eyebrow{font-size:10px}h1{font-size:25px;letter-spacing:-1px}.wave{font-size:20px}.page-heading .primary{font-size:0;width:38px;height:38px;min-width:38px;padding:10px;border-radius:12px;margin-top:19px}.page-heading .primary svg{width:20px;height:20px}.subtitle{font-size:10px!important}.hero{height:190px;border-radius:18px;margin-bottom:25px}.hero img{width:86%;object-position:54% 55%}.hero:after{background:linear-gradient(90deg,#f5e5e8 0%,#f5e5e8fa 25%,#f5e5e8cf 40%,#f5e5e820 78%)}.hero-copy{padding:21px;max-width:65%}.hero h2{font-size:23px;margin:10px 0}.hero-tag{font-size:7px;letter-spacing:1.1px}.hero p{font-size:9px;max-width:160px}.hero-pill{font-size:8px;margin-top:11px;padding:4px 7px}.section-heading h2{font-size:16px}.text-button{font-size:10px}.section-heading{margin-bottom:13px}.week-strip{gap:4px;margin-bottom:17px}.week-day{min-height:62px;border-radius:12px}.week-day .weekday{font-size:8px}.week-day strong{font-size:14px}.filters{gap:2px;margin-bottom:17px}.filter{padding:7px 10px;font-size:9px}.task-row{padding:14px 12px;gap:10px;min-height:77px;border-radius:13px}.task-title{font-size:11px}.task-meta{font-size:8px;gap:7px}.task-actions{gap:0}.task-actions .more{width:21px}.check{width:19px;height:19px;border-radius:6px}.project-tag{font-size:8px;padding:2px 5px}.task-group-title{margin-top:18px;font-size:9px}.right-column{grid-template-columns:1fr 1fr;gap:11px;margin-top:5px}.right-column .panel{padding:15px 12px}.panel-title{font-size:10px}.progress-ring{width:90px;height:90px;margin:14px auto}.progress-ring strong{font-size:22px}.progress-caption{font-size:9px}.mini-stats strong{font-size:13px}.aside-project{gap:7px}.aside-project .project-icon{width:29px;height:29px;font-size:15px;border-radius:9px}.aside-project strong{font-size:10px}.aside-project small{font-size:8px}.quote{font-size:9px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:flex;justify-content:space-around;background:#fffdfcf5;backdrop-filter:blur(20px);padding:11px 10px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.bottom-nav button{display:flex;align-items:center;flex-direction:column;gap:5px;color:#ad9ea9;min-width:55px;font-size:8px;padding:2px 6px}.bottom-nav button svg{width:20px;height:20px}.bottom-nav button.active{color:var(--pink)}.project-grid{gap:12px}.project-card{padding:18px;min-height:185px;border-radius:17px}.project-card .project-icon{width:41px;height:41px;font-size:20px;margin-bottom:20px}.project-card h3{font-size:15px}.project-card p{font-size:9px}.new-project{min-height:185px;font-size:11px;gap:5px}.calendar-main{padding:16px 11px}.calendar-day{min-height:61px;padding:8px 7px;border-radius:9px}.calendar-day strong{font-size:11px}.calendar-day small{font-size:7px}.calendar-dots i{width:4px;height:4px}.month-head{padding:0 7px;margin-bottom:15px}.month-head h2{font-size:16px}.calendar-grid,.calendar-weekdays{gap:2px}.calendar-side .tasks{display:flex}.calendar-layout{gap:22px}.stat-grid{grid-template-columns:1fr;gap:10px}.stat-card{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px}.stat-card strong{font-size:24px;margin:0}.stat-card small{display:none}.premium-hero{padding:25px}.premium-hero h2{font-size:25px}.dialog-head{padding:21px 21px 11px}.dialog-body{padding:5px 21px 23px}.dialog-head h2{font-size:18px}#toast{bottom:90px}.page-heading.project-header{align-items:center}.project-detail-head{gap:10px}.project-detail-head .project-icon{width:44px;height:44px;font-size:22px}.project-header .primary{margin-top:0}.settings-item p{max-width:235px}}
.sidebar{overflow-y:auto}.settings-item{width:100%;text-align:left}.new-project{flex-direction:column;border-radius:20px}.new-project span{font-size:10px;font-weight:400}.progress-ring strong span{font-size:13px;color:var(--muted);font-weight:500}.mini-stats small{display:block;font-size:9px;color:var(--muted);margin-top:4px}.calendar-weekdays span{text-align:center;font-size:10px;color:var(--muted);padding:10px 0}.form-message:empty{display:none}.panel-title .text-button{margin-left:auto}.switch-row{justify-content:space-between}.switch-row>span{display:flex;align-items:center;gap:7px}.premium-feature p{font-size:11px;line-height:1.8;color:var(--muted)}.quote span{display:block;font-size:18px;margin-top:5px}.project-card h3,.aside-project strong,.navbtn span:not(.badge){overflow-wrap:anywhere}.project-card .project-icon{display:grid}.project-detail-head .subtitle .text-button{display:inline-flex;margin-left:10px}.dialog-body>p{font-size:13px;line-height:1.9;color:#8f7b8a}
@media(max-width:650px){.search{width:150px;background:#fff;border:1px solid var(--line);border-radius:10px}.search input{display:block;font-size:12px}.task-title,.calendar-side .task-title{font-size:13px}.task-meta,.project-tag{font-size:10px}.filter{font-size:11px;min-height:36px}.week-day .weekday{font-size:10px}.week-day strong{font-size:16px}.bottom-nav button{font-size:10px;min-height:43px}.form-field input,.form-field select{font-size:16px}.form-field>span{font-size:12px}.settings-item strong{font-size:14px}.settings-item p{font-size:12px}.hero{height:208px}.hero-copy{padding:20px 17px;max-width:69%}.hero p{font-size:10px}.hero-tag{font-size:8px}.hero-pill{font-size:8px}.task-actions .more{width:28px;min-height:35px}.task-actions svg{width:16px}.quick-add{font-size:12px;min-height:45px}.project-card p{font-size:11px}.project-card h3{font-size:16px}.right-column .panel-title{font-size:11px}.progress-caption{font-size:11px}.aside-project strong{font-size:12px}.aside-project small{font-size:10px}.preview-badge{font-size:9px}.tiny-note{font-size:11px}}
.login-shell{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#f7e5ed,transparent 65%)}.login-card{width:min(440px,100%);padding:36px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.login-card .brandmark{margin-bottom:25px}.login-card h1{font-size:26px}.login-card p{color:var(--muted);line-height:1.9;font-size:14px}.login-card .primary,.login-card .secondary{width:100%;margin-top:12px;text-decoration:none}.login-card .tiny-note{font-size:12px}.preview-badge{white-space:nowrap}.task-row.done .check{cursor:default}

/* The home list now occupies the whole workspace. */
dialog{
 position:fixed;left:0;right:0;bottom:auto;
 top:calc(var(--modal-top,0px) + var(--modal-height,100dvh)/2);
 transform:translateY(-50%);margin:0 auto;
 max-height:calc(var(--modal-height,100dvh) - 24px);overflow:hidden;
}
dialog[open]{display:flex;flex-direction:column}
.dialog-head{flex:0 0 auto;gap:12px;background:white}
.dialog-head h2{min-width:0;overflow-wrap:anywhere;outline:none}
.dialog-head .icon-btn{flex-shrink:0}
.dialog-body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding:12px}
.form-grid{align-items:end}
.form-field textarea{width:100%;padding:12px 13px;border:1px solid #e8dfe6;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:14px;line-height:1.6;resize:vertical;min-height:112px}
.form-field textarea:focus{outline:0;border-color:#c989a7;box-shadow:0 0 0 3px #f7edf2}
.note-editor{margin:16px 0 22px;border:1px solid var(--line);border-radius:12px;padding:12px}
.note-editor summary{display:flex;align-items:center;gap:7px;color:#9b6680;cursor:pointer;font-size:12px;list-style:none}
.note-editor summary::-webkit-details-marker{display:none}
.note-editor summary::after{content:'+';font-size:18px}
.note-editor[open] summary::after{content:'−'}
.note-editor summary>span{margin-left:auto;font-size:10px;color:var(--muted)}
.note-editor summary svg{width:16px;height:16px}
.note-editor .form-field{margin:12px 0 0}
.task-note-preview{display:flex;align-items:flex-start;gap:5px;text-align:left;color:#9b8191;font-size:11px;margin:7px 0;padding:0;width:100%;max-width:100%;line-height:1.6}
.task-note-preview svg{width:13px;height:16px;flex-shrink:0}
.task-note-preview span{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;overflow-wrap:anywhere}
.task-note-full{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:14px;padding:15px;border:1px solid var(--line);border-radius:12px}
.swipe-task{position:relative;overflow:hidden;border-radius:14px;isolation:isolate}
.swipe-task>.task-row{position:relative;z-index:1;background:white;border-radius:inherit;transform:translateX(var(--swipe-x,0px));transition:transform .18s ease-out;touch-action:auto}
.swipe-task.is-dragging>.task-row{transition:none;user-select:none}
.swipe-task>.task-row{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.swipe-task.has-project>.task-row{background:var(--task-fill);border-color:var(--task-edge)}
.swipe-task>.task-row:hover{box-shadow:none}
.swipe-task.has-project>.task-row:hover{border-color:var(--task-edge)}
.color-picker{display:flex;flex-wrap:wrap;gap:8px}
.color-choice{width:40px;height:40px;display:grid;place-items:center;border:1px solid transparent;border-radius:12px;background:#faf6f8}
.color-choice.selected{border-color:var(--pink);background:var(--blush)}
.color-choice:focus-visible{outline:2px solid var(--pink);outline-offset:2px}
.color-swatch{width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffff65,transparent 60%),var(--swatch,var(--shade));filter:saturate(1.55);box-shadow:inset 0 -2px 4px #0002}
.form-field>.project-icon-field{display:block;position:relative;margin:0}
.project-icon-field>.color-swatch{display:none;position:absolute;inset-inline-start:13px;top:50%;transform:translateY(-50%);pointer-events:none}
.project-icon-field>input:placeholder-shown:not(:focus)+.color-swatch{display:block}
.swipe-complete,.swipe-delete{position:absolute;inset-block:0;width:50%;display:flex;flex-direction:column;justify-content:center;gap:5px;font-size:11px;font-weight:650;padding:0 13px}
.swipe-complete{left:0;background:#e0f0e7;color:#3a8062;align-items:flex-start}
.swipe-delete{right:0;background:#f8e2e5;color:#b34b65;align-items:flex-end}
@media(max-width:650px){.form-field textarea{font-size:16px}.task-note-preview{font-size:12px}}
.workspace{grid-template-columns:minmax(0,1fr)}
.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.notes-grid.note-layout-list{grid-template-columns:minmax(0,1fr)}
.notes-grid.note-layout-grid,.tasks.task-layout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.notes-grid.note-layout-grid[data-staggered-tiles],.tasks.task-layout-grid[data-staggered-tiles]{display:block;position:relative;--tile-gap:12px;column-gap:var(--tile-gap)}
[data-staggered-tiles]>.swipe-task{position:absolute;top:var(--tile-top,0px);left:0;width:calc((100% - var(--tile-gap))/2);min-width:0}
[data-staggered-tiles]>.swipe-task[data-tile-right]{left:auto;right:0}
.task-layout-grid .task-row{display:flex;flex-direction:column;align-items:stretch;padding:13px;gap:7px}
.task-layout-grid .check{align-self:flex-start}
.task-layout-grid .task-actions{position:absolute;top:6px;right:7px;justify-content:flex-end}
.task-layout-grid .task-body{flex:1;width:100%;margin-top:3px}
.task-layout-grid .task-title{font-size:12px;line-height:1.6}
.task-layout-grid .task-meta{font-size:9px;gap:5px}
.task-layout-grid .project-tag{max-width:100%;overflow-wrap:anywhere}
.task-layout-grid .task-note-preview{font-size:11px}
.note-layout-grid .note-card{padding:14px}
.note-layout-grid .note-card h2{font-size:14px}
.note-layout-grid .note-card-body{font-size:12px}
.view-tools{display:flex;justify-content:flex-end;margin:0 0 14px}
.view-tools.with-sort,.list-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}
.list-controls{margin-bottom:17px;flex-wrap:wrap}
.list-controls .filters{margin-bottom:0}
.list-controls .sort-picker{margin-left:auto}
.sort-picker{position:relative;flex:none}
.sort-trigger{display:grid;place-items:center;width:40px;height:38px;padding:0;border:1px solid var(--line);border-radius:11px;color:var(--pink);background:#f1eaf0}
.sort-trigger[aria-expanded="true"],.sort-trigger:hover{background:var(--blush)}
.sort-trigger svg{width:19px;height:19px}
.sort-options{position:absolute;z-index:10;inset-block-start:calc(100% + 6px);inset-inline-start:0;display:grid;gap:2px;width:max-content;min-width:152px;padding:5px;border:1px solid var(--line);border-radius:14px;background:white;box-shadow:0 8px 24px #60445424}
.list-controls .sort-options{inset-inline-start:auto;inset-inline-end:0}
.sort-option{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;padding:7px 9px;border-radius:9px;text-align:left;font-size:12px}
.sort-option[aria-pressed="true"],.sort-option:hover{color:#87556c;background:var(--blush)}
.sort-option svg{flex:none;width:14px;height:14px}
.sort-picker button:focus-visible{outline:2px solid var(--pink);outline-offset:1px}
.view-switcher{display:inline-flex;gap:3px;padding:3px;background:#f1eaf0;border:1px solid var(--line);border-radius:11px}
.view-switcher button{display:grid;place-items:center;width:34px;height:32px;border-radius:8px;color:#a18b9b}
.view-switcher button.is-selected{background:white;color:var(--pink);box-shadow:0 1px 4px #60445412}
.view-switcher button:focus-visible{outline:2px solid var(--pink);outline-offset:1px}
.view-switcher svg{width:18px;height:18px}
.note-card{display:flex;flex-direction:column;align-items:flex-start;gap:12px;text-align:left;padding:22px;border:1px solid var(--line);border-radius:18px;background:white;min-width:0}
.note-card-icon{color:var(--pink);display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--blush)}
.note-card h2{font-size:16px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.note-card,.swipe-task>.task-row{cursor:pointer}
.note-card.has-project{background:var(--task-fill);border-color:var(--task-edge)}
.note-card-footer{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:auto;width:100%}
.note-card-footer .note-card-date{margin-top:0}
.project-sections{display:flex;gap:5px;margin:0 0 16px;border-bottom:1px solid var(--line);padding-bottom:9px}
.project-sections button{padding:9px 15px;font-size:12px;border-radius:10px;color:var(--muted)}
.project-sections button.selected{background:var(--blush);color:var(--pink);font-weight:700}
.note-card-title{font:inherit;color:inherit;text-align:left;padding:0}
.note-card-body{text-align:left;padding:0}
.swipe-note{min-width:0;border-radius:18px}
.swipe-note>.note-card{position:relative;z-index:1;min-height:100%;height:100%;border-radius:inherit;transform:translateX(var(--swipe-x,0px));transition:transform .18s ease-out;touch-action:auto;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.note-layout-grid .swipe-note>.note-card{height:auto;min-height:0}
.swipe-note.is-dragging>.note-card{transition:none}
.note-reader-title{font-size:15px;line-height:1.6;margin:0 0 15px;overflow-wrap:anywhere}
.note-card-body{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;color:#8b7987;width:100%}
.note-card-date{font-size:10px;color:var(--muted);margin-top:auto}
.form-field .standalone-note-input{min-height:220px;line-height:1.8}
@media(max-width:650px){.notes-grid{grid-template-columns:minmax(0,1fr)}.note-card{padding:18px}.note-card-body{font-size:14px}}
.calendar-day:disabled{opacity:.3;cursor:default}
.calendar-day:disabled:hover{background:transparent}
.month-controls button:disabled{opacity:.3;cursor:default}
.filters{flex-wrap:wrap}
@media(max-width:650px){
 .page-heading .primary{width:40px;height:40px;min-width:40px;padding:0;gap:0;flex:0 0 40px;align-self:center;margin-top:0}
 .page-heading .primary span{display:none}
 .page-heading .primary svg{display:block;width:20px;height:20px;margin:0}
 .filter{padding:7px 8px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.week-strip.scrollable-dates{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/7);gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;-webkit-user-select:none;user-select:none;padding-block:4px 10px;cursor:grab}
.week-strip.scrollable-dates::-webkit-scrollbar{display:none}
.week-strip.scrollable-dates:active{cursor:grabbing}
.week-strip.scrollable-dates .week-day{min-width:0}
.workspace>section{min-width:0}
.date-strip-wrap{position:relative}
.date-calendar-button{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;padding:7px 9px;border:1px solid #eddee7;border-radius:10px;background:#f8f0f5;color:var(--pink-dark);font-size:11px;font-weight:500;white-space:nowrap}
.date-calendar-button svg{width:14px;height:14px}
html.modal-open{overflow:hidden;overscroll-behavior:none}
body.modal-open{position:fixed;top:var(--modal-scroll-top,0);left:0;right:0;width:100%;overflow:hidden;overscroll-behavior:none}
dialog .dialog-body{overscroll-behavior:contain}
dialog{overscroll-behavior:contain}
@media(max-width:380px){.date-calendar-button{gap:3px;padding:6px;font-size:10px}}
.date-return{position:absolute;z-index:2;left:0;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:3px;padding:10px 12px 10px 7px;border:1px solid var(--line);border-radius:22px;background:#fffdfc;color:var(--pink-dark);font-size:12px;font-weight:650;box-shadow:4px 0 14px #faf8f7,0 2px 8px #0000000a}
.date-return svg{width:16px;height:16px}

.settings-form{max-width:460px;padding-block:4px 16px}
.settings-form .form-field{margin-top:8px}
.settings-help{white-space:pre-wrap;line-height:1.8;font-size:14px;padding:6px 0 22px}
.settings-confirm{padding:18px 0;display:grid;gap:12px}
.settings-confirm h2{font-size:18px;margin:0}
.settings-confirm p{margin:0}
.settings-exit{margin-top:24px}

.settings-accordion{display:grid;gap:12px}
.settings-accordion>.settings-branch{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden}
.settings-accordion .settings-section{width:100%;text-align:left;border:0;gap:12px;padding:16px}
.settings-section-label{flex:1;min-width:0}
.settings-section-label strong{overflow-wrap:anywhere}
.settings-section-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:12px;background:#f7edf3;color:var(--pink)}
.settings-section-icon svg{width:20px;height:20px}
.settings-icon-notifications{background:#fff3e3;color:#b78e54}
.settings-icon-premium{background:#f3ecfb;color:#9c7db9}
.settings-icon-connections{background:#eaf2fa;color:#789cc0}
.settings-icon-help{background:#eaf4ef;color:#7b9d89}
.settings-chevron{display:flex;color:#ac9cac;transition:transform .18s ease}
.settings-chevron.expanded{transform:rotate(90deg)}
.settings-children{margin:0 14px 12px;padding:0 0 4px 12px;border-left:2px solid #f1e5ee;min-width:0}
.settings-children .settings-item{padding:13px 8px;font-size:13px}
.settings-children .settings-children{margin:0 0 10px 4px;padding-left:10px}
.settings-children>.tiny-note{margin-top:8px}
.settings-premium .premium-hero{padding:24px 15px;border-radius:16px}
.settings-premium .premium-hero h2{font-size:25px}
.settings-premium .premium-feature{gap:10px;padding:18px 3px}
.premium-active{display:inline-block;border-radius:12px;padding:10px 16px;background:#fff8;color:var(--pink-dark);font-size:13px;font-weight:600}

.friends-tabs{display:flex;gap:5px;padding:5px;margin-bottom:22px;border-radius:14px;background:#f1eaf0}
.friends-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;padding:11px 8px;border-radius:10px;font-size:12px;color:#9b8999}
.friends-tabs button.active{background:#fff;color:var(--pink-dark);box-shadow:0 2px 8px #6f3b5a0a}
.friends-tabs svg{width:17px;height:17px}
.friends-page-heading{position:relative}
.friends-page-heading>.icon-btn{position:absolute;right:0;bottom:0;border:1px solid var(--line);border-radius:10px;color:var(--pink-dark);background:var(--blush)}
.activity-panel{margin-bottom:16px}
.activity-panel .section-heading{margin-bottom:10px}
.activity-panel .icon-btn{width:32px;height:32px;border-radius:9px}
.activity-panel .icon-btn:hover:not(:disabled){background:var(--blush)}
.activity-panel .icon-btn:disabled{opacity:.3;cursor:default}
.monthly-period{font-size:12px;color:var(--muted);text-transform:capitalize}
.registration-card .form-field{margin-top:14px}
.registration-card form .secondary{margin-top:0}
.project-team h2{margin:0 0 10px;font-size:16px}
.project-team-actions,.project-friend-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0}
.project-friend-form .form-field{flex:1 1 160px;min-width:0;margin:0}
.project-friend-form button{align-self:flex-end}
.project-member{padding:10px 0;border-top:1px solid var(--line)}
.project-member summary{cursor:pointer;padding:4px 0;font-weight:700;overflow-wrap:anywhere}
.project-member summary span,.project-card .project-shared-label{font-size:11px;color:var(--pink-dark)}
.project-member form{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.project-member fieldset{display:grid;gap:5px;flex:1 1 110px;min-width:0;margin:0;padding:8px;border:1px solid var(--line);border-radius:10px}
.project-member legend,.project-member label{font-size:12px}
.project-member label{display:flex;align-items:center;gap:5px}
.project-member form button{align-self:flex-end}
.monthly-result{margin-top:12px}
.monthly-result strong{font-size:clamp(22px,5vw,32px);color:var(--pink-dark)}
.monthly-result>span{margin-inline-start:6px;color:var(--muted);font-size:12px}
.monthly-result p,.activity-detail{margin:8px 0 0;font-size:12px;color:#7d6272}
.activity-month{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px}
.activity-month strong{font-size:13px;text-transform:capitalize}
.activity-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.activity-weekday{text-align:center;font-size:10px;color:var(--muted);padding:3px 0}
.activity-day{min-width:0;min-height:32px;padding:2px;border:1px solid transparent;border-radius:7px;background:#f6f0f4;font-size:12px}
.activity-day:disabled{background:none;color:#a599a5;cursor:default}
.activity-day[aria-current="date"]{font-weight:800}
.activity-day[aria-pressed="true"]{border-color:var(--pink-dark)}
.activity-day:focus-visible,.activity-panel .icon-btn:focus-visible{outline:2px solid var(--pink-dark);outline-offset:1px}
.activity-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:10px;font-size:10px;color:var(--muted)}
.activity-legend i{width:12px;height:12px;border-radius:3px;background:#f6f0f4}
.activity-panel{
  --activity-1:#f9e5ee;--activity-2:#f4d5e3;--activity-3:#eec3d7;--activity-4:#e7aec8;--activity-5:#de9ab9;
  --activity-6:#d584a8;--activity-7:#a64b77;--activity-8:#963b69;--activity-9:#842f5a;--activity-10:#70234b;
  --activity-on-strong:#fff;
}
.activity-panel [data-level="1"]{background:var(--activity-1)}
.activity-panel [data-level="2"]{background:var(--activity-2)}
.activity-panel [data-level="3"]{background:var(--activity-3)}
.activity-panel [data-level="4"]{background:var(--activity-4)}
.activity-panel [data-level="5"]{background:var(--activity-5)}
.activity-panel [data-level="6"]{background:var(--activity-6)}
.activity-panel [data-level="7"]{background:var(--activity-7);color:var(--activity-on-strong)}
.activity-panel [data-level="8"]{background:var(--activity-8);color:var(--activity-on-strong)}
.activity-panel [data-level="9"]{background:var(--activity-9);color:var(--activity-on-strong)}
.activity-panel [data-level="10"]{background:var(--activity-10);color:var(--activity-on-strong)}
.activity-legend i{flex:0 1 12px;min-width:5px}
.insight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}
.insight-grid>.insight-card{margin:0;min-width:0}
.insight-card h2,.global-rank h2{display:flex;align-items:center;gap:5px;margin:0 0 8px;font-size:13px;line-height:1.25}
.insight-card h2 svg,.global-rank h2 svg{color:var(--pink-dark);width:16px;height:16px;flex:none}
.insight-card>strong,.global-rank>strong{font-size:clamp(20px,5vw,30px);line-height:1.2}
.insight-card>.insight-word{font-size:clamp(14px,4vw,22px);overflow-wrap:anywhere}
.insight-card p,.global-rank p,.chart-caption{margin:6px 0 0;font-size:11px;color:var(--muted)}
.insight-totals p{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:4px 0 9px}
.insight-totals strong{color:var(--ink);font-size:16px}
.productivity-chart .section-heading{flex-wrap:wrap;gap:7px}
.chart-period{display:flex;gap:3px;padding:3px;border:1px solid var(--line);border-radius:9px}
.chart-period button,.period-badge{font-size:11px;padding:5px 7px;border-radius:6px;color:var(--muted)}
.chart-period button[aria-pressed="true"],.period-badge{background:var(--blush);color:var(--pink-dark)}
.chart-period button:disabled{opacity:.5}
.productivity-bars{height:125px;display:flex;gap:8px;padding:10px 0 22px}
.productivity-bars.is-long{gap:2px}
.productivity-bars .chart-day{padding:0;min-width:0;border-radius:4px}
.productivity-bars .chart-bar{width:85%;max-width:30px;border-radius:4px 4px 2px 2px}
.productivity-bars .chart-day[aria-pressed="true"] .chart-bar{background:var(--pink-dark)}
.productivity-bars .chart-day span{white-space:nowrap;bottom:-17px}
.friend-ranking ol,.friend-activity ul{list-style:none;margin:0;padding:0}
.friend-ranking li,.friend-activity li{display:flex;align-items:center;gap:8px;padding:8px 0;min-width:0}
.friend-ranking li+li,.friend-activity li+li{border-top:1px solid var(--line)}
.friend-ranking .is-self .friend-row-name>strong{color:var(--pink-dark)}
.friend-place{width:20px;text-align:center;font-size:12px;flex:none}
.friend-avatar{width:32px;height:32px;flex:none;display:grid;place-items:center;border-radius:11px;background:var(--blush);color:var(--pink-dark);font-weight:700}
.friend-avatar svg{width:16px;height:16px}
.friend-row-name{flex:1;min-width:0;overflow-wrap:anywhere}
.friend-row-name strong,.friend-score{font-size:13px}
.friend-row-name small,.friend-row-name p{display:block;font-size:11px;color:var(--muted);margin:3px 0 0}
.friend-list summary{cursor:pointer;font-size:13px;font-weight:700}
.friend-ranking-link{display:flex;align-items:center;gap:8px;width:100%;min-width:0;text-align:left;border-radius:9px;padding:5px 0}
.friend-ranking-link:hover{background:var(--blush)}
.friend-ranking-link>svg{width:14px;height:14px;flex:none;color:var(--muted)}
.friend-profile-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:450px){
  .friend-profile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .friend-profile-summary>.insight-card:last-child{grid-column:1/-1}
}
.friend-profile-title{font-size:17px;margin:18px 0 12px}
.friend-private-note,.friend-remove p{font-size:13px;color:var(--muted)}
.friend-remove{margin:16px 0}
.friend-remove p{margin:0}
.friend-remove .dialog-actions{margin-top:12px}
.friend-remove .danger{font-weight:700}
.friend-access summary{cursor:pointer;font-size:13px;font-weight:750}
.friend-access summary>span{float:right;color:var(--pink-dark);font-size:11px}
.friend-access fieldset{border:0;margin:12px 0 0;padding:0;display:grid;gap:8px}
.friend-access legend{padding:0;margin-bottom:9px;color:var(--muted);font-size:12px}
.friend-access label{display:flex;align-items:center;gap:6px;font-size:13px;padding:4px 0}
.friend-access input{accent-color:var(--pink-dark)}
.friend-access-choices{padding-inline-start:15px;border-inline-start:1px solid var(--line);max-height:190px;overflow:auto}
.friend-access .primary:disabled{opacity:.55;cursor:default}
.friend-invite-panel{text-align:center;margin:0}
.friend-invite-panel .friend-invite-actions{margin:0}
.friend-invite-panel .tiny-note{margin:8px 0 0}
.friends-streak{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.friends-streak>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 15px;border:1px solid var(--line);border-radius:16px;background:#fff}
.friends-streak span{font-size:12px;color:var(--muted)}
.friends-streak strong{font-size:24px;color:var(--pink-dark)}
.friends-empty{border:1px dashed var(--line);border-radius:20px;background:#fff9fc}
.friend-invite-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.friend-invite-actions a{text-decoration:none}
.friend-invite-link{width:min(100%,360px);text-align:left}
.friend-list{margin-bottom:16px}
.friend-list h2{font-size:16px;margin:0 0 10px}
.friend-list ul{list-style:none;margin:0;padding:0}
.friend-list li{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:14px;overflow-wrap:anywhere}
.friend-list li+li{border-top:1px solid var(--line)}
.friend-list li svg{color:var(--pink)}

/* Theme tokens and surfaces that still have light-only colors in the base layout. */
:root[data-theme="dark"]{
  color-scheme:dark;
  --bg:#17131e;
  --paper:#251e2d;
  --ink:#f6eaf2;
  --muted:#c0aec2;
  --line:#46374d;
  --pink:#efa8ce;
  --pink-dark:#f3b6d8;
  --blush:#412a43;
  --green:#91c8ad;
  --shadow:0 12px 32px #0b08144d;
  --night-raised:#302637;
  --night-input:#1c1724;
  --night-action:#a23e75;
}

[data-theme="dark"] :is(.sidebar,.secondary,.panel,.project-card,.calendar-main,.stat-card,
  .swipe-task>.task-row,.note-card,.settings-accordion>.settings-branch,.friends-streak>div,
  .login-card,dialog,.dialog-head,.sort-options,.view-switcher button.is-selected,.friends-tabs button.active,
  .date-return,.search,.preview-badge){background:var(--paper)}
[data-theme="dark"] .progress-ring::before{background:var(--paper)}
[data-theme="dark"] .bottom-nav{background:#251e2df5}
[data-theme="dark"] :is(.primary,.brandmark,.week-day.selected,.calendar-day.today strong,.toggle.on){
  background:var(--night-action);color:#fff
}
[data-theme="dark"] :is(.navbtn,.nav-label,.bottom-nav button,.icon-btn,.task-meta,.task-actions .more,
  .task-group-title,.task-group-title span,.week-day .weekday,.filter,.tiny-note,.form-field>span,
  .dialog-body>p,.settings-chevron,.chart-day small,.calendar-weekdays span,.calendar-day small,
  .preview-badge,.friends-tabs button,.view-switcher button,.quote,.progress-caption,
  .monthly-result p,.activity-detail,.task-note-preview,.note-card-body,.switch-row){color:var(--muted)}
[data-theme="dark"] :is(.navbtn.active,.bottom-nav button.active,.friends-tabs button.active,
  .view-switcher button.is-selected,.sort-option[aria-pressed="true"],.sort-option:hover,
  .note-editor summary,.quick-add,.new-project){color:var(--pink-dark)}
[data-theme="dark"] .week-day.selected .weekday{color:#ffe0f0}
[data-theme="dark"] :is(.navbtn:hover,.week-day:hover:not(.selected),.calendar-day:hover:not(:disabled),
  .filter.active,.sort-trigger,.view-switcher,.friends-tabs,.color-choice,.icon-choice,.progress-line,.avatar,
  .badge,.settings-section-icon,.toggle:not(.on)){background:var(--night-raised)}
[data-theme="dark"] :is(.filter.active,.form-message){color:var(--pink-dark)}
[data-theme="dark"] :is(.date-calendar-button,.calendar-day.selected,.quick-add:hover,.settings-confirm,
  .form-message,.friends-empty,.color-choice.selected,.sort-trigger[aria-expanded="true"]){background:var(--blush)}
[data-theme="dark"] :is(.date-calendar-button,.calendar-day.selected,.week-day.is-today:not(.selected),
  .check,.new-project,.quick-add,dialog,.settings-children){border-color:var(--line)}
[data-theme="dark"] .check{border-color:#8a708c}
[data-theme="dark"] .date-return{box-shadow:0 2px 12px #0b081470}
[data-theme="dark"] .chart-bar{background:#714464}
[data-theme="dark"] .chart-day.current .chart-bar{background:var(--pink)}
[data-theme="dark"] :is(.form-field input,.form-field select,.form-field textarea){
  background:var(--night-input);border-color:var(--line);color:var(--ink)
}
[data-theme="dark"] :is(.form-field input,.form-field textarea)::placeholder{color:var(--muted)}
[data-theme="dark"] :is(.form-field input,.form-field select,.form-field textarea):focus{
  border-color:var(--pink);box-shadow:0 0 0 3px var(--blush)
}
[data-theme="dark"] dialog::backdrop{background:#0b0812a3}
[data-theme="dark"] #toast{background:var(--night-raised);color:var(--ink);border-color:var(--line)}
[data-theme="dark"] .danger{color:#ffb3c2}
[data-theme="dark"] .swipe-complete{background:#203b33;color:#b1e5ce}
[data-theme="dark"] .swipe-delete{background:#4b2637;color:#ffb3c2}
[data-theme="dark"] .task-row.done .check{background:#35604e;border-color:#35604e;color:#e4fff2}
[data-theme="dark"] .task-row.done .task-title{color:var(--muted)}

[data-theme="dark"] :is(.swipe-task.has-project>.task-row,.note-card.has-project){
  background:var(--night-raised);
  background:color-mix(in srgb,var(--paper) 82%,var(--project));
  border-color:var(--line);
  border-color:color-mix(in srgb,var(--paper) 62%,var(--project));
}
[data-theme="dark"] :is(.project-tag,.project-icon){
  background:var(--night-raised);
  background:color-mix(in srgb,var(--paper) 79%,var(--project));
  color:var(--ink)
}
[data-theme="dark"] :is(.project-card:hover,.task-row:hover){border-color:var(--pink)}

[data-theme="dark"] .login-shell{background:radial-gradient(ellipse at top,#3b2347,transparent 65%)}
[data-theme="dark"] :is(.premium-hero,.premium-teaser){
  background:linear-gradient(130deg,#472b43,#32294d);border-color:var(--line)
}
[data-theme="dark"] :is(.premium-hero p,.premium-teaser p,.premium-feature.future){color:var(--muted)}
[data-theme="dark"] .premium-active{background:#ffffff18}
[data-theme="dark"] .settings-icon-notifications{background:#493729;color:#ffd4a4}
[data-theme="dark"] .settings-icon-premium{background:#3a2d50;color:#d8baff}
[data-theme="dark"] .settings-icon-connections{background:#26384c;color:#bad9ff}
[data-theme="dark"] .settings-icon-help{background:#263c36;color:#afe0c6}
[data-theme="dark"] :is(.activity-day,.activity-legend i)[data-level="0"]{background:#34283c}
[data-theme="dark"] .activity-panel{
  --activity-1:#452d43;--activity-2:#53324c;--activity-3:#613755;--activity-4:#6f3d5f;--activity-5:#7e4269;
  --activity-6:#8d4973;--activity-7:#bf7da1;--activity-8:#d18bad;--activity-9:#e49fbe;--activity-10:#f6b4d1;
  --activity-on-strong:#301627;
}
[data-theme="dark"] .activity-day:disabled{background:none;color:#9d8da1}

[data-theme="dark"] .hero{background:#221a35}
[data-theme="dark"] .hero img{object-fit:contain;object-position:right center}
[data-theme="dark"] .hero::after{background:linear-gradient(90deg,#221a35 0%,#221a35 25%,#221a35ee 40%,#221a3540 72%,transparent)}
[data-theme="dark"] .hero h2{color:#ffedf8}
[data-theme="dark"] :is(.hero p,.hero-tag){color:#dbc1df}
[data-theme="dark"] .hero-pill{background:#342342e8;border-color:#775675;color:#f0d5eb}
