.notification{position:fixed;top:20px;right:20px;min-width:300px;max-width:500px;padding:1rem;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10000;transition:all .3s ease-in-out;transform:translate(0)}.notification.hidden{transform:translate(100%);opacity:0}.notification.visible{transform:translate(0);opacity:1}.notification.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.notification.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.notification.warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.notification.info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.notification-content{display:flex;align-items:center;gap:.75rem}.notification-icon{font-size:1.25rem;font-weight:700;flex-shrink:0}.notification-message{flex:1;line-height:1.4}.notification-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s;flex-shrink:0}.notification.success .notification-close:hover{background-color:#1557241a}.notification.error .notification-close:hover{background-color:#721c241a}.notification.warning .notification-close:hover{background-color:#8564041a}.notification.info .notification-close:hover{background-color:#0c54601a}.login-page{display:flex;height:100vh;width:100vw;overflow:hidden;font-family:var(--font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif)}.login-brand-panel{flex:0 0 58%;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse 90% 55% at 50% 108%,rgba(59,127,191,.22) 0%,transparent 60%),radial-gradient(ellipse 55% 35% at 10% 20%,rgba(20,55,110,.55) 0%,transparent 55%),radial-gradient(ellipse 40% 50% at 90% 80%,rgba(15,40,85,.45) 0%,transparent 55%),linear-gradient(168deg,#101f35,#0d1b2e,#08111f)}.login-brand-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,rgba(255,255,255,.055) 1px,transparent 1px);background-size:26px 26px;pointer-events:none}.login-brand-panel:after{content:"";position:absolute;bottom:0;left:-10%;width:120%;height:38%;background:radial-gradient(ellipse 80% 60% at 50% 100%,rgba(59,127,191,.18) 0%,transparent 70%);pointer-events:none}.login-brand-panel__content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0}.login-brand-panel__logo{display:block;max-width:min(72vw,420px);max-height:min(40vh,320px);width:auto;height:auto;object-fit:contain;margin-bottom:1rem}.login-form-panel{flex:1;display:flex;align-items:center;justify-content:center;background:#f7f9fc;overflow-y:auto;padding:2rem 1.5rem}.login-form-card{background:#fff;border-radius:14px;box-shadow:0 1px 3px #0000000f,0 8px 24px #00000012,0 2px 8px #0000000a;padding:2.5rem 2.25rem 2rem;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center}.login-form-card__icon{width:69px;height:69px;border-radius:10px;object-fit:contain;display:block;margin-bottom:1.25rem}.login-form-card__title{font-size:1.6rem;font-weight:700;color:#1a2332;letter-spacing:-.5px;margin:0 0 .3rem;text-align:center}.login-form-card__subtitle{font-size:.9rem;color:#64748b;margin:0 0 1.75rem;text-align:center}.login-form{width:100%}.form-group label,.form-label-row label{display:block;font-size:.83rem;font-weight:500;color:#374151;margin-bottom:.35rem}.form-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.forgot-password-btn{font-size:.8rem;font-weight:500;color:#3b7fbf;background:none;border:none;padding:0;cursor:pointer;line-height:1;transition:color .15s ease}.forgot-password-btn:hover{color:#2563eb;text-decoration:underline}.form-group input{width:100%;padding:.7rem .9rem;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.93rem;background:#f8fafc;color:#1a2332;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#3b7fbf;background:#fff;box-shadow:0 0 0 3px #3b7fbf1f}.form-group input.error{border-color:#ef4444;background:#fff}.form-group input::placeholder{color:#94a3b8}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:2.5rem}.password-toggle{position:absolute;right:.5rem;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;background:transparent;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;transition:color .15s ease}.password-toggle:hover{color:#64748b}.form-remember{display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;cursor:pointer;-webkit-user-select:none;user-select:none}.form-remember input[type=checkbox]{width:15px;height:15px;accent-color:#3b7fbf;cursor:pointer;flex-shrink:0}.form-remember span{font-size:.83rem;color:#64748b}.error-message{font-size:.78rem;color:#ef4444;margin-top:.3rem;display:flex;align-items:center;gap:.3rem}.login-error-banner{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1rem;padding:.8rem .9rem;border-radius:8px;border:1px solid rgba(220,38,38,.2);background:linear-gradient(135deg,#fef2f2fa,#fffffff2);box-shadow:0 1px 2px #0000000a}.login-error-banner__icon{flex-shrink:0;margin-top:1px;color:#b91c1c;display:flex;align-items:center}.login-error-banner__body{flex:1;min-width:0}.login-error-banner__title{margin:0 0 .2rem;font-size:.84rem;font-weight:600;color:#991b1b;line-height:1.3}.login-error-banner__message{margin:0;font-size:.79rem;line-height:1.45;color:#7f1d1d}.login-button{width:100%;background:#3b7fbf;color:#fff;border:none;padding:.82rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .1s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;letter-spacing:.01em}.login-button:hover:not(:disabled){background:#2d6aa8;box-shadow:0 4px 12px #3b7fbf4d}.login-button:active:not(:disabled){transform:translateY(1px)}.login-button:disabled{background:#94a3b8;cursor:not-allowed}.login-loading{display:flex;align-items:center;gap:.5rem}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .75s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.login-form-card__version{margin:1.5rem 0 0;font-size:.74rem;color:#94a3b8;text-align:center}@media (max-width: 900px){.login-brand-panel{flex:0 0 45%}}@media (max-width: 640px){.login-page{flex-direction:column}.login-brand-panel{flex:0 0 auto;padding:1.75rem 1.5rem 1.5rem;min-height:unset}.login-brand-panel__logo{max-height:min(22vh,200px);max-width:min(85vw,280px);margin-bottom:.5rem}.login-brand-panel__name{font-size:1rem}.login-brand-panel__tagline,.login-brand-panel__offices{display:none}.login-form-panel{flex:1;padding:1.5rem 1rem}.login-form-card{padding:1.75rem 1.5rem 1.5rem;border-radius:12px}}.breadcrumb{margin-bottom:var(--spacing-md)}.breadcrumb__list{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs);list-style:none;margin:0;padding:0}.breadcrumb__item{display:flex;align-items:center}.breadcrumb__link{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--content-text-muted);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);transition:color var(--transition-fast)}.breadcrumb__link:hover{color:var(--content-text);text-decoration:underline}.breadcrumb__link:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.breadcrumb__current{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--content-text);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.breadcrumb__prefix{color:var(--content-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.breadcrumb__separator{display:flex;align-items:center;color:var(--content-text-muted)}.breadcrumb__home-icon{flex-shrink:0}@media (max-width: 768px){.breadcrumb__list{gap:2px}.breadcrumb__link,.breadcrumb__current,.breadcrumb__prefix{font-size:var(--font-size-xs)}.breadcrumb__link{min-height:var(--min-tap-target);padding:var(--spacing-xs)}}@media (max-width: 1024px){.breadcrumb__link{min-height:calc(var(--min-tap-target) * .75);padding:var(--spacing-xs)}}.page-header{margin-bottom:var(--spacing-lg)}.page-header__content{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-md)}.page-header__title-section{flex:1;min-width:0}.page-header__title{display:flex;align-items:baseline;gap:var(--spacing-sm);margin:0;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--content-text);line-height:var(--line-height-tight)}.page-header__count{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);color:var(--content-text-muted)}.page-header__subtitle{margin:var(--spacing-xs) 0 0 0;font-size:var(--font-size-sm);color:var(--content-text-muted);line-height:var(--line-height-normal)}.page-header__actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}@media (max-width: 768px){.page-header__content{flex-direction:column;align-items:stretch}.page-header__title{font-size:var(--font-size-xl)}.page-header__count{font-size:var(--font-size-base)}.page-header__actions{margin-top:var(--spacing-sm);justify-content:flex-start}}.stat-card{display:flex;align-items:center;gap:var(--spacing-md);background:var(--content-surface);border:1px solid var(--content-border);border-left:4px solid var(--stat-accent, var(--accent-primary));border-radius:var(--radius-lg);padding:1.25rem 1.5rem;box-shadow:var(--card-shadow);transition:box-shadow .2s ease,transform .2s ease;min-width:0}.stat-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.stat-card__icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-lg);background:var(--accent-light, #dbeafe);color:var(--stat-accent, var(--accent-primary));flex-shrink:0}.stat-card__body{display:flex;flex-direction:column;min-width:0}.stat-card__value{font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--content-text);line-height:1.2}.stat-card__label{font-size:var(--font-size-sm);color:var(--content-text-muted);margin-top:2px}.stat-card__subtitle{font-size:var(--font-size-xs);color:var(--content-text-muted);margin-top:2px;opacity:.8}@media (max-width: 768px){.stat-card{padding:1rem 1.25rem}.stat-card__value{font-size:1.25rem}}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;width:100%}.quick-action-card{display:flex;align-items:center;gap:var(--spacing-md);background:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:1rem 1.25rem;cursor:pointer;text-align:left;font-family:inherit;box-shadow:var(--card-shadow);transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease}.quick-action-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:var(--action-accent, var(--accent-primary))}.quick-action-card:active{transform:translateY(0)}.quick-action-card__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--action-accent, var(--accent-primary)) 12%,transparent);color:var(--action-accent, var(--accent-primary));flex-shrink:0}.quick-action-card__body{flex:1;min-width:0;display:flex;flex-direction:column}.quick-action-card__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--content-text)}.quick-action-card__desc{font-size:var(--font-size-xs);color:var(--content-text-muted);margin-top:1px}.quick-action-card__arrow{color:var(--content-text-muted);flex-shrink:0;opacity:0;transition:opacity .15s ease,transform .15s ease}.quick-action-card:hover .quick-action-card__arrow{opacity:1;transform:translate(2px)}@media (max-width: 768px){.quick-actions{grid-template-columns:1fr}}.recent-activity{background:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--card-shadow);width:100%}.recent-activity__title{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--content-text);margin:0 0 1rem}.recent-activity__empty{color:var(--content-text-muted);font-size:var(--font-size-sm);margin:0;padding:1rem 0;text-align:center}.recent-activity__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.recent-activity__item{display:flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 0;border-bottom:1px solid var(--content-border)}.recent-activity__item:last-child{border-bottom:none;padding-bottom:0}.recent-activity__item:first-child{padding-top:0}.recent-activity__icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);flex-shrink:0}.recent-activity__icon--time{background:#dbeafe;color:#2563eb}.recent-activity__icon--audit{background:#fef3c7;color:#d97706}.recent-activity__content{flex:1;min-width:0;display:flex;flex-direction:column}.recent-activity__primary{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--content-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-activity__secondary{font-size:var(--font-size-xs);color:var(--content-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-activity__date{font-size:var(--font-size-xs);color:var(--content-text-muted);flex-shrink:0;white-space:nowrap}@media (max-width: 768px){.recent-activity{padding:1.25rem}}.role-dashboard{display:flex;flex-direction:column;gap:2rem;width:100%}.role-dashboard__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%}.role-dashboard__stats--4col{grid-template-columns:repeat(4,1fr)}.role-dashboard__section{width:100%}.role-dashboard__section-title{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--content-text);margin:0 0 .75rem}@media (max-width: 1024px){.role-dashboard__stats--4col{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.role-dashboard__stats,.role-dashboard__stats--4col{grid-template-columns:1fr}.role-dashboard{gap:1.5rem}}.dashboard-skeleton__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:2rem}.dashboard-skeleton__stat-card{display:flex;align-items:center;gap:var(--spacing-md);background:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:1.25rem 1.5rem}.dashboard-skeleton__actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:2rem}.dashboard-skeleton__action-card{height:64px;border-radius:var(--radius-lg)}.dashboard-skeleton__activity{height:200px;border-radius:var(--radius-lg)}.skeleton-pulse{background:linear-gradient(90deg,var(--content-border) 25%,transparent 50%,var(--content-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}.skeleton-circle{width:44px;height:44px;border-radius:var(--radius-lg);flex-shrink:0}.skeleton-lines{display:flex;flex-direction:column;gap:6px;flex:1}.skeleton-line{height:14px;border-radius:var(--radius-sm)}.skeleton-line--lg{width:60%;height:20px}.skeleton-line--sm{width:40%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}@media (max-width: 768px){.dashboard-page{padding:0}}.office-selector{display:flex;flex-direction:column;gap:4px}.office-selector-label{font-size:14px;font-weight:500;color:#374151}.required-indicator{color:#dc2626;margin-left:2px}.office-selector-select{padding:8px 36px 8px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;background-color:#fff;color:#374151;cursor:pointer;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:20px}.office-selector-select:hover:not(:disabled){border-color:#9ca3af}.office-selector-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.office-selector-select.has-error{border-color:#dc2626}.office-selector-select.has-error:focus{box-shadow:0 0 0 3px #dc26261a}.office-selector-select.disabled{background-color:#f3f4f6;color:#6b7280;cursor:not-allowed}.office-selector-hint{font-size:12px;color:#6b7280;font-style:italic}.office-selector-error{font-size:12px;color:#dc2626}.user-form-container{background:var(--card-bg, #ffffff);border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));padding:1.5rem;margin-bottom:2rem;border:1px solid var(--card-border, #e5e7eb);transition:var(--theme-transition)}.user-form{background:transparent}.user-form h3{margin-bottom:1.5rem;color:var(--text-primary, #1a1a1a);text-align:center}.form-row.form-row-3{grid-template-columns:1fr 1fr 1fr}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary, #4b5563)}.form-group label .optional-label{font-weight:400;color:var(--text-muted, #9ca3af);font-size:.85em}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--input-border, #d1d5db);border-radius:4px;font-size:1rem;transition:border-color .3s ease,background-color .3s ease;background-color:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a)}.form-group select{-webkit-appearance:none;-moz-appearance:none;appearance:none;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='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.form-group select option{background-color:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .25))}.form-group input.error,.form-group select.error{border-color:var(--status-error, #ef4444)}.form-group input.error:focus,.form-group select.error:focus{border-color:var(--status-error, #ef4444);box-shadow:0 0 0 2px #ef444440}.error-message{color:var(--status-error, #ef4444)!important;background-color:transparent!important;font-size:.875rem;margin-top:.375rem;font-weight:500;display:block!important;position:relative!important;padding:0!important;border:none!important;box-shadow:none!important;animation:slideDown .2s ease-out;line-height:1.4}.error-message:before{content:"⚠ ";margin-right:.25rem;font-size:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.info-message{color:var(--accent-primary, #3b82f6);background-color:var(--accent-light, rgba(59, 130, 246, .1));border:1px solid var(--accent-primary, rgba(59, 130, 246, .3));border-radius:4px;padding:.75rem 1rem;font-size:.875rem;margin-top:.5rem;transition:var(--theme-transition)}.general-error{background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-left:4px solid var(--status-error, #ef4444);border-radius:4px;padding:.75rem 1rem;margin-bottom:1rem;color:var(--status-error, #ef4444);font-weight:500;display:flex;align-items:center;animation:slideDown .3s ease-out}.general-error:before{content:"⚠";font-size:1.25rem;margin-right:.75rem;color:var(--status-error, #ef4444)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.submit-button{background-color:var(--button-primary-bg, #2563eb);color:var(--button-primary-text, #ffffff);border:none;padding:.75rem 1.5rem;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s ease}.submit-button:hover:not(:disabled){background-color:var(--button-primary-hover, #1d4ed8)}.submit-button:disabled{background-color:var(--text-muted, #6b7280);cursor:not-allowed}.cancel-button{background-color:var(--button-secondary-bg, #f3f4f6);color:var(--button-secondary-text, #374151);border:none;padding:.75rem 1.5rem;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.cancel-button:hover:not(:disabled){background-color:var(--button-secondary-hover, #e5e7eb)}.cancel-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.form-row,.form-row.form-row-3{grid-template-columns:1fr}.form-actions{flex-direction:column}.submit-button,.cancel-button{width:100%}}.currency-rates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-top:.5rem}.currency-rate-input{display:flex;flex-direction:column}.currency-rate-input label{font-size:.8rem;font-weight:600;color:var(--text-secondary, #4b5563);margin-bottom:.25rem}.currency-rate-input input{width:100%;padding:.5rem;border:1px solid var(--input-border, #d1d5db);border-radius:4px;font-size:.9rem;background-color:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a)}.currency-rate-input input:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .25))}.currency-rate-input input.error{border-color:var(--status-error, #ef4444)}.currency-rate-input .error-message{font-size:.75rem}@media (max-width: 768px){.currency-rates-grid{grid-template-columns:repeat(2,1fr)}}.rate-warning-modal{max-width:480px}.rate-warning-text{color:var(--text-secondary, #4b5563);margin-bottom:1rem;line-height:1.5}.rate-warning-list{list-style:none;padding:0;margin:0 0 1.5rem}.rate-warning-list li{padding:.5rem .75rem;margin-bottom:.5rem;background-color:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-left:3px solid #f59e0b;border-radius:4px;color:var(--text-primary, #1a1a1a);font-size:.9rem}.rate-warning-actions{display:flex;gap:1rem;justify-content:flex-end}.data-table-container{width:100%;background-color:var(--content-surface);border-radius:var(--radius-lg);border:1px solid var(--content-border);overflow:hidden;transition:var(--theme-transition)}.data-table-wrapper{overflow-x:auto;overflow-y:auto;max-height:600px}.data-table{width:100%;border-collapse:collapse;font-family:var(--font-family);font-size:var(--font-size-sm)}.data-table__head{position:sticky;top:0;z-index:1;background-color:var(--table-header-bg, var(--content-surface))}.data-table__header{padding:var(--spacing-md);text-align:left;font-weight:var(--font-weight-medium);color:var(--content-text-muted);border-bottom:1px solid var(--content-border);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:var(--theme-transition)}.data-table__header--sortable{cursor:pointer;transition:color var(--transition-fast)}.data-table__header--sortable:hover{color:var(--content-text)}.data-table__header-content{display:flex;align-items:center;gap:var(--spacing-xs)}.data-table__sort-icon{font-size:var(--font-size-xs);opacity:.5;transition:opacity var(--transition-fast)}.data-table__header--sortable:hover .data-table__sort-icon{opacity:1}.data-table__body{background-color:var(--content-surface)}.data-table__row{transition:background-color var(--transition-fast),var(--theme-transition)}.data-table__row:hover{background-color:var(--table-row-hover, rgba(0, 0, 0, .02))}.data-table__row--clickable{cursor:pointer}.data-table__row--clickable:hover{background-color:var(--table-row-hover, rgba(0, 0, 0, .04))}.data-table__cell{padding:var(--spacing-md);border-bottom:1px solid var(--content-border);color:var(--content-text);vertical-align:middle;transition:var(--theme-transition)}.data-table__row:last-child .data-table__cell{border-bottom:none}.data-table__empty-row{background-color:var(--content-surface)}.data-table__empty-cell{padding:var(--spacing-xl);text-align:center;color:var(--content-text-muted);font-style:italic}.data-table__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);gap:var(--spacing-md);color:var(--content-text-muted)}.data-table__spinner{width:32px;height:32px;border:3px solid var(--content-border);border-top-color:var(--accent);border-radius:50%;animation:data-table-spin .8s linear infinite}@keyframes data-table-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.data-table__header,.data-table__cell{padding:var(--spacing-sm) var(--spacing-md);min-height:var(--min-tap-target)}.data-table-wrapper{max-height:400px}.data-table--mobile-cards{display:block}.data-table--mobile-cards .data-table__head{display:none}.data-table--mobile-cards .data-table__body{display:flex;flex-direction:column;gap:var(--spacing-md)}.data-table--mobile-cards .data-table__row{display:flex;flex-direction:column;background-color:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:var(--spacing-md);gap:var(--spacing-sm)}.data-table--mobile-cards .data-table__row:hover{background-color:var(--content-surface);border-color:var(--accent)}.data-table--mobile-cards .data-table__cell{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border:none;min-height:auto}.data-table--mobile-cards .data-table__cell:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--content-text-muted);margin-right:var(--spacing-md);flex-shrink:0}.data-table--mobile-cards .data-table__cell--actions{justify-content:flex-end;padding-top:var(--spacing-sm);border-top:1px solid var(--content-border);margin-top:var(--spacing-xs)}.data-table--mobile-cards .data-table__cell--actions:before{display:none}}@media (max-width: 1024px){.data-table__cell button,.data-table__cell a{min-width:var(--min-tap-target);min-height:var(--min-tap-target)}}.view-toggle{display:inline-flex;align-items:center;background-color:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-md);padding:2px;gap:2px}.view-toggle__button{display:flex;align-items:center;justify-content:center;width:32px;height:28px;padding:0;border:none;border-radius:var(--radius-sm);background-color:transparent;color:var(--content-text-muted);cursor:pointer;transition:all var(--transition-fast)}.view-toggle__button:hover{background-color:#0000000d;color:var(--content-text)}.view-toggle__button:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.view-toggle__button:focus:not(:focus-visible){box-shadow:none}.view-toggle__button:focus-visible{box-shadow:0 0 0 2px var(--accent)}.view-toggle__button--active,.view-toggle__button--active:hover{background-color:var(--content-text);color:var(--content-surface)}.view-toggle__button svg{width:16px;height:16px}@media (max-width: 1024px){.view-toggle__button{min-width:var(--min-tap-target);min-height:var(--min-tap-target);width:var(--min-tap-target);height:var(--min-tap-target)}.view-toggle__button svg{width:20px;height:20px}}.filter-chip{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--content-text);transition:all var(--transition-fast);-webkit-user-select:none;user-select:none}.filter-chip:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.filter-chip:focus:not(:focus-visible){box-shadow:none}.filter-chip:focus-visible{box-shadow:0 0 0 2px var(--accent)}.filter-chip--clickable{cursor:pointer}.filter-chip--clickable:hover{background-color:#00000005;border-color:var(--content-text-muted)}.filter-chip__label{font-weight:var(--font-weight-medium);color:var(--content-text-muted)}.filter-chip__separator{color:var(--content-text-muted)}.filter-chip__value{color:var(--content-text)}.filter-chip__remove{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;margin-left:var(--spacing-xs);border:none;border-radius:var(--radius-sm);background-color:transparent;color:var(--content-text-muted);cursor:pointer;transition:all var(--transition-fast)}.filter-chip__remove:hover{background-color:#0000001a;color:var(--content-text)}.filter-chip__remove:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.filter-chip__remove:focus:not(:focus-visible){box-shadow:none}.filter-chip__remove:focus-visible{box-shadow:0 0 0 2px var(--accent)}.filter-chip__remove svg{width:14px;height:14px}@media (max-width: 1024px){.filter-chip{min-height:var(--min-tap-target);padding:var(--spacing-sm) var(--spacing-md)}.filter-chip__remove{width:24px;height:24px}.filter-chip__remove svg{width:16px;height:16px}}.filter-bar,.filter-bar__chips{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-sm)}.filter-bar__add{position:relative}.filter-bar__add-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px dashed var(--content-border);border-radius:var(--radius-md);background-color:transparent;color:var(--content-text-muted);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.filter-bar__add-button:hover{border-color:var(--content-text-muted);color:var(--content-text);background-color:#00000005}.filter-bar__add-button:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.filter-bar__chevron{transition:transform var(--transition-fast)}.filter-bar__chevron--open{transform:rotate(180deg)}.filter-bar__dropdown{position:absolute;top:calc(100% + var(--spacing-xs));left:0;min-width:200px;background-color:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);overflow:hidden}.filter-bar__options{list-style:none;margin:0;padding:var(--spacing-xs) 0}.filter-bar__option{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);color:var(--content-text);cursor:pointer;transition:background-color var(--transition-fast)}.filter-bar__option:hover{background-color:#0000000d}.filter-bar__option--disabled{color:var(--content-text-muted);cursor:default;font-style:italic}.filter-bar__option--disabled:hover{background-color:transparent}.filter-bar__value-input{padding:var(--spacing-md)}.filter-bar__input-label{display:block;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--content-text)}.filter-bar__input,.filter-bar__select{width:100%;padding:var(--spacing-sm);border:1px solid var(--content-border);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--content-text);background-color:var(--content-surface);transition:border-color var(--transition-fast)}.filter-bar__input:focus,.filter-bar__select:focus{outline:none;border-color:var(--accent)}.filter-bar__input::placeholder{color:var(--content-text-muted)}.filter-bar__input-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.filter-bar__cancel-btn,.filter-bar__apply-btn{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.filter-bar__cancel-btn{border:1px solid var(--content-border);background-color:transparent;color:var(--content-text-muted)}.filter-bar__cancel-btn:hover{background-color:#0000000d;color:var(--content-text)}.filter-bar__apply-btn{border:none;background-color:var(--content-text);color:var(--content-surface)}.filter-bar__apply-btn:hover:not(:disabled){opacity:.9}.filter-bar__apply-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.filter-bar{flex-direction:column;align-items:stretch}.filter-bar__chips{flex-wrap:wrap}.filter-bar__add-button{min-height:var(--min-tap-target);justify-content:center}.filter-bar__dropdown{position:fixed;top:auto;bottom:0;left:0;right:0;min-width:100%;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:60vh;overflow-y:auto}.filter-bar__option{min-height:var(--min-tap-target);display:flex;align-items:center}.filter-bar__cancel-btn,.filter-bar__apply-btn{min-height:var(--min-tap-target);flex:1}.filter-bar__input-actions{flex-direction:row}}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md) 0}.toolbar__left{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.toolbar__right{display:flex;align-items:center;gap:var(--spacing-md)}.toolbar__search{position:relative;display:flex;align-items:center}.toolbar__search-icon{position:absolute;left:var(--spacing-sm);color:var(--content-text-muted);pointer-events:none}.toolbar__search-input{width:200px;padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-sm) 36px;border:1px solid var(--content-border);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--content-text);background-color:var(--content-surface);transition:all var(--transition-fast)}.toolbar__search-input:focus{outline:none;border-color:var(--accent);width:250px}.toolbar__search-input::placeholder{color:var(--content-text-muted)}.toolbar__actions{display:flex;align-items:center;gap:var(--spacing-sm)}.toolbar__action-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--content-border);border-radius:var(--radius-md);background-color:var(--content-surface);color:var(--content-text-muted);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.toolbar__action-btn:hover{background-color:#00000005;color:var(--content-text);border-color:var(--content-text-muted)}.toolbar__action-btn:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.toolbar__action-label{display:none}@media (min-width: 768px){.toolbar__action-label{display:inline}}.toolbar__add-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);background-color:var(--content-text);color:var(--content-surface);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.toolbar__add-btn:hover{opacity:.9}.toolbar__add-btn:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}@media (max-width: 768px){.toolbar{flex-direction:column;align-items:stretch}.toolbar__left,.toolbar__right{width:100%;justify-content:flex-start}.toolbar__search{flex:1}.toolbar__search-input{width:100%}.toolbar__search-input:focus{width:100%}.toolbar__actions{flex-wrap:wrap}.toolbar__action-btn,.toolbar__add-btn{min-height:var(--min-tap-target);flex:1;justify-content:center}}@media (max-width: 1024px){.toolbar__action-btn,.toolbar__add-btn{min-height:var(--min-tap-target)}}.pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md);border-top:1px solid var(--content-border);background-color:var(--content-surface);font-family:var(--font-family);font-size:var(--font-size-sm)}.pagination__left{display:flex;align-items:center;gap:var(--spacing-lg)}.pagination__right{display:flex;align-items:center}.pagination__page-size{display:flex;align-items:center;gap:var(--spacing-sm)}.pagination__label{color:var(--content-text-muted)}.pagination__select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--content-border);border-radius:var(--radius-sm);background-color:var(--content-surface);color:var(--content-text);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast)}.pagination__select:focus{outline:none;border-color:var(--accent)}.pagination__range{color:var(--content-text-muted)}.pagination__nav,.pagination__pages{display:flex;align-items:center;gap:var(--spacing-xs)}.pagination__btn{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--spacing-sm);border:1px solid var(--content-border);border-radius:var(--radius-sm);background-color:var(--content-surface);color:var(--content-text);font-family:var(--font-family);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.pagination__btn:hover:not(:disabled){background-color:#0000000d;border-color:var(--content-text-muted)}.pagination__btn:focus{outline:none;box-shadow:0 0 0 2px var(--accent)}.pagination__btn:disabled{opacity:.5;cursor:not-allowed}.pagination__btn--nav{padding:0}.pagination__btn--page{font-weight:var(--font-weight-medium)}.pagination__btn--active{background-color:var(--content-text);color:var(--content-surface);border-color:var(--content-text)}.pagination__btn--active:hover:not(:disabled){background-color:var(--content-text);border-color:var(--content-text)}.pagination__ellipsis{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;color:var(--content-text-muted)}@media (max-width: 768px){.pagination{flex-direction:column;align-items:center}.pagination__left,.pagination__right{width:100%;justify-content:center}.pagination__left{flex-direction:column;gap:var(--spacing-sm)}.pagination__btn{min-width:var(--min-tap-target);min-height:var(--min-tap-target)}.pagination__select{min-height:var(--min-tap-target);padding:var(--spacing-sm)}.pagination__pages{flex-wrap:wrap;justify-content:center}}@media (max-width: 1024px){.pagination__btn{min-width:var(--min-tap-target);min-height:var(--min-tap-target)}.pagination__select{min-height:var(--min-tap-target)}}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-content-text)}.status-badge__dot{width:8px;height:8px;border-radius:var(--border-radius-full);flex-shrink:0}.status-badge__label{line-height:1}.status-badge--active .status-badge__label,.status-badge--enabled .status-badge__label{color:var(--color-status-success)}.status-badge--inactive .status-badge__label,.status-badge--disabled .status-badge__label{color:var(--color-content-text-muted)}.status-badge--pending .status-badge__label{color:var(--color-status-warning)}.user-management-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}.user-management-content{display:flex;flex-direction:column;gap:var(--spacing-md, 16px);background:var(--content-surface, #ffffff);border-radius:var(--border-radius-lg, 8px);padding:1.5rem;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .05));border:1px solid var(--content-border, #e5e5e5);transition:var(--theme-transition)}.user-management-content .data-table-container{border-radius:8px;border:1px solid var(--card-border, #e0e0e0)}.user-management-content .data-table__header{padding:.75rem 1rem;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.3px;color:var(--text-primary, #2c3e50);border-bottom:2px solid var(--border-primary, #e0e0e0);white-space:nowrap}.user-management-content .data-table__head{background:var(--table-header-bg, #f8f9fa)}.user-management-content .data-table__cell{padding:.75rem 1rem;border-bottom:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #2c3e50);font-size:.9rem}.user-management-content .data-table__row:hover{background:var(--table-row-hover, #f3f4f6)}.user-management-content .data-table-wrapper{max-height:none}.user-name-cell{display:flex;flex-direction:column;gap:2px}.user-name-text{font-weight:600;color:var(--text-primary, #2c3e50);font-family:var(--font-family, inherit)}.user-email-small{font-size:.8rem;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.user-management-page .role-badge{display:inline-flex;align-items:center;padding:0;border-radius:0;font-size:13px;font-weight:500;text-transform:none;background:none;color:var(--text-primary, #1a1a1a)}.user-management-page .role-admin,.user-management-page .role-operations-head,.user-management-page .role-lawyer{background:none;color:var(--text-primary, #1a1a1a)}.rate-info{display:flex;flex-direction:column;gap:2px}.rate-amount{font-weight:500;color:var(--text-primary, #1a1a1a)}.rate-date{font-size:12px;color:var(--text-muted, #6b7280)}.rate-na,.rate-not-set{color:var(--text-muted, #6b7280);font-style:italic}.action-buttons{display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.btn-action{display:inline-flex;align-items:center;justify-content:center;padding:.375rem .875rem;border:none;border-radius:4px;cursor:pointer;font-size:.825rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.btn-action-edit{background:var(--button-secondary-bg, #95a5a6);color:var(--button-secondary-text, #ffffff)}.btn-action-edit:hover{background:var(--button-secondary-hover, #7f8c8d)}.btn-action-deactivate{background:var(--status-error, #e74c3c);color:#fff}.btn-action-deactivate:hover{background:#c0392b}.btn-action-activate{background:var(--button-primary-bg, #3498db);color:var(--button-primary-text, #ffffff)}.btn-action-activate:hover{background:var(--button-primary-hover, #2980b9)}.btn-action-delete{background:var(--status-error, #e74c3c);color:#fff}.btn-action-delete:hover{background:#c0392b}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--border-radius-md, 6px);cursor:pointer;transition:all .2s ease;background:transparent}.btn-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;display:block;visibility:visible}.btn-icon:hover{background-color:var(--border-primary, #e5e5e5)}:root[data-theme=dark] .user-management-content .data-table-container{border-color:#334155}:root[data-theme=dark] .user-management-content .data-table__head{background-color:#0f172a}:root[data-theme=dark] .user-management-content .data-table__header{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .user-management-content .data-table__row{background-color:#1e293b}:root[data-theme=dark] .user-management-content .data-table__row:hover{background-color:#334155}:root[data-theme=dark] .user-management-content .data-table__cell{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .user-management-content{background-color:#1e293b;border-color:#334155}:root[data-theme=dark] .btn-action-edit{background-color:#475569;color:#f8fafc}:root[data-theme=dark] .btn-action-edit:hover{background-color:#64748b}:root[data-theme=dark] .user-name-text{color:#f8fafc}:root[data-theme=dark] .user-email-small{color:#94a3b8}.action-confirm{display:flex;align-items:center;gap:var(--spacing-xs, 4px);font-size:13px}.action-confirm--danger .confirm-warning{display:flex;align-items:center;gap:4px;color:#ef4444;font-size:12px}.confirm-text{color:var(--text-muted, #6b7280);margin-right:4px}.btn-confirm,.btn-cancel{padding:4px 8px;border-radius:var(--border-radius-sm, 4px);font-size:12px;font-weight:500;cursor:pointer;border:none;transition:all .2s ease}.btn-confirm{background-color:#22c55e;color:#fff}.btn-confirm:hover{background-color:#16a34a}.btn-confirm--danger{background-color:#ef4444}.btn-confirm--danger:hover{background-color:#dc2626}.btn-cancel{background-color:var(--border-primary, #e5e5e5);color:var(--text-primary, #1a1a1a)}.btn-cancel:hover{background-color:var(--border-secondary, #d1d5db)}.admin-protected{display:inline-flex;align-items:center;padding:4px 8px;background-color:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280);border-radius:var(--border-radius-sm, 4px);font-size:12px;font-weight:500}.access-denied{text-align:center;padding:3rem;max-width:600px;margin:2rem auto;background:var(--card-bg, #ffffff);border-radius:var(--border-radius-lg, 8px);box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));border:1px solid var(--card-border, #e5e7eb)}.access-denied h2{color:#ef4444;margin-bottom:1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:var(--card-bg, #ffffff);border-radius:var(--border-radius-lg, 8px);box-shadow:var(--card-shadow, 0 10px 25px rgba(0, 0, 0, .2));max-width:600px;width:100%;max-height:90vh;overflow-y:auto;border:1px solid var(--card-border, #e5e7eb);transition:var(--theme-transition)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border-primary, #e5e7eb);background:var(--card-bg, #ffffff);border-radius:var(--border-radius-lg, 8px) var(--border-radius-lg, 8px) 0 0;transition:var(--theme-transition)}.modal-header h2{margin:0;color:var(--text-primary, #1a1a1a);font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-muted, #6b7280);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:var(--border-primary, #e5e7eb);color:var(--text-primary, #1a1a1a)}.modal-body{padding:2rem;background:var(--card-bg, #ffffff);transition:var(--theme-transition)}@media (max-width: 1024px){.user-management-content{padding:1rem}}@media (max-width: 768px){.user-management-content{padding:.75rem}.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header{padding:1rem 1.5rem}.modal-body{padding:1.5rem}.action-buttons{flex-wrap:wrap}.action-confirm{flex-wrap:wrap;gap:4px}}.office-filter-section{display:flex;align-items:center;gap:var(--spacing-md, 16px);padding-bottom:var(--spacing-md, 16px);border-bottom:1px solid var(--border-primary, #e5e5e5);margin-bottom:var(--spacing-sm, 8px)}.office-filter-section .office-selector{min-width:200px}.office-info-section{display:flex;align-items:center;gap:var(--spacing-sm, 8px);padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:var(--bg-secondary, #f3f4f6);border-radius:var(--border-radius-md, 6px);margin-bottom:var(--spacing-md, 16px)}.office-info-label{font-size:.875rem;color:var(--text-muted, #6b7280);font-weight:500}.office-info-value{font-size:.875rem;color:var(--text-primary, #1a1a1a);font-weight:600}.user-management-page .office-badge{display:inline-flex;align-items:center;padding:0;border-radius:0;font-size:13px;font-weight:500;background:none;color:var(--text-primary, #1a1a1a);text-transform:none}:root[data-theme=dark] .office-filter-section{border-bottom-color:#334155}:root[data-theme=dark] .office-info-section{background:#0f172a}:root[data-theme=dark] .office-info-label{color:#94a3b8}:root[data-theme=dark] .office-info-value{color:#f8fafc}:root[data-theme=dark] .user-management-page .office-badge{background:none;color:var(--text-primary, #f8fafc)}.currency-filter-section{display:flex;align-items:center;gap:.75rem;padding:.5rem 0}.currency-filter-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #4b5563);white-space:nowrap}.currency-filter-select{padding:.4rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:.875rem;background-color:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);cursor:pointer;min-width:140px}.currency-filter-select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .25))}.payment-summary{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.payment-summary-header{padding:1.5rem;border-bottom:1px solid #e9ecef;background-color:#f8f9fa}.payment-summary-header h3{margin:0 0 1rem;color:#333;text-align:center}.summary-totals{display:flex;justify-content:center;gap:2rem}.total-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.total-label{font-size:.9rem;color:#666;font-weight:500}.total-value{font-size:1.25rem;font-weight:700}.total-value.hours{color:#007bff}.total-value.payment{color:#28a745}.payment-summary-loading{text-align:center;padding:3rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.loading-spinner{color:#007bff;font-size:1.1rem}.payment-summary-error{text-align:center;padding:3rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.payment-summary-error p{color:#dc3545;margin-bottom:1rem}.retry-button{background-color:#007bff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:background-color .3s ease}.retry-button:hover{background-color:#0056b3}.payment-summary-empty{text-align:center;padding:3rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.payment-summary-empty h3{color:#666;margin-bottom:1rem}.payment-summary-empty p{color:#888}.payment-table-container{overflow-x:auto}.payment-table{width:100%;border-collapse:collapse}.payment-table th{background-color:#f8f9fa;padding:1rem;text-align:left;font-weight:600;color:#555;border-bottom:2px solid #e9ecef}.payment-table td{padding:1rem;border-bottom:1px solid #e9ecef;vertical-align:middle}.payment-table tbody tr:hover{background-color:#f8f9fa}.lawyer-cell{font-weight:500;color:#007bff}.hours-cell{text-align:center;font-weight:700;color:#007bff}.rate-cell{text-align:center;color:#666}.payment-cell{text-align:center;font-weight:700;color:#28a745;font-size:1.05rem}.period-cell{color:#666;font-size:.9rem}@media (max-width: 768px){.summary-totals{flex-direction:column;gap:1rem}.payment-table th,.payment-table td{padding:.75rem .5rem}.payment-table{font-size:.9rem}}@media (max-width: 480px){.payment-summary-header{padding:1rem}.payment-table{font-size:.8rem}.payment-table th,.payment-table td{padding:.5rem .25rem}.total-value{font-size:1.1rem}}.reports-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;margin-bottom:2rem}.reports-header{margin-bottom:1.5rem;text-align:center}.reports-header h3{margin:0;color:#333}.filters-section{margin-bottom:2rem}.filter-group{margin-bottom:1rem}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.filter-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#555}.filter-group input,.filter-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .3s ease}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.export-section{border-top:1px solid #e9ecef;padding-top:1.5rem}.export-section h4{margin:0 0 1rem;color:#333;text-align:center}.export-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;padding:.75rem;margin-bottom:1rem;color:#721c24;text-align:center}.export-buttons{display:flex;gap:1rem;justify-content:center}.export-button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:background-color .3s ease,transform .2s ease;min-width:120px}.export-button:hover:not(:disabled){transform:translateY(-1px)}.export-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.export-button.csv{background-color:#28a745;color:#fff}.export-button.csv:hover:not(:disabled){background-color:#218838}.export-button.pdf{background-color:#dc3545;color:#fff}.export-button.pdf:hover:not(:disabled){background-color:#c82333}@media (max-width: 768px){.filter-row{grid-template-columns:1fr}.export-buttons{flex-direction:column;align-items:center}.export-button{width:100%;max-width:200px}}@media (max-width: 480px){.reports-panel{padding:1rem}.filter-group input,.filter-group select{padding:.5rem}.export-button{padding:.5rem 1rem;font-size:.9rem}}.finance-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}.finance-content{display:flex;flex-direction:column;gap:2rem}.reports-section{order:1}.payments-section{order:2}.stats-section{order:3}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.stat-card{background:var(--content-surface, #ffffff);border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:transform .2s ease,box-shadow .2s ease,var(--theme-transition);border:1px solid var(--content-border, #e5e7eb)}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.stat-button{border:none;cursor:pointer;text-align:left;width:100%;font-family:inherit;background:linear-gradient(135deg,var(--content-surface, #ffffff) 0%,var(--bg-secondary, #f3f4f6) 100%);border:1px solid var(--content-border, #e5e7eb)}.stat-button:hover{background:linear-gradient(135deg,var(--bg-secondary, #f3f4f6) 0%,var(--content-border, #e5e7eb) 100%);border-color:var(--accent-primary, #2563eb);transform:translateY(-3px);box-shadow:0 6px 12px #2563eb26}.stat-button:active{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.stat-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 2px 4px #0000001a}.stat-button.loading{position:relative;overflow:hidden}.stat-button.loading:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,123,255,.2),transparent);animation:loading-shimmer 1.5s infinite}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.stat-button-group{cursor:default}.stat-button-group:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.export-buttons-inline{display:flex;gap:.5rem;margin-top:1rem;justify-content:center}.export-btn{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease;min-width:60px}.export-btn:disabled{opacity:.6;cursor:not-allowed}.export-btn.csv{background-color:#28a745;color:#fff}.export-btn.csv:hover:not(:disabled){background-color:#218838}.export-btn.pdf{background-color:#dc3545;color:#fff}.export-btn.pdf:hover:not(:disabled){background-color:#c82333}.stat-icon{font-size:2.5rem;flex-shrink:0}.stat-content h3{margin:0 0 .5rem;color:var(--text-primary, #1a1a1a);font-size:1.25rem}.stat-content p{margin:0;color:var(--text-muted, #6b7280);font-size:.9rem;line-height:1.4}.access-denied{text-align:center;padding:3rem;max-width:600px;margin:2rem auto;background:var(--content-surface, #ffffff);border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));transition:var(--theme-transition)}.access-denied h2{color:var(--status-error, #ef4444);margin-bottom:1rem}.access-denied p{color:var(--text-muted, #6b7280);font-size:1.1rem}@media (max-width: 768px){.finance-page{padding:1rem}.page-header h1{font-size:1.75rem}.page-header p{font-size:1rem}.stats-grid{grid-template-columns:1fr;gap:1rem}.stat-card{padding:1rem;flex-direction:column;text-align:center}.stat-icon{font-size:2rem}.stat-content h3{font-size:1.1rem}.stat-content p{font-size:.85rem}}@media (max-width: 480px){.stat-card{padding:.75rem}.stat-icon{font-size:1.75rem}.stat-content h3{font-size:1rem}.stat-content p{font-size:.8rem}}.task-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;flex-wrap:wrap;transition:background-color .25s ease}.task-toolbar__left{display:flex;align-items:center;gap:10px}.task-toolbar__right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-toolbar__search{position:relative;display:flex;align-items:center}.task-toolbar__search-icon{position:absolute;left:10px;color:var(--text-muted, #6b7280);pointer-events:none}.task-toolbar__search-input{padding:7px 28px 7px 32px;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background-color:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);font-family:inherit;font-size:.8125rem;width:160px;transition:background-color .25s ease,border-color .25s ease,color .25s ease}.task-toolbar__search-input:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb14}.task-toolbar__search-input::placeholder{color:var(--text-muted, #9ca3af)}.task-toolbar__search-clear{position:absolute;right:6px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:50%;background-color:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280);cursor:pointer;transition:all .15s ease}.task-toolbar__search-clear:hover{background-color:var(--border-primary, #e5e7eb);color:var(--text-primary, #1a1a1a)}.task-toolbar__filter-group{display:flex;align-items:center}.task-toolbar__select{padding:7px 26px 7px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background-color:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);font-family:inherit;font-size:.8125rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;transition:background-color .25s ease,border-color .25s ease,color .25s ease}.task-toolbar__select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb14}.task-toolbar__select:hover{border-color:var(--border-secondary, #d1d5db)}.task-toolbar__select--active{border-color:var(--accent-primary, #2563eb);background-color:#2563eb0d}.task-toolbar__client-filter{position:relative}.task-toolbar__client-button{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background-color:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);font-family:inherit;font-size:.8125rem;cursor:pointer;transition:background-color .25s ease,border-color .25s ease}.task-toolbar__client-button:hover{border-color:var(--border-secondary, #d1d5db)}.task-toolbar__client-button:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb14}.task-toolbar__client-button--active{border-color:var(--accent-primary, #2563eb);background-color:#2563eb0d}.task-toolbar__chevron{transition:transform .2s ease}.task-toolbar__chevron--open{transform:rotate(180deg)}.task-toolbar__client-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:260px;max-height:320px;background-color:var(--content-surface, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:100;overflow:hidden;transition:background-color .25s ease,border-color .25s ease}.task-toolbar__client-actions{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-primary, #e5e7eb);background-color:var(--bg-secondary, #f9fafb)}.task-toolbar__client-action-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background-color:var(--content-surface, #ffffff);color:var(--text-secondary, #4b5563);font-family:inherit;font-size:.75rem;cursor:pointer;transition:all .15s ease}.task-toolbar__client-action-btn:hover{background-color:var(--bg-secondary, #f3f4f6);border-color:var(--border-secondary, #d1d5db)}.task-toolbar__client-action-btn--clear{color:var(--status-error, #dc2626);border-color:var(--status-error, #dc2626)}.task-toolbar__client-action-btn--clear:hover{background-color:#dc26260d}.task-toolbar__client-options{max-height:240px;overflow-y:auto;padding:4px 0}.task-toolbar__client-option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background-color .15s ease}.task-toolbar__client-option:hover{background-color:var(--bg-secondary, #f3f4f6)}.task-toolbar__client-option--selected{background-color:#2563eb0d}.task-toolbar__client-option--selected:hover{background-color:#2563eb14}.task-toolbar__client-option input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary, #2563eb)}.task-toolbar__client-name{flex:1;font-size:.8125rem;color:var(--text-primary, #1a1a1a)}.task-toolbar__client-count{font-size:.75rem;color:var(--text-muted, #6b7280);background-color:var(--bg-secondary, #f3f4f6);padding:2px 8px;border-radius:10px;min-width:24px;text-align:center}.task-toolbar__client-empty{padding:16px 12px;text-align:center;color:var(--text-muted, #6b7280);font-size:.8125rem}.task-toolbar__reset-btn{display:flex;align-items:center;gap:4px;padding:7px 12px;border:1px solid var(--status-error, #dc2626);border-radius:4px;background-color:transparent;color:var(--status-error, #dc2626);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.task-toolbar__reset-btn:hover{background-color:var(--status-error, #dc2626);color:#fff}.task-toolbar__reset-btn:focus{outline:none;box-shadow:0 0 0 2px #dc262633}:root[data-theme=dark] .task-toolbar__search-input,:root[data-theme=dark] .task-toolbar__select,:root[data-theme=dark] .task-toolbar__client-button{background-color:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .task-toolbar__select--active,:root[data-theme=dark] .task-toolbar__client-button--active{border-color:var(--accent-primary, #3b82f6);background-color:#3b82f61a}:root[data-theme=dark] .task-toolbar__client-dropdown{background-color:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155);box-shadow:0 4px 12px #0000004d}:root[data-theme=dark] .task-toolbar__client-actions{background-color:var(--bg-primary, #0f172a)}:root[data-theme=dark] .task-toolbar__client-action-btn{background-color:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .task-toolbar__client-option--selected{background-color:#3b82f61a}:root[data-theme=dark] .task-toolbar__client-count{background-color:var(--bg-primary, #0f172a)}:root[data-theme=dark] .task-toolbar__search-clear{background-color:var(--bg-surface, #1e293b)}:root[data-theme=dark] .task-toolbar__search-clear:hover{background-color:var(--border-primary, #334155)}:root[data-theme=dark] .task-toolbar__select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}:root[data-theme=dark] .task-toolbar__reset-btn{border-color:#f87171;color:#f87171}:root[data-theme=dark] .task-toolbar__reset-btn:hover{background-color:#f87171;color:#0f172a}@media (max-width: 768px){.task-toolbar{flex-direction:column;align-items:stretch;gap:10px}.task-toolbar__left{justify-content:center}.task-toolbar__right{justify-content:center;flex-wrap:wrap}.task-toolbar__search-input{width:100%;min-width:140px}.task-toolbar__client-dropdown{left:0;right:0;min-width:auto}}@media (max-width: 480px){.task-toolbar__right{flex-direction:column;width:100%}.task-toolbar__search,.task-toolbar__search-input,.task-toolbar__filter-group,.task-toolbar__select,.task-toolbar__client-filter{width:100%}.task-toolbar__client-button{width:100%;justify-content:space-between}.task-toolbar__reset-btn{width:100%;justify-content:center}}.time-entry-form-container{width:100%;max-width:none;transition:var(--theme-transition)}.inline-create-form .time-entry-form-container,.inline-edit-form .time-entry-form-container{background:none;border:none;border-radius:0;box-shadow:none;padding:0;margin:0;width:100%;max-width:none}.inline-create-form .time-entry-form-container:hover,.inline-edit-form .time-entry-form-container:hover{transform:none;box-shadow:none}.inline-create-form .form-section,.inline-edit-form .form-section{width:100%;max-width:none}.time-entry-form h3{margin-bottom:2rem;color:var(--text-primary, #1a1a1a);text-align:center;font-size:1.8rem;font-weight:600}.form-group{margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-row-three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}.form-row-four{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary, #1a1a1a);font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid var(--input-border, #d1d5db);border-radius:8px;font-size:.95rem;transition:all .3s ease;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .1));background:var(--content-surface, #ffffff)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--status-error, #ef4444);background:#ef44440d}.form-group input.error:focus,.form-group select.error:focus,.form-group textarea.error:focus{border-color:var(--status-error, #ef4444);box-shadow:0 0 0 3px #ef444440}.error-message{color:var(--status-error, #ef4444);font-size:.875rem;margin-top:.5rem;font-weight:500}.general-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:1rem;margin-bottom:1.5rem;color:var(--status-error, #ef4444);font-weight:500}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--content-border, #e5e7eb)}.submit-button{background:var(--accent-primary, #2563eb);color:var(--button-primary-text, #ffffff);border:none;padding:.75rem 1.5rem;border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .15s ease}.submit-button:hover:not(:disabled){background:var(--accent-hover, #1d4ed8)}.submit-button:disabled{background:var(--text-muted, #6b7280);cursor:not-allowed}.cancel-button{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #374151);border:1px solid var(--content-border, #e5e7eb);padding:.75rem 1.5rem;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.cancel-button:hover:not(:disabled){background:var(--content-border, #e5e7eb)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:3rem;color:var(--text-muted, #6b7280);font-size:1.1rem}.form-section{width:100%;margin-bottom:1.5rem;padding:1.25rem;background:var(--bg-secondary, #f3f4f6);border-radius:6px;border:1px solid var(--content-border, #e5e7eb);transition:var(--theme-transition)}.form-section:last-child{margin-bottom:0}.form-section h4{color:var(--text-primary, #1a1a1a);margin-bottom:1rem;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.form-section h4:before{content:"";width:3px;height:16px;background:var(--accent-primary, #2563eb);border-radius:2px}.file-help{margin-top:.75rem;font-size:.9rem;color:var(--text-muted, #6b7280);font-style:italic}.selected-files{margin-top:1.5rem;padding:1.5rem;background:var(--content-surface, #ffffff);border-radius:8px;border:2px dashed var(--content-border, #e5e7eb);transition:all .3s ease}.selected-files:hover{border-color:var(--accent-primary, #2563eb);background:var(--accent-light, #dbeafe)}.files-list{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem}.file-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--content-border, #e5e7eb);border-radius:8px;transition:all .3s ease}.file-item:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.file-name{flex:1;font-size:.9rem;color:var(--text-primary, #1a1a1a);font-weight:500}.remove-file-button{background:linear-gradient(135deg,var(--status-error, #ef4444),#dc2626);color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;line-height:1;transition:all .3s ease;box-shadow:0 2px 4px #ef44444d}.remove-file-button:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 8px #ef444466}.remove-file-button:disabled{background:var(--text-muted, #6b7280);cursor:not-allowed;transform:none;box-shadow:none}.add-more-hint{margin-top:.75rem;font-size:.85rem;color:var(--status-success, #22c55e);font-style:italic;font-weight:500}.existing-documents{margin-bottom:2rem;padding:1.5rem;background:var(--content-surface, #ffffff);border-radius:8px;border:2px solid var(--content-border, #e5e7eb);transition:all .3s ease}.existing-documents:hover{border-color:var(--accent-primary, #2563eb);box-shadow:0 4px 8px #2563eb1a}.existing-documents h5{margin:0 0 1.5rem;color:var(--text-primary, #1a1a1a);font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.existing-documents h5:before{content:"📄";font-size:1.2rem}.documents-list{display:flex;flex-direction:column;gap:1rem}.document-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--content-border, #e5e7eb);border-radius:8px;transition:all .3s ease}.document-item:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a;background:var(--content-surface, #ffffff)}.document-name{flex:1;font-size:.9rem;color:var(--text-primary, #1a1a1a);display:flex;align-items:center;gap:.5rem;font-weight:500}.document-actions{display:flex;gap:.75rem}.download-button{background:linear-gradient(135deg,var(--status-success, #22c55e),#16a34a);color:#fff;text-decoration:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;transition:all .3s ease;box-shadow:0 2px 4px #22c55e4d}.download-button:hover{background:linear-gradient(135deg,#16a34a,#15803d);text-decoration:none;color:#fff;transform:translateY(-1px);box-shadow:0 4px 8px #22c55e66}.remove-document-button{background:linear-gradient(135deg,var(--status-error, #ef4444),#dc2626);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #ef44444d}.remove-document-button:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px);box-shadow:0 4px 8px #ef444466}.remove-document-button:disabled{background:var(--text-muted, #6b7280);cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 1200px){.form-row-four{grid-template-columns:1fr 1fr;gap:1.5rem}}@media (max-width: 768px){.time-entry-form-container{padding:1.5rem;margin-bottom:1.5rem}.time-entry-form h3{font-size:1.5rem}.form-row,.form-row-three,.form-row-four{grid-template-columns:1fr;gap:1rem}.form-section{padding:1rem;margin-bottom:1.5rem}.form-actions{flex-direction:column;gap:.75rem}.submit-button,.cancel-button{width:100%;padding:1rem}.document-item{flex-direction:column;align-items:flex-start;gap:1rem}.document-actions{width:100%;justify-content:flex-end}}@media (max-width: 480px){.time-entry-form-container{padding:1rem}.form-section,.form-group input,.form-group select,.form-group textarea{padding:.75rem}}.task-context-info{background:var(--bg-secondary, #f9fafb);border:1px solid var(--content-border, #e5e7eb);border-radius:4px;padding:.75rem 1rem;margin-bottom:1.5rem;display:flex;gap:2rem;flex-wrap:wrap}.context-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.context-item strong{color:var(--text-primary, #1a1a1a);font-weight:600}.time-entry-form.task-based{max-width:none}.time-entry-form.task-based h3,.time-entry-form.task-based .task-context-info{display:none}.time-entry-form.task-based .form-section{margin-bottom:1rem;padding:1rem}.time-entry-form.task-based .form-row{grid-template-columns:1fr 1fr 1fr}.time-entry-form.task-based .form-group{margin-bottom:.75rem}.time-entry-form.task-based .form-group label{font-weight:600;color:var(--text-primary, #333);margin-bottom:.35rem;font-size:.85rem}.time-entry-form.task-based .form-group textarea{min-height:60px}.time-entry-form.task-based .form-actions{margin-top:1rem;padding-top:.75rem}.time-entry-form.task-based input[type=number]:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a74540}.time-entry-form.task-based textarea:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a74540}.time-entry-form.task-based .submit-button{background:var(--accent-primary, #2563eb);color:#fff;border:none;padding:.6rem 1.5rem;border-radius:4px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background-color .15s ease}.time-entry-form.task-based .submit-button:hover{background:var(--accent-hover, #1d4ed8)}.time-entry-form.task-based .submit-button:disabled{background:var(--text-muted, #6b7280);cursor:not-allowed}@media (max-width: 768px){.task-context-info{flex-direction:column;gap:.75rem}.context-item{justify-content:space-between}}:root[data-theme=dark] .time-entry-form-container{background:#1e293b}:root[data-theme=dark] .time-entry-form h3{color:#f8fafc}:root[data-theme=dark] .form-group input::placeholder,:root[data-theme=dark] .form-group textarea::placeholder{color:#94a3b8}:root[data-theme=dark] .form-group input:focus,:root[data-theme=dark] .form-group select:focus,:root[data-theme=dark] .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633;background:#334155}:root[data-theme=dark] .form-section{background:#0f172a;border-color:#334155}:root[data-theme=dark] .form-section h4{color:#f8fafc}:root[data-theme=dark] .cancel-button{background:#334155;color:#f8fafc;border-color:#475569}:root[data-theme=dark] .cancel-button:hover:not(:disabled){background:#475569}:root[data-theme=dark] .selected-files{background:#1e293b;border-color:#475569}:root[data-theme=dark] .selected-files:hover{border-color:#3b82f6;background:#3b82f61a}:root[data-theme=dark] .file-item{background:#334155;border-color:#475569}:root[data-theme=dark] .file-item:hover{background:#475569}:root[data-theme=dark] .file-name{color:#f8fafc}:root[data-theme=dark] .file-help{color:#94a3b8}:root[data-theme=dark] .existing-documents{background:#1e293b;border-color:#475569}:root[data-theme=dark] .existing-documents:hover{border-color:#3b82f6}:root[data-theme=dark] .existing-documents h5{color:#f8fafc}:root[data-theme=dark] .document-item{background:#334155;border-color:#475569}:root[data-theme=dark] .document-item:hover{background:#475569}:root[data-theme=dark] .document-name{color:#f8fafc}:root[data-theme=dark] .general-error{background:#ef444426;border-color:#ef444466;color:#f87171}:root[data-theme=dark] .task-context-info{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .context-item{color:#f8fafc}:root[data-theme=dark] .context-item strong{color:#f8fafc}:root[data-theme=dark] .time-entry-form.task-based .form-group label{color:#f8fafc}:root[data-theme=dark] .time-entry-form.task-based .form-row{grid-template-columns:1fr 1fr 1fr}:root[data-theme=dark] .loading{color:#94a3b8}.info-text{font-size:.75rem;color:var(--text-muted, #6b7280);margin-top:.25rem;font-style:italic}.mlp{border:1px solid var(--content-border, #e5e7eb);border-radius:6px;background:var(--content-surface, #ffffff);overflow:hidden}.mlp__header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.mlp__title{font-size:.8rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.mlp__summary{font-size:.75rem;color:var(--text-muted, #6b7280)}.mlp__table{width:100%;border-collapse:collapse;font-size:.8rem}.mlp__table thead th{text-align:left;padding:.4rem .75rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted, #6b7280);border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.mlp__table tbody td{padding:.35rem .75rem;color:var(--text-secondary, #4b5563);border-bottom:1px solid var(--content-border, #e5e7eb)}.mlp__table tbody tr:last-child td{border-bottom:none}.mlp__name{font-weight:500;color:var(--text-primary, #1a1a1a)}.mlp__hours{font-weight:500;color:var(--accent-primary, #2563eb)}.mlp__row--inactive td{color:var(--text-muted, #6b7280);opacity:.6}:root[data-theme=dark] .mlp{border-color:var(--card-border, #334155);background:var(--card-bg, #1e293b)}:root[data-theme=dark] .mlp__header{background:var(--bg-primary, #0f172a);border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .mlp__title{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .mlp__summary{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .mlp__table thead th{color:var(--text-muted, #94a3b8);border-bottom-color:var(--card-border, #334155);background:var(--bg-primary, #0f172a)}:root[data-theme=dark] .mlp__table tbody td{color:var(--text-secondary, #cbd5e1);border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .mlp__name{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .mlp__hours{color:var(--accent-primary, #3b82f6)}.caf{border:1px solid var(--content-border, #e5e7eb);border-radius:6px;background:var(--content-surface, #ffffff);overflow:hidden}.caf__header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.caf__title{font-size:.8rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.caf__count{font-size:.7rem;color:var(--text-muted, #6b7280)}.caf__empty{padding:1rem .75rem;text-align:center;font-size:.8rem;color:var(--text-muted, #6b7280)}.caf__timeline,.caf__group{display:flex;flex-direction:column}.caf__date{padding:.3rem .75rem;font-size:.7rem;font-weight:600;color:var(--text-muted, #6b7280);background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--content-border, #e5e7eb)}.caf__entry{padding:.4rem .75rem;border-bottom:1px solid var(--content-border, #e5e7eb)}.caf__entry:last-child{border-bottom:none}.caf__group:not(:last-child) .caf__entry:last-child{border-bottom:1px solid var(--content-border, #e5e7eb)}.caf__entry-main{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;font-size:.8rem}.caf__user{font-weight:600;color:var(--text-primary, #1a1a1a)}.caf__action{color:var(--text-muted, #6b7280)}.caf__hours{font-weight:600;color:var(--accent-primary, #2563eb)}.caf__status{font-size:.7rem;padding:1px 5px;border-radius:3px;font-weight:500;text-transform:capitalize}.caf__status--billable{background:#dcfce7;color:#166534}.caf__status--non-billable{background:#fee2e2;color:#991b1b}.caf__status--pro-bono{background:#fef3c7;color:#92400e}.caf__time{margin-left:auto;font-size:.7rem;color:var(--text-muted, #6b7280)}.caf__desc{font-size:.75rem;color:var(--text-muted, #6b7280);margin-top:.2rem;padding-left:.5rem;border-left:2px solid var(--content-border, #e5e7eb)}.caf__footer{padding:.4rem .75rem;text-align:center;font-size:.7rem;color:var(--text-muted, #6b7280);border-top:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}:root[data-theme=dark] .caf{border-color:var(--card-border, #334155);background:var(--card-bg, #1e293b)}:root[data-theme=dark] .caf__header{background:var(--bg-primary, #0f172a);border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .caf__title{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .caf__count{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .caf__empty{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .caf__date{color:var(--text-muted, #94a3b8);background:var(--bg-primary, #0f172a);border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .caf__entry{border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .caf__user{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .caf__action{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .caf__hours{color:var(--accent-primary, #3b82f6)}:root[data-theme=dark] .caf__status--billable{background:#16653433;color:#86efac}:root[data-theme=dark] .caf__status--non-billable{background:#991b1b33;color:#fca5a5}:root[data-theme=dark] .caf__status--pro-bono{background:#92400e33;color:#fcd34d}:root[data-theme=dark] .caf__time{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .caf__desc{color:var(--text-muted, #94a3b8);border-left-color:var(--card-border, #334155)}:root[data-theme=dark] .caf__footer{border-top-color:var(--card-border, #334155);background:var(--bg-primary, #0f172a);color:var(--text-muted, #94a3b8)}@media (max-width: 768px){.caf__entry-main{font-size:.75rem}.caf__time{margin-left:0;width:100%}}.task-list-view{display:flex;flex-direction:column;border-radius:8px;border:1px solid var(--card-border, #e0e0e0);overflow:hidden}.task-list-view__empty{text-align:center;padding:3rem;background:var(--content-surface, #ffffff);border-radius:6px;margin:1rem 0;border:1px solid var(--content-border, #e5e7eb)}.task-list-view__empty h3{color:var(--text-primary, #1a1a1a);margin-bottom:.5rem;font-size:1rem;font-weight:600}.task-list-view__empty p{color:var(--text-muted, #6b7280);font-size:.875rem}.task-list-view__table-header{display:grid;grid-template-columns:2.5fr 1fr .7fr .8fr .8fr 1.5fr;gap:.75rem;padding:.75rem 1rem;background:var(--table-header-bg, #f8f9fa);border-bottom:2px solid var(--border-primary, #e0e0e0);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.3px;color:var(--text-primary, #2c3e50)}.task-list-view__item{background:var(--card-bg, #ffffff);border-bottom:1px solid var(--border-primary, #e0e0e0);border-left:none;border-right:none;border-top:none;border-radius:0;overflow:hidden;transition:background-color .2s ease}.task-list-view__item:last-child{border-bottom:none}.task-list-view__item:hover{background-color:var(--table-row-hover, #f3f4f6)}.task-list-view__item--multi-lawyer{border-left:none}.task-list-view__header{display:grid;grid-template-columns:2.5fr 1fr .7fr .8fr .8fr 1.5fr;gap:.75rem;padding:.6rem 1rem;cursor:pointer;align-items:center}.task-list-view__header:focus{outline:none}.task-list-view__header:focus-visible{outline:2px solid var(--accent-primary, #2563eb);outline-offset:-2px}.task-list-view__info,.task-list-view__row{display:contents}.task-list-view__col-name{display:flex;flex-direction:column;gap:2px;min-width:0}.task-list-view__title{font-weight:600;font-size:.9rem;color:var(--text-primary, #2c3e50);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-list-view__desc-preview{font-size:.8rem;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.task-list-view__relationships{display:inline-flex;gap:4px;margin-left:8px;flex-shrink:0}.task-list-view__rel-badge{font-size:.65rem;font-weight:600;padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.task-list-view__rel-badge--allocated{background:#dbeafe;color:#1e40af}.task-list-view__rel-badge--task-lead{background:#fef3c7;color:#92400e}.task-list-view__rel-badge--project-lead{background:#d1fae5;color:#065f46}.task-list-view__rel-badge--client-partner{background:#ede9fe;color:#5b21b6}:root[data-theme=dark] .task-list-view__rel-badge--allocated{background:#1e3a5f;color:#93c5fd}:root[data-theme=dark] .task-list-view__rel-badge--task-lead{background:#451a03;color:#fcd34d}:root[data-theme=dark] .task-list-view__rel-badge--project-lead{background:#064e3b;color:#6ee7b7}:root[data-theme=dark] .task-list-view__rel-badge--client-partner{background:#2e1065;color:#c4b5fd}.task-list-view__col-client{font-size:.85rem;color:var(--text-primary, #2c3e50)}.task-list-view__col-priority{font-size:.85rem;color:var(--text-primary, #2c3e50);text-transform:capitalize}.task-list-view__col-hours{font-size:.85rem;color:var(--text-primary, #2c3e50);font-weight:500}.task-list-view__col-due{font-size:.85rem;color:var(--text-primary, #2c3e50)}.task-list-view__col-due--overdue{color:#dc2626;font-weight:600}.task-list-view__actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-end}.task-list-view__time-entry-btn{background:transparent;color:var(--accent-primary, #2563eb);border:1px solid var(--accent-primary, #2563eb);padding:.3rem .7rem;border-radius:4px;font-size:.78rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease;white-space:nowrap}.task-list-view__time-entry-btn:hover{background:var(--accent-primary, #2563eb);color:#fff}.task-list-view__status-select{padding:.3rem .5rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);font-size:.78rem;cursor:pointer}.task-list-view__status-select:hover:not(:disabled){border-color:var(--accent-primary, #2563eb)}.task-list-view__status-select:disabled{opacity:.5;cursor:not-allowed}.task-list-view__status-btn{padding:.3rem .7rem;border-radius:4px;font-size:.78rem;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease,opacity .15s ease;white-space:nowrap}.task-list-view__status-btn:disabled{opacity:.4;cursor:not-allowed}.task-list-view__status-btn--start{background:transparent;color:var(--accent-primary, #2563eb);border:1px solid var(--accent-primary, #2563eb)}.task-list-view__status-btn--start:hover:not(:disabled){background:var(--accent-primary, #2563eb);color:#fff}.task-list-view__status-btn--complete{background:transparent;color:var(--status-success, #22c55e);border:1px solid var(--status-success, #22c55e)}.task-list-view__status-btn--complete:hover:not(:disabled){background:var(--status-success, #22c55e);color:#fff}.task-list-view__status-badge{padding:.3rem .7rem;border-radius:4px;font-size:.78rem;font-weight:500;white-space:nowrap}.task-list-view__status-badge--done{background:#22c55e1a;color:var(--status-success, #22c55e);border:1px solid transparent}.task-list-view__expand-icon{font-size:.75rem;color:var(--text-muted, #6b7280)}.task-list-view__details{border-top:1px solid var(--content-border, #e5e7eb);padding:.6rem 1rem;background:var(--bg-secondary, #f9fafb)}.task-list-view__metadata-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.task-list-view__meta-tag{font-size:.75rem;color:var(--text-muted, #6b7280);background:var(--content-surface, #ffffff);padding:.2rem .5rem;border-radius:4px;border:1px solid var(--content-border, #e5e7eb)}.task-list-view__meta-tag strong{color:var(--text-primary, #1a1a1a)}.task-list-view__notes{margin-bottom:.5rem}.task-list-view__notes p{color:var(--text-secondary, #4b5563);line-height:1.4;font-size:.8rem;font-style:italic;margin:0}.task-list-view__panels{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.task-list-view__panels:has(>:only-child){grid-template-columns:1fr}.task-list-view__panel{min-width:0}.task-list-view__time-entry-form{background:var(--content-surface, #ffffff);border:1px solid var(--accent-primary, #2563eb);border-radius:6px;padding:1rem;margin-bottom:1rem}.task-list-view__time-entry-form h5{color:var(--text-primary, #1a1a1a);margin-bottom:.75rem;font-size:.85rem;font-weight:600}:root[data-theme=dark] .task-list-view{border-color:#334155}:root[data-theme=dark] .task-list-view__table-header{background:#0f172a;color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .task-list-view__item{background:#1e293b;border-bottom-color:#334155}:root[data-theme=dark] .task-list-view__item:hover{background-color:#334155}:root[data-theme=dark] .task-list-view__title{color:#f8fafc}:root[data-theme=dark] .task-list-view__desc-preview{color:#94a3b8}:root[data-theme=dark] .task-list-view__col-client,:root[data-theme=dark] .task-list-view__col-priority,:root[data-theme=dark] .task-list-view__col-hours,:root[data-theme=dark] .task-list-view__col-due{color:#f8fafc}:root[data-theme=dark] .task-list-view__col-due--overdue{color:#ef4444}:root[data-theme=dark] .task-list-view__details{background:#0f172a}:root[data-theme=dark] .task-list-view__meta-tag{background:#1e293b;border-color:#334155;color:#94a3b8}:root[data-theme=dark] .task-list-view__meta-tag strong{color:#f8fafc}:root[data-theme=dark] .task-list-view__notes p{color:#cbd5e1}:root[data-theme=dark] .task-list-view__status-select{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .task-list-view__status-btn--start{color:#60a5fa;border-color:#60a5fa}:root[data-theme=dark] .task-list-view__status-btn--start:hover:not(:disabled){background:#60a5fa;color:#0f172a}:root[data-theme=dark] .task-list-view__status-btn--complete{color:#4ade80;border-color:#4ade80}:root[data-theme=dark] .task-list-view__status-btn--complete:hover:not(:disabled){background:#4ade80;color:#0f172a}:root[data-theme=dark] .task-list-view__status-badge--done{background:#4ade8026;color:#4ade80}@media (max-width: 768px){.task-list-view__table-header{display:none}.task-list-view__header{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.task-list-view__info{width:100%}.task-list-view__row{display:flex;flex-direction:column;gap:.25rem}.task-list-view__actions{width:100%;justify-content:flex-start}.task-list-view__metadata-grid,.task-list-view__panels{grid-template-columns:1fr}}.daily-progress-bar{background:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);padding:1rem 1.5rem;border-radius:6px;margin-bottom:1rem;border:1px solid var(--content-border, #e5e7eb);transition:background-color .25s ease,border-color .25s ease}.daily-progress-bar__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.daily-progress-bar__title{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary, #1a1a1a);letter-spacing:.02em;text-transform:uppercase}.daily-progress-bar__hours{font-size:.875rem;font-weight:600;color:var(--text-primary, #1a1a1a);padding:.25rem .75rem;border-radius:4px;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--content-border, #e5e7eb)}.daily-progress-bar__container{position:relative;background:var(--bg-secondary, #f3f4f6);height:8px;border-radius:4px;overflow:hidden;margin-bottom:.5rem;border:1px solid var(--content-border, #e5e7eb)}.daily-progress-bar__fill{height:100%;background:var(--accent-primary, #2563eb);border-radius:4px;transition:width .8s ease}.daily-progress-bar__fill--complete{background:var(--status-success, #22c55e)}.daily-progress-bar__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-weight:600;font-size:0;color:transparent;z-index:2;display:none}.daily-progress-bar__status{text-align:left}.daily-progress-bar__status-complete{color:var(--status-success, #22c55e);font-size:.8rem;font-weight:500;display:inline-block}.daily-progress-bar__status-pending{color:var(--text-muted, #6b7280);font-size:.8rem;font-weight:400;display:inline-block}[data-theme=dark] .daily-progress-bar{background:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155)}[data-theme=dark] .daily-progress-bar__hours{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155);color:var(--text-primary, #f1f5f9)}[data-theme=dark] .daily-progress-bar__container{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155)}@media (max-width: 768px){.daily-progress-bar{padding:.75rem 1rem}.daily-progress-bar__header{flex-direction:row;gap:.5rem}}.my-cases-page{padding:0;max-width:100%;margin:0;width:100%;transition:background-color .25s ease,color .25s ease}.cases-content{display:flex;flex-direction:column;gap:1rem}.office-filters-bar{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);border:1px solid var(--content-border, #e5e7eb);border-radius:6px;flex-wrap:wrap;transition:background-color .25s ease,border-color .25s ease}.office-filter-group,.office-filter-group .office-selector{display:flex;align-items:center;gap:.5rem}.office-filter-group .office-selector-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #4b5563);margin-bottom:0;white-space:nowrap}.office-filter-group .office-selector-select{min-width:160px;padding:.4rem .75rem;font-size:.875rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);cursor:pointer;transition:border-color .15s ease}.office-filter-group .office-selector-select:hover{border-color:var(--accent-primary, #2563eb)}.office-filter-group .office-selector-select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb14}.task-scope-filter-group{display:flex;align-items:center;gap:.5rem}.task-scope-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #4b5563);white-space:nowrap}.task-scope-select{padding:.375rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--bg-primary, #ffffff);color:var(--text-primary, #1a1a1a);cursor:pointer}.task-scope-select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb26}.my-cases-page .task-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;flex-wrap:wrap;background-color:transparent;border-bottom:1px solid var(--border-primary, #e5e7eb);margin-bottom:.5rem;padding-bottom:.75rem;transition:background-color .25s ease,border-color .25s ease}.my-cases-page .task-toolbar__left{display:flex;align-items:center;gap:10px;flex-shrink:0}.my-cases-page .task-toolbar__right{display:flex;align-items:center;gap:10px;flex-wrap:wrap;flex:1;justify-content:flex-end}.error-banner{background-color:#fef2f2;color:#b91c1c;padding:.75rem 1rem;border-radius:4px;margin-bottom:.75rem;display:flex;justify-content:space-between;align-items:center;border:1px solid #fecaca;font-size:.875rem;transition:background-color .25s ease,border-color .25s ease}.dismiss-error{background:none;border:none;color:#b91c1c;font-size:1.1rem;cursor:pointer;padding:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center}.loading{text-align:center;padding:3rem;color:var(--text-muted, #6b7280);font-size:.9rem}.no-entries{text-align:center;padding:3rem;background:var(--content-surface, #ffffff);border-radius:6px;margin:1rem 0;border:1px solid var(--content-border, #e5e7eb);transition:background-color .25s ease,border-color .25s ease}.no-entries h3{color:var(--text-primary, #1a1a1a);margin-bottom:.5rem;font-size:1rem;font-weight:600}.no-entries p{color:var(--text-muted, #6b7280);line-height:1.5;font-size:.875rem}.no-entries__reset-btn{margin-top:1rem;padding:.5rem 1rem;border:1px solid var(--accent-primary, #2563eb);border-radius:4px;background-color:transparent;color:var(--accent-primary, #2563eb);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.no-entries__reset-btn:hover{background-color:var(--accent-primary, #2563eb);color:#fff}.access-denied{text-align:center;padding:3rem;background:var(--content-surface, #ffffff);border-radius:6px;margin:2rem auto;max-width:500px;border:1px solid var(--content-border, #e5e7eb)}.access-denied h2{color:#b91c1c;margin-bottom:.5rem;font-size:1.1rem}.access-denied p{color:var(--text-muted, #6b7280);font-size:.875rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--content-surface, #ffffff);border-radius:8px;border:1px solid var(--content-border, #e5e7eb);box-shadow:0 4px 12px #00000014;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;transition:background-color .25s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb);border-radius:8px 8px 0 0}.modal-header h2{margin:0;color:var(--text-primary, #1a1a1a);font-size:1rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.25rem;color:var(--text-muted, #6b7280);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease}.modal-close:hover{background:var(--content-border, #e5e7eb);color:var(--text-primary, #1a1a1a)}.modal-body{padding:1.5rem}.tasks-list{display:flex;flex-direction:column;gap:.5rem}.task-card-main{background:var(--content-surface, #ffffff);border:1px solid var(--content-border, #e5e7eb);border-left:3px solid var(--accent-primary, #2563eb);border-radius:6px;overflow:hidden;transition:background-color .25s ease,border-color .25s ease}.task-card-main:hover{background-color:var(--bg-secondary, #f9fafb)}.task-header{padding:1rem 1.25rem;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;transition:background-color .15s ease}.task-basic-info h4{color:var(--text-primary, #1a1a1a);margin-bottom:.5rem;font-size:1rem;font-weight:600}.task-meta{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;margin-bottom:.5rem}.task-client{font-size:.8rem;color:var(--text-secondary, #4b5563);background:var(--bg-secondary, #f3f4f6);padding:.25rem .75rem;border-radius:3px;font-weight:500}.task-due-date{font-size:.8rem;color:#92400e;background:#fffbeb;padding:.25rem .75rem;border-radius:3px;font-weight:500}.task-progress{display:flex;gap:.5rem;align-items:center;font-size:.8rem}.hours-logged{color:var(--status-success, #22c55e);font-weight:600}.hours-estimated{color:var(--text-muted, #6b7280)}.task-actions-header{display:flex;gap:.75rem;align-items:center}.log-time-btn{background:transparent;color:var(--accent-primary, #2563eb);border:1px solid var(--accent-primary, #2563eb);padding:.4rem .8rem;border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s ease}.log-time-btn:hover{background:var(--accent-primary, #2563eb);color:#fff}.task-status{font-size:.7rem;padding:.2rem .6rem;border-radius:3px;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.task-status.pending{background:#fffbeb;color:#92400e}.task-status.in-progress{background:#eff6ff;color:#1d4ed8}.task-status.completed{background:#f0fdf4;color:#15803d}.task-priority{font-size:.7rem;padding:.2rem .6rem;border-radius:3px;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.task-priority.low{background:var(--bg-secondary, #f3f4f6);color:var(--text-muted, #6b7280)}.task-priority.medium{background:#fffbeb;color:#92400e}.task-priority.high{background:#fef2f2;color:#b91c1c}.status-select{padding:.3rem .6rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;background:var(--content-surface, #ffffff);color:var(--text-primary, #1a1a1a);font-size:.8rem;cursor:pointer;transition:border-color .15s ease}.status-select:hover{border-color:var(--accent-primary, #2563eb)}.status-select:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px #2563eb14}.case-details{border-top:1px solid var(--content-border, #e5e7eb);padding:1.25rem;background:var(--bg-secondary, #f9fafb);transition:background-color .25s ease}.case-description,.case-notes,.task-description,.task-notes{margin-bottom:1rem}.case-description h5,.case-notes h5,.task-description h5,.task-notes h5{color:var(--text-primary, #1a1a1a);margin-bottom:.5rem;font-size:.875rem;font-weight:600}.case-description p,.case-notes p,.task-description p,.task-notes p{color:var(--text-secondary, #4b5563);line-height:1.6;background:var(--content-surface, #ffffff);padding:.75rem;border-radius:4px;border:1px solid var(--content-border, #e5e7eb);font-size:.875rem}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.metadata-item{font-size:.8rem;color:var(--text-muted, #6b7280);background:var(--content-surface, #ffffff);padding:.5rem .75rem;border-radius:4px;border:1px solid var(--content-border, #e5e7eb)}.metadata-item strong{color:var(--text-primary, #1a1a1a)}.task-time-entry-form{background:var(--content-surface, #ffffff);border:1px solid var(--accent-primary, #2563eb);border-radius:6px;padding:1.25rem;margin-bottom:1rem}.task-time-entry-form h5{color:var(--accent-primary, #2563eb);margin-bottom:1rem;font-size:.9rem;font-weight:600}.task-time-entries{margin-bottom:1rem}.task-time-entries h5{color:var(--text-primary, #1a1a1a);margin-bottom:.75rem;font-size:.875rem;font-weight:600}.no-time-entries{color:var(--text-muted, #6b7280);font-style:italic;text-align:center;padding:1.5rem;background:var(--bg-secondary, #f9fafb);border-radius:4px;border:1px solid var(--content-border, #e5e7eb);font-size:.8rem}.time-entries-list{display:flex;flex-direction:column;gap:.5rem}.time-entry-item{background:var(--content-surface, #ffffff);border:1px solid var(--content-border, #e5e7eb);border-radius:4px;padding:.75rem;transition:background-color .15s ease}.time-entry-item:hover{background-color:var(--bg-secondary, #f9fafb)}.time-entry-header{display:flex;gap:.75rem;align-items:center;margin-bottom:.25rem;flex-wrap:wrap}.entry-date{font-weight:600;color:var(--text-primary, #1a1a1a);font-size:.8rem}.entry-hours{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563);padding:.15rem .5rem;border-radius:3px;font-size:.75rem;font-weight:500}.entry-status{font-size:.7rem;padding:.15rem .5rem;border-radius:3px;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.entry-status.billable{background:#f0fdf4;color:#15803d}.entry-status.non-billable{background:#fef2f2;color:#b91c1c}.entry-status.pro-bono{background:#eff6ff;color:#1d4ed8}.time-entry-description{color:var(--text-muted, #6b7280);line-height:1.5;font-size:.8rem}.task-details .multi-lawyer-progress,.task-details .collaborative-activity-feed{margin:1rem 0}.task-card-main.multi-lawyer{border-left-color:var(--accent-primary, #2563eb)}.multi-lawyer-indicator{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #4b5563);padding:.2rem .6rem;border-radius:3px;font-size:.75rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.multi-lawyer-indicator:before{content:"";font-size:0;display:none}.task-progress.multi-lawyer{background:var(--bg-secondary, #f9fafb);padding:.4rem .75rem;border-radius:4px;border:1px solid var(--content-border, #e5e7eb)}.collaborative-toggle{background:var(--accent-primary, #2563eb);color:#fff;border:none;padding:.3rem .6rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.collaborative-toggle:hover{background:var(--accent-hover, #1d4ed8)}.collaborative-toggle.active{background:var(--status-success, #22c55e)}.collaborative-toggle.active:hover{background:#16a34a}.collaborative-summary{color:var(--text-secondary, #4b5563);font-weight:500;font-size:.8rem}@media (max-width: 768px){.office-filters-bar{flex-direction:column;align-items:stretch;gap:.75rem}.office-filter-group{width:100%}.office-filter-group .office-selector{flex-direction:column;align-items:stretch;gap:.25rem}.office-filter-group .office-selector-select,.task-scope-filter-group{width:100%}.task-header{flex-direction:column;align-items:flex-start;gap:.75rem}.task-actions-header{width:100%;justify-content:space-between}.task-meta{flex-direction:column;align-items:flex-start;gap:.4rem}.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header,.modal-body{padding:1rem}.my-cases-page .task-toolbar{flex-direction:column;align-items:stretch;gap:10px}.my-cases-page .task-toolbar__left{justify-content:center;width:100%}.my-cases-page .task-toolbar__right{justify-content:center;width:100%;flex-wrap:wrap}.my-cases-page .task-toolbar__search{width:100%;max-width:100%}.my-cases-page .task-toolbar__search-input{width:100%}.my-cases-page .task-board-view{flex-direction:column;gap:12px;min-height:auto}.my-cases-page .task-board-view .status-column{min-width:100%;max-width:100%}}@media (max-width: 480px){.my-cases-page .task-toolbar__right{flex-direction:column;width:100%}.my-cases-page .task-toolbar__filter-group,.my-cases-page .task-toolbar__select,.my-cases-page .task-toolbar__client-filter{width:100%}.my-cases-page .task-toolbar__client-button{width:100%;justify-content:space-between}.cases-content{gap:.75rem}.log-time-btn{width:100%;max-width:140px}.task-actions-header{flex-direction:column;gap:.4rem;width:100%}.status-select{width:100%}}:root[data-theme=dark] .my-cases-page .task-toolbar{border-bottom-color:var(--border-primary, #334155)}:root[data-theme=dark] .office-filters-bar{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .office-filter-group .office-selector-label{color:var(--text-secondary, #cbd5e1)}:root[data-theme=dark] .office-filter-group .office-selector-select{background:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155);color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .task-scope-label{color:var(--text-secondary, #cbd5e1)}:root[data-theme=dark] .task-scope-select{background:var(--bg-secondary, #1e293b);color:var(--text-primary, #f8fafc);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .error-banner{background-color:#b91c1c1a;border-color:#b91c1c4d;color:#fca5a5}:root[data-theme=dark] .no-entries{background-color:var(--content-surface, #1e293b);border-color:var(--content-border, #334155)}:root[data-theme=dark] .no-entries h3{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .no-entries p{color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .task-card-main{background:var(--content-surface, #1e293b);border-color:var(--content-border, #334155)}:root[data-theme=dark] .task-card-main:hover{background-color:var(--bg-surface, #1e293b)}:root[data-theme=dark] .task-client{background:var(--bg-primary, #0f172a);color:var(--text-secondary, #cbd5e1)}:root[data-theme=dark] .task-due-date{background:#92400e26;color:#fcd34d}:root[data-theme=dark] .task-status.pending{background:#92400e26;color:#fbbf24}:root[data-theme=dark] .task-status.in-progress{background:#1d4ed826;color:#60a5fa}:root[data-theme=dark] .task-status.completed{background:#15803d26;color:#4ade80}:root[data-theme=dark] .task-priority.high{background:#b91c1c26;color:#fca5a5}:root[data-theme=dark] .task-priority.medium{background:#92400e26;color:#fcd34d}:root[data-theme=dark] .case-details{background:var(--bg-primary, #0f172a)}:root[data-theme=dark] .task-time-entry-form{background:var(--content-surface, #1e293b);border-color:var(--accent-primary, #3b82f6)}:root[data-theme=dark] .no-time-entries{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155);color:var(--text-muted, #94a3b8)}:root[data-theme=dark] .time-entry-item{background:var(--content-surface, #1e293b);border-color:var(--border-primary, #334155)}:root[data-theme=dark] .entry-hours{background:var(--bg-primary, #0f172a);color:var(--text-secondary, #cbd5e1)}:root[data-theme=dark] .entry-status.billable{background:#15803d26;color:#4ade80}:root[data-theme=dark] .entry-status.non-billable{background:#b91c1c26;color:#fca5a5}:root[data-theme=dark] .entry-status.pro-bono{background:#1d4ed826;color:#60a5fa}:root[data-theme=dark] .multi-lawyer-indicator{background:var(--bg-primary, #0f172a);color:var(--text-secondary, #cbd5e1)}:root[data-theme=dark] .task-progress.multi-lawyer{background:var(--bg-primary, #0f172a);border-color:var(--border-primary, #334155)}@media print{.my-cases-page .task-toolbar{display:none}.my-cases-page .daily-progress-bar{break-inside:avoid}.my-cases-page .task-board-view{flex-direction:column}.my-cases-page .status-column{break-inside:avoid;page-break-inside:avoid}}.task-panel{background:var(--content-surface, white);border-radius:12px;box-shadow:var(--card-shadow, 0 2px 8px rgba(0, 0, 0, .1));overflow:hidden;transition:var(--theme-transition)}.task-panel-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.25rem;border-bottom:1px solid var(--content-border, #e9ecef);background:var(--bg-secondary, linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%));transition:var(--theme-transition)}.header-left h3{margin:0 0 .5rem;color:var(--text-primary, #2c3e50);font-size:1.15rem;font-weight:600}.task-stats{display:flex;gap:1.25rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-number{font-size:1.15rem;font-weight:700;color:var(--accent-primary, #3498db);line-height:1}.stat-label{font-size:.7rem;color:var(--text-muted, #7f8c8d);text-transform:uppercase;letter-spacing:.5px;margin-top:.15rem}.stat-item.overdue .stat-number{color:var(--status-error, #e74c3c)}.header-right{display:flex;align-items:center;gap:1rem}.view-controls{display:flex;background:var(--content-surface, white);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a;border:1px solid var(--content-border, transparent)}.view-btn{padding:.5rem 1rem;border:none;background:var(--content-surface, white);color:var(--text-muted, #7f8c8d);cursor:pointer;transition:all .3s ease;font-weight:500}.view-btn:hover{background:var(--bg-secondary, #f8f9fa);color:var(--text-primary, #2c3e50)}.view-btn.active{background:var(--accent-primary, #3498db);color:#fff}.task-filters{display:flex;gap:1rem;padding:.6rem 1.25rem;background:var(--bg-secondary, #f8f9fa);border-bottom:1px solid var(--content-border, #e9ecef);transition:var(--theme-transition)}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500;color:var(--text-primary, #2c3e50);font-size:.9rem}.filter-group select{padding:.5rem;border:1px solid var(--input-border, #dee2e6);border-radius:6px;background:var(--input-bg, white);color:var(--input-text, #2c3e50);font-size:.9rem;transition:var(--theme-transition)}.task-content{padding:1rem 1.25rem;background:var(--content-surface, white);transition:var(--theme-transition)}.tasks-list-view{overflow-x:auto;border-radius:8px;border:1px solid var(--card-border, #e0e0e0);transition:var(--theme-transition)}.tasks-table{width:100%;min-width:1000px;border-collapse:collapse;font-size:.9rem}.task-panel .table-header{display:grid;grid-template-columns:2fr .7fr .7fr .7fr 1.2fr 1.5fr .8fr .8fr .8fr;gap:.75rem;padding:.75rem 1rem;background:var(--table-header-bg, #f8f9fa);border-bottom:2px solid var(--border-primary, #e0e0e0);font-weight:600;color:var(--text-primary, #2c3e50);font-size:.8rem;text-transform:uppercase;letter-spacing:.3px}.task-panel .table-row{display:grid;grid-template-columns:2fr .7fr .7fr .7fr 1.2fr 1.5fr .8fr .8fr .8fr;gap:.75rem;padding:.6rem 1rem;border-bottom:1px solid var(--border-primary, #e0e0e0);align-items:center;background:var(--card-bg, #ffffff);transition:background-color .2s ease}.task-panel .table-row:last-child{border-bottom:none}.task-panel .table-row:hover{background-color:var(--table-row-hover, #f3f4f6)}.col-task strong{color:var(--text-primary, #2c3e50);font-size:.9rem;font-weight:600;display:block;margin-bottom:.15rem}.task-description{color:var(--text-muted, #7f8c8d);font-size:.8rem;margin:0;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.partner-name{font-weight:500;font-size:.85rem;color:var(--text-primary, #2c3e50)}.lawyers-list{display:flex;flex-wrap:wrap;gap:.25rem}.task-panel .lawyers-list .lawyer-tag{color:var(--text-primary, #2c3e50);font-size:.8rem;font-weight:500;background:none;padding:0;border-radius:0}.task-panel .lawyers-list .lawyer-tag:not(:last-child):after{content:","}.no-lawyers{color:var(--text-muted, #95a5a6);font-style:italic;font-size:.8rem}.lawyer-count-badge{font-size:.8rem;color:var(--text-secondary, #4b5563);cursor:default}.hours-display{font-weight:500;font-size:.85rem;color:var(--text-primary, #2c3e50)}.due-date{font-size:.85rem;color:var(--text-primary, #2c3e50)}.due-date.overdue{color:var(--status-error, #e74c3c);font-weight:600}.no-due-date{color:var(--text-muted, #95a5a6);font-style:italic;font-size:.8rem}.col-actions{display:flex;gap:.5rem}.tasks-kanban-view{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;min-height:500px}.kanban-column{background:var(--bg-secondary, #f8f9fa);border-radius:8px;overflow:hidden;border:1px solid var(--content-border, transparent);transition:var(--theme-transition)}.kanban-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-tertiary, #e9ecef);border-bottom:1px solid var(--content-border, #dee2e6);transition:var(--theme-transition)}.kanban-header h4{margin:0;color:var(--text-primary, #2c3e50);font-size:1rem;font-weight:600}.task-count{background:var(--accent-primary, #3498db);color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:600}.kanban-tasks{padding:1rem;display:flex;flex-direction:column;gap:1rem;min-height:400px}.kanban-card{background:var(--content-surface, white);border-radius:8px;padding:1rem;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));border-left:4px solid var(--accent-primary, #3498db);transition:transform .2s ease,box-shadow .2s ease,var(--theme-transition)}.kanban-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.card-header h5{margin:0;color:var(--text-primary, #2c3e50);font-size:1rem;font-weight:600;flex:1;margin-right:.5rem}.card-description{color:var(--text-muted, #7f8c8d);font-size:.85rem;margin:0 0 1rem;line-height:1.4}.card-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{display:flex;align-items:flex-start;gap:.5rem;font-size:.85rem;color:var(--text-secondary, #5a6c7d)}.detail-row strong{color:var(--text-primary, #2c3e50);min-width:60px;font-weight:500}.lawyers-compact{display:flex;flex-wrap:wrap;gap:.25rem}.lawyer-tag-small{background:var(--tag-bg, #e3f2fd);color:var(--tag-text, #1976d2);padding:.1rem .4rem;border-radius:3px;font-size:.7rem;font-weight:500}.card-actions{display:flex;justify-content:flex-end;gap:.5rem}.task-panel .status-badge{font-size:.8rem;font-weight:500;text-transform:capitalize;color:var(--text-primary, #2c3e50);padding:0;border-radius:0;background:none}.task-panel .status-pending{color:var(--text-muted, #7f8c8d);background:none}.task-panel .status-in-progress,.task-panel .status-completed{color:var(--text-primary, #2c3e50);background:none}.task-panel .priority-badge{font-size:.8rem;font-weight:500;text-transform:capitalize;color:var(--text-primary, #2c3e50);padding:0;border-radius:0;background:none}.task-panel .priority-low{color:var(--text-muted, #7f8c8d);background:none}.task-panel .priority-medium{color:var(--text-primary, #2c3e50);background:none}.task-panel .priority-high{color:var(--status-error, #e74c3c);font-weight:600;background:none}.task-panel .billable-badge{font-size:.8rem;font-weight:500;text-transform:capitalize;color:var(--text-primary, #2c3e50);padding:0;border-radius:0;background:none}.task-panel .billable-billable{color:var(--text-primary, #2c3e50);background:none}.task-panel .billable-non-billable,.task-panel .billable-pro-bono{color:var(--text-muted, #7f8c8d);background:none}.task-panel .lawyer-tag{color:var(--text-primary, #2c3e50);font-size:.8rem;font-weight:500;background:none;padding:0;border-radius:0}.col-billable{text-align:center}.task-form{max-height:80vh;overflow-y:auto}.large-modal .modal-content{max-width:900px;width:90%}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;color:var(--text-primary, #2c3e50);font-size:1.2rem;font-weight:600;border-bottom:2px solid var(--accent-primary, #3498db);padding-bottom:.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary, #2c3e50);font-weight:500;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid var(--input-border, #e9ecef);border-radius:8px;font-size:1rem;transition:border-color .3s ease,var(--theme-transition);background:var(--input-bg, white);color:var(--input-text, #2c3e50)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary, #3498db);box-shadow:0 0 0 3px var(--input-focus-ring, rgba(52, 152, 219, .1))}.form-help{color:var(--text-muted, #7f8c8d);font-size:.9rem;margin:0 0 1rem;line-height:1.4}.info-message{color:var(--status-info, #17a2b8);font-size:.8rem;margin-top:.25rem;font-style:italic}.warning-message{color:var(--status-error, #e74c3c);font-size:.85rem;margin-top:.5rem;padding:.5rem;background:var(--warning-bg, #fdf2f2);border-radius:4px;border-left:3px solid var(--status-error, #e74c3c)}.lawyers-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-top:1rem}.lawyer-checkbox{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px;cursor:pointer;transition:background-color .2s ease,var(--theme-transition);font-weight:500;color:var(--text-primary, #2c3e50)}.lawyer-checkbox:hover{background:var(--bg-tertiary, #e9ecef)}.lawyer-checkbox input[type=checkbox]{width:auto;margin:0}.checkmark{width:20px;height:20px;border:2px solid var(--input-border, #dee2e6);border-radius:4px;position:relative;transition:all .2s ease}.lawyer-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:700;font-size:12px}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:2rem;border-top:1px solid var(--content-border, #e9ecef)}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;box-shadow:0 2px 4px #3498db4d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f5f8b);transform:translateY(-1px);box-shadow:0 4px 8px #3498db66}.btn-primary:disabled{background:#bdc3c7;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:#f8f9fa;color:#2c3e50;border:2px solid #e9ecef}.btn-secondary:hover{background:#e9ecef;border-color:#dee2e6}.btn-danger{background:#e74c3c;color:#fff}.btn-small{padding:.5rem 1rem;font-size:.85rem}@media (max-width: 1200px){.tasks-table{min-width:900px}.task-panel .table-header,.task-panel .table-row{grid-template-columns:2fr .7fr .7fr .7fr 1.2fr 1.5fr .8fr .8fr .8fr}}@media (max-width: 768px){.task-panel-header{flex-direction:column;gap:1rem;align-items:stretch}.header-right{justify-content:space-between}.task-stats{justify-content:space-around}.tasks-kanban-view{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:1rem}.form-row,.lawyers-selection{grid-template-columns:1fr}.large-modal .modal-content{width:95%;margin:1rem}}@media (max-width: 480px){.task-panel-header,.task-content{padding:1rem}.task-filters{flex-direction:column;gap:.5rem}.view-controls{width:100%}.view-btn{flex:1}}:root[data-theme=dark] .task-panel{background:#1e293b;box-shadow:0 2px 8px #0000004d}:root[data-theme=dark] .task-panel-header{background:#0f172a;border-bottom-color:#334155}:root[data-theme=dark] .header-left h3{color:#f8fafc}:root[data-theme=dark] .stat-label{color:#94a3b8}:root[data-theme=dark] .view-controls{background:#334155;border-color:#475569}:root[data-theme=dark] .view-btn{background:#334155;color:#94a3b8}:root[data-theme=dark] .view-btn:hover{background:#475569;color:#f8fafc}:root[data-theme=dark] .view-btn.active{background:#3b82f6;color:#fff}:root[data-theme=dark] .task-filters{background:#0f172a;border-bottom-color:#334155}:root[data-theme=dark] .filter-group label{color:#f8fafc}:root[data-theme=dark] .filter-group select{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .task-content{background:#1e293b}:root[data-theme=dark] .task-panel .table-header{color:#f8fafc;border-bottom-color:#334155;background-color:#0f172a}:root[data-theme=dark] .task-panel .table-row{border-bottom-color:#334155;background-color:#1e293b}:root[data-theme=dark] .task-panel .table-row:hover{background-color:#334155}:root[data-theme=dark] .tasks-list-view{border-color:#334155}:root[data-theme=dark] .col-task strong{color:#f8fafc}:root[data-theme=dark] .task-description{color:#94a3b8}:root[data-theme=dark] .partner-name{color:#f8fafc}:root[data-theme=dark] .task-panel .lawyer-tag{color:#e2e8f0;background:none}:root[data-theme=dark] .no-lawyers{color:#64748b}:root[data-theme=dark] .hours-display{color:#f8fafc}:root[data-theme=dark] .due-date{color:#f8fafc}:root[data-theme=dark] .no-due-date{color:#64748b}:root[data-theme=dark] .kanban-column{background:#0f172a;border-color:#334155}:root[data-theme=dark] .kanban-header{background:#1e293b;border-bottom-color:#334155}:root[data-theme=dark] .kanban-header h4{color:#f8fafc}:root[data-theme=dark] .kanban-card{background:#1e293b;box-shadow:0 2px 4px #0000004d}:root[data-theme=dark] .kanban-card:hover{box-shadow:0 4px 12px #0006}:root[data-theme=dark] .card-header h5{color:#f8fafc}:root[data-theme=dark] .card-description{color:#94a3b8}:root[data-theme=dark] .detail-row{color:#94a3b8}:root[data-theme=dark] .detail-row strong{color:#f8fafc}:root[data-theme=dark] .lawyer-tag-small{background:#1e3a5f;color:#60a5fa}:root[data-theme=dark] .form-section h3{color:#f8fafc}:root[data-theme=dark] .form-group label{color:#f8fafc}:root[data-theme=dark] .form-group input,:root[data-theme=dark] .form-group select,:root[data-theme=dark] .form-group textarea{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .form-group input:focus,:root[data-theme=dark] .form-group select:focus,:root[data-theme=dark] .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}:root[data-theme=dark] .form-help{color:#94a3b8}:root[data-theme=dark] .warning-message{background:#ef44441a;color:#f87171;border-left-color:#ef4444}:root[data-theme=dark] .lawyer-checkbox{background:#334155;color:#f8fafc}:root[data-theme=dark] .lawyer-checkbox:hover{background:#475569}:root[data-theme=dark] .checkmark{border-color:#475569}:root[data-theme=dark] .form-actions{border-top-color:#334155}:root[data-theme=dark] .btn-secondary{background:#334155;color:#f8fafc;border-color:#475569}:root[data-theme=dark] .btn-secondary:hover{background:#475569;border-color:#64748b}:root[data-theme=dark] .task-panel .status-pending{color:#94a3b8;background:none}:root[data-theme=dark] .task-panel .status-in-progress{color:#e2e8f0;background:none}:root[data-theme=dark] .task-panel .status-completed{color:#e2e8f0;background:none}:root[data-theme=dark] .task-panel .priority-low{color:#94a3b8;background:none}:root[data-theme=dark] .task-panel .priority-medium{color:#e2e8f0;background:none}:root[data-theme=dark] .task-panel .priority-high{color:#f87171;background:none}:root[data-theme=dark] .task-panel .status-badge,:root[data-theme=dark] .task-panel .priority-badge,:root[data-theme=dark] .task-panel .billable-badge{background:none}.autocomplete-container{position:relative;width:100%}.autocomplete-container label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #2c3e50)}.autocomplete-input-wrapper{position:relative;display:flex;align-items:center}.autocomplete-input-wrapper input{width:100%;padding:.75rem 2.5rem .75rem .75rem;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:1rem;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);transition:border-color .2s,box-shadow .2s}.autocomplete-input-wrapper input:focus{outline:none;border-color:var(--accent-primary, #3498db);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(52, 152, 219, .2))}.autocomplete-input-wrapper input:disabled{background-color:var(--input-disabled-bg, #f5f5f5);cursor:not-allowed;opacity:.7}.autocomplete-clear{position:absolute;right:.5rem;background:none;border:none;font-size:1.25rem;color:var(--text-muted, #6b7280);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:50%;transition:color .2s,background-color .2s}.autocomplete-clear:hover{color:var(--text-primary, #2c3e50);background-color:var(--hover-bg, rgba(0, 0, 0, .05))}.autocomplete-suggestions{position:absolute;top:100%;left:0;right:0;z-index:1000;max-height:200px;overflow-y:auto;margin:0;padding:0;list-style:none;background:var(--card-bg, #ffffff);border:1px solid var(--input-border, #ddd);border-top:none;border-radius:0 0 4px 4px;box-shadow:0 4px 6px #0000001a}.autocomplete-suggestions li{padding:.75rem 1rem;cursor:pointer;transition:background-color .15s;color:var(--text-primary, #2c3e50)}.autocomplete-suggestions li:hover,.autocomplete-suggestions li.highlighted{background-color:var(--hover-bg, #f0f7ff)}.autocomplete-suggestions li[aria-selected=true]{background-color:var(--accent-primary, #3498db);color:#fff}:root[data-theme=dark] .autocomplete-container label{color:#f8fafc}:root[data-theme=dark] .autocomplete-input-wrapper input{background-color:#1e293b;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .autocomplete-input-wrapper input:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}:root[data-theme=dark] .autocomplete-input-wrapper input:disabled{background-color:#334155}:root[data-theme=dark] .autocomplete-clear{color:#94a3b8}:root[data-theme=dark] .autocomplete-clear:hover{color:#f8fafc;background-color:#ffffff1a}:root[data-theme=dark] .autocomplete-suggestions{background-color:#1e293b;border-color:#475569;box-shadow:0 4px 6px #0000004d}:root[data-theme=dark] .autocomplete-suggestions li{color:#f8fafc}:root[data-theme=dark] .autocomplete-suggestions li:hover,:root[data-theme=dark] .autocomplete-suggestions li.highlighted{background-color:#334155}:root[data-theme=dark] .autocomplete-suggestions li[aria-selected=true]{background-color:#3b82f6}.autocomplete-suggestions::-webkit-scrollbar{width:6px}.autocomplete-suggestions::-webkit-scrollbar-track{background:transparent}.autocomplete-suggestions::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb, #c1c1c1);border-radius:3px}:root[data-theme=dark] .autocomplete-suggestions::-webkit-scrollbar-thumb{background-color:#475569}.autocomplete-suggestions li.add-custom-option{border-top:1px solid var(--input-border, #ddd);background-color:var(--bg-secondary, #f8f9fa)}.autocomplete-suggestions li.add-custom-option:hover,.autocomplete-suggestions li.add-custom-option.highlighted{background-color:var(--accent-light, #e8f4fd)}.add-custom-text{display:flex;align-items:center;gap:.5rem;color:var(--accent-primary, #3498db);font-weight:500}.add-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background-color:var(--accent-primary, #3498db);color:#fff;border-radius:50%;font-size:.875rem;font-weight:700}:root[data-theme=dark] .autocomplete-suggestions li.add-custom-option{border-top-color:#475569;background-color:#1e293b}:root[data-theme=dark] .autocomplete-suggestions li.add-custom-option:hover,:root[data-theme=dark] .autocomplete-suggestions li.add-custom-option.highlighted{background-color:#2d3a4d}:root[data-theme=dark] .add-custom-text{color:#60a5fa}:root[data-theme=dark] .add-icon{background-color:#3b82f6}.client-management-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}.client-management-content{background:var(--content-surface, #ffffff);border-radius:var(--border-radius-lg, 8px);padding:1.5rem;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .05));border:1px solid var(--content-border, #e5e5e5);transition:var(--theme-transition)}.overview-header{margin-bottom:2rem}.cap-summary-bar{margin-bottom:1.5rem;background:var(--content-surface, #f8fafc);border:1px solid var(--content-border, #e2e8f0);border-radius:var(--border-radius-lg, 8px);font-size:.875rem;overflow:hidden}.cap-summary-header{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.25rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.cap-summary-header:hover{background:var(--input-bg, #f1f5f9)}.cap-summary-title{display:flex;align-items:center;gap:.4rem;font-weight:600;color:var(--text-secondary, #64748b);white-space:nowrap}.cap-summary-stats{display:flex;gap:1rem;flex:1}.cap-stat{display:flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:4px;background:var(--input-bg, #f1f5f9)}.cap-stat-value{font-weight:700;font-size:.95rem}.cap-stat-label{color:var(--text-secondary, #64748b);font-size:.8rem}.cap-stat-healthy .cap-stat-value{color:#22c55e}.cap-stat-warning .cap-stat-value{color:#f59e0b}.cap-stat-warning{background:#f59e0b1a}.cap-stat-critical .cap-stat-value{color:#ef4444}.cap-stat-critical{background:#ef44441a}.cap-stat-exceeded .cap-stat-value{color:#ef4444;font-weight:800}.cap-stat-exceeded{background:#ef444426}.cap-summary-totals{display:flex;align-items:center;gap:.3rem;margin-left:auto;white-space:nowrap;font-size:.85rem}.cap-total-spent{font-weight:600;color:var(--text-primary, #1e293b)}.cap-total-separator{color:var(--text-secondary, #94a3b8)}.cap-total-cap{color:var(--text-secondary, #64748b)}.cap-total-pct{color:var(--text-secondary, #64748b);font-size:.8rem}:root[data-theme=dark] .cap-summary-bar{background:#1e293b;border-color:#334155}:root[data-theme=dark] .cap-stat{background:#334155}:root[data-theme=dark] .cap-stat-warning{background:#f59e0b26}:root[data-theme=dark] .cap-stat-critical{background:#ef444426}:root[data-theme=dark] .cap-stat-exceeded{background:#ef444433}.cap-detail-panel{border-top:1px solid var(--content-border, #e2e8f0);padding:.75rem 1.25rem 1rem;max-height:320px;overflow-y:auto}.cap-detail-table{width:100%;border-collapse:collapse;font-size:.85rem}.cap-detail-table thead th{text-align:left;padding:.4rem .6rem;font-weight:600;color:var(--text-secondary, #64748b);border-bottom:1px solid var(--content-border, #e2e8f0);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.cap-detail-table thead th:nth-child(3),.cap-detail-table thead th:nth-child(4),.cap-detail-table thead th:nth-child(5){text-align:right}.cap-detail-table tbody td{padding:.5rem .6rem;color:var(--text-primary, #1e293b);border-bottom:1px solid var(--content-border, #f1f5f9)}.cap-detail-row{cursor:pointer;transition:background .12s}.cap-detail-row:hover{background:var(--input-bg, #f1f5f9)}.cap-detail-number{text-align:right;font-variant-numeric:tabular-nums}.cap-detail-pct{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}.cap-pct-healthy{color:#22c55e}.cap-pct-warning{color:#f59e0b}.cap-pct-critical{color:#ef4444}.cap-pct-exceeded{color:#ef4444;font-weight:800}.cap-detail-bar-cell{width:120px;min-width:80px}.cap-progress-track{height:8px;background:var(--input-bg, #e2e8f0);border-radius:4px;overflow:hidden}.cap-progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.cap-fill-healthy{background:#22c55e}.cap-fill-warning{background:#f59e0b}.cap-fill-critical,.cap-fill-exceeded{background:#ef4444}:root[data-theme=dark] .cap-detail-panel{border-top-color:#334155}:root[data-theme=dark] .cap-detail-table tbody td{border-bottom-color:#1e293b}:root[data-theme=dark] .cap-detail-row:hover{background:#334155}:root[data-theme=dark] .cap-progress-track{background:#334155}:root[data-theme=dark] .cap-summary-header:hover{background:#334155}.search-and-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.search-box{flex:1;max-width:400px;min-width:200px}.search-input{width:100%;padding:.75rem;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:1rem;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);transition:var(--theme-transition)}.search-input:focus{outline:none;border-color:var(--accent-primary, #3498db);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(52, 152, 219, .2))}.view-toggle-container{display:flex;align-items:center}.client-view-toggle{display:flex;align-items:center;gap:4px;padding:4px;border-radius:8px;background-color:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);transition:var(--theme-transition)}.view-toggle-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;background-color:transparent;color:var(--text-muted, #6b7280);font-family:inherit;font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .25s ease,color .25s ease,box-shadow .25s ease}.view-toggle-btn:hover{color:var(--text-primary, #1a1a1a)}.view-toggle-btn.active{background-color:var(--content-surface, #ffffff);color:var(--accent-primary, #2563eb);box-shadow:0 1px 3px #0000001a}.view-toggle-btn svg{flex-shrink:0}.clients-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--card-border, #e0e0e0);transition:var(--theme-transition)}.clients-table{width:100%;border-collapse:collapse;font-size:.9rem}.clients-table thead{background:var(--table-header-bg, #f8f9fa);transition:var(--theme-transition)}.clients-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary, #2c3e50);border-bottom:2px solid var(--border-primary, #e0e0e0);white-space:nowrap;transition:var(--theme-transition)}.clients-table tbody tr{background:var(--card-bg, #ffffff);transition:background-color .2s ease,var(--theme-transition);cursor:pointer}.clients-table tbody tr:hover{background:var(--table-row-hover, #f3f4f6)}.clients-table td{padding:1rem;border-bottom:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.client-name-cell{display:flex;flex-direction:column;gap:2px}.client-name{font-weight:600;color:var(--text-primary, #2c3e50)}.client-location{font-size:.8rem;color:var(--text-muted, #6b7280)}.contact-cell{display:flex;flex-direction:column;gap:2px}.contact-email-small{font-size:.8rem;color:var(--accent-primary, #3498db)}.projects-count{font-weight:600;margin-right:4px}.active-count{font-size:.8rem;color:var(--text-muted, #6b7280)}:root[data-theme=dark] .client-view-toggle{background-color:#1e293b;border-color:#334155}:root[data-theme=dark] .view-toggle-btn{color:#94a3b8}:root[data-theme=dark] .view-toggle-btn:hover{color:#f8fafc}:root[data-theme=dark] .view-toggle-btn.active{background-color:#334155;color:#3b82f6}:root[data-theme=dark] .clients-table-container{border-color:#334155}:root[data-theme=dark] .clients-table thead{background-color:#0f172a}:root[data-theme=dark] .clients-table th{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .clients-table tbody tr{background-color:#1e293b}:root[data-theme=dark] .clients-table tbody tr:hover{background-color:#334155}:root[data-theme=dark] .clients-table td{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .client-name{color:#f8fafc}:root[data-theme=dark] .client-location{color:#94a3b8}:root[data-theme=dark] .contact-email-small{color:#60a5fa}:root[data-theme=dark] .active-count{color:#94a3b8}.search-input::placeholder{color:var(--input-placeholder, #9ca3af)}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.client-card{border:1px solid var(--card-border, #e0e0e0);border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s ease,var(--theme-transition);background:var(--card-bg, white)}.client-card:hover{border-color:var(--accent-primary, #3498db);box-shadow:var(--card-shadow, 0 4px 8px rgba(0, 0, 0, .1));transform:translateY(-2px)}.client-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.client-header h3{margin:0;color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.client-info p{margin:.5rem 0;color:var(--text-muted, #7f8c8d);transition:var(--theme-transition)}.back-button{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;color:var(--text-secondary, #4b5563);font-size:.875rem;font-weight:500;cursor:pointer;padding:.4rem .6rem;border-radius:6px;margin-bottom:1rem;transition:background-color .15s ease,color .15s ease}.back-button:hover{background:var(--table-row-hover, #f3f4f6);color:var(--text-primary, #1a1a1a)}:root[data-theme=dark] .back-button{color:#94a3b8}:root[data-theme=dark] .back-button:hover{background:#334155;color:#f8fafc}.client-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-primary, #e0e0e0);transition:var(--theme-transition)}.client-title-section h2{margin:0 0 .5rem;color:var(--text-primary, #2c3e50);font-size:1.35rem;transition:var(--theme-transition)}.client-meta-inline{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.meta-item{color:var(--text-secondary, #7f8c8d);font-size:.8rem;padding:.15rem .6rem;background:var(--bg-secondary, #f8f9fa);border-radius:4px;border:1px solid var(--border-primary, #e9ecef);transition:var(--theme-transition)}.meta-location{font-weight:500}.country-underline{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px;color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.client-actions{display:flex;gap:1rem;flex-shrink:0}.client-info-compact{background:var(--bg-secondary, #f8f9fa);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.25rem;border:1px solid var(--border-primary, #e9ecef);transition:var(--theme-transition)}.info-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:.75rem}.info-group h4{margin:0 0 .5rem;color:var(--text-primary, #2c3e50);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--accent-primary, #3498db);padding-bottom:.2rem;display:inline-block;transition:var(--theme-transition)}.contact-details{display:flex;flex-direction:column;gap:.25rem}.contact-name{font-weight:600;color:var(--text-primary, #2c3e50);font-size:.95rem;transition:var(--theme-transition)}.contact-email{color:var(--accent-primary, #3498db);text-decoration:none;font-size:.85rem;transition:var(--theme-transition)}.contact-email:hover{text-decoration:underline}.contact-phone{color:var(--text-muted, #7f8c8d);font-size:.85rem;transition:var(--theme-transition)}.registration-number{color:var(--text-muted, #7f8c8d);font-size:.8rem;padding-top:.35rem;border-top:1px dashed var(--border-primary, #e0e0e0);margin-top:.35rem;transition:var(--theme-transition)}.team-details{display:flex;flex-direction:column;gap:.75rem}.lawyers-compact{display:flex;flex-wrap:wrap;gap:.35rem}.lawyer-tag{background:var(--accent-primary, #3498db);color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.8rem;font-weight:500}.lawyer-tag-partner{background:linear-gradient(135deg,#d97706,#b45309);color:#fff;box-shadow:0 1px 3px #d977064d}.partner-indicator{font-size:.7rem}.address-section{border-top:1px solid var(--border-primary, #e0e0e0);padding-top:.6rem;transition:var(--theme-transition)}.address-section h4{margin:0 0 .25rem;color:var(--text-primary, #2c3e50);font-size:.85rem;font-weight:600;transition:var(--theme-transition)}.address-text{color:var(--text-muted, #7f8c8d);margin:0;font-size:.85rem;line-height:1.3;transition:var(--theme-transition)}.client-stats{display:flex;gap:1.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e0e0e0);font-size:.9rem;transition:var(--theme-transition)}.projects-section h3{color:var(--text-primary, #2c3e50);margin-bottom:1rem;transition:var(--theme-transition)}.projects-list{display:grid;gap:1rem}.project-card{border:1px solid var(--card-border, #e0e0e0);border-radius:6px;padding:1rem;cursor:pointer;transition:all .2s ease,var(--theme-transition);background:var(--card-bg, white)}.project-card:hover{border-color:var(--accent-primary, #3498db);box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1))}.project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.project-header h4{margin:0;color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.project-description{color:var(--text-muted, #7f8c8d);margin:.25rem 0 .5rem;font-size:.85rem;transition:var(--theme-transition)}.project-stats{display:flex;gap:1.5rem;font-size:.9rem;color:var(--text-muted, #7f8c8d);transition:var(--theme-transition)}.project-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-primary, #e0e0e0);transition:var(--theme-transition)}.project-info-section h2{margin:0 0 .25rem;color:var(--text-primary, #2c3e50);font-size:1.25rem;transition:var(--theme-transition)}.project-meta{display:flex;gap:1.25rem;margin-top:.5rem;font-size:.85rem;color:var(--text-muted, #7f8c8d);flex-wrap:wrap;transition:var(--theme-transition)}.project-actions{display:flex;gap:1rem}.tasks-section h3{color:var(--text-primary, #2c3e50);margin-bottom:1rem;transition:var(--theme-transition)}.tasks-table{border:1px solid var(--table-border, #e0e0e0);border-radius:6px;overflow:hidden;transition:var(--theme-transition)}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--table-header-bg, #f8f9fa);font-weight:600;color:var(--text-primary, #2c3e50);border-bottom:1px solid var(--table-border, #e0e0e0);transition:var(--theme-transition)}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-primary, #f0f0f0);align-items:center;background:var(--card-bg, white);transition:var(--theme-transition)}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--table-row-hover, #f8f9fa)}.col-task strong{color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.task-description{margin:.25rem 0 0;font-size:.9rem;color:var(--text-muted, #7f8c8d);transition:var(--theme-transition)}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:capitalize}.status-active{background:#22c55e26;color:#22c55e}.status-inactive{background:#ef444426;color:#ef4444}.status-pending{background:#f59e0b26;color:#f59e0b}.status-in-progress{background:#3b82f626;color:#3b82f6}.status-completed{background:#22c55e26;color:#22c55e}.status-on-hold{background:#6b728026;color:var(--text-muted, #6b7280)}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease,var(--theme-transition);text-decoration:none;display:inline-block}.btn-primary{background:var(--button-primary-bg, #3498db);color:var(--button-primary-text, white)}.btn-primary:hover{background:var(--button-primary-hover, #2980b9)}.btn-secondary{background:var(--content-background, #f3f4f6);color:var(--content-text, #374151);border:1px solid var(--content-border, #e5e7eb)}.btn-secondary:hover{background:var(--content-border, #e5e7eb)}.btn-danger{background:var(--status-error, #e74c3c);color:#fff}.btn-danger:hover{background:#c0392b}.btn-danger:disabled{background:var(--text-muted, #95a5a6);cursor:not-allowed}.btn-small{padding:.25rem .5rem;font-size:.8rem}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;height:50vh;text-align:center;color:var(--status-error, #e74c3c)}.access-denied h2{margin-bottom:1rem}.access-denied p{color:var(--text-muted, #7f8c8d)}.no-clients,.no-projects{text-align:center;padding:3rem;color:var(--text-muted, #7f8c8d);background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px dashed var(--border-primary, #e0e0e0);transition:var(--theme-transition)}.no-clients h3,.no-projects h3{color:var(--text-primary, #2c3e50);margin-bottom:.5rem;transition:var(--theme-transition)}.loading-message{text-align:center;padding:2rem;color:var(--text-muted, #7f8c8d);font-style:italic;transition:var(--theme-transition)}.error-message{text-align:center;padding:2rem;color:var(--status-error, #e74c3c)}@media (max-width: 768px){.client-management-page{padding:1rem}.clients-grid{grid-template-columns:1fr}.search-and-actions{flex-direction:column;align-items:stretch}.client-detail-header{flex-direction:column;gap:1rem}.client-actions{justify-content:flex-start}.client-meta-inline{flex-direction:column;align-items:flex-start;gap:.5rem}.info-row{grid-template-columns:1fr;gap:1rem}.lawyers-compact{flex-direction:column;align-items:flex-start}.project-detail-header{flex-direction:column;gap:1rem}.project-actions{justify-content:flex-start}.table-header,.table-row{grid-template-columns:1fr;gap:.5rem}.table-header{display:none}.table-row{border:1px solid var(--border-primary, #e0e0e0);border-radius:4px;margin-bottom:.5rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:var(--card-bg, white);border-radius:8px;box-shadow:0 10px 25px #0003;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;border:1px solid var(--card-border, #e0e0e0);transition:var(--theme-transition)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--content-surface, white);border-radius:var(--radius-lg) var(--radius-lg) 0 0;transition:var(--theme-transition)}.modal-header h2{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--content-text, #1a1a1a);transition:var(--theme-transition)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-muted, #7f8c8d);cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease,var(--theme-transition)}.modal-close:hover{background:var(--bg-secondary, #e0e0e0);color:var(--text-primary, #2c3e50)}.client-form,.project-form{padding:2rem;background:var(--card-bg, white);transition:var(--theme-transition)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.form-section{background:var(--bg-secondary, #f8f9fa);padding:1.5rem;border-radius:6px;border:1px solid var(--border-primary, #e9ecef);transition:var(--theme-transition)}.form-section h3{margin:0 0 1.5rem;color:var(--text-primary, #2c3e50);font-size:1.1rem;border-bottom:2px solid var(--accent-primary, #3498db);padding-bottom:.5rem;transition:var(--theme-transition)}.form-group{margin-bottom:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary, #2c3e50);font-weight:500;transition:var(--theme-transition)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:1rem;transition:border-color .2s ease,var(--theme-transition);background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--input-placeholder, #9ca3af)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary, #3498db);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(52, 152, 219, .2))}.form-group textarea{resize:vertical;min-height:80px}.form-help{color:var(--text-muted, #7f8c8d);font-size:.9rem;margin-bottom:1rem;transition:var(--theme-transition)}.lawyer-search-input{width:100%;padding:.75rem;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:.9rem;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);margin-bottom:.75rem;transition:var(--theme-transition)}.lawyer-search-input:focus{outline:none;border-color:var(--accent-primary, #3498db);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(52, 152, 219, .2))}.lawyer-search-input::placeholder{color:var(--text-muted, #6b7280)}.lawyers-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;max-height:300px;overflow-y:auto}.lawyer-checkbox{display:flex;align-items:center;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s ease,color .2s ease,var(--theme-transition);color:var(--text-primary, #2c3e50);font-size:.9rem}.lawyer-checkbox.disabled{opacity:.6;cursor:not-allowed}.lawyer-checkbox .badge-small{font-size:.75rem;color:var(--text-muted, #6b7280);margin-left:.25rem}.lawyer-checkbox:hover{background:var(--table-row-hover, #e9ecef);color:var(--text-primary, #2c3e50)}.lawyer-checkbox input[type=checkbox]{display:none}.checkmark{width:18px;height:18px;border:2px solid var(--input-border, #ddd);border-radius:3px;margin-right:.75rem;position:relative;transition:all .2s ease,var(--theme-transition);background:var(--input-bg, white)}.lawyer-checkbox input[type=checkbox]:checked+.checkmark{background:var(--accent-primary, #3498db);border-color:var(--accent-primary, #3498db)}.lawyer-checkbox input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:-2px;left:2px;color:#fff;font-size:12px;font-weight:700}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid var(--border-primary, #e0e0e0);transition:var(--theme-transition)}@media (max-width: 768px){.modal-overlay{padding:1rem}.modal-content{max-height:95vh}.modal-header{padding:1rem 1.5rem}.client-form,.project-form{padding:1.5rem}.form-grid{grid-template-columns:1fr;gap:1.5rem}.form-row,.lawyers-selection{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}.project-badges{display:flex;align-items:center;gap:.5rem}.cap-alert{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.cap-alert.warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.cap-alert.critical{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);animation:pulse 2s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.project-info{display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0;padding:.6rem .8rem;background:var(--bg-secondary, #f8f9fa);border-radius:4px;font-size:.8rem;border:1px solid var(--border-primary, #e9ecef);transition:var(--theme-transition)}.project-info span{color:var(--text-muted, #7f8c8d);transition:var(--theme-transition)}.project-info span strong{color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.project-actions-inline{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-primary, #e0e0e0);transition:var(--theme-transition)}.btn-small{padding:.25rem .75rem;font-size:.8rem}@media (max-width: 768px){.project-form .form-grid{grid-template-columns:1fr;gap:1.5rem}.project-info{flex-direction:column}.project-badges{flex-direction:column;align-items:flex-start;gap:.25rem}}.no-lawyers-message{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;padding:1.5rem;margin:1rem 0;transition:var(--theme-transition)}.no-lawyers-message p{margin:0 0 .5rem;color:var(--text-secondary, #856404);transition:var(--theme-transition)}.no-lawyers-message p:last-child{margin-bottom:0;font-weight:500}.delete-confirm-modal{max-width:480px}.modal-body{padding:var(--spacing-lg);background:var(--content-surface, white);transition:var(--theme-transition)}.modal-body>p{font-size:var(--font-size-sm);color:var(--content-text-muted, #6b7280);margin:0 0 var(--spacing-sm) 0}.modal-body>p:last-child{margin-top:var(--spacing-md);margin-bottom:0;font-weight:var(--font-weight-medium);color:var(--content-text, #1a1a1a)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--content-border, #e5e7eb);background:var(--content-surface, white);border-radius:0 0 var(--radius-lg) var(--radius-lg);transition:var(--theme-transition)}.warning-message{background:#fef2f2;border-left:3px solid var(--status-error, #ef4444);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);transition:var(--theme-transition)}.warning-message strong{display:block;font-size:var(--font-size-sm);color:#991b1b}.delete-details{background:var(--content-background, #faf9f7);border:1px solid var(--content-border, #e5e7eb);border-radius:var(--radius-md);padding:var(--spacing-md);margin:var(--spacing-md) 0;transition:var(--theme-transition)}.delete-details h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--content-text, #1a1a1a);transition:var(--theme-transition)}.delete-details p{margin:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--content-text-muted, #6b7280);transition:var(--theme-transition)}.info-message{background:#eff6ff;border-left:3px solid var(--status-info, #3b82f6);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-md) 0;transition:var(--theme-transition)}.info-message strong{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:#1e40af}.info-message p{margin:0;font-size:var(--font-size-xs);color:#1e40af}:root[data-theme=dark] .client-management-content{background-color:#1e293b!important;border-color:#334155!important}:root[data-theme=dark] .client-card,:root[data-theme=dark] .project-card{background-color:#1e293b!important;border-color:#334155!important}:root[data-theme=dark] .client-card:hover,:root[data-theme=dark] .project-card:hover{border-color:#3b82f6!important}:root[data-theme=dark] .client-header h3,:root[data-theme=dark] .project-header h4,:root[data-theme=dark] .client-title-section h2,:root[data-theme=dark] .projects-section h3{color:#f8fafc!important}:root[data-theme=dark] .client-info p,:root[data-theme=dark] .project-description,:root[data-theme=dark] .project-stats{color:#94a3b8!important}:root[data-theme=dark] .client-info-compact{background-color:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .info-group h4,:root[data-theme=dark] .address-section h4{color:#f8fafc!important}:root[data-theme=dark] .contact-name{color:#f8fafc!important}:root[data-theme=dark] .lawyer-tag-partner{background:linear-gradient(135deg,#b45309,#92400e)!important;box-shadow:0 1px 3px #b4530966}:root[data-theme=dark] .contact-phone,:root[data-theme=dark] .registration-number,:root[data-theme=dark] .address-text{color:#94a3b8!important}:root[data-theme=dark] .meta-item{background-color:#334155!important;border-color:#475569!important;color:#cbd5e1!important}:root[data-theme=dark] .country-underline{color:#f8fafc!important}:root[data-theme=dark] .search-input{background-color:#1e293b!important;border-color:#475569!important;color:#f8fafc!important}:root[data-theme=dark] .search-input::placeholder{color:#64748b!important}:root[data-theme=dark] .no-clients,:root[data-theme=dark] .no-projects{background-color:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .no-clients h3,:root[data-theme=dark] .no-projects h3{color:#f8fafc!important}:root[data-theme=dark] .no-clients p,:root[data-theme=dark] .no-projects p{color:#94a3b8!important}:root[data-theme=dark] .project-info{background-color:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .project-info span{color:#94a3b8!important}:root[data-theme=dark] .project-info span strong{color:#f8fafc!important}:root[data-theme=dark] .modal-content{background-color:#1e293b!important;border-color:#334155!important}:root[data-theme=dark] .modal-header{background-color:#0f172a!important;border-bottom-color:#334155!important}:root[data-theme=dark] .modal-close:hover{background-color:#334155!important;color:#f8fafc!important}:root[data-theme=dark] .modal-body{background-color:#1e293b!important}:root[data-theme=dark] .modal-footer{background-color:#1e293b!important;border-top-color:#334155!important}:root[data-theme=dark] .client-form,:root[data-theme=dark] .project-form{background-color:#1e293b!important;color:#f8fafc!important}:root[data-theme=dark] .form-section{background-color:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .form-section h3{color:#f8fafc!important}:root[data-theme=dark] .form-group label{color:#f8fafc!important}:root[data-theme=dark] .form-group input,:root[data-theme=dark] .form-group select,:root[data-theme=dark] .form-group textarea{background-color:#1e293b!important;border-color:#475569!important;color:#f8fafc!important}:root[data-theme=dark] .form-group input::placeholder,:root[data-theme=dark] .form-group textarea::placeholder{color:#64748b!important}:root[data-theme=dark] .form-group select option{background-color:#1e293b!important;color:#f8fafc!important}:root[data-theme=dark] .form-help{color:#94a3b8!important}:root[data-theme=dark] .checkmark{background-color:#1e293b!important;border-color:#475569!important}:root[data-theme=dark] .lawyer-checkbox{color:#f8fafc!important;background-color:transparent!important}:root[data-theme=dark] label.lawyer-checkbox{color:#f8fafc!important;background-color:transparent!important}:root[data-theme=dark] .lawyer-checkbox label{color:#f8fafc!important}:root[data-theme=dark] .lawyer-checkbox:hover{background-color:#334155!important;color:#f8fafc!important}:root[data-theme=dark] .lawyers-selection label{color:#f8fafc!important}:root[data-theme=dark] .lawyers-selection .lawyer-checkbox{color:#f8fafc!important}:root[data-theme=dark] .lawyers-selection label.lawyer-checkbox{color:#f8fafc!important}:root[data-theme=dark] .form-section .lawyers-selection label{color:#f8fafc!important}:root[data-theme=dark] .form-actions{border-top-color:#334155!important}:root[data-theme=dark] .warning-message{background-color:#ef44441a!important;border-color:#ef4444!important}:root[data-theme=dark] .warning-message strong{color:#fca5a5!important}:root[data-theme=dark] .no-lawyers-message{background-color:#f59e0b26!important;border-color:#f59e0b66!important}:root[data-theme=dark] .no-lawyers-message p{color:#fbbf24!important}:root[data-theme=dark] .delete-details{background-color:#0f172a!important;border-color:#334155!important}:root[data-theme=dark] .delete-details h3{color:#f8fafc!important}:root[data-theme=dark] .delete-details p{color:#94a3b8!important}:root[data-theme=dark] .info-message{background-color:#3b82f61a!important;border-color:#3b82f6!important}:root[data-theme=dark] .info-message strong{color:#93c5fd!important}:root[data-theme=dark] .info-message p{color:#93c5fd!important}:root[data-theme=dark] .modal-body>p{color:#94a3b8!important}:root[data-theme=dark] .modal-body>p:last-child{color:#f8fafc!important}:root[data-theme=dark] .table-header{background-color:#0f172a!important;border-bottom-color:#334155!important;color:#f8fafc!important}:root[data-theme=dark] .table-row{background-color:#1e293b!important;border-bottom-color:#334155!important}:root[data-theme=dark] .table-row:hover{background-color:#334155!important}:root[data-theme=dark] .col-task strong{color:#f8fafc!important}:root[data-theme=dark] .task-description{color:#94a3b8!important}:root[data-theme=dark] .tasks-table{border-color:#334155!important}:root[data-theme=dark] .client-detail-header,:root[data-theme=dark] .project-detail-header,:root[data-theme=dark] .address-section,:root[data-theme=dark] .project-actions-inline{border-color:#334155!important}:root[data-theme=dark] .registration-number{border-top-color:#334155!important}:root[data-theme=dark] .btn-secondary{background-color:#334155!important;color:#e2e8f0!important}:root[data-theme=dark] .btn-secondary:hover{background-color:#475569!important}.country-city-cell{display:flex;flex-direction:column;gap:2px}.country-city-cell .country-name{font-weight:500;color:var(--text-primary, #2c3e50)}.country-city-cell .city-name{font-size:.85rem;color:var(--text-muted, #6b7280)}:root[data-theme=dark] .country-city-cell .country-name{color:#f8fafc!important}:root[data-theme=dark] .country-city-cell .city-name{color:#94a3b8!important}.filter-container{display:flex;align-items:center}.country-filter{padding:.625rem 2rem .625rem .875rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #1a1a1a);background-color:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;min-width:150px;transition:border-color .25s ease,background-color .25s ease,box-shadow .25s ease}.country-filter:hover{border-color:var(--accent-primary, #3b82f6)}.country-filter:focus{outline:none;border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 3px var(--input-focus-ring, rgba(59, 130, 246, .25))}.country-filter option{padding:.5rem;background-color:var(--bg-primary, #ffffff);color:var(--text-primary, #1a1a1a)}:root[data-theme=dark] .country-filter{background-color:#1e293b;border-color:#475569;color:#f8fafc;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}:root[data-theme=dark] .country-filter:hover{border-color:#3b82f6}:root[data-theme=dark] .country-filter:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}:root[data-theme=dark] .country-filter option{background-color:#1e293b;color:#f8fafc}.billing-category-selector{display:flex;gap:12px}.billing-category-selector .radio-option{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .15s ease;-webkit-user-select:none;user-select:none}.billing-category-selector .radio-option:hover{border-color:var(--color-primary, #3b82f6)}.billing-category-selector .radio-option.selected{border-color:var(--color-primary, #3b82f6);background-color:var(--color-primary-light, #eff6ff);color:var(--color-primary, #3b82f6);font-weight:500}.billing-category-selector .radio-option input[type=radio]{margin:0;accent-color:var(--color-primary, #3b82f6)}:root[data-theme=dark] .billing-category-selector .radio-option{border-color:#475569;color:#e2e8f0}:root[data-theme=dark] .billing-category-selector .radio-option:hover{border-color:#3b82f6}:root[data-theme=dark] .billing-category-selector .radio-option.selected{border-color:#3b82f6;background-color:#3b82f626;color:#93c5fd}.projects-section{margin-top:1.5rem}.projects-section h3{color:var(--text-primary, #2c3e50);margin:0;transition:var(--theme-transition)}.projects-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.project-view-toggle{display:flex;align-items:center;gap:4px;padding:4px;border-radius:8px;background-color:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);transition:var(--theme-transition)}:root[data-theme=dark] .project-view-toggle{background-color:#1e293b;border-color:#334155}.projects-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--card-border, #e0e0e0);transition:var(--theme-transition)}.projects-table{width:100%;border-collapse:collapse;font-size:.9rem}.projects-table thead{background:var(--table-header-bg, #f8f9fa);transition:var(--theme-transition)}.projects-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-primary, #2c3e50);font-size:.8rem;text-transform:uppercase;letter-spacing:.3px;border-bottom:2px solid var(--border-primary, #e0e0e0);white-space:nowrap;transition:var(--theme-transition)}.projects-table tbody tr{background:var(--card-bg, #ffffff);transition:background-color .2s ease,var(--theme-transition);cursor:pointer}.projects-table tbody tr:hover{background:var(--table-row-hover, #f3f4f6)}.projects-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #2c3e50);transition:var(--theme-transition)}.project-name-cell{display:flex;flex-direction:column;gap:2px}.project-name-cell .project-name{font-weight:600;color:var(--text-primary, #2c3e50)}.project-name-cell .project-desc-small{font-size:.8rem;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px}.project-payment-cell{display:flex;flex-direction:column;gap:4px}.cap-alert-inline{font-size:.75rem;font-weight:600}.cap-alert-inline.warning{color:#f59e0b}.cap-alert-inline.critical{color:#ef4444}.cap-alert-inline.exceeded{color:#ef4444;font-weight:700}.project-actions-cell{display:flex;gap:.5rem}.project-actions-cell .btn-small{padding:.375rem .875rem;font-size:.825rem}:root[data-theme=dark] .projects-table-container{border-color:#334155}:root[data-theme=dark] .projects-table thead{background-color:#0f172a}:root[data-theme=dark] .projects-table th{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .projects-table tbody tr{background-color:#1e293b}:root[data-theme=dark] .projects-table tbody tr:hover{background-color:#334155}:root[data-theme=dark] .projects-table td{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .project-name-cell .project-name{color:#f8fafc}:root[data-theme=dark] .project-name-cell .project-desc-small{color:#94a3b8}@media (max-width: 768px){.projects-section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.projects-table thead{display:none}.projects-table tbody tr{display:block;border:1px solid var(--border-primary, #e0e0e0);border-radius:6px;margin-bottom:.5rem;padding:.75rem}.projects-table td{display:block;border-bottom:none;padding:.25rem 0}}.office-badge{display:inline-block;padding:0;border-radius:0;font-size:13px;font-weight:500;text-transform:uppercase;background:none;color:var(--text-primary, #1a1a1a)}.meta-office{font-weight:600;background:none;color:var(--text-primary, #1a1a1a)!important}.filter-container .office-selector{min-width:150px}.filter-container .office-selector-select{padding:.5rem .75rem;font-size:.9rem}:root[data-theme=dark] .office-badge{background:none;color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .meta-office{background:none}.reports-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}.error-banner{background-color:#ef444414;border:1px solid rgba(239,68,68,.2);border-left:3px solid var(--status-error, #ef4444);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-banner p{margin:0;color:var(--status-error, #ef4444);font-size:.875rem}.dismiss-error{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--status-error, #ef4444);padding:0;line-height:1}.report-tabs{display:flex;gap:0;margin-bottom:1.25rem;border-bottom:2px solid var(--content-border, #e5e7eb)}.office-filter-bar{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;border:1px solid var(--content-border, #e5e7eb)}.office-filter-bar .office-selector{min-width:200px}.office-filter-bar .office-selector-label{font-size:.85rem;font-weight:500;color:var(--text-primary, #1a1a1a)}.office-filter-bar .office-selector-select{padding:.4rem .6rem;font-size:.85rem}.tab-btn{padding:.6rem 1.25rem;border:none;background:none;font-size:.875rem;font-weight:500;color:var(--text-muted, #6b7280);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .15s ease,border-color .15s ease;white-space:nowrap}.tab-btn:hover{color:var(--text-primary, #1a1a1a)}.tab-btn.active{color:var(--accent-primary, #2563eb);border-bottom-color:var(--accent-primary, #2563eb)}.report-content{background:var(--content-surface, #ffffff);border-radius:8px;padding:1.5rem;border:1px solid var(--content-border, #e5e7eb);box-shadow:var(--card-shadow, 0 1px 3px rgba(0, 0, 0, .06));transition:var(--theme-transition)}.report-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--content-border, #e5e7eb)}.date-picker{display:flex;align-items:center;gap:.6rem}.date-picker label{font-weight:500;color:var(--text-primary, #1a1a1a);font-size:.85rem}.date-picker input{padding:.4rem .6rem;border:1px solid var(--input-border, #d1d5db);border-radius:4px;font-size:.85rem;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);transition:border-color .15s ease}.date-picker input:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .15))}.action- buttons{display:flex;gap:.5rem}.refresh-btn,.export-btn{padding:.4rem .875rem;border:none;border-radius:4px;font-size:.825rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.refresh-btn{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a);border:1px solid var(--content-border, #e5e7eb)}.refresh-btn:hover:not(:disabled){background:var(--content-border, #e5e7eb)}.export-btn{background:var(--status-success, #22c55e);color:#fff}.export-btn:hover:not(:disabled){background:#16a34a}.refresh-btn:disabled,.export-btn:disabled{opacity:.5;cursor:not-allowed}.report-description{margin-bottom:1.25rem}.report-description h3{color:var(--text-primary, #1a1a1a);margin:0 0 .35rem;font-size:1rem;font-weight:600}.report-description p{color:var(--text-muted, #6b7280);margin:0;font-size:.85rem}.reports-page .loading,.no-data{text-align:center;padding:2.5rem;color:var(--text-muted, #6b7280);font-size:.9rem}.no-data.success{background:#22c55e0f;border:1px solid rgba(34,197,94,.15);border-radius:8px}.no-data .success-icon{font-size:2rem;display:block;margin-bottom:.75rem}.no-data h4{margin:0 0 .35rem;color:var(--status-success, #22c55e);font-size:1rem}.no-data p{margin:0}.report-summary{margin-bottom:1.5rem}.report-summary h3{color:var(--text-primary, #1a1a1a);margin:0 0 1rem;font-size:.95rem;font-weight:600}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.summary-card{background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:1rem 1.25rem;text-align:center;border:1px solid var(--content-border, #e5e7eb);transition:var(--theme-transition)}.summary-card.highlight{background:var(--accent-primary, #2563eb);color:#fff;border-color:var(--accent-primary, #2563eb)}.summary-card .card-value{display:block;font-size:1.5rem;font-weight:700;margin-bottom:.15rem;color:var(--text-primary, #1a1a1a)}.summary-card.highlight .card-value{color:#fff}.summary-card .card-label{font-size:.78rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.summary-card.highlight .card-label{color:#ffffffd9}.report-table-container{overflow-x:auto;border-radius:8px;border:1px solid var(--card-border, #e0e0e0)}.report-table{width:100%;border-collapse:collapse;font-size:.9rem}.report-table thead{background:var(--table-header-bg, #f8f9fa)}.report-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-primary, #2c3e50);font-size:.8rem;text-transform:uppercase;letter-spacing:.3px;border-bottom:2px solid var(--border-primary, #e0e0e0);white-space:nowrap}.report-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-primary, #e0e0e0);color:var(--text-primary, #2c3e50)}.report-table tbody tr{background:var(--card-bg, #ffffff);transition:background-color .15s ease}.report-table tbody tr:last-child td{border-bottom:none}.report-table tbody tr:hover{background:var(--table-row-hover, #f3f4f6)}.report-table tbody tr.warning{background:#f59e0b0f}.report-table tbody tr.warning:hover{background:#f59e0b1a}.report-table tbody tr.critical{background:#ef44440f}.report-table tbody tr.critical:hover{background:#ef44441a}.report-table .lawyer-name{font-weight:600;color:var(--text-primary, #1a1a1a)}.report-table .lawyer-name small{display:block;color:var(--text-muted, #6b7280);font-weight:400;font-size:.8rem;margin-top:1px}.report-table .hours,.report-table .billable,.report-table .non-billable,.report-table .pro-bono,.report-table .avg{font-variant-numeric:tabular-nums}.report-table .shortfall{color:var(--status-error, #ef4444);font-weight:600}.report-table .earnings{color:var(--status-success, #22c55e);font-weight:600}.report-table .rate{font-weight:500}.report-table.comprehensive th,.report-table.comprehensive td{padding:.6rem .75rem;font-size:.85rem}.report-table.comprehensive .lawyer-name{min-width:160px}.reports-page .status-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500}.reports-page .status-badge.warning{background:#f59e0b1f;color:#b45309}.reports-page .status-badge.critical{background:#ef44441f;color:#dc2626}.project-table .project-name{font-weight:600;color:var(--text-primary, #1a1a1a)}.project-table .client-name{color:var(--text-secondary, #4b5563)}.billing-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.78rem;font-weight:500;white-space:nowrap}.billing-badge.capped{background:#f59e0b1f;color:#b45309}.billing-badge.uncapped{background:#22c55e1f;color:#15803d}.cap-info{display:flex;flex-direction:column;gap:.25rem}.cap-bar-container{width:100%;height:5px;background:var(--content-border, #e5e7eb);border-radius:3px;overflow:hidden}.cap-bar-fill{height:100%;background:var(--accent-primary, #2563eb);border-radius:3px;transition:width .3s ease}.cap-bar-fill.warning{background:#f59e0b}.cap-bar-fill.critical{background:#ef4444}.cap-text{font-size:.75rem;color:var(--text-muted, #6b7280);white-space:nowrap}.no-cap{color:var(--text-muted, #6b7280);font-size:.85rem}.project-table .payment-type{white-space:nowrap}.project-table .cap-utilization{min-width:150px}:root[data-theme=dark] .report-content{background-color:#1e293b;border-color:#334155}:root[data-theme=dark] .office-filter-bar{background:#0f172a;border-color:#334155}:root[data-theme=dark] .office-filter-bar .office-selector-label{color:#f8fafc}:root[data-theme=dark] .report-tabs{border-bottom-color:#334155}:root[data-theme=dark] .tab-btn{color:#94a3b8}:root[data-theme=dark] .tab-btn:hover{color:#f8fafc}:root[data-theme=dark] .tab-btn.active{color:#3b82f6;border-bottom-color:#3b82f6}:root[data-theme=dark] .report-controls{border-bottom-color:#334155}:root[data-theme=dark] .date-picker label{color:#f8fafc}:root[data-theme=dark] .date-picker input{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .refresh-btn{background:#334155;color:#f8fafc;border-color:#475569}:root[data-theme=dark] .refresh-btn:hover:not(:disabled){background:#475569}:root[data-theme=dark] .report-description h3,:root[data-theme=dark] .report-summary h3{color:#f8fafc}:root[data-theme=dark] .report-description p{color:#94a3b8}:root[data-theme=dark] .summary-card{background:#0f172a;border-color:#334155}:root[data-theme=dark] .summary-card .card-value{color:#f8fafc}:root[data-theme=dark] .summary-card .card-label{color:#94a3b8}:root[data-theme=dark] .summary-card.highlight{background:#2563eb;border-color:#2563eb}:root[data-theme=dark] .report-table-container{border-color:#334155}:root[data-theme=dark] .report-table thead{background:#0f172a}:root[data-theme=dark] .report-table th{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .report-table td{color:#f8fafc;border-bottom-color:#334155}:root[data-theme=dark] .report-table tbody tr{background:#1e293b}:root[data-theme=dark] .report-table tbody tr:hover{background:#334155}:root[data-theme=dark] .report-table .lawyer-name{color:#f8fafc}:root[data-theme=dark] .report-table .lawyer-name small{color:#94a3b8}:root[data-theme=dark] .report-table .earnings{color:#4ade80}:root[data-theme=dark] .report-table .shortfall{color:#f87171}:root[data-theme=dark] .reports-page .status-badge.warning{background:#f59e0b26;color:#fbbf24}:root[data-theme=dark] .reports-page .status-badge.critical{background:#ef444426;color:#f87171}:root[data-theme=dark] .no-data{color:#94a3b8}:root[data-theme=dark] .no-data.success{background:#22c55e14;border-color:#22c55e33}:root[data-theme=dark] .error-banner{background-color:#ef44441a;border-color:#ef444440}:root[data-theme=dark] .billing-badge.capped{background:#f59e0b26;color:#fbbf24}:root[data-theme=dark] .billing-badge.uncapped{background:#22c55e26;color:#4ade80}:root[data-theme=dark] .cap-bar-container{background:#334155}:root[data-theme=dark] .cap-text{color:#94a3b8}:root[data-theme=dark] .project-table .project-name{color:#f8fafc}:root[data-theme=dark] .project-table .client-name{color:#94a3b8}@media (max-width: 768px){.report-controls{flex-direction:column;gap:.75rem;align-items:stretch}.date-picker{flex-direction:column;align-items:stretch}.action-buttons{justify-content:stretch}.action-buttons button{flex:1}.report-tabs{flex-wrap:wrap}.tab-btn{flex:1;text-align:center;padding:.5rem .75rem;font-size:.825rem}.summary-cards{grid-template-columns:repeat(2,1fr)}.report-content{padding:1rem}}.comprehensive-export-panel{background:var(--content-surface, #ffffff);border:1px solid var(--content-border, #e5e7eb);border-left:4px solid var(--accent-primary, #2563eb);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.25rem;transition:var(--theme-transition)}.export-panel-header h3{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:var(--text-primary, #1f2937)}.export-panel-header p{margin:0 0 .75rem;font-size:.8rem;color:var(--text-muted, #6b7280)}.export-panel-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.export-panel-controls .date-picker{display:flex;align-items:center;gap:.5rem}.export-panel-controls .date-picker label{font-size:.8rem;color:var(--text-muted, #6b7280);font-weight:500}.export-panel-controls .date-picker input[type=date]{padding:.35rem .5rem;border:1px solid var(--content-border, #e5e7eb);border-radius:4px;font-size:.8rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.comprehensive-export-btn{padding:.5rem 1.25rem;font-weight:600;font-size:.85rem}:root[data-theme=dark] .comprehensive-export-panel{background:#1e293b;border-color:#334155;border-left-color:#3b82f6}:root[data-theme=dark] .export-panel-header h3{color:#f8fafc}:root[data-theme=dark] .export-panel-header p{color:#94a3b8}:root[data-theme=dark] .export-panel-controls .date-picker label{color:#94a3b8}:root[data-theme=dark] .export-panel-controls .date-picker input[type=date]{background:#334155;border-color:#475569;color:#f8fafc}.export-tab{display:flex;flex-direction:column;gap:1.25rem}.export-section{background:var(--content-surface, #ffffff);border:1px solid var(--content-border, #e5e7eb);border-left:4px solid var(--accent-primary, #2563eb);border-radius:8px;padding:1rem 1.25rem;transition:var(--theme-transition)}.export-section-header h3{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:var(--text-primary, #1f2937)}.export-section-header p{margin:0 0 .75rem;font-size:.8rem;color:var(--text-muted, #6b7280);line-height:1.5}.export-controls{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.export-controls .date-picker{display:flex;align-items:center;gap:.5rem}.export-controls .date-picker label{font-size:.8rem;color:var(--text-muted, #6b7280);font-weight:500}.export-controls .date-picker input[type=date],.export-controls .date-picker input[type=month]{padding:.35rem .5rem;border:1px solid var(--content-border, #e5e7eb);border-radius:4px;font-size:.8rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.missing-rate-warning{background-color:#fffbeb!important}.missing-rate-badge{display:inline-block;margin-left:.4rem;padding:.1rem .35rem;background:#fef3c7;border:1px solid #f59e0b;border-radius:4px;font-size:.7rem;font-weight:600;color:#92400e;white-space:nowrap;vertical-align:middle;cursor:help}:root[data-theme=dark] .export-section{background:#1e293b;border-color:#334155;border-left-color:#3b82f6}:root[data-theme=dark] .export-section-header h3{color:#f8fafc}:root[data-theme=dark] .export-section-header p{color:#94a3b8}:root[data-theme=dark] .export-controls .date-picker label{color:#94a3b8}:root[data-theme=dark] .export-controls .date-picker input[type=date],:root[data-theme=dark] .export-controls .date-picker input[type=month]{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .missing-rate-warning{background-color:#422006!important}:root[data-theme=dark] .missing-rate-badge{background:#451a03;border-color:#d97706;color:#fcd34d}.auto-email-reports-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;padding:.875rem 1rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;border:1px solid var(--content-border, #e5e7eb)}.auto-email-reports-text h3{margin:0 0 .35rem;font-size:.95rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.auto-email-reports-text p{margin:0;font-size:.8rem;color:var(--text-muted, #6b7280);line-height:1.45;max-width:52rem}.auto-email-switch{position:relative;flex-shrink:0;width:3rem;height:1.75rem;padding:0;border:none;border-radius:999px;background:#cbd5e1;cursor:pointer;transition:background .2s ease}.auto-email-switch.auto-email-switch--on{background:#2563eb}.auto-email-switch:disabled{opacity:.5;cursor:not-allowed}.auto-email-switch:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.auto-email-switch-thumb{position:absolute;top:3px;left:3px;width:calc(1.75rem - 6px);height:calc(1.75rem - 6px);border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000026;transition:transform .2s ease}.auto-email-switch.auto-email-switch--on .auto-email-switch-thumb{transform:translate(1.25rem)}.auto-email-reports-panel .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root[data-theme=dark] .auto-email-reports-panel{background:#1e293b;border-color:#334155}:root[data-theme=dark] .auto-email-reports-text h3{color:#f8fafc}:root[data-theme=dark] .auto-email-reports-text p{color:#94a3b8}:root[data-theme=dark] .auto-email-switch{background:#475569}:root[data-theme=dark] .auto-email-switch.auto-email-switch--on{background:#3b82f6}.calendar-heatmap{background:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--card-shadow)}.calendar-heatmap__header{display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.calendar-heatmap__title{font-size:1.1rem;font-weight:var(--font-weight-semibold, 600);color:var(--content-text)}.calendar-heatmap__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;margin-bottom:3px}.calendar-heatmap__weekday{text-align:center;font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-semibold, 600);color:var(--content-text-muted);padding:4px 0;text-transform:uppercase;letter-spacing:.05em}.calendar-heatmap__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-heatmap__cell{position:relative;border-radius:var(--radius-md, 6px);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:default;transition:transform .15s ease,box-shadow .15s ease;padding:6px 2px;min-height:36px}.calendar-heatmap__cell--active{cursor:pointer}.calendar-heatmap__cell--active:hover{transform:scale(1.08);box-shadow:0 2px 8px #00000026;z-index:1}.calendar-heatmap__cell--empty{background:transparent}.calendar-heatmap__day-number{font-size:.7rem;font-weight:var(--font-weight-semibold, 600);color:#fff;line-height:1}.calendar-heatmap__cell--no-entries .calendar-heatmap__day-number{color:var(--content-text-muted, #6b7280)}.calendar-heatmap__hours{font-size:.6rem;color:#ffffffe6;line-height:1;margin-top:1px}.calendar-heatmap__cell--no-entries .calendar-heatmap__hours{color:var(--content-text-muted, #9ca3af)}.calendar-heatmap__tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--content-text, #1f2937);color:#fff;padding:4px 8px;border-radius:var(--radius-sm, 4px);font-size:var(--font-size-xs, .75rem);white-space:nowrap;pointer-events:none;z-index:10;box-shadow:0 2px 6px #0003}.calendar-heatmap__tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:var(--content-text, #1f2937)}.calendar-heatmap__legend{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:1rem;font-size:var(--font-size-xs, .75rem);color:var(--content-text-muted)}.calendar-heatmap__legend-item{display:flex;align-items:center;gap:4px}.calendar-heatmap__legend-swatch{width:12px;height:12px;border-radius:2px}@media (max-width: 768px){.calendar-heatmap{max-width:100%}.calendar-heatmap__cell{min-height:30px;padding:4px 1px}.calendar-heatmap__day-number{font-size:.65rem}.calendar-heatmap__hours{font-size:.5rem}}.work-spreadsheet{background:var(--content-surface, #ffffff);border:1px solid var(--content-border, #e5e7eb);border-radius:var(--radius-lg, 8px);overflow:hidden;box-shadow:var(--card-shadow)}.work-spreadsheet__table{width:100%;border-collapse:collapse;font-size:.85rem}.work-spreadsheet__table thead th{text-align:left;padding:.6rem .75rem;font-size:.75rem;font-weight:var(--font-weight-semibold, 600);text-transform:uppercase;letter-spacing:.3px;color:var(--content-text-muted, #6b7280);border-bottom:1px solid var(--content-border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.work-spreadsheet__table thead th.work-spreadsheet__col--numeric{text-align:right}.work-spreadsheet__table tbody td{padding:.5rem .75rem;color:var(--content-text, #374151);border-bottom:1px solid var(--content-border, #e5e7eb)}.work-spreadsheet__table tbody td.work-spreadsheet__col--numeric{text-align:right;font-variant-numeric:tabular-nums}.work-spreadsheet__table tbody tr:last-child td{border-bottom:none}.work-spreadsheet__table tbody tr:hover{background:var(--table-row-hover, #f3f4f6)}.work-spreadsheet__client-name{font-weight:500;color:var(--content-text, #1a1a1a)}.work-spreadsheet__totals-row td{font-weight:var(--font-weight-semibold, 600);background:var(--bg-secondary, #f9fafb);border-top:2px solid var(--content-border, #e5e7eb);color:var(--content-text, #1a1a1a)}.work-spreadsheet__empty{padding:2rem;text-align:center;color:var(--content-text-muted, #6b7280);font-size:.9rem}:root[data-theme=dark] .work-spreadsheet{border-color:var(--card-border, #334155);background:var(--card-bg, #1e293b)}:root[data-theme=dark] .work-spreadsheet__table thead th{color:var(--text-muted, #94a3b8);border-bottom-color:var(--card-border, #334155);background:var(--bg-primary, #0f172a)}:root[data-theme=dark] .work-spreadsheet__table tbody td{color:var(--text-secondary, #cbd5e1);border-bottom-color:var(--card-border, #334155)}:root[data-theme=dark] .work-spreadsheet__table tbody tr:hover{background-color:#334155}:root[data-theme=dark] .work-spreadsheet__client-name{color:var(--text-primary, #f8fafc)}:root[data-theme=dark] .work-spreadsheet__totals-row td{background:var(--bg-primary, #0f172a);border-top-color:var(--card-border, #334155);color:var(--text-primary, #f8fafc)}@media (max-width: 768px){.work-spreadsheet__table{font-size:.78rem}.work-spreadsheet__table thead th,.work-spreadsheet__table tbody td{padding:.4rem .5rem}}.personal-reports-page{padding:0;max-width:100%;margin:0;transition:var(--theme-transition)}.personal-reports-page__error-banner{background-color:#ef444414;border:1px solid rgba(239,68,68,.2);border-left:3px solid var(--status-error, #ef4444);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.personal-reports-page__error-banner p{margin:0;color:var(--status-error, #ef4444);font-size:.875rem}.personal-reports-page__retry-btn{padding:.4rem .875rem;border:1px solid var(--status-error, #ef4444);border-radius:4px;background:transparent;color:var(--status-error, #ef4444);font-size:.825rem;font-weight:500;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.personal-reports-page__retry-btn:hover{background-color:#ef44441a}.personal-reports-page__summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.personal-reports-page__summary-card{background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:1rem 1.25rem;text-align:center;border:1px solid var(--content-border, #e5e7eb);transition:var(--theme-transition)}.personal-reports-page__summary-card--highlight{background:var(--accent-primary, #2563eb);color:#fff;border-color:var(--accent-primary, #2563eb)}.personal-reports-page__card-value{display:block;font-size:1.5rem;font-weight:700;margin-bottom:.15rem;color:var(--text-primary, #1a1a1a)}.personal-reports-page__summary-card--highlight .personal-reports-page__card-value{color:#fff}.personal-reports-page__card-label{font-size:.78rem;color:var(--text-muted, #6b7280);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.personal-reports-page__summary-card--highlight .personal-reports-page__card-label{color:#ffffffd9}.personal-reports-page__loading{text-align:center;padding:2.5rem;color:var(--text-muted, #6b7280);font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.personal-reports-page__spinner{width:32px;height:32px;border:3px solid var(--content-border, #e5e7eb);border-top-color:var(--accent-primary, #2563eb);border-radius:50%;animation:personal-reports-spin .8s linear infinite}@keyframes personal-reports-spin{to{transform:rotate(360deg)}}.personal-reports-page__empty-state{text-align:center;padding:3rem 2rem;color:var(--text-muted, #6b7280);background:var(--bg-secondary, #f9fafb);border:1px solid var(--content-border, #e5e7eb);border-radius:8px;margin-bottom:1.5rem}.personal-reports-page__empty-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.personal-reports-page__empty-state h3{margin:0 0 .35rem;color:var(--text-primary, #1a1a1a);font-size:1rem}.personal-reports-page__empty-state p{margin:0;font-size:.875rem}.personal-reports-page__section{background:var(--content-surface, #ffffff);border-radius:8px;padding:1.5rem;border:1px solid var(--content-border, #e5e7eb);box-shadow:var(--card-shadow, 0 1px 3px rgba(0, 0, 0, .06));margin-bottom:1.5rem;transition:var(--theme-transition)}.personal-reports-page__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--content-border, #e5e7eb)}.personal-reports-page__section-header h2{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.personal-reports-page__month-nav{display:flex;align-items:center;gap:.75rem}.personal-reports-page__nav-btn{padding:.35rem .75rem;border:1px solid var(--content-border, #e5e7eb);border-radius:4px;background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a);font-size:.825rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.personal-reports-page__nav-btn:hover{background:var(--content-border, #e5e7eb)}.personal-reports-page__month-label{font-size:.9rem;font-weight:600;color:var(--text-primary, #1a1a1a);min-width:140px;text-align:center}.personal-reports-page__date-range{display:flex;align-items:center;gap:.75rem}.personal-reports-page__date-range label{display:flex;align-items:center;gap:.4rem;font-weight:500;color:var(--text-primary, #1a1a1a);font-size:.85rem}.personal-reports-page__date-range input[type=date]{padding:.4rem .6rem;border:1px solid var(--input-border, #d1d5db);border-radius:4px;font-size:.85rem;background:var(--input-bg, #ffffff);color:var(--input-text, #1a1a1a);transition:border-color .15s ease}.personal-reports-page__date-range input[type=date]:focus{outline:none;border-color:var(--accent-primary, #2563eb);box-shadow:0 0 0 2px var(--input-focus-ring, rgba(37, 99, 235, .15))}:root[data-theme=dark] .personal-reports-page__error-banner{background-color:#ef44441a;border-color:#ef444440}:root[data-theme=dark] .personal-reports-page__summary-card{background:#0f172a;border-color:#334155}:root[data-theme=dark] .personal-reports-page__card-value{color:#f8fafc}:root[data-theme=dark] .personal-reports-page__card-label{color:#94a3b8}:root[data-theme=dark] .personal-reports-page__summary-card--highlight{background:#2563eb;border-color:#2563eb}:root[data-theme=dark] .personal-reports-page__section{background-color:#1e293b;border-color:#334155}:root[data-theme=dark] .personal-reports-page__section-header{border-bottom-color:#334155}:root[data-theme=dark] .personal-reports-page__section-header h2{color:#f8fafc}:root[data-theme=dark] .personal-reports-page__nav-btn{background:#334155;color:#f8fafc;border-color:#475569}:root[data-theme=dark] .personal-reports-page__nav-btn:hover{background:#475569}:root[data-theme=dark] .personal-reports-page__month-label{color:#f8fafc}:root[data-theme=dark] .personal-reports-page__date-range label{color:#f8fafc}:root[data-theme=dark] .personal-reports-page__date-range input[type=date]{background:#334155;border-color:#475569;color:#f8fafc}:root[data-theme=dark] .personal-reports-page__empty-state{background:#0f172a;border-color:#334155}:root[data-theme=dark] .personal-reports-page__empty-state h3{color:#f8fafc}:root[data-theme=dark] .personal-reports-page__empty-state p{color:#94a3b8}:root[data-theme=dark] .personal-reports-page__loading{color:#94a3b8}:root[data-theme=dark] .personal-reports-page__spinner{border-color:#334155;border-top-color:#3b82f6}.personal-reports-page__combined-content{display:flex;gap:1.25rem;align-items:flex-start}.personal-reports-page__heatmap-col{flex:0 0 auto;width:380px;min-width:320px}.personal-reports-page__heatmap-col .calendar-heatmap{max-width:100%}.personal-reports-page__spreadsheet-col{flex:1;min-width:0;overflow-x:auto}@media (max-width: 768px){.personal-reports-page__summary-cards{grid-template-columns:repeat(2,1fr)}.personal-reports-page__section-header{flex-direction:column;gap:.75rem;align-items:stretch}.personal-reports-page__month-nav{justify-content:center}.personal-reports-page__date-range{flex-direction:column;align-items:stretch}.personal-reports-page__section{padding:1rem}.personal-reports-page__combined-content{flex-direction:column}.personal-reports-page__heatmap-col{flex:none;width:100%}}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs, 4px);background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--border-radius-md, 6px);cursor:pointer;color:var(--text-secondary, #4b5563);transition:background-color .2s ease,border-color .2s ease,color .2s ease}.theme-toggle:hover{background-color:var(--bg-secondary, #f3f4f6);border-color:var(--border-secondary, #d1d5db);color:var(--text-primary, #1a1a1a)}.theme-toggle:focus{outline:2px solid var(--accent-primary, #2563eb);outline-offset:2px}.theme-toggle:active{transform:scale(.98)}.theme-toggle--sm{padding:4px 8px;font-size:12px}.theme-toggle--md{padding:6px 10px;font-size:14px}.theme-toggle--lg{padding:8px 12px;font-size:16px}.theme-toggle__icon{flex-shrink:0;transition:transform .2s ease}.theme-toggle:hover .theme-toggle__icon{transform:rotate(15deg)}.theme-toggle__label{font-weight:500;white-space:nowrap}[data-theme=dark] .theme-toggle{border-color:var(--border-primary, #334155);color:var(--text-secondary, #cbd5e1)}[data-theme=dark] .theme-toggle:hover{background-color:var(--bg-secondary, #1e293b);border-color:var(--border-secondary, #475569);color:var(--text-primary, #f8fafc)}.sidebar{display:flex;flex-direction:column;width:var(--sidebar-width);height:100vh;background-color:var(--sidebar-background);color:var(--sidebar-text);position:fixed;left:0;top:0;z-index:var(--z-sticky);transition:width .4s cubic-bezier(.25,.1,.25,1),box-shadow .4s cubic-bezier(.25,.1,.25,1);overflow:hidden;box-shadow:2px 0 12px #0000001f}.sidebar--collapsed{width:var(--sidebar-collapsed-width);box-shadow:none;transition:width .4s cubic-bezier(.25,.1,.25,1) .15s,box-shadow .4s cubic-bezier(.25,.1,.25,1) .15s}.sidebar__brand{display:flex;align-items:center;justify-content:flex-start;padding:var(--spacing-md);border-bottom:1px solid var(--sidebar-border);min-height:64px;min-width:0;width:100%;box-sizing:border-box}.sidebar__logo{display:flex;align-items:center;justify-content:flex-start;width:100%;min-width:0}.sidebar__logo-img{display:block;height:36px;width:auto;max-width:100%;object-fit:contain;object-position:left center}.sidebar--collapsed .sidebar__logo{justify-content:center}.sidebar--collapsed .sidebar__logo-img{object-position:center center;height:48px;width:48px;max-height:48px;max-width:48px}.sidebar__nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-sm) 0}.sidebar__nav::-webkit-scrollbar{width:4px}.sidebar__nav::-webkit-scrollbar-track{background:transparent}.sidebar__nav::-webkit-scrollbar-thumb{background-color:var(--sidebar-border);border-radius:var(--radius-full)}.sidebar__nav::-webkit-scrollbar-thumb:hover{background-color:var(--sidebar-text-muted)}.sidebar-section{margin-bottom:var(--spacing-xs)}.sidebar-section__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;color:var(--sidebar-text-muted);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:color .2s ease,height .4s cubic-bezier(.25,.1,.25,1),padding .4s cubic-bezier(.25,.1,.25,1),opacity .3s ease;white-space:nowrap;overflow:hidden;min-width:var(--sidebar-width)}.sidebar-section__header:hover{color:var(--sidebar-text)}.sidebar--collapsed .sidebar-section__header{height:0;padding:0;margin:0;opacity:0;pointer-events:none;overflow:hidden}.sidebar-section__title{white-space:nowrap}.sidebar-section__icon{display:flex;align-items:center;color:var(--sidebar-text-muted);transition:transform var(--transition-fast);flex-shrink:0}.sidebar-section__items{overflow:hidden;transition:max-height .3s ease,opacity .2s ease}.sidebar-section__items--expanded{max-height:500px;opacity:1}.sidebar-section__items--collapsed{max-height:0;opacity:0}.sidebar-item{display:flex;align-items:center;margin:2px 0;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:0;color:var(--sidebar-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;text-decoration:none;cursor:pointer;transition:background-color .4s cubic-bezier(.25,.1,.25,1),color .2s ease;position:relative;white-space:nowrap;min-width:var(--sidebar-width)}.sidebar-item:hover{background-color:var(--sidebar-hover);color:var(--sidebar-text)}.sidebar-item--active{background-color:var(--sidebar-hover);color:var(--sidebar-active)}.sidebar-item--active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background-color:var(--sidebar-active);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.sidebar-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;margin-right:var(--spacing-sm)}.sidebar-item__label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1;transition:opacity .3s ease .1s}.sidebar--collapsed .sidebar-item__label{opacity:0;transition:opacity .15s ease}.sidebar-item__badge{display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background-color:var(--sidebar-active);color:var(--sidebar-background);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);margin-left:var(--spacing-sm)}.sidebar-item__badge--collapsed{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;font-size:10px}.sidebar__footer{padding:var(--spacing-sm) 0;border-top:1px solid var(--sidebar-border);margin-top:auto;display:flex;flex-direction:column;gap:2px;min-width:var(--sidebar-width)}.sidebar__theme-toggle{display:flex}.sidebar__theme-toggle .theme-toggle{display:flex;align-items:center;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:0;color:var(--sidebar-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);justify-content:flex-start;gap:var(--spacing-sm);transition:background-color .2s ease,color .2s ease}.sidebar__theme-toggle .theme-toggle:hover{background:var(--sidebar-hover);color:var(--sidebar-text);border:none}.sidebar__theme-toggle .theme-toggle:focus{outline:none}.sidebar__theme-toggle .theme-toggle__label{opacity:1;transition:opacity .3s ease .1s}.sidebar--collapsed .sidebar__theme-toggle .theme-toggle__label{opacity:0;transition:opacity .15s ease}.sidebar__logout-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:0;color:var(--sidebar-text-muted);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .2s ease,color .2s ease}.sidebar__logout-btn:hover{background-color:var(--sidebar-hover);color:var(--sidebar-text)}.sidebar__logout-btn svg{flex-shrink:0}.sidebar__logout-btn span{white-space:nowrap;opacity:1;transition:opacity .3s ease .1s}.sidebar--collapsed .sidebar__logout-btn span{opacity:0;transition:opacity .15s ease}@media (max-width: 1024px){.sidebar{width:var(--sidebar-collapsed-width)}.sidebar:not(.sidebar--collapsed){width:var(--sidebar-width);box-shadow:var(--shadow-lg)}}@media (max-width: 768px){.sidebar{transform:translate(-100%);width:var(--sidebar-width);z-index:calc(var(--z-sticky) + 10)}.sidebar:not(.sidebar--collapsed){transform:translate(0)}.sidebar-item{min-height:var(--min-tap-target)}.sidebar__logout-btn,.sidebar-section__header{min-height:var(--min-tap-target);padding:var(--spacing-md)}}.app-shell{display:flex;min-height:100vh;width:100%}.app-shell__main{flex:1;margin-left:var(--sidebar-collapsed-width);background-color:var(--content-background);min-height:100vh;transition:margin-left var(--transition-normal)}.app-shell__content{padding:var(--content-padding);min-height:100%}.app-shell--collapsed .app-shell__main{margin-left:var(--sidebar-collapsed-width)}@media (max-width: 1024px){.app-shell__main{margin-left:var(--sidebar-collapsed-width)}}@media (max-width: 768px){.app-shell__main{margin-left:0}.app-shell__content{padding:var(--spacing-md);padding-top:calc(var(--min-tap-target) + var(--spacing-lg))}}.app-shell__overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:var(--z-sticky);opacity:0;transition:opacity var(--transition-normal)}@media (max-width: 768px){.app-shell__overlay--visible{display:block;opacity:1}}.app-shell__mobile-menu{display:none;position:fixed;top:var(--spacing-md);left:var(--spacing-md);z-index:calc(var(--z-sticky) + 5);width:var(--min-tap-target);height:var(--min-tap-target);padding:var(--spacing-sm);background-color:var(--sidebar-background);color:var(--sidebar-text);border:none;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast);align-items:center;justify-content:center}.app-shell__mobile-menu:hover{background-color:var(--sidebar-hover)}@media (max-width: 768px){.app-shell__mobile-menu{display:flex}.app-shell:not(.app-shell--collapsed) .app-shell__mobile-menu{display:none}}.toast{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--toast-bg, var(--content-surface));border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:320px;max-width:420px;animation:toast-slide-in var(--transition-normal);border-left:4px solid;border:1px solid var(--toast-border, var(--content-border));border-left-width:4px;transition:var(--theme-transition)}.toast-success{border-left-color:var(--status-success)}.toast-success .toast-icon-container{color:var(--status-success)}.toast-error{border-left-color:var(--status-error)}.toast-error .toast-icon-container{color:var(--status-error)}.toast-warning{border-left-color:var(--status-warning)}.toast-warning .toast-icon-container{color:var(--status-warning)}.toast-info{border-left-color:var(--status-info)}.toast-info .toast-icon-container{color:var(--status-info)}.toast-icon-container{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding-top:2px}.toast-icon{width:20px;height:20px}.toast-content{flex:1;min-width:0}.toast-title{font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--toast-text, var(--content-text));line-height:var(--line-height-tight);margin-bottom:2px}.toast-message{font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--content-text-muted);line-height:var(--line-height-normal);margin-top:var(--spacing-xs)}.toast-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-sm)}.toast-action-button{font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--status-info);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;transition:color var(--transition-fast)}.toast-action-button:hover{color:var(--toast-text, var(--content-text))}.toast-action-button:focus{outline:2px solid var(--status-info);outline-offset:2px;border-radius:var(--radius-sm)}.toast-dismiss{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:var(--radius-sm);color:var(--content-text-muted);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.toast-dismiss:hover{background-color:var(--content-border);color:var(--toast-text, var(--content-text))}.toast-dismiss:focus{outline:2px solid var(--status-info);outline-offset:2px}@keyframes toast-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-exiting{animation:toast-slide-out var(--transition-normal) forwards}@media (max-width: 480px){.toast{min-width:auto;max-width:calc(100vw - 32px);margin:0 var(--spacing-md)}}@media (max-width: 768px){.toast{min-width:auto;max-width:calc(100vw - var(--spacing-lg))}.toast-dismiss{min-width:var(--min-tap-target);min-height:var(--min-tap-target);width:var(--min-tap-target);height:var(--min-tap-target)}.toast-action-button{min-height:var(--min-tap-target);padding:var(--spacing-sm)}}.toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:none;max-height:calc(100vh - 48px);overflow-y:auto;overflow-x:hidden}.toast-container>*{pointer-events:auto}.toast-container::-webkit-scrollbar{width:6px}.toast-container::-webkit-scrollbar-track{background:transparent}.toast-container::-webkit-scrollbar-thumb{background-color:var(--content-border);border-radius:var(--radius-full)}@media (max-width: 480px){.toast-container{top:var(--spacing-md);right:0;left:0;align-items:center}}@media (max-width: 768px){.toast-container{top:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);align-items:stretch}}:root{--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1280px;--min-tap-target: 44px}@media (max-width: 767px){.hide-mobile{display:none!important}}@media (min-width: 768px) and (max-width: 1023px){.hide-tablet{display:none!important}}@media (min-width: 1024px){.hide-desktop{display:none!important}}@media (min-width: 768px){.show-mobile-only{display:none!important}}@media (max-width: 767px),(min-width: 1024px){.show-tablet-only{display:none!important}}@media (max-width: 1023px){.show-desktop-only{display:none!important}}@media (max-width: 1023px){.tap-target,button,a,input[type=checkbox],input[type=radio],select{min-height:var(--min-tap-target);min-width:var(--min-tap-target)}.tap-target-spacing{margin:calc(var(--spacing-xs) / 2)}}.p-responsive{padding:var(--spacing-lg)}@media (max-width: 1023px){.p-responsive{padding:var(--spacing-md)}}@media (max-width: 767px){.p-responsive{padding:var(--spacing-sm)}}.m-responsive{margin:var(--spacing-lg)}@media (max-width: 1023px){.m-responsive{margin:var(--spacing-md)}}@media (max-width: 767px){.m-responsive{margin:var(--spacing-sm)}}.grid-responsive{display:grid;gap:var(--spacing-md)}.grid-responsive-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1023px){.grid-responsive-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.grid-responsive-4{grid-template-columns:1fr}}.grid-responsive-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 1023px){.grid-responsive-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.grid-responsive-3{grid-template-columns:1fr}}.grid-responsive-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 767px){.grid-responsive-2{grid-template-columns:1fr}}.flex-responsive{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.flex-stack-mobile{display:flex;gap:var(--spacing-md)}@media (max-width: 767px){.flex-stack-mobile{flex-direction:column}}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-responsive-lg{font-size:var(--font-size-2xl)}@media (max-width: 767px){.text-responsive-lg{font-size:var(--font-size-xl)}}.text-responsive-md{font-size:var(--font-size-lg)}@media (max-width: 767px){.text-responsive-md{font-size:var(--font-size-base)}}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:calc(var(--z-sticky) - 1);opacity:0;transition:opacity var(--transition-normal)}.sidebar-overlay--visible{display:block;opacity:1}@media (min-width: 769px){.sidebar-overlay{display:none!important}}.mobile-menu-btn{display:none;position:fixed;top:var(--spacing-md);left:var(--spacing-md);z-index:calc(var(--z-sticky) + 1);width:var(--min-tap-target);height:var(--min-tap-target);padding:var(--spacing-sm);background-color:var(--sidebar-background);color:var(--sidebar-text);border:none;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.mobile-menu-btn:hover{background-color:var(--sidebar-hover)}@media (max-width: 768px){.mobile-menu-btn{display:flex;align-items:center;justify-content:center}}@media (max-width: 767px){.table-card-mobile{display:block}.table-card-mobile thead{display:none}.table-card-mobile tbody{display:flex;flex-direction:column;gap:var(--spacing-md)}.table-card-mobile tr{display:flex;flex-direction:column;background-color:var(--content-surface);border:1px solid var(--content-border);border-radius:var(--radius-lg);padding:var(--spacing-md);gap:var(--spacing-sm)}.table-card-mobile td{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border:none}.table-card-mobile td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--content-text-muted);margin-right:var(--spacing-md)}}@media (max-width: 767px){.modal-responsive{width:100%;max-width:100%;height:100%;max-height:100%;margin:0;border-radius:0}.modal-responsive .modal-content{height:100%;border-radius:0}}.form-responsive{display:grid;gap:var(--spacing-md)}.form-responsive-2col{grid-template-columns:repeat(2,1fr)}@media (max-width: 767px){.form-responsive-2col{grid-template-columns:1fr}}.scroll-x-mobile{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width: 767px){.scroll-x-mobile{margin:0 calc(-1 * var(--spacing-md));padding:0 var(--spacing-md)}}html,body{margin:0;padding:0;min-height:100vh;font-family:var(--font-family);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--content-text);background-color:var(--content-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.app-unauthenticated{min-height:100vh;width:100%;background-color:var(--content-background)}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:var(--content-background)}.loading-spinner{font-size:var(--font-size-lg);color:var(--accent);font-weight:var(--font-weight-medium)}.access-denied{text-align:center;padding:var(--spacing-xl);max-width:600px;margin:var(--spacing-xl) auto;background:var(--content-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.access-denied h2{color:var(--status-error);margin-bottom:var(--spacing-md);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.access-denied p{color:var(--content-text-muted);margin-bottom:var(--spacing-sm)}.page-container{padding:var(--spacing-lg);background-color:var(--content-background);min-height:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--content-background)}::-webkit-scrollbar-thumb{background:var(--content-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--content-text-muted)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--status-info);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent)}button{font-family:inherit;font-size:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}:root{--sidebar-background: var(--sidebar-bg, #1e3a5f);--sidebar-text: var(--sidebar-text, #ffffff);--sidebar-text-muted: var(--sidebar-text-muted, #b8c5d6);--sidebar-hover: var(--sidebar-hover, #2d4a6f);--sidebar-active: var(--sidebar-active, #3b82f6);--sidebar-border: var(--sidebar-border, #2d4a6f);--content-background: var(--bg-secondary, #faf9f7);--content-surface: var(--bg-surface, #ffffff);--content-text: var(--text-primary, #1a1a1a);--content-text-muted: var(--text-muted, #6b7280);--content-border: var(--border-primary, #e5e7eb);--status-success: var(--status-success, #22c55e);--status-error: var(--status-error, #ef4444);--status-warning: var(--status-warning, #f59e0b);--status-info: var(--status-info, #3b82f6);--accent: var(--accent-primary, #2563eb);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--sidebar-width: 260px;--sidebar-collapsed-width: 64px;--content-padding: 24px;--header-height: 64px;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400;--z-tooltip: 500;--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1280px;--min-tap-target: 44px}:root[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f3f4f6;--bg-surface: #ffffff;--text-primary: #1a1a1a;--text-secondary: #4b5563;--text-muted: #6b7280;--accent-primary: #2563eb;--accent-hover: #1d4ed8;--accent-light: #dbeafe;--border-primary: #e5e7eb;--border-secondary: #d1d5db;--sidebar-bg: #1e3a5f;--sidebar-text: #ffffff;--sidebar-text-muted: #b8c5d6;--sidebar-hover: #2d4a6f;--sidebar-active: #3b82f6;--sidebar-border: #2d4a6f;--content-background: #faf9f7;--content-surface: #ffffff;--content-text: #1a1a1a;--content-text-muted: #6b7280;--content-border: #e5e7eb;--status-success: #22c55e;--status-error: #ef4444;--status-warning: #f59e0b;--status-info: #3b82f6;--input-bg: #ffffff;--input-border: #d1d5db;--input-text: #1a1a1a;--input-placeholder: #9ca3af;--input-focus-border: #2563eb;--input-focus-ring: rgba(37, 99, 235, .25);--button-primary-bg: #2563eb;--button-primary-text: #ffffff;--button-primary-hover: #1d4ed8;--button-secondary-bg: #f3f4f6;--button-secondary-text: #374151;--button-secondary-hover: #e5e7eb;--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--table-header-bg: #f9fafb;--table-row-hover: #f3f4f6;--table-border: #e5e7eb;--toast-bg: #ffffff;--toast-text: #1a1a1a;--toast-border: #e5e7eb;--login-bg: #f8fafc;--login-pattern-color: rgba(37, 99, 235, .08);--login-card-border: rgba(37, 99, 235, .1)}:root[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-surface: #1e293b;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--accent-primary: #3b82f6;--accent-hover: #60a5fa;--accent-light: #1e3a5f;--border-primary: #334155;--border-secondary: #475569;--sidebar-bg: #0f172a;--sidebar-text: #f8fafc;--sidebar-text-muted: #94a3b8;--sidebar-hover: #1e293b;--sidebar-active: #3b82f6;--sidebar-border: #334155;--content-background: #0f172a;--content-surface: #1e293b;--content-text: #f8fafc;--content-text-muted: #94a3b8;--content-border: #334155;--status-success: #22c55e;--status-error: #ef4444;--status-warning: #f59e0b;--status-info: #3b82f6;--input-bg: #1e293b;--input-border: #475569;--input-text: #f8fafc;--input-placeholder: #64748b;--input-focus-border: #3b82f6;--input-focus-ring: rgba(59, 130, 246, .25);--button-primary-bg: #3b82f6;--button-primary-text: #ffffff;--button-primary-hover: #60a5fa;--button-secondary-bg: #334155;--button-secondary-text: #e2e8f0;--button-secondary-hover: #475569;--card-bg: #1e293b;--card-border: #334155;--card-shadow: 0 1px 3px 0 rgba(0, 0, 0, .3), 0 1px 2px 0 rgba(0, 0, 0, .2);--table-header-bg: #1e293b;--table-row-hover: #334155;--table-border: #334155;--toast-bg: #1e293b;--toast-text: #f8fafc;--toast-border: #334155;--login-bg: #0f172a;--login-pattern-color: rgba(59, 130, 246, .1);--login-card-border: rgba(59, 130, 246, .15)}:root:not([data-theme]){--bg-primary: #ffffff;--bg-secondary: #f3f4f6;--bg-surface: #ffffff;--text-primary: #1a1a1a;--text-secondary: #4b5563;--text-muted: #6b7280;--accent-primary: #2563eb;--accent-hover: #1d4ed8;--accent-light: #dbeafe;--border-primary: #e5e7eb;--border-secondary: #d1d5db;--sidebar-bg: #1e3a5f;--sidebar-text: #ffffff;--sidebar-text-muted: #b8c5d6;--sidebar-hover: #2d4a6f;--sidebar-active: #3b82f6;--sidebar-border: #2d4a6f;--content-background: #faf9f7;--content-surface: #ffffff;--content-text: #1a1a1a;--content-text-muted: #6b7280;--content-border: #e5e7eb;--status-success: #22c55e;--status-error: #ef4444;--status-warning: #f59e0b;--status-info: #3b82f6;--input-bg: #ffffff;--input-border: #d1d5db;--input-text: #1a1a1a;--input-placeholder: #9ca3af;--input-focus-border: #2563eb;--input-focus-ring: rgba(37, 99, 235, .25);--button-primary-bg: #2563eb;--button-primary-text: #ffffff;--button-primary-hover: #1d4ed8;--button-secondary-bg: #f3f4f6;--button-secondary-text: #374151;--button-secondary-hover: #e5e7eb;--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--table-header-bg: #f9fafb;--table-row-hover: #f3f4f6;--table-border: #e5e7eb;--toast-bg: #ffffff;--toast-text: #1a1a1a;--toast-border: #e5e7eb;--login-bg: #f8fafc;--login-pattern-color: rgba(37, 99, 235, .08);--login-card-border: rgba(37, 99, 235, .1)}:root{--theme-transition: background-color .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease}body,.sidebar,.content,.card,input,select,textarea,button,table,th,td,.toast{transition:var(--theme-transition)}:root[data-theme=dark] select,:root[data-theme=dark] input,:root[data-theme=dark] textarea{background-color:#1e293b!important;color:#f8fafc!important;border-color:#475569!important}:root[data-theme=dark] select option{background-color:#1e293b;color:#f8fafc}:root[data-theme=dark] .modal-content,:root[data-theme=dark] .modal-header,:root[data-theme=dark] .modal-body{background-color:#1e293b!important;color:#f8fafc!important}:root[data-theme=dark] .modal-header{border-bottom-color:#334155!important}:root[data-theme=dark] .modal-header h2{color:#f8fafc!important}:root[data-theme=dark] .modal-close{color:#94a3b8!important}:root[data-theme=dark] .modal-close:hover{color:#f8fafc!important;background-color:#334155!important}:root[data-theme=dark] .info-message{background-color:#3b82f626!important;color:#60a5fa!important;border-color:#3b82f666!important}:root[data-theme=dark] .lawyer-checkbox,:root[data-theme=dark] .lawyers-selection label,:root[data-theme=dark] label.lawyer-checkbox{color:#f8fafc!important}:root[data-theme=dark] .lawyer-checkbox .badge-small{color:#94a3b8!important}body{margin:0;font-family:var(--font-family);font-size:var(--font-size-sm);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--content-background);color:var(--content-text)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}button{cursor:pointer;border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family);transition:background-color var(--transition-normal)}button:hover{opacity:.9}input,select,textarea{border:1px solid var(--content-border);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--status-info);box-shadow:0 0 0 2px #3b82f640}
