.login-page{align-items:center;background-attachment:fixed;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:100vh;padding:1rem;position:relative}.login-page:before{background:#0006;bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.login-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #0000004d;max-width:400px;padding:2rem;position:relative;width:100%;z-index:2}.login-header{margin-bottom:2rem;text-align:center}.login-title{color:#1a1a1a;font-size:1.875rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 1px 2px #0000001a}.login-title img{height:60px;margin-left:25px;width:150px}.login-subtitle{color:#666;font-size:.875rem}.login-form{gap:1.5rem}.form-fields,.login-form{display:flex;flex-direction:column}.form-fields{gap:1rem}.field-group{display:flex;flex-direction:column}.field-label{color:#374151;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.field-input{background:#ffffffe6;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;padding:.75rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;width:100%}.field-input:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.field-input::placeholder{color:#9ca3af}.email-input{border-radius:.375rem .375rem 0 0}.password-group,.password-input-container{position:relative}.password-input{border-radius:0 0 .375rem .375rem;padding-right:2.5rem}.password-toggle{background:none;border:none;color:#9ca3af;cursor:pointer;padding:0;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.password-toggle:hover{color:#6b7280}.error-message{background-color:#fef2f2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;font-size:.875rem;padding:.75rem 1rem}.submit-button{align-items:center;background-color:#0097b2;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;justify-content:center;padding:.75rem;transition:background-color .15s ease-in-out;width:100%}.submit-button:hover:not(:disabled){background-color:#7ed957}.submit-button:disabled{cursor:not-allowed;opacity:.5}.loading-spinner{animation:spin 1s linear infinite;border:2px solid;border-color:#0000 #0000 #fff;border-radius:50%;height:1.25rem;width:1.25rem}.form-footer{text-align:center}.footer-text{color:#666;font-size:.875rem}.link-button{background:none;border:none;color:#6366f1;cursor:pointer;font-weight:500;text-decoration:none}.link-button:hover{color:#5858f7;text-decoration:underline}@media(max-width:480px){.login-page{padding:.5rem}.login-container{margin:.5rem;padding:1.5rem}}.dashboard{background:linear-gradient(135deg,#f8fafc,#fff);min-height:100vh;width:100%}.hero-section{background:linear-gradient(135deg,#0097b2,#0284c7);margin-bottom:2rem;overflow:hidden;padding:2rem 1.5rem;position:relative}.hero-section:before{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);border-radius:50%;content:"";height:400px;position:absolute;right:0;top:0;transform:translate(30%,-30%);width:400px}.hero-section .hero-content{margin:0 auto;max-width:1200px;position:relative;z-index:1}.hero-section .hero-greeting{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.hero-section .hero-greeting .wave{animation:wave 2s ease-in-out infinite;font-size:3rem}.hero-section .hero-greeting h1{color:#fff;font-size:1.875rem;font-weight:700;margin:0}.hero-section .hero-subtitle{color:#ffffffe6;font-size:1rem;margin:0 0 1.5rem;max-width:600px}.hero-section .quick-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.hero-section .quick-stats .stat-card{align-items:center;background:#fff;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;display:flex;gap:.75rem;padding:1rem;transition:transform .3s ease,box-shadow .3s ease}.hero-section .quick-stats .stat-card:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-5px)}.hero-section .quick-stats .stat-card--warning{border-left:4px solid #d97706}.hero-section .quick-stats .stat-card .stat-icon{color:#2c3e50;font-size:2.5rem;line-height:1}.hero-section .quick-stats .stat-card .stat-info{flex:1 1}.hero-section .quick-stats .stat-card .stat-value{color:#0097b2;font-size:1.875rem;font-weight:700;line-height:1;margin-bottom:.25rem}.hero-section .quick-stats .stat-card .stat-label{color:#475569;font-size:.875rem}@media(max-width:639px){.hero-section{padding:1.5rem 1rem}.hero-section .hero-greeting h1{font-size:1.25rem}.hero-section .quick-stats{grid-template-columns:1fr}}@keyframes wave{0%,to{transform:rotate(0deg)}10%,30%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}.section-title{color:#0f172a;font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;padding-bottom:.5rem;position:relative;text-align:center}.section-title:after{background:linear-gradient(90deg,#0097b2,#10b981);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.about-section{margin:0 auto 2rem;max-width:1200px;padding:0 1.5rem}.about-section .about-content{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.about-section .about-card{background:#fff;border:2px solid #0000;border-radius:1rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:1.25rem;text-align:center;transition:all .3s ease}.about-section .about-card:hover{border-color:#0097b2;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-8px)}.about-section .about-card:hover .about-icon{transform:scale(1.1) rotate(5deg)}.about-section .about-card .about-icon{display:inline-block;font-size:2.5rem;margin-bottom:.75rem;transition:transform .3s ease}.about-section .about-card h3{color:#0f172a;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.about-section .about-card p{color:#475569;font-size:.875rem;line-height:1.5}@media(max-width:639px){.about-section{padding:0 1rem}.about-section .about-content{gap:1rem;grid-template-columns:1fr}}.features-section{margin:0 auto 2rem;max-width:1200px;padding:0 1.5rem}.features-section .features-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.features-section .feature-card{background:#fff;border-left:4px solid var(--card-color);border-radius:1rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;display:flex;flex-direction:column;overflow:hidden;padding:1.25rem;position:relative;text-decoration:none;transition:all .3s ease}.features-section .feature-card:before{background:linear-gradient(135deg,var(--card-color) 0,#0000 100%);content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.features-section .feature-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-10px)}.features-section .feature-card:hover:before{opacity:.05}.features-section .feature-card:hover .feature-icon{transform:scale(1.2)}.features-section .feature-card:hover .arrow{transform:translateX(5px)}.features-section .feature-card .feature-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem;position:relative;z-index:1}.features-section .feature-card .feature-icon{font-size:2rem;transition:transform .3s ease}.features-section .feature-card h3{color:#0f172a;font-size:1.125rem;font-weight:600;margin:0}.features-section .feature-card .feature-description{color:#475569;flex:1 1;font-size:.875rem;line-height:1.5;margin-bottom:.75rem;position:relative;z-index:1}.features-section .feature-card .feature-action{align-items:center;color:var(--card-color);display:flex;font-weight:600;justify-content:space-between;position:relative;z-index:1}.features-section .feature-card .feature-action .arrow{font-size:1.25rem;transition:transform .3s ease}@media(max-width:639px){.features-section{padding:0 1rem}.features-section .features-grid{gap:1rem;grid-template-columns:1fr}}.admin-section{background:linear-gradient(135deg,#0097b20d,#10b9810d);border-radius:1rem;margin:0 auto 2rem;max-width:1200px;padding:1.5rem}.admin-section .admin-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.admin-section .admin-card{background:#fff;border:2px solid #0000;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:1.25rem;text-decoration:none;transition:all .3s ease}.admin-section .admin-card:hover{border-color:#0097b2;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-5px)}.admin-section .admin-card:hover .admin-icon{background:linear-gradient(135deg,#0097b2,#10b981);transform:rotate(10deg) scale(1.1)}.admin-section .admin-card .admin-icon{align-items:center;background:#f1f5f9;border-radius:.75rem;display:flex;font-size:2rem;height:60px;justify-content:center;margin-bottom:.75rem;transition:all .3s ease;width:60px}.admin-section .admin-card h3{color:#0f172a;font-size:1rem;font-weight:600;margin-bottom:.5rem}.admin-section .admin-card p{color:#475569;font-size:.75rem;line-height:1.4}@media(max-width:639px){.admin-section{margin:0 1rem 3rem;padding:1.5rem 1rem}.admin-section .admin-grid{grid-template-columns:1fr}}.how-it-works{margin:0 auto;max-width:1200px;padding:1.5rem 1.5rem 2.5rem}.how-it-works .steps-container{align-items:center;display:flex;gap:.75rem;justify-content:space-between}@media(max-width:639px){.how-it-works .steps-container{flex-direction:column;gap:1.5rem}}.how-it-works .step{background:#fff;border-radius:1rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;flex:1 1;padding:1.25rem;text-align:center;transition:all .3s ease}.how-it-works .step:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-5px)}.how-it-works .step:hover .step-number{background:linear-gradient(135deg,#0097b2,#10b981);transform:scale(1.1)}.how-it-works .step .step-number{align-items:center;background:#0097b2;border-radius:50%;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;display:flex;font-size:1.25rem;font-weight:700;height:50px;justify-content:center;margin:0 auto .75rem;transition:all .3s ease;width:50px}.how-it-works .step h3{color:#0f172a;font-size:1rem;font-weight:600;margin-bottom:.5rem}.how-it-works .step p{color:#475569;font-size:.75rem;line-height:1.4}.how-it-works .step-arrow{color:#0097b2;font-size:1.5rem;font-weight:700}@media(max-width:639px){.how-it-works .step-arrow{transform:rotate(90deg)}}.feature-card--enhanced{display:flex;flex-direction:column;height:auto;min-height:400px;padding:1.5rem}.feature-rights{flex-grow:1;margin:1rem 0}.right-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.85rem;gap:.5rem;padding:.4rem 0}.right-item .right-icon{color:var(--card-color);font-size:.8rem;font-weight:700}.quick-rights{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1.5rem;color:#fff;margin:3rem 0;padding:2.5rem}.quick-rights .section-title{color:#fff;margin-bottom:2rem;text-align:center}.rights-summary{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2rem}.rights-column{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:1rem;padding:1.5rem}.rights-column h3{color:#fff;font-size:1.1rem;margin-bottom:1rem}.quick-info{display:flex;flex-direction:column;gap:.8rem}.info-row{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:.5rem 0}.info-row:last-child{border-bottom:none}.info-row .label{font-size:.9rem;opacity:.9}.info-row .value{color:#fff;font-size:.95rem;font-weight:600}.rights-actions{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:2rem}.action-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:1rem;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s ease}.action-card:hover{transform:translateY(-2px)}.action-card .action-icon{flex-shrink:0;font-size:2rem}.action-card .action-content h4{color:#fff;font-size:1rem;margin:0 0 .5rem}.action-card .action-content p{font-size:.85rem;line-height:1.4;margin:0;opacity:.9}@media(max-width:768px){.feature-card--enhanced{min-height:350px;padding:1.25rem}.right-item{font-size:.8rem}.quick-rights{margin:2rem 0;padding:1.5rem}.rights-summary{gap:1.5rem;grid-template-columns:1fr}.rights-actions{gap:1rem;grid-template-columns:1fr}.action-card{padding:1.25rem}.action-card .action-icon{font-size:1.8rem}}.profile-page{background:linear-gradient(135deg,#f7f7f7,#f3fffa);min-height:100vh;padding:2rem 1rem}@media(max-width:768px){.profile-page{padding:1rem .5rem}}.profile-container{margin:0 auto;max-width:1200px}.profile-header{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;margin-bottom:2rem;overflow:hidden;padding:3rem;position:relative}.profile-header:before{background:linear-gradient(90deg,#667eea,#0097b2);content:"";height:4px;left:0;position:absolute;right:0;top:0}@media(max-width:768px){.profile-header{border-radius:16px;padding:2rem}}.profile-header__content{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:auto 1fr auto}@media(max-width:968px){.profile-header__content{gap:2rem;grid-template-columns:1fr;text-align:center}}.profile-avatar-section{align-items:center;display:flex;flex-direction:column;gap:1rem}.profile-avatar{border:4px solid #fff;border-radius:50%;box-shadow:0 15px 35px #0000001a;height:150px;overflow:hidden;position:relative;width:150px}@media(max-width:768px){.profile-avatar{height:120px;width:120px}}.profile-avatar .avatar-image,.profile-avatar .avatar-placeholder{border-radius:50%;height:100%;object-fit:cover;width:100%}.profile-avatar .avatar-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#0097b2);color:#fff;display:flex;font-size:2.5rem;font-weight:600;justify-content:center}@media(max-width:768px){.profile-avatar .avatar-placeholder{font-size:2rem}}.profile-avatar .avatar-overlay{align-items:center;background:#0009;border-radius:50%;display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .3s ease}.profile-avatar:hover .avatar-overlay{opacity:1}.profile-avatar .avatar-input{display:none}.profile-avatar .avatar-upload-btn{background:none;border:none;border-radius:50%;color:#fff;cursor:pointer;padding:.5rem;transition:all .3s ease}.profile-avatar .avatar-upload-btn:hover{background:#ffffff1a}.profile-avatar .avatar-upload-btn:disabled{cursor:not-allowed;opacity:.6}.profile-avatar .upload-icon{height:2rem;width:2rem}.profile-avatar .spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:2rem;width:2rem}.upload-info{text-align:center}.upload-info .upload-hint{color:#6b7280;font-size:.9rem;margin:0 0 .25rem}.upload-info small{color:#9ca3af;font-size:.8rem}.profile-info-main{flex:1 1}.profile-name-section{margin-bottom:1.5rem}.profile-name{color:#1f2937;font-size:2.5rem;font-weight:700;line-height:1.2;margin:0 0 .5rem}@media(max-width:768px){.profile-name{font-size:2rem}}.profile-position{color:#6b7280;font-size:1.25rem;font-weight:500;margin:0 0 1rem}.profile-badges{display:flex;flex-wrap:wrap;gap:.75rem}@media(max-width:968px){.profile-badges{justify-content:center}}.badge{border-radius:50px;color:#fff;font-size:.875rem;font-weight:500;padding:.5rem 1rem}.badge.badge-type{background:#3b82f6;background:var(--type-color,#3b82f6)}.badge.badge-category{background:#0097b2}.profile-stats{display:flex;gap:2rem}@media(max-width:968px){.profile-stats{justify-content:center}}@media(max-width:480px){.profile-stats{flex-direction:column;gap:1rem}}.stat-item{text-align:center}.stat-item .stat-value{color:#1f2937;font-size:1.75rem;font-weight:700;margin-bottom:.25rem}@media(max-width:768px){.stat-item .stat-value{font-size:1.5rem}}.stat-item .stat-label{color:#6b7280;font-size:.875rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.profile-actions{display:flex;flex-direction:column;gap:1rem}.profile-actions .btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;justify-content:center;min-width:140px;padding:.75rem 1.5rem;text-decoration:none;transition:all .3s ease}.profile-actions .btn.btn--primary{background:linear-gradient(135deg,#667eea,#0097b2);color:#fff}.profile-actions .btn.btn--primary:hover{box-shadow:0 10px 20px #667eea4d;transform:translateY(-2px)}.profile-actions .btn.btn--secondary{background:#f3f4f6;border:2px solid #e5e7eb;color:#4b5563}.profile-actions .btn.btn--secondary:hover{background:#e5e7eb;border-color:#d1d5db}.profile-actions .btn.btn--success{background:#10b981;color:#fff}.profile-actions .btn.btn--success:hover{background:#059669;box-shadow:0 10px 20px #10b9814d;transform:translateY(-2px)}.alert{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;box-shadow:0 4px 12px #dc26261a;color:#dc2626;margin-bottom:2rem}.alert.alert--success{background:#f0fdf4;border-color:#bbf7d0;box-shadow:0 4px 12px #16a34a1a;color:#16a34a}.alert .alert-content{align-items:center;display:flex;gap:.75rem}.alert .alert-icon{height:1.5rem;width:1.5rem}.profile-content{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr}@media(min-width:1024px){.profile-content{grid-template-columns:1fr 1fr}}.info-card{background:#fff;border-radius:16px;box-shadow:0 10px 25px #00000014;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.info-card:hover{box-shadow:0 20px 40px #0000001f;transform:translateY(-5px)}@media(min-width:1024px){.info-card:nth-child(3){grid-column:1/-1}}.info-card__header{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:1px solid #e5e7eb;padding:1.5rem 2rem}.info-card__title{align-items:center;color:#1f2937;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;margin:0}.info-card__content{padding:2rem}.section-icon{color:#667eea;height:1.5rem;width:1.5rem}.info-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr}@media(min-width:640px){.info-grid{grid-template-columns:1fr 1fr}.info-item.info-item--full{grid-column:1/-1}}.info-label{color:#6b7280;display:block;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.info-value{align-items:center;color:#1f2937;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:.75rem 0}.info-input{border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;padding:.75rem;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.info-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.info-icon{color:#9ca3af;flex-shrink:0;height:1.25rem;width:1.25rem}.status-dot{border-radius:50%;flex-shrink:0;height:.75rem;width:.75rem}.roles-container{display:flex;flex-wrap:wrap;gap:1rem}.role-badge{align-items:center;background:linear-gradient(135deg,#0097b2,#75f8c6);border-radius:50px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.role-badge:hover{box-shadow:0 8px 20px #667eea66;transform:translateY(-2px)}.role-icon{height:1.125rem;width:1.125rem}.renewal-status{align-items:center;border-radius:8px;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.renewal-status--active{background-color:#dcfce7;border:1px solid #bbf7d0;color:#166534}.renewal-status--warning{background-color:#fef3c7;border:1px solid #fbbf24;color:#92400e}.renewal-status--expired{background-color:#fee2e2;border:1px solid #fca5a5;color:#b91c1c}.renewal-status--neutral{background-color:#f3f4f6;border:1px solid #d1d5db;color:#4b5563}.status-indicator{overflow:hidden;position:relative}.status-indicator:after{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:currentColor;border-radius:50%;content:"";inset:0;opacity:.2;position:absolute}.status-indicator--warning:after{animation-duration:1s}.status-indicator--expired:after{animation-duration:.5s}@media(max-width:768px){.profile-content{gap:1.5rem}.info-card__header{padding:1.25rem 1.5rem}.info-card__content{padding:1.5rem}.info-grid{gap:1.5rem;grid-template-columns:1fr}.roles-container{justify-content:center}}.contract-renewal-alert{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.contract-renewal-alert .alert-content{align-items:center;color:#92400e;display:flex;font-weight:500;gap:.75rem}.contract-renewal-alert--urgent{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#ef4444}.contract-renewal-alert--urgent .alert-content{color:#b91c1c}.conge-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:1.5rem;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.conge-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.conge-card__header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem}@media(max-width:639px){.conge-card__header{flex-direction:column;gap:.75rem}}.conge-card__period{color:#0f172a;font-size:1.125rem;font-weight:600}.conge-card__status{border-radius:.5rem;font-size:.875rem;font-weight:500;padding:.25rem .75rem;white-space:nowrap}.conge-card__status.status--pending{background:#f0ee711a;border:1px solid #f0ee714d;color:#d97706}.conge-card__status.status--approved{background:#10b9811a;border:1px solid #10b9814d;color:#03ad77}.conge-card__status.status--rejected{background:#ef44441a;border:1px solid #ef44444d;color:#dc2626}.conge-card__content,.conge-card__info{margin-bottom:1.5rem}.conge-card__info{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media(max-width:639px){.conge-card__info{grid-template-columns:1fr}}.conge-card__info .info-item .label{color:#475569;display:block;font-size:.875rem;font-weight:500;margin-bottom:.25rem}.conge-card__info .info-item .value{color:#0f172a;font-weight:600}.conge-card__motif .label{color:#475569;display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.conge-card__motif p{background:#f8fafc;border-radius:.5rem;color:#334155;line-height:1.5;margin:0;padding:.75rem}.conge-card__actions{border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:.75rem;padding-top:1rem}@media(max-width:639px){.conge-card__actions{flex-direction:column}}.conge-card__actions .btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;justify-content:center;text-decoration:none;transition:all .2s ease-in-out;white-space:nowrap}.conge-card__actions .btn:disabled{cursor:not-allowed;opacity:.6}.conge-card__actions .btn--small{font-size:.875rem;padding:.5rem 1rem}.conge-card__actions .btn--outline{background:#fff;border:1px solid #e2e8f0;color:#334155}.conge-card__actions .btn--outline:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.conge-card__actions .btn--primary{background:#0097b2;color:#fff}.conge-card__actions .btn--primary:hover:not(:disabled){background:linear-gradient(90deg,#7ed957,#0097b2)}.conge-card__actions .btn--danger{background:#ef4444;color:#fff}.conge-card__actions .btn--danger:hover:not(:disabled){background:#dc2626}.conge-list{max-width:none;width:100%}.conge-list__header{padding:0}.conge-list__header h1{font-size:.75rem}.conge-list__content{width:100%}.solde-summary{grid-gap:.75rem;border-radius:.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.filters,.solde-summary{gap:.75rem;margin-bottom:1rem;padding:.75rem}.filters{background:#fff;box-shadow:0 1px 2px 0 #0000000d}.filters label{font-weight:700;margin:0}.filters .filter-select{min-width:150px;width:auto}.conges-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));width:100%}@media(max-width:639px){.conges-grid{gap:.75rem;grid-template-columns:1fr}}.admin-actions{margin-bottom:1rem}.admin-actions .btn{font-size:.875rem;padding:.5rem 1rem}.empty-state{border-radius:.5rem;box-shadow:0 1px 2px 0 #0000000d;padding:2rem 1rem}.empty-state p{margin-bottom:1rem}.conge-form{margin:0;padding:0;width:100%}.conge-form__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.conge-form__header h1{color:#0f172a;font-size:1.5rem;font-weight:700;margin:0}@media(max-width:639px){.conge-form__header{align-items:stretch;flex-direction:column;gap:.75rem}}.solde-info{background:#fff;background:#0097b2;background:linear-gradient(135deg,#0097b2,linear-gradient(90deg,#7ed957,#0097b2));border:none;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;color:#fff;margin-bottom:1rem;padding:1rem}.solde-info__item{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.solde-info__item:not(:last-child){border-bottom:1px solid #fff3}.solde-info__item .label{font-size:.875rem;font-weight:500;opacity:.9}.solde-info__item .value{font-size:1rem;font-weight:700}.solde-info__item .value.highlight{background:#fff3;border-radius:.5rem;padding:.25rem .5rem}.form{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;border-radius:.5rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:0 1px 2px 0 #0000000d;padding:1rem}.form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}@media(max-width:639px){.form .form-row{gap:.75rem;grid-template-columns:1fr}}.calculated-days,.form .form-group{margin-bottom:1rem}.calculated-days{background:#fff;background:#f8fafc;border:1px solid #cbd5e1;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:.75rem}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem}@media(max-width:639px){.form-actions{flex-direction:column}}.email-section .email-header h3{color:#0097b2;font-size:1.125rem;margin-top:0}@media(max-width:639px){.email-section .email-header{align-items:flex-start;flex-direction:column;gap:.5rem}}.email-section .email-body-editable{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.email-section .email-body-editable:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a}.email-section .email-body-editable::placeholder{color:#94a3b8}.email-section .email-body-editable{font-size:.875rem;padding:.75rem}.email-section .email-edit-info{border-left:3px solid #f0ee71;border-radius:.5rem;margin-top:.75rem;padding:.75rem}.email-section .email-edit-info .info-text{font-size:.75rem}.email-section .email-body-preview-conge{background-color:#fff;border:1px solid #ddd;overflow-y:auto;padding:6px 12px}.calculated-days-display{background:linear-gradient(135deg,#38bdf8,#0ea5e9);border:2px solid #0ea5e9;border-radius:.75rem;margin:1.5rem 0;padding:1.5rem}.calculated-days-display .days-info{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}@media(max-width:639px){.calculated-days-display .days-info{grid-template-columns:1fr}}.calculated-days-display .days-card{background:#fff;border-radius:.5rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;display:flex;flex-direction:column;gap:.5rem;padding:1rem;transition:transform .2s ease,box-shadow .2s ease}.calculated-days-display .days-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.calculated-days-display .days-card .days-label{color:#475569;font-size:.875rem;font-weight:600}.calculated-days-display .days-card .days-value{color:#0ea5e9;font-size:1.5rem;font-weight:700}.calculated-days-display .days-card.warning{border-left:4px solid #ef4444}.calculated-days-display .days-card.warning .days-value.warning-text{color:#ef4444}.calculated-days-display .days-card.success{border-left:4px solid #10b981}.calculated-days-display .days-card.success .days-value.success-text{color:#10b981}.calculated-days-display .days-breakdown{background:#fffffff2;border-left:4px solid #0097b2;border-radius:.5rem;padding:1rem}.calculated-days-display .days-breakdown .breakdown-title{color:#0f172a;font-size:1rem;font-weight:600;margin:0 0 .75rem}.calculated-days-display .days-breakdown .breakdown-list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:0;padding:0}.calculated-days-display .days-breakdown .breakdown-list li{color:#334155;font-size:.875rem;line-height:1.5;padding-left:.5rem}.conge-validation{padding:1.5rem}.conge-validation__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.conge-validation__header h1{color:#0f172a;font-size:1.875rem;font-weight:700;margin:0}@media(max-width:639px){.conge-validation__header{align-items:stretch;flex-direction:column;gap:1rem}}.validation-list{flex-direction:column;gap:1.5rem}.validation-card{border:1px solid #e2e8f0;border-left:4px solid #f0ee71}.validation-card__header{align-items:flex-start;padding-bottom:1rem}.validation-card__header .employee-info h3{color:#0f172a;font-size:1.25rem;margin:0 0 .25rem}.validation-card__header .employee-info .employee-type{background:#f1f5f9;border-radius:.375rem;color:#475569;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:uppercase}.validation-card__header .period-info{color:#0f172a;font-weight:600;text-align:right}.validation-card__header .period-info .days{color:#475569;display:block;font-size:.875rem;font-weight:400;margin-top:.25rem}@media(max-width:639px){.validation-card__header .period-info{text-align:left}}.validation-card__content .motif strong{font-weight:500}.validation-card__content .motif p{background:#f8fafc;border-radius:.5rem;color:#334155;line-height:1.6;padding:1rem}.validation-card__actions{gap:.75rem;justify-content:flex-end}.validation-card__actions .btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;justify-content:center;text-decoration:none;transition:all .2s ease-in-out;white-space:nowrap}.validation-card__actions .btn:disabled{cursor:not-allowed;opacity:.6}.validation-card__actions .btn{font-size:1rem;padding:.75rem 1.5rem}.validation-card__actions .btn--success{background:#10b981;color:#fff}.validation-card__actions .btn--success:hover:not(:disabled){background:#03ad77}.validation-card__actions .btn--danger{background:#ef4444;color:#fff}.validation-card__actions .btn--danger:hover:not(:disabled){background:#dc2626}.modal{overflow-y:auto}.modal__header{padding:1.5rem 1.5rem 1rem}.modal__header h3{font-size:1.25rem}.modal__content textarea{min-height:120px}.modal__actions{padding:1rem 1.5rem 1.5rem}@media(max-width:639px){.modal__actions{flex-direction:column}}.modal__actions .btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:inline-flex;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;justify-content:center;text-decoration:none;transition:all .2s ease-in-out;white-space:nowrap}.modal__actions .btn:disabled{cursor:not-allowed;opacity:.6}.modal__actions .btn{font-size:1rem;padding:.75rem 1.5rem}.modal__actions .btn--secondary{background:#fff;border:1px solid #e2e8f0;color:#334155}.modal__actions .btn--secondary:hover:not(:disabled){background:#f8fafc}.modal__actions .btn--danger{background:#ef4444;color:#fff}.modal__actions .btn--danger:hover:not(:disabled){background:#dc2626}.multiple-validation-status{background-color:#f8f9fa;border:1px solid #e0e6ed;border-radius:8px;margin:16px 0;padding:16px}.multiple-validation-status .validation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.multiple-validation-status .validation-header .status-badge{border-radius:4px;font-size:.875rem;font-weight:500;padding:4px 12px}.multiple-validation-status .validation-header .status-badge.status-en_attente{background-color:#fef3c7;color:#92400e}.multiple-validation-status .validation-header .status-badge.status-partiellement_valide{background-color:#dbeafe;color:#1e40af}.multiple-validation-status .validation-header .status-badge.status-approuve{background-color:#d1fae5;color:#065f46}.multiple-validation-status .validation-header .status-badge.status-refuse{background-color:#fee2e2;color:#991b1b}.multiple-validation-status .validation-header .validation-progress{color:#374151;font-weight:600}.multiple-validation-status .completed-validations,.multiple-validation-status .pending-validations{margin-bottom:16px}.multiple-validation-status .completed-validations h4,.multiple-validation-status .pending-validations h4{color:#374151;font-size:.875rem;font-weight:600;margin-bottom:8px}.multiple-validation-status .completed-validations .validator-item,.multiple-validation-status .pending-validations .validator-item{align-items:center;border-radius:4px;display:flex;font-size:.875rem;margin-bottom:4px;padding:8px 12px}.multiple-validation-status .completed-validations .validator-item.completed,.multiple-validation-status .pending-validations .validator-item.completed{background-color:#d1fae5;border-left:4px solid #10b981}.multiple-validation-status .completed-validations .validator-item.pending,.multiple-validation-status .pending-validations .validator-item.pending{background-color:#fef3c7;border-left:4px solid #f59e0b}.multiple-validation-status .completed-validations .validator-item .validator-name,.multiple-validation-status .pending-validations .validator-item .validator-name{font-weight:500;margin-right:12px}.multiple-validation-status .completed-validations .validator-item .validator-role,.multiple-validation-status .pending-validations .validator-item .validator-role{color:#6b7280;font-style:italic;margin-right:12px}.multiple-validation-status .completed-validations .validator-item .validation-date,.multiple-validation-status .pending-validations .validator-item .validation-date{color:#4b5563;margin-left:auto}.multiple-validation-status .completed-validations .validator-item .validator-comment,.multiple-validation-status .pending-validations .validator-item .validator-comment{color:#6b7280;font-style:italic;margin-top:4px;width:100%}.simple-validation-status{display:flex;justify-content:center;margin:8px 0}.validation-status-loading{color:#6b7280;padding:16px;text-align:center}.sidebar-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media(min-width:1025px){.sidebar-overlay{display:none}}@media(min-width:1024px){.sidebar-overlay{display:none}}.sidebar{background:#fff;border-right:1px solid #e2e8f0;height:100vh;left:0;overflow-y:auto;position:fixed;top:0;transition:transform .3s ease;width:260px;z-index:1000}@media(max-width:1024px){.sidebar{transform:translateX(-100%);z-index:1001}.sidebar--open{transform:translateX(0)}}.sidebar .logo{margin-bottom:4px;text-align:center}.sidebar .logo img{height:60px;margin-bottom:-10px;margin-left:25px;width:150px}@media(min-width:1024px){.sidebar{box-shadow:none;position:-webkit-sticky;position:sticky;transform:translateX(0)}}.sidebar--open{transform:translateX(0)}.sidebar__header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem .75rem}.sidebar__nav{padding:.75rem 0}.sidebar__link{gap:.5rem;padding:.5rem .75rem}.sidebar__link--active{padding-left:calc(.75rem - 3px)}.sidebar__section{margin:.75rem 0}.sidebar__section-title{font-size:1.25rem;padding:.5rem .75rem}.sidebar__user{padding:.75rem}.sidebar__close{background:none;border:none;color:#64748b;cursor:pointer;display:block;font-size:1.25rem;padding:.25rem}@media(min-width:1024px){.sidebar__close{display:none}}.sidebar__close:hover{color:#334155}.sidebar__nav{flex:1 1;overflow-y:auto;padding:1rem 0}.sidebar__link{align-items:center;border-radius:.5rem;color:#475569;display:flex;gap:.75rem;margin:0 .5rem;padding:.75rem 1rem;text-decoration:none;transition:all .2s ease-in-out}.sidebar__link:hover{background:#f8fafc;color:#0097b2}.sidebar__link--active{background:#0097b21a;border-left:3px solid #0097b2;color:#0097b2;margin-left:.5rem;padding-left:calc(1rem - 3px)}.sidebar__icon{font-size:1.125rem;text-align:center;width:24px}.sidebar__text{font-weight:500}.sidebar__section{margin:1rem 0}.sidebar__section-title{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.sidebar__user{border-top:1px solid #e2e8f0;padding:1rem}.sidebar__user-info{align-items:center;border-radius:.5rem;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:background-color .2s ease-in-out}.sidebar__user-info:hover{background:#f8fafc}.sidebar__avatar{align-items:center;background:#0097b2;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:40px;justify-content:center;width:40px}.sidebar__user-details{flex:1 1;min-width:0}.sidebar__user-name{color:#0f172a;font-size:.875rem;font-weight:600}.sidebar__user-name,.sidebar__user-role{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar__user-role{color:#64748b;font-size:.75rem}.sidebar__dropdown-icon{color:#94a3b8;font-size:.75rem;transition:transform .2s ease-in-out}.sidebar__dropdown{background:#f8fafc;border-radius:.5rem;margin-top:.5rem;overflow:hidden}.sidebar__dropdown-item{background:none;border:none;color:#334155;cursor:pointer;display:block;font-size:.875rem;padding:.75rem;text-align:left;text-decoration:none;transition:background-color .2s ease-in-out;width:100%}.sidebar__dropdown-item:hover{background:#f1f5f9}.sidebar__dropdown-item--logout{border-top:1px solid #e2e8f0;color:#ef4444}.sidebar__dropdown-item--logout:hover{background:#ef44440d}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 2px 0 #0000000d;display:flex;height:70px;justify-content:space-between;left:260px;padding:0 1.5rem;position:fixed;right:0;top:0;transition:left .3s ease;z-index:999}@media(max-width:1024px){.topbar{left:0}}@media(max-width:639px){.topbar{height:60px;padding:0 1rem}}.topbar__left{gap:1rem}.topbar__left,.topbar__logo{align-items:center;display:flex}.topbar__logo{gap:.5rem}.topbar__logo img{height:40px;width:auto}@media(max-width:639px){.topbar__logo img{height:32px}}.topbar__menu-btn{background:none;border:none;cursor:pointer;display:none;flex-direction:column;height:20px;justify-content:space-between;padding:0;transition:all .3s ease;width:28px}@media(max-width:1024px){.topbar__menu-btn{display:flex}}.topbar__menu-btn span{background-color:#334155;border-radius:2px;display:block;height:3px;transition:all .3s ease;width:100%}.topbar__menu-btn:hover span{background-color:#0097b2}.topbar__menu-btn:active{transform:scale(.95)}.topbar__title{color:#0f172a;font-size:1.25rem;font-weight:600}@media(max-width:639px){.topbar__title{font-size:1.125rem}}@media(max-width:480px){.topbar__title{display:none}}.topbar__right{align-items:center;display:flex;gap:1rem}.topbar__user{position:relative}.topbar__user-info{align-items:center;border-radius:.75rem;cursor:pointer;display:flex;gap:.75rem;padding:.5rem .75rem;transition:all .2s ease}.topbar__user-info:hover{background:#f8fafc}@media(max-width:639px){.topbar__user-info{gap:.5rem;padding:.5rem}}.topbar__user-details{align-items:flex-end;display:flex;flex-direction:column}@media(max-width:640px){.topbar__user-details{display:none}}.topbar__user-name{color:#0f172a;font-size:.875rem;font-weight:600;white-space:nowrap}.topbar__user-role{color:#475569;font-size:.75rem;white-space:nowrap}.topbar__avatar{border:2px solid #0097b2;border-radius:50%;flex-shrink:0;height:40px;overflow:hidden;position:relative;width:40px}@media(max-width:639px){.topbar__avatar{height:36px;width:36px}}.topbar__avatar-img{height:100%;object-fit:cover;width:100%}.topbar__avatar-initials{align-items:center;background:linear-gradient(135deg,#0097b2,#10b981);color:#fff;display:flex;font-size:.875rem;font-weight:700;height:100%;justify-content:center;width:100%}.topbar__dropdown-icon{color:#475569;font-size:.75rem;transition:transform .2s ease}@media(max-width:640px){.topbar__dropdown-icon{display:none}}.topbar__dropdown{animation:fadeInDown .2s ease;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}@media(max-width:639px){.topbar__dropdown{min-width:160px;right:-.5rem}}.topbar__dropdown-item{align-items:center;background:none;border:none;color:#334155;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.75rem 1rem;text-align:left;text-decoration:none;transition:all .2s ease;width:100%}.topbar__dropdown-item:hover{background:#f8fafc;color:#0f172a}.topbar__dropdown-item--logout{border-top:1px solid #e2e8f0;color:#ef4444}.topbar__dropdown-item--logout:hover{background:#ef44440d;color:#dc2626}.topbar__dropdown-item--logout .dropdown-icon{height:18px;width:18px}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.layout{background:#f8fafc}.layout,.layout__main{display:flex;min-height:100vh}.layout__main{flex:1 1;flex-direction:column;margin-left:7px;padding-top:70px;transition:margin-left .3s ease}@media(max-width:1024px){.layout__main{margin-left:0}}@media(max-width:639px){.layout__main{padding-top:60px}}.layout__content{flex:1 1;overflow-x:hidden;padding:.5rem}@media(max-width:639px){.layout__content{padding:1rem}}.admin-conge-list{margin-top:2rem}.admin-conge-list .header-stats{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-conge-list .header-stats .stat-item{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1rem}.admin-conge-list .header-stats .stat-item .label{color:#666;font-size:.9rem;margin-bottom:.5rem}.admin-conge-list .header-stats .stat-item .value{color:#0097b2;font-size:1.5rem}.admin-conge-list .table .employee-cell .employee-email{color:#666;font-size:.8rem;margin-top:.25rem}.admin-conge-list .table .employee-poste{color:#555;font-size:.9rem}.admin-conge-list .table .period-cell .date-debut,.admin-conge-list .table .period-cell .date-fin{font-size:.9rem;line-height:1.2}.admin-conge-list .table .period-cell .date-fin{color:#666}.admin-conge-list .table .date-creation{color:#666;font-size:.8rem}.admin-conge-list .table .motif-text{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info p{font-size:.9rem;margin:0}.admin-conge-list .employee-stats-section .employee-stat-card .stats{grid-template-columns:repeat(3,1fr)}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .label{font-size:.8rem}.header__nav .admin-dropdown{position:relative}.header__nav .admin-dropdown:hover .admin-submenu{display:block}.header__nav .admin-dropdown .admin-submenu{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:none;left:0;min-width:200px;position:absolute;top:100%;z-index:1000}.header__nav .admin-dropdown .admin-submenu .submenu-link{border-bottom:1px solid #f3f4f6;color:#374151;display:block;padding:.75rem 1rem;text-decoration:none}.header__nav .admin-dropdown .admin-submenu .submenu-link:hover{background:#f9fafb;color:#2563eb}.header__nav .admin-dropdown .admin-submenu .submenu-link:last-child{border-bottom:none}.admin-conge-list{background:#f8fafc;margin-top:-6rem;min-height:calc(100vh - 80px);padding:3rem}.admin-conge-list__header{margin-bottom:2rem}.admin-conge-list__header h1{align-items:center;color:#1e293b;display:flex;font-size:2rem;font-weight:700;gap:.75rem;margin-bottom:1.5rem}.admin-conge-list__header h1:before{content:"📊";font-size:1.75rem}.admin-conge-list .header-stats{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:2rem}.admin-conge-list .header-stats .stat-item{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;padding:1.5rem;position:relative;text-align:center;transition:all .3s ease}.admin-conge-list .header-stats .stat-item:before{background:linear-gradient(90deg,#3b82f6,#0097b2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.admin-conge-list .header-stats .stat-item:hover{box-shadow:0 10px 25px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.admin-conge-list .header-stats .stat-item .label{color:#64748b;display:block;font-size:.875rem;font-weight:500;letter-spacing:.05em;margin-bottom:.75rem;text-transform:uppercase}.admin-conge-list .header-stats .stat-item .value{color:#1e293b;font-size:2rem;font-weight:700;line-height:1}.admin-conge-list .header-stats .stat-item .value.text-warning{color:#ffdc16}.admin-conge-list .header-stats .stat-item .value.text-success{color:#10b981}.admin-conge-list .header-stats .stat-item .value.text-danger{color:#ef4444}.admin-conge-list .header-stats .stat-item .value.text-primary{color:#3b82f6}.admin-conge-list .alert{border-radius:8px;font-weight:500;margin-bottom:1.5rem;padding:1rem 1.5rem}.admin-conge-list .alert--success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.admin-conge-list .alert--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.admin-conge-list .tabs-navigation{background:#fff;border-bottom:2px solid #e2e8f0;border-radius:12px 12px 0 0;box-shadow:0 1px 3px 0 #0000001a;display:flex;flex-wrap:wrap;gap:.5rem;margin:3rem 0;padding-bottom:0}@media(max-width:639px){.admin-conge-list .tabs-navigation{flex-wrap:wrap}}.admin-conge-list .tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s ease}.admin-conge-list .tab-button:hover{background:#f0f9ff;color:#333}.admin-conge-list .tab-button--active{border-bottom-color:#0097b2;color:#0097b2}.admin-conge-list .tab-icon{font-size:1.2rem}.admin-conge-list .admin-filters{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-bottom:2rem;padding:1.5rem}.admin-conge-list .admin-filters .filters-row{grid-gap:1.5rem;align-items:end;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media(max-width:768px){.admin-conge-list .admin-filters .filters-row{grid-template-columns:1fr}}.admin-conge-list .admin-filters .filter-group{display:flex;flex-direction:column;gap:.5rem}.admin-conge-list .admin-filters .filter-group.search-group{grid-column:span 2}@media(max-width:768px){.admin-conge-list .admin-filters .filter-group.search-group{grid-column:span 1}}.admin-conge-list .admin-filters .filter-group label{color:#374151;font-size:.875rem;font-weight:600}.admin-conge-list .admin-filters .filter-select,.admin-conge-list .admin-filters .search-input{background:#fff;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;transition:all .2s ease}.admin-conge-list .admin-filters .filter-select:focus,.admin-conge-list .admin-filters .search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-conge-list .admin-filters .filter-select:hover,.admin-conge-list .admin-filters .search-input:hover{border-color:#d1d5db}.admin-conge-list .admin-filters .search-input::placeholder{color:#9ca3af}.admin-conge-list .admin-conge-table{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;margin-bottom:2rem;overflow:hidden}.admin-conge-list .admin-conge-table .table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-conge-list .admin-conge-table .table{border-collapse:collapse;width:100%}.admin-conge-list .admin-conge-table .table thead{background:linear-gradient(135deg,#f0f9ff,#f8fafc);border-bottom:2px solid #e2e8f0}.admin-conge-list .admin-conge-table .table thead th{color:#1f2937;font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:1rem;text-align:left;text-transform:uppercase}.admin-conge-list .admin-conge-table .table tbody tr{border-bottom:1px solid #e5e7eb;transition:background-color .2s ease}.admin-conge-list .admin-conge-table .table tbody tr:hover{background-color:#f9fafb}.admin-conge-list .admin-conge-table .table tbody tr:last-child{border-bottom:none}.admin-conge-list .admin-conge-table .table tbody tr td{padding:1rem;vertical-align:middle}.admin-conge-list .admin-conge-table .table tbody tr td[data-label]{position:relative}.admin-conge-list .admin-conge-table .empty-state{color:#9ca3af;padding:2rem;text-align:center}.admin-conge-list .admin-conge-table .empty-state p{font-size:1rem;margin:0}.admin-conge-list .type-badge{background:#dbeafe;border-radius:12px;color:#1e40af;display:inline-block;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.admin-conge-list .days-badge{background:#ecfdf5;color:#065f46;font-size:.9rem}.admin-conge-list .days-badge,.admin-conge-list .status-badge{border-radius:8px;display:inline-block;font-weight:600;padding:.4rem .8rem}.admin-conge-list .status-badge{font-size:.8rem}.admin-conge-list .status-badge.status--pending{background:#fef3c7;color:#92400e}.admin-conge-list .status-badge.status--approved{background:#dcfce7;color:#166534}.admin-conge-list .status-badge.status--rejected,.admin-conge-list .unpaid-badge{background:#fee2e2;color:#991b1b}.admin-conge-list .unpaid-badge{border-radius:8px;display:inline-block;font-weight:600;padding:.4rem .8rem}.admin-conge-list .text-muted{color:#9ca3af}.admin-conge-list .actions-cell{display:flex;flex-wrap:wrap;gap:.5rem}.admin-conge-list .btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.25rem;padding:.5rem 1rem;transition:all .2s ease}.admin-conge-list .btn--small{font-size:.8rem;padding:.4rem .8rem}.admin-conge-list .btn--primary{background:#3b82f6;color:#fff}.admin-conge-list .btn--primary:hover{background:#2563eb}.admin-conge-list .btn--success{background:#10b981;color:#fff}.admin-conge-list .btn--success:hover{background:#059669}.admin-conge-list .btn--danger{background:#ef4444;color:#fff}.admin-conge-list .btn--danger:hover{background:#dc2626}.admin-conge-list .btn--secondary{background:#e5e7eb;color:#374151}.admin-conge-list .btn--secondary:hover{background:#d1d5db}.admin-conge-list .btn--outline{background:#0000;border:2px solid #3b82f6;color:#3b82f6}.admin-conge-list .btn--outline:hover{background:#f0f9ff}.admin-conge-list .btn:disabled{cursor:not-allowed;opacity:.5}.admin-conge-list .notifications-salaire-section{margin-bottom:3rem}.admin-conge-list .notifications-salaire-section h2{color:#1f2937;font-size:1.25rem;margin-bottom:1.5rem}.admin-conge-list .notifications-salaire-section .notifications-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.admin-conge-list .notifications-salaire-section .notification-card{background:#fff;border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.admin-conge-list .notifications-salaire-section .notification-card .notification-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.admin-conge-list .notifications-salaire-section .notification-card .notification-header h3{color:#1f2937;font-size:1rem;margin:0}.admin-conge-list .notifications-salaire-section .notification-card .notification-header .notification-date{color:#6b7280;font-size:.8rem;white-space:nowrap}.admin-conge-list .notifications-salaire-section .notification-card .notification-content{margin-bottom:1rem}.admin-conge-list .notifications-salaire-section .notification-card .notification-content p{color:#374151;font-size:.9rem;margin:.25rem 0}.admin-conge-list .notifications-salaire-section .notification-card .notification-content p strong{color:#1f2937}.admin-conge-list .notifications-salaire-section .notification-card .notification-content .warning-text{color:#dc2626;font-weight:600}.admin-conge-list .notifications-salaire-section .notification-card .notification-actions{display:flex;gap:.5rem}.admin-conge-list .employee-stats-section{border-top:1px solid #e5e7eb;margin-top:3rem;padding-top:2rem}.admin-conge-list .employee-stats-section h2{color:#1f2937;font-size:1.25rem;margin-bottom:1.5rem}.admin-conge-list .employee-stats-section .stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.admin-conge-list .employee-stats-section .employee-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:all .2s ease}.admin-conge-list .employee-stats-section .employee-stat-card:hover{box-shadow:0 4px 12px #0000001a}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info{border-bottom:1px solid #e5e7eb;margin-bottom:1rem;padding-bottom:1rem}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info h3{color:#1f2937;font-size:1rem;margin:0 0 .25rem}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info p{color:#6b7280;font-size:.85rem;margin:.25rem 0}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info .employee-email{color:#9ca3af;font-size:.8rem}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info .badge-no-rights{background:#fee2e2;border-radius:4px;color:#991b1b;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.5rem;padding:.25rem .5rem}.admin-conge-list .employee-stats-section .employee-stat-card .stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat{text-align:center}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .label{color:#6b7280;display:block;font-size:.75rem;letter-spacing:.05em;margin-bottom:.25rem;text-transform:uppercase}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .value{color:#1f2937;font-size:1.1rem;font-weight:700}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .value.text-success{color:#10b981}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .value.text-warning{color:#f59e0b}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .value.text-danger{color:#ef4444}.admin-conge-list .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.admin-conge-list .modal-overlay .modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.admin-conge-list .modal-overlay .modal .modal__header{border-bottom:1px solid #e5e7eb;padding:1.5rem}.admin-conge-list .modal-overlay .modal .modal__header h3{color:#1f2937;margin:0}.admin-conge-list .modal-overlay .modal .modal__content{padding:1.5rem}.admin-conge-list .modal-overlay .modal .modal__content .validation-details{background:#f9fafb;border-radius:8px;margin-bottom:1rem;padding:1rem}.admin-conge-list .modal-overlay .modal .modal__content .validation-details p{color:#374151;font-size:.9rem;margin:.5rem 0}.admin-conge-list .modal-overlay .modal .modal__content .validation-details p strong{color:#1f2937}.admin-conge-list .modal-overlay .modal .modal__content .form-group{margin-bottom:1rem}.admin-conge-list .modal-overlay .modal .modal__content .form-group label{color:#374151;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.admin-conge-list .modal-overlay .modal .modal__content .form-group label .required{color:#ef4444}.admin-conge-list .modal-overlay .modal .modal__content .form-group textarea{border:1px solid #e5e7eb;border-radius:6px;font-family:inherit;font-size:.9rem;padding:.75rem;resize:vertical;width:100%}.admin-conge-list .modal-overlay .modal .modal__content .form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.admin-conge-list .modal-overlay .modal .modal__actions{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem}.admin-conge-list .modal-overlay .modal .modal__actions .btn{flex:1 1;padding:.75rem 1.5rem}.admin-conge-list .own-request,.admin-conge-list .status-info{background:#e0e7ff;border-radius:6px;color:#3730a3;display:inline-block;font-size:.75rem;font-weight:600;padding:.4rem .8rem}.admin-conge-list .status-info{background:#f3f4f6;color:#6b7280}.admin-conge-list .processing{align-items:center;color:#6b7280;display:flex;font-size:.9rem;gap:.5rem}.admin-conge-list .processing .spinner{animation:spin .6s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}@media(max-width:1024px){.admin-conge-list{padding:1.5rem}.admin-conge-list .header-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.admin-conge-list .employee-stats-section .stats-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}@media(max-width:768px){.admin-conge-list{padding:1rem}.admin-conge-list__header h1{font-size:1.5rem}.admin-conge-list .header-stats{gap:1rem;grid-template-columns:repeat(2,1fr)}.admin-conge-list .header-stats .stat-item{padding:1rem}.admin-conge-list .header-stats .stat-item .value{font-size:1.5rem}.admin-conge-list .tabs-navigation{margin:1.5rem 0}.admin-conge-list .tab-button{font-size:.85rem;padding:.6rem 1rem}.admin-conge-list .admin-conge-table .table{font-size:.8rem}.admin-conge-list .admin-conge-table .table tbody td,.admin-conge-list .admin-conge-table .table thead th{padding:.75rem .5rem}.admin-conge-list .admin-conge-table .table tbody td:first-child,.admin-conge-list .admin-conge-table .table thead th:first-child{padding-left:1rem}.admin-conge-list .admin-conge-table .table tbody td:last-child,.admin-conge-list .admin-conge-table .table thead th:last-child{padding-right:1rem}.admin-conge-list .employee-stats-section .stats-grid{grid-template-columns:1fr}}@media(max-width:480px){.admin-conge-list{padding:.75rem}.admin-conge-list .header-stats{gap:.75rem;grid-template-columns:repeat(2,1fr)}.admin-conge-list .header-stats .stat-item{padding:.75rem}.admin-conge-list .header-stats .stat-item .label{font-size:.7rem}.admin-conge-list .header-stats .stat-item .value{font-size:1.25rem}.admin-conge-list .admin-filters{padding:1rem}.admin-conge-list .admin-filters .filters-row{gap:.75rem}.admin-conge-list .tab-button{font-size:.8rem;padding:.5rem 1rem}.admin-conge-list .tab-button .tab-icon{font-size:1rem}.admin-conge-list .modal-overlay .modal{margin:1rem;width:calc(100% - 2rem)}}@media(max-width:768px){.admin-conge-list .admin-conge-table .table-responsive{overflow:visible}.admin-conge-list .admin-conge-table .table{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.admin-conge-list .admin-conge-table .table thead{display:none}.admin-conge-list .admin-conge-table .table tbody{display:contents}.admin-conge-list .admin-conge-table .table tr{grid-gap:.75rem;background:#fff;border:1px solid #e2e8f0;border-bottom:none;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:grid;gap:.75rem;grid-template-columns:1fr;margin-bottom:1rem;padding:1rem}.admin-conge-list .admin-conge-table .table tr:hover{background:#fff;box-shadow:0 4px 12px #00000026;transform:none}.admin-conge-list .admin-conge-table .table tr td{grid-gap:1rem;align-items:start;border:none;display:grid;gap:1rem;grid-template-columns:120px 1fr;padding:0!important}.admin-conge-list .admin-conge-table .table tr td:before{color:#3b82f6;content:attr(data-label);font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;word-break:break-word}.admin-conge-list .admin-conge-table .table tr td:first-child{grid-column:1/-1;grid-template-columns:1fr}.admin-conge-list .admin-conge-table .table tr td:first-child:before{content:"EMPLOYÉ"}.admin-conge-list .admin-conge-table .table tr td:nth-child(2):before{content:"TYPE"}.admin-conge-list .admin-conge-table .table tr td:nth-child(3):before{content:"PÉRIODE"}.admin-conge-list .admin-conge-table .table tr td:nth-child(4):before{content:"JOURS"}.admin-conge-list .admin-conge-table .table tr td:nth-child(5):before{content:"MOTIF"}.admin-conge-list .admin-conge-table .table tr td:nth-child(6):before{content:"STATUT"}.admin-conge-list .admin-conge-table .table tr td:nth-child(7):before{content:"ACTIONS";grid-column:1/-1}.admin-conge-list .admin-conge-table .table tr td:nth-child(8):before{content:"JOURS NON PAYÉS"}.admin-conge-list .admin-conge-table .table tr .employee-cell .employee-name{font-size:1rem}.admin-conge-list .admin-conge-table .table tr .period-cell{display:flex;flex-direction:column;gap:.25rem}.admin-conge-list .admin-conge-table .table tr .days-badge{justify-content:flex-start}.admin-conge-list .admin-conge-table .table tr .status-badge{display:inline-block;width:-webkit-fit-content;width:fit-content}.admin-conge-list .admin-conge-table .table tr .actions-cell{gap:.5rem;grid-column:1/-1}.admin-conge-list .admin-conge-table .table tr .actions-cell .btn{flex:1 1;min-width:100px}.admin-conge-list .admin-conge-table .table tr .actions-cell .btn--small{padding:.75rem 1rem}}@media(max-width:480px){.admin-conge-list{padding:.75rem}.admin-conge-list__header h1{font-size:1.25rem}.admin-conge-list .header-stats{gap:.75rem;grid-template-columns:repeat(2,1fr)}.admin-conge-list .header-stats .stat-item{padding:.75rem}.admin-conge-list .header-stats .stat-item .label{font-size:.7rem}.admin-conge-list .header-stats .stat-item .value{font-size:1.25rem}.admin-conge-list .admin-filters{padding:1rem}.admin-conge-list .admin-filters .filters-row{gap:.75rem;grid-template-columns:1fr}.admin-conge-list .admin-conge-table{margin-bottom:2rem}.admin-conge-list .admin-conge-table .table tr{gap:.5rem;padding:.75rem}.admin-conge-list .admin-conge-table .table tr td{gap:.5rem;grid-template-columns:100px 1fr}.admin-conge-list .admin-conge-table .table tr td:before{font-size:.75rem}.admin-conge-list .admin-conge-table .table tr .employee-cell .employee-name{font-size:.9rem}.admin-conge-list .admin-conge-table .table tr .employee-cell .employee-email{font-size:.75rem}.admin-conge-list .admin-conge-table .table tr .actions-cell .btn{font-size:.75rem;padding:.5rem .75rem}.admin-conge-list .admin-conge-table .table tr .actions-cell .btn--small{padding:.5rem .75rem}.admin-conge-list .employee-stats-section h2{font-size:1.25rem}.admin-conge-list .employee-stats-section .stats-grid{grid-template-columns:1fr}.admin-conge-list .employee-stats-section .employee-stat-card{padding:1rem}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info h3{font-size:1rem}.admin-conge-list .employee-stats-section .employee-stat-card .employee-info .employee-details,.admin-conge-list .employee-stats-section .employee-stat-card .employee-info .employee-email{font-size:.75rem}.admin-conge-list .employee-stats-section .employee-stat-card .stats{gap:.5rem;grid-template-columns:repeat(2,1fr)}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat{padding:.5rem}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .label{font-size:.7rem}.admin-conge-list .employee-stats-section .employee-stat-card .stats .stat .value{font-size:1rem}}.admin-user-form{width:100%}.admin-user-form .modal__header{align-items:center;display:flex;justify-content:space-between}.admin-user-form .modal__header h2{color:#0f172a;font-size:1.25rem;margin:0}.admin-user-form .modal__header .modal__close{align-items:center;background:none;border:none;color:#475569;cursor:pointer;display:flex;font-size:1.25rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.admin-user-form .modal__header .modal__close:hover{background:#f1f5f9;border-radius:.375rem;color:#0f172a}.admin-user-form .modal__content{max-height:80vh;overflow-y:auto}.admin-user-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media(max-width:639px){.admin-user-form .form-row{grid-template-columns:1fr}}.admin-user-form .form-group.admin-sections{align-items:flex-start;border-top:1px solid #dbdbdb;display:flex;gap:11px;margin-top:12px;padding-top:10px}.admin-user-form .form-group.admin-sections input{cursor:pointer;height:18px;width:18px}.admin-user-form .form-group{margin-bottom:1rem}.admin-user-form .form-group label{color:#334155;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.admin-user-form .form-group label input[type=checkbox]{cursor:pointer;margin-right:.5rem}.admin-user-form .form-group input,.admin-user-form .form-group select,.admin-user-form .form-group textarea{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.admin-user-form .form-group input:focus,.admin-user-form .form-group select:focus,.admin-user-form .form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.admin-user-form .form-group input::placeholder,.admin-user-form .form-group select::placeholder,.admin-user-form .form-group textarea::placeholder{color:#94a3b8}.admin-user-form .form-group input,.admin-user-form .form-group select,.admin-user-form .form-group textarea{font-size:.875rem}.admin-user-form .form-group textarea{min-height:100px;resize:vertical}.admin-user-form .form-section{border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem;padding-bottom:1rem}.admin-user-form .form-section .form-section-title{color:#334155;font-size:.875rem;font-weight:600;letter-spacing:.05em;margin-bottom:1rem;text-transform:uppercase}.admin-user-form .help-text{color:#475569;display:block;font-size:.75rem;margin-top:.25rem}.admin-user-form .error-text{color:#ef4444;display:block;font-size:.75rem;font-weight:500;margin-top:.25rem}.admin-user-form .file-preview{align-items:center;background:#f8fafc;border-radius:.5rem;display:flex;gap:.5rem;margin-top:.5rem;padding:.75rem}.admin-user-form .file-preview .file-icon{color:#94a3b8;flex-shrink:0;height:24px;width:24px}.admin-user-form .file-preview span{color:#334155;font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-form .modal__actions{display:flex;gap:1rem}.admin-user-form .modal__actions .btn{flex:1 1}@media(max-width:639px){.admin-user-form .modal__actions{flex-direction:column-reverse}}.admin-user-list{padding:2rem}@media(min-width:640px)and (max-width:1023px){.admin-user-list{padding:1.5rem}}@media(max-width:639px){.admin-user-list{padding:.75rem}}.admin-user-list__header{align-items:flex-start;border-bottom:2px solid #e2e8f0;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2rem;padding-bottom:1.5rem}@media(min-width:640px)and (max-width:1023px){.admin-user-list__header{align-items:stretch;flex-direction:column;gap:1rem}}@media(max-width:639px){.admin-user-list__header{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem}}.admin-user-list__header .header-content{flex:1 1}.admin-user-list__header .header-content h1{color:#0f172a;font-size:1.875rem;font-weight:700;margin:0 0 .5rem}@media(max-width:639px){.admin-user-list__header .header-content h1{font-size:1.25rem}}.admin-user-list__header .header-content p{color:#475569;font-size:1rem;margin:0}@media(max-width:639px){.admin-user-list__header .header-content p{font-size:.875rem}}.admin-user-list__header .btn{align-self:flex-start;white-space:nowrap}@media(min-width:640px)and (max-width:1023px){.admin-user-list__header .btn{align-self:stretch;width:100%}}@media(max-width:639px){.admin-user-list__header .btn{font-size:.875rem;padding:.75rem 1rem;width:100%}}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}@media(max-width:639px){.loading-container{min-height:200px}}.loading-container .spinner{animation:spin 1s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0097b2;height:48px;margin-bottom:1.5rem;width:48px}@media(max-width:639px){.loading-container .spinner{height:40px;margin-bottom:1rem;width:40px}}.loading-container p{color:#475569;font-size:1rem}@media(max-width:639px){.loading-container p{font-size:.875rem}}.alert{align-items:flex-start;border:1px solid;gap:.75rem}@media(max-width:639px){.alert{font-size:.875rem;margin-bottom:1rem;padding:.75rem}}.alert--error{border-color:#fecaca;color:#991b1b}.alert--success{border-color:#bbf7d0;color:#166534}.alert .alert-icon{flex-shrink:0;height:20px;margin-top:2px;width:20px}.admin-filters{border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;margin-bottom:2rem;padding:1.5rem}@media(max-width:639px){.admin-filters{margin-bottom:1.5rem;padding:1rem}}.admin-filters .filters-container{grid-gap:1.5rem;align-items:flex-end;display:grid;gap:1.5rem;grid-template-columns:1fr 200px auto}@media(min-width:640px)and (max-width:1023px){.admin-filters .filters-container{gap:1rem;grid-template-columns:1fr}}@media(max-width:639px){.admin-filters .filters-container{gap:.75rem;grid-template-columns:1fr}}.admin-filters .filter-group{gap:.5rem}.admin-filters .filter-group label{color:#334155;font-size:.75rem;letter-spacing:.05em}@media(max-width:639px){.admin-filters .filter-group label{font-size:10px}.admin-filters .filter-group{gap:.25rem}}.admin-filters .search-input-container{position:relative}.admin-filters .search-input-container .search-icon{color:#94a3b8;height:18px;left:.75rem;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);width:18px}@media(max-width:639px){.admin-filters .search-input-container .search-icon{height:16px;width:16px}}.admin-filters .search-input-container .search-input{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.admin-filters .search-input-container .search-input:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.admin-filters .search-input-container .search-input::placeholder{color:#94a3b8}.admin-filters .search-input-container .search-input{font-size:.875rem;padding:.75rem 1rem .75rem 2.5rem}@media(max-width:639px){.admin-filters .search-input-container .search-input{font-size:14px;padding:.5rem .75rem .5rem 2rem}}.admin-filters .filter-select{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.admin-filters .filter-select:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.admin-filters .filter-select::placeholder{color:#94a3b8}.admin-filters .filter-select{font-size:.875rem;padding:.75rem 1rem}@media(max-width:639px){.admin-filters .filter-select{font-size:14px;padding:.5rem .75rem}.admin-filters .filter-stats{grid-column:1/-1;justify-self:flex-start}}.admin-filters .filter-stats .stat-badge{background:#f1f5f9;border-radius:20px;color:#334155;display:inline-block;font-size:.75rem;font-weight:600;padding:.5rem 1rem}@media(max-width:639px){.admin-filters .filter-stats .stat-badge{font-size:11px;padding:.25rem .75rem}}.users-container{min-height:300px}@media(max-width:639px){.users-container{min-height:200px}}.empty-state{background:#fff;border:1px dashed #e2e8f0}@media(max-width:639px){.empty-state{padding:1.5rem .75rem}}.empty-state__icon{color:#cbd5e1;height:64px;margin-bottom:1rem;width:64px}@media(max-width:639px){.empty-state__icon{height:48px;margin-bottom:.75rem;width:48px}}.empty-state h3{color:#0f172a;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}@media(max-width:639px){.empty-state h3{font-size:1rem}}.empty-state p{margin:0 0 1.5rem}@media(max-width:639px){.empty-state p{font-size:.875rem;margin-bottom:1rem}.empty-state .btn{font-size:.875rem;width:100%}}.users-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}@media(min-width:640px)and (max-width:1023px){.users-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:639px){.users-grid{gap:.75rem;grid-template-columns:1fr}}.user-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;display:flex;flex-direction:column;overflow:hidden;transition:all .3s ease}.user-card:hover{border-color:#0097b2;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-4px)}@media(max-width:639px){.user-card:hover{box-shadow:0 1px 2px 0 #0000000d;transform:none}}.user-card__header{align-items:flex-start;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem}@media(max-width:639px){.user-card__header{padding:.75rem}}.user-card__content{display:flex;flex:1 1;flex-direction:column;padding:1rem}@media(max-width:639px){.user-card__content{padding:.75rem}}.user-card__actions{display:flex;gap:.5rem}@media(max-width:639px){.user-card__actions{gap:.25rem}}.user-card__actions .action-btn{align-items:center;background:#f1f5f9;border:none;border-radius:.375rem;color:#475569;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:all .2s ease;width:36px}@media(max-width:639px){.user-card__actions .action-btn{height:32px;width:32px}}.user-card__actions .action-btn svg{height:18px;width:18px}@media(max-width:639px){.user-card__actions .action-btn svg{height:16px;width:16px}}.user-card__actions .action-btn:hover{background:#e2e8f0;color:#1e293b}.user-card__actions .action-btn--danger:hover{background:#ef4444;color:#fff}.user-avatar{border-radius:50%;box-shadow:0 1px 2px 0 #0000000d;flex-shrink:0;height:56px;overflow:hidden;width:56px}@media(max-width:639px){.user-avatar{height:48px;width:48px}}.user-avatar .avatar-placeholder,.user-avatar img{height:100%;object-fit:cover;width:100%}.user-avatar .avatar-placeholder{align-items:center;background:linear-gradient(135deg,#0097b2,#00d4ff);color:#fff;display:flex;font-size:1rem;font-weight:600;justify-content:center}@media(max-width:639px){.user-avatar .avatar-placeholder{font-size:.875rem}}.user-name{color:#0f172a;font-size:1rem;font-weight:600;margin:0 0 .25rem}@media(max-width:639px){.user-name{font-size:.875rem}}.user-email{color:#475569;font-size:.875rem;margin:0 0 .5rem;word-break:break-word}@media(max-width:639px){.user-email{font-size:12px;margin-bottom:.25rem}}.user-poste{color:#334155;font-size:.875rem;font-weight:500;margin:0 0 .75rem}@media(max-width:639px){.user-poste{font-size:12px;margin-bottom:.5rem}}.user-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}@media(max-width:639px){.user-meta{gap:.25rem;margin-bottom:.5rem}}.type-badge{border-radius:.375rem;color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .75rem}@media(max-width:639px){.type-badge{font-size:11px;padding:3px 8px}}.user-start-date{align-items:center;color:#475569;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.75rem}@media(max-width:639px){.user-start-date{font-size:12px;margin-bottom:.5rem}}.user-start-date .date-icon{color:#94a3b8;flex-shrink:0;height:16px;width:16px}@media(max-width:639px){.user-start-date .date-icon{height:14px;width:14px}}.user-roles{border-top:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem;padding-top:.75rem}@media(max-width:639px){.user-roles{gap:.25rem;margin-top:.5rem;padding-top:.5rem}}.user-roles .role-tag{background:#f1f5f9;border-radius:.375rem;color:#334155;font-size:.75rem;font-weight:500;padding:.25rem .5rem}@media(max-width:639px){.user-roles .role-tag{font-size:10px;padding:2px 6px}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media(max-width:639px){.modal-overlay{align-items:flex-end;padding:.5rem}}.modal{animation:slideUp .3s ease;display:flex;flex-direction:column;max-height:90vh;max-width:803px}@media(max-width:639px){.modal{border-radius:.75rem .75rem 0 0;max-height:95vh}}.modal--danger .modal__header{background:#fef2f2;color:#ef4444}.modal__header{background:#f8fafc}@media(max-width:639px){.modal__header{padding:1rem}}.modal__header h2,.modal__header h3{color:#0f172a;font-size:1.125rem;font-weight:600;margin:0}@media(max-width:639px){.modal__header h2,.modal__header h3{font-size:1rem}}.modal__close{flex-shrink:0;transition:all .2s ease}@media(max-width:639px){.modal__close{font-size:1rem;height:28px;width:28px}}.modal__close:hover{background:#f1f5f9}.modal__content{flex:1 1}@media(max-width:639px){.modal__content{font-size:.875rem;padding:1rem}}.modal__content .danger-icon{color:#ef4444;height:64px;margin:0 auto 1rem;width:64px}@media(max-width:639px){.modal__content .danger-icon{height:48px;margin-bottom:.75rem;width:48px}}.modal__content p{color:#334155;margin:0 0 .75rem}@media(max-width:639px){.modal__content p{font-size:.875rem;margin-bottom:.5rem}}.modal__content p strong{color:#0f172a;font-weight:600}.modal__content .warning-text{color:#ef4444;font-size:.875rem;font-weight:500}@media(max-width:639px){.modal__content .warning-text{font-size:12px}.modal__actions{flex-direction:column-reverse;gap:.75rem;padding:1rem}.modal__actions .btn{font-size:.875rem;padding:.5rem .75rem}}.permission-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #0000;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;padding:1.5rem;transition:all .3s ease}.permission-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.permission-card.status--pending{border-left-color:#f0ee71}.permission-card.status--approved{border-left-color:#10b981}.permission-card.status--rejected{border-left-color:#ef4444}.permission-card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.permission-card__datetime{margin-bottom:1rem}.permission-card__datetime .date{color:#475569;font-size:.875rem;font-weight:600}.permission-card__datetime .time{color:#1e293b;font-size:1rem;margin-top:.25rem}.permission-card__employee{color:#334155;padding:.5rem .75rem}.permission-card__employee,.permission-card__motif{background:#f8fafc;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem}.permission-card__motif{border-left:2px solid #cbd5e1;color:#475569;padding:.75rem}.permission-card__actions{display:flex;gap:.5rem;margin-top:1rem}.status-badge{border-radius:.375rem;font-weight:600;letter-spacing:.5px;padding:.5rem .75rem;text-transform:uppercase}.status-badge.status--pending{background-color:#fef3c7;color:#92400e}.status-badge.status--approved{background-color:#d1fae5;color:#065f46}.status-badge.status--rejected{background-color:#fee2e2;color:#991b1b}.duration-badge{background:#f1f5f9;border-radius:.375rem;color:#334155;font-size:.75rem;font-weight:600;padding:.5rem .75rem}.btn-icon{align-items:center;background:#f1f5f9;border:none;border-radius:.375rem;color:#475569;cursor:pointer;display:inline-flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.btn-icon svg{height:18px;width:18px}.btn-icon:hover{background:#e2e8f0;color:#1e293b}.btn-icon--danger:hover{background:#ef4444;color:#fff}.permission-container{padding:1.5rem}.tabs-navigation{background:#fff;border-bottom:2px solid #e2e8f0;border-radius:12px 12px 0 0;box-shadow:0 1px 3px 0 #0000001a;display:flex;flex-wrap:wrap;gap:.5rem;margin:-1rem 0 1rem;padding-bottom:0}@media(max-width:639px){.tabs-navigation{flex-wrap:wrap}}.tab-button{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#475569;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;padding:1rem 1.5rem;transition:all .3s ease}.tab-button .tab-icon{font-size:1.125rem}.tab-button:hover{color:#0097b2}.tab-button--active{border-bottom-color:#0097b2;color:#0097b2}@media(max-width:639px){.tab-button{font-size:.875rem;padding:.75rem 1rem}}.conge-list__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.conge-list__header h1{font-size:1.5rem;margin:0}@media(max-width:639px){.conge-list__header{align-items:flex-start;flex-direction:column;gap:1rem}}.solde-summary{grid-gap:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2rem;padding:1.5rem}.solde-summary__item{display:flex;flex-direction:column;gap:.5rem}.solde-summary__item .label{color:#475569;font-size:.875rem;font-weight:500}.solde-summary__item .value{color:#0f172a;font-size:1.125rem;font-weight:600}.solde-summary__item .value.highlight{color:#10b981;font-size:1.25rem}.solde-summary__note{border-top:1px solid #e2e8f0;color:#64748b;font-size:.75rem;grid-column:1/-1;padding-top:1rem}.filters{align-items:center;background:#f8fafc;border-radius:.5rem;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1rem}.filters label{color:#334155;font-size:.875rem;font-weight:500}.filters .filter-select{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.filters .filter-select:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.filters .filter-select::placeholder{color:#94a3b8}.filters .filter-select{font-size:.875rem;padding:.5rem .75rem}@media(max-width:639px){.filters{align-items:flex-start;flex-direction:column}.filters .filter-select{width:100%}}.admin-actions{margin-bottom:1.5rem}.admin-actions .btn{display:inline-block}.permission-list__content{min-height:300px}.permissions-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}@media(min-width:640px)and (max-width:1023px){.permissions-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:639px){.permissions-grid{grid-template-columns:1fr}}.empty-state{padding:3rem}.empty-state p{margin-bottom:1.5rem}.admin-filters-permission{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;margin-bottom:1.25rem;padding:1.25rem}.admin-filters-permission .filters-row-permission{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:130px 170px 1fr}@media(max-width:640px){.admin-filters-permission .filters-row-permission{grid-template-columns:1fr 1fr}}@media(max-width:400px){.admin-filters-permission .filters-row-permission{grid-template-columns:1fr}}.admin-filters-permission .filter-group-perm{display:flex;flex-direction:column;gap:.35rem}.admin-filters-permission .filter-group-perm label{color:#94a3b8;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.admin-perm-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.admin-perm-table-wrapper .empty-state{color:#94a3b8;padding:3rem;text-align:center}.email-section{background-color:#f8f9fa;border-left:4px solid #0056b3;border-radius:4px;margin-top:2rem;padding:1.5rem}.email-section .email-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.email-section .email-header h3{color:#0056b3;font-size:1.1rem;font-weight:600;margin:0}.email-section .email-preview{display:flex;flex-direction:column;gap:1.5rem}.email-section .email-field{display:flex;flex-direction:column;gap:.5rem}.email-section .email-field label{color:#333;font-size:.95rem;font-weight:600}.email-section .email-field .email-value{background-color:#fff;border:1px solid #ddd;border-radius:4px;color:#0056b3;font-weight:500;padding:1rem;word-break:break-word}.email-section .email-body-preview{word-wrap:break-word;background-color:#fff;color:#333;line-height:1.6;max-height:300px;overflow-y:auto;padding:1.5rem;white-space:pre-wrap}.email-section .email-body-editable,.email-section .email-body-preview{border:1px solid #ddd;border-radius:4px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:.95rem}.email-section .email-body-editable{min-height:200px;padding:1rem;resize:vertical;width:100%}.email-section .email-body-editable:focus{border-color:#0056b3;box-shadow:0 0 0 3px #0056b31a;outline:none}.email-section .email-edit-info{background-color:#fff3cd;border-left:3px solid #ffc107;border-radius:4px;padding:1rem}.email-section .email-edit-info .info-text{color:#856404;font-size:.9rem;margin:0}.email-section .email-info{background-color:#e7f3ff;border-left:3px solid #0056b3;border-radius:4px;padding:1rem}.email-section .email-info .info-text{color:#0056b3;font-size:.9rem;margin:0}.permission-validation{padding:1.5rem}.permission-validation__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.permission-validation__header h1{font-size:1.5rem;margin:0}@media(max-width:639px){.permission-validation__header{align-items:flex-start;flex-direction:column;gap:1rem}}.validation-list{display:flex;flex-direction:row}.validation-card{background:#fff;border:2px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;max-width:411px;min-width:411px;padding:1.5rem}.validation-card__header{border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1.5rem}@media(max-width:639px){.validation-card__header{flex-direction:column;gap:1rem}}.validation-card .employee-info h3{color:#0f172a;font-size:1.125rem;margin:0 0 .5rem}.validation-card .employee-info .employee-type{background:#f1f5f9;border-radius:.375rem;color:#475569;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .5rem}.validation-card .period-info{align-items:flex-end;color:#475569;display:flex;flex-direction:column;font-size:.875rem}.validation-card .period-info .hours{color:#0f172a;font-weight:600;margin-top:.25rem}@media(max-width:639px){.validation-card .period-info{align-items:flex-start}}.validation-card__content{margin-bottom:1.5rem}.validation-card__content .motif{background:#f8fafc;border-left:3px solid #0ea5e9;border-radius:.5rem;padding:1rem}.validation-card__content .motif strong{color:#334155;display:block;font-size:.875rem;margin-bottom:.5rem}.validation-card__content .motif p{color:#475569;font-size:.875rem;line-height:1.5;margin:0}.validation-card__actions{display:flex;gap:1rem}.validation-card__actions .btn{flex:1 1}@media(max-width:639px){.validation-card__actions{flex-direction:column}}.modal-overlay{background:#00000080;z-index:1050}.modal{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.modal__header{padding:1.5rem}.modal__header h3{color:#0f172a;font-size:1.125rem}.modal__content{padding:1.5rem}.modal__content textarea{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.modal__content textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.modal__content textarea::placeholder{color:#94a3b8}.modal__content textarea{resize:vertical}.modal__actions{background:#f8fafc;gap:1rem;padding:1.5rem}.modal__actions .btn{flex:1 1}@media(max-width:639px){.modal__actions{flex-direction:column-reverse}}.permission-history{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);min-height:100vh;padding:2rem}.permission-history .filters-section{margin-bottom:2rem}.permission-history .filters{grid-gap:1.5rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #00000014;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1.75rem}@media(max-width:768px){.permission-history .filters{grid-template-columns:1fr}}.permission-history .filters .filter-group{display:flex;flex-direction:column;gap:.5rem}.permission-history .filters .filter-group label{color:#374151;font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.permission-history .filters .filter-group select{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-size:.95rem;padding:.75rem 1rem;transition:all .2s ease}.permission-history .filters .filter-group select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.permission-history .filters .filter-group select:hover{border-color:#d1d5db}.permission-history .statistics-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #00000014;margin-bottom:2.5rem;padding:2rem}.permission-history .statistics-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin:0 0 1.5rem}.permission-history .statistics-section h2:before{content:"📊";font-size:1.25rem}.permission-history .statistics-section .stats-table-wrapper{border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.permission-history .statistics-section .stats-table-wrapper::-webkit-scrollbar{height:8px}.permission-history .statistics-section .stats-table-wrapper::-webkit-scrollbar-track{background:#f1f5f9}.permission-history .statistics-section .stats-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.permission-history .statistics-section .stats-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.permission-history .statistics-section .stats-table{background:#fff;border-collapse:collapse;width:100%}.permission-history .statistics-section .stats-table thead{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:2px solid #e5e7eb}.permission-history .statistics-section .stats-table thead th{color:#374151;font-size:.85rem;font-weight:600;letter-spacing:.05em;padding:1.25rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.permission-history .statistics-section .stats-table thead th:first-child{padding-left:1.5rem}.permission-history .statistics-section .stats-table thead th:last-child{padding-right:1.5rem}.permission-history .statistics-section .stats-table tbody tr{border-bottom:1px solid #f3f4f6;transition:all .2s ease}.permission-history .statistics-section .stats-table tbody tr:hover{background:#f8fafc}.permission-history .statistics-section .stats-table tbody tr:last-child{border-bottom:none}.permission-history .statistics-section .stats-table tbody tr td{color:#4b5563;font-size:.95rem;padding:1.25rem 1rem}.permission-history .statistics-section .stats-table tbody tr td:first-child{padding-left:1.5rem}.permission-history .statistics-section .stats-table tbody tr td:last-child{padding-right:1.5rem}.permission-history .statistics-section .stats-table tbody tr td strong{color:#1f2937;font-weight:600}.permission-history .statistics-section .stats-table tbody tr td.status--approved{color:#059669;font-weight:600}.permission-history .statistics-section .stats-table tbody tr td.status--rejected{color:#dc2626;font-weight:600}.permission-history .statistics-section .stats-table tbody tr td.status--pending{color:#d97706;font-weight:600}.permission-history .statistics-section .stats-table tbody tr td.empty-cell{color:#9ca3af;padding:3rem 1rem!important;text-align:center}.permission-history .permissions-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 15px #00000014;padding:2rem}.permission-history .permissions-section h2{align-items:center;color:#1e293b;display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin:0 0 1.5rem}.permission-history .permissions-section h2:before{content:"📋";font-size:1.25rem}.permission-history .permissions-section .permissions-table-wrapper{border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto}.permission-history .permissions-section .permissions-table-wrapper::-webkit-scrollbar{height:8px}.permission-history .permissions-section .permissions-table-wrapper::-webkit-scrollbar-track{background:#f1f5f9}.permission-history .permissions-section .permissions-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.permission-history .permissions-section .permissions-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.permission-history .permissions-section .permissions-table{background:#fff;border-collapse:collapse;width:100%}.permission-history .permissions-section .permissions-table thead{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-bottom:2px solid #e5e7eb}.permission-history .permissions-section .permissions-table thead th{color:#374151;font-size:.85rem;font-weight:600;letter-spacing:.05em;padding:1.25rem 1rem;text-align:left;text-transform:uppercase}.permission-history .permissions-section .permissions-table thead th:first-child{padding-left:1.5rem}.permission-history .permissions-section .permissions-table thead th:last-child{padding-right:1.5rem}.permission-history .permissions-section .permissions-table tbody tr{border-bottom:1px solid #f3f4f6;transition:all .2s ease}.permission-history .permissions-section .permissions-table tbody tr:hover{background:#f8fafc}.permission-history .permissions-section .permissions-table tbody tr:last-child{border-bottom:none}.permission-history .permissions-section .permissions-table tbody tr td{color:#4b5563;font-size:.95rem;padding:1.25rem 1rem}.permission-history .permissions-section .permissions-table tbody tr td:first-child{padding-left:1.5rem}.permission-history .permissions-section .permissions-table tbody tr td:last-child{padding-right:1.5rem}.permission-history .permissions-section .permissions-table tbody tr td strong{color:#1f2937;font-weight:600}.permission-history .permissions-section .permissions-table tbody tr td small{color:#9ca3af;display:block;font-size:.85rem;font-style:italic;margin-top:.25rem}.permission-history .permissions-section .permissions-table tbody tr td .status-badge{border-radius:8px;display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.05em;padding:.5rem .75rem;text-transform:uppercase}.permission-history .permissions-section .permissions-table tbody tr td .status-badge.status--pending{background:#fef3c7;color:#92400e}.permission-history .permissions-section .permissions-table tbody tr td .status-badge.status--approved{background:#d1fae5;color:#065f46}.permission-history .permissions-section .permissions-table tbody tr td .status-badge.status--rejected{background:#fee2e2;color:#991b1b}.permission-history .permissions-section .permissions-table tbody tr td.empty-cell{color:#9ca3af;padding:3rem 1rem!important;text-align:center}.permission-history .empty-state{background:#fff;border:2px dashed #e5e7eb;border-radius:12px;padding:3rem 2rem;text-align:center}.permission-history .empty-state p{color:#9ca3af;font-size:1rem;margin:0}.permission-history .loading{color:#667eea;font-size:1.1rem;font-weight:600;padding:3rem;text-align:center}.permission-history .loading:after{animation:spin 1s linear infinite;border:3px solid #667eea1a;border-radius:50%;border-top-color:#667eea;content:"";height:24px;margin-left:1rem;width:24px}@media(max-width:768px){.permission-history{padding:1rem}.permission-history .filters{gap:1rem}.permission-history .permissions-section,.permission-history .statistics-section{margin-bottom:1.5rem;padding:1rem}.permission-history .permissions-section h2,.permission-history .statistics-section h2{font-size:1.25rem;margin-bottom:1rem}.permission-history .permissions-table,.permission-history .stats-table{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr}.permission-history .permissions-table thead,.permission-history .stats-table thead{display:none}.permission-history .permissions-table tbody,.permission-history .stats-table tbody{display:contents}.permission-history .permissions-table tr,.permission-history .stats-table tr{grid-gap:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:grid;gap:.75rem;grid-template-columns:1fr;margin-bottom:1rem;padding:1rem}.permission-history .permissions-table tr:hover,.permission-history .stats-table tr:hover{background:#fff;box-shadow:0 4px 12px #0000001a}.permission-history .permissions-table tr td,.permission-history .stats-table tr td{grid-gap:1rem;align-items:start;border:none;display:grid;gap:1rem;grid-template-columns:100px 1fr;padding:0!important}.permission-history .permissions-table tr td:before,.permission-history .stats-table tr td:before{color:#667eea;content:attr(data-label);font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.permission-history .permissions-table tr td:first-child,.permission-history .stats-table tr td:first-child{grid-column:1/-1;grid-template-columns:1fr}.permission-history .permissions-table tr td small,.permission-history .stats-table tr td small{margin-top:0!important}.permission-history .stats-table tr:nth-child(2) td:first-child:before{content:"EMPLOYÉ"}.permission-history .stats-table tr:nth-child(2) td:nth-child(2):before{content:"TYPE"}.permission-history .stats-table tr:nth-child(2) td:nth-child(3):before{content:"TOTAL"}.permission-history .stats-table tr:nth-child(2) td:nth-child(4):before{content:"APPROUVÉES"}.permission-history .stats-table tr:nth-child(2) td:nth-child(5):before{content:"REFUSÉES"}.permission-history .stats-table tr:nth-child(2) td:nth-child(6):before{content:"ATTENTE"}.permission-history .stats-table tr:nth-child(2) td:nth-child(7):before{content:"HEURES"}.permission-history .permissions-table tr:nth-child(2) td:first-child:before{content:"DATE & HEURE"}.permission-history .permissions-table tr:nth-child(2) td:nth-child(2):before{content:"EMPLOYÉ"}.permission-history .permissions-table tr:nth-child(2) td:nth-child(3):before{content:"DURÉE"}.permission-history .permissions-table tr:nth-child(2) td:nth-child(4):before{content:"MOTIF"}.permission-history .permissions-table tr:nth-child(2) td:nth-child(5):before{content:"STATUT"}}@media(max-width:480px){.permission-history,.permission-history .permissions-section,.permission-history .statistics-section{padding:.75rem}.permission-history .permissions-section h2,.permission-history .statistics-section h2{font-size:1.1rem}.permission-history .permissions-table tr,.permission-history .stats-table tr{gap:.5rem;margin-bottom:.75rem;padding:.75rem}.permission-history .permissions-table tr td,.permission-history .stats-table tr td{gap:.5rem;grid-template-columns:80px 1fr}.permission-history .permissions-table tr td:before,.permission-history .stats-table tr td:before{font-size:.7rem}}.droit-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;transition:all .3s}.droit-card:hover{box-shadow:0 4px 12px #0000001a}.droit-card__header{align-items:start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.droit-card__period{font-size:.95rem;font-weight:700}.droit-card__status{border-radius:20px;font-size:.75rem;font-weight:700;padding:.25rem .75rem;text-transform:uppercase}.droit-card__status.status--pending{background:#fff3cd;color:#856404}.droit-card__status.status--approved{background:#d4edda;color:#155724}.droit-card__status.status--rejected{background:#f8d7da;color:#721c24}.droit-card__motif{border-bottom:1px solid #f0f0f0;margin-bottom:1rem;padding-bottom:1rem}.droit-card__info{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.droit-card__info .info-item{display:flex;font-size:.9rem;justify-content:space-between}.droit-card__info .info-item .label{color:#666}.droit-card__info .info-item .value{color:#333;font-weight:700}.droit-card__meta{color:#999;font-size:.85rem}.droit-card__footer{border-top:1px solid #f0f0f0;display:flex;gap:.5rem;justify-content:flex-end;padding-top:1rem}.file-viewer-modal{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.file-viewer-modal__content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;width:100%}.file-viewer-modal__header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.file-viewer-modal__header h3{color:#333;font-size:1.25rem;margin:0}.file-viewer-modal__header .close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.file-viewer-modal__header .close-btn:hover{background-color:#f0f0f0;color:#333}.file-viewer-modal__body{align-items:center;background-color:#f8f9fa;display:flex;flex:1 1;justify-content:center;overflow:auto;padding:24px}.file-viewer-modal__footer{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.file-viewer-image{border-radius:8px;box-shadow:0 2px 8px #0000001a;max-height:60vh;max-width:100%;object-fit:contain}.file-viewer-pdf{border:none;border-radius:8px;height:60vh;width:100%}.file-viewer-document{padding:40px;text-align:center}.file-viewer-document .document-icon{font-size:4rem;margin-bottom:20px}.file-viewer-document p{color:#666;font-size:1.1rem;margin-bottom:24px}@media(max-width:768px){.file-viewer-modal{padding:10px}.file-viewer-modal__content{max-height:95vh}.file-viewer-modal__header{padding:16px}.file-viewer-modal__header h3{font-size:1.1rem}.file-viewer-modal__body{padding:16px}.file-viewer-modal__footer{flex-direction:column;padding:16px}.file-viewer-modal__footer .btn{width:100%}.file-viewer-image{max-height:50vh}.file-viewer-pdf{height:50vh}}.droit-list-container{padding:2rem}.droit-list-container .droit-list__header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem;margin-top:-2rem}.droit-list-container .droit-list__header .header-content h1{font-size:2rem;margin:0}.droit-list-container .droit-list__header .header-content p{color:#666;margin:.5rem 0 0}.droit-list-container .droit-list__stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.droit-list-container .droit-list__stats .stat-item{background:#f5f5f5;border-radius:8px;padding:1rem;text-align:center}.droit-list-container .droit-list__stats .stat-item.stat-item--pending{background:#fff3cd}.droit-list-container .droit-list__stats .stat-item.stat-item--approved{background:#d4edda}.droit-list-container .droit-list__stats .stat-item.stat-item--rejected{background:#f8d7da}.droit-list-container .droit-list__stats .stat-item .stat-label{color:#666;display:block;font-size:.875rem;margin-bottom:.5rem}.droit-list-container .droit-list__stats .stat-item .stat-value{color:#333;display:block;font-size:1.5rem;font-weight:700}.droit-list-container .droit-list__filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.droit-list-container .droit-list__filters .filter-btn{background:#fff;border:2px solid #ddd;border-radius:20px;cursor:pointer;padding:.5rem 1rem;transition:all .3s}.droit-list-container .droit-list__filters .filter-btn:hover{border-color:#3498db}.droit-list-container .droit-list__filters .filter-btn.filter-btn--active{background:#3498db;border-color:#3498db;color:#fff}.droit-list-container .droits-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.droit-list-container .empty-state{background:#f9f9f9;border-radius:8px;padding:3rem;text-align:center}.droit-list-container .empty-state p{color:#666;margin-bottom:1rem}.droit-form-container{padding:2rem;width:100%}.droit-form-container .form-header{margin-bottom:2rem}.droit-form-container .form-header h1{font-size:1.8rem;margin:0 0 .5rem}.droit-form-container .form-header p{color:#666;margin:0}.droit-form-container .droit-form{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:2rem}.droit-form-container .droit-form .alert{border-radius:4px;margin-bottom:1.5rem;padding:1rem}.droit-form-container .droit-form .alert.alert--error{background-color:#fee;border:1px solid #fcc;color:#c33}.droit-form-container .droit-form .alert.alert--success{background-color:#efe;border:1px solid #cfc;color:#3c3}.droit-form-container .droit-form .form-group{margin-bottom:1.5rem}.droit-form-container .droit-form .form-group label{color:#333;display:block;font-weight:500;margin-bottom:.5rem}.droit-form-container .droit-form .form-group input,.droit-form-container .droit-form .form-group select,.droit-form-container .droit-form .form-group textarea{border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:1rem;padding:.75rem;width:100%}.droit-form-container .droit-form .form-group input:focus,.droit-form-container .droit-form .form-group select:focus,.droit-form-container .droit-form .form-group textarea:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.droit-form-container .droit-form .form-group input:disabled,.droit-form-container .droit-form .form-group select:disabled,.droit-form-container .droit-form .form-group textarea:disabled{background-color:#f5f5f5;color:#999}.droit-form-container .droit-form .form-group small{color:#999;display:block;font-size:.85rem;margin-top:.25rem}.droit-form-container .droit-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media(max-width:768px){.droit-form-container .droit-form .form-row{grid-template-columns:1fr}}.droit-form-container .droit-form .duration-display{align-items:center;display:flex;gap:.5rem}.droit-form-container .droit-form .duration-display .duration-input{font-size:1.1rem;font-weight:700;max-width:120px;text-align:center}.droit-form-container .droit-form .duration-display .duration-unit{color:#666;font-weight:500}.droit-form-container .droit-form .info-box{background-color:#f9f9f9;border-left:4px solid #3498db;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.droit-form-container .droit-form .info-box strong{color:#333;display:block;margin-bottom:.5rem}.droit-form-container .droit-form .info-box p{color:#666;font-size:.95rem;margin:0}.droit-form-container .droit-form .email-section{background-color:#f5f5f5;border-radius:4px;margin-bottom:1.5rem;padding:1.5rem}.droit-form-container .droit-form .email-section .email-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.droit-form-container .droit-form .email-section .email-header h3{color:#333;font-size:1rem;margin:0}.droit-form-container .droit-form .email-section .email-preview{background:#fff;border-radius:4px;padding:1rem}.droit-form-container .droit-form .email-section .email-preview .email-field{margin-bottom:1rem}.droit-form-container .droit-form .email-section .email-preview .email-field label{color:#333;display:block;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.droit-form-container .droit-form .email-section .email-preview .email-field .email-value{background:#f9f9f9;border-radius:4px;color:#666;font-size:.95rem;padding:.75rem;word-break:break-word}.droit-form-container .droit-form .email-section .email-preview .email-field .email-body-preview{background:#f9f9f9;border-radius:4px;color:#666;font-size:.9rem;line-height:1.6;padding:.75rem;white-space:pre-wrap;word-break:break-word}.droit-form-container .droit-form .email-section .email-preview .email-field .email-body-editable{min-height:200px;width:100%}.droit-form-container .droit-form .email-section .email-preview .email-info{border-top:1px solid #e0e0e0;margin-top:1rem;padding-top:1rem}.droit-form-container .droit-form .email-section .email-preview .email-info .info-text{color:#999;font-size:.85rem;margin:0}.droit-form-container .droit-form .form-actions{border-top:1px solid #f0f0f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.droit-form-container .droit-form .form-actions button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.droit-form-container .droit-form .form-actions button:disabled{cursor:not-allowed;opacity:.6}.droit-validation-container{background:linear-gradient(135deg,#f8fafc,#fff);min-height:100vh;padding:1.5rem}@media(max-width:639px){.droit-validation-container{padding:1rem}}.validation-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:2rem}.validation-header h1{color:#0f172a;font-size:1.875rem;font-weight:700;letter-spacing:-.5px;margin:0}.validation-header .header-stats .badge{align-items:center;background:#0097b2;border-radius:20px;box-shadow:0 2px 8px #0f172a26;color:#fff;display:inline-flex;font-size:.875rem;font-weight:600;padding:.5rem 1rem}@media(max-width:639px){.validation-header{align-items:flex-start;flex-direction:column}}.alert{align-items:center;animation:slideDown .3s ease-out;border-radius:.75rem;box-shadow:0 4px 12px #0f172a1a;display:flex;font-weight:500;justify-content:space-between;margin-bottom:1.5rem;padding:1rem 1.25rem}.alert--info{background:linear-gradient(135deg,#e3f2fd,#f3f5f9);border:1px solid #bbdefb;color:#1e293b}.alert--success{background:linear-gradient(135deg,#e8f5e9,#f1f8f6);border:1px solid #c8e6c9;color:#1e293b}.alert--error{background:linear-gradient(135deg,#ffebee,#fdf5f7);border:1px solid #ffcdd2;color:#1e293b}.alert__close{background:none;border:none;color:#475569;cursor:pointer;font-size:1.125rem;padding:0 .5rem;transition:color .2s}.alert__close:hover{color:#0f172a}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.validation-layout{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:350px 1fr}@media(min-width:640px)and (max-width:1023px){.validation-layout{grid-template-columns:1fr}}@media(max-width:639px){.validation-layout{grid-template-columns:1fr}}.droits-list-section h2{color:#0f172a;font-size:1.25rem;font-size:1.125rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.droits-list{background:#fff;border-radius:.75rem;box-shadow:0 4px 12px #0f172a14;display:flex;flex-direction:column;gap:.75rem;max-height:700px;overflow-y:auto;padding:.5rem}.droits-list::-webkit-scrollbar{width:6px}.droits-list::-webkit-scrollbar-track{background:#0000}.droits-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.droits-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.droit-item{background:#f8fafc;border:2px solid #0000;border-left:4px solid #cbd5e1;border-radius:.5rem;cursor:pointer;padding:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.droit-item:hover{background:#f1f5f9;border-left-color:#0097b2;box-shadow:0 2px 8px #0f172a1a;transform:translateX(4px)}.droit-item--selected{background:#f1f5f9;border:2px solid #1e293b;border-left-width:4px;box-shadow:0 4px 12px #0f172a26}.droit-item--selected .droit-item__header strong{color:#0f172a}.droit-item__header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.5rem}.droit-item__header strong{color:#1e293b;font-size:1rem;font-weight:600;transition:color .2s}.droit-item__date{color:#64748b;font-size:.75rem;font-weight:400;white-space:nowrap}.droit-item__content{display:flex;flex-direction:column;gap:.25rem}.droit-item__motif{color:#334155;font-size:.875rem;font-weight:500;line-height:1.4;margin:0}.droit-item__period{color:#475569;font-size:.75rem;margin:0}.droit-item__duration{background:#e2e8f0;border-radius:.375rem;color:#334155;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.25rem;padding:.25rem .5rem;width:-webkit-fit-content;width:fit-content}.validation-panel{animation:fadeIn .3s ease-out;background:#fff;border-radius:.75rem;box-shadow:0 8px 24px #0f172a1f;overflow:hidden}@media(min-width:640px)and (max-width:1023px){.validation-panel{border-radius:.75rem .75rem 0 0;bottom:0;left:0;max-height:80vh;position:fixed;right:0;top:auto}}.panel-header{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom:1px solid #334155;display:flex;justify-content:space-between;padding:1.5rem}.panel-header h2{color:#fff;font-size:1.125rem;font-weight:600;margin:0}.panel-header .btn-close{align-items:center;background:#ffffff1a;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:36px;justify-content:center;padding:.5rem;transition:all .2s;width:36px}.panel-header .btn-close:hover{background:#fff3}.panel-content{max-height:calc(100vh - 300px);overflow-y:auto;padding:1.5rem}.panel-content::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar-track{background:#0000}.panel-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.detail-section{margin-bottom:1.5rem}.detail-section h3{border-bottom:2px solid #f1f5f9;color:#0f172a;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;padding-bottom:.75rem;text-transform:uppercase}.detail-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}@media(max-width:639px){.detail-grid{grid-template-columns:1fr}}.detail-item label{color:#334155;color:#475569;display:block;font-size:.875rem;font-weight:600;letter-spacing:.3px;margin-bottom:.25rem;text-transform:uppercase}.detail-item p{background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:.375rem;color:#0f172a;font-size:1rem;font-weight:500;margin:0;padding:.5rem .75rem}.duration-badge{background:linear-gradient(135deg,#1e293b,#334155);border:none!important;border-radius:20px;color:#fff;display:inline-block;font-weight:600!important;padding:.5rem 1rem}.validation-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:.75rem;margin-top:1.5rem;padding:1.25rem}.validation-section h3{color:#0f172a;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.form-group{margin-bottom:1rem}.form-group label{font-size:.875rem}.form-group textarea{border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.form-group textarea::placeholder{color:#94a3b8}.form-group textarea{box-shadow:inset 0 2px 4px #0f172a0d;font-size:.875rem;min-height:100px}.form-group textarea:focus{box-shadow:0 0 0 3px #1e293b1a,inset 0 2px 4px #0f172a0d}.decision-buttons{display:flex;gap:.75rem}@media(max-width:639px){.decision-buttons{flex-direction:column}}.decision-btn{background:#fff;border:2px solid #e2e8f0;border-radius:.5rem;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.75rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.decision-btn:hover:not(:disabled){box-shadow:0 4px 12px #0f172a26;transform:translateY(-2px)}.decision-btn--approve:hover:not(:disabled){background:#f8fafc;border-color:#1e293b}.decision-btn--reject:hover:not(:disabled){background:#fef5f5;border-color:#334155}.decision-btn--active{background:#1e293b;border-color:#1e293b;box-shadow:0 4px 12px #1e293b4d;color:#fff}.decision-btn--active:hover:not(:disabled){background:#0f172a;border-color:#0f172a}.decision-btn:disabled{cursor:not-allowed;opacity:.5}.panel-footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;margin:0 -1.5rem -1.5rem;padding:1.25rem}@media(max-width:639px){.panel-footer{flex-direction:column-reverse}}.panel-footer .btn{border:none;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.panel-footer .btn:hover:not(:disabled){box-shadow:0 4px 12px #0f172a26;transform:translateY(-2px)}.panel-footer .btn--secondary{background:#fff;border:1px solid #e2e8f0;color:#334155}.panel-footer .btn--secondary:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.panel-footer .btn--primary{background:#0097b2;box-shadow:0 4px 12px #0f172a33;color:#fff}.panel-footer .btn--primary:hover:not(:disabled){box-shadow:0 6px 16px #0f172a4d}.panel-footer .btn--primary:disabled{cursor:not-allowed;opacity:.6}.empty-state{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:2px dashed #e2e8f0;border-radius:.75rem;padding:2rem}.empty-state p{color:#475569;font-size:1rem;font-weight:500;margin:0}.loading{flex-direction:column;gap:1rem;padding:3rem}.loading .spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#1e293b;height:40px;width:40px}.loading p{color:#475569;font-weight:500;margin:0}.droits-validation-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}@media(min-width:640px)and (max-width:1023px){.droits-validation-list{grid-template-columns:1fr}}.droit-validation-item{background:#fff;border-left:4px solid #cbd5e1;border-radius:.75rem;box-shadow:0 2px 8px #0f172a1a;padding:1rem;transition:all .3s ease}.droit-validation-item:hover{box-shadow:0 4px 12px #0f172a26;transform:translateY(-2px)}.droit-validation-item__header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.droit-validation-item__user{display:flex;flex-direction:column}.droit-validation-item__user strong{color:#0f172a;font-size:1rem;margin-bottom:.25rem}.droit-validation-item__user small{color:#475569;font-size:.875rem}.droit-validation-item__date{color:#64748b;font-size:.75rem;white-space:nowrap}.droit-validation-item__content{display:flex;flex-direction:column;gap:.75rem}.droit-validation-item__info{display:flex;flex-direction:column;gap:.5rem}.droit-validation-item__motif{color:#1e293b;font-size:1rem;font-weight:600;margin:0}.droit-validation-item__period{color:#475569;font-size:.875rem;margin:0}.droit-validation-item__duration{background:#f1f5f9;border-radius:.375rem;color:#334155;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .5rem;width:-webkit-fit-content;width:fit-content}.droit-validation-item__actions{display:flex;gap:.5rem}.droit-validation-item__actions .btn{flex:1 1;font-size:.875rem;padding:.5rem .75rem}.droit-validation-item__actions .btn--sm{padding:.5rem .75rem}.modal-overlay{background:#0f172a80;bottom:0;left:0;right:0;top:0}.modal-content.validation-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;padding:1em;position:relative;width:413px}.modal-content.validation-modal .modal-close{position:absolute;right:8px;top:14px}.modal-content.validation-modal .checklist-grid{display:flex;flex-direction:row;padding-bottom:16px}.modal-content.validation-modal .modal-actions{align-items:center;display:flex;justify-content:space-between}.modal{animation:modalSlideIn .3s ease-out;border-radius:.75rem;box-shadow:0 20px 60px #0f172a4d;max-width:620px}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal__header{padding:1.25rem}.modal__header h2{color:#0f172a;font-size:1.125rem;font-weight:600;margin:0}.modal__close{align-items:center;background:none;border:none;color:#475569;cursor:pointer;display:flex;font-size:1.125rem;height:32px;justify-content:center;padding:0;transition:color .2s;width:32px}.modal__close:hover{color:#0f172a}.modal__info{color:#334155;font-size:.875rem;line-height:1.5;margin-bottom:1rem}.modal__textarea{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out}.modal__textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a}.modal__textarea::placeholder{color:#94a3b8}.modal__textarea{border:1px solid #e2e8f0;border-radius:.5rem;font-family:inherit;font-size:.875rem;min-height:120px;padding:.75rem;resize:vertical;width:100%}.modal__textarea:focus{border-color:#1e293b;box-shadow:0 0 0 3px #1e293b1a;outline:none}.modal__footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;padding:1.25rem}.modal__footer .btn{padding:.5rem 1rem}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;line-height:1.6;margin:0}.app-layout{display:flex;flex-direction:column;min-height:100vh}.main-content{background:#f8fafc;flex:1 1;min-height:calc(100vh - 70px)}.container{margin:0 auto;max-width:none;padding:0;width:100%}@media(max-width:639px){.container{padding:0}}.container--constrained{margin:0 auto;max-width:1280px;padding:0 1rem}@media(max-width:639px){.container--constrained{padding:0 .75rem}}.full-width{max-width:none;width:100%}.content-wrapper{margin:0 auto;max-width:1400px;padding:0 .75rem}@media(max-width:639px){.content-wrapper{padding:0 .5rem}}@media(min-width:1024px){.content-wrapper{padding:0 1rem}}h1,h2,h3,h4,h5,h6{color:#0f172a;font-weight:600;line-height:1.3;margin:0 0 1rem}h1{font-size:1.875rem;font-weight:700}h2{font-size:1.5rem}h3{font-size:1.25rem}p{line-height:1.6;margin:0 0 1rem}.btn{border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:500;text-decoration:none;transition:all .2s ease-in-out}.btn:disabled{opacity:.6}.btn--primary{background:#0097b2;color:#fff;font-size:1rem;padding:.75rem 1.5rem}.btn--primary:hover:not(:disabled){background:linear-gradient(90deg,#7ed957,#0097b2)}.btn--primary:focus{box-shadow:0 0 0 3px #0097b233;outline:none}.btn--secondary{background:#fff;color:#334155;font-size:1rem;padding:.75rem 1.5rem}.btn--secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.btn--secondary:focus{box-shadow:0 0 0 3px #64748b33;outline:none}.btn--outline{background:#0000;border:1px solid #0097b2;color:#0097b2;font-size:1rem;padding:.75rem 1.5rem}.btn--outline:hover:not(:disabled){background:#0097b2;color:#fff}.btn--success{background:#10b981;font-size:1rem;padding:.75rem 1.5rem}.btn--success:hover:not(:disabled){background:#03ad77}.btn--danger{font-size:1rem;padding:.75rem 1.5rem}.btn--danger:hover:not(:disabled){background:#dc2626}.btn--small{font-size:.875rem;padding:.5rem 1rem}.btn--large{font-size:1.125rem;padding:1rem 2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#334155;display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #e2e8f0;border-radius:.5rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s ease-in-out,box-shadow .2s ease-in-out;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#94a3b8}.form-group .form-error{color:#ef4444;font-size:.875rem;margin-top:.25rem}.form-group .form-help{color:#64748b;font-size:.875rem;margin-top:.25rem}.alert{border-radius:.5rem;padding:1rem}.alert--success{background-color:#f0fdf4;border:1px solid #10b981;border-radius:.5rem;color:#03ad77}.alert--error,.alert--success{margin-bottom:1rem;padding:1rem}.alert--error{background-color:#fef2f2;border:1px solid #ef4444;border-radius:.5rem;color:#dc2626}.alert--warning{background-color:#fffbeb;border:1px solid #f0ee71;border-radius:.5rem;color:#d97706}.alert--info,.alert--warning{margin-bottom:1rem;padding:1rem}.alert--info{background-color:#f0f9ff;border:1px solid #0ea5e9;border-radius:.5rem;color:#0284c7}.loading{color:#475569;padding:2rem}.loading,.unauthorized-page{align-items:center;display:flex;justify-content:center}.unauthorized-page{background:#f8fafc;min-height:100vh}.unauthorized-page .unauthorized-content{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;max-width:500px;padding:2rem;text-align:center}.unauthorized-page .unauthorized-content .unauthorized-title{color:#ef4444;margin-bottom:1rem}.unauthorized-page .unauthorized-content .unauthorized-message{color:#475569}.checkbox-label.semi-days{align-items:end;display:flex;flex-direction:row-reverse;justify-content:left}.checkbox-label.semi-days input{cursor:pointer;height:15px;width:15px}.text-center{text-align:center}.text-right{text-align:right}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.hidden{display:none}@media(max-width:639px){.hide-mobile{display:none}}@media(min-width:640px)and (max-width:1023px){.hide-tablet{display:none}}@media(min-width:1024px){.hide-desktop{display:none}}.mission-card{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.mission-card:hover{border-color:#0097b2;box-shadow:0 8px 30px #00000026;transform:translateY(-8px)}.mission-card__header{background:linear-gradient(135deg,#fff,#f8f9fa);border-bottom:1px solid #ecf0f1;padding:24px}.mission-card__header .mission-card__title{align-items:flex-start;display:flex;gap:6px;justify-content:space-between;margin-bottom:12px}.mission-card__header .mission-card__title h4{color:#2c3e50;flex:1 1;font-size:1.25rem;font-weight:700;line-height:1.3;margin:0}.mission-card__header .mission-card__meta{align-items:center;display:flex;gap:8px}.mission-card__header .mission-card__meta .mission-card__duration{background:#0097b2;border-radius:20px;color:#fff;font-size:.875rem;font-weight:600;padding:6px 12px}.mission-card__status{border-radius:20px;font-size:.875rem;font-weight:600;padding:8px 16px;white-space:nowrap}.mission-card__status--pending{background:#f39c121a;border:1px solid #f39c1233;color:#f39c12}.mission-card__status--approved{background:#27ae601a;border:1px solid #27ae6033;color:#27ae60}.mission-card__status--rejected{background:#e74c3c1a;border:1px solid #e74c3c33;color:#e74c3c}.mission-card__body{display:flex;flex:1 1;flex-direction:column;gap:20px;padding:24px}.mission-card__info{display:flex;flex-direction:column;gap:16px}.mission-card__info .info-item{align-items:flex-start;display:flex;gap:2px;padding:2px 0}.mission-card__info .info-item .info-icon{flex-shrink:0;font-size:1.125rem;margin-top:2px;width:24px}.mission-card__info .info-item .info-text{color:#2c3e50;flex:1 1;font-size:.95rem;line-height:1.4}.mission-card__info .info-item .info-text.project-name{background:#f8f9fa;border-radius:6px;color:#0097b2;display:inline-block;font-weight:600;padding:4px 8px}.mission-card__info .info-item .info-text.budget{color:#27ae60;font-weight:700}.mission-card__progress{background:#f8f9fa;border-left:4px solid #0097b2;border-radius:8px;padding:16px}.mission-card__progress .progress-label{align-items:center;color:#2c3e50;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;margin-bottom:8px}.mission-card__progress .progress-label .progress-count{color:#0097b2}.mission-card__progress .progress-bar{background:#0097b21a;border-radius:4px;height:8px;overflow:hidden}.mission-card__progress .progress-bar .progress-fill{background:linear-gradient(90deg,#0097b2,#00c2e5);border-radius:4px;height:100%;position:relative;transition:width .3s ease}.mission-card__progress .progress-bar .progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.mission-card__actions{padding:20px 24px 24px}.mission-card__actions .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;justify-content:space-between;overflow:hidden;padding:14px 20px;position:relative;transition:all .3s ease;width:100%}.mission-card__actions .btn--primary{background:linear-gradient(135deg,#0097b2,#006c7f);color:#fff}.mission-card__actions .btn--primary:hover{box-shadow:0 8px 25px #0097b24d;transform:translateY(-2px)}.mission-card__actions .btn--primary .btn-arrow{transition:transform .3s ease}.mission-card__actions .btn--primary:hover .btn-arrow{transform:translateX(4px)}.mission-card--approved{border-left:4px solid #27ae60}.mission-card--pending{border-left:4px solid #0097b2}.mission-card--rejected{border-left:4px solid #e74c3c}.mission-card--draft{border-left:4px solid #3498db}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@media(max-width:768px){.mission-card__header{padding:20px}.mission-card__header .mission-card__title{align-items:flex-start;flex-direction:column;gap:12px}.mission-card__header .mission-card__title h4{font-size:1.125rem}.mission-card__body{padding:20px}.mission-card__actions{padding:16px 20px 20px}}.mission-documents{background:#f8f9fa;border-radius:8px;margin-top:30px;padding:30px}.mission-documents h3{color:#2c3e50;font-size:1.3rem;margin-bottom:25px;margin-top:0}.mission-documents-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:30px}.document-card{background:#fff;border:2px solid #ecf0f1;border-radius:8px;padding:20px;transition:all .3s ease}.document-card:hover{border-color:#0097b2;box-shadow:0 5px 15px #667eea26}.document-card-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:15px}.document-card-header h4{color:#2c3e50;font-size:1rem;margin:0}.document-card-header .status-badge{background:#d4edda;border-radius:20px;color:#155724;font-size:.8rem;font-weight:600;padding:5px 12px}.document-card-preview{background:#f8f9fa;border-radius:8px;padding:15px}.document-card-preview .file-info{display:flex;gap:12px;margin-bottom:12px}.document-card-preview .file-info .file-icon{font-size:2rem}.document-card-preview .file-info .file-details{flex:1 1}.document-card-preview .file-info .file-details .filename{color:#2c3e50;font-size:.95rem;font-weight:600;margin:0;word-break:break-word}.document-card-preview .file-info .file-details small{color:#95a5a6;display:block;margin-top:4px}.document-card-preview .file-actions{display:flex;flex-wrap:wrap;gap:10px}.document-card-preview .file-actions a,.document-card-preview .file-actions button{border:none;border-radius:8px;cursor:pointer;font-size:.85rem;padding:8px 12px;text-decoration:none;transition:all .3s ease}.document-card-preview .file-actions a{background:#0097b2;color:#fff}.document-card-preview .file-actions a:hover{background:#0097b2}.document-card-preview .file-actions button{background:#e74c3c;color:#fff}.document-card-preview .file-actions button:hover{background:#d62c1a}.upload-zone{padding:25px;text-align:center}.upload-zone .btn-upload{background:linear-gradient(135deg,#0097b2,#0097b2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:15px;transition:all .3s ease;width:100%}.upload-zone .btn-upload:hover:not(:disabled){box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.upload-zone .btn-upload:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#fadbd8;border-left:3px solid #e74c3c;border-radius:8px;color:#e74c3c;font-size:.9rem;margin-top:10px;padding:10px}.completion-status{background:#fff;border-left:4px solid #0097b2;border-radius:8px;padding:20px}.completion-status h4{color:#2c3e50;font-size:1rem;margin-top:0}.completion-status .progress-bar{background:#ecf0f1;border-radius:14px;height:28px;margin:15px 0;overflow:hidden;width:100%}.completion-status .progress-bar .progress-fill{align-items:center;background:linear-gradient(90deg,#27ae60,#2ecc71);color:#fff;display:flex;font-size:.85rem;font-weight:600;height:100%;justify-content:center;transition:width .3s ease}.completion-status p{color:#95a5a6;font-weight:600;margin:0}.missions{margin:0 auto;max-width:1400px;padding:30px 20px}.missions__header{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;margin-bottom:40px}.missions__header .header-content h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0 0 8px}.missions__header .header-content .header-subtitle{color:#7f8c8d;font-size:1.125rem;margin:0}.missions__header .btn--large{border-radius:10px;font-size:1.125rem;font-weight:700;gap:12px;padding:16px 32px}.missions__header .btn--large:hover{box-shadow:0 12px 35px #0097b24d;transform:translateY(-3px)}.missions__content{grid-gap:30px;display:grid;gap:30px}.missions__filters{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 4px 20px #0000000f;padding:30px}.missions__filters .filter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.missions__filters .filter-header h3{color:#2c3e50;font-size:1.25rem;font-weight:700;margin:0}.missions__filters .filter-header .missions-count{background:#f8f9fa;border-radius:20px;color:#2c3e50;font-size:.9rem;font-weight:600;padding:8px 16px}.missions__filters .filter-groups{display:flex;flex-wrap:wrap;gap:2rem}.missions__filters .filter-groups .filter-group{display:flex;flex-direction:column;gap:.5rem}.missions__filters .filter-groups .filter-group label{color:#666;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.missions__filters .filter-groups .filter-group .project-filter-select{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;font-size:.9rem;min-width:200px;padding:.5rem .75rem}.missions__filters .filter-groups .filter-group .project-filter-select:focus{border-color:#0097b2;box-shadow:0 0 0 2px #0097b240;outline:none}.missions__filters .filter-groups .filter-group .filter-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.missions__filters .filter-groups .filter-group .filter-buttons .filter-btn{align-items:center;background:#f0f0f0;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:.9rem;gap:8px;padding:.5rem 1rem;transition:all .3s ease}.missions__filters .filter-groups .filter-group .filter-buttons .filter-btn .tab-count{background:#f8f9fa;border-radius:12px;color:#7f8c8d;font-size:.8rem;min-width:24px;padding:4px 8px;text-align:center}.missions__filters .filter-groups .filter-group .filter-buttons .filter-btn:hover{background:#e9ecef;border-color:#0097b2}.missions__filters .filter-groups .filter-group .filter-buttons .filter-btn.active{background:#0097b2;border-color:#0097b2;color:#fff}.missions__filters .filter-groups .filter-group .filter-buttons .filter-btn.active .tab-count{background:#fff3;color:#fff}.missions__filters .filter-tabs{display:flex;flex-wrap:wrap;gap:8px}.missions__filters .filter-tabs .filter-tab{align-items:center;background:#fff;border:2px solid #ecf0f1;border-radius:10px;color:#2c3e50;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 20px;transition:all .3s ease}.missions__filters .filter-tabs .filter-tab .tab-icon{font-size:1.125rem}.missions__filters .filter-tabs .filter-tab .tab-label{font-size:.95rem}.missions__filters .filter-tabs .filter-tab .tab-count{background:#f8f9fa;border-radius:12px;color:#7f8c8d;font-size:.8rem;min-width:24px;padding:4px 8px;text-align:center}.missions__filters .filter-tabs .filter-tab:hover{border-color:#0097b2;box-shadow:0 5px 15px #0097b226;transform:translateY(-2px)}.missions__filters .filter-tabs .filter-tab.active{background:linear-gradient(135deg,#0097b2,#006c7f);border-color:#0097b2;color:#fff}.missions__filters .filter-tabs .filter-tab.active .tab-count{background:#fff3;color:#fff}.missions__list{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 4px 20px #0000000f;min-height:400px}.missions__empty,.missions__list{display:flex;flex-direction:column}.missions__empty{align-items:center;flex:1 1;justify-content:center;padding:80px 40px;text-align:center}.missions__empty .empty-illustration{margin-bottom:32px;position:relative}.missions__empty .empty-illustration .empty-icon{font-size:4rem;margin-bottom:16px;opacity:.7}.missions__empty .empty-illustration .empty-background{background:linear-gradient(135deg,#0097b21a,#0097b20d);border-radius:50%;height:120px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:120px;z-index:-1}.missions__empty .empty-content h3{color:#2c3e50;font-size:1.5rem;font-weight:700;margin:0 0 12px}.missions__empty .empty-content p{color:#7f8c8d;font-size:1rem;line-height:1.6;margin:0 0 24px;max-width:400px}.missions__empty .empty-content .btn{border-radius:8px;font-size:1rem;font-weight:600;gap:8px;padding:14px 28px}.missions__grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));padding:30px}.missions__loading{align-items:center;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:80px 40px}.missions__loading .loading-spinner{border:4px solid #ecf0f1;border-radius:50%;border-top-color:#0097b2;height:48px;margin-bottom:20px;width:48px}.missions__loading .loading-spinner.large{border-width:5px;height:60px;width:60px}.missions__loading p{color:#7f8c8d;font-size:1.125rem;margin:0}.missions__modal{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.missions__modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;padding:40px;position:relative;width:100%}.missions__modal-content .modal-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:30px}.missions__modal-content .modal-header h2{color:#2c3e50;flex:1 1;font-size:1.75rem;font-weight:700;margin:0}.missions__modal-content .modal-header .mission-status{border-radius:20px;font-size:.875rem;font-weight:600;padding:8px 16px;white-space:nowrap}.missions__modal-content .modal-header .mission-status--brouillon{background:#3498db1a;color:#3498db}.missions__modal-content .modal-header .mission-status--en_attente_validation{background:#f39c121a;color:#f39c12}.missions__modal-content .modal-header .mission-status--validee{background:#27ae601a;color:#27ae60}.missions__modal-content .modal-header .mission-status--rejetee{background:#e74c3c1a;color:#e74c3c}.missions__modal-content .detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.missions__modal-content .detail-grid .detail-item{display:flex;flex-direction:column;gap:4px}.missions__modal-content .detail-grid .detail-item strong{color:#2c3e50;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.missions__modal-content .detail-grid .detail-item span{color:#2c3e50;font-size:1rem;font-weight:500}.missions__modal-content .modal-actions{border-top:1px solid #ecf0f1;display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px}.missions__modal-close{background:#f8f9fa;border:none;border-radius:50%;color:#7f8c8d;cursor:pointer;font-size:1.25rem;height:40px;position:absolute;right:20px;top:20px;transition:all .3s ease;width:40px}.missions__modal-close:hover{background:#e74c3c;color:#fff;transform:scale(1.1)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media(max-width:768px){.missions{padding:20px 15px}.missions__header{align-items:stretch;flex-direction:column}.missions__header .header-content h1{font-size:2rem}.missions__header .btn--large{justify-content:center;width:100%}.missions__filters{padding:20px}.missions__filters .filter-tabs{gap:6px}.missions__filters .filter-tabs .filter-tab{font-size:.875rem;padding:10px 16px}.missions__grid{grid-template-columns:1fr;padding:20px}.missions__modal-content{margin:10px;max-height:95vh;padding:30px 20px}.missions__modal-content .modal-header{align-items:flex-start;flex-direction:column;gap:12px}.missions__modal-content .modal-header h2{font-size:1.5rem}.missions__modal-content .detail-grid{grid-template-columns:1fr}}.mission-validation-list{background:#fff;border-radius:8px;padding:30px}.mission-validation-list h2{color:#2c3e50;font-size:1.5rem;margin-bottom:30px;margin-top:0}.mission-validation-list .missions-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.mission-validation-list .mission-item{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #ecf0f1;border-left:4px solid #0097b2;border-radius:8px;display:flex;flex-direction:column;padding:20px;transition:all .3s ease}.mission-validation-list .mission-item:hover{border-left-color:#e74c3c;box-shadow:0 8px 20px #0000001f;transform:translateY(-3px)}.mission-validation-list .mission-item .mission-info{flex:1 1;margin-bottom:15px}.mission-validation-list .mission-item .mission-info h4{color:#2c3e50;font-size:1.1rem;margin:0 0 12px}.mission-validation-list .mission-item .mission-info p{color:#34495e;font-size:.95rem;margin:8px 0}.mission-validation-list .mission-item .mission-info p strong{color:#2c3e50;min-width:100px}.mission-validation-list .mission-item .btn{background:linear-gradient(135deg,#0097b2,#0097b2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s}.mission-validation-list .mission-item .btn:hover{box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.mission-validation-form{background:#fff;border-radius:8px;padding:30px}.mission-validation-form .btn-secondary{background:#95a5a6;border:none;border-radius:8px;color:#fff;cursor:pointer;margin-bottom:25px;padding:10px 20px;transition:all .3s ease}.mission-validation-form .btn-secondary:hover{background:#7f8c8d}.mission-validation-form .validation-header{background:linear-gradient(135deg,#0097b2,#0097b2);border-radius:8px;color:#fff;margin-bottom:30px;padding:25px}.mission-validation-form .validation-header h2{font-size:1.4rem;margin:0 0 15px}.mission-validation-form .validation-header p{font-size:.95rem;margin:0;opacity:.9}.mission-validation-form .validation-checklist{background:#f8f9fa;border-left:4px solid #0097b2;border-radius:8px;margin-bottom:25px;padding:25px}.mission-validation-form .validation-checklist h3{color:#2c3e50;font-size:1.1rem;margin-top:0}.mission-validation-form .validation-checklist .checklist-items{grid-gap:12px;display:grid;gap:12px}.mission-validation-form .validation-checklist .checklist-item{align-items:center;background:#fff;border:2px solid #ecf0f1;border-radius:8px;display:flex;gap:12px;padding:15px;transition:all .3s ease}.mission-validation-form .validation-checklist .checklist-item:hover{background:#667eea0d;border-color:#0097b2}.mission-validation-form .validation-checklist .checklist-item input[type=checkbox]{accent-color:#0097b2;cursor:pointer;height:20px;width:20px}.mission-validation-form .validation-checklist .checklist-item span{color:#2c3e50;flex:1 1;font-weight:600}.mission-validation-form .validation-checklist .checklist-item a{background:#0097b2;border-radius:8px;color:#fff;font-size:.85rem;padding:6px 12px;text-decoration:none;transition:all .3s ease}.mission-validation-form .validation-checklist .checklist-item a:hover{background:#0097b2}.mission-validation-form .validation-action{background:#f8f9fa;border-radius:8px;margin-bottom:25px;padding:25px}.mission-validation-form .validation-action .form-group{margin-bottom:20px}.mission-validation-form .validation-action .form-group label{color:#2c3e50;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.mission-validation-form .validation-action .form-group select,.mission-validation-form .validation-action .form-group textarea{border:2px solid #ecf0f1;border-radius:8px;color:#2c3e50;font-family:inherit;font-size:1rem;padding:12px;transition:all .3s ease;width:100%}.mission-validation-form .validation-action .form-group select:focus,.mission-validation-form .validation-action .form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #667eea1a;outline:none}.mission-validation-form .validation-action .form-group textarea{min-height:100px;resize:vertical}.mission-validation-form .validation-buttons{display:flex;gap:12px;justify-content:flex-end}.mission-validation-form .validation-buttons button{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.mission-validation-form .validation-buttons button--primary{background:linear-gradient(135deg,#27ae60,#2ecc71)}.mission-validation-form .validation-buttons button--primary:hover:not(:disabled){box-shadow:0 5px 15px #27ae604d;transform:translateY(-2px)}.mission-validation-form .validation-buttons button--secondary{background:#95a5a6}.mission-validation-form .validation-buttons button--secondary:hover{background:#7f8c8d}.mission-validation-form .validation-buttons button:disabled{cursor:not-allowed;opacity:.6}.loading{color:#95a5a6;font-size:1.1rem;padding:60px;text-align:center}@media(max-width:768px){.mission-validation-list .missions-list{grid-template-columns:1fr}.mission-validation-form .validation-buttons{flex-direction:column}.mission-validation-form .validation-buttons button{width:100%}}.project-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.project-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.project-modal .project-modal__header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:1.5rem}.project-modal .project-modal__header h2{color:#1a1a1a;font-size:1.25rem;margin:0}.project-modal .project-modal__header .project-modal__close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.project-modal .project-modal__header .project-modal__close:hover:not(:disabled){background:#f0f0f0;color:#1a1a1a}.project-modal .project-modal__header .project-modal__close:disabled{cursor:not-allowed;opacity:.5}.project-modal .project-modal__form{padding:1.5rem}.project-modal .project-modal__form .form-group{margin-bottom:1.5rem}.project-modal .project-modal__form .form-group label{color:#1a1a1a;display:block;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.project-modal .project-modal__form .form-group input,.project-modal .project-modal__form .form-group select,.project-modal .project-modal__form .form-group textarea{border:1px solid #dee2e6;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;transition:all .2s ease;width:100%}.project-modal .project-modal__form .form-group input:focus,.project-modal .project-modal__form .form-group select:focus,.project-modal .project-modal__form .form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #007bff1a;outline:none}.project-modal .project-modal__form .form-group input:disabled,.project-modal .project-modal__form .form-group select:disabled,.project-modal .project-modal__form .form-group textarea:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.project-modal .project-modal__form .form-group textarea{resize:vertical}.project-modal .project-modal__form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}@media(max-width:480px){.project-modal .project-modal__form .form-row{grid-template-columns:1fr}}.project-modal .project-modal__actions{background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:1rem;padding:1.5rem}.project-modal .project-modal__actions .btn{flex:1 1}.project-modal .project-modal__actions .btn:disabled{cursor:not-allowed;opacity:.6}@media(max-width:640px){.project-modal{margin:1rem;max-width:90vw}.project-modal .project-modal__header{padding:1rem}.project-modal .project-modal__header h2{font-size:1.1rem}.project-modal .project-modal__form{padding:1rem}.project-modal .project-modal__actions{flex-direction:column;padding:1rem}}.admin-projects{background:#f5f7fa;border-radius:8px;margin:0;padding:20px}@media(max-width:768px){.admin-projects{padding:15px}}@media(max-width:480px){.admin-projects{padding:10px}}.admin-projects__header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.admin-projects__header h2{color:#2c3e50;flex:1 1;font-size:28px;font-weight:700;margin:0;min-width:200px}@media(max-width:768px){.admin-projects__header h2{font-size:22px}}@media(max-width:480px){.admin-projects__header h2{flex:1 1 100%;font-size:18px}}.admin-projects__header .btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .3s ease;white-space:nowrap}@media(max-width:480px){.admin-projects__header .btn{flex:1 1 100%;font-size:12px;padding:8px 16px}}.admin-projects__header .btn:hover:not(:disabled){box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.admin-projects__header .btn:active:not(:disabled){transform:translateY(0)}.admin-projects__header .btn:disabled{cursor:not-allowed;opacity:.6}.admin-projects__header .btn--primary{background:linear-gradient(135deg,#0097b2,#0097b2);color:#fff}@media(max-width:480px){.admin-projects__header .btn--primary{width:100%}}.admin-projects__list{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}@media(max-width:768px){.admin-projects__list{overflow-x:auto}}.empty-state{align-items:center;background:linear-gradient(135deg,#f5f7fa,#e9ecef);display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:60px 30px;text-align:center}@media(max-width:768px){.empty-state{min-height:250px;padding:40px 20px}}@media(max-width:480px){.empty-state{min-height:200px;padding:30px 15px}}.empty-state .empty-message{color:#2c3e50;font-size:28px;font-weight:700;margin:0 0 10px}@media(max-width:768px){.empty-state .empty-message{font-size:22px}}@media(max-width:480px){.empty-state .empty-message{font-size:18px}}.empty-state .empty-description{color:#7f8c8d;font-size:14px;margin:0;max-width:400px}@media(max-width:480px){.empty-state .empty-description{font-size:12px}}.loading-message{animation:pulse 1.5s ease-in-out infinite;color:#0097b2;font-size:16px;font-weight:500;padding:40px;text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.projects-table{border-collapse:collapse;margin:0;width:100%}.projects-table thead{background:#eef0f0;font-weight:700;text-align:left}.projects-table thead th{border:none;font-size:13px;letter-spacing:.5px;padding:16px 12px;text-transform:uppercase}@media(max-width:768px){.projects-table thead th{font-size:11px;padding:12px 8px}}@media(max-width:480px){.projects-table thead th{font-size:10px;padding:10px 6px}}.projects-table tbody tr{border-bottom:1px solid #e9ecef;transition:all .3s ease}.projects-table tbody tr:hover{background-color:#f8f9ff;box-shadow:inset 0 0 10px #667eea1a}.projects-table tbody tr:last-child{border-bottom:none}.projects-table tbody tr td{color:#2c3e50;font-size:13px;padding:14px 12px}@media(max-width:768px){.projects-table tbody tr td{font-size:12px;padding:10px 8px}}@media(max-width:480px){.projects-table tbody tr td{font-size:11px;padding:8px 6px}}.projects-table tbody tr td strong{color:#2c3e50;font-weight:700}.projects-table .description-cell{color:#7f8c8d;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.projects-table .description-cell{max-width:150px}}@media(max-width:480px){.projects-table .description-cell{max-width:80px}}.projects-table .description-cell .no-description{color:#bdc3c7;font-style:italic}.projects-table .badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:6px 12px;text-align:center;transition:all .3s ease}@media(max-width:480px){.projects-table .badge{font-size:10px;padding:4px 8px}}.projects-table .badge.badge-actif{background-color:#d4f1d4;border:1px solid #27ae60;color:#27ae60}.projects-table .badge.badge-actif:hover{background-color:#27ae60;color:#fff}.projects-table .badge.badge-termine{background-color:#ffe8e8;border:1px solid #e74c3c;color:#e74c3c}.projects-table .badge.badge-termine:hover{background-color:#e74c3c;color:#fff}.projects-table .missions-count{text-align:center}.projects-table .missions-count .mission-badge{background:#0097b2;border-radius:4px;color:#fff;display:inline-block;font-size:12px;font-weight:700;padding:4px 8px}@media(max-width:480px){.projects-table .missions-count .mission-badge{font-size:10px;padding:3px 6px}}.projects-table .actions-cell{text-align:center;white-space:nowrap}@media(max-width:768px){.projects-table .actions-cell{display:flex;flex-direction:column;gap:8px}}@media(max-width:480px){.projects-table .actions-cell{gap:4px}}.projects-table .actions-cell .status-select{background:#fff;border:1px solid #bdc3c7;border-radius:4px;color:#2c3e50;cursor:pointer;font-size:12px;font-weight:500;padding:6px 10px;transition:all .3s ease}@media(max-width:768px){.projects-table .actions-cell .status-select{width:100%}}@media(max-width:480px){.projects-table .actions-cell .status-select{font-size:11px;padding:5px 8px}}.projects-table .actions-cell .status-select:hover{border-color:#0097b2;box-shadow:0 0 8px #667eea33}.projects-table .actions-cell .status-select:focus{border-color:#0097b2;box-shadow:0 0 8px #667eea4d;outline:none}.projects-table .actions-cell .status-select option{color:#2c3e50;padding:8px}.projects-table .actions-cell .btn{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .3s ease}@media(max-width:768px){.projects-table .actions-cell .btn{width:100%}}@media(max-width:480px){.projects-table .actions-cell .btn{font-size:11px;padding:5px 10px}}.projects-table .actions-cell .btn:hover:not(:disabled){box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.projects-table .actions-cell .btn:active:not(:disabled){transform:translateY(0)}.projects-table .actions-cell .btn:disabled{cursor:not-allowed;opacity:.5}.projects-table .actions-cell .btn--danger{background-color:#e74c3c;color:#fff}.projects-table .actions-cell .btn--danger:hover:not(:disabled){background-color:#c0392b}.projects-table .actions-cell .btn--small{font-size:11px;padding:5px 10px}@media(max-width:480px){.projects-table .actions-cell .btn--small{font-size:10px;padding:4px 8px}}@media(max-width:768px){.projects-table thead{display:none}.projects-table tbody{display:block}.projects-table tbody tr{border:1px solid #e9ecef;border-radius:6px;display:flex;flex-direction:column;margin-bottom:20px;overflow:hidden}.projects-table tbody tr:hover{border-color:#0097b2;box-shadow:0 4px 12px #667eea26}.projects-table tbody tr td{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:12px;position:relative}.projects-table tbody tr td:before{color:#0097b2;content:attr(data-label);font-weight:700;margin-right:10px;min-width:100px}.projects-table tbody tr td:last-child{border-bottom:none}.projects-table tbody tr td strong{display:block;width:100%}.projects-table tbody tr td:first-child:before{content:"Nom"}.projects-table tbody tr td:nth-child(2):before{content:"Description"}.projects-table tbody tr td:nth-child(3):before{content:"Statut"}.projects-table tbody tr td:nth-child(4):before{content:"Missions"}.projects-table tbody tr td:nth-child(5):before{content:"Date fin"}.projects-table tbody tr td:nth-child(6):before{content:"Actions"}.projects-table .actions-cell{display:flex;flex-direction:column;gap:8px}.projects-table .actions-cell button,.projects-table .actions-cell select{width:100%}}@media(max-width:480px){.projects-table tbody tr{margin-bottom:15px}.projects-table tbody tr td{font-size:12px;padding:10px}.projects-table tbody tr td:before{font-size:11px;min-width:80px}}.admin-missions-list{animation:fadeIn .25s ease;background:#f8fafc;min-height:100vh;padding:1.5rem}@media(max-width:768px){.admin-missions-list{padding:1rem .75rem}}.admin-filters .filters-row{grid-template-columns:2fr 1fr 1fr 1fr 1fr auto}@media(max-width:1200px){.admin-filters .filters-row{grid-template-columns:1fr 1fr 1fr}}@media(max-width:768px){.admin-filters .filters-row{grid-template-columns:1fr 1fr}}.admin-filters .filter-group--export{justify-content:flex-end}.btn--export{background:#0097b2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.88rem;font-weight:600;height:40px;padding:0 1rem;transition:background .18s,box-shadow .18s;white-space:nowrap}.btn--export:hover:not(:disabled){background:#007a91;box-shadow:0 2px 8px #0097b259}.btn--export:disabled{cursor:not-allowed;opacity:.5}.table{font-size:.88rem}.table thead th{font-size:.73rem}.table td{padding:.8rem 1rem}@media(max-width:768px){.table thead{display:none}.table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;display:block;margin-bottom:.75rem}.table td{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:.6rem 1rem}.table td:last-child{border-bottom:none}.table td:before{color:#94a3b8;content:attr(data-label);flex-shrink:0;font-size:.73rem;font-weight:600;letter-spacing:.04em;margin-right:.75rem;min-width:100px;text-transform:uppercase}}.employee-cell .employee-poste{font-size:.75rem}.project-badge,.type-badge{background:#e6f7fa;border:1px solid #4ce4ff;border-radius:999px;color:#007a91;display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.project-badge{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.period-cell .date-debut{font-size:.85rem}.motif-text{max-width:180px}@media(max-width:768px){.motif-text{max-width:140px;white-space:normal}}.budget-text{font-weight:600;white-space:nowrap}.budget-text,.text-muted{font-size:.85rem}.doc-chips{display:flex;flex-wrap:wrap;gap:4px}.doc-chip{border:1px solid #0000;border-radius:4px;cursor:pointer;font-size:.72rem;font-weight:600;padding:.18rem .5rem;transition:background .15s,transform .1s}.doc-chip--ok{background:#f0fdf4;border-color:#8bebae;color:#16a34a}.doc-chip--ok:hover{background:#defbe7;transform:scale(1.05)}.doc-chip--missing{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:default;opacity:.65}.own-request,.status-badge,.status-info{font-size:.73rem}.modal{max-width:520px}.modal__content{max-height:65vh;overflow-y:auto}.close-btn{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1rem}.close-btn:hover{color:#1e293b}.validation-checklist{margin-bottom:1rem}.validation-checklist h4{color:#1e293b;font-size:.88rem;font-weight:700;margin:0 0 .6rem}.checklist-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}@media(max-width:480px){.checklist-grid{grid-template-columns:1fr}}.checklist-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;display:flex;gap:.5rem;justify-content:space-between;padding:.45rem .75rem}.checkbox-label{align-items:center;cursor:pointer;display:flex;font-size:.85rem;gap:.4rem}.checkbox-label span{color:#1e293b;font-weight:600}.btn-view-doc{background:none;border:1px solid #e2e8f0;border-radius:6px;color:#0097b2;cursor:pointer;font-size:.75rem;padding:.15rem .5rem;transition:background .15s;white-space:nowrap}.btn-view-doc:hover{background:#e6f7fa}.doc-missing{color:#94a3b8;font-size:.73rem;font-style:italic}.form-group textarea{transition:border-color .2s,box-shadow .2s}.projects-view{display:flex;flex-direction:column;gap:0}.project-section{border-bottom:2px solid #e2e8f0}.project-section:last-child{border-bottom:none}.project-header{background:linear-gradient(90deg,#e6f7fa,#f8fafc);border-bottom:1px solid #66e8ff;flex-wrap:wrap;justify-content:space-between;padding:.9rem 1.25rem}.project-header,.project-header__left{align-items:center;display:flex;gap:.5rem}.project-header__left .project_icon{font-size:1rem}.project-header__left h4{color:#007a91;font-size:1rem;font-weight:700;margin:0}.project-header__right{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.project-header .project-stat{background:#0097b2;border-radius:999px;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;padding:.15rem .65rem}.project-header .project-budjet{color:#94a3b8;font-size:.82rem;font-weight:600}@media(max-width:480px){.project-header{padding:.75rem 1rem}.project-header__right{gap:.5rem}.project-header .project-budjet{font-size:.75rem}}.project-header .project-table-wrapper{background:#fff}.admin-mission-management{background:#f8f9fa;min-height:100vh;padding:2rem}.admin-mission-management .mission-management__header{margin-bottom:2rem}.admin-mission-management .mission-management__header h1{color:#1a1a1a;font-size:2rem;margin:0 0 .5rem}.admin-mission-management .mission-management__header p{color:#666;font-size:.95rem;margin:0}.admin-mission-management .mission-management__tabs{border-bottom:2px solid #e9ecef;display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1rem}.admin-mission-management .mission-management__tabs .tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:-1rem;padding:.75rem 1.5rem 1.75rem;transition:all .3s ease}.admin-mission-management .mission-management__tabs .tab-btn:hover{color:#0097b2}.admin-mission-management .mission-management__tabs .tab-btn.active{border-bottom-color:#0097b2;color:#0097b2}.admin-mission-management .mission-management__content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;padding:1.5rem}.mission-form{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 8px 32px #0000001a;margin-bottom:40px;overflow:hidden}.mission-form__header{background:linear-gradient(135deg,#0097b2,#006c7f);color:#fff;padding:32px;text-align:center}.mission-form__header h3{font-size:1.75rem;font-weight:700;margin:0 0 24px}.mission-form__progress{display:flex;gap:24px;justify-content:center;margin-top:20px}.mission-form__progress .progress-step{align-items:center;display:flex;flex-direction:column;gap:8px;position:relative}.mission-form__progress .progress-step:not(:last-child):after{background:#ffffff4d;content:"";height:2px;left:100%;position:absolute;top:20px;width:24px;z-index:1}.mission-form__progress .progress-step.completed:after{background:#fffc}.mission-form__progress .progress-step .step-number{align-items:center;background:#fff3;border:2px solid #0000;border-radius:50%;display:flex;font-size:1rem;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px}.mission-form__progress .progress-step .step-label{font-size:.875rem;font-weight:600;opacity:.8;text-align:center}.mission-form__progress .progress-step.active .step-number{background:#fff;border-color:#fff;color:#0097b2;transform:scale(1.1)}.mission-form__progress .progress-step.completed .step-number{background:#ffffffe6;color:#0097b2}.mission-form__content{padding:40px}.mission-form .form-step h4{color:#2c3e50;font-size:1.5rem;font-weight:700;margin:0 0 24px}.mission-form .form-step .step-description{color:#7f8c8d;font-size:1rem;line-height:1.6;margin-bottom:32px}.mission-form .form-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.mission-form .form-grid .full-width{grid-column:1/-1}.mission-form .form-group{display:flex;flex-direction:column;gap:8px}.mission-form .form-group label{color:#2c3e50;font-size:.95rem;font-weight:600}.mission-form .form-group input,.mission-form .form-group select,.mission-form .form-group textarea{background:#fff;border:2px solid #ecf0f1;border-radius:8px;font-family:inherit;font-size:1rem;padding:16px;transition:all .3s ease}.mission-form .form-group input:focus,.mission-form .form-group select:focus,.mission-form .form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 4px #0097b21a;outline:none}.mission-form .form-group input:disabled,.mission-form .form-group select:disabled,.mission-form .form-group textarea:disabled{background:#f8f9fa;color:#7f8c8d;cursor:not-allowed}.mission-form .form-group small{color:#7f8c8d;font-size:.875rem}.mission-form .form-group .duration-display{align-items:center;background:#f8f9fa;border:2px solid #ecf0f1;border-radius:8px;display:flex;gap:12px;padding:16px}.mission-form .form-group .duration-display .duration-number{color:#0097b2;font-size:2rem;font-weight:700}.mission-form .form-group .duration-display .duration-unit{color:#2c3e50;font-weight:600}.mission-form__actions{align-items:center;border-top:1px solid #ecf0f1;display:flex;justify-content:space-between;margin-top:32px;padding-top:32px}.mission-form__actions .actions-left,.mission-form__actions .actions-right{display:flex;gap:12px}.mission-form__actions .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;min-width:140px;padding:14px 24px;transition:all .3s ease}.mission-form__actions .btn--primary{background:linear-gradient(135deg,#0097b2,#006c7f);color:#fff}.mission-form__actions .btn--primary:hover:not(:disabled){box-shadow:0 8px 25px #0097b24d;transform:translateY(-2px)}.mission-form__actions .btn--primary.btn--submit{background:linear-gradient(135deg,#27ae60,#1e8449)}.mission-form__actions .btn--primary.btn--submit:hover:not(:disabled){box-shadow:0 8px 25px #27ae604d}.mission-form__actions .btn--secondary{background:#6c757d;color:#fff}.mission-form__actions .btn--secondary:hover{background:#545b62}.mission-form__actions .btn--outline{background:#0000;border:2px solid #0097b2;color:#0097b2}.mission-form__actions .btn--outline:hover{background:#0097b2;color:#fff}.mission-form__actions .btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.mission-form__actions .btn .loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}.mission-form__actions .btn .btn-arrow,.mission-form__actions .btn .submit-icon{transition:transform .3s ease}.mission-form__actions .btn:hover .btn-arrow,.mission-form__actions .btn:hover .submit-icon{transform:scale(1.2)}@media(max-width:768px){.mission-form{border-radius:0;margin:0 -20px 40px}.mission-form__header{padding:24px 20px}.mission-form__header h3{font-size:1.5rem}.mission-form__progress{gap:16px}.mission-form__progress .progress-step:not(:last-child):after{width:16px}.mission-form__progress .progress-step .step-number{font-size:.875rem;height:36px;width:36px}.mission-form__progress .progress-step .step-label{font-size:.75rem}.mission-form__content{padding:24px 20px}.mission-form .form-grid{gap:20px;grid-template-columns:1fr}.mission-form__actions{flex-direction:column;gap:16px}.mission-form__actions .actions-left,.mission-form__actions .actions-right,.mission-form__actions .btn{width:100%}}.create-mission{margin:0 auto;max-width:1200px;padding:30px 20px}.create-mission__header{margin-bottom:40px}.create-mission__header .breadcrumb{align-items:center;display:flex;font-size:.95rem;gap:12px;margin-bottom:24px}.create-mission__header .breadcrumb-link{background:none;border:none;border-radius:6px;color:#0097b2;cursor:pointer;font-weight:600;padding:8px 12px;transition:all .3s ease}.create-mission__header .breadcrumb-link:hover{background:#0097b21a;transform:translateX(-2px)}.create-mission__header .breadcrumb-separator{color:#7f8c8d;font-weight:500}.create-mission__header .breadcrumb-current{color:#2c3e50;font-weight:600}.create-mission__header .header-content h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0097b2,#00404c);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:2.5rem;font-weight:700;margin:0 0 12px}.create-mission__header .header-content .header-subtitle{color:#7f8c8d;font-size:1.125rem;line-height:1.5;margin:0}.create-mission__content{background:#fff;border:1px solid #ecf0f1;border-radius:12px;box-shadow:0 8px 32px #00000014;overflow:hidden}@media(max-width:768px){.create-mission{padding:20px 15px}.create-mission__header .header-content h1{font-size:2rem}.create-mission__header .breadcrumb{font-size:.875rem}.create-mission__header .breadcrumb-link{padding:6px 8px}.create-mission__content{border-radius:0;margin:0 -15px}}.admin-droit-list{animation:fadeIn .25s ease;background:#f8fafc;min-height:100vh;padding:1.5rem}@media(max-width:768px){.admin-droit-list{padding:1rem .75rem}}.admin-conge-list__header h2{margin:0 0 .25rem}.admin-conge-list__header p{color:#94a3b8;font-size:.9rem;margin:0}.admin-filters .filters-row{grid-template-columns:2fr 1fr 1fr 1fr}@media(max-width:1024px){.admin-filters .filters-row{grid-template-columns:1fr 1fr}}@media(max-width:600px){.admin-filters .filters-row{gap:.75rem;grid-template-columns:1fr}}.admin-conge-table .empty-state{color:#94a3b8;font-size:.95rem;padding:3rem;text-align:center}@media(max-width:768px){.table thead{display:none}.table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;display:block;margin-bottom:.75rem;overflow:hidden}.table td{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;font-size:.88rem;justify-content:space-between;padding:.6rem 1rem}.table td:last-child{border-bottom:none}.table td:before{color:#94a3b8;content:attr(data-label);flex-shrink:0;font-size:.75rem;font-weight:600;letter-spacing:.04em;margin-right:.75rem;min-width:110px;text-transform:uppercase}}.employee-cell .employee-name{color:#1e293b}.employee-cell .employee-poste{color:#94a3b8;font-size:.78rem}.type-badge{background:#a8f2ff;border:1px solid #6be8ff}.motif-text{color:#1e293b}@media(max-width:768px){.motif-text{max-width:160px;white-space:normal}}.period-cell .date-debut{font-size:.88rem;white-space:nowrap}.btn-icon--view{background:none;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:1rem;padding:.3rem .5rem;transition:background .15s,border-color .15s}.btn-icon--view:hover{background:#e6f7fa;border-color:#0097b2}.status-badge{letter-spacing:.03em}.custom-tooltip{max-width:260px!important}.custom-tooltip .tooltip-content p{margin:0 0 .4rem}.own-request,.status-info{display:inline-block}.btn{transition:background .18s,transform .12s,box-shadow .18s}.btn--success:hover:not(:disabled){box-shadow:0 2px 8px #22c55e59}.btn--danger:hover:not(:disabled){box-shadow:0 2px 8px #ef44444d}.spinner{flex-shrink:0}.modal{max-width:500px}.modal__header{padding:1.1rem 1.25rem}.modal__content .validation-details p,.modal__content .validation-details p strong{color:#1e293b}.modal__content .form-group{display:flex;flex-direction:column;gap:.4rem}.modal__content .form-group label{color:#1e293b;font-size:.85rem;font-weight:600}.modal__content .form-group label .required{color:#ef4444;margin-left:2px}.modal__content .form-group textarea{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:.88rem;padding:.6rem .75rem;resize:vertical;transition:border-color .2s,box-shadow .2s;width:100%}.modal__content .form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.admin-permission-list{animation:fadeIn .25s ease;background:#f8fafc;min-height:100vh;padding:1.5rem}@media(max-width:768px){.admin-permission-list{padding:1rem .75rem}}.period-indicator{border-top:1px solid #e2e8f0;color:#94a3b8;font-size:.85rem;margin-top:.75rem;padding-top:.6rem}.period-indicator strong{color:#007a91}.admin-conge-list__header{margin-bottom:1.25rem}.admin-conge-list__header h2{color:#1e293b;font-size:1.6rem;font-weight:700;margin:0}@media(max-width:480px){.admin-conge-list__header h2{font-size:1.25rem}}.alert{border-radius:6px;font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.alert--success{background:#f0fdf4;border-left:4px solid #22c55e;color:#16a34a}.alert--error{background:#fef2f2;border-left:4px solid #ef4444;color:#ef4444}.admin-filters{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;margin-bottom:1.25rem;padding:1.25rem}.admin-filters .filters-row{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:120px 150px 2fr 1fr 1fr 1fr}@media(max-width:1100px){.admin-filters .filters-row{grid-template-columns:1fr 1fr 1fr}}@media(max-width:700px){.admin-filters .filters-row{grid-template-columns:1fr 1fr}}@media(max-width:480px){.admin-filters .filters-row{gap:.75rem;grid-template-columns:1fr}}.admin-filters .filter-group{display:flex;flex-direction:column;gap:.35rem}.admin-filters .filter-group label{color:#94a3b8;font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.admin-filters .filter-select,.admin-filters .search-input{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;color:#1e293b;font-size:.9rem;height:40px;padding:0 .75rem;transition:border-color .2s,box-shadow .2s;width:100%}.admin-filters .filter-select:focus,.admin-filters .search-input:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21f;outline:none}.admin-filters .filter-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%2394a3b8' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;cursor:pointer;padding-right:2rem}.admin-conge-table{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden}.admin-conge-table .empty-state,.admin-conge-table .loading-state{color:#94a3b8;font-size:.95rem;padding:3rem;text-align:center}.admin-conge-table .loading-state{align-items:center;display:flex;flex-direction:column;gap:.75rem}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{border-collapse:collapse;font-size:.9rem;width:100%}.table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.table thead th{color:#94a3b8;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:.85rem 1rem;text-align:left;text-transform:uppercase;white-space:nowrap}.table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .15s}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background:#f8fafc}.table td{color:#1e293b;padding:.85rem 1rem;vertical-align:middle}@media(max-width:768px){.table thead{display:none}.table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 4px #00000014;display:block;margin-bottom:.75rem}.table td{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;font-size:.88rem;justify-content:space-between;padding:.6rem 1rem}.table td:last-child{border-bottom:none}.table td:before{color:#94a3b8;content:attr(data-label);flex-shrink:0;font-size:.75rem;font-weight:600;letter-spacing:.04em;margin-right:.75rem;min-width:110px;text-transform:uppercase}}.employee-cell{display:flex;flex-direction:column;gap:2px}.employee-cell .employee-name{font-weight:600}.type-badge{background:#e6f7fa;border:1px solid #4ce4ff;border-radius:999px;color:#007a91;display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.2rem .6rem;text-transform:uppercase}.period-cell{display:flex;flex-direction:column;gap:1px}.date-debut{font-size:.88rem;white-space:nowrap}.days-badge{background:#e6f7fa;border:1px solid #4ce4ff;border-radius:999px;color:#007a91;display:inline-block;font-size:.82rem;font-weight:700;padding:.2rem .6rem}.motif-text{display:block;font-size:.88rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.motif-text{max-width:150px;white-space:normal}}.text-muted{color:#94a3b8;font-size:.88rem}.status-with-info{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.status-badge{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:700;padding:.25rem .65rem;white-space:nowrap}.status-badge.status--pending{background:#fffbeb;border:1px solid #facf85;color:#945f06}.status-badge.status--approved{background:#f0fdf4;border:1px solid #94ecb4;color:#16a34a}.status-badge.status--rejected{background:#fef2f2;border:1px solid #f9b9b9;color:#eb1515}.status-badge.status--partial{background:#f5f3ff;border:1px solid #f2edfe;color:#692cf3}.info-icon{align-items:center;cursor:pointer;display:inline-flex;font-size:1rem;opacity:.75;transition:opacity .15s,transform .15s}.info-icon:hover{opacity:1;transform:scale(1.15)}.custom-tooltip{border-radius:10px!important;box-shadow:0 4px 16px #0000001a!important;font-size:.85rem!important;max-width:240px!important;z-index:9999!important}.custom-tooltip .tooltip-content h4{font-size:.88rem;font-weight:700;margin:0 0 .4rem}.custom-tooltip .tooltip-content p{font-size:.82rem;margin:0 0 .35rem}.custom-tooltip .tooltip-content ul{margin:.25rem 0;padding-left:1.1rem}.custom-tooltip .tooltip-content ul li{font-size:.82rem;padding:2px 0}.custom-tooltip .tooltip-content .tooltip-note{font-size:.78rem;font-style:italic;margin-top:.5rem;opacity:.85}.actions-cell{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}@media(max-width:768px){.actions-cell{justify-content:flex-end}}.own-request{background:#e6f7fa;border:1px solid #4ce4ff;border-radius:999px;color:#007a91}.own-request,.status-info{font-size:.75rem;font-weight:600;padding:.2rem .6rem}.status-info{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#94a3b8}.processing{color:#94a3b8;display:flex;font-size:.85rem;gap:.5rem}.btn,.processing{align-items:center}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:600;justify-content:center;padding:.5rem 1.1rem;transition:background .18s,transform .12s;white-space:nowrap}.btn:active{transform:scale(.97)}.btn--small{font-size:.8rem;padding:.3rem .75rem}.btn--success{background:#22c55e;color:#fff}.btn--success:hover:not(:disabled){background:#16a34a}.btn--danger{background:#ef4444;color:#fff}.btn--danger:hover:not(:disabled){background:#ec1e1e}.btn--secondary{background:#f1f5f9;border:1px solid #e2e8f0;color:#1e293b}.btn--secondary:hover{background:#e2e8f0}.btn:disabled{cursor:not-allowed;opacity:.5}.spinner{animation:spin .8s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#0097b2;height:14px;width:14px}.spinner-lg{animation:spin 1s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#0097b2;height:36px;width:36px}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#00000073;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}@media(max-width:480px){.modal-overlay{align-items:flex-end;padding:0}}.modal{animation:fadeIn .2s ease;background:#fff;border-radius:10px;box-shadow:0 4px 16px #0000001a;max-width:480px;overflow:hidden;width:100%}@media(max-width:480px){.modal{border-radius:10px 10px 0 0;max-width:100%}}.modal__header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.modal__header h3{color:#1e293b;font-size:1rem;font-weight:700;margin:0}.modal__content{padding:1.25rem}.modal__content .validation-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;margin-bottom:1rem;padding:.85rem 1rem}.modal__content .validation-details p{font-size:.88rem;margin:.3rem 0}.modal__actions{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.25rem}@media(max-width:480px){.modal__actions{flex-direction:column-reverse}.modal__actions .btn{justify-content:center;width:100%}}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{color:#1e293b;font-size:.85rem;font-weight:600}.form-group label .required{color:#ef4444;margin-left:2px}.form-group textarea{border:1px solid #e2e8f0;border-radius:6px;box-sizing:border-box;color:#1e293b;font-family:inherit;font-size:.88rem;padding:.6rem .75rem;resize:vertical;width:100%}.form-group textarea:focus{border-color:#0097b2;box-shadow:0 0 0 3px #0097b21a;outline:none}
/*# sourceMappingURL=main.6d3bfbf9.css.map*/