/* Mosob 1.1.1: mobile viewport containment, naturally wrapping product text. */
html, body { max-width: 100%; }
.shell, .directory-area, .catalog-layout, .catalog-main, .product-grid,
.product-card, .product-card-top, .product-heading, .catalog-tools,
.category-chips, .featured-preview, .site-header, .header-inner,
.detail-hero, .detail-sections, .detail-copy, .entry-content { min-width: 0; }
.catalog-main { width: 100%; max-width: 100%; }
.product-heading h3, .product-heading p, .hero-lead,
.product-card .tag, .product-card .platform-row, .product-card .version,
.product-card .product-actions { overflow-wrap: anywhere; }
.product-heading h3 a { overflow-wrap: anywhere; }
.product-card-top { max-width: 100%; }
.product-icon { flex-shrink: 0; }
.product-card .version { max-width: 100%; }
.category-chips { max-width: 100%; }
.search-wrap { min-width: 0; }
.search-wrap input { width: 100%; min-width: 0; }
.product-actions { min-width: 0; }
.product-actions .btn { min-width: 0; }
@media(max-width:900px) {
  .catalog-layout { grid-template-columns: minmax(0,1fr); }
  .catalog-main { min-width:0; }
}
@media(max-width:640px) {
  .shell { width: calc(100% - 28px); max-width: var(--shell); }
  .catalog-layout, .product-grid { width:100%; max-width:100%; }
  .catalog-tools { display:grid; grid-template-columns: minmax(0,1fr) auto; gap:10px; }
  .search-wrap { grid-column:1/-1; width:100%; }
  .sort-wrap { grid-column:1; min-width:0; }
  .sort-wrap select { width:100%; max-width:100%; }
  .mobile-filter-toggle { grid-column:2; }
  .category-chips { width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; scrollbar-width:thin; }
  .product-card, .product-card-featured { width:100%; max-width:100%; padding:14px; }
  .product-card-top { display:grid; grid-template-columns: 49px minmax(0,1fr); align-items:start; column-gap:10px; row-gap:7px; }
  .product-icon { width:49px; height:49px; grid-column:1; grid-row:1 / span 2; }
  .product-heading { grid-column:2; grid-row:1; width:100%; }
  .product-heading h3, .product-card-featured .product-heading h3 { font-size:clamp(16px,4.4vw,19px); line-height:1.27; }
  .product-heading p, .product-card-featured .product-heading p { font-size:13px; line-height:1.5; }
  .version { grid-column:2; grid-row:2; justify-self:start; }
  .product-actions { flex-wrap:wrap; width:100%; gap:8px; }
  .product-actions .btn { flex:1 1 125px; white-space:normal; text-align:center; }
  .product-badge { max-width:45%; overflow-wrap:anywhere; }
  .featured-preview img { max-width:100%; height:auto; }
  .metric { min-width:0; }
  .hero-metrics { min-width:0; }
}
@media(max-width:360px) {
  .shell { width:calc(100% - 24px); }
  .metric strong { font-size:15px; }
  .metric small { font-size:9px; }
  .product-card-top { grid-template-columns:43px minmax(0,1fr); }
  .product-icon { width:43px;height:43px; }
}

/* v1.2.2 taxonomy archive and app tab navigation refinements */
.mcs-taxonomy-content{padding-top:30px;padding-bottom:56px}
.mcs-taxonomy-hero .hero-content{padding-top:46px;padding-bottom:42px}
.mcs-taxonomy-hero h1{overflow-wrap:anywhere;word-break:normal}
.mcs-taxonomy-back{display:inline-flex;color:#9fbbff;font-weight:750;margin-top:4px}
.mcs-taxonomy-list-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px}
.mcs-taxonomy-list-heading h2{font-size:clamp(22px,4vw,30px);margin:0}
.mcs-taxonomy-list-heading p{color:var(--muted);margin:0}
.mcs-taxonomy-content .navigation.pagination{margin-top:28px}
.mcs-taxonomy-content .nav-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.mcs-taxonomy-content .page-numbers{display:inline-flex;min-width:35px;justify-content:center;align-items:center;padding:9px 12px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}
.mcs-taxonomy-content .page-numbers.current{background:var(--grad);color:#fff}
@media(max-width:820px){
 .mcs-mobile-bottom-inner{grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:3px}
 .mcs-mobile-bottom-group{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}
 .mcs-mobile-bottom-link{min-width:0;padding:8px 2px}
 .mcs-mobile-bottom-label{max-width:100%;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.15;min-height:2.3em}
 .mcs-mobile-bottom-home{z-index:1}
 .mcs-taxonomy-content{padding-top:22px}
 .mcs-taxonomy-hero h1{font-size:clamp(28px,7vw,40px)}
}
@media(max-width:400px){
 .mcs-mobile-bottom-inner{grid-template-columns:minmax(0,1fr) 61px minmax(0,1fr);padding-inline:8px;gap:1px}
 .mcs-mobile-bottom-home{width:62px;height:62px}
 .mcs-mobile-bottom-label{font-size:9px}
 .mcs-taxonomy-list-heading{flex-direction:column;align-items:flex-start;gap:2px}
}
