.header{background-color:#4267ce;box-shadow:0 2px 8px #00000026;overflow:visible;position:sticky;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;z-index:100}.header.scrolled{padding:.2rem 0}.header.scrolled .header-link{height:3.5rem}.header.scrolled .header-logo{height:3rem}.header.scrolled .header-title{font-size:2.2rem}@media(max-width:767px){.header.scrolled .header-domain-suffix,.header.scrolled .header-title{display:none}.header.scrolled .header-ranking{opacity:1;transform:translateY(-50%) translateX(0);visibility:visible}}.header-link{align-items:center;color:#f7f7f7;display:flex;height:5rem;justify-content:center;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.header-link:hover{transform:none}.header-logo{height:4.3rem;padding-right:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.header-title{font-size:3rem;font-weight:600;letter-spacing:.5px}.header-domain-suffix{color:#f7f7f7;font-size:2rem;font-weight:300;letter-spacing:-.5px;margin-left:2px;opacity:.8;transform:translateY(2px);transition:none}.header-ranking{align-items:center;color:#f7f7f7;display:flex;font-size:.8rem;gap:.5rem;max-width:200px;position:absolute;right:1.5rem;text-align:right;top:50%;transform:translateY(-50%);transition:none}.header-ranking .ranking-text{word-wrap:break-word;display:block;font-weight:500;line-height:1.2;white-space:normal}.header-ranking .ranking-text:first-letter{text-transform:capitalize}.header-ranking .ranking-text .previous-user{display:block;font-size:.75rem;margin-top:.1rem;opacity:.85}.header-ranking .info-icon{align-items:center;border-radius:50%;cursor:help;display:flex;padding:.3rem;position:relative;transition:background-color .2s}.header-ranking .info-icon:hover{background-color:#ffffff1a}.header-ranking .info-icon:hover .info-tooltip{opacity:1;transform:translateY(0);visibility:visible}.header-ranking .info-icon .info-tooltip{background-color:#fff;border-radius:.5rem;box-shadow:0 2px 8px #00000026;color:#2c3e50;max-width:250px;opacity:0;padding:.8rem 1rem;position:absolute;right:0;top:100%;transform:translateY(-10px);transition:all .2s ease;visibility:hidden;width:max-content;z-index:1000}.header-ranking .info-icon .info-tooltip p{font-size:.85rem;line-height:1.4;margin:.3rem 0}.header-ranking .info-icon .info-tooltip p:first-child{margin-top:0}.header-ranking .info-icon .info-tooltip p:last-child{margin-bottom:0}@media(max-width:767px){.header-ranking{font-size:.75rem;max-width:150px;opacity:0;right:.8rem;transform:translateY(-50%) translateX(20px);transition:opacity .3s ease-in-out,visibility .3s ease-in-out,transform .3s ease-in-out;visibility:hidden}.header-ranking .info-tooltip{right:-10px}.header-ranking .ranking-text .previous-user{font-size:.7rem}}@media(min-width:1200px){.header-logo{height:4.5rem}.header-title{font-size:3.2rem}}@media(max-width:991px){.header-logo{height:3.8rem}.header-title{font-size:2.6rem}.header-domain-suffix{font-size:1.8rem}}@media(max-width:767px){.header{padding:.8rem 0}.header-link{height:auto}.header-logo{height:3.2rem}.header-title{font-size:2.2rem}.header-ranking{font-size:.75rem;max-width:150px;right:.8rem}.header-ranking .info-tooltip{right:-10px}.header-ranking .ranking-text .previous-user{font-size:.7rem}.header-domain-suffix{font-size:1.6rem}}@media(max-width:375px){.header-logo{height:2.8rem}.header-title{font-size:1.8rem}.header-domain-suffix{font-size:1.4rem}}.header__menu-button{align-items:center;background:none;border:none;border-radius:50%;color:#f7f7f7;cursor:pointer;display:flex;justify-content:center;left:1.5rem;padding:.8rem;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease}.header__menu-button:hover{background:#ffffff1a;transform:translateY(-50%) rotate(90deg)}.header__menu-button svg{height:28px;transition:transform .3s ease;width:28px}.header__menu-button:hover svg{transform:scale(1.1)}@media(max-width:767px){.header__menu-button{left:.8rem;padding:.6rem}.header__menu-button svg{height:24px;width:24px}}@media(max-width:375px){.header__menu-button{left:.5rem;padding:.5rem}.header__menu-button svg{height:22px;width:22px}}.install-popup{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.install-popup-content{background:#fff;border-radius:10px;box-shadow:0 4px 12px #00000026;max-width:90%;padding:20px;width:400px}.install-popup-content h3{color:#4267ce;margin-bottom:15px}.install-popup-content p{color:#2c3e50;line-height:1.5;margin-bottom:20px}.install-popup-content button{background:#597ee5;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:8px 16px;transition:background .3s ease}.install-popup-content button:hover{background:#4267ce}.hp-calendar{animation:slideInFromBottom .6s ease-out}.hp-calendar .calendar-header{align-items:center;background:#597ee508;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;justify-content:center;margin-bottom:.5rem;padding:.5rem}.hp-calendar .calendar-header .navigation-controls{align-items:center;display:flex;gap:.5rem;justify-content:center;min-width:200px;order:2}.hp-calendar .calendar-header .navigation-controls .today-btn{background:#597ee51a;border-radius:6px;color:#2c3e50;font-size:.9rem;padding:.5rem 1rem}.hp-calendar .calendar-header .navigation-controls .today-btn:hover{background:#597ee526}.hp-calendar .calendar-header .month-selector{background:#597ee51a;border-radius:6px;cursor:pointer;flex-basis:100%;order:1;position:relative;text-align:center}.hp-calendar .calendar-header .month-selector h2{align-items:center;border-radius:6px;display:flex;font-size:1.3rem;gap:4px;justify-content:center;margin:0 auto;overflow:hidden;padding:.5rem;text-overflow:ellipsis;transition:background-color .2s;white-space:nowrap;width:fit-content;width:130px}.hp-calendar .calendar-header .month-selector h2 svg{transition:transform .2s ease}.hp-calendar .calendar-header .month-selector h2:hover{background:#597ee50d}.hp-calendar .calendar-header .month-selector:hover h2 svg{transform:translateY(2px)}.hp-calendar .calendar-header .month-selector .month-picker{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:50%;margin-top:.5rem;max-height:300px;min-width:200px;opacity:1;overflow-y:auto;position:absolute;top:100%;transform:translateX(-50%);transition:opacity .2s,transform .2s;z-index:1000}.hp-calendar .calendar-header .month-selector .month-picker.hiding{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(-10px)}.hp-calendar .calendar-header .month-selector .month-picker div{cursor:pointer;padding:.75rem 1rem;transition:all .2s}.hp-calendar .calendar-header .month-selector .month-picker div:hover{background:#597ee50d}.hp-calendar .calendar-header .month-selector .month-picker div.current{background:#597ee51a;font-weight:500}.hp-calendar .calendar-header .month-selector .month-picker::-webkit-scrollbar{width:8px}.hp-calendar .calendar-header .month-selector .month-picker::-webkit-scrollbar-track{background:#597ee50d;border-radius:8px}.hp-calendar .calendar-header .month-selector .month-picker::-webkit-scrollbar-thumb{background:#597ee533;border-radius:8px}.hp-calendar .calendar-header .month-selector .month-picker::-webkit-scrollbar-thumb:hover{background:#597ee54d}.hp-calendar .calendar-header .user-selector{min-width:200px;order:3;position:relative}.hp-calendar .calendar-header .user-selector .search-input{background:#597ee50d;border:1px solid #597ee51a;border-radius:6px;padding:.5rem 30px .5rem .5rem;width:100%}.hp-calendar .calendar-header .user-selector .search-input:focus{background:#fff;border-color:#597ee5;outline:none}.hp-calendar .calendar-header .user-selector .users-list{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:4px;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.hp-calendar .calendar-header .user-selector .users-list .sliding-container{position:relative;transition:transform .3s ease-in-out}.hp-calendar .calendar-header .user-selector .users-list .user-item{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem}.hp-calendar .calendar-header .user-selector .users-list .user-item:hover{background:#597ee50d}.hp-calendar .calendar-header .user-selector .users-list .user-item .user-info .name{font-weight:500}.hp-calendar .calendar-header .user-selector .users-list .user-item .user-info .group{font-size:.8rem;opacity:.7}.hp-calendar .calendar-header .user-selector .users-list .user-item.selected{background:#597ee51a}.hp-calendar .calendar-header .user-selector .users-list .selector-tabs{border-bottom:1px solid #597ee51a;display:flex;gap:.5rem;padding:.5rem}.hp-calendar .calendar-header .user-selector .users-list .selector-tabs button{background:#597ee50d;border:none;border-radius:6px;color:#2c3e50;cursor:pointer;flex:1 1;font-size:.9rem;padding:.5rem;transition:all .2s ease}.hp-calendar .calendar-header .user-selector .users-list .selector-tabs button:hover{background:#597ee51a}.hp-calendar .calendar-header .user-selector .users-list .selector-tabs button.active{background:#597ee5;color:#fff}.hp-calendar .calendar-header .user-selector .users-list .list-content{max-height:300px;overflow-y:auto}.hp-calendar .calendar-header .user-selector .users-list .list-content .back-button{align-items:center;border-bottom:1px solid #597ee51a;color:#2c3e50;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem}.hp-calendar .calendar-header .user-selector .users-list .list-content .back-button:hover{background:#597ee50d}.hp-calendar .calendar-header .user-selector .users-list .list-content .back-button svg{height:18px;width:18px}.hp-calendar .calendar-header .user-selector .users-list .category-menu{display:flex;flex-direction:column;gap:.5rem;padding:.75rem}.hp-calendar .calendar-header .user-selector .users-list .category-menu .category-item{align-items:center;background:#597ee50d;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;transition:all .2s ease}.hp-calendar .calendar-header .user-selector .users-list .category-menu .category-item:hover{background:#597ee51a;transform:translateX(4px)}.hp-calendar .calendar-header .user-selector .users-list .category-menu .category-item .category-name{color:#2c3e50;font-weight:500}.hp-calendar .calendar-header .user-selector .users-list .category-menu .category-item .category-count{background:#597ee51a;border-radius:12px;color:#597ee5;font-size:.8rem;padding:.25rem .5rem}.hp-calendar .calendar-header .user-selector button{background:none;border:none;border-radius:50%;cursor:pointer;padding:.5rem;transition:all .3s ease}.hp-calendar .calendar-header .user-selector button:hover{background-color:#597ee51a;color:#597ee5;transform:scale(1.1)}.hp-calendar .calendar-header button{background:none;border:none;border-radius:50%;cursor:pointer;padding:.5rem;transition:all .3s ease}.hp-calendar .calendar-header button:hover{background-color:#597ee51a;transform:scale(1.1)}.hp-calendar .calendar-header h2{color:#2c3e50;font-size:1.5rem;text-transform:capitalize}.hp-calendar .calendar-grid{border:1px solid #2c3e501a;border-radius:8px;display:flex;overflow:hidden;position:relative}.hp-calendar .time-column{background:#597ee505;border-right:1px solid #2c3e501a;min-width:60px;z-index:2}.hp-calendar .time-column .corner-header{border-bottom:1px solid #2c3e501a;height:30px}.hp-calendar .time-column .time-slot{align-items:center;border-bottom:1px solid #2c3e501a;color:#2c3e50;display:flex;font-size:.85rem;font-weight:500;height:45px;justify-content:center;padding:0 .5rem}.hp-calendar .day-column{flex:1 1;min-width:0}.hp-calendar .day-column .day-header{align-items:center;background:#597ee50d;border-bottom:1px solid #2c3e501a;color:#2c3e50;display:flex;font-weight:500;height:30px;justify-content:center;position:sticky;text-transform:capitalize;top:0;z-index:2}.hp-calendar .day-column .time-cell{border-bottom:1px solid #2c3e501a;border-right:1px solid #2c3e501a;height:45px;padding:1px;position:relative}.hp-calendar .calendar-event{align-items:center;background-color:#597ee5;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-weight:500;gap:2px;justify-content:center;left:2px;margin:0;min-height:20px;overflow:hidden;padding:4px;position:absolute;right:2px;text-shadow:0 1px 1px #0006;transition:all .3s ease}.hp-calendar .calendar-event:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-1px);z-index:10}.hp-calendar .calendar-event .event-title{-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;display:-webkit-box;font-size:.9rem;font-weight:700;line-height:1.2;margin-bottom:2px;overflow:hidden;padding:0 4px;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 1px #0003;width:100%}.hp-calendar .calendar-event .event-type{font-size:.8rem;font-weight:500;margin:1px 0;max-width:95%;opacity:.9;padding:1px 0}.hp-calendar .calendar-event .event-professor{font-size:.75rem;font-style:italic;opacity:.85;padding:1px 4px;text-align:center;width:100%}.hp-calendar .calendar-event .event-location{background:#ffffff40;border-radius:4px;font-size:.6rem;font-weight:600;letter-spacing:.2px;margin:2px 0;max-width:95%;padding:2px 8px}.hp-calendar .calendar-event[style*="height: calc(100% - 2px)"] .event-professor,.hp-calendar .calendar-event[style*="height: calc(100% - 2px)"] .event-type{display:none}.hp-calendar .calendar-event[style*="height: calc(100% - 2px)"] .event-location,.hp-calendar .calendar-event[style*="height: calc(100% - 2px)"] .event-title{-webkit-line-clamp:1;font-size:.75rem;margin:0}.hp-calendar .calendar-event[style*="height: calc(200% - 2px)"] .event-professor{display:none}.hp-calendar .calendar-event.tne-event{background:linear-gradient(135deg,#49c16b,#37a055)}.hp-calendar .calendar-event.tne-event:hover{box-shadow:0 4px 12px #49c16b4d}.hp-calendar .calendar-event.cb-event{background:linear-gradient(135deg,#e65656,#df2a2a)}.hp-calendar .calendar-event.cb-event:hover{box-shadow:0 4px 12px #e656564d}.hp-calendar .calendar-event.shared{background:linear-gradient(135deg,#ff9800,#cc7a00);border:2px solid #ffffff4d;opacity:.6}.hp-calendar .calendar-event.shared:hover{box-shadow:0 4px 12px #ff98004d}.hp-calendar .calendar-event.shared.overlap-left,.hp-calendar .calendar-event.shared.overlap-right{border-left:2px solid #ffffff4d;border-right:2px solid #ffffff4d}.hp-calendar .calendar-event.overlap-left{left:2px;margin-right:1px;right:50%}.hp-calendar .calendar-event.overlap-right{left:50%;margin-left:1px;right:2px}.hp-calendar .calendar-event.overlap-left .event-title,.hp-calendar .calendar-event.overlap-right .event-title{-webkit-line-clamp:3;font-size:.8rem;line-height:1.1;margin:0}.hp-calendar .event-details{background:#597ee508;border:1px solid #597ee51a;border-radius:12px;display:flex;flex-direction:column;gap:1rem;padding:1rem}.hp-calendar .event-details .event-main-title{border-bottom:2px solid #597ee51a;color:#2c3e50;font-size:1.4rem;font-weight:600;padding-bottom:1rem;text-align:center}.hp-calendar .event-details .detail-row{align-items:center;background:#fff;border:1px solid #2c3e501a;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.hp-calendar .event-details .detail-row:hover{border-color:#597ee533;transform:translateX(4px)}.hp-calendar .event-details .detail-row .icon-container{align-items:center;background:#597ee51a;border-radius:8px;color:#597ee5;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.hp-calendar .event-details .detail-row .icon-container svg{height:20px;width:20px}.hp-calendar .event-details .detail-row .detail-content{flex:1 1}.hp-calendar .event-details .detail-row .detail-content .label{color:#2c3e5099;font-size:.85rem;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.hp-calendar .event-details .detail-row .detail-content .value{color:#2c3e50;font-size:1.1rem;font-weight:500}.hp-calendar .event-details .detail-row.type-detail{background:linear-gradient(135deg,#597ee51a,#597ee50d)}.hp-calendar .event-details .detail-row.type-detail .icon-container{background:#597ee533}.hp-calendar .event-details .detail-row.type-detail .value{color:#597ee5}.hp-calendar .event-details .detail-row.professor-detail .icon-container{background:#49c16b1a;color:#49c16b}.hp-calendar .event-details .detail-row.location-detail .icon-container{background:#ff98001a;color:#ff9800}.modal-overlay{align-items:center;animation:fadeIn .3s ease-out;background-color:#0006;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:9999}.modal-content{animation:slideDown .3s ease-out;background:linear-gradient(to bottom right,#fff,#f8f9fa);border:1px solid #fffc;border-radius:16px;box-shadow:0 15px 30px #00000026;margin:20px;max-height:85vh;max-width:500px;overflow-y:auto;padding:2rem;position:relative;width:90%;z-index:10000}@media(max-width:768px){.modal-content{margin:20px;max-height:calc(100vh - 40px);width:calc(100% - 40px)}}.modal-content h2{border-bottom:2px solid #2c3e501a;color:#2c3e50;font-size:1.5rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.modal-content button{background:linear-gradient(135deg,#597ee5,#214fd1);border:none;border-radius:8px;color:#fff;cursor:pointer;margin-top:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.modal-content button:hover{box-shadow:0 4px 12px #597ee533;transform:translateY(-2px)}.modal-content button:last-child{background:#2c3e501a;color:#2c3e50;margin-left:.5rem}.modal-content .evaluation-notice{background-color:#49c16b1a;border-left:4px solid #49c16b;border-radius:0 8px 8px 0;color:#37a055;margin-top:1rem;padding:.75rem}.modal-content .error-message{background-color:#e656561a;border-left:4px solid #e65656;border-radius:0 4px 4px 0;color:#e65656;margin-top:1rem;padding:.75rem}.modal-content .event-details{gap:.5rem;margin:.5rem 0}.modal-content .event-details .event-location-detail,.modal-content .event-details .event-professor-detail,.modal-content .event-details .event-type-detail{margin-bottom:0;padding:.35rem .5rem}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#597ee50d;border-radius:8px}.modal-content::-webkit-scrollbar-thumb{background:#597ee533;border-radius:8px}.modal-content::-webkit-scrollbar-thumb:hover{background:#597ee54d}.modal-content>.event-details{background:#597ee508;border:1px solid #597ee51a;border-radius:12px;display:flex;flex-direction:column;gap:1rem;margin:1rem 0;padding:1rem}.modal-content>.event-details .event-main-title{border-bottom:2px solid #597ee51a;color:#2c3e50;font-size:1.4rem;font-weight:600;padding-bottom:1rem;text-align:center}.modal-content>.event-details .detail-row{align-items:center;background:#fff;border:1px solid #2c3e501a;border-radius:8px;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.modal-content>.event-details .detail-row:hover{border-color:#597ee533;transform:translateX(4px)}.modal-content>.event-details .detail-row .icon-container{align-items:center;background:#597ee51a;border-radius:8px;color:#597ee5;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.modal-content>.event-details .detail-row .icon-container svg{height:20px;width:20px}.modal-content>.event-details .detail-row .detail-content{flex:1 1}.modal-content>.event-details .detail-row .detail-content .label{color:#2c3e5099;font-size:.85rem;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.modal-content>.event-details .detail-row .detail-content .value{color:#2c3e50;font-size:1.1rem;font-weight:500}.modal-content>.event-details .detail-row .icon-container{background:#597ee533}.modal-content>.event-details .detail-row .value{color:#597ee5}.modal-content>.event-details .detail-row.professor-detail .icon-container{background:#49c16b1a;color:#49c16b}.modal-content>.event-details .detail-row.location-detail .icon-container{background:#ff98001a;color:#ff9800}.modal-content.evaluation{background:linear-gradient(135deg,#fff,#f8f9fa);max-width:600px}.modal-content.evaluation .required-notice{background:#597ee50d;border-left:3px solid #597ee5;border-radius:8px;color:#2c3e50;font-size:.9rem;margin-bottom:1.5rem;padding:.75rem}.modal-content.evaluation .question{animation:slideInUp .3s ease-out;animation-fill-mode:both;background:#fff;border:1px solid #2c3e501a;border-radius:12px;box-shadow:0 2px 8px #0000000d;margin-bottom:1rem;padding:1rem}.modal-content.evaluation .question:first-child{animation-delay:.1s}.modal-content.evaluation .question:nth-child(2){animation-delay:.2s}.modal-content.evaluation .question:nth-child(3){animation-delay:.3s}.modal-content.evaluation .question:nth-child(4){animation-delay:.4s}.modal-content.evaluation .question:nth-child(5){animation-delay:.5s}.modal-content.evaluation .question:nth-child(6){animation-delay:.6s}.modal-content.evaluation .question:nth-child(7){animation-delay:.7s}.modal-content.evaluation .question:nth-child(8){animation-delay:.8s}.modal-content.evaluation .question:nth-child(9){animation-delay:.9s}.modal-content.evaluation .question:nth-child(10){animation-delay:1s}.modal-content.evaluation .question label{color:#2c3e50;display:block;font-size:1.1rem;font-weight:500;line-height:1.4;margin-bottom:1rem}.modal-content.evaluation .question label.required:after{color:#597ee5;content:" *";font-weight:700}.modal-content.evaluation .question textarea{border:2px solid #2c3e501a;border-radius:8px;font-size:1rem;line-height:1.5;min-height:120px;padding:1rem;resize:vertical;transition:all .3s ease;width:100%}.modal-content.evaluation .question textarea:focus{border-color:#597ee5;box-shadow:0 0 0 3px #597ee51a;outline:none}.modal-content.evaluation .question textarea::placeholder{color:#2c3e5080}.modal-content.evaluation .question .likert-scale{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.modal-content.evaluation .question .likert-scale label{align-items:center;background:#597ee50d;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:400;gap:.5rem;justify-content:center;margin:0;min-width:120px;padding:.75rem;text-align:center;transition:all .2s ease}.modal-content.evaluation .question .likert-scale label:hover{background:#597ee51a;transform:translateY(-2px)}.modal-content.evaluation .question .likert-scale label input{cursor:pointer;height:16px;margin:0;width:16px}.modal-content.evaluation .question .likert-scale label:has(input:checked){animation:selectFade .2s ease-out;background:#597ee5;box-shadow:0 2px 8px #597ee533;color:#fff;transform:scale(1.02)}@media(max-width:767px){.modal-content.evaluation .question .likert-scale.horizontal{flex-direction:column}.modal-content.evaluation .question .likert-scale.horizontal label{width:100%}}.modal-content.evaluation button{background:linear-gradient(135deg,#597ee5,#2d5cde);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:500;padding:1rem;transition:all .3s ease;width:100%}.modal-content.evaluation button:hover{box-shadow:0 4px 12px #597ee533;transform:translateY(-2px)}.modal-content.evaluation button:active{transform:translateY(0)}.modal-content.evaluation button.success{background:linear-gradient(135deg,#49c16b,#37a055);pointer-events:none}.modal-content.evaluation button#submitButton{scroll-margin-top:20px}.modal-content.evaluation .success-message{animation:fadeInScale .3s ease-out;background:#49c16b1a;border-radius:8px;color:#37a055;font-weight:500;margin-top:1rem;padding:1rem;text-align:center}.modal-content.evaluation .error-message{animation:shake .4s ease-in-out;background:#e656561a;border-radius:8px;color:#e65656;margin-top:1rem;padding:1rem}@media(max-width:767px){.hp-calendar .calendar-grid .time-column{min-width:50px}.hp-calendar .calendar-grid .time-column .time-slot{font-size:.75rem;padding:0 .25rem}.hp-calendar .calendar-grid .mobile-view{flex:1 1;overflow-x:hidden}.hp-calendar .calendar-grid .calendar-event{left:2px;padding:2px;right:2px}.hp-calendar .calendar-grid .calendar-event.overlap-left{left:2px;margin-right:1px;right:50%}.hp-calendar .calendar-grid .calendar-event.overlap-left .event-title{font-size:.75rem}.hp-calendar .calendar-grid .calendar-event.overlap-right{left:50%;margin-left:1px;right:2px}.hp-calendar .calendar-grid .calendar-event.overlap-right .event-title{font-size:.75rem}.hp-calendar .calendar-grid .calendar-event .event-title{-webkit-line-clamp:2;font-size:.8rem;margin:0}.hp-calendar .calendar-grid .calendar-event .event-location{font-size:.6rem;padding:1px 4px}.hp-calendar .calendar-header{flex-direction:column;gap:.5rem}.hp-calendar .calendar-header .navigation-controls{gap:0;justify-content:space-between;width:100%}.hp-calendar .calendar-header .month-selector{text-align:center;width:100%}.hp-calendar .calendar-header .month-selector h2{font-size:1.1rem}.hp-calendar .calendar-header .month-selector .month-picker{left:0;right:0}.hp-calendar .calendar-header h2{font-size:1.2rem}.modal-content{margin:.5rem;padding:1rem;width:95%}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes selectFade{0%{background:#597ee51a;transform:scale(1)}to{background:#597ee5;transform:scale(1.02)}}@keyframes slideLeft{0%{opacity:1;transform:translateX(0)}to{opacity:1;transform:translateX(-10px)}}@keyframes slideRight{0%{opacity:1;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.main-container{overflow-x:hidden;width:100%}.page-content{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:20px;width:100%}@media(max-width:768px){.page-content{padding:10px}}.calendars-wrapper,.mail-links-wrapper{display:flex;gap:20px;width:100%}@media(max-width:768px){.calendars-wrapper,.mail-links-wrapper{flex-direction:column}}.calendars-wrapper .div-hp-calendar{flex:2 1;min-width:0}.calendars-wrapper .div-cla-calendar{flex:1 1;min-width:0}.mail-links-wrapper .div-mail{flex:2 1;min-width:0}.mail-links-wrapper .div-links{flex:1 1;min-width:0}.div-bibli,.div-cla-calendar,.div-hp-calendar,.div-links,.div-mail,.div-notes{background:#fafafa}.app-navigation{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffe6;border-radius:30px;bottom:20px;box-shadow:0 8px 20px #00000014;left:50%;max-width:95%;overflow:hidden;padding:10px;position:fixed;transform:translateX(-50%);transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1000}.app-navigation:hover{box-shadow:0 12px 28px #00000026}.app-navigation .nav-items{display:flex;flex-wrap:nowrap;gap:5px;justify-content:center}.app-navigation .nav-item{align-items:center;background:#0000;border:none;border-radius:20px;color:#2c3e50;cursor:pointer;display:flex;font-weight:500;gap:8px;justify-content:center;min-width:44px;overflow:hidden;padding:12px;position:relative;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.app-navigation .nav-item svg{margin:auto;position:relative}@media(min-width:769px){.app-navigation .nav-item{padding:12px 16px}.app-navigation .nav-item .nav-label{margin-left:4px}}.app-navigation .nav-item:hover{background:#597ee51a}.app-navigation .nav-item.active{background:#597ee5;color:#fff}.app-navigation .nav-item.active .nav-indicator{animation:pulse 1.5s infinite;background:#fff;border-radius:50%;bottom:5px;height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}.app-navigation .nav-item:disabled{cursor:not-allowed;opacity:.5}.mobile-nav{height:100%;left:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:2000}.mobile-nav.open{visibility:visible}.mobile-nav.open .mobile-nav-container{transform:translateX(0)}.mobile-nav.open .mobile-nav-overlay{opacity:1}.mobile-nav .mobile-nav-overlay{background:#00000080;height:100%;left:0;opacity:0;position:absolute;top:0;transition:opacity .3s ease;width:100%}.mobile-nav .mobile-nav-container{background:#fff;display:flex;flex-direction:column;height:100%;left:0;max-width:300px;overflow-y:auto;position:absolute;top:0;transform:translateX(-100%);transition:transform .3s ease;width:80%;z-index:2001}.mobile-nav .mobile-nav-header{align-items:center;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;padding:20px}.mobile-nav .mobile-nav-header h2{color:#2c3e50;margin:0}.mobile-nav .mobile-nav-header .close-mobile-nav{background:none;border:none;color:#2c3e50;cursor:pointer;padding:5px}.mobile-nav .mobile-nav-header .close-mobile-nav:hover{color:#597ee5}.mobile-nav .mobile-nav-items{display:flex;flex-direction:column;gap:10px;padding:20px}.mobile-nav .mobile-nav-item{align-items:center;background:#0000;border:none;border-radius:10px;color:#2c3e50;display:flex;font-size:1.1em;gap:15px;padding:15px;text-align:left;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.mobile-nav .mobile-nav-item:hover{background:#597ee51a}.mobile-nav .mobile-nav-item.active{background:#597ee5;color:#fff}@media(max-width:768px){.nav-item .nav-label{display:none}.app-navigation{padding:6px}.app-navigation .nav-items{display:flex;gap:2px;margin:auto}.app-navigation .nav-item{align-items:center;border-radius:50%;display:flex;height:44px;justify-content:center;padding:12px;width:44px}.app-navigation .nav-item svg{margin:0}}.page-section{display:flex;flex-direction:column;overflow-x:hidden}@media(max-width:768px){.page-section{padding:0}}.section-content{height:100%;margin:0 auto;max-width:1400px;padding:30px 20px 20px;width:100%}@media(max-width:768px){.section-content{padding:13.3333333333px}}.calendar-tabs{display:flex;gap:10px;justify-content:center;margin:10px}.calendar-tabs .tab-button{background-color:#f0f0f0;border:none;border-radius:20px;box-shadow:0 2px 5px #0000001a;cursor:pointer;font-weight:600;padding:10px 20px;transition:all .3s ease}.calendar-tabs .tab-button.active{background-color:#597ee5;box-shadow:0 4px 8px #0003;color:#fff;transform:translateY(-2px)}.calendar-tabs .tab-button:hover:not(.active){background-color:#e3e3e3;transform:translateY(-1px)}.calendars-container{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;padding-bottom:10px;scroll-behavior:smooth;scroll-snap-type:x mandatory;width:100%}.calendars-container::-webkit-scrollbar{height:8px}.calendars-container::-webkit-scrollbar-track{background:#efece6;border-radius:4px}.calendars-container::-webkit-scrollbar-thumb{background:#597ee5;border-radius:4px}.calendars-container::-webkit-scrollbar-thumb:hover{background:#2d5cde}.calendar-wrapper{flex:0 0 100%;min-width:100%;padding:0 5px;scroll-snap-align:start}.cla-calendar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#ffffffb3;border-radius:12px;box-shadow:0 5px 15px #0000000d;height:500px;overflow-y:auto;padding:15px}.cla-calendar::-webkit-scrollbar{width:8px}.cla-calendar::-webkit-scrollbar-track{background:#efece6;border-radius:4px}.cla-calendar::-webkit-scrollbar-thumb{background:#597ee5;border-radius:4px}.cla-calendar::-webkit-scrollbar-thumb:hover{background:#2d5cde}.fablab-calendar{background-color:#ffffffb3}.events-list{display:flex;flex-direction:column;gap:15px}.event-item{background-color:#fff;border-left:3px solid #0000;border-radius:10px;box-shadow:0 3px 10px #00000014;padding:15px;transition:transform .2s ease,box-shadow .2s ease}.event-item:hover{box-shadow:0 5px 15px #0000001f;transform:translateY(-2px)}.event-item.ongoing{background-color:#597ee508;border:3px solid #597ee5;box-shadow:0 4px 15px #597ee526}.event-item.ongoing .event-title{color:#597ee5}.event-item.ongoing .event-time{color:#4267ce!important}.event-item .event-date{align-items:center;color:#2c3e50;display:flex;flex-wrap:wrap;font-weight:500;justify-content:space-between;margin-bottom:8px}@media(max-width:480px){.event-item .event-date{align-items:flex-start;flex-direction:column}}.event-item .event-date .event-time{color:#597ee5!important;font-weight:600}.event-item .event-date .event-time .event-recurring{font-size:.9em;font-style:italic;margin-left:3px;opacity:.8}.event-item.recurring{border-left:3px solid #597ee5}.event-item .event-title{color:#2c3e50;font-size:1.1em;font-weight:700;margin-bottom:8px}.event-item .event-description{color:#2c3e50b3;font-size:.9em;line-height:1.4;margin-top:8px;max-height:100px;overflow-y:auto;padding-right:5px;white-space:pre-line}.event-item .event-description::-webkit-scrollbar{width:4px}.event-item .event-description::-webkit-scrollbar-thumb{background:#597ee5;border-radius:4px}.torch-tot{color:#49c16b;font-weight:700}.torcho{color:#e65656;font-weight:700}.calendar-loading{align-items:center;display:flex;flex-direction:column;height:200px;justify-content:center}.calendar-loading .loading-spinner{animation:spin 1s ease-in-out infinite;border:5px solid #597ee51a;border-radius:50%;border-top-color:#597ee5;height:50px;margin-bottom:20px;width:50px}.calendar-loading p{color:#2c3e50;font-size:1.1em}.calendar-error{align-items:center;background-color:#e656560d;border:1px solid #e6565633;border-radius:8px;display:flex;flex-direction:column;justify-content:center;margin:20px 0;padding:30px}.calendar-error .error-icon{font-size:2.5em;margin-bottom:15px}.calendar-error h3{color:#e65656;font-weight:600;margin-bottom:10px}.calendar-error p{color:#2c3e50;text-align:center}.no-events{align-items:center;color:#2c3e50;display:flex;font-style:italic;justify-content:center;opacity:.7;padding:50px 0}.loading-more{color:#597ee5;font-size:.9em;font-style:italic;padding:10px;text-align:center}.liste-services{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));list-style-type:none;margin:0 auto;max-width:1200px;padding:0}.liste-services li{min-width:0;perspective:1000px;text-align:center;transition:all .3s ease;width:100%}.liste-services li:hover{transform:translateY(-3px)}.liste-services li:hover a{background:linear-gradient(165deg,#0000000d,#00000005);border:1px solid #0000001a}.liste-services li:hover img{filter:drop-shadow(0 4px 6px rgba(0,0,0,.15));transform:scale(1.08) translateY(-2px)}.liste-services a{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f7f7b3;border:1px solid #0000000d;border-radius:16px;box-shadow:0 4px 15px #00000008,0 1px 2px #0000000d;display:flex;flex-direction:column;justify-content:space-between;min-height:120px;padding:12px 8px;text-decoration:none;width:100%}.liste-services a,.liste-services img{min-width:0;transition:all .3s cubic-bezier(.165,.84,.44,1)}.liste-services img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:auto;margin-bottom:8px;max-width:70%;object-fit:contain}.liste-services span{background:none;border-radius:4px;color:#666;font-size:12px;font-weight:500;letter-spacing:.1px;line-height:1.2;padding:3px 6px;transition:all .3s ease}.liste-services a:hover span{color:#000}@media(max-width:992px){.liste-services{gap:12px;grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.liste-services{gap:10px;grid-template-columns:repeat(3,1fr)}.liste-services a{min-height:90px;padding:8px 6px}.liste-services img{max-width:45%}.liste-services span{font-size:11px;padding:3px 6px}}@media(max-width:480px){.liste-services{gap:8px;grid-template-columns:repeat(3,1fr)}.liste-services a{min-height:80px;padding:6px 4px}.liste-services img{max-width:42%}.liste-services span{font-size:10px;padding:2px 4px}}.warning-message{background-color:#fff3cd;border:1px solid #ffeeba;border-radius:8px;color:#856404;margin:20px;padding:15px;text-align:center}.warning-message .feedback-link{color:#597ee5;display:inline-block;margin-top:10px;text-decoration:underline}.warning-message .feedback-link:hover{color:#2d5cde}.warning-message .feedback-hint{display:block;font-size:.9em;font-style:italic;margin-top:10px}.grid{grid-gap:20px;display:grid;gap:20px;margin:0 auto;max-width:1800px;padding:20px}@media(min-width:768px){.grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1200px){.grid{grid-template-columns:repeat(3,1fr)}}.grid>.module{height:fit-content;margin-bottom:0}.module{background-color:#ffffff08;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 5px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.module:hover{box-shadow:0 5px 15px #00000026;transform:translateY(-2px)}.module-header{align-items:center;background-color:#2c3e5014;cursor:pointer;display:flex;justify-content:space-between;padding:15px;position:relative;transition:background-color .3s ease}.module-header.expanded{background-color:#597ee51f}.module-header:hover{background-color:#eaeaea}.module-header h2{color:#2c3e50;flex-grow:1;font-size:1.2em;margin:0}.module-header .header-right{align-items:center;display:flex}.module-header .header-right .moyenne{margin-right:10px}.module-header.expanded .header-right:after{transform:rotate(180deg)}.module-header.expanded:after{transform:translateY(-50%) rotate(180deg)}.module-content{background:linear-gradient(180deg,#ffffff0d,#0000);max-height:0;opacity:0;overflow:hidden;padding:0;transform:scaleY(0);transform-origin:top;transition:max-height .3s ease-out;transition:all .4s cubic-bezier(.4,0,.2,1)}.module-content.expanded{max-height:1000px;opacity:1;padding:15px 15px 0;transform:scaleY(1)}.module-content .epreuve{opacity:0;transform:translateY(20px);transition:all .3s ease-out}.module-content .epreuve:first-child{transition-delay:.05s}.module-content .epreuve:nth-child(2){transition-delay:.1s}.module-content .epreuve:nth-child(3){transition-delay:.15s}.module-content .epreuve:nth-child(4){transition-delay:.2s}.module-content .epreuve:nth-child(5){transition-delay:.25s}.module-content .epreuve:nth-child(6){transition-delay:.3s}.module-content .epreuve:nth-child(7){transition-delay:.35s}.module-content .epreuve:nth-child(8){transition-delay:.4s}.module-content .epreuve:nth-child(9){transition-delay:.45s}.module-content .epreuve:nth-child(10){transition-delay:.5s}.module-content.expanded .epreuve{opacity:1;transform:translateY(0)}.moyenne{border-radius:5px;color:#fff;font-size:.9em;font-weight:700;margin-left:8px;padding:5px 10px}.moyenne.vert{background-color:#49c16b}.moyenne.orange{background-color:#ff9800}.moyenne.rouge{background-color:#e65656}.epreuve{background-color:#ffffff08;border:1px solid #ffffff0d;border-radius:5px;margin-bottom:10px;padding:10px;transition:transform .2s}.epreuve:hover{transform:translateX(5px)}.epreuve h3{color:#597ee5;font-size:1.1em;margin-top:0}.epreuve p{font-size:.9em;margin:5px 0}.epreuve .note-existante{background-color:#597ee514;border-radius:4px;display:inline-block;padding:3px 8px}.note-input-container{align-items:center;display:flex;gap:12px;margin-bottom:0}.note-input-container .note-slider{background:#597ee51a;border-radius:3px;cursor:pointer;flex:1 1;flex:none;height:6px;width:150px}@media(min-width:768px){.note-input-container .note-slider{flex:1 1;width:auto}}.note-input-container .note-slider::-webkit-slider-thumb{appearance:none;background:#597ee5;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:18px;-webkit-transition:all .2s;transition:all .2s;width:18px}.note-input-container .note-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.note-input-container .note-slider::-webkit-slider-thumb:active{transform:scale(.95)}.note-input-container .note-slider::-moz-range-thumb{background:#597ee5;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:18px;-moz-transition:all .2s;transition:all .2s;width:18px}.note-input-container .note-slider::-moz-range-thumb:hover{transform:scale(1.1)}.note-input-container .note-slider::-moz-range-thumb:active{transform:scale(.95)}.note-input-container .note-number{background:#f7f7f780;border:1px solid #597ee533;border-radius:4px;font-size:.9em;min-width:60px;padding:6px;text-align:center;width:60px}.note-input-container .note-number:focus{background:#f7f7f7cc;border-color:#597ee5;outline:none}.login-form{background-color:#fff;border:1px solid #ddd;border-radius:5px;box-shadow:0 2px 5px #0000001a;display:flex;flex-direction:column;margin:20px auto;margin-top:20px!important;padding:20px}.login-form input{border:1px solid #ddd;border-radius:5px;font-size:1em;margin-bottom:15px;padding:10px;transition:border-color .3s ease}.login-form input:focus{border-color:#597ee5;outline:none}.login-form button{background-color:#597ee5;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1em;padding:10px 15px;transition:background-color .3s ease}.login-form button:hover{background-color:#2d5cde}.error{color:#e65656;font-weight:700;text-align:center}.loadingo-container{align-items:center;display:flex;flex-direction:column;font-family:Arial,sans-serif;height:20vh;justify-content:center}.loadingo-text{color:#333;font-size:1.2rem;margin-bottom:20px}.bomb-container{display:flex;gap:20px}.bomb-container .bomb{animation:dropBomb 1.2s cubic-bezier(.4,0,.2,1) infinite;font-size:2rem}.bomb-container .bomb:first-child{animation-delay:.2s}.bomb-container .bomb:nth-child(2){animation-delay:.4s}.bomb-container .bomb:nth-child(3){animation-delay:.6s}.explosion{animation:explode 1.2s cubic-bezier(.4,0,.2,1) infinite;font-size:3rem;opacity:0;transform-origin:center}@keyframes dropBomb{0%{opacity:0;transform:translateY(-50px) rotate(0deg)}50%{opacity:1;transform:translateY(0) rotate(180deg)}to{opacity:0;transform:translateY(20px) rotate(1turn)}}@keyframes explode{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.2)}to{opacity:0;transform:scale(0)}}.mail-item .mail-content{background-color:#fff;display:none;padding:10px}.mail-item.expanded .mail-content{display:block}.ue-section{background-color:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;box-shadow:0 4px 15px #0000001a;grid-column:1/-1;margin-bottom:25px;padding:0}@media(min-width:768px){.ue-section{padding:20px}}.ue-section .ue-title{align-items:center;background-color:#597ee514;border-bottom:1px solid #597ee51a;display:flex;justify-content:space-between;padding:15px 20px}.ue-section .ue-title .moyenne{font-size:1.2em}.ue-section .modules-grid{grid-gap:20px;background-color:#ffffff05;display:grid;gap:20px;padding:10px}@media(min-width:768px){.ue-section .modules-grid{grid-template-columns:repeat(2,1fr);padding:20px}}@media(min-width:1200px){.ue-section .modules-grid{grid-template-columns:repeat(3,1fr)}}.ue-section .coef{font-size:.8em;margin-right:10px;opacity:.7}.simulate-grade{background-color:#f7f7f714;border:1px solid #597ee51a;border-radius:12px;margin:20px 0;padding:10px}@media(min-width:768px){.simulate-grade{padding:20px}}.simulate-grade h4{align-items:center;color:#597ee5;display:flex;font-size:1.1em;margin-bottom:15px}.simulate-grade h4:before{content:"🧭";margin-right:8px}.simulate-grade h4:not(:first-child){margin-top:20px}.simulate-grade form{background-color:#2c3e500d;border:1px solid #2c3e501a;border-radius:8px;display:flex;flex-direction:column;gap:15px;padding:15px}.simulate-grade form .note-input-container{padding-top:20px;position:relative;width:100%}.simulate-grade form .note-input-container:before{color:#597ee5;content:attr(data-value);font-size:.9em;font-weight:700;left:50%;position:absolute;top:0;transform:translateX(-50%)}.simulate-grade form .form-bottom{align-items:center;display:flex;gap:10px}.simulate-grade form .form-bottom input[name=coefficient]{background:#f7f7f780;border:1px solid #597ee533;border-radius:6px;font-size:1em;min-width:80px;padding:8px;text-align:center;width:80px}.simulate-grade form .form-bottom input[name=coefficient]:focus{background:#f7f7f7cc;border-color:#597ee5;outline:none}.simulate-grade form .form-bottom button{background-color:#597ee5;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:1em;padding:8px 20px;transition:all .2s}.simulate-grade form .form-bottom button:hover{background-color:#436de2;transform:translateY(-1px)}.simulate-grade form .form-bottom button:active{transform:translateY(0)}.simulate-grade .simulated-grades{border-bottom:1px solid #597ee51a;margin-bottom:20px;padding-bottom:20px}.simulated-grades{margin-top:20px}.simulated-grades h4{color:#2c3e50;font-size:1em;margin-bottom:12px;opacity:.8}.simulated-grades .simulated-grade{background-color:#597ee50d;border:1px solid #597ee51a;border-radius:8px;margin-bottom:12px;padding:15px;transition:all .2s}.simulated-grades .simulated-grade:hover{background-color:#597ee514;transform:translateX(5px)}.simulated-grades .simulated-grade .note-input-container{margin-bottom:10px;padding-top:20px;position:relative}.simulated-grades .simulated-grade .note-input-container:before{color:#597ee5;content:attr(data-value);font-size:.9em;font-weight:700;left:50%;position:absolute;top:0;transform:translateX(-50%)}.simulated-grades .simulated-grade .grade-actions{align-items:center;border-top:1px solid #597ee51a;display:flex;justify-content:space-between;padding-top:8px}.simulated-grades .simulated-grade .grade-actions span{color:#2c3e50;font-size:.9em;opacity:.8}.simulated-grades .simulated-grade .grade-actions button{background-color:#e65656cc;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85em;padding:5px 12px;transition:all .2s}.simulated-grades .simulated-grade .grade-actions button:hover{background-color:#e65656;transform:translateY(-1px)}.grade-info{align-items:center;display:flex;justify-content:space-between;margin-top:8px;padding:4px 0}.grade-info .grade-value{align-items:center;background:#597ee50d;border:1px solid #0000;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:4px 12px;transition:all .2s ease}.grade-info .grade-value:hover{background:#597ee51a;transform:translateX(2px)}.grade-info .grade-value:hover .edit-icon{opacity:1}.grade-info .grade-value.editing{background:#597ee526;border-color:#597ee54d}.grade-info .grade-value .edit-icon{color:#597ee5;font-size:.8em;opacity:0;transition:opacity .2s}.grade-info .grade-value input{background:#0000;border:none;border-radius:4px;color:#2c3e50;font-size:1em;padding:4px 8px;text-align:center;width:60px}.grade-info .grade-value input:focus{outline:none}.grade-info .grade-value input::-webkit-inner-spin-button,.grade-info .grade-value input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.grade-info .grade-value .grade-display{align-items:center;display:flex;gap:8px}.grade-info .grade-value .grade-display .original-grade{color:#2c3e50;opacity:.6;text-decoration:line-through}.grade-info .grade-value .grade-display .arrow{color:#597ee5;font-size:.8em;opacity:.6}.grade-info .grade-value .grade-display .modified-grade{color:#597ee5;font-weight:700}.grade-info .grade-value .grade-display .reset-grade{background:none;border:none;border-radius:4px;color:#2c3e50;cursor:pointer;font-size:1.1em;opacity:0;padding:2px 6px;transition:all .2s ease}.grade-info .grade-value .grade-display .reset-grade:hover{background:#597ee51a;color:#597ee5}.grade-info .grade-value:hover .reset-grade{opacity:.8}.page-title{animation:slideDown .6s ease-out;color:#597ee5;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-align:center}.page-subtitle{animation:fadeIn .6s ease-out .2s both;color:#2c3e50;font-size:1.1rem;margin-bottom:2rem;opacity:.8;text-align:center}.login-container{align-items:center;animation:fadeIn .6s ease-out;display:flex;justify-content:center;min-height:400px}.login-form{animation:slideUp .6s ease-out;background:#ffffff08;border:1px solid #597ee51a;border-radius:15px;max-width:400px;padding:2rem;width:100%}.login-form .input-group{margin-bottom:1.5rem;position:relative}.login-form .input-group input{background:#0000;border:2px solid #597ee533;border-radius:8px;color:#2c3e50;font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.login-form .input-group input:focus{border-color:#597ee5;outline:none}.login-form .input-group input:focus+label{color:#597ee5;transform:translateY(-28px) scale(.8)}.login-form .input-group input:not(:placeholder-shown)+label{transform:translateY(-28px) scale(.8)}.login-form .input-group label{color:#2c3e5099;left:16px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transform-origin:left;transition:all .3s ease}.login-form .submit-button{background:#597ee5;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;overflow:hidden;padding:12px;position:relative;transition:transform .2s ease;width:100%}.login-form .submit-button:hover{transform:translateY(-2px)}.login-form .submit-button:active{transform:translateY(0)}.login-form .submit-button span{position:relative;z-index:1}.loading-container-notes{height:300px}.progress-container{margin-bottom:20px;max-width:500px;width:80%}.progress-bar{background-color:#2c3e501a;box-shadow:inset 0 1px 3px #0000001a;height:12px}.progress-bar,.progress-fill{border-radius:4px;position:relative}.progress-fill{animation:progress-animation 17s cubic-bezier(.34,1.56,.64,1) forwards;background:linear-gradient(90deg,#597ee5,#b1c3f3);box-shadow:0 0 10px #597ee566;height:100%;width:0}.loading-status{align-items:center;display:flex;margin-top:10px}.loading-status-dot{animation:pulse-dot 1.5s infinite;background-color:#597ee5;border-radius:50%;height:14px;margin-right:10px;width:14px}.loading-status-text{color:#2c3e50;font-size:.9rem;opacity:.8}.loading-text{font-size:1rem;font-weight:500;margin-top:1rem}@keyframes progress-animation{0%{width:0}10%{width:15%}15%{width:15%}25%{width:35%}35%{width:38%}40%{width:38%}50%{width:60%}55%{width:65%}65%{width:65%}75%{width:75%}85%{width:85%}92%{width:90%}to{width:100%}}@keyframes pulse-dot{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}to{opacity:1;transform:scale(1)}}.loading-container-notes{align-items:center;display:flex;flex-direction:column;height:200px;justify-content:center}.loading-animation{display:flex;gap:8px}.loading-animation .loading-bar{animation:loadingBars 1.2s ease-in-out infinite;background:#597ee5cc;border-radius:2px;height:24px;width:4px}.loading-animation .loading-bar:nth-child(2){animation-delay:.15s}.loading-animation .loading-bar:nth-child(3){animation-delay:.3s}.loading-text{animation:pulse 2s ease-in-out infinite;color:#2c3e50;font-size:1.1rem;margin-top:2rem;text-align:center}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingBars{0%,to{transform:scaleY(1)}50%{transform:scaleY(2)}}.mail-module{margin-bottom:20px}.zimbra-auth-container{background-color:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 4px 12px #0000001a;margin:0 auto;padding:20px}.zimbra-auth-container h2{color:#2c3e50;font-size:1.5em;margin-bottom:15px;text-align:center}.zimbra-auth-container form{display:flex;flex-direction:column;gap:5px}.zimbra-auth-container form input{background-color:#fff;border:1px solid #ddd;border-radius:6px;font-size:1em;padding:12px;transition:border-color .3s ease}.zimbra-auth-container form input:focus{border-color:#597ee5;box-shadow:0 0 0 #597ee533;outline:none}.zimbra-auth-container form button{background-color:#597ee5;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1em;margin-top:10px;padding:12px;transition:background-color .3s ease}.zimbra-auth-container form button:hover{background-color:#2d5cde}.zimbra-auth-container input[type=password]{pointer-events:auto!important;position:relative;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;z-index:10}.zimbra-auth-container p{color:#2c3e50;margin-top:15px;text-align:center}.zimbra-auth-container p.error{color:#e65656}.zimbra-auth-container p.success{color:#49c16b}.mail-container{display:flex;flex-direction:column;height:calc(100vh - 100px);position:relative}.mail-list{flex:1 1;list-style:none;margin:0;overflow-y:auto;padding:0 10px 0 0}.mail-list::-webkit-scrollbar{width:8px}.mail-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.mail-list::-webkit-scrollbar-thumb{background:#597ee5;border-radius:4px}.mail-list::-webkit-scrollbar-thumb:hover{background:#2d5cde}.mail-split-view{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 2fr;height:915px}@media(max-width:768px){.mail-split-view{grid-template-columns:1fr;height:auto}}.mail-content-view{border-left:1px solid #ddd;overflow-y:auto;padding:15px}@media(max-width:768px){.mail-content-view{display:none}}.mail-content-title{color:#2c3e50;font-size:1.2em;margin:0 0 12px}.mail-content-meta{border-top:1px solid #ddd;color:#507192;display:flex;font-size:.85em;justify-content:space-between;padding-top:12px}.mail-content-author{font-weight:500}.mail-content-body{color:#2c3e50;line-height:1.5;margin-bottom:15px;overflow-wrap:break-word;word-break:break-word}.mail-content-body img{height:auto;max-width:100%}.mail-content-body a{color:#597ee5;text-decoration:underline}.mail-content-action{background-color:#597ee5;border:none;border-radius:6px;color:#fff!important;cursor:pointer;display:inline-block;font-size:.9em;margin-top:12px;padding:8px 15px;text-decoration:none!important;transition:background-color .3s ease}.mail-content-action:hover{background-color:#2d5cde}.mail-content-empty{color:#507192;font-style:italic;padding:20px;text-align:center}.mail-modal-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.mail-modal{background:#fff;border-radius:10px;box-shadow:0 10px 30px #0003;max-height:90%;max-width:90%;overflow-y:auto;padding:20px;position:relative}.mail-modal-close{background:none;border:none;cursor:pointer;font-size:1.5em;position:absolute;right:10px;top:10px}.mail-modal-title{color:#2c3e50;font-size:1.2em;margin:0 0 12px}.mail-modal-meta{border-top:1px solid #ddd;color:#507192;display:flex;font-size:.85em;justify-content:space-between;padding-top:12px}.mail-modal-author{font-weight:500}.mail-modal-body{color:#2c3e50;line-height:1.5;margin-bottom:15px;overflow-wrap:break-word;word-break:break-word}.mail-modal-body img{height:auto;max-width:100%}.mail-modal-body a{color:#597ee5;text-decoration:underline}.mail-modal-action{background-color:#597ee5;border:none;border-radius:6px;color:#fff!important;cursor:pointer;display:inline-block;font-size:.9em;margin-top:12px;padding:8px 15px;text-decoration:none!important;transition:background-color .3s ease}.mail-modal-action:hover{background-color:#2d5cde}.mail-header{border-bottom:2px solid #2c3e50;margin-bottom:15px;max-width:800px;padding-bottom:15px}.mail-header h2{color:#2c3e50;font-size:1.8em;margin:0}.mail-item{background-color:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 2px 5px #0000001a;cursor:pointer;margin-bottom:15px;overflow:hidden;padding:20px;transition:transform .3s ease}.mail-item:hover{box-shadow:0 6px 15px #0000001f;transform:translateY(-2px)}.mail-item--expanded .mail-item__content{animation:fadeIn .3s ease-in-out}.mail-item__title{color:#2c3e50;font-size:1.2em;margin:0 0 12px}.mail-item__meta{border-top:1px solid #ddd;color:#507192;display:flex;font-size:.85em;justify-content:space-between;padding-top:12px}.mail-item__author{font-weight:500}.mail-item__content{border-top:1px solid #ddd;margin-top:15px;padding-top:15px}.mail-item__body{color:#2c3e50;line-height:1.5;margin-bottom:15px;overflow-wrap:break-word;word-break:break-word}.mail-item__body img{height:auto;max-width:100%}.mail-item__body a{color:#597ee5;text-decoration:underline}.mail-item__action{background-color:#597ee5;border:none;border-radius:6px;color:#fff!important;cursor:pointer;display:inline-block;font-size:.9em;margin-top:12px;padding:8px 15px;text-decoration:none!important;transition:background-color .3s ease}.mail-item__action:hover{background-color:#2d5cde}.mail-item__loading{align-items:center;display:flex;height:40px;justify-content:center;padding:10px}.mail-item__loading:after{animation:spin .6s linear infinite;border:2px solid #597ee5;border-radius:50%;border-top-color:#0000;content:"";height:20px;width:20px}.mail-item__error{color:#e65656;font-style:italic}.mail-loading,.mail-status{color:#2c3e50;padding:15px;text-align:center}.mail-loading{animation:pulse 1.5s ease-in-out infinite;font-style:italic}.mail-empty{color:#507192;font-style:italic;padding:20px;text-align:center}.mail-loader-trigger{color:#698bac;height:40px;padding:10px;text-align:center}.onboarding-overlay{-webkit-overflow-scrolling:touch;align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;inset:0;justify-content:center;overflow-y:auto;padding:1rem;position:fixed;z-index:1000}.onboarding-content{animation:slideUp .5s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;gap:2rem;margin:auto;max-height:90vh;max-width:500px;overflow-y:auto;padding:1.5rem;text-align:center;width:100%}.onboarding-content::-webkit-scrollbar{width:8px}.onboarding-content::-webkit-scrollbar-track{background:#efece6;border-radius:4px}.onboarding-content::-webkit-scrollbar-thumb{background:#597ee5;border-radius:4px}.onboarding-content::-webkit-scrollbar-thumb:hover{background:#2d5cde}@media(min-width:768px){.onboarding-content{padding:2.5rem}}@media(max-width:768px){.onboarding-content{margin:auto;padding:1.5rem;width:90%}}.onboarding-step .step-icon{animation:bounce 1s ease infinite;font-size:3rem;margin-bottom:1rem}.onboarding-step h1{color:#597ee5;font-size:1.5rem;margin-bottom:1rem}@media(min-width:768px){.onboarding-step h1{font-size:2rem}}.onboarding-step p{color:#2c3e50;font-size:1rem;line-height:1.6}@media(min-width:768px){.onboarding-step p{font-size:1.1rem}}.tutorial-container{border-radius:12px;box-shadow:0 8px 16px #0000001a;margin-bottom:1.5rem;overflow:hidden}.tutorial-container .tutorial-video{display:block;height:auto;max-height:50vh;object-fit:contain;width:100%}.tutorial-container .hyperplanning-link{background:#597ee51a;border-radius:8px;color:#597ee5;display:block;font-weight:500;margin-top:.5rem;padding:.75rem;text-align:center;text-decoration:none;transition:all .3s ease}.tutorial-container .hyperplanning-link:hover{background:#597ee533;transform:translateY(-2px)}.tutorial-container .hyperplanning-link:active{transform:translateY(0)}.hyperplanning-link,.next-button{align-items:center;display:flex;gap:8px;justify-content:center}.hyperplanning-link svg,.next-button svg{transition:transform .3s ease}.hyperplanning-link:hover svg,.next-button:hover svg{transform:translateX(4px)}.input-group{margin-bottom:1rem}.input-group input{border:2px solid #597ee533;border-radius:12px;font-size:1rem;padding:1rem;transition:all .3s ease;width:100%}.input-group input:focus{border-color:#597ee5;box-shadow:0 0 0 4px #597ee51a;outline:none}.input-group input::placeholder{color:#2c3e5080}.error-message{animation:shake .5s ease-in-out;background:#e656561a;border-radius:8px;color:#e65656;font-size:.9rem;margin-top:.5rem;padding:.75rem}.next-button,.submit-button{background:#597ee5;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.next-button:hover,.submit-button:hover{box-shadow:0 8px 20px #597ee533;transform:translateY(-2px)}.next-button:active,.submit-button:active{transform:translateY(0)}.steps-indicator{display:flex;gap:.5rem;justify-content:center}.steps-indicator .step-dot{background:#2c3e5033;border-radius:50%;height:8px;transition:all .3s ease;width:8px}.steps-indicator .step-dot.active{background:#597ee5;transform:scale(1.2)}.animate-fade-in{animation:fadeIn .6s ease-out}.animate-slide-up{animation:slideUp .6s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}.progress-bar{background:#2c3e501a;border-radius:3px;height:6px;margin:1rem 0 0;overflow:hidden;width:100%}.progress-bar .progress-fill{background:#597ee5;border-radius:3px;height:100%;position:relative;transition:width .4s ease-out}.progress-bar .progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.login-page{background:linear-gradient(135deg,#f5f7ff,#fff);min-height:100vh}.login-page .login-header{align-items:center;background:#fff;box-shadow:0 4px 12px #0000000d;display:flex;flex-direction:column;padding:4rem 2rem;text-align:center}.login-page .login-header .login-logo{margin-bottom:2rem;width:180px}.login-page .login-header h1{color:#597ee5;font-size:2.5rem;margin-bottom:1rem}.login-page .login-header .lead{color:#2c3e50;font-size:1.2rem;margin:0 auto 2rem;max-width:600px}.login-page .login-button{align-items:center;background:linear-gradient(135deg,#597ee5,#85a0ec);border:none;border-radius:30px;box-shadow:0 6px 16px #0000001f;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:600;gap:10px;justify-content:center;min-width:320px;padding:1.5rem 3rem;transition:all .4s cubic-bezier(.4,0,.2,1)}.login-page .login-button:hover{background:linear-gradient(135deg,#436de2,#9bb1ef);box-shadow:0 12px 24px #0003;transform:translateY(-4px)}.login-page .login-content{margin:0 auto;max-width:1200px;padding:4rem 2rem}.login-page .login-content .features{margin-bottom:4rem}.login-page .login-content .features h2{color:#597ee5;margin-bottom:2rem;text-align:center}.login-page .login-content .features .features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.login-page .login-content .features .feature-card{padding:2rem;text-align:center}.login-page .login-content .features .feature-card h3{color:#597ee5;margin-bottom:1rem}.login-page .login-content .features .feature-card p{color:#2c3e50}.login-page .login-content .benefits{margin:4rem 0}.login-page .login-content .benefits .benefits-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.login-page .login-content .benefits .benefit-card{background:#fff;padding:2rem;text-align:center}.login-page .login-content .latest-features{background:linear-gradient(135deg,#597ee50d,#597ee51a);margin:4rem -2rem;padding:4rem 2rem}.login-page .login-content .latest-features .latest-features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:900px}.login-page .login-content .latest-features .latest-feature-card{background:#fff;padding:2rem;text-align:center}.login-page .login-content .community{padding:4rem 0;text-align:center}.login-page .login-content .community .community-text{color:#2c3e50;margin:0 auto 2rem;max-width:600px}.login-page .login-content .community .community-links{display:flex;gap:1rem;justify-content:center}.login-page .login-content .community .community-links .github-link{align-items:center;background:#24292e;border-radius:10px;color:#fff;display:flex;gap:8px;padding:.8rem 1.5rem;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.login-page .login-content .community .community-links .github-link:hover{box-shadow:0 12px 28px #00000026;transform:translateY(-2px)}.login-page .login-footer{background:#fff;color:#2c3e50;padding:2rem;text-align:center}.login-page .login-footer .heart-icon{animation:heartbeat 1.5s ease infinite;color:#ff4d4d}.login-page .login-footer .footer-links{margin-top:1rem}.login-page .login-footer .footer-links a{color:#2c3e50;text-decoration:none;transition:color .3s ease}.login-page .login-footer .footer-links a:hover{color:#597ee5}.login-page .login-footer .footer-links .separator{color:#2c3e50;margin:0 10px}.benefit-icon,.feature-icon{color:#597ee5;height:32px;margin-bottom:1rem;width:32px}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media(max-width:768px){.login-page .login-header{padding:2rem 1rem}.login-page .login-header h1{font-size:1.8rem}.login-page .features-grid{grid-template-columns:1fr!important}.login-page .latest-features{margin:2rem -1rem;padding:2rem 1rem}.login-page .community{padding:2rem 0}}.slide-menu{height:100%;left:0;pointer-events:none;position:fixed;top:0;visibility:hidden;width:100%;z-index:1000}.slide-menu.open{pointer-events:auto;visibility:visible}.slide-menu.open .slide-menu__overlay{opacity:1}.slide-menu.open .slide-menu__content{transform:translateX(0)}.slide-menu__overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000004d;opacity:0;transition:opacity .3s ease;width:100%}.slide-menu__content,.slide-menu__overlay{height:100%;left:0;position:absolute;top:0}.slide-menu__content{background:linear-gradient(180deg,#f5f3ef,#efece6);border-right:1px solid #597ee51a;box-shadow:0 0 20px #0000001a;display:flex;flex-direction:column;max-width:85%;overflow-y:auto;padding:60px 20px 20px;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:320px;z-index:1001}.slide-menu__content:before{background:linear-gradient(90deg,#0000,#597ee51a,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.slide-menu__content h3{color:#597ee5;font-size:1rem;font-weight:600;letter-spacing:.5px;margin-bottom:1.5rem;position:relative;text-transform:uppercase}.slide-menu__content h3:after{background-color:#597ee580;bottom:-.5rem;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:30px}.slide-menu__content h3:hover:after{width:50px}.slide-menu__main{display:flex;flex-direction:column;gap:1rem;margin-top:30px;padding:0 1rem}.slide-menu__main button{align-items:center;background-color:#597ee51a;border:1px solid #597ee50d;border-radius:12px;color:#2c3e50;display:flex;font-size:.9rem;gap:1rem;letter-spacing:.5px;overflow:hidden;padding:1rem;position:relative;transition:all .3s ease}.slide-menu__main button:after{background:linear-gradient(135deg,#0000,#597ee50d);bottom:0;content:"";left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.slide-menu__main button:hover:after{opacity:1}.slide-menu__main button:hover{background-color:#597ee533;transform:translateX(10px)}.slide-menu__main button svg{transition:transform .3s ease}.slide-menu__main button:hover svg{transform:scale(1.1)}.slide-menu__section{animation:fadeIn .3s ease-out;background:#597ee505;border:1px solid #597ee50d;border-radius:12px;margin-top:2rem!important;margin:1rem;padding:1rem}.slide-menu__section form{position:relative;z-index:10}.slide-menu__section p{color:#2c3e50e6;font-size:.85rem;line-height:1.5}.slide-menu__section textarea{background-color:#597ee51a;border:1px solid #597ee533;border-radius:8px;color:#2c3e50;font-size:.9rem;margin-bottom:1rem;min-height:100px;padding:.8rem;position:relative;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;z-index:10}.slide-menu__section textarea::placeholder{color:#2c3e5099}.slide-menu__section textarea:hover{background-color:#597ee526;border-color:#597ee54d}.slide-menu__section textarea:focus{background-color:#597ee533;border-color:#597ee599;box-shadow:0 0 0 2px #597ee51a;outline:none;z-index:20}.slide-menu__section .social-links{display:flex;gap:1rem;margin-top:1rem}.slide-menu__section .social-links a{align-items:center;background-color:#597ee51a;border-radius:50%;color:#2c3e50;display:flex;justify-content:center;padding:.4rem;transition:all .3s ease}.slide-menu__section .social-links a:hover{background-color:#597ee533;color:#fff;transform:translateY(-2px)}.slide-menu__section a{color:#2c3e50;font-size:.85rem;position:relative;text-decoration:none;transition:all .3s ease}.slide-menu__section a:after{background-color:#2c3e50;bottom:-1px;content:"";height:1px;left:0;position:absolute;transform:scaleX(0);transition:transform .3s ease;width:100%}.slide-menu__section a:hover:after{transform:scaleX(1)}.slide-menu__section button{background-color:#597ee533;border:1px solid #597ee51a;border-radius:8px;color:#2c3e50;font-size:.9rem;font-weight:500;overflow:hidden;padding:.8rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.slide-menu__section button:after{background:linear-gradient(45deg,#0000,#597ee51a,#0000);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .6s ease}.slide-menu__section button:hover{background-color:#597ee54d;transform:translateY(-2px)}.slide-menu__section button:hover:after{transform:translateX(100%)}.slide-menu__section .status-message{animation:slideUp .3s ease-out;background-color:#597ee526;border-radius:8px;color:#2c3e50;font-size:.9rem;margin-top:1rem;padding:.8rem;text-align:center}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.slide-menu__back{align-items:center;background:none;border:none;border-radius:8px;color:#2c3e50;display:flex;gap:.5rem;left:10px;padding:.5rem;position:absolute;top:10px;transition:all .3s ease}.slide-menu__back:hover{background:#597ee51a}.slide-menu__close{align-items:center;background:none;border:none;border-radius:50%;color:#2c3e50;cursor:pointer;display:flex;justify-content:center;padding:.5rem;position:absolute;right:15px;top:15px;transition:all .3s ease;z-index:1002}.slide-menu__close:hover{background:#597ee51a;transform:rotate(90deg)}.legal-notice h4{color:#597ee5;font-size:.9rem;font-weight:600;margin:1.5rem 0 .5rem}.legal-notice section{margin-bottom:1.5rem}.legal-notice section:last-child{margin-bottom:0}.legal-notice p{color:#2c3e50;font-size:.85rem;line-height:1.5;margin:.5rem 0}.legal-notice ul{list-style:disc;margin-left:1.2rem;margin-top:.5rem}.legal-notice ul li{color:#2c3e50;font-size:.85rem;margin-bottom:.3rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bdi-container{height:100%}.bdi-container .game-section{align-items:center;display:flex;flex-direction:column;height:calc(100% - 80px);justify-content:center}.bdi-container .game-section canvas{border-radius:8px;box-shadow:0 2px 8px #0000001a;cursor:pointer;height:auto;max-height:90%;width:100%}.container{color:#2c3e50;font-family:Arial,sans-serif;margin:0 auto;text-align:center;width:100%}*{box-sizing:border-box;margin:0;padding:0}body{background:#f7f7f7;font-family:sans-serif}li{list-style-type:none}.module-title{border-bottom:2px solid #2c3e50;color:#2c3e50;font-size:1.5em;margin-bottom:5px;padding-bottom:5px;text-align:center}.div-bibli,.div-cla-calendar,.div-hp-calendar,.div-links,.div-mail,.div-notes,.login-page .login-content .benefits .benefit-card,.login-page .login-content .features .feature-card,.login-page .login-content .latest-features .latest-feature-card{border-radius:25px;box-shadow:0 8px 20px #00000014;padding:15px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.div-bibli:hover,.div-cla-calendar:hover,.div-hp-calendar:hover,.div-links:hover,.div-mail:hover,.div-notes:hover,.login-page .login-content .benefits .benefit-card:hover,.login-page .login-content .features .feature-card:hover,.login-page .login-content .latest-features .latest-feature-card:hover{background-color:#597ee50d}@media(max-width:768px){.div-bibli,.div-cla-calendar,.div-hp-calendar,.div-links,.div-mail,.div-notes,.login-page .login-content .benefits .benefit-card,.login-page .login-content .features .feature-card,.login-page .login-content .latest-features .latest-feature-card{padding:15px}}.cekilui-loading{color:#2c3e50;padding:40px 20px;text-align:center}.cekilui-message{border-radius:8px;font-weight:500;margin-bottom:20px;padding:15px;text-align:center}.cekilui-message--success{background-color:#49c16b1a;border:1px solid #49c16b4d;color:#49c16b}.cekilui-message--error{background-color:#e656561a;border:1px solid #e656564d;color:#e65656}.cekilui-content{margin:0 auto;max-width:600px;padding:20px}.cekilui-status{padding:40px 20px;text-align:center}.cekilui-status-icon{font-size:4rem;margin-bottom:20px}.cekilui-has-photo h3,.cekilui-no-photo h3{color:#2c3e50;font-size:1.5rem;margin-bottom:10px}.cekilui-has-photo p,.cekilui-no-photo p{color:#2c3e50;margin-bottom:30px;opacity:.8}.cekilui-actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.cekilui-btn{border:none;border-radius:25px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.cekilui-btn--primary{background-color:#597ee5;color:#fff}.cekilui-btn--primary:hover{background-color:#4267ce;box-shadow:0 12px 28px #00000026;transform:translateY(-2px)}.cekilui-btn--primary:disabled{background-color:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.cekilui-btn--secondary{background-color:#0000;border:2px solid #2c3e50;color:#2c3e50}.cekilui-btn--secondary:hover{background-color:#2c3e50;color:#fff}.cekilui-btn--secondary:disabled{cursor:not-allowed;opacity:.5}.cekilui-btn--cancel{background-color:#0000;border:1px solid #e65656;color:#e65656}.cekilui-btn--cancel:hover{background-color:#e65656;color:#fff}.cekilui-btn--cancel:disabled{cursor:not-allowed;opacity:.5}.photo-uploader{background:#fafafa;border-radius:25px;box-shadow:0 8px 20px #00000014;margin:0 auto;max-width:500px;padding:30px}.photo-uploader__header{margin-bottom:30px;text-align:center}.photo-uploader__header h3{color:#2c3e50;font-size:1.5rem;margin:0}.photo-uploader__error{background-color:#e656561a;border:1px solid #e656564d;border-radius:8px;color:#e65656;margin-bottom:20px;padding:12px;text-align:center}.photo-uploader__select{margin-bottom:30px}.photo-uploader__select-area{background-color:#fafafa;border:2px dashed #ddd;border-radius:12px;cursor:pointer;padding:60px 20px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.photo-uploader__select-area:hover{background-color:#597ee50d;border-color:#597ee5}.photo-uploader__select-icon{font-size:3rem;margin-bottom:15px}.photo-uploader__select-hint{color:#666;font-size:.9rem;margin-top:10px}.photo-uploader__editor{text-align:center}.photo-uploader__canvas{display:flex;justify-content:center;margin-bottom:30px}.photo-uploader__canvas canvas{border-radius:50%;box-shadow:0 8px 20px #00000014}.photo-uploader__controls{display:flex;flex-direction:column;gap:20px;margin-bottom:30px}.photo-uploader__control-group{align-items:center;display:flex;gap:15px;justify-content:space-between}.photo-uploader__control-group label{color:#2c3e50;font-weight:500;min-width:80px;text-align:left}.photo-uploader__slider{-webkit-appearance:none;background:#ddd;border-radius:3px;flex:1 1;height:6px;outline:none}.photo-uploader__slider::-webkit-slider-thumb{appearance:none;background:#597ee5;border-radius:50%;cursor:pointer;height:20px;width:20px}.photo-uploader__slider::-moz-range-thumb{background:#597ee5;border:none;border-radius:50%;cursor:pointer;height:20px;width:20px}.photo-uploader__rotation-buttons{display:flex;gap:10px}.photo-uploader__rotate-btn{background:#0000;border:2px solid #597ee5;border-radius:50%;color:#597ee5;cursor:pointer;font-size:1.2rem;height:40px;transition:all .4s cubic-bezier(.4,0,.2,1);width:40px}.photo-uploader__rotate-btn:hover{background:#597ee5;color:#fff}.photo-uploader__rotate-btn:disabled{cursor:not-allowed;opacity:.5}.photo-uploader__actions{display:flex;gap:15px;justify-content:center;margin-bottom:20px}.photo-uploader__footer{border-top:1px solid #eee;padding-top:20px;text-align:center}.photo-uploader__btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .4s cubic-bezier(.4,0,.2,1)}.photo-uploader__btn--primary{background-color:#597ee5;color:#fff}.photo-uploader__btn--primary:hover{background-color:#4267ce}.photo-uploader__btn--primary:disabled{background-color:#ccc;cursor:not-allowed}.photo-uploader__btn--secondary{background-color:#0000;border:2px solid #2c3e50;color:#2c3e50}.photo-uploader__btn--secondary:hover{background-color:#2c3e50;color:#fff}.photo-uploader__btn--secondary:disabled{cursor:not-allowed;opacity:.5}.photo-uploader__btn--cancel{background-color:#0000;border:1px solid #e65656;color:#e65656}.photo-uploader__btn--cancel:hover{background-color:#e65656;color:#fff}.photo-uploader__btn--cancel:disabled{cursor:not-allowed;opacity:.5}.photo-uploader__mode-selection{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:30px}@media(max-width:768px){.photo-uploader__mode-selection{gap:15px;grid-template-columns:1fr}}.photo-uploader__mode-option{background:#fff;border:2px solid #eee;border-radius:12px;cursor:pointer;padding:30px 20px;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1)}.photo-uploader__mode-option:hover{background:#597ee50d;border-color:#597ee5;box-shadow:0 12px 28px #00000026;transform:translateY(-2px)}.photo-uploader__mode-option h4{color:#2c3e50;font-size:1.2rem;margin:15px 0 10px}.photo-uploader__mode-option p{color:#2c3e50;font-size:.9rem;margin:0;opacity:.7}.photo-uploader__mode-icon{font-size:2.5rem;margin-bottom:10px}@media(max-width:768px){.cekilui-content{padding:10px}.photo-uploader{margin:0 10px;padding:20px}.photo-uploader__canvas canvas{height:250px!important;width:250px!important}.photo-uploader__controls{gap:15px}.photo-uploader__control-group{align-items:stretch;flex-direction:column;gap:8px}.photo-uploader__control-group label{min-width:auto;text-align:center}.photo-uploader__actions{flex-direction:column;gap:10px}.photo-uploader__btn{width:100%}.cekilui-btn{max-width:300px;width:100%}}.cekilui-game{background:#fafafa;border-radius:25px;box-shadow:0 8px 20px #00000014;margin:0 auto;max-width:600px;padding:30px}.cekilui-game__header{align-items:center;border-bottom:2px solid #eee;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.cekilui-game__score{color:#597ee5;font-size:1.2rem;font-weight:700}.cekilui-game__menu{text-align:center}.cekilui-game__title{margin-bottom:30px}.cekilui-game__title h2{color:#2c3e50;font-size:2rem;margin-bottom:10px}.cekilui-game__title p{color:#2c3e50;font-size:1.1rem;opacity:.8}.cekilui-game__rules{background:#597ee50d;border-radius:12px;margin-bottom:30px;padding:25px;text-align:left}.cekilui-game__rules h3{color:#2c3e50;font-size:1.3rem;margin-bottom:15px}.cekilui-game__rules ul{list-style:none;padding:0}.cekilui-game__rules ul li{color:#2c3e50;padding:8px 0 8px 25px;position:relative}.cekilui-game__rules ul li:before{content:"🎯";left:0;position:absolute}.cekilui-game__loading{color:#2c3e50;font-size:1.1rem;padding:40px 20px;text-align:center}.cekilui-game__error{background:#e656561a;border:1px solid #e656564d;border-radius:12px;padding:30px;text-align:center}.cekilui-game__error h3{color:#e65656;margin-bottom:15px}.cekilui-game__error p{color:#e65656;margin-bottom:25px}.cekilui-game__round{text-align:center}.cekilui-game__question{margin-bottom:25px}.cekilui-game__question h3{color:#2c3e50;font-size:1.8rem;margin:0}.cekilui-game__waiting{color:#597ee5;font-size:1rem;font-style:italic;margin-top:10px}.cekilui-game__photo{display:flex;justify-content:center;margin-bottom:30px}.cekilui-game__photo-img{background-color:#f8f9fa;border:4px solid #fff;border-radius:50%;box-shadow:0 8px 20px #00000014;display:block;height:300px;object-fit:cover;width:300px}.cekilui-game__photo-img:before{color:#6c757d;content:"📷";font-size:2rem;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1}.cekilui-game__photo-img:after{background:#0000;border-radius:50%;content:"";height:100%;left:0;position:absolute;top:0;width:100%}.cekilui-game__choices{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:30px}.cekilui-game__choice{align-items:center;background:#fff;border:2px solid #ddd;border-radius:12px;color:#2c3e50;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:8px;justify-content:center;padding:15px 20px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.cekilui-game__choice:hover:not(:disabled):not(.selected){background:#597ee50d;border-color:#597ee5;box-shadow:0 12px 28px #00000026;transform:translateY(-2px)}.cekilui-game__choice.selected{background:#597ee51a;border-color:#597ee5;color:#597ee5;font-weight:600;transform:scale(1.02)}.cekilui-game__choice.disabled{background:#f8f9fa;cursor:not-allowed;opacity:.4}.cekilui-game__choice:disabled{cursor:not-allowed}.cekilui-game__choice-loading{animation:spin 1s linear infinite;font-size:1.2rem}.cekilui-game__result{text-align:center}.cekilui-game__result-icon{font-size:4rem;margin-bottom:20px}.cekilui-game__result-icon.correct{animation:bounce .6s ease-in-out}.cekilui-game__result-icon.incorrect{animation:shake .6s ease-in-out}.cekilui-game__result-title{font-size:1.8rem;margin-bottom:25px}.cekilui-game__result-title.correct{color:#49c16b}.cekilui-game__result-title.incorrect{color:#e65656}.cekilui-game__answer{background:#597ee50d;border-radius:12px;margin:25px 0;padding:20px}.cekilui-game__answer p{color:#2c3e50;margin-bottom:10px;opacity:.8}.cekilui-game__answer h4{color:#597ee5;font-size:1.3rem;margin:0}.cekilui-game__actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.cekilui-game__btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .4s cubic-bezier(.4,0,.2,1)}.cekilui-game__btn--small{font-size:.9rem;padding:8px 16px}.cekilui-game__btn--primary{background-color:#597ee5;color:#fff}.cekilui-game__btn--primary:hover{background-color:#4267ce}.cekilui-game__btn--primary:disabled{background-color:#ccc;cursor:not-allowed}.cekilui-game__btn--secondary{background-color:#0000;border:2px solid #2c3e50;color:#2c3e50}.cekilui-game__btn--secondary:hover{background-color:#2c3e50;color:#fff}.cekilui-game__btn--secondary:disabled{cursor:not-allowed;opacity:.5}.cekilui-game__btn--cancel{background-color:#0000;border:1px solid #e65656;color:#e65656}.cekilui-game__btn--cancel:hover{background-color:#e65656;color:#fff}.cekilui-game__btn--cancel:disabled{cursor:not-allowed;opacity:.5}@keyframes bounce{0%,20%,60%,to{transform:translateY(0)}40%{transform:translateY(-20px)}80%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.promo-selector{background:#fafafa;border-radius:25px;box-shadow:0 8px 20px #00000014;margin:0 auto;max-width:600px;padding:30px}.promo-selector__loading{color:#2c3e50;font-size:1.1rem;padding:40px 20px;text-align:center}.promo-selector__error{background:#e656561a;border:1px solid #e656564d;border-radius:12px;padding:30px;text-align:center}.promo-selector__error h3{color:#e65656;margin-bottom:15px}.promo-selector__error p{color:#e65656;margin-bottom:25px}.promo-selector__header{margin-bottom:30px;text-align:center}.promo-selector__header h3{color:#2c3e50;font-size:1.5rem;margin-bottom:10px}.promo-selector__header p{color:#2c3e50;opacity:.8}.promo-selector__controls{display:flex;gap:15px;justify-content:center;margin-bottom:25px}.promo-selector__control-btn{background:#0000;border:1px solid #597ee5;border-radius:8px;color:#597ee5;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .4s cubic-bezier(.4,0,.2,1)}.promo-selector__control-btn:hover:not(:disabled){background:#597ee5;color:#fff}.promo-selector__control-btn:disabled{cursor:not-allowed;opacity:.5}.promo-selector__list{border:1px solid #eee;border-radius:12px;margin-bottom:20px;max-height:300px;overflow-y:auto}.promo-selector__item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;padding:15px;transition:all .4s cubic-bezier(.4,0,.2,1)}.promo-selector__item:last-child{border-bottom:none}.promo-selector__item:hover{background:#597ee50d}.promo-selector__item.selected{background:#597ee51a;border-left:4px solid #597ee5}.promo-selector__checkbox{margin-right:15px}.promo-selector__checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.promo-selector__info{align-items:center;display:flex;flex:1 1;justify-content:space-between}.promo-selector__name{color:#2c3e50;font-size:1rem;font-weight:500}.promo-selector__count{color:#597ee5;font-size:.9rem;font-weight:500}.promo-selector__summary{background:#597ee50d;border-radius:8px;margin-bottom:25px;padding:15px;text-align:center}.promo-selector__summary p{color:#2c3e50;margin:0}.promo-selector__summary p:first-child{font-size:1.1rem;margin-bottom:5px}.promo-selector__warning{color:#ff9800!important;font-size:.9rem!important}.promo-selector__actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.cekilui-game__promo{color:#597ee5;font-size:.9rem;font-style:italic;margin-top:5px}@media(max-width:768px){.cekilui-game{margin:0 10px;padding:20px}.cekilui-game__photo-img{height:250px;width:250px}.cekilui-game__choices{gap:12px;grid-template-columns:1fr}.cekilui-game__choice{padding:12px 16px}.cekilui-game__actions{flex-direction:column;gap:10px}.cekilui-game__btn{width:100%}.cekilui-game__header{flex-direction:column;gap:15px;text-align:center}.facebook-photo-importer{background:#fafafa;border-radius:25px;box-shadow:0 8px 20px #00000014;margin:0 auto;max-width:500px;padding:30px}.facebook-photo-importer__header{margin-bottom:30px;text-align:center}.facebook-photo-importer__header h3{color:#2c3e50;font-size:1.5rem;margin-bottom:10px}.facebook-photo-importer__header p{color:#2c3e50;margin:0;opacity:.8}.facebook-photo-importer__loading{color:#2c3e50;font-size:1.1rem;padding:40px 20px;text-align:center}.facebook-photo-importer__error{background-color:#e656561a;border:1px solid #e656564d;border-radius:8px;color:#e65656;margin-bottom:20px;padding:12px;text-align:center}.facebook-photo-importer__https-info{background-color:#ff98001a;border:1px solid #ff98004d;border-radius:8px;margin-top:15px;padding:15px;text-align:left}.facebook-photo-importer__https-info p{color:#ff9800;font-weight:500;margin:0 0 10px}.facebook-photo-importer__https-info ul{color:#ff9800;margin:0;padding-left:20px}.facebook-photo-importer__https-info ul li{font-size:.9rem;margin:5px 0}.facebook-photo-importer__https-info code{background:#ff980033;border-radius:4px;font-family:Courier New,monospace;font-size:.85rem;padding:2px 6px}.facebook-photo-importer__content{margin-bottom:30px}.facebook-photo-importer__connected{text-align:center}.facebook-photo-importer__status{align-items:center;background:#49c16b1a;border:1px solid #49c16b4d;border-radius:8px;display:flex;gap:10px;justify-content:center;margin-bottom:25px;padding:15px}.facebook-photo-importer__status p{color:#49c16b;font-weight:500;margin:0}.facebook-photo-importer__status-icon{font-size:1.2rem}.facebook-photo-importer__login{text-align:center}.facebook-photo-importer__info{margin-bottom:25px}.facebook-photo-importer__info p{color:#2c3e50;font-size:1rem;margin-bottom:15px}.facebook-photo-importer__icon{font-size:3rem;margin-bottom:15px}.facebook-photo-importer__features{list-style:none;margin:15px auto;max-width:300px;padding:0;text-align:left}.facebook-photo-importer__features li{color:#2c3e50;font-size:.9rem;opacity:.8;padding:5px 0}.facebook-photo-importer__actions{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.facebook-photo-importer__footer{border-top:1px solid #eee;padding-top:20px;text-align:center}.facebook-photo-importer__btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1)}.facebook-photo-importer__btn--facebook{background-color:#1877f2;color:#fff;position:relative}.facebook-photo-importer__btn--facebook:before{background:#fff3;border-radius:3px;content:"f";font-family:Arial,sans-serif;font-size:.9rem;font-weight:700;margin-right:8px;padding:2px 6px}.facebook-photo-importer__btn--facebook:hover:not(:disabled){background-color:#166fe5;box-shadow:0 12px 28px #00000026;transform:translateY(-2px)}.facebook-photo-importer__btn--facebook:disabled{background-color:#8bb7ff;box-shadow:none;cursor:not-allowed;transform:none}.facebook-photo-importer__btn--secondary{background-color:#0000;border:2px solid #2c3e50;color:#2c3e50}.facebook-photo-importer__btn--secondary:hover:not(:disabled){background-color:#2c3e50;color:#fff}.facebook-photo-importer__btn--secondary:disabled{cursor:not-allowed;opacity:.5}.facebook-photo-importer__btn--cancel{background-color:#0000;border:1px solid #e65656;color:#e65656}.facebook-photo-importer__btn--cancel:hover:not(:disabled){background-color:#e65656;color:#fff}.facebook-photo-importer__btn--cancel:disabled{cursor:not-allowed;opacity:.5}}@media(max-width:768px)and (max-width:768px){.facebook-photo-importer{margin:0 10px;padding:20px}.facebook-photo-importer__actions{flex-direction:column;gap:10px}.facebook-photo-importer__btn{width:100%}.facebook-photo-importer__features{text-align:center}}.loading-container{align-items:center;background-color:#4267ce;display:flex;flex-direction:column;height:100vh;justify-content:center;text-align:center}.loading-container .logo-loading{animation:scaleUpDown 1s ease-in-out infinite;height:auto;width:150px}.loading-container .title-loading{animation:fadeIn 1s ease-in-out infinite alternate;color:#fff;font-size:36px;margin-top:20px}@keyframes scaleUpDown{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}
/*# sourceMappingURL=main.576b3475.css.map*/