/* Global responsive overrides (mobile-first) */

/* Prevent horizontal scroll */
html, body {
  overflow-x: hidden;
}

/* Typography scaling */
html { font-size: 16px; }
@media (max-width: 1200px) { html { font-size: 15px; } }
@media (max-width: 992px)  { html { font-size: 15px; } }
@media (max-width: 768px)  { html { font-size: 14px; } }
@media (max-width: 576px)  { html { font-size: 14px; } }

/* Utility tweaks */
img { max-width: 100%; height: auto; }
.table-responsive { width: 100%; overflow-x: auto; }

/* Soft UI specific wrappers */
.main-content { padding-left: min(2rem, 4vw); padding-right: min(2rem, 4vw); }
@media (max-width: 991.98px) {
  .sidenav { transform: translateX(-100%); }
}

/* Cards and grids */
.row .card { min-height: auto; }
@media (max-width: 991.98px) {
  .row > [class*="col-"] { margin-bottom: 1rem; }
}

/* Tables */
table { width: 100%; }
table th, table td { white-space: nowrap; }
@media (max-width: 575.98px) {
  table th, table td { padding: 0.5rem 0.75rem; font-size: 0.875rem; }
}

/* Helper: hide heavy decorative canvases on small screens by default */
@media (max-width: 767.98px) {
  #globe, .decorative-canvas { display: none !important; }
}

/* Profile picture consistency */
.rounded-circle[id*="image"] {
  object-fit: cover;
  min-width: 40px;
  max-width: 40px;
  min-height: 40px;
  max-height: 40px;
}

/* Revolution Slider containment */
rs-module-wrap, rs-module, rs-slides {
  max-width: 100% !important;
  overflow: hidden !important;
}

rs-layer {
  max-width: 100% !important;
}

/* Page: my_portfolio overrides that are safe globally */
body.portfolio .row .col-lg-3 .card,
body.portfolio .row .col-lg-4 .card,
body.portfolio .row .col-lg-5 .card,
body.portfolio .row .col-lg-7 .card { height: auto !important; }
@media (max-width: 991.98px) {
  body.portfolio .kpi-value { font-size: 1.1rem; }
}


