/* মেডিকমপ্লেক্স — লোগোর রং: সবুজ #7ac143, নীল #1b9cd8; পরিচ্ছন্ন সাদা পটভূমি */

/* Hind Siliguri-তে বাংলা "১" ও "৯" প্রায় একই রকম দেখায় — তাই শুধু সংখ্যার (০-৯) গ্লিফ
   Noto Serif Bengali থেকে প্যাচ করা হলো; প্রতিটি ওজন আলাদা করে, নইলে exact-weight মিলে
   মূল গ্লিফই জেতে (collegiator প্রজেক্টে শেখা) */
@font-face{font-family:"Hind Siliguri";font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JfcAHkqy6rngHw.woff2) format('woff2');unicode-range:U+09E6-09EF}
@font-face{font-family:"Hind Siliguri";font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/notoserifbengali/v31/hYkhPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdKyg8JCJZ.woff2) format('woff2');unicode-range:U+09E6-09EF}
@font-face{font-family:"Hind Siliguri";font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/notoserifbengali/v31/hYkhPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdKyg8JCJZ.woff2) format('woff2');unicode-range:U+09E6-09EF}
@font-face{font-family:"Hind Siliguri";font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/notoserifbengali/v31/hYkuPvggTvnzO14VSXltirUdnnkt1pwmWrprmO7RjE0a5BtdATYU1crFaM_5JffnGUqy6rngHw.woff2) format('woff2');unicode-range:U+09E6-09EF}

:root{
  --green:#7ac143; --green-d:#5ea32c;
  --blue:#1b9cd8; --blue-d:#167fb2;
  --teal:#0e7c86; --teal-d:#0a5f67;
  --ink:#16323a; --muted:#5b7078;
  --bg:#ffffff; --bg-soft:#f4f9fa; --line:#dde8ea;
  --ok-bg:#e8f6e4; --ok-fg:#2f6b1a; --err-bg:#fdecec; --err-fg:#9d2222;
  --warn-bg:#fdf3dc; --warn-fg:#8a5c00;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:"Hind Siliguri","Noto Sans Bengali",system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65;font-size:16px}
img{max-width:100%}
a{color:var(--teal)}
h1,h2,h3{font-family:"Noto Serif Bengali","Hind Siliguri",serif;line-height:1.35;text-wrap:balance}
h1{font-size:clamp(24px,4.5vw,32px)} h2{font-size:clamp(19px,3vw,23px)} h3{font-size:17px}
.wrap{max-width:1060px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.small{font-size:13.5px} .muted{color:var(--muted)} .nowrap{white-space:nowrap}
.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ───── বাটন ───── */
.btn{display:inline-block;border:1.5px solid transparent;border-radius:9px;padding:9px 18px;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;text-align:center;background:var(--teal);color:#fff}
.btn:hover{background:var(--teal-d)}
.btn-primary{background:var(--blue)} .btn-primary:hover{background:var(--blue-d)}
.btn-accent{background:var(--green);color:#163208} .btn-accent:hover{background:var(--green-d);color:#fff}
.btn-line{background:#fff;color:var(--teal);border-color:var(--line)} .btn-line:hover{background:var(--bg-soft)}
.btn-line-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)} .btn-line-w:hover{background:rgba(255,255,255,.12)}
.btn-danger{color:var(--err-fg)}
.btn-sm{padding:5px 12px;font-size:13.5px;border-radius:7px}
.btn-block{display:block;width:100%}

/* ───── টপবার ও হেডার ───── */
.topbar{background:var(--teal);color:#fff;font-size:13.5px}
.topbar .wrap{display:flex;justify-content:space-between;gap:10px;padding-top:5px;padding-bottom:5px;flex-wrap:wrap}
.topbar a{color:#fff;text-decoration:none}
.site-head{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.site-head .wrap{display:flex;align-items:center;gap:14px;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink)}
.brand-text{display:flex;flex-direction:column;line-height:1.2}
.brand-text b{font-size:19px;font-family:"Noto Serif Bengali",serif}
.brand-text small{font-size:11px;color:var(--muted)}
.logo-img{height:40px;width:auto}
.site-nav{display:flex;align-items:center;gap:2px;margin-left:auto;flex-wrap:wrap}
.site-nav a{text-decoration:none;color:var(--ink);padding:7px 10px;border-radius:7px;font-size:15px;font-weight:500}
.site-nav a:hover{background:var(--bg-soft)}
.site-nav a.on{color:var(--teal);font-weight:700}
.nav-cta{margin-left:6px}
.nav-toggle{display:none;margin-left:auto;background:none;border:1.5px solid var(--line);border-radius:8px;padding:9px;cursor:pointer}
.nav-toggle span{display:block;width:20px;height:2px;background:var(--ink);margin:4px 0}

/* ───── হিরো ───── */
.hero{background:linear-gradient(135deg,var(--teal) 0%,var(--blue-d) 100%);color:#fff;text-align:center}
.hero .wrap{padding-top:46px;padding-bottom:46px}
.hero h1{font-size:clamp(28px,6vw,42px)}
.hero-tag{font-size:clamp(16px,2.5vw,19px);margin-top:4px;opacity:.95}
.hero-sub{font-size:14px;opacity:.85;margin-top:6px}
.hero-search{display:flex;gap:8px;max-width:560px;margin:22px auto 0}
.hero-search input{flex:1;min-width:0;border:0;border-radius:9px;padding:12px 14px;font:inherit;font-size:16px}
.hero-cta{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.band{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding-top:18px;padding-bottom:18px}
.stats-row .stat{text-align:center}
.stats-row .v{font-size:24px;font-weight:700;color:var(--teal);font-family:"Noto Serif Bengali",serif}
.stats-row .l{font-size:13px;color:var(--muted)}

/* ───── সেকশন ও কার্ড ───── */
.sec .wrap{padding-top:34px;padding-bottom:34px}
.sec-alt{background:var(--bg-soft)}
.sec h2{margin-bottom:14px}
.grid{display:grid;gap:14px}
.cols2{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}
.cols3{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px}
.sec-alt .card{border-color:#d2e2e5}

/* চিকিৎসক কার্ড */
.svc-card{border-top:3px solid var(--green);text-align:center;padding:20px 16px}
.svc-icon{width:40px;height:40px;color:var(--teal);margin:0 auto 8px;display:block}
.svc-card h3{color:var(--teal-d)}
.eq-card{border-top:3px solid var(--blue);padding:0;overflow:hidden}
.eq-photo{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.eq-body{padding:12px 16px 14px}
.eq-grid.cols3{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.eq-grid.cols2{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.eq-brand{font-weight:700;color:var(--blue-d);font-size:14.5px;margin:2px 0 6px}
.eq-country{font-weight:600;font-size:11.5px;background:var(--accent-soft,#e2f1f2);background:#e2f1f2;color:var(--teal-d);border-radius:6px;padding:1px 8px;margin-left:6px;vertical-align:middle}
.doc-card{display:flex;gap:12px;text-decoration:none;color:var(--ink)}
.doc-card:hover{border-color:var(--blue)}
.doc-ava{flex:none;width:104px;height:104px;border-radius:12px;background:var(--bg-soft);border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;color:var(--teal);overflow:hidden}
.doc-ava img{width:100%;height:100%;object-fit:cover}
.doc-ava.lg{width:180px;height:180px;font-size:56px;border-radius:14px}
.doc-info{min-width:0}
.doc-info h3{color:var(--teal-d)}
.spec{color:var(--green-d);font-weight:600;font-size:14px}
.sch-line{font-size:13px;color:var(--muted);margin-top:4px}
.doc-head{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.sch-list{list-style:none}
.sch-list li{padding:6px 0;border-bottom:1px dashed var(--line)}
.sch-list li:last-child{border-bottom:0}

/* ───── পরীক্ষা তালিকা ───── */
.test-search{display:flex;gap:8px;max-width:560px;margin:14px 0}
.test-search input{flex:1;min-width:0;border:1.5px solid var(--line);border-radius:9px;padding:10px 14px;font:inherit;font-size:16px}
.test-search input:focus{outline:none;border-color:var(--blue)}
.chips{display:flex;gap:8px;overflow-x:auto;padding:4px 0 10px;scrollbar-width:thin}
.chip{flex:none;display:inline-block;border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:5px 13px;font-size:14px;text-decoration:none;white-space:nowrap}
.chip .n{color:var(--muted);font-size:12px;margin-left:4px}
.chip.on{background:var(--teal);border-color:var(--teal);color:#fff;font-weight:700}
.chip.on .n{color:#cfeef2}
.cat-h{color:var(--teal);margin:20px 0 8px}
.cat-h small{font-family:"Hind Siliguri",sans-serif;font-size:13px;color:var(--muted);font-weight:500}
ul.tests{list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
ul.tests li{display:flex;align-items:baseline;gap:10px;padding:10px 16px;border-top:1px solid var(--line);font-size:15px}
ul.tests li:first-child{border-top:0}
ul.tests .t-name{flex:1;min-width:0;overflow-wrap:anywhere;text-decoration:none;color:var(--ink)}
ul.tests .t-name:hover{color:var(--blue)}
.t-price{flex:none;font-weight:700;color:var(--teal);font-variant-numeric:tabular-nums}
.tag{flex:none;font-size:11.5px;font-weight:600;background:var(--warn-bg);color:var(--warn-fg);border-radius:6px;padding:1px 8px}
.detail-t th{text-align:right;color:var(--muted);font-weight:500;width:140px;padding:6px 12px 6px 0;vertical-align:top}
.detail-t td{padding:6px 0}

/* পরিচালনা পরিষদ */
.board-card{display:flex;gap:16px;align-items:flex-start}
.board-rev{flex-direction:row-reverse;text-align:right}
.board-photo{flex:none;width:120px;height:140px;border-radius:12px;background:var(--bg-soft);border:2px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700;color:var(--teal)}
.board-photo img{width:100%;height:100%;object-fit:cover}
.board-body{min-width:0}
.board-body h3{color:var(--teal-d)}
.board-title{color:var(--green-d);font-weight:600;font-size:13.5px;margin-bottom:6px}
.board-msg{font-size:14px;color:var(--muted);font-style:italic}
@media (max-width:480px){.board-card{flex-direction:column;align-items:center;text-align:center}}

/* ───── টেবিল ───── */
.table-wrap{overflow-x:auto}
table.t{width:100%;border-collapse:collapse;background:#fff;font-size:14.5px}
table.t th,table.t td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
table.t thead th{background:var(--bg-soft);color:var(--teal-d);font-weight:600;white-space:nowrap}
table.t .num{text-align:right}
.row-skip{opacity:.5}
.warn-text{color:var(--warn-fg)}

/* ───── ফর্ম ───── */
.field{margin-bottom:12px}
.field label{display:block;font-size:13.5px;font-weight:600;color:var(--teal-d);margin-bottom:4px}
input[type=text],input[type=search],input[type=tel],input[type=date],input[type=time],input[type=number],input[type=password],input[type=file],select,textarea{
  width:100%;border:1.5px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit;font-size:15px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blue)}
.req{color:var(--err-fg)}
.check{display:block;font-size:14px;margin-top:6px}
.check input{width:auto;margin-right:6px}
.check.inline{display:inline-block;margin-right:10px}
.days-row{display:inline-flex;flex-wrap:wrap;gap:2px}
.alert{border-radius:9px;padding:10px 14px;margin:10px 0;font-size:14.5px}
.alert-ok{background:var(--ok-bg);color:var(--ok-fg)}
.alert-error{background:var(--err-bg);color:var(--err-fg)}
.alert-warn{background:var(--warn-bg);color:var(--warn-fg)}
.prose p{margin-bottom:12px}
.map-box iframe{width:100%;height:280px;border:0;border-radius:12px}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}

/* ───── ব্যাজ (ওয়ার্কফ্লো) ───── */
.badge{display:inline-block;font-size:12px;font-weight:700;border-radius:6px;padding:2px 9px;white-space:nowrap}
.b-draft{background:#eef1f3;color:#51616b}
.b-pending{background:var(--warn-bg);color:var(--warn-fg)}
.b-verified{background:#e2f1fb;color:var(--blue-d)}
.b-published{background:var(--ok-bg);color:var(--ok-fg)}
.b-recheck{background:var(--err-bg);color:var(--err-fg)}
.b-archived{background:#e8e8e8;color:#666}

/* ───── ফুটার ───── */
.site-foot{background:var(--ink);color:#cfe0e4;margin-top:30px}
.site-foot .brand{color:#fff}
.site-foot h3{color:#fff;font-size:15px;margin-bottom:8px}
.site-foot a{color:#9fd3e2}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;padding-top:30px;padding-bottom:20px}
.foot-link{display:block;text-decoration:none;font-size:14px;padding:2px 0}
.foot-bottom{border-top:1px solid rgba(255,255,255,.15);font-size:13px}
.foot-bottom .wrap{padding-top:10px;padding-bottom:14px}
.foot-credit{text-align:right;margin-top:4px;opacity:.9}
.foot-credit a{font-weight:600}

/* ───── অ্যাডমিন ───── */
.admin-body{background:#eef3f4}
.admin-top{background:var(--teal-d);color:#fff}
.admin-top .wrap{display:flex;align-items:center;gap:10px;padding-top:8px;padding-bottom:8px;flex-wrap:wrap}
.admin-brand{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none}
.admin-nav{display:flex;gap:2px;flex-wrap:wrap}
.admin-nav a{color:#d6edf0;text-decoration:none;padding:5px 9px;border-radius:6px;font-size:14px}
.admin-nav a:hover{background:rgba(255,255,255,.12)}
.admin-nav a.on{background:rgba(255,255,255,.2);color:#fff;font-weight:600}
.admin-top .me{margin-left:auto;font-size:13.5px;display:flex;align-items:center;gap:8px}
.admin-main .wrap{padding-top:20px;padding-bottom:40px}
.admin-h1{font-size:23px;color:var(--teal-d);margin-bottom:14px}
.admin-body .card{box-shadow:0 1px 3px rgba(20,60,70,.06)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.stats .stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:12px 14px}
.stats .l{font-size:12.5px;color:var(--muted)}
.stats .v{font-size:23px;font-weight:700;color:var(--teal);font-family:"Noto Serif Bengali",serif}
.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.toolbar input,.toolbar select{width:auto}
.row-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.row-item{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border:1px solid var(--line);border-radius:9px;padding:8px 10px;background:#fff}
.row-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;flex:1;min-width:0}
.row-form input[type=text]{flex:1;min-width:120px;width:auto}

/* ───── রেসপনসিভ ───── */
@media (max-width:860px){
  .nav-toggle{display:block}
  .site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:10px 16px;gap:4px;box-shadow:0 8px 16px rgba(0,0,0,.08)}
  .site-nav.open{display:flex}
  .nav-cta{margin-left:0}
  .contact-grid{grid-template-columns:1fr}
  .topbar .wrap{justify-content:center}
}
/* ───── ইনভয়েস হিসাব ───── */
.inv-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:14px}
@media (max-width:860px){.inv-wrap{grid-template-columns:1fr}}
.inv-results{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto}
.inv-hit{display:flex;gap:8px;align-items:baseline;text-align:left;border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;font:inherit;cursor:pointer}
.inv-hit:hover{border-color:var(--blue);background:var(--bg-soft)}
.inv-hit b{margin-left:auto;color:var(--teal);white-space:nowrap}
.inv-total{margin-top:14px;border-top:2px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:4px;align-items:flex-end}
.inv-total>div{display:flex;gap:14px}
.inv-total .grand{font-size:19px;color:var(--teal-d);border-top:1px dashed var(--line);padding-top:6px}
.tubes-mini td{padding:3px 10px;font-size:13px;color:var(--muted);border-bottom:1px dashed var(--line)}
.tubes-mini .num{color:var(--ink)}
.tube-rm{border:0;background:none;color:var(--err-fg);cursor:pointer;font-size:12px;padding:0 4px;line-height:1}
.print-only{display:none}
.inv-head{text-align:center;border-bottom:1.5px solid #000;margin-bottom:12px;padding-bottom:8px}

@media print{
  .topbar,.site-nav,.nav-toggle,.hero-cta,.site-foot,.btn{display:none !important}
  .admin-top,.admin-h1,.no-print,.alert{display:none !important}
  .print-only{display:block}
  .admin-body{background:#fff}
  .inv-wrap{display:block}
  .card{border:0;padding:0}
  .inv-sheet input[type=number]{border:0;width:40px}
}
