/*
Theme Name: MediCare Hospital Pro Clean
Author: ChatGPT
Description: Clean hospital WordPress theme with built-in doctor registration, admin approval, doctor schedule, appointment serial, patient dashboard, doctor dashboard, printable slip and Redux-style theme settings.
Version: 5.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: medicare-hospital-pro-clean
*/
:root{--hmp-primary:#075de8;--hmp-secondary:#08a06b;--hmp-danger:#ef2f2f;--hmp-dark:#082052;--hmp-text:#1c2b4a;--hmp-muted:#66718a;--hmp-bg:#eef7ff;--hmp-font:Arial,sans-serif;--hmp-heading-size:44px;--hmp-body-size:16px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--hmp-font);font-size:var(--hmp-body-size);color:var(--hmp-text);background:linear-gradient(180deg,#f7fbff,var(--hmp-bg) 55%,#fff);overflow-x:hidden}a{text-decoration:none;color:inherit}.hmp-glass{background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.75);box-shadow:0 22px 55px rgba(7,93,232,.14);backdrop-filter:blur(18px)}.hmp-header{position:sticky;top:0;z-index:999;display:flex;align-items:center;justify-content:space-between;padding:16px 5%}.hmp-brand{display:flex;gap:12px;align-items:center}.hmp-logo-icon{width:52px;height:52px;border:3px solid var(--hmp-primary);color:var(--hmp-secondary);border-radius:16px;display:grid;place-items:center;font-size:26px;font-weight:900}.hmp-brand h2{color:var(--hmp-primary);line-height:1;font-size:24px}.hmp-brand p{font-size:12px;color:var(--hmp-secondary);font-weight:700}.hmp-nav{display:flex;gap:22px;font-weight:700;font-size:14px}.hmp-nav a{color:#0b2354}.hmp-actions{display:flex;gap:10px;align-items:center}.hmp-btn,.hmp-login-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:13px 18px;background:linear-gradient(135deg,var(--hmp-primary),#0046c7);color:#fff!important;font-weight:800;cursor:pointer;text-decoration:none}.hmp-btn.light{background:#fff;color:var(--hmp-primary)!important;border:1px solid #cfe0ff}.hmp-btn.danger{background:#fff;color:var(--hmp-danger)!important;border:1px solid rgba(239,47,47,.35)}.hmp-menu-toggle{display:none;border:0;background:var(--hmp-primary);color:#fff;border-radius:10px;padding:10px 13px}.hmp-hero{min-height:620px;display:grid;grid-template-columns:1fr 1.35fr;align-items:center;gap:30px;padding:55px 5% 35px}.hmp-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.hmp-badges span{background:#fff;border-radius:999px;padding:10px 14px;box-shadow:0 8px 25px rgba(0,0,0,.06);font-weight:700;font-size:13px}.hmp-hero h1{font-size:var(--hmp-heading-size);line-height:1.05;color:var(--hmp-dark);letter-spacing:-1px;margin-bottom:20px}.hmp-hero p{font-size:18px;line-height:1.7;color:#23365f;max-width:600px;margin-bottom:26px}.hmp-hero-buttons{display:flex;gap:13px;flex-wrap:wrap}.hmp-visual{perspective:1200px}.hmp-hospital-3d{position:relative;height:465px;border-radius:34px;overflow:hidden;background:linear-gradient(135deg,#dff0ff,#fff 45%,#cbe8ff);box-shadow:0 35px 90px rgba(7,93,232,.22)}.hmp-sun{position:absolute;right:8%;top:10%;width:80px;height:80px;background:#fff6a8;border-radius:50%;filter:blur(2px)}.hmp-cloud{position:absolute;width:95px;height:28px;background:#fff;border-radius:40px;opacity:.9;animation:hmpCloud 8s infinite ease-in-out}.hmp-cloud:before,.hmp-cloud:after{content:"";position:absolute;background:#fff;border-radius:50%}.hmp-cloud:before{width:45px;height:45px;left:15px;top:-24px}.hmp-cloud:after{width:55px;height:55px;right:10px;top:-32px}.hmp-cloud.a{left:20%;top:15%}.hmp-cloud.b{right:22%;top:23%;animation-delay:2s}@keyframes hmpCloud{50%{transform:translateX(25px) translateY(-8px)}}.hmp-building{position:absolute;right:10%;bottom:58px;width:560px;height:350px;transform:rotateY(-10deg) rotateX(3deg)}.hmp-building-main{position:absolute;right:70px;bottom:0;width:370px;height:330px;border-radius:8px 8px 0 0;background:linear-gradient(120deg,#f9fbff,#d8e7f6);box-shadow:25px 25px 60px rgba(0,34,90,.2);border:1px solid rgba(255,255,255,.8)}.hmp-building-side{position:absolute;right:0;bottom:0;width:160px;height:270px;background:linear-gradient(90deg,#cfe1f2,#f4f8fc);transform:skewY(-8deg);border-radius:0 10px 0 0}.hmp-cross{position:absolute;top:25px;left:50%;transform:translateX(-50%);width:70px;height:70px;border-radius:16px;background:linear-gradient(135deg,#0976ff,#0050c7);color:#fff;display:grid;place-items:center;font-size:36px}.hmp-building-main h3{position:absolute;top:105px;left:0;right:0;text-align:center;color:var(--hmp-primary);font-size:27px}.hmp-windows{position:absolute;left:45px;right:45px;top:180px;height:95px;background:linear-gradient(90deg,transparent 31%,#fff 31% 34%,transparent 34% 64%,#fff 64% 67%,transparent 67%),linear-gradient(0deg,transparent 47%,#fff 47% 52%,transparent 52%),linear-gradient(135deg,#63b9ff,#0b70ce);border-radius:8px}.hmp-entrance{position:absolute;left:95px;bottom:0;width:180px;height:45px;background:var(--hmp-danger);color:#fff;font-weight:900;display:grid;place-items:center;border-radius:10px 10px 0 0}.hmp-ambulance{position:absolute;right:25px;bottom:55px;width:180px;height:88px;animation:hmpAmb 3s infinite ease-in-out}@keyframes hmpAmb{50%{transform:translateX(-12px)}}.hmp-van{width:170px;height:62px;background:#fff;border:4px solid #dfe7f2;border-radius:18px 22px 12px 12px;color:var(--hmp-danger);font-size:13px;font-weight:900;display:grid;place-items:center}.hmp-light{position:absolute;left:50px;top:-8px;width:42px;height:13px;background:var(--hmp-danger);border-radius:10px;animation:hmpFlash .8s infinite}@keyframes hmpFlash{50%{background:#0b6bff}}.hmp-wheel{position:absolute;bottom:3px;width:28px;height:28px;background:#1c2b4a;border:5px solid #77859b;border-radius:50%}.hmp-wheel.left{left:28px}.hmp-wheel.right{right:28px}.hmp-section{padding:35px 5%}.hmp-section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.hmp-section-head h2{font-size:28px;color:var(--hmp-dark)}.hmp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.hmp-card{background:#fff;border:1px solid #e7eff8;border-radius:22px;padding:20px;box-shadow:0 14px 35px rgba(8,32,82,.07);transition:.25s}.hmp-card:hover{transform:translateY(-7px);box-shadow:0 24px 55px rgba(7,93,232,.16)}.hmp-icon{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;margin:0 auto 12px;background:linear-gradient(135deg,#eef7ff,#fff);font-size:40px}.hmp-card h3{color:var(--hmp-dark);margin-bottom:7px}.hmp-card p{color:var(--hmp-muted);line-height:1.5}.hmp-quick{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;padding:0 5% 28px}.hmp-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hmp-form input,.hmp-form select,.hmp-form textarea,.hmp-chat textarea{width:100%;border:1px solid #dce7f6;border-radius:12px;padding:13px;background:#fff}.hmp-form textarea,.hmp-form button,.hmp-form .full{grid-column:1/-1}.hmp-form button{border:0;border-radius:12px;background:linear-gradient(135deg,var(--hmp-primary),#0046c7);color:#fff;font-weight:800;padding:14px}.hmp-emergency{background:linear-gradient(135deg,#9d1018,#ff4b36);color:#fff;border-radius:24px;padding:24px;box-shadow:0 25px 60px rgba(239,47,47,.23)}.hmp-emergency li{list-style:none;margin:9px 0}.hmp-emergency li:before{content:"✓ ";font-weight:900}.hmp-stats{margin:30px 5%;padding:25px;border-radius:22px;background:linear-gradient(135deg,#003caa,#066cff);display:grid;grid-template-columns:repeat(4,1fr);gap:10px;color:#fff;text-align:center}.hmp-stats h2{font-size:34px}.hmp-footer{background:#062154;color:#fff;margin-top:30px;padding:42px 5%;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:28px}.hmp-footer a,.hmp-footer p{display:block;color:#d9e7ff;margin:8px 0;line-height:1.6}.hmp-page{padding:45px 5%;max-width:1150px;margin:auto}.hmp-page h1{font-size:40px;color:var(--hmp-dark);margin-bottom:15px}.hmp-dashboard-card{background:#fff;border:1px solid #e1edff;border-radius:20px;padding:20px;margin:15px 0;box-shadow:0 12px 35px rgba(7,93,232,.1)}.hmp-dashboard-card h3{color:var(--hmp-primary);font-size:26px}.hmp-chat{background:#f7fbff;border-radius:14px;padding:12px;margin-top:12px}.hmp-chat p{background:#fff;padding:8px;border-radius:8px}.hmp-modal{position:fixed;inset:0;background:rgba(5,20,50,.55);z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}.hmp-modal.open{display:flex}.hmp-login-panel{width:min(980px,96vw);background:#fff;border-radius:28px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.25);position:relative}.hmp-close{position:absolute;right:18px;top:16px;background:var(--hmp-danger);color:#fff;border:0;border-radius:50%;width:34px;height:34px;font-weight:bold}.hmp-login-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.hmp-login-card{background:linear-gradient(135deg,#f7fbff,#fff);border:1px solid #dce7f6;border-radius:22px;padding:22px}.hmp-login-card h2{color:var(--hmp-dark);margin-bottom:10px}.hmp-login-card input{width:100%;margin:8px 0;border:1px solid #dce7f6;border-radius:12px;padding:13px}.hmp-login-card button{width:100%;border:0;border-radius:12px;background:linear-gradient(135deg,var(--hmp-primary),#0046c7);color:#fff;font-weight:bold;padding:13px}.hmp-error{background:#fee2e2;color:#991b1b;padding:10px;border-radius:10px;margin:8px 0}.hmp-success{background:#dcfce7;color:#166534;padding:12px;border-radius:12px;margin:10px 0}.hmp-table{width:100%;border-collapse:collapse;background:#fff}.hmp-table th,.hmp-table td{padding:11px;border-bottom:1px solid #e5e7eb;text-align:left}.hmp-badge{display:inline-block;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:4px 9px;font-weight:700;font-size:12px}@media(max-width:950px){.hmp-nav{display:none;position:absolute;top:82px;left:5%;right:5%;background:#fff;border-radius:20px;padding:20px;flex-direction:column}.hmp-nav.open{display:flex}.hmp-menu-toggle{display:block}.hmp-hero,.hmp-quick,.hmp-login-grid{grid-template-columns:1fr}.hmp-grid{grid-template-columns:repeat(2,1fr)}.hmp-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.hmp-grid,.hmp-stats,.hmp-form,.hmp-footer{grid-template-columns:1fr}.hmp-hero h1{font-size:38px}.hmp-hospital-3d{height:340px}.hmp-building{right:-50px;transform:scale(.72)}}


/* v1.1 full homepage sections restored */
.hmp-why{display:grid;grid-template-columns:1fr;gap:12px;background:#fff;border:1px solid #e7eff8;border-radius:24px;padding:24px;box-shadow:0 14px 35px rgba(8,32,82,.07)}
.hmp-why h2{color:var(--hmp-dark);margin-bottom:8px}.hmp-why li{list-style:none;margin:10px 0;font-weight:700;color:#22345c}.hmp-why li:before{content:"✚";color:var(--hmp-primary);margin-right:9px}
.hmp-quick{grid-template-columns:1.08fr .86fr .9fr}
.hmp-doctor-avatar{width:130px;height:130px;border-radius:28px;background:linear-gradient(180deg,#eef7ff,#fff);display:grid;place-items:center;font-size:65px;margin:0 auto 14px;box-shadow:inset 0 -20px 30px rgba(7,93,232,.08)}
.hmp-split{display:grid;grid-template-columns:1.15fr .85fr 1.15fr;gap:22px}.hmp-facilities,.hmp-testimonial,.hmp-news,.hmp-insurance,.hmp-contact-card{border-radius:24px;padding:24px}.hmp-facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hmp-facility-grid div{background:#fff;border-radius:16px;padding:18px;text-align:center;box-shadow:0 8px 24px rgba(0,0,0,.05);display:grid;gap:8px;font-size:28px}.hmp-facility-grid b{font-size:13px;color:var(--hmp-dark)}.hmp-stars{color:#ffa500;font-size:22px;margin:10px 0}.hmp-news article{background:#fff;margin-top:12px;padding:15px;border-radius:16px}.hmp-news span{color:var(--hmp-primary);font-size:12px;font-weight:800}.hmp-news h3{font-size:16px;margin:5px 0;color:var(--hmp-dark)}.hmp-news p,.hmp-testimonial p{color:var(--hmp-muted);line-height:1.7}.hmp-bottom-info{display:grid;grid-template-columns:1fr 1fr;gap:22px}.hmp-payment-list{display:flex;flex-wrap:wrap;gap:14px;margin-top:16px}.hmp-payment-list span{background:#fff;border-radius:999px;padding:10px 14px;font-weight:700}.hmp-contact-card p{margin:10px 0;color:#344466}.hmp-home-cta{margin:30px 5%;border-radius:28px;padding:30px;background:linear-gradient(135deg,#003caa,#066cff);color:#fff;display:grid;grid-template-columns:1.3fr .7fr;gap:20px;align-items:center;box-shadow:0 25px 70px rgba(7,93,232,.25)}.hmp-home-cta h2{font-size:34px}.hmp-home-cta p{opacity:.9;line-height:1.7}.hmp-home-cta .hmp-btn{background:#fff;color:#075de8!important}
@media(max-width:950px){.hmp-quick,.hmp-split,.hmp-bottom-info,.hmp-home-cta{grid-template-columns:1fr}.hmp-facility-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hmp-facility-grid{grid-template-columns:1fr}}


/* v1.3 admin editable design additions */
.hmp-route-wrap{padding:45px 5%;max-width:1180px;margin:auto}
.hmp-route-wrap h1{font-size:42px;color:var(--hmp-dark);margin-bottom:18px}
.hmp-route-card{background:#fff;border:1px solid #e1edff;border-radius:24px;padding:24px;margin:18px 0;box-shadow:0 20px 50px rgba(7,93,232,.12)}
.hmp-admin-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.hmp-admin-tabs a{padding:10px 14px;background:#fff;border:1px solid #ccdfff;border-radius:10px;text-decoration:none;font-weight:700}
.hmp-setting-grid{display:grid;grid-template-columns:220px 1fr;gap:10px;align-items:center;max-width:900px}
.hmp-setting-grid input,.hmp-setting-grid textarea,.hmp-setting-grid select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px}
.hmp-setting-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;margin:18px 0}
.hmp-setting-section h2{margin-top:0;color:#082052}
.hmp-login-submenu{position:relative;display:inline-flex}
.hmp-login-submenu-menu{display:none;position:absolute;right:0;top:100%;background:#fff;border:1px solid #dbeafe;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.14);padding:10px;min-width:190px;z-index:9999}
.hmp-login-submenu:hover .hmp-login-submenu-menu{display:block}
.hmp-login-submenu-menu a{display:block;padding:10px;border-radius:10px;color:#082052;font-weight:800}
.hmp-login-submenu-menu a:hover{background:#eef7ff}
@media(max-width:700px){.hmp-setting-grid{grid-template-columns:1fr}.hmp-login-submenu-menu{left:0;right:auto}}


/* HMP v1.4 Professional Dashboard */
.hmp-pro-dashboard{padding:45px 5%;max-width:1260px;margin:auto}
.hmp-pro-title{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:22px}
.hmp-pro-title h1{font-size:42px;color:var(--hmp-dark);margin:0}
.hmp-pro-title p{color:#64748b;font-size:16px;margin:6px 0 0}
.hmp-pro-pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #dbeafe;color:#075de8;border-radius:999px;padding:10px 14px;font-weight:800;box-shadow:0 8px 25px rgba(7,93,232,.08)}
.hmp-pro-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:20px 0}
.hmp-pro-stat{position:relative;overflow:hidden;background:linear-gradient(135deg,#fff,#f7fbff);border:1px solid #e1edff;border-radius:22px;padding:20px;box-shadow:0 18px 45px rgba(7,93,232,.1)}
.hmp-pro-stat:after{content:"";position:absolute;right:-25px;bottom:-25px;width:90px;height:90px;background:rgba(7,93,232,.08);border-radius:50%}
.hmp-pro-stat .icon{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,#075de8,#0046c7);color:#fff;display:grid;place-items:center;font-size:22px;margin-bottom:14px}
.hmp-pro-stat h2{font-size:34px;color:#082052;margin:0}
.hmp-pro-stat p{margin:4px 0 0;color:#64748b;font-weight:700}
.hmp-pro-layout{display:grid;grid-template-columns:1fr 360px;gap:18px;align-items:start}
.hmp-pro-card{background:rgba(255,255,255,.92);border:1px solid #e1edff;border-radius:24px;padding:22px;box-shadow:0 18px 50px rgba(7,93,232,.1);margin-bottom:18px}
.hmp-pro-card h2{font-size:24px;color:#082052;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.hmp-pro-table{width:100%;border-collapse:separate;border-spacing:0 10px}
.hmp-pro-table th{text-align:left;color:#64748b;font-size:13px;padding:8px 10px}
.hmp-pro-table td{background:#fff;border-top:1px solid #e8f1ff;border-bottom:1px solid #e8f1ff;padding:14px 10px;vertical-align:middle}
.hmp-pro-table td:first-child{border-left:1px solid #e8f1ff;border-radius:16px 0 0 16px}
.hmp-pro-table td:last-child{border-right:1px solid #e8f1ff;border-radius:0 16px 16px 0}
.hmp-serial-big{font-size:28px;font-weight:900;color:#075de8}
.hmp-status{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900;background:#fef3c7;color:#92400e}
.hmp-status.completed{background:#dcfce7;color:#166534}
.hmp-status.approved{background:#dbeafe;color:#1d4ed8}
.hmp-status.cancelled{background:#fee2e2;color:#991b1b}
.hmp-action-row{display:flex;gap:8px;flex-wrap:wrap}
.hmp-mini-btn{border:0;border-radius:12px;padding:9px 12px;background:#075de8;color:#fff!important;font-weight:900;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.hmp-mini-btn.green{background:#16a34a}
.hmp-mini-btn.red{background:#dc2626}
.hmp-mini-btn.light{background:#eef7ff;color:#075de8!important;border:1px solid #cfe3ff}
.hmp-message-badge{position:relative;display:inline-flex;align-items:center;gap:8px}
.hmp-count-bubble{background:#ef2f2f;color:#fff;border-radius:999px;min-width:22px;height:22px;display:inline-grid;place-items:center;font-size:12px;font-weight:900}
.hmp-support-list{display:grid;gap:12px}
.hmp-support-item{background:#fff;border:1px solid #e8f1ff;border-radius:16px;padding:14px}
.hmp-support-item b{color:#082052}
.hmp-chat-modern{background:#f8fbff;border:1px solid #e1edff;border-radius:18px;padding:14px;margin-top:14px}
.hmp-chat-modern h4{display:flex;align-items:center;gap:8px;color:#082052;margin-bottom:10px}
.hmp-chat-line{display:flex;margin:8px 0}
.hmp-chat-line.patient{justify-content:flex-start}
.hmp-chat-line.doctor{justify-content:flex-end}
.hmp-chat-bubble{max-width:72%;padding:10px 12px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;color:#0f172a}
.hmp-chat-line.doctor .hmp-chat-bubble{background:#075de8;color:#fff;border-color:#075de8}
.hmp-patient-grid{display:grid;grid-template-columns:1fr 330px;gap:18px}
.hmp-patient-main-card{background:#fff;border:1px solid #e1edff;border-radius:26px;padding:22px;box-shadow:0 18px 50px rgba(7,93,232,.1);margin-bottom:18px}
.hmp-patient-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;border-bottom:1px solid #e8f1ff;padding-bottom:16px;margin-bottom:16px}
.hmp-patient-serial{font-size:38px;font-weight:900;color:#075de8;line-height:1}
.hmp-current-chip{background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:7px 11px;font-weight:900;font-size:13px}
.hmp-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.hmp-info-box{background:#f8fbff;border:1px solid #e8f1ff;border-radius:16px;padding:12px}
.hmp-info-box span{display:block;color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase;margin-bottom:4px}
.hmp-info-box b{color:#082052}
.hmp-side-widget{background:#fff;border:1px solid #e1edff;border-radius:24px;padding:20px;box-shadow:0 18px 50px rgba(7,93,232,.1);margin-bottom:18px}
.hmp-side-widget h3{color:#082052;margin-bottom:12px}
.hmp-notice-smart{background:linear-gradient(135deg,#dcfce7,#f0fdf4);border:1px solid #bbf7d0;color:#166534;border-radius:18px;padding:14px;font-weight:800;margin:10px 0 18px}
@media(max-width:1000px){.hmp-pro-layout,.hmp-patient-grid{grid-template-columns:1fr}.hmp-pro-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.hmp-pro-stats,.hmp-info-grid{grid-template-columns:1fr}.hmp-pro-dashboard{padding:30px 4%}.hmp-pro-table{font-size:13px}.hmp-pro-table th:nth-child(4),.hmp-pro-table td:nth-child(4){display:none}}


/* HMP v1.5 Queue Status + Premium Hospital UI */
:root{
  --hmp-primary:#005bea;
  --hmp-primary-2:#00a6fb;
  --hmp-success:#12b76a;
  --hmp-warning:#f59e0b;
  --hmp-soft:#f4f9ff;
  --hmp-line:#d9e9ff;
}
body{letter-spacing:-.01em}
.hmp-pro-title h1,.hmp-page h1,.hmp-route-wrap h1{letter-spacing:-1.4px}
.hmp-btn,.hmp-login-btn,.hmp-mini-btn,.hmp-form button{
  border-radius:14px!important;
  min-height:44px;
  padding:12px 18px!important;
  background:linear-gradient(135deg,var(--hmp-primary),var(--hmp-primary-2))!important;
  box-shadow:0 12px 26px rgba(0,91,234,.22);
  transition:.22s ease;
}
.hmp-btn:hover,.hmp-login-btn:hover,.hmp-mini-btn:hover,.hmp-form button:hover{transform:translateY(-2px);box-shadow:0 16px 35px rgba(0,91,234,.28)}
.hmp-mini-btn.light,.hmp-btn.light{
  background:#ffffff!important;
  color:#005bea!important;
  border:1px solid #bcd8ff!important;
  box-shadow:0 8px 20px rgba(0,91,234,.08);
}
.hmp-mini-btn.green{background:linear-gradient(135deg,#12b76a,#039855)!important}
.hmp-pro-dashboard{
  background:
    radial-gradient(circle at top left, rgba(0,91,234,.08), transparent 28%),
    radial-gradient(circle at bottom right, rgba(18,183,106,.08), transparent 32%);
}
.hmp-patient-main-card,.hmp-pro-card,.hmp-side-widget,.hmp-dashboard-card{
  border-color:#d9e9ff!important;
  box-shadow:0 22px 60px rgba(0,72,180,.10)!important;
}
.hmp-patient-head{
  background:linear-gradient(135deg,#f7fbff,#ffffff);
  border:1px solid #e1efff;
  border-radius:22px;
  padding:18px!important;
}
.hmp-patient-serial{
  background:linear-gradient(135deg,#005bea,#00a6fb);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
}
.hmp-queue-status{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:12px;
  padding:14px 16px;
  border-radius:18px;
  font-weight:900;
  border:1px solid #d9e9ff;
}
.hmp-queue-status .q-icon{
  width:42px;
  height:42px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:20px;
  flex:0 0 auto;
}
.hmp-queue-status .q-title{display:block;font-size:17px;color:#082052;line-height:1.2}
.hmp-queue-status .q-sub{display:block;font-size:13px;color:#64748b;margin-top:3px;font-weight:700}
.hmp-queue-status.waiting{background:#f7fbff}
.hmp-queue-status.waiting .q-icon{background:linear-gradient(135deg,#005bea,#00a6fb)}
.hmp-queue-status.next{background:#fff7ed;border-color:#fed7aa}
.hmp-queue-status.next .q-icon{background:linear-gradient(135deg,#f59e0b,#f97316)}
.hmp-queue-status.running{background:#ecfdf3;border-color:#bbf7d0}
.hmp-queue-status.running .q-icon{background:linear-gradient(135deg,#12b76a,#039855)}
.hmp-queue-status.done{background:#f1f5f9;border-color:#cbd5e1}
.hmp-queue-status.done .q-icon{background:linear-gradient(135deg,#64748b,#334155)}
.hmp-info-box{
  background:linear-gradient(135deg,#fbfdff,#f6fbff)!important;
  border-color:#dcecff!important;
  min-height:76px;
}
.hmp-info-box span{color:#557098!important;letter-spacing:.02em}
.hmp-info-box b{font-size:16px}
.hmp-chat-modern textarea{
  min-height:82px;
  border-radius:16px!important;
  border-color:#cfe3ff!important;
  background:#fff!important;
  padding:14px!important;
  font-family:inherit;
}
.hmp-chat-modern form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:end;
}
.hmp-chat-modern button{height:46px}
.hmp-count-bubble{
  background:linear-gradient(135deg,#ef4444,#dc2626)!important;
  box-shadow:0 6px 18px rgba(239,68,68,.25);
}
.hmp-status{
  padding:8px 12px!important;
  min-width:92px;
  justify-content:center;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.hmp-status.pending{background:#fff3c4!important;color:#8a5a00!important}
.hmp-status.completed{background:#d9fbe8!important;color:#087443!important}
.hmp-status.approved{background:#ddecff!important;color:#0046b8!important}
.hmp-side-widget{
  background:linear-gradient(135deg,#ffffff,#f8fbff)!important;
}
.hmp-pro-stat{
  background:linear-gradient(135deg,#ffffff,#f4f9ff)!important;
  border-color:#d9e9ff!important;
}
.hmp-current-chip{
  background:linear-gradient(135deg,#e6f1ff,#dbeafe)!important;
  color:#075de8!important;
  border:1px solid #bcd8ff;
  display:inline-flex;
  gap:6px;
  align-items:center;
}
@media(max-width:620px){
  .hmp-chat-modern form{grid-template-columns:1fr}
  .hmp-patient-head{padding:14px!important}
  .hmp-queue-status{align-items:flex-start}
}


/* HMP v1.6 Mobile Layout Fix */
html, body {
  max-width: 100%;
  overflow-x: hidden !important;
}

img, iframe, table, textarea, input, select {
  max-width: 100%;
}

.hmp-header {
  width: 100%;
}

.hmp-actions {
  min-width: 0;
}

.hmp-pro-dashboard,
.hmp-route-wrap,
.hmp-page {
  width: 100%;
  overflow-x: hidden;
}

.hmp-patient-main-card,
.hmp-pro-card,
.hmp-side-widget,
.hmp-route-card,
.hmp-dashboard-card {
  max-width: 100%;
  overflow: hidden;
}

.hmp-patient-head,
.hmp-action-row,
.hmp-pro-title,
.hmp-info-grid,
.hmp-chat-modern form {
  min-width: 0;
}

.hmp-chat-modern textarea {
  width: 100% !important;
  min-width: 0 !important;
  resize: vertical;
}

@media (max-width: 768px) {
  body {
    font-size: 15px;
  }

  .hmp-header {
    padding: 10px 12px !important;
    gap: 8px;
    flex-wrap: nowrap;
    align-items: center;
  }

  .hmp-brand {
    gap: 8px !important;
    min-width: 0;
    flex: 1 1 auto;
    max-width: 42%;
  }

  .hmp-logo-icon {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    border-radius: 13px !important;
    font-size: 22px !important;
  }

  .hmp-brand h2 {
    font-size: 20px !important;
    line-height: .92 !important;
    letter-spacing: -0.5px;
    word-break: normal;
  }

  .hmp-brand p {
    font-size: 10px !important;
    line-height: 1.05 !important;
  }

  .hmp-actions {
    flex: 0 0 auto;
    gap: 6px !important;
    display: flex;
    align-items: center;
  }

  .hmp-login-btn,
  .hmp-btn,
  .hmp-mini-btn {
    min-height: 40px !important;
    padding: 9px 11px !important;
    font-size: 13px !important;
    border-radius: 12px !important;
    white-space: nowrap;
  }

  .hmp-actions .hmp-login-btn {
    max-width: 110px;
    white-space: normal;
    line-height: 1.1;
    text-align: center;
  }

  .hmp-actions .hmp-btn.danger {
    max-width: 86px;
  }

  .hmp-actions > a[href*="#appointment"],
  .hmp-actions > a[href*="doctor-appointment"] {
    display: none !important;
  }

  .hmp-menu-toggle {
    display: inline-flex !important;
    width: 40px;
    height: 40px;
    min-width: 40px;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    border-radius: 12px !important;
  }

  .hmp-nav {
    top: 70px !important;
    left: 12px !important;
    right: 12px !important;
    z-index: 9999;
  }

  .hmp-pro-dashboard {
    padding: 28px 12px !important;
  }

  .hmp-pro-title {
    display: block !important;
    margin-bottom: 16px !important;
  }

  .hmp-pro-title h1 {
    font-size: 34px !important;
    line-height: 1.1 !important;
    margin-bottom: 8px !important;
  }

  .hmp-pro-title p {
    font-size: 15px !important;
    line-height: 1.45 !important;
  }

  .hmp-pro-pill {
    margin-top: 12px;
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .hmp-patient-grid,
  .hmp-pro-layout {
    display: block !important;
  }

  .hmp-patient-main-card,
  .hmp-pro-card,
  .hmp-side-widget {
    padding: 16px !important;
    border-radius: 22px !important;
    margin-bottom: 16px !important;
  }

  .hmp-patient-head {
    display: block !important;
    padding: 14px !important;
    border-radius: 20px !important;
  }

  .hmp-patient-serial {
    font-size: 34px !important;
    line-height: 1 !important;
    margin-bottom: 8px;
  }

  .hmp-current-chip {
    font-size: 12px !important;
    padding: 7px 10px !important;
    max-width: 100%;
  }

  .hmp-action-row {
    margin-top: 12px;
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .hmp-action-row .hmp-mini-btn,
  .hmp-action-row .hmp-message-badge {
    width: auto;
    max-width: 100%;
  }

  .hmp-queue-status {
    padding: 12px !important;
    border-radius: 18px !important;
    gap: 10px !important;
  }

  .hmp-queue-status .q-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-radius: 13px !important;
    font-size: 18px !important;
  }

  .hmp-queue-status .q-title {
    font-size: 15px !important;
    line-height: 1.2 !important;
  }

  .hmp-queue-status .q-sub {
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  .hmp-info-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .hmp-info-box {
    min-height: auto !important;
    padding: 12px !important;
    border-radius: 16px !important;
  }

  .hmp-chat-modern {
    padding: 12px !important;
    border-radius: 18px !important;
  }

  .hmp-chat-modern form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .hmp-chat-modern textarea {
    min-height: 88px !important;
    display: block;
  }

  .hmp-chat-modern button {
    width: 100%;
  }

  .hmp-side-widget h3 {
    font-size: 18px !important;
  }

  .hmp-pro-stats {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  .hmp-pro-stat {
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .hmp-pro-stat h2 {
    font-size: 26px !important;
  }
}

@media (max-width: 430px) {
  .hmp-header {
    padding: 9px 8px !important;
  }

  .hmp-brand {
    max-width: 37%;
    gap: 6px !important;
  }

  .hmp-logo-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    font-size: 20px !important;
  }

  .hmp-brand h2 {
    font-size: 18px !important;
  }

  .hmp-brand p {
    font-size: 9px !important;
  }

  .hmp-actions {
    gap: 5px !important;
  }

  .hmp-login-btn,
  .hmp-btn,
  .hmp-mini-btn {
    font-size: 12px !important;
    padding: 8px 9px !important;
    min-height: 38px !important;
  }

  .hmp-actions .hmp-login-btn {
    max-width: 100px;
  }

  .hmp-actions .hmp-btn.danger {
    max-width: 76px;
  }

  .hmp-menu-toggle {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
  }

  .hmp-pro-dashboard {
    padding: 24px 10px !important;
  }

  .hmp-pro-title h1 {
    font-size: 30px !important;
  }

  .hmp-patient-main-card,
  .hmp-pro-card,
  .hmp-side-widget {
    padding: 14px !important;
  }

  .hmp-patient-serial {
    font-size: 30px !important;
  }

  .hmp-action-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .hmp-action-row .hmp-mini-btn,
  .hmp-action-row .hmp-message-badge {
    width: 100%;
    justify-content: center;
  }

  .hmp-pro-stats {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 360px) {
  .hmp-brand h2 {
    font-size: 16px !important;
  }

  .hmp-actions .hmp-login-btn {
    max-width: 88px;
    font-size: 11px !important;
  }

  .hmp-actions .hmp-btn.danger {
    max-width: 68px;
    font-size: 11px !important;
  }

  .hmp-menu-toggle {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
  }
}


/* HMP v1.7 Clean Appointment Tabs + Messenger Chat + Doctor ID Cards */
.hmp-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.hmp-tab-btn{display:inline-flex;align-items:center;gap:8px;border:1px solid #bcd8ff;background:#fff;color:#005bea;border-radius:999px;padding:11px 16px;font-weight:900;cursor:pointer;box-shadow:0 8px 22px rgba(0,91,234,.08)}.hmp-tab-btn.active{background:linear-gradient(135deg,#005bea,#00a6fb);color:#fff;border-color:transparent}.hmp-tab-panel{display:none}.hmp-tab-panel.active{display:block}.hmp-appointment-list{display:grid;gap:12px}.hmp-history-item{display:grid;grid-template-columns:80px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #e1edff;border-radius:18px;padding:14px;box-shadow:0 12px 32px rgba(0,91,234,.08)}.hmp-history-serial{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#e6f1ff,#f7fbff);border:1px solid #cfe3ff;color:#005bea;font-size:24px;font-weight:900}.hmp-history-info b{color:#082052}.hmp-history-info span{display:block;color:#64748b;font-size:13px;margin-top:3px}.hmp-msg-launch{position:relative}
.hmp-messenger-modal{position:fixed;inset:0;background:rgba(8,32,82,.45);z-index:999999;display:none;align-items:flex-end;justify-content:flex-end;padding:18px}.hmp-messenger-modal.open{display:flex}.hmp-messenger-box{width:min(390px,100%);height:min(620px,86vh);background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.28);display:flex;flex-direction:column;border:1px solid #dbeafe}.hmp-messenger-head{background:linear-gradient(135deg,#005bea,#00a6fb);color:#fff;padding:16px;display:flex;justify-content:space-between;gap:12px;align-items:center}.hmp-messenger-head b{font-size:17px}.hmp-messenger-close{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:22px;cursor:pointer}.hmp-messenger-body{flex:1;padding:14px;overflow:auto;background:#f7fbff}.hmp-msg-row{display:flex;margin:8px 0}.hmp-msg-row.patient{justify-content:flex-start}.hmp-msg-row.doctor{justify-content:flex-end}.hmp-msg-bubble{max-width:78%;padding:10px 12px;border-radius:18px;background:#fff;color:#0f172a;border:1px solid #e2e8f0;line-height:1.35}.hmp-msg-row.doctor .hmp-msg-bubble{background:#005bea;color:#fff;border-color:#005bea}.hmp-seen-text{text-align:right;color:#64748b;font-size:12px;margin-top:4px}.hmp-messenger-form{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid #e1edff;background:#fff}.hmp-messenger-form textarea{min-height:46px!important;max-height:90px;border:1px solid #cfe3ff;border-radius:16px;padding:12px;resize:none;font-family:inherit}.hmp-messenger-form button{width:48px;height:48px;border:0;border-radius:16px;background:linear-gradient(135deg,#005bea,#00a6fb);color:#fff;font-size:19px;cursor:pointer}
.hmp-doctor-id-card{position:relative;overflow:hidden;border-radius:26px!important;padding:0!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 22px 60px rgba(0,91,234,.13)!important}.hmp-doctor-id-top{height:92px;background:radial-gradient(circle at top right,rgba(255,255,255,.24),transparent 35%),linear-gradient(135deg,#005bea,#00a6fb);position:relative}.hmp-doctor-id-avatar{width:108px;height:108px;border-radius:28px;background:linear-gradient(180deg,#fff,#eef7ff);border:6px solid #fff;display:grid;place-items:center;font-size:56px;position:absolute;left:24px;top:38px;box-shadow:0 18px 35px rgba(0,91,234,.18)}.hmp-doctor-id-body{padding:66px 22px 22px}.hmp-doctor-id-body h3{font-size:24px!important;margin-bottom:4px!important;color:#082052!important}.hmp-doctor-specialty{display:inline-flex;background:#e6f1ff;color:#005bea;border:1px solid #bcd8ff;border-radius:999px;padding:6px 10px;font-weight:900;font-size:13px;margin:6px 0 12px}.hmp-doctor-meta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.hmp-doctor-meta div{background:#f8fbff;border:1px solid #e1edff;border-radius:14px;padding:10px}.hmp-doctor-meta span{display:block;font-size:11px;color:#64748b;font-weight:900;text-transform:uppercase}.hmp-doctor-meta b{display:block;color:#082052;margin-top:3px}.hmp-doctor-id-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
@media(max-width:700px){.hmp-history-item{grid-template-columns:58px 1fr}.hmp-history-item .hmp-action-row{grid-column:1/-1}.hmp-history-serial{width:52px;height:52px;border-radius:16px;font-size:20px}.hmp-messenger-modal{padding:0;align-items:flex-end}.hmp-messenger-box{width:100%;height:82vh;border-radius:24px 24px 0 0}.hmp-doctor-meta{grid-template-columns:1fr}.hmp-doctor-id-actions{grid-template-columns:1fr}}


/* HMP v1.8 Persistent Messenger + Ding */
.hmp-messenger-modal.keep-open-after-send{display:flex}
.hmp-messenger-box{position:relative}
.hmp-messenger-close{
  display:grid!important;
  place-items:center!important;
  line-height:1!important;
  font-weight:900!important;
  transition:.2s ease;
}
.hmp-messenger-close:hover{transform:rotate(90deg);background:rgba(255,255,255,.28)!important}
.hmp-msg-new-indicator{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:#fff3c4;
  color:#8a5a00;
  border:1px solid #fcd34d;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:900;
  margin-top:6px;
}
.hmp-messenger-form.sending button{opacity:.75;pointer-events:none}


/* HMP v1.9 Premium 3D Doctor Profile Cards */
.hmp-doctor-3d-card{position:relative;overflow:hidden;border-radius:30px!important;padding:0!important;background:radial-gradient(circle at top right,rgba(0,166,251,.15),transparent 35%),linear-gradient(180deg,#fff,#f7fbff)!important;border:1px solid #d9e9ff!important;box-shadow:0 28px 80px rgba(0,91,234,.14),inset 0 1px 0 rgba(255,255,255,.9)!important;transform-style:preserve-3d}
.hmp-doctor-3d-card:before{content:"";position:absolute;inset:0 0 auto 0;height:118px;background:radial-gradient(circle at 84% 10%,rgba(255,255,255,.4),transparent 22%),linear-gradient(135deg,#005bea,#00a6fb);z-index:0}
.hmp-doctor-3d-card:after{content:"✚";position:absolute;top:22px;right:24px;color:rgba(255,255,255,.35);font-size:44px;font-weight:900;z-index:1}
.hmp-doctor-3d-inner{position:relative;z-index:2;padding:32px 24px 24px;text-align:center}
.hmp-doctor-photo-wrap{width:142px;height:142px;margin:28px auto 16px;border-radius:36px;padding:7px;background:linear-gradient(135deg,#fff,#dcecff);box-shadow:0 22px 40px rgba(0,91,234,.20),inset 0 1px 0 rgba(255,255,255,.95);transform:translateZ(30px)}
.hmp-doctor-photo{width:100%;height:100%;border-radius:30px;background:radial-gradient(circle at top,#fff,#eaf4ff);display:grid;place-items:center;font-size:76px;overflow:hidden;border:1px solid #d9e9ff}
.hmp-doctor-photo img{width:100%;height:100%;object-fit:cover;display:block}
.hmp-doctor-name{font-size:26px!important;line-height:1.1!important;color:#082052!important;margin:8px 0 6px!important;letter-spacing:-.5px}
.hmp-doctor-degree{display:block;color:#526987;font-weight:800;font-size:14px;margin-bottom:8px}
.hmp-doctor-specialist{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#e6f1ff,#f7fbff);color:#005bea;border:1px solid #bcd8ff;border-radius:999px;padding:8px 13px;font-weight:900;font-size:13px;margin-bottom:14px}
.hmp-doctor-contact{display:grid;grid-template-columns:1fr;gap:8px;margin:12px 0 14px;text-align:left}
.hmp-doctor-contact-row{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e1edff;border-radius:16px;padding:11px 12px;box-shadow:0 8px 22px rgba(0,91,234,.06)}
.hmp-doctor-contact-row .i{width:34px;height:34px;min-width:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#005bea,#00a6fb);color:#fff}
.hmp-doctor-contact-row span{display:block;font-size:11px;color:#64748b;font-weight:900;text-transform:uppercase;line-height:1}
.hmp-doctor-contact-row b{display:block;color:#082052;font-size:14px;margin-top:3px}
.hmp-doctor-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}
.hmp-doctor-mini{background:#f8fbff;border:1px solid #e1edff;border-radius:16px;padding:10px 8px}
.hmp-doctor-mini span{display:block;color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase}
.hmp-doctor-mini b{display:block;color:#082052;font-size:13px;margin-top:4px}
.hmp-doctor-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.hmp-doctor-card-actions .hmp-mini-btn,.hmp-doctor-card-actions .hmp-btn{width:100%;justify-content:center}
.hmp-doctor-profile-hero{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:390px 1fr;gap:24px;align-items:start}
.hmp-doctor-profile-details{background:rgba(255,255,255,.92);border:1px solid #d9e9ff;border-radius:30px;padding:30px;box-shadow:0 28px 80px rgba(0,91,234,.12)}
.hmp-doctor-profile-details h1{font-size:42px!important;color:#082052;margin:0 0 8px!important}
.hmp-doctor-profile-details p{color:#526987;line-height:1.7}
.hmp-doctor-profile-highlights{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}
.hmp-profile-highlight{background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #e1edff;border-radius:18px;padding:16px}
.hmp-profile-highlight span{display:block;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}
.hmp-profile-highlight b{display:block;color:#082052;font-size:17px;margin-top:5px}
@media(max-width:900px){.hmp-doctor-profile-hero{grid-template-columns:1fr}.hmp-doctor-profile-details h1{font-size:34px!important}}
@media(max-width:600px){.hmp-doctor-photo-wrap{width:126px;height:126px;margin-top:20px}.hmp-doctor-photo{font-size:64px}.hmp-doctor-name{font-size:23px!important}.hmp-doctor-mini-grid,.hmp-doctor-profile-highlights{grid-template-columns:1fr}.hmp-doctor-card-actions{grid-template-columns:1fr}}


/* HMP v2.0 Final Doctor Profile Layout */
.hmp-doctor-profile-single{
  max-width:760px;
  margin:0 auto;
}
.hmp-doctor-profile-single .hmp-doctor-3d-card{
  max-width:760px;
  margin:0 auto;
}
.hmp-doctor-profile-single .hmp-doctor-3d-card:before{
  height:150px;
}
.hmp-doctor-profile-single .hmp-doctor-3d-inner{
  padding:42px 36px 34px;
}
.hmp-doctor-profile-single .hmp-doctor-photo-wrap{
  width:178px;
  height:178px;
  border-radius:44px;
  margin:42px auto 20px;
}
.hmp-doctor-profile-single .hmp-doctor-photo{
  border-radius:36px;
  font-size:90px;
}
.hmp-doctor-profile-single .hmp-doctor-name{
  font-size:36px!important;
  margin-top:12px!important;
}
.hmp-doctor-profile-single .hmp-doctor-degree{
  font-size:17px;
}
.hmp-doctor-profile-single .hmp-doctor-specialist{
  font-size:15px;
  padding:10px 16px;
}
.hmp-doctor-profile-single .hmp-doctor-contact{
  max-width:560px;
  margin:18px auto;
}
.hmp-doctor-profile-single .hmp-doctor-mini-grid{
  grid-template-columns:repeat(3,1fr);
  max-width:620px;
  margin:18px auto;
}
.hmp-doctor-about-box{
  max-width:620px;
  margin:18px auto 0;
  text-align:left;
  background:linear-gradient(135deg,#f8fbff,#ffffff);
  border:1px solid #e1edff;
  border-radius:20px;
  padding:18px;
  box-shadow:0 10px 26px rgba(0,91,234,.06);
}
.hmp-doctor-about-box span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  margin-bottom:8px;
}
.hmp-doctor-about-box p{
  color:#24405f;
  line-height:1.75;
  margin:0;
}
.hmp-doctor-profile-single .hmp-doctor-card-actions{
  max-width:360px;
  margin:22px auto 0;
  grid-template-columns:1fr;
}
.hmp-doctor-profile-single .hmp-doctor-card-actions .hmp-mini-btn{
  font-size:16px!important;
  min-height:52px!important;
}
.hmp-doctors-page-card-note{
  text-align:center;
  color:#64748b;
  max-width:760px;
  margin:0 auto 25px;
  font-size:17px;
}
@media(max-width:700px){
  .hmp-doctor-profile-single .hmp-doctor-3d-inner{
    padding:32px 20px 24px;
  }
  .hmp-doctor-profile-single .hmp-doctor-photo-wrap{
    width:145px;
    height:145px;
    margin-top:32px;
  }
  .hmp-doctor-profile-single .hmp-doctor-photo{
    font-size:74px;
  }
  .hmp-doctor-profile-single .hmp-doctor-name{
    font-size:28px!important;
  }
  .hmp-doctor-profile-single .hmp-doctor-mini-grid{
    grid-template-columns:1fr;
  }
}


/* HMP v2.1 Queue Logic Fix */
.hmp-mini-btn.disabled,
.hmp-mini-btn[aria-disabled="true"]{
  opacity:.55!important;
  pointer-events:none!important;
  background:#94a3b8!important;
  color:#fff!important;
  box-shadow:none!important;
}
.hmp-queue-complete{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 12px;
  border-radius:999px;
  background:#dcfce7;
  color:#166534;
  font-weight:900;
  border:1px solid #bbf7d0;
}


/* HMP v2.2 Queue Display Fix */
.hmp-current-complete{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:12px 14px;
  border-radius:18px;
  background:linear-gradient(135deg,#dcfce7,#f0fdf4);
  color:#166534;
  border:1px solid #bbf7d0;
  font-weight:900;
  font-size:18px;
}
.hmp-current-number{
  font-size:42px;
  font-weight:900;
  color:#005bea;
  line-height:1;
}
.hmp-current-help{
  color:#64748b;
  font-size:13px;
  margin-top:10px;
  line-height:1.45;
}


/* HMP v2.3 Doctor Card Width / Cut Fix */
.hmp-page .hmp-grid{
  width:100%;
  max-width:1280px;
  margin-left:auto;
  margin-right:auto;
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(360px, 1fr))!important;
  gap:28px!important;
  align-items:stretch;
  overflow:visible!important;
}

.hmp-section .hmp-grid{
  grid-template-columns:repeat(auto-fit, minmax(330px, 1fr))!important;
  gap:26px!important;
  overflow:visible!important;
}

.hmp-doctor-3d-card{
  width:100%!important;
  min-width:0!important;
  max-width:460px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  overflow:visible!important;
}

.hmp-doctor-3d-card:before{
  border-radius:30px 30px 0 0;
}

.hmp-doctor-3d-inner{
  overflow:visible!important;
}

.hmp-doctor-mini-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr))!important;
  width:100%;
}

.hmp-doctor-mini{
  min-width:0!important;
  overflow:hidden!important;
}

.hmp-doctor-mini b{
  word-break:break-word!important;
  overflow-wrap:anywhere!important;
  line-height:1.25!important;
}

.hmp-doctor-card-actions{
  width:100%!important;
  grid-template-columns:1fr 1fr!important;
}

.hmp-doctor-card-actions .hmp-mini-btn{
  min-width:0!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.15!important;
  padding-left:10px!important;
  padding-right:10px!important;
}

.hmp-doctor-contact-row{
  min-width:0!important;
}

.hmp-doctor-contact-row b{
  overflow-wrap:anywhere!important;
}

@media(max-width:900px){
  .hmp-page .hmp-grid,
  .hmp-section .hmp-grid{
    grid-template-columns:repeat(auto-fit, minmax(300px, 1fr))!important;
  }
  .hmp-doctor-3d-card{
    max-width:430px!important;
  }
}

@media(max-width:520px){
  .hmp-page{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .hmp-page .hmp-grid,
  .hmp-section .hmp-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .hmp-doctor-3d-card{
    max-width:100%!important;
  }
  .hmp-doctor-3d-inner{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .hmp-doctor-mini-grid{
    grid-template-columns:1fr!important;
  }
  .hmp-doctor-card-actions{
    grid-template-columns:1fr!important;
  }
}


/* HMP v2.4 Home page doctor cards: same 3D card, unlimited, 4 desktop / 2 mobile */
.hmp-home-doctors-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
}
.hmp-home-doctors-grid > .hmp-card,
.hmp-home-doctors-grid > .hmp-doctor-3d-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.hmp-home-doctors-grid .hmp-doctor-3d-card{
  min-height:100%!important;
}
.hmp-home-doctors-grid .hmp-doctor-3d-inner{
  height:100%!important;
}
@media (max-width: 1199px){
  .hmp-home-doctors-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width: 767px){
  .hmp-home-doctors-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-3d-card{
    border-radius:24px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-3d-inner{
    padding:16px 14px 18px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-photo-wrap{
    margin-top:-6px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-photo{
    width:104px!important;
    height:104px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-name{
    font-size:18px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-degree,
  .hmp-home-doctors-grid .hmp-doctor-specialist{
    font-size:13px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-contact-row{
    padding:10px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-contact-row > div > b{
    font-size:12px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-contact-row > div > span,
  .hmp-home-doctors-grid .hmp-doctor-mini span{
    font-size:10px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-mini{
    padding:10px 8px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-mini b{
    font-size:12px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-card-actions{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .hmp-home-doctors-grid .hmp-mini-btn{
    width:100%!important;
    font-size:14px!important;
    padding:12px 10px!important;
  }
}
@media (max-width: 420px){
  .hmp-home-doctors-grid .hmp-doctor-photo{
    width:92px!important;
    height:92px!important;
  }
  .hmp-home-doctors-grid .hmp-doctor-name{font-size:17px!important;}
}


/* HMP v2.5 Appointment page doctor preview + auto admin schedule date */
.hmp-appointment-shell{
  max-width:1120px;
  margin:0 auto;
}
.hmp-appointment-smart{
  display:grid;
  grid-template-columns:360px 1fr;
  gap:24px;
  align-items:start;
}
.hmp-appointment-doctor-preview .hmp-doctor-3d-card{
  max-width:360px!important;
}
.hmp-appointment-doctor-preview .hmp-doctor-card-actions{
  display:none!important;
}
.hmp-appointment-form-card{
  background:rgba(255,255,255,.94);
  border:1px solid #d9e9ff;
  border-radius:28px;
  padding:26px;
  box-shadow:0 24px 70px rgba(0,91,234,.12);
}
.hmp-appointment-form-card h2{
  color:#082052;
  font-size:28px;
  margin-bottom:14px;
}
.hmp-fixed-schedule-box{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  background:linear-gradient(135deg,#ecfdf3,#f7fff9);
  border:1px solid #bbf7d0;
  border-radius:18px;
  padding:14px;
  margin:8px 0 10px;
}
.hmp-fixed-schedule-box div{
  background:#fff;
  border:1px solid #d9fbe8;
  border-radius:14px;
  padding:12px;
}
.hmp-fixed-schedule-box span{
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.hmp-fixed-schedule-box b{
  display:block;
  color:#082052;
  font-size:15px;
  margin-top:4px;
}
.hmp-appointment-note{
  grid-column:1/-1;
  color:#166534;
  font-weight:800;
  font-size:13px;
}
@media(max-width:900px){
  .hmp-appointment-smart{
    grid-template-columns:1fr;
  }
  .hmp-appointment-doctor-preview .hmp-doctor-3d-card{
    max-width:440px!important;
  }
}
@media(max-width:600px){
  .hmp-appointment-form-card{
    padding:18px;
  }
  .hmp-fixed-schedule-box{
    grid-template-columns:1fr;
  }
}


/* HMP v2.6 Appointment doctor preview clean */
.hmp-appointment-doctor-preview .hmp-doctor-mini-grid{
  display:none!important;
}
.hmp-appointment-doctor-preview .hmp-doctor-about-box{
  margin-top:18px!important;
}
.hmp-appointment-doctor-preview .hmp-doctor-3d-card{
  padding-bottom:6px!important;
}


/* HMP v2.7 appointment support buttons + map */
.hmp-appointment-extra-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:20px}
@media(min-width:992px){.hmp-appointment-extra-grid{grid-template-columns:1.05fr 1fr}}
.hmp-contact-3d-card,.hmp-map-3d-card{background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%);border:1px solid #dce7fb;border-radius:24px;padding:20px;box-shadow:0 18px 40px rgba(7,93,232,.10)}
.hmp-contact-3d-card h3,.hmp-map-3d-card h3{margin:0 0 14px;color:#082b67;font-size:24px}
.hmp-contact-action-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(max-width:640px){.hmp-contact-action-row{grid-template-columns:1fr}}
.hmp-contact-action{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:10px 12px;border-radius:16px;font-weight:700;text-decoration:none!important;box-shadow:0 10px 24px rgba(8,33,84,.10);border:1px solid transparent}
.hmp-contact-action.whatsapp{background:linear-gradient(135deg,#19c463,#0e9f4b);color:#fff}
.hmp-contact-action.facebook{background:linear-gradient(135deg,#1b74e4,#0f59c9);color:#fff}
.hmp-contact-action.call{background:linear-gradient(135deg,#ffffff,#eef5ff);color:#0a57dd;border-color:#bfd4ff}
.hmp-contact-help{margin:14px 0 0;color:#5b7093;line-height:1.65}
.hmp-map-frame{border-radius:18px;overflow:hidden;border:1px solid #d4e3ff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
.hmp-map-frame iframe{display:block;width:100%;height:260px;border:0;background:#eef4ff}
.hmp-map-placeholder{display:flex;align-items:center;justify-content:center;min-height:220px;padding:18px;text-align:center;border-radius:18px;background:linear-gradient(180deg,#f8fbff,#eef5ff);border:1px dashed #c7dafc;color:#456082;font-weight:600}
.hmp-map-3d-card p{margin:14px 0 0}


/* HMP v2.9 Contact button alignment + direction button */
.hmp-v29-extra-grid{
  grid-template-columns:1fr 1fr!important;
  align-items:stretch!important;
}

.hmp-v29-contact-card,
.hmp-v29-map-card{
  min-width:0!important;
  overflow:hidden!important;
}

.hmp-v29-contact-card{
  min-height:auto!important;
}

.hmp-v29-contact-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}

.hmp-v29-contact-actions .hmp-contact-action{
  min-width:0!important;
  width:100%!important;
  min-height:76px!important;
  padding:10px 6px!important;
  border-radius:18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  text-align:center!important;
  line-height:1.1!important;
  font-size:13px!important;
  white-space:normal!important;
}

.hmp-v29-contact-actions .hmp-contact-action span{
  font-size:24px!important;
  line-height:1!important;
}

.hmp-v29-contact-actions .hmp-contact-action b{
  display:block!important;
  font-size:13px!important;
  line-height:1.1!important;
}

.hmp-contact-help{
  display:none!important;
}

.hmp-v29-map-card .hmp-map-frame iframe{
  height:230px!important;
}

.hmp-v29-map-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:14px!important;
}

.hmp-v29-map-actions .hmp-mini-btn{
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.2!important;
}

@media(max-width:900px){
  .hmp-v29-extra-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:520px){
  .hmp-v29-contact-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
  }
  .hmp-v29-contact-actions .hmp-contact-action{
    min-height:66px!important;
    padding:8px 4px!important;
    font-size:11px!important;
    border-radius:14px!important;
  }
  .hmp-v29-contact-actions .hmp-contact-action span{
    font-size:20px!important;
  }
  .hmp-v29-contact-actions .hmp-contact-action b{
    font-size:11px!important;
  }
  .hmp-v29-map-actions{
    grid-template-columns:1fr!important;
  }
}


/* HMP v3.0 Final Quick Contact + API-free direction */
.hmp-v30-extra-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
  align-items:stretch!important;
}

.hmp-v30-contact-card,
.hmp-v30-map-card{
  min-width:0!important;
  overflow:hidden!important;
  border-radius:24px!important;
}

.hmp-v30-contact-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
}

.hmp-v30-contact-btn{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-height:58px!important;
  padding:10px 14px!important;
  border-radius:18px!important;
  text-decoration:none!important;
  font-weight:900!important;
  color:#082052!important;
  background:linear-gradient(135deg,#ffffff,#f4f9ff)!important;
  border:1px solid #d4e4ff!important;
  box-shadow:0 12px 28px rgba(7,93,232,.10)!important;
  box-sizing:border-box!important;
}

.hmp-v30-contact-btn.whatsapp{
  border-color:#b9f5cd!important;
}
.hmp-v30-contact-btn.facebook{
  border-color:#bdd8ff!important;
}
.hmp-v30-contact-btn.call{
  border-color:#bdeaff!important;
}

.hmp-v30-icon{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.04),0 8px 18px rgba(7,93,232,.10)!important;
}

.hmp-v30-icon svg{
  width:26px!important;
  height:26px!important;
  display:block!important;
}

.hmp-v30-contact-btn span:last-child{
  display:block!important;
  font-size:15px!important;
  line-height:1.1!important;
  white-space:normal!important;
}

.hmp-contact-help,
.hmp-v29-contact-actions{
  display:none!important;
}

.hmp-v30-map-card .hmp-map-frame iframe{
  height:230px!important;
}

.hmp-v30-map-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:14px!important;
}

.hmp-v30-map-actions .hmp-mini-btn{
  width:100%!important;
  min-width:0!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.15!important;
  padding-left:10px!important;
  padding-right:10px!important;
}

@media(max-width:900px){
  .hmp-v30-extra-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:520px){
  .hmp-v30-contact-btn{
    min-height:54px!important;
    padding:9px 12px!important;
    border-radius:16px!important;
  }
  .hmp-v30-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }
  .hmp-v30-icon svg{
    width:23px!important;
    height:23px!important;
  }
  .hmp-v30-map-actions{
    grid-template-columns:1fr!important;
  }
}


/* HMP v3.1 email notification support */
.hmp-email-note{
  background:#ecfdf3;
  border:1px solid #bbf7d0;
  color:#166534;
  border-radius:14px;
  padding:12px 14px;
  font-weight:700;
}


/* HMP v3.2 Patient Dashboard contact/map block */
.hmp-patient-support-map{
  display:grid;
  gap:18px;
  margin:18px 0;
}

.hmp-patient-contact-widget,
.hmp-patient-location-widget{
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #d9e9ff!important;
  box-shadow:0 18px 50px rgba(0,91,234,.10)!important;
}

.hmp-patient-contact-buttons{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}

.hmp-patient-contact-btn{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:54px;
  padding:10px 12px;
  border-radius:17px;
  text-decoration:none!important;
  font-weight:900;
  color:#082052!important;
  background:#fff;
  border:1px solid #d9e9ff;
  box-shadow:0 10px 25px rgba(0,91,234,.08);
  box-sizing:border-box;
}

.hmp-patient-contact-btn span{
  width:36px;
  height:36px;
  min-width:36px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.04),0 8px 18px rgba(7,93,232,.08);
}

.hmp-patient-contact-btn span svg{
  width:25px;
  height:25px;
  display:block;
}

.hmp-patient-contact-btn.whatsapp{border-color:#bbf7d0}
.hmp-patient-contact-btn.facebook{border-color:#bdd8ff}
.hmp-patient-contact-btn.call{border-color:#bdeaff}

.hmp-patient-map-frame{
  border-radius:18px;
  overflow:hidden;
  border:1px solid #d4e3ff;
  margin-top:12px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
}

.hmp-patient-map-frame iframe{
  display:block;
  width:100%;
  height:220px;
  border:0;
  background:#eef4ff;
}

.hmp-patient-map-placeholder{
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  margin-top:12px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(180deg,#f8fbff,#eef5ff);
  border:1px dashed #c7dafc;
  color:#456082;
  font-weight:700;
}

.hmp-patient-map-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:12px;
}

.hmp-patient-map-actions .hmp-mini-btn{
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.15!important;
  padding-left:10px!important;
  padding-right:10px!important;
}

@media(max-width:1000px){
  .hmp-patient-map-actions{
    grid-template-columns:1fr;
  }
}


/* HMP v3.3 force patient dashboard contact/map visible */
.hmp-v33-patient-support{
  display:grid!important;
  gap:18px!important;
  margin:18px 0!important;
}

.hmp-v33-contact-widget,
.hmp-v33-map-widget{
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #d9e9ff!important;
  box-shadow:0 18px 50px rgba(0,91,234,.10)!important;
}

.hmp-v33-contact-list{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin-top:12px!important;
}

.hmp-v33-contact-btn{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  min-height:54px!important;
  padding:10px 12px!important;
  border-radius:17px!important;
  text-decoration:none!important;
  font-weight:900!important;
  color:#082052!important;
  background:#fff!important;
  border:1px solid #d9e9ff!important;
  box-shadow:0 10px 25px rgba(0,91,234,.08)!important;
  box-sizing:border-box!important;
}

.hmp-v33-contact-btn span{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.04),0 8px 18px rgba(7,93,232,.08)!important;
}

.hmp-v33-contact-btn span svg{
  width:25px!important;
  height:25px!important;
  display:block!important;
}

.hmp-v33-contact-btn.whatsapp{border-color:#bbf7d0!important}
.hmp-v33-contact-btn.facebook{border-color:#bdd8ff!important}
.hmp-v33-contact-btn.call{border-color:#bdeaff!important}

.hmp-v33-empty{
  margin-top:12px;
  padding:12px;
  border-radius:14px;
  background:#f8fbff;
  border:1px dashed #c7dafc;
  color:#456082;
  font-weight:700;
}

.hmp-v33-map-frame{
  border-radius:18px!important;
  overflow:hidden!important;
  border:1px solid #d4e3ff!important;
  margin-top:12px!important;
}

.hmp-v33-map-frame iframe{
  display:block!important;
  width:100%!important;
  height:220px!important;
  border:0!important;
  background:#eef4ff!important;
}

.hmp-v33-map-placeholder{
  min-height:150px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  margin-top:12px!important;
  padding:16px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#f8fbff,#eef5ff)!important;
  border:1px dashed #c7dafc!important;
  color:#456082!important;
  font-weight:700!important;
}

.hmp-v33-map-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:12px!important;
}

.hmp-v33-map-actions .hmp-mini-btn{
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.15!important;
  padding-left:10px!important;
  padding-right:10px!important;
}

@media(max-width:1000px){
  .hmp-v33-map-actions{
    grid-template-columns:1fr!important;
  }
}


/* HMP v3.4 Department vs Services different 3D style + animated hospital background */

/* Departments: clean glass/medical tiles */
.hmp-departments-3d{
  position:relative;
  padding-top:50px!important;
  padding-bottom:54px!important;
}

.hmp-departments-3d .hmp-card{
  position:relative;
  overflow:hidden;
  min-height:190px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(244,249,255,.92))!important;
  border:1px solid rgba(189,216,255,.9)!important;
  border-radius:28px!important;
  box-shadow:
    0 22px 55px rgba(0,91,234,.10),
    inset 0 1px 0 rgba(255,255,255,.9)!important;
  transform:translateZ(0);
  transition:.25s ease;
}

.hmp-departments-3d .hmp-card:before{
  content:"";
  position:absolute;
  top:-38px;
  right:-38px;
  width:120px;
  height:120px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(0,166,251,.18), transparent 65%);
}

.hmp-departments-3d .hmp-card:after{
  content:"";
  position:absolute;
  left:22px;
  bottom:18px;
  width:54px;
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,#005bea,#00a6fb);
  opacity:.55;
}

.hmp-departments-3d .hmp-card:hover{
  transform:translateY(-8px);
  box-shadow:
    0 30px 70px rgba(0,91,234,.16),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

.hmp-departments-3d .hmp-icon,
.hmp-departments-3d .hmp-card > div:first-child{
  width:76px!important;
  height:76px!important;
  border-radius:24px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#eef7ff,#ffffff)!important;
  border:1px solid #d9e9ff!important;
  box-shadow:0 14px 30px rgba(0,91,234,.09)!important;
  font-size:34px!important;
  margin-bottom:18px!important;
}

.hmp-departments-3d .hmp-card h3{
  font-size:23px!important;
  color:#082052!important;
  margin-bottom:8px!important;
}

.hmp-departments-3d .hmp-card p{
  color:#526987!important;
  font-size:16px!important;
}

/* Services: different section background + animated hospital pattern */
.hmp-services-animated{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin-top:50px!important;
  padding:58px 32px!important;
  border-radius:34px!important;
  background:
    radial-gradient(circle at 18% 18%, rgba(0,166,251,.18), transparent 30%),
    radial-gradient(circle at 82% 20%, rgba(18,183,106,.16), transparent 28%),
    linear-gradient(135deg,#eaf6ff 0%,#f4fbff 46%,#eafdf6 100%)!important;
  border:1px solid #cfe3ff!important;
  box-shadow:0 26px 80px rgba(0,91,234,.10)!important;
}

.hmp-services-animated:before{
  content:"";
  position:absolute;
  inset:-40px;
  z-index:-2;
  background:
    linear-gradient(90deg, rgba(0,91,234,.06) 1px, transparent 1px),
    linear-gradient(0deg, rgba(0,91,234,.06) 1px, transparent 1px);
  background-size:58px 58px;
  animation:hmpHospitalGridMove 18s linear infinite;
}

.hmp-services-animated:after{
  content:"✚  🏥  ⚕  ✚  🏥  ⚕  ✚  🏥";
  position:absolute;
  top:26px;
  left:-10%;
  z-index:-1;
  width:120%;
  white-space:nowrap;
  color:rgba(0,91,234,.10);
  font-size:54px;
  font-weight:900;
  letter-spacing:42px;
  animation:hmpHospitalIconFloat 16s ease-in-out infinite alternate;
}

@keyframes hmpHospitalGridMove{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(58px,58px,0)}
}

@keyframes hmpHospitalIconFloat{
  from{transform:translateX(-20px) translateY(0)}
  to{transform:translateX(40px) translateY(16px)}
}

.hmp-services-animated .hmp-section-head{
  position:relative;
  z-index:2;
}

.hmp-services-animated .hmp-section-head h2{
  color:#062154!important;
}

.hmp-services-animated .hmp-grid{
  position:relative;
  z-index:2;
}

.hmp-services-animated .hmp-card{
  position:relative;
  overflow:hidden;
  min-height:190px;
  background:
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(255,255,255,.96))!important;
  backdrop-filter:blur(12px);
  border:1px solid rgba(255,255,255,.9)!important;
  border-radius:30px!important;
  box-shadow:
    0 24px 60px rgba(0,91,234,.12),
    inset 0 1px 0 rgba(255,255,255,1)!important;
  transition:.25s ease;
}

.hmp-services-animated .hmp-card:hover{
  transform:translateY(-8px) scale(1.015);
  box-shadow:
    0 34px 78px rgba(0,91,234,.18),
    inset 0 1px 0 rgba(255,255,255,1)!important;
}

.hmp-services-animated .hmp-card:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:8px;
  height:100%;
  background:linear-gradient(180deg,#005bea,#00a6fb,#12b76a);
}

.hmp-services-animated .hmp-card:after{
  content:"";
  position:absolute;
  right:-45px;
  bottom:-45px;
  width:145px;
  height:145px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(18,183,106,.16), transparent 68%);
}

.hmp-services-animated .hmp-icon,
.hmp-services-animated .hmp-card > div:first-child{
  width:78px!important;
  height:78px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:
    radial-gradient(circle at 30% 25%,#ffffff,transparent 38%),
    linear-gradient(135deg,#005bea,#00a6fb)!important;
  color:#fff!important;
  border:6px solid rgba(255,255,255,.75)!important;
  box-shadow:0 16px 35px rgba(0,91,234,.18)!important;
  font-size:34px!important;
  margin-bottom:18px!important;
}

.hmp-services-animated .hmp-card h3{
  font-size:23px!important;
  color:#062154!important;
  margin-bottom:8px!important;
}

.hmp-services-animated .hmp-card p{
  color:#456082!important;
  font-size:16px!important;
}

@media(max-width:760px){
  .hmp-services-animated{
    padding:38px 16px!important;
    border-radius:26px!important;
  }
  .hmp-services-animated:after{
    font-size:38px;
    letter-spacing:22px;
  }
}



/* HMP v3.5 Our Staff marquee section */
.hmp-our-staff{position:relative;overflow:hidden}
.hmp-staff-head-right{display:flex;gap:12px;align-items:center}
.hmp-staff-speed-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:linear-gradient(135deg,#f5fbff,#ffffff);border:1px solid #d8e8ff;color:#0b377d;font-weight:800;box-shadow:0 10px 25px rgba(0,91,234,.08)}
.hmp-staff-marquee{position:relative;overflow:hidden;padding:12px 0 10px;mask-image:linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);-webkit-mask-image:linear-gradient(to right, transparent, #000 8%, #000 92%, transparent)}
.hmp-staff-track{display:flex;align-items:stretch;gap:24px;width:max-content;animation:hmpStaffScroll var(--hmp-staff-speed,28s) linear infinite;will-change:transform}
.hmp-staff-marquee:hover .hmp-staff-track{animation-play-state:paused}
@keyframes hmpStaffScroll{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.hmp-staff-card{position:relative;flex:0 0 290px;min-height:340px;padding:28px 24px 24px;border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(239,247,255,.94));border:1px solid rgba(201,223,255,.95);box-shadow:0 24px 58px rgba(0,91,234,.11), inset 0 1px 0 rgba(255,255,255,.92);overflow:hidden;transform-style:preserve-3d;transition:transform .28s ease, box-shadow .28s ease}
.hmp-staff-card:before{content:"";position:absolute;inset:0 0 auto 0;height:110px;background:linear-gradient(135deg,#005bea,#00a6fb);border-radius:30px 30px 0 0}
.hmp-staff-card:after{content:"✚";position:absolute;right:22px;top:18px;font-size:48px;line-height:1;color:rgba(255,255,255,.26);font-weight:900}
.hmp-staff-card:hover{transform:translateY(-8px) scale(1.035);box-shadow:0 35px 80px rgba(0,91,234,.18), inset 0 1px 0 rgba(255,255,255,.98)}
.hmp-staff-avatar-wrap{position:relative;z-index:2;display:flex;justify-content:center;margin:36px 0 16px}
.hmp-staff-avatar{width:118px;height:118px;border-radius:50%;object-fit:cover;display:block;background:#eef4fb;border:6px solid rgba(255,255,255,.72);box-shadow:0 16px 35px rgba(0,91,234,.12)}
.hmp-staff-avatar-fallback{display:grid;place-items:center;font-size:54px}
.hmp-staff-body{text-align:center;position:relative;z-index:2}
.hmp-staff-body h3{font-size:30px;line-height:1.15;margin:10px 0 8px;color:#092560}
.hmp-staff-designation{display:inline-flex;align-items:center;justify-content:center;padding:9px 16px;border-radius:999px;background:linear-gradient(135deg,#eff7ff,#ffffff);border:1px solid #cfe0ff;color:#0a58ca;font-weight:800;margin:0 0 16px;box-shadow:0 8px 20px rgba(0,91,234,.07)}
.hmp-staff-mobile{display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:800;color:#0b2f73;background:#fff;border:1px solid #d9e8ff;border-radius:18px;padding:14px 12px;box-shadow:0 10px 25px rgba(0,91,234,.06)}
.hmp-staff-glow{position:absolute;left:-30px;bottom:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle, rgba(0,166,251,.18), transparent 70%)}
@media (max-width: 767px){
  .hmp-staff-card{flex-basis:240px;min-height:310px;padding:24px 18px 20px}
  .hmp-staff-body h3{font-size:24px}
  .hmp-staff-avatar{width:102px;height:102px}
  .hmp-staff-track{gap:16px}
}


/* HMP v3.6.1 section entrance animations */
.hmp-animate-left,
.hmp-animate-right,
.hmp-animate-fast-left{
  opacity:0;
  will-change:transform, opacity;
}

.hmp-animate-left{transform:translateX(-90px);}
.hmp-animate-right{transform:translateX(90px);}
.hmp-animate-fast-left{transform:translateX(-140px);}

.hmp-animate-left.hmp-inview{animation:hmpSlideFromLeft .95s cubic-bezier(.16,1,.3,1) forwards;}
.hmp-animate-right.hmp-inview{animation:hmpSlideFromRight .95s cubic-bezier(.16,1,.3,1) forwards;}
.hmp-animate-fast-left.hmp-inview{animation:hmpSlideFromLeft .45s cubic-bezier(.16,1,.3,1) forwards;}

@keyframes hmpSlideFromLeft{
  from{opacity:0;transform:translateX(-90px)}
  to{opacity:1;transform:translateX(0)}
}
@keyframes hmpSlideFromRight{
  from{opacity:0;transform:translateX(90px)}
  to{opacity:1;transform:translateX(0)}
}

.hmp-our-staff .hmp-staff-head-right,
.hmp-our-staff .hmp-staff-speed-badge{
  display:none!important;
}

.hmp-page .hmp-section-head h1{
  color:#082052;
  font-size:42px;
  margin:0;
}

@media(max-width:700px){
  .hmp-animate-left,
  .hmp-animate-right,
  .hmp-animate-fast-left{transform:translateY(34px);}
  .hmp-animate-left.hmp-inview,
  .hmp-animate-right.hmp-inview,
  .hmp-animate-fast-left.hmp-inview{animation:hmpSlideMobile .55s ease forwards;}
  @keyframes hmpSlideMobile{
    from{opacity:0;transform:translateY(34px)}
    to{opacity:1;transform:translateY(0)}
  }
}


/* HMP v4.0 Management feature styles */
.hmp-v40-wp-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:16px;
  margin:20px 0;
}
.hmp-v40-wp-card{
  background:#fff;
  border:1px solid #d9e9ff;
  border-radius:16px;
  padding:18px;
  box-shadow:0 10px 30px rgba(0,91,234,.08);
}
.hmp-v40-wp-card span{
  display:block;
  color:#64748b;
  font-weight:700;
  margin-bottom:8px;
}
.hmp-v40-wp-card b{
  display:block;
  color:#075de8;
  font-size:28px;
}
.hmp-v40-report-filter{
  background:#fff;
  border:1px solid #d9e9ff;
  padding:16px;
  border-radius:14px;
  margin:18px 0;
}
.hmp-v40-doctor-panels{
  max-width:1180px;
  margin:24px auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
@media(max-width:900px){
  .hmp-v40-doctor-panels{grid-template-columns:1fr;padding:0 14px}
}


/* HMP v4.1 Patient Update Notice */
.hmp-v41-tabs{
  flex-wrap:wrap;
  gap:10px;
}

.hmp-update-notice-btn{
  background:linear-gradient(135deg,#fff7ed,#ffffff)!important;
  color:#9a3412!important;
  border-color:#fed7aa!important;
}

.hmp-update-notice-btn.active,
.hmp-update-notice-btn:hover{
  background:linear-gradient(135deg,#f97316,#fb923c)!important;
  color:#fff!important;
}

.hmp-v41-update-panel{
  max-width:980px;
}

.hmp-v41-update-list{
  display:grid;
  gap:16px;
}

.hmp-v41-update-card{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  align-items:start;
  padding:16px;
  border:1px solid #d9e9ff;
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff,#f8fbff);
  box-shadow:0 12px 30px rgba(0,91,234,.08);
}

.hmp-v41-update-icon{
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#075de8,#00a6fb);
  color:#fff;
  font-size:26px;
  box-shadow:0 12px 25px rgba(0,91,234,.16);
}

.hmp-v41-update-body h3{
  margin:0 0 6px;
  color:#082052;
  font-size:20px;
}

.hmp-v41-update-body p{
  margin:0 0 8px;
  color:#34506f;
  font-weight:700;
}

.hmp-v41-update-body small{
  color:#64748b;
  font-weight:700;
}

.hmp-v41-empty-update{
  padding:18px;
  border-radius:18px;
  border:1px dashed #c7dafc;
  background:#f8fbff;
  color:#456082;
  font-weight:800;
}

@media(max-width:600px){
  .hmp-v41-update-card{
    grid-template-columns:1fr;
  }
}


/* HMP v4.2 Clean update/prescription/login */
.hmp-v42-status-card{max-width:980px;margin:22px auto}.hmp-v42-status-form{display:grid;grid-template-columns:1fr;gap:12px}.hmp-v42-help{margin:8px 0 0;color:#64748b;font-weight:700}.hmp-v42-rx-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 16px}.hmp-v42-rx-choice label{padding:14px;border-radius:16px;border:1px solid #d9e9ff;background:linear-gradient(135deg,#ffffff,#f8fbff);font-weight:900;color:#082052;cursor:pointer}.hmp-v42-rx-upload,.hmp-v42-rx-online{border:1px solid #d9e9ff;background:#f8fbff;padding:16px;border-radius:18px;margin-bottom:14px}.hmp-v42-new-badge{display:inline-flex;align-items:center;justify-content:center;margin-left:10px;padding:4px 9px;border-radius:999px;background:linear-gradient(135deg,#ef4444,#f97316);color:#fff;font-size:12px;font-weight:900;animation:hmpNewPulse 1.1s infinite ease-in-out;vertical-align:middle}@keyframes hmpNewPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 rgba(239,68,68,0)}50%{transform:scale(1.08);box-shadow:0 0 18px rgba(239,68,68,.35)}}@media(max-width:700px){.hmp-v42-rx-choice{grid-template-columns:1fr}}


/* HMP v4.3 Prescription responsive layout fix */
.hmp-v42-doctor-panels{
  align-items:start!important;
}

.hmp-v42-doctor-panels .hmp-pro-card{
  min-width:0!important;
  overflow:hidden!important;
}

.hmp-v42-rx-form{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}

.hmp-v42-rx-choice{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  margin:12px 0 16px!important;
  width:100%!important;
}

.hmp-v42-rx-choice label{
  min-width:0!important;
  width:100%!important;
  min-height:62px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  border:1px solid #cfe0ff!important;
  background:linear-gradient(135deg,#ffffff,#f7fbff)!important;
  box-shadow:0 10px 24px rgba(0,91,234,.07)!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  cursor:pointer!important;
  font-size:15px!important;
  line-height:1.2!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-choice input[type="radio"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  margin:0!important;
  accent-color:#075de8!important;
}

.hmp-v42-rx-choice label:has(input[type="radio"]:checked){
  border-color:#075de8!important;
  background:linear-gradient(135deg,#eef6ff,#ffffff)!important;
  box-shadow:0 14px 30px rgba(0,91,234,.12)!important;
}

.hmp-v42-rx-upload,
.hmp-v42-rx-online{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid #d9e9ff!important;
  background:#f8fbff!important;
  padding:16px!important;
  border-radius:18px!important;
  margin-bottom:14px!important;
}

.hmp-v42-rx-upload input[type="file"],
.hmp-v42-rx-online input,
.hmp-v42-rx-online textarea,
.hmp-v42-rx-form input,
.hmp-v42-rx-form textarea{
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-online textarea{
  min-height:95px!important;
  resize:vertical!important;
}

.hmp-v42-rx-form button{
  width:100%!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-form .hmp-mini-btn{
  width:auto!important;
  max-width:100%!important;
}

@media(max-width:1100px){
  .hmp-v40-doctor-panels,
  .hmp-v42-doctor-panels{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:700px){
  .hmp-v42-rx-choice{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .hmp-v42-rx-choice label{
    min-height:54px!important;
    font-size:14px!important;
    padding:11px 12px!important;
  }

  .hmp-v42-rx-upload,
  .hmp-v42-rx-online{
    padding:13px!important;
    border-radius:16px!important;
  }
}

/* Older buggy card widths hard override */
.hmp-pro-card .hmp-v42-rx-choice > label{
  flex:initial!important;
  max-width:100%!important;
}


/* HMP v4.4 Prescription layout clean final */
.hmp-v42-doctor-panels,
.hmp-v40-doctor-panels{
  grid-template-columns:1fr 1fr!important;
  align-items:start!important;
}

.hmp-v42-doctor-panels .hmp-pro-card,
.hmp-v40-doctor-panels .hmp-pro-card{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-form{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-form *{
  box-sizing:border-box!important;
}

.hmp-v42-rx-choice{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  width:100%!important;
  margin:14px 0 16px!important;
  padding:0!important;
}

.hmp-v42-rx-choice label{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:56px!important;
  height:auto!important;
  padding:12px 12px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  border-radius:16px!important;
  border:1px solid #cfe0ff!important;
  background:linear-gradient(135deg,#ffffff,#f8fbff)!important;
  box-shadow:0 8px 20px rgba(0,91,234,.06)!important;
  color:#082052!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.18!important;
  text-align:left!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  overflow:hidden!important;
}

.hmp-v42-rx-choice label input[type="radio"],
.hmp-v42-rx-choice input[type="radio"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#075de8!important;
}

.hmp-v42-rx-choice label:has(input[type="radio"]:checked){
  border-color:#075de8!important;
  background:linear-gradient(135deg,#eef6ff,#ffffff)!important;
  box-shadow:0 12px 28px rgba(0,91,234,.14)!important;
}

.hmp-v42-rx-upload,
.hmp-v42-rx-online{
  display:block;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 14px!important;
  padding:16px!important;
  border-radius:18px!important;
  border:1px solid #d9e9ff!important;
  background:linear-gradient(135deg,#f8fbff,#ffffff)!important;
  overflow:hidden!important;
  clear:both!important;
}

.hmp-v42-rx-upload label,
.hmp-v42-rx-online label{
  display:block!important;
  width:100%!important;
  margin:0 0 8px!important;
  color:#082052!important;
  font-weight:900!important;
  font-size:14px!important;
}

.hmp-v42-rx-upload input[type="file"],
.hmp-v42-rx-online input,
.hmp-v42-rx-online textarea,
.hmp-v42-rx-form input,
.hmp-v42-rx-form textarea{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

.hmp-v42-rx-online textarea{
  min-height:88px!important;
  resize:vertical!important;
}

.hmp-v42-rx-form button{
  width:100%!important;
  max-width:100%!important;
  margin-top:8px!important;
}

.hmp-v42-rx-form .hmp-mini-btn{
  width:auto!important;
  display:inline-flex!important;
  margin-top:12px!important;
}

/* Kill any old accidental horizontal cards */
.hmp-v42-rx-form > .hmp-v42-rx-choice,
.hmp-v42-rx-form > .hmp-v42-rx-upload,
.hmp-v42-rx-form > .hmp-v42-rx-online{
  grid-column:1 / -1!important;
}

@media(max-width:1100px){
  .hmp-v42-doctor-panels,
  .hmp-v40-doctor-panels{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:560px){
  .hmp-v42-rx-choice{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .hmp-v42-rx-choice label{
    min-height:52px!important;
    font-size:13px!important;
    padding:11px 12px!important;
  }

  .hmp-v42-rx-upload,
  .hmp-v42-rx-online{
    padding:13px!important;
    border-radius:16px!important;
  }
}


/* HMP v4.5 Prescription card bigger + smart typography */
.hmp-v42-doctor-panels,
.hmp-v40-doctor-panels{
  grid-template-columns:minmax(420px, 1fr) minmax(480px, 1.15fr)!important;
  gap:28px!important;
  max-width:1280px!important;
}

.hmp-v42-doctor-panels .hmp-pro-card,
.hmp-v40-doctor-panels .hmp-pro-card{
  padding:28px!important;
  border-radius:28px!important;
}

.hmp-v42-doctor-panels .hmp-pro-card h2{
  font-size:30px!important;
  line-height:1.15!important;
  margin-bottom:20px!important;
}

.hmp-v42-rx-choice{
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
  margin:16px 0 18px!important;
}

.hmp-v42-rx-choice label{
  min-height:70px!important;
  padding:14px 16px!important;
  font-size:15px!important;
  line-height:1.25!important;
  gap:12px!important;
  border-radius:18px!important;
  align-items:center!important;
}

.hmp-v42-rx-choice label input[type="radio"],
.hmp-v42-rx-choice input[type="radio"]{
  width:19px!important;
  height:19px!important;
  min-width:19px!important;
  flex:0 0 19px!important;
}

.hmp-v42-rx-choice label::first-line{
  font-weight:900!important;
}

.hmp-v42-rx-upload,
.hmp-v42-rx-online{
  padding:20px!important;
  border-radius:22px!important;
}

.hmp-v42-rx-upload label,
.hmp-v42-rx-online label{
  font-size:16px!important;
  margin-bottom:10px!important;
}

.hmp-v42-rx-upload input[type="file"]{
  min-height:52px!important;
  padding:11px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid #d4e4ff!important;
  font-size:14px!important;
}

.hmp-v42-help{
  font-size:16px!important;
  line-height:1.45!important;
  margin-top:14px!important;
}

.hmp-v42-rx-form button{
  min-height:56px!important;
  font-size:16px!important;
  border-radius:18px!important;
}

.hmp-v42-rx-form .hmp-mini-btn{
  min-height:52px!important;
  padding:14px 22px!important;
  font-size:16px!important;
  border-radius:16px!important;
}

@media(max-width:1180px){
  .hmp-v42-doctor-panels,
  .hmp-v40-doctor-panels{
    grid-template-columns:1fr!important;
    max-width:760px!important;
  }
}

@media(max-width:620px){
  .hmp-v42-doctor-panels,
  .hmp-v40-doctor-panels{
    padding-left:12px!important;
    padding-right:12px!important;
  }

  .hmp-v42-doctor-panels .hmp-pro-card,
  .hmp-v40-doctor-panels .hmp-pro-card{
    padding:20px!important;
    border-radius:24px!important;
  }

  .hmp-v42-doctor-panels .hmp-pro-card h2{
    font-size:26px!important;
  }

  .hmp-v42-rx-choice{
    grid-template-columns:1fr!important;
  }

  .hmp-v42-rx-choice label{
    min-height:58px!important;
    font-size:15px!important;
  }

  .hmp-v42-rx-upload,
  .hmp-v42-rx-online{
    padding:16px!important;
  }
}


/* HMP v5.0 footer credit + separate login modal */
.hmp-v50-footer-credit{
  width:100%;
  text-align:center;
  padding:13px 12px;
  background:#061f4f;
  color:#dbeafe;
  font-size:14px;
  font-weight:700;
  border-top:1px solid rgba(255,255,255,.10);
}
.hmp-v50-footer-credit a{
  color:#ffffff;
  font-weight:900;
  text-decoration:none;
}
.hmp-v50-footer-credit a:hover{
  text-decoration:underline;
}

.hmp-v50-login-open[data-hmp-login-type="doctor"] .hmp-patient-login,
.hmp-v50-login-open[data-hmp-login-type="doctor"] [data-login-panel="patient"],
.hmp-v50-login-open[data-hmp-login-type="patient"] .hmp-doctor-login,
.hmp-v50-login-open[data-hmp-login-type="patient"] [data-login-panel="doctor"]{
  display:none!important;
}

.hmp-v50-login-open .hmp-v50-active-login-panel{
  display:block!important;
  max-width:520px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.hmp-v50-login-open[data-hmp-login-type="doctor"],
.hmp-v50-login-open[data-hmp-login-type="patient"]{
  align-items:center!important;
  justify-content:center!important;
}

@media(max-width:600px){
  .hmp-v50-footer-credit{
    font-size:13px;
    padding:11px 10px;
  }
}


/* HMP v5.1 real separate login modal */
.hmp-v51-login-modal{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(7,20,45,.62);
  backdrop-filter:blur(6px);
}

.hmp-v51-login-modal.active{
  display:flex!important;
}

.hmp-v51-login-box{
  position:relative;
  width:min(460px, 100%);
  background:#ffffff;
  border:1px solid #d9e8ff;
  border-radius:28px;
  padding:28px;
  box-shadow:0 30px 90px rgba(0,0,0,.28);
}

.hmp-v51-login-close{
  position:absolute;
  right:16px;
  top:16px;
  width:42px;
  height:42px;
  border-radius:50%;
  border:0;
  background:#ef4444;
  color:#fff;
  font-size:24px;
  font-weight:900;
  cursor:pointer;
  line-height:1;
}

.hmp-v51-panel{
  display:none;
}

.hmp-v51-login-modal[data-login-type="doctor"] .hmp-v51-doctor-panel,
.hmp-v51-login-modal[data-login-type="patient"] .hmp-v51-patient-panel{
  display:block!important;
}

.hmp-v51-panel h2{
  margin:0 0 10px;
  color:#09265d;
  font-size:30px;
  font-weight:900;
}

.hmp-v51-panel p{
  margin:0 0 18px;
  color:#415a7d;
  font-size:16px;
  line-height:1.45;
  font-weight:600;
}

.hmp-v51-panel form{
  display:grid;
  gap:13px;
}

.hmp-v51-panel input{
  width:100%;
  height:54px;
  border-radius:16px;
  border:1px solid #cfe0ff;
  background:#f7fbff;
  padding:0 16px;
  font-size:15px;
  font-weight:700;
  color:#09265d;
  outline:none;
}

.hmp-v51-panel input:focus{
  border-color:#0e63f4;
  box-shadow:0 0 0 4px rgba(14,99,244,.12);
  background:#fff;
}

.hmp-v51-panel button[type="submit"]{
  width:100%;
  height:56px;
  border:0;
  border-radius:16px;
  background:linear-gradient(135deg,#0e63f4,#05a7f2);
  color:#fff;
  font-size:16px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 30px rgba(14,99,244,.22);
}

body.hmp-v51-modal-open{
  overflow:hidden;
}

@media(max-width:560px){
  .hmp-v51-login-box{
    padding:24px 18px;
    border-radius:24px;
  }
  .hmp-v51-panel h2{
    font-size:26px;
  }
}

/* HMP v5.4 Doctor Dashboard Sidebar Cut Fix */
.hmp-pro-dashboard{width:100%;max-width:1260px;overflow-x:hidden}
.hmp-pro-layout{grid-template-columns:minmax(0,1fr) minmax(280px,320px);max-width:100%;overflow:visible}
.hmp-pro-layout>div,.hmp-pro-layout>aside{min-width:0;max-width:100%}
.hmp-pro-layout>aside{width:100%}
.hmp-pro-card{max-width:100%;overflow:hidden}
.hmp-pro-card div[style*="overflow:auto"]{max-width:100%;overflow-x:auto!important;overflow-y:hidden}
.hmp-pro-table{min-width:760px}
.hmp-pro-table th,.hmp-pro-table td{white-space:normal}
.hmp-action-row{min-width:210px}
@media(max-width:1180px){.hmp-pro-layout{grid-template-columns:1fr}.hmp-pro-layout>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hmp-pro-layout>aside .hmp-pro-card{margin-bottom:0}}
@media(max-width:700px){.hmp-pro-layout>aside{display:block}.hmp-pro-layout>aside .hmp-pro-card{margin-bottom:18px}.hmp-pro-table{min-width:680px}.hmp-action-row{min-width:180px}}
