:root{font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;color:#26323b;background:#fafbfc;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{border:0;cursor:pointer;background:transparent;color:inherit}button:hover{background:#e9edf1}input,textarea,select{border:1px solid #dce1e7;border-radius:7px;background:#fff;padding:9px;min-width:0;color:#26323b}input:focus,textarea:focus,select:focus{outline:2px solid #bacde2}#app{display:flex;min-height:100vh}aside{width:232px;background:#f0f2f5;border-right:1px solid #e1e4e9;display:flex;flex-direction:column;padding:21px 10px 12px;flex-shrink:0}.brand{padding:0 12px 26px;font-size:19px;font-weight:750;letter-spacing:-.4px}nav{display:flex;flex-direction:column;gap:2px}.navitem{display:flex;align-items:center;gap:9px;text-align:left;padding:10px 11px;border-radius:7px;width:100%;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navitem.active{background:#dde7f4;color:#245481;font-weight:650}.navitem.over{background:#a6c7eb}.navitem .count{margin-left:auto;font-size:11px;color:#82909d}.section-head{display:flex;justify-content:space-between;align-items:center;padding:27px 10px 10px;font-size:11px;color:#7e8995;font-weight:700}.section-head button{font-size:19px;border-radius:5px}.bottom{margin-top:auto;border-top:1px solid #dce1e7;padding-top:12px}.bottom button{width:100%;text-align:left;padding:9px;border-radius:7px;color:#677481;font-size:12px}main{flex:1;min-width:280px;max-width:100%;padding:39px 5% 40px}header{display:flex;align-items:center;gap:12px;margin-bottom:25px}h1{font-size:26px;font-weight:720;margin:0;letter-spacing:-.6px}#counter{color:#97a0aa}.add{display:flex;gap:8px;margin-bottom:23px}.add input{flex:1;padding:12px 13px}.add button,.primary{background:#2d6497;color:#fff;border-radius:7px;padding:9px 15px}.add button:hover,.primary:hover{background:#245078}.task{background:white;border:1px solid #e8ebee;border-radius:9px;margin:7px 0;display:flex;align-items:flex-start;gap:8px;padding:12px 12px;min-height:52px;cursor:pointer}.task:hover{border-color:#a6bed7}.task.selected{border-color:#4b86c1;background:#f8fbff}.task.dragging{opacity:.4}.task.over{border-top:3px solid #5a9fdf}.grip{color:#b5bec8;cursor:grab;user-select:none;padding:3px}.check{font-size:20px;line-height:20px;color:#a4aeb8;padding:0 3px}.task-text{flex:1;min-width:0}.task-title{font-weight:540;word-break:break-word}.metadata{font-size:11px;color:#8b96a2;margin-top:5px}.deadline{font-size:11px;white-space:nowrap;margin-left:7px}.red{color:#c84444!important}.orange{color:#ca791b!important}.muted{color:#8c98a3!important}.subtask{margin-left:35px}.parent .task-title{font-weight:700}.toolbtn{font-size:12px;color:#7390ac;padding:4px 6px;border-radius:5px}.empty{color:#a0a9b3;padding:35px 10px;text-align:center}.completed-heading{padding:15px 4px;color:#8894a1;cursor:pointer;font-size:12px}.done .task-title{text-decoration:line-through;color:#929ba5}#detail{width:332px;flex-shrink:0;background:#fff;border-left:1px solid #e5e9ef;padding:22px 19px;position:sticky;top:0;height:100vh;overflow-y:auto}.hidden{display:none!important}.detail-head{display:flex;justify-content:space-between;align-items:start;gap:8px;margin-bottom:22px}.detail-head strong{font-size:16px}.field{display:flex;flex-direction:column;gap:6px;margin:15px 0}.field label{font-size:12px;color:#788591}.field textarea{min-height:95px;resize:vertical}.field-row{display:flex;align-items:center;gap:9px;margin:16px 0}.field-row input{width:17px;height:17px}.buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.buttons button{border:1px solid #dee4ea;border-radius:6px;padding:8px 10px;font-size:12px}.danger-button{color:#c54a4a}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#26323b;color:white;padding:12px 17px;border-radius:8px;box-shadow:0 4px 18px #0002;display:none;z-index:20}#modal:not(.hidden){position:fixed;inset:0;background:#172b3a75;display:flex;align-items:center;justify-content:center;z-index:30}.modal-card{width:min(470px,92vw);background:white;border-radius:12px;padding:25px;max-height:85vh;overflow:auto}.modal-card h2{margin:0 0 14px}.modal-card button{border:1px solid #e0e5ea;padding:8px 12px;border-radius:6px;margin-right:8px}.modal-card button.primary{background:#2d6497}.modal-card select{width:100%;margin:10px 0}.modal-card p{color:#697784;font-size:12px;line-height:1.7}@media(max-width:850px){aside{width:175px}main{padding:25px 15px}#detail{width:290px}}@media(max-width:650px){aside{width:58px;padding:15px 4px}.brand{font-size:0}.brand:before{content:'◩';font-size:24px}.navitem{font-size:0;padding:12px}.navitem .symbol{font-size:19px}.navitem .count,.section-head,.bottom{display:none}#detail{position:fixed;right:0;box-shadow:-6px 0 30px #0002;width:min(360px,88vw);z-index:5}}

.authscreen{min-height:100vh;display:grid;place-items:center;background:#f7f8fa;padding:18px}.login-card{background:white;border:1px solid #e2e8f0;border-radius:16px;padding:28px;width:min(420px,100%);box-shadow:0 12px 30px #11182710}.login-card h1{margin:0 0 8px}.login-card label{display:block;margin:16px 0;font-size:13px;color:#334155}.login-card input{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font-size:16px}.login-card button{width:100%;padding:13px;background:#1f2937;color:white;border:0;border-radius:8px;cursor:pointer}.login-card .footnote{font-size:12px;color:#64748b}.login-card #autherror{color:#b91c1c;font-size:13px}.cloud-utility{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.cloud-utility button{margin:4px 4px 4px 0;padding:7px}
@media(max-width:720px){#app{display:flex;flex-direction:column!important;height:100dvh!important;overflow:hidden}#app aside{width:100%!important;min-width:0!important;flex:0 0 auto;max-height:145px;overflow-y:auto;border-right:0!important;border-bottom:1px solid #e5e7eb}#app aside .brand{display:none}#app aside nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:4px}#app aside .navitem{white-space:nowrap;min-width:max-content}#app aside .section-head{display:none}#app aside #projects{display:flex;flex-wrap:nowrap;overflow-x:auto}#app aside .bottom{display:none}#app main{min-width:0!important;width:100%!important;flex:1;overflow-y:auto}#app main header{padding:12px!important}#detail:not(.hidden){position:fixed;inset:0;z-index:80;background:white;overflow-y:auto;width:100%!important;max-width:none!important;box-sizing:border-box}#app .add{padding:10px!important}#app .task{min-width:0}#app .task-title{overflow-wrap:anywhere}.grip{touch-action:none}#mobile-actions{display:flex}}@media(min-width:721px){#mobile-actions{display:none}}#mobile-actions{padding:7px;gap:6px;align-items:center;justify-content:space-between}#mobile-actions button{padding:7px 11px;border:1px solid #e2e8f0;border-radius:7px;background:white}
