/* Responsive 1.2× text scale for the administration workspace. */
:root{--admin-legible:1.2}
.admin-header,.dashboard{font-size:calc(1rem * var(--admin-legible))}
.admin-header>a{font-size:clamp(1rem,1.1vw,1.2rem)}
.admin-header>strong{font-size:clamp(1.45rem,1.6vw,1.9rem)}
.admin-header>strong span,.admin-language{font-size:clamp(.9rem,1vw,1.1rem)}
.admin-language select{height:clamp(2.55rem,2.8vw,3.3rem);font-size:inherit}
.font-tools button{min-width:clamp(2.7rem,3vw,3.55rem);height:clamp(2.45rem,2.7vw,3.1rem);font-size:clamp(.9rem,1vw,1.1rem)}
.font-tools output{min-width:clamp(3.2rem,3.5vw,4.1rem);font-size:clamp(.88rem,.95vw,1.05rem)}
.admin-header>button,.dashboard-actions button,.content-heading button,.filter-controls button,.resource-admin-filters button,.content-actions button,.content-actions a,.approval-button{font-size:clamp(.98rem,1.08vw,1.25rem);min-height:clamp(2.55rem,2.85vw,3.35rem);padding:clamp(.5rem,.65vw,.75rem) clamp(.75rem,.95vw,1.1rem)}
.dashboard-title p,.panel-heading p,.content-heading p,.form-kicker{font-size:clamp(.82rem,.88vw,1rem)}
.dashboard-title h1{font-size:clamp(2.35rem,4.8vw,3.25rem)}
.dashboard-title>div>span,.content-heading>div>span,.panel-heading>span,.content-filters,.empty,.admin-resource-card p,.admin-resource-card small{font-size:clamp(1rem,1.08vw,1.2rem)}
.admin-nav{gap:clamp(.35rem,.45vw,.55rem);padding:clamp(.4rem,.55vw,.7rem)}
.admin-nav button{min-height:clamp(3rem,3.3vw,3.85rem);padding:clamp(.55rem,.7vw,.85rem) clamp(.75rem,.95vw,1.15rem);font-size:clamp(1rem,1.08vw,1.22rem)}
.stats{gap:clamp(.8rem,1vw,1.2rem)}
.stats article{min-height:clamp(10.5rem,12vw,14rem);padding:clamp(1.3rem,1.6vw,1.9rem)}
.stats span,.stats small{font-size:clamp(1rem,1.1vw,1.25rem)}
.stats strong{font-size:clamp(3.15rem,3.6vw,4.45rem)}
.panel h2,.content-heading h2,.panel-heading h2,.resource-report-panel h3{font-size:clamp(1.85rem,2.05vw,2.55rem)}
.panel,.admin-view.panel{padding:clamp(1.5rem,2.1vw,2.45rem)}
table{font-size:clamp(1rem,1.1vw,1.25rem)}
th,td{padding:clamp(.7rem,.85vw,1rem) clamp(.6rem,.75vw,.9rem)}
.content-filters select,.search-field input,.resource-admin-filters select{font-size:clamp(.98rem,1.08vw,1.25rem)}
.content-filters select,.search-field,.resource-admin-filters select{min-height:clamp(2.65rem,2.95vw,3.5rem);padding:clamp(.45rem,.6vw,.75rem) clamp(.65rem,.8vw,.95rem)}
.managed-content-item{padding:clamp(1rem,1.25vw,1.5rem)}
.content-details h3,.admin-resource-card h3{font-size:clamp(1.65rem,1.8vw,2.2rem)}
.content-details p,.content-meta,.status-badge{font-size:clamp(.95rem,1vw,1.15rem)}
.admin-resource-card{padding:clamp(1.1rem,1.3vw,1.6rem)}
.admin-toast{font-size:clamp(1rem,1.08vw,1.2rem)}

@media(max-width:750px){
  .admin-header,.dashboard{font-size:1rem}
  .admin-header>strong{font-size:clamp(1.25rem,5.5vw,1.7rem)}
  .dashboard-title h1{font-size:clamp(2rem,9vw,2.8rem)}
  .admin-nav button{font-size:clamp(1rem,4.5vw,1.25rem)}
  .stats span,.stats small,.dashboard-title>div>span{font-size:clamp(.95rem,4vw,1.2rem)}
  .stats strong{font-size:clamp(2.7rem,11vw,3.6rem)}
  .panel h2,.content-heading h2,.panel-heading h2,.resource-report-panel h3{font-size:clamp(1.65rem,7.2vw,2.3rem)}
  .content-details h3,.admin-resource-card h3{font-size:clamp(1.45rem,6.4vw,2rem)}
  table{font-size:clamp(.95rem,4vw,1.15rem)}
}

/* Responsive administration layout: readable controls without horizontal clipping. */
.admin-header{gap:clamp(.75rem,1.5vw,1.4rem);padding-inline:clamp(1rem,4vw,5rem)}
.dashboard-actions,.content-heading-actions,.filter-controls,.resource-admin-filters,.resource-quality,.admin-resource-actions,.content-actions{gap:clamp(.45rem,.7vw,.75rem)}
.dashboard-actions button,.content-heading-actions button,.filter-controls button,.resource-admin-filters button,.content-actions button,.content-actions a,.approval-button{min-height:2.75rem;border-radius:.6rem;font-weight:600}
.admin-view.panel,.dashboard-grid .panel,.community-feedback{border-radius:clamp(.75rem,1vw,1rem)}
.stats article,.managed-content-item,.admin-resource-card{border-radius:.75rem}
.managed-content-item{min-width:0}
.content-details,.content-details h3,.content-details p,.content-meta{min-width:0;overflow-wrap:anywhere}

@media(min-width:751px) and (max-width:1100px){
  .dashboard-title,.content-heading{align-items:flex-start;flex-direction:column}
  .dashboard-actions,.content-heading-actions{width:100%}
  .filter-controls{display:grid;width:100%;grid-template-columns:minmax(12rem,1fr) repeat(2,minmax(8rem,1fr));align-items:stretch}
  .search-field{grid-column:1/-1}
  .content-filters{align-items:flex-start;flex-direction:column}
}

@media(max-width:750px){
  main{padding-inline:clamp(1rem,4vw,1.5rem);padding-bottom:3.5rem}
  .admin-header{align-items:center;gap:.7rem;padding-block:.7rem}
  .admin-header>a{font-size:.95rem}
  .header-tools{min-width:0}
  .dashboard-title,.content-heading,.panel-heading{gap:.8rem}
  .dashboard-actions,.content-heading-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
  .dashboard-actions button,.content-heading-actions button{width:100%}
  .admin-nav{scroll-snap-type:x proximity;padding:.45rem;overflow-x:auto}
  .admin-nav button{scroll-snap-align:start;min-height:3rem}
  .filter-controls{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:.65rem}
  .search-field{grid-column:1/-1}
  .content-filters{align-items:stretch}
  .content-filters>span{font-size:1rem}
  .managed-content-item{grid-template-columns:minmax(3.5rem,4.5rem) minmax(0,1fr);gap:.8rem}
  .content-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}
  .content-actions button,.content-actions a{display:grid;place-items:center;text-align:center}
  .resource-admin-filters,.resource-quality,.admin-resource-actions{display:grid;grid-template-columns:1fr 1fr}
  .resource-admin-filters select{grid-column:1/-1}
  .table-wrap{margin-inline:0;border:1px solid var(--line);border-radius:.75rem}
}

@media(max-width:480px){
  .admin-header{align-items:flex-start;flex-wrap:wrap}
  .admin-header>strong{display:block;order:3;width:100%;font-size:1.25rem}
  .header-tools{width:100%;justify-content:space-between}
  .admin-language>span{display:none}
  .dashboard-title h1{font-size:clamp(2rem,9vw,2.5rem)}
  .dashboard-actions,.content-heading-actions,.resource-admin-filters,.resource-quality,.admin-resource-actions{grid-template-columns:1fr}
  .filter-controls{grid-template-columns:1fr}
  .search-field{grid-column:auto}
  .content-actions{grid-template-columns:1fr}
  .panel-heading{align-items:flex-start;flex-direction:column}
  .stats strong{font-size:clamp(2.5rem,12vw,3.25rem)}
}
