*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#f5f7fa,#e8edf2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.sidebar{background:linear-gradient(180deg,#1a472a,#2d5a3d 50%,#3d6b4e);box-shadow:4px 0 20px #00000026;display:flex;flex-direction:column;height:100vh;left:0;overflow:hidden;position:fixed;top:0;transition:width .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:1000}.sidebar.closed{width:80px}.sidebar-header{background:#0000001a;border-bottom:1px solid #ffffff1a;padding:1.5rem;position:relative}.hamburger-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:45px;justify-content:center;padding:.75rem;position:absolute;right:1.5rem;top:1.5rem;transition:all .3s ease;width:45px}.sidebar.closed .hamburger-btn{left:50%;margin:0;position:absolute;right:auto;top:50%;transform:translate(-50%,-50%)}.hamburger-btn:hover{background:#fff3;transform:scale(1.05)}.sidebar.closed .hamburger-btn:hover{transform:translate(-50%,-50%) scale(1.05)}.logo-container{align-items:center;display:flex;gap:1rem;padding-right:3rem}.logo-icon{color:gold;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:2rem}.logo-text{color:#fff;font-size:1.25rem;font-weight:700;text-shadow:0 2px 4px #0000004d;white-space:nowrap}.sidebar.closed .logo-container{opacity:0;overflow:hidden;width:0}.sidebar-nav{flex:1 1;overflow-x:hidden;overflow-y:auto;padding:1rem 0}.sidebar.closed .sidebar-nav{padding:1rem .5rem}.nav-item{align-items:center;border-left:3px solid #0000;color:#fffc;display:flex;gap:1rem;padding:1rem 1.5rem;position:relative;text-decoration:none;transition:all .3s ease;white-space:nowrap}.sidebar.closed .nav-item{justify-content:center;padding:1rem}.nav-item:hover{background:#ffffff1a}.nav-item.active,.nav-item:hover{border-left-color:gold;color:#fff}.nav-item.active{background:#ffd70026;box-shadow:inset 0 0 20px #ffd7001a}.nav-icon{align-items:center;display:flex;font-size:1.25rem;justify-content:center;min-width:1.25rem}.nav-text{font-size:1rem;font-weight:500}.sidebar.closed .nav-text{opacity:0;overflow:hidden;width:0}.sidebar-footer{background:#0000001a;border-top:1px solid #ffffff1a;padding:1rem}.logout-btn{align-items:center;background:#dc262633;border:none;border-radius:8px;color:#ffffffe6;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:1rem;padding:1rem 1.5rem;transition:all .3s ease;width:100%}.sidebar.closed .logout-btn{justify-content:center;padding:1rem}.logout-btn:hover{background:#dc26264d;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.sidebar.closed .logout-btn .nav-text{opacity:0;overflow:hidden;width:0}@media (max-width:768px){.sidebar{transform:translateX(-100%);width:280px}.sidebar.open{transform:translateX(0)}.sidebar.closed{transform:translateX(-100%);width:280px}}.register-container{align-items:center;background:linear-gradient(135deg,#0f2027,#203a43 50%,#2c5364);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.register-container:before{animation:pulse 15s ease-in-out infinite;background:radial-gradient(circle,#ffd7001a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}.register-card{animation:slideUp .6s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #ffd7001a;border-radius:24px;box-shadow:0 25px 50px #0000004d,0 0 100px #ffd7001a;max-height:90vh;max-width:600px;overflow-y:auto;padding:3rem;position:relative;width:100%;z-index:1}.register-header{margin-bottom:2rem;text-align:center}.register-logo{animation:float 3s ease-in-out infinite;display:inline-block;margin-bottom:1.5rem}.register-header h1{color:#1a472a;font-size:2rem;font-weight:700;letter-spacing:-.5px;margin-bottom:.5rem}.register-header p{color:#666;font-size:.95rem;font-weight:500}.register-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.field-hint{color:#666;font-size:.8rem;font-style:italic;font-weight:400}.register-btn{align-items:center;background:linear-gradient(135deg,#1a472a,#2d5a3d);border:none;border-radius:12px;box-shadow:0 4px 12px #1a472a4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:1rem 1.5rem;transition:all .3s ease}.register-btn:hover:not(:disabled){background:linear-gradient(135deg,#2d5a3d,#1a472a);box-shadow:0 8px 20px #1a472a66;transform:translateY(-2px)}.register-btn:active:not(:disabled){transform:translateY(0)}.register-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.register-footer{margin-top:1.5rem;text-align:center}.register-footer p{color:#666;font-size:.95rem;font-weight:500}.register-footer a{color:#1a472a;font-weight:600;text-decoration:none;transition:all .2s ease}.register-footer a:hover{color:#2d5a3d;text-decoration:underline}.info-box{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;margin-top:2rem;padding:1.25rem}.info-box h4{color:#1a472a;font-size:.95rem;margin:0 0 .75rem}.info-box ul{margin:0;padding-left:1.5rem}.info-box li{color:#666;font-size:.85rem;margin:.5rem 0}@media (max-width:640px){.register-container{padding:1rem}.register-card{padding:2rem 1.5rem}.register-header h1{font-size:1.75rem}.form-row{grid-template-columns:1fr}}.dashboard-page{padding:2rem}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:3rem}.stat-card{align-items:center;border-left:4px solid #0000;box-shadow:0 4px 12px #00000014;display:flex;gap:1.5rem;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.stat-card.wells{border-left-color:#2d5a3d}.stat-card.equipment{border-left-color:#d97706}.stat-card.personnel{border-left-color:#0891b2}.stat-card.inventory{border-left-color:#7c3aed}.stat-icon{align-items:center;border-radius:12px;display:flex;font-size:2.5rem;justify-content:center;padding:1rem}.stat-card.wells .stat-icon{background:#2d5a3d1a;color:#2d5a3d}.stat-card.equipment .stat-icon{background:#d977061a;color:#d97706}.stat-card.personnel .stat-icon{background:#0891b21a;color:#0891b2}.stat-card.inventory .stat-icon{background:#7c3aed1a;color:#7c3aed}.stat-content h3{color:#666;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.stat-number{color:#1a472a;font-size:2rem;font-weight:700;margin-bottom:.25rem}.stat-detail{color:#888;font-size:.9rem}.stat-detail .warning{align-items:center;color:#dc2626;display:flex;gap:.5rem}.recent-section{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:2rem}.recent-section h2{color:#1a472a;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.production-table{overflow-x:auto}.production-table table{border-collapse:collapse;width:100%}.production-table th{background:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333}.production-table tr:hover{background:#f8f9fa}.no-data{color:#999;padding:2rem;text-align:center}.error-container,.loading{align-items:center;color:#666;display:flex;font-size:1.25rem;justify-content:center;min-height:400px}.error-container{color:#dc2626}@media (max-width:768px){.dashboard-page{padding:1rem}.stats-grid{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}}.wells-page{padding:2rem}.btn-add{background:linear-gradient(135deg,#2d5a3d,#3d6b4e);box-shadow:0 4px 12px #2d5a3d33}.btn-add:hover{box-shadow:0 6px 16px #2d5a3d4d}.wells-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.well-card{background:#fff;border-left:4px solid #2d5a3d;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;transition:all .3s ease}.well-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.well-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.well-header h3{color:#1a472a;font-size:1.25rem;font-weight:700}.status-badge.shut-in{background:#fee2e2;color:#991b1b}.well-details{margin-bottom:1.5rem}.well-details p{color:#666;font-size:.95rem;margin-bottom:.5rem}.well-details strong{color:#333}.well-actions{display:flex;gap:.75rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2d5a3d;box-shadow:0 0 0 3px #2d5a3d1a}.btn-primary{background:linear-gradient(135deg,#2d5a3d,#3d6b4e)}.btn-primary:hover{box-shadow:0 4px 12px #2d5a3d4d}@media (max-width:768px){.form-grid,.wells-grid{grid-template-columns:1fr}}.equipment-page{padding:2rem}.btn-add{background:linear-gradient(135deg,#d97706,#ea580c);box-shadow:0 4px 12px #d9770633}.btn-add:hover{box-shadow:0 6px 16px #d977064d}.equipment-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.equipment-card{background:#fff;border-left:4px solid #d97706;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;transition:all .3s ease}.equipment-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.equipment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.equipment-header h3{color:#1a472a;font-size:1.25rem;font-weight:700}.status-badge.operational{background:#d1fae5;color:#065f46}.status-badge.maintenance{background:#fed7aa;color:#92400e}.status-badge.retired{background:#fee2e2;color:#991b1b}.equipment-details{margin-bottom:1.5rem}.equipment-details p{color:#666;font-size:.95rem;margin-bottom:.5rem}.equipment-details strong{color:#333}.equipment-actions{display:flex;gap:.75rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#d97706;box-shadow:0 0 0 3px #d977061a}.btn-primary{background:linear-gradient(135deg,#d97706,#ea580c)}.btn-primary:hover{box-shadow:0 4px 12px #d977064d}@media (max-width:768px){.equipment-grid,.form-grid{grid-template-columns:1fr}}.production-page{padding:2rem}.production-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000014;overflow-x:auto}.production-table{border-collapse:collapse;width:100%}.production-table thead{background:linear-gradient(135deg,#2d5a3d,#3d6b4e);color:#fff}.production-table th{font-size:.95rem;font-weight:600;padding:1rem;text-align:left;white-space:nowrap}.production-table td{border-bottom:1px solid #f0f0f0;color:#666;font-size:.95rem;padding:1rem}.production-table tbody tr:hover{background:#f8f9fa}.production-table tbody tr:last-child td{border-bottom:none}@media (max-width:768px){.production-page{padding:1rem}.production-table td,.production-table th{font-size:.85rem;padding:.75rem .5rem}}.personnel-page{padding:2rem}.btn-add{background:linear-gradient(135deg,#0891b2,#0e7490);box-shadow:0 4px 12px #0891b233}.btn-add:hover{box-shadow:0 6px 16px #0891b24d}.personnel-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.personnel-card{background:#fff;border-left:4px solid #0891b2;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;transition:all .3s ease}.personnel-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.personnel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.personnel-header h3{color:#1a472a;font-size:1.25rem;font-weight:700}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.on-leave{background:#fed7aa;color:#92400e}.status-badge.inactive{background:#fee2e2;color:#991b1b}.personnel-details{margin-bottom:1.5rem}.personnel-details p{color:#666;font-size:.95rem;margin-bottom:.5rem}.personnel-details strong{color:#333}.personnel-actions{display:flex;gap:.75rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a}.btn-primary{background:linear-gradient(135deg,#0891b2,#0e7490)}.btn-primary:hover{box-shadow:0 4px 12px #0891b24d}@media (max-width:768px){.form-grid,.personnel-grid{grid-template-columns:1fr}}.inventory-page{padding:2rem}.page-header{flex-wrap:wrap;gap:1rem}.page-header h1{font-weight:700;margin-bottom:.25rem}.btn-add{background:linear-gradient(135deg,#7c3aed,#6d28d9);box-shadow:0 4px 12px #7c3aed33;padding:.875rem 1.5rem}.btn-add:hover{box-shadow:0 6px 16px #7c3aed4d}.inventory-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.inventory-card{background:#fff;border-left:4px solid #7c3aed;border-radius:12px;box-shadow:0 4px 12px #00000014;padding:1.5rem;transition:all .3s ease}.inventory-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.inventory-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.inventory-header h3{color:#1a472a;font-size:1.25rem;font-weight:700}.status-badge{padding:.375rem .875rem}.status-badge.low-stock{background:#fee2e2;color:#991b1b}.inventory-details{margin-bottom:1.5rem}.inventory-details p{color:#666;font-size:.95rem;margin-bottom:.5rem}.inventory-details strong{color:#333}.inventory-actions{display:flex;gap:.75rem}.btn-delete,.btn-edit{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem;transition:all .3s ease}.btn-edit{background:#dbeafe;color:#1e40af}.btn-edit:hover{background:#bfdbfe;transform:translateY(-2px)}.btn-delete{background:#fee2e2;color:#991b1b}.btn-delete:hover{background:#fecaca;transform:translateY(-2px)}.modal-overlay{padding:1rem}.modal-content{box-shadow:0 20px 60px #0000004d;max-height:90vh;width:100%}.modal-header{border-bottom:1px solid #e0e0e0}.modal-header h2{font-weight:700}.btn-close{padding:.5rem;transition:color .3s ease}.btn-close:hover{color:#333}.modal-content form{padding:1.5rem}.form-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.form-group.full-width{grid-column:1/-1}.form-group label{font-size:.95rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a;outline:none}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.btn-primary,.btn-secondary{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:.875rem 1.5rem;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.btn-primary:hover{box-shadow:0 4px 12px #7c3aed4d}.btn-secondary{background:#e0e0e0;color:#666}.btn-secondary:hover{background:#d0d0d0}.loading{align-items:center;color:#666;display:flex;font-size:1.25rem;justify-content:center;min-height:400px}@media (max-width:768px){.form-grid,.inventory-grid{grid-template-columns:1fr}}.reports-page{margin:0 auto;max-width:1400px;padding:2rem}.reports-container{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:300px 1fr;margin-top:2rem}.reports-sidebar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:fit-content;padding:1.5rem}.reports-sidebar h3{color:#1a472a;font-size:1.1rem;margin:0 0 1rem}.report-type-card{align-items:center;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:1rem;margin:.5rem 0;padding:1rem;transition:all .2s ease}.report-type-card:hover{background:#f8f9fa;border-color:#1a472a}.report-type-card.selected{background:linear-gradient(135deg,#1a472a,#2d5a3d);border-color:#1a472a;color:#fff}.report-icon{font-size:1.5rem}.report-type-card h4{font-size:1rem;margin:0 0 .25rem}.report-type-card p{font-size:.85rem;margin:0;opacity:.8}.reports-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem}.report-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem}.report-icon-large{font-size:3rem}.report-header h2{color:#1a472a;margin:0 0 .5rem}.report-header p{color:#666;margin:0}.report-filters{margin-bottom:2rem}.report-filters h3{color:#1a472a;margin-bottom:1rem}.filter-group{margin-bottom:1rem}.filter-group label{color:#666;display:block;font-weight:600;margin-bottom:.5rem}.filter-group input{border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;padding:.75rem;width:100%}.report-actions{display:flex;flex-wrap:wrap;gap:1rem}.btn-primary{background:linear-gradient(135deg,#1a472a,#2d5a3d);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary:hover{box-shadow:0 4px 12px #1a472a4d;transform:translateY(-2px)}.export-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.btn-secondary{background:#fff;border:2px solid #1a472a;border-radius:8px;color:#1a472a;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-secondary:hover{background:#1a472a;color:#fff}.no-selection{color:#999;padding:4rem 2rem;text-align:center}.icon-large{display:block;font-size:4rem;margin-bottom:1rem}.no-selection h3{color:#666;margin:1rem 0 .5rem}@media (max-width:768px){.reports-page{padding:1rem}.reports-container{grid-template-columns:1fr}.export-buttons,.report-actions{flex-direction:column}}.analytics-page{margin:0 auto;max-width:1400px;padding:2rem}.time-range-select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem 1rem}.kpi-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.kpi-card{background:#fff;box-shadow:0 2px 8px #0000001a;gap:1rem;padding:1.5rem}.kpi-card,.kpi-icon{border-radius:12px;display:flex}.kpi-icon{align-items:center;color:#fff;flex-shrink:0;font-size:1.5rem;height:60px;justify-content:center;width:60px}.kpi-content{flex:1 1}.kpi-content h3{color:#666;font-size:.9rem;margin-bottom:.5rem}.kpi-value{color:#1a472a;font-size:2rem;font-weight:700;margin:.25rem 0}.kpi-change{font-size:.85rem;font-weight:600}.kpi-change.positive{color:#16a34a}.kpi-change.negative{color:#dc2626}.kpi-change.neutral{color:#666}.charts-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(500px,1fr))}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.chart-card h3{color:#1a472a;margin:0 0 1.5rem}.chart-placeholder{min-height:300px}.bar-chart{align-items:flex-end;border-bottom:2px solid #e5e7eb;display:flex;height:250px;justify-content:space-around;padding:1rem 0}.bar-group{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.5rem}.bar{border-radius:4px 4px 0 0;transition:all .3s ease;width:30px}.bar:hover{opacity:.8}.bar-label{color:#666;font-size:.85rem;font-weight:600}.chart-legend{display:flex;gap:2rem;justify-content:center;margin-top:1rem}.chart-legend span{align-items:center;color:#666;display:flex;font-size:.9rem;gap:.5rem}.legend-color{border-radius:4px;height:16px;width:16px}.pie-chart{gap:1rem;padding:1rem 0}.pie-chart,.pie-item{display:flex;flex-direction:column}.pie-item{gap:.5rem}.pie-bar{border-radius:6px;height:30px;transition:all .3s ease}.pie-bar:hover{opacity:.8}.pie-item span{color:#666;font-size:.9rem;font-weight:600}@media (max-width:768px){.analytics-page{padding:1rem}.charts-grid{grid-template-columns:1fr}}.notifications-page{margin:0 auto;max-width:1000px;padding:2rem}.notifications-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.notifications-list{display:flex;flex-direction:column;gap:1rem}.notification-card{background:#fff;border-left:4px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;gap:1rem;padding:1.5rem;position:relative;transition:all .3s ease}.notification-card:hover{box-shadow:0 4px 12px #00000026;transform:translateX(4px)}.notification-card.unread{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left-color:#0284c7}.notification-card.read{opacity:.7}.notification-card.alert{border-left-color:#dc2626}.notification-card.warning{border-left-color:#ea580c}.notification-card.info{border-left-color:#0284c7}.notification-card.success{border-left-color:#16a34a}.notification-icon{flex-shrink:0;font-size:2rem}.notification-content{flex:1 1}.notification-content h3{color:#1a472a;font-size:1.1rem;margin:0 0 .5rem}.notification-content p{color:#666;font-size:.95rem;margin:0 0 .5rem}.notification-time{color:#999;font-size:.85rem}.unread-indicator{background:#0284c7;border-radius:50%;box-shadow:0 0 0 3px #0284c733;height:12px;position:absolute;right:1.5rem;top:1.5rem;width:12px}.no-notifications{color:#999;padding:4rem 2rem;text-align:center}@media (max-width:768px){.notifications-page{padding:1rem}.notifications-filters{flex-direction:column}.notification-card{padding:1rem}}.login-box{max-width:480px}.test-credentials{padding:1.25rem}.test-credentials-header{margin-bottom:.75rem}.test-credentials-content{display:flex;flex-direction:column;gap:.5rem}.test-credentials-content p{color:#495057;font-family:Courier New,monospace;font-size:.85rem;margin:0}.test-credentials-content p strong{color:#1a472a;display:inline-block;font-weight:600;min-width:80px}@media (max-width:640px){.login-container{padding:1rem}.login-box{padding:2rem 1.5rem}.login-header h1{font-size:1.75rem}.test-credentials{padding:1rem}}.login-container{align-items:center;background:linear-gradient(135deg,#0f2027,#203a43 50%,#2c5364);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:2rem;position:relative}.login-container:before{animation:pulse 15s ease-in-out infinite;background:radial-gradient(circle,#ffd7001a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes pulse{0%,to{opacity:.3;transform:scale(1) rotate(0deg)}50%{opacity:.5;transform:scale(1.1) rotate(180deg)}}.login-box{animation:slideUp .6s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #ffd7001a;border-radius:24px;box-shadow:0 25px 50px #0000004d,0 0 100px #ffd7001a;max-height:90vh;max-width:520px;overflow-y:auto;padding:3rem;position:relative;width:100%;z-index:1}@keyframes slideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-header{margin-bottom:2.5rem;text-align:center}.login-logo{animation:float 3s ease-in-out infinite;display:inline-block;margin-bottom:1.5rem}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.login-header h1{color:#1a472a;font-size:2rem;font-weight:700;letter-spacing:-.5px;margin-bottom:.5rem}.login-header p{color:#666;font-size:.95rem;font-weight:500}.error-message{align-items:center;animation:shake .5s ease;background:linear-gradient(135deg,#fee,#fdd);border-left:4px solid #c33;border-radius:12px;color:#c33;display:flex;font-size:.9rem;font-weight:500;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.error-message svg{flex-shrink:0}.login-form{gap:1.5rem}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.form-group label{align-items:center;color:#333;display:flex;font-size:.9rem;font-weight:600;gap:.5rem}.form-group label svg{color:#1a472a}.form-group input{background:#fff;border:2px solid #e5e7eb;border-radius:12px;font-size:1rem;padding:.875rem 1rem;transition:all .3s ease}.form-group input:focus{border-color:#1a472a;box-shadow:0 0 0 4px #1a472a1a;outline:none;transform:translateY(-1px)}.form-group input:disabled{background:#f9fafb;cursor:not-allowed;opacity:.6}.login-button{align-items:center;background:linear-gradient(135deg,#1a472a,#2d5a3d);border:none;border-radius:12px;box-shadow:0 4px 12px #1a472a4d;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:1rem 1.5rem;transition:all .3s ease}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#2d5a3d,#1a472a);box-shadow:0 8px 20px #1a472a66;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.login-divider{align-items:center;color:#9ca3af;display:flex;font-size:.875rem;margin:2rem 0 1.5rem;text-align:center}.login-divider:after,.login-divider:before{border-bottom:1px solid #e5e7eb;content:"";flex:1 1}.login-divider span{font-weight:500;padding:0 1rem}.login-footer{margin-top:.5rem;text-align:center}.login-footer p{color:#666;font-size:.95rem;font-weight:500}.login-footer a{color:#1a472a;font-weight:600;text-decoration:none;transition:all .2s ease}.login-footer a:hover{color:#2d5a3d;text-decoration:underline}.test-credentials{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:12px;margin-top:2rem;padding:1.5rem}.test-credentials-header{align-items:center;color:#1a472a;display:flex;gap:.5rem;margin-bottom:1rem}.test-credentials-header strong{font-size:.9rem;font-weight:600}.test-credentials-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr;margin-bottom:1rem}.test-credential-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;transition:all .2s ease}.test-credential-item:hover{border-color:#1a472a;box-shadow:0 2px 8px #1a472a1a;transform:translateY(-1px)}.credential-role{align-items:center;display:flex;font-size:.85rem;font-weight:600;gap:.5rem;margin-bottom:.5rem}.credential-details{display:flex;flex-direction:column;gap:.25rem}.credential-details p{color:#495057;font-family:Courier New,monospace;font-size:.75rem;margin:0}.credential-details p strong{color:#1a472a;display:inline-block;font-weight:600;min-width:70px}.test-credentials-note{color:#666;font-size:.75rem;font-style:italic;margin:0;text-align:center}@media (max-width:640px){.login-container{padding:1rem}.login-box{max-width:100%;padding:2rem 1.5rem}.login-header h1{font-size:1.75rem}.test-credentials{padding:1rem}.test-credentials-grid{gap:.5rem}}.maintenance-page{margin:0 auto;max-width:1400px;padding:2rem}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.page-header h1{color:#1a472a;font-size:2rem;margin-bottom:.5rem}.page-header p{color:#666;font-size:1rem}.btn-add{align-items:center;background:linear-gradient(135deg,#1a472a,#2d5a3d);border:none;border-radius:8px;box-shadow:0 2px 8px #1a472a33;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.btn-add:hover{box-shadow:0 4px 12px #1a472a4d;transform:translateY(-2px)}.maintenance-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border-left:4px solid #1a472a;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.stat-card h3{color:#666;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.stat-value{color:#1a472a;font-size:2rem;font-weight:700;margin:0}.maintenance-table{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.maintenance-table table{border-collapse:collapse;width:100%}.maintenance-table thead{background:linear-gradient(135deg,#1a472a,#2d5a3d);color:#fff}.maintenance-table th{font-size:.9rem;font-weight:600;padding:1rem;text-align:left}.maintenance-table td{border-bottom:1px solid #f0f0f0;padding:1rem}.maintenance-table tbody tr:hover{background:#f8f9fa}.status-badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.status-scheduled{background:#dbeafe;color:#1e40af}.status-in-progress{background:#fef3c7;color:#92400e}.status-completed{background:#d1fae5;color:#065f46}.status-overdue{background:#fee2e2;color:#991b1b}.priority-badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.priority-critical{background:#fee2e2;color:#991b1b}.priority-high{background:#fed7aa;color:#9a3412}.priority-medium{background:#fef3c7;color:#92400e}.priority-low{background:#e0e7ff;color:#3730a3}.btn-view{background:#1a472a;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s ease}.btn-view:hover{background:#2d5a3d;transform:translateY(-1px)}.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 10px 40px #0003;max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:#1a472a;font-size:1.5rem;margin:0}.btn-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.btn-close:hover{background:#f3f4f6;color:#1a472a}.maintenance-details{padding:1.5rem}.detail-row{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:.75rem 0}.detail-row:last-child{border-bottom:none}.detail-row strong{color:#1a472a;font-weight:600}.detail-row span{color:#666;text-align:right}@media (max-width:768px){.maintenance-page{padding:1rem}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}.maintenance-stats{grid-template-columns:1fr}.maintenance-table{overflow-x:auto}.modal-content{max-height:90vh;width:95%}}.safety-page{margin:0 auto;max-width:1400px;padding:2rem}.safety-metrics{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem;text-align:center}.metric-card.highlight{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border:2px solid #10b981}.metric-card h3{color:#666;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.metric-value{color:#1a472a;font-size:2.5rem;font-weight:700;margin:.5rem 0}.safety-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.incidents-table{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.incidents-table table{border-collapse:collapse;width:100%}.incidents-table thead{background:linear-gradient(135deg,#1a472a,#2d5a3d);color:#fff}.incidents-table th{font-size:.9rem;font-weight:600;padding:1rem;text-align:left}.incidents-table td{border-bottom:1px solid #f0f0f0;padding:1rem}.incidents-table tbody tr:hover{background:#f8f9fa}.severity-badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.severity-low{background:#dbeafe;color:#1e40af}.severity-medium{background:#fef3c7;color:#92400e}.severity-high{background:#fed7aa;color:#9a3412}.severity-critical{background:#fee2e2;color:#991b1b}.status-open{background:#dbeafe;color:#1e40af}.status-investigating{background:#fef3c7;color:#92400e}.status-closed{background:#d1fae5;color:#065f46}@media (max-width:768px){.safety-page{padding:1rem}.safety-metrics{grid-template-columns:1fr}.safety-filters{flex-direction:column}.incidents-table{overflow-x:auto}}.compliance-page{margin:0 auto;max-width:1400px;padding:2rem}.compliance-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.regulations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.regulation-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .3s ease}.regulation-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.regulation-header{align-items:flex-start;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.regulation-header h3{color:#1a472a;flex:1 1;font-size:1.1rem;margin:0}.regulation-body{padding:1.5rem}.regulation-body p{color:#666;font-size:.9rem;margin:.5rem 0}.regulation-body strong{color:#1a472a;font-weight:600}.regulation-footer{background:#f8f9fa;border-top:1px solid #e5e7eb;padding:1rem 1.5rem}.status-compliant{background:#d1fae5;color:#065f46}.status-action{background:#fed7aa;color:#9a3412}.status-non-compliant{background:#fee2e2;color:#991b1b}.regulation-details{padding:1.5rem}@media (max-width:768px){.compliance-page{padding:1rem}.regulations-grid{grid-template-columns:1fr}}.contracts-page{margin:0 auto;max-width:1400px;padding:2rem}.contract-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.contract-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.filter-btn{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#666;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.filter-btn:hover{border-color:#1a472a;color:#1a472a}.filter-btn.active{background:linear-gradient(135deg,#1a472a,#2d5a3d);border-color:#1a472a;color:#fff}.contracts-table{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.contracts-table table{border-collapse:collapse;width:100%}.contracts-table thead{background:linear-gradient(135deg,#1a472a,#2d5a3d);color:#fff}.contracts-table th{font-size:.9rem;font-weight:600;padding:1rem;text-align:left}.contracts-table td{border-bottom:1px solid #f0f0f0;padding:1rem}.contracts-table tbody tr:hover{background:#f8f9fa}.status-active{background:#d1fae5;color:#065f46}.status-expiring{background:#fed7aa;color:#9a3412}.status-expired{background:#fee2e2;color:#991b1b}.status-negotiation{background:#dbeafe;color:#1e40af}@media (max-width:768px){.contracts-page{padding:1rem}.contract-filters{flex-direction:column}.contracts-table{overflow-x:auto}}.vendors-page{margin:0 auto;max-width:1400px;padding:2rem}.vendor-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.vendors-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.vendor-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .3s ease}.vendor-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.vendor-header{align-items:flex-start;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.vendor-header h3{color:#1a472a;font-size:1.25rem;margin:0 0 .5rem}.vendor-category{color:#666;font-size:.9rem;margin:0}.vendor-rating{align-items:center;background:#fff;border-bottom:1px solid #f0f0f0;display:flex;gap:.5rem;padding:1rem 1.5rem}.rating-value{color:#1a472a;font-weight:600;margin-left:.5rem}.vendor-body{padding:1.5rem}.vendor-body p{color:#666;font-size:.9rem;margin:.5rem 0}.vendor-body strong{color:#1a472a;font-weight:600}.vendor-footer{background:#f8f9fa;border-top:1px solid #e5e7eb;padding:1rem 1.5rem}.status-approved{background:#d1fae5;color:#065f46}.status-review{background:#fef3c7;color:#92400e}.status-suspended{background:#fee2e2;color:#991b1b}.vendor-details{padding:1.5rem}.detail-section{margin-bottom:2rem}.detail-section:last-child{margin-bottom:0}.detail-section h3{border-bottom:2px solid #e5e7eb;color:#1a472a;font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem}.detail-section p{color:#666;margin:.5rem 0}.detail-section ul{list-style:none;margin:.5rem 0;padding:0}.detail-section li{border-bottom:1px solid #f0f0f0;color:#666;padding:.5rem 0}.detail-section li:last-child{border-bottom:none}@media (max-width:768px){.vendors-page{padding:1rem}.vendors-grid{grid-template-columns:1fr}}.documents-page{margin:0 auto;max-width:1400px;padding:2rem}.documents-layout{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:250px 1fr;margin-top:2rem}.folders-sidebar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:fit-content;padding:1.5rem}.folders-sidebar h3{color:#1a472a;font-size:1.1rem;margin:0 0 1rem}.folder-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;gap:.75rem;margin:.25rem 0;padding:.75rem;transition:all .2s ease}.folder-item:hover{background:#f8f9fa}.folder-item.active{background:linear-gradient(135deg,#1a472a,#2d5a3d);color:#fff}.folder-icon{font-size:1.25rem}.folder-name{flex:1 1;font-weight:600}.folder-count{background:#0000001a;border-radius:12px;font-size:.85rem;padding:.25rem .5rem}.folder-item.active .folder-count{background:#fff3}.documents-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:1.5rem}.documents-toolbar{margin-bottom:1.5rem}.search-input{border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;padding:.75rem 1rem;width:100%}.search-input:focus{border-color:#1a472a;outline:none}.documents-table{overflow-x:auto}.documents-table table{border-collapse:collapse;width:100%}.documents-table thead{background:linear-gradient(135deg,#1a472a,#2d5a3d);color:#fff}.documents-table th{font-size:.9rem;font-weight:600;padding:1rem;text-align:left}.documents-table td{border-bottom:1px solid #f0f0f0;padding:1rem}.documents-table tbody tr:hover{background:#f8f9fa}.document-name{align-items:center;display:flex;gap:.5rem}.btn-action,.file-icon{font-size:1.25rem}.btn-action{background:none;border:none;cursor:pointer;padding:.25rem .5rem;transition:all .2s ease}.btn-action:hover{transform:scale(1.2)}.no-documents{color:#999;padding:4rem 2rem;text-align:center}@media (max-width:768px){.documents-page{padding:1rem}.documents-layout{grid-template-columns:1fr}.documents-table{overflow-x:auto}}.training-page{margin:0 auto;max-width:1400px;padding:2rem}.training-stats{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.training-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.training-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:all .3s ease}.training-card:hover{box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.training-header{align-items:flex-start;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.training-header h3{color:#1a472a;font-size:1.25rem;margin:0 0 .5rem}.employee-position{color:#666;font-size:.9rem;margin:.25rem 0}.employee-id{color:#999;font-size:.85rem;margin:.25rem 0}.training-body{padding:1.5rem}.training-body p{color:#666;font-size:.9rem;margin:.5rem 0}.training-body strong{color:#1a472a;font-weight:600}.certifications-list{list-style:none;margin:.5rem 0;padding:0}.certifications-list li{background:#f8f9fa;border-left:3px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0;padding:.75rem}.cert-badge{border-radius:20px;display:inline-block;font-size:.75rem;font-weight:600;margin-right:.5rem;padding:.25rem .75rem}.cert-valid{background:#d1fae5;color:#065f46}.cert-expiring{background:#fef3c7;color:#92400e}.cert-expired{background:#fee2e2;color:#991b1b}.cert-expiry{color:#999;font-size:.8rem;margin-left:.5rem}.training-footer{background:#f8f9fa;border-top:1px solid #e5e7eb;padding:1rem 1.5rem}.compliance-badge{border-radius:20px;display:inline-block;font-size:.85rem;font-weight:600;padding:.25rem .75rem}.compliance-ok{background:#d1fae5;color:#065f46}.compliance-warning{background:#fef3c7;color:#92400e}.compliance-error{background:#fee2e2;color:#991b1b}.training-details{padding:1.5rem}.cert-table{border-collapse:collapse;margin-top:1rem;width:100%}.cert-table th{background:#f8f9fa;border-bottom:2px solid #e5e7eb;color:#1a472a;font-weight:600;padding:.75rem;text-align:left}.cert-table td{border-bottom:1px solid #f0f0f0;padding:.75rem}@media (max-width:768px){.training-page{padding:1rem}.training-grid{grid-template-columns:1fr}}.app-container{background:linear-gradient(135deg,#f5f7fa,#e8edf2);display:flex;min-height:100vh}.main-content{flex:1 1;margin-left:280px;min-height:100vh;padding:2rem;transition:margin-left .3s cubic-bezier(.4,0,.2,1)}.main-content.sidebar-closed{margin-left:80px}@media (max-width:768px){.main-content{margin-left:0;padding:1rem}.main-content.sidebar-closed{margin-left:0}}