body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:1rem}.login-card{animation:slideUp .5s ease-out;border-radius:12px;box-shadow:0 10px 25px #0003;padding:2rem;width:100%}.login-header{margin-bottom:2rem}.login-header h1{color:#2c3e50;font-size:2rem;margin-bottom:.5rem}.login-header p{color:#6c757d;font-size:1rem}.error-banner{align-items:center;background:#f8d7da;border-radius:8px;color:#721c24;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.error-icon{font-size:1.2rem}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group input{border:2px solid #e9ecef;border-radius:6px;font-size:1rem;padding:.75rem 1rem;transition:border-color .3s ease}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.login-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:transform .3s ease,box-shadow .3s ease}.login-button:hover{box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.login-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.login-footer{color:#6c757d;font-size:.9rem;margin-top:2rem}.backend-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:1rem;padding:1rem}.backend-info strong{color:#495057}@media (max-width:768px){.login-container{padding:.5rem}.login-card{padding:1.5rem}.login-header h1{font-size:1.5rem}.form-group input{padding:.6rem .8rem}.login-button{padding:.6rem 1.2rem}}:root{--header-height:60px;--sidebar-width-open:250px;--sidebar-width-closed:60px;--primary-color:#2c3e50;--secondary-color:#34495e;--accent-color:#3498db;--hover-color:#2980b9;--active-color:#1abc9c;--text-light:#ecf0f1;--border-color:#7f8c8d;--shadow:0 2px 5px #0000001a;--transition-speed:0.3s}.layout{display:flex;flex-direction:column;height:100vh;overflow:hidden}.header{background:linear-gradient(135deg,#2c3e50,#34495e);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));box-shadow:0 2px 5px #0000001a;box-shadow:var(--shadow);color:#ecf0f1;color:var(--text-light);height:60px;height:var(--header-height);justify-content:space-between;left:0;padding:0 1rem;position:fixed;right:0;top:0;z-index:1000}.header,.header-left{align-items:center;display:flex}.header-left{gap:1rem}.sidebar-toggle{-webkit-tap-highlight-color:transparent;align-items:center;background:#0000;border:none;border-radius:4px;color:#ecf0f1;color:var(--text-light);cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;min-height:44px;min-width:44px;padding:.5rem;transition:background-color .3s;transition:background-color var(--transition-speed)}.sidebar-toggle:active,.sidebar-toggle:hover{background-color:#ffffff1a}.sidebar-toggle:focus{outline:2px solid #3498db;outline:2px solid var(--accent-color);outline-offset:2px}.app-title{font-size:1.2rem;font-weight:600;margin:0;white-space:nowrap}.header-right{align-items:center;display:flex;gap:1rem}.user-info{align-items:flex-end;flex-direction:column;font-size:.9rem}.user-role{font-size:.75rem;opacity:.8}.logout-btn{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;min-height:36px;padding:.5rem 1rem;transition:background-color .3s;transition:background-color var(--transition-speed)}.logout-btn:hover{background-color:#c0392b}.main-container{display:flex;height:calc(100vh - 60px);height:calc(100vh - var(--header-height));margin-top:60px;margin-top:var(--header-height);overflow:hidden}.sidebar{-webkit-overflow-scrolling:touch;background-color:#2c3e50;background-color:var(--primary-color);box-shadow:2px 0 5px #0000001a;color:#ecf0f1;color:var(--text-light);overflow-x:hidden;overflow-y:auto;position:relative;transition:all .3s ease;transition:all var(--transition-speed) ease;z-index:900}.sidebar.open{min-width:250px;min-width:var(--sidebar-width-open);width:250px;width:var(--sidebar-width-open)}.sidebar.closed{min-width:60px;min-width:var(--sidebar-width-closed);width:60px;width:var(--sidebar-width-closed)}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#34495e;background:var(--secondary-color)}.sidebar::-webkit-scrollbar-thumb{background:#7f8c8d;background:var(--border-color);border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#95a5a6}.sidebar-nav{padding:1rem 0}.menu-empty,.menu-loading{align-items:center;color:#ecf0f1;color:var(--text-light);display:flex;flex-direction:column;gap:1rem;justify-content:center;padding:2rem 1rem;text-align:center}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #ffffff4d;border-top:3px solid var(--text-light);height:30px;width:30px}.menu-group{margin-bottom:.5rem}.menu-parent{-webkit-tap-highlight-color:transparent;align-items:center;color:#ecf0f1;color:var(--text-light);cursor:pointer;display:flex;font-weight:500;justify-content:space-between;min-height:44px;padding:.75rem 1rem;transition:background-color .3s;transition:background-color var(--transition-speed)}.menu-parent:active,.menu-parent:hover{background-color:#ffffff1a}.menu-parent.active{background-color:#1abc9c;background-color:var(--active-color)}.menu-parent-content{align-items:center;display:flex;flex:1 1;gap:.75rem}.menu-icon{font-size:1.2rem;min-width:24px;text-align:center}.menu-arrow{color:#ecf0f1;color:var(--text-light);font-size:.8rem;transition:transform .3s;transition:transform var(--transition-speed)}.menu-arrow.expanded{transform:rotate(-180deg)}.menu-submenu{animation:slideDown .3s ease-out;animation:slideDown var(--transition-speed) ease-out;background-color:#0003;padding:.25rem 0}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.menu-item{-webkit-tap-highlight-color:transparent;align-items:center;color:#ecf0f1;color:var(--text-light);cursor:pointer;display:flex;gap:.75rem;min-height:44px;padding:.75rem 1rem;text-decoration:none;transition:all .3s;transition:all var(--transition-speed)}.menu-submenu .menu-item{font-size:.9rem;padding-left:3rem}.menu-item:active,.menu-item:hover{background-color:#ffffff1a;padding-left:1.5rem}.menu-submenu .menu-item:active,.menu-submenu .menu-item:hover{padding-left:3.5rem}.menu-item.active{background-color:#1abc9c;background-color:var(--active-color);border-left:4px solid #3498db;border-left:4px solid var(--accent-color);font-weight:600}.sidebar.closed .menu-arrow,.sidebar.closed .menu-item span:not(.menu-icon),.sidebar.closed .menu-parent-content span:not(.menu-icon),.sidebar.closed .menu-submenu{display:none}.content{-webkit-overflow-scrolling:touch;background-color:#ecf0f1;flex:1 1;overflow-y:auto;padding:1.5rem}@media (max-width:768px){.app-title{font-size:1rem}.user-info{font-size:.8rem}.user-role{display:none}.logout-btn{font-size:.9rem;padding:.4rem .8rem}.main-container{position:relative}.sidebar{box-shadow:2px 0 10px #0000004d;height:calc(100vh - 60px);height:calc(100vh - var(--header-height));left:0;position:fixed;top:60px;top:var(--header-height);z-index:999}.sidebar.closed{transform:translateX(-100%)}.sidebar.closed,.sidebar.open{width:250px;width:var(--sidebar-width-open)}.sidebar.open{transform:translateX(0)}.content{padding:1rem;width:100%}.sidebar.open:before{background:#00000080;bottom:0;content:"";left:0;position:fixed;right:0;top:0;z-index:-1}}@media (max-width:480px){.app-title{font-size:.9rem}.header-right{gap:.5rem}.user-info{display:none}.logout-btn{font-size:.85rem;padding:.3rem .6rem}.sidebar.open{max-width:280px;width:80vw}.content{padding:.75rem}.menu-item,.menu-parent{min-height:48px;padding:.85rem 1rem}.sidebar-toggle{min-height:48px;min-width:48px}}@media (min-width:769px) and (max-width:1024px){.sidebar.open{min-width:220px;width:220px}.content{padding:1.25rem}}@media (min-width:1400px){.sidebar.open{min-width:280px;width:280px}.app-title{font-size:1.4rem}}@media (prefers-contrast:high){.menu-item.active{border-left-width:6px}.sidebar-toggle:focus{outline-width:3px}}@media print{.header,.sidebar{display:none}.content{margin:0;padding:0}}.dashboard-container{background-color:#f5f7fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.dashboard-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;justify-content:space-between;margin-bottom:25px;padding:20px 25px}.dashboard-header h1{color:#1a202c;font-size:28px;font-weight:700;margin:0 0 5px}.period-selector{display:flex;gap:10px}.period-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;font-size:14px;font-weight:500;padding:10px 15px;transition:border-color .3s}.period-select:focus{border-color:#667eea;outline:none}.alerts-section{display:flex;flex-direction:column;gap:12px;margin-bottom:25px}.alert-card{align-items:center;border-radius:8px;box-shadow:0 2px 6px #00000014;display:flex;gap:15px;padding:15px 20px}.alert-card.alert-success{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left:4px solid #27ae60}.alert-card.alert-warning{background:linear-gradient(135deg,#fdebd0,#fad7a0);border-left:4px solid #f39c12}.alert-card.alert-danger{background:linear-gradient(135deg,#fadbd8,#f5b7b1);border-left:4px solid #e74c3c}.alert-icon{font-size:24px}.alert-message{color:#2d3748;flex:1 1;font-size:14px;font-weight:500}.alert-action{background:#fff;border:none;border-radius:6px;color:#667eea;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.alert-action:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.stats-grid{grid-template-columns:repeat(4,1fr)}.stat-card{align-items:center;box-shadow:0 2px 8px #00000014;display:flex;gap:15px;transition:transform .3s,box-shadow .3s}.stat-card:hover{box-shadow:0 6px 20px #0000001f;transform:translateY(-3px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:28px;height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.stat-label,.stat-value{margin-bottom:5px}.stat-trend{font-size:13px;font-weight:600}.stat-trend.positive{color:#27ae60}.stat-trend.negative{color:#e74c3c}.secondary-stats{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(4,1fr);margin-bottom:25px}.secondary-stat{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 6px #0000000f;display:flex;gap:12px;padding:15px}.secondary-icon{font-size:24px}.secondary-label{color:#718096;font-size:11px;letter-spacing:.3px;margin-bottom:3px;text-transform:uppercase}.secondary-value{color:#2d3748;font-size:18px;font-weight:700}.dashboard-row{display:flex;gap:20px;margin-bottom:25px}.dashboard-col-8{flex:0 0 66.666%}.dashboard-col-4{flex:0 0 33.333%}.card{border-radius:12px;box-shadow:0 2px 8px #00000014}.card-header{padding:20px 25px}.card-header h2{color:#2d3748;font-size:18px;font-weight:600;margin:0}.btn-view-all{background:none;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600;transition:color .2s}.btn-view-all:hover{color:#5568d3;text-decoration:underline}.card-body{padding:20px 25px}.empty-state-small{padding:40px 20px;text-align:center}.empty-state-small .empty-icon{font-size:48px;margin-bottom:15px;opacity:.5}.empty-state-small p{color:#718096;margin:0}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:20px;padding:15px;transition:all .2s}.activity-item:hover{background:#e9ecef;transform:translateX(5px)}.activity-date{background:#fff;border-radius:8px;min-width:70px;padding:10px;text-align:center}.activity-day{color:#2d3748;font-size:16px;font-weight:700;margin-bottom:2px}.activity-weekday{color:#718096;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.activity-details{flex:1 1}.activity-row{display:flex;font-size:13px;justify-content:space-between;margin-bottom:5px}.activity-label{color:#718096;font-weight:500}.activity-value{color:#2d3748;font-weight:600}.activity-status{min-width:80px;text-align:center}.status-circle{align-items:center;border-radius:50%;display:flex;height:40px;justify-content:center;margin:0 auto 5px;width:40px}.status-text{font-size:16px;font-weight:700;margin-bottom:2px}.status-label{color:#718096;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.progress-section{margin-bottom:25px}.progress-header{display:flex;font-size:14px;justify-content:space-between;margin-bottom:10px}.progress-percent{color:#2d3748;font-weight:700}.progress-bar{background:#e2e8f0;border-radius:15px;box-shadow:inset 0 2px 4px #0000001a;height:30px;overflow:hidden;width:100%}.progress-fill{border-radius:15px;height:100%;transition:width .6s ease-in-out}.summary-stats{display:flex;flex-direction:column;gap:12px}.summary-item{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;gap:12px;padding:12px}.summary-icon{border-radius:8px;font-size:16px;height:35px;width:35px}.summary-label{margin-bottom:2px}.quick-actions{margin-top:30px}.quick-actions h2{color:#2d3748;font-size:20px;font-weight:600;margin-bottom:20px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.action-card{background:#fff;border:none;border-radius:12px;box-shadow:0 2px 8px #00000014;cursor:pointer;padding:30px 20px;text-align:center;transition:all .3s}.action-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.action-icon{font-size:48px;margin-bottom:15px}.action-card h3{color:#2d3748;font-size:18px;font-weight:600;margin-bottom:8px}.action-card p{color:#718096;font-size:14px;margin:0}.spinner{border-top-color:#667eea}@media (max-width:1200px){.actions-grid,.secondary-stats,.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-row{flex-direction:column}.dashboard-col-4,.dashboard-col-8{flex:0 0 100%}}@media (max-width:768px){.dashboard-container{padding:15px}.dashboard-header{flex-direction:column;gap:15px;padding:15px}.period-selector{width:100%}.period-select{flex:1 1}.actions-grid,.secondary-stats,.stats-grid{grid-template-columns:1fr}.stat-card{padding:15px}.stat-icon{font-size:24px;height:50px;width:50px}.stat-value{font-size:20px}.activity-item{flex-direction:column;text-align:center}.activity-details{width:100%}.activity-row{gap:10px;justify-content:center}}@media (max-width:480px){.dashboard-header h1{font-size:22px}.stat-value{font-size:18px}.action-icon{font-size:36px}.action-card h3{font-size:16px}.card-body,.card-header{padding:15px}}.menu-management{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.menu-management-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;justify-content:space-between;margin-bottom:2rem;padding:2rem}.menu-management-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin:0}.header-actions{align-items:center;gap:1rem}.view-toggle{background:#f1f5f9;border-radius:10px;display:flex;gap:.25rem;padding:.25rem}.toggle-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.toggle-btn:hover{color:#667eea}.toggle-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea66;color:#fff}.btn-primary{box-shadow:0 4px 12px #667eea4d;padding:.875rem 1.75rem;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #667eea66}.loading{color:#64748b;font-size:1.2rem;padding:4rem;text-align:center}.menu-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.menu-table{border-collapse:collapse;width:100%}.menu-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.menu-table th{font-size:.85rem;font-weight:600;letter-spacing:1px;padding:1.25rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.menu-table td{border-bottom:1px solid #e2e8f0;color:#334155;font-size:.95rem;padding:1.25rem 1rem}.menu-table tbody tr{transition:all .3s ease}.menu-table tbody tr:hover{background:linear-gradient(90deg,#f8fafc,#f1f5f9);transform:scale(1.01)}.menu-table tbody tr:last-child td{border-bottom:none}.role-badges{display:flex;flex-wrap:wrap;gap:.5rem}.role-badge{border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;padding:.375rem .875rem;transition:all .3s ease}.role-badge:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.status-badge{font-size:.8rem;padding:.375rem .875rem}.status-badge.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.status-badge.inactive{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.action-buttons{gap:.5rem}.btn-delete,.btn-delete-menu,.btn-edit,.btn-edit-menu,.btn-edit-role,.btn-edit-roles,.btn-permissions,.btn-view-users{border:none;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease;white-space:nowrap}.btn-edit,.btn-edit-menu,.btn-edit-role,.btn-edit-roles{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-edit-menu:hover,.btn-edit-role:hover,.btn-edit-roles:hover,.btn-edit:hover{box-shadow:0 4px 12px #3b82f666;transform:translateY(-2px)}.btn-delete,.btn-delete-menu{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-delete-menu:hover,.btn-delete:hover{box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.btn-permissions,.btn-view-users{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.btn-permissions:hover,.btn-view-users:hover{box-shadow:0 4px 12px #8b5cf666;transform:translateY(-2px)}.menu-tree-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem}.menu-tree-header{margin-bottom:2rem}.menu-tree-header h3{color:#1e293b;font-size:1.5rem;margin-bottom:1rem}.legend{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:1rem;padding:1rem}.legend>span{color:#475569;font-weight:600}.legend-item{gap:.5rem}.legend-color{border-radius:6px;box-shadow:0 2px 6px #00000026;height:24px;width:24px}.legend-item span{color:#64748b;font-size:.9rem;font-weight:500}.menu-tree{margin-top:1.5rem}.menu-tree-item{margin-bottom:.5rem}.menu-item-content{align-items:center;background:linear-gradient(135deg,#fff,#f8fafc);border:2px solid #e2e8f0;border-radius:12px;display:flex;justify-content:space-between;padding:1.25rem;transition:all .3s ease}.menu-item-content:hover{border-color:#667eea;box-shadow:0 4px 16px #667eea26;transform:translateX(8px)}.menu-info{flex:1 1}.menu-name{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:700;gap:.75rem;margin-bottom:.5rem}.menu-icon{font-size:1.5rem}.menu-path{background:#f1f5f9;border-radius:6px;color:#64748b;display:inline-block;font-family:Courier New,monospace;font-size:.9rem;padding:.25rem .75rem}.menu-roles{flex:1 1}.menu-roles,.role-tags{display:flex;justify-content:center}.role-tags{flex-wrap:wrap;gap:.5rem}.role-tag{border-radius:20px;box-shadow:0 2px 8px #00000026;color:#fff;font-size:.8rem;font-weight:600;padding:.375rem .875rem}.no-roles{color:#94a3b8;font-size:.9rem;font-style:italic}.menu-actions{display:flex;gap:.5rem}.menu-children{margin-left:2rem;margin-top:.5rem}.user-access-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem}.user-access-header{margin-bottom:2rem;text-align:center}.user-access-header h3{color:#1e293b;font-size:1.75rem;margin-bottom:.5rem}.user-access-header p{color:#64748b;font-size:1rem}.access-table-container{border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:2rem;overflow-x:auto}.access-table{background:#fff;border-collapse:collapse;width:100%}.access-table thead{background:linear-gradient(135deg,#334155,#1e293b);color:#fff}.access-table th{font-size:.85rem;font-weight:600;letter-spacing:1px;padding:1.25rem 1rem;text-align:left;text-transform:uppercase}.access-table td{border-bottom:1px solid #e2e8f0;padding:1.25rem 1rem}.access-table tbody tr:hover{background:#f8fafc}.menu-name-cell .menu-item-info{align-items:center;display:flex;gap:.75rem}.menu-path-cell code{background:#f1f5f9;border-radius:6px;color:#475569;font-family:Courier New,monospace;font-size:.85rem;padding:.375rem .75rem}.roles-cell .role-badges{display:flex;flex-wrap:wrap;gap:.5rem}.no-roles,.no-users{color:#94a3b8;font-style:italic}.users-cell .user-list{display:flex;flex-direction:column;gap:.5rem}.user-chip{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:20px;box-shadow:0 2px 6px #00000014;color:#4338ca;display:inline-block;padding:.375rem .875rem}.more-users,.user-chip{font-size:.85rem;font-weight:600}.more-users{color:#6366f1;margin-top:.25rem}.count-cell .user-count{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px #667eea4d;color:#fff;display:inline-block;font-size:1.1rem;font-weight:700;min-width:50px;padding:.5rem 1rem;text-align:center}.actions-cell{display:flex;flex-wrap:wrap;gap:.5rem}.access-summary{margin-top:3rem}.access-summary h4{color:#1e293b;font-size:1.5rem;margin-bottom:1.5rem;text-align:center}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.summary-card{border-radius:16px;box-shadow:0 4px 16px #0000001a;overflow:hidden;transition:all .3s ease}.summary-card:hover{box-shadow:0 12px 32px #00000026;transform:translateY(-8px)}.card-header{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.card-header h5{font-size:1.1rem;font-weight:700;margin:0}.card-header .user-count{background:#fff3;border-radius:20px;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.card-body{padding:1.5rem}.stat{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.75rem 0}.stat:last-child{border-bottom:none}.stat-label{color:#64748b;font-weight:500}.stat-value{color:#1e293b;font-size:1.25rem}.roles-report-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-top:2rem;padding:2rem}.roles-report-header{margin-bottom:2rem;text-align:center}.roles-report-header h3{color:#1e293b;font-size:1.75rem;margin-bottom:.5rem}.roles-report-header p{color:#64748b;font-size:1rem}.roles-table-container{border-radius:12px;box-shadow:0 2px 12px #00000014;overflow-x:auto}.roles-table{background:#fff;border-collapse:collapse;width:100%}.roles-table thead{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff}.roles-table th{font-size:.85rem;font-weight:600;letter-spacing:1px;padding:1.25rem 1rem;text-align:left;text-transform:uppercase}.roles-table td{border-bottom:1px solid #e2e8f0;padding:1.25rem 1rem}.roles-table tbody tr:hover{background:linear-gradient(90deg,#f8fafc,#f1f5f9)}.role-id{color:#667eea;font-size:1.1rem;font-weight:700}.role-name-container{align-items:center;display:flex;gap:.75rem}.role-color-indicator{border-radius:8px;box-shadow:0 2px 8px #00000026;height:32px;width:32px}.role-color{align-items:center;display:flex;gap:.75rem}.color-box{border-radius:8px;box-shadow:0 2px 8px #00000026;height:40px;width:40px}.color-code{background:#f1f5f9;border-radius:6px;font-family:Courier New,monospace;font-size:.85rem;padding:.375rem .75rem}.role-description{color:#64748b;font-size:.95rem}.assigned-menus{align-items:center;display:flex;gap:.5rem}.menu-count{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 2px 8px #667eea4d;color:#fff;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.menu-label{color:#64748b;font-size:.9rem}.role-actions{display:flex;flex-wrap:wrap;gap:.5rem}.modal-overlay{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;z-index:2000}.modal-content{animation:slideUp .4s cubic-bezier(.16,1,.3,1);border-radius:20px;max-width:900px}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px 20px 0 0;color:#fff;padding:2rem}.modal-header h3{font-size:1.75rem;font-weight:700}.close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;transition:all .3s ease;width:40px}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-content form{padding:2rem}.form-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.form-group label{color:#1e293b;margin-bottom:.5rem}.form-group input[type=number],.form-group input[type=text],.form-group select{border:2px solid #e2e8f0;border-radius:10px;font-size:1rem;padding:.875rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.form-group input:disabled,.role-checkboxes{background:#f8fafc}.role-checkboxes{grid-gap:1rem;border:2px solid #e2e8f0;border-radius:12px;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:1rem}.role-checkbox{align-items:center;cursor:pointer;display:flex;gap:.75rem}.role-checkbox input[type=checkbox]{border-radius:4px;cursor:pointer;height:20px;width:20px}.role-label{border-radius:20px;color:#fff;flex:1 1;font-size:.875rem;font-weight:600;padding:.5rem 1rem;text-align:center;transition:all .3s ease}.role-checkbox:hover .role-label{box-shadow:0 4px 12px #0003;transform:scale(1.05)}.modal-actions{border-top:2px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding-top:2rem}.btn-secondary{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#64748b;font-size:1rem;font-weight:600;padding:.875rem 1.75rem;transition:all .3s ease}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}@media (max-width:1200px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:992px){.form-grid{grid-template-columns:1fr}.role-checkboxes{grid-template-columns:1fr 1fr}.menu-management-header{flex-direction:column;gap:1.5rem}.header-actions{flex-direction:column;width:100%}.view-toggle{width:100%}.toggle-btn{flex:1 1}}@media (max-width:768px){.menu-management{padding:1rem}.summary-cards{grid-template-columns:1fr}.menu-item-content{align-items:flex-start;flex-direction:column;gap:1rem}.menu-actions,.menu-roles{width:100%}.action-buttons,.actions-cell,.menu-actions,.role-actions{flex-direction:column}.btn-delete,.btn-delete-menu,.btn-edit,.btn-edit-menu,.btn-edit-role,.btn-edit-roles,.btn-permissions,.btn-view-users{width:100%}.role-checkboxes{grid-template-columns:1fr}}@media (max-width:480px){.menu-management-header h2{font-size:1.5rem}.toggle-btn{font-size:.875rem;padding:.625rem 1rem}.access-table td,.access-table th,.menu-table td,.menu-table th,.roles-table td,.roles-table th{font-size:.85rem;padding:.875rem .5rem}.modal-content{width:95%}.modal-header{padding:1.5rem}.modal-header h3{font-size:1.25rem}.modal-content form{padding:1.5rem}}.access-table-container::-webkit-scrollbar,.menu-table-container::-webkit-scrollbar,.modal-content::-webkit-scrollbar,.roles-table-container::-webkit-scrollbar{height:8px;width:8px}.access-table-container::-webkit-scrollbar-track,.menu-table-container::-webkit-scrollbar-track,.modal-content::-webkit-scrollbar-track,.roles-table-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:10px}.access-table-container::-webkit-scrollbar-thumb,.menu-table-container::-webkit-scrollbar-thumb,.modal-content::-webkit-scrollbar-thumb,.roles-table-container::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px}.access-table-container::-webkit-scrollbar-thumb:hover,.menu-table-container::-webkit-scrollbar-thumb:hover,.modal-content::-webkit-scrollbar-thumb:hover,.roles-table-container::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.page-container{margin:0 auto;max-width:1200px;padding:20px}.page-header{margin-bottom:25px}.page-header h2{color:#2c3e50;font-size:1.8em;margin:0 0 5px}.subtitle{color:#666;font-size:.95em;margin:0}.form-card,.table-card{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;margin-bottom:25px;padding:20px}.form-card h3,.table-card h3{border-bottom:1px solid #eee;color:#333;margin-bottom:20px;margin-top:0;padding-bottom:10px}fieldset{border:1px solid #ddd;border-radius:5px;margin-bottom:20px;padding:15px}legend{color:#333;font-weight:700}.form-row{grid-gap:15px;gap:15px;grid-template-columns:1fr;margin-bottom:15px}.form-group{min-width:0}.form-group label{color:#555;font-size:.95rem;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border-radius:4px;padding:10px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4a6fdc;box-shadow:0 0 0 2px #4a6fdc33}.readonly-field{cursor:not-allowed!important}.required{margin-left:2px}.error{color:#e74c3c;font-size:.85em;margin-top:5px}textarea{font-family:inherit;min-height:60px;resize:vertical}.checkbox-row{display:flex;flex-wrap:wrap;gap:30px}.checkbox-group{display:flex}.checkbox-group label{margin-bottom:0}.checkbox-group input[type=checkbox]{margin:0}.form-actions{margin-top:20px}.btn{font-size:1rem;gap:5px;min-height:44px;padding:10px 15px;white-space:nowrap}.btn-primary{background-color:#4a6fdc}.btn-primary:hover:not(:disabled){background-color:#3a5fc9;box-shadow:0 2px 8px #4a6fdc4d}.btn-secondary{background-color:#f8f9fa;border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background-color:#e9ecef}.btn-edit{background-color:#17a2b8;color:#fff}.btn-edit:hover:not(:disabled){background-color:#138496}.btn-delete{background-color:#dc3545;color:#fff}.btn-delete:hover:not(:disabled){background-color:#c82333}.btn-sm{font-size:.875rem;min-height:36px;padding:5px 10px}.loading-message{color:#666;font-style:italic;padding:20px;text-align:center}.alert{align-items:flex-start;padding:15px}.alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert-icon{flex-shrink:0;font-size:1.2rem}.table-wrapper{-webkit-overflow-scrolling:touch;margin:0 -20px;padding:0 20px}.data-table{min-width:800px}.data-table td,.data-table th{border-bottom:1px solid #ddd;padding:12px 15px;text-align:left}.data-table th{color:#555;position:-webkit-sticky;position:sticky;top:0;white-space:nowrap;z-index:10}.data-table tbody tr:hover,.data-table th{background-color:#f8f9fa}.totals-row{background-color:#f8f9fa!important;font-weight:600}.totals-row td{border-bottom:2px solid #4a6fdc!important;border-top:2px solid #4a6fdc!important}.type-badges{display:flex;flex-wrap:wrap;gap:5px}.badge{font-size:.75em;padding:3px 8px;text-transform:uppercase}.badge-primary{background-color:#cce5ff;color:#004085}.action-buttons{flex-wrap:wrap;gap:5px}.no-data{color:#999;padding:30px}@media (min-width:768px) and (max-width:1023px){.page-container{padding:15px}.form-row{gap:15px;grid-template-columns:repeat(2,1fr)}.page-header h2{font-size:1.5em}.data-table{min-width:700px}}@media (min-width:1024px){.form-row{gap:20px;grid-template-columns:repeat(3,1fr)}}@media (max-width:767px){.page-container{padding:10px}.page-header{margin-bottom:15px}.page-header h2{font-size:1.4em}.subtitle{font-size:.85em}.form-card,.table-card{border-radius:6px;margin-bottom:15px;padding:15px}.form-card h3,.table-card h3{font-size:1.1em;margin-bottom:15px}fieldset{margin-bottom:15px;padding:12px}legend{font-size:.9em;padding:0 8px}.form-row{gap:12px;grid-template-columns:1fr;margin-bottom:12px}.form-group label{font-size:.9rem}.form-group input,.form-group select,.form-group textarea{font-size:16px;padding:12px}.checkbox-row{flex-direction:column;gap:15px}.checkbox-group input[type=checkbox]{height:20px;width:20px}.form-actions{flex-direction:column;gap:10px}.form-actions .btn{justify-content:center;width:100%}.btn{font-size:1rem;min-height:48px;padding:12px 15px}.btn-sm{min-height:40px;padding:8px 12px}.table-wrapper{margin:0 -15px;padding:0 15px}.data-table{font-size:.85rem;min-width:700px}.data-table td,.data-table th{font-size:.85rem;padding:10px 8px}.table-wrapper:after{color:#999;content:"← Swipe to see more →";display:block;font-size:.75rem;font-style:italic;padding:10px 0 5px;text-align:center}.action-buttons{flex-direction:column;gap:5px}.action-buttons .btn{font-size:.85rem;width:100%}.alert{font-size:.9rem;padding:12px}}@media (max-width:479px){.page-container{padding:8px}.page-header h2{font-size:1.2em}.form-card,.table-card{padding:12px}.form-group input,.form-group select,.form-group textarea{padding:10px}.data-table{min-width:600px}.data-table td,.data-table th{font-size:.8rem;padding:8px 6px}}@media (max-height:500px) and (orientation:landscape){.page-header{margin-bottom:10px}.form-card,.table-card{margin-bottom:15px}fieldset{margin-bottom:10px}}@media print{.page-container{max-width:100%;padding:0}.action-buttons,.btn,.form-actions{display:none!important}.form-card,.table-card{box-shadow:none;page-break-inside:avoid}.table-wrapper:after{display:none}.data-table{min-width:100%}}.btn:focus,.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid #4a6fdc;outline-offset:2px}@media (prefers-contrast:high){.btn{border:2px solid}.form-group input,.form-group select,.form-group textarea{border-width:2px}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sales-target-monitor-new{background:linear-gradient(to bottom right,#f0f4f8,#e2e8f0);min-height:100vh;padding:2rem}.page-title{margin-bottom:2rem;text-align:center}.page-title h1{color:#1e293b;font-size:2rem;font-weight:700;margin:0}.filters-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem}.filter-item{flex:1 1;min-width:150px}.filter-select-new{background:#fff;border:2px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1rem;transition:all .3s;width:100%}.filter-select-new:hover{border-color:#3b82f6}.filter-select-new:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.summary-cards-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.summary-card-new{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:1rem;padding:1.5rem;transition:all .3s}.summary-card-new:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.card-icon-new{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;flex-shrink:0;font-size:2rem;height:56px;justify-content:center;width:56px}.card-details{flex:1 1}.card-label-new{color:#64748b;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.card-value-new{color:#1e293b;font-size:1.5rem;font-weight:700}.calendar-container-new{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.calendar-grid-new{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(7,1fr);margin-bottom:2rem}.calendar-day-box{background:#fff;border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;min-height:160px;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.calendar-day-box.empty{background:#0000;border:none;min-height:0}.calendar-day-box.clickable{cursor:pointer}.calendar-day-box.clickable:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.calendar-day-box.achievement-high{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.calendar-day-box.achievement-medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.calendar-day-box.achievement-low{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.calendar-day-box.no-data{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#94a3b8}.calendar-day-box.non-working{background:#f8fafc;border-color:#cbd5e1;cursor:not-allowed;opacity:.7}.day-header{color:#1e293b;font-size:1rem;font-weight:700;margin-bottom:.75rem;text-align:center}.day-info{align-items:center;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:.5rem}.info-label{color:#64748b;font-weight:500}.info-value{color:#1e293b}.day-achievement{margin-top:auto;padding-top:.5rem;text-align:center}.achievement-badge{background:#3b82f6;border-radius:20px;box-shadow:0 2px 4px #0000001a;color:#fff;font-size:1rem;font-weight:700;padding:.375rem 1rem}.day-total{border-top:1px solid #0000001a;color:#1e293b;font-size:.85rem;font-weight:700;margin-top:.5rem;padding-top:.5rem;text-align:center}.non-working-text{align-items:center;color:#94a3b8;display:flex;flex:1 1;font-size:.9rem;font-weight:600;justify-content:center;text-align:center}.calendar-legend-new{background:#f8fafc;border-radius:8px;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;padding:1.5rem}.legend-item-new{align-items:center;color:#475569;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.legend-box{border:2px solid #cbd5e1;border-radius:6px;height:28px;width:28px}.legend-box.achievement-high{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.legend-box.achievement-medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.legend-box.achievement-low{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.legend-box.no-data{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#94a3b8}.legend-box.non-working{background:#f8fafc;border-color:#cbd5e1}.legend-text{color:#475569}.no-data-message{color:#64748b;padding:4rem 2rem;text-align:center}.no-data-message p{font-size:1.125rem;margin-bottom:.5rem}.loading-state{padding:4rem 2rem;text-align:center}.spinner{border-top-color:#3b82f6;height:60px;margin:0 auto 1.5rem;width:60px}.modal-overlay{background:#0009;padding:20px}.modal-content-simple{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-header-simple{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:2px solid #e2e8f0;border-radius:16px 16px 0 0;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.modal-header-simple h2{font-size:1.5rem;font-weight:700;margin:0}.modal-close-btn{align-items:center;background:#fff3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:36px;justify-content:center;transition:all .3s;width:36px}.modal-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body-simple{padding:2rem}.detail-row{border-bottom:1px solid #e2e8f0;padding:.75rem 0}.detail-row:last-child{border-bottom:none}.detail-label{color:#64748b;font-weight:600}.detail-value{color:#1e293b;font-weight:700}.detail-value.success{color:#10b981}.detail-value.warning{color:#f59e0b}.modal-footer-simple{border-top:2px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.btn-cancel{background:#e2e8f0;border:none;border-radius:8px;color:#475569;cursor:pointer;font-size:.95rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s}.btn-cancel:hover{background:#cbd5e1}@media (max-width:1200px){.calendar-grid-new{grid-template-columns:repeat(5,1fr)}.summary-cards-container{grid-template-columns:repeat(3,1fr)}}@media (max-width:992px){.calendar-grid-new{grid-template-columns:repeat(4,1fr)}.summary-cards-container{grid-template-columns:repeat(2,1fr)}.filters-container{flex-direction:column}.filter-item{min-width:100%}}@media (max-width:768px){.sales-target-monitor-new{padding:1rem}.page-title h1{font-size:1.5rem}.calendar-grid-new{gap:.5rem;grid-template-columns:repeat(3,1fr)}.calendar-day-box{min-height:140px;padding:.75rem}.day-header{font-size:.9rem}.day-info{font-size:.75rem}.achievement-badge{font-size:.85rem;padding:.25rem .75rem}.summary-cards-container{grid-template-columns:1fr}}@media (max-width:480px){.calendar-grid-new{gap:.5rem;grid-template-columns:repeat(2,1fr)}.calendar-day-box{min-height:120px;padding:.5rem}.day-header{font-size:.8rem;margin-bottom:.5rem}.day-info{font-size:.7rem;margin-bottom:.25rem}.achievement-badge{font-size:.75rem;padding:.25rem .5rem}.day-total{font-size:.75rem;margin-top:.25rem;padding-top:.25rem}.calendar-container-new{padding:1rem}.modal-content-simple{margin:10px}}.quick-entry-container{margin:0 auto;max-width:1400px;padding:20px}.main-form{min-width:0}.form-grid{grid-template-columns:repeat(2,1fr);margin-bottom:20px}.form-control{transition:border-color .2s,box-shadow .2s}.form-help{color:#718096;font-size:12px;margin-top:5px}.target-info-box{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;margin-bottom:20px;padding:20px}.info-row{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.info-row:not(:last-child){border-bottom:1px solid #fff3}.info-label{font-size:14px;opacity:.9}.info-value{font-size:16px;font-weight:600}.badge-success{background:#48bb784d;color:#fff}.badge-warning{background:#ed89364d;color:#fff}.btn-quick-fill{background:#fff;border:none;border-radius:6px;color:#667eea;cursor:pointer;font-weight:600;margin-top:15px;padding:10px;transition:all .2s;width:100%}.btn-quick-fill:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.btn-primary:hover:not(:disabled){background:#2c5282}.recent-list{display:flex;flex-direction:column;gap:12px}.recent-item{background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px}.recent-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.recent-territory{color:#2d3748;font-size:14px;font-weight:600}.recent-date{color:#718096;font-size:12px}.recent-details{align-items:center;color:#4a5568;display:flex;font-size:13px;justify-content:space-between;margin-bottom:8px}.recent-amount{color:#2d3748;font-weight:600}.recent-achievement{align-items:center;display:flex;gap:10px}.achievement-bar{background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.achievement-fill{background:linear-gradient(90deg,#48bb78,#38a169);height:100%;transition:width .3s ease}.achievement-pct{color:#4a5568;font-size:12px;font-weight:600;min-width:45px;text-align:right}.tips-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.tips-card .card-header{background:#ffffff1a;border-bottom-color:#fff3}.tips-card .card-header h3{color:#fff}.tips-list{list-style:none;margin:0;padding:0}.tips-list li{font-size:13px;line-height:1.6;opacity:.95;padding:10px 0}.tips-list li:before{content:"💡 ";margin-right:8px}@media (max-width:768px){.form-grid{grid-template-columns:1fr}.card-body,.quick-entry-container{padding:15px}}:root{--primary-color:#3498db;--primary-dark:#2980b9;--success-color:#27ae60;--danger-color:#e74c3c;--warning-color:#f39c12;--info-color:#3498db;--purple-color:#9b59b6;--teal-color:#1abc9c;--orange-color:#e67e22;--dark-color:#34495e;--light-bg:#f0f2f5;--card-shadow:0 5px 15px #00000014;--card-shadow-hover:0 5px 15px #00000026;--border-radius:10px;--transition:all 0.3s ease}.retailer-entry-container{background-color:#f0f2f5;background-color:var(--light-bg);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.header-banner{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:10px;border-radius:var(--border-radius);box-shadow:0 6px 10px #00000026;color:#fff;display:flex;justify-content:space-between;margin-bottom:25px;padding:20px 25px;transition:all .3s ease;transition:var(--transition)}.header-banner:hover{box-shadow:0 5px 15px #00000026;box-shadow:var(--card-shadow-hover);transform:translateY(-2px)}.company-icon-wrapper{align-items:center;background-color:#fff;border-radius:10px;box-shadow:0 4px 8px #0000001a;display:inline-flex;justify-content:center;margin-right:15px;padding:12px}.company-icon{color:#3498db;color:var(--primary-color);font-size:28px}.header-title{color:#fff;font-size:22px;font-weight:600;margin-bottom:2px;text-shadow:0 2px 4px #0003}.header-subtitle{font-size:14px;margin:0;opacity:.9}.session-warning-alert{animation:pulse 2s infinite;background:linear-gradient(90deg,#fff3cd,#fff);border-left:4px solid #f39c12;border-left:4px solid var(--warning-color)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.9}}.form-card{border:none;border-radius:10px;border-radius:var(--border-radius);box-shadow:0 5px 15px #00000014;box-shadow:var(--card-shadow);margin-bottom:25px;overflow:hidden;padding:25px;transition:all .3s ease;transition:var(--transition)}.form-card-body{padding:0}fieldset{border:1px solid #e0e0e0}legend{color:#2c3e50;padding:0 10px}.section-badge,legend{font-size:16px;font-weight:600}.section-badge{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%);border-radius:8px;box-shadow:0 2px 8px #3498db4d;color:#fff;display:inline-flex;margin-bottom:1.5rem;padding:10px 20px}.section-badge i{margin-right:8px}.form-label{color:#34495e;font-size:14px}.form-control,.form-select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;transition:border-color .3s;width:100%}.form-control:focus,.form-select:focus{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 2px #3498db33;outline:none}.form-control:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus){border-color:#c4cbd4}.form-control:read-only{background-color:#f8f9fa!important;border-color:#dee2e6;color:#6c757d;cursor:not-allowed;font-weight:600}textarea.form-control{min-height:70px;resize:vertical}.text-danger{color:#e74c3c!important;color:var(--danger-color)!important;font-weight:700}.row{display:flex;flex-wrap:wrap;margin:0 -10px}.col-md-2,.col-md-3,.col-md-4,.col-md-6{flex:1 1;margin-bottom:15px;min-width:200px;padding:0 10px}.col-md-2{flex:0 0 16.666%}.col-md-3{flex:0 0 25%}.col-md-4{flex:0 0 33.333%}.col-md-6{flex:0 0 50%}.g-3{margin:0 -10px}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.btn{font-size:16px;justify-content:center;padding:12px 25px}.btn i{margin-right:.5rem}.btn-primary{background:var(--primary-color)}.btn-primary:hover{background:#2980b9;background:var(--primary-dark)}.btn-success{background:#27ae60;background:var(--success-color)}.btn-success:hover{background:#229954}.btn-outline-secondary{background:#fff;border:2px solid #6c757d;color:#6c757d}.btn-outline-secondary:hover{background-color:#6c757d;color:#fff}.btn-light{background-color:#fff;border:2px solid #fff;box-shadow:0 2px 8px #0000001a;color:#3498db;color:var(--primary-color);font-size:14px;font-weight:600;padding:10px 20px}.btn-light:hover{background-color:#f8f9fa;box-shadow:0 4px 12px #00000026;color:#2980b9;color:var(--primary-dark)}.btn-large{font-size:18px;padding:15px 30px}.btn-sm{font-size:14px}.btn:disabled{background:#bdc3c7;transform:none!important}.text-nowrap{white-space:nowrap}.image-upload-section{position:relative}.image-preview-container{border-radius:8px;box-shadow:0 5px 15px #00000014;box-shadow:var(--card-shadow);display:inline-block;margin-top:1rem;overflow:hidden;position:relative;transition:all .3s ease;transition:var(--transition)}.image-preview-container:hover{box-shadow:0 5px 15px #00000026;box-shadow:var(--card-shadow-hover);transform:scale(1.02)}.img-thumbnail{border:3px solid #e9ecef;border-radius:8px;padding:4px}.location-display-box{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid #dee2e6;border-radius:10px;display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:1.25rem;transition:all .3s ease;transition:var(--transition)}.location-display-box:hover{border-color:#3498db;border-color:var(--primary-color);box-shadow:0 0 0 .2rem #4a90e226}.location-info-item{margin-bottom:.75rem}.location-label{color:#6c757d;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.location-value{color:#212529;font-size:1rem;font-weight:700}.location-map-btn{background:linear-gradient(135deg,#3498db,#2980b9);background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%);border:none;border-radius:6px;box-shadow:0 2px 8px #4a90e24d;color:#fff;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .3s ease;transition:var(--transition)}.location-map-btn:hover{box-shadow:0 4px 12px #4a90e266;color:#fff;text-decoration:none;transform:translateY(-2px)}.summary-section{margin-top:0}.summary-fieldset{background:linear-gradient(to bottom right,#f8f9fa,#e9ecef)}.summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.summary-card{box-shadow:0 2px 5px #0000001a;padding:15px;position:relative;text-align:center;transition:transform .3s,box-shadow .3s}.summary-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-5px)}.summary-card-body{padding:0;text-align:center}.summary-label{color:#7f8c8d;font-size:14px;line-height:1.3;margin-bottom:8px}.summary-value{line-height:1;margin-bottom:0}.summary-card-blue{border-top:4px solid #3498db;border-top:4px solid var(--info-color)}.summary-card-green{border-top:4px solid #27ae60;border-top:4px solid var(--success-color)}.summary-card-orange{border-top:4px solid #e67e22;border-top:4px solid var(--orange-color)}.summary-card-red{border-top:4px solid #e74c3c;border-top:4px solid var(--danger-color)}.summary-card-purple{border-top:4px solid #9b59b6;border-top:4px solid var(--purple-color)}.summary-card-teal{border-top:4px solid #1abc9c;border-top:4px solid var(--teal-color)}.summary-card-dark{border-top:4px solid #34495e;border-top:4px solid var(--dark-color)}.text-blue{color:#3498db;color:var(--info-color)}.text-green{color:#27ae60;color:var(--success-color)}.text-orange{color:#e67e22;color:var(--orange-color)}.text-red{color:#e74c3c;color:var(--danger-color)}.text-purple{color:#9b59b6;color:var(--purple-color)}.text-teal{color:#1abc9c;color:var(--teal-color)}.text-dark-gray{color:#34495e;color:var(--dark-color)}.user-info-footer{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;margin-top:1.5rem;padding:1rem;text-align:center}.user-info-footer small{color:#6c757d;font-size:.875rem}.user-info-footer strong{color:#212529;font-weight:600}.user-info-footer i{color:#3498db;color:var(--primary-color)}.alert{border:none;box-shadow:0 2px 8px #0000001a}.alert-warning{background-color:#fff3cd;color:#856404}.camera-modal{align-items:center;background-color:#000c;box-sizing:border-box;display:flex;height:100%;justify-content:center;left:0;padding:15px;position:fixed;top:0;width:100%;z-index:9999}.camera-container{background-color:#fff;border-radius:12px;box-shadow:0 10px 30px #00000080;display:flex;flex-direction:column;max-height:90vh;max-width:500px;overflow:hidden;width:100%}.camera-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:15px;position:relative;z-index:10}.camera-body{background-color:#000;flex:1 1;min-height:300px;overflow:hidden;position:relative;width:100%}.video-wrapper{align-items:center;display:flex;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.camera-feed{display:block;height:100%;object-fit:cover;width:100%}.camera-footer{background-color:#f8f9fa;gap:15px;padding:15px;position:relative;z-index:10}.camera-btn,.camera-footer{display:flex;justify-content:center}.camera-btn{align-items:center;border-radius:8px;box-shadow:0 2px 5px #0003;font-size:16px;font-weight:600;min-height:50px;min-width:120px;transition:all .2s ease}.camera-btn:active{transform:scale(.95)}.camera-btn{position:relative;z-index:20}.btn-close{align-items:center;background:#0000;border:none;border-radius:50%;color:#6c757d;cursor:pointer;display:flex;font-size:20px;height:30px;justify-content:center;transition:all .2s;width:30px}.btn-close:hover{background-color:#e9ecef;color:#495057}@media (max-width:768px){.retailer-entry-container{padding:10px}.header-banner{flex-direction:column;gap:15px;padding:15px;text-align:center}.header-banner>div{width:100%}.company-icon-wrapper{margin-right:10px}.company-icon{font-size:24px}.header-title{font-size:18px}.header-subtitle{font-size:12px}.form-card{padding:15px}.section-badge{font-size:14px;padding:8px 16px}.row{margin:0}.col-md-2,.col-md-3,.col-md-4,.col-md-6{flex:0 0 100%;margin-bottom:15px;max-width:100%;min-width:100%;padding:0}.btn{font-size:14px;padding:10px 20px;width:100%}.btn-light{padding:8px 16px;width:auto}.d-flex.gap-3{flex-direction:column;gap:10px!important}.px-5{padding-left:1rem!important;padding-right:1rem!important}.summary-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.summary-value{font-size:18px}.summary-label{font-size:12px}fieldset{padding:15px}legend{font-size:14px}.camera-modal{padding:10px}.camera-container{border-radius:8px;max-width:100%}.camera-body{min-height:250px}.camera-footer{gap:10px;padding:12px}.camera-btn{font-size:15px;min-height:45px;min-width:100px}}@media (max-width:576px){.retailer-entry-container{padding:5px}.header-banner{padding:12px}.header-title{font-size:16px}.header-subtitle{font-size:11px}.company-icon{font-size:20px}.company-icon-wrapper{margin-right:8px;padding:8px}.form-card{padding:12px}.section-badge{font-size:13px;padding:6px 12px}.form-control,.form-select{font-size:14px;padding:8px}.form-label{font-size:13px}.btn{font-size:14px;padding:10px 15px}.summary-grid{gap:10px;grid-template-columns:1fr}.summary-value{font-size:24px}.summary-label{font-size:13px}.summary-card{padding:12px}.location-display-box{min-height:120px;padding:1rem}.location-value{font-size:.9rem}.image-preview-container img{max-height:120px!important}fieldset{padding:12px}legend{font-size:13px}.user-info-footer{font-size:12px;padding:8px}.user-info-footer small{display:block;font-size:11px;margin:3px 0}.camera-modal{padding:5px}.camera-container{border-radius:0;max-height:100vh}.camera-body{min-height:200px}.camera-footer{flex-direction:column;gap:8px;padding:10px}.camera-btn{min-height:50px;min-width:100%}.camera-header{padding:12px}.btn-close{font-size:22px;height:36px;width:36px}}@media (max-width:768px) and (orientation:landscape){.summary-grid{gap:10px;grid-template-columns:repeat(4,1fr)}.camera-modal{padding:5px}.camera-container{max-height:100vh;max-width:100%}.camera-body{min-height:180px}.camera-footer{padding:8px}.camera-btn{font-size:14px;min-height:40px;min-width:90px}}@media (min-width:1200px){.retailer-entry-container{max-width:1400px}}@media (hover:none) and (pointer:coarse){.btn{min-height:44px}.form-control,.form-select{font-size:16px;min-height:44px}.summary-card{padding:18px}.camera-btn{min-height:48px;min-width:48px;padding:12px 16px;touch-action:manipulation}}.text-muted{color:#6c757d!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.d-flex{display:flex!important}.justify-content-between{justify-content:space-between!important}.justify-content-center{justify-content:center!important}.align-items-center{align-items:center!important}.flex-grow-1{flex-grow:1!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.text-center{text-align:center!important}.text-end{text-align:right!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.ms-2{margin-left:.5rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.pt-3{padding-top:1rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.px-5{padding-left:3rem!important;padding-right:3rem!important}.w-100{width:100%!important}.h-100{height:100%!important}.bi{vertical-align:middle}.info-note{background:#eaf2f8;border-left:4px solid #3498db;border-left:4px solid var(--primary-color);border-radius:0 4px 4px 0;font-size:14px;margin-top:15px;padding:10px 15px}.small{font-size:.875rem}.readonly-field{background-color:#f8f9fa!important;color:#6c757d}@media print{.btn,.btn-light,.camera-modal,.header-banner,.user-info-footer{display:none!important}.form-card,.summary-card{border:1px solid #dee2e6!important;box-shadow:none!important;page-break-inside:avoid}.retailer-entry-container{padding:0}}.spinner-border{border-width:.2em;height:1.5rem;width:1.5rem}.spinner-border-sm{border-width:.15em;height:1rem;width:1rem}@media (min-width:769px){::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.camera-modal{animation:fadeIn .3s ease-out}.camera-container{animation:slideUp .3s ease-out}@supports (-webkit-touch-callout:none){.camera-feed{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}.camera-btn{-webkit-appearance:none;appearance:none}}.customer-feedback-entry{background-color:#f5f7fa;margin:0 auto;max-width:1200px;min-height:calc(100vh - 60px);padding:20px}.page-header{border-bottom:2px solid #e0e0e0;box-shadow:0 1px 3px #0000000d}.page-header h1:before{content:"📝"}.user-info{color:#666;display:flex;flex-wrap:wrap;font-size:14px;gap:20px}.user-info span{align-items:center;background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:20px;display:flex;font-weight:500;gap:5px;padding:8px 15px;transition:all .3s}.user-info span:hover{background-color:#e9ecef;transform:translateY(-2px)}.message{align-items:center;animation:slideIn .3s ease-out;box-shadow:0 2px 8px #0000001a;display:flex;font-weight:500;gap:10px;padding:15px 20px}.message.success{background-color:#d4edda;border-left:4px solid #28a745}.message.success:before{content:"✅";font-size:20px}.message.error{background-color:#f8d7da;border-left:4px solid #dc3545}.message.error:before{content:"❌";font-size:20px}.message.warning{background-color:#fff3cd;border:1px solid #ffeeba;border-left:4px solid #ffc107;color:#856404}.message.warning:before{content:"⚠️";font-size:20px}.message.info{background-color:#d1ecf1;border-left:4px solid #17a2b8}.message.info:before{content:"ℹ️";font-size:20px}.feedback-form{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;padding:40px;position:relative}.feedback-form:before{background:linear-gradient(90deg,#3498db,#2ecc71);content:"";height:4px;left:0;position:absolute;right:0;top:0}.form-grid{grid-gap:25px;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}@media (max-width:768px){.form-grid{gap:20px;grid-template-columns:1fr}}.form-group{position:relative}.form-group.half-width{grid-column:span 1}.form-group label{align-items:center;display:flex;gap:5px;letter-spacing:.3px}.form-group label:after{content:"";flex:1 1}.required{font-size:16px;font-weight:700;margin-left:3px}.form-group input,.form-group select,.form-group textarea{background-color:#fafafa;border:2px solid #ddd;border-radius:6px;font-family:inherit}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{background-color:#fff;border-color:#bbb}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background-color:#fff;transform:translateY(-1px)}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#e9ecef;cursor:not-allowed;opacity:.6}.form-group textarea{line-height:1.6;min-height:100px}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23333' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:35px}.form-group.has-icon{position:relative}.form-group.has-icon input{padding-left:40px}.form-group.has-icon .input-icon{color:#666;font-size:18px;left:12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.rating-display{align-items:center;display:flex;font-size:24px;gap:10px;margin-top:8px}.rating-stars{color:gold;letter-spacing:2px}.rating-text{color:#666;font-size:14px;font-weight:600}.form-actions{border-top:2px solid #f0f0f0;flex-wrap:wrap;margin-top:25px;padding-top:25px}@media (max-width:576px){.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.btn-danger,.btn-primary,.btn-secondary,.btn-success{align-items:center;border:none;border-radius:6px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;letter-spacing:.5px;overflow:hidden;padding:14px 32px;position:relative;transition:all .3s ease}.btn-danger:before,.btn-primary:before,.btn-secondary:before,.btn-success:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-danger:active:before,.btn-primary:active:before,.btn-secondary:active:before,.btn-success:active:before{height:300px;width:300px}.btn-primary:hover{background:linear-gradient(135deg,#2980b9,#21618c)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:linear-gradient(135deg,#95a5a6,#7f8c8d)}.btn-primary:disabled:hover{box-shadow:0 2px 8px #0000001a}.btn-secondary{background:linear-gradient(135deg,#ecf0f1,#bdc3c7);color:#333}.btn-secondary:hover{background:linear-gradient(135deg,#bdc3c7,#95a5a6);box-shadow:0 4px 12px #00000026}.btn-secondary:active{transform:translateY(0)}.btn-success{background:linear-gradient(135deg,#2ecc71,#27ae60)}.btn-success:hover{background:linear-gradient(135deg,#27ae60,#1e8449);box-shadow:0 4px 12px #2ecc7166;transform:translateY(-2px)}.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b)}.btn-danger:hover{background:linear-gradient(135deg,#c0392b,#a93226);box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.btn-danger.loading,.btn-primary.loading,.btn-secondary.loading,.btn-success.loading{color:#0000;pointer-events:none;position:relative}.btn-danger.loading:after,.btn-primary.loading:after,.btn-secondary.loading:after,.btn-success.loading:after{animation:spin .8s linear infinite;border:3px solid #0000;border-radius:50%;border-top-color:#fff;content:"";height:20px;left:50%;margin-left:-10px;margin-top:-10px;position:absolute;top:50%;width:20px}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{background-color:#fff5f5;border-color:#e74c3c}.form-group.has-error label{color:#e74c3c}.form-group.has-success input,.form-group.has-success select,.form-group.has-success textarea{background-color:#f0fff4;border-color:#2ecc71}.error-message{align-items:center;animation:shake .3s;color:#e74c3c;display:flex;font-size:12px;gap:5px;margin-top:5px}.error-message:before{content:"⚠️"}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.success-message{align-items:center;color:#2ecc71;display:flex;font-size:12px;gap:5px;margin-top:5px}.success-message:before{content:"✅"}.helper-text{align-items:start;color:#666;display:flex;font-size:12px;gap:5px;margin-top:5px}.helper-text:before{content:"ℹ️";margin-top:2px}@media (max-width:768px){.customer-feedback-entry{padding:15px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.page-header h1{font-size:24px}.user-info{justify-content:flex-start;width:100%}.feedback-form{padding:25px 20px}.form-group input,.form-group select,.form-group textarea{font-size:16px}}@media (max-width:480px){.page-header h1{font-size:20px}.user-info span{font-size:12px;padding:6px 12px}.feedback-form{padding:20px 15px}.btn-danger,.btn-primary,.btn-secondary,.btn-success{font-size:14px;padding:12px 24px}}@media print{.customer-feedback-entry{background-color:#fff}.btn-danger,.btn-primary,.btn-secondary,.btn-success,.form-actions,.message{display:none}.feedback-form{border:1px solid #ddd;box-shadow:none}.page-header{border-bottom:2px solid #333}}.form-group input:focus-visible,.form-group select:focus-visible,.form-group textarea:focus-visible{outline:3px solid #3498db;outline-offset:2px}.btn-danger:focus-visible,.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-success:focus-visible{outline:3px solid #333;outline-offset:3px}.feedback-form::-webkit-scrollbar{width:8px}.feedback-form::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.feedback-form::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.feedback-form::-webkit-scrollbar-thumb:hover{background:#555}.tooltip{display:inline-block;position:relative}.tooltip .tooltip-text{background-color:#333;border-radius:6px;bottom:125%;color:#fff;font-size:12px;left:50%;margin-left:-100px;opacity:0;padding:8px;position:absolute;text-align:center;transition:opacity .3s;visibility:hidden;width:200px;z-index:1}.tooltip .tooltip-text:after{border:5px solid #0000;border-top-color:#333;content:"";left:50%;margin-left:-5px;position:absolute;top:100%}.tooltip:hover .tooltip-text{opacity:1;visibility:visible}.attendance-upload-container{margin:0 auto;max-width:1200px;padding:20px}.upload-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.upload-card h2{color:#2c3e50;font-size:28px;margin:0 0 8px}.subtitle{color:#7f8c8d;margin:0 0 30px}.upload-form{margin-bottom:30px}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group label{color:#34495e}.form-group input,.form-group select{border:2px solid #e0e0e0;border-radius:8px;font-size:14px;padding:12px;transition:all .3s ease}.form-group input:focus,.form-group select:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.file-input{cursor:pointer}.file-info{background:#ecf0f1;border-radius:6px;color:#555;font-size:13px;margin-top:10px;padding:10px}.upload-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:20px;padding:14px 24px;transition:all .3s ease;width:100%}.upload-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.upload-btn:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.btn-warning{background:linear-gradient(135deg,#f39c12,#f6d365);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:all .3s ease}.btn-warning:hover:not(:disabled){box-shadow:0 4px 12px #f39c1266;transform:translateY(-2px)}.btn-warning:disabled{background:#bdc3c7;cursor:not-allowed;transform:none}.status-message{border-radius:8px;font-size:14px;margin:20px 0;padding:16px}.status-message.success{background:#d4edda;border:2px solid #28a745;color:#155724}.status-message.error{background:#f8d7da;border:2px solid #dc3545;color:#721c24}.status-stats{display:flex;font-size:13px;font-weight:600;gap:20px;margin-top:10px}.stat-success{color:#28a745}.stat-failed{color:#dc3545}.preview-section{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;margin:30px 0;padding:20px}.preview-section h3{color:#2c3e50;font-size:18px;margin:0 0 15px}.preview-table-wrapper{margin-bottom:15px;overflow-x:auto}.preview-table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.preview-table thead{background:#34495e;color:#fff}.preview-table td,.preview-table th{border-bottom:1px solid #e0e0e0;padding:12px;text-align:left}.preview-table th{font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.preview-table tbody tr:hover{background:#f8f9fa}.preview-table tbody tr:last-child td{border-bottom:none}.preview-note{color:#7f8c8d;font-size:13px;font-style:italic;margin:10px 0 0}.instructions{background:#fff3cd;border:2px solid #ffc107;border-radius:8px;margin-top:30px;padding:20px}.instructions h4{color:#856404;font-size:16px;margin:0 0 15px}.instructions ol{color:#856404;margin:0 0 15px;padding-left:20px}.instructions ol li{line-height:1.6;margin-bottom:8px}.note{background:#fff;border-radius:6px;color:#555;font-size:13px;margin:15px 0 0;padding:12px}.note code{background:#f4f4f4;border-radius:4px;color:#e74c3c;font-family:Courier New,monospace;font-size:12px;padding:4px 8px}.warning-box{border:1px solid #ffeaa7;border-radius:4px;font-size:14px;line-height:1.5;margin:15px 0;padding:10px}.warning-box strong{color:#856404}@media (max-width:768px){.upload-card{padding:20px}.form-row{grid-template-columns:1fr}.upload-card h2{font-size:22px}.preview-table{font-size:12px}.preview-table td,.preview-table th{padding:8px}}.leave-self-entry{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;justify-content:center;min-height:100vh;padding:20px}.leave-self-container{margin-top:40px;max-width:450px;width:100%}.leave-self-container.logged-in{margin-top:20px;max-width:900px}.login-card{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;padding:40px}.login-header{margin-bottom:32px;text-align:center}.logo-icon{font-size:3rem;margin-bottom:16px}.login-header h1{color:#333;font-size:1.6rem;margin:0 0 8px}.login-header p{color:#666;font-size:.95rem;margin:0}.login-footer{border-top:1px solid #eee;margin-top:24px;padding-top:16px;text-align:center}.login-footer p{color:#888;font-size:.85rem;margin:0}.leave-header{background:#fff;box-shadow:0 2px 12px #0000001a;padding:20px 24px}.employee-info h2{color:#333;font-size:1.3rem}.employee-info p{color:#666}.btn-logout{background:#f0f0f0;border:none;border-radius:8px;color:#666;font-weight:500;padding:10px 20px}.btn-logout:hover{background:#e0e0e0;color:#333}.message{animation:fadeIn .3s ease;margin-bottom:20px}.message,.warning-box{border-radius:10px;padding:14px 18px}.form-group{margin-bottom:20px}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:10px;font-size:1rem;padding:12px 14px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 4px #667eea26}.form-group input:disabled,.form-group select:disabled{background:#f5f5f5;color:#666;cursor:not-allowed}.form-group input.warning-input{background:#fff3cd;border-color:#ffc107}.form-row{grid-template-columns:repeat(2,1fr)}.form-row.three-col{grid-template-columns:repeat(3,1fr)}.input-with-button{gap:10px}.btn-check{border-radius:10px;font-weight:600;padding:12px 20px;transition:background .2s,transform .2s}.btn-check:hover:not(:disabled){transform:translateY(-1px)}.checkbox-group label{font-weight:400;gap:10px}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.btn-primary{border-radius:10px;padding:14px 28px}.btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea66}.balance-cards{grid-template-columns:repeat(4,1fr)}.balance-card{box-shadow:0 2px 12px #00000014}.balance-card.lwp-card{background:#fff8f8;border-left-color:#dc3545}.balance-card.lwp-card .balance-number,.balance-card.lwp-card h4{color:#dc3545}.balance-card h4{font-size:.75rem}.balance-number{font-size:2.2rem;margin-bottom:10px}.balance-details{font-size:.7rem;gap:6px}.balance-details span{padding:3px 8px}.balance-details .carry-forward{background:#e3f2fd;color:#1976d2}.balance-display{background:#f0fff4!important}.tab-navigation{background:#fff;border-radius:10px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.tab-navigation button{flex:1 1;font-weight:500;padding:14px 24px;transition:all .2s}.tab-navigation button.active{background:#667eea;color:#fff}.tab-navigation button:hover:not(.active){background:#f5f5f5}.leave-card{padding:28px}.leave-card h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.2rem;margin:0 0 24px;padding-bottom:12px}.status-badge{border-radius:20px;font-weight:600;padding:5px 12px}.status-cancelled{background:#e2e3e5;color:#6c757d}.lwp-badge{font-size:.7rem}.leave-table td,.leave-table th{padding:14px 12px}.remarks-cell{color:#666;font-size:.8rem;max-width:200px}.approval-info{border-radius:10px;gap:30px;margin:20px 0;padding:14px 18px}.leave-footer{padding:20px;text-align:center}.leave-footer p{color:#fffc;font-size:.85rem;margin:0}@media (max-width:900px){.balance-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.leave-self-entry{padding:10px}.leave-self-container{margin-top:10px}.login-card{padding:24px}.login-header h1{font-size:1.4rem}.leave-header{flex-direction:column;gap:12px;text-align:center}.form-row,.form-row.three-col{grid-template-columns:1fr}.balance-cards{grid-template-columns:1fr 1fr}.approval-info{flex-direction:column;gap:8px}.tab-navigation button{font-size:.9rem;padding:12px 16px}.leave-table{font-size:.8rem}.leave-table td,.leave-table th{padding:10px 8px}}@media (max-width:480px){.balance-cards{grid-template-columns:1fr 1fr}.balance-number{font-size:1.8rem}.logo-icon{font-size:2.5rem}}.leave-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;margin:0 auto;max-width:1000px;padding:20px}.leave-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:20px;padding:24px}.login-card{margin:60px auto;max-width:400px;text-align:center}.login-card h2{color:#333;margin-bottom:24px}.leave-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.employee-info h2{font-size:1.4rem;margin:0 0 4px}.employee-info p{font-size:.9rem;margin:0;opacity:.9}.btn-logout{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;padding:8px 16px;transition:all .2s}.btn-logout:hover{background:#ffffff4d}.message{border-radius:8px;font-size:.9rem;margin-bottom:16px;padding:12px 16px}.message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.message.info{background:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.warning-box{background:#fff3cd;border:1px solid #ffeeba;border-radius:8px;color:#856404;margin:16px 0;padding:12px 16px}.form-group{margin-bottom:16px}.form-group label{color:#444;display:block;font-size:.9rem;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;box-sizing:border-box;font-size:.95rem;padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.form-group input.warning{background:#fff3cd;border-color:#ffc107}.form-row{grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.input-with-button{display:flex;gap:8px}.input-with-button input{flex:1 1}.btn-check{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:10px 16px;transition:background .2s;white-space:nowrap}.btn-check:hover:not(:disabled){background:#5a6fd6}.btn-check:disabled{background:#ccc;cursor:not-allowed}.checkbox-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.checkbox-group input[type=checkbox]{width:auto}.btn-primary{border-radius:8px;font-size:1rem;font-weight:500;padding:12px 24px;transition:transform .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-primary:disabled{transform:none}.btn-full{width:100%}.btn-secondary,.btn-success{border:none;border-radius:6px;cursor:pointer;padding:8px 16px}.btn-success{background:#28a745}.btn-danger{background:#dc3545;border:none;border-radius:6px;cursor:pointer;padding:8px 16px}.balance-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.balance-card{background:#fff;border-left:4px solid #667eea;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:20px;text-align:center}.balance-card h4{color:#666;font-size:.9rem;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.balance-number{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:8px}.balance-details{color:#888;display:flex;flex-wrap:wrap;font-size:.75rem;gap:8px;justify-content:center}.balance-details span{background:#f5f5f5;border-radius:4px;padding:2px 8px}.balance-display{color:#28a745!important;font-weight:600}.tab-navigation{border-bottom:2px solid #eee;display:flex;gap:0;margin-bottom:20px}.tab-navigation button{background:none;border:none;color:#666;cursor:pointer;font-size:1rem;padding:12px 24px;position:relative;transition:color .2s}.tab-navigation button.active{color:#667eea;font-weight:500}.tab-navigation button.active:after{background:#667eea;bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0}.status-badge{display:inline-block;font-size:.75rem;padding:4px 10px;text-transform:uppercase}.status-pending{background:#fff3cd;color:#856404}.status-checked{background:#d1ecf1;color:#0c5460}.status-approved{background:#d4edda;color:#155724}.status-rejected{background:#f8d7da;color:#721c24}.lwp-badge{color:#dc3545;font-size:.75rem;font-weight:600}.table-container{overflow-x:auto}.leave-table{border-collapse:collapse;font-size:.9rem;width:100%}.leave-table td,.leave-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.leave-table th{color:#555;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.leave-table th,.leave-table tr:hover{background:#f8f9fa}.no-data{color:#888;padding:40px!important}.approval-info{background:#f8f9fa;border-radius:8px;display:flex;font-size:.9rem;gap:24px;margin:16px 0;padding:12px 16px}.approval-info p{margin:0}@media (max-width:768px){.leave-container{padding:12px}.leave-header{flex-direction:column;gap:12px;text-align:center}.balance-cards,.form-row{grid-template-columns:1fr}.approval-info{flex-direction:column;gap:8px}.tab-navigation button{font-size:.9rem;padding:10px 16px}}.performance-dashboard-container{margin:0 auto;max-width:1600px;padding:20px}.summary-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(5,1fr);margin-bottom:20px}.summary-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:15px;padding:20px;transition:transform .2s}.summary-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.summary-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:24px;height:50px;justify-content:center;width:50px}.summary-icon.target{background:linear-gradient(135deg,#667eea,#764ba2)}.summary-icon.achieved,.summary-icon.excellent{background:linear-gradient(135deg,#48bb78,#38a169)}.summary-icon.good{background:linear-gradient(135deg,#4299e1,#3182ce)}.summary-icon.average{background:linear-gradient(135deg,#ed8936,#dd6b20)}.summary-icon.poor{background:linear-gradient(135deg,#f56565,#e53e3e)}.summary-icon.positive{background:linear-gradient(135deg,#48bb78,#38a169)}.summary-icon.negative{background:linear-gradient(135deg,#f56565,#e53e3e)}.summary-icon.info{background:linear-gradient(135deg,#4299e1,#3182ce)}.summary-content{flex:1 1;min-width:0}.summary-label{color:#718096;font-size:12px;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.summary-value{color:#2d3748;font-size:20px;font-weight:700}.summary-value.positive{color:#38a169}.summary-value.negative{color:#e53e3e}.charts-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.chart-card.full-width{grid-column:1/-1}.custom-tooltip .label{color:#2d3748;font-weight:600;margin-bottom:8px}.performance-table{overflow-x:auto}.performance-table table{border-collapse:collapse;width:100%}.performance-table thead{background:#f7fafc}.performance-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:13px;font-weight:600;padding:12px;text-align:left}.performance-table td{border-bottom:1px solid #f7fafc;color:#2d3748;font-size:14px;padding:12px}.performance-table tr:hover{background:#f7fafc}.rank-cell{text-align:center}.rank-badge{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:inline-flex;font-size:14px;font-weight:700;height:30px;justify-content:center;width:30px}.achievement-cell{display:flex;justify-content:flex-start}.gap-cell{color:#e53e3e;font-weight:600}.btn{display:flex}@media print{.action-buttons,.filters-card{display:none}.chart-card{break-inside:avoid;page-break-inside:avoid}}@media (max-width:1400px){.filters-grid,.summary-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.charts-row{grid-template-columns:1fr}.filters-grid,.summary-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.performance-dashboard-container{padding:15px}.filters-grid,.summary-grid{grid-template-columns:1fr}.summary-card{padding:15px}.summary-icon{font-size:20px;height:40px;width:40px}.summary-value{font-size:18px}.action-buttons{flex-direction:column}.btn{justify-content:center;width:100%}}.trend-analysis-container{margin:0 auto;max-width:1600px;padding:20px}.filters-grid{grid-template-columns:repeat(6,1fr)}.insights-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(5,1fr);margin-bottom:20px}.insight-card{align-items:center;background:#fff;border-left:4px solid #cbd5e0;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:15px;padding:20px;transition:transform .2s}.insight-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.insight-card.trend-up{background:linear-gradient(135deg,#fff,#f0fff4);border-left-color:#48bb78}.insight-card.trend-down{background:linear-gradient(135deg,#fff,#fff5f5);border-left-color:#f56565}.insight-card.trend-stable{background:linear-gradient(135deg,#fff,#ebf8ff);border-left-color:#4299e1}.insight-card.growth{border-left-color:#9f7aea}.insight-card.best{border-left-color:#48bb78}.insight-card.worst{border-left-color:#ed8936}.insight-icon{align-items:center;background:#f7fafc;border-radius:50%;display:flex;flex-shrink:0;font-size:24px;height:50px;justify-content:center;width:50px}.insight-content{flex:1 1;min-width:0}.insight-label{color:#718096;font-size:12px;letter-spacing:.5px;margin-bottom:5px;text-transform:uppercase}.insight-value{color:#2d3748;font-size:20px;font-weight:700}.insight-subtext{color:#718096;font-size:12px;margin-top:3px}.chart-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:20px;overflow:hidden}.chart-header{align-items:center;background:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:15px 20px}.chart-header h3{color:#2d3748;font-size:18px;font-weight:600;margin:0}.chart-actions{display:flex;gap:5px}.chart-type-btn{background:#fff;border:1px solid #cbd5e0;border-radius:4px;cursor:pointer;font-size:13px;padding:6px 12px;transition:all .2s}.chart-type-btn:hover{background:#f7fafc}.chart-type-btn.active{background:#3182ce;border-color:#3182ce;color:#fff}.chart-body{padding:20px}.no-data{padding:60px 20px}.custom-tooltip{background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 4px 12px #00000026;padding:12px}.tooltip-label{color:#2d3748;font-weight:600;margin-bottom:8px}.custom-tooltip p{font-size:13px;margin:4px 0}.trend-table{overflow-x:auto}.trend-table table{border-collapse:collapse;width:100%}.trend-table thead{background:#f7fafc}.trend-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:13px;font-weight:600;padding:12px;text-align:left}.trend-table td{border-bottom:1px solid #f7fafc;color:#2d3748;font-size:14px;padding:12px}.trend-table tr:hover{background:#f7fafc}.period-cell{color:#2d3748;font-weight:600}.achieved-cell{color:#38a169;font-weight:600}.achievement-badge{border-radius:12px;display:inline-block;font-size:13px;font-weight:600;padding:4px 12px}.achievement-badge.excellent{background:#c6f6d5;color:#22543d}.achievement-badge.good{background:#bee3f8;color:#2c5282}.achievement-badge.average{background:#feebc8;color:#7c2d12}.achievement-badge.poor{background:#fed7d7;color:#742a2a}.positive{color:#38a169;font-weight:600}.negative{color:#e53e3e;font-weight:600}.trend-cell{text-align:center}.trend-up{color:#38a169;font-weight:600}.trend-down{color:#e53e3e;font-weight:600}.action-buttons{background:#f7fafc;border-radius:8px;display:flex;gap:15px;justify-content:center;margin-top:30px;padding:20px}.btn{padding:12px 24px}.btn-primary:hover{box-shadow:0 4px 12px #3182ce66}@media print{.action-buttons,.chart-actions,.filters-card{display:none}.chart-card{break-inside:avoid;page-break-inside:avoid}}@media (max-width:1400px){.filters-grid,.insights-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.filters-grid,.insights-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.trend-analysis-container{padding:15px}.filters-grid,.insights-grid{grid-template-columns:1fr}.insight-card{padding:15px}.insight-icon{font-size:20px;height:40px;width:40px}.insight-value{font-size:18px}.chart-header{align-items:flex-start;gap:10px}.action-buttons,.chart-header{flex-direction:column}.btn{width:100%}.trend-table{font-size:12px}.trend-table td,.trend-table th{padding:8px}}.calendar-view-container{margin:0 auto;max-width:1400px;padding:20px}.filters-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(3,1fr)}.stats-grid{grid-gap:15px;gap:15px;grid-template-columns:repeat(5,1fr);margin-bottom:20px}.stat-card{border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px;text-align:center}.stat-label{color:#718096;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.stat-value{font-size:24px}.stat-value.achieved{color:#38a169}.stat-value.percentage{color:#3182ce}.calendar-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:20px}.calendar-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.month-display{align-items:center;display:flex;gap:15px}.month-display h3{color:#2d3748;font-size:24px;font-weight:600;margin:0}.nav-button{background:#3182ce;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background .2s}.nav-button:hover{background:#2c5282}.today-button{background:#e2e8f0;border:none;border-radius:6px;color:#2d3748;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background .2s}.today-button:hover{background:#cbd5e0}.calendar-legend{background:#f7fafc;border-radius:6px;display:flex;gap:20px;justify-content:center;margin-bottom:20px;padding:15px}.legend-item{align-items:center;color:#4a5568;display:flex;font-size:13px;gap:8px}.legend-color{border:1px solid #cbd5e0;border-radius:4px;height:20px;width:20px}.calendar-weekdays{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(7,1fr);margin-bottom:5px}.weekday{background:#f7fafc;border-radius:4px;color:#4a5568;font-size:14px;font-weight:600;padding:10px;text-align:center}.calendar-grid{grid-gap:5px;display:grid;gap:5px;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;min-height:120px;padding:8px;position:relative;transition:all .2s}.calendar-day.empty{background:#f7fafc;cursor:default}.calendar-day:not(.empty):hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.calendar-day.today{border:2px solid #3182ce;box-shadow:0 0 0 3px #3182ce1a}.calendar-day.weekend{background:#fef5e7}.calendar-day.holiday{background:#fff5f5}.calendar-day.achievement-excellent{background:linear-gradient(135deg,#c6f6d5,#9ae6b4)}.calendar-day.achievement-good{background:linear-gradient(135deg,#bee3f8,#90cdf4)}.calendar-day.achievement-average{background:linear-gradient(135deg,#feebc8,#fbd38d)}.calendar-day.achievement-poor{background:linear-gradient(135deg,#fed7d7,#fc8181)}.day-number{color:#2d3748;font-size:16px;font-weight:700;margin-bottom:5px}.day-content{font-size:11px;line-height:1.4}.holiday-badge{background:#fc8181;border-radius:3px;color:#fff;display:inline-block;font-size:10px;font-weight:600;margin-bottom:5px;padding:2px 6px}.day-target{color:#4a5568;margin-bottom:3px}.day-achieved{color:#2d3748;font-weight:600;margin-bottom:3px}.day-percentage{background:#fffc;border-radius:4px;color:#2d3748;font-size:14px;font-weight:700;margin-top:5px;padding:4px;text-align:center}.empty-state,.loading-state{color:#718096;font-size:16px;padding:60px 20px;text-align:center}.detail-row{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:12px 0}.detail-row.full-width{align-items:flex-start;flex-direction:column;gap:8px}.detail-label{color:#718096;font-size:14px;font-weight:500}.detail-value{color:#2d3748;font-size:16px;font-weight:600}.detail-value.achieved{color:#38a169}.detail-value.damage{color:#e53e3e}.detail-value.percentage{color:#3182ce}.badge{font-weight:500;padding:4px 12px}.badge-success{background:#c6f6d5;color:#22543d}.badge-warning{background:#fed7d7;color:#742a2a}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(3,1fr)}.filters-grid{grid-template-columns:1fr}}@media (max-width:768px){.calendar-view-container{padding:15px}.stats-grid{grid-template-columns:repeat(2,1fr)}.calendar-header{flex-direction:column;gap:15px}.calendar-legend{flex-wrap:wrap;gap:10px}.calendar-day{min-height:90px;padding:5px}.day-content{font-size:10px}.day-number{font-size:14px}.weekday{font-size:12px;padding:8px}}.customer-feedback-report{background-color:#f5f7fa;margin:0 auto;max-width:1400px;min-height:calc(100vh - 60px);padding:20px}.page-header{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:20px}.page-header h1{align-items:center;color:#2c3e50;display:flex;font-size:28px;font-weight:700;gap:10px;margin:0}.page-header h1:before{content:"📊";font-size:32px}.btn-export,.btn-refresh{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .3s}.btn-export{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff}.btn-export:hover{box-shadow:0 4px 12px #2ecc7166;transform:translateY(-2px)}.btn-refresh{background:linear-gradient(135deg,#95a5a6,#7f8c8d);color:#fff}.btn-refresh:hover{box-shadow:0 4px 12px #95a5a666;transform:translateY(-2px)}.filters-section{align-items:flex-end;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:25px;padding:25px}.filter-group{display:flex;flex:1 1;flex-direction:column;min-width:200px}.filter-group label{color:#333;font-size:14px;font-weight:600;margin-bottom:8px}.filter-group input,.filter-group select{background-color:#fafafa;border:2px solid #ddd;border-radius:6px;font-size:14px;padding:10px 12px;transition:all .3s}.filter-group input:focus,.filter-group select:focus{background-color:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.btn-primary{align-items:center;background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;height:-webkit-fit-content;height:fit-content;padding:10px 30px;transition:all .3s}.btn-primary:hover{box-shadow:0 4px 12px #3498db66;transform:translateY(-2px)}.btn-primary:before{content:"🔍";font-size:16px}.btn-clear{align-items:center;background:linear-gradient(135deg,#e74c3c,#c0392b);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;height:-webkit-fit-content;height:fit-content;padding:10px 20px;transition:all .3s}.btn-clear:hover{box-shadow:0 4px 12px #e74c3c66;transform:translateY(-2px)}.btn-clear:before{content:"🗑️";font-size:16px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden;padding:25px;position:relative;transition:all .3s}.stat-card:before{background:linear-gradient(90deg,#3498db,#2ecc71);content:"";height:4px;left:0;position:absolute;right:0;top:0}.stat-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-5px)}.stat-card.positive:before{background:linear-gradient(90deg,#2ecc71,#27ae60)}.stat-card.negative:before{background:linear-gradient(90deg,#e74c3c,#c0392b)}.stat-card.neutral:before{background:linear-gradient(90deg,#f39c12,#e67e22)}.stat-card h3{color:#666;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.stat-value{align-items:center;color:#2c3e50;display:flex;font-size:36px;font-weight:700;gap:10px}.stat-card.positive .stat-value{color:#27ae60}.stat-card.negative .stat-value{color:#e74c3c}.stat-card.neutral .stat-value{color:#f39c12}.stat-change{align-items:center;color:#666;display:flex;font-size:14px;gap:5px;margin-top:10px}.stat-change.up{color:#27ae60}.stat-change.up:before{content:"▲"}.stat-change.down{color:#e74c3c}.stat-change.down:before{content:"▼"}.table-container{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden}.table-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 25px}.table-header h2{color:#2c3e50;font-size:20px;font-weight:700;margin:0}.table-info{color:#666;font-size:14px}.feedback-table{border-collapse:collapse;font-size:14px;width:100%}.feedback-table thead{background:linear-gradient(135deg,#34495e,#2c3e50);color:#fff}.feedback-table thead th{font-size:13px;font-weight:600;letter-spacing:.5px;padding:15px 20px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.feedback-table thead th:first-child{border-top-left-radius:8px}.feedback-table thead th:last-child{border-top-right-radius:8px}.feedback-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .2s}.feedback-table tbody tr:hover{background-color:#f8f9fa;box-shadow:0 2px 8px #0000000d;transform:scale(1.01)}.feedback-table tbody tr:last-child{border-bottom:none}.feedback-table tbody td{color:#333;padding:15px 20px;vertical-align:middle}.feedback-table tbody tr:nth-child(2n){background-color:#fafbfc}.feedback-table tbody tr:nth-child(2n):hover{background-color:#f8f9fa}.feedback-table .loading{color:#666;font-size:16px;padding:40px;text-align:center}.feedback-table .loading:before{animation:spin 2s linear infinite;content:"⏳";display:block;font-size:24px;margin-bottom:10px}.feedback-table .no-data{color:#999;font-size:16px;padding:60px 40px;text-align:center}.feedback-table .no-data:before{content:"📭";display:block;font-size:48px;margin-bottom:15px;opacity:.5}.rating{align-items:center;border-radius:20px;display:inline-flex;font-size:16px;font-weight:600;gap:5px;padding:6px 12px}.rating-5{background-color:#d4edda;border:2px solid #28a745;color:#155724}.rating-4{background-color:#cce5ff;border:2px solid #007bff;color:#004085}.rating-3{background-color:#fff3cd;border:2px solid #ffc107;color:#856404}.rating-1,.rating-2{background-color:#f8d7da;border:2px solid #dc3545;color:#721c24}.rating-1{font-weight:700}.pagination{align-items:center;border-top:2px solid #f0f0f0;display:flex;gap:10px;justify-content:center;padding:25px}.pagination-button{background:#fff;border:2px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-weight:600;min-width:40px;padding:8px 15px;text-align:center;transition:all .3s}.pagination-button:hover:not(:disabled){background:#3498db;border-color:#3498db;color:#fff;transform:translateY(-2px)}.pagination-button:disabled{cursor:not-allowed;opacity:.4}.pagination-button.active{background:#3498db;border-color:#3498db;color:#fff}.pagination-info{color:#666;font-size:14px;font-weight:600}.empty-state{border-radius:12px;margin:30px 0;padding:80px 40px}.empty-state-icon{font-size:80px;margin-bottom:20px;opacity:.5}.empty-state h3{color:#2c3e50}.empty-state p{color:#666;margin-bottom:25px}.loading-overlay{align-items:center;background:#ffffffe6;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.loading-spinner{animation:spin 1s linear infinite;border:5px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:50px;width:50px}.loading-text{color:#666;font-size:18px;font-weight:600;margin-top:20px}.chart-container{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;margin-bottom:30px;padding:30px}.chart-container h3{color:#2c3e50;font-size:20px;font-weight:700;margin:0 0 20px}.export-menu{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;margin-top:8px;min-width:150px;padding:8px 0;position:absolute;right:0;top:100%;z-index:1000}.export-menu-item{align-items:center;color:#333;cursor:pointer;display:flex;font-weight:500;gap:10px;padding:10px 20px;transition:all .2s}.export-menu-item:hover{background:#f8f9fa;color:#3498db}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.customer-feedback-report{padding:15px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.page-header h1{font-size:24px}.header-actions{justify-content:stretch;width:100%}.header-actions button{flex:1 1}.filters-section{flex-direction:column;padding:20px 15px}.filter-group{min-width:0;min-width:auto;width:100%}.btn-clear,.btn-primary{justify-content:center;width:100%}.stats-grid{grid-template-columns:1fr}.table-container{overflow-x:auto}.feedback-table{min-width:800px}.pagination{flex-wrap:wrap}}@media (max-width:480px){.page-header h1{font-size:20px}.page-header h1:before{font-size:24px}.stat-value{font-size:28px}.stat-card h3{font-size:12px}.feedback-table tbody td,.feedback-table thead th{font-size:13px;padding:10px 12px}.btn-export,.btn-refresh{font-size:13px;padding:8px 15px}}@media print{.customer-feedback-report{background-color:#fff;padding:0}.btn-clear,.btn-export,.btn-primary,.btn-refresh,.filters-section,.header-actions,.pagination{display:none!important}.table-container{border:1px solid #ddd;box-shadow:none}.feedback-table{font-size:12px}.feedback-table thead{background:#333!important;color:#fff!important}.feedback-table tbody tr:hover{background-color:initial!important;transform:none!important}.page-header{border-bottom:2px solid #333;box-shadow:none}.stats-grid{page-break-inside:avoid}.stat-card{border:1px solid #ddd;box-shadow:none}.stat-card:hover{transform:none}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.stat-card{animation:fadeIn .4s ease-out}.stat-card:first-child{animation-delay:0s}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card:nth-child(4){animation-delay:.3s}.feedback-table tbody tr{animation:slideIn .3s ease-out}.text-center{text-align:center}.text-right{text-align:right}.text-success{color:#27ae60}.text-danger{color:#e74c3c}.text-warning{color:#f39c12}.text-muted{color:#666}.badge{border-radius:12px;padding:4px 10px}.badge-info{background-color:#d1ecf1;color:#0c5460}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}a:focus-visible,button:focus-visible{outline:3px solid #3498db;outline-offset:2px}.table-container::-webkit-scrollbar{height:8px}.table-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.table-container::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.table-container::-webkit-scrollbar-thumb:hover{background:#555}.inventory-report{padding:2rem}.inventory-report h2{color:#2c3e50;margin-bottom:1.5rem}.inventory-report table{background:#fff;border-collapse:collapse;box-shadow:0 2px 10px #0000001a;width:100%}.inventory-report td,.inventory-report th{border-bottom:1px solid #e9ecef;padding:1rem;text-align:left}.inventory-report th{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.entry-container{background:#f5f7fa;margin:0 auto;max-width:1400px;min-height:100vh;padding:20px}.entry-header{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:25px}.entry-header h2{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 10px}.entry-header p{color:#7f8c8d;font-size:15px;margin:0}.alert{align-items:center;border-radius:8px;display:flex;gap:10px}.alert-error{background:#fee;border:1px solid #fcc;color:#c33}.alert-success{background:#efe;border:1px solid #cfc;color:#3c3}.alert-warning{background:#ffeaa7;border:1px solid #fdcb6e;color:#d63031}.form-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}fieldset{border:2px solid #ecf0f1;border-radius:8px;margin-bottom:25px;padding:20px}fieldset legend{background:#3498db;border-radius:6px;color:#fff;font-size:16px;font-weight:600;margin-left:10px;padding:8px 20px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#2c3e50}.required{color:#e74c3c;margin-left:4px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:2px solid #e1e8ed;border-radius:8px;font-size:14px;padding:12px 15px;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.form-group input[disabled],.form-group select[disabled]{background:#ecf0f1;cursor:not-allowed;opacity:.6}.readonly-field{background:#f8f9fa!important;color:#2c3e50;cursor:not-allowed;font-weight:600}.readonly-field.highlight{background:#e8f4f8!important;border-color:#3498db!important;color:#3498db!important;font-size:16px}.form-group textarea{font-family:inherit;min-height:80px;resize:vertical}.info-box{background:#e8f4f8;border-left:4px solid #3498db;border-radius:6px;margin:20px 0;padding:15px}.info-box p{color:#2c3e50;font-size:14px;margin:0}.info-box strong{color:#3498db}.form-actions{border-top:2px solid #ecf0f1;justify-content:flex-start}.btn{align-items:center;border-radius:8px;display:inline-flex;font-size:15px;gap:8px;padding:12px 30px}.btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-primary{background:#3498db}.btn-primary:hover:not(:disabled){background:#2980b9}.btn-secondary{background:#95a5a6}.btn-secondary:hover:not(:disabled){background:#7f8c8d}.btn-success{background:#2ecc71}.btn-success:hover:not(:disabled){background:#27ae60}.btn-danger{background:#e74c3c}.btn-danger:hover:not(:disabled){background:#c0392b}.table-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:25px}.table-card h3{border-bottom:2px solid #ecf0f1;color:#2c3e50;font-size:20px;font-weight:600;margin:0 0 20px;padding-bottom:12px}.table-wrapper{border:1px solid #ecf0f1;border-radius:8px;overflow-x:auto}.data-table{background:#fff}.data-table thead th{background:#f8f9fa;border-bottom:2px solid #ecf0f1;color:#2c3e50;font-size:14px;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase;white-space:nowrap}.data-table tbody td{border-bottom:1px solid #ecf0f1;color:#34495e;font-size:14px;padding:15px}.data-table tbody tr:hover{background:#f8f9fa}.data-table tbody tr:last-child td{border-bottom:none}.no-data{color:#95a5a6;font-size:15px;font-style:italic;padding:40px}.loading{animation:spin .8s linear infinite;border:2px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;display:inline-block;height:16px;width:16px}@media (max-width:768px){.entry-container{padding:10px}.entry-header{padding:20px}.entry-header h2{font-size:22px}.form-card{padding:20px}.form-row{grid-template-columns:1fr}fieldset{padding:15px}.form-actions{flex-direction:column}.btn{justify-content:center;width:100%}.table-card{padding:15px}.data-table tbody td,.data-table thead th{font-size:12px;padding:10px}}@media (max-width:480px){.entry-header h2{font-size:20px}.form-group input,.form-group select,.form-group textarea{font-size:13px;padding:10px}fieldset legend{font-size:14px;padding:6px 15px}}.holiday-calendar-container{margin:0 auto;max-width:1400px;padding:20px}.filters-row{align-items:flex-end;display:flex;gap:20px;justify-content:space-between}.filters-left{display:flex;flex:1 1;gap:15px}.filters-right{display:flex;gap:10px}.btn-secondary{background:#e2e8f0;color:#4a5568}.btn-secondary:hover{background:#cbd5e0}.content-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 350px}.main-content{min-width:0}.sidebar{display:flex;flex-direction:column;gap:20px}.loading-state{color:#718096}.month-section{margin-bottom:30px}.month-title{border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:20px;font-weight:600;margin-bottom:15px;padding-bottom:10px}.holidays-list{display:flex;flex-direction:column;gap:12px}.holiday-card{align-items:flex-start;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:20px;padding:20px;transition:all .2s}.holiday-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.holiday-date{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;flex-direction:column;justify-content:center;min-width:80px;padding:12px;text-align:center}.date-day{font-size:32px;font-weight:700;line-height:1}.date-month{font-size:14px;margin-top:4px;text-transform:uppercase}.date-weekday{font-size:12px;margin-top:2px;opacity:.9}.holiday-info{flex:1 1;min-width:0}.holiday-name{color:#2d3748;font-size:18px;font-weight:600;margin:0 0 8px}.holiday-meta{align-items:center;display:flex;gap:10px;margin-bottom:8px}.holiday-type-badge{color:#fff}.holiday-type-badge,.recurring-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px}.recurring-badge{background:#e2e8f0;color:#4a5568}.holiday-description{color:#718096;font-size:14px;line-height:1.5;margin:0}.holiday-actions{display:flex;gap:8px}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .2s;width:36px}.edit-btn{background:#bee3f8}.edit-btn:hover{background:#90cdf4}.delete-btn{background:#fed7d7}.delete-btn:hover{background:#fc8181}.upcoming-list{display:flex;flex-direction:column;gap:12px}.upcoming-item{background:#f7fafc;gap:12px;padding:12px}.upcoming-date,.upcoming-item{align-items:center;border-radius:6px;display:flex}.upcoming-date{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-direction:column;justify-content:center;min-width:50px;padding:8px}.upcoming-day{font-size:20px;font-weight:700;line-height:1}.upcoming-month{font-size:11px;margin-top:2px;text-transform:uppercase}.upcoming-info{flex:1 1;min-width:0}.upcoming-name{color:#2d3748;font-size:14px;font-weight:600;margin-bottom:4px}.upcoming-type{color:#718096;font-size:12px}.stats-card .card-body{padding:15px 20px}.stat-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;justify-content:space-between;padding:10px 0}.stat-item:last-child{border-bottom:none}.stat-label{color:#4a5568;font-size:14px}.stat-value{color:#2d3748;font-size:16px;font-weight:600}.no-data{color:#a0aec0;font-size:14px;padding:20px;text-align:center}.empty-state{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:80px 20px}.empty-icon{font-size:80px}.empty-state h3{font-size:24px}.empty-state p{font-size:16px}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px}.modal-header h3{color:#2d3748;font-size:20px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#a0aec0;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.modal-close:hover{background:#f7fafc;color:#2d3748}.modal-body{padding:20px}.modal-body .form-group{margin-bottom:20px}.checkbox-group{align-items:center;flex-direction:row}.checkbox-label{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:14px;gap:10px}.checkbox-input{cursor:pointer;height:18px;width:18px}.modal-footer{background:#f7fafc;border-top:1px solid #e2e8f0;display:flex;gap:10px;justify-content:flex-end;padding:20px}@media (max-width:1024px){.content-layout{grid-template-columns:1fr}.sidebar{grid-row:2}}@media (max-width:768px){.holiday-calendar-container{padding:15px}.filters-row{align-items:stretch}.filters-left,.filters-row{flex-direction:column}.filters-right,.filters-right .btn{width:100%}.holiday-card{flex-direction:column}.holiday-date{flex-direction:row;justify-content:space-around;width:100%}.date-day{font-size:24px}.holiday-actions{justify-content:flex-end;width:100%}}.set-target-container{margin:0 auto;max-width:1200px;padding:20px}.company-banner{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:10px;box-shadow:0 4px 6px #0000001a;color:#fff;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px 30px}.company-info h2{font-size:24px;font-weight:600;margin:0}.company-code{font-size:14px;margin:5px 0 0;opacity:.9}.banner-title{text-align:right}.banner-title h2{font-size:24px;font-weight:600;margin:0}.subtitle{margin:5px 0 0;opacity:.9}.card{border-radius:10px;box-shadow:0 2px 10px #0000001a;overflow:hidden}.card-body{padding:30px}.form-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.form-group label{color:#333;font-weight:600}.form-control{border-radius:5px;transition:border-color .3s ease}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-control:disabled{background-color:#f5f5f5}.form-control[readonly]{background-color:#f9f9f9;cursor:default}.form-actions{border-top:1px solid #eee;gap:15px;padding-top:20px}.btn{border-radius:5px;font-weight:600;letter-spacing:.5px;padding:10px 25px;text-transform:uppercase;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.btn-primary:disabled{opacity:.6}.btn-secondary{background:#6c757d}.btn-secondary:hover{background:#5a6268;box-shadow:0 4px 12px #6c757d4d;transform:translateY(-2px)}.alert{border-radius:5px;font-weight:500;padding:15px 20px}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}@media (max-width:768px){.company-banner{flex-direction:column;gap:15px}.banner-title,.company-banner{text-align:center}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn{width:100%}}.manage-targets-container{margin:0 auto;max-width:1600px;padding:20px}.page-header h2{color:#1a202c;font-size:28px;font-weight:600;margin-bottom:5px}.subtitle{color:#718096;font-size:14px}.alert{border-radius:6px;font-size:14px;margin-bottom:20px;padding:12px 16px}.alert-success{background:#c6f6d5;border:1px solid #9ae6b4;color:#22543d}.alert-error{background:#fed7d7;border:1px solid #fc8181;color:#742a2a}.card{box-shadow:0 1px 3px #0000001a}.card-header{background:#f7fafc;border-bottom:1px solid #e2e8f0;padding:15px 20px}.card-header h3{color:#2d3748;font-size:18px;font-weight:600;margin:0}.card-body{padding:20px}.filters-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(5,1fr)}.form-group{display:flex;flex-direction:column}.form-group label{color:#4a5568;font-size:14px;font-weight:500;margin-bottom:8px}.form-control{border:1px solid #cbd5e0;border-radius:6px;padding:10px 12px;transition:border-color .2s}.form-control:focus{border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.form-control:disabled{background-color:#f7fafc;cursor:not-allowed}.btn{border-radius:6px;display:inline-block;font-weight:500;text-decoration:none;transition:all .2s}.btn-primary{background:#3182ce}.btn-primary:hover{background:#2c5282}.data-table{border-collapse:collapse;width:100%}.data-table thead{background:#f7fafc}.data-table th{border-bottom:2px solid #e2e8f0;color:#4a5568;font-size:13px;font-weight:600;padding:12px;text-align:left}.data-table td{border-bottom:1px solid #f7fafc;color:#2d3748;font-size:14px;padding:12px}.data-table tr:hover{background:#f7fafc}.data-table .amount{color:#2d3748;font-weight:600}.status-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 12px}.status-active{background:#c6f6d5;color:#22543d}.status-inactive{background:#fed7d7;color:#742a2a}.btn-delete{background:#0000;border:none;border-radius:4px;cursor:pointer;font-size:18px;padding:4px 8px;transition:all .2s}.btn-delete:hover{background:#fed7d7}.loading-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.spinner{border:4px solid #e2e8f0;border-top-color:#3182ce;height:50px;margin-bottom:20px;width:50px}.empty-state{padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state h3{color:#2d3748;font-size:20px;margin-bottom:10px}.empty-state p{color:#718096;margin-bottom:20px}@media (max-width:1200px){.filters-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.manage-targets-container{padding:15px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}.filters-grid{grid-template-columns:1fr}.btn-primary{width:100%}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{min-height:100vh}.card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.card-title{color:#333;font-size:1.25rem;font-weight:600;margin-bottom:15px}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .3s}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.btn-sm{font-size:12px;padding:6px 12px}.form-group{margin-bottom:15px}.form-label{color:#333;display:block;font-weight:500;margin-bottom:5px}.form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-control:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:30px}.table{background:#fff;border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #ddd;padding:12px;text-align:left}.table th{color:#333;font-weight:600}.table th,.table tr:hover{background-color:#f8f9fa}.table-responsive{overflow-x:auto}.badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px}.badge-success{background-color:#d4edda;color:#155724}.badge-warning{background-color:#fff3cd;color:#856404}.badge-danger{background-color:#f8d7da;color:#721c24}.badge-secondary{background-color:#e2e3e5;color:#383d41}.metrics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.metric-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.metric-label{color:#666;font-size:14px;margin-bottom:5px}.metric-value{color:#333;font-size:2rem;font-weight:700}.metric-change{font-size:14px;margin-top:5px}.metric-change.positive{color:#28a745}.metric-change.negative{color:#dc3545}.status-breakdown{display:flex;flex-direction:column;gap:8px;margin-top:10px}.page-header,.status-item{align-items:center;display:flex}.page-header{justify-content:space-between;margin-bottom:30px}.page-header h2{color:#333;font-size:2rem}.header-actions{display:flex;gap:10px}.loading{align-items:center;display:flex;justify-content:center;min-height:200px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#f8d7da;border-radius:4px;color:#721c24;margin:20px 0;padding:20px;text-align:center}@media (max-width:768px){.form-row,.metrics-grid{grid-template-columns:1fr}.table{font-size:12px}.table td,.table th{padding:8px}.page-header{align-items:flex-start;flex-direction:column;gap:15px}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error)}.Toastify__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74c3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74c3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,0,0)}to{opacity:0;transform:translate3d(2000px,0,0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,0,0)}to{opacity:0;transform:translate3d(-2000px,0,0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,20px,0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform:perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.9892944b.css.map*/