*{box-sizing:border-box}body{color:#e2e8f0;background:#0f172a;margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:100;background:#0f172af2;border-bottom:1px solid #334155;width:100%;padding:1rem 2rem;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;display:flex}.app-header h1{background:linear-gradient(90deg,#e94560,#ff6b6b);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0;font-size:1.5rem}.header-actions{align-items:center;gap:1rem;display:flex}.header-actions button{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:6px;padding:.5rem 1rem;font-weight:600}.header-actions button:hover{background:#ff6b6b}.app-main{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:1.5rem}.error-banner{color:#fff;text-align:center;background:#ef4444;padding:.75rem 1.5rem}.login-page{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#0f3460 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:#ffffff0d;border:1px solid #e945604d;border-radius:12px;flex-direction:column;gap:1rem;width:100%;max-width:360px;padding:2rem;display:flex}.login-card h2{text-align:center;color:#fff;margin:0 0 .5rem}.login-card input{color:#fff;background:#0003;border:1px solid #334155;border-radius:6px;padding:.75rem 1rem;font-size:1rem}.login-card input:focus{border-color:#e94560;outline:none}.login-card button[type=submit]{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:6px;padding:.75rem;font-weight:600}.login-card button[type=submit]:hover{background:#ff6b6b}.login-error{color:#f87171;text-align:center;margin:0}.login-card .link{color:#e94560;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.task-board{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(1rem,3vw,2rem);display:grid}.task-column{background:#ffffff08;border:1px solid #334155;border-radius:8px;min-height:200px;padding:1rem}.column-header{border-bottom:1px solid #334155;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.task-column h3{text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin:0;font-size:.95rem}.quick-add{gap:.5rem;margin-bottom:1rem;display:flex}.quick-date{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:6px;width:8rem;padding:.5rem;font-size:.85rem}.quick-input{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.9rem}.quick-input:focus,.quick-date:focus{border-color:#e94560;outline:none}.quick-add-btn{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:6px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1.25rem;display:flex}.quick-add-btn:hover{background:#ff6b6b}.task-list{flex-direction:column;gap:.75rem;display:flex}.daily-group{flex-direction:column;gap:.5rem;display:flex}.daily-date{color:#e94560;text-transform:uppercase;letter-spacing:.05em;padding-top:.5rem;font-size:.8rem;font-weight:600}.daily-group:first-child .daily-date{padding-top:0}.task-card{background:#ffffff0d;border:1px solid #334155;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;display:flex}.task-card.done{opacity:.6;border-color:#475569}.task-card.done .task-title{color:#94a3b8;text-decoration:line-through}.task-check-label{cursor:pointer;flex:1;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.task-check-label input[type=checkbox]{accent-color:#e94560;flex-shrink:0;width:1.1rem;height:1.1rem;margin-top:.15rem}.task-title{color:#fff;word-break:break-word;font-size:.95rem}.task-description{color:#cbd5e1;width:100%;margin-left:1.85rem;font-size:.85rem}.task-menu{position:relative}.task-menu-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.1rem .4rem;font-size:1.1rem}.task-menu-btn:hover{color:#e2e8f0;background:#ffffff14}.task-menu-dropdown{z-index:10;background:#1e293b;border:1px solid #475569;border-radius:6px;flex-direction:column;min-width:7rem;display:flex;position:absolute;top:100%;right:0;overflow:hidden}.task-menu-dropdown button{color:#e2e8f0;text-align:left;cursor:pointer;background:0 0;border:none;padding:.5rem .75rem;font-size:.85rem}.task-menu-dropdown button:hover{background:#ffffff14}.task-menu-dropdown button.danger:hover{color:#f87171;background:#ef444433}@media (width<=640px){.task-board{grid-template-columns:1fr}.quick-add{flex-wrap:wrap}.quick-date{width:100%}.quick-input{flex:1}}.modal-overlay{z-index:1000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:#1e293b;border:1px solid #475569;border-radius:8px;width:100%;max-width:28rem;padding:1.5rem;position:relative}.modal-close{color:#e94560;cursor:pointer;background:0 0;border:none;font-size:1.4rem;line-height:1;position:absolute;top:.75rem;right:.75rem}.modal h3{color:#e2e8f0;margin:0 0 1.25rem;font-size:1.1rem}.modal form{flex-direction:column;gap:.75rem;display:flex}.modal input,.modal textarea,.modal select{color:#e2e8f0;background:#0f172a;border:1px solid #475569;border-radius:6px;width:100%;padding:.6rem .75rem;font-family:inherit;font-size:.9rem}.modal input:focus,.modal textarea:focus,.modal select:focus{border-color:#e94560;outline:none}.form-row{gap:.75rem;display:flex}.form-row>*{flex:1}.form-actions{justify-content:flex-end;margin-top:.5rem;display:flex}.form-actions button{color:#fff;cursor:pointer;background:#e94560;border:none;border-radius:6px;padding:.6rem 1.25rem;font-weight:600}.form-actions button:hover{background:#ff6b6b}
