@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#09090b;--bg-secondary:#18181b;--bg-card:#09090b;--bg-card-hover:#18181b;--bg-input:#09090b;--bg-sidebar:#09090b;--border-color:#3f3f46;--border-focus:#e4e4e7;--border-subtle:#27272a;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#71717a;--text-bright:#fff;--text-link:#fafafa;--accent:#fafafa;--accent-hover:#e4e4e7;--accent-glow:transparent;--accent-subtle:#27272a;--success:#22c55e;--success-bg:#22c55e1a;--warning:#eab308;--warning-bg:#eab3081a;--danger:#ef4444;--danger-bg:#ef44441a;--info:#3b82f6;--info-bg:#3b82f61a;--badge-todo-bg:#27272a;--badge-todo-text:#a1a1aa;--badge-progress-bg:#eab3081a;--badge-progress-text:#fde047;--badge-done-bg:#22c55e1a;--badge-done-text:#86efac;--badge-active-bg:#22c55e1a;--badge-active-text:#86efac;--badge-inactive-bg:#27272a;--badge-inactive-text:#71717a;--badge-hold-bg:#27272a;--badge-hold-text:#a1a1aa;--priority-low:#86efac;--priority-low-bg:#22c55e1a;--priority-medium:#fde047;--priority-medium-bg:#eab3081a;--priority-high:#fca5a5;--priority-high-bg:#ef44441a;--sidebar-width:260px;--header-height:64px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--transition:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,-apple-system,system-ui,sans-serif;line-height:1.6}a{color:var(--text-link);cursor:pointer;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{color:var(--text-bright);font-weight:600;line-height:1.3}.auth-page{background:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:40px 32px;animation:.4s fadeInUp}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{margin-bottom:8px;font-size:1.8rem}.auth-header p{color:var(--text-secondary)}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-footer{text-align:center;color:var(--text-secondary);margin-top:24px}.form-error{background:var(--danger-bg);color:var(--danger);border-radius:var(--radius-sm);border:1px solid #ef44444d;padding:10px 14px;font-size:.875rem}.app-layout{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:100;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid var(--border-subtle);padding:20px 24px}.app-logo{background:linear-gradient(135deg, var(--accent), #a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition);align-items:center;gap:12px;padding:10px 16px;font-size:.95rem;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--accent-subtle);color:var(--text-primary);text-decoration:none}.nav-item-active{color:var(--text-primary);border:1px solid var(--border-color);background:#ffffff0d}.nav-icon{text-align:center;width:24px;font-size:1.1rem}.sidebar-footer{border-top:1px solid var(--border-subtle);flex-direction:column;gap:10px;padding:16px 20px;display:flex}.user-info{color:var(--text-secondary);align-items:center;gap:8px;font-size:.875rem;display:flex}.logout-btn{border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);background:0 0;padding:6px 12px;font-size:.875rem}.logout-btn:hover{border-color:var(--danger);color:var(--danger)}.hamburger-btn{z-index:200;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;font-size:1.3rem;display:none;position:fixed;top:12px;left:12px}.sidebar-overlay{display:none}.main-content{margin-left:var(--sidebar-width);flex:1;max-width:1200px;padding:32px 40px}.page{animation:.3s fadeInUp}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:40px;display:flex}.page-title{font-size:1.75rem;font-weight:700}.page-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.section-header{justify-content:space-between;align-items:center;margin:32px 0 16px;display:flex}.section-title{font-size:1.15rem;font-weight:600}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-family:inherit;font-size:.875rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--bg-primary);box-shadow:0 1px 2px #0003}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{color:var(--text-secondary);border:1px solid var(--border-color);background:0 0}.btn-secondary:hover:not(:disabled){border-color:var(--text-secondary);color:var(--text-primary)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:#059669}.btn-full{width:100%;padding:12px;font-size:.95rem}.btn-sm{padding:5px 10px;font-size:.8rem}.btn-back{margin-bottom:20px}.btn-icon{color:var(--text-muted);cursor:pointer;transition:all var(--transition);background:0 0;border:none;padding:4px;font-size:.9rem}.btn-icon:hover{color:var(--danger)}.form{flex-direction:column;gap:16px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);font-size:.85rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);transition:all var(--transition);padding:10px 14px;font-family:inherit;font-size:.9rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.form-group textarea{resize:vertical}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.checkbox-group label{cursor:pointer;align-items:center;gap:8px;display:flex}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.filter-select{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);padding:8px 12px;font-family:inherit;font-size:.85rem}.status-select{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);padding:4px 8px;font-family:inherit;font-size:.8rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition);box-shadow:var(--shadow-sm);padding:20px}.card.clickable{cursor:pointer}.card.clickable:hover{background:var(--bg-card-hover);border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.card-header h3{font-size:1rem;font-weight:600}.card-body{flex-direction:column;gap:8px;display:flex}.card-stats{color:var(--text-secondary);flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.85rem;display:flex}.summary-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:28px;display:grid}.summary-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;transition:all var(--transition);box-shadow:var(--shadow-sm);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px 24px;display:flex}.summary-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.summary-icon{font-size:1.5rem}.summary-number{color:var(--text-bright);font-size:2rem;font-weight:700}.summary-label{color:var(--text-secondary);font-size:.85rem}.data-table{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow-x:auto}.data-table table{border-collapse:collapse;width:100%}.data-table th{text-align:left;text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;border-bottom:1px solid var(--border-color);padding:14px 16px;font-size:.8rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border-subtle);padding:14px 16px;font-size:.9rem}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background:var(--bg-card-hover)}.data-table .actions{gap:8px;display:flex}.link{color:var(--text-link);cursor:pointer;font-weight:500}.link:hover{text-decoration:underline}.badge{text-transform:capitalize;letter-spacing:.3px;border-radius:20px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-todo{background:var(--badge-todo-bg);color:var(--badge-todo-text)}.badge-in-progress{background:var(--badge-progress-bg);color:var(--badge-progress-text)}.badge-done{background:var(--badge-done-bg);color:var(--badge-done-text)}.badge-active{background:var(--badge-active-bg);color:var(--badge-active-text)}.badge-inactive{background:var(--badge-inactive-bg);color:var(--badge-inactive-text)}.badge-on-hold{background:var(--badge-hold-bg);color:var(--badge-hold-text)}.badge-default{background:var(--badge-inactive-bg);color:var(--badge-inactive-text)}.badge-billable{background:var(--success-bg);color:var(--success)}.priority-low{background:var(--priority-low-bg);color:var(--priority-low)}.priority-medium{background:var(--priority-medium-bg);color:var(--priority-medium)}.priority-high{background:var(--priority-high-bg);color:var(--priority-high)}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:520px;box-shadow:var(--shadow-lg);animation:.3s fadeInUp}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{font-size:1.15rem}.modal-close{color:var(--text-muted);cursor:pointer;transition:color var(--transition);background:0 0;border:none;padding:0;font-size:1.5rem}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:24px}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:10px;padding:16px 24px;display:flex}.confirm-dialog .modal-body p{color:var(--text-secondary)}.task-list{flex-direction:column;gap:10px;display:flex}.task-item{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all var(--transition);justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex}.task-item:hover{border-color:var(--accent-hover)}.task-info{flex:1;min-width:0}.task-title{margin-bottom:4px;font-weight:500}.task-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.timer{align-items:center;gap:8px;display:flex}.timer-display{color:var(--text-secondary);letter-spacing:1px;font-family:Inter,monospace;font-size:.9rem;font-weight:600}.timer-running .timer-display{color:var(--success)}.timer-pulse{color:var(--success);font-size:.8rem;animation:1s ease-in-out infinite pulse}.today-columns{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.today-column{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);min-height:200px;padding:16px}.column-header{margin-bottom:14px}.column-header h3{font-size:.95rem;font-weight:600}.column-header-todo{border-bottom:2px solid #4f46e5;padding-bottom:8px}.column-header-in-progress{border-bottom:2px solid #f59e0b;padding-bottom:8px}.column-header-done{border-bottom:2px solid #10b981;padding-bottom:8px}.today-task-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all var(--transition);margin-bottom:10px;padding:14px}.today-task-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.task-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.task-card-title{font-size:.9rem;font-weight:500}.task-card-meta{align-items:center;gap:8px;margin-bottom:10px;display:flex}.task-card-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.task-card-time{text-align:right;margin-top:6px}.task-picker{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:20px;padding:20px}.task-picker h3{margin-bottom:12px;font-size:1rem}.picker-list{flex-direction:column;gap:8px;max-height:300px;display:flex;overflow-y:auto}.picker-item{border-radius:var(--radius-sm);background:var(--bg-input);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.picker-item:hover{background:var(--bg-card-hover)}.picker-title{flex:1;font-weight:500}.detail-header{margin-bottom:20px}.detail-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.detail-description{color:var(--text-secondary);margin-bottom:24px;line-height:1.7}.detail-info{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-bottom:32px;display:grid}.info-item{flex-direction:column;gap:4px;display:flex}.info-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.5px;font-size:.8rem;font-weight:600}.alert-section{border-radius:var(--radius-md);border:1px solid;margin-bottom:20px;padding:18px 20px}.alert-danger{background:var(--danger-bg);border-color:#ef444440}.alert-warning{background:var(--warning-bg);border-color:#f59e0b40}.alert-section h3{margin-bottom:10px;font-size:.95rem}.alert-item{border-radius:var(--radius-sm);cursor:pointer;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.alert-item:hover{background:#ffffff0d}.deadline-text{font-size:.85rem}.deadline-overdue{color:var(--danger);font-weight:600}.deadline-approaching{color:var(--warning);font-weight:600}.today-summary{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-top:20px;padding:20px}.today-summary h3{margin-bottom:12px}.today-stats{flex-wrap:wrap;gap:20px;display:flex}.stat{color:var(--text-secondary);font-size:.9rem}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-icon{margin-bottom:16px;font-size:3rem}.empty-message{color:var(--text-secondary);margin-bottom:20px;font-size:1rem}.toast-container{z-index:9999;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{border-radius:var(--radius-sm);cursor:pointer;box-shadow:var(--shadow-md);min-width:240px;padding:12px 20px;font-size:.9rem;font-weight:500;animation:.3s slideInRight}.toast-success{background:var(--success);color:#fff}.toast-error{background:var(--danger);color:#fff}.toast-warning{background:var(--warning);color:#000}.toast-info{background:var(--info);color:#fff}.loading{color:var(--text-secondary);justify-content:center;align-items:center;padding:60px;display:flex}.text-muted{color:var(--text-muted)}.text-sm{font-size:.8rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@media (width<=768px){.sidebar{z-index:300;transition:transform .3s;transform:translate(-100%)}.sidebar-open{transform:translate(0)}.hamburger-btn{display:block}.sidebar-overlay{z-index:250;background:#00000080;display:block;position:fixed;inset:0}.main-content{box-sizing:border-box;width:100%;margin-left:0;padding:72px 16px 20px;overflow-x:hidden}.today-columns,.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.summary-cards{grid-template-columns:1fr}.summary-card{text-align:left;grid-template-columns:auto 1fr auto;place-items:center start;gap:16px;padding:16px 20px;display:grid}.summary-card .summary-icon{grid-area:1/1;align-items:center;display:flex}.summary-card .summary-label{color:var(--text-muted);grid-area:1/2;font-size:.95rem;font-weight:500}.summary-card .summary-number{grid-area:1/3;margin:0;font-size:1.25rem;font-weight:700}.data-table{background:0 0;border:none}.data-table table,.data-table thead,.data-table tbody,.data-table th,.data-table td,.data-table tr{display:block}.data-table thead tr{position:absolute;top:-9999px;left:-9999px}.data-table tr{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-sm);margin-bottom:16px}.data-table td{text-align:right;border:none;border-bottom:1px solid var(--border-subtle);justify-content:flex-end;align-items:center;padding-left:45%;display:flex;position:relative}.data-table td:last-child{border-bottom:none}.data-table td:before{content:attr(data-label);text-align:left;width:40%;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600;position:absolute;left:16px}.data-table .actions{justify-content:flex-end}.task-item{flex-direction:column;align-items:flex-start;gap:12px}.task-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}}@media (width<=480px){.summary-cards,.card-grid{grid-template-columns:1fr}.auth-card{padding:28px 20px}}
