:root{--ink:#0a0a0f;--panel:rgba(24,24,34,.72);--line:rgba(255,255,255,.1);--gold:#d4af37;--red:#d96854;--muted:#9695a5;--radius:14px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#1f1c26 0,#0a0a0f 45%,#07070b 100%);color:#f6f3eb;font:14px/1.6 -apple-system,BlinkMacSystemFont,"Noto Sans SC",sans-serif;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer;color:inherit}.hidden{display:none!important}.mist{position:fixed;filter:blur(70px);opacity:.17;pointer-events:none;border-radius:50%;width:42vw;height:42vw}.mist-a{background:#a67838;top:-20vw;right:-12vw}.mist-b{background:#3d4b65;bottom:-25vw;left:-18vw}.glass{background:var(--panel);border:1px solid var(--line);box-shadow:0 20px 60px #0006,inset 0 1px #fff0f3;border-radius:var(--radius);backdrop-filter:blur(22px)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px}.brand{display:flex;align-items:center;gap:14px;margin-bottom:26px}.brand h1{font-family:serif;font-size:26px;letter-spacing:4px;margin:0}.brand p{color:var(--muted);margin:4px 0 0}.seal{display:grid;place-items:center;width:46px;height:46px;color:#16120a;background:linear-gradient(145deg,#f1d57c,var(--gold));border-radius:12px;font-family:serif;font-size:24px;box-shadow:0 0 26px #d4af3744}.auth-card{width:min(420px,100%);padding:26px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:22px}.tab{background:none;border:0;padding:8px 0;color:var(--muted);position:relative}.tab.active{color:var(--gold)}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--gold)}label{display:block;color:#bbb8c5;margin:14px 0}input,select{width:100%;border:1px solid var(--line);background:#0d0d14b8;color:#fff;border-radius:10px;padding:12px 13px;outline:0;margin-top:7px}input:focus{border-color:#d4af3788;box-shadow:0 0 0 3px #d4af3715}.primary,.composer button{border:0;background:linear-gradient(135deg,#ebce70,#b58a25);color:#171208;font-weight:700;border-radius:10px;padding:12px 18px;width:100%;margin-top:8px}.error{color:#ed8977;min-height:22px}.captcha-row{display:flex;gap:10px;align-items:end}.captcha-row label{flex:1}.captcha{padding:11px 12px;background:#17151c;border:1px solid #d4af3744;border-radius:10px;color:var(--gold);margin-bottom:0;white-space:nowrap}.copyright{color:#6d6a78;margin-top:20px}.app-shell{min-height:100vh;padding:14px;max-width:1400px;margin:auto}.topbar{height:54px;display:flex;align-items:center;gap:18px;margin-bottom:14px}.brand.mini{margin:0;gap:9px}.brand.mini .seal{width:32px;height:32px;font-size:17px;border-radius:9px}.room-select{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--muted)}.room-select select{width:auto;margin:0;padding:7px 26px 7px 9px}.icon-btn,.ghost,.close{background:#ffffff08;border:1px solid var(--line);border-radius:9px;padding:8px 11px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px}.chat-panel{min-height:calc(100vh - 84px);display:flex;flex-direction:column;overflow:hidden}.chat-head{padding:18px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.chat-head h2{font-family:serif;margin:0;font-size:20px}.chat-head span{font-size:12px;color:var(--muted)}.messages{flex:1;overflow:auto;padding:16px 14px;display:flex;flex-direction:column;gap:9px}.msg{max-width:92%;padding:10px 12px;border-radius:12px;background:#ffffff08;border:1px solid #ffffff0a;animation:rise .25s ease}.msg.mine{align-self:flex-end;background:#d4af3712;border-color:#d4af3730}.msg.system{max-width:100%;background:#451e1b55;border-color:#c665554f;color:#f3c7a8}.msg .meta{font-size:11px;color:var(--muted);margin-bottom:3px}.quick{display:flex;gap:7px;padding:10px 14px;overflow:auto}.quick button{white-space:nowrap;border:1px solid #d4af3738;background:#d4af3710;color:#e0c66f;border-radius:999px;padding:7px 13px}.composer{display:flex;padding:0 14px 14px;gap:8px}.composer input{margin:0}.composer button{width:auto;margin:0;min-width:66px}.side{display:flex;flex-direction:column;gap:14px}.status-card,.nav-card,.quote{padding:18px}.profile-line{display:flex;gap:12px;align-items:center;margin-bottom:18px}.avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#d4af37,#765615);color:#211906;font-size:20px;font-family:serif}.profile-line small{display:block;color:var(--muted);margin-top:2px}.bar-label{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:11px}.bar-label b{color:#eee}.bar{height:7px;background:#ffffff0c;border-radius:99px;overflow:hidden;margin-top:5px}.bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#ca4b45,#efab74);border-radius:inherit;transition:width .5s}.bar.blue i{background:linear-gradient(90deg,#4f77c7,#7bd2cf)}.wealth{color:var(--gold);margin-top:18px}.nav-card{display:flex;flex-direction:column;gap:6px}.nav-card button{background:none;border:0;text-align:left;padding:10px;color:#d0ced8;border-radius:9px}.nav-card button:hover{background:#ffffff0a;color:var(--gold)}.quote{color:#c5a95c;font-family:serif;line-height:1.8}.quote small{display:block;color:var(--muted);font-family:inherit}.drawer{position:fixed;inset:0;background:#0009;display:grid;place-items:center;padding:14px;z-index:10}.drawer-inner{width:min(620px,100%);max-height:86vh;overflow:auto;padding:24px;position:relative}.close{position:absolute;right:14px;top:14px;font-size:20px}.drawer h2{font-family:serif;color:var(--gold);margin-top:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.tile{border:1px solid var(--line);border-radius:11px;padding:13px;background:#ffffff06}.tile strong{display:block;color:#e7d18a}.tile small{color:var(--muted)}.rank-row{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid var(--line)}.rank-row:first-child{color:var(--gold)}@keyframes rise{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:760px){.app-shell{padding:9px}.layout{display:block}.side{display:none}.chat-panel{min-height:calc(100vh - 72px)}.chat-head{padding:14px}.messages{padding:12px 10px}.composer{padding-bottom:calc(10px + env(safe-area-inset-bottom))}.brand h1{font-size:22px}.auth-page{padding:18px}}
.radio{position:fixed;right:20px;bottom:20px;z-index:20}.radio>button{width:54px;height:54px;border-radius:50%;border:2px solid #d4af37;background:#111;color:#e8ca69;font-size:25px;box-shadow:0 6px 25px #0008;animation:spin 5s linear infinite}.radio-card{position:absolute;right:0;bottom:64px;width:280px;padding:16px;display:flex;flex-direction:column;gap:8px}.radio-card span{color:#e7d18a}.radio-card small{color:var(--muted)}.radio-controls{display:flex;gap:5px}.radio-controls button{flex:1;background:#ffffff0a;border:1px solid var(--line);border-radius:8px;padding:6px;color:#ddd}.radio-card input{margin:0}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:760px){.radio{right:12px;bottom:14px}.radio-card{right:-4px;width:min(280px,90vw)}}
.role-owner{color:#8b0000}.role-admin{color:#e07a7a}.role-vip{color:#d4af37}
.battle-card{margin:10px 14px;padding:12px 14px;background:#241512aa;border:1px solid #c6655570;border-radius:10px;backdrop-filter:blur(18px)}.battle-title{color:#efc26a;margin-bottom:8px}.battle-sides{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.battle-sides>div:last-child{text-align:right}.battle-sides small{color:#c7b8ae;font-size:11px}.battle-bar{height:7px;background:#ffffff12;border-radius:8px;overflow:hidden;margin:4px 0}.battle-bar i{display:block;height:100%;background:linear-gradient(90deg,#b33d35,#edac70);transition:width .4s}.battle-actions{display:flex;gap:6px;margin-top:8px}.battle-actions button{border:1px solid #d4af3744;background:#d4af3712;color:#e0c66f;border-radius:8px;padding:5px 10px}
