.user-marker{width:32px;height:32px;background:#f97316;border:3px solid #ffffff;border-radius:50%;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;justify-content:center;position:relative}.my-position-marker{width:24px;height:24px;background:#ff6b35;border:3px solid white;border-radius:50%;box-shadow:0 0 #ff6b3566;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #ff6b35b3}70%{box-shadow:0 0 0 15px #ff6b3500}to{box-shadow:0 0 #ff6b3500}}.leaflet-container{font-family:system-ui,-apple-system,sans-serif}@media (max-width: 768px){.leaflet-popup-content-wrapper{max-width:250px!important;font-size:14px!important}}.planning-service-page{padding:1.5rem;max-width:1600px;margin:0 auto;background:linear-gradient(135deg,#f5f7fa,#e8eef5);min-height:100vh}.planning-header{margin-bottom:2rem;animation:fadeInDown .5s ease-out}.planning-title{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:#1e293b;display:flex;align-items:center;gap:.75rem}.planning-subtitle{color:#64748b;font-size:1rem}.alerts-section{margin-bottom:2rem;animation:fadeIn .5s ease-out}.alerts-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#dc2626;display:flex;align-items:center;gap:.5rem}.alerts-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.alert-card{padding:1.25rem;border-radius:12px;box-shadow:0 4px 6px #00000012;transition:all .3s ease;animation:slideInUp .5s ease-out}.alert-card:hover{transform:translateY(-2px);box-shadow:0 8px 12px #0000001a}.alert-card.critical{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #ef4444}.alert-card.warning{background:linear-gradient(135deg,#fed7aa,#fdba74);border:2px solid #f59e0b}.alert-header{font-weight:700;margin-bottom:.5rem;font-size:1.1rem;color:#1e293b}.alert-subtext{font-size:.875rem;color:#64748b;margin-bottom:.75rem}.alert-message{margin-top:.75rem;font-weight:600;color:#1e293b}.alert-stats{font-size:.875rem;margin-top:.5rem;color:#475569;display:flex;flex-wrap:wrap;gap:.5rem}.alert-stat-value{font-weight:700;color:#dc2626}.legend-section{margin-bottom:1.5rem;display:flex;gap:2rem;flex-wrap:wrap;padding:1rem;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000d}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#475569;font-weight:500}.legend-color{width:24px;height:24px;border-radius:6px;box-shadow:0 2px 4px #0000001a}.calendar-container{height:700px;background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px #00000012;animation:fadeIn .5s ease-out .2s both}.rbc-calendar{font-family:inherit}.rbc-header{padding:1rem .5rem;font-weight:700;font-size:.95rem;color:#1e293b;background:#f8fafc;border-bottom:2px solid #e2e8f0}.rbc-today{background-color:#dbeafe!important}.rbc-event{padding:4px 6px;border-radius:6px;font-size:.85rem;font-weight:600;box-shadow:0 2px 4px #0000001a;transition:transform .2s}.rbc-event:hover{transform:scale(1.05);cursor:pointer}.rbc-toolbar{padding:1rem 0;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.rbc-toolbar button{padding:.5rem 1rem;border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:8px;font-weight:600;transition:all .2s}.rbc-toolbar button:hover{background:#f8fafc;border-color:#3b82f6;color:#3b82f6}.rbc-toolbar button.rbc-active{background:#3b82f6;color:#fff;border-color:#3b82f6}.modal-content{background:#fff;border-radius:16px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px #00000026;animation:slideInUp .3s ease-out}.modal-machine-name{font-weight:700;font-size:1.25rem;margin-bottom:.5rem;color:#1e293b}.modal-machine-type{color:#64748b;font-size:.95rem;margin-bottom:1.5rem}.modal-details{display:grid;gap:.75rem;margin-bottom:1.5rem}.modal-detail-row{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0}.modal-detail-label{font-weight:600;color:#475569;font-size:.95rem}.modal-detail-value{font-weight:700;color:#1e293b;font-size:1rem}.modal-close-btn{width:100%;padding:.875rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:700;font-size:1rem;transition:all .3s;box-shadow:0 4px 6px #3b82f64d}.modal-close-btn:hover{transform:translateY(-2px);box-shadow:0 6px 12px #3b82f666}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem;animation:fadeIn .3s ease-out}.status-message{padding:4rem 2rem;text-align:center;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000000d;margin:2rem auto;max-width:500px}.status-message h2{font-size:1.75rem;color:#1e293b;margin-bottom:.75rem}.status-message p{color:#64748b;font-size:1.1rem}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.planning-service-page{padding:1rem}.planning-title{font-size:1.5rem}.planning-subtitle{font-size:.9rem}.alerts-grid{grid-template-columns:1fr}.alert-card{padding:1rem}.alert-stats{flex-direction:column;gap:.25rem}.legend-section{gap:1rem}.legend-item{font-size:.8rem}.legend-color{width:20px;height:20px}.calendar-container{height:500px;padding:.75rem;border-radius:12px}.rbc-toolbar{flex-direction:column;align-items:stretch}.rbc-toolbar button{padding:.75rem;font-size:.9rem}.rbc-header{padding:.75rem .25rem;font-size:.75rem}.rbc-event{font-size:.7rem;padding:2px 4px}.modal-content{padding:1.5rem}.modal-title{font-size:1.5rem}.modal-machine-name{font-size:1.1rem}.modal-detail-row{flex-direction:column;align-items:flex-start;gap:.25rem}}.planning-modal{max-width:600px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:2px solid #e2e8f0;padding-bottom:1rem}.modal-close-icon{background:none;border:none;cursor:pointer;padding:.5rem;color:#64748b;transition:all .2s;border-radius:8px}.modal-close-icon:hover{background:#f1f5f9;color:#1e293b}.modal-machine-info{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:1.5rem;border-radius:12px;margin-bottom:1.5rem;border:2px solid #3b82f6}.modal-machine-info h3{font-size:1.5rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.modal-machine-info p{color:#475569;font-size:1rem}.modal-form{display:grid;gap:1.5rem;margin-bottom:2rem}.form-group{display:grid;gap:.5rem}.form-label{font-weight:600;color:#1e293b;font-size:1rem;display:flex;align-items:center;gap:.5rem}.form-input,.form-textarea{width:100%;padding:.875rem;border:2px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:1rem;transition:all .2s;background:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-hint{font-size:.875rem;color:#64748b;font-style:italic}.modal-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-actions-grid button{padding:1rem;border:none;border-radius:10px;cursor:pointer;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .3s;box-shadow:0 4px 6px #0000001a}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;grid-column:1 / -1}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #10b98166}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #3b82f666}.btn-secondary{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#475569}.btn-secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #64748b33}.modal-actions-grid button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.modal-machine-info{padding:1rem}.modal-machine-info h3{font-size:1.25rem}.modal-actions-grid{grid-template-columns:1fr}.btn-success{grid-column:1}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1e293b;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-xs: .75rem;--font-sm: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--font-xl: 1.25rem;--font-2xl: 1.5rem;--font-3xl: 2rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}body{margin:0;min-width:320px;min-height:100vh;min-height:-webkit-fill-available;color:#1e293b;background-color:#f8fafc;overflow-x:hidden;overflow-y:auto!important;position:relative}#root{width:100%;min-height:100vh;min-height:-webkit-fill-available}.navbar{background:#0f172a;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;min-height:64px;position:sticky;top:0;z-index:1000;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;border-bottom:1px solid rgba(255,255,255,.05)}.navbar-brand{display:flex;align-items:center;justify-content:space-between;width:100%}.navbar-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;color:#fff;font-weight:700;font-size:1.25rem}.navbar-logo-icon{width:32px;height:32px;object-fit:contain;display:block;flex-shrink:0}.navbar-logo-icon-fallback{font-size:1.5rem;display:inline-block}.navbar-logo-wrapper{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1;position:relative}.navbar-logo-text{display:inline-block;background:linear-gradient(135deg,#60a5fa,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;position:relative}.erp-recyclage{display:block;font-size:.7em;font-weight:400;white-space:nowrap;margin-top:.1em;line-height:1;background:linear-gradient(135deg,#60a5fa 2%,#a78bfa 98%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;opacity:.85;margin-left:1em}.navbar-hamburger{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:#ffffff1a;border-radius:8px;color:#fff;cursor:pointer;transition:background .2s}.navbar-hamburger:hover{background:#fff3}.navbar-menu{display:none;position:fixed;top:0;right:-100%;width:85%;max-width:320px;height:100vh;background:#1e293b;flex-direction:column;transition:right .3s ease;z-index:1001;overflow-y:auto;padding-top:60px}.navbar-menu-open{display:flex;right:0}.navbar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.navbar-links{display:flex;flex-direction:column;padding:1rem 0}.navbar-link{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;color:#fff;text-decoration:none;font-size:.95rem;font-weight:500;transition:background .2s;border:none;background:transparent;width:100%;text-align:left;cursor:pointer}.navbar-link:hover,.navbar-link:active{background:#ffffff1a}.navbar-dropdown{position:relative}.navbar-dropdown-toggle{justify-content:space-between}.navbar-chevron{transition:transform .2s}.navbar-chevron-open{transform:rotate(180deg)}.navbar-dropdown-menu{display:none;background:#0003;overflow:hidden}.navbar-dropdown-menu-open{display:block}.navbar-dropdown-item{display:block;padding:.75rem 1.25rem .75rem 2.5rem;color:#cbd5e1;text-decoration:none;font-size:.9rem;transition:background .2s,color .2s}.navbar-dropdown-divider{height:1px;background:#ffffff1a;margin:.5rem 1rem}.navbar-dropdown-item:hover{background:#ffffff0d;color:#fff}.navbar-user{border-top:1px solid rgba(255,255,255,.1);padding:1rem;margin-top:auto}.navbar-user-info{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffff0d;border-radius:8px;margin-bottom:.75rem;color:#fff}.navbar-username{font-weight:600;font-size:.95rem}.navbar-role{font-size:.75rem;color:#94a3b8;background:#ffffff1a;padding:.2rem .5rem;border-radius:4px;margin-left:auto}.navbar-settings{margin-bottom:.5rem}.navbar-logout{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.navbar-logout:hover{background:#b91c1c}@media (min-width: 1024px){.navbar{padding:0 1.5rem;min-height:56px;box-shadow:0 1px #ffffff0d}.navbar-brand{width:auto;flex-shrink:0}.navbar-logo{font-size:1.25rem;gap:.625rem}.navbar-logo-icon{width:28px;height:28px}.navbar-logo-icon-fallback{font-size:1.25rem}.navbar-hamburger{display:none}.navbar-menu{display:flex;position:static;width:auto;max-width:none;height:auto;background:transparent;flex-direction:row;align-items:center;justify-content:space-between;padding:0;overflow:visible;transition:none;gap:1.5rem;flex:1}.navbar-links{flex-direction:row;padding:0;flex:1;gap:0;align-items:center;margin-left:1.5rem;justify-content:flex-start}.navbar-link{padding:.5rem .875rem;font-size:.875rem;border-radius:6px;white-space:nowrap;transition:all .15s ease;font-weight:500;letter-spacing:-.01em;color:#ffffffd9}.navbar-link:hover{background:#ffffff14;color:#fff}.navbar-link:active{background:#ffffff1f}.navbar-dropdown,.navbar-dropdown-toggle{position:relative}.navbar-dropdown-menu{position:absolute;top:calc(100% + .25rem);left:0;min-width:200px;background:#1e293b;border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 4px 16px #0000004d;padding:.375rem;margin-top:0;opacity:0;visibility:hidden;transform:translateY(-4px);transition:all .15s cubic-bezier(.4,0,.2,1);z-index:1000}.navbar-dropdown:hover .navbar-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.navbar-dropdown-item{padding:.625rem .875rem;border-radius:6px;margin:.0625rem 0;font-size:.875rem;transition:all .12s ease;color:#fffc}.navbar-dropdown-item:hover{background:#ffffff1a;color:#fff}.navbar-user{display:flex;align-items:center;gap:.5rem;border:none;padding:0;margin-top:0;margin-left:.75rem;flex-shrink:0}.navbar-user-info{margin:0;padding:.375rem .75rem;background:transparent;border-radius:6px;border:none;transition:all .15s ease}.navbar-user-info:hover{background:#ffffff14}.navbar-username{font-size:.875rem;font-weight:500;color:#ffffffe6}.navbar-role{font-size:.6875rem;padding:.1875rem .5rem;border-radius:4px;background:#ffffff1a;color:#ffffffb3}.navbar-settings span,.navbar-logout span{display:inline;font-size:.8125rem;margin-left:.375rem}.navbar-settings,.navbar-logout{padding:.5rem .75rem;min-width:auto;height:auto;justify-content:flex-start;border-radius:6px;transition:all .15s ease;white-space:nowrap}.navbar-settings{background:transparent;border:none;color:#fffc}.navbar-settings:hover{background:#ffffff14;color:#fff}.navbar-logout{background:transparent;border:none;color:#ef4444cc}.navbar-logout:hover{background:#ef444426;color:#ef4444}.navbar-chevron{margin-left:.375rem;opacity:.6;transition:all .15s ease;width:14px;height:14px}.navbar-dropdown:hover .navbar-chevron{opacity:1;transform:rotate(180deg)}}@media (min-width: 1024px) and (max-width: 1440px){.navbar{transform:scale(.85);transform-origin:left center;width:117.65%}@supports (zoom: 1){.navbar{zoom:.85;transform:none;width:100%}}}@media (min-width: 1441px) and (max-width: 1920px){.navbar{transform:scale(.95);transform-origin:left center;width:105.26%}@supports (zoom: 1){.navbar{zoom:.95;transform:none;width:100%}}}@media (min-width: 1921px){.navbar{zoom:1;transform:none;width:100%}}@media (min-width: 768px) and (max-width: 1023px){.navbar-menu{max-width:350px}}h1,h2,h3,h4,h5,h6{color:#1e293b}p{color:#475569}.page-header h1,.page-header h2,.page-header p,.employees-header h1,.employees-header h2,.employees-header p,.destruction-card__header h1,.destruction-card__header h2,.destruction-card__header p{color:#fff!important}nav a:hover{background-color:#ffffff1a}nav a:active{background-color:#fff3}.declassement-page{--primary-color: #3b82f6;--primary-hover: #2563eb;--secondary-color: #64748b;--secondary-hover: #475569;--success-color: #10b981;--danger-color: #ef4444;--warning-color: #f59e0b;--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-hover: #f1f5f9;--border-color: #e2e8f0;--text-primary: #1e293b;--text-secondary: #64748b;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}@media (prefers-color-scheme: dark){.declassement-page{--bg-primary: #1e293b;--bg-secondary: #0f172a;--bg-hover: #334155;--border-color: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8}}.declassement-page{min-height:100vh;background:var(--bg-secondary);padding:1.5rem;max-width:1400px;margin:0 auto}.page-header{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px #00000026;border:none;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.page-header h1{color:#fff;font-size:2rem;font-weight:700;margin:0;letter-spacing:-.025em}.page-header p{color:#cbd5e1;font-size:.95rem;margin:.5rem 0 0}.page-header .actions{display:flex;gap:.75rem;flex-wrap:wrap}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f659;transform:translateY(-2px)}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover:not(:disabled){background:#fff3;border-color:#fff6;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 4px 12px #ef444459;transform:translateY(-2px)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.input-with-icon{position:relative}.input-with-icon input{padding-right:3rem}.input-with-icon .settings-password-toggle,.input-with-icon button[type=button]{position:absolute;right:.5rem;top:50%;transform:translateY(-50%)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mobile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}@media (min-width: 768px){.mobile-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.mobile-grid{grid-template-columns:repeat(3,1fr)}}.input-with-suggestions{position:relative}.suggestions{position:absolute;top:100%;left:0;right:0;z-index:10;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-top:.5rem;max-height:200px;overflow-y:auto;box-shadow:var(--shadow-lg)}.suggestions button{display:block;width:100%;padding:.75rem 1rem;text-align:left;border:none;background:transparent;color:var(--text-primary);cursor:pointer;transition:background-color .15s ease;font-size:.9rem}.suggestions button:hover{background:var(--bg-hover)}.suggestions button:not(:last-child){border-bottom:1px solid var(--border-color)}.section-container,.card.section-card{background:#fff;border-radius:12px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e2e8f0;transition:all .2s ease}.section-container:hover,.card.section-card:hover{box-shadow:0 4px 12px #0000001f;border-color:#cbd5e1}.section-header,.card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e2e8f0}.section-title,.card-header h3{font-size:1.35rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;display:flex;align-items:center;gap:.75rem}.section-subtitle,.card-header p{font-size:.9rem;color:#64748b;margin:0;font-weight:400}.input-container,.form-group{display:flex;flex-direction:column;gap:.5rem}.input-container label,.form-group label{font-size:.875rem;font-weight:500;color:#475569;margin:0;letter-spacing:-.01em}.input-container input,.input-container textarea,.input-container select,.form-group input,.form-group textarea,.form-group select{padding:.75rem 1rem;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.9375rem;background:#fff;color:#1e293b;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.input-container input::placeholder,.input-container textarea::placeholder,.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8;opacity:1}.input-container input:focus,.input-container textarea:focus,.input-container select:focus,.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.input-container select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23475569' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;padding-right:2.5rem;cursor:pointer}.input-container input:hover,.input-container textarea:hover,.input-container select:hover,.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:#cbd5e1;background:#f8fafc}.input-container input::placeholder,.form-group input::placeholder{color:#94a3b8}@media (max-width: 768px){.declassement-page{padding:1rem}.page-header{padding:1.25rem}.page-header h1{font-size:1.5rem}.section-container{padding:1.25rem}.mobile-grid{grid-template-columns:1fr}.btn-primary,.btn-secondary{width:100%;justify-content:center}.page-header .actions{width:100%}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-container{animation:fadeIn .3s ease-out}.photo-list{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.photo-chip{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:.625rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;box-shadow:0 2px 6px #3b82f640;transition:all .2s ease}.photo-chip:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 10px #3b82f659;transform:translateY(-2px)}.chips-row{display:flex;flex-wrap:wrap;gap:.625rem;margin-top:.75rem}.chip{display:inline-flex;align-items:center;gap:.375rem;background:#f8fafc;color:#1e293b;padding:.5rem .875rem;border-radius:6px;font-size:.85rem;font-weight:500;border:1px solid #e2e8f0;transition:all .2s ease}.chip:hover{background:#f1f5f9;border-color:#cbd5e1;transform:scale(1.02)}.chip.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981;box-shadow:0 2px 6px #10b98140}.file-drop{border:2px dashed #cbd5e1;border-radius:12px;padding:2rem;text-align:center;background:#f8fafc;transition:all .2s ease;cursor:pointer}.file-drop:hover{border-color:#3b82f6;background:#3b82f60d}.file-drop svg{color:#64748b;margin-bottom:.5rem}.file-drop:hover svg{color:#3b82f6}.checkbox-row{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease}.checkbox-row:hover{background:#f1f5f9;border-color:#cbd5e1}.checkbox-row input[type=checkbox]{width:1.25rem;height:1.25rem;cursor:pointer;accent-color:#3b82f6}.sticky-actions .actions.sticky-mobile{display:flex;gap:.75rem;flex-wrap:wrap}.actions.stack-mobile{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #e2e8f0}.hint{font-size:.875rem;color:#64748b;font-style:italic;margin-top:.5rem;padding:.75rem 1rem;background:#f8fafc;border-left:3px solid #3b82f6;border-radius:4px}.form-group.full{grid-column:1 / -1}.card-body{padding:0}@media (max-width: 640px){.actions.sticky-mobile,.actions.stack-mobile{flex-direction:column;width:100%}.actions.sticky-mobile .btn-primary,.actions.sticky-mobile .btn-secondary,.actions.stack-mobile .btn-primary,.actions.stack-mobile .btn-secondary{width:100%;justify-content:center}.chip{flex:0 0 auto}}.photo-chip{display:inline-flex;align-items:center;gap:.5rem;background:var(--primary-color);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;font-weight:500;box-shadow:var(--shadow-sm);transition:all .2s ease}.expeditions-page,.inventory-page{min-height:100vh;background:var(--bg-secondary, #f8fafc);padding:1.5rem;max-width:1800px;margin:0 auto}.page-actions-header{background:var(--bg-primary, white);border-radius:12px;padding:1.5rem 2rem;margin-bottom:1.5rem;box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));border:1px solid var(--border-color, #e2e8f0);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.page-actions-header h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--text-primary, #1e293b)}.page-actions-header .action-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.content-grid{display:grid;gap:1.5rem}@media (min-width: 1024px){.content-grid{grid-template-columns:2fr 1fr}}.data-card{background:var(--bg-primary, white);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));border:1px solid var(--border-color, #e2e8f0);transition:box-shadow .2s ease}.data-card:hover{box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1))}.data-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color, #e2e8f0)}.data-card-title{font-size:1.25rem;font-weight:700;color:var(--primary-color, #3b82f6);margin:0}.data-table{width:100%;border-collapse:collapse;margin-top:1rem}.data-table thead{background:linear-gradient(135deg,var(--primary-color, #3b82f6) 0%,#2563eb 100%)}.data-table th{padding:.75rem;text-align:left;font-size:.875rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em}.data-table tbody tr{border-bottom:1px solid var(--border-color, #e2e8f0);transition:background-color .15s ease}.data-table tbody tr:hover{background-color:var(--bg-hover, #f1f5f9)}.data-table td{padding:.75rem;font-size:.9rem;color:var(--text-primary, #1e293b)}.data-table input[type=text],.data-table input[type=number]{width:100%;padding:.5rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.875rem;transition:all .2s ease}.data-table input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.tabs-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--border-color, #e2e8f0);overflow-x:auto}.tab-button{padding:.75rem 1.5rem;border:none;background:transparent;color:var(--text-secondary, #64748b);font-size:.95rem;font-weight:600;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;white-space:nowrap}.tab-button:hover{color:var(--primary-color, #3b82f6);background:var(--bg-hover, #f1f5f9)}.tab-button.active{color:var(--primary-color, #3b82f6);border-bottom-color:var(--primary-color, #3b82f6)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-primary, white);border-radius:10px;padding:1.25rem;border:1px solid var(--border-color, #e2e8f0);transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.stat-label{font-size:.8rem;color:var(--text-secondary, #64748b);font-weight:500;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.75rem;font-weight:700;color:var(--primary-color, #3b82f6)}@media (max-width: 768px){.expeditions-page,.inventory-page,.page-actions-header{padding:1rem}.page-actions-header h1{font-size:1.5rem}.data-card{padding:1rem}.tabs-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}}.inventory-table-desktop{display:block}.inventory-mobile-cards{display:none}@media (max-width: 768px){.inventory-table-desktop{display:none}.inventory-mobile-cards{display:block;padding:1rem 0}}.inventory-mobile-card{background:#fff;border-radius:10px;padding:1rem;margin-bottom:1rem;border:1px solid var(--border-color, #e2e8f0);box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.inventory-mobile-card-title{font-size:1rem;font-weight:700;color:var(--primary-color, #3b82f6);margin:0 0 .75rem}.inventory-mobile-card-fields{display:flex;flex-direction:column;gap:.75rem}.inventory-mobile-field{display:flex;flex-direction:column;gap:.25rem}.inventory-mobile-field label{font-size:.875rem;font-weight:600;color:var(--text-secondary, #64748b)}.inventory-mobile-field input{padding:.5rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.95rem}.inventory-alert-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:10px;padding:1rem;margin-bottom:.75rem;border:1px solid #fbbf24}.inventory-alert-card__label{font-weight:700;color:#92400e;font-size:.95rem;display:block;margin-bottom:.5rem}.inventory-alert-card__values{display:flex;gap:1rem;font-size:.875rem;color:#78350f;margin-bottom:.5rem}.inventory-alert-card p{margin:0;font-weight:700;font-size:1.1rem}.inventory-alert-card p.up{color:#16a34a}.inventory-alert-card p.down{color:#dc2626}.inventory-history{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border-color, #e2e8f0)}.inventory-history__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color, #e2e8f0)}.inventory-history__header strong{font-size:1.1rem;color:var(--text-primary, #1e293b)}.inventory-history__header span{font-size:.875rem;color:var(--text-secondary, #64748b);background:#f1f5f9;padding:.25rem .75rem;border-radius:12px}.inventory-history__list{display:flex;flex-direction:column;gap:.5rem}.inventory-history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease}.inventory-history-item:hover{background:#f1f5f9;transform:translate(4px)}.inventory-history-item__label{font-weight:600;color:var(--text-primary, #1e293b);display:block;margin-bottom:.25rem}.inventory-history-item small{font-size:.8rem;color:var(--text-secondary, #64748b)}.destruction-card__header{background:linear-gradient(135deg,#1e293b,#334155);padding:2rem;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;flex-wrap:wrap;box-shadow:0 4px 6px -1px #0000001a}.destruction-card__header .eyebrow{text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.05em;color:#94a3b8;margin-bottom:.5rem}.destruction-card__header h1{color:#fff;font-size:2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.025em}.destruction-card__header>div:first-child p{color:#cbd5e1;font-size:.95rem;margin:0}.page-actions{display:flex;align-items:flex-end;gap:1rem;flex-wrap:wrap}.destruction-field{display:flex;flex-direction:column;gap:.375rem}.destruction-field span{font-size:.875rem;font-weight:500;color:#cbd5e1}.destruction-field input[type=date]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.625rem 1rem;border-radius:8px;font-size:.95rem;transition:all .2s}.destruction-field input[type=date]:hover{background:#ffffff26;border-color:#ffffff4d}.destruction-field input[type=date]:focus{outline:none;background:#fff3;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-outline{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-outline:hover:not(:disabled){background:#fff3;border-color:#fff6;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn svg{width:18px;height:18px}.animate-spin{animation:spin 1s linear infinite}.destruction-card__body{background:var(--bg-primary, #fff);padding:2rem;border-radius:0 0 12px 12px}.destruction-section{margin-bottom:2.5rem}.destruction-section:last-child{margin-bottom:0}.destruction-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.destruction-section__header h2{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.destruction-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.destruction-input{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.95rem;color:#1e293b;background:#fff;transition:all .2s ease}.destruction-input:hover{border-color:#cbd5e1;background:#f8fafc}.destruction-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.destruction-input::placeholder{color:#94a3b8}.destruction-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #3b82f640}.destruction-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f659}.destruction-btn:active{transform:translateY(0)}.destruction-btn.secondary{background:linear-gradient(135deg,#64748b,#475569);box-shadow:0 2px 8px #64748b40}.destruction-btn.secondary:hover{background:linear-gradient(135deg,#475569,#334155);box-shadow:0 4px 12px #64748b59}.destruction-empty{padding:3rem 2rem;text-align:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;color:#64748b;font-size:.95rem}.destruction-empty h2{color:#475569;font-size:1.5rem;margin-bottom:.5rem}.destruction-items{display:flex;flex-direction:column;gap:1.5rem}.destruction-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s ease}.destruction-item:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000d}.destruction-item__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.destruction-item__header strong{font-size:1rem;font-weight:700;color:#1e293b}.destruction-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1.5rem}.photo-field{display:flex;flex-direction:column;gap:.75rem}.photo-field p{font-size:.9rem;font-weight:600;color:#475569;margin:0}.photo-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;border:2px dashed #cbd5e1;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease}.photo-upload:hover{border-color:#3b82f6;background:#f8fafc}.photo-upload svg{color:#64748b}.photo-upload:hover svg{color:#3b82f6}.photo-upload span{font-size:.875rem;color:#64748b;font-weight:500}.photo-upload input[type=file]{display:none}.photo-preview{position:relative;border-radius:12px;overflow:hidden;border:1px solid #e2e8f0}.photo-preview img{width:100%;height:auto;display:block}.icon-button{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border:none;border-radius:6px;background:#f1f5f9;color:#64748b;cursor:pointer;transition:all .2s ease}.icon-button:hover{background:#e2e8f0;color:#475569;transform:scale(1.05)}.icon-button.reject{background:#fee2e2;color:#dc2626}.icon-button.reject:hover{background:#fecaca;color:#b91c1c}.photo-preview .icon-button{position:absolute;top:.5rem;right:.5rem}.signature-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.signature-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.signature-tab:hover{background:#f1f5f9;border-color:#cbd5e1}.signature-tab.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f640}.signature-pad-container{display:flex;flex-direction:column;gap:1rem}.signature-canvas{width:100%;height:200px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;cursor:crosshair}.signature-actions{display:flex;gap:1rem;justify-content:flex-end}.signature-upload{padding:2rem;border:2px dashed #cbd5e1;border-radius:12px;background:#fff}.signature-preview{margin-top:1.5rem;padding:1.5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.signature-preview p{font-weight:600;color:#475569;margin-bottom:1rem}.signature-preview__image{position:relative;display:inline-block;max-width:300px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.signature-preview__image img{display:block;width:100%;height:auto}.destruction-footer{display:flex;gap:1rem;justify-content:flex-end;margin-top:2.5rem;padding-top:2rem;border-top:2px solid #e2e8f0}.btn.large{padding:1rem 2rem;font-size:1rem}.btn.large svg{width:20px;height:20px}@media (max-width: 768px){.destruction-grid,.destruction-photos{grid-template-columns:1fr}.destruction-section__header{flex-direction:column;align-items:flex-start;gap:1rem}.destruction-footer{flex-direction:column}.btn.large{width:100%}.signature-actions{flex-direction:column}.destruction-btn{width:100%;justify-content:center}}.expedition-grid{display:grid;grid-template-columns:200px repeat(5,1fr);gap:1px;background:var(--border-color, #e2e8f0);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;overflow:hidden}.expedition-grid-header{background:var(--bg-primary, #fff)}.expedition-header-title{background:var(--primary-color, #3b82f6);color:#fff;padding:1rem;font-weight:600;display:flex;align-items:center;justify-content:center}.calendar-day-header{background:var(--bg-primary, #fff);padding:.75rem;text-align:center}.calendar-day-header.holiday{background:#fef3c7}.expedition-day{display:flex;flex-direction:column;gap:.25rem;align-items:center}.expedition-day .day-name{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary, #64748b);font-weight:500}.expedition-day .day-number{font-size:1.25rem;font-weight:700;color:var(--text-primary, #1e293b)}.expedition-holiday-badge{display:inline-block;background:#fbbf24;color:#78350f;font-size:.65rem;padding:.125rem .375rem;border-radius:4px;font-weight:600;text-transform:uppercase;margin-top:.25rem}.expedition-grid-row{background:var(--bg-primary, #fff)}.expedition-label{background:var(--bg-secondary, #f8fafc);padding:.75rem;display:flex;align-items:center;font-weight:500}.expedition-label-input{width:100%;font-weight:500;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;padding:.5rem}.expedition-cell{background:var(--bg-primary, #fff);padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.expedition-cell.holiday{background:#fffbeb}.expedition-slot{display:flex;flex-direction:column;gap:.375rem}.expedition-slot input{padding:.5rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.875rem}.expedition-slot input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.expedition-day-label-mobile{display:none}.expedition-controls{margin-bottom:1.5rem;padding:1rem;background:var(--bg-primary, #fff);border-radius:8px;border:1px solid var(--border-color, #e2e8f0)}.expedition-controls p{font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #1e293b)}.expedition-chips{display:flex;gap:.5rem;flex-wrap:wrap}.expedition-chip{display:inline-block;background:var(--bg-secondary, #f8fafc);color:var(--text-primary, #1e293b);padding:.375rem .75rem;border-radius:6px;font-size:.875rem;border:1px solid var(--border-color, #e2e8f0)}.expedition-chip.active{background:#fef3c7;color:#78350f;border-color:#fcd34d}.expedition-chip.muted{color:var(--text-secondary, #64748b);font-style:italic}.expedition-rows{display:flex;flex-direction:column;gap:1px}@media (max-width: 1024px){.expedition-grid{grid-template-columns:1fr}.expedition-header-title,.calendar-day-header{display:none}.expedition-label{border-bottom:2px solid var(--primary-color, #3b82f6);font-weight:600;font-size:1rem}.expedition-day-label-mobile{display:block;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color, #e2e8f0)}}.employees-page{min-height:100vh;background:#f8fafc;padding:1.5rem;max-width:1400px;margin:0 auto}.employees-header{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.employees-header .eyebrow{text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.05em;color:#94a3b8;margin-bottom:.5rem}.employees-header h1{color:#fff;font-size:2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.025em}.employees-header p{color:#cbd5e1;font-size:.95rem;margin:0}.employees-empty{text-align:center;padding:3rem 2rem;background:#fff;border-radius:12px;border:2px dashed #cbd5e1;color:#64748b;font-size:1rem}.employees-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.employee-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .2s ease}.employee-card:hover{box-shadow:0 4px 12px #0000001f;border-color:#cbd5e1;transform:translateY(-2px)}.employee-card__header{padding:1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;align-items:flex-start}.employee-card__header .avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.25rem;flex-shrink:0;box-shadow:0 4px 8px #3b82f64d}.employee-card__header h3,.employee-card__header h2{font-size:1.125rem;font-weight:700;color:#1e293b;margin:0 0 .25rem}.employee-card__header p{color:#64748b;font-size:.875rem;margin:0}.employee-card__header .role-badge{display:inline-flex;align-items:center;gap:.375rem;background:#fff;border:1px solid #e2e8f0;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;color:#64748b;margin-top:.25rem}.employee-card__body{padding:1.5rem}.employee-card__body .info-row,.employee-card__body .employee-info{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #f1f5f9}.employee-card__body .info-row:last-child,.employee-card__body .employee-info:last-child{border-bottom:none}.employee-card__body .info-row svg,.employee-card__body .employee-info svg,.employee-info__icon{color:#64748b;flex-shrink:0}.employee-card__body .info-row span,.employee-card__body .employee-info span{color:#1e293b;font-size:.9rem}.employee-card__body .employee-info p{color:#64748b;font-size:.8rem;margin:0 0 .25rem;font-weight:500}.employee-card__body .employee-info strong{color:#1e293b;font-size:.9rem;font-weight:600}.employee-card__body .info-row a{color:#3b82f6;text-decoration:none;transition:color .2s}.employee-card__body .info-row a:hover{color:#2563eb;text-decoration:underline}.employee-notes{margin-top:1rem;padding:1rem;background:#f8fafc;border-left:3px solid #3b82f6;border-radius:4px;font-size:.875rem;color:#475569;line-height:1.6}.employee-card__actions{display:flex;gap:.75rem;padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap}.employee-card__actions .btn{flex:1;min-width:120px;justify-content:center}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;margin-left:.5rem}.badge-danger{background:#fee2e2;color:#dc2626}.badge-warning{background:#fef3c7;color:#d97706}.badge-success{background:#dcfce7;color:#16a34a}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem;overflow-y:auto}.modal-panel{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0003;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;margin:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.modal-title{font-size:1.5rem;font-weight:700;color:#1e293b;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;border:none;background:#fff;color:#64748b;cursor:pointer;transition:all .2s}.modal-close:hover{background:#f1f5f9;color:#1e293b}.modal-body{padding:2rem}@media (max-width: 768px){.modal-body{padding:1.5rem}}@media (max-width: 480px){.modal-body{padding:1.25rem}}.form-section{margin-bottom:2rem}.form-section:last-child{margin-bottom:0}.form-section h3{font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}@media (max-width: 768px){.form-section{margin-bottom:1.5rem}.form-section h3{font-size:1rem;margin-bottom:1rem}}.form-grid-2-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.form-grid-3-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width: 768px){.form-grid-2-cols,.form-grid-3-cols{grid-template-columns:1fr;gap:1.25rem}}.required-indicator{color:#dc2626;margin-left:.25rem}.modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem 2rem;border-top:1px solid #e2e8f0;background:#f8fafc}@media (max-width: 768px){.modal-footer{padding:1.25rem 1.5rem;flex-wrap:wrap}}@media (max-width: 480px){.modal-footer{padding:1rem;flex-direction:column-reverse;gap:.75rem}.modal-footer button,.modal-footer .btn{width:100%;justify-content:center}}.unified-modal{background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;max-width:650px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.unified-modal .modal-header{padding:2rem 2.5rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#fff,#f8fafc);display:flex;justify-content:space-between;align-items:center;position:relative}.unified-modal .modal-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899)}.unified-modal .modal-title{font-size:1.75rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.02em;background:none;-webkit-background-clip:unset;-webkit-text-fill-color:#0f172a;background-clip:unset}.unified-modal .modal-close{width:36px;height:36px;border-radius:10px;border:none;background:#f1f5f9;color:#64748b;font-size:1.5rem;line-height:1;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;font-weight:300}.unified-modal .modal-close:hover{background:#e2e8f0;color:#1e293b;transform:rotate(90deg)}.unified-modal .modal-body{padding:2.5rem;overflow-y:auto;flex:1}.unified-modal .form-section{display:flex;flex-direction:column;gap:1.5rem}.unified-modal .form-group{display:flex;flex-direction:column;gap:.625rem}.unified-modal .form-group label{font-size:.9375rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;letter-spacing:-.01em;display:flex;align-items:center;gap:.5rem}.unified-modal .form-group input,.unified-modal .form-group select,.unified-modal .form-group textarea{padding:1rem 1.5rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;background:#fff;color:#0f172a;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%;box-sizing:border-box;font-weight:500;line-height:1.5}.unified-modal .form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23475569' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.unified-modal .form-grid-2-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.unified-modal .required-indicator{color:#ef4444;font-weight:700;margin-left:.25rem}.unified-modal .modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:2rem 2.5rem;border-top:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#fff);margin-top:auto}.unified-modal .modal-footer .btn{padding:.875rem 2rem;font-weight:600;font-size:.9375rem;border-radius:10px;transition:all .2s;min-width:120px}.unified-modal .modal-footer .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;box-shadow:0 4px 12px #3b82f64d}.unified-modal .modal-footer .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.unified-modal .modal-footer .btn-outline{background:#fff;border:2px solid #e2e8f0;color:#64748b}.unified-modal .modal-footer .btn-outline:hover{border-color:#cbd5e1;background:#f8fafc;color:#1e293b}.unified-modal .form-group input:hover,.unified-modal .form-group select:hover,.unified-modal .form-group textarea:hover{border-color:#cbd5e1;background:#f8fafc;transform:translateY(-1px);box-shadow:0 4px 12px #0000000d}.unified-modal .form-group input:focus,.unified-modal .form-group select:focus,.unified-modal .form-group textarea:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a,0 4px 12px #3b82f626;transform:translateY(-1px)}.unified-modal textarea{min-height:100px;resize:vertical}@media (max-width: 768px){.employees-grid,.form-grid-2-cols,.form-grid-3-cols{grid-template-columns:1fr}.employee-card__actions{flex-direction:column}.employee-card__actions .btn{width:100%}.employees-header{padding:1.5rem}.employees-header h1{font-size:1.5rem}}.login-page{min-height:100vh;background:linear-gradient(135deg,#1e293b,#334155);display:flex;align-items:center;justify-content:center;padding:1rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.login-container{width:100%;max-width:480px}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;padding:3rem 2rem;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:2rem}.login-logo-wrapper{display:inline-flex;flex-direction:column;align-items:flex-start;line-height:1}.login-logo{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.15em;color:#64748b;text-transform:uppercase;padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc;line-height:1.2}.login-logo-wrapper .erp-recyclage{display:block;font-size:.4em;font-weight:400;white-space:nowrap;margin-top:.1em;line-height:1;color:#64748b;opacity:.85;margin-left:.6em}.login-intro{text-align:center;margin-bottom:2rem}.login-intro h1{font-size:1.75rem;font-weight:700;color:#1e293b;margin:0 0 .5rem;letter-spacing:-.025em}.login-intro p{font-size:.95rem;color:#64748b;margin:0;line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-field label{font-size:.8125rem;font-weight:500;letter-spacing:.01em;color:#64748b;text-transform:none}.login-field input,.login-password-wrapper input{padding:.875rem 1rem;border:1.5px solid #e2e8f0;border-radius:10px;font-size:1rem;color:#1e293b;background:#fff;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.login-field input::placeholder,.login-password-wrapper input::placeholder{color:#94a3b8;opacity:1}.login-field input:hover,.login-password-wrapper input:hover{border-color:#cbd5e1;background:#f8fafc}.login-field input:focus,.login-password-wrapper input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.login-field input:disabled,.login-password-wrapper input:disabled{opacity:.6;cursor:not-allowed;background:#f8fafc}.login-password-wrapper{position:relative;display:flex;align-items:center}.login-password-wrapper input{width:100%;margin:0;padding-right:2.5rem}.login-password-toggle{position:absolute;right:.75rem;background:none;border:none;color:#64748b;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.login-password-toggle:hover{color:#1e293b}.login-error{padding:.875rem 1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.9rem;text-align:center}.login-button{padding:1rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #3b82f64d;white-space:nowrap;width:100%}.login-button:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 16px #3b82f666;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.login-forgot-link{color:#3b82f6;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s ease}.login-forgot-link:hover{color:#2563eb;text-decoration:underline}.login-help{text-align:center;font-size:.85rem;color:#64748b;line-height:1.6}.login-help p{margin:0;color:#64748b}@media (max-width: 480px){.login-card{padding:2rem 1.5rem;border-radius:12px}.login-intro h1{font-size:1.5rem}.login-form{gap:1.25rem}.login-field input,.login-password-wrapper input{font-size:16px;padding:.9375rem 1rem}.input-container input,.input-container textarea,.input-container select,.form-group input,.form-group textarea,.form-group select{font-size:16px;padding:.875rem 1rem;min-height:44px}}.gestion-page{min-height:100vh;background:#f8fafc;padding:1.5rem;max-width:1600px;margin:0 auto}.gestion-header{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px #00000026;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.gestion-header .eyebrow{text-transform:uppercase;font-size:.75rem;font-weight:600;letter-spacing:.05em;color:#94a3b8;margin-bottom:.5rem}.gestion-header h1{color:#fff;font-size:2rem;font-weight:700;margin:0 0 .5rem;letter-spacing:-.025em}.gestion-header p{color:#cbd5e1;font-size:.95rem;margin:0}.gestion-header .header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.gestion-tabs{display:flex;gap:.5rem;background:#fff;padding:.5rem;border-radius:12px;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014;border:1px solid #e2e8f0;overflow-x:auto}.gestion-tabs button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:none;background:transparent;color:#64748b;font-size:.9rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.gestion-tabs button:hover{background:#f1f5f9;color:#1e293b}.gestion-tabs button.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.gestion-tabs button svg{width:16px;height:16px}.gestion-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;border:1px solid #e2e8f0;overflow:hidden}.gestion-card-header{padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.gestion-card-header h2{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.gestion-card-body{padding:1.5rem 2rem}.gestion-search{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;max-width:400px;transition:all .2s ease}.gestion-search:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.gestion-search svg{color:#64748b;flex-shrink:0}.gestion-search input{flex:1;border:none;background:transparent;outline:none;font-size:.95rem;color:#1e293b}.gestion-search input::placeholder{color:#94a3b8}.gestion-table{width:100%;border-collapse:collapse}.gestion-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.gestion-table th{padding:1rem;text-align:left;font-size:.8rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0}.gestion-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .15s ease}.gestion-table tbody tr:hover{background-color:#f8fafc}.gestion-table td{padding:1rem;font-size:.9rem;color:#1e293b}.gestion-table td strong{font-weight:600;color:#3b82f6}.badge-secondary{background:#f1f5f9;color:#64748b}.gestion-actions{display:flex;gap:.5rem}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s ease}.btn-icon:hover{background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.btn-icon.danger:hover{background:#fee2e2;border-color:#fecaca;color:#dc2626}.gestion-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.gestion-stat-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e2e8f0;display:flex;align-items:center;gap:1rem;transition:all .2s ease}.gestion-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.gestion-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.gestion-stat-icon.blue{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#2563eb}.gestion-stat-icon.green{background:linear-gradient(135deg,#dcfce7,#bbf7d0);color:#16a34a}.gestion-stat-icon.orange{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.gestion-stat-icon.red{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.gestion-stat-content .label{font-size:.8rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.gestion-stat-content .value{font-size:1.5rem;font-weight:700;color:#1e293b}.gestion-empty{text-align:center;padding:3rem 2rem;color:#64748b}.gestion-empty svg{width:48px;height:48px;color:#cbd5e1;margin-bottom:1rem}.gestion-empty p{font-size:1rem;margin:0;color:#64748b}.gestion-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#64748b}.gestion-loading p{margin-top:1rem;font-size:.95rem;color:#64748b}.cdt-page{min-height:100vh;background:#f8fafc}.cdt-header{background:linear-gradient(135deg,#1e293b,#334155,#475569);color:#fff;padding:2rem 1.5rem;margin-bottom:1.5rem}.cdt-header-content{max-width:1600px;margin:0 auto}.cdt-eyebrow{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;display:block;margin-bottom:.5rem}.cdt-title{font-size:1.75rem;font-weight:700;display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.cdt-subtitle{color:#cbd5e1;font-size:.95rem;margin:0}.cdt-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin:0 1rem 1.5rem;overflow:hidden}.cdt-section-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.cdt-section-title{font-size:1.1rem;font-weight:600;color:#1e293b;margin:0}.cdt-section-count{font-size:.8rem;font-weight:500;color:#64748b;background:#e2e8f0;padding:.25rem .75rem;border-radius:20px}.cdt-mobile-view{display:block;padding:.5rem}.cdt-mobile-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:.75rem;overflow:hidden;transition:box-shadow .2s}.cdt-mobile-card:active{box-shadow:0 2px 8px #0000001a}.cdt-mobile-card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;cursor:pointer;background:#fafbfc;border-bottom:1px solid transparent;min-height:56px;-webkit-tap-highlight-color:transparent}.cdt-mobile-card-header:active{background:#f1f5f9}.cdt-mobile-card-title{display:flex;align-items:center;gap:.75rem;font-weight:600;color:#1e293b;font-size:.95rem;flex:1;min-width:0}.cdt-mobile-card-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdt-mobile-card-title svg{color:#64748b;flex-shrink:0}.cdt-mobile-card-meta{display:flex;align-items:center;gap:.5rem;color:#64748b}.cdt-mobile-card-badge{font-size:.7rem;font-weight:600;background:#dbeafe;color:#2563eb;padding:.2rem .5rem;border-radius:10px}.cdt-mobile-card-content{padding:1rem;background:#fff;border-top:1px solid #e2e8f0}.cdt-mobile-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.cdt-mobile-card-field{display:flex;flex-direction:column;gap:.35rem}.cdt-mobile-card-label{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.cdt-mobile-card-input{width:100%;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;text-align:center;background:#f8fafc;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.cdt-mobile-card-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;background:#fff}.cdt-desktop-view{display:none}.cdt-table-wrapper{overflow-x:auto;overflow-y:visible;max-height:70vh}.cdt-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.875rem}.cdt-table-header{position:sticky;top:0;z-index:10}.cdt-table-th{padding:12px 10px;text-align:center;background:#1e293b;color:#fff;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;min-width:90px}.cdt-table-th:first-child{text-align:left;min-width:200px}.cdt-table-th-sticky{position:sticky;left:0;z-index:11;background:#0f172a}.cdt-table-row-even{background:#fff}.cdt-table-row-odd{background:#f8fafc}.cdt-table-td{padding:8px 10px;border-bottom:1px solid #e2e8f0;color:#334155}.cdt-table-td-sticky{position:sticky;left:0;z-index:5;font-weight:500}.cdt-table-td-input{text-align:center}.cdt-input{width:100%;padding:7px 10px;border:1px solid #e2e8f0;border-radius:6px;text-align:center;font-size:.875rem;background:#fff;transition:border-color .15s,box-shadow .15s}.cdt-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.cdt-input::placeholder{color:#cbd5e1}.cdt-actions{display:flex;gap:.75rem;padding:1rem 1.25rem;justify-content:center;border-top:1px solid #e2e8f0;background:#fafbfc;flex-wrap:wrap}.cdt-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;min-height:44px}.cdt-btn-primary{background:#3b82f6;color:#fff}.cdt-btn-primary:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d}.cdt-btn-success{background:#10b981;color:#fff}.cdt-btn-success:hover{background:#059669;box-shadow:0 4px 12px #10b9814d}@media (min-width: 900px){.cdt-mobile-view{display:none}.cdt-desktop-view{display:block}.cdt-section{margin:0 1.5rem 1.5rem}.cdt-header{padding:2.5rem 2rem}.cdt-title{font-size:2rem}.cdt-actions{justify-content:flex-end}}@media (min-width: 640px) and (max-width: 899px) and (orientation: landscape){.cdt-mobile-view{display:none}.cdt-desktop-view{display:block}.cdt-table-wrapper{max-height:60vh}.cdt-table-th{font-size:.7rem;padding:10px 6px;min-width:70px}.cdt-input{padding:5px 4px;font-size:.8rem}}@media (max-width: 400px){.cdt-mobile-card-grid{grid-template-columns:1fr}.cdt-header{padding:1.5rem 1rem}.cdt-title{font-size:1.4rem}.cdt-section{margin:0 .5rem 1rem;border-radius:8px}.cdt-btn{flex:1;justify-content:center}}@media (max-width: 768px){.gestion-page{padding:1rem}.gestion-header{padding:1.5rem}.gestion-header h1{font-size:1.5rem}.gestion-tabs{padding:.375rem}.gestion-tabs button{padding:.625rem 1rem;font-size:.85rem}.gestion-card-body{padding:1rem}.gestion-table{font-size:.85rem}.gestion-table th,.gestion-table td{padding:.75rem .5rem}.gestion-stats{grid-template-columns:1fr}}@media (max-width: 479px){html{font-size:14px}.page-header,.employees-header,.gestion-header{padding:1rem;flex-direction:column;align-items:flex-start;gap:1rem}.page-header h1,.employees-header h1,.gestion-header h1{font-size:1.25rem}.page-header p,.employees-header p,.gestion-header p{font-size:.8rem}.eyebrow{font-size:.65rem}.btn,.btn-primary,.btn-secondary{width:100%;justify-content:center;padding:.75rem 1rem;font-size:.85rem}.header-actions,.page-actions{width:100%;flex-direction:column;gap:.5rem}.gestion-tabs,.tab-nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:.25rem;gap:.25rem}.gestion-tabs::-webkit-scrollbar,.tab-nav::-webkit-scrollbar{display:none}.gestion-tabs button,.tab-nav button{flex-shrink:0;padding:.5rem .75rem;font-size:.75rem}.gestion-tabs button svg,.tab-nav button svg{width:14px;height:14px}.gestion-card,.card,.employee-card{border-radius:8px}.gestion-card-header,.gestion-card-body{padding:.75rem}.gestion-card-header{flex-direction:column;gap:.75rem}.gestion-card-header h2{font-size:1rem}.gestion-search{width:100%;max-width:none}.gestion-search input{font-size:.9rem}.gestion-table{display:block}.gestion-table thead{display:none}.gestion-table tbody{display:flex;flex-direction:column;gap:.75rem}.gestion-table tbody tr{display:flex;flex-direction:column;background:#f8fafc;border-radius:8px;padding:.75rem;border:1px solid #e2e8f0;gap:.5rem}.gestion-table tbody tr:hover{background:#f1f5f9}.gestion-table td{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;border-bottom:1px solid #e2e8f0}.gestion-table td:last-child{border-bottom:none;padding-top:.5rem}.gestion-table td:before{content:attr(data-label);font-weight:600;font-size:.75rem;color:#64748b;text-transform:uppercase}.gestion-actions{width:100%;justify-content:flex-end}.gestion-stats{grid-template-columns:1fr;gap:.75rem}.gestion-stat-card{padding:1rem}.gestion-stat-content .value{font-size:1.25rem}.employees-grid{grid-template-columns:1fr;gap:.75rem}.employee-card__header{padding:1rem}.employee-card__header .avatar{width:40px;height:40px;font-size:1rem}.employee-card__body{padding:1rem}.employee-card__actions{padding:.75rem;flex-direction:column}.employee-card__actions .btn{width:100%}.form-grid-2-cols,.form-grid-3-cols{grid-template-columns:1fr;gap:1.25rem}.form-group input,.form-group select,.form-group textarea,.input-container input,.input-container textarea,.input-container select{font-size:16px;padding:.875rem 1rem;min-height:44px}.form-section{margin-bottom:1.25rem}.form-section h3{font-size:1rem;margin-bottom:1rem}.modal-backdrop{padding:0}.modal-panel,.unified-modal{max-width:100%;width:100%;max-height:100%;border-radius:0;margin:0}.modal-header{padding:1rem}.modal-title{font-size:1.1rem}.modal-body{padding:1rem}.modal-footer{padding:1rem;flex-direction:column-reverse;gap:.75rem}.modal-footer button,.modal-footer .btn{width:100%;min-height:44px;justify-content:center}.gestion-empty,.employees-empty{padding:2rem 1rem}.gestion-empty svg{width:40px;height:40px}}@media (min-width: 480px) and (max-width: 639px){html{font-size:15px}.page-header,.employees-header,.gestion-header{padding:1.25rem}.page-header h1,.employees-header h1,.gestion-header h1{font-size:1.5rem}.employees-grid{grid-template-columns:1fr}.gestion-stats{grid-template-columns:repeat(2,1fr)}.form-grid-2-cols{grid-template-columns:1fr}}@media (min-width: 640px) and (max-width: 767px){html{font-size:15px}.page-header,.employees-header,.gestion-header{padding:1.5rem}.page-header h1,.employees-header h1,.gestion-header h1{font-size:1.75rem}.employees-grid,.gestion-stats,.form-grid-2-cols{grid-template-columns:repeat(2,1fr)}.gestion-table{display:table}.gestion-table thead{display:table-header-group}.gestion-table tbody{display:table-row-group}.gestion-table tbody tr{display:table-row;background:transparent;border-radius:0;padding:0;border:none}.gestion-table td{display:table-cell;border-bottom:1px solid #f1f5f9}.gestion-table td:before{display:none}}@media (min-width: 768px) and (max-width: 1023px){html{font-size:16px}.page-header,.employees-header,.gestion-header{padding:1.75rem}.page-header h1,.employees-header h1,.gestion-header h1{font-size:1.75rem}.employees-grid{grid-template-columns:repeat(2,1fr)}.gestion-stats{grid-template-columns:repeat(3,1fr)}.modal-panel,.unified-modal{max-width:600px;max-height:90vh;border-radius:12px;margin:auto}}@media (min-width: 1024px) and (max-width: 1279px){.page-header,.employees-header,.gestion-header{padding:2rem}.employees-grid{grid-template-columns:repeat(2,1fr)}.gestion-stats{grid-template-columns:repeat(4,1fr)}.form-grid-3-cols{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1280px) and (max-width: 1535px){.employees-grid{grid-template-columns:repeat(3,1fr)}.gestion-page,.employees-page{max-width:1400px;margin:0 auto}}@media (min-width: 1536px){.employees-grid{grid-template-columns:repeat(4,1fr)}.gestion-page,.employees-page{max-width:1600px;margin:0 auto}.gestion-stats{grid-template-columns:repeat(4,1fr)}}@media (max-width: 767px) and (orientation: portrait){.gestion-header,.employees-header,.page-header{flex-direction:column;text-align:left}.header-actions,.page-actions{width:100%}.gestion-tabs,.tab-nav{overflow-x:auto;max-width:100%}}@media (max-width: 896px) and (orientation: landscape){.page-header,.employees-header,.gestion-header{padding:1rem 1.5rem;flex-direction:row;justify-content:space-between}.page-header h1,.employees-header h1,.gestion-header h1{font-size:1.25rem}.header-actions,.page-actions{width:auto;flex-direction:row}.btn,.btn-primary,.btn-secondary{width:auto;padding:.5rem 1rem;font-size:.85rem}.modal-panel,.unified-modal{max-height:95vh;max-width:80%}.employees-grid,.form-grid-2-cols{grid-template-columns:repeat(2,1fr)}.gestion-stats{grid-template-columns:repeat(3,1fr)}}@media (hover: none) and (pointer: coarse){.btn,.btn-primary,.btn-secondary,.btn-icon{min-height:44px;min-width:44px}.btn-icon{width:44px;height:44px}.gestion-tabs button,.tab-nav button{min-height:44px;padding:.75rem 1rem}.btn:hover,.btn-primary:hover,.btn-secondary:hover,.employee-card:hover,.gestion-stat-card:hover,.gestion-table tbody tr:hover{transform:none}.btn:active,.btn-primary:active,.btn-secondary:active{transform:scale(.98);opacity:.9}.gestion-tabs button:active,.tab-nav button:active{background:#e2e8f0}.gestion-tabs button.active:active,.tab-nav button.active:active{background:linear-gradient(135deg,#2563eb,#1d4ed8)}input,select,textarea{min-height:44px;font-size:16px!important}.gestion-table td{padding:.875rem .75rem}.employee-card__actions .btn{min-height:44px}}@supports (padding: max(0px)){.page-header,.employees-header,.gestion-header{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.gestion-page,.employees-page{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));padding-bottom:max(1rem,env(safe-area-inset-bottom))}.modal-footer{padding-bottom:max(1rem,env(safe-area-inset-bottom))}}@media print{.page-header,.employees-header,.gestion-header{background:#1e293b!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.btn,.btn-primary,.btn-secondary,.btn-icon,.header-actions,.page-actions,.gestion-tabs,.tab-nav,.gestion-search,.modal-backdrop{display:none!important}.gestion-card,.employee-card{break-inside:avoid;page-break-inside:avoid}.gestion-table{font-size:10pt}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.spinner{animation:none}}.page-container,.map-page,.vacances-page,.declassement-page,.destruction-page,.employees-page,.settings-page,.reports-page,.pdf-templates-page{width:100%;max-width:100vw;overflow-x:hidden;overflow-y:auto;padding:var(--spacing-md)}.form-section,.form-group,.map-section,.declassement-section{width:100%}.form-row,.form-grid,.grid-2,.grid-3,.grid-4{display:grid;gap:1rem;width:100%}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],input[type=tel],input[type=url],input[type=search],select,textarea{min-height:44px;font-size:16px!important;padding:.75rem;border-radius:var(--radius-md);width:100%;box-sizing:border-box}button,.btn,.btn-primary,.btn-secondary,.btn-icon,[role=button]{min-height:44px;min-width:44px;touch-action:manipulation}table{width:100%;border-collapse:collapse}.card,.map-card,.destruction-card,.declassement-card{width:100%;border-radius:var(--radius-lg);overflow:hidden}.modal,.modal-content,.modal-container{max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);overflow-y:auto}@media (max-width: 479px){html,body{font-size:14px}.page-container,.map-page,.vacances-page,.declassement-page,.destruction-page,.employees-page,.settings-page,.gestion-page,.cdt-page{padding:.5rem}h1{font-size:1.5rem!important}h2{font-size:1.25rem!important}h3{font-size:1.1rem!important}.form-row,.form-grid,.grid-2,.grid-3,.grid-4,.declassement-form__grid,.destruction-form__grid,.map-form__grid{grid-template-columns:1fr!important}.card,.map-card,.destruction-card,.declassement-card,.gestion-card,.employee-card{margin:0 0 1rem;border-radius:8px}.btn-group,.form-actions,.card-actions,.page-actions{flex-direction:column;gap:.5rem}.btn-group button,.form-actions button,.card-actions button,.page-actions button,.btn-group .btn,.form-actions .btn,.card-actions .btn,.page-actions .btn{width:100%}table:not(.cdt-table) thead{display:none}table:not(.cdt-table) tbody tr{display:block;margin-bottom:1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1rem}table:not(.cdt-table) tbody td{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border:none;border-bottom:1px solid #e2e8f0}table:not(.cdt-table) tbody td:last-child{border-bottom:none}table:not(.cdt-table) tbody td:before{content:attr(data-label);font-weight:600;color:#64748b;font-size:.75rem;text-transform:uppercase}.modal-content,.modal-container{width:100%!important;max-width:100%!important;margin:0;border-radius:0;min-height:100vh}.tab-nav,.gestion-tabs,.vacances-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.tab-nav::-webkit-scrollbar,.gestion-tabs::-webkit-scrollbar,.vacances-tabs::-webkit-scrollbar{display:none}.tab-nav button,.gestion-tabs button,.vacances-tabs button{white-space:nowrap;flex-shrink:0;padding:.75rem 1rem;font-size:.85rem}.signature-canvas,.signature-container canvas{width:100%!important;max-width:100%}.photo-grid,.photos-preview,.marchandise-photos{grid-template-columns:repeat(2,1fr)!important;gap:.5rem}.calendar-grid{font-size:.75rem}.calendar-day{padding:.25rem;min-height:40px}}@media (min-width: 480px) and (max-width: 767px){.page-container,.map-page,.vacances-page,.declassement-page,.destruction-page{padding:1rem}.form-row,.form-grid,.grid-2,.declassement-form__grid,.destruction-form__grid,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.modal-content,.modal-container{width:90%;max-width:500px;border-radius:12px;min-height:auto;max-height:90vh}.photo-grid,.photos-preview,.marchandise-photos{grid-template-columns:repeat(3,1fr)}}@media (min-width: 768px) and (max-width: 1023px){.page-container,.map-page,.vacances-page,.declassement-page,.destruction-page,.gestion-page{padding:1.5rem}.form-row,.form-grid,.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.modal-content,.modal-container{width:80%;max-width:600px}}@media (min-width: 1024px){.page-container,.map-page,.vacances-page,.declassement-page,.destruction-page,.gestion-page{padding:2rem;max-width:1600px;margin:0 auto}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.modal-content,.modal-container{width:auto;min-width:500px;max-width:800px}}.vacances-page{min-height:100vh;background:#f8fafc}.vacances-header{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.vacances-header-content{flex:1;min-width:200px}.vacances-eyebrow{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;display:block;margin-bottom:.5rem}.vacances-title{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:#fff!important}.vacances-subtitle{color:#cbd5e1;font-size:.9rem;margin:0}.vacances-header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.vacances-content{padding:1rem}.vacances-tabs{display:flex;gap:.5rem;padding:.75rem;background:#fff;border-radius:12px;margin-bottom:1rem;overflow-x:auto;box-shadow:0 1px 3px #00000014}.vacances-tabs button{flex:1;min-width:max-content;padding:.75rem 1.25rem;border:none;border-radius:8px;background:transparent;color:#64748b;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:.9rem}.vacances-tabs button.active{background:#3b82f6;color:#fff}.vacances-tabs button:hover:not(.active){background:#f1f5f9}.badge-count{background:#ef4444;color:#fff;font-size:.7rem;padding:.15rem .5rem;border-radius:10px;font-weight:600}.vacances-card{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #00000014}.vacances-calendar-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.vacances-month-nav{display:flex;align-items:center;gap:.5rem}.btn-icon-sm{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;transition:all .2s;color:#475569}.btn-icon-sm:hover{background:#f1f5f9;border-color:#cbd5e1}.vacances-select{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;font-weight:500;font-size:.9rem;min-height:36px;cursor:pointer}.vacances-filter{display:flex;align-items:center;gap:.5rem}.vacances-filter-label{font-size:.75rem;font-weight:600;text-transform:uppercase;color:#64748b}.vacances-legend{display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem;background:#f8fafc;border-radius:8px;margin-bottom:1.5rem}.vacances-legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#475569}.vacances-legend-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.vacances-calendar{overflow-x:auto}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;min-width:280px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.25rem;background:#f8fafc;border-radius:4px;font-size:.8rem;min-height:50px}@media (max-width: 639px){.vacances-header{padding:1rem}.vacances-title{font-size:1.4rem}.vacances-subtitle{display:none}.vacances-header-actions{width:100%}.vacances-header-actions .btn-primary{width:100%;justify-content:center}.vacances-content{padding:.5rem}.vacances-tabs{padding:.5rem;border-radius:8px}.vacances-tabs button{padding:.625rem .75rem;font-size:.8rem}.vacances-card{padding:1rem;border-radius:8px}.vacances-calendar-controls{flex-direction:column;align-items:stretch}.vacances-month-nav{justify-content:center;flex-wrap:wrap}.vacances-filter{justify-content:center}.vacances-legend{gap:.5rem;padding:.5rem}.vacances-legend-item{font-size:.7rem}.vacances-legend-dot{width:10px;height:10px}.calendar-day{min-height:35px;font-size:.7rem}}@media (min-width: 640px) and (max-width: 1023px){.vacances-header{padding:1.25rem}.vacances-title{font-size:1.5rem}}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;min-height:44px}.btn-primary:hover{background:#2563eb;box-shadow:0 4px 12px #3b82f64d}.btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:8px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s;min-height:44px}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.declassement-page{min-height:100vh;background:#f8fafc}.declassement-header{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:1.5rem}.declassement-card{background:#fff;border-radius:12px;margin:1rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.declassement-section{padding:1.5rem;border-bottom:1px solid #e2e8f0}.declassement-form__grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 640px){.declassement-form__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.declassement-form__grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 479px){.declassement-card{margin:.5rem;border-radius:8px}.declassement-section{padding:1rem}}.destruction-page{min-height:100vh;background:#f8fafc}.destruction-card{background:#fff;border-radius:12px;margin:1rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.destruction-card__header{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:1.5rem}.destruction-section{padding:1.5rem;border-bottom:1px solid #e2e8f0}.destruction-form__grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 640px){.destruction-form__grid{grid-template-columns:repeat(2,1fr)}}.marchandise-item{background:#f8fafc;border-radius:8px;padding:1rem;margin-bottom:1rem}.marchandise-photos{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-top:1rem}.photo-upload-zone{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #cbd5e1;border-radius:8px;cursor:pointer;transition:all .2s;min-height:100px}.photo-upload-zone:hover{border-color:#3b82f6;background:#f0f9ff}@media (max-width: 479px){.destruction-card{margin:.5rem;border-radius:8px}.destruction-section,.destruction-card__header{padding:1rem}}.map-page{min-height:100vh;background:#f8fafc}.map-container{height:50vh;min-height:300px;border-radius:12px;overflow:hidden;margin-bottom:1rem}@media (min-width: 768px){.map-container{height:60vh}}@media (min-width: 1024px){.map-container{height:70vh}}.map-card{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #00000014}.map-form__grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 640px){.map-form__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.map-form__grid{grid-template-columns:repeat(4,1fr)}}.settings-page{min-height:100vh;background:#f8fafc;padding:1rem}.settings-header{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:1.5rem;border-radius:12px;margin-bottom:1.5rem}.settings-card{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 1px 3px #00000014}.settings-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 768px){.settings-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 479px){.settings-page{padding:.5rem}.settings-header,.settings-card{padding:1rem;border-radius:8px}}.unified-table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.unified-table{width:100%;border-collapse:collapse;font-size:.875rem}.unified-table th{background:#f1f5f9;padding:.75rem 1rem;text-align:left;font-weight:600;color:#475569;white-space:nowrap}.unified-table td{padding:.75rem 1rem;border-bottom:1px solid #e2e8f0}@media (max-width: 767px){.unified-table-container{margin:0 -1rem;padding:0 1rem}.unified-table th,.unified-table td{padding:.5rem .75rem;font-size:.8rem}}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500;white-space:nowrap}.badge-success{background:#dcfce7;color:#166534}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.badge-secondary{background:#f1f5f9;color:#475569}@media (orientation: landscape) and (max-height: 500px){.page-header,.employees-header,.gestion-header,.vacances-header,.declassement-header,.destruction-card__header,.settings-header,.cdt-header{padding:.75rem 1rem}.page-header h1,.employees-header h1,.gestion-header h1,.cdt-title{font-size:1.25rem!important}.page-header p,.employees-header p,.gestion-header p,.cdt-subtitle{display:none}.card,.gestion-card,.vacances-card,.settings-card,.destruction-section,.declassement-section{padding:.75rem}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=datetime-local],select,textarea{min-height:38px;padding:.5rem}button,.btn{min-height:38px;padding:.5rem 1rem}.modal-content,.modal-container{max-height:85vh}}.settings-page{min-height:100vh;background-color:#f5f5f5;padding:2rem 0}.settings-container{max-width:800px;margin:0 auto;padding:0 1rem}.settings-title{font-size:2rem;font-weight:700;margin-bottom:2rem;color:#333}.settings-card{background:#fff;border-radius:12px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000014}.settings-card__title{font-size:1.3rem;font-weight:600;margin-bottom:1.5rem;color:#333}.settings-field{margin-bottom:1.5rem}.settings-label{display:block;font-size:.875rem;font-weight:500;color:#555;margin-bottom:.5rem}.settings-input{width:100%;padding:.75rem 1rem;font-size:1rem;border:1px solid #ddd;border-radius:8px;transition:border-color .2s ease}.settings-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.settings-radio-group{display:flex;gap:1rem;flex-wrap:wrap}.settings-radio{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .2s ease;min-height:44px}.settings-radio.active{border-color:#3b82f6;background-color:#eff6ff}.settings-password-form{max-width:100%}.settings-password-field{position:relative;margin-bottom:1rem}.settings-password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#666;padding:.5rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}@media (max-width: 639px){.settings-page{padding:1rem 0}.settings-title{font-size:1.5rem;margin-bottom:1.5rem}.settings-card{padding:1.25rem;border-radius:8px;margin-bottom:1rem}.settings-card__title{font-size:1.1rem;margin-bottom:1rem}.settings-radio-group{flex-direction:column}.settings-radio{width:100%;justify-content:center}}.rh-sections{display:grid;grid-template-columns:2fr 1fr;gap:2rem;align-items:start}.rh-list{display:flex;flex-direction:column;gap:1.25rem}.rh-form{position:sticky;top:1.5rem;height:fit-content;max-height:calc(100vh - 3rem);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.rh-form::-webkit-scrollbar{width:6px}.rh-form::-webkit-scrollbar-track{background:transparent}.rh-form::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.rh-form::-webkit-scrollbar-thumb:hover{background:#94a3b8}.rh-form-section{display:flex;flex-direction:column;gap:1.5rem}.rh-form-section h4{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0;padding-bottom:1rem;border-bottom:2px solid #e2e8f0;letter-spacing:-.02em}.unified-card{background:linear-gradient(to bottom,#fff,#f8fafc);border-radius:16px;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 0 0 1px #0000000d;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1)}.unified-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 0 1px #0000000d;transform:translateY(-1px)}.unified-card h3{font-size:1.125rem;font-weight:700;color:#0f172a;margin:0 0 1.5rem;letter-spacing:-.01em;display:flex;align-items:center;gap:.5rem}.unified-card h3:before{content:"";width:4px;height:20px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:2px}.simple-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.simple-list li{padding:1.25rem 1.5rem;background:linear-gradient(to right,#fff,#f8fafc);border-radius:12px;border:1.5px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.simple-list li:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(135deg,#3b82f6,#2563eb);transform:scaleY(0);transition:transform .25s cubic-bezier(.4,0,.2,1)}.simple-list li:hover{background:linear-gradient(to right,#fff,#f1f5f9);border-color:#cbd5e1;box-shadow:0 4px 12px #00000014;transform:translate(4px)}.simple-list li:hover:before{transform:scaleY(1)}.simple-list li strong{color:#0f172a;font-weight:700;font-size:1rem;letter-spacing:-.01em}.simple-list li div{color:#64748b;font-size:.875rem;margin-top:.5rem;line-height:1.5}.simple-list li:empty:after{content:"Aucun élément";color:#94a3b8;font-style:italic;text-align:center;width:100%;padding:2rem}.btn-link{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:1.5px solid #cbd5e1;color:#3b82f6;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;border-radius:8px;transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none;white-space:nowrap;flex-shrink:0}.btn-link:hover{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#3b82f6;color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f633}.rh-form-section .form-group{display:flex;flex-direction:column;gap:.625rem}.rh-form-section .form-group label{font-size:.875rem;font-weight:600;color:#334155;margin:0;letter-spacing:-.01em;display:flex;align-items:center;gap:.25rem}.rh-form-section .form-group label:after{content:"";width:2px;height:12px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:1px;opacity:.6}.rh-form-section .form-group select,.rh-form-section .form-group input,.rh-form-section .form-group textarea{padding:.875rem 1.25rem;border:2px solid #e2e8f0;border-radius:10px;font-size:.9375rem;background:#fff;color:#0f172a;transition:all .25s cubic-bezier(.4,0,.2,1);width:100%;box-sizing:border-box;font-weight:500}.rh-form-section .form-group select:hover,.rh-form-section .form-group input:hover,.rh-form-section .form-group textarea:hover{border-color:#cbd5e1;background:#fafbfc}.rh-form-section .form-group select:focus,.rh-form-section .form-group input:focus,.rh-form-section .form-group textarea:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a,0 4px 12px #3b82f626;transform:translateY(-1px)}.rh-form-section .form-group textarea{min-height:120px;resize:vertical;font-family:inherit;line-height:1.6}.rh-form-section .btn{margin-top:.75rem;width:100%;padding:.875rem 1.5rem;font-weight:600;font-size:.9375rem;border-radius:10px;box-shadow:0 4px 12px #3b82f64d;transition:all .25s cubic-bezier(.4,0,.2,1)}.rh-form-section .btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.rh-form-section .btn:active{transform:translateY(0)}.tab-nav{display:flex;gap:.5rem;padding:.5rem;background:#f8fafc;border-radius:12px;margin-bottom:1.5rem;overflow-x:auto;scrollbar-width:none}.tab-nav::-webkit-scrollbar{display:none}.tab-nav button{padding:.75rem 1.25rem;border:none;background:transparent;color:#64748b;font-weight:600;font-size:.875rem;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative}.tab-nav button:hover{background:#fff;color:#334155}.tab-nav button.active{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 12px #3b82f64d}.tab-nav button.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:60%;height:3px;background:#fff;border-radius:2px}@media (max-width: 1024px){.rh-sections{grid-template-columns:1fr;gap:1.5rem}.rh-form{position:static;max-height:none}}@media (max-width: 768px){.rh-form-section{gap:1.25rem}.rh-form-section h4{font-size:1.125rem;padding-bottom:.875rem}.unified-card{padding:1.5rem;border-radius:12px}.unified-card h3{font-size:1rem;margin-bottom:1.25rem}.simple-list li{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.25rem}.rh-form-section .form-group select,.rh-form-section .form-group input,.rh-form-section .form-group textarea{font-size:16px;padding:.9375rem 1.125rem;min-height:48px}.tab-nav{gap:.375rem;padding:.375rem}.tab-nav button{padding:.625rem 1rem;font-size:.8125rem}}.users-page{min-height:100vh;background:#f8fafc}.users-search{margin-bottom:20px}.users-search .map-input{max-width:400px}.users-loading,.users-empty{text-align:center;padding:40px;color:var(--text-muted)}.users-table{width:100%;overflow-x:auto}.users-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.users-status-badge.active{background:#dcfce7;color:#166534}.users-status-badge.inactive{background:#fecaca;color:#991b1b}.users-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.users-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn .2s ease-out;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.users-modal--large{max-width:800px}.users-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;flex-shrink:0;background:#f9fafb}.users-modal-title{font-size:1.25rem;font-weight:600;color:#1e293b;margin:0}.users-modal-close{background:none;border:none;cursor:pointer;padding:.5rem;color:#64748b;border-radius:6px;transition:all .2s;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.users-modal-close:hover{background:#f1f5f9;color:#1e293b}.users-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.users-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;flex-shrink:0}.users-form-grid{display:grid;gap:1rem;margin-bottom:1.5rem}.users-form-grid--2-cols{grid-template-columns:repeat(2,1fr)}.users-form-field label{display:block;font-size:.875rem;font-weight:500;color:#334155;margin-bottom:.5rem}.users-form-field input,.users-form-field select{width:100%;padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s}.users-form-field input:focus,.users-form-field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input-plain{border:none;background:transparent;outline:none;flex:1}.required-indicator{color:#ef4444}.mr-1{margin-right:.25rem}@media (max-width: 639px){.users-search .map-input{max-width:100%}.users-modal{max-height:100vh;border-radius:0;max-width:100%}.users-modal--large{max-width:100%}.users-modal-header,.users-modal-body{padding:1rem}.users-modal-footer{flex-direction:column}.users-modal-footer button{width:100%}.users-form-grid--2-cols{grid-template-columns:1fr}}.employees-page{min-height:100vh;background:#f8fafc}.employees-modal-large{max-width:1100px!important;width:95vw}.employees-modal-body{display:flex;flex-direction:column;gap:16px}.employees-rh-sections{display:grid;grid-template-columns:2fr 1fr;gap:16px}@media (max-width: 899px){.employees-modal-large{max-width:100%!important;width:100%;margin:0;border-radius:0;max-height:100vh}.employees-rh-sections{grid-template-columns:1fr}}@media (max-width: 639px){.employees-rh-sections{gap:12px}}.inventaire-page{min-height:100vh;background:#f8fafc}.inventaire-export-bar{padding:20px;max-width:1400px;margin:0 auto;display:flex;justify-content:flex-end}.inventaire-header{padding:1rem}.inventaire-header h1{margin:0;font-size:1.5rem;font-weight:600}.inventaire-header p,.inventaire-subtitle{margin:.5rem 0 0;color:var(--text-secondary, #64748b)}.inventaire-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-top:1rem}.inventaire-date-picker{min-width:220px}.inventaire-date-picker label{font-size:.875rem;font-weight:600;color:#475569;margin-bottom:.25rem;display:block}.inventaire-date-picker input{padding:.5rem;border-radius:8px;border:1px solid #e2e8f0;width:100%}.inventaire-date-picker small{color:#64748b;margin-top:.25rem;display:block}.inventaire-action-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;min-height:44px}@media (max-width: 767px){.inventaire-export-bar{padding:10px;justify-content:center}.inventaire-controls{flex-direction:column;align-items:stretch}.inventaire-date-picker{min-width:100%}.inventaire-action-btn{width:100%;justify-content:center}}@media (max-width: 479px){.inventaire-header h1{font-size:1.25rem}}.expeditions-page{min-height:100vh;background:#f8fafc}.maps-page{width:100vw;height:calc(100vh - 64px);position:fixed;top:64px;left:0;right:0;bottom:0;overflow:hidden;padding:0;margin:0;box-sizing:border-box}.leaflet-popup-content-wrapper{border-radius:8px;box-shadow:0 4px 12px #0000004d;max-width:90vw!important;max-height:60vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.leaflet-popup-content{margin:12px 16px;line-height:1.5;font-size:14px;word-wrap:break-word}.leaflet-popup-close-button{width:32px!important;height:32px!important;font-size:24px!important;line-height:32px!important;padding:0!important;text-align:center;background:#0000001a;border-radius:50%;color:#333!important;font-weight:700;-webkit-tap-highlight-color:rgba(0,0,0,.2);touch-action:manipulation}.leaflet-popup-close-button:hover{background:#0003}.leaflet-popup-tip{background:#fff}@media (max-width: 768px){.leaflet-popup-content-wrapper{max-width:85vw!important;font-size:13px}.leaflet-popup-content{margin:10px 12px;font-size:13px}.leaflet-popup-close-button{width:36px!important;height:36px!important;font-size:28px!important;line-height:36px!important;right:4px!important;top:4px!important}.leaflet-popup{transition:none!important}.leaflet-control-zoom{margin:10px!important}.leaflet-control-zoom a{width:36px!important;height:36px!important;line-height:36px!important;font-size:20px!important}}.maps-container{height:100%;width:100%;position:absolute;top:0;left:0;right:0;bottom:0}.leaflet-container{height:100%!important;width:100%!important;z-index:1;position:relative}.leaflet-top.leaflet-left{top:10px;left:10px;z-index:1000}body,html{margin:0;padding:0}.pdf-templates-page{min-height:100vh;background:#f8fafc;padding:1rem}@media (max-width: 639px){.pdf-templates-page{padding:.5rem}}.info-box{margin-top:16px;padding:12px;background:#f0f9ff;border-radius:8px;border:1px solid #0ea5e9}.info-box__title{margin:0 0 8px;font-size:14px;color:#0c4a6e;font-weight:500}.info-box__text{margin:0 0 12px;font-size:12px;color:#075985}.info-box__success{margin:8px 0 0;font-size:11px;color:#0284c7}.suggestion-text{margin:4px 0 0;font-size:12px;color:#0f172a}.suggestion-text--small{margin:0;font-size:11px}[data-theme=futuristic]{color-scheme:dark}[data-theme=futuristic] body{background:linear-gradient(135deg,#0a0e27,#1a1f3a,#0f1419);background-attachment:fixed;color:#e0e7ff}[data-theme=futuristic] .navbar{background:linear-gradient(135deg,#1e1b4b,#312e81);border-bottom:1px solid rgba(99,102,241,.3);box-shadow:0 4px 20px #6366f133,0 0 40px #6366f11a}[data-theme=futuristic] .card{background:linear-gradient(135deg,#1e1b4bcc,#312e8199);border:1px solid rgba(99,102,241,.3);box-shadow:0 8px 32px #6366f126,0 0 0 1px #6366f11a;color:#e0e7ff}[data-theme=futuristic] .btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:1px solid rgba(139,92,246,.5);box-shadow:0 4px 15px #6366f166,0 0 20px #8b5cf633;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}[data-theme=futuristic] .btn-primary:hover{background:linear-gradient(135deg,#818cf8,#a78bfa);box-shadow:0 6px 20px #6366f180,0 0 30px #8b5cf64d;transform:translateY(-1px)}[data-theme=futuristic] .btn-secondary{background:#6366f11a;border:1px solid rgba(99,102,241,.3);color:#c7d2fe}[data-theme=futuristic] .btn-secondary:hover{background:#6366f133;border-color:#6366f180}[data-theme=futuristic] input,[data-theme=futuristic] select,[data-theme=futuristic] textarea{background:#1e1b4b99;border:1px solid rgba(99,102,241,.3);color:#e0e7ff}[data-theme=futuristic] input:focus,[data-theme=futuristic] select:focus,[data-theme=futuristic] textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f133,0 0 20px #6366f14d}[data-theme=futuristic] .page-container{background:transparent}[data-theme=futuristic] .settings-card{background:linear-gradient(135deg,#1e1b4be6,#312e81b3);border:1px solid rgba(99,102,241,.3);box-shadow:0 8px 32px #6366f133}[data-theme=futuristic] .settings-card__title{color:#c7d2fe;text-shadow:0 2px 10px rgba(99,102,241,.5)}[data-theme=futuristic] .settings-radio.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#8b5cf680;box-shadow:0 4px 15px #6366f166,0 0 20px #8b5cf633;color:#fff}[data-theme=futuristic] .settings-radio{background:#6366f11a;border:1px solid rgba(99,102,241,.3);color:#c7d2fe}[data-theme=futuristic] .settings-radio:hover{background:#6366f133;border-color:#6366f180}.full-width{width:100%}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.gap-4{gap:1rem}@supports (padding: env(safe-area-inset-bottom)){.page-container,.map-page,.maps-page,.vacances-page,.declassement-page,.destruction-page,.gestion-page,.cdt-page,.settings-page,.users-page,.employees-page,.inventaire-page,.expeditions-page,.pdf-templates-page{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.navbar{padding-left:calc(1rem + env(safe-area-inset-left));padding-right:calc(1rem + env(safe-area-inset-right))}.navbar-menu{padding-bottom:env(safe-area-inset-bottom)}.modal-content,.modal-container,.users-modal{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}}
