.confirm-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:10001;animation:fadeIn .15s ease-out}.confirm-dialog{background:var(--bg-secondary);padding:30px;border-radius:12px;max-width:450px;width:90%;box-shadow:var(--shadow-lg);animation:slideIn .2s ease-out}.confirm-title{margin:0 0 15px;font-size:1.3em;color:var(--text-primary);border:none}.confirm-message{margin:0 0 25px;color:var(--text-secondary);line-height:1.5;font-size:.95em}.confirm-buttons{display:flex;gap:10px;justify-content:flex-end}.confirm-buttons button{padding:10px 24px;font-size:.95em;min-width:90px}.toast-container{position:fixed;top:20px;right:20px;z-index:10002;display:flex;flex-direction:column;gap:10px}.toast{padding:16px 24px;border-radius:12px;color:#fff;font-weight:500;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:12px;min-width:280px;max-width:400px;animation:slideIn .3s ease-out}.toast.hiding{animation:slideOut .3s ease-in forwards}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-success{background:linear-gradient(135deg,#389b80,#43b395)}.toast-error{background:linear-gradient(135deg,#8f4f4f,#a65a5a)}.toast-warning{background:linear-gradient(135deg,#9a7a30,#b8923a)}.toast-info{background:linear-gradient(135deg,#3a5f8f,#4a6fa5)}.toast-icon{font-size:1.4rem;flex-shrink:0}.toast-message{flex:1;line-height:1.4}.toast-close{background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;padding:0;opacity:.8;transition:opacity .2s;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.toast-close:hover{opacity:1}@media(max-width:768px){.toast-container{top:10px;right:10px;left:10px}.toast{min-width:auto;max-width:100%}}.alert-overlay{position:fixed;inset:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:10001;animation:fadeIn .15s ease-out}.alert-dialog{background:var(--bg-secondary);padding:30px;border-radius:12px;max-width:400px;width:90%;box-shadow:var(--shadow-lg);animation:slideIn .2s ease-out;text-align:center}.alert-icon{font-size:3em;margin-bottom:15px}.alert-title{margin:0 0 12px;font-size:1.3em;color:var(--text-primary);border:none}.alert-message{margin:0 0 25px;color:var(--text-secondary);line-height:1.5;font-size:.95em}.alert-buttons{display:flex;gap:10px;justify-content:center}.alert-buttons button{padding:10px 32px;font-size:.95em;min-width:100px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.toggle-switch-container{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-switch-label{font-size:.9em;color:var(--text-secondary);order:1}.toggle-switch{position:relative;width:44px;height:24px;order:2}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch:hover .toggle-slider{opacity:.9}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:20px}.auth-card{background:var(--bg-secondary);border-radius:12px;padding:40px;box-shadow:var(--shadow-lg);width:100%;max-width:400px;border:1px solid var(--border-color)}.auth-card h1{margin:0 0 10px;font-size:28px;color:var(--text-primary);text-align:center}.auth-card h2{margin:0 0 30px;font-size:20px;color:var(--text-secondary);text-align:center;font-weight:400;border:none;padding:0}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-form .form-group{display:flex;flex-direction:column}.auth-form .form-group label{margin-bottom:8px;font-weight:500;color:var(--text-primary)}.auth-form .form-group input{padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:16px;background:var(--bg-tertiary);color:var(--text-primary);transition:border-color .2s,background-color .2s}.auth-form .form-group input:focus{outline:none;border-color:var(--accent-color);background:var(--bg-secondary)}.auth-form .form-group input:disabled{background-color:var(--bg-tertiary);cursor:not-allowed;opacity:.6}.error-message{padding:12px;background-color:#dc35451a;border:1px solid var(--danger-color);border-radius:8px;color:var(--danger-color);font-size:14px}.auth-button{padding:12px 24px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s}.auth-button:hover:not(:disabled){background:var(--accent-hover)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-link{margin-top:20px;text-align:center;color:var(--text-secondary);font-size:14px}.auth-link a{color:var(--accent-color);text-decoration:none;font-weight:600}.auth-link a:hover{text-decoration:underline;color:var(--accent-hover)}.admin-container{max-width:1200px;margin:0 auto;padding:20px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--border-color)}.admin-header h1{margin:0;color:var(--text-primary)}.admin-subtitle{color:var(--text-secondary);margin:5px 0 0}.btn-logout{padding:10px 20px;background-color:var(--danger-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s}.btn-logout:hover{opacity:.8}.admin-actions{margin-bottom:30px}.btn-primary{padding:12px 24px;background-color:var(--accent-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s;font-weight:500}.btn-primary:hover{opacity:.8}.btn-secondary{padding:12px 24px;background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s}.btn-secondary:hover{opacity:.8}.users-list{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-sm)}.users-list h2{margin-top:0;margin-bottom:20px;color:var(--text-primary)}.no-users{text-align:center;color:var(--text-secondary);padding:40px 20px}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.users-table th{background-color:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:14px}.users-table td{color:var(--text-primary)}.users-table tbody tr:hover{background-color:var(--bg-tertiary)}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.inactive{background-color:#f8d7da;color:#721c24}.actions-cell{display:flex;gap:8px;flex-wrap:wrap}.btn-action{padding:6px 12px;border:none;border-radius:6px;cursor:pointer;font-size:12px;transition:all .2s;white-space:nowrap}.btn-action:hover{opacity:.8}.btn-reset{background-color:var(--accent-color);color:#fff}.btn-delete{background-color:var(--danger-color);color:#fff}.admin-form{padding:20px 0}.admin-form .form-group{margin-bottom:20px}.admin-form label{display:block;margin-bottom:5px;color:var(--text-primary);font-weight:500}.admin-form input{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background-color:var(--bg-secondary);color:var(--text-primary)}.admin-form input:focus{outline:none;border-color:var(--accent-color)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}[data-theme=dark] .status-badge.active{background-color:#155724;color:#d4edda}[data-theme=dark] .status-badge.inactive{background-color:#721c24;color:#f8d7da}.admin-tabs{display:flex;gap:5px;margin-bottom:20px;border-bottom:2px solid var(--border-color);overflow-x:auto}.admin-tab{padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-secondary);transition:all .2s;white-space:nowrap}.admin-tab:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.admin-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.admin-tab-content{min-height:500px}.tab-panel{animation:fadeIn .3s}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.tab-header h2{margin:0;color:var(--text-primary)}.tab-filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn-filter{padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.btn-filter:hover{background:var(--bg-secondary)}.btn-filter.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.filter-input{padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary)}.tab-loading,.tab-error,.no-data{text-align:center;padding:40px;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-sm)}.stat-card h3{margin:0 0 15px;color:var(--text-primary);font-size:16px}.stat-value{font-size:36px;font-weight:700;color:var(--accent-color);margin:10px 0}.stat-value-small{font-size:24px;font-weight:700;color:var(--accent-color)}.stat-detail{color:var(--text-secondary);margin-bottom:15px}.stat-breakdown{border-top:1px solid var(--border-color);padding-top:15px;margin-top:15px}.stat-breakdown h4{margin:0 0 10px;font-size:13px;color:var(--text-secondary);text-transform:uppercase}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-color)}.stat-item:last-child{border-bottom:none}.stat-label{font-weight:500;color:var(--text-secondary)}.role-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.role-badge.role-user{background-color:#e3f2fd;color:#1976d2}.role-badge.role-manager{background-color:#fff3e0;color:#f57c00}.role-badge.role-admin{background-color:#fce4ec;color:#c2185b}[data-theme=dark] .role-badge.role-user{background-color:#1976d2;color:#e3f2fd}[data-theme=dark] .role-badge.role-manager{background-color:#f57c00;color:#fff3e0}[data-theme=dark] .role-badge.role-admin{background-color:#c2185b;color:#fce4ec}.audit-logs-table{overflow-x:auto;margin-bottom:20px}.action-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px 0}.page-info{color:var(--text-secondary);font-size:14px}.user-agent{max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px}.settings-groups{display:flex;flex-direction:column;gap:30px}.settings-group h3{margin:0 0 15px;color:var(--text-primary);border-bottom:2px solid var(--accent-color);padding-bottom:8px}.settings-list{display:flex;flex-direction:column;gap:15px}.setting-item{background:var(--bg-card);border-radius:12px;padding:15px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;box-shadow:var(--shadow-sm)}.setting-info{flex:1}.setting-key{font-weight:600;color:var(--text-primary);margin-bottom:5px;display:flex;align-items:center;gap:8px}.public-badge{font-size:10px;background-color:var(--success-color);color:#fff;padding:2px 8px;border-radius:10px;font-weight:500}.setting-description{color:var(--text-secondary);font-size:13px;margin-bottom:5px}.setting-meta{color:var(--text-secondary);font-size:12px}.setting-value{display:flex;align-items:center;gap:10px}.setting-value code{background:var(--bg-tertiary);padding:6px 12px;border-radius:6px;font-family:Courier New,monospace;color:var(--text-primary)}.setting-edit{display:flex;gap:10px}.setting-edit input{padding:6px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);min-width:200px}.export-content{display:grid;grid-template-columns:1fr 1fr;gap:30px}@media(max-width:768px){.export-content{grid-template-columns:1fr}}.export-card{background:var(--bg-card);border-radius:12px;padding:30px;box-shadow:var(--shadow-md)}.export-card h3{margin:0 0 15px;color:var(--text-primary)}.export-card p{color:var(--text-secondary);line-height:1.6;margin-bottom:20px}.export-details{background:var(--bg-tertiary);padding:15px;border-radius:8px;margin-bottom:20px}.export-details h4{margin:0 0 10px;font-size:14px;color:var(--text-primary)}.export-details ul{margin:0;padding-left:20px;color:var(--text-secondary)}.export-details li{margin:5px 0}.btn-large{padding:15px 30px;font-size:16px;font-weight:600;width:100%}.export-info{background:var(--bg-card);border-radius:12px;padding:30px;box-shadow:var(--shadow-md)}.export-info h3{margin:0 0 20px;color:var(--text-primary)}.info-section{margin-bottom:25px}.info-section h4{margin:0 0 10px;font-size:14px;color:var(--text-primary)}.info-section p,.info-section ul{color:var(--text-secondary);line-height:1.6;font-size:14px}.info-section ul{margin:10px 0;padding-left:20px}.info-section code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:13px}.btn-edit{background-color:var(--accent-color);color:#fff}.btn-impersonate{background-color:#7c3aed;color:#fff}@media(max-width:768px){.admin-container{padding:10px}.admin-header{flex-direction:column;align-items:flex-start;gap:15px}.admin-header h1{font-size:24px}.admin-subtitle{font-size:14px}.btn-logout{width:100%}.admin-tabs{gap:0;padding-bottom:0}.admin-tab{padding:10px 15px;font-size:13px}.admin-tab-content{min-height:auto}.tab-header{flex-direction:column;align-items:flex-start}.tab-header h2{font-size:20px}.tab-filters{width:100%;flex-direction:column}.filter-input{width:100%}.users-table table{font-size:12px}.users-table th,.users-table td{padding:8px 4px}.users-table th:nth-child(4),.users-table td:nth-child(4),.users-table th:nth-child(5),.users-table td:nth-child(5){display:none}.actions-cell{flex-direction:column;gap:5px}.btn-action{width:100%;font-size:11px;padding:5px 8px}.stats-grid{grid-template-columns:1fr;gap:15px}.stat-card{padding:15px}.stat-value{font-size:28px}.stat-value-small{font-size:20px}.setting-item{flex-direction:column;gap:10px}.setting-edit{width:100%;flex-direction:column}.setting-edit input{width:100%;min-width:auto}.setting-edit button{width:100%}.audit-logs-table table{font-size:11px}.audit-logs-table th,.audit-logs-table td{padding:6px 3px}.audit-logs-table th:nth-child(4),.audit-logs-table td:nth-child(4){display:none}.user-agent{max-width:100px;font-size:10px}.export-card,.export-info{padding:20px}.pagination{flex-wrap:wrap;gap:10px}.page-info{font-size:12px;width:100%;text-align:center}.btn-primary,.btn-secondary{width:100%;padding:10px 16px;font-size:13px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.admin-form input{font-size:16px}}:root{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #e8e8e8;--bg-card: #ffffff;--bg-input: #eef0f2;--text-primary: #1a1a2e;--text-secondary: #555;--text-tertiary: #666;--text-muted: #999;--border-color: #ddd;--border-color-light: #e8e8e8;--accent-color: #4a6fa5;--accent-hover: #5a7fb5;--calendar-today-bg: #e8eef5;--danger-color: #a65a5a;--success-color: #43b395;--warning-color: #b8923a;--section-spacing: 10px;--shadow: rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px var(--shadow);--shadow-md: 0 4px 16px var(--shadow);--shadow-lg: 0 8px 24px var(--shadow)}[data-theme=dark]{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-tertiary: #0f3460;--bg-card: #1e2444;--bg-input: #121a30;--text-primary: #eaeaea;--text-secondary: #c0c0c0;--text-tertiary: #a0a0a0;--text-muted: #707070;--border-color: #2a2a4a;--border-color-light: #3a3a5a;--accent-color: #5a7fa8;--accent-hover: #6a8fb8;--calendar-today-bg: #1e3a5f;--danger-color: #b86a6a;--success-color: #43b395;--warning-color: #c9a04a;--shadow: rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background-color .3s,color .3s;overflow-y:scroll}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:20px;margin-bottom:20px;transition:background-color .3s,border-color .3s;box-shadow:var(--shadow-sm)}button{padding:10px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s;font-family:inherit}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--text-muted)}button.danger{background:var(--danger-color)}button.success{background:var(--success-color)}button.selected{background:var(--accent-color);box-shadow:inset 0 2px 4px #0003}button.outline{background:transparent;border:2px solid var(--accent-color);color:var(--accent-color)}button.outline:hover:not(:disabled){background:var(--accent-color);color:#fff}input,textarea,select{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--bg-input);color:var(--text-primary);font-family:inherit;transition:background-color .3s,border-color .3s,color .3s;box-sizing:border-box}[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23e0e0e0' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=date],input[type=time],input[type=datetime-local]{color-scheme:light dark}[data-theme=dark] input[type=date],[data-theme=dark] input[type=time],[data-theme=dark] input[type=datetime-local],[data-theme=dark] input[type=number]{color-scheme:dark;background-color:var(--bg-input)!important;color:var(--text-primary)!important;-webkit-appearance:none}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:1;cursor:pointer;filter:invert(.5)}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator,[data-theme=dark] .modal input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] .modal input[type=datetime-local]::-webkit-calendar-picker-indicator{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23e0e0e0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:18px 18px!important;width:20px!important;height:20px!important;opacity:1!important}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent-color);outline-offset:1px}label{display:block;margin-bottom:5px;color:var(--text-secondary);font-size:14px;font-weight:500}[data-theme=dark] label{color:var(--text-primary)}h1{font-size:2em;margin-bottom:20px;color:var(--text-primary)}h2{font-size:1.5em;margin:30px 0 15px;padding-bottom:10px;border-bottom:2px solid var(--border-color);color:var(--text-secondary)}h3{font-size:1.2em;margin-bottom:10px;color:var(--text-secondary)}.toolbar{display:flex;gap:10px;margin:20px 0;flex-wrap:wrap}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.modal{background:var(--bg-secondary);padding:30px;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);position:relative;z-index:10000}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{margin:0;border:none}.modal-close-btn{min-width:auto!important;width:36px!important;height:36px!important;padding:8px!important;display:flex;align-items:center;justify-content:center}.time-entry-form-submit,.client-form-submit,.project-form-submit{width:100%}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.calendar-view-switcher{display:flex;gap:5px;flex:1;justify-content:flex-start;min-width:250px}.calendar-navigation{display:flex;align-items:center;gap:10px;justify-content:center}.calendar-right-section{flex:1;min-width:250px;display:flex;justify-content:flex-end}.calendar-period-display{font-size:1.1em;font-weight:700;color:var(--text-primary);text-align:right}.projects-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;gap:10px;flex-wrap:wrap}.projects-title-row{display:flex;align-items:center;gap:15px}.projects-actions-row,.clients-actions-row{display:flex;align-items:center;gap:15px;padding-top:5px}.reports-invoices-btn{margin-top:0}.reports-short-text{display:none}.clients-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.client-name-row{display:flex;align-items:center;gap:10px;margin-bottom:4px}.client-project-count{font-size:.85em;padding:2px 8px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:12px}.client-email{font-size:.9em;color:var(--text-secondary);margin-bottom:2px}.client-goal{font-size:.9em;color:var(--text-muted)}.client-actions{display:flex;gap:8px}.form-group{margin-bottom:15px}.flex{display:flex;gap:10px}.flex-1{flex:1}.text-center{text-align:center}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.calendar-week,.calendar-month{width:100%}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:2px}.calendar-day-name{padding:10px;background:var(--bg-tertiary);text-align:center;font-weight:700;font-size:.9em;color:var(--text-secondary);border:1px solid var(--border-color)}.day-name-short{display:none}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-cell{min-height:100px;padding:8px;border:1px solid var(--border-color);cursor:pointer;transition:background .2s;display:flex;flex-direction:column}.archived-stripes{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(0,0,0,.4) 3px,rgba(0,0,0,.4) 6px);border-radius:inherit}[data-theme=dark] .archived-stripes{background:repeating-linear-gradient(-45deg,transparent,transparent 3px,rgba(255,255,255,.3) 3px,rgba(255,255,255,.3) 6px)}.stats-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px;margin-bottom:8px}.stat-card{text-align:center;padding:3px 8px;margin:0}.stat-label{font-size:.84em;color:var(--text-muted);margin-bottom:8px;line-height:1}.stat-value{font-size:1em;font-weight:700;color:var(--text-primary);line-height:1.1;margin:0;padding:0}.day-view-add-btn{padding:12px 24px;font-size:1em;background:var(--accent-color);color:#fff;border:none;border-radius:8px;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s ease}.day-view-add-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--accent-hover)}.day-view-inline-note{opacity:.85}@media(max-width:768px){.day-view-inline-note{display:none}}.day-view-header{text-align:center;font-size:1.3em;font-weight:700;margin-bottom:15px;color:var(--text-primary);padding:12px;background:var(--bg-secondary);border-radius:12px}.day-view-add-container{margin-bottom:15px;text-align:center}@media(max-width:480px){.day-view-header{font-size:1.1em;margin-bottom:8px;padding:8px}.day-view-add-container{margin-bottom:10px}.day-view-add-btn{padding:10px 20px;font-size:.9em}}.start-timer-btn{padding:10px 60px!important;min-width:200px!important}@media(max-width:768px){.calendar-cell{min-height:80px;padding:6px}.calendar-day-name{padding:8px 4px;font-size:.8em}.day-name-full{display:none}.day-name-short{display:inline}.stats-dashboard{grid-template-columns:repeat(3,1fr);gap:5px}.stat-card{padding:2px 6px}.stat-label{font-size:.84em;margin-bottom:8px}.stat-value{font-size:.95em;margin:0;padding:0}.container{padding:15px}h1{font-size:1.5em}h2{font-size:1.3em;margin:20px 0 10px}h3{font-size:1.1em}.modal{width:95%;padding:20px;max-height:95vh}button{padding:8px 16px;font-size:13px}.quick-timer-controls{gap:6px!important}.quick-timer-btn{padding:8px 12px!important;font-size:12px!important}.start-timer-btn{width:auto!important;flex:0 0 auto!important;min-width:60px!important;padding:10px 12px!important}.day-entry-notes{display:none!important}}@media(max-width:480px){.calendar-header{gap:1px;margin-bottom:1px}.calendar-day-name{padding:6px 2px;font-size:.7em}.calendar-grid{gap:1px}.calendar-cell{min-height:60px;padding:4px;font-size:.85em}.calendar-controls{flex-direction:column;align-items:center;margin-bottom:5px}.calendar-view-switcher,.calendar-navigation,.calendar-right-section{justify-content:center}.calendar-period-display{text-align:center;min-width:auto}.calendar-period-display.hidden-on-mobile{display:none}.time-entry{display:inline-block!important;width:10px!important;height:10px!important;border-radius:2px!important;margin:1px!important;padding:0!important;font-size:0!important;overflow:hidden;cursor:pointer}.projects-title-row{width:100%!important;justify-content:space-between!important}.reports-full-text{display:inline}.reports-short-text{display:none}.reports-invoices-btn{padding:6px 10px!important;font-size:13px!important;width:auto!important;margin-left:auto!important}.add-project-btn{padding:8px 12px!important;font-size:13px!important;width:auto!important}.clients-header{flex-wrap:wrap!important}.clients-header>h2{width:100%!important;border-bottom:1px solid var(--border-color)!important}.projects-header>h2{width:100%!important;border-bottom:1px solid var(--border-color)!important}.calendar-title-row{flex-wrap:wrap!important}.calendar-title-row>h2{width:100%!important;border-bottom:1px solid var(--border-color)!important;padding-bottom:10px!important;margin-bottom:10px!important}.clients-actions-row{width:100%!important;justify-content:space-between!important}.clients-actions-row .reports-invoices-btn{margin-left:0!important}.add-client-btn{padding:6px 12px!important;font-size:13px!important;width:auto!important}.client-card{flex-wrap:nowrap!important;padding:10px!important;align-items:center!important}.client-icon{display:none!important}.client-info{flex:1;min-width:0}.client-name-row{flex-direction:column!important;align-items:flex-start!important;gap:4px!important;margin-bottom:4px!important}.client-name-row strong{font-size:1em!important}.client-project-count{font-size:.8em!important;padding:2px 6px!important}.client-email{display:none!important}.client-goal{font-size:.85em!important}.client-actions{flex-shrink:0!important;margin-left:10px!important}.client-edit-btn{padding:8px!important}.stats-dashboard{grid-template-columns:repeat(3,1fr);gap:4px!important;margin-bottom:var(--section-spacing)!important}.weekly-goal-tracker{margin-bottom:var(--section-spacing)!important}.stat-card{padding:2px 4px}.stat-label{font-size:.7em;margin-bottom:4px;line-height:1}.stat-value{font-size:.85em;line-height:1.1;margin:0;padding:0}.container{padding:10px}h1{font-size:1.2em;margin-bottom:12px}h2{font-size:1em;margin:10px 0 6px;padding-bottom:6px}h3{font-size:.9em;margin-bottom:6px}.card{padding:12px;margin-bottom:15px}.modal{width:100%;height:100%;max-height:100vh;border-radius:0;padding:15px;overflow-x:hidden}.modal-header h2{font-size:1.2em}.modal-close-btn{width:auto!important;min-width:36px!important;padding:6px!important;aspect-ratio:1}button{padding:10px 15px;font-size:14px;width:100%}.toolbar,.flex{gap:8px}input,textarea,select{font-size:16px}label{font-size:13px}.color-picker-grid{gap:5px!important;padding:8px!important}.color-swatch{width:28px!important;height:28px!important;border-width:2px!important}.color-swatch-check{font-size:1em!important}.client-form-cancel{display:none!important}.client-form-submit{flex:1!important;width:100%!important}.icon-picker-grid{gap:5px!important;padding:8px!important}.icon-swatch{font-size:1.1em!important;padding:4px!important}.project-form-cancel{display:none!important}.project-form-submit{flex:1!important;width:100%!important}.modal input[type=datetime-local],.modal input[type=date]{font-size:14px!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:10px 8px!important;box-sizing:border-box!important;overflow:hidden!important}.modal input[type=datetime-local]::-webkit-datetime-edit,.modal input[type=date]::-webkit-datetime-edit{padding:0!important;min-width:0!important;max-width:calc(100% - 30px)!important;overflow:hidden!important}.modal input[type=datetime-local]::-webkit-calendar-picker-indicator,.modal input[type=date]::-webkit-calendar-picker-indicator{opacity:1!important;display:block!important;width:20px!important;height:20px!important;cursor:pointer!important;padding:2px!important;margin-left:4px!important;flex-shrink:0!important}.time-entry-date-input{font-size:14px!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:10px 8px!important;box-sizing:border-box!important;overflow:hidden!important}.time-entry-form-cancel{display:none!important}.time-entry-form-submit{flex:1!important;width:100%!important}.time-entry-form-delete{width:auto!important;min-width:80px!important}}
