/* контейнер с безопасными отступами и без горизонтального скролла */
.container{max-width:980px;margin:24px auto;padding:0 16px;overflow-x:hidden}
@media (max-width:640px){ .container{padding:0 14px} }

.profile{
  display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;
  background:#fff;border-radius:16px;padding:16px;box-shadow:0 4px 20px rgba(0,0,0,.06)
}
@media (max-width:480px){
  .profile{grid-template-columns:1fr;gap:12px;padding:14px;border-radius:14px}
}

/* аватар */
.avatar-wrap{ position:relative; display:inline-block; }
.avatar{
  position: relative; display: inline-block;
  width:120px; height:120px; border-radius:16px; overflow:hidden;
}
.avatar img{
  width:100%; height:100%; object-fit:cover; border-radius:inherit; background:#fff;
}

/* имя + верификация */
.h1{font-size:28px;margin:0 0 4px}
.doctor-name{ display:inline-flex; align-items:center; gap:.375rem; }
.v-badge{ color:#0095F6; line-height:1; vertical-align:text-bottom; }

/* бейдж Instagram на аватаре */
.avatar .ig-badge{
  position: absolute; right: 6px; bottom: 6px;
  width: 32px; height: 32px; border-radius: 8px;
  display: grid; place-items: center; overflow: hidden; z-index: 2;
  box-shadow: 0 4px 12px rgba(0,0,0,.18);
}
.ig-badge svg{ width:100%; height:100%; display:block; }
@media (max-width:480px){
  .ig-badge{ right:-10px; bottom:-10px; width:32px; height:32px; border-radius:8px; }
}

/* сетка секций */
.sections{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-top:16px;
}
@media (max-width:1024px){ .sections{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:640px){ .sections{grid-template-columns:1fr;gap:12px} }

.card{
  background:#fff;border-radius:16px;padding:16px;
  box-shadow:0 4px 20px rgba(0,0,0,.06)
}
@media (max-width:480px){ .card{padding:14px;border-radius:14px} }

.muted{color:#667085}

table.schedule{width:100%;border-collapse:collapse}
table.schedule td{padding:8px 6px;border-bottom:1px solid #eef1f4}

/* кнопки и бейджи */
.actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.btn{padding:10px 16px;border-radius:10px;border:0;background:#f3f4f6;color:#111;cursor:pointer;text-decoration:none;display:inline-block}
.btn.btn-primary{background:#0d6efd;color:#fff}
.badge{display:inline-block;background:#eff6ff;color:#0d6efd;padding:2px 8px;border-radius:999px;font-size:12px}

/* длинные тексты не ломают вёрстку */
.card p{word-break:break-word;overflow-wrap:anywhere}

/* мелкие утилити-классы (если нужны) */
.small{font-size:14px;line-height:1.6}
