.community{box-sizing:border-box;width:min(760px,96vw);max-height:92vh;background:#11131b;color:#eae5d9;border:1px solid #d2ab68;border-radius:10px;padding:18px;font:16px system-ui;overflow:auto}
.community::backdrop{background:#080910b8}
.community header,.community nav,.community form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.community header{justify-content:space-between}
.community h2,.community h3{color:#d2ab68}
.community button,.community input{font:inherit;padding:9px 12px;background:#1d202d;color:#eae5d9;border:1px solid #414354;border-radius:5px}
.community button{cursor:pointer;margin:3px}
.community button:hover,.community button:focus-visible{border-color:#d2ab68}
.community input{flex:1;min-width:140px}
.community article{padding:12px;margin:10px 0;background:#1d202d}
.social-notice{color:#e6b785;min-height:20px}
.social-messages{height:44vh;min-height:180px;overflow-y:auto;overscroll-behavior:contain;background:#1d202d;padding:10px;margin:10px 0}
.social-message{border-bottom:1px solid #414354;padding:6px;overflow-wrap:anywhere}
.social-message button{color:#d2ab68;font-weight:600}
.social-message time{font-size:12px;color:#a7a7b4}
.social-message p{white-space:pre-wrap;margin:6px}
.community dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.community dd{margin:0;text-align:right}
@media(max-width:500px){.community{padding:10px}.community dl{font-size:14px}.social-message time{display:block}.community form button{flex-shrink:0}}
body:has(#play:not([hidden])) .community header{display:flex;padding:0}.community header h2{margin:6px 0}

.community select{font:inherit;background:#1d202d;color:#eae5d9;border:1px solid #d2ab68;border-radius:5px;padding:9px;max-width:100%;margin:12px 0}
:root{--chat-height:clamp(190px,29dvh,260px)}
body.chat-docked #play canvas{height:calc(100vh - var(--chat-height));height:calc(100dvh - var(--chat-height))}
.chat-dock{position:fixed;inset:auto 0 0;height:var(--chat-height);box-sizing:border-box;background:#11131b;color:#eae5d9;border-top:1px solid #d2ab68;font:14px system-ui;display:flex;flex-direction:column;padding:5px 12px;z-index:20}
.chat-dock button,.chat-dock input{font:inherit;color:#eae5d9;background:#1d202d;border:1px solid #414354;border-radius:4px;padding:5px 10px}
.chat-dock button{cursor:pointer}
.chat-dock button:hover,.chat-dock button:focus-visible{border-color:#d2ab68}
.chat-tabs{display:flex;gap:4px;overflow-x:auto;flex-shrink:0;scrollbar-width:thin;padding-bottom:3px}
.chat-tabs button{white-space:nowrap}
.chat-tabs [aria-selected=true]{background:#493b28;color:#f5d9a2;border-color:#d2ab68}
.chat-controls{display:flex;gap:5px;align-items:center;flex-shrink:0;font-size:12px;padding:2px 0}
.chat-controls button{padding:3px 8px}
.chat-controls .social-notice{min-height:0;margin-left:auto}
.chat-dock .social-messages{height:auto;min-height:0;flex:1;margin:3px 0;padding:3px 6px}
.chat-dock .social-message{padding:2px 0;border:0;line-height:1.4}
.chat-dock .social-message button{border:0;background:none;padding:0 5px 0 0}
.chat-dock .social-message p{display:inline;margin:0 0 0 8px}
.chat-dock .social-message time{display:inline;font-size:11px}
.chat-dock form{display:flex;gap:8px;flex-shrink:0}
.chat-dock input{flex:1;min-width:0}
@media(max-width:500px){.chat-dock{padding:4px 6px;font-size:12px}.chat-tabs button{padding:5px 8px}.chat-dock input{font-size:16px}.chat-controls{font-size:10px}.chat-controls .social-notice{max-width:35%;font-size:10px}}
.pvp-panel{width:min(1040px,96vw);max-height:calc(100dvh - var(--chat-height) - 18px);margin:9px auto auto}
.pvp-panel nav button[aria-pressed=true]{border-color:#d2ab68;background:#403628}
.pvp-player{display:grid;grid-template-columns:minmax(130px,1fr) minmax(180px,1.3fr) minmax(200px,1.5fr) auto;align-items:center;gap:8px}
.pvp-player span{font-size:14px}.pvp-player .pvp-name{text-align:left;color:#d2ab68}
.pvp-health{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0}.pvp-health progress{width:100%;accent-color:#d2ab68}
.pvp-log{max-height:120px;overflow:auto;background:#1d202d;padding:8px;font-size:14px}.pvp-log p{margin:3px 0}.pvp-result{font-weight:700;color:#d2ab68}
@media(max-width:700px){.pvp-player{grid-template-columns:1fr auto}.pvp-player span{grid-column:1}.pvp-player button:last-child{grid-column:2;grid-row:1 / span 3}.pvp-panel{padding:10px}.pvp-panel>p{font-size:13px}.pvp-health{grid-template-columns:1fr}.pvp-panel h2{font-size:20px}}

.pvp-log .special-hit { color: #e4bd65; font-weight: 700; }

.guild-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:18px 0}.guild-form label{display:grid;gap:6px;flex:1}.guild-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border-bottom:1px solid #554632}.guild-row>div{display:grid;gap:4px;flex:1;min-width:160px}.guild-roster{max-height:45vh;overflow:auto}.guild-panel{width:min(960px,94vw)}
