@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap";@media(max-width:991.98px){.bottom-nav-bar{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#ffffffd9;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(226,232,240,.8);box-shadow:0 -8px 30px #0f172a14!important;padding:8px 16px 12px;padding-bottom:calc(8px + env(safe-area-inset-bottom,12px));transition:transform .3s cubic-bezier(.16,1,.3,1),background-color .3s ease}[data-theme=dark] .bottom-nav-bar{background:#0f172ad9;border-top:1px solid rgba(51,65,85,.5);box-shadow:0 -8px 30px #00000040!important}.bottom-nav-bar__container{display:flex;justify-content:space-around;align-items:center;max-width:600px;margin:0 auto}.bottom-nav-bar__slot{display:contents}.bottom-nav-bar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#64748b;text-decoration:none;font-size:.72rem;font-weight:500;padding:6px 12px;border-radius:16px;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;min-width:64px}[data-theme=dark] .bottom-nav-bar__item{color:#94a3b8}.bottom-nav-bar__item--special{background:linear-gradient(135deg,#10b981,#059669)!important;color:#fff!important;border-radius:50%!important;width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;margin:-18px 8px 0!important;box-shadow:0 8px 20px #10b98159!important;border:3px solid #ffffff!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important}[data-theme=dark] .bottom-nav-bar__item--special{border:3px solid #0f172a!important}.bottom-nav-bar__item--special .bottom-nav-bar__icon-wrap{margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.bottom-nav-bar__item--special .bottom-nav-bar__icon{font-size:1.5rem!important;margin-bottom:0!important;color:#fff!important;transform:none!important}.bottom-nav-bar__item--special .bottom-nav-bar__label{display:none!important}.bottom-nav-bar__item--special.bottom-nav-bar__item--attendance .bottom-nav-bar__label{display:block!important;margin-top:0;font-size:.64rem;line-height:1;text-align:center}.bottom-nav-bar__item--special.bottom-nav-bar__item--attendance{width:54px!important;height:54px!important;min-width:54px!important;max-width:54px!important;padding-top:4px!important}.bottom-nav-bar__item--special.is-active{background:linear-gradient(135deg,#059669,#047857)!important;box-shadow:0 8px 24px #05966973!important}.bottom-nav-bar__icon{font-size:1.35rem;margin-bottom:4px;transition:transform .25s cubic-bezier(.175,.885,.32,1.275),color .25s ease}.bottom-nav-bar__label{opacity:.85;transition:opacity .25s ease,font-weight .25s ease}.bottom-nav-bar__item.is-active:not(.bottom-nav-bar__item--special){color:#f26522;font-weight:600;background:#f2652214}.bottom-nav-bar__item.is-active:not(.bottom-nav-bar__item--special) .bottom-nav-bar__icon{transform:translateY(-2px) scale(1.1);color:#f26522}@media(hover:hover){.bottom-nav-bar__item:hover:not(.is-active):not(.bottom-nav-bar__item--special){color:#334155;background:#64748b0f}[data-theme=dark] .bottom-nav-bar__item:hover:not(.is-active):not(.bottom-nav-bar__item--special){color:#f1f5f9;background:#94a3b814}}.page-wrapper{padding-bottom:80px!important}.bottom-nav-bar__profile-wrapper{position:relative}.bottom-nav-bar__profile-menu{position:absolute;bottom:calc(100% + 12px);right:50%;transform:translate(50%);background:#fffffff2;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(226,232,240,.8);border-radius:16px;box-shadow:0 10px 30px #0f172a26!important;padding:8px;min-width:140px;z-index:1010;display:flex;flex-direction:column;gap:4px;animation:slideUpFade .25s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .bottom-nav-bar__profile-menu{background:#0f172af2;border-color:#334155cc;box-shadow:0 10px 30px #0000004d!important}.bottom-nav-bar__profile-item{display:flex;align-items:center;gap:8px;padding:10px 14px;color:#334155;text-decoration:none;font-size:.85rem;font-weight:500;border-radius:10px;transition:all .2s ease;background:transparent;border:none;width:100%;text-align:left;white-space:nowrap}[data-theme=dark] .bottom-nav-bar__profile-item{color:#cbd5e1}.bottom-nav-bar__profile-item:hover{background:#f2652214;color:#f26522}.bottom-nav-bar__profile-item--danger{color:#ef4444}.bottom-nav-bar__profile-item--danger:hover{background:#ef444414;color:#ef4444}@keyframes slideUpFade{0%{opacity:0;transform:translate(50%) translateY(8px)}to{opacity:1;transform:translate(50%) translateY(0)}}}.wf-shell .modal-dialog{width:calc(100% - 2rem);margin:1rem auto}.wf-shell .modal-dialog.modal-md{max-width:560px}.wf-shell .modal-dialog.modal-lg{max-width:920px}.wf-shell .modal-dialog.modal-xl{max-width:1080px}.wf-shell .modal-content{border:0;border-radius:.875rem;box-shadow:0 20px 60px #0000002e;overflow:hidden;max-height:90vh;display:flex;flex-direction:column;background:var(--bs-card-bg, #ffffff)}.wf-shell .modal-header{padding:1rem 1.25rem;border-bottom:1px solid #f0f2f5;flex-shrink:0}.wf-shell .modal-title{font-size:1rem;font-weight:700;color:#34393f}.wf-shell .modal-body{padding:1.15rem 1.25rem;overflow-y:auto;flex:1}.wf-shell .modal-footer{padding:.85rem 1.25rem 1rem;border-top:1px solid #f0f2f5;gap:.5rem;flex-shrink:0}.wf-shell .custom-btn-close,.wf-shell .btn-close{opacity:.72}.wf-shell .form-label{font-size:.875rem;font-weight:500;color:#34393f;margin-bottom:.25rem}.wf-shell .form-control,.wf-shell .form-select,.wf-shell textarea.form-control{min-height:2.5rem;padding:.55rem .85rem;font-size:.92rem;border-radius:2rem;border-color:#d0d5dd}.wf-shell .form-control:focus,.wf-shell .form-select:focus,.wf-shell textarea.form-control:focus{border-color:#45597a;box-shadow:0 0 0 3px #45597a1f}.wf-shell .row{--bs-gutter-x: 1rem;--bs-gutter-y: .75rem}.wf-shell .mb-3{margin-bottom:.9rem!important}.wf-shell .mb-2{margin-bottom:.6rem!important}.wf-shell .wf-form-panel{border:0;border-radius:.875rem;box-shadow:0 16px 40px #0f172a14;background:var(--bs-card-bg, #ffffff)}.wf-shell .wf-form-panel .card-body{padding:1.15rem 1.25rem}.wf-shell .wf-form-panel .form-control,.wf-shell .wf-form-panel .form-select,.wf-shell .wf-form-panel textarea.form-control{border-radius:.8rem}.wf-shell .wf-panel-title{font-size:.76rem;font-weight:700;color:#45597a;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.8rem;padding-bottom:.4rem;border-bottom:1px solid #e8edf4}.wf-shell .modal-header .btn-close,.wf-shell .modal-header .custom-btn-close{width:32px;height:32px;border-radius:50%;background:#f3f5f8;display:inline-flex;align-items:center;justify-content:center;opacity:1}.wf-shell .modal-header .btn-close:hover,.wf-shell .modal-header .custom-btn-close:hover{background:#e8edf4}.wf-shell .modal-footer .btn{min-width:96px;border-radius:.75rem}@media(max-width:768px){.wf-shell .modal-dialog{width:calc(100% - 1rem);max-width:none}.wf-shell .modal-header,.wf-shell .modal-body,.wf-shell .modal-footer,.wf-shell .wf-form-panel .card-body{padding-left:.85rem;padding-right:.85rem}}.auth-shell{font-family:Montserrat,sans-serif;background-color:#fff;min-height:100vh}.auth-shell *{box-sizing:border-box;font-family:Montserrat,sans-serif}.auth-container{position:relative;width:100%;min-height:100vh;overflow:hidden}.auth-forms{position:absolute;width:100%;height:100%;top:0;left:0}.auth-signin{position:absolute;top:50%;transform:translate(-50%,-50%);left:75%;width:50%;transition:1s .7s ease-in-out;display:grid;grid-template-columns:1fr;z-index:5}.auth-form{display:flex;align-items:center;justify-content:center;flex-direction:column;padding:0 5rem;transition:all .2s .7s;overflow:hidden;grid-column:1 / 2;grid-row:1 / 2}.auth-title{font-size:2.2rem;color:#444;margin-bottom:10px}.auth-login-switch{width:100%;max-width:380px;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 14px}.auth-login-pill{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #f1d8c3;border-radius:999px;background:var(--bs-card-bg, #ffffff);color:#8b4a18;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .2s ease}.auth-login-pill.active{background:#f86f03;border-color:#f86f03;color:#fff}.auth-login-pill:not(.active):hover{background:#ffe8d6;color:#8b4a18}.auth-input{max-width:380px;width:100%;background-color:#f0f0f0;margin:10px 0;height:55px;border-radius:5px;display:grid;grid-template-columns:15% 85%;padding:0 .4rem;position:relative;overflow:visible}.auth-input i{text-align:center;line-height:55px;color:#acacac;transition:.5s;font-size:1.1rem}.auth-input input{background:none;outline:none;border:none;line-height:1;font-weight:600;font-size:1.05rem;color:#333;width:100%;padding-right:36px}.auth-input input::placeholder{color:#aaa;font-weight:500}.auth-input .auth-toggle{position:absolute;right:12px;top:14px;border:none;background:transparent;color:#6c757d;padding:0;line-height:1;z-index:2}.auth-input .auth-toggle i{font-size:1.1rem}.auth-btn{width:150px;background-color:#f86f03;border:none;outline:none;height:49px;border-radius:4px;color:#fff;text-transform:uppercase;font-weight:600;margin:10px 0;cursor:pointer;transition:.5s}.auth-btn:hover{background-color:#f98c39}.auth-panels{position:absolute;height:100%;width:100%;top:0;left:0;display:grid;grid-template-columns:repeat(2,1fr)}.auth-container:before{content:"";position:absolute;height:2000px;width:2000px;top:-10%;right:48%;transform:translateY(-50%);background-image:linear-gradient(-45deg,#f86f03,#ffa41b);transition:1.8s ease-in-out;border-radius:50%;z-index:2}.auth-panel{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-around;text-align:center;z-index:3}.auth-panel-left{pointer-events:all;padding:3rem 17% 2rem 12%}.auth-panel-right{pointer-events:none;padding:3rem 12% 2rem 17%}.auth-panel-content{color:#fff;transition:transform .9s ease-in-out;transition-delay:.6s}.auth-panel h3{font-weight:600;line-height:1;font-size:1.5rem}.auth-panel p{font-size:.95rem;padding:.7rem 0}.auth-btn.transparent{margin:0;background:none;border:2px solid #fff;width:130px;height:41px;font-weight:600;font-size:.8rem}.auth-image{width:100%;transition:transform 1.1s ease-in-out;transition-delay:.4s}.auth-panel-right .auth-image,.auth-panel-right .auth-panel-content{transform:translate(800px)}@media(max-width:870px){.auth-shell{height:100vh;overflow:hidden}.auth-container{min-height:100vh;height:100vh;overflow:hidden}.auth-signin{width:100%;top:60%;transform:translate(-50%,-50%);transition:1s .8s ease-in-out}.auth-signin{left:50%}.auth-btn{width:100%;max-width:380px}.auth-panels{grid-template-columns:1fr;grid-template-rows:1fr 2fr 1fr}.auth-panel{flex-direction:row;justify-content:space-around;align-items:center;padding:2.5rem 8%;grid-column:1 / 2}.auth-panel-right{grid-row:3 / 4}.auth-panel-left{grid-row:1 / 2}.auth-image{width:200px;transition:transform .9s ease-in-out;transition-delay:.6s}.auth-panel-content{padding-right:15%;transition:transform .9s ease-in-out;transition-delay:.8s}.auth-panel h3{font-size:1.2rem}.auth-panel p{font-size:.7rem;padding:.5rem 0}.auth-btn.transparent{width:110px;height:35px;font-size:.7rem}.auth-container:before{width:1500px;height:1500px;transform:translate(-50%);left:30%;bottom:68%;right:initial;top:initial;transition:2s ease-in-out}}@media(max-width:570px){.auth-form{padding:0 1.5rem}.auth-image{display:none}.auth-panel-content{padding:.5rem 1rem}.auth-container{padding:1.5rem}}:root{--loading-spinner-outer: #32afa9;--loading-spinner-middle: #f17362;--loading-spinner-inner: #7e0cf5}@keyframes loading-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-spinner,.spinner-border{--spinner-size: 1.5rem;--spinner-border-width: 3px;--spinner-gap-1: clamp(2px, calc(var(--spinner-size) * .07), 5px);--spinner-gap-2: clamp(4px, calc(var(--spinner-size) * .17), 12px);width:var(--spinner-size);height:var(--spinner-size);display:inline-block;position:relative;vertical-align:middle;box-sizing:border-box;background:transparent;border:0;border-top:var(--spinner-border-width) solid var(--loading-spinner-outer);border-radius:50%;animation:loading-spinner-rotate 2s linear infinite;filter:drop-shadow(0 0 10px rgba(50,175,169,.15));color:transparent!important}.loading-spinner:before,.spinner-border:before{content:"";position:absolute;inset:var(--spinner-gap-1);box-sizing:border-box;border-right:0;border-bottom:0;border-left:0;border-top:var(--spinner-border-width) solid var(--loading-spinner-middle);border-radius:50%;animation:loading-spinner-rotate 2s linear infinite}.loading-spinner:after,.spinner-border:after{content:"";position:absolute;inset:var(--spinner-gap-2);box-sizing:border-box;border-right:0;border-bottom:0;border-left:0;border-top:var(--spinner-border-width) solid var(--loading-spinner-inner);border-radius:50%;animation:loading-spinner-rotate 1s linear infinite}.loading-spinner--page{--spinner-size: 7rem;--spinner-border-width: 3px}.loading-spinner--sm,.spinner-border.spinner-border-sm{--spinner-size: 1rem;--spinner-border-width: 2px}.spinner-border:not(.spinner-border-sm){display:none}.loading-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:9999;background:transparent}.loading-overlay--soft{background:#ffffffb3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-spinner-shell{display:flex;align-items:center;justify-content:center;width:100%;min-height:100%}@keyframes spin-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin-animation{animation:spin-rotate .8s linear infinite;display:inline-block}
