:root{
  --bg:#03090d;
  --panel:#0a161e;
  --panel2:#0d1b24;
  --line:#253845;
  --line-soft:#162933;
  --white:#f6f8fa;
  --muted:#a7b3bd;
  --green:#28e576;
  --blue:#1da7ff;
}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  background:
    radial-gradient(circle at 62% 6%,rgba(18,70,100,.22),transparent 31rem),
    linear-gradient(180deg,#02070a 0%,#041017 62%,#02070a 100%);
  color:var(--white);
  font-family:Inter,Arial,Helvetica,sans-serif;
}
a{text-decoration:none;color:inherit}
.pixel-shell{width:min(1460px,calc(100% - 78px));margin:0 auto}
.page-grid{
  position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.12;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(#000,transparent 78%)
}

/* HEADER */
.pixel-header{height:112px;padding-top:12px}
.pixel-header-inner{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  height:94px
}
.pixel-brand{display:flex;align-items:center;height:94px;overflow:hidden}
.pixel-brand img{
  width:365px;height:102px;object-fit:cover;object-position:left center;
  mix-blend-mode:screen
}
.pixel-nav{
  height:78px;display:flex;overflow:hidden;
  border:1px solid #172b36;border-radius:18px;
  background:rgba(6,14,19,.9);
  box-shadow:0 18px 60px rgba(0,0,0,.34)
}
.pixel-nav a{
  min-width:112px;height:78px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  border-right:1px solid #142631;color:#d4dde3;font-size:12px
}
.pixel-nav a:last-child{border-right:0}
.pixel-nav a.active{
  background:linear-gradient(180deg,rgba(40,229,118,.14),rgba(40,229,118,.025));
  box-shadow:inset 0 -2px 0 var(--green)
}
.nav-symbol{font-size:20px}
.pixel-system{
  justify-self:end;min-width:225px;padding:12px 17px;
  border:1px solid #172b36;border-radius:15px;background:#061016
}
.pixel-system>div{display:flex;align-items:center;gap:9px;font-size:12px}
.pixel-system i,.card-badge i,.status-entry i{
  width:8px;height:8px;border-radius:50%;background:var(--green);
  box-shadow:0 0 13px rgba(40,229,118,.75)
}
.pixel-system small{display:block;margin:6px 0 0 17px;color:#83939e;font-size:10px}

/* HERO */
.pixel-main{padding:0 0 54px}
.pixel-hero{
  height:370px;display:grid;grid-template-columns:43% 57%;
  position:relative;overflow:hidden
}
.pixel-hero-copy{padding:43px 0 20px 37px;z-index:2}
.pixel-eyebrow{
  font-size:10px;font-weight:900;letter-spacing:.42em;color:#dce4e8
}
.pixel-hero h1{
  margin:16px 0 16px;font-weight:950;
  font-size:clamp(56px,5vw,76px);line-height:.94;letter-spacing:-.055em
}
.pixel-hero h1 span{color:var(--green)}
.pixel-hero p{
  max-width:600px;margin:0;color:#b1bec7;font-size:17px;line-height:1.55
}
.hero-pills{display:flex;gap:13px;margin-top:22px}
.hero-pills a{
  min-width:115px;padding:11px 17px;border-radius:999px;
  border:1px solid #172c37;background:#09151c;
  font-size:12px;text-align:center
}
.earth-panel{height:370px;position:relative;overflow:hidden}
.earth-panel>img{
  position:absolute;width:852px;height:376px;object-fit:cover;
  left:-70px;top:0
}
.hero-word-stack{
  position:absolute;right:2px;top:91px;
  display:flex;flex-direction:column;gap:19px;
  text-align:center;color:#bec9d0;font-size:13px;letter-spacing:.37em
}
.hero-word-stack i{width:50px;height:2px;background:var(--green);margin:0 auto}

/* CARDS */
.pixel-cards{
  display:grid;
  grid-template-columns:1.17fr 1.08fr 1fr .93fr;
  gap:16px
}
.pixel-card{
  min-height:334px;overflow:hidden;
  border:1px solid var(--line);border-radius:16px;
  background:linear-gradient(180deg,var(--panel2),var(--panel));
  box-shadow:0 18px 50px rgba(0,0,0,.32)
}
.pixel-card-image{height:128px;position:relative;overflow:hidden}
.pixel-card-image img{width:100%;height:100%;object-fit:cover}
.card-badge{
  position:absolute;right:14px;top:12px;
  display:flex;align-items:center;gap:6px;
  padding:7px 12px;border-radius:999px;
  font-size:10px;font-weight:900;letter-spacing:.06em
}
.card-badge.online{background:#0d3b28;color:#b7ffd1}
.card-badge.live{background:#0a4a73;color:#caedff}
.card-badge.live i{background:#4abbff;box-shadow:none}
.pixel-card-body{padding:18px 20px}
.pixel-card-title{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px
}
.square-icon{
  width:46px;height:46px;border-radius:10px;display:grid;place-items:center;
  background:#12331f;font-size:22px
}
.status-icon{color:var(--blue);background:#09283a}
.project-icon{color:#6ec8ff;background:#0a2636}
.pixel-card-title h2{margin:0 0 5px;font-size:19px;letter-spacing:-.025em}
.pixel-card-title small{color:#a8b5be;font-size:12px}
.circle-arrow{
  width:38px;height:38px;border-radius:50%;display:grid;place-items:center;
  border:1px solid #314753;background:#14242d;font-size:26px
}
.pixel-card-body>p{margin:17px 0;color:#b2bec6;font-size:12.7px;line-height:1.55}
.mini-actions{display:flex;gap:8px;flex-wrap:wrap}
.mini-actions span{
  padding:9px 11px;border-radius:9px;border:1px solid #223744;
  background:#11222b;color:#eef2f4;font-size:10px
}
.project-card{display:flex;flex-direction:column}
.project-visual{
  height:128px;position:relative;display:grid;place-items:center;
  background:radial-gradient(circle at 50% 50%,#0d2937,#08151c)
}
.project-orbit{position:absolute;border:1px solid rgba(30,167,255,.25);border-radius:50%}
.project-orbit.o1{width:150px;height:70px;transform:rotate(18deg)}
.project-orbit.o2{width:85px;height:130px;transform:rotate(-28deg)}
.project-core{
  width:57px;height:57px;border-radius:16px;display:grid;place-items:center;
  background:#0d2634;border:1px solid #204b65;color:#41b7ff;font-weight:900
}
.coming-card{display:flex;flex-direction:column;justify-content:flex-end}
.coming-visual{
  height:128px;display:grid;place-items:center;
  color:#718795;font-size:44px;
  background:linear-gradient(135deg,#0c1820,#0d1b24)
}

/* STATUS */
.pixel-status-strip{
  margin-top:18px;min-height:88px;display:grid;grid-template-columns:1fr 1fr 1fr 1.45fr;
  border:1px solid #203641;border-radius:15px;overflow:hidden;background:#061016
}
.status-entry{
  padding:18px 25px;display:flex;align-items:center;gap:14px;
  border-right:1px solid #192b35
}
.status-glyph{font-size:25px;color:#b2c0c9}
.status-entry strong{display:block;font-size:12px}
.status-entry small{
  display:flex;align-items:center;gap:6px;margin-top:5px;color:#90bca1;font-size:10px
}
.status-entry i{width:7px;height:7px;box-shadow:none}
.status-quote{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  color:#c0cbd1;font-size:13px;font-style:italic;text-align:center
}
.status-quote small{margin-top:7px;font-style:normal;color:#9caab3}

/* FOOTER */
.pixel-footer{border-top:1px solid #101e27}
.pixel-footer-inner{
  min-height:84px;display:flex;align-items:center;gap:20px;color:#7e8d98;font-size:11px
}
.pixel-footer strong{font-size:17px;color:white}
.pixel-footer strong span{color:var(--green)}
.footer-right{margin-left:auto}

/* Preserve basic styling for existing subpages/dashboard */
.site-header,.topbar{display:none}
.page-shell,.page{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:46px 0}
.subpage-hero,.page-intro,.guide-head,.dash-heading,.login-layout,.dash-overview,.admin-tools,.sub-card-grid,.help-choice-grid,.guide-frame{
  font-family:Inter,Arial,Helvetica,sans-serif
}
.subpage-hero{
  min-height:300px;padding:42px;border:1px solid var(--line);border-radius:20px;
  background:linear-gradient(120deg,#08151c,#071117);
  display:flex;align-items:center;justify-content:space-between;gap:28px
}
.subpage-hero h1,.page-intro h1,.dash-heading h1,.login-copy h1{
  font-size:clamp(42px,5vw,68px);line-height:.97;letter-spacing:-.045em;margin:10px 0
}
.subpage-hero h1 span,.login-copy h1 span{color:var(--green)}
.subpage-hero p,.page-intro p,.dash-heading p,.login-copy p{color:var(--muted);line-height:1.55}
.minecraft-status-box,.sub-card,.choice-card,.login-panel,.dash-card,.tool-card,.guide-frame{
  border:1px solid var(--line);border-radius:16px;background:#0a161e
}
.minecraft-status-box{width:410px;padding:22px}
.status-line{display:flex;align-items:center;gap:10px;padding-bottom:15px;border-bottom:1px solid var(--line-soft)}
.server-row{display:flex;justify-content:space-between;gap:15px;padding:13px 0;border-bottom:1px solid var(--line-soft);font-size:12px}
.sub-card-grid,.dash-overview,.admin-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.sub-card,.tool-card,.dash-card{padding:22px}
.sub-card p,.tool-card p,.dash-card p{color:var(--muted);font-size:12px;line-height:1.5}
.help-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.choice-card{overflow:hidden}.choice-art{height:220px;display:grid;place-items:center;font-size:70px;background:#0b1b24}.choice-card>div:last-child{padding:22px}
.guide-head,.dash-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.guide-frame{overflow:hidden}.guide-bar{padding:13px 16px;border-bottom:1px solid var(--line-soft)}.guide-frame img{display:block;width:100%;padding:14px}
.login-layout{min-height:600px;display:grid;grid-template-columns:1.2fr .8fr;gap:20px;align-items:center}
.login-copy{padding:35px}.login-panel{padding:28px}.login-panel input{width:100%;padding:13px;margin:6px 0 12px;background:#071117;border:1px solid var(--line);color:white;border-radius:10px}.login-panel button{width:100%;padding:13px;border:0;border-radius:10px;background:var(--green);font-weight:900}
.error-box{padding:11px;background:#291319;border:1px solid #63323b;border-radius:10px;color:#ffc8cc}
.tool-card button{width:100%;padding:10px;border-radius:10px;border:1px solid var(--line);background:#12212a;color:#6f7f89}

@media(max-width:1120px){
  .pixel-header-inner{grid-template-columns:1fr auto}.pixel-system{display:none}
  .pixel-hero{grid-template-columns:1fr;height:auto}.pixel-hero-copy{padding:35px 5px}.earth-panel{height:310px}
  .earth-panel>img{left:50%;transform:translateX(-50%)}
  .pixel-cards{grid-template-columns:1fr 1fr}
  .pixel-status-strip{grid-template-columns:1fr 1fr}.status-quote{min-height:85px}
}
@media(max-width:760px){
  .pixel-shell{width:calc(100% - 28px)}
  .pixel-header{height:84px}.pixel-header-inner{height:76px}
  .pixel-brand img{width:270px;height:78px}.pixel-nav{display:none}
  .pixel-hero h1{font-size:48px}
  .earth-panel{height:270px}.earth-panel>img{width:700px;height:auto}.hero-word-stack{display:none}
  .pixel-cards,.pixel-status-strip,.sub-card-grid,.dash-overview,.admin-tools,.help-choice-grid{grid-template-columns:1fr}
  .pixel-card{min-height:auto}.status-entry{border-right:0;border-bottom:1px solid #192b35}
  .pixel-footer-inner{flex-wrap:wrap;padding:20px 0}.footer-right{margin-left:0;width:100%}
  .subpage-hero{padding:26px;flex-direction:column;align-items:flex-start}.minecraft-status-box{width:100%}
  .login-layout{grid-template-columns:1fr;min-height:auto}.guide-head,.dash-heading{align-items:flex-start;flex-direction:column}
}

.dashboard-alert{
    margin:0 0 18px;
    padding:14px 17px;
    border-radius:12px;
    border:1px solid #28563d;
    background:#0d2519;
    color:#c8ffdc;
    font-size:13px;
}

.dashboard-alert.error{
    border-color:#67343b;
    background:#28151a;
    color:#ffc3c8;
}

.players-summary{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:18px;
}

.player-stat{
    padding:20px;
    border:1px solid #20323d;
    border-radius:15px;
    background:#0a161e;
}

.player-stat span{
    display:block;
    color:#83949f;
    font-size:10px;
    letter-spacing:.15em;
}

.player-stat strong{
    display:block;
    font-size:30px;
    margin-top:8px;
}

.online-text{
    color:#28e576;
}

.players-panel{
    border:1px solid #20323d;
    border-radius:16px;
    background:#0a161e;
    overflow:hidden;
    margin-bottom:18px;
}

.panel-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:19px 21px;
    border-bottom:1px solid #172a34;
}

.panel-heading span{
    color:#28e576;
    font-size:9px;
    letter-spacing:.16em;
}

.panel-heading h2{
    margin:4px 0 0;
    font-size:22px;
}

.player-list{
    display:grid;
}

.player-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:17px 21px;
    border-bottom:1px solid #162831;
}

.player-row:last-child{
    border-bottom:0;
}

.player-identity{
    display:flex;
    align-items:center;
    gap:13px;
}

.player-avatar{
    width:44px;
    height:44px;
    border-radius:11px;
    display:grid;
    place-items:center;
    background:#123020;
    border:1px solid #24533a;
    color:#75ffa7;
    font-weight:900;
}

.player-identity strong{
    display:block;
    font-size:14px;
}

.player-identity span{
    display:block;
    color:#68d790;
    font-size:10px;
    margin-top:4px;
}

.player-actions form{
    display:flex;
    gap:8px;
}

.player-btn{
    padding:8px 13px;
    border-radius:9px;
    border:1px solid #2b404c;
    background:#12222b;
    color:#eef2f4;
    cursor:pointer;
}

.player-btn.danger{
    border-color:#66353b;
    background:#28161a;
    color:#ffc2c7;
}

.management-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-bottom:18px;
}

.management-card{
    border:1px solid #20323d;
    border-radius:16px;
    background:#0a161e;
    padding:21px;
}

.management-label{
    color:#28e576;
    font-size:9px;
    letter-spacing:.16em;
}

.management-card h3{
    margin:8px 0;
    font-size:20px;
}

.management-card p,
.muted-copy{
    color:#93a4af;
    font-size:12px;
    line-height:1.5;
}

.management-form{
    display:grid;
    gap:10px;
    margin-top:17px;
}

.management-form input{
    width:100%;
    background:#071117;
    color:white;
    border:1px solid #203641;
    border-radius:10px;
    padding:11px 12px;
}

.management-form div{
    display:flex;
    gap:8px;
}

.management-form button{
    border:0;
    border-radius:9px;
    padding:10px 13px;
    background:#28e576;
    color:#031009;
    font-weight:900;
    cursor:pointer;
}

.management-form button.secondary{
    background:#14242d;
    color:white;
    border:1px solid #2b404c;
}

.whitelist-panel{
    padding-bottom:18px;
}

.whitelist-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    padding:18px 21px 2px;
}

.whitelist-tags span{
    padding:8px 11px;
    border-radius:999px;
    border:1px solid #253d49;
    background:#102029;
    font-size:11px;
}

.empty-state{
    padding:55px 20px;
    text-align:center;
    color:#8ea0ab;
}

.empty-state div{
    font-size:34px;
}

.empty-state h3{
    color:white;
    margin:10px 0 4px;
}

@media(max-width:760px){
    .players-summary,
    .management-grid{
        grid-template-columns:1fr;
    }

    .player-row{
        align-items:flex-start;
        flex-direction:column;
    }

    .player-actions,
    .player-actions form{
        width:100%;
    }

    .player-actions button{
        flex:1;
    }
}

/* =========================================================
   BABYMONKEY PRIVATE DASHBOARD
========================================================= */

.dashboard-header-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.dashboard-section {
    margin-top: 32px;
}

.dashboard-section-heading {
    margin-bottom: 16px;
}

.dashboard-section-heading h2 {
    margin: 5px 0 5px;
    font-size: 25px;
}

.dashboard-section-heading p {
    margin: 0;
    color: #8fa1ac;
    font-size: 13px;
}


.dash-card {
    min-height: 330px;
    padding: 22px;

    border: 1px solid #20323d;
    border-radius: 16px;

    background:
        linear-gradient(
            180deg,
            #0d1b24 0%,
            #09151c 100%
        );

    color: inherit;
    text-decoration: none;
}


.clickable-card {
    display: flex;
    flex-direction: column;

    cursor: pointer;

    transition:
        border-color .2s ease,
        background .2s ease,
        transform .2s ease;
}


.clickable-card:hover {
    border-color: #28e576;

    background:
        linear-gradient(
            180deg,
            #10231d 0%,
            #09171a 100%
        );

    transform: translateY(-2px);
}


.active-dashboard-card {
    box-shadow:
        inset 0 1px 0 rgba(40, 229, 118, .08);
}


.inactive-dashboard-card {
    opacity: .82;
}


.dash-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    margin-bottom: 18px;
}


.dash-card-icon {
    width: 52px;
    height: 52px;

    display: grid;
    place-items: center;

    border-radius: 12px;

    background: #102b1c;
    border: 1px solid #24533a;

    font-size: 24px;
}


.permissions-icon {
    background: #102435;
    border-color: #25445b;
}


.server-icon {
    background: #0b2837;
    border-color: #245169;
}


.carwash-icon {
    background: #272215;
    border-color: #4c432a;
}


.homelab-icon {
    background: #171e2d;
    border-color: #303d59;
}


.dashboard-live-badge,
.dashboard-coming-badge {
    padding: 7px 10px;

    border-radius: 999px;

    font-size: 9px;
    font-weight: 900;
    letter-spacing: .1em;
}


.dashboard-live-badge {
    display: flex;
    align-items: center;
    gap: 6px;

    color: #aaffc7;
    background: #103522;
}


.dashboard-live-badge i {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #28e576;

    box-shadow:
        0 0 10px rgba(40, 229, 118, .7);
}


.dashboard-coming-badge {
    color: #a6b3bb;
    background: #13212a;
}


.dash-card-content {
    display: flex;
    flex-direction: column;
    flex: 1;
}


.dash-card-content h3 {
    margin: 7px 0 8px;

    font-size: 22px;
}


.dash-card-content > p {
    margin: 0;

    color: #93a4af;

    font-size: 12px;
    line-height: 1.55;
}


.dashboard-feature-list {
    display: grid;
    grid-template-columns: 1fr 1fr;

    gap: 8px;

    margin-top: 20px;
}


.dashboard-feature-list span {
    padding: 8px 9px;

    border: 1px solid #203640;

    border-radius: 8px;

    background: #0c1a21;

    color: #b9c6cd;

    font-size: 10px;
}


.muted-features span {
    color: #70818c;
}


.dash-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 10px;

    margin-top: auto;
    padding-top: 22px;
}


.card-status {
    font-size: 9px;
    font-weight: 900;
    letter-spacing: .08em;
}


.card-status.online {
    color: #28e576;
}


.card-status.disabled {
    color: #687984;
}


.card-open {
    color: #dce5e9;

    font-size: 11px;
    font-weight: 800;
}


.clickable-card:hover .card-open {
    color: #28e576;
}


.disabled-text {
    color: #61717b;
}


.danger-soft {
    border-color: #5b3037 !important;

    color: #ffc2c7 !important;
}


.dashboard-status-panel {
    margin-top: 32px;
}


.dashboard-connections {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);
}


.dashboard-connection {
    min-height: 92px;

    display: flex;
    align-items: center;

    gap: 12px;

    padding: 18px 20px;

    border-right:
        1px solid #172a34;
}


.dashboard-connection:last-child {
    border-right: 0;
}


.connection-icon {
    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    border-radius: 10px;

    background: #10202a;

    font-size: 18px;
}


.dashboard-connection strong {
    display: block;

    font-size: 12px;
}


.dashboard-connection span {
    display: block;

    margin-top: 5px;

    font-size: 10px;
}


.connection-online {
    color: #68d790;
}


.offline-text {
    color: #ff747d;
}


@media (max-width: 900px) {

    .dashboard-connections {
        grid-template-columns: 1fr 1fr;
    }

    .dashboard-connection:nth-child(2) {
        border-right: 0;
    }

}


@media (max-width: 760px) {

    .dashboard-header-actions {
        width: 100%;
    }

    .dashboard-header-actions a {
        flex: 1;
        text-align: center;
    }

    .dashboard-feature-list {
        grid-template-columns: 1fr;
    }

    .dashboard-connections {
        grid-template-columns: 1fr;
    }

    .dashboard-connection {
        border-right: 0;
        border-bottom: 1px solid #172a34;
    }

    .dashboard-connection:last-child {
        border-bottom: 0;
    }

}
.player-banned {
    display: block;
    color: #ff747d;
    font-size: 10px;
    margin-top: 4px;
}

.banned-avatar {
    background: #2a1519;
    border-color: #63343b;
    color: #ff9da4;
}

.unban-btn {
    border-color: #28573d;
    background: #112a1c;
    color: #83f6aa;
}

.unban-btn:hover {
    border-color: #28e576;
    background: #163822;
}

.ban-count {
    color: #899aa4 !important;
    font-size: 10px !important;
    letter-spacing: .06em !important;
}
