:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#19243a;background:#f6f8fc;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--app-bg: #f6f8fc;--paper: #fff;--sidebar: #fff;--line: #e9edf5;--text: #19243a;--muted: #8893a5;--secondary: #637088;--input: #fbfcff;--primary: #465fe5;--primary-soft: #eef1ff;--hover: #f5f7ff;--shadow: 0 12px 40px rgba(24,44,91,.045)}:root[data-theme=dark]{color-scheme:dark;--app-bg: #111827;--paper: #1b2535;--sidebar: #161f2e;--line: #2c3749;--text: #edf2ff;--muted: #8190a8;--secondary: #adb9cb;--input: #202c3e;--primary: #7287ff;--primary-soft: #273458;--hover: #27344a;--shadow: 0 12px 40px rgba(0,0,0,.16)}*{box-sizing:border-box}html{background:var(--app-bg)}body{margin:0;background:var(--app-bg);color:var(--text)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}:focus-visible{outline:3px solid #a0b3ff;outline-offset:3px}#root{min-height:100dvh}.app-layout{min-height:100dvh;display:flex}.sidebar{width:263px;flex:0 0 263px;height:100dvh;position:sticky;top:0;z-index:40;display:flex;flex-direction:column;background:var(--sidebar);border-right:1px solid var(--line);padding:27px 16px 18px}.brand-lockup{display:flex;align-items:center;gap:11px;padding:0 14px;font-size:21px;letter-spacing:-.8px;font-weight:800;white-space:nowrap}.brand-symbol{background:linear-gradient(145deg,#4c6bfa,#3c50c8);color:#fff;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 15px #4564ea35}.sidebar-add{background:var(--primary);color:#fff;border:0;border-radius:11px;display:flex;align-items:center;gap:11px;padding:13px 15px;text-align:left;font-size:14px;font-weight:700;margin:40px 5px 29px;box-shadow:0 7px 18px #415de52b}.sidebar-add:hover,.button-primary:hover{filter:brightness(1.06)}.nav-section-label{color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1.5px;padding:0 16px;margin:3px 0 13px}.group-heading{margin-top:29px}.nav-stack{display:grid;gap:5px}.nav-link{border:0;background:transparent;color:var(--secondary);border-radius:10px;min-height:44px;display:flex;align-items:center;gap:13px;padding:10px 14px;text-align:left;width:100%;font-size:14px;font-weight:550}.nav-link svg{flex-shrink:0}.nav-link:hover{background:var(--hover);color:var(--text)}.nav-link.active{color:var(--primary);background:var(--primary-soft);font-weight:750}.nav-link span:nth-child(2){flex:1}.nav-count{font-size:11px;font-weight:650;color:var(--muted)}.nav-link.active .nav-count{color:var(--primary)}.sidebar-bottom{margin-top:auto;padding:20px 5px 0}.sidebar-identity{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:18px 5px 12px}.identity-avatar{display:flex;align-items:center;justify-content:center;width:35px;height:35px;flex:0 0 35px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:800}.identity-text{min-width:0;display:grid;gap:3px}.identity-text strong{font-size:12px}.identity-text span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:138px;font-size:11px;color:var(--muted)}.sidebar-actions{display:flex;justify-content:flex-end;gap:6px}.icon-button{width:35px;height:35px;background:transparent;border:0;border-radius:8px;display:grid;place-items:center;color:var(--muted);flex:0 0 auto}.icon-button:hover{background:var(--hover);color:var(--primary)}.danger-icon:hover{color:#e35d70;background:#fff1f2}.main-area{flex:1;min-width:0}.topbar{height:77px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);padding:0 44px}.topbar-left,.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-trail{font-size:13px;color:var(--muted)}.topbar-current{font-size:13px;color:var(--text);font-weight:700}.trail-chevron{color:var(--muted)}.sync-indicator{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid #dbf1e8;color:#238767;background:#f2fbf7;font-weight:650;font-size:11px;border-radius:99px;white-space:nowrap}.sync-error{color:#b97228;border-color:#f7e9d3;background:#fff8ec}:root[data-theme=dark] .sync-indicator{color:#75d6ae;border-color:#2e584f;background:#193a37}:root[data-theme=dark] .sync-error{color:#ffd092;border-color:#76543a;background:#49352c}.menu-toggle{display:none}.page-content{max-width:1220px;margin:0 auto;padding:49px 51px 40px}.intro-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:32px}.eyebrow{font-size:10px;color:var(--primary);font-weight:800;letter-spacing:1.7px;margin-bottom:12px}h1,h2,h3,p{margin-top:0}.intro-row h1{font-size:clamp(30px,3vw,41px);font-weight:800;letter-spacing:-1.6px;line-height:1.2;margin-bottom:9px}.heading-dot{color:var(--primary)}.page-subtitle{color:var(--muted);font-size:14px;margin-bottom:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:10px;padding:12px 17px;font-size:13px;font-weight:750;min-height:43px;border:1px solid transparent;white-space:nowrap}.button-primary{background:var(--primary);color:#fff;box-shadow:0 7px 18px #415de528}.button-secondary{background:var(--paper);color:var(--text);border-color:var(--line)}.button-secondary:hover{background:var(--hover)}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.stat-card{background:var(--paper);padding:22px 24px;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);min-height:157px}.stat-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:10px;width:39px;height:39px;margin-bottom:11px}.stat-icon.blue{background:#edf1ff;color:#566ef1}.stat-icon.orange{background:#fff3e9;color:#dc9150}.stat-icon.green{background:#e9f8f1;color:#35a179}:root[data-theme=dark] .stat-icon.blue{background:#25345d;color:#96a8ff}:root[data-theme=dark] .stat-icon.orange{background:#4a372f;color:#efab70}:root[data-theme=dark] .stat-icon.green{background:#21473c;color:#73dab0}.stat-value{font-size:30px;font-weight:800;letter-spacing:-.5px;line-height:1;margin-bottom:6px}.stat-label{color:var(--muted);font-size:12px}.offline-notice,.notice-banner{display:flex;align-items:center;gap:9px;padding:12px 14px;border-radius:10px;font-size:12px;margin-top:16px}.offline-notice{background:#fff5e5;color:#995e1c}.notice-banner{background:var(--primary-soft);color:var(--primary)}.offline-notice button,.notice-banner button{background:none;border:0;font-weight:750;color:inherit;margin-left:auto;white-space:nowrap}.tasks-section{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:27px 26px 11px;box-shadow:var(--shadow);margin-top:28px}.section-header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:23px}.section-title{display:flex;align-items:center;gap:12px}.section-title h2{font-size:18px;letter-spacing:-.4px;font-weight:800;margin:0}.section-count{min-width:25px;height:25px;padding:4px 7px;color:var(--primary);background:var(--primary-soft);font-size:11px;font-weight:800;text-align:center;border-radius:7px}.search-field{display:flex;gap:8px;align-items:center;background:var(--input);color:var(--muted);border:1px solid var(--line);padding:9px 12px;border-radius:9px;width:220px}.search-field input{border:0;outline:0;background:transparent;color:var(--text);min-width:0;width:100%;font-size:12px}.search-field input::placeholder,.quick-add input::placeholder{color:#aab5c6}.quick-add{border:1.5px dashed #cdd5ff;border-radius:10px;background:var(--primary-soft);display:flex;align-items:center;gap:11px;padding:10px 12px;margin-bottom:15px}.quick-plus{color:var(--primary);display:flex}.quick-add input{background:transparent;color:var(--text);border:0;outline:0;min-width:0;flex:1;font-size:13px}.quick-submit{background:var(--primary);color:#fff;border:0;border-radius:8px;width:31px;height:31px;display:grid;place-items:center}.task-row{display:flex;align-items:flex-start;gap:14px;padding:18px 3px;border-bottom:1px solid var(--line)}.task-row:last-child{border-bottom:0}.task-checkbox{width:21px;height:21px;border:1.8px solid #c8d0dd;border-radius:50%;background:transparent;color:#fff;margin-top:3px;flex:0 0 21px;display:grid;place-items:center;padding:0}.task-checkbox:not(.checked):hover{border-color:var(--primary);background:var(--primary-soft)}.task-checkbox.checked{background:#31ad88;border-color:#31ad88}.task-content{flex:1;min-width:0;outline-offset:4px;cursor:pointer}.task-title-line{display:flex;align-items:center;gap:9px}.task-title{font-size:14px;line-height:1.45;color:var(--text);font-weight:670;word-break:break-word}.task-is-done .task-title{text-decoration:line-through;color:var(--muted)}.priority-marker{background:#e56b67;width:7px;height:7px;border-radius:50%;flex:0 0 auto}.task-description{margin-top:4px;color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:9px}.group-pill,.due-pill,.done-pill{font-size:10px;font-weight:650;display:inline-flex;align-items:center;gap:5px}.group-pill{padding:4px 8px;background:var(--app-bg);color:var(--secondary);border-radius:5px}.due-pill{color:var(--muted)}.due-pill.overdue{color:#dd6754}.done-pill{color:#38a782}.task-actions{display:flex;gap:1px;opacity:0}.task-row:hover .task-actions,.task-row:focus-within .task-actions{opacity:1}.empty-state{display:flex;flex-direction:column;align-items:center;padding:54px 15px 65px;text-align:center}.empty-icon{width:77px;height:77px;border-radius:22px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary);margin-bottom:18px}.empty-state h3{font-size:16px;font-weight:780;margin-bottom:7px}.empty-state p{color:var(--muted);font-size:12px;max-width:290px;line-height:1.7;margin-bottom:18px}.app-footer{text-align:center;font-size:10px;color:var(--muted);padding-top:26px}.modal-cover{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:18px;background:#111b3299;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.editor-panel{width:min(530px,100%);max-height:min(750px,93dvh);overflow-y:auto;padding:28px 30px 24px;border-radius:16px;background:var(--paper);box-shadow:0 25px 100px #111a3640}.editor-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:23px}.editor-top h2{font-size:23px;letter-spacing:-.7px;margin:0}.editor-top .eyebrow{margin-bottom:7px}.editor-form{display:flex;flex-direction:column;gap:10px}.field-label{font-size:12px;font-weight:750;color:var(--secondary)}.form-input{display:block;width:100%;background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:12px 13px;font-size:13px;outline:none}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.title-input{font-weight:650}.textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.form-grid>div{display:grid;align-content:start;gap:10px}.editor-footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:14px;padding-top:21px}.editor-conflict,.validation{color:#b14e43;background:#fff0ed;border-radius:8px;padding:10px 12px;margin-bottom:12px;font-size:12px;line-height:1.5}.editor-conflict p{margin-bottom:10px}.server-version{display:grid;gap:5px;border-top:1px solid currentColor;padding-top:9px;overflow-wrap:anywhere;white-space:pre-wrap}.muted{color:var(--muted);font-weight:400}.spin{animation:spin 1.3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.boot-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:15px;color:var(--secondary)}.login-page{min-height:100dvh;display:grid;place-items:center;padding:30px 16px;background:radial-gradient(circle at 10% 10%,#e8edff 0%,transparent 30%),radial-gradient(circle at 90% 90%,#ebf2fd 0%,transparent 35%),var(--app-bg)}:root[data-theme=dark] .login-page{background:var(--app-bg)}.login-card{width:min(490px,100%);padding:47px 46px 35px;background:var(--paper);border:1px solid var(--line);border-radius:23px;box-shadow:0 25px 85px #28397112;position:relative}.login-brand{padding:0;margin-bottom:43px}.login-eyebrow{font-size:10px;letter-spacing:1.4px;display:flex;align-items:center;gap:8px;color:var(--primary);font-weight:800;margin-bottom:14px}.login-card h1{font-size:clamp(32px,5vw,40px);letter-spacing:-1.6px;line-height:1.16;margin:0 0 16px}.login-card h1 span{color:var(--primary)}.login-description{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:29px}.login-form{display:grid;gap:12px}.login-submit{margin-top:9px;width:100%;padding:14px}.login-foot{margin-top:27px;display:flex;gap:9px;align-items:center;justify-content:center;text-align:center;color:var(--muted);font-size:10px}.mobile-bottom,.mobile-shade{display:none}@media(max-width:1100px){.page-content{padding:38px 28px 30px}.topbar{padding:0 26px}.stat-card{padding:20px}}@media(max-width:820px){.sidebar{position:fixed;left:0;transform:translate(-100%);box-shadow:0 10px 45px #0002;transition:transform .2s}.sidebar.sidebar-open{transform:translate(0)}.mobile-shade{display:block;position:fixed;z-index:35;inset:0;background:#09112880}.menu-toggle{display:grid}.topbar{height:67px;padding:0 20px}.page-content{padding:30px 22px 94px}.mobile-bottom{display:grid;grid-template-columns:repeat(4,1fr);height:calc(63px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0;border-top:1px solid var(--line);background:var(--paper);z-index:30}.mobile-bottom button{color:var(--muted);font-size:10px;border:0;background:transparent;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}.mobile-bottom button.active{color:var(--primary);font-weight:800}.task-actions{opacity:1}}@media(max-width:550px){.topbar{padding:0 13px}.topbar-left,.topbar-actions{gap:4px}.topbar-trail,.trail-chevron{display:none}.topbar-current{font-size:13px;margin-left:5px}.sync-indicator{border:0;padding:6px;background:transparent}.sync-indicator span,.refresh-button{display:none}.page-content{padding:27px 15px 94px}.intro-row{align-items:flex-start;margin-bottom:23px}.intro-row h1{font-size:31px}.page-subtitle{font-size:12px;line-height:1.5}.header-add{padding:12px;font-size:0;min-width:42px}.header-add svg{width:20px;height:20px}.stats-grid{gap:9px}.stat-card{padding:14px 11px;min-height:118px;border-radius:11px}.stat-icon{width:27px;height:27px;border-radius:7px;margin-bottom:9px}.stat-icon svg{width:16px;height:16px}.stat-value{font-size:24px}.stat-label{font-size:10px;line-height:1.3}.tasks-section{padding:19px 13px 6px;margin-top:20px}.section-header{margin-bottom:16px}.section-title h2{font-size:17px}.search-field{width:46%;max-width:190px;padding:9px}.task-row{gap:10px;padding:16px 1px}.task-actions{gap:0}.task-actions .icon-button{width:29px;height:30px}.task-title{font-size:13px}.task-meta{gap:6px}.app-footer{line-height:1.8}.editor-panel{padding:25px 19px}.form-grid{gap:8px}.login-card{padding:32px 24px}}@media(prefers-reduced-motion:reduce){.spin{animation:none}*{scroll-behavior:auto!important}}.local-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:14px 0}.local-actions .muted{font-size:12px}.conflict-card{margin:16px 0;padding:20px;border:1px solid #e3a341;border-radius:14px;overflow-wrap:anywhere}.conflict-versions{display:grid;grid-template-columns:1fr 1fr;gap:18px}.conflict-versions p{white-space:pre-wrap}.local-return{position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@media(max-width:600px){.conflict-versions{grid-template-columns:1fr}.sync-indicator{max-width:210px;white-space:normal}}.space-picker{padding:10px 14px;display:grid;gap:8px}.space-picker .button{font-size:12px;padding:8px;white-space:normal}.workspace-panel{max-height:90dvh;overflow-y:auto}.member-row{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:12px 0;flex-wrap:wrap;overflow-wrap:anywhere}.workspace-panel form{display:grid;gap:10px;margin:20px 0}.invitation-banner{padding:16px;margin-bottom:16px;border:1px solid var(--border);border-radius:12px}.invitation-banner .button{margin:4px}.move-task{display:grid;gap:8px;padding-top:12px}.task-meta{flex-wrap:wrap}.task-meta span{overflow-wrap:anywhere}.sidebar{overflow-y:auto}.workspace-context{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:var(--paper);margin-bottom:10px}.workspace-context .space-picker{padding:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px}.workspace-context .field-label{grid-column:1 / -1}.workspace-context .space-picker .button{min-height:44px;padding:10px 14px}.workspace-summary{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:12px;color:var(--secondary)}.member-summary{min-width:0;overflow-wrap:anywhere}.space-kind{color:var(--primary);font-weight:650}.sync-strip{display:flex;align-items:center;gap:8px;margin-bottom:20px}.sync-strip .sync-indicator{max-width:none;white-space:normal}.sync-strip .sync-indicator span{display:inline}.sync-strip .sync-indicator svg{flex-shrink:0}.sync-strip .refresh-button{display:grid;margin-left:auto;width:44px;height:44px}.quick-add{margin:0 0 18px}.quick-add input{min-height:30px}.quick-submit{min-width:44px;min-height:44px}.task-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding-bottom:16px;font-size:12px;color:var(--secondary)}.task-filters select{width:min(100%,280px);min-width:0}.task-meta>span{font-size:11px}.invitation-banner{border-color:var(--line)}.invitation-link{display:grid;gap:10px;padding:14px;background:var(--primary-soft);border-radius:12px;overflow-wrap:anywhere}.invitation-link p{margin:0;font-size:13px}.invitation-history{margin:18px 0}.invitation-history summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:650}.member-info{display:grid;gap:5px;min-width:0;flex:1}.member-info strong{font-size:13px;overflow-wrap:anywhere}.member-info small,.workspace-panel small{color:var(--secondary);line-height:1.6}.workspace-panel section{border-bottom:1px solid var(--line);padding-bottom:16px}.workspace-panel h3{font-size:15px;margin:12px 0}.modal-cover{inset:auto 0;top:var(--visible-top, 0px);height:var(--visible-height, 100dvh);padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.editor-panel,.workspace-panel{display:flex;flex-direction:column;padding:0;max-height:100%;overflow:hidden}.editor-top{flex-shrink:0;margin:0;padding:20px;border-bottom:1px solid var(--line);background:var(--paper);gap:12px}.editor-top h2{font-size:22px;overflow-wrap:anywhere}.editor-top>div{min-width:0}.editor-top>button{flex-shrink:0}.editor-form{overflow-y:auto;overscroll-behavior:contain;padding:20px;min-height:0}.editor-footer{position:sticky;bottom:-20px;background:var(--paper);padding:14px 0 max(14px,env(safe-area-inset-bottom));z-index:1}.editor-panel>.validation{margin:12px 20px 0}.form-grid>div{min-width:0}.form-input{min-width:0;max-width:100%}:root[data-theme=dark] .validation,:root[data-theme=dark] .editor-conflict{background:#412b30;color:#ffc0b5}:root[data-theme=dark] .offline-notice{background:#3a3024;color:#ffdc9f}:root[data-theme=dark] .quick-add{border-color:#5566a1}:root[data-keyboard] .mobile-bottom{display:none}@media(max-width:820px){.form-input,.quick-add input,.search-field input{font-size:16px}.icon-button,.task-actions .icon-button{min-width:44px;min-height:44px}.button{min-height:44px}.sidebar{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom))}.topbar{padding-left:max(13px,env(safe-area-inset-left));padding-right:max(13px,env(safe-area-inset-right));padding-top:env(safe-area-inset-top);height:calc(67px + env(safe-area-inset-top))}.page-content{padding:18px max(15px,env(safe-area-inset-right)) calc(94px + env(safe-area-inset-bottom)) max(15px,env(safe-area-inset-left))}.workspace-context{padding:12px}.sync-strip{margin-bottom:8px}.intro-row{align-items:center;margin-bottom:12px}.intro-row .eyebrow,.intro-row .page-subtitle{display:none}.intro-row h1{font-size:27px;margin:0}.stats-grid{margin-top:8px}.stat-card{min-height:62px;padding:9px}.stat-value{font-size:22px;margin-bottom:4px}.stat-icon{display:none}.task-row{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:start}.task-actions{flex-direction:column}.task-title{font-size:15px}.task-checkbox{position:relative;display:grid;place-items:center;width:44px;height:44px;border:none;background:transparent;margin:0}.task-checkbox:before{content:"";position:absolute;width:21px;height:21px;border:1.5px solid #bfc9da;border-radius:50%}.task-checkbox.checked{background:transparent}.task-checkbox.checked:before{background:var(--primary);border-color:var(--primary)}.task-checkbox svg{z-index:1;color:#fff}.editor-top{padding:16px}.editor-top h2{font-size:20px}.editor-form{padding:16px}.editor-footer{bottom:-16px}.modal-cover{align-items:center}.mobile-bottom{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@media(max-width:550px){.topbar-trail{display:inline;color:var(--text);font-weight:700;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-current,.trail-chevron{display:none}.workspace-context .space-picker{grid-template-columns:minmax(0,1fr)}.workspace-context .space-picker .button{width:100%}.task-filters{gap:8px}.task-filters select{flex:1;width:100%;min-width:140px}.section-header{flex-wrap:wrap;gap:12px}.search-field{width:100%;max-width:none}.local-actions .button{width:100%}.editor-top .button{padding:10px}.form-grid{grid-template-columns:1fr}}
