.wait { position: fixed; width: 50px; height: 10px; background: #424242; top: calc(50% - 50px); left: 50%; margin-left: -25px; animation: wait 0.6s ease-out alternate infinite; } @keyframes wait { 100% { transform: translateY(-30px) rotate(360deg) } } .message_curtom { position: fixed; bottom: 100%; left: 50%; z-index: 10; padding: 20px; border-radius: 0 0 10px 10px; background: #90c; color: #FFF; font-size: 24px; animation: message 3s; transform: translate(-50%, 0); } @keyframes message { 20%, 80% { transform: translate(-50%, 100%) } } .edition { background: #ddd; border-radius: 8px; padding: 8px 32px 8px 8px; margin-bottom: 16px; display: inline-block; } main { font-family: Verdana, Geneva, Tahoma, sans-serif; display: flex; flex-wrap: wrap; gap: 32px; row-gap: 4px; margin-right: 16px; } main h2 { border-bottom: 4px solid #09c; } main h2, main h3 { font-weight: 400; } body:not(.editionActivated) .editing { display: none !important; } .editionActivated #zoneChoix .etudiants>div { pointer-events: none; opacity: 0.5; } /****************/ .ajoutPartition, .ajoutGroupe { background: #0c9 !important; padding: 8px 16px !important; cursor: pointer; } .move, .modif, .suppr { color: #000; padding: 4px; cursor: pointer; } .move { cursor: grab; letter-spacing: -2px; margin-right: 4px; } .move:active { cursor: grabbing; } body.editionActivated .filtres>div>div>div>div { padding: 8px 16px; position: relative; } .editingText { background: #FFF; color: #000; border-radius: 4px; outline: 4px solid #FFF; } /* Suppression */ .confirm { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 100; background: rgba(0, 0, 0, 0.8); display: flex; justify-content: center; align-items: center; } .confirm span { color: #09c; } .confirm>div { background: #FFF; margin: 32px; padding: 32px 64px; border-radius: 8px; text-align: center; } .confirm>div>div { display: flex; gap: 32px; justify-content: center; } .confirm>div>div>div { padding: 16px 32px; border-radius: 8px; color: #FFF; cursor: pointer; } .confirm .ok { background: #0c9; } .confirm .nok { background: #c44; } /* Déplacements */ .moving { opacity: 0.8; pointer-events: none; ; } .grabbing>div:not([data-idgroupe="aucun"]):hover:before { content: ""; position: absolute; bottom: -4px; top: -4px; right: calc(100% + 1px); width: 2px; background: #c44; animation: insert 0.2s infinite alternate ease-in-out; } @keyframes insert { 0% { transform: translateY(-4px) } 100% { transform: translateY(4px) } } /*****************************/ /* Zone Partitions */ /*****************************/ #zonePartitions { width: 100%; } .filtres { display: table; } .filtres>div { background: #ddd; padding: 8px; border-radius: 8px; margin-bottom: 8px; } .filtres>div>div>div { display: flex; flex-wrap: wrap; gap: 4px; row-gap: 2px; margin: 8px 0; } .filtres>div>div>div>div { background: #09c; color: #FFF; border-radius: 4px; padding: 8px 32px; box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25); } body:not(.editionActivated) .filtres>div>div>div>div { cursor: pointer; } body:not(.editionActivated) .filtres>div>div>div>div:hover { box-shadow: 0 2px 2px rgba(0, 0, 0, 0.6); } body:not(.editionActivated) .filtres>div>div>div>div:active { box-shadow: 0 0 0 #000; transform: translateY(2px); } .filtres .unselect { background: rgba(0, 153, 204, 0.5); } /*****************************/ /* Zone Etudiants */ /*****************************/ #zoneChoix .etudiants>div { background: #FFF; border: 1px solid #aaa; border-radius: 4px; padding: 4px 8px; margin: 4px 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; } #zoneChoix .etudiants .nom { flex: 1; } #zoneChoix small { color: #444; font-style: italic; } #zoneChoix .etudiants .partition { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 4px; } #zoneChoix label { cursor: pointer; display: flex; align-items: center; } #zoneChoix span.aucun { font-size: 10px; background: #ddd; } #zoneChoix .etudiants .partition>div, #zoneChoix .etudiants .partition span { display: block; padding: 4px 8px; border: 1px solid #aaa; border-radius: 4px; } #zoneChoix .etudiants .partition input { display: none; } #zoneChoix .etudiants .partition input:checked:not([value=aucun])+span { background: #c09; border-color: #c09; color: #fff; } #zoneChoix .etudiants .partition>:nth-child(1) { background: #09c; border-color: #09c; color: #fff; } .hide { display: none !important; } .saved+span { position: relative; } .saving+span { outline: 2px solid orange; } .saved+span::before { content: '✔️'; position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; background: rgba(0, 0, 0, 0.5); border-radius: 4px; } /*****************************/ /* Zone Groupes */ /*****************************/ #zoneGroupes { flex: 1; } #zoneGroupes .groupes { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 16px; } #zoneGroupes .partition { background: #ddd; padding: 8px; border-radius: 8px; display: flex; flex-direction: column; gap: 8px; } h3 { margin: 0; } #zoneGroupes .groupe { background: #FFF; border-radius: 8px; } #zoneGroupes .groupe>div { padding: 8px 16px; } #zoneGroupes .groupe>div:nth-child(1) { color: #09c; border-bottom: 1px solid #aaa; } #zoneGroupes .etudiants { counter-reset: cpt; } #zoneGroupes .etudiants>*::before { counter-increment: cpt; content: counter(cpt) " - "; } #zoneGroupes [data-idgroupe=aucun] { background: #b5c2c3 !important; }