/*
Theme Name: SadFlower's Garden V3
Theme URI: https://sadflower.net/
Author: SadFlower
Description: A responsive, purpose-built Minecraft community theme for SadFlower's Garden.
Version: 4.0.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: sadflower-garden-v3
*/
:root{--bg:#02080d;--panel:#07121c;--panel2:#0a1824;--line:#163651;--blue:#4db8ff;--blue2:#168ad8;--gold:#f0b44c;--text:#eef7ff;--muted:#9cb2c5;--green:#74d66c;--max:1240px;--radius:18px;--shadow:0 24px 70px rgba(0,0,0,.38)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% 0,#092039 0,#02080d 38%,#010407 100%);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(2,8,13,.88);backdrop-filter:blur(15px);border-bottom:1px solid rgba(77,184,255,.18)}body.admin-bar .site-header{top:32px}.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:48px;height:48px;border-radius:50%;object-fit:cover;box-shadow:0 0 25px rgba(77,184,255,.25)}.brand-title{font-family:Georgia,serif;font-weight:800;letter-spacing:.08em;color:var(--gold);font-size:1.05rem}.brand-tagline{font-size:.72rem;color:var(--muted)}.main-nav ul{display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0}.main-nav a{display:block;padding:10px 13px;border-radius:10px;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#dceafa}.main-nav a:hover{background:#0d2233;color:var(--blue)}.menu-toggle{display:none;background:#0b1d2b;color:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 13px}.hero{padding:58px 0 28px}.hero-panel{position:relative;overflow:hidden;min-height:560px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,rgba(4,15,24,.98),rgba(5,19,31,.88));box-shadow:var(--shadow);display:grid;grid-template-columns:1.05fr .95fr;align-items:center}.hero-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 40%,rgba(43,127,206,.2),transparent 38%),linear-gradient(90deg,transparent 0 48%,rgba(0,0,0,.2));pointer-events:none}.hero-copy{position:relative;z-index:2;padding:64px}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.2em;font-weight:900;font-size:.78rem}.hero h1{font-family:Georgia,serif;font-size:clamp(3.2rem,7vw,6.8rem);line-height:.88;margin:14px 0 18px;text-transform:uppercase;letter-spacing:-.045em;text-shadow:0 5px 25px #000}.hero h1 span{color:var(--blue)}.hero-copy p{max-width:650px;color:#c3d5e4;font-size:1.08rem}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--blue2);background:linear-gradient(#157cc1,#0c4b7f);box-shadow:inset 0 1px rgba(255,255,255,.3),0 10px 28px rgba(0,100,180,.22)}.btn:hover{transform:translateY(-2px);filter:brightness(1.13)}.btn.alt{background:transparent;border-color:var(--gold);color:var(--gold)}.hero-art{position:relative;min-height:560px;display:grid;place-items:center;padding:46px}.hero-logo{position:relative;z-index:4;width:min(390px,85%);aspect-ratio:1;border-radius:50%;filter:drop-shadow(0 20px 35px rgba(0,0,0,.6));animation:float 7s ease-in-out infinite}.card-fan{position:absolute;inset:80px 20px 35px;opacity:.45;filter:saturate(1.1)}.card-fan img{position:absolute;width:54%;border-radius:16px;border:1px solid #29658e;box-shadow:0 20px 40px rgba(0,0,0,.5)}.card-fan img:nth-child(1){left:0;top:0;transform:rotate(-8deg)}.card-fan img:nth-child(2){right:0;top:45px;transform:rotate(9deg)}.card-fan img:nth-child(3){left:8%;bottom:0;transform:rotate(5deg)}@keyframes float{50%{transform:translateY(-10px)}}.section{padding:38px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.section-title{font-family:Georgia,serif;font-size:clamp(1.8rem,4vw,3rem);margin:0}.section-kicker{color:var(--gold);font-weight:800;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.muted{color:var(--muted)}.world-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.world-card{position:relative;overflow:hidden;border-radius:16px;border:1px solid var(--line);background:#07131e;min-height:245px;box-shadow:0 16px 35px rgba(0,0,0,.28);transition:.25s}.world-card:hover{transform:translateY(-6px);border-color:var(--blue);box-shadow:0 22px 48px rgba(0,0,0,.45)}.world-card img{width:100%;height:100%;object-fit:cover}.world-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.75))}.world-card span{position:absolute;z-index:2;left:18px;bottom:15px;font-weight:900;color:#fff;text-transform:uppercase;letter-spacing:.12em}.status-cta{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}.status-panel,.cta-panel,.content-card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#081722,#050e16);box-shadow:var(--shadow)}.status-panel{padding:24px}.server-list{display:grid;gap:10px}.server{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:15px;border:1px solid #16324a;border-radius:13px;background:#07121c}.dot{width:12px;height:12px;border-radius:50%;background:var(--green);box-shadow:0 0 14px var(--green)}.server small{display:block;color:var(--muted)}.server strong:last-child{color:var(--blue)}.cta-panel{padding:34px;background:linear-gradient(135deg,rgba(4,18,29,.95),rgba(8,29,45,.88)),url('assets/images/world-community.jpg') center/cover}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature{padding:24px;border:1px solid var(--line);border-radius:16px;background:#07131d}.feature-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#0a263a;border:1px solid #1a5d8c;color:var(--blue);font-size:1.4rem;margin-bottom:13px}.quick-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.quick{position:relative;min-height:190px;padding:18px 12px 16px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(180deg,#081722,#030b12);transition:transform .2s,border-color .2s,box-shadow .2s;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.quick:before{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.06);border-radius:13px;pointer-events:none}.quick:hover{transform:translateY(-5px);border-color:var(--quick-color,var(--blue));box-shadow:0 16px 32px rgba(0,0,0,.38),0 0 24px color-mix(in srgb,var(--quick-color,var(--blue)) 35%,transparent)}.quick-icon{position:relative;z-index:1;width:82px;height:82px;border-radius:22px;display:grid;place-items:center;color:#fff;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--quick-color,var(--blue)) 55%,#13212c),#07111a 70%);border:2px solid var(--quick-color,var(--blue));box-shadow:inset 0 0 0 5px rgba(0,0,0,.22),0 0 22px color-mix(in srgb,var(--quick-color,var(--blue)) 30%,transparent)}.quick-icon svg{width:47px;height:47px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.quick-label{position:relative;z-index:1;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#fff;font-size:.9rem;text-shadow:0 2px 8px #000}.quick small{position:relative;z-index:1;color:var(--muted);font-size:.72rem}.quick.discord{--quick-color:#7289da}.quick.rules{--quick-color:#79c94b}.quick.vote{--quick-color:#25c8e5}.quick.store{--quick-color:#d69a22}.quick.map{--quick-color:#4a9ff2}.quick.wiki{--quick-color:#9c62d9}.quick.support{--quick-color:#ef6847}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.post-card{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#07131d}.post-card .inside{padding:20px}.post-card h3{margin:0 0 8px}.post-card .meta{font-size:.8rem;color:var(--gold)}.site-footer{margin-top:55px;border-top:1px solid var(--line);background:#01070b;padding:38px 0}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:28px}.footer-title{font-family:Georgia,serif;color:var(--gold);letter-spacing:.08em}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:8px 0;color:var(--muted)}.copyright{margin-top:30px;padding-top:18px;border-top:1px solid #102638;color:#718da3;font-size:.82rem}.entry-shell{padding:50px 0}.entry-card{padding:34px;border:1px solid var(--line);border-radius:18px;background:#07131d}.entry-card h1{font-family:Georgia,serif}.entry-content img{border-radius:12px}.screen-reader-text{position:absolute;left:-9999px}.alignwide{max-width:1100px}.alignfull{width:100vw;margin-left:calc(50% - 50vw)}
@media(max-width:980px){.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:78px;left:18px;right:18px;background:#06111a;border:1px solid var(--line);border-radius:14px;padding:12px}.main-nav.open{display:block}.main-nav ul{flex-direction:column;align-items:stretch}.hero-panel{grid-template-columns:1fr}.hero-copy{padding:44px 30px 20px}.hero-art{min-height:420px}.world-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.status-cta{grid-template-columns:1fr}.feature-grid,.posts-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){body.admin-bar .site-header{top:46px}.wrap{width:min(100% - 22px,var(--max))}.brand-tagline{display:none}.hero{padding-top:22px}.hero-panel{min-height:0}.hero-copy{padding:34px 22px 10px}.hero h1{font-size:3.1rem}.hero-art{min-height:330px;padding:20px}.world-grid,.feature-grid,.posts-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick{min-height:170px}.footer-grid{grid-template-columns:1fr}.section{padding:28px 0}.server{grid-template-columns:auto 1fr}.server strong:last-child{grid-column:2}}


/* V2.2.0: full hero artwork and clean quick-link cards */
.hero{padding:32px 0 28px}
.hero-banner-wrap{position:relative;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#06111a;box-shadow:var(--shadow)}
.hero-banner-image{display:block;width:100%;height:auto;aspect-ratio:1536/460;object-fit:cover}
.hero-actions{position:static;display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:16px}
.quick-grid{grid-template-columns:repeat(7,minmax(120px,1fr))}
.quick{min-width:0;min-height:190px;overflow:visible}
.quick-icon{flex:0 0 82px;overflow:visible}
.quick-icon svg{display:block;width:48px;height:48px;overflow:visible}
.quick-label,.quick small{white-space:normal;overflow:visible;text-overflow:clip}
@media(max-width:980px){.quick-grid{grid-template-columns:repeat(4,minmax(140px,1fr))}}
@media(max-width:620px){.hero-banner-image{aspect-ratio:4/3;object-position:center}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V2.2.4: dedicated mobile hero instead of cropping the desktop banner */
.hero-mobile{display:none}
@media(max-width:620px){
  .hero-desktop{display:none}
  .hero-mobile{display:block;position:relative;min-height:560px;overflow:hidden;border:1px solid var(--line);border-radius:20px;background-image:var(--hero-mobile-bg);background-size:cover;background-position:center;box-shadow:var(--shadow)}
  .hero-mobile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,6,10,.16) 0%,rgba(1,6,10,.48) 42%,rgba(1,6,10,.92) 100%)}
  .hero-mobile-shade{position:absolute;inset:0;background:radial-gradient(circle at 50% 20%,rgba(40,132,215,.12),transparent 38%)}
  .hero-mobile-content{position:relative;z-index:2;min-height:560px;padding:30px 22px 28px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;text-align:center}
  .hero-mobile-logo{width:190px;height:190px;object-fit:contain;margin-bottom:14px;filter:drop-shadow(0 18px 28px rgba(0,0,0,.7))}
  .hero-mobile-welcome{margin:0;color:var(--gold);font-family:Georgia,serif;font-style:italic;font-size:1.45rem}
  .hero-mobile h1{margin:5px 0 10px;font-family:Georgia,serif;font-size:clamp(2.65rem,14vw,4.2rem);line-height:.88;text-transform:uppercase;letter-spacing:-.045em;text-shadow:0 5px 22px #000}
  .hero-mobile-tagline{margin:0;color:#f4bd42;font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}
  .hero-mobile-features{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:18px}
  .hero-mobile-features span{padding:7px 11px;border:1px solid rgba(77,184,255,.42);border-radius:999px;background:rgba(2,13,21,.7);color:#cceaff;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
  .hero-actions{margin-top:14px}
}

/* V2.3.0: polish, subtle motion, BlueMap preview, and richer content styling */
body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none;width:8px;height:8px;border-radius:50%;background:rgba(77,184,255,.28);box-shadow:70vw 12vh 0 rgba(77,184,255,.16),16vw 72vh 0 rgba(240,180,76,.12),88vw 60vh 0 rgba(77,184,255,.12),40vw 28vh 0 rgba(77,184,255,.09);animation:sf-drift 22s linear infinite}
body:after{width:5px;height:5px;opacity:.65;animation-duration:31s;animation-direction:reverse;transform:translateY(30vh)}
@keyframes sf-drift{0%{translate:0 0}50%{translate:12px -24px}100%{translate:0 -48px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important}}
.world-card img,.post-card img{transition:transform .45s ease,filter .45s ease}.world-card:hover img,.post-card:hover img{transform:scale(1.045);filter:saturate(1.08)}
.feature,.post-card,.status-panel,.cta-panel,.map-preview-card{transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.feature:hover,.post-card:hover{transform:translateY(-4px);border-color:#235d89;box-shadow:0 18px 42px rgba(0,0,0,.35)}
.status-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid #16324a;color:var(--muted);font-size:.76rem}.status-refresh{appearance:none;border:1px solid #255377;background:#07121c;color:#cfeaff;border-radius:999px;padding:7px 12px;font-weight:800;cursor:pointer}.status-refresh:hover{border-color:var(--blue);color:#fff}.status-refresh:disabled{opacity:.55;cursor:wait}
.server.is-online{border-color:rgba(116,214,108,.35)}.server.is-offline{border-color:rgba(228,84,84,.35)}.server.is-unavailable{border-color:rgba(140,160,179,.28)}
.map-preview-card{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#081722,#050e16);box-shadow:var(--shadow)}.map-preview-copy{padding:34px;align-self:center}.map-preview-copy h3{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.05;margin:10px 0}.map-frame-wrap{min-height:420px;background:#02080d}.map-frame{display:block;width:100%;height:100%;min-height:420px;border:0}.map-frame-placeholder{min-height:420px;background-position:center;background-size:cover;display:grid;place-items:center}.map-frame-placeholder span{padding:10px 14px;border-radius:999px;background:rgba(2,8,13,.82);border:1px solid var(--line)}
.entry-card{box-shadow:var(--shadow)}.entry-card>img{width:100%;max-height:520px;object-fit:cover;margin:18px 0 26px}.entry-content{font-size:1.03rem}.entry-content h2,.entry-content h3{font-family:Georgia,serif;color:#fff;margin-top:1.8em}.entry-content a{color:var(--blue);text-decoration:underline;text-decoration-color:rgba(77,184,255,.45);text-underline-offset:3px}.entry-content blockquote{margin:1.8em 0;padding:18px 22px;border-left:4px solid var(--gold);background:#081722;border-radius:0 12px 12px 0;color:#d7e5f0}.entry-content pre,.entry-content code{background:#02080d;border:1px solid #173650;border-radius:8px}.entry-content pre{padding:16px;overflow:auto}.entry-content table{width:100%;border-collapse:collapse}.entry-content th,.entry-content td{padding:12px;border:1px solid #1b3b55}.entry-content th{background:#0a1c2a;color:var(--gold)}
@media(max-width:820px){.map-preview-card{grid-template-columns:1fr}.map-frame-wrap,.map-frame,.map-frame-placeholder{min-height:360px}}
@media(max-width:620px){.map-preview-copy{padding:24px}.map-frame-wrap,.map-frame,.map-frame-placeholder{min-height:300px}.status-meta{align-items:flex-start;flex-direction:column}.status-refresh{width:100%}}


/* V2.4.0: immersive hero atmosphere, gallery, joining guide, and lightbox */
.hero-banner-wrap{isolation:isolate}
.hero-banner-wrap:before,.hero-banner-wrap:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2}
.hero-banner-wrap:before{background:linear-gradient(180deg,rgba(1,7,12,.02),rgba(1,7,12,.15));transition:background .5s ease}
body.sf-night .hero-banner-wrap:before{background:linear-gradient(180deg,rgba(0,13,32,.18),rgba(1,5,12,.38)),radial-gradient(circle at 74% 12%,rgba(111,174,255,.18),transparent 25%)}
.hero-banner-wrap:after{inset:auto -20% 8% -20%;height:32%;background:radial-gradient(ellipse at center,rgba(77,184,255,.14),transparent 68%);filter:blur(16px);animation:sf-hero-glow 7s ease-in-out infinite}
@keyframes sf-hero-glow{50%{opacity:.48;transform:scaleX(1.05)}}
.sf-cloud-layer{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.sf-cloud{position:absolute;width:180px;height:32px;border-radius:999px;background:rgba(220,239,255,.1);filter:blur(12px);animation:sf-clouds 44s linear infinite}
.sf-cloud:nth-child(1){top:16%;left:-20%;animation-duration:50s}.sf-cloud:nth-child(2){top:32%;left:-35%;width:260px;animation-duration:68s;animation-delay:-18s}.sf-cloud:nth-child(3){top:8%;left:-28%;width:130px;animation-duration:58s;animation-delay:-31s}
@keyframes sf-clouds{to{transform:translateX(160vw)}}
.sf-petals{position:fixed;inset:0;z-index:25;pointer-events:none;overflow:hidden}.sf-petal{position:absolute;top:-5vh;width:9px;height:13px;border-radius:70% 30% 65% 35%;background:linear-gradient(145deg,#74c9ff,#285a8d);opacity:.28;filter:drop-shadow(0 0 5px rgba(77,184,255,.35));animation:sf-petal-fall linear infinite}
@keyframes sf-petal-fall{to{transform:translate3d(var(--drift),110vh,0) rotate(560deg)}}
.join-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.join-card{position:relative;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#081722,#050e16);overflow:hidden}.join-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--blue),var(--gold))}.join-card h3{margin:0 0 8px;font-family:Georgia,serif;font-size:1.7rem}.join-address{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;padding:12px 14px;border:1px solid #255377;border-radius:12px;background:#020a11;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.copy-address{appearance:none;border:1px solid #2d6288;background:#0a2234;color:#dff3ff;border-radius:8px;padding:7px 10px;font-weight:800;cursor:pointer}.copy-address:hover{border-color:var(--blue)}
.gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:220px;gap:14px}.gallery-item{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#06111a;cursor:zoom-in}.gallery-item:first-child{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease}.gallery-item:hover img{transform:scale(1.055);filter:saturate(1.12)}.gallery-item span{position:absolute;left:14px;bottom:12px;padding:6px 9px;border-radius:999px;background:rgba(2,8,13,.78);border:1px solid rgba(255,255,255,.12);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.sf-lightbox{position:fixed;inset:0;z-index:9999;display:none;place-items:center;padding:24px;background:rgba(0,4,8,.92);backdrop-filter:blur(8px)}.sf-lightbox.open{display:grid}.sf-lightbox img{max-width:min(1200px,94vw);max-height:86vh;border-radius:16px;border:1px solid #2c658e;box-shadow:0 28px 90px rgba(0,0,0,.7)}.sf-lightbox button{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;border:1px solid #3b6f94;background:#07131d;color:#fff;font-size:1.5rem;cursor:pointer}
@media(max-width:820px){.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.gallery-item:first-child{grid-column:span 2;grid-row:span 1}.join-grid{grid-template-columns:1fr}}
@media(max-width:620px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:210px}.gallery-item:first-child{grid-column:auto}.join-address{align-items:stretch;flex-direction:column}.copy-address{width:100%}.sf-cloud-layer{display:none}}


/* V3.0.0: network dashboard, seasonal atmosphere, staff and player presentation */
.status-panel-v3{padding:28px}.server-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px}.server-card{position:relative;min-height:180px;padding:20px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#0a1b29,#050d15);overflow:hidden}.server-card:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:#536a7b}.server-card.is-online:before{background:linear-gradient(90deg,#4ed264,#9af58f)}.server-card.is-offline:before{background:linear-gradient(90deg,#d84949,#ff8181)}.server-card.is-unavailable:before{background:linear-gradient(90deg,#6d8192,#aebbc5)}.server-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.server-card h3{margin:0;font-family:Georgia,serif;font-size:1.35rem}.server-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border:1px solid #27445c;border-radius:999px;color:#c7d7e4;font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.server-badge .dot{width:8px;height:8px}.server-address{display:block;margin:9px 0 18px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem}.server-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.server-metric{padding:10px;border:1px solid #14334a;border-radius:10px;background:rgba(1,8,13,.62)}.server-metric small{display:block;color:var(--muted);font-size:.63rem;text-transform:uppercase;letter-spacing:.08em}.server-metric strong{display:block;margin-top:2px;font-size:1rem}.player-strip{display:none;margin-top:16px;padding:13px 15px;border:1px solid #183d58;border-radius:12px;background:#04101a}.player-strip.is-visible{display:block}.player-strip-title{margin:0 0 9px;color:var(--gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.player-list{display:flex;flex-wrap:wrap;gap:8px}.player-chip{padding:6px 9px;border-radius:999px;background:#0a2538;border:1px solid #245473;color:#dff2ff;font-size:.74rem;font-weight:800}.staff-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.staff-card{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#081722,#050e16);text-align:center}.staff-avatar{width:92px;height:92px;margin:0 auto 14px;display:grid;place-items:center;border-radius:22px;background:radial-gradient(circle,#164b70,#07131d 65%);border:1px solid #2b668d;box-shadow:0 0 30px rgba(77,184,255,.14);font-size:2.4rem}.staff-card h3{margin:0;font-family:Georgia,serif;font-size:1.45rem}.staff-role{margin:5px 0 10px;color:var(--gold);font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.seasonal-note{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.72rem}.sf-season-winter .sf-petal{border-radius:50%;background:#fff;opacity:.45}.sf-season-autumn .sf-petal{background:linear-gradient(145deg,#f1a347,#7d351b);opacity:.38}.sf-season-summer .hero-banner-wrap:before{background:linear-gradient(180deg,rgba(255,188,72,.05),rgba(1,7,12,.12))}.sf-season-spring .sf-petal{background:linear-gradient(145deg,#80d2ff,#4f77bb)}
@media(max-width:900px){.server-cards,.staff-grid{grid-template-columns:1fr}.server-card{min-height:0}}
@media(max-width:620px){.status-panel-v3{padding:20px}.server-metrics{grid-template-columns:1fr 1fr}.staff-grid{grid-template-columns:1fr}}


/* ==========================================================
   SadFlower's Garden V4 — immersive Minecraft UI refinement
   Privacy-conscious: status cards intentionally show only
   public player totals and basic service availability.
   ========================================================== */
:root{
  --sf-stone:#101820;
  --sf-deepslate:#050b10;
  --sf-copper:#d78b4a;
  --sf-copper-light:#ffc06f;
  --sf-blue:#55bfff;
  --sf-blue-deep:#0c6fa8;
}
body:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:
 linear-gradient(rgba(255,255,255,.013) 1px,transparent 1px),
 linear-gradient(90deg,rgba(255,255,255,.013) 1px,transparent 1px);
 background-size:32px 32px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.72),transparent 72%)}
.site-header{border-bottom:1px solid rgba(85,191,255,.22);box-shadow:0 10px 36px rgba(0,0,0,.28)}
.brand-mark{filter:drop-shadow(0 0 14px rgba(85,191,255,.24))}
.main-nav a{position:relative}
.main-nav a:after{content:"";position:absolute;left:10px;right:10px;bottom:4px;height:2px;background:linear-gradient(90deg,transparent,var(--sf-blue),transparent);transform:scaleX(0);transition:transform .22s ease}
.main-nav a:hover:after{transform:scaleX(1)}
.section-title{letter-spacing:-.025em;text-shadow:0 2px 24px rgba(0,0,0,.36)}
.section-kicker{color:var(--sf-copper-light)}
.section-head{padding-bottom:14px;border-bottom:1px solid rgba(85,191,255,.10)}
.hero-banner-wrap{box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 0 1px rgba(85,191,255,.18)}
.hero-banner-wrap:after{content:"";position:absolute;inset:auto 0 0;height:85px;background:linear-gradient(transparent,rgba(2,8,13,.64));pointer-events:none}
.hero-actions .btn{min-width:190px;border-radius:8px;box-shadow:inset 0 -3px rgba(0,0,0,.25),0 12px 26px rgba(0,0,0,.28);text-transform:uppercase;letter-spacing:.08em}
.hero-actions .btn:hover{transform:translateY(-3px);box-shadow:inset 0 -3px rgba(0,0,0,.25),0 18px 34px rgba(0,0,0,.38),0 0 26px rgba(85,191,255,.16)}
.world-card,.feature,.quick,.join-card,.post-card,.staff-card,.map-preview-card{border-radius:10px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 18px 44px rgba(0,0,0,.26)}
.world-card{border-color:rgba(85,191,255,.20)}
.world-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.055),transparent 28%,transparent 70%,rgba(85,191,255,.06))}
.world-card span{border-top:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(5,13,20,.72),rgba(2,7,11,.96));text-transform:uppercase;letter-spacing:.08em}
.feature-icon{border-radius:7px;background:linear-gradient(145deg,#18384f,#07131c);border:1px solid #2f6c93;box-shadow:inset 0 -3px rgba(0,0,0,.27),0 0 22px rgba(85,191,255,.13)}
.quick{min-height:158px;background:linear-gradient(145deg,#0d1d28,#050b11);border-color:rgba(85,191,255,.20)}
.quick:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.05),transparent 34%)}
.quick:hover{border-color:rgba(255,192,111,.55);box-shadow:0 18px 42px rgba(0,0,0,.36),0 0 26px rgba(85,191,255,.12)}
.quick-icon{border-radius:8px;background:linear-gradient(145deg,#14344b,#07121b);box-shadow:inset 0 -3px rgba(0,0,0,.28)}
.quick-label{text-transform:uppercase;letter-spacing:.07em}
.status-panel-v4{position:relative;overflow:hidden;padding:30px;border:1px solid rgba(85,191,255,.24);border-radius:12px;background:
 radial-gradient(circle at 5% 0,rgba(24,112,167,.20),transparent 35%),
 linear-gradient(145deg,#081722,#03090e 72%);box-shadow:0 26px 70px rgba(0,0,0,.34)}
.status-panel-v4:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 0 48%,rgba(255,255,255,.018) 50%,transparent 52%);background-size:72px 72px}
.server-cards-v4{position:relative;z-index:1;grid-template-columns:1.18fr 1fr 1fr}
.server-card{border-radius:9px;background:linear-gradient(145deg,#0c1b25,#040a0f);border-color:rgba(85,191,255,.18)}
.server-card-primary{border-color:rgba(255,192,111,.32);background:linear-gradient(145deg,#13212b,#060d12)}
.server-card-primary:before{background:linear-gradient(90deg,var(--sf-copper),var(--sf-blue))}
.server-eyebrow{display:block;margin-bottom:4px;color:var(--sf-copper-light);font-size:.64rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.server-public-address{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:14px 0 18px;padding:12px;border:1px solid rgba(85,191,255,.16);border-radius:7px;background:#02080d}
.server-public-address span{color:var(--muted);font-size:.67rem;text-transform:uppercase;letter-spacing:.09em}
.server-public-address code{color:#eaf7ff;font-size:.85rem}
.server-summary{min-height:52px;margin:15px 0 18px;color:var(--muted);font-size:.88rem;line-height:1.55}
.server-metrics-single{grid-template-columns:1fr}
.status-privacy-note{position:relative;z-index:1;margin:13px 0 0;color:#71889a;font-size:.68rem;text-align:right}
.status-refresh,.copy-address{border-radius:6px;text-transform:uppercase;letter-spacing:.07em;box-shadow:inset 0 -2px rgba(0,0,0,.3)}
.join-address{border-radius:7px;background:#02080d}
.gallery-item{border-radius:9px;border-color:rgba(85,191,255,.18)}
.gallery-item span{background:linear-gradient(transparent,rgba(1,6,10,.94));text-transform:uppercase;letter-spacing:.07em}
.staff-avatar{border-radius:8px;transform:rotate(2deg)}
.staff-card:nth-child(even) .staff-avatar{transform:rotate(-2deg)}
.site-footer{border-top:1px solid rgba(85,191,255,.18);background:radial-gradient(circle at 50% 0,rgba(15,74,112,.14),transparent 35%),#02070b}
@media(max-width:900px){.server-cards-v4{grid-template-columns:1fr}.server-summary{min-height:0}}
@media(max-width:620px){.status-panel-v4{padding:18px}.server-public-address{align-items:flex-start;flex-direction:column}.status-privacy-note{text-align:left}.hero-actions .btn{min-width:0;width:100%}}
