.particle-canvas{inset:0;pointer-events:none;position:fixed;z-index:0}.login-bg{align-items:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.orb{border-radius:50%;filter:blur(90px);pointer-events:none;position:fixed;z-index:0}.orb1{animation:orbFloat 10s ease-in-out infinite;background:#667eea40;height:500px;left:-150px;top:-150px;width:500px}.orb2{animation:orbFloat 13s ease-in-out infinite reverse;background:#f093fb33;bottom:-100px;height:400px;right:-100px;width:400px}.orb3{animation:orbFloat 8s ease-in-out 2s infinite;background:#48bb7826;height:300px;left:60%;top:40%;width:300px}.orb4{animation:orbFloat 11s ease-in-out 4s infinite;background:#ed89361f;height:250px;left:10%;top:20%;width:250px}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.08)}66%{transform:translate(-20px,20px) scale(.95)}}.center-box{align-items:center;display:flex;justify-content:center;padding:20px;z-index:1}.center-box,.login-card{position:relative;width:100%}.login-card{animation:cardEntrance .8s cubic-bezier(.175,.885,.32,1.275);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#ffffff12;border:1px solid #ffffff26;border-radius:28px;box-shadow:0 30px 80px #0006,inset 0 1px 0 #ffffff26;max-width:440px;overflow:hidden;padding:0 0 36px;text-align:center}@keyframes cardEntrance{0%{opacity:0;transform:translateY(60px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.login-top-bar{animation:gradientSlide 3s linear infinite;background:linear-gradient(90deg,#667eea,#f093fb,#48bb78,#667eea);background-size:300% 100%;border-radius:28px 28px 0 0;height:5px}.login-logo-wrap{display:inline-block;margin:28px 0 10px;position:relative}.login-logo{animation:logoPulse 2.5s ease-in-out infinite;display:block;font-size:60px}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 10px rgba(102,126,234,.5));transform:scale(1) rotate(0deg)}50%{filter:drop-shadow(0 0 25px rgba(240,147,251,.7));transform:scale(1.1) rotate(5deg)}}.logo-ring{animation:ringRotate 4s linear infinite;background:linear-gradient(135deg,#667eea,#f093fb) border-box;border:2px solid #0000;border-radius:50%;inset:-8px;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:destination-out;mask-composite:exclude;position:absolute}@keyframes ringRotate{to{transform:rotate(1turn)}}.login-card h2{color:#fff;font-size:22px;font-weight:800;letter-spacing:.3px;margin-bottom:6px;min-height:32px;padding:0 30px}.cursor{animation:blink 1s step-end infinite;color:#f093fb}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.login-card p{color:#fff9;font-size:13px;margin-bottom:14px}.divider{align-items:center;display:flex;gap:10px;margin-bottom:14px;padding:0 30px}.divider:after,.divider:before{background:#ffffff26;content:"";flex:1 1;height:1px}.divider span{color:#fff6;font-size:11px;font-weight:700;letter-spacing:2px}.admin-notice{align-items:flex-start;animation:fadeInUp .6s ease-out .4s both;background:#667eea26;border:1px solid #667eea4d;border-radius:12px;color:#fffc;display:flex;font-size:12px;font-weight:500;gap:8px;margin:0 30px 16px;padding:10px 14px;text-align:left}.notice-icon{flex-shrink:0;font-size:16px;margin-top:1px}.input-group{align-items:center;background:#ffffff1a;border:1.5px solid #ffffff59;border-radius:14px;display:flex;margin:10px 30px;overflow:hidden;position:relative;transition:all .35s ease}.input-group.focused{background:#667eea1f;border-color:#667eea;box-shadow:0 0 0 3px #667eea33,0 8px 20px #667eea26;transform:translateY(-2px)}.input-icon{font-size:18px;padding:0 12px}.input-group input{-webkit-text-fill-color:#fff;background:#0000;border:none;caret-color:#fff;color:#fff;flex:1 1;font-size:15px;outline:none;padding:14px 10px 14px 0}.input-group input::placeholder{-webkit-text-fill-color:#ffffff59;color:#ffffff59}.input-group input:-webkit-autofill,.input-group input:-webkit-autofill:focus{-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1e143cf2!important;caret-color:#fff}.input-check{color:#48bb78;font-size:16px;font-weight:700;padding-right:12px}.pwd-toggle{align-items:center;background:none;border:none;box-shadow:none;color:#ffffff8c;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin:0;padding:0 14px;transition:color .2s}.pwd-toggle:hover{box-shadow:none;color:#fff;transform:none}.pwd-toggle svg{display:block;height:20px;width:20px}.login-btn{align-items:center;animation:gradientSlide 3s linear infinite;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);background-size:200% 200%;border:none;border-radius:14px;box-shadow:0 8px 25px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:800;gap:10px;justify-content:center;letter-spacing:1px;margin:18px 30px 0;padding:15px;transition:all .35s ease;width:calc(100% - 60px)}.login-btn:hover:not(:disabled){box-shadow:0 16px 40px #667eea80;transform:translateY(-4px)}.login-btn:active:not(:disabled){transform:translateY(-1px)}.login-btn:disabled{cursor:not-allowed;opacity:.7}.login-footer{align-items:center;color:#ffffff59;display:flex;font-size:12px;justify-content:space-between;margin:20px 30px 0}.secure-tag{background:#48bb7826;border:1px solid #48bb7833;border-radius:20px;color:#48bb78cc;padding:3px 10px}.message{margin:8px 30px}.shake{animation:shake .5s ease-out}@keyframes shake{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}.spinner{height:18px;width:18px}@media (max-width:480px){.login-card{border-radius:20px}.login-card h2{font-size:17px;padding:0 20px}.login-card p{font-size:12px}.login-logo{font-size:48px}.input-group{margin:8px 20px}.admin-notice{font-size:11px;margin:0 20px 14px}.login-btn{font-size:14px;margin:14px 20px 0;padding:13px;width:calc(100% - 40px)}.login-footer{font-size:11px;margin:16px 20px 0}.message{margin:6px 20px}.divider{padding:0 20px}.orb1{height:250px;width:250px}.orb2{height:200px;width:200px}.orb3,.orb4{display:none}}@media (max-width:360px){.login-card h2{font-size:15px}.input-group input,.login-btn{font-size:13px}}.header{align-items:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e);border-bottom:1px solid #ffffff14;box-shadow:0 4px 30px #0000004d;color:#fff;display:flex;height:70px;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:100}.header:before{animation:gradientSlide 3s linear infinite;background:linear-gradient(90deg,#667eea,#f093fb,#48bb78,#ed8936,#667eea);background-size:300% 100%;bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.header-left{align-items:center;display:flex;gap:12px}.header-pulse{animation:headerPulse 2s ease-in-out infinite;background:#48bb78;border-radius:50%;box-shadow:0 0 0 0 #48bb7866;height:10px;width:10px}@keyframes headerPulse{0%{box-shadow:0 0 0 0 #48bb7866}70%{box-shadow:0 0 0 10px #48bb7800}to{box-shadow:0 0 0 0 #48bb7800}}.header-title{font-size:18px;font-weight:700;letter-spacing:.3px}.header-right{align-items:center;display:flex;gap:16px}.header-clock{font-feature-settings:"tnum";background:#ffffff14;border:1px solid #ffffff1f;border-radius:20px;color:#fffc;font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;padding:6px 14px}.logout-btn{background:linear-gradient(135deg,#f56565,#e53e3e);border:none;border-radius:20px;box-shadow:0 4px 15px #f565654d;color:#fff;cursor:pointer;font-size:13px;font-weight:700;overflow:hidden;padding:9px 20px;position:relative;transition:all .3s ease}.logout-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .4s;width:100%}.logout-btn:hover{box-shadow:0 8px 25px #f5656580;transform:translateY(-2px) scale(1.05)}.logout-btn:hover:before{left:100%}@media (max-width:600px){.header-clock{display:none}.header-title{font-size:13px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header{height:60px;padding:0 12px}.header-pulse{height:8px;width:8px}.logout-btn{font-size:12px;padding:7px 14px}}@media (max-width:380px){.header-title{font-size:12px;max-width:130px}.logout-btn{font-size:11px;padding:6px 10px}}.health-tip{align-items:center;animation:fadeInUp .5s ease-out;background:linear-gradient(135deg,#48bb7826,#48bb780d);border:1px solid #48bb7840;border-radius:12px;color:#68d391;display:flex;font-size:13px;font-weight:500;gap:10px;margin-bottom:16px;padding:12px 16px}.tip-icon{flex-shrink:0;font-size:20px}.chatbot-buttons{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-bottom:18px}.chatbot-btn{background:#667eea26;background:var(--btn-bg,#667eea26);border:1px solid #667eea4d;border:1px solid var(--btn-border,#667eea4d);border-radius:12px;box-shadow:none;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin:0;overflow:hidden;padding:13px 10px;position:relative;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.chatbot-btn:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .4s;width:100%}.chatbot-btn:hover{box-shadow:0 8px 20px #0000004d;transform:translateY(-4px) scale(1.05)}.chatbot-btn:hover:before{left:100%}.chatbot-btn.active{border-width:2px;transform:scale(.97)}.chat-loading{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:14px;color:#fff9;display:flex;font-size:14px;gap:12px;padding:16px 20px}.typing-dots{display:flex;gap:5px}.typing-dots span{animation:typingBounce 1.2s ease-in-out infinite;background:#667eea;border-radius:50%;height:8px;width:8px}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.chat-reply{animation:replyIn .4s ease-out;background:#ffffff0a;border:1px solid #ffffff1a;border-left:3px solid #667eea;border-left:3px solid var(--reply-color,#667eea);border-radius:14px;padding:18px 20px}@keyframes replyIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-reply-header{align-items:center;display:flex;gap:12px;margin-bottom:14px}.chat-reply-icon{font-size:32px}.chat-reply-title{color:#fff;font-size:16px;font-weight:700}.chat-reply-sub{color:#fff6;font-size:12px}.chat-tips{list-style:none;margin:0 0 12px;padding:0}.chat-tips li{align-items:flex-start;animation:tipIn .4s ease-out both;border-bottom:1px solid #ffffff0d;color:#fffc;display:flex;font-size:13px;gap:8px;padding:5px 0}.chat-tips li:last-child{border-bottom:none}@keyframes tipIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.tip-bullet{color:#667eea;color:var(--reply-color,#667eea);flex-shrink:0;font-weight:700}.chat-warn{background:#ed89361a;border-radius:8px;color:#f6ad55;font-size:12px;font-weight:600;margin-bottom:8px;padding:8px 12px}.chat-disclaimer{color:#ffffff4d;font-size:11px;font-style:italic}@media (max-width:480px){.chatbot-buttons{gap:8px;grid-template-columns:repeat(2,1fr)}.chatbot-btn{font-size:12px;padding:11px 8px}.chatbot-btn:hover{transform:none}.chat-reply{padding:14px}.chat-reply-icon{font-size:24px}.chat-reply-title{font-size:14px}.chat-tips li,.health-tip{font-size:12px}}.toast-container{bottom:24px;display:flex;flex-direction:column;gap:10px;position:fixed;right:24px;z-index:9999}.toast{align-items:center;animation:toastIn .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:14px;box-shadow:0 10px 40px #00000040;cursor:pointer;display:flex;gap:10px;max-width:380px;min-width:280px;overflow:hidden;padding:14px 18px;position:relative}@keyframes toastIn{0%{opacity:0;transform:translateX(100px) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}.toast-success{background:#16a34aeb}.toast-error,.toast-success{border:1px solid #fff3;color:#fff}.toast-error{background:#dc2626eb}.toast-info{background:#2563ebeb;border:1px solid #fff3;color:#fff}.toast-icon{flex-shrink:0;font-size:18px}.toast-msg{flex:1 1;font-size:14px;font-weight:600}.toast-bar{animation:toastBar linear forwards;background:#ffffff80;border-radius:0 0 14px 14px;bottom:0;height:3px;left:0;position:absolute;width:100%}@keyframes toastBar{0%{width:100%}to{width:0}}@media (max-width:480px){.toast-container{bottom:12px;left:12px;right:12px}.toast{max-width:100%;min-width:0;min-width:auto;padding:12px 14px}.toast,.toast-msg{font-size:13px}}.bg{background:linear-gradient(135deg,#0f0c29,#302b63 50%,#24243e);background-attachment:fixed;min-height:100vh;position:relative}.bg:before{background:radial-gradient(circle at 15% 85%,#667eea26 0,#0000 45%),radial-gradient(circle at 85% 15%,#f093fb1f 0,#0000 45%),radial-gradient(circle at 50% 50%,#48bb780f 0,#0000 60%);content:"";inset:0;pointer-events:none;position:fixed;z-index:0}.dashboard{margin:0 auto;max-width:1280px;padding:30px;z-index:1}.card,.dashboard{position:relative}.card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000004d,inset 0 1px 0 #ffffff1a;margin:20px 0;overflow:hidden;padding:28px;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.card:before{animation:gradientSlide 4s linear infinite;background:linear-gradient(90deg,#667eea,#f093fb,#48bb78);background-size:200% 100%;content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.card:hover:before{opacity:1}.card:hover{border-color:#667eea4d;box-shadow:0 20px 60px #0006,0 0 30px #667eea1a;transform:translateY(-8px)}.card h3{align-items:center;border-bottom:1px solid #ffffff1a;color:#fff;display:flex;font-size:18px;font-weight:700;gap:10px;margin-bottom:20px;padding-bottom:12px}.card-anim{animation:fadeInUp .6s ease-out both}.card-anim:first-child{animation-delay:.05s}.card-anim:nth-child(2){animation-delay:.1s}.card-anim:nth-child(3){animation-delay:.15s}.card-anim:nth-child(4){animation-delay:.2s}.card-anim:nth-child(5){animation-delay:.25s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}input,select{background:#ffffff0f;border:1.5px solid #ffffff1f;border-radius:12px;box-sizing:border-box;color:#fff;font-size:14px;margin:7px 0;padding:13px 16px;transition:all .3s ease;width:100%}input::placeholder{color:#ffffff59}select option{background:#302b63;color:#fff}input:focus,select:focus{background:#667eea1f;border-color:#667eea;box-shadow:0 0 0 3px #667eea33,0 4px 15px #667eea26;outline:none;transform:translateY(-2px)}.btn,button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:inline-block;font-size:14px;font-weight:700;letter-spacing:.3px;margin:4px;overflow:hidden;padding:12px 22px;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.btn:after,button:after{background:#ffffff40;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .5s,height .5s;width:0}.btn:active:after,button:active:after{height:200px;width:200px}.btn:before,button:before{background:linear-gradient(90deg,#0000,#ffffff26,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .4s;width:100%}.btn:hover,button:hover{box-shadow:0 12px 30px #667eea73;transform:translateY(-3px) scale(1.04)}.btn:hover:before,button:hover:before{left:100%}button:active{transform:scale(.97)}.btn-approve{background:linear-gradient(135deg,#48bb78,#38a169);border-radius:8px;box-shadow:0 4px 12px #48bb784d;font-size:12px;padding:7px 14px}.btn-approve:hover{box-shadow:0 8px 25px #48bb7880}.btn-reject{background:linear-gradient(135deg,#f56565,#e53e3e);border-radius:8px;box-shadow:0 4px 12px #f565654d;font-size:12px;padding:7px 14px}.btn-reject:hover{box-shadow:0 8px 25px #f5656580}.btn-edit{background:linear-gradient(135deg,#4299e1,#3182ce);border-radius:8px;box-shadow:0 4px 12px #4299e14d;font-size:12px;padding:7px 14px}.btn-green{background:linear-gradient(135deg,#48bb78,#38a169);box-shadow:0 4px 15px #48bb784d}.analytics-section{margin-bottom:30px}.section-title{color:#fff;font-size:24px;font-weight:800;letter-spacing:.5px;margin-bottom:22px;text-align:center;text-shadow:0 0 30px #667eea80}.analytics-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.analytics-card{animation:cardPop .6s cubic-bezier(.175,.885,.32,1.275) both;border-radius:20px;box-shadow:0 10px 30px #0000004d,inset 0 1px 0 #ffffff26;color:#fff;cursor:default;overflow:hidden;padding:26px;position:relative;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.analytics-card:first-child{animation-delay:.1s}.analytics-card:nth-child(2){animation-delay:.2s}.analytics-card:nth-child(3){animation-delay:.3s}.analytics-card:nth-child(4){animation-delay:.4s}@keyframes cardPop{0%{opacity:0;transform:scale(.7) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.analytics-card:before{background:linear-gradient(135deg,#ffffff1a,#0000 60%);content:"";inset:0;pointer-events:none;position:absolute}.analytics-card:after{background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:100%;position:absolute;right:-50%;top:-50%;transform:translateX(100%);transition:transform .5s;width:100%}.analytics-card:hover{box-shadow:0 25px 60px #0006;transform:translateY(-12px) scale(1.05)}.analytics-card:hover:after{transform:translateX(0)}.card-icon{animation:iconFloat 3s ease-in-out infinite;font-size:32px;margin-bottom:8px}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.analytics-card h3{border:none;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;opacity:.85;padding:0;text-transform:uppercase}.number{font-size:44px;font-weight:900;line-height:1}.action-section{margin-bottom:30px}.action-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.action-card{animation:fadeInUp .6s ease-out both;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0003;cursor:pointer;overflow:hidden;padding:30px;position:relative;text-align:center;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.action-card:before{background:linear-gradient(135deg,#667eea1a,#f093fb0d);content:"";inset:0;opacity:0;position:absolute;transition:opacity .3s}.action-card:hover{border-color:#667eea66;box-shadow:0 25px 60px #00000059,0 0 30px #667eea26;transform:translateY(-12px) scale(1.03)}.action-card:hover:before{opacity:1}.action-icon{display:block;font-size:46px;margin-bottom:14px;transition:transform .3s}.action-card:hover .action-icon{transform:scale(1.2) rotate(10deg)}.action-card h3{color:#fff;font-size:17px;font-weight:700;margin-bottom:8px;transition:color .3s}.action-card:hover h3{color:#a78bfa}.action-card p{color:#ffffff80;font-size:13px}.table-wrap{border-radius:12px;overflow-x:auto}.appointments-table{border-collapse:collapse;margin-top:10px;width:100%}.appointments-table th{background:#ffffff14;border-bottom:1px solid #ffffff14;color:#ffffffb3;font-size:12px;font-weight:700;letter-spacing:.8px;padding:13px 16px;text-align:left;text-transform:uppercase}.appointments-table td{border-bottom:1px solid #ffffff0d;color:#fffc;font-size:14px;padding:13px 16px;text-align:left}.appointments-table tbody tr,.appointments-table td{transition:all .25s ease}.appointments-table tbody tr:hover td{background:#667eea14;color:#fff}.appointments-table tbody tr:hover{transform:translateX(4px)}.appointments-table tbody tr:last-child td{border-bottom:none}.status-badge{border-radius:20px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.8px;padding:5px 13px;text-transform:uppercase}.status-pending{background:#ed893633;border:1px solid #ed89364d;color:#f6ad55}.status-approved{background:#48bb7833;border:1px solid #48bb784d;color:#68d391}.status-rejected{background:#f5656533;border:1px solid #f565654d;color:#fc8181}.id-badge{background:#667eea33;border:1px solid #667eea4d;border-radius:8px;color:#a78bfa;font-size:12px;font-weight:600;padding:4px 10px}.badge-anon{background:#f093fb26;border:1px solid #f093fb40;border-radius:8px;color:#e879f9;font-size:11px;font-weight:700;margin-left:8px;padding:4px 10px}.message{animation:slideIn .3s ease-out;border-radius:12px;font-size:13px;font-weight:600;margin:10px 0;padding:12px 16px}.message.success{background:#48bb7826;border:1px solid #48bb784d;color:#68d391}.message.error{background:#f5656526;border:1px solid #f565654d;color:#fc8181}@keyframes slideIn{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}.sub-text{color:#ffffff80;font-size:14px;margin-bottom:14px}.warn-text{background:#ed89361a;border-left:3px solid #ed8936;border-radius:10px;color:#f6ad55;font-size:13px;font-weight:600;margin-bottom:16px;padding:10px 14px}.empty-msg{color:#ffffff4d;font-size:15px;padding:40px;text-align:center}.total-display{background:#48bb7826;border:1px solid #48bb784d;border-radius:10px;color:#68d391;font-size:16px;font-weight:700;margin:8px 0;padding:12px 16px}.loading-screen{align-items:center;background:linear-gradient(135deg,#0f0c29,#302b63);color:#fffc;display:flex;flex-direction:column;font-size:20px;gap:20px;justify-content:center;min-height:100vh}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #667eea33;border-radius:50%;border-top-color:#667eea;height:50px;width:50px}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;vertical-align:middle;width:16px}@media (max-width:1024px){.dashboard{padding:20px}.action-grid,.analytics-grid{grid-template-columns:repeat(2,1fr)}.number{font-size:38px}}@media (max-width:768px){.dashboard{padding:12px}.analytics-grid{gap:10px;grid-template-columns:repeat(2,1fr)}.action-grid{gap:12px;grid-template-columns:1fr}.section-title{font-size:17px;margin-bottom:14px}.number{font-size:32px}.card{border-radius:16px;margin:12px 0;padding:18px}.card h3{font-size:15px;margin-bottom:14px}.card:hover{transform:none}.analytics-card{border-radius:16px;padding:18px 12px}.analytics-card:hover{transform:none}.card-icon{font-size:24px}.action-card{padding:22px 18px}.action-card:hover{transform:none}.action-icon{font-size:36px;margin-bottom:10px}.action-card h3{font-size:15px}input,select{border-radius:10px;font-size:14px;padding:12px 14px}.btn,button{border-radius:10px;font-size:13px;padding:11px 18px}.btn:hover,button:hover{transform:none}.btn-approve,.btn-edit,.btn-reject{font-size:11px;padding:7px 10px}.appointments-table th{font-size:10px;padding:10px}.appointments-table td{font-size:12px;padding:10px}.appointments-table tbody tr:hover{transform:none}.id-badge{font-size:10px;padding:3px 7px}.status-badge{font-size:9px;padding:4px 8px}.empty-msg{font-size:13px;padding:24px}.total-display{font-size:14px}.warn-text{font-size:12px}.sub-text{font-size:13px}}@media (max-width:480px){.dashboard{padding:10px}.analytics-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.analytics-card{padding:14px 10px}.number{font-size:28px}.card-icon{font-size:20px;margin-bottom:4px}.analytics-card h3{font-size:10px}.card{margin:10px 0;padding:14px}.card h3{font-size:14px}.section-title{font-size:15px}.table-wrap{border-radius:0;margin:0 -14px}.appointments-table td,.appointments-table th{padding:8px}.btn,button{margin:4px 0;width:100%}.btn-approve,.btn-edit,.btn-reject{margin:2px;width:auto}}.modal-overlay{align-items:center;animation:overlayIn .2s ease-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:modalPop .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:#1e1b4bf2;border:1px solid #ffffff1f;border-radius:24px;box-shadow:0 30px 80px #00000080,inset 0 1px 0 #ffffff1a;max-width:500px;overflow:hidden;padding:0;width:100%}@keyframes modalPop{0%{opacity:0;transform:scale(.7) translateY(30px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-top-bar{animation:gradientSlide 3s linear infinite;background:linear-gradient(90deg,#667eea,#f093fb,#48bb78);background-size:200% 100%;height:4px}@keyframes gradientSlide{0%{background-position:0 0}to{background-position:200% 0}}.modal-body{padding:28px 30px 30px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:22px}.modal-header h3{color:#fff;font-size:18px;font-weight:800}.modal-close{align-items:center;background:#ffffff14;border:1px solid #ffffff1a;border-radius:50%;box-shadow:none;color:#ffffff80;cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;line-height:1;margin:0;padding:0;transition:all .2s;width:32px}.modal-close:hover{background:#f5656533;border-color:#f565654d;box-shadow:none;color:#fc8181;transform:rotate(90deg) scale(1.1)}@media (max-width:480px){.modal-overlay{align-items:flex-end;padding:12px}.modal-content{border-radius:20px 20px 16px 16px;max-width:100%}.modal-body{padding:20px 18px 24px}.modal-header h3{font-size:15px}}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;color:#fff;font-family:Segoe UI,system-ui,-apple-system,sans-serif;touch-action:manipulation}input,select,textarea{font-size:16px}button,input,select,textarea{touch-action:manipulation}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#667eea80;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#667eeacc}
/*# sourceMappingURL=main.7f7b2664.css.map*/