:root{--bg: #000000;--surface: #1c1c1e;--surface-2: #2c2c2e;--fill: rgba(118, 118, 128, .24);--separator: rgba(84, 84, 88, .6);--text: #ffffff;--text-dim: #8e8e93;--text-dim-2: #636366;--accent: #0a84ff;--accent-press: #0a84ffcc;--danger: #ff453a;--green: #30d158;--radius: 12px;--radius-lg: 14px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.3;-webkit-font-smoothing:antialiased;letter-spacing:-.01em;overscroll-behavior-y:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;letter-spacing:inherit}input,textarea,select{font-family:inherit;font-size:17px;letter-spacing:inherit;color:var(--text);background:var(--surface-2);border:none;border-radius:10px;padding:12px 14px;width:100%;outline:none}input::placeholder,textarea::placeholder{color:var(--text-dim)}.splash{display:grid;place-items:center;height:100%;color:var(--text-dim);font-size:28px}.app{max-width:640px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;padding-bottom:calc(24px + var(--safe-bottom))}.app-header{padding:calc(12px + var(--safe-top)) 18px 6px;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(150%) blur(20px);-webkit-backdrop-filter:saturate(150%) blur(20px);z-index:5}.header-row{display:flex;align-items:flex-end;justify-content:space-between}.app-header h1{font-size:34px;font-weight:700;margin:0;letter-spacing:-.022em}.header-actions{display:flex;gap:8px;padding-bottom:4px}.icon-btn{font-size:17px;width:36px;height:36px;border-radius:50%;background:var(--fill);color:var(--accent);display:grid;place-items:center}.icon-btn:active{opacity:.5}.count{margin:1px 0 12px;color:var(--text-dim);font-size:15px}.lists-bar{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.lists-bar::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;padding:7px 15px;border-radius:999px;background:var(--fill);color:var(--text);font-size:15px;font-weight:500;white-space:nowrap}.chip.active{background:var(--accent);color:#fff}.chip.add{background:transparent;color:var(--accent);padding-left:8px}.composer{display:flex;gap:10px;padding:6px 18px 14px;align-items:center}.composer input{flex:1;background:var(--surface)}.primary{background:var(--accent);color:#fff;border-radius:10px;padding:12px 18px;font-weight:600;font-size:16px}.primary:active{background:var(--accent-press)}.primary:disabled{opacity:.4}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 18px 14px}.sort-group,.segmented{display:inline-flex;background:var(--fill);border-radius:9px;padding:2px;gap:2px}.sort-group,.sort-group .seg{flex:1}.seg{padding:7px 12px;border-radius:7px;font-size:14px;color:var(--text);font-weight:500;white-space:nowrap;transition:background .15s}.seg.active{background:var(--text-dim-2);color:#fff;box-shadow:0 1px 3px #0000004d}.link{color:var(--accent);font-size:15px;font-weight:400;padding:6px 2px;white-space:nowrap}.link.strong{font-weight:600}.task-list{flex:1;padding:0 18px}.task-list ul{list-style:none;margin:0;padding:0;background:var(--surface);border-radius:var(--radius-lg);overflow:hidden}.task-row{display:flex;align-items:center;gap:12px;padding:12px 16px;position:relative}.task-row:not(:last-child):after{content:"";position:absolute;left:52px;right:0;bottom:0;height:.5px;background:var(--separator)}.check{flex:0 0 auto;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--text-dim-2);display:grid;place-items:center;transition:background .12s,border-color .12s}.check.checked{background:var(--accent);border-color:var(--accent)}.tick{color:#fff;font-size:14px;line-height:1}.task-main{flex:1;text-align:left;display:flex;align-items:center;gap:9px;min-width:0}.prio-dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%}.task-title{flex:1;font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-row.done .task-title{color:var(--text-dim)}.task-meta{display:flex;align-items:center;gap:8px;flex:0 0 auto}.due{font-size:13px;color:var(--text-dim);white-space:nowrap}.due.overdue{color:var(--danger);font-weight:500}.has-notes{color:var(--text-dim);font-size:14px}.empty{text-align:center;padding:72px 20px;color:var(--text-dim)}.empty p{margin:4px 0}.empty-sub{font-size:15px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:20}.modal{width:100%;max-width:640px;background:#1c1c1e;border-radius:14px 14px 0 0;max-height:92vh;overflow-y:auto;padding-bottom:calc(20px + var(--safe-bottom));animation:slideUp .28s cubic-bezier(.32,.72,0,1)}@keyframes slideUp{0%{transform:translateY(100%)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 12px;position:sticky;top:0;background:#1c1c1e;z-index:1}.modal-header strong{font-size:17px;font-weight:600}.modal-body{padding:6px 18px 0;display:flex;flex-direction:column;gap:22px}.field{display:flex;flex-direction:column;gap:8px}.field>span{font-size:13px;color:var(--text-dim);font-weight:400;padding-left:2px}.field input,.field textarea,.field select{background:var(--surface-2)}.clear-date{align-self:flex-start;padding-left:2px}.danger{background:var(--surface-2);color:var(--danger);border-radius:10px;padding:13px;font-weight:400;font-size:17px;margin-top:2px}.danger:active{opacity:.6}.auth-screen{min-height:100%;display:grid;place-items:center;padding:24px}.auth-card{width:100%;max-width:360px;text-align:center}.auth-logo{width:68px;height:68px;border-radius:16px;background:var(--accent);color:#fff;font-size:36px;display:grid;place-items:center;margin:0 auto 20px}.auth-card h1{margin:0 0 8px;font-size:28px;font-weight:700;letter-spacing:-.02em}.auth-sub{color:var(--text-dim);font-size:15px;margin:0 0 24px;line-height:1.4}.auth-card form{display:flex;flex-direction:column;gap:10px}.auth-card input{background:var(--surface);padding:14px}.auth-card .primary{margin-top:6px;padding:14px}.auth-error{color:var(--danger);font-size:14px}.auth-message{color:var(--green);font-size:14px}.auth-toggle{color:var(--accent);font-size:15px;margin-top:20px;font-weight:400}.setup-card{max-width:420px}.setup-card h1,.setup-card .auth-sub{text-align:center}.setup-steps{text-align:left;line-height:1.8;color:var(--text);font-size:15px;padding-left:22px}code{background:var(--surface-2);padding:2px 6px;border-radius:6px;font-size:13px;font-family:ui-monospace,SF Mono,Menlo,monospace}
