.sidebar{width:var(--sidebar-width-expanded, 256px);height:100vh;position:fixed;top:0;left:0;background:#2c479b;border-right:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;transition:width var(--duration-slow, .3s) var(--ease-in-out, cubic-bezier(.4, 0, .2, 1));z-index:var(--z-sidebar, 1000);overflow:hidden}.sidebar.collapsed{width:var(--sidebar-width-collapsed, 64px)}.sidebar-header{height:64px;padding:var(--space-4, 16px);display:flex;align-items:center;justify-content:space-between;background:#21357a;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.sidebar-logo{display:flex;align-items:center;gap:var(--space-3, 12px);overflow:hidden}.logo-icon{font-size:24px;flex-shrink:0}.logo-text{font-size:18px;font-weight:600;font-family:var(--font-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);color:#fff;white-space:nowrap;letter-spacing:0;line-height:1.2}.sidebar-toggle{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-md, 6px);color:#fff;cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out);flex-shrink:0}.sidebar-toggle:hover{background:#ffffff1a;color:#fff}.sidebar-toggle:focus{outline:none;box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .4))}.toggle-icon{width:16px;height:16px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:var(--space-4, 16px) var(--space-2, 8px)}.sidebar.collapsed .sidebar-toggle{display:none}.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--space-3, 12px) 0}.sidebar-menu{list-style:none;margin:0;padding:0}.sidebar-item{margin:2px 8px}.sidebar-link{display:flex;align-items:center;gap:12px;height:44px;padding:0 16px;color:#fff;text-decoration:none;border-radius:6px;font-family:var(--font-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:14px;font-weight:400;line-height:1.5;transition:all var(--duration-fast, .15s) var(--ease-in-out);white-space:nowrap;overflow:hidden;position:relative}.sidebar-link:hover{background:#ffffff1a;color:#fff}.sidebar-link:hover .sidebar-icon{color:#fff}.sidebar-link:hover .sidebar-icon path,.sidebar-link:hover .sidebar-icon circle,.sidebar-link:hover .sidebar-icon rect{stroke:#fff}.sidebar-link.active{background:#4a69d1;color:#fff;font-weight:500}.sidebar-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#80b3ff;border-radius:0 2px 2px 0}.sidebar-link.active .sidebar-icon{color:#fff}.sidebar-link.active .sidebar-icon path,.sidebar-link.active .sidebar-icon circle,.sidebar-link.active .sidebar-icon rect{stroke:#fff}.sidebar-icon{width:20px;height:20px;flex-shrink:0;color:#fff}.sidebar-icon svg{color:inherit;display:block}.sidebar-icon svg path,.sidebar-icon svg circle,.sidebar-icon svg rect,.sidebar-icon svg line,.sidebar-icon svg polyline,.sidebar-icon svg polygon{stroke:currentColor;fill:none;stroke-width:2}.sidebar-link[data-icon=dashboard] .sidebar-icon svg rect,.sidebar-link[data-icon=compliance] .sidebar-icon svg rect,.sidebar-link[data-icon=compliance] .sidebar-icon svg path,.sidebar-link[data-icon=tickets] .sidebar-icon svg rect,.sidebar-link[data-icon=tickets] .sidebar-icon svg path,.sidebar-link[data-icon=employees] .sidebar-icon svg circle,.sidebar-link[data-icon=employees] .sidebar-icon svg path,.sidebar-link[data-icon=clients] .sidebar-icon svg rect,.sidebar-link[data-icon=clients] .sidebar-icon svg path,.sidebar-link[data-icon=vendors] .sidebar-icon svg rect,.sidebar-link[data-icon=vendors] .sidebar-icon svg circle,.sidebar-link[data-icon=projects] .sidebar-icon svg rect,.sidebar-link[data-icon=projects] .sidebar-icon svg path,.sidebar-link[data-icon=documents] .sidebar-icon svg path,.sidebar-link[data-icon=immigration] .sidebar-icon svg circle,.sidebar-link[data-icon=immigration] .sidebar-icon svg path,.sidebar-link[data-icon=timesheets] .sidebar-icon svg circle,.sidebar-link[data-icon=timesheets] .sidebar-icon svg path,.sidebar-link[data-icon=admin] .sidebar-icon svg circle,.sidebar-link[data-icon=admin] .sidebar-icon svg path,.sidebar-link[data-icon=newsletter] .sidebar-icon svg rect,.sidebar-link[data-icon=newsletter] .sidebar-icon svg path,.sidebar-link[data-icon=profile] .sidebar-icon svg circle,.sidebar-link[data-icon=profile] .sidebar-icon svg path{fill:inherit!important;stroke:inherit!important}.sidebar-link[data-icon=notifications] .sidebar-icon,.sidebar-link[data-icon=notifications] .sidebar-icon svg{color:#fbbf24!important}.sidebar-link[data-icon=notifications] .sidebar-icon path,.sidebar-link[data-icon=notifications] .sidebar-icon circle,.sidebar-link[data-icon=notifications] .sidebar-icon rect,.sidebar-link[data-icon=notifications] .sidebar-icon line{stroke:#fbbf24!important;fill:none!important}.sidebar-link[data-icon=suggestions] .sidebar-icon,.sidebar-link[data-icon=suggestions] .sidebar-icon svg{color:#fcd34d!important}.sidebar-link[data-icon=suggestions] .sidebar-icon path,.sidebar-link[data-icon=suggestions] .sidebar-icon circle,.sidebar-link[data-icon=suggestions] .sidebar-icon rect,.sidebar-link[data-icon=suggestions] .sidebar-icon line{stroke:#fcd34d!important;fill:none!important}.sidebar-link[data-icon=issues] .sidebar-icon,.sidebar-link[data-icon=issues] .sidebar-icon svg{color:#10b981!important}.sidebar-link[data-icon=issues] .sidebar-icon path,.sidebar-link[data-icon=issues] .sidebar-icon circle,.sidebar-link[data-icon=issues] .sidebar-icon rect,.sidebar-link[data-icon=issues] .sidebar-icon line{stroke:#10b981!important;fill:none!important}.sidebar-link.active[data-icon=notifications] .sidebar-icon,.sidebar-link.active[data-icon=suggestions] .sidebar-icon,.sidebar-link.active[data-icon=issues] .sidebar-icon{color:#fff}.sidebar-link.active[data-icon=notifications] .sidebar-icon path,.sidebar-link.active[data-icon=notifications] .sidebar-icon circle,.sidebar-link.active[data-icon=suggestions] .sidebar-icon path,.sidebar-link.active[data-icon=suggestions] .sidebar-icon circle,.sidebar-link.active[data-icon=issues] .sidebar-icon path,.sidebar-link.active[data-icon=issues] .sidebar-icon circle{stroke:#fff}.sidebar-label{flex:1;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-weight:400;font-size:14px;line-height:1.5}.sidebar-divider{height:1px;background:#ffffff1a;margin:var(--space-3, 12px) var(--space-4, 16px)}.sidebar.collapsed .sidebar-link{justify-content:center;padding:0;height:44px}.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-item{margin:2px}.sidebar.collapsed .sidebar-divider{margin:var(--space-3, 12px) var(--space-2, 8px)}.sidebar-footer{padding:var(--space-3, 12px) var(--space-4, 16px);border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.sidebar-version{font-size:12px;color:#fff9;text-align:center}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (max-width: 1023px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}}@media (max-width: 767px){.sidebar{width:256px}}.notification-card{display:flex;gap:12px;padding:12px;margin-bottom:8px;background:#fff;border-radius:8px;cursor:pointer;transition:background-color .15s ease,box-shadow .15s ease}.notification-card:hover{background:#f9fafb}.notification-card-unread{background:#eff6ff}.notification-card-unread:hover{background:#dbeafe}.notification-card-read{background:#fff}.notification-card-compact{padding:8px;margin-bottom:4px}.notification-priority-indicator{flex-shrink:0;width:4px;border-left:4px solid #e5e7eb;border-radius:2px}.notification-priority-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;margin-left:-6px;display:flex;align-items:center;justify-content:center}.priority-icon{width:8px;height:8px}.priority-icon-outline{width:8px;height:8px;border:1px solid;border-radius:50%;background:transparent}.notification-content{flex:1;min-width:0}.notification-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.notification-title{margin:0;font-size:14px;font-weight:600;color:#111827;line-height:1.4}.notification-time{flex-shrink:0;font-size:12px;color:#6b7280;white-space:nowrap}.notification-message{margin:0;font-size:13px;color:#4b5563;line-height:1.5}.notification-actions{margin-top:8px;display:flex;gap:8px}.notification-action-btn{padding:4px 12px;background:#f3f4f6;border:none;border-radius:6px;color:#374151;font-size:12px;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .15s ease,color .15s ease}.notification-action-btn:hover{background:#e5e7eb;color:#1f2937}.notification-priority-urgent,.notification-priority-high{background-color:#ef4444}.notification-priority-normal{background-color:#f59e0b}.notification-priority-low{background-color:#3b82f6}.notification-bell-container{position:relative}.notification-bell-btn{position:relative;width:40px;height:40px;padding:0;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease,color .15s ease}.notification-bell-btn:hover{background:#f3f4f6;color:#374151}.notification-bell-btn[aria-expanded=true]{background:#eff6ff;color:#3b82f6}.notification-bell-icon{width:24px;height:24px}.notification-bell-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 4px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;line-height:18px;text-align:center;border-radius:9px;border:2px solid #ffffff}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:480px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e5e7eb}.notification-dropdown-title{margin:0;font-size:16px;font-weight:600;color:#111827}.notification-mark-all-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;background:transparent;border:none;border-radius:6px;color:#3b82f6;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.notification-mark-all-btn:hover{background:#eff6ff}.mark-all-icon{width:16px;height:16px}.notification-dropdown-content{flex:1;overflow-y:auto;padding:8px}.notification-loading,.notification-empty{padding:32px 16px;text-align:center;color:#6b7280}.notification-empty-subtext{margin-top:4px;font-size:14px;color:#9ca3af}.notification-dropdown-footer{padding:12px 16px;border-top:1px solid #e5e7eb;text-align:center}.notification-view-all-link{color:#3b82f6;font-size:14px;font-weight:500;text-decoration:none;transition:color .15s ease}.notification-view-all-link:hover{color:#2563eb;text-decoration:underline}@media (max-width: 640px){.notification-dropdown{width:calc(100vw - 32px);right:-8px}}.notification-preferences-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:24px}.notification-preferences-modal{width:100%;max-width:800px;max-height:90vh;background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;overflow:hidden}.notification-preferences-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid #e5e7eb}.preferences-title{margin:0;font-size:20px;font-weight:600;color:#111827}.preferences-close-btn{width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease}.preferences-close-btn:hover{background:#f3f4f6}.close-icon{width:20px;height:20px}.notification-preferences-content{flex:1;overflow-y:auto;padding:24px}.preferences-section{margin-bottom:32px}.preferences-section:last-child{margin-bottom:0}.preferences-section-title{margin:0 0 16px;font-size:12px;font-weight:600;letter-spacing:.05em;color:#6b7280;text-transform:uppercase}.preferences-channels{display:flex;flex-direction:column;gap:16px}.preferences-channel-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f9fafb;border-radius:8px}.preferences-channel-label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:4px}.preferences-channel-desc{margin:0;font-size:12px;color:#6b7280}.preferences-types-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.preferences-types-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:12px;font-weight:600;color:#6b7280;text-align:center}.preferences-type-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:16px;padding:16px;border-bottom:1px solid #e5e7eb;align-items:center}.preferences-type-row:last-child{border-bottom:none}.preferences-type-info{display:flex;flex-direction:column;gap:4px}.preferences-type-label{font-size:14px;font-weight:500;color:#111827}.preferences-type-desc{font-size:12px;color:#6b7280}.toggle-switch{display:flex;align-items:center;gap:8px;padding:0;background:transparent;border:none;cursor:pointer}.toggle-switch.disabled{opacity:.5;cursor:not-allowed}.toggle-switch-track{position:relative;width:48px;height:24px;background:#d1d5db;border-radius:12px;transition:background-color .2s ease-in-out}.toggle-switch.on .toggle-switch-track{background:#3b82f6}.toggle-switch-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s ease-in-out;box-shadow:0 1px 3px #0000001a}.toggle-switch.on .toggle-switch-thumb{transform:translate(24px)}.toggle-switch-label{font-size:12px;font-weight:500;color:#6b7280;min-width:32px}.toggle-switch.on .toggle-switch-label{color:#3b82f6}.preferences-quiet-hours{padding:16px;background:#f9fafb;border-radius:8px}.preferences-quiet-hours-toggle{display:flex;align-items:center;gap:12px;margin-bottom:16px}.preferences-quiet-hours-toggle label{font-size:14px;font-weight:500;color:#111827}.preferences-quiet-hours-config{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.preferences-quiet-hours-config p{margin:0 0 12px;font-size:13px;color:#4b5563}.preferences-time-inputs{display:flex;gap:16px;margin-bottom:12px}.preferences-time-inputs>div{display:flex;flex-direction:column;gap:4px}.preferences-time-inputs label{font-size:12px;font-weight:500;color:#6b7280}.preferences-time-inputs input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#111827}.preferences-quiet-hours-note{margin:12px 0 0!important;font-size:12px;color:#6b7280;font-style:italic}.notification-preferences-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb}.preferences-cancel-btn,.preferences-save-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.preferences-cancel-btn{background:transparent;border:1px solid #e5e7eb;color:#374151}.preferences-cancel-btn:hover{background:#f9fafb}.preferences-save-btn{background:#3b82f6;border:none;color:#fff}.preferences-save-btn:hover{background:#2563eb}@media (max-width: 640px){.notification-preferences-overlay{padding:0}.notification-preferences-modal{max-height:100vh;border-radius:0}.preferences-types-header,.preferences-type-row{grid-template-columns:1fr;gap:8px}.preferences-types-header span:first-child,.preferences-type-info{grid-column:1 / -1}.preferences-time-inputs{flex-direction:column}}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 0;color:#3b82f6;font-size:1.1rem}.loading-spinner.full-screen{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffd9;z-index:1000;min-height:100vh}.loading-spinner .spinner{width:36px;height:36px;border:4px solid #DBEAFE;border-top:4px solid #3B82F6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.loading-spinner .loading-message{color:#374151;font-size:1rem;margin-top:4px}.notifications-page{padding:24px;max-width:1200px;margin:0 auto}.notifications-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px}.notifications-title{margin:0 0 4px;font-size:28px;font-weight:700;color:#111827}.notifications-subtitle{margin:0;font-size:14px;color:#6b7280}.notifications-preferences-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.notifications-preferences-btn:hover{background:#f9fafb;border-color:#d1d5db}.preferences-icon{width:18px;height:18px}.notifications-filters{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.notification-filter-tab{position:relative;padding:8px 16px;background:transparent;border:none;border-radius:8px;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease}.notification-filter-tab:hover{background:#f3f4f6}.notification-filter-tab.active{background:#3b82f6;color:#fff}.filter-badge{margin-left:6px;padding:2px 6px;background:#fef3c7;color:#92400e;font-size:11px;font-weight:600;border-radius:10px}.notification-filter-tab.active .filter-badge{background:#ffffff4d;color:#fff}.notifications-actions{display:flex;justify-content:flex-end;margin-bottom:16px}.notifications-mark-all-btn{padding:8px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#374151;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease}.notifications-mark-all-btn:hover{background:#f9fafb}.notifications-content{min-height:400px}.notifications-group{margin-bottom:32px}.notifications-group-header{margin:0 0 12px;padding-bottom:8px;font-size:12px;font-weight:600;letter-spacing:.05em;color:#6b7280;text-transform:uppercase;border-bottom:1px solid #e5e7eb}.notifications-group-content{display:flex;flex-direction:column;gap:8px}.notification-item-wrapper{position:relative;display:flex;align-items:flex-start;gap:8px}.notification-dismiss-btn{flex-shrink:0;padding:8px 12px;background:transparent;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.notification-dismiss-btn:hover{background:#f9fafb;border-color:#d1d5db}.notifications-empty{padding:80px 24px;text-align:center}.notifications-empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.notifications-empty h2{margin:0 0 8px;font-size:18px;font-weight:600;color:#374151}.notifications-empty p{margin:0;font-size:14px;color:#6b7280}.notifications-error{padding:40px 24px;text-align:center;color:#dc2626}.notifications-retry-btn{margin-top:16px;padding:8px 16px;background:#3b82f6;border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:500;cursor:pointer}.notifications-retry-btn:hover{background:#2563eb}@media (max-width: 640px){.notifications-page{padding:16px}.notifications-header{flex-direction:column;gap:16px}.notifications-filters{overflow-x:auto;-webkit-overflow-scrolling:touch}.notification-item-wrapper{flex-direction:column}.notification-dismiss-btn{align-self:flex-end}}.header{height:64px;position:fixed;top:0;right:0;left:var(--sidebar-width-expanded, 256px);background:var(--color-surface, #ffffff);border-bottom:1px solid var(--color-border, #e5e7eb);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-6, 24px);z-index:var(--z-header, 900);transition:left var(--duration-slow, .3s) var(--ease-in-out)}.sidebar-collapsed .header{left:var(--sidebar-width-collapsed, 64px)}.header-left,.header-center,.header-right{display:flex;align-items:center;gap:var(--space-4, 16px)}.header-left{flex:0 0 auto}.header-center{flex:1;justify-content:center;max-width:480px;margin:0 auto}.header-right{flex:0 0 auto}.header-menu-btn{display:none;width:40px;height:40px;padding:0;background:transparent;border:none;color:var(--color-text-secondary, #6b7280);cursor:pointer;border-radius:var(--radius-md, 6px);transition:background var(--duration-fast, .15s) var(--ease-in-out)}.header-menu-btn:hover{background:var(--color-surface-hover, #f9fafb)}.mobile-only{display:none}.header-breadcrumbs{display:flex;align-items:center}.breadcrumb-list{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:var(--space-2, 8px)}.breadcrumb-item{display:flex;align-items:center;gap:var(--space-2, 8px)}.breadcrumb-separator{color:var(--color-text-muted, #9ca3af);font-size:14px}.breadcrumb-link{color:var(--color-text-secondary, #6b7280);text-decoration:none;font-size:14px;transition:color var(--duration-fast, .15s) var(--ease-in-out)}.breadcrumb-link:hover{color:var(--color-primary, #3b82f6)}.breadcrumb-current{color:var(--color-text-primary, #374151);font-size:14px;font-weight:500}.header-search{position:relative;width:100%;max-width:400px}.search-icon{position:absolute;left:var(--space-3, 12px);top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--color-text-muted, #9ca3af);pointer-events:none}.search-input{width:100%;height:40px;padding:var(--space-2, 8px) var(--space-10, 40px);background:var(--color-surface-secondary, #f9fafb);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);font-size:14px;color:var(--color-text-primary, #374151);transition:all var(--duration-fast, .15s) var(--ease-in-out)}.search-input:focus{outline:none;background:var(--color-surface, #ffffff);border-color:var(--color-primary, #3b82f6);box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .4))}.search-shortcut{position:absolute;right:var(--space-3, 12px);top:50%;transform:translateY(-50%);padding:2px 6px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-sm, 4px);font-size:11px;font-family:var(--font-mono);color:var(--color-text-muted, #9ca3af)}.business-selector{position:relative}.business-selector-btn{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:14px;color:var(--color-text-primary, #374151);cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out)}.business-selector-btn:hover{background:var(--color-surface-hover, #f9fafb);border-color:var(--color-border-dark, #d1d5db)}.business-selector-btn:focus{outline:none;box-shadow:var(--shadow-focus)}.business-icon{width:20px;height:20px;color:var(--color-text-secondary, #6b7280)}.business-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron-icon{width:16px;height:16px;color:var(--color-text-muted, #9ca3af);transition:transform var(--duration-fast, .15s) var(--ease-in-out)}.business-selector-btn[aria-expanded=true] .chevron-icon{transform:rotate(180deg)}.business-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown, 1100);padding:var(--space-2, 8px)}.business-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:transparent;border:none;border-radius:var(--radius-md, 6px);font-size:14px;color:var(--color-text-primary, #374151);cursor:pointer;text-align:left;transition:background var(--duration-fast, .15s) var(--ease-in-out)}.business-option:hover{background:var(--color-surface-hover, #f9fafb)}.business-option.selected{background:var(--color-primary-light, #dbeafe);color:var(--color-primary-dark, #1e40af)}.business-type{font-size:12px;color:var(--color-text-muted, #9ca3af);padding:2px 8px;background:var(--color-surface-secondary, #f3f4f6);border-radius:var(--radius-full, 9999px)}.header-icon-btn{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-md, 6px);color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out)}.header-icon-btn:hover{background:var(--color-surface-hover, #f9fafb);color:var(--color-text-primary, #374151)}.header-icon-btn:focus{outline:none;box-shadow:var(--shadow-focus)}.header-icon{width:24px;height:24px}.notification-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 4px;background:var(--color-error, #ef4444);color:#fff;font-size:11px;font-weight:600;border-radius:var(--radius-full, 9999px);display:flex;align-items:center;justify-content:center}.user-menu{position:relative}.user-menu-btn{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-1, 4px);background:transparent;border:none;border-radius:var(--radius-md, 6px);cursor:pointer;transition:background var(--duration-fast, .15s) var(--ease-in-out)}.user-menu-btn:hover{background:var(--color-surface-hover, #f9fafb)}.user-menu-btn:focus{outline:none;box-shadow:var(--shadow-focus)}.user-avatar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-primary, #3b82f6);color:#fff;font-size:12px;font-weight:600;border-radius:var(--radius-full, 9999px)}.user-dropdown{position:absolute;top:calc(100% + 4px);right:0;min-width:240px;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown, 1100);padding:var(--space-2, 8px)}.user-info{display:flex;align-items:center;gap:var(--space-3, 12px);padding:var(--space-3, 12px)}.user-avatar-large{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-primary, #3b82f6);color:#fff;font-size:14px;font-weight:600;border-radius:var(--radius-full, 9999px);flex-shrink:0}.user-details{display:flex;flex-direction:column;overflow:hidden}.user-name{font-size:14px;font-weight:600;color:var(--color-text-primary, #374151);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-email{font-size:12px;color:var(--color-text-muted, #9ca3af);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-divider{height:1px;background:var(--color-border, #e5e7eb);margin:var(--space-2, 8px) 0}.dropdown-item{display:flex;align-items:center;gap:var(--space-3, 12px);width:100%;padding:var(--space-2, 8px) var(--space-3, 12px);background:transparent;border:none;border-radius:var(--radius-md, 6px);font-size:14px;color:var(--color-text-primary, #374151);text-decoration:none;cursor:pointer;transition:background var(--duration-fast, .15s) var(--ease-in-out)}.dropdown-item:hover{background:var(--color-surface-hover, #f9fafb)}.dropdown-item.danger{color:var(--color-error, #ef4444)}.dropdown-item.danger:hover{background:var(--color-error-light, #fee2e2)}.dropdown-icon{width:20px;height:20px;flex-shrink:0}@media (max-width: 1023px){.header{left:0}.mobile-only{display:flex}.header-search{display:none}}@media (max-width: 767px){.header{padding:0 var(--space-4, 16px)}.header-breadcrumbs,.business-name{display:none}}.layout{display:flex;min-height:100vh;background-color:var(--color-gray-50)}.layout-main{flex:1;display:flex;flex-direction:column;margin-left:var(--sidebar-width-expanded);transition:margin-left var(--transition-slow);min-height:100vh}.layout-main.sidebar-collapsed{margin-left:var(--sidebar-width-collapsed)}.layout-content{flex:1;padding:var(--space-6);margin-top:var(--header-height);overflow-x:hidden}@media (max-width: 1024px){.layout-main{margin-left:var(--sidebar-width-collapsed)}}@media (max-width: 768px){.layout-main{margin-left:0}.layout-content{padding:var(--space-4)}}.dashboard-container{padding:var(--space-6, 24px);max-width:1440px;margin:0 auto}.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#dbeafe,#ede9fe);border-radius:var(--radius-xl, 12px);padding:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.welcome-greeting{font-size:24px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0 0 var(--space-2, 8px) 0}.welcome-subtext{font-size:14px;color:var(--color-text-secondary, #4b5563);margin:0}.welcome-date{font-size:14px;color:var(--color-text-secondary, #6b7280)}.dashboard-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;min-height:140px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:all var(--transition-normal, .2s);display:flex;flex-direction:column;gap:var(--space-3, 12px);position:relative}.stat-card:hover{box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-2px);border-color:var(--color-primary, #3b82f6)}.stat-card.clickable:focus,.stat-card.clickable:focus-visible{outline:none;box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .1));border-color:var(--color-primary, #3b82f6)}.stat-card.clickable:active{transform:translateY(0)}.stat-card.highlighted{border-left:3px solid #3B82F6}.stat-card-header{display:flex;justify-content:space-between;align-items:flex-start}.stat-icon-container{width:40px;height:40px;border-radius:var(--radius-lg, 8px);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon{width:20px;height:20px}.stat-trend{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500;padding:4px 8px;border-radius:var(--radius-md, 6px)}.stat-trend.positive{color:var(--color-success, #10b981);background:var(--color-success-light, #d1fae5)}.stat-trend.negative{color:var(--color-error, #ef4444);background:var(--color-error-light, #fee2e2)}.stat-trend.neutral{color:var(--color-text-secondary, #6b7280);background:var(--color-surface-secondary, #f3f4f6)}.trend-icon{width:14px;height:14px}.stat-card-body{display:flex;flex-direction:column;gap:var(--space-1, 4px)}.stat-value{font-size:32px;font-weight:700;color:#1f2937;line-height:1.2}.stat-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.stat-secondary{font-size:12px;color:#3b82f6;margin-top:var(--space-2, 8px);display:flex;align-items:center;gap:4px}.dashboard-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.chart-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:var(--space-6, 24px);min-height:320px;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.chart-header{margin-bottom:var(--space-4, 16px);padding-bottom:var(--space-4, 16px);border-bottom:1px solid var(--color-border, #e5e7eb)}.chart-title{font-size:16px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0}.chart-placeholder{display:flex;align-items:center;justify-content:center;height:240px;background:var(--color-surface-secondary, #f9fafb);border-radius:var(--radius-lg, 8px);color:var(--color-text-muted, #9ca3af);font-size:14px}.dashboard-section{margin-bottom:var(--space-6, 24px)}.section-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4, 16px) var(--space-5, 20px);border-bottom:1px solid var(--color-border, #e5e7eb)}.section-title{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:16px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0}.section-icon{width:20px;height:20px;color:var(--color-warning, #f59e0b)}.section-link{font-size:14px;font-weight:500;color:var(--color-primary, #3b82f6);text-decoration:none;transition:color var(--duration-fast, .15s) var(--ease-in-out)}.section-link:hover{color:var(--color-primary-dark, #2563eb)}.section-content{padding:var(--space-6, 24px)}.section-placeholder{text-align:center;color:var(--color-text-muted, #9ca3af);font-size:14px;padding:var(--space-8, 32px)}.dashboard-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4, 16px)}.dashboard-error p{color:var(--color-error, #ef4444);font-size:14px}.dashboard-error button{padding:var(--space-2, 8px) var(--space-4, 16px);background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:background var(--duration-fast, .15s) var(--ease-in-out)}.dashboard-error button:hover{background:var(--color-primary-dark, #2563eb)}@media (max-width: 1023px){.dashboard-stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-charts{grid-template-columns:1fr}}@media (max-width: 767px){.dashboard-container{padding:var(--space-4, 16px)}.dashboard-welcome{flex-direction:column;align-items:flex-start;gap:var(--space-3, 12px)}.dashboard-stats-grid{grid-template-columns:1fr}.stat-card{min-height:120px}.stat-value{font-size:28px}}.employee-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.bulk-actions-bar{display:flex;align-items:center;gap:var(--space-4, 16px);padding:var(--space-3, 12px) var(--space-4, 16px);background:var(--color-primary, #3b82f6);border-radius:var(--radius-lg, 8px);margin-bottom:var(--space-4, 16px);color:#fff}.selected-count{font-size:14px;font-weight:500;padding-right:var(--space-4, 16px);border-right:1px solid rgba(255,255,255,.3)}.bulk-actions{display:flex;align-items:center;gap:var(--space-2, 8px);flex:1}.bulk-action-btn{display:flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-3, 12px);background:#fff3;color:#fff;border:none;border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--duration-fast, .15s)}.bulk-action-btn:hover{background:#ffffff4d}.bulk-cancel-btn{padding:var(--space-1, 4px) var(--space-3, 12px);background:transparent;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer}.bulk-cancel-btn:hover{background:#ffffff1a}.employee-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.page-subtitle{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0}.header-actions{display:flex;align-items:center;gap:var(--space-3, 12px)}.btn-secondary{padding:var(--space-2, 8px) var(--space-4, 16px);background:var(--color-surface, #ffffff);color:var(--color-text-primary, #374151);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out);display:inline-flex;align-items:center;gap:var(--space-2, 8px)}.btn-secondary:hover{background:var(--color-bg-secondary, #f9fafb);border-color:var(--color-border-dark, #9ca3af)}.btn-icon{padding:var(--space-2, 8px);background:transparent;color:var(--color-text-secondary, #6b7280);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);cursor:pointer;transition:all var(--duration-fast, .15s)}.btn-icon:hover,.btn-icon.active{background:var(--color-bg-secondary, #f9fafb);color:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6)}.filters-bar{display:flex;align-items:center;gap:var(--space-3, 12px);margin-bottom:var(--space-4, 16px)}.employee-type-filters{display:flex;gap:var(--space-2, 8px);align-items:center}.btn-filter{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;color:var(--color-text-primary, #374151);cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out);white-space:nowrap}.btn-filter:hover{background:var(--color-surface-hover, #f9fafb);border-color:var(--color-border-dark, #9ca3af)}.btn-filter:focus,.btn-filter:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-primary-light, rgba(59, 130, 246, .1));border-color:var(--color-primary, #3b82f6)}.btn-filter.active{background:var(--color-primary-light, #dbeafe);color:var(--color-primary-dark, #1e40af);border-color:var(--color-primary, #3b82f6);font-weight:500}.btn-filter.active:hover{background:var(--color-primary-light, #dbeafe);border-color:var(--color-primary-dark, #2563eb)}.search-input-wrapper{position:relative;flex:1;max-width:400px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--color-text-muted, #9ca3af)}.search-input{width:100%;padding:var(--space-2, 8px) var(--space-4, 16px) var(--space-2, 8px) 40px;border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;color:var(--color-text-primary, #374151);background:var(--color-surface, #ffffff);transition:border-color var(--duration-fast, .15s),box-shadow var(--duration-fast, .15s)}.search-input::placeholder{color:var(--color-text-muted, #9ca3af)}.search-input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.search-shortcut{position:absolute;right:12px;top:50%;transform:translateY(-50%);padding:2px 6px;background:var(--color-bg-tertiary, #f3f4f6);border-radius:var(--radius-sm, 4px);font-size:11px;color:var(--color-text-muted, #9ca3af);font-family:monospace}.filter-dropdowns{display:flex;align-items:center;gap:var(--space-2, 8px)}.filter-dropdown select{padding:var(--space-2, 8px) var(--space-8, 32px) var(--space-2, 8px) var(--space-3, 12px);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;color:var(--color-text-primary, #374151);background:var(--color-surface, #ffffff);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' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.filter-dropdown select:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2, 8px);margin-bottom:var(--space-4, 16px)}.filter-tag{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);background:var(--color-primary-light, #dbeafe);color:var(--color-primary-dark, #1e40af);border-radius:var(--radius-full, 9999px);font-size:12px;font-weight:500}.filter-tag-remove{display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:none;cursor:pointer;color:var(--color-primary-dark, #1e40af);border-radius:50%;transition:background var(--duration-fast, .15s)}.filter-tag-remove:hover{background:#1e40af33}.clear-filters-btn{padding:var(--space-1, 4px) var(--space-2, 8px);background:transparent;color:var(--color-text-secondary, #6b7280);border:none;font-size:12px;cursor:pointer;text-decoration:underline}.clear-filters-btn:hover{color:var(--color-primary, #3b82f6)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12, 48px);text-align:center;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px)}.empty-state h3{font-size:18px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-2, 8px) 0}.empty-state p{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0 0 var(--space-4, 16px) 0}.error-message{display:flex;flex-direction:column;align-items:center;gap:var(--space-4, 16px);padding:var(--space-8, 32px);background:var(--color-error-light, #fee2e2);border:1px solid var(--color-error, #ef4444);border-radius:var(--radius-lg, 8px)}.error-message p{color:var(--color-error, #ef4444);font-size:14px;margin:0}.employee-table-wrapper{background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);overflow:hidden}.employee-table{width:100%;border-collapse:collapse}.employee-table thead{background:var(--color-bg-secondary, #f9fafb);border-bottom:1px solid var(--color-border, #e5e7eb)}.employee-table th{padding:var(--space-3, 12px) var(--space-4, 16px);text-align:left;font-size:12px;font-weight:600;color:var(--color-gray-700, #374151);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.employee-table th.col-checkbox,.employee-table td.col-checkbox{width:48px;text-align:center}.employee-table tbody tr{border-bottom:1px solid var(--color-border, #e5e7eb);transition:background var(--duration-fast, .15s)}.employee-table tbody tr:hover{background:var(--color-bg-secondary, #f9fafb)}.employee-table tbody tr.selected{background:var(--color-primary-light, #dbeafe)}.employee-table td{padding:var(--space-4, 16px);font-size:14px;color:var(--color-text-primary, #374151);vertical-align:middle}.employee-table input[type=checkbox]{width:16px;height:16px;border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;accent-color:var(--color-primary, #3b82f6)}.employee-cell{display:flex;align-items:center;gap:var(--space-3, 12px)}.employee-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-primary, #3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0;overflow:hidden}.employee-info{display:flex;flex-direction:column;gap:2px;min-width:0}.employee-name{font-size:14px;font-weight:500;color:var(--color-text-primary, #374151);text-decoration:none;transition:color var(--duration-fast, .15s)}.employee-name:hover{color:var(--color-primary, #3b82f6)}.employee-code{font-size:12px;color:var(--color-text-muted, #9ca3af);font-family:var(--font-mono, monospace)}.employee-email{font-size:12px;color:var(--color-text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.type-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-full, 9999px);font-size:12px;font-weight:500;white-space:nowrap}.type-icon{font-size:12px}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-full, 9999px);font-size:var(--text-sm, 12px);font-weight:var(--font-medium, 500);white-space:nowrap}.status-dot{width:6px;height:6px;border-radius:50%}.compliance-badge{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1, 4px);min-width:28px;padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-full, 9999px);font-size:12px;font-weight:600}.compliance-badge.success{background:var(--color-success-light, #d1fae5);color:var(--color-success-dark, #065f46)}.compliance-badge.warning{background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e)}.compliance-badge.critical{background:var(--color-error-light, #fee2e2);color:var(--color-error-dark, #991b1b)}.projects-count{font-weight:500;color:var(--color-text-primary, #374151)}.action-buttons{display:flex;align-items:center;gap:var(--space-1, 4px)}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;color:var(--color-text-secondary, #6b7280);border:1px solid transparent;border-radius:var(--radius-md, 6px);cursor:pointer;transition:all var(--duration-fast, .15s)}.action-btn:hover{background:var(--color-bg-secondary, #f9fafb);color:var(--color-primary, #3b82f6);border-color:var(--color-border, #d1d5db)}.action-menu-wrapper{position:relative}.action-menu{position:absolute;top:100%;right:0;z-index:50;min-width:180px;margin-top:var(--space-1, 4px);padding:var(--space-1, 4px) 0;background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.action-menu button{display:flex;align-items:center;gap:var(--space-2, 8px);width:100%;padding:var(--space-2, 8px) var(--space-3, 12px);background:transparent;color:var(--color-text-primary, #374151);border:none;font-size:13px;text-align:left;cursor:pointer;transition:background var(--duration-fast, .15s)}.action-menu button:hover{background:var(--color-bg-secondary, #f9fafb)}.action-menu button.danger{color:var(--color-error, #ef4444)}.action-menu button.danger:hover{background:var(--color-error-light, #fee2e2)}.menu-divider{height:1px;background:var(--color-border, #e5e7eb);margin:var(--space-1, 4px) 0}.pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4, 16px);background:var(--color-surface, #ffffff);border:1px solid var(--color-border, #e5e7eb);border-top:none;border-radius:0 0 var(--radius-lg, 8px) var(--radius-lg, 8px)}.pagination-info{font-size:13px;color:var(--color-text-secondary, #6b7280)}.pagination-controls{display:flex;align-items:center;gap:var(--space-1, 4px)}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--space-2, 8px);background:transparent;color:var(--color-text-secondary, #6b7280);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--duration-fast, .15s)}.pagination-btn:hover:not(:disabled){background:var(--color-bg-secondary, #f9fafb);border-color:var(--color-border-dark, #9ca3af)}.pagination-btn.active{background:var(--color-primary, #3b82f6);color:#fff;border-color:var(--color-primary, #3b82f6)}.rows-per-page{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:13px;color:var(--color-text-secondary, #6b7280)}.rows-per-page select{padding:var(--space-1, 4px) var(--space-6, 24px) var(--space-1, 4px) var(--space-2, 8px);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:13px;background:var(--color-surface, #ffffff);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' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 4px center;background-size:14px}@media (max-width: 1024px){.employee-list-header{flex-direction:column;gap:var(--space-4, 16px)}.header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.filters-bar{flex-wrap:wrap}.search-input-wrapper{width:100%;max-width:none}.filter-dropdowns{flex-wrap:wrap}}@media (max-width: 767px){.employee-list-container{padding:var(--space-4, 16px)}.btn-secondary{padding:var(--space-2, 8px)}.btn-secondary span{display:none}.employee-table-wrapper{overflow-x:auto}.employee-table{min-width:800px}.pagination{flex-wrap:wrap;gap:var(--space-3, 12px)}.pagination-info{width:100%}.bulk-actions-bar{flex-wrap:wrap}.bulk-actions{width:100%;justify-content:flex-start}}.visa-status-overview{width:100%}.visa-status-overview-loading,.visa-status-overview-error,.visa-status-overview-empty{padding:2rem;text-align:center}.visa-status-overview-error .error-message{color:#ef4444}.visa-status-card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.visa-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #E5E7EB}.visa-status-title{display:flex;align-items:center;gap:.75rem}.visa-status-title .visa-icon{width:2rem;height:2rem;color:#3b82f6}.visa-status-title h3{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.visa-status-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.875rem}.visa-status-badge .status-icon{width:1.25rem;height:1.25rem}.visa-status-details{display:flex;flex-direction:column;gap:1.5rem}.visa-detail-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.visa-detail-field{display:flex;flex-direction:column;gap:.5rem}.visa-detail-field label{font-size:.875rem;font-weight:500;color:#6b7280}.visa-detail-value{display:flex;align-items:center;gap:.5rem;font-size:1rem;color:#111827}.copy-button{background:none;border:none;cursor:pointer;font-size:1rem;padding:.25rem;opacity:.6;transition:opacity .2s}.copy-button:hover{opacity:1}.visa-validity-period{display:flex;flex-direction:column;gap:1rem}.visa-validity-period h4{margin:0;font-size:1rem;font-weight:600;color:#111827}.validity-dates{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.validity-date{display:flex;flex-direction:column;gap:.5rem}.validity-date label{font-size:.875rem;font-weight:500;color:#6b7280}.validity-date span{font-size:1rem;color:#111827}.visa-progress{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#f9fafb;border-radius:6px}.progress-info{display:flex;justify-content:space-between;font-size:.875rem;color:#374151}.progress-bar-container{position:relative;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:6px;transition:width .3s ease}.progress-bar-today{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;background:#3b82f6;border:2px solid white;border-radius:50%;box-shadow:0 2px 4px #0003}.progress-timeline{display:flex;justify-content:space-between;font-size:.75rem;color:#6b7280}.today-marker{font-weight:600;color:#3b82f6}@media (max-width: 768px){.visa-detail-row,.validity-dates{grid-template-columns:1fr}.visa-status-header{flex-direction:column;align-items:flex-start;gap:1rem}}.visa-history-timeline{width:100%}.visa-history-loading,.visa-history-error,.visa-history-empty{padding:2rem;text-align:center}.visa-history-error .error-message{color:#ef4444}.timeline-container{position:relative;padding-left:2rem}.timeline-item{display:flex;gap:1.5rem;margin-bottom:2rem;position:relative}.timeline-node-container{display:flex;flex-direction:column;align-items:center;position:relative}.timeline-node{width:16px;height:16px;border-radius:50%;border:2px solid;position:relative;z-index:2;background:#fff}.timeline-node.filled{border-width:0}.timeline-node-fill{width:100%;height:100%;border-radius:50%}.timeline-line{width:2px;flex:1;min-height:2rem;margin-top:.5rem}.timeline-content{flex:1;padding-bottom:1rem}.visa-history-card{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:1.25rem;box-shadow:0 1px 2px #0000000d}.visa-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.visa-history-header h4{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.visa-history-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600}.visa-history-dates{font-size:.875rem;color:#6b7280;margin-bottom:.75rem}.visa-history-detail{display:flex;gap:.5rem;font-size:.875rem;margin-bottom:.5rem}.detail-label{font-weight:500;color:#6b7280}.visa-history-status{font-size:.875rem;color:#374151;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #E5E7EB}.status-note{display:block;margin-top:.25rem;font-size:.75rem;color:#6b7280;font-style:italic}@media (max-width: 768px){.timeline-container{padding-left:1.5rem}.timeline-node{width:12px;height:12px}}.visa-status-form{padding:0}.dependent-form{max-width:700px}.modal-content{background:#fff;border-radius:8px;max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 25px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #E5E7EB}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;transition:color .2s}.modal-close:hover{color:#111827}.form-error{padding:1rem 1.5rem;background:#fee2e2;color:#991b1b;border-bottom:1px solid #E5E7EB}.form-error p{margin:0}form{padding:1.5rem}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#111827;padding-bottom:.5rem;border-bottom:1px solid #E5E7EB}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.form-group input,.form-group select{padding:.625rem;border:1px solid #D1D5DB;border-radius:6px;font-size:.875rem;transition:border-color .2s}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.field-error{font-size:.75rem;color:#ef4444}.checkbox-group{flex-direction:row;align-items:flex-start;gap:.5rem}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.form-hint{margin:0;font-size:.75rem;color:#6b7280;margin-left:1.5rem}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid #E5E7EB}.btn-primary,.btn-secondary{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}}.dependents-management{width:100%}.dependents-management-loading,.dependents-management-error,.dependents-empty{padding:2rem;text-align:center}.dependents-management-error .error-message{color:#ef4444}.dependents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dependents-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.dependents-list{display:flex;flex-direction:column;gap:1.5rem}.dependent-card{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:1.5rem;box-shadow:0 1px 2px #0000000d}.dependent-header{margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #E5E7EB}.dependent-name-section{display:flex;align-items:center;gap:1rem}.dependent-icon{font-size:2rem}.dependent-name-section h4{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.dependent-relationship{display:inline-block;padding:.25rem .75rem;background:#f3f4f6;color:#374151;border-radius:4px;font-size:.75rem;font-weight:500;margin-top:.25rem}.dependent-details{display:flex;flex-direction:column;gap:1rem}.dependent-detail-row{display:flex;gap:.5rem;font-size:.875rem}.detail-value{color:#111827}.dependent-visa-section,.dependent-contact-section{padding:1rem;background:#f9fafb;border-radius:6px}.dependent-visa-section h5,.dependent-contact-section h5{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#374151}.dependent-visa-info{display:flex;flex-direction:column;gap:.5rem}.visa-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600}.dependent-actions{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #E5E7EB;justify-content:flex-end}.btn-primary,.btn-secondary,.btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.btn-secondary{background:#f3f4f6;color:#374151}.btn-danger{background:#fee2e2;color:#991b1b}.btn-sm{padding:.375rem .75rem;font-size:.75rem}@media (max-width: 768px){.dependent-actions{flex-direction:column}.dependent-actions button{width:100%;justify-content:center}}.icon-xs{width:16px;height:16px}.icon-sm{width:20px;height:20px}.icon-md{width:24px;height:24px}.icon-lg{width:32px;height:32px}.employee-detail-container{padding:var(--space-6, 24px);max-width:1440px;margin:0 auto}.employee-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6, 24px)}.header-left{display:flex;align-items:center}.back-button{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-3, 12px);background:transparent;border:none;color:var(--color-text-secondary, #6b7280);font-size:14px;font-weight:500;cursor:pointer;border-radius:var(--radius-md, 6px);transition:all var(--duration-fast, .15s) var(--ease-in-out)}.back-button:hover{background:var(--color-background-light, #f3f4f6);color:var(--color-text-primary, #374151)}.header-actions{display:flex;gap:var(--space-3, 12px)}.btn-primary{padding:var(--space-2, 8px) var(--space-4, 16px);background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:background var(--duration-fast, .15s) var(--ease-in-out);display:inline-flex;align-items:center;gap:var(--space-2, 8px)}.btn-primary:hover{background:var(--color-primary-dark, #2563eb)}.btn-secondary{padding:var(--space-2, 8px) var(--space-4, 16px);background:#fff;color:var(--color-text-primary, #374151);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--duration-fast, .15s) var(--ease-in-out);display:inline-flex;align-items:center;gap:var(--space-2, 8px)}.btn-secondary:hover{background:var(--color-background-light, #f9fafb)}.btn-sm{padding:var(--space-1, 4px) var(--space-3, 12px);font-size:13px}.btn-xs{padding:2px var(--space-2, 8px);font-size:12px}.employee-header-card{background:#fff;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.header-main{display:flex;align-items:flex-start;gap:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.employee-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary, #3b82f6),var(--color-primary-dark, #2563eb));display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.employee-avatar img{width:100%;height:100%;object-fit:cover}.avatar-initials{color:#fff;font-size:28px;font-weight:600}.employee-info{flex:1}.employee-name{font-size:24px;font-weight:700;color:var(--color-text-primary, #1f2937);margin:0 0 var(--space-1, 4px) 0}.employee-code{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0 0 var(--space-3, 12px) 0;font-family:var(--font-mono, monospace)}.employee-badges{display:flex;gap:var(--space-2, 8px);flex-wrap:wrap}.employee-type-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:9999px;font-size:12px;font-weight:500}.type-icon{font-size:14px}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:9999px;font-size:12px;font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%}.review-status-badge{display:inline-flex;align-items:center;padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-md, 6px);font-size:12px;font-weight:500;border:1px solid}.employee-contact{display:flex;flex-direction:column;gap:var(--space-2, 8px);margin-left:auto}.contact-item{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:14px;color:var(--color-text-secondary, #6b7280);text-decoration:none;transition:color var(--duration-fast, .15s)}.contact-item:hover{color:var(--color-primary, #3b82f6)}.quick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4, 16px);padding-top:var(--space-6, 24px);border-top:1px solid var(--color-border, #e5e7eb)}.quick-stat-card{display:flex;align-items:center;gap:var(--space-3, 12px);padding:var(--space-4, 16px);background:var(--color-background-light, #f9fafb);border-radius:var(--radius-md, 6px)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-md, 6px);background:#fff;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #6b7280)}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:20px;font-weight:600;color:var(--color-text-primary, #1f2937)}.stat-label{font-size:13px;color:var(--color-text-secondary, #6b7280)}.stat-subtext{font-size:12px;color:var(--color-text-muted, #9ca3af)}.stat-card-success .stat-value{color:#10b981}.stat-card-warning .stat-value{color:#f59e0b}.stat-card-danger .stat-value{color:#ef4444}.tab-navigation{display:flex;gap:0;border-bottom:1px solid var(--color-border, #e5e7eb);margin-bottom:var(--space-6, 24px);overflow-x:auto}.tab-button{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-3, 12px) var(--space-4, 16px);background:transparent;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:var(--color-text-secondary, #6b7280);cursor:pointer;white-space:nowrap;transition:all var(--duration-fast, .15s) var(--ease-in-out)}.tab-button:hover{color:var(--color-text-primary, #374151);background:var(--color-background-light, #f9fafb)}.tab-button.active{color:var(--color-primary, #3b82f6);border-bottom-color:var(--color-primary, #3b82f6)}.tab-content{background:#fff;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);min-height:400px}.info-card{background:#fff;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.info-card:last-child{margin-bottom:0}.info-card h3{font-size:16px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-5, 20px) 0;padding-bottom:var(--space-4, 16px);border-bottom:1px solid var(--color-border, #e5e7eb)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4, 16px);padding-bottom:var(--space-4, 16px);border-bottom:1px solid var(--color-border, #e5e7eb)}.card-header h3{margin:0;padding:0;border:none}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-5, 20px) var(--space-6, 24px)}.info-field{display:flex;flex-direction:column;gap:var(--space-1, 4px)}.info-label{font-size:12px;font-weight:500;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.info-value-wrapper{display:flex;align-items:center;gap:var(--space-2, 8px)}.info-value{font-size:14px;color:var(--color-text-primary, #1f2937)}.mask-toggle{background:transparent;border:none;color:var(--color-text-secondary, #6b7280);cursor:pointer;padding:2px;display:flex;align-items:center;transition:color var(--duration-fast, .15s)}.mask-toggle:hover{color:var(--color-primary, #3b82f6)}.address-list{display:flex;flex-direction:column;gap:var(--space-4, 16px)}.address-item{padding:var(--space-4, 16px);background:var(--color-background-light, #f9fafb);border-radius:var(--radius-md, 6px);border-left:3px solid var(--color-border, #e5e7eb)}.address-item.address-current{border-left-color:var(--color-success, #10b981);background:#f0fdf4}.address-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3, 12px)}.current-badge{display:inline-block;padding:2px var(--space-2, 8px);background:#d1fae5;color:#065f46;font-size:11px;font-weight:600;border-radius:var(--radius-sm, 4px);text-transform:uppercase}.address-dates{font-size:13px;color:var(--color-text-muted, #9ca3af)}.address-content p{margin:0 0 var(--space-1, 4px) 0}.address-street{font-size:14px;font-weight:500;color:var(--color-text-primary, #1f2937)}.address-street2{font-size:14px;color:var(--color-text-primary, #1f2937)}.address-city{font-size:14px;color:var(--color-text-secondary, #374151)}.address-country{font-size:14px;color:var(--color-text-secondary, #6b7280)}.tab-content-documents{display:flex;flex-direction:column;gap:var(--space-6, 24px)}.documents-header{display:flex;align-items:center;gap:var(--space-4, 16px);padding:var(--space-4, 16px);background:var(--color-background-light, #f9fafb);border-radius:var(--radius-md, 6px)}.checklist-info{display:flex;flex-direction:column;gap:var(--space-1, 4px);min-width:200px}.checklist-name{font-size:14px;font-weight:500;color:var(--color-text-primary, #374151)}.checklist-progress{font-size:13px;color:var(--color-text-secondary, #6b7280)}.progress-bar{flex:1;height:8px;background:var(--color-border, #e5e7eb);border-radius:9999px;overflow:hidden}.progress-fill{height:100%;background:var(--color-primary, #3b82f6);border-radius:9999px;transition:width .3s ease}.progress-percent{font-size:14px;font-weight:600;color:var(--color-text-primary, #374151);min-width:40px;text-align:right}.document-group{border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.document-group-header{display:flex;align-items:center;gap:var(--space-3, 12px);width:100%;padding:var(--space-4, 16px);background:var(--color-background-light, #f9fafb);border:none;cursor:pointer;transition:background var(--duration-fast, .15s)}.document-group-header:hover{background:#f3f4f6}.group-icon{font-size:18px}.group-title{flex:1;text-align:left;font-size:14px;font-weight:600;color:var(--color-text-primary, #374151)}.group-chevron{font-size:12px;color:var(--color-text-secondary, #6b7280);transition:transform var(--duration-fast, .15s)}.group-chevron.rotated{transform:rotate(180deg)}.document-group-items{border-top:1px solid var(--color-border, #e5e7eb)}.document-item{display:flex;align-items:center;gap:var(--space-4, 16px);padding:var(--space-4, 16px);border-bottom:1px solid var(--color-border, #e5e7eb)}.document-item:last-child{border-bottom:none}.document-item.document-missing{background:#fff5f5}.document-status-icon{flex-shrink:0}.document-info{flex:1;min-width:0}.document-name{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary, #374151)}.document-meta{display:block;font-size:12px;color:var(--color-text-muted, #9ca3af);margin-top:2px}.document-missing-text{display:block;font-size:12px;color:var(--color-error, #ef4444);margin-top:2px}.document-dates{display:flex;flex-direction:column;gap:2px;min-width:150px;text-align:right}.document-uploaded,.document-expiry{font-size:12px;color:var(--color-text-secondary, #6b7280)}.document-expiry.expiry-warning{color:var(--color-warning, #f59e0b);font-weight:500}.document-actions{display:flex;gap:var(--space-2, 8px);flex-shrink:0}.doc-action-btn{padding:var(--space-2, 8px);background:transparent;border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 6px);color:var(--color-text-secondary, #6b7280);cursor:pointer;transition:all var(--duration-fast, .15s)}.doc-action-btn:hover{background:var(--color-background-light, #f9fafb);color:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6)}.upload-btn{display:flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-2, 8px) var(--space-3, 12px);background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:var(--radius-md, 6px);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--duration-fast, .15s)}.upload-btn:hover{background:var(--color-primary-dark, #2563eb)}.tab-content-projects{display:flex;flex-direction:column;gap:var(--space-6, 24px)}.projects-header{display:flex;justify-content:space-between;align-items:center}.projects-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary, #374151);margin:0}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-4, 16px)}.project-card{padding:var(--space-5, 20px);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);background:#fff}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4, 16px)}.project-name{font-size:16px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0}.project-details{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.project-details p{display:flex;align-items:center;gap:var(--space-2, 8px);margin:0;font-size:14px;color:var(--color-text-secondary, #6b7280)}.project-rate{font-size:13px!important;color:var(--color-text-muted, #9ca3af)!important;padding-top:var(--space-2, 8px);border-top:1px dashed var(--color-border, #e5e7eb);margin-top:var(--space-2, 8px)}.project-lca-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);background:#dbeafe;color:#1e40af;font-size:12px;font-weight:500;border-radius:var(--radius-sm, 4px);margin-top:var(--space-3, 12px)}.tab-content-timesheets{display:flex;flex-direction:column;gap:var(--space-6, 24px)}.timesheets-header{display:flex;justify-content:space-between;align-items:center}.timesheets-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary, #374151);margin:0}.timesheets-table{width:100%;border-collapse:collapse}.timesheets-table th{text-align:left;padding:var(--space-3, 12px) var(--space-4, 16px);background:var(--color-background-light, #f9fafb);font-size:12px;font-weight:600;color:var(--color-text-secondary, #374151);text-transform:uppercase;border-bottom:1px solid var(--color-border, #e5e7eb)}.timesheets-table td{padding:var(--space-3, 12px) var(--space-4, 16px);font-size:14px;color:var(--color-text-primary, #374151);border-bottom:1px solid var(--color-border, #e5e7eb)}.timesheets-table tr:hover{background:var(--color-background-light, #f9fafb)}.tab-content-visa{padding:1.5rem}.visa-immigration-container{display:flex;flex-direction:column;gap:2rem}.visa-section{display:flex;flex-direction:column;gap:1rem}.visa-section-header{display:flex;justify-content:space-between;align-items:center}.visa-section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.btn-primary.btn-sm{padding:.5rem 1rem;font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.btn-primary.btn-sm:hover{background:#2563eb}.icon-sm{width:1rem;height:1rem}.tab-content-performance{display:flex;flex-direction:column;gap:var(--space-6, 24px)}.performance-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:var(--space-4, 16px);border-bottom:1px solid var(--color-border, #e5e7eb)}.employee-info{font-size:14px;color:var(--color-text-primary, #374151);margin:0}.current-project{font-size:13px;color:var(--color-text-secondary, #6b7280);margin:var(--space-1, 4px) 0 0 0}.reviews-section{display:flex;flex-direction:column;gap:var(--space-4, 16px)}.section-title{font-size:12px;font-weight:600;color:var(--color-text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin:0 0 var(--space-2, 8px) 0}.review-card{padding:var(--space-5, 20px);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-lg, 8px);background:#fff}.review-card.review-active{border-color:var(--color-primary, #3b82f6);background:#f8faff}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4, 16px)}.review-title-row{display:flex;align-items:center;gap:var(--space-3, 12px)}.review-title{font-size:16px;font-weight:600;color:var(--color-text-primary, #1f2937);margin:0}.text-success{color:#10b981}.text-warning{color:#f59e0b}.star-rating{display:flex;align-items:center;gap:var(--space-1, 4px)}.star-filled{color:#f59e0b}.star-empty{color:#d1d5db}.rating-value{margin-left:var(--space-2, 8px);font-size:14px;font-weight:600;color:var(--color-text-primary, #374151)}.review-details{border-top:1px solid var(--color-border, #e5e7eb);padding-top:var(--space-4, 16px);margin-bottom:var(--space-4, 16px)}.review-details p{margin:0 0 var(--space-2, 8px) 0;font-size:14px;color:var(--color-text-secondary, #6b7280)}.review-period,.review-reviewer{font-size:13px!important}.review-summary{color:var(--color-text-primary, #374151)!important;margin-top:var(--space-3, 12px)!important}.review-document{font-size:13px!important;color:var(--color-primary, #3b82f6)!important;margin-top:var(--space-3, 12px)!important}.review-actions{display:flex;gap:var(--space-3, 12px);justify-content:flex-end}.tab-content-notes{display:flex;flex-direction:column;gap:var(--space-6, 24px)}.notes-header{display:flex;justify-content:space-between;align-items:center}.notes-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary, #374151);margin:0}.notes-list{display:flex;flex-direction:column;gap:var(--space-4, 16px)}.note-item{padding:var(--space-4, 16px);border:1px solid var(--color-border, #e5e7eb);border-radius:var(--radius-md, 6px);background:#fff}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2, 8px)}.note-author{font-size:14px;font-weight:500;color:var(--color-text-primary, #374151)}.note-date{font-size:12px;color:var(--color-text-muted, #9ca3af)}.note-content{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0 0 var(--space-3, 12px) 0;line-height:1.5}.note-category{display:inline-block;padding:2px var(--space-2, 8px);background:var(--color-background-light, #f3f4f6);color:var(--color-text-secondary, #6b7280);font-size:11px;font-weight:500;border-radius:var(--radius-sm, 4px)}.employee-detail-error,.employee-detail-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12, 48px);text-align:center}.employee-detail-error h2,.employee-detail-not-found h2{font-size:24px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-3, 12px) 0}.employee-detail-error p,.employee-detail-not-found p{font-size:14px;color:var(--color-text-secondary, #6b7280);margin:0 0 var(--space-6, 24px) 0;max-width:500px}.error-actions{display:flex;gap:var(--space-3, 12px)}@media (max-width: 1024px){.quick-stats,.info-grid{grid-template-columns:repeat(2,1fr)}.header-main{flex-wrap:wrap}.employee-contact{margin-left:0;margin-top:var(--space-4, 16px);width:100%;flex-direction:row;flex-wrap:wrap;gap:var(--space-4, 16px)}}@media (max-width: 767px){.employee-detail-container{padding:var(--space-4, 16px)}.employee-detail-header{flex-direction:column;align-items:flex-start;gap:var(--space-4, 16px)}.header-actions{width:100%}.header-actions .btn-primary{flex:1;justify-content:center}.header-main{flex-direction:column;align-items:center;text-align:center}.employee-badges{justify-content:center}.employee-contact{align-items:center}.quick-stats,.info-grid{grid-template-columns:1fr}.tab-navigation{margin:0 calc(-1 * var(--space-4, 16px));padding:0 var(--space-4, 16px)}.tab-button{padding:var(--space-3, 12px) var(--space-3, 12px);font-size:13px}.tab-button span{display:none}.tab-content{padding:var(--space-4, 16px)}.document-item{flex-wrap:wrap}.document-dates{width:100%;text-align:left;flex-direction:row;gap:var(--space-3, 12px);margin-top:var(--space-2, 8px)}.document-actions{width:100%;justify-content:flex-start;margin-top:var(--space-3, 12px)}.projects-grid{grid-template-columns:1fr}.timesheets-table{display:block;overflow-x:auto}.review-header{flex-direction:column;gap:var(--space-3, 12px)}.review-actions{flex-direction:column;width:100%}.review-actions button{width:100%;justify-content:center}}.employee-form{max-width:960px;margin:0 auto;padding:24px}.form-header{margin-bottom:32px}.header-left{display:flex;flex-direction:column;gap:8px}.back-link{display:inline-flex;align-items:center;gap:8px;color:#6b7280;font-size:14px;text-decoration:none;transition:color .15s ease}.back-icon{width:16px;height:16px}.form-header h1{font-size:28px;font-weight:600;color:#111827;margin:0}.header-subtitle{font-size:14px;color:#6b7280;margin:0}.step-indicator{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 16px;background:#fff;border-radius:12px;margin-bottom:32px;box-shadow:0 1px 3px #0000001a}.step-item{display:flex;align-items:center;gap:8px;cursor:pointer;transition:opacity .2s ease}.step-item.pending{opacity:.5;cursor:default}.step-item:hover:not(.pending){opacity:.8}.step-circle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:2px solid #E5E7EB;transition:all .2s ease}.step-item.current .step-circle{background:#3b82f6;border-color:#3b82f6;color:#fff}.step-item.complete .step-circle{background:#10b981;border-color:#10b981;color:#fff}.step-item.error .step-circle{background:#fee2e2;border-color:#ef4444;color:#ef4444}.step-icon-small,.check-icon{width:20px;height:20px}.step-label{font-size:14px;font-weight:500;color:#374151;white-space:nowrap}.step-item.current .step-label{color:#3b82f6;font-weight:600}.step-item.complete .step-label{color:#10b981}.step-connector{width:24px;height:24px;color:#d1d5db;flex-shrink:0}.form-error-banner{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fee2e2;border:1px solid #FECACA;border-radius:8px;margin-bottom:24px}.error-banner-icon{width:24px;height:24px;color:#dc2626;flex-shrink:0}.error-content{flex:1}.error-content strong{color:#991b1b;font-size:14px}.error-content p{color:#b91c1c;font-size:14px;margin:4px 0 0}.dismiss-btn{background:none;border:none;font-size:20px;color:#b91c1c;cursor:pointer;padding:0;line-height:1}.employee-form-content{display:flex;flex-direction:column;gap:24px}.step-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-title{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.step-title .step-icon{width:32px;height:32px;color:#3b82f6;background:#dbeafe;padding:8px;border-radius:8px;box-sizing:content-box}.step-title h2{font-size:20px;font-weight:600;color:#111827;margin:0}.step-description{font-size:14px;color:#6b7280;margin:4px 0 0}.form-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;margin-bottom:20px}.form-card-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#374151;margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid #F3F4F6}.card-icon{width:20px;height:20px;color:#6b7280}.card-header-with-checkbox{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #F3F4F6}.card-header-with-checkbox .form-card-title{margin:0;padding:0;border:none}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#3B82F6}.form-row{display:grid;gap:16px;margin-bottom:16px}.form-row:last-child{margin-bottom:0}.form-row.two-columns{grid-template-columns:repeat(2,1fr)}.form-row.three-columns{grid-template-columns:repeat(3,1fr)}.form-group{display:flex;flex-direction:column;gap:6px}.required{color:#ef4444;margin-left:2px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;font-size:14px;color:#111827;background:#fff;border:1px solid #D1D5DB;border-radius:6px;transition:all .15s ease;box-sizing:border-box}.form-group input.error:focus,.form-group select.error:focus{box-shadow:0 0 0 3px #ef44441a}.form-group input::placeholder{color:#9ca3af}.form-group input:disabled,.form-group select:disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.error-message{display:flex;align-items:center;gap:4px;font-size:12px;color:#dc2626}.error-icon{width:14px;height:14px}.field-help{font-size:12px;color:#6b7280;margin:4px 0 0}.ssn-field{max-width:200px}.employee-type-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.type-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px 8px;background:#fff;border:2px solid #E5E7EB;border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:center;position:relative}.type-card:hover{border-color:var(--type-color, #3B82F6);background:color-mix(in srgb,var(--type-color, #3B82F6) 5%,white)}.type-card.selected{border-color:var(--type-color, #3B82F6);background:color-mix(in srgb,var(--type-color, #3B82F6) 10%,white);box-shadow:0 0 0 2px color-mix(in srgb,var(--type-color, #3B82F6) 20%,transparent)}.type-card input[type=radio]{position:absolute;opacity:0;pointer-events:none}.type-icon{font-size:24px}.type-label{font-size:12px;font-weight:500;color:#374151}.type-card.selected .type-label{color:var(--type-color, #3B82F6);font-weight:600}.type-card[data-type=internal_india]{--type-color: #8B5CF6}.type-card[data-type=internal_usa]{--type-color: #3B82F6}.type-card[data-type=it_usa]{--type-color: #10B981}.type-card[data-type=nonit_usa]{--type-color: #F97316}.type-card[data-type=healthcare_usa]{--type-color: #EC4899}.lca-section{margin-top:20px;padding-top:20px;border-top:1px dashed #E5E7EB}.lca-notice{display:flex;align-items:center;gap:8px;padding:12px;background:#fef3c7;border-radius:6px;margin-bottom:16px}.notice-icon{width:20px;height:20px;color:#d97706;flex-shrink:0}.lca-notice span{font-size:13px;color:#92400e}.review-section{display:flex;flex-direction:column;gap:20px}.review-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:20px}.review-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #F3F4F6}.review-card-header h3{font-size:16px;font-weight:600;color:#374151;margin:0}.edit-section-btn{background:none;border:none;font-size:14px;font-weight:500;color:#3b82f6;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .15s ease}.edit-section-btn:hover{background:#eff6ff}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.review-item{display:flex;flex-direction:column;gap:4px}.review-item.full-width{grid-column:1 / -1}.review-label{font-size:12px;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.review-value{font-size:14px;color:#111827}.type-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:9999px;font-size:13px;font-weight:500}.status-badge{display:inline-block;padding:4px 10px;background:#d1fae5;color:#065f46;border-radius:9999px;font-size:13px;font-weight:500;text-transform:capitalize}.validation-summary{display:flex;gap:12px;padding:16px;background:#fee2e2;border:1px solid #FECACA;border-radius:8px;margin-top:20px}.summary-icon{width:24px;height:24px;color:#dc2626;flex-shrink:0}.validation-summary strong{color:#991b1b;font-size:14px}.validation-summary ul{margin:8px 0 0;padding-left:16px}.validation-summary li{font-size:13px;color:#b91c1c;margin-bottom:4px}.form-navigation{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-top:1px solid #E5E7EB;margin-top:8px}.nav-left,.nav-right{display:flex;align-items:center;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s ease;text-decoration:none;border:none}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-ghost{background:transparent;color:#6b7280}.btn-ghost:hover{background:#f3f4f6;color:#374151}.btn-icon{width:16px;height:16px}.btn-submit{min-width:160px}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px;color:#6b7280}@media (max-width: 1024px){.step-indicator{flex-wrap:wrap;gap:16px}.step-connector{display:none}.employee-type-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.employee-form{padding:16px}.form-header h1{font-size:24px}.step-indicator{flex-direction:column;align-items:flex-start}.step-item{width:100%;padding:12px;background:#f9fafb;border-radius:8px}.step-item.current{background:#eff6ff}.step-item.complete{background:#ecfdf5}.form-row.two-columns,.form-row.three-columns{grid-template-columns:1fr}.employee-type-cards{grid-template-columns:repeat(2,1fr)}.type-card{padding:12px 8px}.type-icon{font-size:20px}.review-grid{grid-template-columns:1fr}.form-navigation{flex-direction:column-reverse;gap:16px}.nav-left,.nav-right{width:100%;justify-content:center}.btn{flex:1}.btn-submit{min-width:auto}}@media (max-width: 480px){.employee-type-cards{grid-template-columns:1fr}.step-title{flex-direction:column;gap:12px}.step-title .step-icon{width:24px;height:24px;padding:6px}}.compliance-dashboard-container{padding:var(--space-6);background-color:var(--gray-50);min-height:100vh}.compliance-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.compliance-actions{display:flex;gap:var(--space-3)}.compliance-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.compliance-summary-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;align-items:flex-start;gap:var(--space-4);transition:box-shadow .15s ease-in-out}.compliance-summary-card:hover{box-shadow:var(--shadow-md);cursor:pointer}.compliance-summary-card .card-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.compliance-summary-card .card-icon svg{width:24px;height:24px}.compliance-summary-card .card-content{flex:1}.compliance-summary-card .card-value{font-size:30px;font-weight:700;line-height:1.2;color:var(--gray-900);margin-bottom:var(--space-1)}.compliance-summary-card .card-label{font-size:14px;font-weight:500;color:var(--gray-600)}.compliance-filters{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:1px solid var(--gray-200)}.filter-tab{background:none;border:none;padding:var(--space-3) var(--space-4);font-size:14px;font-weight:500;color:var(--gray-600);cursor:pointer;border-bottom:2px solid transparent;transition:color .15s ease-in-out,border-color .15s ease-in-out;position:relative;bottom:-1px}.filter-tab:hover{color:var(--gray-900)}.filter-tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600)}.compliance-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);margin-bottom:var(--space-6)}.compliance-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);overflow:hidden}.compliance-card .card-header{padding:var(--space-5);border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between;align-items:center}.compliance-card .card-header h3{font-size:16px;font-weight:600;color:var(--gray-900);margin:0}.critical-items-list{padding:var(--space-4);max-height:400px;overflow-y:auto}.critical-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--gray-200);border-left:4px solid var(--error-500);border-radius:var(--radius-md);background:var(--white);margin-bottom:var(--space-3);transition:box-shadow .15s ease-in-out}.critical-item:last-child{margin-bottom:0}.critical-item:hover{box-shadow:var(--shadow-md)}.critical-item.critical{border-left-color:var(--warning-500)}.item-status{padding-top:var(--space-1)}.status-dot{display:block;width:8px;height:8px;border-radius:50%;background-color:var(--error-500)}.status-dot.critical{background-color:var(--warning-500)}.item-content{flex:1;min-width:0}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.item-employee{font-size:15px;font-weight:600;color:var(--gray-900);text-decoration:none}.item-employee:hover{color:var(--primary-600);text-decoration:underline}.urgency-badge{font-size:12px;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);white-space:nowrap}.urgency-badge.overdue{background-color:var(--error-100);color:var(--error-700)}.urgency-badge.critical{background-color:var(--warning-100);color:var(--warning-700)}.item-details{display:flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--gray-600)}.item-type{font-weight:500}.item-separator{color:var(--gray-400)}.type-breakdown-list{padding:var(--space-4)}.type-breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--gray-100)}.type-breakdown-item:last-child{border-bottom:none}.type-info{display:flex;align-items:center;gap:var(--space-3)}.type-indicator{width:10px;height:10px;border-radius:50%}.type-label{font-size:13px;font-weight:500;color:var(--gray-700)}.type-count{font-size:16px;font-weight:600;color:var(--gray-900)}.empty-state-small{text-align:center;padding:var(--space-8)}.empty-state-small svg{width:48px;height:48px;margin:0 auto var(--space-4)}.empty-state-small p{font-size:14px;color:var(--gray-600);margin:0}.placeholder-content{padding:var(--space-8);text-align:center}.placeholder-text{font-size:14px;color:var(--gray-500);font-style:italic;margin:0}.compliance-error{text-align:center;padding:var(--space-8)}.compliance-error h2{font-size:20px;font-weight:600;color:var(--gray-900);margin-bottom:var(--space-4)}.compliance-error p{font-size:14px;color:var(--gray-600);margin-bottom:var(--space-4)}@media (max-width: 1280px){.compliance-summary-grid{grid-template-columns:repeat(2,1fr)}.compliance-content-grid{grid-template-columns:1fr}}@media (max-width: 768px){.compliance-dashboard-container{padding:var(--space-4)}.compliance-header{flex-direction:column;gap:var(--space-4)}.compliance-summary-grid{grid-template-columns:1fr}.compliance-filters{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.filter-tab{white-space:nowrap}}.assign-user-roles{padding:2rem;max-width:1600px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.page-header h1{margin:0;font-size:2rem;color:#1a202c}.page-description{margin:.5rem 0 0;color:#718096;font-size:.95rem}.users-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:#f7fafc;border-bottom:2px solid #e2e8f0}.users-table th{padding:1rem;text-align:left;font-weight:600;font-size:.85rem;color:#2d3748;text-transform:uppercase;letter-spacing:.5px}.users-table tbody tr{border-bottom:1px solid #f7fafc;transition:background .2s}.users-table tbody tr:hover{background:#f7fafc}.users-table td{padding:16px;color:#374151;font-size:14px;vertical-align:middle}.users-table tbody tr.selected{background-color:#dbeafe}.user-info{display:flex;align-items:center;gap:.5rem}.user-info strong{color:#2d3748}.current-user-badge{padding:.15rem .5rem;background:#4f46e5;color:#fff;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase}.role-badge{display:inline-block;padding:.4rem .8rem;border-radius:6px;font-size:.85rem;font-weight:600}.role-level-1{background:#e6fffa;color:#047857}.role-level-2{background:#dbeafe;color:#1e40af}.role-level-3{background:#fef3c7;color:#92400e}.role-level-4{background:#fce7f3;color:#9f1239}.role-level-5{background:#f3e8ff;color:#6b21a8}.no-role{color:#9ca3af;font-style:italic}.business-tags{display:flex;flex-wrap:wrap;gap:.35rem}.tag{display:inline-block;padding:.3rem .6rem;border-radius:4px;font-size:.75rem;font-weight:500}.tag-info{background:#dbeafe;color:#1e40af}.tag-secondary{background:#f3f4f6;color:#6b7280}.all-scope{color:#059669;font-weight:500;font-size:.85rem}.action-buttons{display:flex;gap:.5rem}.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:1rem;overflow-y:auto}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:1.4rem;color:#1a202c}.btn-close{background:none;border:none;font-size:2rem;cursor:pointer;color:#718096;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.btn-close:hover{background:#f7fafc;color:#2d3748}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e2e8f0}.form-section:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.form-section h3{margin:0 0 1rem;font-size:1.1rem;color:#2d3748;font-weight:600}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#2d3748;font-size:.9rem}.form-group input[type=text],.form-group input[type=date],.form-group select{width:100%;padding:.75rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.form-group small{display:block;margin-top:.5rem;color:#718096;font-size:.85rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.multi-select{min-height:120px;padding:.5rem}.multi-select option{padding:.5rem;border-radius:4px;margin-bottom:.25rem}.multi-select option:hover{background:#f7fafc}.btn-primary,.btn-secondary,.btn-icon{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:#4f46e5;color:#fff}.btn-primary:hover{background:#4338ca;transform:translateY(-1px);box-shadow:0 4px 12px #4f46e54d}.btn-secondary{background:#f7fafc;color:#2d3748;border:1px solid #e2e8f0}.btn-secondary:hover{background:#edf2f7;border-color:#cbd5e0}.btn-icon{padding:.5rem;background:#f7fafc;color:#2d3748;border:1px solid #e2e8f0;font-size:1.1rem;min-width:2.5rem}.btn-icon:hover{background:#edf2f7;transform:scale(1.05)}.btn-icon.btn-danger{color:#dc2626}.btn-icon.btn-danger:hover{background:#fee2e2;border-color:#fca5a5}.alert{padding:1rem 1.5rem;border-radius:6px;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.alert button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.alert button:hover{background:#0000000d}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:3rem;font-size:1.1rem;color:#718096}@media (max-width: 1200px){.users-table-container{overflow-x:auto}.users-table{min-width:900px}}@media (max-width: 768px){.assign-user-roles{padding:1rem}.page-header{flex-direction:column;align-items:flex-start}.modal-content{max-width:100%}.modal-header,.modal-body,.modal-footer{padding:1rem}.form-row{grid-template-columns:1fr}.users-table th,.users-table td{padding:.75rem .5rem;font-size:.85rem}.business-tags{max-width:150px}}.invite-users{padding:24px;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px}.page-header h1{margin:0;font-size:28px;color:#1e293b}.page-description{margin:4px 0 0;color:#64748b;font-size:14px}.invite-form-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.invite-form h3{margin:0 0 20px;font-size:18px;color:#1e293b}.invite-form .form-group{margin-bottom:20px}.invite-form label{display:block;margin-bottom:6px;font-weight:500;color:#334155;font-size:14px}.invite-form input,.invite-form textarea{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s}.invite-form input:focus,.invite-form textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.invite-form input.error,.invite-form textarea.error{border-color:#ef4444}.invite-form textarea{resize:vertical;min-height:80px;font-family:inherit}.invite-form small{display:block;margin-top:4px;font-size:12px;color:#64748b}.invite-form .error-text{color:#ef4444;font-size:12px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.invitations-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.loading-state{padding:60px 20px;text-align:center;color:#64748b;font-size:14px}.empty-state{padding:60px 20px;text-align:center}.empty-state-icon{font-size:48px;margin-bottom:16px}.empty-state h3{margin:0 0 8px;color:#1e293b;font-size:18px}.empty-state p{margin:0;color:#64748b;font-size:14px}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#fef3c7;color:#92400e}.status-sent{background:#dbeafe;color:#1e40af}.status-accepted{background:#d1fae5;color:#065f46}.status-expired{background:#fee2e2;color:#991b1b}.status-revoked{background:#f1f5f9;color:#475569}.action-buttons{display:flex;gap:8px;align-items:center}.text-success{color:#10b981;font-weight:500;font-size:14px}.alert{padding:14px 16px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:flex-start;font-size:14px;line-height:1.5}.alert button{background:none;border:none;font-size:20px;line-height:1;cursor:pointer;padding:0;margin-left:12px;color:inherit;opacity:.6;transition:opacity .2s}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}@media (max-width: 768px){.invite-users{padding:16px}.page-header{flex-direction:column}.invitations-table-container{overflow-x:auto}.action-buttons{flex-direction:column;gap:4px}.action-buttons button{width:100%}}.rbac-administration{padding:24px;max-width:1600px;margin:0 auto}.page-header{margin-bottom:24px}.page-header h1{font-size:28px;font-weight:700;color:#1e293b;margin:0 0 8px}.page-description{color:#64748b;font-size:14px;margin:0}.alert{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.alert-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.alert-success{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.alert button{background:none;border:none;font-size:18px;cursor:pointer;opacity:.7}.alert button:hover{opacity:1}.rbac-tabs{display:flex;gap:4px;margin-bottom:24px;background:#f1f5f9;padding:4px;border-radius:12px;width:fit-content}.rbac-tab{padding:12px 20px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s;white-space:nowrap}.rbac-tab:hover{color:#1e293b;background:#ffffff80}.rbac-tab.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{font-size:20px;font-weight:600;color:#1e293b;margin:0}.section-header p{color:#64748b;font-size:14px;margin:4px 0 0}.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.role-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a;transition:all .2s}.role-card:hover{box-shadow:0 4px 12px #0000001a}.role-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.role-card-header h3{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 8px}.role-level-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;color:#fff;margin-right:8px}.system-role-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;background:#f3e8ff;color:#8b5cf6}.role-actions{display:flex;gap:8px}.role-description{color:#64748b;font-size:14px;margin:0 0 16px;line-height:1.5}.role-permissions-summary h4{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;margin:0 0 8px}.permission-tags,.tag{display:inline-flex;flex-wrap:wrap;gap:6px}.tag{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500}.tag-success{background:#dcfce7;color:#16a34a}.tag-info{background:#dbeafe;color:#2563eb}.tag-warning{background:#fef3c7;color:#d97706}.tag-danger{background:#fecaca;color:#dc2626}.tag-primary{background:#e0e7ff;color:#4f46e5}.tag-special{background:#fce7f3;color:#db2777}.permissions-matrix-section,.user-roles-section,.menu-items-section,.role-summary-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.matrix-container{overflow-x:auto;margin-top:16px}.permissions-matrix{width:100%;border-collapse:collapse;font-size:13px}.permissions-matrix th,.permissions-matrix td{padding:12px;border:1px solid #e2e8f0}.permissions-matrix th{background:#f8fafc;font-weight:600;text-align:center}.menu-item-header{text-align:left!important;min-width:200px}.role-header{min-width:120px}.role-header-content{display:flex;flex-direction:column;align-items:center;gap:6px}.role-header-content .role-name{font-size:12px;color:#334155}.role-actions-mini{display:flex;gap:4px;margin-top:4px}.btn-mini{padding:4px 8px;font-size:10px;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-grant{background:#dcfce7;color:#16a34a}.btn-grant:hover{background:#bbf7d0}.btn-revoke{background:#fef2f2;color:#dc2626}.btn-revoke:hover{background:#fecaca}.btn-mini:disabled{opacity:.5;cursor:not-allowed}.menu-item-cell{text-align:left}.menu-item-info{display:flex;align-items:center;gap:10px}.menu-icon{font-size:18px}.menu-name{font-weight:500;color:#1e293b}.menu-path{font-size:11px;color:#94a3b8;font-family:monospace}.permission-cell{text-align:center;cursor:pointer;transition:background-color .2s}.permission-cell:hover{background-color:#f1f5f9}.permission-cell.granted{background-color:#f0fdf4}.permission-cell.denied{background-color:#fef2f2}.permission-indicator{font-size:16px}.matrix-legend{margin-top:16px;padding:12px;background:#f8fafc;border-radius:8px}.matrix-legend h4{margin:0 0 8px;font-size:13px;color:#64748b}.legend-items{display:flex;gap:24px}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569}.menu-items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.menu-item-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000001a;transition:all .2s}.menu-item-card:hover{box-shadow:0 4px 12px #0000001a}.menu-item-card.inactive{opacity:.6;background:#f8fafc}.menu-item-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.menu-item-icon-large{font-size:32px}.menu-item-details{flex:1}.menu-item-details h3{margin:0;font-size:16px;font-weight:600;color:#1e293b}.menu-item-code{font-size:11px;color:#94a3b8;font-family:monospace}.menu-item-badges{display:flex;gap:6px}.badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:500}.badge-system{background:#dbeafe;color:#2563eb}.badge-active{background:#dcfce7;color:#16a34a}.badge-inactive{background:#fef2f2;color:#dc2626}.menu-item-info-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.menu-item-info-row .label{color:#64748b}.menu-item-info-row .value{color:#1e293b;font-weight:500}.menu-item-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #f1f5f9}.btn-icon{padding:6px 10px;border:none;border-radius:6px;cursor:pointer;background:#f1f5f9;transition:all .2s}.btn-icon.btn-danger:hover{background:#fecaca}.btn-icon.btn-success:hover{background:#bbf7d0}.btn-icon.btn-warning:hover{background:#fef08a}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.role-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.role-summary-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000001a}.role-summary-header{display:flex;align-items:center;gap:16px;margin-bottom:12px}.role-level-indicator{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff}.role-summary-title h3{margin:0;font-size:18px;font-weight:600;color:#1e293b}.role-code{font-size:12px;color:#94a3b8;font-family:monospace}.role-summary-card .role-description{color:#64748b;font-size:13px;margin:0 0 16px;line-height:1.5}.access-progress{margin-bottom:16px}.access-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.access-label span:first-child{color:#64748b}.access-label span:last-child{font-weight:600;color:#1e293b}.progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.role-capabilities{margin-bottom:16px}.role-capabilities h4,.accessible-menus h4{font-size:12px;font-weight:600;color:#64748b;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.capability-tags{display:flex;flex-wrap:wrap;gap:6px}.cap-tag{padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500}.cap-tag.create{background:#dbeafe;color:#2563eb}.cap-tag.edit{background:#dcfce7;color:#16a34a}.cap-tag.edit-all{background:#fef3c7;color:#d97706}.cap-tag.delete{background:#fecaca;color:#dc2626}.cap-tag.delete-all{background:#fca5a5;color:#b91c1c}.cap-tag.view{background:#e0e7ff;color:#4f46e5}.cap-tag.admin{background:#fce7f3;color:#db2777}.menu-tags{display:flex;flex-wrap:wrap;gap:6px}.menu-tag{padding:4px 10px;background:#f1f5f9;border-radius:6px;font-size:12px;color:#475569}.no-access{color:#94a3b8;font-style:italic;font-size:13px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-content.modal-large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:18px;font-weight:600;color:#1e293b}.btn-close{width:32px;height:32px;border-radius:6px;border:none;background:#f1f5f9;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#e2e8f0}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #e2e8f0}.form-section h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.form-group label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input[type=text],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.form-group input:disabled,.form-group select:disabled{background:#f9fafb;color:#9ca3af}.form-group small{display:block;margin-top:4px;font-size:11px;color:#9ca3af}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:16px;height:16px}.permission-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.permission-category{background:#f8fafc;border-radius:8px;padding:12px}.permission-category h4{font-size:13px;font-weight:600;color:#1e293b;margin:0 0 10px}.checkbox-label{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:#475569;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#3b82f6}.permission-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.menu-actions{display:flex;gap:8px;margin-bottom:12px}.menu-items-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;max-height:300px;overflow-y:auto;padding:8px;background:#f8fafc;border-radius:8px}.menu-item-checkbox{background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #e2e8f0}.menu-item-checkbox code{font-size:10px;color:#94a3b8;margin-left:4px}.btn-primary{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.btn-secondary{padding:10px 20px;background:#f1f5f9;color:#475569;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:#e2e8f0}.loading-spinner{display:flex;align-items:center;justify-content:center;min-height:400px;font-size:16px;color:#64748b}.app-access-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a}.app-access-matrix .user-header{text-align:left;min-width:250px;background:#f8fafc;font-weight:600}.app-access-matrix .app-header{text-align:center;min-width:120px;background:#f8fafc}.app-header-content{display:flex;flex-direction:column;align-items:center;gap:4px}.app-icon{font-size:20px}.app-name{font-size:12px;font-weight:600;color:#334155}.app-access-matrix .actions-header{text-align:center;min-width:120px;background:#f8fafc}.user-cell{padding:12px 16px}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:500;color:#1e293b}.app-access-matrix .user-email{font-size:12px;color:#64748b}.access-cell{text-align:center;padding:12px}.access-toggle{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.access-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.access-toggle input:checked+.toggle-slider{background-color:#22c55e}.access-toggle input:checked+.toggle-slider:before{transform:translate(20px)}.access-toggle input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.actions-cell{text-align:center;padding:12px}.actions-cell .btn-mini{margin:0 2px}.app-access-info{margin-top:24px;padding:20px;background:#f8fafc;border-radius:8px;border-left:4px solid #3b82f6}.app-access-info h3{margin:0 0 12px;font-size:16px;color:#1e293b}.app-access-info ul{margin:0;padding-left:20px}.app-access-info li{margin-bottom:8px;font-size:14px;color:#475569;line-height:1.5}.app-access-info li:last-child{margin-bottom:0}.loading-state{text-align:center;padding:40px;color:#64748b;font-size:14px}.user-roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.user-role-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease}.user-role-card:hover{box-shadow:0 4px 12px #00000014}.user-role-card.system-role{border-left:4px solid #8b5cf6}@media (max-width: 768px){.rbac-administration{padding:16px}.rbac-tabs{overflow-x:auto}.rbac-tab{white-space:nowrap;padding:10px 14px;font-size:13px}.role-summary-grid,.menu-items-grid,.roles-grid,.user-roles-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.permission-grid{grid-template-columns:1fr}}.ai-prompts-page{padding:24px}.prompt-form-card{background:#fff;border-radius:8px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.prompts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px;margin-top:24px}.prompt-card{background:#fff;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.prompt-card h3{margin:0 0 8px;color:#1e293b;font-size:18px}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fef2f2;color:#991b1b}.empty-state{text-align:center;padding:48px;background:#fff;border-radius:8px;color:#64748b}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#334155}.form-group input[type=text],.form-group textarea,.form-group select,.form-select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:6px;font-size:14px;background-color:#fff;font-family:inherit}.form-group select:focus,.form-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-sm{padding:6px 12px;font-size:13px}.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:20px;overflow-y:auto}.modal-content{background:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;max-width:800px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1e293b}.modal-close{background:none;border:none;font-size:24px;color:#64748b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:#f1f5f9}.checklist-type-form form{padding:24px}.form-section{margin-bottom:32px}.form-section h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.form-group{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{width:100%;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-hint{display:block;color:#64748b;font-size:12px;margin-top:4px}.checkbox-group label{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{margin-top:2px;cursor:pointer}.icon-selector{display:flex;gap:12px;align-items:center}.icon-selector select{flex:1}.icon-preview{font-size:24px;padding:8px;background:#f1f5f9;border-radius:4px;min-width:48px;text-align:center}.color-input-group{display:flex;gap:12px;align-items:center}.color-input-group input[type=color]{width:60px;height:40px;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;padding:0}.color-input-group input[type=text]{flex:1}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e2e8f0}.btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-secondary{background:#f1f5f9;color:#374151}.btn-secondary:hover:not(:disabled){background:#e2e8f0}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.modal-content{max-width:100%;margin:0;border-radius:0}}.checklist-type-details{max-width:700px}.details-header{display:flex;align-items:center;gap:12px}.details-icon{font-size:32px}.details-content{padding:24px}.details-section{margin-bottom:32px}.details-section h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.details-info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.info-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e2e8f0}.info-item:last-child{border-bottom:none}.info-label{font-weight:500;color:#64748b}.info-value{color:#1e293b;font-weight:500}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;text-align:center}.stat-value{font-size:32px;font-weight:600;color:#1e293b;margin-bottom:8px}.stat-label{font-size:13px;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.config-list{display:flex;flex-direction:column;gap:12px}.config-item{display:flex;justify-content:space-between;padding:12px;background:#f8fafc;border-radius:6px}.config-label{color:#374151;font-weight:500}.config-value{color:#1e293b;font-weight:600}.templates-list{display:flex;flex-direction:column;gap:12px}.template-item{padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.template-name{font-weight:600;color:#1e293b;margin-bottom:4px}.template-meta{font-size:13px;color:#64748b;margin-bottom:8px}.template-status{font-size:12px;color:#64748b}.description-text{color:#374151;line-height:1.6;margin:0}.audit-info{color:#64748b;font-size:12px}.details-actions{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid #e2e8f0}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}}.checklist-types-page{padding:24px;max-width:1400px;margin:0 auto}.checklist-types-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.checklist-types-section{margin-bottom:32px}.checklist-types-section h2{font-size:18px;font-weight:600;color:#1e293b;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.checklist-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.checklist-type-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.checklist-type-card:hover{box-shadow:0 4px 6px #0000001a;border-color:#d1d5db}.checklist-type-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.checklist-type-icon{font-size:32px;line-height:1}.checklist-type-title{flex:1}.checklist-type-title h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 4px}.system-badge{display:inline-block;font-size:11px;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:4px;margin-top:4px}.checklist-type-actions{display:flex;gap:8px}.btn-icon:hover{background:#f1f5f9}.checklist-type-card-body{display:flex;flex-direction:column;gap:12px}.checklist-type-info{display:flex;flex-direction:column;gap:8px}.info-label{color:#64748b;font-weight:500;min-width:140px}.info-value{color:#1e293b}.checklist-type-description{font-size:13px;color:#64748b;line-height:1.5;margin-top:8px;padding-top:8px;border-top:1px solid #e2e8f0}@media (max-width: 768px){.checklist-types-grid{grid-template-columns:1fr}.checklist-types-actions{flex-direction:column;align-items:stretch}.search-filter-bar{flex-direction:column}.search-input,.filter-select{width:100%}}.checklist-group-form{max-width:600px}.checklist-item-form{max-width:700px}.form-section h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.checkbox-group label{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.checkbox-group input[type=checkbox]{margin-right:8px}.checklist-template-builder{max-width:1000px;max-height:90vh;overflow-y:auto}.empty-groups{text-align:center;padding:40px 20px;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:8px;color:#64748b}.checklist-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.group-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.group-info{display:flex;gap:12px;flex:1}.group-icon{font-size:24px}.group-info h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#1e293b}.group-description{margin:0 0 8px;font-size:13px;color:#64748b}.item-count{font-size:12px;color:#64748b}.group-actions{display:flex;gap:8px}.btn-icon{background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.btn-icon:hover{background:#e2e8f0}.btn-icon.btn-danger:hover{background:#fee2e2}.group-items{margin-top:16px}.checklist-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:12px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:flex-start}.item-content{flex:1}.item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.item-checkbox{font-size:16px}.item-name{font-weight:500;color:#1e293b}.item-badge{font-size:11px;padding:2px 6px;border-radius:4px;background:#f1f5f9;color:#64748b}.item-description{font-size:12px;color:#64748b;margin:4px 0}.item-flags{display:flex;gap:12px;font-size:11px;color:#64748b;margin-top:4px}.item-actions{display:flex;gap:4px}.add-item-btn{width:100%;margin-top:8px}.checklist-templates-page{padding:24px;max-width:1400px;margin:0 auto}.checklist-templates-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.checklist-templates-section{margin-bottom:32px}.checklist-templates-section h2{font-size:18px;font-weight:600;color:#1e293b;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.checklist-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.checklist-template-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.checklist-template-card:hover{box-shadow:0 4px 6px #0000001a;border-color:#d1d5db}.checklist-template-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.checklist-template-card-header h3{font-size:16px;font-weight:600;color:#1e293b;margin:0;flex:1}.employee-type-badge{font-size:11px;color:#64748b;background:#f1f5f9;padding:4px 8px;border-radius:4px;text-transform:uppercase}.checklist-template-card-body{margin-bottom:16px}.template-stats{display:flex;gap:16px;margin-bottom:12px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px;color:#64748b}.stat-value{font-size:16px;font-weight:600;color:#1e293b}.template-description{font-size:13px;color:#64748b;line-height:1.5;padding-top:12px;border-top:1px solid #e2e8f0}.checklist-template-card-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid #e2e8f0}@media (max-width: 768px){.checklist-templates-grid{grid-template-columns:1fr}.checklist-templates-actions{flex-direction:column;align-items:stretch}.search-filter-bar{flex-direction:column}.search-input,.filter-select{width:100%}}.email-template-form{max-width:900px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-actions{display:flex;gap:8px}.variables-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:20px}.variables-panel h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#1e293b}.variables-hint{font-size:12px;color:#64748b;margin:0 0 16px}.variable-category{margin-bottom:16px}.variable-category:last-child{margin-bottom:0}.variable-category h5{font-size:12px;font-weight:600;color:#374151;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.variable-list{display:flex;flex-wrap:wrap;gap:8px}.variable-button{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 12px;font-size:12px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.variable-button:hover{background:#f1f5f9;border-color:#3b82f6}.variable-button .variable-label{font-size:10px;color:#64748b;font-weight:400}.email-preview{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px;min-height:300px;max-height:500px;overflow-y:auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.email-preview h1,.email-preview h2,.email-preview h3{margin-top:0}.email-preview p{margin:0 0 12px}.email-preview ul,.email-preview ol{margin:0 0 12px;padding-left:24px}.email-template-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a;transition:all .2s ease}.email-template-card:hover{box-shadow:0 4px 6px #0000001a;border-color:#d1d5db}.email-template-card-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.email-template-icon{font-size:32px;line-height:1}.email-template-title{flex:1}.email-template-title h3{font-size:16px;font-weight:600;color:#1e293b;margin:0 0 4px}.email-template-status{font-size:12px;font-weight:500}.email-template-card-body{margin-bottom:16px}.email-template-info{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;gap:8px;font-size:13px}.info-label{color:#64748b;font-weight:500;min-width:100px}.info-value{color:#1e293b;flex:1}.subject-preview{font-weight:600}.email-template-card-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid #e2e8f0}.email-templates-page{padding:24px;max-width:1400px;margin:0 auto}.email-templates-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.email-templates-section{margin-bottom:32px}.email-templates-section h2{font-size:18px;font-weight:600;color:#1e293b;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.email-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}@media (max-width: 768px){.email-templates-grid{grid-template-columns:1fr}.email-templates-actions{flex-direction:column;align-items:stretch}.search-filter-bar{flex-direction:column}.search-input,.filter-select{width:100%}}.test-email-modal{max-width:700px}.variables-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.variable-category{display:flex;flex-direction:column;gap:12px}.variable-input-group{display:flex;flex-direction:column;gap:4px}.variable-input-group label{font-size:12px;font-weight:500;color:#64748b}.variable-input-group input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:13px}@media (max-width: 768px){.variables-grid{grid-template-columns:1fr}}.lca-job-title-form{max-width:800px}.header-content{display:flex;align-items:center;gap:12px}.hrms-only-badge{font-size:11px;color:#64748b;background:#f1f5f9;padding:4px 8px;border-radius:4px}.wage-level-options{display:flex;flex-direction:column;gap:8px}.radio-option{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .2s}.radio-option:hover{background:#f8fafc;border-color:#3b82f6}.radio-option input[type=radio]:checked+div{color:#1e293b}.radio-option div{flex:1}.radio-option strong{display:block;color:#1e293b;margin-bottom:2px}.radio-option small{display:block;color:#64748b;font-size:11px}.lca-job-titles-page{padding:24px;max-width:1400px;margin:0 auto}.info-banner{display:flex;gap:12px;padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:24px}.info-icon{font-size:24px;flex-shrink:0}.info-content{flex:1;color:#1e40af;font-size:14px;line-height:1.6}.lca-job-titles-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.search-filter-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.search-input{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;min-width:250px}.filter-select{padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer}.lca-job-titles-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.data-table thead{background:#f8fafc}.data-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e2e8f0;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:16px;border-bottom:1px solid #e2e8f0;color:#1e293b}.data-table tbody tr:hover{background:#f8fafc}.title-description{font-size:12px;color:#64748b;margin-top:4px;line-height:1.4}.soc-code{background:#f1f5f9;padding:4px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;color:#1e293b}.wage-level-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;background:#dbeafe;color:#1e40af}.wage-level-badge.level-1{background:#dbeafe;color:#1e40af}.wage-level-badge.level-2{background:#d1fae5;color:#065f46}.wage-level-badge.level-3{background:#fef3c7;color:#92400e}.wage-level-badge.level-4{background:#fce7f3;color:#9f1239}.wage-level-desc{font-size:11px;color:#64748b;margin-top:2px}.status-badge{font-size:12px;font-weight:500}.status-badge.active{color:#059669}.status-badge.inactive{color:#dc2626}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.empty-state-icon{font-size:64px;margin-bottom:16px}.empty-state h3{font-size:18px;color:#1e293b;margin:0 0 8px}.empty-state p{color:#64748b;margin:0}@media (max-width: 768px){.lca-job-titles-actions{flex-direction:column;align-items:stretch}.search-filter-bar{flex-direction:column}.search-input,.filter-select{width:100%}.data-table{font-size:12px}.data-table th,.data-table td{padding:8px}}.employee-tickets-container{padding:var(--space-6, 24px);max-width:1440px;margin:0 auto}.employee-tickets-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.employee-tickets-header .page-title{font-size:30px;font-weight:600;color:var(--color-gray-800, #1F2937);margin:0 0 4px}.employee-tickets-header .page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.tickets-tabs{display:inline-flex;border-radius:9999px;background:var(--color-gray-100, #F3F4F6);padding:4px;margin-bottom:var(--space-4, 16px)}.tickets-tab{border:none;background:transparent;padding:6px 16px;border-radius:9999px;font-size:14px;font-weight:500;color:var(--color-gray-600, #4B5563);cursor:pointer;transition:all .2s}.tickets-tab.active{background:#fff;color:var(--color-primary, #3B82F6);box-shadow:0 1px 2px #0f172a14}.tickets-quick-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4, 16px);margin-bottom:var(--space-6, 24px)}.stat-card{position:relative;border-radius:12px;padding:var(--space-4, 16px);background:#fff;border:1px solid var(--color-gray-200, #E5E7EB)}.stat-label{font-size:13px;color:var(--color-gray-500, #6B7280);margin-bottom:4px}.stat-value{font-size:20px;font-weight:600;color:var(--color-gray-800, #1F2937)}.stat-icon{position:absolute;right:12px;top:12px;width:26px;height:26px;border-radius:9999px;display:flex;align-items:center;justify-content:center;background:var(--color-gray-100, #F3F4F6)}.stat-icon svg{width:18px;height:18px}.stat-icon.blue{background:#dbeafe;color:#1d4ed8}.stat-icon.purple{background:#ede9fe;color:#5b21b6}.stat-icon.green{background:#d1fae5;color:#065f46}.stat-icon.gray{background:#e5e7eb;color:#4b5563}.tickets-filters{border-radius:12px;border:1px solid var(--color-gray-200, #E5E7EB);padding:var(--space-4, 16px);margin-bottom:var(--space-4, 16px);background:#fff}.filters-row{display:flex;flex-wrap:wrap;gap:var(--space-4, 16px);align-items:center}.filters-row.secondary{margin-top:var(--space-3, 12px)}.filter-group{display:flex;flex-direction:column;gap:4px;min-width:160px}.filter-group label{font-size:12px;font-weight:500;color:var(--color-gray-600, #4B5563)}.filter-group select{padding:6px 10px;border-radius:8px;border:1px solid var(--color-gray-300, #D1D5DB);font-size:14px;color:var(--color-gray-800, #1F2937);background:#fff}.filter-group select:focus{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:0 0 0 3px #3b82f626}.search-wrapper{position:relative;flex:1;min-width:220px}.search-wrapper .search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--color-gray-400, #9CA3AF)}.search-wrapper input{width:100%;padding:6px 10px 6px 32px;border-radius:8px;border:1px solid var(--color-gray-300, #D1D5DB);font-size:14px}.search-wrapper input:focus{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:0 0 0 3px #3b82f626}.checkbox-label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--color-gray-600, #4B5563)}.checkbox-label input{width:14px;height:14px}.error-banner{margin-top:var(--space-3, 12px);padding:10px 12px;border-radius:8px;background:var(--color-error-light, #FEE2E2);color:var(--color-error-dark, #991B1B);display:flex;justify-content:space-between;align-items:center;font-size:14px}.error-banner button{border:none;background:#fff;color:var(--color-error-dark, #991B1B);border-radius:9999px;padding:4px 10px;cursor:pointer;font-size:13px}.tickets-list{margin-top:var(--space-4, 16px)}.tickets-list-header h2{margin:0 0 var(--space-3, 12px);font-size:16px;font-weight:600;color:var(--color-gray-800, #1F2937)}.ticket-row{display:flex;justify-content:space-between;gap:var(--space-4, 16px);padding:var(--space-4, 16px);border-radius:12px;border:1px solid var(--color-gray-200, #E5E7EB);background:#fff;margin-bottom:var(--space-3, 12px)}.ticket-main{flex:1}.ticket-title-line{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ticket-number{font-size:14px;font-weight:600;color:var(--color-gray-800, #1F2937)}.priority-badge.high{font-size:11px;font-weight:600;padding:2px 8px;border-radius:9999px;background:#fee2e2;color:#b91c1c}.ticket-subject{font-size:15px;font-weight:500;color:var(--color-gray-800, #1F2937);margin-bottom:6px}.ticket-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--color-gray-600, #4B5563)}.ticket-flag{margin-top:6px;font-size:12px;color:var(--color-warning-dark, #92400E);background:var(--color-warning-light, #FEF3C7);padding:4px 8px;border-radius:9999px;display:inline-block}.ticket-side{width:220px;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:8px}.ticket-status{font-size:13px;font-weight:500;color:var(--color-gray-700, #374151)}.ticket-meta-secondary{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:12px;color:var(--color-gray-500, #6B7280)}.ticket-actions{display:flex;gap:8px}.btn-outline{padding:6px 12px;border-radius:9999px;border:1px solid var(--color-gray-300, #D1D5DB);background:#fff;font-size:13px;cursor:pointer}.btn-primary-outline{padding:6px 12px;border-radius:9999px;border:1px solid var(--color-primary, #3B82F6);background:#fff;font-size:13px;color:var(--color-primary, #3B82F6);cursor:pointer}.empty-state{padding:var(--space-4, 16px);text-align:center;font-size:14px;color:var(--color-gray-500, #6B7280)}@media (max-width: 1024px){.tickets-quick-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-row{flex-direction:column}.ticket-side{width:100%;align-items:flex-start}.ticket-meta-secondary{align-items:flex-start}}@media (max-width: 768px){.employee-tickets-container{padding:var(--space-4, 16px)}.tickets-quick-stats{grid-template-columns:repeat(1,minmax(0,1fr))}}.ticket-detail-admin-container{padding:var(--space-6, 24px);max-width:1440px;margin:0 auto}.ticket-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6, 24px)}.header-left{display:flex;align-items:center;gap:var(--space-4, 16px)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2, 8px);color:var(--color-primary, #3B82F6);text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.back-link:hover{color:var(--color-primary-dark, #2563EB)}.ticket-number-header{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:20px;font-weight:600;color:var(--color-text-primary, #374151)}.ticket-icon{width:24px;height:24px;color:var(--color-primary, #3B82F6)}.ticket-header-card{background:#fff;border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.ticket-subject{font-size:24px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-4, 16px) 0}.ticket-badges-row{display:flex;gap:var(--space-6, 24px);flex-wrap:wrap}.badge-group{display:flex;flex-direction:column;gap:var(--space-1, 4px)}.badge-label{font-size:12px;color:var(--color-text-secondary, #6B7280);font-weight:500}.department-badge,.request-type-badge{padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-sm, 4px);font-size:14px;font-weight:500}.department-badge{background:#dbeafe;color:#1e40af}.request-type-badge{background:var(--color-bg-secondary, #F3F4F6);color:var(--color-text-secondary, #6B7280)}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-sm, 4px);font-size:14px;font-weight:500}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.info-card{background:#fff;border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-lg, 8px);padding:var(--space-5, 20px)}.info-card-title{font-size:16px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-4, 16px) 0}.info-item{display:flex;align-items:center;gap:var(--space-2, 8px);margin-bottom:var(--space-3, 12px);font-size:14px;color:var(--color-text-primary, #374151)}.info-icon{width:16px;height:16px;color:var(--color-text-secondary, #6B7280);flex-shrink:0}.info-label{font-weight:500;color:var(--color-text-secondary, #6B7280);margin-right:var(--space-2, 8px)}.priority-badge{padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-sm, 4px);font-size:12px;font-weight:500;text-transform:capitalize}.priority-badge.high{background:#fee2e2;color:#991b1b}.priority-badge.normal{background:#dbeafe;color:#1e40af}.priority-badge.low{background:#f3f4f6;color:#374151}.view-profile-link{display:inline-block;margin-top:var(--space-4, 16px);color:var(--color-primary, #3B82F6);text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.view-profile-link:hover{color:var(--color-primary-dark, #2563EB)}.section-card{background:#fff;border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-lg, 8px);padding:var(--space-6, 24px);margin-bottom:var(--space-6, 24px)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4, 16px)}.section-title{font-size:18px;font-weight:600;color:var(--color-text-primary, #374151);margin:0}.subsection-title{font-size:14px;font-weight:600;color:var(--color-text-primary, #374151);margin:var(--space-4, 16px) 0 var(--space-3, 12px) 0}.sort-select{padding:var(--space-1, 4px) var(--space-2, 8px);border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-sm, 4px);font-size:13px;background:#fff}.request-description{font-size:14px;color:var(--color-text-primary, #374151);line-height:1.6}.request-description p{margin:0 0 var(--space-2, 8px) 0}.section-divider{height:1px;background:var(--color-border, #E5E7EB);margin:var(--space-4, 16px) 0}.attachments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3, 12px)}.attachment-card{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-3, 12px);background:var(--color-bg-secondary, #F3F4F6);border-radius:var(--radius-md, 6px)}.attachment-icon{width:20px;height:20px;color:var(--color-text-secondary, #6B7280);flex-shrink:0}.attachment-info{flex:1;display:flex;flex-direction:column;gap:var(--space-1, 4px)}.attachment-name{font-size:13px;font-weight:500;color:var(--color-text-primary, #374151)}.attachment-size{font-size:12px;color:var(--color-text-secondary, #6B7280)}.attachment-actions{display:flex;gap:var(--space-1, 4px)}.icon-btn{background:transparent;border:none;cursor:pointer;padding:var(--space-1, 4px);color:var(--color-text-secondary, #6B7280);transition:color .2s;display:flex;align-items:center;justify-content:center}.icon-btn:hover{color:var(--color-primary, #3B82F6)}.activity-timeline{display:flex;flex-direction:column;gap:var(--space-4, 16px);margin-bottom:var(--space-6, 24px)}.activity-item{padding:var(--space-4, 16px);background:var(--color-bg-secondary, #F9FAFB);border-radius:var(--radius-md, 6px);border-left:3px solid var(--color-border, #E5E7EB)}.activity-item.status_change{border-left-color:var(--color-primary, #3B82F6)}.activity-item.comment{border-left-color:var(--color-success, #10B981)}.activity-header{display:flex;align-items:center;gap:var(--space-2, 8px);margin-bottom:var(--space-2, 8px)}.activity-icon{width:16px;height:16px;flex-shrink:0}.activity-icon.status-change{color:var(--color-primary, #3B82F6)}.activity-icon.comment{color:var(--color-success, #10B981)}.activity-type{font-size:12px;font-weight:600;color:var(--color-text-secondary, #6B7280);text-transform:uppercase;letter-spacing:.5px}.activity-date{margin-left:auto;font-size:12px;color:var(--color-text-secondary, #6B7280)}.activity-author{font-size:13px;color:var(--color-text-primary, #374151);margin-bottom:var(--space-2, 8px);font-weight:500}.activity-content{font-size:14px;color:var(--color-text-primary, #374151);line-height:1.6}.activity-content p{margin:0 0 var(--space-2, 8px) 0}.internal-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);background:#fef3c7;color:#92400e;border-radius:var(--radius-sm, 4px);font-size:11px;font-weight:500}.comment-attachments{margin-top:var(--space-2, 8px);display:flex;flex-direction:column;gap:var(--space-1, 4px)}.comment-attachment{display:flex;align-items:center;gap:var(--space-1, 4px);font-size:12px;color:var(--color-text-secondary, #6B7280)}.email-notification-badge{margin-top:var(--space-2, 8px);font-size:12px;color:var(--color-success, #10B981);font-style:italic}.add-comment-section{padding-top:var(--space-4, 16px);border-top:1px solid var(--color-border, #E5E7EB)}.comment-form{display:flex;flex-direction:column;gap:var(--space-3, 12px)}.comment-textarea{width:100%;padding:var(--space-3, 12px);border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-md, 6px);font-size:14px;font-family:inherit;resize:vertical;min-height:100px}.comment-textarea:focus{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:0 0 0 3px #3b82f61a}.comment-options{display:flex;flex-direction:column;gap:var(--space-2, 8px)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:13px;color:var(--color-text-primary, #374151);cursor:pointer}.comment-form-actions{display:flex;justify-content:flex-end;gap:var(--space-3, 12px)}.error-message,.not-found-message{text-align:center;padding:var(--space-12, 48px) var(--space-6, 24px);background:#fff;border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-lg, 8px)}.error-message p{margin:0 0 var(--space-4, 16px) 0;color:var(--color-error, #EF4444)}.not-found-message h2{font-size:20px;font-weight:600;color:var(--color-text-primary, #374151);margin:0 0 var(--space-2, 8px) 0}.not-found-message p{font-size:14px;color:var(--color-text-secondary, #6B7280);margin:0 0 var(--space-4, 16px) 0}.icon-xs{width:12px;height:12px}@media (max-width: 1024px){.info-grid{grid-template-columns:1fr}}@media (max-width: 768px){.ticket-detail-admin-container{padding:var(--space-4, 16px)}.ticket-detail-header{flex-direction:column;align-items:flex-start;gap:var(--space-3, 12px)}.ticket-badges-row{flex-direction:column;gap:var(--space-3, 12px)}.attachments-grid{grid-template-columns:1fr}.comment-form-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.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:var(--space-4, 16px)}.modal-content{background:#fff;border-radius:var(--radius-lg, 8px);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-5, 20px) var(--space-6, 24px);border-bottom:1px solid var(--color-border, #E5E7EB)}.modal-header h2{font-size:20px;font-weight:600;color:var(--color-text-primary, #374151);margin:0}.modal-close-btn{background:transparent;border:none;cursor:pointer;padding:var(--space-1, 4px);color:var(--color-text-secondary, #6B7280);transition:color .2s;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{color:var(--color-text-primary, #374151)}.status-form{padding:var(--space-6, 24px)}.error-banner{display:flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-3, 12px) var(--space-4, 16px);background:#fee2e2;color:#991b1b;border-radius:var(--radius-md, 6px);margin-bottom:var(--space-4, 16px);font-size:14px}.current-status-display{display:flex;align-items:center;gap:var(--space-3, 12px);padding:var(--space-3, 12px) var(--space-4, 16px);background:var(--color-bg-secondary, #F9FAFB);border-radius:var(--radius-md, 6px);margin-bottom:var(--space-5, 20px)}.current-status-label{font-size:14px;color:var(--color-text-secondary, #6B7280);font-weight:500}.current-status-badge{padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-sm, 4px);font-size:14px;font-weight:500}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary, #374151);margin-bottom:var(--space-2, 8px)}.required{color:var(--color-error, #EF4444)}.form-group select,.form-group textarea{width:100%;padding:var(--space-2, 8px) var(--space-3, 12px);border:1px solid var(--color-border, #E5E7EB);border-radius:var(--radius-md, 6px);font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:0 0 0 3px #3b82f61a}.form-group select.error,.form-group textarea.error{border-color:var(--color-error, #EF4444)}.form-group select:disabled{background:var(--color-bg-secondary, #F3F4F6);cursor:not-allowed}.error-message{display:block;font-size:12px;color:var(--color-error, #EF4444);margin-top:var(--space-1, 4px)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2, 8px);font-size:14px;color:var(--color-text-primary, #374151);cursor:pointer}.checkbox-label input[type=checkbox]{cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3, 12px);padding-top:var(--space-4, 16px);border-top:1px solid var(--color-border, #E5E7EB)}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-4, 16px);background:var(--color-primary, #3B82F6);color:#fff;border:none;border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark, #2563EB)}.btn-secondary{display:inline-flex;align-items:center;gap:var(--space-2, 8px);padding:var(--space-2, 8px) var(--space-4, 16px);background:#fff;color:var(--color-primary, #3B82F6);border:1px solid var(--color-primary, #3B82F6);border-radius:var(--radius-md, 6px);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--color-primary-light, #DBEAFE)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.modal-header,.status-form{padding:var(--space-4, 16px)}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%;justify-content:center}}.client-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.client-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.client-list-header .page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-1, 4px) 0}.client-list-header .page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.filter-select{height:36px!important;padding:var(--space-2, 8px) var(--space-8, 32px) var(--space-2, 8px) var(--space-3, 12px)!important;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 14px);line-height:20px;background:#fff;cursor:pointer;transition:all var(--transition-fast, .15s);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:16px;min-width:120px!important;max-width:160px!important;flex-shrink:0!important;box-sizing:border-box!important}.client-table-wrapper{background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden}.client-table{width:100%;border-collapse:collapse}.client-table thead{background:#f9fafb}.client-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px}.client-table td{padding:16px;border-top:1px solid #E5E7EB;font-size:14px;color:#374151}.client-table tbody tr:hover{background-color:#f9fafb}.client-table tbody tr.selected{background-color:#dbeafe}.client-name-cell{display:flex;align-items:center;gap:12px}.client-icon{width:24px;height:24px;color:#6b7280}.client-name{font-weight:500;color:#1f2937}.client-website{font-size:12px;color:#6b7280;margin-top:2px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#6b7280;transition:all .2s}.pagination-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #3b82f666}.client-form-container{padding:var(--space-6, 24px);max-width:1200px;margin:0 auto}.form-header{margin-bottom:var(--space-6, 24px)}.form-title{font-size:30px;font-weight:600;color:#1f2937;margin:0}.client-form{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:var(--space-6, 24px)}.form-section{margin-bottom:var(--space-8, 32px)}.form-section:last-of-type{margin-bottom:0}.section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 var(--space-4, 16px) 0;padding-bottom:12px;border-bottom:1px solid #E5E7EB}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #E5E7EB;border-radius:8px;font-size:14px;color:#1f2937;transition:all .2s}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:var(--space-8, 32px);padding-top:var(--space-6, 24px);border-top:1px solid #E5E7EB}.error-banner{background:#fee2e2;border:1px solid #FCA5A5;border-radius:8px;padding:16px;color:#991b1b;margin-bottom:var(--space-4, 16px)}.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:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6, 24px);border-bottom:1px solid #E5E7EB}.modal-title{font-size:20px;font-weight:600;color:#1f2937;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#6b7280;cursor:pointer;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#374151}.contact-form{padding:var(--space-6, 24px)}.form-info{background:#eff6ff;border:1px solid #BFDBFE;border-radius:8px;padding:12px 16px;margin-bottom:var(--space-4, 16px)}.info-text{font-size:14px;color:#1e40af;margin:0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4, 16px)}.form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-group .required{color:#ef4444}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #E5E7EB;border-radius:8px;font-size:14px;color:#1f2937;transition:all .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.form-group textarea{resize:vertical;font-family:inherit}.error-message{font-size:12px;color:#ef4444;margin-top:4px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:var(--space-6, 24px);padding-top:var(--space-6, 24px);border-top:1px solid #E5E7EB}.error-banner{background:#fee2e2;border:1px solid #FCA5A5;border-radius:8px;padding:16px;margin:0 var(--space-6, 24px) var(--space-4, 16px);color:#991b1b}.icon-md{width:20px;height:20px}.client-detail-container{padding:var(--space-6, 24px);max-width:1200px;margin:0 auto}.detail-header{margin-bottom:var(--space-6, 24px)}.back-link{display:inline-flex;align-items:center;gap:8px;color:#6b7280;text-decoration:none;font-size:14px;margin-bottom:16px;transition:color .2s}.header-content{display:flex;justify-content:space-between;align-items:flex-start}.client-title-section{flex:1}.client-title-row{display:flex;align-items:center;gap:16px}.client-icon-large{width:48px;height:48px;color:#6b7280}.client-name{font-size:30px;font-weight:600;color:#1f2937;margin:0 0 8px}.client-meta{display:flex;gap:8px;align-items:center}.meta-badge{padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500;background:#f3f4f6;color:#374151}.status-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500}.detail-tabs{display:flex;gap:8px;border-bottom:1px solid #E5E7EB;margin-bottom:var(--space-6, 24px)}.tab{padding:12px 20px;border:none;background:transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.tab-content{animation:fadeIn .2s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4, 16px);margin-bottom:var(--space-4, 16px)}.detail-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:var(--space-4, 16px)}.card-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 var(--space-4, 16px) 0}.detail-list{display:flex;flex-direction:column;gap:12px}.detail-item{display:flex;gap:8px}.detail-label{font-weight:500;color:#6b7280;min-width:100px}.detail-value{color:#1f2937}.detail-value-link{color:#3b82f6;text-decoration:none}.detail-value-link:hover{text-decoration:underline}.address-content{display:flex;flex-direction:column;gap:4px;color:#374151}.contact-content{display:flex;flex-direction:column;gap:12px}.contact-item{display:flex;align-items:center;gap:8px;color:#374151}.contact-item a{color:#3b82f6;text-decoration:none}.contact-item a:hover{text-decoration:underline}.notes-content{color:#374151;line-height:1.6;white-space:pre-wrap}.contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4, 16px)}.section-title{font-size:20px;font-weight:600;color:#1f2937;margin:0}.contacts-list{display:grid;gap:var(--space-4, 16px)}.contact-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:var(--space-4, 16px)}.contact-info{display:flex;flex-direction:column;gap:8px}.contact-name{font-size:16px;font-weight:500;color:#1f2937}.contact-email,.contact-phone{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:14px}.empty-state{text-align:center;padding:48px 16px;background:#fff;border:1px solid #E5E7EB;border-radius:12px}.error-banner p{margin:0}.vendor-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.vendor-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.vendor-list-header .page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-1, 4px) 0}.vendor-list-header .page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.filters-bar{display:flex!important;flex-direction:row!important;align-items:center!important;gap:var(--space-3, 12px)!important;margin-bottom:var(--space-4, 16px);flex-wrap:nowrap!important;width:100%!important;overflow:visible!important}.search-box{position:relative;flex:0 1 auto!important;min-width:200px!important;max-width:400px!important;flex-shrink:1!important}.search-input{width:100%;height:36px;padding:var(--space-2, 8px) var(--space-3, 12px) var(--space-2, 8px) var(--space-10, 40px);border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 14px);line-height:20px;transition:all var(--transition-fast, .15s);box-sizing:border-box}.search-shortcut{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:#9ca3af;background:#f3f4f6;padding:2px 6px;border-radius:4px}.filter-group{display:flex!important;flex-direction:row!important;align-items:center!important;gap:var(--space-2, 8px)!important;flex-shrink:0!important;flex-wrap:nowrap!important;white-space:nowrap!important;min-width:0!important}.filter-group .btn{height:36px;padding:var(--space-2, 8px) var(--space-4, 16px);line-height:20px;box-sizing:border-box}.filter-select{height:36px!important;padding:var(--space-2, 8px) var(--space-8, 32px) var(--space-2, 8px) var(--space-3, 12px)!important;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 14px);line-height:20px;background:#fff;cursor:pointer;transition:all var(--transition-fast, .15s);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%236b7280'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;background-size:16px;min-width:120px!important;max-width:160px!important;flex-shrink:0!important;box-sizing:border-box!important}.vendor-table-wrapper{background:#fff;border:1px solid #E5E7EB;border-radius:12px;overflow:hidden}.vendor-table{width:100%;border-collapse:collapse}.vendor-table thead{background:#f9fafb}.vendor-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.vendor-table td{padding:16px;border-top:1px solid #E5E7EB;font-size:14px;color:#374151}.vendor-name-cell{display:flex;align-items:center;gap:12px}.vendor-icon{width:24px;height:24px;color:#6b7280}.vendor-name{font-weight:500;color:#1f2937}.vendor-location{font-size:12px;color:#6b7280;margin-top:2px}.vendor-code{font-family:monospace;font-weight:500;color:#374151}.vendor-type-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500}.status-inactive{background:var(--color-gray-100, #F3F4F6);color:var(--color-gray-700, #374151)}.projects-count{font-weight:500;color:#374151}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#6b7280;transition:all .2s;text-decoration:none}.icon-button:hover{background:#f3f4f6;color:#374151}.empty-state{text-align:center;padding:var(--space-12, 48px) var(--space-4, 16px)}.empty-state h3{font-size:var(--text-xl, 20px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-2, 8px) 0}.empty-state p{color:var(--color-gray-500, #6B7280);margin-bottom:var(--space-4, 16px);font-size:var(--text-base, 14px)}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:24px}.pagination-btn{padding:8px 16px;border:1px solid #E5E7EB;border-radius:8px;background:#fff;color:#374151;cursor:pointer;font-size:14px}.pagination-btn:hover:not(:disabled){background:#f9fafb}.error-banner{background:#fee2e2;border:1px solid #FCA5A5;border-radius:8px;padding:16px;color:#991b1b;display:flex;justify-content:space-between;align-items:center}.error-banner button{padding:8px 16px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer}.text-sm{font-size:12px}.text-gray-500{color:#6b7280}.vendor-detail-container{padding:var(--space-6, 24px);max-width:1200px;margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:8px;color:#6b7280;text-decoration:none;margin-bottom:24px;font-size:14px}.vendor-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding:24px;background:#fff;border:1px solid #E5E7EB;border-radius:12px}.vendor-header-content{display:flex;align-items:center;gap:16px}.vendor-icon-large{width:48px;height:48px;color:#6b7280}.vendor-name-title{font-size:24px;font-weight:600;color:#1f2937;margin:0 0 8px}.vendor-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:#6b7280}.vendor-type-badge,.status-badge{display:inline-block;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500}.status-active{background:#d1fae5;color:#065f46}.status-inactive{background:#f3f4f6;color:#374151}.vendor-header-actions{display:flex;gap:12px}.vendor-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid #E5E7EB}.tab{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.tab:hover{color:#374151}.tab-active{padding:12px 24px;background:none;border:none;border-bottom:2px solid #3B82F6;font-size:14px;font-weight:500;color:#3b82f6;cursor:pointer}.vendor-content{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.info-card{padding:20px;background:#f9fafb;border-radius:8px}.card-title{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 16px}.info-item{display:flex;gap:8px;margin-bottom:12px;font-size:14px}.info-label{font-weight:500;color:#6b7280}.info-value{color:#374151}.vendor-form-container{padding:var(--space-6, 24px);max-width:1200px;margin:0 auto}.vendor-form-header{margin-bottom:var(--space-6, 24px)}.back-link{display:inline-flex;align-items:center;gap:8px;color:#6b7280;text-decoration:none;margin-bottom:16px;font-size:14px}.back-link:hover{color:#374151}.page-title{font-size:30px;font-weight:600;color:#1f2937;margin:0 0 4px}.page-subtitle{font-size:14px;color:#6b7280;margin:0}.vendor-form{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px}.section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 20px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #E5E7EB;border-radius:8px;font-size:14px;transition:all .2s}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444}.error-message{color:#ef4444;font-size:12px;margin-top:4px}.form-group textarea{resize:vertical;min-height:100px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s}.error-banner{background:#fee2e2;border:1px solid #FCA5A5;border-radius:8px;padding:16px;color:#991b1b;margin-bottom:24px}.project-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.project-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.project-list-header .page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-1, 4px) 0}.project-list-header .page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.header-actions{display:flex;gap:12px}.filters-bar{display:flex;gap:12px;margin-bottom:var(--space-4, 16px);flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:300px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#6b7280}.search-input{width:100%;padding:var(--space-2, 8px) var(--space-3, 12px) var(--space-2, 8px) var(--space-10, 40px);border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 14px);transition:all var(--transition-fast, .15s)}.filter-group{display:flex;gap:12px;align-items:center}.filter-select{padding:var(--space-2, 8px) var(--space-3, 12px);border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-lg, 8px);font-size:var(--text-base, 14px);background:#fff;cursor:pointer;transition:all var(--transition-fast, .15s)}.filter-select:focus,.filter-select:focus-visible{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .1))}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.project-table-wrapper{background:#fff;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden}.project-table{width:100%;border-collapse:collapse}.project-table thead{background:#f9fafb}.project-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #E5E7EB}.project-table td{padding:16px;border-bottom:1px solid #E5E7EB;font-size:14px;color:#1f2937}.project-table tbody tr:hover{background:#f9fafb}.project-table tbody tr:last-child td{border-bottom:none}.project-name-cell{display:flex;align-items:flex-start;gap:12px}.project-icon{width:20px;height:20px;color:#6b7280;margin-top:2px;flex-shrink:0}.project-name-link{font-weight:500;color:#1f2937;text-decoration:none}.project-name-link:hover{color:#3b82f6;text-decoration:underline}.project-code{font-size:12px;color:#6b7280;margin-top:2px}.vendor-count-badge{display:inline-block;padding:2px 8px;background:#f3f4f6;color:#374151;border-radius:4px;font-size:11px;font-weight:500;margin-top:4px}.employee-name{font-weight:500;color:#1f2937}.employee-code{font-size:12px;color:#6b7280;margin-top:2px}.rate-cell{display:flex;align-items:center;gap:8px}.lca-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:#dbeafe;color:#1e40af;border-radius:4px;font-size:11px;font-weight:500}.lca-icon{width:14px;height:14px}.status-active{background:var(--color-success-light, #D1FAE5);color:var(--color-success-dark, #065F46)}.status-completed{background:var(--color-primary-light, #DBEAFE);color:var(--color-primary-700, #1E40AF)}.status-on-hold{background:var(--color-warning-light, #FEF3C7);color:var(--color-warning-dark, #92400E)}.status-cancelled{background:var(--color-error-light, #FEE2E2);color:var(--color-error-dark, #991B1B)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#6b7280;text-decoration:none;transition:all .2s}.icon-button:hover{background:#f3f4f6;color:#3b82f6}.empty-state{text-align:center;padding:48px 16px}.empty-state p{color:#6b7280;margin-bottom:16px}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding:16px;background:#fff;border:1px solid #E5E7EB;border-radius:8px}.pagination-btn{padding:8px 16px;border:1px solid #E5E7EB;border-radius:6px;background:#fff;color:#374151;font-size:14px;cursor:pointer;transition:all .2s}.project-detail-container{padding:var(--space-6, 24px);max-width:1440px;margin:0 auto}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:#fff;border:1px solid #E5E7EB;border-radius:8px}.project-header-content{display:flex;gap:16px;flex:1}.project-icon-large{width:48px;height:48px;color:#3b82f6;flex-shrink:0}.project-name-title{font-size:28px;font-weight:600;color:#1f2937;margin:0 0 8px}.project-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:#6b7280;margin-bottom:8px}.project-employee-info{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;margin-bottom:4px}.project-dates{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.lca-badge-header{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#dbeafe;color:#1e40af;border-radius:6px;font-size:12px;font-weight:500}.lca-icon,.icon-xs{width:14px;height:14px}.project-header-actions{display:flex;gap:12px}.project-tabs{display:flex;gap:8px;border-bottom:2px solid #E5E7EB;margin-bottom:24px}.project-tab{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s;margin-bottom:-2px}.project-tab:hover{color:#3b82f6}.project-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.project-tab-content{min-height:400px}.overview-tab{padding:24px;background:#fff;border:1px solid #E5E7EB;border-radius:8px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.overview-card{padding:20px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px}.overview-card h3{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #E5E7EB}.financial-item{display:flex;justify-content:space-between;padding:8px 0}.financial-label{font-size:14px;color:#6b7280}.financial-value{font-size:14px;font-weight:600;color:#1f2937}.client-info{display:flex;flex-direction:column;gap:8px}.client-name{font-size:16px;font-weight:600;color:#1f2937}.client-manager{display:flex;flex-direction:column;gap:4px;font-size:14px;color:#6b7280}.vendor-chain-tab,.rate-history-tab,.documents-tab,.resumes-tab,.background-checks-tab{padding:24px;background:#fff;border:1px solid #E5E7EB;border-radius:8px}.vendor-chain-tab h3,.rate-history-tab h3,.documents-tab h3,.resumes-tab h3,.background-checks-tab h3{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 24px}.vendor-chain-visual{display:flex;flex-direction:column;gap:16px}.vendor-chain-item{display:flex;flex-direction:column;align-items:center}.vendor-chain-card{padding:16px;background:#fff;border:1px solid #E5E7EB;border-radius:8px;width:220px;position:relative}.vendor-level-badge{position:absolute;top:8px;right:8px;padding:2px 8px;background:#f3f4f6;color:#374151;border-radius:4px;font-size:11px;font-weight:600}.vendor-name{font-size:14px;font-weight:500;color:#1f2937;margin-bottom:4px}.vendor-contact{font-size:12px;color:#6b7280}.vendor-chain-arrow{font-size:24px;color:#d1d5db;margin:8px 0}.rate-history-list{display:flex;flex-direction:column;gap:16px}.rate-history-item{padding:16px;background:#f9fafb;border:1px solid #E5E7EB;border-radius:8px}.rate-history-item.current{background:#d1fae5;border:2px solid #10B981}.rate-history-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.rate-value{font-size:20px;font-weight:700;color:#065f46}.current-badge{padding:2px 8px;background:#065f46;color:#fff;border-radius:4px;font-size:11px;font-weight:600}.rate-history-details{display:flex;gap:12px;font-size:13px;color:#6b7280}.error-banner{padding:16px;background:#fee2e2;color:#991b1b;border-radius:8px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.error-banner button{padding:8px 16px;background:#991b1b;color:#fff;border:none;border-radius:6px;cursor:pointer}.error-banner button:hover{background:#7f1d1d}.capitalize{text-transform:capitalize}.project-form-container{padding:var(--space-6, 24px);max-width:1000px;margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:8px;color:#6b7280;text-decoration:none;font-size:14px;margin-bottom:24px}.back-link:hover{color:#3b82f6}.project-form-header{margin-bottom:32px}.page-title{font-size:30px;font-weight:600;color:#1f2937;margin:0}.error-banner{padding:16px;background:#fee2e2;color:#991b1b;border-radius:8px;margin-bottom:24px}.project-form{background:#fff;border:1px solid #E5E7EB;border-radius:8px;padding:32px}.form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #E5E7EB}.form-section:last-of-type{border-bottom:none}.form-section-title{font-size:18px;font-weight:600;color:#1f2937;margin:0 0 24px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#374151}.form-group input,.form-group select{padding:10px 12px;border:1px solid #E5E7EB;border-radius:6px;font-size:14px;transition:all .2s}.form-group input.error,.form-group select.error{border-color:#ef4444}.error-message{font-size:12px;color:#ef4444}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.form-help-text{font-size:13px;color:#6b7280;margin-top:4px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;border-top:1px solid #E5E7EB}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s;text-decoration:none}.btn-secondary{background:#fff;color:#374151;border:1px solid #E5E7EB}.document-list{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.document-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.document-list-header h1{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);margin:0 0 var(--space-2, 8px) 0}.document-list-subtitle{color:#6b7280;font-size:.875rem;margin:0}.document-list-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:250px}.search-box .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:#9ca3af}.search-box input{width:100%;padding:.5rem .75rem .5rem 2.5rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem}.search-box input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-group{display:flex;gap:.5rem;flex-wrap:wrap}.filter-group select{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;background:#fff;cursor:pointer}.filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.document-list-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden;margin-bottom:1.5rem}.document-list-table{width:100%;border-collapse:collapse}.document-list-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.document-list-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.document-list-table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .15s}.document-list-table tbody tr:hover{background:#f9fafb}.document-list-table tbody tr:last-child{border-bottom:none}.document-list-table td{padding:1rem;font-size:.875rem;color:#111827}.document-name-cell{display:flex;align-items:center;gap:.75rem}.document-icon{width:2rem;height:2rem;color:#3b82f6;flex-shrink:0}.document-name{font-weight:500;color:#111827;margin-bottom:.25rem}.document-meta{font-size:.75rem;color:#6b7280}.entity-name{color:#111827;font-weight:500}.document-type-badge{display:inline-block;padding:.25rem .5rem;background:#eff6ff;color:#1e40af;border-radius:.25rem;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-2, 8px);border-radius:var(--radius-sm, 4px);font-size:var(--text-sm, 12px);font-weight:var(--font-medium, 500);white-space:nowrap}.status-badge .status-icon{width:var(--space-4, 16px);height:var(--space-4, 16px)}.status-badge.status-valid{background:var(--color-success-light, #d1fae5);color:var(--color-success-dark, #065f46)}.status-badge.status-expiring{background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e)}.status-badge.status-expiring-urgent,.status-badge.status-expired{background:var(--color-error-light, #fee2e2);color:var(--color-error-dark, #991b1b)}.document-actions{display:flex;align-items:center;gap:.5rem}.icon-button .icon-sm{width:1.25rem;height:1.25rem}.dropdown-container{position:relative}.dropdown-menu{position:absolute;right:0;top:100%;margin-top:.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a;min-width:150px;z-index:10}.dropdown-menu button{display:block;width:100%;padding:.5rem 1rem;text-align:left;border:none;background:transparent;color:#111827;font-size:.875rem;cursor:pointer;transition:background-color .15s}.dropdown-menu button:hover{background:#f9fafb}.dropdown-menu button.danger{color:#dc2626}.dropdown-menu button.danger:hover{background:#fef2f2}.empty-state{text-align:center;padding:3rem 1rem}.empty-icon{width:4rem;height:4rem;color:#d1d5db;margin:0 auto 1rem}.empty-state p{color:#6b7280;margin-bottom:1rem}.document-list-pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.document-list-error{padding:2rem;text-align:center;color:#dc2626}.document-list-error button{margin-top:1rem;padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.5rem;cursor:pointer}.document-list-error button:hover{background:#2563eb}.document-upload{padding:2rem;max-width:900px;margin:0 auto}.document-upload-container{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.document-upload-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.document-upload-header h1{font-size:1.5rem;font-weight:600;color:#111827;margin:0}.document-upload-section{padding:1.5rem}.upload-zone{border:2px dashed #d1d5db;border-radius:.75rem;padding:3rem 2rem;text-align:center;background:#f9fafb;transition:all .2s;cursor:pointer}.upload-zone.dragging{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 4px #3b82f61a}.upload-zone.has-files{padding:1.5rem}.file-input-hidden{display:none}.upload-label{display:flex;flex-direction:column;align-items:center;gap:1rem;cursor:pointer}.upload-icon{width:3rem;height:3rem;color:#6b7280}.upload-text{display:flex;flex-direction:column;gap:.5rem}.upload-primary{font-size:1rem;font-weight:500;color:#111827}.upload-secondary{font-size:.875rem;color:#6b7280}.uploaded-files{margin-top:2rem}.uploaded-files h3{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.file-list{display:flex;flex-direction:column;gap:1rem}.file-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.file-info{display:flex;align-items:center;gap:.75rem;flex:1}.file-icon{font-size:1.5rem}.file-details{flex:1}.file-name{font-weight:500;color:#111827;margin-bottom:.25rem}.file-meta{font-size:.75rem;color:#6b7280}.file-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;min-width:150px}.progress-bar{width:100%;height:.5rem;background:#e5e7eb;border-radius:.25rem;overflow:hidden}.progress-fill{height:100%;background:#3b82f6;transition:width .3s}.status-text{font-size:.75rem;color:#6b7280;display:flex;align-items:center;gap:.25rem}.status-text.success{color:#10b981}.status-text.error{color:#ef4444}.remove-file-button{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:#6b7280;transition:all .15s}.remove-file-button:hover{background:#fee2e2;color:#dc2626}.document-details-section{padding:1.5rem;border-top:1px solid #e5e7eb}.document-details-section h3{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#374151}.form-group label .required{color:#dc2626}.form-group input,.form-group select,.form-group textarea{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.tracking-options{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.tracking-options h4{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;cursor:pointer}.checkbox-label input[type=checkbox]{margin-top:.25rem;width:1rem;height:1rem;cursor:pointer}.checkbox-label span:not(.help-text){font-size:.875rem;font-weight:500;color:#111827}.help-text{display:block;font-size:.75rem;color:#6b7280;margin-top:.25rem}.error-message{display:flex;align-items:center;gap:.5rem;padding:1rem;margin:1.5rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#991b1b;font-size:.875rem}.error-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.document-upload-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb}.btn{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s;border:none}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary:hover:not(:disabled){background:#f9fafb}.icon-button{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:#6b7280;transition:all .15s}.icon-button:hover{background:#f3f4f6;color:#111827}.icon-md{width:1.5rem;height:1.5rem}.document-viewer{padding:2rem;max-width:1600px;margin:0 auto}.document-viewer-header{margin-bottom:1.5rem}.back-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;color:#374151;font-size:.875rem;cursor:pointer;transition:all .15s}.back-button:hover{background:#f9fafb;color:#111827}.document-viewer-content{display:grid;grid-template-columns:1fr 400px;gap:1.5rem}.document-preview-panel{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;overflow:hidden;display:flex;flex-direction:column}.preview-container{flex:1;display:flex;align-items:center;justify-content:center;background:#1f2937;min-height:600px;padding:2rem;overflow:auto}.preview-image{max-width:100%;max-height:80vh;object-fit:contain}.preview-iframe{width:100%;height:80vh;border:none}.preview-unavailable{text-align:center;color:#9ca3af}.unavailable-icon{width:4rem;height:4rem;margin:0 auto 1rem;color:#d1d5db}.preview-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:#f9fafb;border-top:1px solid #e5e7eb}.control-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;cursor:pointer;transition:all .15s}.control-button:hover:not(:disabled){background:#f3f4f6}.control-button:disabled{opacity:.5;cursor:not-allowed}.zoom-level{font-size:.875rem;font-weight:500;color:#374151;min-width:50px;text-align:center}.document-info-panel{display:flex;flex-direction:column;gap:1.5rem}.info-section{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.info-section h3{font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.info-grid{display:flex;flex-direction:column;gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.info-item span{font-size:.875rem;color:#111827}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.status-badge.status-active{background:#d1fae5;color:#065f46}.ai-confidence{margin-bottom:1rem}.confidence-bar{position:relative;width:100%;height:1.5rem;background:#e5e7eb;border-radius:.25rem;overflow:hidden;margin-top:.5rem}.confidence-fill{height:100%;background:#10b981;transition:width .3s}.confidence-bar span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:600;color:#111827}.ai-data{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;max-height:300px;overflow:auto}.ai-data pre{margin:0;font-size:.75rem;color:#374151;white-space:pre-wrap;word-wrap:break-word}.action-buttons{display:flex;flex-direction:column;gap:.75rem}.action-buttons .btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s;border:none}.btn-danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.btn-danger:hover{background:#fecaca}.version-list{display:flex;flex-direction:column;gap:1rem}.version-item{padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.version-item.current{background:#eff6ff;border-color:#3b82f6}.version-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.version-number{font-weight:600;color:#111827}.version-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.version-badge.current{background:#10b981;color:#fff}.version-badge:not(.current){background:#e5e7eb;color:#6b7280}.version-details{margin-bottom:.75rem}.version-meta,.version-dates{font-size:.75rem;color:#6b7280;margin-top:.25rem}.version-actions{display:flex;gap:1rem}.btn-link{background:none;border:none;color:#3b82f6;font-size:.875rem;cursor:pointer;text-decoration:underline}.btn-link:hover{color:#2563eb}.document-viewer-error{padding:2rem;text-align:center;color:#dc2626}.document-viewer-error button{margin-top:1rem;padding:.5rem 1rem;background:#3b82f6;color:#fff;border:none;border-radius:.5rem;cursor:pointer}.icon-sm{width:1.25rem;height:1.25rem}.timesheet-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.timesheet-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-2, 8px) 0}.page-subtitle{color:#64748b;margin:0;font-size:14px}.header-actions{display:flex;gap:12px;align-items:center}.view-mode-toggle{display:flex;gap:4px;border:1px solid #e2e8f0;border-radius:8px;padding:4px;background:#fff}.view-mode-btn{display:flex;align-items:center;gap:6px;padding:8px 12px;border:none;background:transparent;color:#64748b;cursor:pointer;border-radius:6px;font-size:14px;transition:all .2s}.view-mode-btn:hover{background:#f1f5f9;color:#334155}.view-mode-btn.active{background:#3b82f6;color:#fff}.employee-name{font-weight:500;color:#1e293b}.employee-code{font-size:12px;color:#64748b;margin-top:2px}.current-period-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #3b82f6}.current-period-header h2{font-size:18px;font-weight:600;color:#1e40af;margin:0}.period-dates{font-size:14px;color:#1e40af;font-weight:500}.current-period-content{display:grid;grid-template-columns:1fr 1fr;gap:24px}.hours-summary{display:flex;flex-direction:column;gap:12px}.hours-display{display:flex;flex-direction:column;gap:8px}.hours-text{font-size:24px;font-weight:600;color:#1e293b}.progress-bar-container{width:100%;height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden}.progress-bar{height:100%;transition:width .3s ease;border-radius:6px}.hours-breakdown{display:flex;gap:16px;font-size:14px;color:#64748b}.status-summary{display:flex;flex-direction:column;gap:16px;align-items:flex-end}.status-badge-large{padding:8px 16px;border-radius:8px;font-weight:500;font-size:14px}.period-actions{display:flex;gap:8px}.filters-bar{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.search-box{position:relative;flex:1;min-width:200px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#94a3b8}.search-input{width:100%;padding:10px 12px 10px 40px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px}.filter-group{display:flex;gap:8px;align-items:center}.filter-select{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;background:#fff;cursor:pointer}.filter-select:focus{outline:none;border-color:#3b82f6}.timesheet-table-wrapper{background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0}.timesheet-table{width:100%;border-collapse:collapse}.timesheet-table thead{background:#f8fafc}.timesheet-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.timesheet-table td{padding:16px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#334155}.timesheet-table tbody tr:hover{background:#f8fafc}.timesheet-table .empty-state{text-align:center;padding:48px}.timesheet-table .empty-state p{color:#64748b;margin-bottom:16px}.action-buttons{display:flex;gap:8px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#64748b;text-decoration:none;transition:all .2s}.icon-button:hover{background:#f1f5f9;color:#334155}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:24px;border-top:1px solid #e2e8f0}.pagination-btn{padding:8px 16px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#334155;cursor:pointer;font-size:14px;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f1f5f9;border-color:#cbd5e1}.pagination-info{color:#64748b;font-size:14px}.calendar-view-placeholder{padding:48px;text-align:center;color:#64748b;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.timesheet-detail-container{padding:24px;max-width:1400px;margin:0 auto}.timesheet-detail-header{margin-bottom:24px;display:flex;flex-direction:column;gap:16px}.timesheet-detail-header .header-actions{display:flex;justify-content:space-between;align-items:center}.back-link{display:inline-flex;align-items:center;gap:4px;color:#3b82f6;text-decoration:none;font-size:14px}.back-link:hover{text-decoration:underline}.timesheet-detail-content{display:flex;flex-direction:column;gap:24px}.timesheet-summary-card{background:#fff;border-radius:8px;padding:24px;border:1px solid #e2e8f0}.summary-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:24px}.summary-row:last-child{margin-bottom:0}.summary-item label{display:block;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-item .employee-code{font-size:14px;color:#64748b;font-weight:400}.timesheet-entries-section{background:#fff;border-radius:8px;padding:24px;border:1px solid #e2e8f0}.timesheet-entries-section h2{font-size:18px;font-weight:600;color:#1e293b;margin:0 0 16px}.entries-table{width:100%;border-collapse:collapse}.entries-table thead{background:#f8fafc}.entries-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.entries-table td{padding:16px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#334155}.entries-table tbody tr:hover{background:#f8fafc}.entry-type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;background:#f1f5f9;color:#475569;text-transform:capitalize}.approval-info,.rejection-info{background:#fff;border-radius:8px;padding:16px;border:1px solid #e2e8f0}.rejection-info{background:#fef2f2;border-color:#fecaca;color:#991b1b}.error-banner{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px;color:#991b1b;display:flex;justify-content:space-between;align-items:center}.error-banner button{padding:8px 16px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer}.status-badge{display:inline-block;padding:4px 12px;border-radius:6px;font-size:12px;font-weight:500}.icon-sm{width:18px;height:18px}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;border:none;transition:all .2s}.btn-secondary{background:#fff;color:#334155;border:1px solid #e2e8f0}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.newsletter-list{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.newsletter-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);margin:0 0 var(--space-2, 8px) 0}.newsletter-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px;flex-wrap:wrap}.filter-tabs{display:flex;gap:8px}.filter-tab{padding:var(--space-2, 8px) var(--space-4, 16px);border:1px solid var(--color-gray-200, #E5E7EB);background:#fff;border-radius:var(--radius-md, 6px);font-size:var(--text-base, 14px);font-weight:var(--font-medium, 500);color:var(--color-gray-700, #374151);cursor:pointer;transition:all var(--transition-fast, .15s)}.filter-tab:hover{background:var(--color-gray-50, #F9FAFB);border-color:var(--color-gray-300, #D1D5DB)}.filter-tab.active{background:var(--color-primary, #3B82F6);color:#fff;border-color:var(--color-primary, #3B82F6)}.filter-tab:focus,.filter-tab:focus-visible{outline:none;box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .1))}.search-box{position:relative;flex:1;max-width:400px}.search-icon{position:absolute;left:var(--space-3, 12px);top:50%;transform:translateY(-50%);width:var(--space-5, 20px);height:var(--space-5, 20px);color:var(--color-gray-400, #9CA3AF)}.search-input{width:100%;padding:var(--space-2, 8px) var(--space-3, 12px) var(--space-2, 8px) var(--space-10, 40px);border:1px solid var(--color-gray-200, #E5E7EB);border-radius:var(--radius-md, 6px);font-size:var(--text-base, 14px);transition:all var(--transition-fast, .15s)}.search-input:focus,.search-input:focus-visible{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .1))}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.newsletter-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:24px;margin-bottom:32px}.newsletter-card{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;transition:all .2s}.newsletter-card:hover{box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.newsletter-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.newsletter-title{font-size:18px;font-weight:600;color:#111827;margin:0;flex:1}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-md, 6px);font-size:var(--text-sm, 12px);font-weight:var(--font-medium, 500);white-space:nowrap}.newsletter-subject{font-size:14px;color:#6b7280;margin:0 0 16px}.newsletter-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #E5E7EB}.meta-item{display:flex;gap:4px}.meta-label{font-size:12px;color:#9ca3af;font-weight:500}.meta-value{font-size:12px;color:#374151;font-weight:600}.newsletter-actions{display:flex;gap:8px}.empty-state{grid-column:1 / -1;text-align:center;padding:var(--space-16, 64px) var(--space-6, 24px)}.empty-icon{width:var(--space-16, 64px);height:var(--space-16, 64px);color:var(--color-gray-300, #D1D5DB);margin:0 auto var(--space-4, 16px)}.empty-state h3{font-size:var(--text-xl, 20px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);margin:0 0 var(--space-2, 8px) 0}.empty-state p{font-size:var(--text-base, 14px);color:var(--color-gray-500, #6B7280);margin:0 0 var(--space-6, 24px) 0}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:32px}.pagination-btn{padding:8px 16px;border:1px solid #E5E7EB;background:#fff;border-radius:6px;font-size:14px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.pagination-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:14px;color:#6b7280}.newsletter-form{padding:24px;max-width:1200px;margin:0 auto}.newsletter-form-header{margin-bottom:32px}.page-title{font-size:28px;font-weight:600;color:#111827;margin:0}.form-container{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px}.form-section{margin-bottom:24px}.form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.form-input,.form-textarea{width:100%;padding:10px 12px;border:1px solid #E5E7EB;border-radius:6px;font-size:14px;font-family:inherit;transition:all .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input.error,.form-textarea.error{border-color:#ef4444}.form-textarea{resize:vertical;min-height:300px}.error-message{display:block;font-size:12px;color:#ef4444;margin-top:4px}.form-hint{font-size:12px;color:#6b7280;margin-top:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:1px solid #E5E7EB}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.newsletter-detail{padding:24px;max-width:1200px;margin:0 auto}.newsletter-detail-header{margin-bottom:32px}.back-link{display:inline-flex;align-items:center;gap:8px;color:#3b82f6;text-decoration:none;font-size:14px;font-weight:500;margin-bottom:16px;transition:color .2s}.back-link:hover{color:#2563eb}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.page-title{font-size:28px;font-weight:600;color:#111827;margin:0 0 8px}.page-subtitle{font-size:16px;color:#6b7280;margin:0}.header-actions{display:flex;align-items:center;gap:12px}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap}.error-banner{background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:6px;margin-bottom:24px;border:1px solid #FCA5A5}.newsletter-info{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px;margin-bottom:24px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:12px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:14px;font-weight:600;color:#374151}.newsletter-content{background:#fff;border:1px solid #E5E7EB;border-radius:12px;padding:24px}.content-title{font-size:18px;font-weight:600;color:#111827;margin:0 0 16px}.content-html{font-size:14px;line-height:1.6;color:#374151}.content-html h1,.content-html h2,.content-html h3{margin-top:24px;margin-bottom:12px;color:#111827}.content-html h1{font-size:24px}.content-html h2{font-size:20px}.content-html h3{font-size:18px}.content-html p{margin-bottom:12px}.content-html ul,.content-html ol{margin-bottom:12px;padding-left:24px}.content-html a{color:#3b82f6;text-decoration:underline}.content-html a:hover{color:#2563eb}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;text-decoration:none;border:none;cursor:pointer;transition:all .2s}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #E5E7EB}.btn-secondary:hover{background:#e5e7eb}.icon-sm{width:16px;height:16px}.suggestion-list-container{padding:var(--space-6, 24px);max-width:var(--content-max-width, 1440px);margin:0 auto}.suggestion-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6, 24px)}.suggestion-list-header .page-title{font-size:var(--text-3xl, 30px);font-weight:var(--font-semibold, 600);color:var(--color-gray-800, #1F2937);margin:0 0 var(--space-1, 4px) 0}.suggestion-list-header .page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.suggestion-filters{display:flex;gap:var(--space-4, 16px);margin-bottom:var(--space-6, 24px);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:12px;font-weight:500;color:var(--color-gray-700, #374151)}.filter-group select,.filter-group input{padding:var(--space-2, 8px) var(--space-3, 12px);border:1px solid var(--color-gray-300, #D1D5DB);border-radius:var(--radius-md, 6px);font-size:var(--text-base, 14px);min-width:150px;transition:all var(--transition-fast, .15s)}.filter-group select:focus,.filter-group select:focus-visible,.filter-group input:focus,.filter-group input:focus-visible{outline:none;border-color:var(--color-primary, #3B82F6);box-shadow:var(--shadow-focus, 0 0 0 3px rgba(59, 130, 246, .1))}.filter-search{flex:1;min-width:200px}.filter-search input{width:100%}.suggestions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-4, 16px);margin-bottom:var(--space-6, 24px)}.suggestion-card{background:#fff;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:12px;padding:var(--space-4, 16px);transition:box-shadow .2s}.suggestion-card:hover{box-shadow:0 4px 6px -1px #0000001a}.suggestion-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-2, 8px);gap:var(--space-2, 8px)}.suggestion-title{font-size:18px;font-weight:600;color:var(--color-gray-900, #111827);margin:0;flex:1}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1, 4px);padding:var(--space-1, 4px) var(--space-3, 12px);border-radius:var(--radius-full, 9999px);font-size:var(--text-sm, 12px);font-weight:var(--font-medium, 500);white-space:nowrap}.status-blue{background:var(--color-primary-light, #DBEAFE);color:var(--color-primary-700, #1E40AF)}.status-yellow{background:var(--color-warning-light, #FEF3C7);color:var(--color-warning-dark, #92400E)}.status-green{background:var(--color-success-light, #D1FAE5);color:var(--color-success-dark, #065F46)}.status-red{background:var(--color-error-light, #FEE2E2);color:var(--color-error-dark, #991B1B)}.status-gray{background:var(--color-gray-100, #F3F4F6);color:var(--color-gray-600, #6B7280)}.suggestion-meta{display:flex;align-items:center;gap:8px;margin-bottom:var(--space-3, 12px);font-size:13px;color:var(--color-gray-600, #4B5563);flex-wrap:wrap}.suggestion-type{font-weight:500}.suggestion-separator{color:var(--color-gray-400, #9CA3AF)}.suggestion-description{color:var(--color-gray-700, #374151);font-size:14px;line-height:1.5;margin-bottom:var(--space-3, 12px)}.admin-response-preview{background:#f0f9ff;border-left:3px solid #3B82F6;padding:var(--space-2, 8px) var(--space-3, 12px);margin-bottom:var(--space-3, 12px);border-radius:4px;font-size:13px;color:var(--color-gray-700, #374151)}.admin-response-preview strong{color:var(--color-gray-900, #111827)}.suggestion-card-actions{display:flex;gap:var(--space-2, 8px);justify-content:flex-end}.btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;text-decoration:none;display:inline-block;transition:all .2s}.btn-sm{padding:6px 12px;font-size:12px}.empty-state{text-align:center;padding:var(--space-12, 48px) var(--space-6, 24px);background:#fff;border-radius:12px;border:1px solid var(--color-gray-200, #E5E7EB)}.empty-icon{font-size:64px;margin-bottom:var(--space-4, 16px)}.empty-state h3{font-size:20px;font-weight:600;color:var(--color-gray-900, #111827);margin:0 0 var(--space-2, 8px) 0}.empty-state p{color:var(--color-gray-600, #4B5563);margin:0 0 var(--space-4, 16px) 0}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-4, 16px);margin-top:var(--space-6, 24px)}.pagination-info{font-size:14px;color:var(--color-gray-700, #374151)}.suggestion-form-container{padding:var(--space-6, 24px);max-width:800px;margin:0 auto}.suggestion-form-header{margin-bottom:var(--space-6, 24px)}.page-title{font-size:30px;font-weight:600;color:var(--color-gray-800, #1F2937);margin:0 0 4px}.page-subtitle{font-size:14px;color:var(--color-gray-500, #6B7280);margin:0}.suggestion-form{background:#fff;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:12px;padding:var(--space-6, 24px)}.form-group{margin-bottom:var(--space-5, 20px)}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--color-gray-700, #374151);margin-bottom:6px}.form-group select,.form-group input[type=text],.form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--color-gray-300, #D1D5DB);border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s}.form-group select:focus,.form-group input[type=text]:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group select.error,.form-group input[type=text].error,.form-group textarea.error{border-color:#ef4444}.helper-text{display:block;font-size:12px;color:var(--color-gray-500, #6B7280);margin-top:4px}.character-count{display:block;font-size:12px;color:var(--color-gray-500, #6B7280);margin-top:4px;text-align:right}.character-count.error,.min-length{color:#ef4444}.error-text{display:block;color:#ef4444;font-size:12px;margin-top:4px}.radio-group{display:flex;flex-direction:column;gap:12px}.radio-option{display:flex;align-items:flex-start;gap:8px;cursor:pointer;padding:10px;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:6px;transition:all .2s}.radio-option:hover{background:#f9fafb;border-color:var(--color-gray-300, #D1D5DB)}.radio-option input[type=radio]{margin-top:2px;cursor:pointer}.radio-option input[type=radio]:checked+span{color:var(--color-gray-900, #111827);font-weight:500}.radio-option span{font-size:14px;color:var(--color-gray-700, #374151);line-height:1.5}.form-actions{display:flex;justify-content:flex-end;gap:var(--space-3, 12px);margin-top:var(--space-6, 24px);padding-top:var(--space-6, 24px);border-top:1px solid var(--color-gray-200, #E5E7EB)}.btn-primary:hover:not(:disabled){background:#2563eb}.suggestion-detail-container{padding:var(--space-6, 24px);max-width:900px;margin:0 auto}.suggestion-detail-header{margin-bottom:var(--space-6, 24px)}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-gray-600, #4B5563);text-decoration:none;font-size:14px;margin-bottom:var(--space-4, 16px);transition:color .2s}.back-link:hover{color:var(--color-gray-900, #111827)}.back-link .icon{width:16px;height:16px}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4, 16px)}.suggestion-title{font-size:28px;font-weight:600;color:var(--color-gray-900, #111827);margin:0 0 var(--space-3, 12px) 0}.suggestion-meta{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-gray-600, #4B5563);flex-wrap:wrap}.meta-separator{color:var(--color-gray-400, #9CA3AF)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:500}.status-blue{background:#dbeafe;color:#1e40af}.status-yellow{background:#fef3c7;color:#92400e}.status-green{background:#d1fae5;color:#065f46}.status-red{background:#fee2e2;color:#991b1b}.status-gray{background:#f3f4f6;color:#6b7280}.priority-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.priority-gray{background:#f3f4f6;color:#6b7280}.priority-blue{background:#dbeafe;color:#1e40af}.priority-yellow{background:#fef3c7;color:#92400e}.priority-red{background:#fee2e2;color:#991b1b}.suggestion-detail-content{background:#fff;border:1px solid var(--color-gray-200, #E5E7EB);border-radius:12px;padding:var(--space-6, 24px)}.detail-section{margin-bottom:var(--space-6, 24px)}.detail-section:last-child{margin-bottom:0}.detail-section h2{font-size:18px;font-weight:600;color:var(--color-gray-900, #111827);margin:0 0 var(--space-4, 16px) 0;padding-bottom:var(--space-2, 8px);border-bottom:2px solid var(--color-gray-200, #E5E7EB)}.description-content{color:var(--color-gray-700, #374151);font-size:15px;line-height:1.7}.description-content p{margin:0 0 var(--space-3, 12px) 0}.description-content p:last-child{margin-bottom:0}.admin-response-section{background:#f0f9ff;border-left:4px solid #3B82F6;padding:var(--space-5, 20px);border-radius:8px}.admin-response-content{color:var(--color-gray-700, #374151);font-size:15px;line-height:1.7}.admin-response-content p{margin:0 0 var(--space-3, 12px) 0}.admin-response-content p:last-child{margin-bottom:0}.admin-response-meta{margin-top:var(--space-4, 16px);padding-top:var(--space-4, 16px);border-top:1px solid #BFDBFE;font-size:13px;color:var(--color-gray-600, #4B5563);font-style:italic}.details-list{display:grid;gap:var(--space-4, 16px)}.detail-item{display:grid;grid-template-columns:120px 1fr;gap:var(--space-3, 12px)}.detail-item dt{font-weight:500;color:var(--color-gray-700, #374151);font-size:14px}.detail-item dd{margin:0;color:var(--color-gray-900, #111827);font-size:14px}.error-banner{background:#fee2e2;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:var(--space-4, 16px)}.btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;text-decoration:none;display:inline-block;transition:all .2s}.btn-secondary{background:#fff;color:#374151;border:1px solid #D1D5DB}.profile-tab{width:100%}.profile-view{display:flex;flex-direction:column;gap:2rem}.profile-photo-section{display:flex;align-items:center;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.profile-photo-large{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid #e5e7eb}.profile-photo-placeholder{width:96px;height:96px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600;border:2px solid #e5e7eb}.profile-info h4{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .25rem}.profile-email{color:#6b7280;margin:0}.profile-details{display:flex;flex-direction:column;gap:1rem}.detail-row{display:flex;gap:1rem}.detail-label{font-weight:500;color:#374151;min-width:150px}.detail-value{color:#6b7280}.profile-edit{display:flex;flex-direction:column}.photo-upload-section{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}.profile-photo-preview{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2px solid #e5e7eb}.photo-upload-actions{display:flex;gap:.75rem;flex-wrap:wrap}.required{color:#ef4444}@media (max-width: 768px){.profile-photo-section{flex-direction:column;text-align:center}.detail-row{flex-direction:column;gap:.25rem}.detail-label{min-width:auto}}.security-tab{width:100%}.password-info{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.info-item{display:flex;gap:1rem}.info-label{font-weight:500;color:#374151;min-width:150px}.info-value{color:#6b7280}.change-password-form{display:flex;flex-direction:column}.password-strength-meter{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-top:.5rem}.password-strength-bar{height:100%;transition:width .3s,background-color .3s}.password-strength-label{font-size:.75rem;color:#6b7280;margin-top:.25rem}.password-requirements{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;font-size:.875rem}.password-requirements>div{color:#6b7280}.password-requirements>div.met{color:#10b981}.two-factor-status{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-radius:6px;margin-bottom:1rem}.two-factor-status.enabled{background:#d1fae5;color:#065f46}.two-factor-status.disabled{background:#fef3c7;color:#92400e}.status-icon{font-size:1.25rem}.two-factor-methods{margin-top:1rem}.two-factor-methods p{font-weight:500;color:#374151;margin-bottom:.5rem}.two-factor-methods ul{list-style:none;padding:0;margin:0}.two-factor-methods li{padding:.25rem 0;color:#6b7280}.two-factor-methods li:before{content:"• ";color:#3b82f6;font-weight:700;margin-right:.5rem}.notifications-tab{width:100%}.notification-channels{display:flex;flex-direction:column;gap:1rem}.channel-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid #e5e7eb}.channel-label{font-weight:500;color:#374151}.channel-toggles{display:flex;gap:2rem;align-items:center}.notification-item{padding:1rem 0;border-bottom:1px solid #e5e7eb}.notification-item:last-child{border-bottom:none}.notification-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.notification-label{font-weight:500;color:#374151}.notification-toggles{display:flex;gap:1.5rem;align-items:center}.toggle-switch{position:relative;width:44px;height:24px;background:#d1d5db;border-radius:12px;border:none;cursor:pointer;transition:background .2s;padding:0}.toggle-switch.on{background:#3b82f6}.toggle-switch.off{background:#d1d5db}.toggle-switch:disabled{opacity:.5;cursor:not-allowed}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-switch.on .toggle-slider{transform:translate(20px)}.quiet-hours-times{display:flex;gap:1rem;margin-top:1rem}.quiet-hours-times .form-group{margin-bottom:0}.quiet-hours-times label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151}.quiet-hours-times input[type=time]{padding:.5rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}@media (max-width: 768px){.channel-row,.notification-item-header{flex-direction:column;align-items:flex-start;gap:1rem}.channel-toggles,.notification-toggles{width:100%;justify-content:space-between}.quiet-hours-times{flex-direction:column}}.system-settings-tab{width:100%}.settings-management{padding:2rem;max-width:1200px;margin:0 auto}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:2rem;font-weight:600;color:#1f2937;margin:0}.settings-loading{display:flex;justify-content:center;align-items:center;min-height:400px}.spinner{color:#6b7280}.settings-container{display:flex;gap:2rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.settings-tabs{display:flex;flex-direction:column;min-width:200px;background:#f9fafb;border-right:1px solid #e5e7eb;padding:1rem 0}.settings-tab{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;border:none;background:transparent;color:#6b7280;font-size:.95rem;cursor:pointer;transition:all .2s;text-align:left;width:100%}.settings-tab:hover{background:#f3f4f6;color:#374151}.settings-tab.active{background:#fff;color:#3b82f6;border-right:3px solid #3b82f6;font-weight:500}.tab-icon{font-size:1.25rem}.tab-label{font-weight:inherit}.settings-content{flex:1;padding:2rem;min-height:500px}.settings-section{margin-bottom:2rem}.settings-section h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem}.settings-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.settings-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.settings-card-header h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.settings-card-content{color:#6b7280;line-height:1.6}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input,.form-group select{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input[readonly]{background:#f9fafb;color:#6b7280;cursor:not-allowed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#f9fafb}.help-text{font-size:.75rem;color:#6b7280;margin-top:.25rem}.error-message{color:#ef4444;font-size:.875rem;margin-top:.5rem}.success-message{color:#10b981;font-size:.875rem;margin-top:.5rem}@media (max-width: 768px){.settings-container{flex-direction:column}.settings-tabs{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid #e5e7eb}.settings-tab{white-space:nowrap}.settings-tab.active{border-right:none;border-bottom:3px solid #3b82f6}.form-row{grid-template-columns:1fr}}.issue-report-page{max-width:900px;margin:0 auto;padding:2rem}.issue-report-header{text-align:center;margin-bottom:2rem}.issue-report-header h1{color:#1e293b;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.issue-report-header p{color:#64748b;font-size:1rem}.issue-report-form{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 1px 3px #0000001a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-group label .required{color:#ef4444;margin-left:.25rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-group textarea{resize:vertical;min-height:120px}.form-group.full-width{grid-column:1 / -1}.severity-selector{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.severity-option{padding:.75rem;border:2px solid #e2e8f0;border-radius:6px;text-align:center;cursor:pointer;transition:all .2s;background:#fff}.severity-option:hover{border-color:#cbd5e1;background:#f8fafc}.severity-option.selected{border-color:#ef4444;background:#fef2f2}.severity-option.low.selected{border-color:#84cc16;background:#f7fee7}.severity-option.medium.selected{border-color:#f59e0b;background:#fffbeb}.severity-option.high.selected{border-color:#ef4444;background:#fef2f2}.severity-option.critical.selected{border-color:#dc2626;background:#fee2e2}.severity-label{font-weight:600;font-size:.875rem;text-transform:uppercase;margin-bottom:.25rem}.severity-description{font-size:.75rem;color:#64748b}.file-upload-area{border:2px dashed #e2e8f0;border-radius:6px;padding:2rem;text-align:center;cursor:pointer;transition:all .2s}.file-upload-area:hover{border-color:#cbd5e1;background:#f8fafc}.file-upload-area.dragover{border-color:#ef4444;background:#fef2f2}.upload-icon{font-size:2rem;margin-bottom:.5rem;color:#94a3b8}.upload-text{color:#64748b;margin-bottom:.25rem}.upload-hint{font-size:.875rem;color:#94a3b8}.uploaded-file{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f8fafc;border-radius:6px;margin-top:1rem}.uploaded-file img{width:60px;height:60px;object-fit:cover;border-radius:4px}.file-info{flex:1}.file-name{font-weight:500;color:#1e293b;margin-bottom:.25rem}.file-size{font-size:.875rem;color:#64748b}.remove-file{padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem}.remove-file:hover{background:#dc2626}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-secondary:hover:not(:disabled){background:#cbd5e1}.success-message{background:#dcfce7;border:1px solid #86efac;color:#166534;padding:1rem;border-radius:6px;margin-bottom:1.5rem;text-align:center}.issue-info{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:1rem;margin-bottom:1.5rem}.issue-info h3{color:#991b1b;margin-bottom:.5rem;font-size:1rem}.issue-info ul{margin:0;padding-left:1.5rem;color:#b91c1c}.issue-info li{margin-bottom:.25rem}.character-count{text-align:right;font-size:.875rem;color:#64748b;margin-top:.25rem}.character-count.warning{color:#f59e0b}.character-count.error{color:#ef4444}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.severity-selector{grid-template-columns:repeat(2,1fr)}.issue-report-page{padding:1rem}}.issue-list-page{max-width:1200px;margin:0 auto;padding:2rem}.issue-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.issue-list-header h1{color:#1e293b;margin:0}.btn-primary:hover{background:#dc2626}.issue-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.search-box{flex:1;min-width:200px}.search-input{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem}.search-input:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.issues-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.issue-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s}.issue-card:hover{box-shadow:0 4px 6px #0000001a;border-color:#cbd5e1}.issue-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.issue-id{font-size:.75rem;color:#64748b;font-family:monospace}.severity-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600}.issue-title{color:#1e293b;margin:0 0 .75rem;font-size:1.125rem;font-weight:600}.issue-description{color:#64748b;margin:0 0 1rem;line-height:1.5;font-size:.875rem}.issue-meta{display:flex;gap:1rem;align-items:center;margin-bottom:1rem;flex-wrap:wrap}.status-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600}.issue-card-footer{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e2e8f0}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#64748b}.empty-state p{margin-bottom:1.5rem;font-size:1.125rem}@media (max-width: 768px){.issue-list-page{padding:1rem}.issue-list-header{flex-direction:column;align-items:flex-start;gap:1rem}.issue-filters{flex-direction:column;align-items:stretch}.issues-container{grid-template-columns:1fr}}.issue-detail-page{max-width:900px;margin:0 auto;padding:2rem}.issue-detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.issue-actions{display:flex;gap:1rem}.issue-detail-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:2rem}.issue-detail-title-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.issue-id{font-size:.75rem;color:#64748b;font-family:monospace;margin-bottom:.5rem}.issue-detail-card h1{color:#1e293b;margin:.5rem 0 1rem;font-size:1.75rem}.issue-badges{display:flex;gap:1rem;flex-wrap:wrap}.severity-badge,.status-badge{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:600}.issue-meta-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;padding:1rem;background:#f8fafc;border-radius:6px}.meta-item{font-size:.875rem;color:#475569}.meta-item strong{color:#1e293b;margin-right:.5rem}.issue-section{margin-bottom:2rem}.issue-section h2{color:#1e293b;font-size:1.25rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e2e8f0}.issue-text{color:#475569;line-height:1.6;white-space:pre-wrap}.step-item{margin-bottom:.5rem;color:#475569;line-height:1.6}.screenshots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.screenshot-item{border:1px solid #e2e8f0;border-radius:6px;overflow:hidden}.screenshot-item img{width:100%;height:auto;display:block}.system-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-item{font-size:.875rem;color:#475569}.info-item strong{color:#1e293b;margin-right:.5rem}.info-item a{color:#ef4444;text-decoration:none}.info-item a:hover{text-decoration:underline}.resolution-section{background:#f0fdf4;border:1px solid #86efac;border-radius:6px;padding:1.5rem}.resolution-text{color:#065f46;line-height:1.6;margin-bottom:1rem;white-space:pre-wrap}.resolution-date{font-size:.875rem;color:#047857;font-style:italic}@media (max-width: 768px){.issue-detail-page{padding:1rem}.issue-detail-header{flex-direction:column;align-items:flex-start;gap:1rem}.issue-detail-card{padding:1.5rem}.issue-meta-info,.system-info{grid-template-columns:1fr}}.issue-management-page{max-width:1400px;margin:0 auto;padding:2rem}.management-header{margin-bottom:2rem}.management-header h1{color:#1e293b;margin:0}.error-message{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;padding:1rem;border-radius:6px;margin-bottom:1.5rem}.loading-spinner{text-align:center;padding:4rem;color:#64748b}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;text-align:center}.stat-card.critical{border-color:#fca5a5;background:#fef2f2}.stat-value{font-size:2rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.stat-card.critical .stat-value{color:#991b1b}.stat-label{font-size:.875rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.critical-section{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.critical-section h2{color:#991b1b;margin:0 0 1rem;font-size:1.25rem}.issues-list{display:flex;flex-direction:column;gap:1rem}.issue-row{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;display:flex;justify-content:space-between;align-items:center}.issue-row-content{flex:1}.issue-row-title{font-weight:600;color:#1e293b;margin-bottom:.5rem}.issue-row-meta{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.issue-row-actions{display:flex;gap:.5rem}.filters-section{margin-bottom:1.5rem}.filter-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.filter-tab{padding:.5rem 1rem;border:1px solid #e2e8f0;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s;font-size:.875rem}.filter-tab:hover{border-color:#cbd5e1;background:#f8fafc}.filter-tab.active{background:#ef4444;color:#fff;border-color:#ef4444}.issues-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.issues-table table{width:100%;border-collapse:collapse}.issues-table thead{background:#f8fafc}.issues-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.issues-table td{padding:16px;border-top:1px solid #E5E7EB;color:#374151}.issues-table tbody tr:hover{background-color:#f9fafb}.issues-table tbody tr.selected{background-color:#dbeafe}.issue-id-cell{font-family:monospace;font-size:.75rem;color:#64748b}.issue-title-cell{font-weight:500;color:#1e293b}.empty-cell{text-align:center;color:#64748b;padding:3rem!important}.table-actions{display:flex;gap:.5rem}.severity-badge,.status-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;display:inline-block}.severity-low{background:#d1fae5;color:#065f46}.severity-medium{background:#fef3c7;color:#92400e}.severity-high{background:#ffedd5;color:#c2410c}.severity-critical{background:#fee2e2;color:#991b1b}.status-open{background:#dbeafe;color:#1e40af}.status-in-progress{background:#fef3c7;color:#92400e}.status-resolved{background:#d1fae5;color:#065f46}.status-closed{background:#f3f4f6;color:#6b7280}.status-wont-fix{background:#fee2e2;color:#991b1b}.status-duplicate{background:#f3f4f6;color:#6b7280}.issue-date{font-size:.75rem;color:#64748b}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:#ef4444;color:#fff}.btn-primary:hover:not(:disabled){background:#dc2626}.btn-secondary{background:#e2e8f0;color:#475569}.btn-secondary:hover{background:#cbd5e1}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn:disabled{opacity:.5;cursor:not-allowed}.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}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2{color:#1e293b;margin:0 0 1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#334155;font-weight:500}.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem;font-family:inherit}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}@media (max-width: 768px){.issue-management-page{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.issues-table{overflow-x:auto}.issue-row{flex-direction:column;align-items:flex-start;gap:1rem}.issue-row-actions{width:100%;justify-content:flex-end}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.auth-card{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000001a;max-width:450px;width:100%}.auth-card h1{margin:0 0 10px;color:#1a1a1a;font-size:28px;text-align:center}.auth-subtitle{color:#666;text-align:center;margin:0 0 30px;font-size:14px}.auth-form,.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#333;font-weight:500;font-size:14px}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.form-group input.error{border-color:#dc3545;background-color:#fff5f5}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.form-group small{display:block;margin-top:5px;color:#666;font-size:12px}.form-group small.error-text{color:#dc3545;font-weight:500}.alert{padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px}.alert-error{background-color:#fee;color:#c33;border:1px solid #fcc}.alert-success{background-color:#efe;color:#3c3;border:1px solid #cfc}.btn{padding:12px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-block{width:100%}.auth-footer{text-align:center;color:#666;font-size:14px;margin:0}.auth-footer a{color:#667eea;text-decoration:none;font-weight:600}.auth-footer a:hover{text-decoration:underline}.forgot-password-link{color:#667eea;text-decoration:none;font-size:13px;float:right}.forgot-password-link:hover{text-decoration:underline}.loading-spinner{border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 480px){.auth-card{padding:30px 20px}.auth-card h1{font-size:24px}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:var(--z-toast, 800);display:flex;flex-direction:column;gap:12px;max-width:400px;width:100%;pointer-events:none}.toast{background:#fff;border:1px solid var(--color-gray-200);border-left:4px solid;border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05));padding:16px;pointer-events:auto;animation:toastSlideIn .3s ease-out;transition:transform .2s ease,opacity .2s ease}.toast:hover{transform:translate(-4px)}.toast.critical{animation:toastPulse 2s ease-in-out infinite}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastPulse{0%,to{box-shadow:var(--shadow-lg)}50%{box-shadow:0 10px 25px -3px #ef444466,0 4px 6px -2px #ef444433}}.toast-content{display:flex;align-items:flex-start;gap:12px}.toast-icon-wrapper{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.toast-icon{width:24px;height:24px}.toast-body{flex:1;min-width:0}.toast-title{font-size:var(--text-base, 14px);font-weight:var(--font-semibold, 600);color:var(--color-gray-900, #111827);margin-bottom:4px;line-height:1.4}.toast-message{font-size:var(--text-sm, 13px);font-weight:var(--font-normal, 400);color:var(--color-gray-700, #374151);line-height:1.5}.toast-message div{margin-bottom:2px}.toast-message div:last-child{margin-bottom:0}.toast-action{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-gray-200)}.toast-close{flex-shrink:0;background:transparent;border:none;padding:4px;cursor:pointer;color:var(--color-gray-400, #9CA3AF);transition:color .15s ease;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px)}.toast-close:hover{color:var(--color-gray-700, #374151);background:var(--color-gray-100, #F3F4F6)}.toast-close:focus{outline:2px solid var(--color-primary, #3B82F6);outline-offset:2px}.toast-close-icon{width:20px;height:20px}.toast.success{border-left-color:var(--color-success, #10B981)}.toast.success .toast-icon-wrapper{color:var(--color-success, #10B981)}.toast.error,.toast.critical{border-left-color:var(--color-error, #EF4444)}.toast.error .toast-icon-wrapper,.toast.critical .toast-icon-wrapper{color:var(--color-error, #EF4444)}.toast.warning{border-left-color:var(--color-warning, #F59E0B)}.toast.warning .toast-icon-wrapper{color:var(--color-warning, #F59E0B)}.toast.info{border-left-color:var(--color-primary, #3B82F6)}.toast.info .toast-icon-wrapper{color:var(--color-primary, #3B82F6)}@media (max-width: 768px){.toast-container{bottom:16px;right:16px;left:16px;max-width:none}.toast{padding:12px}}@media (prefers-reduced-motion: reduce){.toast,.toast.critical{animation:none}.toast:hover{transform:none}}:root{--color-primary: #3B82F6;--color-primary-dark: #2563EB;--color-primary-light: #DBEAFE;--color-primary-50: #EFF6FF;--color-primary-100: #DBEAFE;--color-primary-500: #3B82F6;--color-primary-600: #2563EB;--color-primary-700: #1D4ED8;--color-secondary: #6B7280;--color-secondary-dark: #374151;--color-secondary-light: #F3F4F6;--color-gray-50: #F9FAFB;--color-gray-100: #F3F4F6;--color-gray-200: #E5E7EB;--color-gray-300: #D1D5DB;--color-gray-400: #9CA3AF;--color-gray-500: #6B7280;--color-gray-600: #4B5563;--color-gray-700: #374151;--color-gray-800: #1F2937;--color-gray-900: #111827;--color-success: #10B981;--color-success-light: #D1FAE5;--color-success-dark: #065F46;--color-warning: #F59E0B;--color-warning-light: #FEF3C7;--color-warning-dark: #92400E;--color-error: #EF4444;--color-error-light: #FEE2E2;--color-error-dark: #991B1B;--color-info: #8B5CF6;--color-info-light: #EDE9FE;--color-internal-india: #8B5CF6;--color-internal-india-light: #EDE9FE;--color-internal-usa: #3B82F6;--color-internal-usa-light: #DBEAFE;--color-it-usa: #10B981;--color-it-usa-light: #D1FAE5;--color-nonit-usa: #F97316;--color-nonit-usa-light: #FFEDD5;--color-healthcare-usa: #EC4899;--color-healthcare-usa-light: #FCE7F3;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-lg: 16px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--sidebar-width-collapsed: 64px;--sidebar-width-expanded: 256px;--header-height: 64px;--content-max-width: 1440px;--radius-none: 0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--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);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-focus: 0 0 0 3px rgba(59, 130, 246, .4);--shadow-focus-error: 0 0 0 3px rgba(239, 68, 68, .4);--transition-fast: .15s ease-in-out;--transition-normal: .2s ease-in-out;--transition-slow: .3s ease-in-out;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700;--z-toast: 800}*,*:before,*:after{box-sizing:border-box}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;font-family:var(--font-primary);font-size:var(--text-base);font-weight:var(--font-normal);line-height:var(--leading-normal);color:var(--color-gray-700);background-color:var(--color-gray-50)}.text-display{font-size:var(--text-4xl);font-weight:var(--font-bold);line-height:44px;letter-spacing:-.02em}.text-h1{font-size:var(--text-3xl);font-weight:var(--font-semibold);line-height:36px;letter-spacing:-.01em}.text-h2{font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:32px;letter-spacing:-.01em}.text-h3{font-size:var(--text-xl);font-weight:var(--font-semibold);line-height:28px}.text-h4{font-size:var(--text-lg);font-weight:var(--font-semibold);line-height:24px}.text-body-lg{font-size:var(--text-lg);font-weight:var(--font-normal);line-height:24px}.text-body{font-size:var(--text-base);font-weight:var(--font-normal);line-height:20px}.text-body-sm{font-size:13px;font-weight:var(--font-normal);line-height:18px}.text-caption{font-size:var(--text-sm);font-weight:var(--font-normal);line-height:16px;letter-spacing:.01em}.text-overline{font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:16px;letter-spacing:.05em;text-transform:uppercase}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-muted{color:var(--color-gray-500)}.bg-primary{background-color:var(--color-primary)}.bg-primary-light{background-color:var(--color-primary-light)}.bg-success{background-color:var(--color-success)}.bg-success-light{background-color:var(--color-success-light)}.bg-warning{background-color:var(--color-warning)}.bg-warning-light{background-color:var(--color-warning-light)}.bg-error{background-color:var(--color-error)}.bg-error-light{background-color:var(--color-error-light)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-semibold)}p{margin:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit}ul,ol{margin:0;padding:0;list-style:none}img{max-width:100%;height:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:var(--font-medium);line-height:20px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-sm{padding:var(--space-1) var(--space-3);font-size:13px;height:32px}.btn-md{padding:var(--space-2) var(--space-4);height:36px}.btn-lg{padding:var(--space-3) var(--space-5);height:44px}.btn-primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn-primary:focus,.btn-primary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-secondary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-danger:focus-visible{outline:none;box-shadow:0 0 0 3px #ef444466}.btn-ghost:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-secondary{background-color:#fff;color:var(--color-gray-700);border-color:var(--color-gray-300)}.btn-secondary:hover:not(:disabled){background-color:var(--color-gray-50)}.btn-danger{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-ghost{background-color:transparent;color:var(--color-primary);border-color:transparent}.btn-ghost:hover:not(:disabled){background-color:var(--color-primary-light)}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-1);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--color-gray-700)}.form-label.required:after{content:" *";color:var(--color-error)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 12px;font-size:var(--text-base);color:var(--color-gray-700);background-color:#fff;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:var(--color-gray-100);color:var(--color-gray-500);cursor:not-allowed}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-error)}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{box-shadow:var(--shadow-focus-error)}.form-error{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-error)}.form-hint{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-gray-500)}.card{background-color:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-gray-200)}.card-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--color-gray-800);margin:0}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-gray-200);background-color:var(--color-gray-50)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-full)}.badge-success{background-color:var(--color-success-light);color:var(--color-success-dark)}.badge-warning{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.badge-error{background-color:var(--color-error-light);color:var(--color-error-dark)}.badge-info{background-color:var(--color-primary-light);color:#1e40af}.badge-neutral{background-color:var(--color-gray-100);color:var(--color-gray-700)}.badge-internal-india{background-color:var(--color-internal-india-light);color:#5b21b6}.badge-internal-usa{background-color:var(--color-internal-usa-light);color:#1e40af}.badge-it-usa{background-color:var(--color-it-usa-light);color:#065f46}.badge-nonit-usa{background-color:var(--color-nonit-usa-light);color:#9a3412}.badge-healthcare-usa{background-color:var(--color-healthcare-usa-light);color:#9d174d}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot-success{background-color:var(--color-success)}.status-dot-warning{background-color:var(--color-warning)}.status-dot-error{background-color:var(--color-error)}.status-dot-neutral{background-color:var(--color-gray-500)}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-gray-700);background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200);text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:var(--space-4);font-size:var(--text-base);color:var(--color-gray-700);border-bottom:1px solid var(--color-gray-200)}.data-table tbody tr:hover{background-color:var(--color-gray-50)}.data-table tbody tr.selected{background-color:var(--color-primary-light)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center}.empty-state-icon{width:64px;height:64px;margin-bottom:var(--space-4);color:var(--color-gray-400)}.empty-state-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--color-gray-700);margin-bottom:var(--space-2)}.empty-state-description{font-size:var(--text-base);color:var(--color-gray-500);margin-bottom:var(--space-6);max-width:400px}.loading-spinner{display:inline-block;width:24px;height:24px;border:2px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.w-full{width:100%}.h-full{height:100%}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.m-0{margin:0}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
