/*
Theme Name: Pi World MC
Theme URI: https://piworld-mc.duckdns.org
Author: Daryl (built with Claude)
Description: Dark Minecraft-styled theme for Daryl's Pi World server site. Pixel-font hero, live server status with player heads, one-click join addresses, feature cards, grass-block dividers, news posts.
Version: 1.1.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: piworld-mc
*/

:root{
  --bg:#0d1117;--card:#161b22;--border:#30363d;--text:#e6edf3;
  --muted:#8b949e;--green:#3fb950;--grass:#5fd045;--red:#f85149;--blue:#58a6ff;--yellow:#d29922;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--text);line-height:1.6;background-image:radial-gradient(ellipse at top,#16233a 0%,#0d1117 55%);background-attachment:fixed}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}

.pw-wrap{max-width:900px;margin:0 auto;padding:0 1.2rem}

/* header */
.pw-header{border-bottom:1px solid var(--border);background:rgba(13,17,23,.85);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}
.pw-header .pw-wrap{display:flex;align-items:center;gap:1rem;padding:.7rem 1.2rem}
.pw-logo{font-weight:700;font-size:1rem;color:var(--text);display:flex;align-items:center;gap:.5rem}
.pw-logo img{width:22px;height:22px;image-rendering:pixelated}
.pw-logo:hover{text-decoration:none}
.pw-nav{margin-left:auto;display:flex;align-items:center;gap:.4rem}
.pw-menu{display:flex;align-items:center;gap:.25rem;list-style:none;margin:0;padding:0}
.pw-menu li{margin:0;padding:0;list-style:none}
.pw-menu li::marker{content:''}
.pw-menu a{display:block;padding:.45rem .95rem;border-radius:8px;color:var(--muted);font-size:.9rem;line-height:1.2}
.pw-menu a:hover{background:#21262d;color:var(--text);text-decoration:none}
.pw-menu .current-menu-item > a,.pw-menu .current_page_item > a{background:#21262d;color:var(--text)}
.pw-admin-btn{display:block;padding:.42rem 1rem;margin-left:.4rem;border:1px solid var(--green);border-radius:8px;color:var(--green);font-size:.88rem;font-weight:600;line-height:1.2}
.pw-admin-btn:hover{background:var(--green);color:#04160a;text-decoration:none}

/* hero */
.pw-hero{text-align:center;padding:4.5rem 0 3rem;position:relative;overflow:hidden}
.pw-hero .pick{font-size:3.4rem;filter:drop-shadow(0 6px 18px rgba(63,185,80,.35))}
.pw-hero h1{font-family:'Press Start 2P',monospace;font-size:clamp(1.3rem,4.5vw,2.3rem);margin:1rem 0 .9rem;letter-spacing:.02em;color:#fff;text-shadow:3px 3px 0 #1a4d12,6px 6px 0 rgba(0,0,0,.35)}
.pw-hero p{color:var(--muted);font-size:1.05rem;position:relative;z-index:2}
.pw-status{display:inline-flex;align-items:center;gap:.55rem;margin-top:1.4rem;background:var(--card);border:1px solid var(--border);border-radius:99px;padding:.55rem 1.3rem;font-size:.95rem;position:relative;z-index:2}
.pw-dot{width:11px;height:11px;border-radius:50%;background:var(--red);flex:none}
.pw-dot.on{background:var(--green);animation:pwpulse 2s infinite}
@keyframes pwpulse{0%{box-shadow:0 0 0 0 rgba(63,185,80,.6)}70%{box-shadow:0 0 0 9px rgba(63,185,80,0)}100%{box-shadow:0 0 0 0 rgba(63,185,80,0)}}
.pw-heads{display:flex;gap:.45rem;justify-content:center;margin-top:1rem;min-height:32px;flex-wrap:wrap;position:relative;z-index:2}
.pw-heads img{width:32px;height:32px;border-radius:6px;image-rendering:pixelated;border:1px solid var(--border);box-shadow:0 2px 6px rgba(0,0,0,.5)}

/* floating pixel blocks in hero */
.pw-float{position:absolute;width:26px;height:26px;image-rendering:pixelated;opacity:.5;z-index:1;animation:pwfloat 7s ease-in-out infinite}
@keyframes pwfloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-16px) rotate(5deg)}}

/* grass divider */
.pw-grass{height:14px;margin:.5rem 0 1.5rem;border-radius:3px;background:
  repeating-linear-gradient(90deg,#5fd045 0 8px,#4cbe38 8px 16px,#6ada50 16px 24px,#53c73e 24px 32px);
  box-shadow:0 5px 0 0 #7a5a3a,0 10px 0 0 #6b4d30,0 3px 14px rgba(0,0,0,.45)}

/* cards */
.pw-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin:1.4rem 0}
.pw-card h2{font-size:1.05rem;color:var(--blue);margin-bottom:.9rem}
.pw-addr{display:flex;align-items:center;gap:.7rem;background:#010409;border:1px solid var(--border);border-radius:8px;padding:.8rem 1rem;font-family:ui-monospace,Consolas,monospace;font-size:1rem;margin:.5rem 0;flex-wrap:wrap}
.pw-addr b{color:var(--grass)}
.pw-addr button{margin-left:auto;padding:.4rem .9rem;border-radius:6px;border:1px solid var(--border);background:#21262d;color:var(--text);cursor:pointer;font-size:.8rem;transition:all .15s}
.pw-addr button:hover{border-color:var(--green)}
.pw-addr button.copied{background:var(--green);color:#04160a;border-color:var(--green)}
.pw-addr input{flex:1;min-width:180px;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:1rem;outline:none}
.pw-addr input::placeholder{color:var(--muted)}
.pw-muted{color:var(--muted);font-size:.92rem}
.pw-card ul{margin:.4rem 0 .4rem 1.4rem;color:var(--muted)}
.pw-card li{margin:.4rem 0}

/* feature grid */
.pw-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin:1.4rem 0}
.pw-feature{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.3rem;transition:transform .15s,border-color .15s}
.pw-feature:hover{transform:translateY(-3px);border-color:var(--green)}
.pw-feature .ico{font-size:1.8rem;margin-bottom:.5rem}
.pw-feature h3{font-size:.98rem;margin-bottom:.4rem}
.pw-feature p{color:var(--muted);font-size:.88rem}

/* stats strip */
.pw-stats{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.4rem;position:relative;z-index:2}
.pw-stat{background:rgba(22,27,34,.8);border:1px solid var(--border);border-radius:10px;padding:.6rem 1.2rem;text-align:center;min-width:110px}
.pw-stat .n{font-family:'Press Start 2P',monospace;font-size:.95rem;color:var(--grass)}
.pw-stat .l{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;margin-top:.3rem}

/* news */
.pw-post{border-bottom:1px solid var(--border);padding:1rem 0}
.pw-post:last-child{border-bottom:none}
.pw-post h3{font-size:1rem}
.pw-post .date{color:var(--muted);font-size:.8rem}

/* FAQ */
.pw-faq details{border-bottom:1px solid var(--border);padding:.7rem 0}
.pw-faq details:last-child{border-bottom:none}
.pw-faq summary{cursor:pointer;font-weight:600;font-size:.95rem}
.pw-faq p{color:var(--muted);font-size:.9rem;margin-top:.5rem}

/* generic content (pages/posts) */
.pw-content{padding:2.5rem 0}
.pw-content h1{margin-bottom:1rem}
.pw-content h2,.pw-content h3{margin:1.4rem 0 .6rem}
.pw-content p{margin:.8rem 0}
.pw-content article + article{margin-top:2rem}

/* footer */
.pw-footer{border-top:1px solid var(--border);margin-top:3rem;padding:1.6rem 0;text-align:center;color:var(--muted);font-size:.85rem}
.pw-footer a{color:var(--muted)}

@media(max-width:600px){.pw-hero{padding:2.8rem 0 2rem}.pw-float{display:none}}
