:root{font-family:ui-monospace,"Courier New",monospace;font-size:16px;color:#f5f1e6;background:#181c19}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:repeating-linear-gradient(0deg,#1b211c 0 32px,#1d241e 32px 64px),#1b211c}
body:before{content:"";display:block;height:9px;background:repeating-linear-gradient(90deg,#629844 0 24px,#527f39 24px 44px,#446b32 44px 64px);box-shadow:0 4px 0 #6e4c2c}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{opacity:.48;cursor:not-allowed}
a{color:#ffe790}
.hidden{display:none!important}
.topbar{min-height:74px;background:#262626;border-bottom:4px solid #090a09;box-shadow:inset 0 -4px 0 #4c4c4c;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(20px,calc((100vw - 1200px)/2))}
.brand{font-weight:900;letter-spacing:.07em;font-size:1.25rem;text-shadow:3px 3px 0 #0d0d0d}
.brand-block{display:inline-grid;place-items:center;width:35px;height:35px;margin-right:10px;background:#5f8d40;border:3px solid #b8df7c;box-shadow:3px 3px 0 #111;color:#13230c}
.top-actions{display:flex;align-items:center;gap:12px}
.player-name{font-size:.9rem;color:#eadfc5}
main{max-width:1240px;margin:auto;padding:32px 20px 80px}
h1,h2,p{margin-top:0}
h1{font-size:clamp(1.6rem,3vw,2.45rem);line-height:1.25;margin:7px 0 0;text-shadow:3px 3px 0 #111}
h2{font-size:1.35rem;line-height:1.35;margin:8px 0 14px}
p{line-height:1.5}
.label{display:block;color:#b9ab8c;font-size:.84rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.muted{color:#c4c0b7}
.fine-print{font-size:.82rem;line-height:1.5;color:#bdb8ae;margin:16px 0 0}
.error{color:#ff9990;min-height:1.4em}
.message{color:#b6e38e;min-height:1.4em;font-size:.9rem;margin:12px 0 0}
.window{border:4px solid #101010;background:#363636;box-shadow:inset 4px 4px 0 #646464,inset -4px -4px 0 #1b1b1b,5px 6px 0 #0d100e}
.window-title{background:#4c4c4c;border-bottom:4px solid #1c1c1c;padding:12px 18px;font-weight:900;letter-spacing:.04em;text-shadow:2px 2px 0 #151515}
.window-body{padding:22px}
.pixel-button{border:3px solid #080808;background:#777;color:#fff;min-height:46px;padding:8px 17px;box-shadow:inset 3px 3px 0 #aaa,inset -3px -3px 0 #4b4b4b,3px 4px 0 #101010;font-weight:800;text-shadow:2px 2px 0 #333;text-align:center}
.pixel-button:hover:not(:disabled){background:#898989;transform:translateY(-1px)}
.pixel-button:active:not(:disabled){transform:translate(2px,2px);box-shadow:inset 2px 2px 0 #555,inset -2px -2px 0 #aaa}
.pixel-button:focus-visible,input:focus-visible{outline:3px solid #ffe37b;outline-offset:3px}
.pixel-button.primary{background:#548f3e;box-shadow:inset 3px 3px 0 #92c875,inset -3px -3px 0 #2c5b27,3px 4px 0 #101010}
.pixel-button.primary:hover:not(:disabled){background:#65a84b}
.pixel-button.danger{background:#874b42;box-shadow:inset 3px 3px 0 #ba7569,inset -3px -3px 0 #582d27,3px 4px 0 #101010}
.pixel-button.small{min-height:36px;padding:4px 11px;font-size:.85rem}
input[type=text],input[type=number]{width:100%;height:46px;color:#fff;background:#1d1d1d;border:3px solid #111;box-shadow:inset 3px 3px 0 #080808,inset -2px -2px 0 #575757;padding:8px 12px;border-radius:0}
label:not(.check-row){display:block;margin:0 0 9px;color:#eee3ca;font-weight:700;font-size:.91rem}
form .pixel-button{margin-top:16px}
.login-screen{min-height:calc(100vh - 170px);display:grid;place-items:center}
.login-window{width:min(100%,560px)}
.login-window h1{margin-bottom:15px}
.login-window p{color:#d5d0c5}
.login-window form input{margin-bottom:6px}
.login-window form button{width:100%}
.notice{margin-top:22px;padding:18px;background:#273427;border:3px solid #111}
.notice strong{display:block;margin-top:8px;font-size:1.7rem;letter-spacing:.15em;color:#ffe58c;overflow-wrap:anywhere}
.world-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}
.status-box{display:flex;align-items:center;gap:14px;min-width:200px;padding:12px 16px;border:3px solid #090909;background:#3c3c3c;box-shadow:inset 3px 3px 0 #777,inset -3px -3px 0 #222}
.status-box strong{display:block;margin-top:5px;text-transform:capitalize}
.status-light{width:15px;height:15px;flex:none;background:#888;border:2px solid #111;box-shadow:2px 2px 0 #101010}
.status-light.online{background:#8ad55f}.status-light.connecting,.status-light.reconnecting,.status-light.authenticating{background:#f1d06c}.status-light.auth_required{background:#e88970}
.mode-nav{display:flex;align-items:center;gap:15px;margin:0 0 24px}
.mode-chip{background:#273629;border:2px solid #111;padding:9px 12px;color:#c9edac;font-weight:800;font-size:.86rem}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:24px}
.admin-grid{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:24px;align-items:start}
.admin-wide{grid-column:1/-1}
.main-stack,.side-stack,.mode-view{display:flex;flex-direction:column;gap:22px;min-width:0}
.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.mode-card{padding:22px;background:#292b29;border:3px solid #101010;box-shadow:inset 3px 3px 0 #555,inset -3px -3px 0 #151515;display:flex;flex-direction:column;align-items:flex-start;min-height:310px}
.mode-card p{color:#ccc6b8;flex:1}
.mode-card .pixel-button{align-self:stretch}
.mode-glyph{display:grid;place-items:center;width:64px;height:64px;margin-bottom:22px;color:#ebdfbf;background:#675737;border:4px solid #131313;box-shadow:inset 4px 4px 0 #9e8b5c,inset -4px -4px 0 #3e301d;font-size:2.3rem;font-weight:900}
.small-glyph{width:55px;height:55px;margin:0;font-size:1.8rem}
.split-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.split-head h2{margin-bottom:6px;text-transform:capitalize}
.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.stat-tile{background:#262626;border:3px solid #131313;padding:15px;min-height:99px}
.stat-tile strong{display:block;font-size:1.4rem;margin-top:12px;color:#fff}
.reset-count{margin-top:16px}
.tool-layout{display:flex;gap:19px;align-items:flex-start}
.item-slot{width:75px;height:75px;flex:none;display:grid;place-items:center;background:#242424;border:4px solid #101010;box-shadow:inset 4px 4px 0 #080808,inset -4px -4px 0 #737373;font-size:2rem;color:#e8dfb8}
.tool-details{flex:1;min-width:0}
.tool-details>strong,.tool-details>span{display:block}
.tool-details>strong{font-size:1.15rem;overflow-wrap:anywhere}
.tool-details>span{font-size:.9rem;margin-top:7px}
.meter{height:16px;margin-top:15px;background:#151515;border:3px solid #111}
.meter>div{height:100%;width:0;background:#70c351}
.meter>div.low{background:#e17b58}
.enchants{color:#c7a9ff;margin-top:16px;line-height:1.65;font-size:.9rem}
.inventory-list{max-height:370px;overflow:auto}
.inventory-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:11px 2px;border-bottom:2px solid #242424}
.inventory-row:last-child{border-bottom:0}
.inventory-row span{overflow-wrap:anywhere}
.inventory-row strong{color:#f9e7a4;white-space:nowrap}
.check-row{display:flex;align-items:flex-start;gap:10px;margin:20px 0;cursor:pointer}
.check-row input{width:21px;height:21px;accent-color:#66a849;flex:none}
.button-stack{display:flex;flex-direction:column;gap:13px}
.button-stack .pixel-button{width:100%}
.activity-list{max-height:300px;overflow:auto}
.activity-item{padding:10px 0;border-bottom:2px solid #242424;font-size:.88rem;overflow-wrap:anywhere}
.activity-item:last-child{border-bottom:0}
.activity-item small{display:block;color:#b9ab8c;margin-bottom:5px;font-size:.76rem}
.activity-item.error{color:#ff9990}
.player-access-list{margin-top:18px;display:grid;gap:12px}
.player-access-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px;background:#2b2b2b;border:3px solid #1c1c1c;box-shadow:inset 2px 2px 0 #4f4f4f}
.player-access-row strong,.player-access-row small{display:block;overflow-wrap:anywhere}
.player-access-row small{margin-top:5px;color:#b9ab8c;font-size:.76rem}
.player-detail{min-width:0}.player-identity{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.role-badge{display:inline-block;padding:3px 7px;background:#494949;border:2px solid #171717;color:#ddd;font-size:.7rem;font-weight:800;text-transform:uppercase}.role-badge.admin{background:#675737;color:#ffe9a3}.role-badge.owner{background:#3e6636;color:#d8ffc4}
.player-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.player-access-row.banned{opacity:.8}
.timeline-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.timeline-heading strong{display:block;margin-top:4px}
.timeline-filters{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.timeline-range.active{box-shadow:inset 0 -3px #e7bd55}
.timeline-list{border-top:2px solid #242424}.timeline-item{padding:12px 0;border-bottom:2px solid #242424}.timeline-item>strong,.timeline-item>small{display:block}.timeline-item>small{color:#b9ab8c;margin-top:4px}
.timeline-events{margin:9px 0 0;padding-left:18px;color:#d8ccb0;font-size:.8rem}.timeline-events li{margin:5px 0}
@media(max-width:560px){.player-access-row{display:block}.player-actions{justify-content:flex-start;margin-top:12px}}
@media(max-width:880px){.dashboard-grid,.admin-grid{grid-template-columns:1fr}.side-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:620px){main{padding:24px 14px 60px}.topbar{padding:10px 14px}.brand{font-size:1rem}.player-name{display:none}.world-bar{flex-direction:column;align-items:stretch}.mode-grid,.side-stack{display:flex;flex-direction:column}.mode-card{min-height:0}.window-body{padding:18px}.stat-grid{grid-template-columns:1fr 1fr}.status-box{min-width:0}}
