@import url("https://fonts.googleapis.com/css2?family=Bitter:wght@300;400;500;600;700;900&display=swap");body,html{font-size:20px;height:fit-content;min-height:100dvh;background-color:var(--Black)}hr{border-color:var(--primary-500)}table{border-collapse:collapse;border-radius:4px;overflow:hidden;width:100%;margin-top:1rem;-webkit-text-size-adjust:100%;&>caption{text-align:left}}thead{background-color:var(--primary-500);padding:.5rem 1rem}thead th{text-align:left;padding:1rem .5rem;& span{width:fit-content}&>div{display:flex;gap:.375rem;align-items:center}&:first-of-type{padding:.5rem 1rem}& button.Icon{display:flex;flex-direction:column;padding:.125rem .25rem;color:var(--primary-700);cursor:pointer;border-radius:2px;transition:background-color .15s ease;&:hover{background-color:var(--primary-400);color:var(--primary-900)}&:active{background-color:var(--primary-600);color:var(--White)}&>div:first-of-type{margin-bottom:-.5rem;line-height:1}&>div:last-of-type{line-height:1}&.up{&>div:first-of-type{color:var(--primary-900)}&>div:last-of-type{color:var(--primary-600)}}&.down{&>div:last-of-type{color:var(--primary-900)}&>div:first-of-type{color:var(--primary-600)}}}}th{font-size:.75rem}tr:has(>td){&>td>button.Icon{visibility:hidden}&:hover>td>button.Icon{visibility:visible}}h3{font-size:1rem}td{text-align:left;vertical-align:top;padding:1rem .5rem;font-size:.75rem;box-sizing:border-box;white-space:nowrap;&:first-child{padding-left:1rem}&:last-child{padding-right:1rem}&>button.Icon{padding:.25rem 0 0;&>svg{height:1rem;width:1rem}&:hover{background-color:var(--Neutral-200)}}&:has(input){padding-bottom:.25rem}&>input{padding:.25rem .5rem;&:first-child{margin-bottom:.25rem}}}tfoot{background-color:var(--Neutral-300);height:4rem;&>tr>td>nav{color:var(--Black);display:grid;column-gap:.5rem;align-items:center;grid-template-columns:2rem auto 2rem;width:88vw;text-align:center;&>:first-child>div{transform:rotate(45deg)}&>:last-child>div{transform:rotate(-135deg)}}}nav{display:grid;color:var(--White);&.open{&>.SideMenu{display:grid;&>.Inner{transform:translateX(0)}}}}body{font-family:Bitter,serif;color:var(--Black);margin:0;display:flex;flex-direction:column}main{flex:1;background-color:var(--White);overflow-x:hidden}:root{--primary-50:#D5F7F8;--primary-100:#ACEDF1;--primary-200:#82E1EA;--primary-300:#58D2E3;--primary-400:#2FC2DC;--primary-500:#00ADDA;--primary-600:#0088AE;--primary-700:#006283;--primary-800:#003E57;--primary-900:#001E2C;--Error-50:#F7DEDA;--Error-100:#F0B7B4;--Error-200:#E88F92;--Error-300:#E06A76;--Error-400:#D9445D;--Error-500:#C7294E;--Error-600:#9F2146;--Error-700:#77193C;--Error-800:#50102A;--Error-900:#280817;--Success-50:#D7F8DD;--Success-100:#AFF1C0;--Success-200:#87EAA8;--Success-300:#5FE396;--Success-400:#38DC8A;--Success-500:#22C37D;--Success-600:#1B9C6F;--Success-700:#14755A;--Success-800:#0E4E40;--Success-900:#072723;--Warning-50:#FFF1CE;--Warning-100:#FFE09E;--Warning-200:#FFCE6D;--Warning-300:#FFBB3C;--Warning-400:#FFA20C;--Warning-500:#DA7F00;--Warning-600:#915100;--Warning-700:#6D3800;--Warning-800:#492300;--Warning-900:#241100;--White:#f4f4ff;--Neutral-100:#e8e8ef;--Neutral-200:#d8d8df;--Neutral-300:#c8c8cf;--Neutral-400:#a0a0ad;--Neutral-500:#53535f;--Neutral-600:#2d2d2f;--Black:#1D1E20}h2{font-weight:500;margin:0 0 .75rem}button:not(.NoStyle){user-select:none;border-radius:4px;font:inherit;font-size:.875rem;padding:.675rem 1.125rem;box-shadow:none;cursor:pointer;color:var(--Black);background-color:var(--primary-500);border:none;&:hover{background-color:var(--primary-400)}&:active{background-color:var(--primary-600)}&:disabled{color:var(--Neutral-500);background-color:var(--Neutral-200);cursor:not-allowed}&.Secondary{background-color:transparent;border:1px solid var(--primary-500);color:var(--primary-700);transition:all .3s;position:relative;overflow:hidden;z-index:1;&:after{width:100%;background-color:transparent;z-index:-2}&:after,&:before{content:"";position:absolute;bottom:0;left:0;height:100%}&:before{width:0;background-color:var(--primary-500);transition:all .3s;border-radius:4px;z-index:-1}&:hover{color:var(--White);&:before{width:100%}}&:active:before{background-color:var(--primary-600)}&:disabled{color:var(--Neutral-500);background-color:var(--Neutral-200);cursor:not-allowed;border-color:var(--Neutral-500);&:before{width:0}}}&.Icon{padding:.5rem;background-color:transparent}}table .Ghost{font-size:.75rem}a,button.Ghost{padding:0;cursor:pointer;border:none;width:fit-content;background-color:transparent;color:var(--primary-700);position:relative;font-size:inherit;overflow:hidden;text-decoration:underline;&:focus{outline:2px solid var(--primary-500);outline-offset:4px}&:hover{color:var(--primary-400);background-color:transparent}&:active{color:var(--primary-600)}&:disabled{text-decoration:none;background-color:transparent;color:var(--Neutral-400);cursor:not-allowed;&:before{transform:scale(0)}}}main>div.NavigationTabs>a:hover{text-decoration:none}input{border-radius:4px;cursor:text;border:1px solid var(--primary-500);background-color:var(--White);padding:.5rem .75rem;&:hover{border-color:var(--primary-600)}&:focus,&:hover{background-color:var(--Neutral-100)}&:focus{outline:3px solid var(--primary-500);border:none}&.Error{border:1px solid var(--Error-500);position:relative;background:url(/Icon.svg) no-repeat 100%;background-color:var(--Error-50);background-position:calc(100% - 10px);&:focus,&:hover{background-color:var(--Error-100)}&:focus{outline:3px solid var(--Error-500);border:none}}&:disabled{background-color:var(--Neutral-200);border-color:var(--Neutral-400);cursor:not-allowed}&:read-only:not(:disabled){background-color:var(--Neutral-100);border:none;border-bottom:1px solid var(--primary-500)}}.error-message{color:var(--Error-600);font-size:.75rem;margin-top:.25rem;color:var(--Black);display:block;font-weight:400}input[type=file]{padding:0;width:max-content;&::file-selector-button{border:none;padding:.5rem;background-color:var(--primary-500);margin-right:.25rem;&:hover{background-color:var(--primary-400)}&:active{background-color:var(--primary-600)}}}.switch{position:relative;display:inline-block;width:2rem;height:1rem;&:has(:focus){border:2px solid var(--primary-500)}& input{opacity:0;width:0;height:0;&:checked+.slider{background-color:var(--primary-500);&:before{-webkit-transform:translateX(.75rem);-ms-transform:translateX(.75rem);transform:translateX(.75rem)}}}}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--Neutral-400);-webkit-transition:.4s;transition:.4s;border-radius:1rem;&:before{position:absolute;content:"";height:.75rem;width:.75rem;left:.25rem;bottom:.125rem;border-radius:50%;background-color:var(--Neutral-100);-webkit-transition:.4s;transition:.4s}}select{border-radius:4px;border:1px solid var(--primary-500);padding:.5rem .75rem;appearance:none;background:url(/Chevron.svg) no-repeat 100%;background-size:.5rem;background-position:calc(100% - .3rem);&:hover{border-color:var(--primary-600)}&:focus,&:hover{background-color:var(--Neutral-100)}&:focus{outline:3px solid var(--primary-500);border:none}&:disabled{color:var(--Neutral-400);background-color:var(--Neutral-200);border-color:var(--Neutral-400);cursor:not-allowed}&.Error{color:var(--Error-700);border-color:var(--Error-500);background:url(/Icon.svg) no-repeat 100%;background-position:calc(100% - 10px);background-color:var(--Error-50);&:focus{outline-color:var(--Error-500)}}}textarea{border-radius:4px;border:1px solid var(--primary-500);background-color:var(--White);min-height:120px;resize:vertical;&:hover{background-color:var(--Neutral-100)}&:focus{outline:3px solid var(--primary-500);border:none}&:disabled{border-color:var(--Neutral-400);background-color:var(--Neutral-200);cursor:not-allowed}&.Error{border:1px solid var(--Error-500);position:relative;background:url(/Icon.svg) no-repeat 100%;background-color:var(--Error-50);background-position:calc(100% - 10px);&:focus,&:hover{background-color:var(--Error-100)}&:focus{outline:3px solid var(--Error-500);border:none}}}.Toast{padding-top:1rem;&>div:first-of-type{margin-left:2.75rem;padding-bottom:1rem;padding-right:1rem}background-size:30px;width:fit-content;max-width:calc(100vw - 2rem);border-radius:4px;overflow:hidden;float:inline-end;word-wrap:break-word;&.Info{background:url(/info.svg) no-repeat 0;background-color:var(--primary-50);background-position-x:.75rem;background-position-y:15px;color:var(--primary-500);&>button{padding:1rem;color:var(--primary-900)}&>.Progress{height:4px;background-color:var(--primary-300);&>.Bar{height:100%;background-color:var(--primary-600);width:0;animation:fillProgress 2s linear}}}&.Warning{background:url(/warning.svg) no-repeat 0;background-color:var(--Warning-50);background-position-x:.75rem;background-position-y:15px;color:var(--Warning-500);&>button{padding:1rem;color:var(--Warning-900)}&>.Progress{height:4px;background-color:var(--Warning-300);&>.Bar{height:100%;background-color:var(--Warning-600);width:0;animation:fillProgress 2s linear}}}&.Success{background:url(/circle_check.svg) no-repeat 0;background-color:var(--Success-50);background-position-x:.75rem;background-position-y:15px;color:var(--Success-500);&>button{padding:1rem;color:var(--Success-900)}&>.Progress{height:4px;background-color:var(--Success-300);&>.Bar{height:100%;background-color:var(--Success-600);width:0;animation:fillProgress 2s linear}}}&.Error{background:url(/circle_x.svg) no-repeat 0;background-color:var(--Error-50);background-position-x:.75rem;background-position-y:15px;color:var(--Error-500);&>button{padding:1rem;color:var(--Error-900)}&>.Progress{height:4px;background-color:var(--Error-300);&>.Bar{height:100%;background-color:var(--Error-600);width:0;animation:fillProgress 2s linear}}}}@keyframes fillProgress{0%{width:100%}to{width:0}}input[type=checkbox]+label,label:has(+div>input),label:has(+label>input),label:has(~input),label:has(~select),label[for=Company]{font-weight:500;font-size:1rem}.BgModal{z-index:3;height:100dvh;width:100vw;position:fixed;top:0;left:0;display:grid;box-sizing:border-box;backdrop-filter:blur(10px) brightness(.4);background:rgba(29,30,32,.6);&>.MainModal{justify-self:center;align-self:center;background:rgba(29,30,32,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(0,173,218,.3);box-shadow:0 8px 32px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.1);color:var(--White);padding:1.25rem 1.5rem 1.5rem;border-radius:24px;max-width:100vw;max-height:90dvh;overflow-y:hidden;box-sizing:border-box;&:has(.Confirm){background:rgba(244,244,255,.95);color:var(--Black);border:1px solid rgba(0,173,218,.4)}& .modal-footer,& .modal-header{padding-bottom:.5rem}& .modal-header{column-gap:.5rem}}}.glass-input{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--White);padding:.625rem .875rem;border-radius:.5rem;font-size:.95rem;transition:all .2s ease;outline:none}.glass-input:focus{background:rgba(255,255,255,.08);border-color:rgba(0,173,218,.5);box-shadow:0 0 0 3px rgba(0,173,218,.15)}.glass-input::placeholder{color:rgba(255,255,255,.4)}.glass-input option{padding:.5rem}.glass-input option,.glass-input select option{background:var(--White);color:var(--Black)}.glass-dropdown{background:var(--White);border:1px solid var(--Neutral-200);box-shadow:0 4px 12px rgba(0,0,0,.15);border-radius:.5rem}.glass-dropdown-item{background:transparent;border:none;border-bottom:1px solid var(--Neutral-100);transition:all .15s ease;cursor:pointer;color:var(--Black)}.glass-dropdown-item:hover{background:var(--Neutral-100)}.glass-table-row{background:rgba(255,255,255,.02);border-bottom:1px solid rgba(255,255,255,.05);transition:background .2s ease}.glass-table-row:hover{background:rgba(0,173,218,.08)}.glass-button-primary{background:linear-gradient(135deg,rgba(0,173,218,.8),rgba(0,173,218,.6));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,173,218,.4);box-shadow:0 4px 12px rgba(0,173,218,.2);color:var(--White);padding:.625rem 1.25rem;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem}.glass-button-primary:hover:not(:disabled){background:linear-gradient(135deg,rgba(0,173,218,.9),rgba(0,173,218,.7));box-shadow:0 6px 20px rgba(0,173,218,.3);transform:translateY(-1px)}.glass-button-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px rgba(0,173,218,.2)}.glass-button-primary:disabled{opacity:.5;cursor:not-allowed}.glass-button-ghost{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--White);padding:.5rem 1rem;border-radius:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem}.glass-button-ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(0,173,218,.4)}.glass-button-ghost:active{background:rgba(255,255,255,.1)}.glass-button-ghost.delete{color:var(--Error-400);border-color:rgba(199,41,78,.3)}.glass-button-ghost.delete:hover{background:rgba(199,41,78,.1);border-color:rgba(199,41,78,.5)}.glass-button-close{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--White);padding:.5rem;border-radius:.5rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.glass-button-close:hover{background:rgba(199,41,78,.2);border-color:rgba(199,41,78,.4);color:var(--Error-400)}.Footer{color:var(--White);display:grid;padding:2rem;row-gap:.75rem;font-size:.75rem;&>p{text-align:center;margin:0}}.GlobalLoading{position:fixed;top:0;left:0;width:100vw;height:100dvh;background-color:var(--Black);justify-content:center;z-index:9999}.GlobalLoading,.LoadingContent{display:flex;align-items:center}.LoadingContent{flex-direction:column;gap:1.5rem;color:var(--White)}.LoadingLogo{height:4rem;width:auto}.LoadingSpinner{width:3rem;height:3rem;border-top:4px solid var(--Neutral-400);border:4px solid var(--Neutral-400);border-top-color:var(--primary-500);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.LoadingContent>span{font-size:1.125rem;font-weight:500}.Navbar{background-color:var(--Black);display:grid;grid-template-columns:min-content min-content;padding:1rem 1.5rem;align-items:center;justify-content:space-between;height:10dvh;box-sizing:border-box;&>:first-child{height:100%;&>img{height:115%}}&>button{color:var(--White);padding:0;width:fit-content;transition:all 1s ease-in-out;height:fit-content;&.closed{transform:rotate(1turn)}&.open{transform:rotate(180deg)}}}.SideMenu{display:none;z-index:3;backdrop-filter:brightness(50%);grid-template-columns:auto 14rem;position:absolute;right:0;top:0;height:100%;width:100vw;&>.backdrop{width:100%}&>.Inner{transition:transform .5s ease-in-out;background-color:var(--Black);box-sizing:border-box;padding:1rem;width:14rem;font-size:1.2rem;font-weight:700;transform:translateX(100%);&>p{display:grid;grid-template-columns:2rem auto;align-items:center;column-gap:1rem;margin-bottom:8dvh}&>button{background-color:transparent;color:var(--White);&:hover{color:var(--primary-500)}display:grid;grid-template-columns:2rem auto;column-gap:.5rem;&>p{margin:0}padding:.5rem;margin-bottom:1rem;align-items:center;&:last-child{position:absolute;bottom:0}}}}.main-nav-toggle{all:unset;display:block;width:28px;height:1rem;cursor:pointer;position:relative;&:hover{background-color:transparent}&:focus{outline:2px solid var(--primary-500  );outline-offset:4px}&:after,&:before{content:"";position:absolute;top:0;height:0;border-bottom:4px solid var(--White);width:100%;left:0;transition:all .3s ease-out}&:after{top:auto;bottom:0}& i{display:block;text-indent:100%;overflow:hidden;white-space:nowrap;height:4px;background-color:var(--White);width:100%;position:absolute;top:8px;transition:all .1s ease-out}&:hover i,&:hover:after,&:hover:before{border-color:var(--primary-500);background-color:var(--primary-500)}&:active i,&:active:after,&:active:before{border-color:var(--primary-600);background-color:var(--primary-600)}&.active-menu{height:1.325rem;&:after{transform:rotate(-45deg);transform-origin:center;top:.625rem}&:before{transform:rotate(45deg);transform-origin:center;top:.625rem}& i{opacity:0}}}.Chrevron{height:.75rem;width:.75rem;border-bottom:4px solid var(--Neutral-500);border-left:4px solid var(--Neutral-500);transform:rotate(-45deg)}:disabled>.Chrevron{border-color:var(--Neutral-400)}main.Student{padding:1.25rem;&>div:not(.BgModal){display:grid;&:not(:has(.NotYet)){grid-template-columns:1fr 1fr;column-gap:.75rem;&>p{grid-area:1/1/2/3}&>button:first-of-type{justify-self:right}&>button:last-of-type{justify-self:left}}}&:has(.NotYet) button{justify-self:center}}.Student>section+button{width:100%}.Student>section div{margin-bottom:.75rem;display:grid;&>input{margin-top:.5rem}&>input[type=file]{width:100%;color:var(--Black)}&>select{margin-top:.5rem;color:var(--Black)}}.Student section>legend{padding-left:1rem;border-left:2px solid var(--primary-500);margin:1.25rem 0 .75rem;font-size:1.25rem;font-weight:600}.Student.Info{& div{border-bottom:1px solid var(--primary-500);padding:.75rem 1.25rem;grid-template-columns:2fr 3fr;column-gap:.5rem}& .Major2,& .Time{display:block;margin-top:.25rem}& .separator{display:none}}.Rubric{padding:1.25rem;display:grid;&>button{margin-top:1.25rem}&>h1{font-size:1.5rem;font-weight:500}&>.ChooseMajor{display:grid;gap:.5rem;margin-bottom:1rem;& select{color:var(--Black)}}& section>legend{padding-left:1rem;border-left:2px solid var(--primary-500);margin-top:1.25rem;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}& .Question{&>button{font:inherit;font-size:.875rem;box-sizing:border-box;box-shadow:none;cursor:pointer;outline:none;background-color:transparent;border:none;width:100%;text-align:left;display:grid;padding-bottom:.5rem;grid-template-columns:auto 2.5rem;border-bottom:2px solid var(--primary-500);&>svg{transform:rotate(90deg);color:var(--primary-600);padding:0 .5rem;border-radius:50%}&:has(+.Open)>svg{transform:rotate(0);transition:transform .5s;padding:.5rem 0}}& ol{background-color:var(--Neutral-200);margin-top:0;padding:1rem 1rem 1rem 2rem;&>li::marker{color:var(--primary-700)}}margin-bottom:.75rem}}main.Admin{padding:1.5rem;&>.AdminTop{display:grid;grid-template-columns:auto 2rem;column-gap:.25rem;&.Proyecto{grid-template-columns:1fr}&>button{padding:0;border-radius:50%}}& .MainModal{&>div{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;&>button{color:var(--White);padding:0;&:hover{color:var(--primary-500)}}&>h3{margin:0;font-weight:500}}&>div{max-width:100%;overflow:auto;&>.ModalTable{height:10.5rem;background-color:var(--Neutral-300);color:var(--Black);margin-top:.5rem;& tr:not(:has(>th)){background-color:var(--White)}&>tfoot{height:100%}&>tbody{height:min-content}}}h3:has(+.AdminModalBody){font-size:1.5rem;margin:.5rem 0}&>.AdminModalBody{max-height:80dvh;overflow-y:auto;display:grid;grid-template-columns:1fr;row-gap:.5rem;background-color:var(--White);border-radius:10px;color:var(--Black);padding:.75rem;&>div:not(:has(>input[type=checkbox])){display:grid;row-gap:.25rem}&>button{padding:.675rem 1.125rem;&:hover{color:var(--White)}}& br{display:none}}}}.MiniEvent .Extra{display:none}main.Dashboard{padding:min(.75rem,2vw)}a.Principal{text-decoration:none;color:var(--Black);&:hover{color:var(--Black)}}.Welcome{margin:0;font-size:1.5rem;&>p{color:var(--primary-600);font-size:.75rem;margin:0;font-weight:400}}section[aria-label=Progreso]{display:grid;grid-template-columns:1fr 1fr;column-gap:min(1rem,3vw);margin:1.25rem 0;&>article{padding:.75rem;border:1px solid var(--primary-500);border-radius:4px;&>h2{font-size:1.25rem}&>p{font-size:.75rem;margin:.5rem 0}&>a{font-size:.875rem}}}div[role=progressbar]{display:grid;box-sizing:border-box;width:60%;justify-items:center;position:relative;left:20%;&>span{border:8px solid var(--primary-500);font-size:.75rem;width:fit-content;box-sizing:border-box;margin-top:.5rem;padding:1.25rem .75rem 1.25rem 1rem;border-radius:50%;text-align:center;&.Digit-3{padding:1.25rem .75rem}&.Digit-1{padding:1.25rem 1rem 1.25rem 1.25rem}}}.EventPrincipal{border:1px solid var(--primary-500);padding:.5rem .75rem;border-radius:4px;&>span{color:var(--primary-700);font-size:.75rem}&>div:first-of-type{grid-template-areas:"b b" "a c";grid-template-columns:auto 6fr;grid-template-rows:auto auto;row-gap:.5rem;display:grid;align-items:center;column-gap:.5rem;margin-top:.25rem;&>h3{grid-area:b;margin:0;font-weight:700;display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}&>p:first-of-type{grid-area:a;background-color:var(--Warning-500);border-radius:4px;margin:0;color:var(--White);&.Tomorrow{padding:.25rem .375rem}&.Today{padding:.75rem 1.25rem}&:not(.Today):not(.Tomorrow){background-color:transparent;color:var(--Black);font-size:.75rem}}&>p:last-of-type{grid-area:c;margin:0;font-size:.75rem}}&>div:last-child{font-size:.75rem}&>p{background-color:var(--primary-500);color:var(--White);padding:.5rem;border-radius:4px;text-align:center;margin:.25rem 0;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.GridEvent{display:grid;grid-template-columns:repeat(3,50vw);grid-template-rows:1fr;column-gap:.5rem;row-gap:.375rem;&>*{background-color:var(--White)}&>:first-child:not(p){z-index:3;position:relative;left:-30vw;box-shadow:0 5px 15px rgba(0,0,0,.35);grid-column:2/3;grid-row:1/2}&>:last-child{position:relative;left:-60vw;grid-column:3/4}&>:last-child,&>:nth-child(2){margin:.5rem 0;z-index:2;grid-row:1/2}&>:nth-child(2){grid-column:1/2}&>:only-child{left:0;grid-area:1/1/2/3;margin-right:min(.75rem,7vw)}}main.Calendar{padding:1rem .75rem;& .MainModal:not(:has(.ModalTable)){border-radius:4px;padding:0;overflow:hidden;width:fit-content;&>div.Head{padding:.75rem 1rem;display:grid;grid-template-columns:18rem auto;justify-content:space-between;align-items:center;&>button{color:var(--White);padding:0;&:hover{color:var(--primary-500)}}&>h3{margin:0;font-weight:500;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:1.125rem}}&>div.Body{background-color:var(--White);color:var(--Black);font-size:.75rem;&>table{margin:0}padding:.75rem 1rem;&>div:last-child{display:grid;grid-template-columns:3.5rem 2.5rem auto;justify-content:center;column-gap:2rem;margin-top:.5rem;&>*{color:var(--primary-600);padding:0}&>button:hover{color:var(--primary-700)}&>button:active{color:var(--primary-800)}}&>div:first-child{column-gap:0;display:grid;row-gap:.5rem;grid-template-columns:4rem auto;margin-bottom:1rem;& a{width:fit-content}& p{margin:0;&:nth-child(2n-1){font-weight:500}}}}}& .MainModal:has(.ModalTable){&>div{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;&>button{color:var(--White);padding:0;&:hover{color:var(--primary-500)}}&>h3{margin:0;font-weight:500}}&>div{max-width:100%;overflow:auto;&>.ModalTable{height:10.5rem;background-color:var(--Neutral-300);color:var(--Black);margin-top:.5rem;& tr:not(:has(>th)){background-color:var(--White)}&>tfoot{height:100%}&>tbody{height:min-content}}}}}.Events{grid-template-columns:0 100%;display:grid}span:has(+.Circles){margin-right:.5rem}.Circles{width:100%;display:grid;grid-auto-flow:column;&>span{height:.75rem;width:.75rem;background-color:var(--White);border-radius:50%;border:1px solid var(--primary-600);display:inline-block;&.Full{background-color:var(--primary-400)}}}.Timeline{height:calc(100% - 11rem);width:4px;background-color:var(--primary-500);position:relative;left:calc(4.325rem - 2px);z-index:0;margin-top:4px;box-sizing:border-box}.Event{grid-template-columns:min(5.5rem,calc(4rem + 4vw)) auto;margin-bottom:.75rem;column-gap:min(.75rem,2vw);z-index:1;position:relative;display:grid;justify-items:center;&>button{border-radius:4px;border:1px solid var(--primary-500);text-align:left;padding:.75rem .5rem;background-color:var(--White);justify-self:left;&>h3{margin:.5rem 0;font-size:1rem;font-weight:600}&>p{margin:0;font-size:.625rem;&:nth-last-child(2){margin:.5rem 0;background-color:var(--primary-500);text-align:center;color:var(--White);padding:.5rem .75rem;border-radius:4px;&>span{margin:0 .75rem}}&:first-of-type{color:var(--primary-700)}&:last-child{display:grid;align-items:center;grid-template-columns:4.25rem 1.5rem auto;align-items:end}}&>div{grid-template-areas:"one one two" "one one three";display:grid;align-items:center;column-gap:.5rem;&>h3{margin:.5rem 0;font-size:.875rem;font-weight:600;grid-area:one;display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}&>p{margin:0;font-size:.625rem}&>p.Today{padding:.75rem 1.25rem;background-color:var(--Warning-500);color:var(--White);border-radius:4px}&+hr{margin:0}}}&>.Date{display:grid;grid-template-columns:3.25rem min(1.5rem,4vw);margin-top:.25rem;column-gap:.5rem;&>p{margin:0;font-size:.625rem;text-align:end}&>span{border-radius:50%;background-color:var(--White);display:block;justify-self:center;height:.75rem;width:.75rem;border:3px solid var(--primary-500);&.Today,&.Tomorrow{border-color:var(--Warning-500)}&.Today{background-color:var(--Warning-500);height:1.25rem;width:1.25rem}}}}main.Enroll,main.MyComs{width:100%;overflow:hidden;padding:1.25rem .5rem;box-sizing:border-box;height:max-content;&>input{width:100%;box-sizing:border-box;position:relative}& .MainModal{&>div{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;&>button{color:var(--White);padding:0;&:hover{color:var(--primary-500)}}&>h3{margin:0;font-weight:500}}&>div{max-width:100%;overflow:auto;&>.ModalTable{height:10.5rem;background-color:var(--Neutral-300);color:var(--Black);margin-top:.5rem;& tr:not(:has(>th)){background-color:var(--White)}&>tfoot{height:100%}&>tbody{height:min-content}}}}}tr.WithArea:not(:has(+tr.WithArea)):not(:last-child){border-bottom:2px solid var(--primary-500)}.ScrollableTable{width:100%;overflow-x:auto}.Login{background-color:var(--primary-800);background:linear-gradient(var(--primary-800) 0,var(--primary-900) 100%);display:grid;justify-content:center;align-content:center;&>div{display:grid;width:25rem;max-width:100vw;box-sizing:border-box;padding:2rem;border-radius:8px;align-content:center;gap:1.5rem;&>img{width:60%;justify-self:center}&>button.Secondary{color:var(--White);font-size:.75rem;&>img{margin-right:.5rem;vertical-align:middle}}&>span{color:var(--White);text-align:center;font-size:1.25rem}}}main.EvaluationPage{& legend{border-left:2px solid var(--primary-500);margin-bottom:1.25rem;margin-top:1.5rem;font-size:1.375rem;font-weight:600;border-radius:0 4px 4px 0;background-color:rgba(var(--primary-rgb),.05);padding:.75rem 1rem}&>section div{display:grid;row-gap:.75rem;margin-bottom:1rem}padding:1rem;margin-top:0;border-radius:.5rem;& label{font-size:.875rem;font-weight:500;&:has([value=Aprobada]:checked){color:var(--Success-600)}&:has([value=Reprobada]:checked){color:var(--Error-600)}}&:has(.Confirm){margin-top:20dvh;border-radius:0;&>div{display:grid;margin-top:1.5rem}&>section{font-size:.875rem;margin-bottom:1.5rem;&>div{margin-bottom:.5rem}}& section>div>span:first-child{font-weight:500}& section>div>span:last-child{font-weight:300;text-align:end;padding-right:.25rem}& legend{font-size:1rem;margin-bottom:.75rem}}}section:has(#data-title){margin-bottom:2rem;& span{display:none}}div.ContinueButtonDiv{margin-top:2rem;display:grid;grid-template-columns:auto;justify-items:center;row-gap:.25rem;&>button{padding-left:5rem;padding-right:5rem}}.EvaluationPage header{min-height:20dvh;width:100%;box-sizing:border-box;position:relative;display:grid;column-gap:1.5rem;padding:1rem 1.25rem;align-items:center;border-radius:20px;&:not(.Confirm){background-color:var(--Black);grid-template-columns:auto 3rem;color:var(--White)}&>h2{font-size:1.5rem;margin:0}&.Confirm{background-color:var(--White);grid-template-columns:auto 5rem;font-size:1.25rem;padding-left:1rem;font-weight:600;&~section:first-of-type>div{grid-template-columns:5rem auto}&~section:nth-of-type(2)>div{grid-template-columns:min(10rem,45vw) auto}&~section:last-of-type>div{grid-template-columns:min(15rem,70vw) auto;column-gap:1rem}}}.questionheader{display:grid;grid-template-columns:auto 7rem;column-gap:1rem;align-items:center;&>div{display:grid;grid-template-columns:4.5rem 2rem;justify-content:space-between;align-items:center;& span{font-size:.75rem;color:var(--Neutral-500);text-align:end}}&>h3{border-left:2px solid var(--primary-500);padding-left:.25rem}}.QuestionDescription{margin:.24rem 0 .24rem 1rem;color:var(--Neutral-500);font-size:.75rem}.container{width:100%}.success-overlay{position:fixed;top:0;left:0;width:100vw;height:100dvh;background-color:rgba(0,0,0,.5);backdrop-filter:blur(3px);z-index:3}.success-animation-container,.success-overlay{display:flex;justify-content:center;align-items:center}.success-animation-container{width:300px;height:300px}.svg-success{display:inline-block;vertical-align:top;height:100%;width:100%;opacity:1;overflow:visible;.success-tick{fill:none;stroke-width:1px;stroke:var(--White);stroke-dasharray:1rem,1rem;stroke-dashoffset:-.875rem;animation:success-tick .45s ease 1.4s forwards;opacity:0}.success-circle-outline{fill:none;stroke-width:1px;stroke:var(--primary-500);stroke-dasharray:72px,72px;stroke-dashoffset:72px;animation:success-circle-outline .3s ease-in-out .8s forwards;opacity:0}.success-circle-fill{fill:var(--primary-500);stroke:none;opacity:0;animation:success-circle-fill .3s ease-out 1.1s forwards}}.header-success-animation{display:flex;justify-content:center;align-items:center;width:80px;height:80px;.svg-success{width:80px;height:80px;overflow:visible;.success-circle-outline{stroke-dasharray:283;stroke-dashoffset:283;animation:success-circle-outline .6s cubic-bezier(.77,0,.175,1) forwards;opacity:1}.success-circle-fill{transform:scale(0);transform-origin:50% 50%;animation:success-circle-fill .3s ease-in-out .9s forwards;opacity:0}.success-tick{stroke-dasharray:60;stroke-dashoffset:50;animation:success-tick .3s ease-in-out 1.2s forwards;opacity:0}}}@keyframes success-circle-outline{0%{stroke-dashoffset:283;opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes success-circle-fill{0%{transform:scale(0);opacity:0}40%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:1}}@keyframes success-tick{0%{stroke-dashoffset:50;opacity:0}to{stroke-dashoffset:0;opacity:1}}.loader{width:70%;height:22px;border-radius:20px;color:var(--primary-500);border:2px solid;position:relative;&.Error{color:var(--Error-600)}&.Success{color:var(--Success-600);&:before{animation:suc 2s forwards;inset:0 50% 0 0}}&:not(.Success):before{animation:midway 2s forwards}}.loader:before{content:"";position:absolute;margin:2px;inset:0 100% 0 0;border-radius:inherit;background:currentColor}@keyframes midway{0%{inset:0 100% 0 0}to{inset:0 50% 0 0}}@keyframes suc{0%{inset:0 50% 0 0}to{inset:0}}@media screen and (min-width:30em){.Login{&>div{background-color:var(--White);border-radius:1px;padding:2rem;&>img{filter:invert(100%);width:265px;height:auto;margin-bottom:-.5rem}&>span{font-size:1rem}&>button.Secondary,&>span{color:var(--Black)}}}.Student>section{&+button{margin-top:1.5rem}& div{grid-template-columns:1fr 1fr;& input:nth-of-type(2),& select:nth-of-type(2){grid-column:2/3}}}.Student.Info{& .Time,& .separator,&.Major2{display:inline}& .separator{margin:0 .5rem 0 .25rem}}span:has(.Time){padding:0 .25rem}main.EvaluationPage{& p{font-size:.875rem;font-weight:500}& header{&>h2{font-size:1.75rem;margin:0}}& legend{padding-left:1rem;border-left:2px solid var(--primary-500);margin-bottom:1.25rem;font-size:1.375rem;font-weight:600;margin-top:2rem}& section:has(#data-title){& span{display:block}& legend{margin-top:0}}& section div{display:grid;grid-template-columns:1fr 1fr;margin-bottom:.75rem;align-content:center;&.ContinueButtonDiv{grid-template-columns:auto}}}.SideMenu>.Inner{font-size:1.5rem}nav{&>.Navbar{height:8dvh}&.open{&>.Navbar{padding-right:21rem}&>.SideMenu{grid-template-columns:1fr;justify-items:end;width:20rem;position:fixed;&>.backdrop{display:none}&>.Inner{width:20rem}}}}main.Admin,main.Enroll,main.MyComs{padding:1.5rem}.Timeline{height:calc(100% - 8rem);margin-top:6px}main.Admin .MainModal>.AdminModalBody{&>div:not(:has(>input[type=checkbox])){grid-template-columns:1fr 1fr;column-gap:.5rem}& br{display:block}}}@media screen and (min-width:55em){main.Dashboard{padding:2.5rem}.Welcome{font-size:2rem;font-weight:500;&>p{font-size:1rem;margin-bottom:.5rem}}.SideMenu>.Inner{font-size:1.25rem}nav{&>.Navbar{height:10dvh}}section[aria-label=Progreso]{grid-template-columns:min(38vw,40rem) min(38vw,40rem);&>article{border-radius:8px;padding:1.75rem;display:grid;grid-template-columns:1fr 2fr;grid-column-gap:0;grid-row-gap:0;&>div[role=progressbar]{grid-area:3/1/6/2;left:0;width:80%}&>h2{grid-area:1/1/2/3;font-size:1.75rem;font-weight:600;margin:0}&>hr{grid-area:2/1/3/3;margin:1rem 0}&>h3{grid-area:3/2/4/3;font-size:1.25rem;margin:0}&>p:first-of-type{grid-area:4/2/5/3;font-size:.875rem;margin:0}&>:last-child{grid-area:5/2/6/3;height:fit-content;width:fit-content;font-size:1rem;margin:0}}}.Timeline{left:calc(50vw - 2px);height:calc(100% - 9.25rem);margin-top:6px}.Event{&>section{grid-area:1/2/2/3}&:nth-of-type(2n-1){grid-template-columns:calc(50vw - 1.5rem + 4px) 6.5rem calc(50vw);&>section{&>p{grid-area:1/2/2/3;text-align:left}grid-template-columns:1.5rem 5rem}&>button{grid-area:1/1/2/2;justify-self:end}}&:nth-of-type(2n){grid-template-columns:5rem 1.5rem;grid-template-columns:calc(50vw - 5.25rem) 4.75rem calc(50vw);&>button{grid-area:1/3/2/4;justify-self:start}&>section{justify-self:left}& h3{max-width:44vw}}}.GridEvent{grid-column-gap:0;grid-row-gap:0;column-gap:.5rem;row-gap:.375rem;grid-template-columns:repeat(3,min(28vw,28rem));&>:first-child:not(p){z-index:3;position:relative;left:0;box-shadow:none;grid-column:1/2}&>:last-child{position:relative;left:0;margin:0;z-index:2}&>:nth-child(2){z-index:2;margin:0;grid-column:2/3}}main.Enroll,main.MyComs{padding:2.75rem}input#reasons~span,input#score~span{color:var(--Error-600);font-size:.75rem;grid-area:2/2/2/2}}.form-loader{width:120px;height:20px;-webkit-mask:linear-gradient(90deg,#000 70%,#0000 0) 0/20%;mask:linear-gradient(90deg,#000 70%,#0000 0) 0/20%;background:linear-gradient(var(--primary-500) 0 0) 0/0 no-repeat var(--Neutral-300);animation:form-loading 2s steps(6) infinite}@keyframes form-loading{to{background-size:120%}}.evaluation-radio-group{flex-direction:column;gap:1rem;display:flex}.evaluation-radio-option{border:2px solid var(--Neutral-300);background-color:var(--White);cursor:pointer;opacity:.7;border-radius:8px;padding:.5rem;transition:all .3s}.evaluation-radio-option:hover{border-color:var(--primary-400);background-color:var(--primary-50);opacity:1}.evaluation-radio-option.selected{border-color:var(--primary-500);background-color:var(--primary-100);opacity:1}.evaluation-radio-option.error{border-color:var(--Error-500);background-color:var(--Error-50);animation:shake .5s ease-in-out}.evaluation-radio-option{display:flex;align-items:flex-start;gap:.75rem;margin:0;font-size:.875rem}.evaluation-radio-option input[type=radio]{margin:.25rem 0 0;flex-shrink:0}.evaluation-radio-option .option-text{flex:1;line-height:1.4}.evaluation-question-container.unanswered{border:2px solid var(--Error-500);border-radius:8px;padding:1rem;background-color:var(--Error-50);margin-bottom:1rem}.evaluation-question-container.unanswered .questionheader h3{color:var(--Error-600)}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.validation-message{background-color:var(--Error-50);border:2px solid var(--Error-500);border-radius:8px;padding:1rem;margin:1.5rem 0;text-align:center;animation:fadeIn .3s ease-in-out}.validation-message p{margin:0;color:var(--Error-700);font-weight:500;font-size:.875rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInOut{0%{opacity:0;transform:scale(.8)}20%,80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.form-navigation{display:flex;justify-content:flex-start;margin-bottom:1.5rem;padding:0 1rem}.nav-button{background:none;border:2px solid var(--Neutral-300);color:var(--Neutral-700);padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.nav-button:hover{border-color:var(--primary-400);background-color:var(--primary-50);color:var(--primary-700);transform:translateX(-2px)}.nav-button:active{transform:translateX(-1px)}.nav-back{border-color:var(--Neutral-400);margin-top:1.5rem}.nav-back:hover{border-color:var(--Black);background-color:var(--Neutral-100);color:var(--Neutral-800)}.Modal-Comments span:last-child,.Modal-Reasons span:last-child{max-width:12rem;word-break:break-word;font-weight:400!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.modal-container{background:white;border-radius:12px;max-width:600px;width:100%;max-height:90dvh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);animation:modalSlideIn .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--Neutral-200);background-color:var(--Neutral-50)}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--Neutral-900)}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--Neutral-500);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.modal-close:hover{background-color:var(--Neutral-200);color:var(--Neutral-700)}.modal-content{max-height:60dvh;overflow-y:auto;flex:1;padding:0 1.5rem 1rem}.modal-content section{margin-bottom:2rem}.modal-content section:last-child{margin-bottom:0}.modal-content legend{font-weight:600;color:var(--Neutral-900);margin-bottom:1rem;font-size:1rem}.modal-content div{display:grid;grid-template-columns:1fr 2fr;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--Neutral-100)}.modal-content div:last-child{border-bottom:none}.modal-content span:first-child{font-weight:500;color:var(--Neutral-700)}.modal-content span:last-child{color:var(--Neutral-900)}.modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid var(--Neutral-200);background-color:var(--Neutral-50);justify-content:flex-end;flex-shrink:0}.modal-button-secondary{background:none;border:2px solid var(--Neutral-300);color:var(--Neutral-700);padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease}.modal-button-secondary:hover{border-color:var(--Neutral-400);background-color:var(--Neutral-100)}.modal-button-primary{background-color:var(--primary-500);border:2px solid var(--primary-500);color:white;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease}.modal-button-primary:hover{background-color:var(--primary-600);border-color:var(--primary-600)}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width:768px){.modal-container{margin:1rem;max-height:85dvh}.modal-content{max-height:calc(85dvh - 180px);flex:1;overflow-y:auto}.modal-content div{grid-template-columns:1fr;gap:.25rem}.modal-footer{flex-direction:column;flex-shrink:0;padding:1rem 1.5rem}}.header-datos-small{color:var(--Neutral-500);text-align:center;background-color:var(--Neutral-50);border-bottom:1px solid var(--Neutral-200);margin:0 -2rem;padding:.5rem 1rem;font-size:1rem;font-weight:400;line-height:1.4}.header-datos-small span{margin:0 .5rem}.auto-save-status{background-color:var(--primary-500);color:white;padding:.2rem .5rem;border-radius:12px;font-size:.65rem;font-weight:500;margin-left:1rem!important;animation:fadeInOut 1.5s ease-in-out}@media (max-width:768px){.header-datos-small{font-size:.6rem;padding:.4rem .5rem;margin:0 -1rem;white-space:normal;line-height:1.2}}@media (hover:hover){a.Principal{&>section>h2{position:relative;text-decoration:none;width:fit-content;&:before{content:"";position:absolute;left:0;bottom:0;height:1.5px;width:100%;background-color:currentColor;transform-origin:100% 50%;transform:scaleX(0);transition:transform .3s ease}}}a.Principal:hover{&>section>h2{&:before{transform-origin:0 50%;transform:scaleX(1)}}}a:not(.Principal),button.Ghost{text-decoration:none;:not(:disabled)&:before{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background-color:currentColor;transform-origin:100% 50%;transform:scaleX(0);transition:transform .3s ease}&:hover:before{transform-origin:0 50%;transform:scaleX(1)}}.Event>button:hover{background-color:var(--Neutral-100)}}.no-comments{font-style:italic;color:var(--Neutral-500);opacity:.7}.comments-field{display:grid!important;grid-template-columns:1fr 2fr!important;gap:1rem!important;padding:.5rem 0!important;border-bottom:1px solid var(--Neutral-100)!important}.comments-wrapper{display:block!important}.comments-container{display:flex!important;flex-direction:column!important;gap:.5rem!important}.comments-truncated{display:-webkit-box!important;-webkit-line-clamp:2!important;line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;text-overflow:ellipsis!important;width:100%!important;word-wrap:break-word!important;line-height:1.2!important;max-height:2.4em!important}.comments-expanded{white-space:pre-wrap!important;display:block!important}.view-more-btn{background:none;border:none;color:var(--primary-500);cursor:pointer;font-size:.8rem;text-decoration:underline;align-self:flex-start;padding:0;margin-top:.25rem}.view-more-btn:hover{color:var(--primary-600)}.hamburger{display:inline-block;height:1rem;&>button.Icon{color:var(--White);padding:0}}