*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host ::ng-deep{font-family:"Baloo Bhaijaan 2",sans-serif;font-weight:400;font-style:normal}:host ::ng-deep *{font-family:"Baloo Bhaijaan 2",sans-serif;font-weight:400;font-style:normal}*{font-family:"Baloo Bhaijaan 2",sans-serif;font-weight:400;font-style:normal}@supports (font-variation-settings: "wght" 400){*{font-family:"Baloo Bhaijaan 2",sans-serif;font-weight:400}}html,body{height:100%;font-family:"Baloo Bhaijaan 2",sans-serif;font-size:16px;line-height:1.6;color:#2c3e50;background:#f8f9fa;overflow-x:hidden;position:fixed;width:100%}html{height:100vh;height:100dvh}@media all and (display-mode: standalone){html{height:100lvh}}body{margin:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.splash-screen{position:fixed;top:0;padding-bottom:10vh;left:0;width:100vw;height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;transition:opacity .5s ease-out,visibility .5s ease-out;opacity:1;visibility:visible}.splash-screen.hidden{opacity:0;visibility:hidden;pointer-events:none}.splash-screen.loading .splash-logo{animation:logo-pulse 2s ease-in-out infinite}.splash-screen.loading .gradient-line{animation:gradient-sweep 2s ease-in-out infinite}.splash-screen .splash-logo{position:relative;display:inline-block;width:120px;height:120px;margin-bottom:2rem;animation:logo-pulse 3s ease-in-out infinite;border-radius:20px;overflow:hidden}.splash-screen .splash-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:20px;box-shadow:0 8px 32px #0000004d;position:relative;z-index:1}.splash-screen .splash-logo .gradient-line{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.7) 50%,transparent 100%);animation:gradient-sweep 2.5s ease-in-out infinite;pointer-events:none;filter:blur(.5px);z-index:2}.splash-screen .splash-text{color:#fff;font-size:1.5rem;font-weight:300;text-align:center;opacity:0;animation:fade-in 1s ease-out .5s forwards}@keyframes logo-pulse{0%,to{transform:scale(1);box-shadow:0 8px 32px #0000004d}50%{transform:scale(1.05);box-shadow:0 12px 40px #0006}}@keyframes gradient-sweep{0%{left:-100%;opacity:0;transform:scaleX(.8)}50%{opacity:1;transform:scaleX(1)}to{left:100%;opacity:0;transform:scaleX(.8)}}@keyframes fade-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.splash-title{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 10px rgba(0,0,0,.3)}.splash-subtitle{font-size:1.2rem;margin-bottom:2rem;opacity:.9;text-shadow:0 1px 5px rgba(0,0,0,.3)}.splash-loading{display:flex;justify-content:center}.loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite}.pwa-install-prompt{position:fixed;bottom:0;left:0;right:0;z-index:9998;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pwa-install-content{background:#fff;border-radius:20px 20px 0 0;padding:1.5rem;box-shadow:0 -10px 30px #0003}.pwa-install-icon{width:50px;height:50px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;margin:0 auto 1rem}.pwa-install-text{text-align:center;margin-bottom:1.5rem}.pwa-install-text h3{color:#2c3e50;font-size:1.3rem;font-weight:600;margin-bottom:.5rem}.pwa-install-text p{color:#6c757d;font-size:.9rem;margin:0}.pwa-install-actions{display:flex;gap:1rem}.pwa-install-btn{flex:1;padding:.8rem 1rem;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.pwa-install-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pwa-install-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea4d}.pwa-install-btn.secondary{background:#f8f9fa;color:#6c757d;border:2px solid #e9ecef}.pwa-install-btn.secondary:hover{background:#e9ecef;color:#495057}.mobile-navigation{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#fff;border-top:1px solid #e9ecef;box-shadow:0 -4px 20px #0000001a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;margin-bottom:.5rem}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.1rem}h6{font-size:1rem}p{margin-bottom:1rem;line-height:1.6}a{color:#667eea;text-decoration:none;transition:color .3s ease}a:hover{color:#5a6fd8}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .3s ease}button:disabled{cursor:not-allowed;opacity:.6}input,textarea,select{font-family:inherit;font-size:1rem;border:2px solid #ecf0f1;border-radius:8px;padding:.8rem 1rem;transition:border-color .3s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:#667eea}input::placeholder,textarea::placeholder,select::placeholder{color:#bdc3c7}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.card{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;padding:1.5rem;margin-bottom:1.5rem}.btn{display:inline-block;padding:.8rem 1.5rem;border-radius:8px;font-weight:600;text-align:center;cursor:pointer;transition:all .3s ease;border:none;text-decoration:none}.btn.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #667eea4d}.btn.btn-success{background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff}.btn.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #27ae604d}.btn.btn-danger{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.btn.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #e74c3c4d}.btn.btn-secondary{background:#fff;color:#7f8c8d;border:2px solid #ecf0f1}.btn.btn-secondary:hover:not(:disabled){border-color:#bdc3c7;color:#2c3e50}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-group{margin-bottom:1.5rem}.form-label{display:block;color:#2c3e50;font-weight:600;margin-bottom:.5rem;font-size:.95rem}.form-control{width:100%;padding:.8rem 1rem;border:2px solid #ecf0f1;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-control:focus{outline:none;border-color:#667eea}.form-control.error{border-color:#e74c3c}.error-message{color:#e74c3c;font-size:.85rem;margin-top:.5rem}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000014}.table th,.table td{padding:1rem;text-align:left;border-bottom:1px solid #ecf0f1}.table th{background:#f8f9fa;color:#2c3e50;font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.table tbody tr{transition:background-color .3s ease}.table tbody tr:hover{background:#f8f9fa}.table tbody tr:last-child{border-bottom:none}.spinner{width:40px;height:40px;border:4px solid #ecf0f1;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){html,body{font-size:14px}.card{padding:1rem}.btn{padding:.7rem 1.2rem;font-size:.9rem}.table{font-size:.9rem}.table th,.table td{padding:.8rem .5rem}.splash-title{font-size:2rem}.splash-subtitle{font-size:1rem}}@media (max-width: 480px){html,body{font-size:13px}.card{padding:.8rem}.btn{padding:.6rem 1rem;font-size:.8rem}.splash-title{font-size:1.8rem}.splash-subtitle{font-size:.9rem}}.mat-mdc-form-field{width:100%}.mat-mdc-card{margin-bottom:1.5rem}.mat-mdc-button,.mat-mdc-raised-button{border-radius:8px!important}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@supports (padding: env(safe-area-inset-bottom)){body{padding-bottom:0}}body{overscroll-behavior:none;-webkit-overflow-scrolling:touch}input,textarea,select{font-size:16px}@media (max-width: 768px){::-webkit-scrollbar{display:none}*{-ms-overflow-style:none;scrollbar-width:none}}.cdk-overlay-pane{background:#fffffff2}html,body{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:none}body{min-height:100vh;height:100vh;padding-bottom:0;box-sizing:border-box}#root,app-root{min-height:100vh;min-height:100dvh;height:100vh;width:100%;display:flex;flex-direction:column}@supports (padding: max(0px)){.app-container{padding-bottom:0}}@media screen and (orientation: landscape) and (max-width: 767px){.app-container{transform:rotate(-90deg);transform-origin:left top;width:100vh;height:100vw;overflow-x:hidden;overflow-y:auto;position:absolute;top:100%;left:0}}@media screen and (min-width: 768px){.app-container{transform:none!important;width:100vw!important;height:100vh!important;position:relative!important;top:auto!important;left:auto!important;overflow:visible!important}}@media screen and (min-width: 1024px){body.landscape-rotated{transform:none!important;width:100vw!important;height:100vh!important;position:relative!important;top:auto!important;left:auto!important;overflow:visible!important}}*{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.allow-select{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.bottom-nav,.mobile-nav{position:fixed;bottom:0;left:0;right:0;padding-bottom:0;background:var(--surface-color, #ffffff);z-index:1000}.app-wrapper{min-height:100vh;min-height:100dvh;width:100vw;margin:0;padding:0;overflow-x:hidden}.change-password-dialog-container .mat-mdc-dialog-container{padding:0;overflow:hidden}.change-password-dialog-container .mat-mdc-dialog-surface{border-radius:12px;box-shadow:0 8px 32px #0000001f}
