:root{--elite-cyan:#00e5ff;--elite-green:#a5d6a7;--elite-gold:#ffea00;--elite-ink:#f7fbff;--elite-muted:#b7cddd;--metal:#b9c7ce;--metal-warm:#d6c6a3;--plaque:#122c42;--plaque-deep:#0a1d2d}
body{margin:0;background:#07172c;color:var(--elite-ink);font-family:Inter,system-ui,sans-serif}
.elite-page{overflow:hidden;background-color:#07172c!important;background-image:radial-gradient(54rem 38rem at 82% 8%,rgba(94,99,255,.24),transparent 70%),radial-gradient(48rem 38rem at 8% 28%,rgba(0,229,255,.16),transparent 70%),radial-gradient(52rem 38rem at 76% 66%,rgba(165,214,167,.12),transparent 72%),linear-gradient(180deg,#07172c 0%,#0a2948 42%,#081c35 76%,#07172c 100%)!important;background-size:auto!important;background-position:center!important}
.elite-page:before,.elite-page:after{content:"";position:fixed;pointer-events:none;z-index:0;width:42vw;height:75vh;filter:blur(70px);opacity:.28;border-radius:50%}.elite-page:before{left:-12vw;top:8vh;background:linear-gradient(160deg,rgba(0,229,255,.55),rgba(94,99,255,.15),transparent)}.elite-page:after{right:-10vw;top:28vh;background:linear-gradient(160deg,rgba(165,214,167,.28),rgba(0,229,255,.20),transparent)}.elite-page>*{position:relative;z-index:1}.elite-container{max-width:1180px;margin:auto;padding:0 28px}
.elite-hero{text-align:center;padding:72px 0 44px}.elite-hall-title{display:inline-flex;align-items:center;gap:14px;font-family:"Trebuchet MS",Arial,sans-serif;font-size:clamp(24px,3.4vw,38px);font-weight:900;letter-spacing:.095em;text-transform:uppercase;background:linear-gradient(180deg,#fff 0%,#9eeeff 52%,#49c8ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 7px 18px rgba(0,0,0,.32),0 0 22px rgba(0,229,255,.12)}.elite-hall-title:before,.elite-hall-title:after{content:"";width:48px;height:2px;background:linear-gradient(90deg,transparent,var(--elite-cyan));box-shadow:0 0 13px rgba(0,229,255,.48)}.elite-hall-title:after{transform:scaleX(-1)}.elite-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#d4f8ff}.elite-eyebrow:before{content:"";width:28px;height:2px;background:var(--elite-cyan);box-shadow:0 0 13px rgba(0,229,255,.75)}.elite-hero h1{margin:15px 0 10px;font-family:Impact,"Arial Narrow",system-ui,sans-serif;font-size:clamp(48px,8vw,92px);letter-spacing:.025em;line-height:.9;color:#eaf9ff;text-transform:uppercase;text-shadow:0 2px 0 #77d6ff,0 5px 0 #184e83,0 9px 0 #092743,0 14px 22px rgba(0,0,0,.52),0 0 26px rgba(0,229,255,.14)}.elite-hero p{max-width:760px;margin:auto;color:#d0e3ed;font-size:18px;line-height:1.6}
.current-month{padding:10px 0 78px}.spotlight-intro{max-width:820px;margin:0 0 28px}.spotlight-intro h2,.archive-head h2{font-family:'Inter Tight',system-ui,sans-serif;font-size:clamp(38px,5.6vw,64px);line-height:.95;letter-spacing:-.045em;margin:13px 0 12px}.spotlight-intro p,.archive-head p{color:#bdd2dd;line-height:1.65;margin:0}
.elite-plaque{position:relative;isolation:isolate;color:#edf7fb;background:linear-gradient(150deg,#173b54 0%,#0e293e 42%,#091b2a 100%);border:1px solid rgba(206,227,236,.22);box-shadow:0 28px 60px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.35);overflow:hidden}.elite-plaque:before{content:"";position:absolute;inset:9px;border:1px solid rgba(207,220,226,.14);border-radius:inherit;pointer-events:none}.elite-plaque:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(112deg,transparent 0 20%,rgba(255,255,255,.08) 34%,transparent 48%),radial-gradient(circle at 18% 4%,rgba(255,255,255,.08),transparent 24%);mix-blend-mode:screen;opacity:.75}.plaque-sheen{position:absolute;inset:-1px;z-index:-1;background:radial-gradient(30rem 18rem at 82% 18%,rgba(0,229,255,.08),transparent 68%),radial-gradient(25rem 18rem at 14% 72%,rgba(165,214,167,.06),transparent 72%)}
.elite-plaque-current{border-radius:28px;padding:34px 38px 28px;border-color:rgba(0,229,255,.25);box-shadow:0 34px 74px rgba(0,0,0,.40),0 0 42px rgba(0,229,255,.07),inset 0 1px rgba(255,255,255,.13)}.plaque-header{display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;z-index:2}.plaque-title-block{min-width:0}.plaque-month{display:block;font-size:12px;font-weight:950;letter-spacing:.19em;text-transform:uppercase;color:#d5e4e9;text-shadow:0 1px 0 rgba(0,0,0,.8)}.plaque-title-block h3{margin:7px 0 6px;font-family:'Inter Tight',system-ui,sans-serif;font-size:clamp(31px,4.3vw,52px);line-height:.98;letter-spacing:-.035em;color:#d9e1e5;text-shadow:0 -1px 0 rgba(0,0,0,.85),0 1px 0 rgba(255,255,255,.16),0 5px 12px rgba(0,0,0,.28)}.plaque-teacher{font-size:13px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#a9bec8}.plaque-badge-wrap{flex:0 0 148px;height:148px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,rgba(0,0,0,.18),transparent 65%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07)}.plaque-badge-wrap img{width:142px;height:142px;object-fit:contain;filter:drop-shadow(0 15px 20px rgba(0,0,0,.42))}.plaque-rule{height:1px;margin:25px 0 10px;background:linear-gradient(90deg,rgba(196,211,218,.08),rgba(214,198,163,.7) 16%,rgba(208,226,234,.48) 50%,rgba(214,198,163,.7) 84%,rgba(196,211,218,.08));box-shadow:0 1px 0 rgba(0,0,0,.55)}
.plaque-winners{position:relative;z-index:2}.winner-row{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:18px;min-height:58px;border-bottom:1px solid rgba(185,199,206,.11)}.winner-row:last-child{border-bottom:0}.winner-row>span{font-size:11px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;color:#9fb4bf;text-shadow:0 1px 0 #000}.winner-row p{display:flex;align-items:center;gap:16px;margin:0;min-width:0}.winner-row b{font-size:17px;letter-spacing:.015em;color:#d8e0e4;text-shadow:0 -1px 0 rgba(0,0,0,.95),0 1px 0 rgba(255,255,255,.13)}.winner-row i{font-style:normal;color:#657b86}.winner-row.current{margin:4px -14px;padding:0 14px;border-radius:12px;background:linear-gradient(90deg,rgba(0,229,255,.09),rgba(0,229,255,.02),transparent);box-shadow:inset 3px 0 rgba(0,229,255,.52)}.winner-row.current b{color:#f5fdff;text-shadow:0 0 14px rgba(0,229,255,.25),0 -1px 0 rgba(0,0,0,.9)}.plaque-footer{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(185,199,206,.10);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#8ea7b4}.plaque-footer strong{color:#aef4ff}
.archive-section{padding:70px 0 96px}.archive-head{max-width:820px;margin-bottom:28px}.elite-year-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 28px;padding:15px 18px;border-radius:15px;background:rgba(7,31,52,.50);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(10px)}.elite-year-controls label{font-size:11px;font-weight:950;letter-spacing:.15em;text-transform:uppercase;color:#cde7f2}.elite-year-controls select{min-width:min(440px,100%);padding:11px 42px 11px 13px;border-radius:10px;border:1px solid rgba(0,229,255,.22);background:#0b2941;color:#effaff;font:inherit;font-weight:800}.plaque-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.elite-plaque-small{min-height:278px;border-radius:19px;padding:19px 20px 16px}.elite-plaque-small .plaque-header{align-items:flex-start;gap:12px}.elite-plaque-small .plaque-month{font-size:9px}.elite-plaque-small .plaque-title-block h3{font-size:21px;margin:5px 0 5px;line-height:1.05}.elite-plaque-small .plaque-teacher{font-size:9px}.elite-plaque-small .plaque-rule{margin:16px 0 10px}.mini-badge,.mini-medallion{flex:0 0 58px;width:58px;height:58px;display:grid;place-items:center}.mini-badge img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35))}.mini-medallion{border-radius:50%;border:1px solid rgba(214,198,163,.38);box-shadow:inset 0 0 0 4px rgba(0,0,0,.12);font-size:10px;font-weight:950;letter-spacing:.09em;color:#a9bbc3;text-shadow:0 1px 0 #000}.mini-lines{display:grid;gap:0;position:relative;z-index:2}.mini-lines span{display:block;padding:8px 2px;border-bottom:1px solid rgba(185,199,206,.10);font-size:10px;font-weight:800;letter-spacing:.04em;color:#aabcc5}.mini-lines span:last-child{border-bottom:0}.elite-plaque-small .plaque-footer{margin-top:9px;padding-top:9px}.elite-plaque-small.active-slot{border-color:rgba(0,229,255,.28);box-shadow:0 24px 48px rgba(0,0,0,.28),0 0 30px rgba(0,229,255,.06),inset 0 1px rgba(255,255,255,.10)}.elite-plaque-small.upcoming{opacity:.62;filter:saturate(.72)}
.elite-invite{padding:54px 0 96px}.elite-invite .elite-container{position:relative}.trophy-banner{min-height:250px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:34px;align-items:center;position:relative;border-radius:28px;padding:26px 34px;background:radial-gradient(circle at 12% 22%,rgba(0,229,255,.14),transparent 30%),linear-gradient(145deg,rgba(13,55,86,.88),rgba(8,31,53,.93));border:1px solid rgba(0,229,255,.22);box-shadow:0 24px 54px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.08);overflow:visible}.trophy-art{height:210px;position:relative;overflow:visible}.trophy-art img{position:absolute;left:50%;bottom:-28px;transform:translateX(-50%);width:220px;max-width:none;filter:drop-shadow(0 20px 26px rgba(0,0,0,.36));z-index:2}.invite-copy{padding:4px 0 6px}.invite-copy h2{font-family:'Inter Tight',system-ui,sans-serif;font-size:clamp(34px,5vw,56px);line-height:.98;letter-spacing:-.04em;margin:12px 0 10px}.invite-copy p{color:#bdd2dd;line-height:1.6;max-width:650px;margin:0}.elite-btn{display:inline-flex;margin-top:18px;padding:13px 18px;border-radius:11px;background:var(--elite-green);color:#0b2418;font-weight:900;box-shadow:0 10px 26px rgba(0,0,0,.20);transition:.16s}.elite-btn:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 0 24px rgba(165,214,167,.20),0 12px 26px rgba(0,0,0,.22)}
@media(max-width:980px){.plaque-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.plaque-header{align-items:flex-start}.plaque-badge-wrap{flex-basis:112px;height:112px}.plaque-badge-wrap img{width:106px;height:106px}.winner-row{grid-template-columns:78px 1fr}.winner-row p{gap:8px;flex-wrap:wrap}.winner-row b{font-size:15px}.winner-row i{display:none}.elite-year-controls{align-items:flex-start;flex-direction:column}.elite-year-controls select{width:100%}.trophy-banner{grid-template-columns:200px 1fr;gap:20px}.trophy-art img{width:195px}}
@media(max-width:620px){.elite-container{padding:0 18px}.elite-hero{padding-top:52px}.elite-plaque-current{padding:25px 20px 22px}.plaque-header{display:grid;grid-template-columns:1fr auto}.plaque-badge-wrap{grid-column:2;grid-row:1}.winner-row{grid-template-columns:1fr;gap:5px;padding:10px 0}.winner-row p{display:grid;grid-template-columns:1fr;gap:4px}.plaque-grid{grid-template-columns:1fr}.trophy-banner{grid-template-columns:1fr;padding:24px 22px 28px;text-align:center}.trophy-art{height:170px}.trophy-art img{width:175px;bottom:-18px}.invite-copy .elite-eyebrow{justify-content:center}.invite-copy p{margin-inline:auto}}

/* v1.7 — Current-month plaque: centered + deeper dimensional metal treatment */
.current-month .elite-plaque-current{
  width:min(920px,100%);
  box-sizing:border-box;
  margin:0 auto;
  border:2px solid rgba(184,220,235,.42);
  background:
    linear-gradient(110deg,rgba(255,255,255,.055) 0 1px,transparent 1px 5px),
    repeating-linear-gradient(90deg,rgba(255,255,255,.018) 0 1px,rgba(0,0,0,.018) 1px 3px),
    radial-gradient(34rem 22rem at 86% 7%,rgba(119,214,255,.13),transparent 64%),
    linear-gradient(148deg,#1d4965 0%,#14374f 26%,#0e293e 58%,#091b2a 100%);
  box-shadow:
    0 2px 0 rgba(215,241,250,.55),
    0 5px 0 #315c73,
    0 9px 0 #17394e,
    0 13px 0 #081725,
    0 34px 72px rgba(0,0,0,.46),
    0 0 42px rgba(0,229,255,.09),
    inset 0 2px 0 rgba(255,255,255,.20),
    inset 2px 0 0 rgba(255,255,255,.06),
    inset -2px 0 0 rgba(0,0,0,.28),
    inset 0 -4px 0 rgba(0,0,0,.30);
  transform:perspective(1200px) rotateX(.7deg);
  transform-origin:center top;
}
.current-month .elite-plaque-current:before{
  inset:10px;
  border:1px solid rgba(215,236,244,.22);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 1px 0 rgba(0,0,0,.45);
}
.current-month .elite-plaque-current:after{
  background:
    linear-gradient(112deg,transparent 0 14%,rgba(255,255,255,.11) 27%,rgba(255,255,255,.025) 37%,transparent 50%),
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 15%,transparent 80%,rgba(0,0,0,.12)),
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.09),transparent 26%);
  opacity:.86;
}
.current-month .plaque-badge-wrap{
  border:1px solid rgba(205,229,238,.13);
  background:radial-gradient(circle at 45% 38%,rgba(255,255,255,.08),rgba(0,0,0,.19) 58%,rgba(0,0,0,.31));
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.09),
    inset 0 -3px 8px rgba(0,0,0,.28),
    0 8px 18px rgba(0,0,0,.18);
}
.current-month .spotlight-intro{margin-left:auto;margin-right:auto;text-align:center}
.current-month .spotlight-intro .elite-eyebrow{justify-content:center}
@media(max-width:620px){
  .current-month .elite-plaque-current{width:100%;transform:none;box-shadow:0 2px 0 rgba(215,241,250,.45),0 5px 0 #244b61,0 8px 0 #091725,0 24px 50px rgba(0,0,0,.42),inset 0 2px 0 rgba(255,255,255,.16),inset 0 -3px 0 rgba(0,0,0,.28)}
}

/* v1.8 — keep the original dark plaque color, retain the deeper 3D build,
   and return the Spotlight intro to left alignment while the plaque stays centered. */
.current-month .spotlight-intro{
  margin:0 0 28px;
  text-align:left;
}
.current-month .spotlight-intro .elite-eyebrow{
  justify-content:flex-start;
}
.current-month .elite-plaque-current{
  width:min(920px,100%);
  box-sizing:border-box;
  margin:0 auto;
  border:2px solid rgba(184,220,235,.30);
  background:
    repeating-linear-gradient(90deg,rgba(255,255,255,.012) 0 1px,rgba(0,0,0,.014) 1px 3px),
    radial-gradient(30rem 20rem at 84% 8%,rgba(0,229,255,.055),transparent 66%),
    linear-gradient(150deg,#173b54 0%,#0e293e 42%,#091b2a 100%);
  box-shadow:
    0 2px 0 rgba(205,230,239,.34),
    0 5px 0 #274c61,
    0 9px 0 #153246,
    0 13px 0 #071522,
    0 34px 72px rgba(0,0,0,.46),
    0 0 34px rgba(0,229,255,.055),
    inset 0 2px 0 rgba(255,255,255,.12),
    inset 2px 0 0 rgba(255,255,255,.035),
    inset -2px 0 0 rgba(0,0,0,.30),
    inset 0 -4px 0 rgba(0,0,0,.34);
  transform:perspective(1200px) rotateX(.45deg);
  transform-origin:center top;
}
.current-month .elite-plaque-current:before{
  inset:10px;
  border:1px solid rgba(205,226,235,.15);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 1px 0 rgba(0,0,0,.52);
}
.current-month .elite-plaque-current:after{
  background:
    linear-gradient(112deg,transparent 0 18%,rgba(255,255,255,.055) 30%,transparent 44%),
    linear-gradient(180deg,rgba(255,255,255,.025),transparent 17%,transparent 82%,rgba(0,0,0,.15)),
    radial-gradient(circle at 15% 4%,rgba(255,255,255,.045),transparent 24%);
  opacity:.72;
}
.current-month .plaque-badge-wrap{
  border:1px solid rgba(205,229,238,.09);
  background:radial-gradient(circle at 45% 38%,rgba(255,255,255,.045),rgba(0,0,0,.19) 58%,rgba(0,0,0,.31));
  box-shadow:inset 0 2px 0 rgba(255,255,255,.06),inset 0 -3px 8px rgba(0,0,0,.28),0 8px 18px rgba(0,0,0,.18);
}
@media(max-width:620px){
  .current-month .spotlight-intro{text-align:left}
  .current-month .elite-plaque-current{width:100%;transform:none}
}


/* v2.0 — engraved/debossed current-plaque title experiment */
.current-month .elite-plaque-current .plaque-month,
.current-month .elite-plaque-current .plaque-teacher{
  color:#87bed3;
  text-shadow:0 -1px 0 rgba(1,12,20,.95),0 1px 0 rgba(203,240,252,.18),0 0 7px rgba(85,186,225,.09);
}
.current-month .elite-plaque-current .plaque-title-block h3{
  color:#8fc6da;
  background:linear-gradient(180deg,#b7dfeb 0%,#8cbfd2 38%,#6c9fb4 67%,#a5d2e0 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  filter:drop-shadow(0 -1px 0 rgba(0,7,13,.92)) drop-shadow(0 1px 0 rgba(211,241,250,.16));
  text-shadow:none;
  position:relative;
}
.current-month .elite-plaque-current .plaque-title-block h3:after{
  content:attr(data-engrave);
}
.current-month .elite-plaque-current .plaque-rule{background:linear-gradient(90deg,rgba(123,183,208,.05),rgba(126,193,219,.42) 16%,rgba(184,224,238,.55) 50%,rgba(126,193,219,.42) 84%,rgba(123,183,208,.05));box-shadow:0 -1px 0 rgba(0,8,14,.72),0 1px 0 rgba(203,237,248,.10)}


/* v2.1 — final current-plaque title polish: fine icy outline, not neon. */
.current-month .elite-plaque-current .plaque-title-block h3{
  -webkit-text-stroke:.55px rgba(204,239,249,.56);
  paint-order:stroke fill;
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.42)) drop-shadow(0 0 5px rgba(126,205,233,.08));
}


/* v2.2 — final readability lift: pearl/icy-white title, retaining the cool-blue etched edge. */
.current-month .elite-plaque-current .plaque-title-block h3{
  color:#f2fbff;
  background:linear-gradient(180deg,#ffffff 0%,#edf9fd 40%,#d8edf5 72%,#f7fdff 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:.55px rgba(125,203,232,.66);
  filter:drop-shadow(0 1px 0 rgba(0,0,0,.45)) drop-shadow(0 0 6px rgba(142,218,245,.10));
}

/* =========================================================
   Elite wall — rows awaiting their Boss Battle (assets/elite-wall.js).
   A week with no names yet states when its battle runs instead of
   showing placeholder winners. Quieter than an engraved name, so a
   half-filled plaque still reads as a plaque, not as missing data.
   ========================================================= */
.winner-row .winner-pending{
  font-style:normal;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  color:#7f97a3;
  text-shadow:0 -1px 0 rgba(0,0,0,.85);
}
.winner-row.current .winner-pending{color:#9fd8e6}
.winner-row.is-open{opacity:.86}
@media(max-width:760px){.winner-row .winner-pending{font-size:12px}}
