:root{
 --green:#08752f;--green-dark:#045d27;--green-soft:#e8f6ee;
 --yellow:#ffcc3d;--navy:#071b3a;--text:#111827;--muted:#667085;
 --line:#dfe5e2;--bg:#f4f7f5;--white:#fff;--orange:#ff7a16;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}
a{text-decoration:none;color:inherit}
input,select,textarea{width:100%;padding:12px 13px;border:1px solid #d5ddd8;border-radius:10px;margin:7px 0 16px;font-size:15px;outline:none;background:#fff}
input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(8,117,47,.1)}
label{font-size:14px;font-weight:700}
.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer}
.btn.primary{background:var(--green);color:#fff}
.btn.secondary{background:#fff;color:var(--green);border:1px solid #cbd8cf}
.full{width:100%}
.muted{color:var(--muted);line-height:1.5}
.alert{padding:11px 13px;border-radius:10px;margin:14px 0;font-size:14px}
.alert.error{background:#fff0f0;color:#a21c1c;border:1px solid #ffcaca}
.alert.success{background:#ebfaef;color:#176b2d;border:1px solid #b9e9c5}

.brand-badge{width:64px;height:64px;border-radius:16px;background:#fff;color:var(--green);display:grid;place-items:center;font-weight:1000;box-shadow:inset 0 0 0 4px var(--yellow)}
.brand-badge.small{width:46px;height:46px;border-radius:12px}

.app-page{min-height:100vh}
.sidebar{position:fixed;inset:0 auto 0 0;width:296px;background:linear-gradient(180deg,#08752f,#045f28);color:#fff;padding:20px 16px;overflow:auto}
.sidebar-brand{display:flex;gap:12px;align-items:center}
.sidebar-brand strong{display:block;font-size:25px}
.sidebar-brand span{display:block;color:var(--yellow);font-weight:800;font-size:13px}
.sidebar-caption{font-size:12px;line-height:1.55;color:#dceee3;margin:14px 6px 20px}
.nav-link{display:flex;align-items:center;gap:14px;padding:13px 14px;border-radius:12px;margin:4px 0;font-weight:750}
.nav-link.active{background:var(--yellow);color:#064f25}
.nav-link.disabled{opacity:.92}
.nav-link.disabled:hover{background:rgba(255,255,255,.08)}
.nav-heading{font-size:12px;font-weight:900;letter-spacing:.08em;color:#9fd1ae;margin:22px 8px 8px}

.main{margin-left:296px;min-height:100vh}
.topbar{height:96px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 38px;position:sticky;top:0;z-index:5}
.topbar h1{margin:0;font-size:29px;color:var(--navy)}
.topbar h1 span{color:var(--green)}
.topbar p{margin:3px 0 0;color:#536176}
.profile{display:flex;align-items:center;gap:11px}
.profile strong,.profile span{display:block}
.profile span{font-size:12px;color:var(--muted)}
.avatar{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:900}
.logout{font-size:13px;font-weight:800;color:var(--green);margin-left:6px}

.content{padding:34px}
.content>h2{margin:0;color:var(--navy);font-size:25px}
.section-subtitle{color:var(--muted);margin:4px 0 18px}

.quick-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.quick-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;min-height:190px;box-shadow:0 5px 16px rgba(26,61,42,.04)}
.quick-card.clickable{transition:.15s}
.quick-card.clickable:hover{transform:translateY(-2px);border-color:#b7d5c1;box-shadow:0 10px 28px rgba(26,61,42,.08)}
.quick-card h3{color:#152033;font-size:17px;margin:15px 0 8px}
.quick-card p{color:var(--muted);font-size:13px;line-height:1.55}
.quick-card span{font-size:11px;color:var(--green);font-weight:800}
.quick-icon{width:50px;height:50px;border-radius:14px;background:#e7f6ed;color:var(--green);display:grid;place-items:center;font-size:24px;font-weight:900}
.quick-icon.warn{background:#fff3d3;color:#e59600}
.quick-icon.good{background:#e7f6ed}
.quick-icon.info{background:#e8f3ff;color:#1769aa}
.quick-icon.award{background:#fff3d3;color:#d38c00}

.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-top:18px}
.panel{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid #e8ecea}
.panel-head h2{font-size:18px;color:var(--navy);margin:0}
.panel-head span{font-size:12px;color:var(--muted)}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:18px}
.stat{padding:18px;border:1px solid #e8ecea;border-radius:14px;background:#fff}
.stat strong{display:block;color:var(--navy);font-size:27px}
.stat span{font-size:12px;color:var(--muted)}
.case-list{padding:14px 20px}
.case-list div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #eef1ef}
.case-list div:last-child{border:0}
.empty-panel{margin-top:16px}
.empty-panel>p{padding:18px 20px;color:var(--muted)}

.page-title{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}
.page-title h2{margin:0;color:var(--navy);font-size:26px}
.page-title p{margin:4px 0 0;color:var(--muted)}
.page-actions{display:flex;gap:10px;flex-wrap:wrap}

.filters{display:flex;gap:12px;align-items:flex-end;padding:16px}
.filters .grow{flex:1}
.filters>div:not(.grow){min-width:150px}
.filter-btn{margin-bottom:16px}

.table-wrap{overflow:auto}
.data-table{width:100%;border-collapse:collapse;min-width:760px}
.data-table th,.data-table td{padding:14px 18px;border-bottom:1px solid #edf0ee;text-align:left;font-size:14px}
.data-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#657181;background:#fbfcfb}
.data-table td small{display:block;color:var(--muted);margin-top:3px}
.empty-cell{text-align:center!important;color:var(--muted);padding:30px!important}
.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800}
.badge.green{background:#e7f6ed;color:#08752f}
.badge.gray{background:#edf0ef;color:#59635e}
.table-link{color:var(--green);font-weight:800;margin-right:12px}
.muted-link{color:#667085}
.actions-cell{white-space:nowrap}

.form-body{padding:22px}
.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 14px}
.span2{grid-column:span 2}
.span3{grid-column:span 3}
.span4{grid-column:span 4}
.form-section-title{font-weight:900;color:var(--navy);border-top:1px solid var(--line);padding-top:20px;margin:8px 0 10px}
.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:8px}
.two-col{display:grid;grid-template-columns:1fr 1.35fr;gap:16px}
.link-button{border:0;background:none;color:var(--green);font-weight:800;cursor:pointer;padding:0}

/* FICHA DEL ESTUDIANTE */
.student-hero{
 display:flex;
 align-items:center;
 gap:20px;
 background:#fff;
 border:1px solid var(--line);
 border-radius:20px;
 padding:24px 26px;
 box-shadow:0 5px 18px rgba(20,55,37,.04)
}
.student-avatar{
 flex:0 0 78px;
 width:78px;
 height:78px;
 border-radius:22px;
 background:var(--green-soft);
 border:1px solid #d4ecdc;
 color:var(--green);
 display:grid;
 place-items:center;
 font-size:25px;
 font-weight:900;
 letter-spacing:.02em
}
.student-main{flex:1;min-width:0}
.student-main h2{font-size:28px;line-height:1.15;color:var(--navy);margin:5px 0 8px}
.student-main p{margin:0;color:var(--muted);font-size:14px}
.eyebrow-dark{
 display:inline-flex;
 padding:5px 9px;
 border-radius:999px;
 background:var(--green-soft);
 color:var(--green);
 font-size:12px;
 font-weight:900
}
.points-box{
 min-width:110px;
 text-align:center;
 padding:7px 22px;
 border-left:1px solid var(--line);
 border-right:1px solid var(--line)
}
.points-box strong{display:block;font-size:32px;line-height:1;color:var(--navy)}
.points-box span{display:block;margin-top:5px;font-size:12px;color:var(--muted)}

.student-stats{padding:0;margin:16px 0}
.student-stats .stat{min-height:92px}
.student-details{grid-template-columns:1fr 1fr}

.detail-list{padding:8px 20px 12px}
.detail-list div{
 display:grid;
 grid-template-columns:minmax(130px,40%) 1fr;
 align-items:start;
 gap:20px;
 padding:13px 0;
 border-bottom:1px solid #edf0ee
}
.detail-list div:last-child{border-bottom:0}
.detail-list span{color:var(--muted);font-size:13px}
.detail-list strong{color:var(--text);font-size:13px;text-align:right;overflow-wrap:anywhere}

@media(max-width:1100px){
 .quick-grid{grid-template-columns:repeat(2,1fr)}
 .dashboard-grid,.two-col,.student-details{grid-template-columns:1fr}
 .stat-grid{grid-template-columns:repeat(2,1fr)}
 .form-grid{grid-template-columns:repeat(2,1fr)}
 .span3,.span4{grid-column:span 2}
 .student-hero{flex-wrap:wrap}
}
@media(max-width:760px){
 .sidebar{width:76px;padding:16px 10px}
 .sidebar-brand>div:last-child,.sidebar-caption,.nav-link span,.nav-heading{display:none}
 .nav-link{justify-content:center;font-size:22px}
 .main{margin-left:76px}
 .topbar{height:auto;min-height:82px;padding:14px 18px}
 .profile>div:not(.avatar),.logout{display:none}
 .content{padding:20px}
 .quick-grid{grid-template-columns:1fr}
 .page-title{align-items:flex-start;flex-direction:column}
 .filters{flex-direction:column;align-items:stretch}
 .filters>div:not(.grow){min-width:0}
 .filter-btn{margin-bottom:0}
 .form-grid{grid-template-columns:1fr}
 .span2,.span3,.span4{grid-column:span 1}
 .student-hero{align-items:flex-start}
 .student-avatar{flex-basis:64px;width:64px;height:64px;border-radius:18px}
 .student-main{flex-basis:calc(100% - 90px)}
 .points-box{border:0;padding:4px 0;min-width:auto}
 .student-stats{grid-template-columns:repeat(2,1fr)}
 .detail-list div{grid-template-columns:1fr;gap:4px}
 .detail-list strong{text-align:left}
}



/* =========================================================
   SGAA v12 - Rediseño institucional de login y dashboard
   I.E. San Fernando
   ========================================================= */

:root{
  --sf-green:#08752f;
  --sf-green-dark:#045d27;
  --sf-green-soft:#ecf8f0;
  --sf-yellow:#ffcc3d;
  --sf-navy:#071b3a;
  --sf-blue:#164e7a;
  --sf-bg:#f4f7f5;
  --sf-white:#ffffff;
  --sf-line:#dfe5e2;
  --shadow-soft:0 14px 34px rgba(7,27,58,.08);
  --shadow-card:0 8px 24px rgba(4,44,23,.06);
}

html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(circle at top left, rgba(255,204,61,.08), transparent 22%),
    linear-gradient(180deg, #f7faf8 0%, #f3f7f5 100%);
}

/* ---------- SIDEBAR / TOPBAR POLISH ---------- */
.sidebar{
  background:
    linear-gradient(180deg, rgba(8,117,47,.98) 0%, rgba(4,93,39,.98) 68%, rgba(7,27,58,.98) 100%);
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.04);
}
.sidebar-brand strong{font-size:26px;letter-spacing:.01em}
.sidebar-brand span{font-size:13px}
.sidebar-caption{
  margin-top:16px;
  margin-bottom:18px;
  padding:10px 12px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
}
.nav-link{
  transition:background .18s ease, transform .18s ease, color .18s ease;
}
.nav-link:hover{
  background:rgba(255,255,255,.09);
  transform:translateX(2px);
}
.nav-link.active{
  box-shadow:0 8px 18px rgba(255,204,61,.22);
}
.topbar{
  background:rgba(255,255,255,.90);
  backdrop-filter:blur(10px);
}
.topbar h1{font-size:34px}
.topbar h1 span{position:relative}
.topbar h1 span::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-4px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--sf-yellow),rgba(255,204,61,.15));
}
.avatar{
  box-shadow:0 8px 20px rgba(8,117,47,.22);
}
.panel,.quick-card,.student-hero,.system-form-card{
  box-shadow:var(--shadow-card);
}

/* ---------- AUTH PAGE REDESIGN ---------- */
.auth-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:28px;
  background:
    radial-gradient(circle at top left, rgba(255,204,61,.18), transparent 18%),
    linear-gradient(135deg, #eaf5ee 0%, #f7f9fc 100%);
}
.auth-shell{
  width:min(1280px,100%);
  min-height:760px;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  background:var(--sf-white);
  border:1px solid rgba(7,27,58,.08);
  border-radius:30px;
  overflow:hidden;
  box-shadow:0 24px 80px rgba(7,27,58,.18);
}
.auth-brand{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  padding:42px;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(4,93,39,.96), rgba(7,27,58,.86)),
    linear-gradient(120deg, #0b7d37, #123f68);
}
.auth-brand::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:var(--login-image, none);
  background-size:cover;
  background-position:center;
  opacity:.30;
}
.auth-brand::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    radial-gradient(circle at top right, rgba(255,204,61,.20), transparent 28%),
    linear-gradient(135deg, rgba(8,117,47,.84), rgba(7,27,58,.82));
}
.auth-brand-top{
  display:flex;
  align-items:center;
  gap:16px;
}
.auth-brand-copy{
  max-width:620px;
}
.auth-brand .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  color:#fff8cf;
  font-size:12px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.auth-brand h1{
  margin:18px 0 14px;
  font-size:48px;
  line-height:1.03;
  color:#fff;
}
.auth-brand p{
  margin:0;
  font-size:18px;
  line-height:1.65;
  color:#eef7f1;
  max-width:620px;
}
.auth-kpi-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.auth-kpi{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter:blur(6px);
  border-radius:18px;
  padding:18px;
}
.auth-kpi strong{
  display:block;
  font-size:28px;
  margin-bottom:6px;
  color:#fff;
}
.auth-kpi span{
  display:block;
  font-size:12px;
  line-height:1.5;
  color:#e8f5eb;
}
.auth-card{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:36px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(247,250,248,.98));
}
.login-card{
  width:min(460px,100%);
  padding:32px;
  border-radius:26px;
  border:1px solid #e7ece8;
  background:#fff;
  box-shadow:0 18px 45px rgba(7,27,58,.08);
}
.brand-mark{
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:var(--sf-green-soft);
  color:var(--sf-green);
  font-size:18px;
  font-weight:1000;
  box-shadow:inset 0 0 0 2px rgba(8,117,47,.08);
}
.login-card h2{
  margin:18px 0 6px;
  color:var(--sf-navy);
  font-size:32px;
}
.login-card .muted{
  margin-bottom:18px;
}
.input-group{
  margin-bottom:14px;
}
.input-group label{
  display:block;
  margin-bottom:8px;
  color:var(--sf-navy);
}
.input-wrap{
  position:relative;
}
.input-wrap .field-icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  font-size:14px;
  color:#5a6b73;
}
.input-wrap input{
  margin:0;
  padding-left:42px;
  height:48px;
  border-radius:14px;
  background:#fbfcfb;
}
.login-card .btn.primary{
  height:50px;
  border-radius:14px;
  background:linear-gradient(135deg,var(--sf-green),var(--sf-green-dark));
  box-shadow:0 12px 26px rgba(8,117,47,.22);
}
.login-tips{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.login-tip{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:12px 14px;
  background:#f8fbf9;
  border:1px solid #ebf0ed;
  border-radius:14px;
  color:#49586c;
  font-size:13px;
  line-height:1.55;
}
.login-tip b{color:var(--sf-navy)}
.login-footer{
  margin-top:18px;
  font-size:12px;
  color:#667085;
  text-align:center;
}

/* ---------- HOME / DASHBOARD REDESIGN ---------- */
.dashboard-home{
  display:grid;
  gap:18px;
}
.home-hero{
  position:relative;
  overflow:hidden;
  border-radius:26px;
  min-height:260px;
  background:
    linear-gradient(135deg, rgba(8,117,47,.96) 0%, rgba(6,98,40,.94) 40%, rgba(7,27,58,.92) 100%);
  border:1px solid rgba(7,27,58,.08);
  box-shadow:var(--shadow-soft);
}
.home-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:var(--dashboard-image, none);
  background-size:cover;
  background-position:center;
  opacity:.20;
}
.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at top right, rgba(255,204,61,.24), transparent 24%),
    linear-gradient(90deg, rgba(255,255,255,.02), transparent 35%);
}
.home-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.35fr .85fr;
  gap:18px;
  min-height:260px;
  padding:28px;
}
.hero-copy{
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hero-copy-top{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.hero-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.16);
  color:#fff7d6;
  font-size:12px;
  font-weight:900;
}
.hero-copy h2{
  margin:0;
  font-size:34px;
  line-height:1.12;
  color:#fff;
  max-width:700px;
}
.hero-copy p{
  margin:0;
  color:#e7f4eb;
  font-size:15px;
  line-height:1.7;
  max-width:720px;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:12px;
}
.hero-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 16px;
  border-radius:14px;
  font-size:14px;
  font-weight:900;
  transition:transform .18s ease, box-shadow .18s ease;
}
.hero-btn.primary{
  background:var(--sf-yellow);
  color:#07311f;
  box-shadow:0 12px 26px rgba(255,204,61,.20);
}
.hero-btn.secondary{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
}
.hero-btn:hover{transform:translateY(-2px)}
.hero-side{
  display:grid;
  align-content:space-between;
  gap:14px;
}
.hero-brand-card,
.hero-status-card{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  padding:18px;
  color:#fff;
  backdrop-filter:blur(6px);
}
.hero-brand-card{
  display:flex;
  align-items:center;
  gap:16px;
}
.hero-brand-card .hero-logo{
  width:74px;
  height:74px;
  min-width:74px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:#fff;
  border:4px solid rgba(255,204,61,.85);
  overflow:hidden;
}
.hero-brand-card .hero-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:4px;
}
.hero-brand-card .hero-logo-fallback{
  width:74px;height:74px;border-radius:18px;display:grid;place-items:center;background:#fff;color:var(--sf-green);font-weight:1000;border:4px solid rgba(255,204,61,.85)
}
.hero-brand-card strong{
  display:block;
  font-size:22px;
  margin-bottom:6px;
}
.hero-brand-card span{
  display:block;
  color:#e6f5eb;
  font-size:13px;
  line-height:1.5;
}
.hero-status-card h3{
  margin:0 0 14px;
  font-size:14px;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#fff8cf;
}
.hero-status-list{
  display:grid;
  gap:10px;
}
.hero-status-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.hero-status-row:last-child{
  border-bottom:0;
  padding-bottom:0;
}
.hero-status-row span{color:#eef7f1;font-size:13px}
.hero-status-row strong{font-size:18px;color:#fff}
.metric-ribbon{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.metric-card{
  background:#fff;
  border:1px solid var(--sf-line);
  border-radius:20px;
  padding:18px 18px 16px;
  box-shadow:var(--shadow-card);
}
.metric-card .metric-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
}
.metric-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  display:grid;
  place-items:center;
  font-weight:1000;
  background:var(--sf-green-soft);
  color:var(--sf-green);
}
.metric-card.warn .metric-icon{background:#fff7df;color:#ba7a00}
.metric-card.info .metric-icon{background:#ebf3ff;color:#1769aa}
.metric-card.award .metric-icon{background:#fff3d6;color:#c58600}
.metric-card strong{
  display:block;
  color:var(--sf-navy);
  font-size:34px;
  line-height:1;
}
.metric-card span{
  display:block;
  margin-top:12px;
  color:#667085;
  font-size:13px;
}
.metric-card small{
  display:block;
  margin-top:4px;
  color:#98a2b3;
  font-size:11px;
}
.dashboard-section-title{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:4px;
}
.dashboard-section-title h2{
  margin:0;
  font-size:26px;
  color:var(--sf-navy);
}
.dashboard-section-title p{
  margin:6px 0 0;
  color:#667085;
}
.quick-grid.home-quick-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.home-quick-grid .quick-card{
  min-height:208px;
  border-radius:22px;
}
.home-quick-grid .quick-card h3{font-size:18px}
.home-quick-grid .quick-card p{font-size:13px}
.home-panels{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:16px;
}
.panel{
  border-radius:22px;
}
.panel-head{
  padding:20px 22px;
}
.panel-head h2{font-size:20px}
.panel-head a span{
  color:var(--sf-green);
  font-weight:900;
}
.case-list{
  padding:18px 20px;
  display:grid;
  gap:10px;
}
.case-list div{
  border:0;
  padding:0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.case-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:14px;
  background:#f8fbf9;
  border:1px solid #ebf0ed;
  flex:1;
}
.case-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--sf-green);
}
.case-dot.warn{background:#f59e0b}
.case-dot.track{background:#2563eb}
.case-dot.closed{background:#98a2b3}
.case-value{
  min-width:38px;
  text-align:right;
  font-size:22px;
  color:var(--sf-navy);
}
.dashboard-empty{
  padding:22px;
  color:#667085;
}
.dashboard-incidents,
.points-dashboard-list{
  display:grid;
}
.dashboard-incident-row,
.points-dashboard-item{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding:18px 22px;
  border-top:1px solid #edf1ef;
  transition:background .18s ease;
}
.dashboard-incident-row:first-child,
.points-dashboard-item:first-child{
  border-top:0;
}
.dashboard-incident-row:hover,
.points-dashboard-item:hover{
  background:#fafcfb;
}
.dashboard-incident-row strong,
.points-dashboard-item strong{
  display:block;
  color:var(--sf-navy);
  font-size:15px;
}
.dashboard-incident-row span,
.points-dashboard-item span{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:13px;
}
.dashboard-incident-meta{
  text-align:right;
  min-width:135px;
}
.dashboard-incident-meta .status-chip{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
  background:#eef5ff;
  color:#1d4ed8;
}
.dashboard-incident-meta .status-chip.open{background:#eff9f2;color:#0f7a34}
.dashboard-incident-meta .status-chip.pending{background:#fff7df;color:#b57a00}
.dashboard-incident-meta .status-chip.closed{background:#eef1ef;color:#667085}
.dashboard-incident-meta small{
  display:block;
  margin-top:6px;
  color:#98a2b3;
}
.points-dashboard-change{
  min-width:90px;
  text-align:right;
  font-size:26px;
  font-weight:1000;
  line-height:1;
}
.points-dashboard-change small{
  display:block;
  margin-top:6px;
  font-size:12px;
  color:#98a2b3;
  font-weight:600;
}
.points-dashboard-change.positive{color:#0a8e38}
.points-dashboard-change.negative{color:#d92d20}

/* dashboard panels below hero */
.dashboard-grid.dashboard-secondary{
  margin-top:0;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1200px){
  .auth-shell{grid-template-columns:1fr}
  .auth-brand{min-height:340px}
  .auth-card{padding:24px}
  .home-hero-inner,
  .home-panels{
    grid-template-columns:1fr;
  }
  .quick-grid.home-quick-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
  .metric-ribbon{grid-template-columns:repeat(2,1fr)}
  .auth-kpi-row{grid-template-columns:1fr}
}
@media(max-width:760px){
  .auth-page{padding:12px}
  .auth-shell{border-radius:22px}
  .auth-brand,.auth-card{padding:22px}
  .auth-brand h1{font-size:34px}
  .login-card{padding:24px}
  .home-hero-inner{padding:20px}
  .hero-copy h2{font-size:28px}
  .metric-ribbon{grid-template-columns:1fr}
  .quick-grid.home-quick-grid{grid-template-columns:1fr}
  .dashboard-incident-row,
  .points-dashboard-item{
    flex-direction:column;
    align-items:flex-start;
  }
  .dashboard-incident-meta,
  .points-dashboard-change{
    min-width:0;
    text-align:left;
  }
}



/* =========================================================
   SGAA v12.3 - Iconografía institucional
   Menú lateral y accesos rápidos
   ========================================================= */

.sg-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  vertical-align:middle!important;
  flex:0 0 auto!important;
}
.sg-icon svg{
  width:100%!important;
  height:100%!important;
  display:block!important;
}

.nav-icon{
  width:20px!important;
  height:20px!important;
  opacity:.98!important;
}
.nav-link{
  gap:12px!important;
}
.nav-link.active .nav-icon{
  color:#064f25!important;
}
.nav-link:not(.active) .nav-icon{
  color:#f2fbf5!important;
}

.quick-icon,
.metric-icon{
  overflow:hidden!important;
}
.quick-symbol,
.metric-symbol{
  width:24px!important;
  height:24px!important;
}
.metric-icon .metric-symbol{
  width:22px!important;
  height:22px!important;
}

.btn-icon{
  width:18px!important;
  height:18px!important;
}
.hero-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
}
.hero-badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}
.badge-icon{
  width:15px!important;
  height:15px!important;
}

.sidebar-logo-image{
  width:50px!important;
  height:50px!important;
  border-radius:14px!important;
  overflow:hidden!important;
  border:3px solid var(--yellow)!important;
  background:#fff!important;
  box-shadow:0 10px 20px rgba(0,0,0,.12)!important;
}
.sidebar-logo-image img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  padding:3px!important;
}

.quick-card span{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}

.metric-icon{
  font-size:0!important;
}

@media(max-width:760px){
  .nav-icon{
    width:22px!important;
    height:22px!important;
  }
}



/* =========================================================
   SGAA v12.3.1 - Corrección de tamaño de iconos
   ========================================================= */

.sg-icon{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  flex:0 0 16px!important;
  line-height:1!important;
}

.sg-icon svg{
  width:16px!important;
  height:16px!important;
}

.nav-link{
  gap:10px!important;
}
.nav-link .sg-icon,
.nav-link .nav-icon{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  flex-basis:16px!important;
}

.hero-badge .sg-icon,
.hero-badge .badge-icon{
  width:14px!important;
  height:14px!important;
  min-width:14px!important;
  min-height:14px!important;
  flex-basis:14px!important;
}
.hero-btn .sg-icon,
.hero-btn .btn-icon{
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  flex-basis:15px!important;
}

.quick-icon{
  width:48px!important;
  height:48px!important;
}
.quick-icon .sg-icon,
.quick-icon .quick-symbol{
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  min-height:20px!important;
  flex-basis:20px!important;
}
.quick-icon .sg-icon svg,
.quick-icon .quick-symbol svg{
  width:20px!important;
  height:20px!important;
}

.metric-icon{
  width:46px!important;
  height:46px!important;
}
.metric-icon .sg-icon,
.metric-icon .metric-symbol{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  flex-basis:18px!important;
}
.metric-icon .sg-icon svg,
.metric-icon .metric-symbol svg{
  width:18px!important;
  height:18px!important;
}

@media(max-width:760px){
  .nav-link .sg-icon,
  .nav-link .nav-icon{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
    min-height:18px!important;
    flex-basis:18px!important;
  }
}



/* =========================================================
   SGAA v12.4 - Formularios y tablas institucionales
   Refinamiento global de legibilidad, jerarquía y consistencia
   ========================================================= */

:root{
  --sf-control-bg:#fbfcfb;
  --sf-control-border:#d8e1dc;
  --sf-control-focus:#08752f;
  --sf-section:#f7faf8;
  --sf-text-soft:#667085;
  --sf-row-hover:#f8fbf9;
}

/* -------- CONTROLES -------- */
input,
select,
textarea{
  font-size:14px!important;
}

input:not([type="checkbox"]):not([type="radio"]),
select,
textarea{
  min-height:46px!important;
  border:1px solid var(--sf-control-border)!important;
  border-radius:13px!important;
  background:var(--sf-control-bg)!important;
  color:#172033!important;
  transition:border-color .16s ease, box-shadow .16s ease, background .16s ease!important;
}

textarea{
  min-height:110px!important;
  padding-top:12px!important;
  padding-bottom:12px!important;
  line-height:1.6!important;
}

input:not([type="checkbox"]):not([type="radio"]):focus,
select:focus,
textarea:focus{
  outline:none!important;
  border-color:var(--sf-control-focus)!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(8,117,47,.10)!important;
}

input::placeholder,
textarea::placeholder{
  color:#98a2b3!important;
  opacity:1!important;
}

label{
  color:#344054!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:800!important;
}

/* -------- BOTONES -------- */
.btn{
  min-height:42px!important;
  border-radius:12px!important;
  padding:0 15px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.005em!important;
  gap:7px!important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease!important;
}
.btn.primary{
  box-shadow:0 8px 18px rgba(8,117,47,.16)!important;
}
.btn:hover{
  transform:translateY(-1px)!important;
}
.btn:active{
  transform:translateY(0)!important;
}
.btn:focus-visible{
  outline:3px solid rgba(255,204,61,.55)!important;
  outline-offset:2px!important;
}

/* -------- PANELES -------- */
.panel,
.students-filter-card,
.students-list-card,
.incident-filter-card,
.incident-list-card,
.incident-form-card,
.attention-filter-card,
.attention-list-card,
.attention-form-card,
.follow-filter-card,
.follow-list-card,
.follow-form-card,
.points-filter-card,
.points-list-card,
.points-form-card,
.users-list-card,
.users-form-card,
.system-form-card,
.system-filter-card,
.system-table-card,
.reports-filter-card,
.reports-table-card,
.enrollment-filter-card,
.enrollment-table-card,
.promotion-config-card,
.promotion-confirm-card,
.import-upload-card,
.import-table-card{
  border:1px solid #e0e7e3!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(7,27,58,.045)!important;
}

.panel-head,
.students-list-head,
.incident-list-head,
.attention-list-head,
.follow-list-head,
.points-list-head,
.users-list-head{
  min-height:58px!important;
  padding:16px 20px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfcfb 100%)!important;
  border-bottom:1px solid #e9eeeb!important;
}

.panel-head h2,
.students-list-head h2,
.incident-list-head h2,
.attention-list-head h2,
.follow-list-head h2,
.points-list-head h2,
.users-list-head h2{
  font-size:17px!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
}

/* -------- TABLAS -------- */
table{
  border-collapse:separate!important;
  border-spacing:0!important;
}

th{
  font-size:10.5px!important;
  line-height:1.3!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
}

td{
  font-size:12.5px!important;
  line-height:1.45!important;
}

.data-table th,
.students-table th,
.incident-table th,
.attention-table th,
.follow-table th,
.points-table th,
.users-table th,
.reports-table th,
.enrollment-table th,
.import-table th,
.system-table th{
  padding:12px 14px!important;
  background:#f5f8f6!important;
  color:#53615a!important;
  border-bottom:1px solid #dfe6e2!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

.data-table td,
.students-table td,
.incident-table td,
.attention-table td,
.follow-table td,
.points-table td,
.users-table td,
.reports-table td,
.enrollment-table td,
.import-table td,
.system-table td{
  padding:13px 14px!important;
  border-bottom:1px solid #edf1ef!important;
  vertical-align:middle!important;
}

.data-table tbody tr,
.students-table tbody tr,
.incident-table tbody tr,
.attention-table tbody tr,
.follow-table tbody tr,
.points-table tbody tr,
.users-table tbody tr,
.reports-table tbody tr,
.enrollment-table tbody tr,
.import-table tbody tr,
.system-table tbody tr{
  transition:background .14s ease!important;
}

.data-table tbody tr:hover,
.students-table tbody tr:hover,
.incident-table tbody tr:hover,
.attention-table tbody tr:hover,
.follow-table tbody tr:hover,
.points-table tbody tr:hover,
.users-table tbody tr:hover,
.reports-table tbody tr:hover,
.enrollment-table tbody tr:hover,
.import-table tbody tr:hover,
.system-table tbody tr:hover{
  background:var(--sf-row-hover)!important;
}

/* -------- FILTROS -------- */
.students-filter-form,
.incident-filter-form,
.attention-filter-form,
.follow-filter-form,
.points-filter-form,
.users-filter-form,
.audit-filter-form,
.reports-filter-form,
.enrollment-filter-form,
.promotion-config-form{
  gap:14px!important;
}

.students-filter-card,
.incident-filter-card,
.attention-filter-card,
.follow-filter-card,
.points-filter-card,
.users-list-card,
.system-filter-card,
.reports-filter-card,
.enrollment-filter-card,
.promotion-config-card{
  padding:18px!important;
}

/* -------- BADGES / ESTADOS -------- */
.badge,
.student-grade,
.students-grade,
.students-status,
.incident-status,
.attention-status,
.follow-result,
.users-role,
.users-status,
.enrollment-status,
.period-status,
.promotion-ready,
.audit-action{
  min-height:25px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  white-space:nowrap!important;
}

/* -------- ACCIONES EN TABLAS -------- */
.table-actions,
.students-actions,
.incident-actions,
.attention-actions,
.follow-actions,
.points-actions,
.users-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  flex-wrap:wrap!important;
}

.table-actions .btn,
.students-actions .btn,
.incident-actions .btn,
.attention-actions .btn,
.follow-actions .btn,
.points-actions .btn,
.users-actions .btn{
  min-height:34px!important;
  padding:0 10px!important;
  font-size:10.5px!important;
  border-radius:10px!important;
}

/* -------- ALERTAS -------- */
.alert{
  padding:13px 15px!important;
  border-radius:13px!important;
  font-size:12px!important;
  line-height:1.5!important;
  box-shadow:0 5px 14px rgba(7,27,58,.035)!important;
}

/* -------- RESPONSIVE -------- */
@media(max-width:900px){
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea{
    font-size:16px!important;
  }

  .btn{
    min-height:44px!important;
  }
}

@media(max-width:650px){
  .panel-head,
  .students-list-head,
  .incident-list-head,
  .attention-list-head,
  .follow-list-head,
  .points-list-head,
  .users-list-head{
    padding:14px 15px!important;
  }

  td{
    font-size:12px!important;
  }
}



/* =========================================================
   SGAA v12.5 - Acabado final de interfaz
   ========================================================= */

/* ---------- TOPBAR MÁS COMPACTO ---------- */
.topbar{
  min-height:82px!important;
  padding:14px 34px!important;
}
.topbar h1{
  font-size:30px!important;
  line-height:1.05!important;
}
.topbar p{
  margin-top:5px!important;
  font-size:13px!important;
}
.user-box{
  gap:10px!important;
}
.avatar{
  width:44px!important;
  height:44px!important;
}
.user-box strong{
  font-size:12px!important;
}
.user-box small{
  font-size:10px!important;
}
.logout{
  margin-left:10px!important;
}

/* ---------- CONTENIDO ---------- */
.content{
  padding:26px 32px 38px!important;
}

/* ---------- SIDEBAR / SCROLLBAR ---------- */
.sidebar{
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.34) transparent!important;
}

.sidebar::-webkit-scrollbar{
  width:7px!important;
}

.sidebar::-webkit-scrollbar-track{
  background:transparent!important;
}

.sidebar::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.28)!important;
  border-radius:999px!important;
}

.sidebar::-webkit-scrollbar-thumb:hover{
  background:rgba(255,255,255,.42)!important;
}

.sidebar nav{
  padding-bottom:24px!important;
}

.nav-heading{
  margin-top:18px!important;
  margin-bottom:6px!important;
}

.nav-link{
  min-height:42px!important;
  margin-bottom:3px!important;
}

/* ---------- FORMULARIOS MÁS COMPACTOS ---------- */
textarea{
  min-height:96px!important;
}

.incident-field textarea,
.attention-field textarea,
.follow-field textarea,
.points-field textarea,
.system-field textarea{
  min-height:96px!important;
}

textarea[name="descripcion"],
textarea[name="descripcion_ocurrido"],
textarea[name="acciones_inmediatas"],
textarea[name="observacion"],
textarea[name="observaciones"],
textarea[name="motivo"]{
  min-height:104px!important;
}

input:not([type="checkbox"]):not([type="radio"]),
select{
  min-height:44px!important;
}

/* ---------- SECCIONES Y CARDS ---------- */
.system-form-section,
.incident-form-section,
.attention-form-section,
.follow-form-section,
.points-form-section,
.users-form-section{
  padding-top:22px!important;
  padding-bottom:22px!important;
}

.system-section-title,
.incident-section-title,
.attention-section-title,
.follow-section-title,
.points-section-title{
  margin-bottom:16px!important;
}

/* ---------- TABLAS ---------- */
.data-table td,
.students-table td,
.incident-table td,
.attention-table td,
.follow-table td,
.points-table td,
.users-table td,
.reports-table td,
.enrollment-table td,
.import-table td,
.system-table td{
  padding-top:11px!important;
  padding-bottom:11px!important;
}

/* ---------- ENCABEZADOS DE PÁGINA ---------- */
.students-header,
.incident-page-head,
.attention-page-head,
.follow-page-head,
.points-page-head,
.users-page-head,
.system-page-head,
.reports-page-head,
.enrollment-page-head,
.import-page-head{
  margin-bottom:16px!important;
}

.students-header h1,
.incident-page-head h1,
.attention-page-head h1,
.follow-page-head h1,
.points-page-head h1,
.users-page-head h1,
.system-page-head h1,
.reports-page-head h1,
.enrollment-page-head h1,
.import-page-head h1{
  font-size:28px!important;
}

/* ---------- LAPTOP ---------- */
@media(max-width:1366px){
  .sidebar{
    width:268px!important;
  }

  .main{
    margin-left:268px!important;
  }

  .content{
    padding:22px 26px 34px!important;
  }

  .topbar{
    padding:12px 26px!important;
  }
}

/* ---------- TABLET ---------- */
@media(max-width:900px){
  .topbar{
    min-height:76px!important;
    padding:12px 18px!important;
  }

  .topbar h1{
    font-size:26px!important;
  }

  .content{
    padding:20px 18px 30px!important;
  }

  textarea,
  .incident-field textarea,
  .attention-field textarea,
  .follow-field textarea,
  .points-field textarea,
  .system-field textarea{
    min-height:92px!important;
  }
}

/* ---------- MÓVIL ---------- */
@media(max-width:700px){
  .topbar{
    align-items:flex-start!important;
    gap:10px!important;
  }

  .topbar h1{
    font-size:23px!important;
  }

  .topbar p{
    font-size:12px!important;
  }

  .content{
    padding:16px 14px 26px!important;
  }

  .students-header h1,
  .incident-page-head h1,
  .attention-page-head h1,
  .follow-page-head h1,
  .points-page-head h1,
  .users-page-head h1,
  .system-page-head h1,
  .reports-page-head h1,
  .enrollment-page-head h1,
  .import-page-head h1{
    font-size:24px!important;
  }
}



/* =========================================================
   SGAA v15.2.1 - Corrección Identidad institucional dashboard
   ========================================================= */

.identity-panel{
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    min-height:150px!important;
    padding:20px!important;
    overflow:hidden!important;
}

.identity-logo-wrap{
    width:112px!important;
    height:112px!important;
    min-width:112px!important;
    min-height:112px!important;
    max-width:112px!important;
    max-height:112px!important;
    flex:0 0 112px!important;

    display:grid!important;
    place-items:center!important;

    padding:10px!important;
    margin:0!important;

    border-radius:20px!important;
    border:1px solid #dce7e0!important;
    background:#fff!important;

    overflow:hidden!important;
    box-sizing:border-box!important;
}

.identity-logo-wrap img{
    display:block!important;

    width:88px!important;
    height:88px!important;
    min-width:0!important;
    min-height:0!important;
    max-width:88px!important;
    max-height:88px!important;

    margin:0!important;
    padding:0!important;

    object-fit:contain!important;
    object-position:center!important;

    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}

.identity-logo-fallback{
    width:82px!important;
    height:82px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:18px!important;
    background:#08752f!important;
    color:#fff!important;
    font-size:24px!important;
    font-weight:1000!important;
}

.identity-copy{
    min-width:0!important;
    flex:1 1 auto!important;
}

.identity-copy strong{
    display:block!important;
    color:#071b3a!important;
    font-size:16px!important;
    line-height:1.3!important;
    overflow-wrap:anywhere!important;
}

.identity-copy span{
    display:block!important;
    margin-top:5px!important;
    color:#08752f!important;
    font-size:10px!important;
    font-weight:850!important;
    line-height:1.4!important;
}

.identity-copy p{
    margin:8px 0 0!important;
    color:#667085!important;
    font-size:10.5px!important;
    line-height:1.5!important;
}

/* Protección adicional contra reglas globales de imágenes */
.panel .identity-panel .identity-logo-wrap > img{
    width:88px!important;
    height:88px!important;
    max-width:88px!important;
    max-height:88px!important;
    object-fit:contain!important;
}

/* Laptop */
@media(max-width:1366px){
    .identity-logo-wrap{
        width:96px!important;
        height:96px!important;
        min-width:96px!important;
        min-height:96px!important;
        max-width:96px!important;
        max-height:96px!important;
        flex-basis:96px!important;
    }

    .identity-logo-wrap img,
    .panel .identity-panel .identity-logo-wrap > img{
        width:76px!important;
        height:76px!important;
        max-width:76px!important;
        max-height:76px!important;
    }
}

/* Móvil */
@media(max-width:650px){
    .identity-panel{
        align-items:flex-start!important;
        min-height:auto!important;
        padding:16px!important;
    }

    .identity-logo-wrap{
        width:76px!important;
        height:76px!important;
        min-width:76px!important;
        min-height:76px!important;
        max-width:76px!important;
        max-height:76px!important;
        flex-basis:76px!important;
        border-radius:16px!important;
    }

    .identity-logo-wrap img,
    .panel .identity-panel .identity-logo-wrap > img{
        width:58px!important;
        height:58px!important;
        max-width:58px!important;
        max-height:58px!important;
    }
}
