:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card{background:transparent;padding:2.5rem;border-radius:0;box-shadow:none;width:100vw;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box;color:#fff}.login-card h1{color:#fff;text-align:center;margin-bottom:.5rem}.login-card h2{text-align:center;color:#fff;margin-bottom:2rem;font-weight:400}.form-group label{display:block;margin-bottom:.5rem;color:#fff;font-weight:500}.form-group input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;transition:border-color .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.primary-button{width:100%;padding:.875rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .3s;margin-bottom:1rem}.primary-button:hover:not(:disabled){background:#5568d3}.primary-button:disabled{background:#ccc;cursor:not-allowed}.secondary-button{width:100%;padding:.75rem;background:transparent;color:#fff;border:none;font-size:.9rem;cursor:pointer;text-decoration:underline}.secondary-button:hover{color:#e0e0e0}.task-creation-flow{width:100%;margin:1rem auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.task-creation-flow h2{text-align:center;color:#333;margin-bottom:2rem;font-size:1.8rem}.task-form{max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500;font-size:.95rem}.form-group input,.form-group select{width:100%;padding:.75rem;font-size:1rem;border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;transition:border-color .3s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.subtasks-section{margin-bottom:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.subtasks-section h3{margin-bottom:1rem;color:#333;font-size:1.2rem}.subtask-input{display:flex;gap:.5rem;margin-bottom:1rem;align-items:center}.subtask-input input{flex:2;margin:0;padding:.5rem}.subtask-input select{flex:1;margin:0;padding:.5rem}.remove-btn{width:40px;height:40px;padding:0;background:#dc3545;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center}.add-subtask-btn{background:#28a745;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .3s}.add-subtask-btn:hover{background:#218838}.submit-btn{width:100%;padding:1rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:1.1rem;cursor:pointer;transition:background .3s}.submit-btn:hover:not(:disabled){background:#5568d3}.submit-btn:disabled{background:#ccc;cursor:not-allowed}.today-view{width:100%;margin:1rem auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.today-view.loading{text-align:center;color:#667eea;font-size:1.1rem}.today-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.today-view-header h2{color:#333;font-size:1.75rem}.total-time{display:flex;flex-direction:column;align-items:flex-end;background:#f0f4ff;padding:.75rem 1rem;border-radius:6px}.time-label{font-size:.85rem;color:#666;margin-bottom:.25rem}.time-value{font-size:1.25rem;font-weight:600;color:#667eea}.no-tasks{text-align:center;padding:3rem 1rem;color:#666}.no-tasks p{font-size:1.25rem;margin-bottom:.5rem}.no-tasks-subtitle{font-size:1rem;color:#999}.tasks-list{display:flex;flex-direction:column;gap:1rem}.task-group{border:1px solid #e0e0e0;border-radius:8px;padding:1rem;transition:box-shadow .3s}.task-group:hover{box-shadow:0 2px 8px #0000001a}.subtasks-container{margin-top:1rem;margin-left:2rem;padding-left:1rem;border-left:3px solid #667eea}.task-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#fafafa;border-radius:6px;transition:all .3s}.task-item:hover{background:#f0f0f0}.task-item.completed{opacity:.6;background:#e8f5e9}.task-item.subtask{background:#f8f9ff}.task-checkbox{width:24px;height:24px;cursor:pointer;margin-top:.25rem;flex-shrink:0}.task-checkbox:disabled{cursor:not-allowed}.task-content{flex:1}.task-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.subtask-indicator{color:#667eea;font-weight:700;font-size:1.25rem}.task-name{font-size:1.1rem;color:#333;font-weight:500;margin:0;flex:1}.task-item.completed .task-name{text-decoration:line-through;color:#666}.delete-task-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:.25rem;border-radius:4px;transition:background .3s}.delete-task-btn:hover{background:#ffe6e6}.delete-task-btn:disabled{cursor:not-allowed;opacity:.5}.task-meta{display:flex;gap:1rem;font-size:.9rem;color:#666}.task-time{display:flex;align-items:center;gap:.25rem}.task-actual{color:#28a745;font-weight:500}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.completion-modal{background:#fff;padding:2rem;border-radius:12px;max-width:400px;width:90%;box-shadow:0 10px 40px #0000004d}.completion-modal h3{margin-bottom:1rem;color:#333;margin-top:0}.estimated-reminder{margin-bottom:1.5rem;padding:.75rem;background:#f0f4ff;border-radius:6px;color:#667eea;font-weight:500}.completion-modal select{width:100%;padding:.75rem;margin-bottom:1.5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:1rem;box-sizing:border-box}.modal-buttons{display:flex;gap:.5rem}.modal-buttons button{flex:1;padding:.75rem;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:all .3s}.complete-btn{background:#667eea;color:#fff}.complete-btn:hover:not(:disabled){background:#5568d3}.complete-btn:disabled{background:#ccc;cursor:not-allowed}.cancel-btn{background:#f0f0f0;color:#333}.cancel-btn:hover:not(:disabled){background:#e0e0e0}.add-subtask-btn{margin-top:.5rem;padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .3s}.add-subtask-btn:hover{background:#5568d3}.add-subtask-form{margin-top:.5rem;display:flex;gap:.5rem;align-items:center}.subtask-name-input{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.subtask-time-select{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;min-width:100px}.add-subtask-submit-btn{padding:.5rem 1rem;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background .3s}.add-subtask-submit-btn:hover:not(:disabled){background:#218838}.add-subtask-submit-btn:disabled{background:#ccc;cursor:not-allowed}.estimation-feedback{width:100%;margin:1rem auto;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a}.estimation-feedback.loading,.estimation-feedback.empty{text-align:center;color:#666}.estimation-feedback h3{color:#333;margin-bottom:1.5rem;font-size:1.5rem;margin-top:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{padding:1.5rem;background:#f8f9fa;border-radius:8px;text-align:center;border:2px solid transparent;transition:all .3s}.stat-card.accurate{background:#e8f5e9;border-color:#28a745}.stat-card.inaccurate{background:#fff3cd;border-color:#ffc107}.stat-value{font-size:2rem;font-weight:700;color:#667eea;margin-bottom:.5rem}.stat-card.accurate .stat-value{color:#28a745}.stat-card.inaccurate .stat-value{font-size:2.5rem}.stat-label{font-size:.9rem;color:#666}.accuracy-tip{padding:1rem;background:#f0f4ff;border-left:4px solid #667eea;border-radius:4px}.accuracy-tip p{margin:0;color:#333}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f7fa}.App{width:100vw;min-height:100vh}.App-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a;width:100%;box-sizing:border-box}.App-header h1{font-size:1.75rem;margin:0}.user-info{display:flex;align-items:center;gap:1rem}.logout-btn{padding:.5rem 1rem;background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;border-radius:6px;cursor:pointer;transition:all .3s}.logout-btn:hover{background:#ffffff4d}.App-main{width:100%;padding:0}.loading{min-height:100vh;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#667eea}
