.button{display:flex;justify-content:center;align-items:center;gap:5px;padding:.5em 1em;border:1px solid var(--color);border-radius:var(--border-radius);background-color:var(--color);text-wrap:nowrap;color:var(--text-color);transition:border-color .3s ease,background-color .3s ease,color .3s ease,filter .3s ease}.button.squared{padding:.5em}.button:disabled{--color: var(--dark-gray) !important;cursor:not-allowed}.button:focus-visible{outline:var(--outline)}.button:not(:disabled):focus,.button:not(:disabled):hover{border-color:var(--hover-color);background-color:var(--hover-color);color:var(--text-hover-color)}.button.outline{background-color:transparent;color:var(--color)}.button>svg{width:1.2em;aspect-ratio:1}.homepage{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;background-color:var(--white)}.homepage>.container{display:flex;flex-direction:column;align-items:center;gap:30px;padding:2em 3em;max-width:50vw;border-radius:var(--border-radius);background-color:var(--white);box-shadow:var(--big-shadow)}.homepage>.container>.title{font-size:1.7em;font-weight:500;color:var(--blue)}.homepage>.container>.exercice-selection-wrapper{display:flex;flex-direction:column;gap:10px}.homepage>.container>.exercice-selection-wrapper>.text{text-align:center;color:var(--black)}.homepage>.container>.exercice-selection-wrapper>.exercices-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.homepage>.container>.add-exercice-form{display:flex;flex-direction:column;gap:10px;width:100%}.homepage>.container>.add-exercice-form>.row{display:flex;align-items:center;gap:10px}.homepage>.container>.add-exercice-form>.row>p{color:var(--blue)}.homepage>.container>.add-exercice-form>.row>input{margin-left:40px;align-self:stretch;flex-grow:1;padding:5px 10px;border:1px solid var(--light-gray);border-radius:var(--border-radius);color:var(--blue)}.app-footer{z-index:0;position:relative;display:flex;align-items:center;height:100%;padding:0 10px;background-color:var(--lightest-gray);color:var(--darkest-gray);box-shadow:var(--big-shadow)}.modal-background{z-index:100;position:fixed;top:0;left:0;display:flex;justify-content:center;align-items:center;width:100svw;height:100svh;background-color:#c8cace80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-background>.modal{display:flex;flex-direction:column;align-items:stretch;margin:10px;max-width:700px;max-height:95%;border-radius:5px;background-color:#fff;box-shadow:0 1px 5px #96979980;overflow:hidden}.modal-background>.modal>.modal-header{display:grid;grid-template-columns:1fr 25px;align-items:center;gap:5px;padding:15px;background:linear-gradient(180deg,#dedede4d,#fff);-webkit-user-select:none;user-select:none}.modal-background>.modal>.modal-header>.title{font-size:1.2rem;color:#01445e}.modal-background>.modal>.modal-header>.close-button{display:flex;justify-content:center;align-items:center;width:25px;height:25px;border:none;background:transparent;cursor:pointer}.modal-background>.modal>.modal-header>.close-button>svg{width:100%;height:100%;color:#01445e;transition:rotate .5s ease,color .5s ease}.modal-background>.modal>.modal-header>.close-button>svg:hover{rotate:180deg;color:#f15d5b}.modal-background>.modal>.modal-content{flex-grow:1;padding:15px;color:#01445e;overflow-wrap:break-word;overflow-y:auto}.modal-background>.modal>.modal-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:100px;padding:15px;-webkit-user-select:none;user-select:none}.modal-background>.modal>.modal-footer>.modal-button{padding:7px 21px;border-radius:5px;font-size:1rem;border:1px solid var(--bgColor);background-color:var(--bgColor);color:var(--color);transition:background-color .3s ease,color .3s ease}.modal-background>.modal>.modal-footer>.modal-button:hover{background-color:var(--color);color:var(--bgColor)}.console-container{z-index:100;position:fixed;bottom:0;right:0;transform-origin:bottom right;display:flex;flex-direction:column;justify-content:center;width:95svw;max-width:300px;border-top-left-radius:var(--border-radius);background-color:var(--white);overflow:hidden;box-shadow:var(--big-shadow);transition:max-width .75s ease 0s,opacity .5s ease}@starting-style{.console-container{opacity:0}}.console-container>.console-header{position:relative;display:flex;align-items:center;gap:20px;height:40px}.console-container>.console-header>.actions-container{display:grid;grid-template-columns:1fr 1fr;height:100%}.console-container>.console-header>.actions-container>.action-button{display:flex;justify-content:center;align-items:center;padding:7px;aspect-ratio:1;border:none;background-color:transparent;color:var(--blue);transition:background-color .3s ease,color .3s ease}.console-container>.console-header>.actions-container>.action-button:disabled{background-color:color-mix(in srgb,var(--light-gray) 30%,transparent);color:var(--dark-gray)}.console-container>.console-header>.actions-container>.action-button:not(:disabled):hover{background-color:color-mix(in srgb,var(--light-gray) 50%,transparent)}.console-container>.console-header>.actions-container>.action-button:last-child:not(:disabled):hover{background-color:var(--red);color:var(--white)}.console-container>.console-header>.actions-container>.action-button>svg{width:1.2em}.console-container>.console-header>.text{color:var(--blue)}.console-container>.console-header>.active-dot{position:absolute;top:50%;right:15px;transform:translateY(-50%);display:block;width:10px;aspect-ratio:1;border-radius:50%;background-color:var(--green)}.console-container>.console-header>.active-dot:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);width:100%;height:100%;border-radius:50%;background-color:var(--green);animation:active-dot 1.5s ease-in 0s infinite forwards}@keyframes active-dot{to{transform:translate(-50%,-50%) scale(3);opacity:0}}.console-container>.console{display:flex;flex-direction:column;max-height:0;aspect-ratio:16/9;overflow:hidden;transition:max-height .75s ease 0s}.console-container>.console>.console-content{flex-grow:1;display:block;padding:20px;background-color:#1b1b1b;color:var(--white);overflow-y:scroll;transition:border-color .3s ease}.console-container>.console>.console-content,.console-container>.console>.console-content *{font-family:monospace;line-height:1.5em}.console-container.expanded{max-width:800px}.console-container.expanded>.console{max-height:450px}.profile{display:flex;flex-direction:column;align-items:stretch;gap:15px;min-width:500px}.profile>.row{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px}.profile>.row>.value{color:var(--dark-gray)}.profile>.reset-button{align-self:flex-start;padding:5px 10px;border:none;border-radius:var(--border-radius);background-color:var(--red);color:var(--white);transition:filter .3s ease}.profile>.reset-button:hover{filter:brightness(1.1)}.files-table{position:relative;flex-grow:1;display:grid;grid-template-rows:auto 1fr;overflow:auto;width:500px}.files-table>table{position:relative;width:100%;border-spacing:0;text-align:center;padding:5px}.files-table>table>thead{z-index:1;position:sticky;top:0;left:0}.files-table>table th{border:1px solid var(--lightest-gray);background-color:var(--lightest-gray);padding:10px;text-wrap:nowrap;color:var(--blue);cursor:default}.files-table>table>tbody>tr{transition:background-color .3s ease;height:auto;width:auto}.files-table>table>tbody>tr>td{border:1px solid color-mix(in srgb,var(--lightest-gray) 50%,transparent);color:var(--darkest-gray);text-wrap:nowrap;height:100%;width:250px}.files-table>table>tbody>tr>td>.cache-button{height:32px;width:100%;background-color:transparent;border:none}.files-table>table>tbody>tr>td>.cache-button:hover{background-color:var(--blue);color:var(--white)}.files-table>table>tbody>tr>td>.cache-button:active{background-color:var(--cyan);color:var(--white)}.sidebar{z-index:5;position:relative;display:flex;flex-direction:column;height:100%;background-color:var(--black);box-shadow:var(--big-shadow)}.sidebar>.nav-footer{display:flex;flex-direction:column;margin-top:auto;border-top:1px solid var(--darkest-gray)}.sidebar>nav>ul{list-style-type:none}.sidebar>nav>ul>hr{margin:20px 0;border-color:var(--dark-gray)}.sidebar>nav>ul>li{display:flex}.sidebar>nav>ul>li>.nav-button{position:relative;display:flex;justify-content:center;align-items:center;padding:12px;aspect-ratio:1;border:none;background-color:var(--black);color:var(--white);transition:background-color .3s ease,color .3s ease}.sidebar>nav>ul>li>.nav-button>svg{width:100%;aspect-ratio:1}.sidebar>nav>ul>li>.nav-button:focus-visible{outline:1px solid var(--lightest-gray)}.sidebar>nav>ul>li>.nav-button.selected{background-color:color-mix(in srgb,var(--lightest-gray) 50%,transparent);color:var(--white);cursor:default}.sidebar>nav>ul>li>.nav-button>.nav-button-tooltip{position:absolute;top:50%;left:calc(100% + 5px);transform:translateY(-50%);padding:5px 10px;border-radius:var(--border-radius);background-color:var(--white);text-align:center;text-wrap:nowrap;color:var(--blue);opacity:0;pointer-events:none;box-shadow:var(--big-shadow);transition:opacity .3s ease}.sidebar>nav>ul>li>.nav-button:focus,.sidebar>nav>ul>li>.nav-button:hover{background-color:color-mix(in srgb,var(--lightest-gray) 30%,transparent)}.sidebar>nav>ul>li>.nav-button:focus>.nav-button-tooltip,.sidebar>nav>ul>li>.nav-button:hover>.nav-button-tooltip{opacity:1}.sidebar>nav>ul>li>.nav-button>.status-icon{position:absolute;top:5px;right:5px;display:block;width:7px;aspect-ratio:1;border-radius:50%;background-color:var(--color)}.sidebar>nav>ul>li>.nav-button>.status-icon:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-57%,-57%) scale(0);width:100%;aspect-ratio:1;border-radius:50%;background-color:var(--color);animation:sidenav-status-icon-bounce 1.5s linear 0s infinite}@keyframes sidenav-status-icon-bounce{75%{transform:translate(-57%,-57%) scale(2)}to{opacity:0}}.apps-view{display:grid;grid-template-columns:45px 1fr;grid-template-rows:calc(100svh - 40px) 40px;align-items:center;width:100%;height:100svh;overflow:hidden}.apps-view>aside{grid-area:1/1/3/2}.apps-view>main{grid-area:1/2/2/3}.apps-view>footer{grid-area:2/2/3/3}.app{width:100%;height:100%}.app>.Toastify{position:absolute}.error-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:30px}.error-container>.error-title{font-size:20pt;color:var(--white)}.error-container>.error-button{display:flex;justify-content:center;align-items:center;gap:5px;padding:10px 25px;border:2px solid var(--white);border-radius:var(--border-radius);background-color:var(--blue);font-size:1.2em;color:var(--white);transition:background-color .3s ease,color .3s ease}.error-container>.error-button:hover{background-color:var(--white);color:var(--blue)}.loader{position:fixed;top:45%;left:50%;translate:-50% -50%;display:block;text-align:center}.loader>p{color:var(--blue);font-size:13pt}.loader>img{max-width:80%;max-height:80%}
