:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;color:#111827;background:#f8fafc}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.page{min-height:100vh;background:#f8fafc}.topbar{position:sticky;top:0;z-index:10;height:56px;background:#ef4444;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 16px;box-shadow:0 2px 6px #00000014}.topbar-title{font-weight:700}.topbar-actions .dot{width:8px;height:8px;border-radius:50%;background:#fff;display:inline-block}.user-email{margin-right:8px;font-size:14px;opacity:.9}.btn-ghost{background:transparent;border-color:transparent}.auth-page{display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:420px;max-width:96vw;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;box-shadow:0 4px 14px #00000012}.auth-form{display:grid;gap:12px}.auth-title{margin:0 0 8px;text-align:center}.auth-error{color:#b91c1c;background:#fee2e2;border:1px solid #fecaca;padding:6px 8px;border-radius:8px}.auth-actions{display:flex;gap:8px;justify-content:flex-end}.container{max-width:760px;margin:0 auto;padding:32px 16px 120px;color:#1f2937}.heading{font-size:40px;font-weight:800;margin:0 0 16px;text-align:center}.sr-only{position:absolute;left:-9999px}.toolbar{display:none}.list{list-style-type:none;padding-left:0;margin:0}.list--root{padding:8px 6px 12px}.item{margin:2px 0}.row{display:grid;grid-template-columns:24px 1fr auto;gap:10px;align-items:center;padding:10px 8px;border-radius:8px}.level-0{border-left:3px solid #ef4444;background:#fff}.level-1{border-left:3px solid #f59e0b;background:#fffef7}.level-2{border-left:3px solid #10b981;background:#f7fffb}.level-3{border-left:3px solid #3b82f6;background:#f7fbff}.level-4,.level-5,.level-6{border-left:3px solid #8b5cf6;background:#fbf7ff}.row:hover{background:#f9fafb}.title{font-size:16px}.title--completed{text-decoration:line-through;color:#9ca3af}.actions{display:none;gap:8px;align-items:center}.row:hover .actions{display:inline-flex;align-items:center}.children{margin-left:34px;margin-top:4px}.icon-btn{border:1px solid #e5e7eb;width:28px;height:28px;border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;font-size:16px}.icon-btn:hover{background:#f3f4f6}.add-form{display:inline-flex;align-items:center;gap:8px;margin:6px 0}.add-form--compact .input{height:28px;padding:4px 8px}.input{border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:14px;min-width:220px}.input--inline{min-width:280px}.btn{border:1px solid #d1d5db;background:#fff;color:#111827;padding:6px 12px;border-radius:8px;font-size:14px;cursor:pointer}.btn:hover{background:#f3f4f6}.btn-danger{border-color:#ef4444;color:#b91c1c}.btn-danger:hover{background:#fee2e2}.rename-form{display:inline-block}.checkbox input{width:18px;height:18px;appearance:none;border:2px solid #9ca3af;border-radius:50%;background:#fff;display:inline-block;position:relative}.checkbox input:checked{border-color:#ef4444;background:radial-gradient(#ef4444 50%,#fff 51%)}.fab{position:fixed;right:24px;bottom:24px;width:56px;height:56px;border-radius:50%;border:none;background:#ef4444;color:#fff;font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;font-weight:600;box-shadow:0 6px 16px #00000026;cursor:pointer}.fab:hover{background:#dc2626}.quickadd-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;padding:16px}.quickadd{width:520px;max-width:96vw;background:#fff;border-radius:12px;padding:16px;box-shadow:0 10px 24px #0003}.quickadd-title{margin:0 0 8px}.error{color:#b91c1c}.status-line{min-height:22px;display:flex;align-items:center;padding:0 6px}.loading{color:#6b7280;font-style:italic}.confirm{width:480px;max-width:96vw;background:#fff;border-radius:12px;padding:16px;box-shadow:0 10px 24px #0003}.confirm-title{margin:0 0 8px}.confirm-text{margin:0 0 12px;color:#4b5563}.confirm-actions{display:flex;gap:8px;justify-content:flex-end}.details{width:560px;max-width:96vw;background:#fff;border-radius:12px;padding:16px;box-shadow:0 10px 24px #0003}.title-wrap{display:flex;align-items:center;gap:8px}.meta{display:inline-flex;gap:6px;margin-left:8px}.cat-dot{width:10px;height:10px;border-radius:50%;display:inline-block;border:2px solid currentColor}.cat-work{color:#3b82f6}.cat-personal{color:#10b981}.cat-misc{color:#9ca3af}.pri-badge{font-size:11px;padding:2px 6px;border-radius:999px;border:1px solid}.pri-p1{color:#ef4444;border-color:#fecaca;background:#fee2e2}.pri-p2{color:#f59e0b;border-color:#fde68a;background:#fef3c7}.pri-p3{color:#10b981;border-color:#bbf7d0;background:#ecfdf5}.pri-p4{color:#6b7280;border-color:#e5e7eb;background:#f9fafb}.pri-dot{width:10px;height:10px;border-radius:50%;background:#9ca3af}.pri-dot--p1{background:#ef4444}.pri-dot--p2{background:#f59e0b}.pri-dot--p3{background:#10b981}.pri-dot--p4{background:#9ca3af}.chip{display:inline-flex;padding:2px 6px;border-radius:999px;font-size:12px;border:1px solid #e5e7eb;background:#fff;color:#374151}.chip--green{border-color:#86efac;background:#ecfdf5;color:#065f46}.chip--blue{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}.input--block{width:100%;min-width:0;box-sizing:border-box}.quickadd-form{display:grid;gap:10px}.qa-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:grid;gap:6px}.field--full{grid-column:1 / -1}.field-label{font-size:12px;color:#6b7280}.qa-actions{display:flex;justify-content:flex-end;gap:8px}.filters{display:flex;gap:8px;justify-content:center;margin-bottom:12px}.tab{border:1px solid #e5e7eb;background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer}.tab--active{background:#f3f4f6}.badge{margin-left:6px;background:#e5e7eb;border-radius:999px;padding:2px 6px;font-size:12px}.section{margin-top:10px}.section-header{display:flex;align-items:center;justify-content:space-between}.section-add{visibility:hidden}.section:hover .section-add{visibility:visible}.section-title{display:flex;align-items:center;gap:6px;width:100%;background:transparent;border:none;text-align:left;padding:6px 10px;font-size:12px;color:#6b7280;text-transform:uppercase;letter-spacing:.08em}.chev{width:8px;height:8px;border-right:2px solid #9ca3af;border-bottom:2px solid #9ca3af;transform:rotate(-45deg);display:inline-block}.chev--collapsed{transform:rotate(135deg)}.draggable-wrapper{list-style:none}.cal{padding:8px}.cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.cal-month{font-weight:600}.cal-nav{display:flex;gap:8px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.cal-cell{border:1px solid #e5e7eb;border-radius:8px;padding:6px;min-height:100px;background:#fff}.cal-cell--muted{background:#f9fafb;color:#9ca3af}.cal-date{font-size:12px;color:#6b7280;margin-bottom:4px}.cal-tasks{display:flex;flex-direction:column;gap:2px}.cal-task{font-size:12px;padding:2px 4px;border-radius:4px;background:#f3f4f6}.cal-task--done{text-decoration:line-through;color:#9ca3af}.notes{margin-left:34px;padding:6px 8px}.notes-input{width:100%;min-width:0;box-sizing:border-box}.notes-actions{margin-top:6px;display:flex;gap:8px}.notes-preview{margin-left:34px;color:#6b7280;font-size:13px;padding:2px 0;white-space:pre-wrap}
