
:root{
  --v52-green:#0b6f50;
  --v52-green2:#0c8a63;
  --v52-deep:#103b35;
  --v52-navy:#15344d;
  --v52-gold:#d9a631;
  --v52-soft:#f6f9f8;
  --v52-border:#dfe9e6;
  --v52-shadow:0 16px 38px rgba(16,48,61,.12);
}
body.v52-theme{background:#f5f9f8}
body.v52-theme header,
body.v52-theme .site-header,
body.v52-theme .navbar{
  background:rgba(255,255,255,.97)!important;
  backdrop-filter:blur(11px);
  -webkit-backdrop-filter:blur(11px);
  border-bottom:1px solid rgba(8,92,68,.08)!important;
  box-shadow:0 2px 14px rgba(15,45,58,.04)!important;
}

/* HOME */
body.v52-home .v52-home-hero{
  position:relative!important;
  overflow:hidden!important;
  min-height:480px!important;
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(6,74,55,.97) 0%,rgba(5,75,59,.91) 35%,rgba(10,64,65,.72) 58%,rgba(18,53,74,.44) 100%),
    url("../images/campus-building-v52.png") center 45%/cover no-repeat!important;
  isolation:isolate;
}
body.v52-home .v52-home-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
  background:
    linear-gradient(180deg,rgba(5,43,39,.03),rgba(6,45,48,.17)),
    repeating-linear-gradient(45deg,transparent 0 50px,rgba(220,170,55,.035) 51px 52px,transparent 53px 100px);
}
body.v52-home .v52-home-hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
  background:linear-gradient(90deg,transparent 4%,#d8a63a 25%,#f0c95f 50%,#d8a63a 76%,transparent 96%);
  z-index:5;
}
body.v52-home .v52-home-hero > *{position:relative;z-index:2}
body.v52-home .v52-home-hero h1,
body.v52-home .v52-home-hero h2{
  color:#fff!important;text-shadow:0 3px 12px rgba(0,0,0,.16);
}
body.v52-home .v52-home-hero p{
  color:rgba(255,255,255,.95)!important;text-shadow:0 2px 7px rgba(0,0,0,.12);
}
body.v52-home .v52-home-hero .card,
body.v52-home .v52-home-hero [class*="card"]{
  background:rgba(12,44,48,.60)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  backdrop-filter:blur(11px);
  -webkit-backdrop-filter:blur(11px);
}
body.v52-home .v52-home-hero input{background:#fff!important}
body.v52-home .v52-stat-card{
  background:#fff!important;
  border:1px solid rgba(9,101,74,.10)!important;
  border-radius:17px!important;
  box-shadow:var(--v52-shadow)!important;
}

/* LOGIN */
body.v52-login{
  min-height:100vh;
  background:
    linear-gradient(110deg,rgba(4,55,43,.82) 0%,rgba(9,78,58,.64) 42%,rgba(10,52,67,.28) 100%),
    url("../images/campus-gate-v52.png") center center/cover fixed no-repeat!important;
}
body.v52-login::before{
  content:"";position:fixed;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(3,38,31,.08),rgba(4,45,37,.18));
}
body.v52-login .v52-login-shell{
  min-height:100vh;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:50px clamp(28px,7vw,110px)!important;
  position:relative;
  z-index:2;
}
body.v52-login .v52-login-card{
  width:min(470px,100%)!important;
  padding:32px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(255,255,255,.70)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.20)!important;
  backdrop-filter:blur(12px);
}
body.v52-login .v52-login-card input,
body.v52-login .v52-login-card select{
  border-radius:12px!important;
  min-height:48px!important;
  border:1px solid #d8e6e2!important;
}
body.v52-login .v52-login-card button,
body.v52-login .v52-login-card .btn{
  min-height:48px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,var(--v52-green2),var(--v52-green))!important;
  color:#fff!important;border:0!important;font-weight:800!important;
}
body.v52-login .v52-login-mark{
  display:flex;align-items:center;gap:12px;margin-bottom:20px;
}
body.v52-login .v52-login-mark img{
  width:48px;height:48px;object-fit:contain;
}
body.v52-login .v52-login-mark strong{
  color:#12344a;font-size:18px;
}
body.v52-login .v52-login-mark small{
  display:block;color:#6c7f8d;margin-top:2px;
}

/* DASHBOARD */
body.v52-dashboard{background:#f4f8f7!important}
body.v52-dashboard .v52-dashboard-banner{
  position:relative;overflow:hidden;min-height:220px;border-radius:20px;
  margin:20px 0 24px;padding:32px;display:flex;align-items:flex-end;color:#fff;
  background:
    linear-gradient(90deg,rgba(6,74,55,.92),rgba(7,83,64,.72) 44%,rgba(14,53,73,.32)),
    url("../images/campus-building-v52.png") center 38%/cover no-repeat;
  box-shadow:0 18px 38px rgba(16,48,61,.12);
}
body.v52-dashboard .v52-dashboard-banner::after{
  content:"";position:absolute;inset:auto 0 0 0;height:4px;
  background:linear-gradient(90deg,transparent 4%,#d8a63a 27%,#f0c95f 50%,#d8a63a 73%,transparent 96%);
}
body.v52-dashboard .v52-dashboard-banner > *{position:relative;z-index:2}
body.v52-dashboard .v52-dashboard-banner h1,
body.v52-dashboard .v52-dashboard-banner h2{
  color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.18);
}
body.v52-dashboard .v52-dashboard-banner p{color:rgba(255,255,255,.95)!important}
body.v52-dashboard .card,
body.v52-dashboard [class*="card"]{
  border-radius:16px!important;
  border-color:rgba(9,101,74,.10)!important;
  box-shadow:0 10px 28px rgba(14,48,61,.07)!important;
}
@media(max-width:900px){
  body.v52-login .v52-login-shell{justify-content:center!important;padding:28px!important}
  body.v52-dashboard .v52-dashboard-banner{min-height:190px}
}
@media(max-width:620px){
  body.v52-home .v52-home-hero{min-height:520px!important;background-position:center center!important}
  body.v52-login .v52-login-card{padding:24px!important}
  body.v52-dashboard .v52-dashboard-banner{border-radius:15px;padding:22px}
}
