@font-face{font-family:Inter;src:url('/src/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root,:root[data-theme=dark]{font-family:Inter,'Segoe UI',sans-serif;--bg:#080f0c;--panel:#111c16;--raised:#17251c;--line:#25372b;--muted:#a3b0a8;--lime:#c2f568;--text:#f3f6f2;color:var(--text);background:var(--bg);color-scheme:dark}
:root[data-theme=light]{--bg:#f1f5ee;--panel:#fff;--raised:#e9f0e4;--line:#d4dfce;--muted:#5b6c5b;--lime:#4b781c;--text:#182319;color-scheme:light}
body{background:radial-gradient(ellipse at 80% 0,#4f7e4a12,transparent 55%),var(--bg);font-size:14px;line-height:1.45}button,input,select,textarea{font-family:inherit}.shell{display:block;min-height:100vh}.app-header{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.header-inner{max-width:1536px;margin:auto;padding:14px 32px;display:flex;align-items:center;gap:36px;min-height:82px}.brand-link{text-decoration:none;flex-shrink:0}.brand{font-size:27px;letter-spacing:-1px;font-weight:780;padding:0;display:flex;line-height:1.1}.brand small{display:block;font-size:11px;font-weight:450;letter-spacing:0;margin-top:5px;color:var(--muted)}.brand small b{color:var(--lime)}.nav{display:flex;flex-direction:row;gap:6px;background:var(--panel);border:1px solid var(--line);padding:5px;border-radius:14px;overflow:visible}.nav-item{width:auto;min-height:40px;padding:9px 24px;border-radius:10px;font-size:14px;font-weight:600;justify-content:center;box-shadow:none}.nav-item.active{color:#17210a;background:linear-gradient(120deg,#ceff83,var(--lime));box-shadow:none}.nav-item:hover{color:var(--text);background:var(--raised)}.nav-item.active:hover{color:#17210a;background:var(--lime)}.header-user{margin-left:auto;display:flex;gap:18px;align-items:center}.sync{font-size:12px;gap:8px;display:flex;align-items:center;color:var(--muted);white-space:nowrap}.sync:before{display:none}.sync svg{color:var(--lime)}.sync small{margin-left:7px;font-size:11px}.avatar{border:1px solid var(--line);width:44px;height:44px;border-radius:50%;color:var(--text);font-weight:650;background:var(--raised)}.main{padding:24px 32px 40px;max-width:1536px;width:100%;margin:0 auto;min-width:0}.page>.toolbar{display:none}.layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:20px;align-items:start}.planner-card{background:linear-gradient(140deg,color-mix(in srgb,var(--panel) 62%,var(--bg)),var(--bg));border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0}.day-heading{display:flex;gap:18px;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.day-title{font-size:44px;letter-spacing:-1.8px;font-weight:780;line-height:1.08;margin:0;white-space:nowrap}.day-subtitle{margin:7px 0 0;color:var(--muted);font-size:14px;text-transform:capitalize}.date-controls{display:flex;gap:14px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin:0;min-width:0}.week-strip{display:flex;gap:1px;align-items:center}.week-date{width:34px;min-width:34px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:0;background:none;padding:0;color:var(--text);border-radius:8px}.week-date small{font-size:11px;color:var(--muted);text-transform:capitalize}.week-date strong{font-size:14px;font-weight:550;width:30px;height:30px;border-radius:50%;display:grid;place-items:center}.week-date.selected strong{background:var(--lime);color:#17210a}.week-date:hover{background:var(--raised)}.date-shortcuts{display:flex;gap:7px;align-items:center}.btn{border-radius:9px;font-size:13px;font-weight:550;min-height:40px;padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.primary{background:var(--lime);border:1px solid var(--lime);color:#17210a}.primary:hover{background:#d0ff83;color:#17210a}.secondary{background:var(--panel);border-color:var(--line)}.secondary:hover{background:var(--raised)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;width:40px;height:40px;padding:7px;border-radius:9px;color:var(--muted);background:transparent;border:1px solid transparent;line-height:1}.icon-btn:hover{color:var(--text);background:var(--raised);border-color:var(--line)}.date-picker-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:9px;background:var(--panel);position:relative;cursor:pointer}.date-picker-button input{opacity:0;position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.date-picker-button input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.date-picker-button:focus-within{outline:2px solid var(--lime);outline-offset:3px}.day-progress{display:flex;align-items:center;gap:16px;margin:0 0 19px;font-size:12px;color:var(--muted)}.day-progress strong{color:var(--text)}.day-progress .progress{margin:0;height:7px;flex:1;max-width:450px;border-radius:10px;background:var(--raised)}.progress>span{background:var(--lime);border-radius:inherit;transition:width .2s ease}.quick-form{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;background:linear-gradient(115deg,var(--raised),var(--panel));padding:8px 10px;margin:0;min-height:60px}.quick-form:focus-within{border-color:var(--lime);box-shadow:0 0 0 3px #c2f5680a}.quick-plus{background:color-mix(in srgb,var(--muted) 30%,transparent);color:var(--text);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.quick-input{font-size:16px;background:none;padding:4px;min-width:0;color:var(--text)}.quick-input::placeholder{color:var(--muted)}.quick-form>.icon-btn{background:var(--lime);color:#17210a;min-width:40px;border-color:var(--lime)}.overdue{border:1px solid #765a25;background:linear-gradient(100deg,#a5781716,#a5781707);border-radius:12px;margin:12px 0 0;padding:0}.overdue>summary{padding:12px 15px;display:flex;align-items:center;gap:12px;color:#e8b955;font-size:13px;cursor:pointer;list-style:none;min-height:52px}.overdue-open{margin-left:auto;display:flex;gap:6px;align-items:center;font-size:12px}.overdue-list{padding:12px;border-top:1px solid #765a25}.overdue-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;border:0;padding:0}.overdue-item:last-child{margin:0}.overdue-item .task-row{width:100%;margin:0}.overdue-date{color:var(--muted);font-size:11px}.overdue-item>.btn{margin-left:auto;font-size:12px;min-height:32px;padding:6px 10px}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.task-filters{margin:0;display:flex;align-items:center;gap:10px}.segmented{padding:0;background:none;border:0;display:flex;gap:4px}.segmented button{padding:5px 9px;min-height:30px;font-size:11px;color:var(--muted);border-radius:6px}.segmented button.active{background:var(--raised);color:var(--text)}.project-select{max-width:180px}.project-select .select{min-height:30px;padding:4px 8px;font-size:11px}.priority-section{margin-top:12px}.priority-section h3,.completed-section>summary{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:650;line-height:1.4;margin:0 0 10px;padding:0}.priority-section h3 svg,.completed-section>summary svg{color:var(--muted);width:15px}.priority-section h3>span,.completed-section>summary>span{font-size:12px;background:var(--raised);padding:2px 8px;border-radius:9px;color:var(--muted)}.task-list{border:0}.task-row{display:flex;align-items:center;gap:12px;min-height:62px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(110deg,var(--raised),var(--panel));margin-bottom:6px;position:relative;overflow:visible}.task-row:hover,.task-row:focus-within,.task-row.selected-task{border-color:color-mix(in srgb,var(--lime) 65%,var(--line));background:linear-gradient(110deg,color-mix(in srgb,var(--raised) 94%,var(--lime)),var(--panel))}.task-row:focus-within{z-index:4}.task-check{width:24px;min-width:24px;height:24px;border:1.5px solid #9aaa9e;border-radius:50%;display:flex;align-items:center;justify-content:center;background:none;padding:0;position:relative;color:#17210a}.task-check:before{content:'';position:absolute;inset:-9px}.task-check:hover{border-color:var(--lime);background:#c2f5680b}.task-body{flex:1;min-width:0;display:flex;flex-direction:column;text-align:left;gap:3px;padding:0;background:transparent;border:0;color:var(--text);min-height:28px;justify-content:center}.task-title{font-size:15px;font-weight:620;line-height:1.45;overflow-wrap:anywhere}.task-meta{font-size:12px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0;line-height:1.3}.task-meta svg{display:block}.meta-dot{opacity:.5}.urgency{display:flex;gap:5px;align-items:center;justify-content:center;border:0;background:none;color:var(--muted);font-size:12px;padding:5px;min-height:32px;border-radius:8px}.urgency.not-urgent{opacity:.2;width:30px}.task-row:hover .not-urgent,.not-urgent:focus-visible{opacity:1}.urgency.is-urgent{color:#e9b64c;white-space:nowrap}.urgency:hover{background:var(--raised)}.task-menu{position:relative;flex-shrink:0}.task-menu>summary{cursor:pointer;list-style:none}.task-menu>summary::-webkit-details-marker,.completed-section>summary::-webkit-details-marker,.overdue>summary::-webkit-details-marker{display:none}.badge{font-size:11px;font-weight:550;line-height:1.2;padding:6px 10px;border-radius:10px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;min-height:30px;min-width:68px;white-space:nowrap}.badge.high{background:#aa535322;color:#efa19e;border-color:#82484480}.badge.medium{background:#a3b0a814;color:#bac8bf}.badge.low{background:transparent;color:var(--muted)}.task-menu[open]{z-index:15}.menu-panel{position:absolute;right:0;top:calc(100% + 6px);min-width:180px;max-width:240px;border:1px solid var(--line);border-radius:11px;padding:6px;background:var(--raised);box-shadow:0 14px 40px #0006;display:flex;flex-direction:column;gap:2px}.menu-panel>button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;min-height:36px;border:0;background:transparent;padding:8px 10px;border-radius:6px;font-size:12px;color:var(--text);width:100%}.menu-panel>button:hover{background:var(--panel)}.menu-panel .danger{color:#ef9b90}.completed-section{margin-top:22px}.completed-section>summary{cursor:pointer;list-style:none;min-height:32px}.completed-section:not([open])>summary svg{transform:rotate(-90deg)}.task-row.done,.task-row.cancelled{min-height:42px;padding:6px 13px;opacity:1;background:var(--panel)}.task-row.done .task-title,.task-row.cancelled .task-title{font-size:13px;font-weight:400;text-decoration:line-through;color:var(--muted)}.task-row.done .task-check{background:var(--lime);border-color:var(--lime)}.done .icon-btn{height:28px;width:28px;min-width:28px}.aside{display:flex;flex-direction:column;gap:14px;min-width:0}.daily-message{background:linear-gradient(135deg,var(--raised),var(--panel));border:1px solid var(--line);border-radius:14px;padding:20px;margin:0}.daily-message>div{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted)}.daily-message svg{color:var(--lime)}.daily-message p{font-size:19px;line-height:1.5;font-weight:620;margin:12px 0 9px;padding-left:38px}.daily-message img{display:block;margin-left:auto;border-radius:50%;opacity:.65}.empty{padding:28px 12px;text-align:center;border:0}.empty-symbol{font-size:24px;color:var(--lime)}.empty h3{font-size:16px;font-weight:550;margin:10px 0 6px}.empty p{font-size:13px;color:var(--muted);margin:0}.hero{padding:10px 0 24px}.hero-title{font-size:34px;letter-spacing:-1px;font-weight:700}.hero-title em{font:inherit;color:var(--lime)}.hero-subtitle{font-size:14px}.settings-form{padding:24px;max-width:800px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.section-title{font-size:19px}.field{font-size:13px;gap:7px}.input,.select,.textarea{border-color:var(--line);border-radius:9px;background:var(--panel);font-size:14px;min-height:44px}.urgent-field{display:flex;gap:10px;align-items:center;background:var(--raised);border-radius:10px;padding:12px;margin-bottom:16px;font-size:14px}.urgent-field input{width:18px;height:18px;accent-color:var(--lime)}.habits-page-title{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px}.habits-page-title h1{font-size:36px;letter-spacing:-1.3px;margin:0}.habits-page-title p{color:var(--muted);font-size:14px;margin:0}.habits-page-title>.date-controls{margin-left:auto}.habits-page{max-width:1100px;margin:auto}.toast{background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:12px;display:flex;align-items:center;gap:22px;box-shadow:0 10px 36px #0004;padding:13px 18px;font-size:13px}.toast button{border:0;background:none;color:var(--lime);font-weight:600;cursor:pointer;padding:7px}.toast-error{border-color:#a65843}.modal-heading h2{font-size:27px;letter-spacing:-.7px}dialog{background:var(--panel);border:1px solid var(--line);border-radius:18px;max-height:calc(100dvh - 48px);width:min(540px,calc(100% - 28px));padding:24px;overflow:auto;box-shadow:0 25px 100px #0009}dialog::backdrop{background:#020804a3;backdrop-filter:blur(4px)}.color-field{display:none}.dragging{opacity:.45}.drop-target{outline:2px solid var(--lime);outline-offset:2px}.auth-story{background:radial-gradient(ellipse at 40% 30%,#223a224d,transparent 65%),var(--bg)}.auth-display{font-family:inherit;font-weight:750;letter-spacing:-2px}.auth-display em{font-family:inherit;font-style:normal;color:var(--lime)}.auth-art{display:none}.auth-heading{font-family:inherit;font-size:28px}.auth-tabs .active{color:var(--lime)}
:root[data-theme=light] .nav-item.active,:root[data-theme=light] .primary,:root[data-theme=light] .quick-form>.icon-btn,:root[data-theme=light] .week-date.selected strong,:root[data-theme=light] .done .task-check{background:var(--lime);color:#fff}:root[data-theme=light] .badge.high{color:#a24036;background:#bd5f5310;border-color:#bd5f5330}:root[data-theme=light] .badge.medium{color:#586b56}:root[data-theme=light] .urgency.is-urgent,:root[data-theme=light] .overdue>summary{color:#94620e}:root[data-theme=light] .overdue{border-color:#ddbe82}:root[data-theme=light] .task-check{color:#fff}
@media(min-width:1550px){.layout{grid-template-columns:minmax(0,1fr) 390px;gap:24px}.day-title{font-size:48px}.task-title{font-size:16px}.week-date{width:38px}}
@media(max-width:1200px){.main{padding:20px}.header-inner{padding:12px 20px}.layout{grid-template-columns:minmax(0,1fr) 320px;gap:16px}.planner-card{padding:20px}.day-heading{flex-wrap:wrap}.day-heading>.date-controls{justify-content:flex-start}.day-title{font-size:40px}.task-row{gap:8px;padding:10px}.header-inner{gap:24px}.badge{font-size:10px;min-width:60px}}
@media(max-width:980px){.layout{grid-template-columns:minmax(0,1fr) 290px}.day-title{font-size:38px}.day-heading>.date-controls{flex-direction:column;align-items:flex-start;gap:8px}.urgency span{display:none}.main{padding:16px}.planner-card{padding:16px}.header-inner{padding:12px 16px}.sync small{display:none}.header-user{gap:10px}}
@media(max-width:760px){.layout{grid-template-columns:1fr}.aside{display:grid;grid-template-columns:1fr 1fr;gap:14px}.daily-message{grid-column:1 / -1}.day-heading{flex-wrap:nowrap}.day-heading>.date-controls{flex-direction:row;align-items:center;justify-content:flex-end}.day-title{font-size:38px}.header-inner{gap:16px}.sync>span{display:none}.nav-item{padding:9px 20px}}
@media(max-width:560px){.header-inner{min-height:72px;flex-wrap:wrap;padding:13px 16px;gap:12px}.brand{font-size:23px}.brand small{font-size:10px}.header-user{gap:8px}.header-user>.icon-btn{display:none}.avatar{width:36px;height:36px;font-size:13px}.nav{order:3;width:100%;padding:4px;gap:4px;border-radius:11px}.nav-item{flex:1;min-height:36px;padding:7px 12px}.sync{font-size:10px}.sync>span{display:inline}.sync small{display:none}.main{padding:14px 10px 24px}.planner-card{border-radius:13px;padding:15px 12px}.day-heading{display:block;margin-bottom:16px}.day-title{font-size:38px;letter-spacing:-1.3px}.day-subtitle{font-size:12px;margin-top:5px}.day-heading>.date-controls{display:flex;justify-content:space-between;flex-direction:row;gap:12px;margin-top:14px}.week-strip{width:100%;justify-content:space-between;order:2}.week-date{width:38px;min-width:34px;height:52px}.date-shortcuts{width:100%;order:1}.date-shortcuts>.btn{flex:1;min-height:38px;padding:8px}.date-picker-button{width:40px;height:38px}.day-progress{gap:10px;font-size:11px;margin-bottom:15px}.day-progress .progress{height:5px}.quick-form{padding:7px;gap:8px;min-height:54px}.quick-plus{display:none}.quick-input{font-size:14px}.quick-form>.icon-btn{width:38px;min-width:38px;height:38px}.overdue>summary{padding:10px;font-size:12px;gap:8px}.overdue>summary>svg{width:18px}.overdue-open{font-size:0;gap:0}.overdue-open svg{width:17px}.priority-section h3,.completed-section>summary{font-size:15px;gap:8px}.task-row{gap:9px;padding:10px;flex-wrap:wrap;min-height:64px}.task-check{width:22px;min-width:22px;height:22px;order:0}.task-body{flex-basis:calc(100% - 74px);order:1}.task-menu:not(.priority-menu){order:2;margin-left:auto}.task-menu:not(.priority-menu)>summary{width:28px;min-width:28px;height:32px}.urgency{order:3;margin-left:31px;min-height:24px;padding:3px;font-size:11px}.urgency.not-urgent{display:none}.urgency.is-urgent span{display:inline}.priority-menu{order:4}.badge{padding:4px 8px;min-height:25px;font-size:10px;min-width:58px}.task-title{font-size:14px;line-height:1.4}.task-meta{font-size:11px}.task-row.done{min-height:46px}.task-row.done .task-body{flex-basis:calc(100% - 73px)}.menu-panel{min-width:180px}.priority-menu>.menu-panel{right:auto;left:0}.menu-panel>button{min-height:42px;font-size:13px}.aside{display:flex;gap:14px}.daily-message{padding:16px}.daily-message p{font-size:18px}.habits-page-title{display:block}.habits-page-title h1{font-size:30px}.habits-page-title p{margin:6px 0 12px;font-size:12px}.habits-page-title>.date-controls{justify-content:flex-start}.settings-form{padding:18px 14px}.hero-title{font-size:28px}.hero-subtitle{font-size:12px}.field-row,.form-grid{display:block}.toast{max-width:calc(100vw - 24px);font-size:12px;gap:12px}.auth-display{font-size:42px}.auth-kicker{display:none}.task-filters{gap:4px;flex-wrap:wrap}.project-select{max-width:135px}.overdue-item .task-menu>.menu-panel{right:0;left:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.brand,.brand>span{color:var(--text)}
#notifications{position:fixed;right:24px;left:auto;bottom:24px;transform:none;z-index:100;display:flex;flex-direction:column;align-items:stretch;gap:8px;width:auto;max-width:calc(100vw - 48px);pointer-events:none}#notifications .toast{pointer-events:auto}
@media(max-width:560px){#notifications{right:12px;bottom:12px;left:12px}.toast{max-width:100%;justify-content:space-between}}
.layout{grid-template-columns:minmax(0,1fr) minmax(350px,30%)}
.brand{font-size:29px}.day-title{font-size:50px}.task-title{font-size:16px}
.priority-section h3,.completed-section>summary{font-size:17px}
@media(min-width:1550px){.layout{grid-template-columns:minmax(0,1fr) 30%}.day-title{font-size:54px}}
@media(max-width:1200px){.layout{grid-template-columns:minmax(0,1fr) 320px}.day-title{font-size:40px}}
@media(max-width:980px){.layout{grid-template-columns:minmax(0,1fr) 290px}.day-title{font-size:38px}.task-title{font-size:15px}}
@media(max-width:760px){.layout{grid-template-columns:1fr}.day-title{font-size:38px}}
@media(max-width:560px){.brand{font-size:23px}.task-title{font-size:14px}.priority-section h3,.completed-section>summary{font-size:15px}}
