/* Dedicated mobile/tablet presentation: loaded only at <= 920px */
.container,.narrow{width:min(100% - 28px,1180px)}
.cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.steps{grid-template-columns:1fr 1fr}
.hero-grid,.petition-layout,.admin-cols{grid-template-columns:1fr}
.sticky{position:static}
.stat-grid{grid-template-columns:1fr 1fr}
.filters{grid-template-columns:1fr 1fr}
.petition-row{grid-template-columns:1fr}
.row-progress{max-width:none}
.footer-grid{grid-template-columns:1fr 1fr}
.hero-card{grid-template-columns:repeat(3,1fr)}
.table-wrap{margin-inline:-4px;padding-bottom:6px}

@media(max-width:760px){
  body{padding-bottom:78px}
  .top{top:0}
  .nav{min-height:66px;gap:10px}
  .brand{max-width:calc(100% - 52px);font-size:15px}
  .brand-icon{width:36px;height:36px}
  .nav-toggle{display:block;min-width:44px;min-height:44px;border-radius:10px}
  .nav nav{display:none;position:absolute;top:66px;left:14px;right:14px;background:#fff;border:1px solid var(--line);padding:12px;border-radius:16px;box-shadow:0 18px 50px rgba(14,65,51,.16);flex-direction:column;align-items:stretch;z-index:90}
  .nav nav.open{display:flex}
  .nav nav a{padding:11px 12px;border-radius:9px}
  .nav nav a:hover{background:var(--soft)}
  .nav nav .btn{margin-top:2px}
  .hero{padding:38px 0 34px}
  .hero h1{font-size:clamp(34px,11vw,48px);line-height:1.02}
  .hero p,.lead{font-size:17px}
  .hero-card{grid-template-columns:1fr 1fr;gap:10px;padding:16px;border-radius:20px}
  .mini-stat{padding:14px}.mini-stat b{font-size:28px}
  .cards,.steps,.dashboard-grid,.form-grid,.petition-info,.stat-grid,.footer-grid{grid-template-columns:1fr}
  .filters{grid-template-columns:1fr}
  .section{padding:34px 0}
  .panel,.card,.petition-row{padding:17px;border-radius:15px}
  .petition-content h1{font-size:clamp(29px,9vw,38px);overflow-wrap:anywhere}
  .petition-info{gap:10px;margin-bottom:22px}
  .admin-head,.section-head{align-items:flex-start;flex-direction:column}
  .section-head>.btn,.admin-head>.btn{width:100%}
  .actions{display:grid;grid-template-columns:1fr;width:100%}
  .actions .btn{width:100%}
  .actions-cell{display:grid}
  .container,.narrow{width:min(100% - 22px,1180px)}
  .form input,.form textarea,.form select,.filters input,.filters select,.inline-add input,.inline-form select{font-size:16px}
  .table-wrap table{min-width:680px;font-size:14px}
  footer{padding:28px 0 96px}
  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:95;background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));box-shadow:0 -10px 30px rgba(13,52,43,.08)}
  .mobile-bottom-nav a{display:flex;min-width:0;min-height:58px;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#4c625c;text-decoration:none;font-size:22px;border-radius:12px}
  .mobile-bottom-nav small{font-size:10px;font-weight:700;white-space:nowrap}
  .mobile-bottom-nav .mobile-create{background:var(--green);color:#fff;margin-top:-14px;box-shadow:0 8px 20px rgba(11,95,74,.24)}
  .mobile-bottom-nav .mobile-create span{font-size:28px;line-height:1}
}

@media(max-width:420px){
  .hero-card{grid-template-columns:1fr}
  .card-meta{align-items:flex-start;flex-direction:column}
  .big-number{font-size:38px}
  .btn{padding:12px 15px}
}
