@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Poppins,sans-serif;background:#f5f5f5;color:#1a1a1a;min-height:100vh}.app{max-width:640px;margin:0 auto;padding:2.5rem 1.25rem}.app-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.app-title{font-size:1.75rem;font-weight:700;letter-spacing:-.02em}.streak-count{font-size:.75rem;font-weight:600;color:#f97316;margin-top:.2rem}.settings-wrapper{position:relative}.settings-btn{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #e8e8e8;border-radius:6px;background:#fff;color:#888;cursor:pointer;transition:color .15s,border-color .15s}.settings-btn:hover{color:#1a1a1a;border-color:#ccc}.settings-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:220px;max-width:calc(100vw - 2rem);background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:1rem;box-shadow:0 4px 12px #00000014;z-index:100;display:flex;flex-direction:column;gap:.75rem}.settings-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:#999}.settings-label{display:flex;flex-direction:column;gap:.3rem;font-size:.875rem;color:#444}.settings-input-row{display:flex;align-items:center;gap:.4rem}.settings-input{width:64px;padding:.3rem .5rem;border:1px solid #d4d4d4;border-radius:5px;font-size:.875rem;font-family:inherit;outline:none;transition:border-color .15s}.settings-input:focus{border-color:#1a1a1a}.settings-unit{font-size:.8125rem;color:#888}.settings-save{align-self:flex-end;padding:.35rem .875rem;background:#1a1a1a;color:#fff;border:none;border-radius:5px;font-size:.8125rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s}.settings-save:hover{background:#333}.settings-error{font-size:.8125rem;color:#dc2626}.add-form{display:flex;gap:.5rem;margin-bottom:.875rem}.add-input{flex:1;padding:.625rem .875rem;border:1px solid #d4d4d4;border-radius:6px;font-size:.9375rem;font-family:inherit;background:#fff;outline:none;transition:border-color .15s}.add-input:focus{border-color:#1a1a1a}.add-btn{padding:.625rem 1.25rem;background:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:500;font-family:inherit;cursor:pointer;transition:background .15s;white-space:nowrap}.add-btn:hover{background:#333}.add-btn:active{background:#000}.mode-toggle{display:flex;gap:0;margin-bottom:1rem;border:1px solid #d4d4d4;border-radius:6px;overflow:hidden;width:fit-content}.mode-btn{padding:.3rem 1rem;background:#fff;border:none;font-size:.8125rem;font-family:inherit;font-weight:500;color:#888;cursor:pointer;transition:background .15s,color .15s}.mode-btn+.mode-btn{border-left:1px solid #d4d4d4}.mode-btn--active{background:#1a1a1a;color:#fff}.filters{display:flex;gap:.375rem;margin-bottom:1.75rem}.filter-btn{padding:.3125rem .875rem;border:1px solid #d4d4d4;border-radius:20px;background:#fff;font-size:.8125rem;font-family:inherit;color:#666;cursor:pointer;transition:all .15s}.filter-btn:hover{border-color:#999;color:#1a1a1a}.filter-btn--active{background:#1a1a1a;border-color:#1a1a1a;color:#fff}.task-section{margin-bottom:2rem}.section-heading{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:#999;margin-bottom:.5rem}.task-item{display:flex;align-items:center;gap:.625rem;padding:.5625rem .75rem;background:#fff;border:1px solid #e8e8e8;border-radius:6px;margin-bottom:.3125rem;transition:border-color .15s;min-height:2.5rem}.task-item:hover{border-color:#ccc}.task-checkbox{flex-shrink:0;width:15px;height:15px;cursor:pointer;accent-color:#1a1a1a}.task-text{flex:1;font-size:.9375rem;line-height:1.45;word-break:break-word;cursor:text;-webkit-user-select:none;user-select:none}.task-text--completed{color:#aaa;cursor:default}.task-edit-input{flex:1;font-size:.9375rem;font-family:inherit;line-height:1.45;border:none;outline:none;background:transparent;padding:0;color:inherit;min-width:0}.task-delete,.task-move{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:#ccc;cursor:pointer;border-radius:4px;opacity:0;transition:color .15s,opacity .15s;padding:0}.task-item:hover .task-delete,.task-item:hover .task-move{opacity:1}.task-delete:hover{color:#dc2626}.task-move:hover{color:#666}.task-timestamp{margin-left:.5rem;font-size:.75rem;color:#aaa;white-space:nowrap;font-weight:400}.task-text--completed .task-timestamp{color:#ccc}@keyframes taskComplete{0%{transform:scale(1);box-shadow:none}30%{transform:scale(1.03);box-shadow:0 0 0 4px #22c55e59}60%{transform:scale(.98)}to{transform:scale(1);box-shadow:none}}.task-item--completing{animation:taskComplete .6s ease}@media(prefers-reduced-motion:reduce){.task-item--completing{animation:none}}.empty-state{font-size:.875rem;color:#bbb;text-align:center;padding:1.75rem 0}.section-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.section-count{display:inline-block;margin-left:.4rem;font-size:.6875rem;font-weight:600;color:#999;letter-spacing:0;text-transform:none}.section-collapse-btn{background:none;border:none;cursor:pointer;color:#999;font-size:.75rem;padding:.25rem .375rem;border-radius:4px;line-height:1}.section-collapse-btn:hover{color:#1a1a1a;background:#f0f0f0}.add-form--inline{margin-bottom:.625rem}.move-dropdown{position:absolute;right:0;top:calc(100% + 4px);z-index:100;background:#fff;border:1px solid #e8e8e8;border-radius:6px;box-shadow:0 4px 12px #00000014;min-width:130px;overflow:hidden}.move-dropdown-item{display:block;width:100%;text-align:left;background:none;border:none;padding:.5rem .75rem;font-size:.8125rem;color:#1a1a1a;cursor:pointer;white-space:nowrap}.move-dropdown-item:hover{background:#f5f5f5}.sync-status{font-size:.75rem;color:#aaa;margin-top:.2rem}.sync-status--error{color:#dc2626}.pull-btn{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid #e8e8e8;border-radius:6px;background:#fff;color:#888;cursor:pointer;transition:color .15s,border-color .15s}.pull-btn:hover{color:#1a1a1a;border-color:#ccc}.settings-divider{border:none;border-top:1px solid #f0f0f0;margin:0}.settings-token-input{width:100%;padding:.3rem .5rem;border:1px solid #d4d4d4;border-radius:5px;font-size:.8125rem;font-family:inherit;outline:none;transition:border-color .15s}.settings-token-input:focus{border-color:#1a1a1a}.settings-link{font-size:.75rem;color:#888;text-decoration:none}.settings-link:hover{color:#1a1a1a;text-decoration:underline}.settings-gist-row{display:flex;align-items:center;justify-content:space-between}.settings-gist-badge{font-size:.8125rem;color:#16a34a;font-weight:500}.settings-gist-disconnect{font-size:.8125rem;color:#888;background:none;border:none;cursor:pointer;padding:0;font-family:inherit;text-decoration:underline}.settings-gist-disconnect:hover{color:#dc2626}.header-actions{display:flex;gap:.5rem;align-items:center}.project-card{border:1px solid #e0e0e0;border-radius:8px;background:#fff;margin-bottom:.75rem;position:relative}.project-card--done{opacity:.7}.project-card-header{display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;gap:.5rem}.project-card-left{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.project-card-name{font-size:.9375rem;font-weight:600;color:#1a1a1a;cursor:default;flex:1}.project-card-name--done{color:#aaa;text-decoration:line-through;cursor:default}.project-card-progress{margin-left:.5rem;font-size:.75rem;font-weight:400;color:#aaa}.project-card-controls{display:flex;align-items:center;gap:.25rem;flex-shrink:0;opacity:0;transition:opacity .15s}.project-card-header:hover .project-card-controls{opacity:1}.project-card-action{background:none;border:none;cursor:pointer;color:#bbb;font-size:.875rem;line-height:1;padding:.2rem .35rem;border-radius:4px;transition:color .15s}.project-card-action:hover{color:#666}.project-card-action--delete:hover{color:#dc2626}.project-card-body{padding:0 .75rem .625rem;border-top:1px solid #f0f0f0}.project-card-body .task-item{border-left:none;border-right:none;border-radius:0;border-top:none;border-bottom:1px solid #f5f5f5;margin-bottom:0}.project-card-body .task-item:last-of-type{border-bottom:none}.add-form--subtask{margin-top:.5rem}.add-form--subtask .add-input{font-size:.875rem;padding:.4rem .625rem}.add-form--subtask .add-btn{font-size:.875rem;padding:.4rem .875rem}.empty-state--sm{padding:.75rem 0;font-size:.8125rem}.project-name-input{font-size:.9375rem;font-weight:600;color:#1a1a1a;border:none;border-bottom:1px solid #ccc;outline:none;background:transparent;padding:0;font-family:inherit;min-width:0;width:200px}.move-dropdown--project{z-index:200}.move-dropdown-divider{height:1px;background:#f0f0f0;margin:.25rem 0}
