.mobile-app-home{display:none}
.mobile-bottom-nav,.patient-mobile-nav{display:none}

/* BookMyDoctor Phase 32.1 — Mobile App-like UI
   Desktop is intentionally unaffected. */
@media (max-width: 768px){
  :root{--app-bg:#f4f7fb;--app-card:#fff;--app-text:#163247;--app-muted:#718190;--app-line:#e4ebf1;--app-blue:#0b6bcb;--app-green:#12836f}
  html{background:var(--app-bg);scroll-behavior:smooth}
  body{background:var(--app-bg);color:var(--app-text);padding-bottom:84px;-webkit-tap-highlight-color:transparent}
  .container{width:100%;max-width:none;padding-left:16px;padding-right:16px}
  main{overflow:hidden}
  .site-header.mobile-app-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,230,238,.88);box-shadow:0 4px 22px rgba(24,56,78,.06)}
  .site-header .nav-wrap{height:62px;min-height:62px;padding:0 16px}
  .site-header .brand{font-size:18px}
  .site-header .brand-mark{width:31px;height:31px;border-radius:10px;font-size:21px}
  .site-header .nav-cta{display:none!important}
  .site-header nav{position:fixed;left:12px;right:12px;top:68px;display:none!important;background:#fff;border:1px solid var(--app-line);border-radius:18px;padding:8px;box-shadow:0 20px 45px rgba(18,51,72,.18);z-index:99}
  body.menu-open .site-header nav{display:grid!important}
  .site-header nav a{padding:12px 13px;border-radius:11px;font-size:14px}
  .menu-toggle{display:flex!important;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--app-line);background:#fff;border-radius:12px;color:var(--app-text);font-size:18px}
  .page-head,.discovery-head,.profile-hero{padding:24px 0 20px!important;border-radius:0 0 24px 24px}
  .page-head h1,.discovery-head h1,.profile-title h1{font-size:27px!important;line-height:1.16;margin-bottom:8px}
  .page-head p,.discovery-head p,.lead{font-size:14px!important;line-height:1.55}
  .section{padding:22px 0!important}
  .section-heading{align-items:flex-end;gap:10px}
  .section-heading h2{font-size:21px;line-height:1.2}
  .eyebrow{font-size:10px;letter-spacing:.1em}
  .panel,.consult-card,.result-card,.patient-card,.side-note,.filter-panel{border-radius:18px!important;border:1px solid var(--app-line)!important;box-shadow:0 7px 24px rgba(26,60,82,.055)!important}
  .panel,.patient-card{padding:17px!important}
  .btn-primary,.btn-book,.btn-outline,.btn-whatsapp,.btn-map,.btn-light{min-height:44px;border-radius:12px!important;display:inline-flex;align-items:center;justify-content:center;font-weight:750}
  input,select,textarea{font-size:16px!important;border-radius:12px!important;min-height:46px}
  textarea{min-height:100px}
  footer{display:none!important}

  /* Home */
  .hero{padding:26px 0 18px!important}
  .hero-grid{display:block!important}
  .hero-copy h1{font-size:31px!important;line-height:1.08!important;letter-spacing:-.03em}
  .hero-copy p{font-size:14px!important}
  .hero-visual{display:none!important}
  .hero-search,.search-box,.search-form{border-radius:18px!important;padding:12px!important;box-shadow:0 12px 30px rgba(21,63,92,.08)!important}
  .hero-search form,.search-form{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .hero-search button,.search-form button{width:100%;min-height:48px;border-radius:13px}
  .stats,.home-stats{grid-template-columns:repeat(2,1fr)!important;gap:9px!important}
  .stat,.home-stat{border-radius:16px!important;padding:14px!important}
  .specialization-grid,.location-grid,.district-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .specialization-card,.location-card,.district-card{border-radius:16px!important;padding:14px!important;min-height:100px}
  .district-card strong{font-size:14px!important}
  .district-card span{font-size:11px!important}
  .professional-block,.professional-card{border-radius:20px!important}

  /* Search / discovery */
  .discovery-layout{display:block!important}
  .discovery-filters{position:static!important;margin-bottom:13px}
  .filter-panel{display:grid!important;grid-template-columns:1fr 1fr!important;padding:14px!important;gap:10px!important}
  .filter-title,.filter-checks,.filter-panel>.btn-primary{grid-column:1/-1!important}
  .filter-panel>label:first-of-type,.filter-panel>label:nth-of-type(2),.filter-panel>label:nth-of-type(3),.filter-panel>label:nth-of-type(4){grid-column:1/-1}
  .filter-two{display:contents!important}
  .filter-checks{background:#f7fafc;border-radius:13px;padding:10px!important}
  .filter-checks label{font-size:12px}
  .results-toolbar{position:sticky;top:62px;z-index:20;background:rgba(244,247,251,.96);backdrop-filter:blur(10px);padding:9px 0;margin-bottom:8px}
  .results-toolbar strong{font-size:18px}
  .sort-form select{min-height:38px!important;font-size:12px!important}
  .doctor-list{display:grid;gap:12px}
  .result-card.discovery-card,.result-card{display:grid!important;grid-template-columns:74px 1fr!important;gap:12px!important;padding:14px!important}
  .result-photo{width:74px!important;height:74px!important;border-radius:18px!important}
  .result-photo img{border-radius:18px!important}
  .result-main{min-width:0}
  .result-main h2{font-size:18px!important;margin:4px 0}
  .result-main .qual,.specialty-text,.clinic-summary p{font-size:12px!important;line-height:1.45}
  .doctor-badges{gap:4px!important}
  .verified,.featured-pill,.filter-chip{font-size:9px!important}
  .result-actions{grid-column:1/-1;display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}
  .result-actions a{width:100%!important;min-height:42px;font-size:12px!important}
  .result-actions a:first-child:nth-last-child(3){grid-column:1/-1}
  .next-slot{font-size:11px!important;margin-top:7px}
  .mode-pills span{font-size:9px!important}

  /* Doctor profile */
  .profile-top{display:grid!important;grid-template-columns:82px 1fr!important;gap:14px!important;align-items:center}
  .profile-photo{width:82px!important;height:82px!important;border-radius:22px!important}
  .profile-photo img{border-radius:22px!important}
  .profile-title h1{font-size:24px!important}
  .chips{gap:5px!important}
  .chips span{font-size:10px!important;padding:6px 8px!important}
  .profile-grid{display:block!important}
  .profile-grid aside{margin-top:14px}
  .sticky{position:static!important}
  .consult-title{margin-top:22px}
  .consult-title h2{font-size:20px}
  .consult-card{padding:14px!important;margin-bottom:13px!important}
  .consult-head{display:block!important}
  .consult-head h3{font-size:18px!important;margin:6px 0}
  .fee{margin-top:10px;display:inline-flex!important;align-items:baseline;gap:7px}
  .weekly{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .week-grid{min-width:650px;grid-template-columns:repeat(7,1fr)!important;gap:6px!important}
  .day-box{border-radius:11px!important;padding:8px 6px!important}
  .booking-row{display:block!important}
  .booking-row>div:first-child{margin-bottom:10px}
  .booking-buttons{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .booking-buttons a{width:100%!important;font-size:11px}
  .profile-next-slot{border-radius:13px!important}

  /* Booking */
  .booking-layout{display:block!important}
  .booking-page .panel{margin-bottom:12px}
  .booking-stepper{display:grid!important;grid-template-columns:repeat(5,1fr);gap:4px!important;overflow:hidden}
  .booking-stepper span{padding:6px 3px!important;text-align:center;font-size:8px!important;white-space:nowrap}
  .booking-form h2{font-size:18px;margin-top:20px}
  .booking-form .form-grid{grid-template-columns:1fr!important;gap:10px!important}
  .booking-submit{width:100%;position:sticky;bottom:88px;z-index:8;box-shadow:0 10px 26px rgba(11,107,203,.25)}
  .booking-page aside{margin-top:12px}
  .booking-doctor-summary{border-radius:14px!important}
  .status-wrap{padding:0!important}
  .status-result{grid-template-columns:1fr!important}

  /* Mobile bottom navigation */
  .mobile-bottom-nav,.patient-mobile-nav{position:fixed;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));height:68px;background:rgba(255,255,255,.97);border:1px solid #dfe8ef;border-radius:21px;display:grid!important;grid-template-columns:repeat(5,1fr);align-items:center;z-index:110;box-shadow:0 16px 38px rgba(20,50,70,.2);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:5px 4px}
  .mobile-bottom-nav a,.patient-mobile-nav a{display:grid;place-items:center;align-content:center;gap:1px;color:#71808c;text-decoration:none;font-weight:700;font-size:10px;min-width:0}
  .mobile-bottom-nav a span,.patient-mobile-nav a span{font-size:20px;line-height:1}
  .mobile-bottom-nav a small,.patient-mobile-nav a small{font-size:9px}
  .mobile-nav-book span,.patient-mobile-book span{width:38px;height:38px;border-radius:14px;background:linear-gradient(145deg,#0b6bcb,#1384d5);color:#fff;display:grid!important;place-items:center;font-size:23px!important;box-shadow:0 7px 15px rgba(11,107,203,.25);margin-top:-18px}
  .mobile-nav-book small,.patient-mobile-book small{margin-top:1px;color:#0b6bcb}

  /* Patient portal */
  .patient-app-shell{padding-bottom:84px!important}
  .patient-app-shell .patient-top{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid var(--app-line)}
  .patient-app-shell .patient-nav{padding:12px 16px!important;min-height:60px;flex-wrap:nowrap!important}
  .patient-app-shell .patient-nav .brand{font-size:16px}
  .patient-app-shell .patient-nav>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-weight:700;max-width:110px}
  .patient-app-shell .patient-nav>a:last-child{font-size:11px}
  .patient-app-shell .patient-content{padding:16px!important;max-width:none}
  .patient-app-shell .patient-menu{display:flex!important;overflow-x:auto;flex-wrap:nowrap!important;gap:7px!important;margin:0 -16px 16px!important;padding:0 16px 7px;scrollbar-width:none}
  .patient-app-shell .patient-menu::-webkit-scrollbar{display:none}
  .patient-app-shell .patient-menu a{white-space:nowrap;border-radius:999px!important;padding:8px 11px!important;font-size:10px!important;box-shadow:none!important}
  .patient-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .patient-grid .patient-stat:nth-child(3):last-child{grid-column:1/-1}
  .patient-stat{padding:14px!important;border-radius:16px!important;min-height:104px;display:flex;flex-direction:column;justify-content:center}
  .patient-stat strong{font-size:26px!important}
  .patient-stat,.patient-stat a,.patient-stat small{font-size:11px}
  .patient-card .section-heading h2{font-size:18px}
  .patient-card .table-wrap{overflow:visible!important}
  .patient-card table,.patient-card thead,.patient-card tbody,.patient-card tr,.patient-card td{display:block;width:100%}
  .patient-card thead{display:none}
  .patient-card tr{border:1px solid var(--app-line);border-radius:14px;padding:12px;margin-bottom:9px;background:#fff}
  .patient-card td{border:0!important;padding:4px 0!important;font-size:12px}
  .patient-card td:first-child{font-size:14px}
  .patient-mobile-nav{display:grid!important}

  /* Patient login/register */
  .patient-login-body{padding-bottom:0!important}
  .patient-login-page{min-height:100svh!important;padding:0!important;background:linear-gradient(180deg,#eaf5ff 0,#f8fbfd 34%,#fff 100%)!important}
  .patient-login-shell{display:block!important;min-height:100svh!important}
  .patient-login-visual{display:none!important}
  .patient-login-card{width:100%!important;max-width:none!important;min-height:100svh!important;padding:26px 18px 30px!important;border-radius:0!important;box-shadow:none!important;display:flex!important;flex-direction:column;justify-content:center}
  .patient-login-mobile-brand{display:block!important;margin-bottom:30px!important}
  .patient-login-mobile-brand a{display:inline-flex;align-items:center;gap:8px;font-size:18px;font-weight:800}
  .patient-login-mobile-brand a span{width:33px;height:33px;border-radius:11px;background:#0b6bcb;color:#fff;display:grid;place-items:center;font-size:23px}
  .patient-login-head h2{font-size:27px!important;line-height:1.15}
  .patient-login-head p{font-size:13px!important}
  .patient-login-input-wrap{border-radius:14px!important;min-height:52px}
  .patient-login-submit,.patient-login-create{min-height:52px!important;border-radius:14px!important}
}
@media (max-width:390px){
  .container{padding-left:13px;padding-right:13px}
  .specialization-grid,.location-grid,.district-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .result-card.discovery-card,.result-card{grid-template-columns:66px 1fr!important;padding:12px!important}
  .result-photo{width:66px!important;height:66px!important}
  .booking-buttons,.result-actions{grid-template-columns:1fr!important}
}

@media (max-width:768px){
  .mobile-app-home{display:block;padding:18px 16px 8px;background:linear-gradient(180deg,#edf8f4 0,#f7fbfd 170px,#f4f7fb 100%);margin-top:-1px}
  .mobile-app-home-top{display:flex;justify-content:space-between;align-items:center}
  .mobile-user{display:flex;align-items:center;gap:10px}.mobile-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#0b6bcb,#49a6d8);color:#fff;display:grid;place-items:center;font-weight:800;font-size:13px;box-shadow:0 6px 16px rgba(11,107,203,.18)}
  .mobile-user small{display:block;color:#6f817e;font-size:10px}.mobile-user strong{display:block;font-size:16px;margin-top:1px;color:#173d4d}.mobile-bell{width:38px;height:38px;border-radius:13px;background:#fff;border:1px solid #e0ebe6;display:grid;place-items:center;font-size:20px;box-shadow:0 6px 16px rgba(25,65,60,.06)}
  .mobile-location{margin:8px 0 13px 52px;font-size:10px;color:#658078}.mobile-app-search{height:50px;background:#fff;border:1px solid #dfe9e5;border-radius:16px;display:grid;grid-template-columns:34px 1fr 36px;align-items:center;padding:0 8px;box-shadow:0 9px 24px rgba(21,65,60,.07)}.mobile-app-search>span{font-size:21px;color:#7a8d8a;text-align:center}.mobile-app-search input{border:0!important;min-height:38px!important;outline:0;background:transparent;padding:0 6px!important}.mobile-app-search button{width:32px;height:32px;border-radius:10px;border:0;background:#e9f5f1;color:#18735f;font-weight:800}
  .mobile-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px 8px;margin:20px 0}.mobile-service-grid a{display:grid;justify-items:center;gap:7px;text-align:center;color:#314b57}.mobile-service-grid b{font-size:9px;line-height:1.2;font-weight:700}.service-icon{width:48px;height:48px;border-radius:50%;background:#fff;display:grid;place-items:center;color:#23836d;font-size:11px;font-weight:800;box-shadow:0 7px 18px rgba(28,73,66,.08);border:1px solid #e3eee9}
  .mobile-health-banner{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#6e5bd6,#8a74e8);border-radius:18px;padding:16px 18px;color:#fff;box-shadow:0 12px 28px rgba(105,86,207,.22);margin:4px 0 22px}.mobile-health-banner div{display:grid;gap:3px}.mobile-health-banner small{font-size:9px;opacity:.85;text-transform:uppercase;letter-spacing:.08em}.mobile-health-banner strong{font-size:17px;line-height:1.18}.mobile-health-banner span{font-size:10px;opacity:.9}.mobile-health-banner>b{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.17);display:grid;place-items:center;font-size:28px;border:1px solid rgba(255,255,255,.3)}
  .mobile-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:10px}.mobile-section-head small{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#6f837f}.mobile-section-head h2{font-size:19px;margin:2px 0 0}.mobile-section-head a{font-size:11px;color:#0b6bcb;font-weight:700}
  .mobile-specialist-scroll{display:flex;overflow-x:auto;gap:11px;padding:2px 1px 10px;margin-right:-16px;scroll-snap-type:x proximity;scrollbar-width:none}.mobile-specialist-scroll::-webkit-scrollbar{display:none}.mobile-doctor-card{flex:0 0 250px;background:#fff;border:1px solid #e2ebe7;border-radius:18px;padding:13px;display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:start;box-shadow:0 8px 22px rgba(25,65,60,.065);scroll-snap-align:start}.mobile-doctor-photo{width:58px;height:58px;border-radius:14px;background:#e8f3ef;overflow:hidden;display:grid;place-items:center;color:#397968;font-size:13px;font-weight:800}.mobile-doctor-photo img{width:100%;height:100%;object-fit:cover}.mobile-doctor-info{min-width:0}.mobile-doctor-info h3{font-size:13px;margin:1px 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-doctor-info p{font-size:10px;color:#28795f;font-weight:700;margin:0}.mobile-doctor-info>span{display:block;font-size:9px;color:#788a86;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.mobile-doctor-meta{display:flex;gap:8px;align-items:center;margin-top:6px}.mobile-doctor-meta b{font-size:9px;color:#e09215}.mobile-doctor-meta em{font-size:9px;font-style:normal;color:#70827e}.mobile-doctor-side{text-align:right}.mobile-doctor-side strong{display:block;font-size:13px;color:#183f4c}.mobile-doctor-side small{font-size:8px;color:#7b8d89}.mobile-doctor-book{grid-column:1/-1;min-height:34px;background:#e8f5f0;color:#19735e;border-radius:10px;display:grid;place-items:center;font-size:10px;font-weight:800}
  .mobile-app-home + .hero{display:none!important}
}

@media(max-width:768px){
.site-header .brand.brand-image-link{font-size:0!important;max-width:190px}
.site-header .brand.brand-image-link .brand-logo-image{width:178px!important;height:42px!important}
.patient-app-shell .patient-nav .brand.brand-image-link{max-width:175px}
.patient-app-shell .patient-nav .brand-logo-image{width:165px!important;height:38px!important}
.patient-login-mobile-brand a span{display:none!important}
.patient-login-mobile-brand .auth-brand-logo{width:200px!important;height:48px!important}
}

@media(max-width:768px){
.queue-token-ticket{padding:18px 12px!important;border-radius:17px!important}
.queue-token-ticket b{font-size:38px!important}
.queue-token-inline,.patient-token-big{font-size:24px!important}
}

/* Phase 35 — installed PWA refinements */
@media (display-mode: standalone) {
  html,body{min-height:100dvh}
  body{padding-top:env(safe-area-inset-top,0)}
  .mobile-app-header,.patient-top,.portal-mobile-topbar{padding-top:env(safe-area-inset-top,0)}
  .mobile-bottom-nav,.patient-bottom-nav,.portal-mobile-bottom-nav{padding-bottom:max(env(safe-area-inset-bottom,0),8px)}
}
