:root{color:#19243b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#131b40;--brand-pressed:#25336b;--selected:#e9edf8;--canvas:#f5f7fb;--surface:#fff;--ink:#19243b;--muted:#59657c;--line:#dce2ec;--error:#b33d4c;--error-bg:#fcedef;--warning:#985f15;--warning-bg:#fff4e1;--shadow:0 10px 34px #131b4010;--tg-bg:var(--canvas);--tg-text:var(--ink);--tg-hint:var(--muted);--tg-button:var(--brand);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--canvas:#0e1532;--surface:#192447;--ink:#f6f8ff;--muted:#bcc7df;--line:#36466b;--brand:#f6f8ff;--brand-pressed:#25336b;--selected:#25336b;--error:#ffb6bf;--error-bg:#3d2536;--warning:#f0c676;--warning-bg:#382e27;--shadow:0 10px 34px #0003}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:var(--canvas);min-height:100dvh;color:var(--ink)}button,input,textarea,select{color:inherit;font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #7385c6}button:disabled{opacity:.62;cursor:wait}.app-shell{width:min(100%,620px);min-height:100dvh;padding-bottom:calc(76px + env(safe-area-inset-bottom));background:var(--canvas);margin:0 auto}.topbar{z-index:5;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;height:64px;padding:0 14px;display:grid;position:sticky;top:0}.avatar,.quick-button{border:1px solid var(--line);background:var(--surface);width:46px;min-width:46px;height:46px;min-height:46px;color:var(--brand);border-radius:50%;place-items:center;display:grid}.topbar-center{text-align:center;justify-items:center;gap:2px;min-width:0;display:grid}.topbar-center strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:16px;font-weight:700;line-height:1.25;overflow:hidden}.topbar-center span{color:var(--muted);text-transform:capitalize;font-size:12px;line-height:1.3}.quick-wrap{justify-self:end;position:relative}.quick-button{color:#fff;background:#131b40;border:0;border-radius:14px}:root[data-theme=dark] .quick-button,:root[data-theme=dark] .primary-button{color:#fff;background:#25336b}.quick-menu{z-index:12;border:1px solid var(--line);background:var(--surface);width:230px;box-shadow:var(--shadow);border-radius:16px;padding:7px;position:absolute;top:52px;right:0}.quick-menu button{text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;width:100%;min-height:48px;padding:0 10px;font-size:15px;display:flex}.quick-menu button:hover{background:var(--selected)}.content{padding:18px 16px 28px}.page-section{animation:.18s ease-out appear}@keyframes appear{0%{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:none}}.page-heading h1{color:var(--ink);letter-spacing:-.025em;margin:0;font-size:24px;line-height:1.2}.today-page{padding-top:2px}.plan-unavailable{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;align-items:center;gap:12px;padding:14px;display:flex}.plan-icon,.empty-icon{background:var(--selected);color:#131b40;border-radius:13px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}:root[data-theme=dark] .plan-icon,:root[data-theme=dark] .empty-icon{color:#f6f8ff}.plan-unavailable strong{font-size:15px;line-height:1.35;display:block}.plan-unavailable p{color:var(--muted);margin:5px 0 0;font-size:14px;line-height:1.5}.section-heading h2,.task-section h2{margin:0;font-size:17px;line-height:1.35}.deadline-mark,.state-dot{background:#59657c;border-radius:50%;flex:0 0 9px;width:9px;height:9px;display:inline-block}.overdue-mark{background:#b33d4c}.primary-button,.secondary-button{color:#fff;background:#131b40;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 15px;font-size:15px;font-weight:650;text-decoration:none;display:inline-flex}.primary-button:hover,.quick-button:hover{background:#25336b}.primary-button.small{min-height:44px;padding:0 12px;font-size:14px}.secondary-button{background:var(--surface);border-color:var(--line);color:var(--ink)}.page-heading{justify-content:space-between;align-items:center;gap:10px;margin:4px 0 18px;display:flex}.page-heading p{color:var(--muted);margin:5px 0 0;font-size:14px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin:20px 0 11px;display:flex}.back-link,.text-action{color:#131b40;background:0 0;border:0;align-items:center;gap:7px;min-height:44px;padding:0;font-size:14px;font-weight:650;display:inline-flex}:root[data-theme=dark] .back-link,:root[data-theme=dark] .text-action{color:#f6f8ff}.back-link{margin:-5px 0 12px}.project-list,.task-list{border:1px solid var(--line);background:var(--surface);border-radius:15px;overflow:hidden}.project-row{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;min-height:68px;padding:10px 12px;display:flex}.project-row+.project-row,.task-row+.task-row{border-top:1px solid var(--line)}.project-row:hover,.task-row:hover,.deadline-row:hover{background:color-mix(in srgb, var(--selected) 55%, var(--surface))}.project-spot{background:var(--selected);color:#131b40;border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}:root[data-theme=dark] .project-spot{color:#f6f8ff}.project-copy,.task-copy{flex:1;gap:4px;min-width:0;display:grid}.project-copy strong,.task-copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.3;overflow:hidden}.project-copy small,.task-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:13px;line-height:1.3;display:flex;overflow:hidden}.task-state{color:var(--muted);justify-self:start;font-size:12px;line-height:1.25}.state-dot{background:#59657c}.state-active{background:#25336b}.row-chevron{color:var(--muted);flex:none}.task-section{margin:19px 0 0}.task-section>h2{justify-content:space-between;align-items:center;margin:0 0 9px;display:flex}.task-section>h2 span{background:var(--selected);min-width:28px;min-height:26px;color:var(--ink);border-radius:9px;place-items:center;padding:2px 7px;font-size:13px;display:inline-grid}.task-row{align-items:center;gap:9px;min-height:68px;padding:8px 8px 8px 10px;display:flex}.task-check{background:var(--surface);color:#131b40;border:1.5px solid #59657c;border-radius:12px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid}:root[data-theme=dark] .task-check{color:#f6f8ff}.task-done .task-check{background:var(--selected);border-color:#25336b}.task-done .task-copy strong{color:var(--muted);text-decoration:line-through}.task-copy{text-align:left;background:0 0;border:0;min-height:48px;padding:3px 0}.row-chevron-button,.icon-button{border:1px solid var(--line);background:var(--surface);width:44px;height:44px;color:var(--ink);border-radius:12px;flex:0 0 44px;place-items:center;display:grid}.detail-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;margin:5px 0 18px;padding:16px}.detail-top{justify-content:space-between;align-items:center;display:flex}.detail-icon{background:var(--selected);width:44px;height:44px;color:var(--brand);border-radius:13px;place-items:center;display:grid}.status-pill{border:1px solid var(--line);min-height:32px;color:var(--muted);border-radius:20px;align-items:center;gap:7px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.status-pill i{background:#25336b;border-radius:50%;width:8px;height:8px}.detail-hero h1{overflow-wrap:anywhere;margin:15px 0 7px;font-size:22px;line-height:1.25}.detail-hero p,.auth-copy{color:var(--muted);margin:0 0 10px;font-size:14px;line-height:1.5}.deadline,.task-meta{color:var(--muted);align-items:center;gap:8px;margin-top:10px;font-size:14px;display:flex}.filter-chip{background:var(--selected);min-height:40px;color:var(--ink);border-radius:12px;align-items:center;gap:7px;margin:-3px 0 11px;padding:0 9px;font-size:14px;display:inline-flex}.filter-chip button{background:0 0;border:0;place-items:center;width:36px;height:36px;display:grid}.empty-state{border:1px dashed var(--line);background:var(--surface);text-align:center;border-radius:15px;justify-items:center;padding:24px 15px;display:grid}.empty-icon{margin-bottom:11px}.empty-state strong{font-size:16px}.empty-state p{max-width:280px;color:var(--muted);margin:6px 0 8px;font-size:14px;line-height:1.5}.list-limit-note{background:var(--warning-bg);color:var(--warning);border-radius:12px;margin:10px 0;padding:11px;font-size:13px;line-height:1.45}.deadline-row{background:var(--surface);text-align:left;border:0;align-items:center;gap:11px;width:100%;min-height:68px;padding:10px 11px;display:flex}.deadline-row+.deadline-row{border-top:1px solid var(--line)}.deadline-row>span:first-child{min-width:82px;color:var(--muted);font-size:13px}.deadline-row>span:nth-child(2){flex:1;gap:4px;min-width:0;display:grid}.deadline-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.deadline-row small{color:var(--muted);font-size:12px}.unavailable-card{border:1px solid var(--line);background:var(--surface);min-height:66px;color:var(--brand);border-radius:15px;align-items:center;gap:11px;padding:13px 15px;display:flex}.unavailable-card h2{color:var(--ink);margin:10px 0 6px;font-size:16px}.unavailable-card p{color:var(--muted);margin:0;font-size:15px;line-height:1.45}.profile-placeholder{min-height:54px;color:var(--muted);align-items:center;gap:9px;font-size:15px;display:flex}.settings-list{border:1px solid var(--line);background:var(--surface);border-radius:15px;margin:14px 0;overflow:hidden}.settings-row{justify-content:space-between;align-items:center;gap:8px;min-height:54px;padding:8px 12px;font-size:14px;display:flex}.settings-row+.settings-row{border-top:1px solid var(--line)}.future-label{color:var(--muted);font-size:12px}.logout-button{width:100%;margin-top:18px}.bottom-nav{z-index:6;width:min(100%,620px);min-height:68px;padding:5px max(8px, env(safe-area-inset-left)) calc(5px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-right));border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-item{min-width:44px;min-height:54px;color:var(--muted);background:0 0;border:0;border-radius:12px;align-content:center;justify-items:center;gap:2px;font-size:12px;display:grid}.nav-item.active{background:var(--selected);color:var(--brand);font-weight:700}.modal-backdrop{z-index:10;padding-top:max(12px, env(safe-area-inset-top));background:#0e153299;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-sheet{overscroll-behavior:contain;width:min(100%,620px);max-height:min(90dvh,760px);padding:7px 17px calc(18px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface);border-bottom:0;border-radius:20px 20px 0 0;overflow-y:auto;box-shadow:0 -12px 40px #0002}.sheet-handle{background:var(--line);border-radius:5px;width:40px;height:4px;margin:3px auto 12px}.modal-header{justify-content:space-between;align-items:center;gap:8px;min-height:48px;margin-bottom:12px;display:flex}.modal-header h2{margin:0;font-size:19px;line-height:1.3}.form-stack{gap:13px;padding-bottom:3px;display:grid}.form-stack label{color:var(--ink);gap:6px;font-size:14px;font-weight:650;display:grid}.form-stack input,.form-stack textarea,.form-stack select{border:1px solid var(--line);background:var(--canvas);width:100%;min-height:48px;color:var(--ink);border-radius:11px;padding:11px 12px;font-size:16px}.form-stack textarea{resize:vertical;min-height:82px}.form-stack input::placeholder,.form-stack textarea::placeholder{color:var(--muted);opacity:.85}.submit-button{width:100%;margin-top:3px}.task-detail{gap:12px;padding-bottom:3px;display:grid}.task-detail .status-pill{justify-self:start}.task-detail h2{overflow-wrap:anywhere;margin:0;font-size:20px;line-height:1.3}.task-detail>p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.priority-dot{background:#59657c;border-radius:50%;width:9px;height:9px}.alert{border:1px solid color-mix(in srgb, var(--error) 30%, var(--line));background:var(--error-bg);color:var(--error);border-radius:12px;align-items:center;gap:9px;margin:0 0 13px;padding:11px 12px;font-size:14px;line-height:1.45;display:flex}.alert span{flex:1}.alert button{width:40px;height:40px;color:inherit;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.toast{z-index:15;left:50%;bottom:calc(78px + env(safe-area-inset-bottom));border:1px solid var(--line);background:var(--surface);max-width:calc(100vw - 32px);min-height:46px;color:var(--ink);box-shadow:var(--shadow);white-space:nowrap;border-radius:13px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:650;display:flex;position:fixed;transform:translate(-50%)}.dev-ribbon{background:var(--selected);color:var(--muted);border-radius:10px;margin:-4px 0 12px;padding:9px 11px;font-size:13px}.skeleton-list{gap:8px;display:grid}.skeleton-list i{background:var(--line);opacity:.65;border-radius:13px;height:60px}.auth-shell{background:var(--canvas);place-items:center;min-height:100dvh;padding:22px 16px;display:grid}.auth-card{border:1px solid var(--line);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);border-radius:20px;padding:22px 18px}.auth-mark{background:var(--selected);width:46px;height:46px;color:var(--brand);border-radius:14px;place-items:center;margin-bottom:15px;display:grid}.auth-card h1,.auth-shell h1{margin:0 0 10px;font-size:24px;line-height:1.25}.auth-card .form-stack{margin-top:17px}.auth-footnote{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.45}.register-link{margin-top:10px}.link-button{margin-top:15px}.loader-line{background:linear-gradient(90deg, var(--brand) 36%, var(--line) 36%);border-radius:5px;width:160px;height:3px;animation:.9s infinite alternate load}@keyframes load{to{background-position:110px 0}}@media (width>=560px){.content{padding:22px 24px 32px}.modal-backdrop{padding-bottom:env(safe-area-inset-bottom);align-items:center}.modal-sheet{border:1px solid var(--line);border-radius:20px;padding-bottom:20px}}@media (width<=374px){.content{padding-left:12px;padding-right:12px}.topbar{padding-left:10px;padding-right:10px}.nav-item{font-size:11px}}
