
/* ================================================================
   EduCantina 4.0.7 — Cadastros, Configurações e Segurança
   Padronização das telas administrativas e de manutenção.
   ================================================================ */
body.action-users,
body.action-students,
body.action-parents,
body.action-products,
body.action-categories,
body.action-settings,
body.action-security_sessions,
body.action-diagnostics,
body.action-suppliers{
 --ad7-navy:#0A2E4D;
 --ad7-blue:#1E6CFB;
 --ad7-green:#16B84E;
 --ad7-purple:#7454D8;
 --ad7-orange:#F59E0B;
 --ad7-red:#EF4444;
 --ad7-bg:#F4F7FA;
 --ad7-card:#FFFFFF;
 --ad7-border:#E2E9EF;
 --ad7-text:#10233A;
 --ad7-muted:#718196;
 background:var(--ad7-bg)!important;
}

/* Cabeçalhos administrativos */
body.action-users .premium-page-head,
body.action-students .premium-page-head,
body.action-parents .premium-page-head,
body.action-products .premium-page-head,
body.action-categories .premium-page-head,
body.action-settings .premium-page-head,
body.action-security_sessions .premium-page-head,
body.action-diagnostics .premium-page-head,
body.action-suppliers .premium-page-head{
 margin-bottom:13px!important;
 align-items:flex-end!important;
}
body.action-users .premium-page-head h2,
body.action-students .premium-page-head h2,
body.action-parents .premium-page-head h2,
body.action-products .premium-page-head h2,
body.action-categories .premium-page-head h2,
body.action-settings .premium-page-head h2,
body.action-security_sessions .premium-page-head h2,
body.action-diagnostics .premium-page-head h2,
body.action-suppliers .premium-page-head h2{
 font-size:25px!important;
 letter-spacing:-.04em!important;
 color:var(--ad7-text)!important;
}
body.action-users .premium-page-head p,
body.action-students .premium-page-head p,
body.action-parents .premium-page-head p,
body.action-products .premium-page-head p,
body.action-categories .premium-page-head p,
body.action-settings .premium-page-head p,
body.action-security_sessions .premium-page-head p,
body.action-diagnostics .premium-page-head p,
body.action-suppliers .premium-page-head p{
 font-size:8px!important;
 color:var(--ad7-muted)!important;
}

/* Formulários */
.admin-form-grid,
.settings-grid,
.security-grid,
.product-form-grid,
.people-form-grid{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:11px!important;
}
.admin-form-grid .panel,
.settings-grid .panel,
.security-grid .panel,
.product-form-grid .panel,
.people-form-grid .panel{
 overflow:hidden!important;
}
.form-section{
 padding:14px!important;
}
.form-section-title{
 display:flex!important;
 align-items:center!important;
 gap:8px!important;
 margin-bottom:12px!important;
}
.form-section-title i{
 width:31px!important;
 height:31px!important;
 border-radius:9px!important;
 display:grid!important;
 place-items:center!important;
 background:#EAF2FF!important;
 color:var(--ad7-blue)!important;
 font-style:normal!important;
}
.form-section-title strong{
 display:block!important;
 font-size:9px!important;
 color:var(--ad7-text)!important;
}
.form-section-title small{
 display:block!important;
 font-size:6.5px!important;
 color:#8392A2!important;
 margin-top:2px!important;
}
.field-row{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:8px!important;
}
.field label{
 font-size:6.8px!important;
 color:#627487!important;
 font-weight:750!important;
}
.field input,
.field select,
.field textarea{
 min-height:39px!important;
 font-size:8px!important;
}
.field textarea{
 min-height:90px!important;
 resize:vertical!important;
}
.form-help{
 margin-top:4px!important;
 font-size:6.3px!important;
 color:#8795A5!important;
 line-height:1.35!important;
}
.form-actions{
 display:flex!important;
 justify-content:flex-end!important;
 gap:7px!important;
 padding-top:12px!important;
 border-top:1px solid #EDF2F6!important;
 margin-top:13px!important;
}
.form-actions .btn{
 min-width:110px!important;
}

/* Listagens */
.admin-list-toolbar{
 display:flex!important;
 flex-wrap:wrap!important;
 align-items:center!important;
 gap:8px!important;
 margin-bottom:11px!important;
 padding:11px!important;
 background:#fff!important;
 border:1px solid var(--ad7-border)!important;
 border-radius:13px!important;
 box-shadow:0 4px 14px rgba(10,46,77,.04)!important;
}
.admin-list-toolbar input,
.admin-list-toolbar select{
 min-height:37px!important;
 font-size:8px!important;
}
.admin-list-toolbar input{
 flex:1!important;
 min-width:180px!important;
}
.admin-table-card{
 background:#fff!important;
 border:1px solid var(--ad7-border)!important;
 border-radius:14px!important;
 box-shadow:0 4px 14px rgba(10,46,77,.045)!important;
 overflow:hidden!important;
}
.admin-table-card table{
 font-size:8px!important;
}
.admin-table-card thead th{
 position:sticky!important;
 top:0!important;
 z-index:2!important;
 background:#F7FAFC!important;
 color:#627487!important;
 padding:10px!important;
}
.admin-table-card td{
 padding:10px!important;
 vertical-align:middle!important;
}
.admin-person{
 display:grid!important;
 grid-template-columns:34px 1fr!important;
 gap:8px!important;
 align-items:center!important;
}
.admin-person-avatar{
 width:32px!important;
 height:32px!important;
 border-radius:10px!important;
 display:grid!important;
 place-items:center!important;
 background:linear-gradient(135deg,#EAF2FF,#E9F9EE)!important;
 color:var(--ad7-navy)!important;
 font-size:8px!important;
 font-weight:850!important;
}
.admin-person strong,
.admin-person small{
 display:block!important;
}
.admin-person strong{
 font-size:8.5px!important;
 color:var(--ad7-text)!important;
}
.admin-person small{
 font-size:6.5px!important;
 color:#8291A2!important;
 margin-top:2px!important;
}
.table-actions{
 display:flex!important;
 gap:5px!important;
 justify-content:flex-end!important;
}
.table-actions .btn{
 min-height:30px!important;
 padding:0 9px!important;
 font-size:6.8px!important;
 box-shadow:none!important;
}

/* Produtos */
.product-admin-grid{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:9px!important;
}
.product-admin-card{
 min-height:178px!important;
 padding:12px!important;
 border:1px solid #E5ECF1!important;
 border-radius:13px!important;
 background:#fff!important;
 box-shadow:0 3px 11px rgba(10,46,77,.035)!important;
 display:flex!important;
 flex-direction:column!important;
}
.product-admin-card:hover{
 border-color:#C8D7E2!important;
 box-shadow:0 8px 20px rgba(10,46,77,.075)!important;
}
.product-admin-card .product-thumb{
 width:46px!important;
 height:46px!important;
 border-radius:12px!important;
 display:grid!important;
 place-items:center!important;
 background:linear-gradient(135deg,#EEF5FF,#E9F9EE)!important;
 font-size:19px!important;
 margin-bottom:10px!important;
}
.product-admin-card h3{
 font-size:9px!important;
 color:var(--ad7-text)!important;
 margin:0 0 4px!important;
}
.product-admin-card p{
 font-size:6.5px!important;
 color:#8191A2!important;
 margin:0!important;
 line-height:1.35!important;
}
.product-admin-card .product-values{
 display:grid!important;
 grid-template-columns:1fr 1fr!important;
 gap:6px!important;
 margin:10px 0!important;
}
.product-admin-card .product-values div{
 padding:7px!important;
 border-radius:8px!important;
 background:#F7F9FB!important;
}
.product-admin-card .product-values span,
.product-admin-card .product-values strong{
 display:block!important;
}
.product-admin-card .product-values span{
 font-size:5.8px!important;
 color:#8795A5!important;
}
.product-admin-card .product-values strong{
 font-size:8px!important;
 color:var(--ad7-text)!important;
 margin-top:2px!important;
}
.product-admin-card .product-card-actions{
 display:flex!important;
 gap:6px!important;
 margin-top:auto!important;
}
.product-admin-card .product-card-actions .btn{
 flex:1!important;
 min-height:31px!important;
 font-size:6.5px!important;
 box-shadow:none!important;
}

/* Configurações */
.settings-nav{
 display:flex!important;
 gap:7px!important;
 overflow:auto!important;
 margin-bottom:11px!important;
 padding-bottom:3px!important;
 scrollbar-width:none!important;
}
.settings-nav::-webkit-scrollbar{display:none!important}
.settings-nav a{
 flex:0 0 auto!important;
 padding:8px 11px!important;
 border-radius:999px!important;
 background:#fff!important;
 border:1px solid #DCE5EC!important;
 color:#627487!important;
 font-size:7px!important;
 font-weight:750!important;
}
.settings-nav a.active{
 background:#EAF2FF!important;
 border-color:var(--ad7-blue)!important;
 color:var(--ad7-blue)!important;
}
.settings-brand-preview{
 min-height:180px!important;
 border-radius:13px!important;
 display:grid!important;
 place-items:center!important;
 background:linear-gradient(145deg,#061E33,#123B63)!important;
 padding:20px!important;
}
.settings-brand-preview img{
 max-width:300px!important;
 max-height:100px!important;
 object-fit:contain!important;
}
.color-options{
 display:grid!important;
 grid-template-columns:repeat(5,1fr)!important;
 gap:7px!important;
}
.color-option{
 height:42px!important;
 border-radius:10px!important;
 border:3px solid #fff!important;
 box-shadow:0 0 0 1px #DCE5EC!important;
}

/* Segurança e sessões */
.security-kpis,
.diagnostic-kpis{
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.security-alert-list>div{
 border-radius:10px!important;
 padding:9px!important;
}
.security-agent{
 max-width:250px!important;
 font-size:6.8px!important;
}
.diagnostic-hero{
 border-radius:16px!important;
 padding:18px!important;
}
.diagnostic-list{
 gap:6px!important;
}
.diagnostic-row{
 border-radius:10px!important;
 padding:8px!important;
}
.diagnostic-row strong{
 font-size:8px!important;
}
.diagnostic-row span{
 font-size:6.5px!important;
}

/* Importação */
.import-box{
 border:1px dashed #C5D3DD!important;
 border-radius:13px!important;
 padding:22px!important;
 text-align:center!important;
 background:#F9FBFD!important;
}
.import-box i{
 width:45px!important;
 height:45px!important;
 border-radius:13px!important;
 background:#EAF2FF!important;
 color:var(--ad7-blue)!important;
 display:grid!important;
 place-items:center!important;
 margin:0 auto 9px!important;
 font-style:normal!important;
 font-size:19px!important;
}
.import-box strong,
.import-box small{
 display:block!important;
}
.import-box strong{
 font-size:9px!important;
 color:var(--ad7-text)!important;
}
.import-box small{
 font-size:6.5px!important;
 color:#8291A2!important;
 margin-top:4px!important;
}

/* Responsividade */
@media(max-width:1100px){
 .product-admin-grid{
  grid-template-columns:repeat(3,1fr)!important;
 }
 .admin-form-grid,
 .settings-grid,
 .security-grid,
 .product-form-grid,
 .people-form-grid{
  grid-template-columns:1fr!important;
 }
}
@media(max-width:760px){
 body.action-users .content,
 body.action-students .content,
 body.action-parents .content,
 body.action-products .content,
 body.action-categories .content,
 body.action-settings .content,
 body.action-security_sessions .content,
 body.action-diagnostics .content,
 body.action-suppliers .content{
  padding:11px 10px 84px!important;
 }
 body.action-users .premium-page-head,
 body.action-students .premium-page-head,
 body.action-parents .premium-page-head,
 body.action-products .premium-page-head,
 body.action-categories .premium-page-head,
 body.action-settings .premium-page-head,
 body.action-security_sessions .premium-page-head,
 body.action-diagnostics .premium-page-head,
 body.action-suppliers .premium-page-head{
  align-items:flex-start!important;
  flex-direction:column!important;
 }
 .premium-head-actions{
  width:100%!important;
 }
 .premium-head-actions .btn{
  flex:1!important;
 }
 .field-row{
  grid-template-columns:1fr!important;
 }
 .form-actions{
  flex-direction:column-reverse!important;
 }
 .form-actions .btn{
  width:100%!important;
 }
 .product-admin-grid{
  grid-template-columns:repeat(2,1fr)!important;
 }
 .security-kpis,
 .diagnostic-kpis{
  grid-template-columns:repeat(2,1fr)!important;
 }
 .admin-list-toolbar{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
 }
 .admin-list-toolbar input{
  grid-column:1/-1!important;
 }
}
@media(max-width:480px){
 .product-admin-grid{
  grid-template-columns:1fr!important;
 }
 .color-options{
  grid-template-columns:repeat(3,1fr)!important;
 }
}

/* Impressão */
@media print{
 .side,.topbar,.premium-head-actions,.admin-list-toolbar,.table-actions,
 .settings-nav,.form-actions{
  display:none!important;
 }
 .main{margin:0!important}
 .content{padding:0!important;background:#fff!important}
 .panel,.admin-table-card{box-shadow:none!important;border:1px solid #bbb!important}
}
