:root{--font-family: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important}body{margin:0;font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.custom-blue-table .p-datatable-thead>tr>th,.custom-blue-table .p-datatable-tbody>tr>td{border:2px solid #3b82f6!important;color:#1e3a8a;font-size:.875rem;text-align:center;padding:.75rem}.custom-blue-header .p-datatable-thead>tr>th{background-color:#e1ebac;color:#1e3a8a;font-size:.875rem;text-align:center;padding:.75rem;font-weight:700}.fade-in{opacity:0;transform:translateY(10px);transition:all .5s ease-in-out}.fade-in.show{opacity:1;transform:translateY(0)}.scale-bounce{transform:scale(0);transition:transform .3s ease-out}.scale-bounce.show{transform:scale(1.2);animation:bounceScale .4s ease forwards}@keyframes bounceScale{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.p-dialog-content{scroll-behavior:auto}.p-dialog-mask{overflow-y:auto}.p-dialog-header{overflow:auto}.auth{width:100%;position:relative;overflow-x:hidden;overflow-y:auto;min-height:100vh;background-size:cover;padding-bottom:36px;animation:gradientPulse 10s ease-in-out infinite;scrollbar-width:thin;scrollbar-color:rgba(136,136,136,.5) transparent;background-image:linear-gradient(to bottom,#4d4d4de6,#b0b0b0e6),radial-gradient(circle at 20% 30%,rgba(79,193,232,.25) 0%,transparent 40%),radial-gradient(circle at 80% 20%,rgba(160,213,104,.25) 0%,transparent 45%),radial-gradient(circle at 50% 80%,rgba(172,146,235,.25) 0%,transparent 40%),radial-gradient(circle at 30% 70%,rgba(237,85,100,.2) 0%,transparent 35%),radial-gradient(circle at 70% 50%,rgba(255,206,84,.25) 0%,transparent 40%)}@keyframes colorShift{0%{background-color:#ff8c00}50%{background-color:#f0f}to{background-color:#00bfff}}.auth{animation:colorShift 10s infinite alternate}.auth:before,.auth:after{content:"";position:absolute;width:350px;height:350px;border-radius:50%;filter:blur(80px);opacity:.6;z-index:0}.auth::-webkit-scrollbar{width:6px}.auth::-webkit-scrollbar-track{background:transparent}.auth::-webkit-scrollbar-thumb{background:#88888880;border-radius:3px}.auth::-webkit-scrollbar-thumb:hover{background:#888888b3}.auth:before{background:#c8c8ff99;top:-100px;left:-100px}.auth:after{background:#ffc8ff99;bottom:-100px;right:-100px}.auth-container{min-height:100vh;flex-direction:column;align-items:center;justify-content:center;padding:clamp(10px,2vh,20px) 16px;margin:auto;display:flex;position:relative;z-index:1;gap:clamp(5px,1vh,15px)}.auth-logo{display:flex;justify-content:center;width:100%;margin-bottom:clamp(-30px,-4vh,-10px)}.auth-logo img{width:clamp(180px,28vw,300px);height:clamp(120px,20vh,200px);object-fit:contain;object-position:center}.auth-card-wrapper{width:clamp(320px,50vw,420px);display:flex;justify-content:center}@media(min-width:768px)and (max-width:1024px){.auth-container{justify-content:flex-start!important;padding-top:5vh!important}.auth-logo img{width:280px!important;height:180px!important}.auth-card-wrapper{width:400px!important}.auth .p-card h1{font-size:1.5rem!important}.auth .p-card>p{font-size:14px!important}.auth .p-inputtext{font-size:15px!important;padding:10px!important}.auth .p-button{font-size:15px!important;padding:11px!important}}@media(max-width:767px){.auth-container{justify-content:flex-start!important;padding-top:3vh!important}.auth-logo{margin-bottom:-15px!important}}@media(max-width:915px)and (max-height:500px)and (orientation:landscape){.auth-container{justify-content:flex-start!important;padding-top:8px!important;gap:5px!important}.auth-logo{margin-bottom:-10px!important}.auth-logo img{width:100px!important;height:65px!important}.auth-card-wrapper{width:clamp(300px,60vw,400px)!important}.auth .p-card{padding:10px!important}.auth .p-card h1{font-size:1rem!important;margin-bottom:4px!important}.auth .p-card>p{font-size:11px!important;margin-bottom:8px!important}.auth .p-card .col-12{margin-bottom:8px!important}.auth .p-inputtext,.auth .p-button{padding:6px!important;font-size:12px!important}.auth .flex.align-items-center.justify-content-between{padding:5px 8px!important;margin-bottom:8px!important}.auth .flex.align-items-center.justify-content-between label{font-size:11px!important}.auth .login-link{font-size:11px!important;margin-bottom:6px!important;margin-top:4px!important}}@media(min-width:916px)and (max-height:600px)and (orientation:landscape){.auth-container{justify-content:flex-start!important;padding-top:10px!important;gap:8px!important}.auth-logo{margin-bottom:-15px!important}.auth-logo img{width:140px!important;height:90px!important}.auth-card-wrapper{width:380px!important}.auth .p-card{padding:12px!important}.auth .p-card h1{font-size:1.1rem!important;margin-bottom:6px!important}.auth .p-card>p{font-size:12px!important;margin-bottom:12px!important}.auth .p-card .col-12{margin-bottom:10px!important}.auth .p-inputtext,.auth .p-button{padding:8px!important;font-size:13px!important}}.auth .p-card{width:100%;padding:clamp(12px,2vw,24px)!important}.auth .p-card h1{font-size:clamp(1.1rem,2.5vw,1.6rem)!important;margin-bottom:clamp(4px,1vh,12px)!important}.auth .p-card>p{font-size:clamp(12px,1.5vw,14px)!important;margin-bottom:clamp(15px,3vh,30px)!important}.auth .p-card .col-12{margin-bottom:clamp(15px,2.5vh,30px)!important}.auth .p-inputtext{font-size:clamp(13px,1.5vw,16px)!important;padding:clamp(6px,1vh,10px)!important}.auth .p-button{font-size:clamp(13px,1.5vw,16px)!important;padding:clamp(8px,1.2vh,12px)!important}.auth .flex.align-items-center.justify-content-between{padding:clamp(6px,1vh,10px) clamp(10px,1.5vw,15px)!important;margin-bottom:clamp(10px,2vh,20px)!important}.auth .flex.align-items-center.justify-content-between label{font-size:clamp(11px,1.3vw,13px)!important}.auth .login-link{font-size:clamp(12px,1.4vw,14px)!important}@media(max-height:500px){.auth-container{justify-content:flex-start!important;padding-top:15px!important;min-height:auto}.auth-logo img{height:80px!important;width:130px!important}}@media(max-width:768px){.auth:before,.auth:after{width:150px!important;height:150px!important}.auth .col-12.sm\:col-6.lg\:col-4{width:100%!important;padding:0 8px!important}.auth .p-card{border-radius:12px!important}.auth .p-dialog{width:calc(100vw - 32px)!important;max-width:100%!important;max-height:calc(100vh - 32px)!important;margin:16px!important}.auth .p-dialog .p-dialog-content{padding:16px!important;overflow-y:auto!important;max-height:calc(100vh - 150px)!important}.auth .p-dialog .p-dialog-header,.auth .p-dialog .p-dialog-footer{padding:12px 16px!important}}@media(max-width:768px){.p-dialog-mask{padding:32px 16px 16px!important;align-items:flex-start!important}.p-dialog{max-height:calc(100vh - 64px)!important;margin:0!important}.p-dialog .p-dialog-content{overflow-y:auto!important;max-height:calc(100vh - 180px)!important;padding:16px!important}.p-dialog .p-dialog-header{padding:12px 16px!important;flex-shrink:0}}@media(max-width:480px){.p-dialog-mask{padding:16px 8px 8px!important}.p-dialog{width:calc(100vw - 16px)!important;max-height:calc(100vh - 32px)!important}.p-dialog .p-dialog-content{max-height:calc(100vh - 140px)!important;padding:12px!important}.p-dialog .p-dialog-header{padding:10px 12px!important}.p-dialog .flex.justify-content-end.gap-2{flex-direction:column!important;gap:8px!important}.p-dialog .flex.justify-content-end.gap-2 .p-button{width:100%!important}}@media(max-width:768px){.custom-steps .p-steps-item .p-menuitem-link{font-size:12px!important;padding:4px!important}.custom-steps .p-steps-title{font-size:12px!important}}@media(max-width:768px){.avatar-mobile{width:80px!important;height:80px!important}.avatar-upload-button .p-button{font-size:12px!important;padding:6px 10px!important}}@media(max-width:768px){.search-add-room-container{flex-direction:column!important;gap:10px}.search-add-room-container input[type=text],.search-add-room-container .p-button{width:100%!important}}.custom-blue-header .p-datatable-thead>tr>th{background-color:#3b82f6!important;color:#fff!important;font-weight:600;border-color:#2563eb}.custom-blue-header .p-datatable-thead>tr>th .p-column-header-content{color:#fff}.custom-blue-header .p-datatable-thead>tr>th .p-sortable-column-icon{color:#fff}.custom-blue-header .p-datatable-tbody>tr:nth-child(2n){background-color:#f8fafc}.custom-blue-header .p-datatable-tbody>tr:hover{background-color:#f1f5f9;transition:background-color .2s}.custom-blue-header .p-paginator{background-color:#f8fafc;border-color:#e2e8f0}.custom-blue-header .p-paginator .p-paginator-page.p-highlight{background-color:#3b82f6;border-color:#3b82f6;color:#fff}:global(.custom-blue-header .p-datatable-thead>tr>th){background-color:#3b82f6!important;color:#fff!important;font-weight:600;border-color:#2563eb;text-align:center}:global(.custom-blue-header .p-datatable-tbody>tr:nth-child(2n)){background-color:#f8fafc}:global(.custom-blue-header .p-datatable-tbody>tr:hover){background-color:#f1f5f9;transition:background-color .2s}:global(.custom-schedule-table .p-datatable-thead>tr>th){background-color:#1e40af!important;color:#fff!important;font-weight:600;border-color:#1e3a8a;text-align:center}:global(.custom-schedule-table .p-datatable-tbody>tr:nth-child(2n)){background-color:#f8fafc}.custom-tooltip .p-tooltip-text{white-space:pre-line;max-width:300px;background:#333;color:#fff;padding:8px 12px;border-radius:6px;font-size:12px}:global(.custom-schedule-table .p-datatable-tbody>tr:hover){background-color:#f0f9ff;transition:background-color .2s}:global(.custom-schedule-table .p-datatable-tbody>tr>td){border-right:1px solid #e2e8f0;vertical-align:top}.hover\:shadow-4:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-2px)}.transition-all{transition:all .3s ease}.text-2xs{font-size:.65rem;line-height:1}.excel-uploader{max-width:900px;margin:20px auto;padding:20px;background:#f8f9fa;border-radius:8px}.upload-section{margin-bottom:30px;padding:20px;background:#fff;border-radius:6px;border:2px dashed #ddd}.mapping-section{background:#fff;padding:20px;border-radius:6px;box-shadow:0 2px 4px #0000001a}.mapping-table{width:100%;border-collapse:collapse;margin:20px 0}.mapping-table th,.mapping-table td{padding:12px;border-bottom:1px solid #eee;text-align:left}.mapping-table th{background:#f1f3f4;font-weight:600}.mapping-table select{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px}.suggestion{color:#28a745;font-weight:500}.confirm-btn{background:#007bff;color:#fff;border:none;padding:12px 24px;border-radius:4px;cursor:pointer;font-size:16px;transition:background .3s}.confirm-btn:hover{background:#0056b3}.excel-upload-dialog .p-dialog-content{padding:0!important}.p-tabview .p-tabview-nav:after{content:"";min-width:3rem;flex-shrink:0;display:block}.excel-upload-dialog .p-tabview{height:100%}.excel-upload-dialog .p-tabview-panels{height:calc(100% - 40px)}.cell-content{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-content:hover{overflow:visible;white-space:normal;background:#fff;position:absolute;z-index:1000;padding:4px;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 4px #0000001a}.table-zoom-container{font-size:calc(1rem * var(--tz));transition:font-size .2s ease}.table-zoom-container .p-datatable-thead>tr>th,.table-zoom-container .p-datatable-tbody>tr>td{padding:calc(.75rem * var(--tz)) calc(1rem * var(--tz))}.table-zoom-container .p-datatable-tbody>tr>td .p-button.p-button-rounded{width:calc(2.357rem * var(--tz));height:calc(2.357rem * var(--tz));min-width:calc(2.357rem * var(--tz));padding:0!important;border-radius:50%!important}.table-zoom-container .p-datatable-tbody>tr>td .p-button.p-button-rounded .p-button-icon{font-size:calc(1rem * var(--tz))}.table-zoom-container .p-paginator{font-size:calc(1rem * var(--tz));padding:calc(.5rem * var(--tz)) calc(1rem * var(--tz))}.table-zoom-container .p-paginator .p-paginator-element{min-width:calc(2.357rem * var(--tz));height:calc(2.357rem * var(--tz))}.table-zoom-container .p-paginator .p-dropdown{font-size:calc(1rem * var(--tz));height:calc(2.357rem * var(--tz));min-width:calc(4rem * var(--tz))}.table-zoom-container .p-paginator .p-dropdown .p-dropdown-label{font-size:calc(1rem * var(--tz));padding:calc(.25rem * var(--tz)) calc(.5rem * var(--tz));line-height:1;display:flex;align-items:center}.table-zoom-container .p-paginator .p-dropdown .p-dropdown-trigger{width:calc(2rem * var(--tz))}.table-zoom-container .p-paginator .p-dropdown .p-dropdown-trigger .p-dropdown-trigger-icon,.table-zoom-container .p-paginator .p-paginator-current{font-size:calc(.85rem * var(--tz))}.table-zoom-container .p-datatable .p-column-resizer{width:8px!important;border-right:2px dashed transparent;transition:border-color .2s ease}.table-zoom-container .p-datatable .p-datatable-thead>tr>th:hover .p-column-resizer{border-right-color:#93c5fd}.table-zoom-container .p-datatable .p-datatable-thead>tr>th{position:relative}.table-zoom-container .p-datatable .p-datatable-thead>tr>th:after{content:"⇔";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:.7rem;color:transparent;transition:color .2s ease;pointer-events:none}.table-zoom-container .p-datatable .p-datatable-thead>tr>th:hover:after{color:#93c5fd}.cell-ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-zoom-container .p-datatable-tbody>tr>td>div{overflow:hidden}.introjs-tour{transition:all .3s ease-out}.introjs-overlay{position:absolute;box-sizing:content-box;z-index:999999;opacity:0;transition:all .3s ease-out}.introjs-showElement{z-index:9999999!important}tr.introjs-showElement>td{z-index:9999999!important;position:relative}tr.introjs-showElement>th{z-index:9999999!important;position:relative}.introjs-disableInteraction{z-index:99999999!important;position:absolute;background-color:#fff;opacity:0}.introjs-relativePosition{position:relative}.introjs-helperLayer{box-sizing:content-box;position:absolute;z-index:9999998;border-radius:4px;transition:all .3s ease-out}.introjs-helperLayer *{box-sizing:content-box}.introjs-helperLayer :before{box-sizing:content-box}.introjs-helperLayer :after{box-sizing:content-box}.introjs-tooltipReferenceLayer{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;box-sizing:content-box;position:absolute;visibility:hidden;z-index:100000000;background-color:transparent;transition:all .3s ease-out}.introjs-tooltipReferenceLayer *{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.introjs-helperNumberLayer{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif;color:#9e9e9e;text-align:center;padding-top:10px;padding-bottom:10px}.introjs-arrow{border:5px solid transparent;content:"";position:absolute}.introjs-arrow.top{top:-10px;left:10px;border-bottom-color:#fff}.introjs-arrow.top-right{top:-10px;right:10px;border-bottom-color:#fff}.introjs-arrow.top-middle{top:-10px;left:50%;margin-left:-5px;border-bottom-color:#fff}.introjs-arrow.right{right:-10px;top:10px;border-left-color:#fff}.introjs-arrow.right-bottom{bottom:10px;right:-10px;border-left-color:#fff}.introjs-arrow.bottom{bottom:-10px;left:10px;border-top-color:#fff}.introjs-arrow.bottom-right{bottom:-10px;right:10px;border-top-color:#fff}.introjs-arrow.bottom-middle{bottom:-10px;left:50%;margin-left:-5px;border-top-color:#fff}.introjs-arrow.left{left:-10px;top:10px;border-right-color:#fff}.introjs-arrow.left-bottom{left:-10px;bottom:10px;border-right-color:#fff}.introjs-tooltip{box-sizing:content-box;position:absolute;visibility:visible;background-color:#fff;min-width:250px;max-width:300px;border-radius:5px;box-shadow:0 3px 30px #2121214d;transition:opacity .1s ease-out}.introjs-tooltiptext{padding:20px}.introjs-dontShowAgain{padding-left:20px;padding-right:20px}.introjs-dontShowAgain input{padding:0;margin:0 0 2px;display:inline;width:10px;height:10px}.introjs-dontShowAgain label{font-size:14px;display:inline-block;font-weight:400;margin:0 0 0 5px;padding:0;background-color:#fff;color:#616161;-webkit-user-select:none;user-select:none}.introjs-tooltip-title{font-size:18px;width:90%;min-height:1.5em;margin:0;padding:0;font-weight:700;line-height:1.5}.introjs-tooltip-header{position:relative;padding-left:20px;padding-right:20px;padding-top:10px;min-height:1.5em}.introjs-tooltipbuttons{border-top:1px solid #e0e0e0;padding:10px;text-align:right;white-space:nowrap}.introjs-tooltipbuttons:after{content:"";visibility:hidden;display:block;height:0;clear:both}.introjs-button{box-sizing:content-box;position:relative;overflow:visible;padding:.5rem 1rem;border:1px solid #bdbdbd;text-decoration:none;text-shadow:1px 1px 0 #fff;font-size:14px;color:#424242;white-space:nowrap;cursor:pointer;outline:0;background-color:#f4f4f4;border-radius:.2em;zoom:1;display:inline}.introjs-button:hover{outline:0;text-decoration:none;border-color:#9e9e9e;background-color:#e0e0e0;color:#212121}.introjs-button:focus{outline:0;text-decoration:none;background-color:#eee;box-shadow:0 0 0 .2rem #9e9e9e80;border:1px solid #616161;color:#212121}.introjs-button:active{outline:0;text-decoration:none;background-color:#e0e0e0;border-color:#9e9e9e;color:#212121}.introjs-button::-moz-focus-inner{padding:0;border:0}.introjs-skipbutton{position:absolute;top:0;right:0;display:inline-block;width:45px;height:45px;line-height:45px;color:#616161;font-size:22px;cursor:pointer;font-weight:700;text-align:center;text-decoration:none}.introjs-skipbutton:focus,.introjs-skipbutton:hover{color:#212121;outline:0;text-decoration:none}.introjs-prevbutton{float:left}.introjs-nextbutton{float:right}.introjs-disabled{color:#9e9e9e;border-color:#bdbdbd;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-disabled:focus,.introjs-disabled:hover{color:#9e9e9e;border-color:#bdbdbd;box-shadow:none;cursor:default;background-color:#f4f4f4;background-image:none;text-decoration:none}.introjs-hidden{display:none}.introjs-bullets{text-align:center;padding-top:10px;padding-bottom:10px}.introjs-bullets ul{box-sizing:content-box;clear:both;margin:0 auto;padding:0;display:inline-block}.introjs-bullets ul li{box-sizing:content-box;list-style:none;float:left;margin:0 2px}.introjs-bullets ul li a{transition:width .1s ease-in;box-sizing:content-box;display:block;width:6px;height:6px;background:#ccc;border-radius:10px;text-decoration:none;cursor:pointer}.introjs-bullets ul li a:focus,.introjs-bullets ul li a:hover{width:15px;background:#999;text-decoration:none;outline:0}.introjs-bullets ul li a.active{width:15px;background:#999}.introjs-progress{box-sizing:content-box;overflow:hidden;height:10px;margin:10px;border-radius:4px;background-color:#e0e0e0}.introjs-progressbar{box-sizing:content-box;float:left;width:0%;height:100%;font-size:10px;line-height:10px;text-align:center;background-color:#08c}.introjsFloatingElement{position:absolute;height:0;width:0;left:50%;top:50%}.introjs-fixedTooltip{position:fixed}.introjs-hint{box-sizing:content-box;position:absolute;background:0 0;width:20px;height:15px;cursor:pointer}.introjs-hint:focus{border:0;outline:0}.introjs-hint:hover>.introjs-hint-pulse{background-color:#3c3c3c91}.introjs-hidehint{display:none}.introjs-fixedhint{position:fixed}@keyframes introjspulse{0%{transform:scale(.95);box-shadow:0 0 #000000b3}70%{transform:scale(1);box-shadow:0 0 0 10px transparent}to{transform:scale(.95);box-shadow:0 0 0 0 transparent}}.introjs-hint-pulse{box-sizing:content-box;width:15px;height:15px;border-radius:30px;background-color:#8888883d;z-index:10;position:absolute;transition:all .2s ease-out;animation:introjspulse 2s infinite}.introjs-hint-no-anim .introjs-hint-pulse{animation:none}.introjs-hint-dot{box-sizing:content-box;background:0 0;border-radius:60px;height:50px;width:50px;position:absolute;top:-18px;left:-18px;z-index:1;opacity:0}.chatbot-button{position:fixed;bottom:16px;right:24px;width:56px;height:56px;border-radius:50%;border:none;cursor:pointer;z-index:99999;background:linear-gradient(145deg,#667eea,#764ba2);box-shadow:0 8px 25px #667eea66,0 4px 10px #00000026,inset 0 2px 4px #ffffff40;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:visible}.chatbot-button:hover{transform:scale(1.08) translateY(-3px);box-shadow:0 12px 35px #667eea80,0 6px 15px #0003,inset 0 2px 4px #ffffff4d}.chatbot-button:active{transform:scale(.95)}.chatbot-button-inner{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.chatbot-icon{font-size:1.5rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.chatbot-button-pulse{position:absolute;top:-8px;left:-8px;right:-8px;bottom:-8px;border-radius:50%;background:linear-gradient(145deg,#667eea,#764ba2);opacity:0;animation:chatbotPulse 2s ease-out infinite;z-index:-1}@keyframes chatbotPulse{0%{transform:scale(.9);opacity:.7}70%{transform:scale(1.3);opacity:0}to{transform:scale(1.3);opacity:0}}.chatbot-notification{position:absolute;top:-5px;right:-5px;width:22px;height:22px;background:#ef4444;color:#fff;border-radius:50%;font-size:.75rem;font-weight:600;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #ef444466;animation:chatbotBounce 1s ease infinite}@keyframes chatbotBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.chatbot-window{position:fixed;bottom:85px;right:24px;width:380px;height:520px;max-height:calc(100vh - 100px);background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026,0 8px 25px #0000001a;display:flex;flex-direction:column;z-index:100000;overflow:hidden;animation:chatbotSlideUp .3s ease-out}@keyframes chatbotSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbot-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.chatbot-header-info{display:flex;align-items:center;gap:12px}.chatbot-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden}.chatbot-header-text{display:flex;flex-direction:column}.chatbot-title{font-weight:600;font-size:1.05rem}.chatbot-status{font-size:.75rem;opacity:.9;display:flex;align-items:center;gap:6px}.chatbot-status:before{content:"";width:8px;height:8px;background:#22c55e;border-radius:50%;display:inline-block}.chatbot-header-actions{display:flex;gap:4px}.chatbot-header-actions .p-button{color:#fff!important;background:#ffffff1a!important;border:none!important}.chatbot-header-actions .p-button:hover{background:#fff3!important}.chatbot-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f8fafc}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chatbot-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.chatbot-message{display:flex;gap:10px;max-width:85%;animation:chatbotFadeIn .3s ease-out}@keyframes chatbotFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chatbot-message.bot{align-self:flex-start}.chatbot-message.user{align-self:flex-end;flex-direction:row-reverse}.chatbot-message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.chatbot-message-content{display:flex;flex-direction:column;gap:8px}.chatbot-message-content p{margin:0;padding:12px 16px;border-radius:16px;font-size:.9rem;line-height:1.5;white-space:pre-line}.chatbot-message.bot .chatbot-message-content p{background:#fff;color:#1f2937;border-bottom-left-radius:4px;box-shadow:0 1px 3px #00000014}.chatbot-message.user .chatbot-message-content p{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.chatbot-nav-button{align-self:flex-start;font-size:.8rem!important;padding:6px 12px!important;border-color:#667eea!important;color:#667eea!important}.chatbot-nav-button:hover{background:#667eea1a!important}.chatbot-quick-replies{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chatbot-quick-reply{padding:8px 14px;border:1px solid #e2e8f0;border-radius:20px;background:#fff;color:#4b5563;font-size:.8rem;cursor:pointer;transition:all .2s}.chatbot-quick-reply:hover{background:#f1f5f9;border-color:#667eea;color:#667eea}.chatbot-quick-reply-more{border-style:dashed;border-color:#667eea;color:#667eea;font-weight:500}.chatbot-quick-reply-more:hover{background:#eef2ff}.chatbot-quick-reply-cancel{border-color:#ef4444;color:#ef4444}.chatbot-quick-reply-cancel:hover{background:#fef2f2;border-color:#dc2626;color:#dc2626}.chatbot-typing{display:flex;align-items:center;gap:5px;padding:14px 18px;background:#fff;border-radius:16px 16px 16px 4px;box-shadow:0 1px 3px #00000014}.chatbot-typing span{width:8px;height:8px;background:#9ca3af;border-radius:50%;animation:chatbotTyping 1.4s ease-in-out infinite}.chatbot-typing span:nth-child(2){animation-delay:.2s}.chatbot-typing span:nth-child(3){animation-delay:.4s}@keyframes chatbotTyping{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chatbot-input-container{display:flex;align-items:center;gap:10px;padding:16px;background:#fff;border-top:1px solid #e2e8f0}.chatbot-input{flex:1;border-radius:24px!important;padding:10px 18px!important;font-size:.9rem!important;border-color:#e2e8f0!important}.chatbot-input:focus{border-color:#667eea!important;box-shadow:0 0 0 3px #667eea26!important}.chatbot-send-button{width:44px!important;height:44px!important;border-radius:50%!important;background:linear-gradient(135deg,#667eea,#764ba2)!important;border:none!important;flex-shrink:0}.chatbot-send-button:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #667eea66}.chatbot-send-button:disabled{background:#e5e7eb!important;cursor:not-allowed}.chatbot-intro{position:fixed;bottom:85px;right:24px;background:#fff;border-radius:16px;padding:16px 20px;box-shadow:0 10px 40px #00000026,0 4px 15px #0000001a;z-index:99998;cursor:pointer;animation:chatbotIntroSlide .5s cubic-bezier(.34,1.56,.64,1);display:flex;align-items:center;gap:12px;max-width:280px}@keyframes chatbotIntroSlide{0%{opacity:0;transform:translate(100px) scale(.8)}to{opacity:1;transform:translate(0) scale(1)}}.chatbot-intro:hover{transform:translateY(-2px);box-shadow:0 14px 50px #0000002e,0 6px 20px #0000001f}.chatbot-intro-content{display:flex;align-items:center;gap:12px;flex:1}.chatbot-intro-avatar{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;animation:chatbotAvatarPop .6s cubic-bezier(.34,1.56,.64,1) .2s both}@keyframes chatbotAvatarPop{0%{transform:scale(0)}to{transform:scale(1)}}.chatbot-intro-text{display:flex;flex-direction:column;gap:2px}.chatbot-intro-wave{font-size:1.2rem;animation:chatbotWave 1s ease-in-out infinite;display:inline-block;transform-origin:70% 70%}@keyframes chatbotWave{0%,to{transform:rotate(0)}25%{transform:rotate(20deg)}75%{transform:rotate(-10deg)}}.chatbot-intro-text p{margin:0;font-size:.95rem;color:#1f2937;animation:chatbotTextFade .5s ease-out .3s both}.chatbot-intro-text p strong{color:#667eea;font-weight:700}@keyframes chatbotTextFade{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.chatbot-intro-subtitle{font-size:.8rem;color:#6b7280;animation:chatbotTextFade .5s ease-out .5s both}.chatbot-intro-close{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:#f3f4f6;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;opacity:0}.chatbot-intro:hover .chatbot-intro-close{opacity:1}.chatbot-intro-close:hover{background:#e5e7eb}.chatbot-intro-close i{font-size:.7rem;color:#6b7280}.chatbot-file-upload-area{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;border:2px dashed #cbd5e1;border-radius:12px;background:#f8fafc;transition:all .2s}.chatbot-file-upload-area:hover{border-color:#667eea;background:#eef2ff}.chatbot-file-upload-btn{display:flex;align-items:center;gap:8px;padding:8px 20px;border:none;border-radius:20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.chatbot-file-upload-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #667eea66}.chatbot-file-upload-btn i{font-size:.9rem}.chatbot-file-hint{font-size:.7rem;color:#9ca3af}.chatbot-attach-button{width:36px!important;height:36px!important;flex-shrink:0}.chatbot-message-avatar.user-avatar{background:linear-gradient(135deg,#10b981,#059669)}.eko-voice-btn{background:none;border:none;color:#6366f1;cursor:pointer;padding:6px 8px;border-radius:50%;transition:all .2s;display:flex;align-items:center;justify-content:center}.eko-voice-btn:hover{background:#eef2ff}.eko-voice-btn.listening{color:#ef4444;animation:pulse-voice 1.5s infinite}@keyframes pulse-voice{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.8}}@media(max-width:480px){.chatbot-window{bottom:0;right:0;left:0;width:100%;height:100%;border-radius:0;max-height:100vh}.chatbot-button{bottom:12px;right:16px;width:48px;height:48px}.chatbot-icon{font-size:1.25rem}.chatbot-intro{bottom:70px;right:16px;left:16px;max-width:none}}
