@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,600;0,9..40,700;1,9..40,400&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;line-height:1.5;color:#e8eaef;background:#0f1219}*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{max-width:42rem;margin:0 auto;padding:2rem 1.25rem}a{color:#7eb0ff}a:hover{color:#a8c8ff}.center{text-align:center}h1{font-weight:700;font-size:1.75rem;margin:0 0 1rem;letter-spacing:-.02em}h2.section-title{font-size:.95rem;font-weight:600;color:#8b95a8;text-transform:uppercase;letter-spacing:.06em;margin:0 0 .75rem}.auth-card{max-width:22rem;margin:2rem auto}.auth-card h1{margin-bottom:.35rem}.auth-sub{color:#8b95a8;font-size:.95rem;margin:0 0 1.5rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:#a8b0c0}.auth-form input{padding:.65rem .85rem;border:1px solid #2a3142;border-radius:8px;background:#181d28;color:inherit;font-size:1rem}.auth-form input:focus{outline:none;border-color:#5b8def}.auth-form button{margin-top:.5rem;padding:.75rem;border:none;border-radius:8px;background:linear-gradient(135deg,#4f7df3,#6b5bdd);color:#fff;font-weight:600;cursor:pointer;font-size:1rem}.auth-footer{margin-top:1.5rem;color:#8b95a8;font-size:.9rem}.btn-link{display:inline-block;margin-top:1rem;font-weight:600}.btn-link-primary{margin-top:1.25rem;padding:.65rem 1.25rem;background:linear-gradient(135deg,#4f7df3,#6b5bdd);color:#fff!important;border-radius:8px;text-align:center;text-decoration:none}.btn-link-primary:hover{filter:brightness(1.06);color:#fff!important}.registration-closed{text-align:center;max-width:24rem;margin-left:auto;margin-right:auto}.registration-closed-icon{width:3.25rem;height:3.25rem;margin:0 auto 1.25rem;border-radius:50%;background:#8b95a81f;color:#8b95a8;font-size:1.35rem;line-height:3.25rem;font-weight:700;letter-spacing:.08em}.registration-closed h1{font-size:1.5rem;margin-bottom:.75rem}.registration-closed-text{color:#a8b0c0;font-size:.98rem;line-height:1.55;margin:0}.auth-footer-muted{color:#6b7588;font-size:.88rem}.dash-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid #232a38}.dash-header h1{margin-bottom:.25rem}.user-line{margin:0;font-size:.88rem;color:#8b95a8}.user-line .warn{color:#e0b054}.btn-ghost{padding:.45rem .85rem;border:1px solid #2a3142;border-radius:8px;background:transparent;color:#a8b0c0;cursor:pointer;font-size:.88rem}.btn-ghost:hover{border-color:#5b8def;color:#e8eaef}.add-section{margin-bottom:1.5rem}.add-form{flex-direction:column;align-items:stretch}.add-form>input[type=text]{width:100%}.datetime-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:520px){.datetime-row{grid-template-columns:1fr}}.datetime-row label{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;color:#8b95a8}.datetime-row input[type=datetime-local]{padding:.5rem .65rem;border:1px solid #2a3142;border-radius:8px;background:#181d28;color:inherit;font-size:.9rem}.add-form button[type=submit]{align-self:flex-start}.form{display:flex;gap:.5rem;margin-bottom:1rem}.form input[type=text]{flex:1;padding:.65rem .85rem;border:1px solid #2a3142;border-radius:8px;background:#181d28;color:inherit;font-size:1rem}.form input:focus{outline:none;border-color:#5b8def}.form button{padding:.65rem 1rem;border:none;border-radius:8px;background:linear-gradient(135deg,#4f7df3,#6b5bdd);color:#fff;font-weight:600;cursor:pointer}.form button:hover{filter:brightness(1.08)}.list{list-style:none;padding:0;margin:0}.todo-item{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem 0}.todo-main{flex:1}.todo-check{display:flex;align-items:flex-start;gap:.65rem;cursor:pointer}.todo-check .title{font-size:1.05rem}.meta{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;margin-top:.5rem;font-size:.82rem;color:#6b7588}.meta .sent{color:#6bcb8f;font-style:normal}.reminder-edit{margin-top:.65rem}.reminder-edit label{display:flex;flex-direction:column;gap:.3rem;font-size:.78rem;color:#6b7588}.reminder-edit input{max-width:16rem;padding:.4rem .55rem;border:1px solid #2a3142;border-radius:6px;background:#181d28;color:inherit}.item.completed .title{text-decoration:line-through;opacity:.55}.item input[type=checkbox]{width:1.1rem;height:1.1rem;margin-top:.2rem;accent-color:#5b8def}.todo-item .delete{align-self:flex-end}.delete{padding:.35rem .6rem;border:none;border-radius:6px;background:transparent;color:#8b95a8;cursor:pointer;font-size:.85rem}.delete:hover{color:#f07178}.empty,.error,.loading{color:#8b95a8;font-size:.95rem;padding:1rem 0}.error{color:#f07178}.error.banner{padding:.75rem 1rem;background:#f071781f;border-radius:8px;margin-bottom:1rem}
