:root{--ink:#26334c;--muted:#7d889a;--line:#e9edf4;--blue:#5364d9;--category-color:#5364d9;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;color:var(--ink);background:#f6f8fc}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a.button{cursor:pointer;border:0;border-radius:9px;padding:12px 19px;background:var(--blue);color:#fff;font-weight:600;transition:.15s}button:hover{filter:brightness(.97);transform:translateY(-1px)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #bcc5ff;outline-offset:3px}input,select,textarea{width:100%;border:1px solid #dfe5ef;border-radius:8px;padding:12px;color:var(--ink);background:white;outline:none}input:focus,textarea:focus,select:focus{border-color:#7785e7;box-shadow:0 0 0 3px #5364d910}label{display:block;font-size:13px;font-weight:600}label input,label select,label textarea{margin-top:7px}small{font-size:11px;color:var(--muted);font-weight:400;line-height:1.7}p{color:var(--muted);line-height:1.6}h1,h2,h3,p{margin-top:0}h1{font-size:31px;letter-spacing:-1px;line-height:1.25;font-weight:650}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px}form label{margin-bottom:18px}.layout{display:flex;min-height:100vh}.sidebar{width:246px;flex-shrink:0;background:#fff;border-right:1px solid var(--line);padding:36px 23px 25px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{font-size:30px;font-weight:800;display:flex;align-items:center;gap:10px;color:var(--blue);margin-bottom:50px}.brand>span{font-size:26px;letter-spacing:-1px;color:#273752;line-height:1}.brand small{display:block;letter-spacing:2.5px;font-size:8px;margin-top:7px;color:#9da6b7}.brand:first-letter{background:#eee}.nav-label{font-size:10px;letter-spacing:1.7px;color:#98a1b1;font-weight:700;margin:0 12px 15px}.nav-item{display:flex;gap:12px;align-items:center;width:100%;background:transparent;color:#768298;text-align:left;padding:13px 12px;margin-bottom:5px;font-size:12px;font-weight:500}.nav-item>span{font-size:20px;width:20px;text-align:center}.nav-item b{margin-left:auto;font-size:11px;font-weight:500}.nav-item.active{background:#eef0ff;color:#5364d9;font-weight:650}.category-heading{display:flex;align-items:center;justify-content:space-between;margin-top:35px}.category-heading .nav-label{margin-bottom:0}.icon-button{color:#9ba4b5;background:transparent;font-size:20px;padding:0 10px}.category-nav{margin-top:12px}.category-nav button{display:flex;align-items:center;gap:10px;width:100%;background:transparent;color:#778297;font-weight:500;font-size:12px;padding:11px 12px;text-align:left}.category-nav button.selected{background:#f8f9fd;color:#34435a}.dot{display:inline-block;flex-shrink:0;width:7px;height:7px;background:var(--category-color);border-radius:50%}.dot.neutral{background:#aeb7c7}.category-nav small{margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:50px}.private-note{display:flex;gap:12px;font-size:11px;line-height:1.8;color:#69778e;padding:0 8px 20px}.private-note>span{color:#8793c3;font-size:21px}.private-note small{display:block;font-size:10px;line-height:1.6}.subtle{background:transparent;color:#8b95a7;padding:8px 4px;font-size:11px;font-weight:500}.sidebar-bottom>.subtle{width:100%;border-top:1px solid var(--line);padding-top:17px}.main{flex:1;min-width:0;padding:0 42px 30px;max-width:1600px}header{display:flex;align-items:center;justify-content:space-between;height:88px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:11px;color:#8d97a9}.breadcrumb>span{margin:0 12px;color:#bcc4d1}.user{display:flex;align-items:center;gap:10px;font-size:11px}.avatar{background:#ececfb;color:#6664b9;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:650}.user>.subtle{margin-left:10px}.intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:39px 0 30px}.eyebrow{font-size:9px;font-weight:700;color:#909bb0;letter-spacing:1.65px;margin-bottom:13px}.intro h1{margin-bottom:10px}.intro p{font-size:12px;margin:0}.intro>button{white-space:nowrap;font-size:12px;box-shadow:0 4px 10px #5364d919}.intro>button span{font-size:17px;margin-right:7px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;margin-bottom:30px}.stat{border:1px solid var(--line);border-radius:11px;text-align:left;color:var(--ink);background:white;padding:21px 23px}.stat>span{font-weight:500;font-size:12px;display:flex;align-items:center;justify-content:space-between;color:#78859a}.stat i{font-style:normal;background:#f0f2ff;color:#6c78d2;width:29px;height:29px;border-radius:9px;display:grid;place-items:center;font-size:16px}.stat strong{font-size:33px;line-height:1.6;font-weight:600;display:block;letter-spacing:-1px}.stat small{font-size:10px}.stat.warning i{background:#fff4e9;color:#c78c56}.stat.complete i{background:#eaf7f1;color:#54987f}.task-panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-top{padding:25px 25px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-top h2{font-size:16px;margin-bottom:7px}.panel-top p{font-size:11px;margin:0}.search{position:relative;width:220px;flex-shrink:0}.search input{font-size:11px;margin:0;background:#fafbfd;padding:11px 12px 11px 32px}.search span{position:absolute;left:12px;top:10px;color:#8f9cb2;font-size:18px}.filter-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:0 25px 18px;border-bottom:1px solid var(--line)}.tabs{display:flex;background:#f5f7fb;border-radius:7px;padding:3px}.tabs button{font-size:10px;font-weight:500;background:transparent;color:#8a95a7;padding:8px 12px;border-radius:5px}.tabs button.chosen{background:white;color:#5a69c9;box-shadow:0 1px 4px #1626560d}.filter-bar select{width:165px;font-size:10px;padding:9px 11px}.task{display:flex;align-items:center;gap:15px;padding:20px 25px;border-bottom:1px solid #f0f2f7;min-height:87px}.checkbox{width:20px;height:20px;border:1.5px solid #d7deea;background:white;border-radius:6px;padding:0;flex-shrink:0;color:#fff;font-size:12px}.checkbox.checked{background:#6aa88f;border-color:#6aa88f}.task-content{flex:1;min-width:0;background:none;color:var(--ink);text-align:left;padding:0;font-size:12px;font-weight:500}.task-content strong{font-weight:550;overflow-wrap:anywhere}.task-content:hover{transform:none}.task-meta{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin-top:9px}.badge{display:flex;gap:5px;align-items:center;font-size:9px;color:var(--category-color);background:#f6f8fc;border-radius:4px;padding:3px 6px}.badge .dot{width:5px;height:5px}.has-note,.recurrence{font-size:9px;color:#a0a9b8;font-weight:400}.due{font-size:10px;color:#8e9aaf;white-space:nowrap}.due.overdue{color:#c88c62;background:#fff7ef;padding:5px 7px;border-radius:4px}.edit-button{font-size:15px;padding:6px;color:#9ea8b9;background:transparent}.is-done .task-content strong{text-decoration:line-through;color:#9ca8b7}.panel-foot{display:flex;justify-content:space-between;color:#a9b1bf;font-size:9px;padding:16px 25px}footer{text-align:center;font-size:10px;color:#a7b0bf;margin-top:26px}.empty{text-align:center;padding:55px 25px}.empty>div{display:grid;place-items:center;width:47px;height:47px;background:#edf7f3;color:#73a98e;font-size:22px;border-radius:50%;margin:0 auto 18px}.empty h3{font-size:16px;margin-bottom:10px}.empty p{font-size:12px}.secondary,a.secondary{background:#f0f2fc;color:#6571c7;font-size:12px}.auth{max-width:440px;margin:8vh auto;background:white;border:1px solid var(--line);padding:35px;border-radius:16px;box-shadow:0 12px 40px #26334c06}.auth .brand{margin-bottom:35px}.auth h1{font-size:29px}.auth p{font-size:13px}.auth form{margin-top:25px}.auth form>button{width:100%;display:flex;justify-content:space-between}.auth-foot{text-align:center;font-size:10px;color:#a2adbd;margin-top:30px}.form-error{color:#b15353;font-size:12px;margin:8px 0;min-height:4px}dialog{border:1px solid var(--line);border-radius:16px;padding:32px;width:540px;max-width:calc(100vw - 24px);max-height:90vh;box-shadow:0 20px 90px #1e2c5040;color:var(--ink)}dialog::backdrop{background:#1c2a4c55;backdrop-filter:blur(3px)}dialog h2{font-size:23px;margin-bottom:22px}dialog p{font-size:12px}dialog .close{position:absolute;right:14px;top:10px;background:transparent;color:#9aa4b5;font-size:24px;padding:3px 8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.modal-actions{display:flex;align-items:center;justify-content:space-between;margin-top:22px}.danger{color:#bd7373}.stop-repeat{display:block;margin-top:18px;width:100%}.notice{background:#f4f6fc;color:#7d88a0;padding:12px;border-radius:8px;font-size:11px;line-height:1.6;margin-bottom:18px}form>small{display:block;margin:-8px 0 19px}.category-editor form,.new-category{display:flex;gap:8px;align-items:center;margin-bottom:14px}.category-editor input[type=color],.new-category input[type=color]{width:40px;height:40px;padding:4px;flex-shrink:0}.category-editor input[name=name]{min-width:0}.category-editor button{font-size:10px;padding:11px}.category-editor{margin:25px 0}.button{display:inline-block;text-decoration:none}hr{border:0;border-top:1px solid var(--line);margin:25px 0}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#2d3d58;color:#fff;border-radius:10px;padding:14px 22px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:100;max-width:90vw;box-shadow:0 5px 20px #26334c20}#toast.show{opacity:1;transform:translate(-50%,0)}.loading{text-align:center;padding:20vh 20px;color:var(--muted)}@media(min-width:1600px){.main{margin:auto}}@media(max-width:1100px){.sidebar{width:210px;padding:30px 15px}.main{padding:0 25px 25px}.intro h1{font-size:26px}.panel-top{align-items:flex-start}.search{width:170px}.recurrence{display:none}.task{padding:20px}.filter-bar{padding-left:20px;padding-right:20px}}@media(max-width:760px){.layout{display:block}.sidebar{position:static;width:100%;height:auto;padding:17px 18px 12px;border-right:0;border-bottom:1px solid var(--line)}.brand{margin:0;font-size:26px}.brand>span{font-size:23px}.brand small{display:none}.sidebar>.nav-label,.sidebar .category-heading,.category-nav,.sidebar-bottom{display:none}.sidebar nav{display:flex;gap:5px;margin-top:18px}.nav-item{width:auto;flex:1;font-size:10px;padding:9px 7px;justify-content:center;gap:5px;margin:0}.nav-item span{font-size:14px;width:auto}.nav-item b{display:none}.main{padding:0 16px 24px}header{height:56px}.breadcrumb{font-size:10px}.user>span:not(.avatar){display:none}.intro{margin:26px 0 22px;display:block}.intro h1{font-size:25px}.intro p{font-size:11px;max-width:300px}.intro>button{margin-top:20px;width:100%}.eyebrow{font-size:8px;letter-spacing:1.2px}.stats{gap:8px;margin-bottom:22px}.stat{padding:12px 10px}.stat>span{font-size:9px}.stat i{display:none}.stat strong{font-size:27px}.stat small{font-size:8px}.panel-top{padding:20px 16px 16px;display:block}.panel-top h2{font-size:15px}.panel-top p{font-size:10px}.search{width:100%;margin-top:16px}.filter-bar{padding:0 16px 15px;display:block}.tabs{justify-content:space-between}.tabs button{font-size:10px;padding:8px 10px}.filter-bar select{margin-top:12px;width:100%}.task{padding:16px 14px;gap:10px;flex-wrap:wrap}.task-content{font-size:11px}.due{font-size:9px}.task .edit-button{padding:3px}.task-meta{gap:5px}.has-note{display:none}.panel-foot{padding:13px;font-size:8px}.auth{margin:25px 14px;padding:27px;max-width:440px}.auth h1{font-size:26px}dialog{padding:28px 20px}.new-category button{font-size:10px;padding:13px 9px}.new-category input[name=name]{min-width:0}footer{font-size:9px}.form-row{gap:10px}}

.mobile-settings{display:none}@media(max-width:760px){.mobile-settings{display:block;font-size:18px}.user>.mobile-settings{margin-left:0}.task-content{min-width:110px}.nav-item{line-height:1.35}}
@media(max-width:760px){.sidebar nav{gap:3px}.nav-item{min-width:0;font-size:9px;padding:9px 4px;gap:4px}.nav-item>span{font-size:12px}}

.modal-toast{position:sticky;bottom:0;background:#eef1fc;color:#4b5d94;border:1px solid #dfe5f8;border-radius:8px;padding:12px;margin:16px 0 0;font-size:12px}

.brand-icon{display:block;width:58px;height:58px;object-fit:contain;flex-shrink:0}@media(max-width:760px){.brand-icon{width:48px;height:48px}}
