
/* ================= REALTIME LIVE ROOMS ================= */
.live-room-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:18px;align-items:start}
.live-chat-card{height:min(680px,calc(100dvh - 190px));min-height:520px;display:flex;flex-direction:column;overflow:hidden}
.live-chat-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px;border-bottom:1px solid #e3ebdf}
.live-chat-head h3{margin:0 0 3px;font-size:15px}.live-chat-head small{font-size:9px;color:#83968a}
.live-room-notice{padding:9px 18px;background:#f6f3e9;border-bottom:1px solid #e9e3d6;color:#84745f;font-size:9px;line-height:1.45}
.live-messages{flex:1;overflow-y:auto;padding:18px;background:radial-gradient(circle at 74% 0,#edf3e8,transparent 46%);scroll-behavior:smooth}
.live-msg{display:flex;gap:9px;max-width:min(82%,680px);margin-bottom:13px;align-items:flex-start}.live-msg.mine{margin-left:auto;flex-direction:row-reverse}
.live-msg-avatar{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;flex:none;background:#aec7b2;color:#31513d;font-size:9px;font-weight:900}
.live-msg-body{min-width:0}.live-msg-bubble{background:#edf3eb;border:1px solid #dce8da;border-radius:4px 14px 14px 14px;padding:9px 11px;color:#385744;font-size:10px;line-height:1.5;word-break:break-word}.live-msg.mine .live-msg-bubble{background:#cfe4cb;border-radius:14px 4px 14px 14px}
.live-msg-meta{display:flex;gap:7px;align-items:center;margin:4px 3px 0;font-size:8px;color:#8a9b90}.live-msg.mine .live-msg-meta{justify-content:flex-end}
.live-msg-meta button{border:0;background:none;padding:0;color:#71897a;font-size:8px;cursor:pointer}.live-msg-meta button:hover{text-decoration:underline}
.live-compose{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:12px;border-top:1px solid #e0eade;background:#fffefa;align-items:center}.live-compose input{min-width:0}.live-compose button{height:38px;border:0;background:#91b893;color:#214630;border-radius:10px;padding:0 14px;font-size:10px;font-weight:800}.live-compose button:disabled{opacity:.55;cursor:wait}.live-char-count{font-size:8px;color:#8a9c91;white-space:nowrap}
.live-room-side{display:grid;gap:14px}.live-members-card{padding:18px;max-height:340px;overflow:auto}.live-side-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.live-side-head h3{margin:0}
.live-members-list{display:grid;gap:7px}.live-member{display:grid;grid-template-columns:31px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px;border-radius:12px}.live-member:hover{background:#f2f5ef}.live-member-avatar{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:#e3ede0;color:#496d55;font-size:9px;font-weight:900}.live-member b{display:block;font-size:9px}.live-member small{display:block;font-size:8px;color:#84978c;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-member-actions{display:flex;gap:5px}.live-member-actions button{border:0;background:#edf3e7;color:#5c7964;border-radius:7px;padding:5px 7px;font-size:8px;cursor:pointer}.live-member-actions .kick{background:#f5deda;color:#8a514a}
.live-empty{padding:24px;text-align:center;color:#85978d;font-size:10px}.live-directory-loading{grid-column:1/-1;text-align:center;color:#819489}
.live-room-card{border:0;text-align:left;cursor:pointer;width:100%;font-family:inherit}.live-room-card .room-lock{font-size:9px;opacity:.88}.live-room-card[disabled]{opacity:.65;cursor:wait}
.live-room-card .bottom p{max-width:80%}.live-rules-card p{font-size:10px;line-height:1.55}.live-focus-card{padding:22px}.live-focus-card .focus-time{font:700 38px Manrope;letter-spacing:-2px;margin:8px 0 3px}
.live-room-modal-backdrop{position:fixed;inset:0;z-index:120;background:rgba(25,39,31,.28);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;padding:20px}.live-room-modal-backdrop.open{display:flex}.live-room-modal{width:min(520px,100%);background:#fffefa;border:1px solid #dce7d9;border-radius:23px;box-shadow:0 28px 90px rgba(37,58,44,.2);padding:24px}.live-room-modal h2{margin:3px 0 7px}.live-room-modal p{font-size:10px;line-height:1.55}.live-room-modal .form-2{display:grid;grid-template-columns:1fr 1fr;gap:11px}.live-room-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:17px}.live-invite-result{margin-top:13px;padding:13px;border-radius:13px;background:#edf3e7;border:1px solid #d6e4d2}.live-invite-code{font:800 21px Manrope;letter-spacing:2px;color:#3f654d;user-select:all}.live-rule-list{display:grid;gap:9px;margin:12px 0}.live-rule{padding:10px 12px;border-radius:12px;background:#f5f6f1;font-size:10px;color:#64786d;line-height:1.5}
body.live-room-modal-open{overflow:hidden!important}
@media(max-width:1050px){.live-room-layout{grid-template-columns:1fr}.live-chat-card{height:620px}.live-room-side{grid-template-columns:1fr 1fr}.live-members-card{grid-column:1/-1}}
@media(max-width:700px){.live-chat-card{height:calc(100dvh - 235px);min-height:470px}.live-msg{max-width:92%}.live-compose{grid-template-columns:minmax(0,1fr) auto}.live-char-count{display:none}.live-room-side{grid-template-columns:1fr}.live-room-modal .form-2{grid-template-columns:1fr}}
