html,body,#root{min-height:100vh}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #21262d;--border-color: #30363d;--text-primary: #e6edf3;--text-secondary: #8b949e;--accent-work: #f97316;--accent-short-break: #22c55e;--accent-long-break: #3b82f6;--accent-hover: #58a6ff;--danger: #f85149}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}#root{max-width:600px;margin:0 auto;padding:1rem}.app{min-height:100vh;display:flex;flex-direction:column}.license-banner{background:linear-gradient(135deg,#f97316,#ea580c);color:#fff;padding:1rem;text-align:center;font-weight:600;border-radius:8px;margin-bottom:1rem}.break-reminder{position:fixed;top:1rem;right:1rem;background:linear-gradient(135deg,var(--accent-short-break),#16a34a);color:#fff;padding:1rem 1.5rem;border-radius:12px;font-weight:600;box-shadow:0 10px 40px #22c55e66;animation:slideIn .3s ease-out;z-index:100}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.header{text-align:center;padding:2rem 0}.header h1{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,var(--accent-work),#fb923c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.subtitle{color:var(--text-secondary);font-size:1rem}.main{flex:1;display:flex;flex-direction:column;gap:2rem}.timer-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:2rem;text-align:center}.mode-tabs{display:flex;gap:.5rem;background:var(--bg-tertiary);padding:.25rem;border-radius:10px;margin-bottom:1.5rem}.mode-tab{flex:1;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s ease}.mode-tab:hover{color:var(--text-primary)}.mode-tab.active{background:var(--bg-secondary);color:var(--text-primary);box-shadow:0 2px 8px #0003}.timer-display{font-size:5rem;font-weight:700;font-variant-numeric:tabular-nums;margin:1.5rem 0;transition:color .3s ease}.timer-display.work{color:var(--accent-work);text-shadow:0 0 40px rgba(249,115,22,.3)}.timer-display.shortBreak{color:var(--accent-short-break);text-shadow:0 0 40px rgba(34,197,94,.3)}.timer-display.longBreak{color:var(--accent-long-break);text-shadow:0 0 40px rgba(59,130,246,.3)}.timer-controls{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.btn-primary{background:linear-gradient(135deg,var(--accent-work),#ea580c);color:#fff;border:none;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #f973164d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f9731666}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);padding:1rem 1.5rem;font-size:1rem;font-weight:500;border-radius:12px;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--border-color);color:var(--text-primary)}.session-count{color:var(--text-secondary);font-size:.875rem}.tasks-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem}.tasks-section h2{font-size:1.25rem;margin-bottom:1rem;color:var(--text-primary)}.add-task{display:flex;gap:.75rem;margin-bottom:1.5rem}.add-task input{flex:1;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);padding:.875rem 1rem;font-size:1rem;border-radius:10px;outline:none;transition:border-color .2s ease}.add-task input::placeholder{color:var(--text-secondary)}.add-task input:focus{border-color:var(--accent-hover)}.btn-add{background:linear-gradient(135deg,var(--accent-work),#ea580c);color:#fff;border:none;width:48px;height:48px;font-size:1.5rem;font-weight:600;border-radius:10px;cursor:pointer;transition:all .2s ease}.btn-add:hover{transform:scale(1.05);box-shadow:0 4px 15px #f973164d}.task-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.task-item{display:flex;align-items:center;gap:.75rem;background:var(--bg-tertiary);padding:.875rem 1rem;border-radius:10px;border:1px solid transparent;transition:all .2s ease}.task-item:hover{border-color:var(--border-color)}.task-item.completed .task-text{text-decoration:line-through;color:var(--text-secondary)}.task-checkbox{position:relative;display:flex;align-items:center;cursor:pointer}.task-checkbox input{position:absolute;opacity:0;width:0;height:0}.checkmark{width:22px;height:22px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.task-checkbox input:checked+.checkmark{background:var(--accent-short-break);border-color:var(--accent-short-break)}.task-checkbox input:checked+.checkmark:after{content:"✓";color:#fff;font-size:14px;font-weight:700}.task-text{flex:1;font-size:.9375rem}.task-actions{display:flex;align-items:center;gap:.5rem}.pomodoro-count{font-size:.875rem;color:var(--text-secondary);min-width:40px;text-align:center}.btn-pomodoro{background:var(--bg-secondary);color:var(--accent-work);border:1px solid var(--border-color);width:28px;height:28px;font-size:1rem;font-weight:600;border-radius:6px;cursor:pointer;transition:all .2s ease}.btn-pomodoro:hover{background:var(--accent-work);color:#fff;border-color:var(--accent-work)}.btn-delete{background:transparent;color:var(--text-secondary);border:none;width:28px;height:28px;font-size:1.25rem;cursor:pointer;border-radius:6px;transition:all .2s ease}.btn-delete:hover{background:var(--danger);color:#fff}.empty-state{text-align:center;color:var(--text-secondary);padding:2rem;font-size:.9375rem}.footer{text-align:center;padding:2rem 0;color:var(--text-secondary);font-size:.875rem}@media(max-width:480px){.header h1{font-size:2rem}.timer-display{font-size:4rem}.mode-tab{padding:.5rem .75rem;font-size:.8125rem}.btn-primary{padding:.875rem 2rem}.task-item{flex-wrap:wrap}.task-text{order:1;width:100%;margin-top:.5rem}}
