/* Layout de toque e leitura em celulares e tablets. */
@media(max-width:1050px){
  .rule-columns{grid-template-columns:minmax(0,1fr)}
  .install-layout{grid-template-columns:minmax(0,1fr)}
  .panel,.stats article,.install-step>div{min-width:0}
  .panel-heading p,.device-name,.rule-name{overflow-wrap:anywhere}
}
@media(max-width:760px){
  .sidebar{padding:16px 16px 12px}
  .sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:6px;overflow:visible}
  .nav-item{width:100%;min-height:44px;padding:10px 12px;font-size:13px}
  .topbar{height:auto;min-height:64px;padding:12px 16px;gap:10px;flex-wrap:wrap}
  .topbar>span{font-size:12px;white-space:normal;overflow-wrap:anywhere}
  .account{gap:12px;flex-wrap:wrap}
  .account .badge{font-size:11px}
  .theme-toggle,.text-button{min-height:44px;padding:10px;font-size:12px}
  main{padding:24px 16px;padding-bottom:max(24px,env(safe-area-inset-bottom))}
  .page-heading p:last-child{font-size:14px;line-height:1.6}
  h1{font-size:26px}h2{font-size:17px}
  .panel{padding:20px 16px}.panel-heading{flex-wrap:wrap}
  p,.panel-heading p,.install-step p{font-size:14px}
  input,textarea{font-size:16px;min-height:46px}
  label{font-size:13px}
  .primary,.secondary,.inline-button{min-height:44px;font-size:13px}
  .inline-button{padding:10px 0}
  .stats{gap:8px}.stats article{padding:16px 10px}
  .stats span{font-size:11px}.stats small{font-size:10px}
  .toolbar input{max-width:none}
  .toolbar{gap:12px}.toolbar small{font-size:11px}
  .device-row{grid-template-columns:minmax(0,1fr);gap:12px;padding:18px 0}
  .device-heading{justify-content:space-between;gap:10px}
  .device-name{font-size:15px}.device-sub{font-size:12px}
  .device-row>.badge{justify-self:start}.device-version{font-size:12px}
  .rule-list{max-height:none}
  .rule-list li{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:15px 0}
  .rule-name{font-size:13px;line-height:1.6}
  .row-actions{gap:12px;flex-wrap:wrap}
  .row-actions button{min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:7px;font-size:13px}
  .panel-footer{flex-wrap:wrap;font-size:11px}
  .help summary,details summary{min-height:44px;line-height:1.6;font-size:13px;align-content:center}
  .help p,.helper{font-size:12px!important}
  .install-step{gap:12px}.install-step .button-link{white-space:normal;text-align:center;width:100%}
  .code-actions{flex-direction:column;align-items:stretch}.code-actions small{font-size:12px}
  dialog{padding:24px 18px;max-height:calc(100dvh - 32px);overflow:auto}
  dialog p{font-size:14px}.dialog-actions button{flex:1}
}
@media(max-width:480px){
  .input-action{flex-direction:column;gap:10px}
  .input-action button{width:100%}
  .login-panel{padding:24px 18px;margin:20px 0}
  .login-panel p{font-size:14px}.installation-notes{padding:20px 16px}
  .installation-notes p,.installation-notes li{font-size:14px}
  footer{font-size:11px;line-height:1.7}
}
