.slider-wrapper { display: flex; transition: transform 0.5s ease; width: 300%;opacity: 1; }
.year-container { width: 33.333%; flex-shrink: 0; }
.btn-y { padding: 5px 15px; cursor: pointer; border: 1px solid #21a366; background: white; color: #21a366; margin: 0 5px; border-radius: 4px; font-weight: bold; }
.btn-y.active { background: #21a366; color: white; }
body { font-family: sans-serif; background: #f0f2f5; margin: 0; display: flex; justify-content: center; align-items: center; height: 100vh; }
.login-container { background: white; padding: 30px; border-radius: 8px; text-align: center; box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
.btn-green { background: #0e4b2e; color: white; padding: 10px 20px; border: none; border-radius: 4px; cursor: pointer; }
.modal { display: block; position: fixed; z-index: 10; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); overflow: auto; }
.modal-content { background: white; margin: 2% auto; padding: 20px 20px 65px; width: 95%;max-height: 80vh; border-radius: 5px; position: relative; }
.close-btn { position: absolute; right: 20px; top: 10px; font-size: 24px; text-decoration: none; color: #333; }
.feuil1-header { background: #21a366; color: white; width: 150px; padding: 8px; font-weight: bold; text-align: center; margin-bottom: 5px; }

table { border-collapse: collapse; width: 100%; background: white; table-layout: fixed; }
th, td { border: 1px solid #c0c0c0; padding: 8px; text-align: center; font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.header-row { background-color: #f2f2f2; font-weight: bold; }
tr:nth-child(even) { background-color: #f9f9f9; }

.editable:hover { background-color: #e8f5e9; cursor: pointer; }
.edit-input { width: 100%; box-sizing: border-box; text-align: center; border: 1px solid #21a366; outline: none; }
.col-total { font-weight: bold; background-color: #f0f0f0 !important; }

.btn-delete { color: #ff4d4d; border: 1px solid #ff4d4d; background: none; border-radius: 3px; cursor: pointer; padding: 0 5px; font-size: 16px; line-height: 1; transition: all 0.2s; }
.btn-delete:hover { background-color: #ff4d4d; color: white; }

.custom-modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); }
.custom-modal-content { background: white; margin: 15% auto; padding: 20px; border-radius: 8px; width: 300px; text-align: center; box-shadow: 0 5px 15px rgba(0,0,0,0.3); }
.modal-buttons { margin-top: 20px; display: flex; justify-content: space-around; }
.btn-confirm { background: #ff4d4d; color: white; border: none; padding: 10px 15px; border-radius: 4px; cursor: pointer; }
.btn-cancel { background: #ccc; color: #333; border: none; padding: 10px 15px; border-radius: 4px; cursor: pointer; }
.btn-confirm:hover { background: #b30000; }
.btn-cancel:hover { background: #bbb; }

.table-mask { 
    overflow-y: auto!important; /* Permet le scroll vertical */
    max-height: 70vh; /* Limite la hauteur à 70% de l'écran */
    width: 100%; 
    border: 1px solid #c0c0c0;
}

.name-container { display: flex; justify-content: space-between; align-items: center; width: 100%; }
.col-nom { position: sticky; left: 0; z-index: 0; background-color: #f2f2f2 !important; border-right: 2px solid #21a366 !important; min-width: 150px; width: 150px; }

.header-row td, .header-row th { position: sticky; top: 0; z-index: 20; background-color: #f2f2f2; border-bottom: 2px solid #21a366; }
.header-row .col-nom { position: sticky; top: 0; left: 0; z-index: 30; background-color: #f2f2f2 !important; }
.new-member-input { width: 100%; border: none; background: transparent; outline: none; padding: 5px; font-style: italic; }