*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--font-main:"Ubuntu", system-ui, sans-serif;--font-mono:"Ubuntu Mono", "Consolas", monospace;--font-sm:.8rem;--font-base:1rem;--font-lg:1.5rem;--blue:#2c72c3;--purple:#6d2fd1;--lavender:#b48ead;--rose:#ae4878;--red:#bf616a;--orange:#d08770;--yellow:#ebcb8b;--green:#97bf5e;--teal:#8fbcbb;--cyan:#88c0d0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root,[data-theme=dark]{--bg:#2e3440;--bg-secondary:#3b4252;--bg-hover:#434c5e;--text:#eceff4;--text-dim:var(--teal);--text-muted:var(--lavender);--accent:var(--cyan);--danger:var(--red);--success:var(--green);--border:#4c566a;--modal-overlay:color-mix(in srgb, var(--bg) 60%, transparent);--modal-shadow:color-mix(in srgb, var(--bg) 40%, transparent)}@media (prefers-color-scheme:light){:root{--bg:#eceff4;--bg-secondary:#e5e9f0;--bg-hover:#d8dee9;--text:#2e3440;--text-dim:#4c566a;--text-muted:var(--lavender);--accent:var(--blue);--danger:var(--rose);--success:var(--green);--border:#d8dee9;--modal-overlay:color-mix(in srgb, var(--text) 30%, transparent);--modal-shadow:color-mix(in srgb, var(--text) 15%, transparent)}}[data-theme=light]{--bg:#eceff4;--bg-secondary:#e5e9f0;--bg-hover:#d8dee9;--text:#2e3440;--text-dim:#4c566a;--text-muted:var(--lavender);--accent:var(--blue);--danger:var(--rose);--success:var(--green);--border:#d8dee9;--modal-overlay:color-mix(in srgb, var(--text) 30%, transparent);--modal-shadow:color-mix(in srgb, var(--text) 15%, transparent)}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-main), sans-serif;font-size:var(--font-base);-webkit-font-smoothing:antialiased;line-height:1.6}#root{flex-direction:column;height:100%;display:flex}.terminal{flex-direction:column;flex:1;width:100%;max-width:900px;margin:0 auto;padding:24px;display:flex}.terminal>main{flex-direction:column;flex:1;display:flex}.terminal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.terminal-header h1{font-size:var(--font-lg);color:var(--accent);font-weight:600}.terminal-header h1 a{color:inherit;text-decoration:none}.terminal-header h1 a:hover{opacity:.8}.terminal-header .actions{align-items:center;gap:10px;display:flex}.user-info{color:var(--text-muted);font-family:var(--font-mono), monospace;font-size:var(--font-sm)}.btn{background:var(--bg-secondary);color:var(--accent);border:1px solid var(--border);font-family:var(--font-mono), monospace;font-size:var(--font-sm);cursor:pointer;border-radius:6px;padding:8px 16px;text-decoration:none;transition:all .15s}.btn:hover{background:var(--bg-hover);border-color:var(--accent)}.btn:active{transform:translateY(1px)}.btn--danger{color:var(--danger)}.btn--danger:hover{border-color:var(--danger)}.btn--success{background:var(--success);color:var(--bg);border-color:var(--success)}.btn--success:hover{background:var(--success);opacity:.85;border-color:var(--success)}.task-list,.checklist{flex-direction:column;gap:4px;display:flex}.task-list{flex:1;overflow-y:auto}.list-item{cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;transition:all .15s;display:flex}.list-item:hover{background:var(--bg-secondary);border-color:var(--border)}.list-item--editing,.list-item--editing:hover{cursor:default;background:0 0;border-color:#0000}.list-item:hover .btn{opacity:1}.list-item--selected{background:var(--bg-secondary);border-color:var(--accent)}.list-item__cursor{color:var(--accent);width:14px;font-size:var(--font-sm);flex-shrink:0;transition:opacity .15s}.list-item:not(.list-item--selected) .list-item__cursor{opacity:0}.list-item:hover .list-item__cursor{opacity:.5}.list-item--selected .list-item__cursor{opacity:1}.list-item__icon{color:var(--text-dim);text-align:center;width:20px}.list-item__content{flex:1}.list-item__detail{color:var(--text-dim);font-size:var(--font-sm)}.list-item .btn{opacity:0;padding:6px 12px;transition:opacity .15s}.list-item__drag-handle{color:var(--text-muted);cursor:grab;width:16px;font-size:var(--font-sm);opacity:0;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;transition:opacity .15s}.list-item:hover .list-item__drag-handle{opacity:.5}.list-item__drag-handle:hover{color:var(--accent);opacity:1!important}.list-item__drag-handle:active{cursor:grabbing}.list-item--dragging{background:var(--bg-secondary);border-color:var(--accent);box-shadow:0 4px 12px var(--modal-shadow);z-index:10}.list-item--done{color:var(--text-muted)}.list-item--done .list-item__icon{color:var(--accent)}.list-item--done .list-item__content{opacity:.5;filter:blur(.5px);text-decoration:line-through}.task-view{flex-direction:column;flex:1;display:flex}.task-view__header{border-bottom:1px solid var(--border);align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;display:flex}.task-view__title{font-size:var(--font-lg);color:var(--accent);flex:1;font-weight:600}.task-view__meta{color:var(--text-muted);font-size:var(--font-sm);margin-bottom:20px}.task-view__content{white-space:pre-wrap;flex:1}.task-view__text-content{white-space:pre-wrap;border:1px solid #0000;border-radius:6px;padding:12px 14px}.task-view__markdown{white-space:normal}.task-view__markdown h1,.task-view__markdown h2,.task-view__markdown h3,.task-view__markdown h4,.task-view__markdown h5,.task-view__markdown h6{color:var(--accent);margin-top:16px;margin-bottom:8px;font-weight:600;line-height:1.3}.task-view__markdown h1{font-size:1.4rem}.task-view__markdown h2{font-size:1.2rem}.task-view__markdown h3{font-size:1.05rem}.task-view__markdown h1:first-child,.task-view__markdown h2:first-child,.task-view__markdown h3:first-child,.task-view__markdown h4:first-child,.task-view__markdown h5:first-child,.task-view__markdown h6:first-child{margin-top:0}.task-view__markdown p{margin-bottom:12px}.task-view__markdown p:last-child{margin-bottom:0}.task-view__markdown strong{color:var(--text);font-weight:700}.task-view__markdown em{color:var(--text-dim);font-style:italic}.task-view__markdown a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.task-view__markdown a:hover{opacity:.8}.task-view__markdown ul,.task-view__markdown ol{margin-bottom:12px;padding-left:24px}.task-view__markdown li{margin-bottom:4px}.task-view__markdown li:last-child{margin-bottom:0}.task-view__markdown code{background:var(--bg-secondary);color:var(--orange);font-family:var(--font-mono), monospace;border-radius:4px;padding:2px 6px;font-size:.9em}.task-view__markdown pre{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;margin-bottom:12px;padding:12px 14px;overflow-x:auto}.task-view__markdown pre code{color:var(--text);font-size:var(--font-sm);background:0 0;padding:0}.task-view__markdown blockquote{border-left:3px solid var(--accent);color:var(--text-dim);margin-bottom:12px;padding-left:14px}.task-view__markdown hr{border:none;border-top:1px solid var(--border);margin:16px 0}.task-view__markdown table{border-collapse:collapse;width:100%;font-size:var(--font-sm);margin-bottom:12px}.task-view__markdown th,.task-view__markdown td{border:1px solid var(--border);text-align:left;padding:8px 12px}.task-view__markdown th{background:var(--bg-secondary);color:var(--accent);font-weight:600}.task-view__markdown tr:hover{background:var(--bg-secondary)}.task-view__markdown del{color:var(--text-muted);text-decoration:line-through}.input-field{background:var(--bg-secondary);width:100%;color:var(--text);border:1px solid var(--border);font-family:var(--font-mono), monospace;font-size:var(--font-base);caret-color:var(--accent);border-radius:6px;outline:none;padding:10px 14px;transition:all .15s}.input-field:focus{border-color:var(--accent)}.input-field::placeholder{color:var(--text-muted)}.modal-overlay{background:var(--modal-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg);border:1px solid var(--border);min-width:400px;max-width:500px;box-shadow:0 25px 50px var(--modal-shadow);border-radius:12px;padding:24px}.modal h2{font-size:var(--font-lg);color:var(--accent);margin-bottom:20px;font-weight:600}.modal .form-group{margin-bottom:16px}.modal .form-group label{color:var(--text-dim);font-size:var(--font-sm);margin-bottom:6px;display:block}.type-selector{gap:10px;margin-bottom:20px;display:flex}.type-option{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text);font-family:var(--font-mono), monospace;font-size:var(--font-base);cursor:pointer;text-align:center;border-radius:8px;flex:1;padding:12px;transition:all .15s}.type-option:hover{border-color:var(--text-dim)}.type-option--selected{border-color:var(--accent);color:var(--accent)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.empty-state{color:var(--text-dim);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.empty-state__hint{font-size:var(--font-sm);color:var(--text-muted)}.not-found__code{font-family:var(--font-mono), monospace;color:var(--accent);font-size:4rem;font-weight:700;line-height:1}.save-error{background:var(--bg-secondary);color:var(--danger);border:1px solid var(--danger);font-size:var(--font-sm);font-family:var(--font-mono), monospace;text-align:center;border-radius:6px;margin-top:12px;padding:8px 14px}.status-bar{border-top:1px solid var(--border);color:var(--text-muted);font-size:var(--font-sm);text-align:center;margin-top:20px;padding-top:12px}.status-bar__message{color:var(--accent)}.textarea-field{background:var(--bg-secondary);width:100%;min-height:150px;color:var(--text);border:1px solid var(--border);font-family:var(--font-mono), monospace;font-size:var(--font-base);field-sizing:content;resize:vertical;caret-color:var(--accent);border-radius:6px;outline:none;padding:12px 14px;transition:all .15s}.textarea-field:focus{border-color:var(--accent)}.textarea-field::placeholder{color:var(--text-muted)}.back-btn{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-dim);font-family:var(--font-mono), monospace;font-size:var(--font-sm);cursor:pointer;border-radius:6px;padding:8px 14px;transition:all .15s}.back-btn:hover{color:var(--accent);border-color:var(--accent)}.auth-screen{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;width:100%;max-width:340px;margin:0 auto;display:flex}.auth-google-btn{background:var(--bg-secondary);width:100%;color:var(--text);border:1px solid var(--border);font-family:var(--font-mono), monospace;font-size:var(--font-base);cursor:pointer;border-radius:6px;padding:10px 16px;transition:all .15s}.auth-google-btn:hover{border-color:var(--accent);color:var(--accent)}.auth-divider{width:100%;color:var(--text-muted);font-size:var(--font-sm);align-items:center;gap:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-top:1px solid var(--border);flex:1}.auth-mode-selector{background:var(--bg-secondary);border:1px solid var(--border);border-radius:6px;width:100%;padding:3px;display:flex}.auth-mode-option{color:var(--text-dim);font-family:var(--font-mono), monospace;font-size:var(--font-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:4px;flex:1;padding:6px 4px;transition:all .15s}.auth-mode-option:hover{color:var(--text)}.auth-mode-option--selected{background:var(--bg);color:var(--accent);border-color:var(--border)}.auth-form{flex-direction:column;gap:12px;width:100%;display:flex}.auth-submit{width:100%}.auth-error{color:var(--danger);font-size:var(--font-sm);text-align:center}.auth-success{color:var(--success);font-size:var(--font-sm);text-align:center}.footer{color:var(--text-muted);font-size:var(--font-sm);text-align:center;border-top:1px solid var(--border);margin-top:20px;padding-top:12px}.footer__about-link{color:var(--text-muted);text-decoration:none}.footer__about-link:hover{color:var(--accent)}.task-list::-webkit-scrollbar{width:6px}.task-list::-webkit-scrollbar-track{background:0 0}.task-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.task-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--accent);color:var(--bg)}:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.landing{flex-direction:column;gap:40px;padding:20px 0;display:flex}.landing__hero{text-align:center;padding:40px 0}.landing__title{font-size:2.5rem;font-weight:700;font-family:var(--font-mono), monospace;color:var(--accent);margin-bottom:16px}.landing__tagline{color:var(--text-dim);max-width:500px;margin:0 auto 28px;font-size:1.1rem;line-height:1.8}.landing__cta{font-size:var(--font-base);padding:12px 32px;display:inline-block}.landing__section{border-top:1px solid var(--border);padding-top:28px}.landing__heading{font-family:var(--font-mono), monospace;color:var(--accent);margin-bottom:20px;font-size:1.1rem;font-weight:600}.landing__features{flex-direction:column;gap:16px;list-style:none;display:flex}.landing__features li{align-items:flex-start;gap:14px;display:flex}.landing__feature-icon{font-family:var(--font-mono), monospace;color:var(--accent);text-align:center;flex-shrink:0;width:24px;padding-top:2px;font-size:1.2rem}.landing__features strong{margin-bottom:2px;display:block}.landing__feature-desc{color:var(--text-dim);font-size:var(--font-sm);display:block}.landing__install-grid{flex-direction:column;gap:16px;display:flex}.landing__install-block{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:16px}.landing__install-block h3{font-family:var(--font-mono), monospace;font-size:var(--font-sm);color:var(--text-muted);text-transform:lowercase;margin-bottom:10px}.landing__code{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px 14px;overflow-x:auto}.landing__code code{font-family:var(--font-mono), monospace;font-size:var(--font-sm);color:var(--text);white-space:pre}.landing__install-hint{color:var(--text-dim);font-size:var(--font-sm)}.landing__install-hint a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.landing__install-hint a:hover{opacity:.8}.landing__links{justify-content:center;gap:12px;display:flex}@media (width<=600px){.landing__hero{padding:24px 0}.landing__title{font-size:2rem}}
