:root{--font-display: "Sora", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--bg-root: #f5f2ee;--bg-surface: #ffffff;--bg-subtle: #faf8f5;--bg-hover: #f0ece6;--bg-active: #ebe6de;--text-primary: #2d2a26;--text-secondary: #6b6560;--text-tertiary: #9e9892;--text-inverse: #ffffff;--border: #e6e1da;--border-light: #eeebe6;--border-focus: #5c7c6b;--accent: #5c7c6b;--accent-hover: #4a6a59;--accent-light: rgba(92, 124, 107, .08);--accent-medium: rgba(92, 124, 107, .15);--success: #3d8c5c;--success-light: rgba(61, 140, 92, .08);--success-border: rgba(61, 140, 92, .25);--warning: #b8922a;--warning-light: rgba(184, 146, 42, .08);--warning-border: rgba(184, 146, 42, .25);--danger: #c0544e;--danger-hover: #a8433d;--danger-light: rgba(192, 84, 78, .06);--danger-border: rgba(192, 84, 78, .2);--shadow-xs: 0 1px 2px rgba(45, 42, 38, .04);--shadow-sm: 0 1px 3px rgba(45, 42, 38, .06), 0 1px 2px rgba(45, 42, 38, .04);--shadow-md: 0 4px 12px rgba(45, 42, 38, .07), 0 1px 3px rgba(45, 42, 38, .04);--shadow-lg: 0 8px 24px rgba(45, 42, 38, .09), 0 2px 6px rgba(45, 42, 38, .04);--shadow-xl: 0 16px 48px rgba(45, 42, 38, .12), 0 4px 12px rgba(45, 42, 38, .06);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .15s;--duration-normal: .25s;font-family:var(--font-body);line-height:1.6;font-weight:400;color:var(--text-primary);background-color:var(--bg-root);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}[data-theme=dark]{--bg-root: #1a1a1e;--bg-surface: #232328;--bg-subtle: #1e1e22;--bg-hover: #2c2c32;--bg-active: #35353c;--text-primary: #e8e6e3;--text-secondary: #a09a94;--text-tertiary: #706a64;--text-inverse: #1a1a1e;--border: #3a3a40;--border-light: #2e2e34;--border-focus: #7a9e8b;--accent: #7a9e8b;--accent-hover: #8fb09e;--accent-light: rgba(122, 158, 139, .1);--accent-medium: rgba(122, 158, 139, .18);--success: #5aad76;--success-light: rgba(90, 173, 118, .1);--success-border: rgba(90, 173, 118, .3);--warning: #d4aa3c;--warning-light: rgba(212, 170, 60, .1);--warning-border: rgba(212, 170, 60, .3);--danger: #d4706a;--danger-hover: #c05a54;--danger-light: rgba(212, 112, 106, .08);--danger-border: rgba(212, 112, 106, .25);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .2), 0 1px 2px rgba(0, 0, 0, .15);--shadow-md: 0 4px 12px rgba(0, 0, 0, .25), 0 1px 3px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .3), 0 2px 6px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .35), 0 4px 12px rgba(0, 0, 0, .2);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}a{font-weight:500;color:var(--accent);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--accent-hover)}body{margin:0;min-width:320px;min-height:100vh}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.25}h1{font-size:2.5rem}button{border-radius:var(--radius-sm);border:1px solid var(--border);padding:.55em 1.15em;font-size:.9rem;font-weight:500;font-family:var(--font-body);background-color:var(--bg-surface);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}button:hover{border-color:var(--accent);background-color:var(--bg-hover)}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input,textarea,select{font-family:var(--font-body)}#root{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1;max-width:1280px;width:100%;margin:0 auto;padding:2.5rem 2rem}.page-center{display:flex;align-items:center;justify-content:center;min-height:80vh;color:var(--text-tertiary);font-size:.95rem}.app-header{display:flex;align-items:center;padding:.8rem 2rem;background:var(--bg-surface);border-bottom:1px solid var(--border-light);gap:1rem;box-shadow:var(--shadow-xs);position:sticky;top:0;z-index:50}.header-logo{font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:var(--text-primary);text-decoration:none;letter-spacing:-.02em}.header-logo:hover{color:var(--accent)}.header-nav{flex:1;display:flex;gap:1rem}.header-nav a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;padding:.25rem .5rem;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-out)}.header-nav a:hover{color:var(--text-primary);background:var(--bg-hover)}.header-right{display:flex;align-items:center;gap:.75rem}.user-info{display:flex;align-items:center;gap:.5rem}.user-avatar{width:30px;height:30px;border-radius:var(--radius-full);border:2px solid var(--border-light)}.user-avatar-placeholder{width:30px;height:30px;border-radius:var(--radius-full);background:var(--accent);color:var(--text-inverse);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem}.user-name{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.theme-toggle:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}.logout-btn{font-size:.8rem;padding:.3em .75em;background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm)}.logout-btn:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-light)}.login-card{text-align:center;padding:3.5rem 3rem;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:360px}.login-card h1{margin:0 0 .25rem;font-size:2.25rem;color:var(--text-primary)}.login-card p{margin:0 0 2.5rem;color:var(--text-tertiary);font-size:1rem}.google-btn{display:inline-flex;align-items:center;gap:.75rem;padding:.8rem 1.75rem;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.95rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-sm)}.google-btn:hover{box-shadow:var(--shadow-md);border-color:var(--text-tertiary);color:var(--text-primary)}.error-message{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger-border);padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.9rem;font-weight:500}.settings-page{max-width:800px}.settings-section{margin-top:2rem}.settings-description{color:var(--text-tertiary);font-size:.9rem;margin-bottom:1.5rem}.add-user-form{display:flex;gap:.5rem;margin-bottom:1rem}.add-user-form input{padding:.55rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.9rem;flex:1;transition:border-color var(--duration-fast) var(--ease-out)}.add-user-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.add-user-form button{padding:.55rem 1rem;font-size:.9rem;white-space:nowrap}.users-table{width:100%;border-collapse:collapse;margin-top:1rem}.users-table th,.users-table td{text-align:left;padding:.85rem .75rem;border-bottom:1px solid var(--border-light)}.users-table th{font-family:var(--font-body);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.user-cell{display:flex;align-items:center;gap:.5rem}.user-avatar-small{width:24px;height:24px;border-radius:var(--radius-full)}.user-avatar-small-placeholder{width:24px;height:24px;border-radius:var(--radius-full);background:var(--accent);color:var(--text-inverse);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.65rem}.remove-btn{font-size:.8rem;padding:.25em .6em;background:transparent;border:1px solid var(--danger-border);color:var(--danger);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-out)}.remove-btn:hover{background:var(--danger);color:var(--text-inverse);border-color:var(--danger)}.btn-primary{padding:.55rem 1.15rem;background:var(--accent);color:var(--text-inverse);border:none;border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;font-weight:500;transition:all var(--duration-fast) var(--ease-out);box-shadow:var(--shadow-xs)}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-sm)}.btn-secondary{padding:.55rem 1.15rem;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.btn-danger{padding:.55rem 1.15rem;background:var(--danger);color:var(--text-inverse);border:none;border-radius:var(--radius-sm);font-size:.9rem;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.btn-danger:hover{background:var(--danger-hover)}.btn-icon{font-size:.8rem;padding:.3em .65em;background:var(--bg-surface);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-out)}.btn-icon:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.btn-icon-danger{border-color:var(--danger-border);color:var(--danger)}.btn-icon-danger:hover{background:var(--danger);color:var(--text-inverse);border-color:var(--danger)}.action-menu{position:relative;display:inline-flex}.action-menu-trigger{font-size:1rem;padding:.2em .45em;line-height:1;letter-spacing:.12em}.action-menu-dropdown{position:absolute;top:calc(100% + 4px);min-width:160px;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:60;padding:4px 0;animation:menuFadeIn var(--duration-fast) var(--ease-out)}.action-menu-right{right:0}.action-menu-left{left:0}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.action-menu-item{display:block;width:100%;padding:.5rem .85rem;background:none;border:none;text-align:left;font-size:.85rem;font-weight:500;font-family:var(--font-body);color:var(--text-primary);cursor:pointer;border-radius:0;transition:background var(--duration-fast) var(--ease-out)}.action-menu-item:hover{background:var(--bg-hover)}.action-menu-item:disabled{opacity:.4;cursor:default}.action-menu-item-danger{color:var(--danger)}.action-menu-item-danger:hover{background:var(--danger-light, rgba(192, 84, 78, .08))}.action-menu-separator{height:1px;background:var(--border-light);margin:4px 0}.modal-overlay{position:fixed;inset:0;background:#2d2a2673;display:flex;align-items:center;justify-content:center;z-index:100;animation:fadeIn var(--duration-fast) var(--ease-out)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:2rem;min-width:420px;max-width:500px;box-shadow:var(--shadow-xl);animation:slideUp var(--duration-normal) var(--ease-out)}.modal h3{margin:0 0 1.25rem;font-size:1.25rem}.modal p{margin:0 0 1.5rem;color:var(--text-secondary)}.sprint-form label{display:block;margin-bottom:1.15rem;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.sprint-form input{display:block;width:100%;margin-top:.35rem;padding:.6rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.9rem;box-sizing:border-box;transition:all var(--duration-fast) var(--ease-out)}.sprint-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.sprint-form input::placeholder{color:var(--text-tertiary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-light)}.home-page h2{margin-top:0}.sprint-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.sprint-list-header h2{margin:0;font-size:1.75rem}.sprints-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border-light)}.sprints-table th,.sprints-table td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--border-light)}.sprints-table th{font-family:var(--font-body);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);background:var(--bg-subtle)}.sprints-table tbody tr{transition:background var(--duration-fast) var(--ease-out)}.sprints-table tbody tr:hover{background:var(--bg-hover)}.sprints-table tbody tr:last-child td{border-bottom:none}.sprint-link{color:var(--accent);text-decoration:none;font-weight:600}.sprint-link:hover{color:var(--accent-hover);text-decoration:underline}.sprint-row-current{background:var(--accent-light)}.sprint-current-badge{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-full);background:var(--accent-medium);color:var(--accent);vertical-align:middle}.sprint-utilization{font-weight:600;font-size:.9rem}.sprint-utilization.utilization-green{color:var(--success)}.sprint-utilization.utilization-yellow{color:var(--warning)}.sprint-utilization.utilization-red{color:var(--danger)}.sprint-utilization-na{color:var(--text-tertiary)}.actions-cell{display:flex;gap:.5rem;justify-content:flex-end}.empty-state{color:var(--text-tertiary);text-align:center;padding:4rem 0;font-size:.95rem}.sprint-detail-header{margin-bottom:2rem}.sprint-detail-header h2{margin:.75rem 0 .25rem;font-size:1.85rem;letter-spacing:-.02em}.sprint-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.sprint-title-row h2{margin:.75rem 0 .25rem}.sprint-header-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.sprint-meta{color:var(--text-tertiary);font-size:.9rem}.back-link{color:var(--text-tertiary);text-decoration:none;font-size:.85rem;font-weight:500;transition:color var(--duration-fast) var(--ease-out)}.back-link:hover{color:var(--accent)}.sprint-header-top{display:flex;align-items:center;justify-content:space-between}.connection-status{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;padding:.2rem .65rem;border-radius:var(--radius-full);letter-spacing:.02em}.connection-dot{width:7px;height:7px;border-radius:var(--radius-full);display:inline-block}.connection-status.connected{color:var(--success);background:var(--success-light)}.connection-status.connected .connection-dot{background:var(--success);box-shadow:0 0 6px #3d8c5c66}.connection-status.disconnected{color:var(--danger);background:var(--danger-light)}.connection-status.disconnected .connection-dot{background:var(--danger);box-shadow:0 0 6px #c0544e66}.utilization-bar{margin-top:1rem;padding:1.25rem 1.5rem;border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.utilization-stats{display:flex;gap:2.5rem;margin-bottom:1rem}.utilization-stat{display:flex;flex-direction:column;gap:.15rem}.utilization-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.utilization-value{font-family:var(--font-display);font-size:1.2rem;font-weight:600}.utilization-track{width:100%;height:6px;border-radius:var(--radius-full);background:var(--bg-hover);overflow:hidden}.utilization-fill{height:100%;border-radius:var(--radius-full);transition:width .6s var(--ease-out);min-width:2px}.utilization-green .utilization-value{color:var(--success)}.utilization-green .utilization-fill{background:var(--success)}.utilization-green{border-color:var(--success-border)}.utilization-yellow .utilization-value{color:var(--warning)}.utilization-yellow .utilization-fill{background:var(--warning)}.utilization-yellow{border-color:var(--warning-border)}.utilization-red .utilization-value{color:var(--danger)}.utilization-red .utilization-fill{background:var(--danger)}.utilization-red{border-color:var(--danger-border)}.buckets-list{display:flex;flex-direction:column;gap:.75rem}.bucket-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:1rem 1.25rem;box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-out)}.bucket-card:hover{box-shadow:var(--shadow-md)}.bucket-over-target{border-color:var(--danger-border);background:var(--danger-light)}.bucket-drag-handle{cursor:grab;opacity:0;font-size:1.1rem;-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1;align-self:center;color:var(--text-tertiary);transition:opacity var(--duration-fast) var(--ease-out)}.bucket-card:hover .bucket-drag-handle{opacity:.5}.bucket-drag-handle:active{cursor:grabbing}.bucket-dragging{opacity:.4}.bucket-drop-indicator{height:3px;background:var(--accent);border-radius:var(--radius-full);margin:-.5rem 0;position:relative;z-index:1}.bucket-header{display:flex;align-items:center;gap:.75rem}.bucket-title-area{flex:1;min-width:0}.bucket-name{margin:0;font-size:1.05rem;font-weight:600;font-family:var(--font-display);color:var(--text-primary)}.bucket-description{margin:.15rem 0 0;font-size:.8rem;color:var(--text-tertiary);line-height:1.3}.bucket-hours-area{display:flex;align-items:center;gap:.4rem;white-space:nowrap;font-size:1rem;font-weight:700;color:var(--text-primary);font-family:var(--font-display)}.bucket-hours-over{color:var(--danger)}.bucket-target{font-weight:400;color:var(--text-tertiary)}.bucket-warning{font-size:1rem}.bucket-actions{display:flex;gap:.35rem;flex-shrink:0;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.bucket-card:hover .bucket-actions{opacity:1}.bucket-breakdown{display:inline-flex;gap:.5rem;margin-left:.5rem;font-size:.72rem;color:var(--text-tertiary);font-weight:400}.bucket-breakdown .bucket-detail{opacity:.8}.bucket-breakdown .bucket-detail+.bucket-detail:before{content:"·";margin-right:.5rem}.bucket-tasks-area{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-light)}.bucket-tasks-empty{margin:0;font-size:.8rem;color:var(--text-tertiary);text-align:center;padding:.25rem 0;font-style:italic}.task-list{display:flex;flex-direction:column;gap:.35rem}.task-card{display:flex;align-items:flex-start;justify-content:space-between;padding:.5rem .65rem;border-radius:var(--radius-sm);background:var(--bg-subtle);gap:.5rem;transition:all var(--duration-fast) var(--ease-out)}.task-card:hover{background:var(--bg-hover)}.task-info{display:flex;align-items:flex-start;gap:.5rem;min-width:0;flex:1}.task-name{font-size:1rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.task-creator{font-size:.75rem;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.task-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0;margin-top:.05rem}.task-hours{font-size:.85rem;font-weight:500;color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums;font-family:var(--font-display);letter-spacing:-.01em}.task-actions{display:flex;gap:.25rem;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.task-card:hover .task-actions{opacity:1}.drag-handle{cursor:grab;opacity:0;font-size:.85rem;-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1;color:var(--text-tertiary);transition:opacity var(--duration-fast) var(--ease-out);margin-top:.15rem}.task-card:hover .drag-handle{opacity:.5}.drag-handle:active{cursor:grabbing}.task-dragging{opacity:.4}.bucket-drop-target{border-color:var(--accent)!important;background:var(--accent-light)!important;box-shadow:inset 0 0 0 1px #5c7c6b33}.btn-add-task{margin-top:.5rem;font-size:.8rem;padding:.35rem .5rem;background:transparent;border:1px dashed var(--border);color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);width:100%;transition:all var(--duration-fast) var(--ease-out)}.btn-add-task:hover{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.sprint-form textarea{display:block;width:100%;margin-top:.35rem;padding:.6rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.9rem;box-sizing:border-box;font-family:var(--font-body);resize:vertical;transition:all var(--duration-fast) var(--ease-out)}.sprint-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.sprint-form textarea::placeholder{color:var(--text-tertiary)}.warning-text{color:var(--danger);font-size:.9rem}.task-name-btn{background:none;border:none;color:var(--accent);cursor:pointer;padding:0;font:inherit;font-size:.9rem;font-weight:500;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--duration-fast) var(--ease-out)}.task-name-btn:hover{color:var(--accent-hover);text-decoration:underline}.task-name-group{min-width:0;flex:1}.task-description-inline{margin:.2rem 0 0;font-size:.8rem;color:var(--text-secondary);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.modal-wide{min-width:520px;max-width:620px;max-height:80vh;overflow-y:auto}.task-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.task-detail-header h3{margin:0;flex:1;font-size:1.2rem}.task-detail-meta{display:flex;gap:1rem;font-size:.85rem;color:var(--text-tertiary);margin-top:.25rem;margin-bottom:.75rem}.task-detail-description{margin:0 0 1rem;font-size:.9rem;color:var(--text-secondary);white-space:pre-wrap;line-height:1.65}.comments-section{border-top:1px solid var(--border-light);margin-top:1.25rem;padding-top:1.25rem}.comments-section h4{margin:0 0 .75rem;font-size:.95rem;font-family:var(--font-display)}.comments-loading,.comments-empty{font-size:.85rem;color:var(--text-tertiary);margin:.5rem 0;font-style:italic}.comments-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.comment-card{padding:.75rem .85rem;background:var(--bg-subtle);border-radius:var(--radius-md);border:1px solid var(--border-light)}.comment-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.comment-author{font-size:.85rem;font-weight:600;color:var(--text-primary)}.comment-time{font-size:.75rem;color:var(--text-tertiary);flex:1}.comment-actions{display:flex;gap:.25rem;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.comment-card:hover .comment-actions{opacity:1}.comment-body{margin:0;font-size:.9rem;white-space:pre-wrap;word-break:break-word;color:var(--text-secondary);line-height:1.6}.comment-edit{margin-top:.25rem}.comment-edit textarea{display:block;width:100%;padding:.5rem .7rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.85rem;font-family:var(--font-body);box-sizing:border-box;resize:vertical}.comment-edit textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.comment-edit-actions{display:flex;gap:.4rem;justify-content:flex-end;margin-top:.4rem}.comment-form{display:flex;gap:.5rem;align-items:flex-end}.comment-form textarea{flex:1;padding:.5rem .7rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.85rem;font-family:var(--font-body);box-sizing:border-box;resize:vertical}.comment-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.comment-form .btn-primary{flex-shrink:0;align-self:flex-end}.comment-form .btn-primary:disabled{opacity:.4;cursor:default}.sprint-picker-list{display:flex;flex-direction:column;gap:.3rem;max-height:300px;overflow-y:auto;margin:.75rem 0}.sprint-picker-item{display:flex;justify-content:space-between;align-items:center;padding:.7rem .85rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-surface);cursor:pointer;text-align:left;color:inherit;font:inherit;transition:all var(--duration-fast) var(--ease-out)}.sprint-picker-item:hover{background:var(--accent-light);border-color:var(--accent)}.sprint-picker-name{font-weight:600}.sprint-picker-dates{font-size:.8rem;color:var(--text-tertiary)}.sprint-picker-current{opacity:.35;cursor:default;pointer-events:none}.copy-select-all{margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light)}.copy-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem}.copy-checkbox-label input[type=checkbox],.copy-radio-label input[type=radio]{margin:0;cursor:pointer;accent-color:var(--accent)}.copy-bucket-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto;margin-bottom:1rem}.copy-bucket-item{border:1px solid var(--border-light);border-radius:var(--radius-md);padding:.7rem .85rem;background:var(--bg-surface)}.copy-bucket-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.copy-bucket-name{font-weight:600}.copy-bucket-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.copy-task-count{font-size:.8rem;color:var(--text-tertiary)}.copy-merge-warning{margin-top:.5rem;padding:.5rem .75rem;background:var(--danger-light);border-radius:var(--radius-sm);border:1px solid var(--danger-border)}.copy-merge-warning .warning-text{font-size:.8rem;display:block;margin-bottom:.4rem}.copy-merge-options{display:flex;flex-direction:column;gap:.3rem}.copy-radio-label{display:flex;align-items:center;gap:.4rem;font-size:.85rem;cursor:pointer}.copy-task-list{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:.25rem}.copy-select-all-tasks{opacity:.7;margin-bottom:.15rem}.copy-task-item{padding-left:.5rem}.copy-task-hours{margin-left:auto;font-size:.8rem;color:var(--text-tertiary);flex-shrink:0}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.9rem;margin-bottom:.5rem}.checkbox-label input[type=checkbox]{margin:0;cursor:pointer;accent-color:var(--accent)}.settings-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.settings-section-header h3{margin:0}.template-list{display:flex;flex-direction:column;gap:.35rem}.template-card{display:flex;align-items:center;gap:.75rem;padding:.7rem .85rem;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-surface);transition:all var(--duration-fast) var(--ease-out)}.template-card:hover{background:var(--bg-hover);box-shadow:var(--shadow-xs)}.template-dragging{opacity:.4}.template-drop-indicator{height:3px;background:var(--accent);border-radius:var(--radius-full);margin:-.15rem 0;position:relative;z-index:1}.template-drag-handle{cursor:grab;opacity:0;font-size:.9rem;-webkit-user-select:none;user-select:none;flex-shrink:0;line-height:1;color:var(--text-tertiary);transition:opacity var(--duration-fast) var(--ease-out)}.template-card:hover .template-drag-handle{opacity:.5}.template-drag-handle:active{cursor:grabbing}.template-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.template-name{font-size:.9rem;font-weight:600}.template-description{font-size:.8rem;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-actions{display:flex;gap:.25rem;flex-shrink:0;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.template-card:hover .template-actions{opacity:1}.activity-panel{border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1.25rem;background:var(--bg-surface);box-shadow:var(--shadow-sm);max-height:500px;display:flex;flex-direction:column}.activity-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:12px;flex-wrap:wrap}.activity-header h3{margin:0;font-size:1rem;font-family:var(--font-display)}.activity-filters{display:flex;gap:8px}.activity-filter-select{padding:5px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-surface);color:var(--text-primary);font-size:.85rem;font-family:var(--font-body)}.activity-filter-select:focus{outline:none;border-color:var(--accent)}.activity-list{overflow-y:auto;flex:1}.activity-entry{display:flex;align-items:flex-start;gap:8px;padding:10px 0;border-bottom:1px solid var(--border-light);font-size:.88rem}.activity-entry:last-child{border-bottom:none}.activity-action-badge{display:inline-block;padding:2px 7px;border-radius:var(--radius-sm);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;flex-shrink:0}.activity-action-created{background:#3d8c5c1a;color:var(--success)}.activity-action-updated{background:#3b82c41a;color:#3b82c4}.activity-action-deleted{background:#c0544e1a;color:var(--danger)}.activity-action-moved{background:#b8922a1a;color:var(--warning)}.activity-action-descoped{background:#835cb01a;color:#835cb0}.activity-action-copied{background:#37948c1a;color:#37948c}.activity-description{flex:1;line-height:1.5;color:var(--text-secondary)}.activity-time{color:var(--text-tertiary);font-size:.8rem;white-space:nowrap;flex-shrink:0}.activity-loading,.activity-empty{text-align:center;color:var(--text-tertiary);padding:20px 0;font-style:italic}.activity-load-more{width:100%;margin-top:8px}.btn-active{background:var(--accent-light)!important;border-color:var(--accent)!important;color:var(--accent)!important}.header-nav a.active{color:var(--text-primary);background:var(--bg-hover)}.sprint-content{display:grid;grid-template-columns:1fr 280px;gap:1.5rem;align-items:start}.sprint-sidebar{position:sticky;top:4.5rem;display:flex;flex-direction:column;gap:1rem;max-height:calc(100vh - 5.5rem)}.sprint-sidebar .utilization-bar{margin-top:0;flex-shrink:0}.sprint-sidebar .utilization-stats{flex-direction:column;gap:.5rem}.sprint-sidebar .activity-panel{margin-bottom:0;max-height:none;flex:1;min-height:0}@media(max-width:960px){.sprint-content{grid-template-columns:1fr}.sprint-sidebar{position:static;max-height:none}.sprint-sidebar .utilization-stats{flex-direction:row;gap:2.5rem}}.task-name-row{display:flex;align-items:center;gap:.5rem}.loading-spinner{width:22px;height:22px;border:2.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.comment-form-wrapper{display:flex;flex-direction:column;gap:.35rem}.comment-hint{font-size:.72rem;color:var(--text-tertiary);text-align:right}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
