:root{font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;color:#eee9d8;background:#0b1510}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 22% 10%,#345940 0,transparent 35%),linear-gradient(135deg,#0d1b14,#17291e 55%,#0a120e)}button,input{font:inherit}.lobby-shell{width:min(1180px,calc(100% - 40px));margin:auto;padding:26px 0 50px}.lobby-header{min-height:86px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #526756}.brand{display:flex;align-items:center;gap:14px}.brand h1{margin:0;font-size:25px;letter-spacing:.12em}.brand p,.eyebrow{margin:3px 0 0;color:#d6bd69;font:11px Oswald,sans-serif;letter-spacing:.2em}.seal{width:48px;height:48px;display:grid;place-items:center;border:2px solid #d8bc61;color:#e4ca70;font-size:27px;font-weight:900;transform:rotate(-3deg)}.back-link{color:#aeb9af;text-decoration:none}.ghost-button{justify-self:end;border:1px solid #6b786d;background:transparent;color:#e4dcbf;padding:10px 16px;cursor:pointer}.lobby-content{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;padding-top:34px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}.section-heading h2,.create-panel h2,dialog h2{margin:5px 0 0;font-size:25px}.room-count{color:#9fac9f;font-size:13px}.room-list{display:grid;gap:12px}.room-card{display:grid;grid-template-columns:56px 1fr auto;gap:15px;align-items:center;padding:17px;border:1px solid #526558;background:linear-gradient(120deg,rgba(52,78,59,.92),rgba(21,35,26,.94));box-shadow:0 8px 22px rgba(0,0,0,.18)}.room-icon{width:45px;height:45px;display:grid;place-items:center;border:1px solid #d7bd67;border-radius:50%;color:#e0c66e;font-weight:800}.room-info h3{margin:3px 0;font-size:18px}.room-code{color:#8ea195;font:10px Oswald;letter-spacing:.15em}.room-info p{margin:0;color:#9dab9f;font-size:12px}.room-info p b{color:#f0d477}.join-button,.primary-button{border:1px solid #e0bc55;background:linear-gradient(#d9bd63,#a9842c);color:#152117;font-weight:900;padding:11px 20px;cursor:pointer}.join-button:disabled{opacity:.4;cursor:not-allowed}.create-panel{border:1px solid #596b5e;background:rgba(17,29,22,.92);padding:25px;align-self:start}.create-panel form,dialog form{display:grid;gap:16px;margin-top:23px}label{display:grid;gap:7px;color:#b9c4bb;font-size:12px}label small{color:#78877b}input{width:100%;border:1px solid #56685b;background:#0d1812;color:#f1ecdc;padding:12px;outline:none}input:focus{border-color:#d8bd64;box-shadow:0 0 0 3px rgba(216,189,100,.12)}.primary-button{margin-top:5px}.form-message{min-height:18px;margin:10px 0 0;color:#ef8c78;font-size:12px}.empty-room{padding:45px;border:1px dashed #53665a;text-align:center;color:#9dac9e}.empty-room.error{color:#ef8c78}dialog{width:min(420px,calc(100% - 32px));border:1px solid #8b825e;background:#14241a;color:#eee9d8;padding:28px;box-shadow:0 25px 80px #000}dialog::backdrop{background:rgba(2,8,4,.78);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:14px;top:10px;border:0;background:none;color:#b7c1b8;font-size:25px;cursor:pointer}@media(max-width:820px){.lobby-header{grid-template-columns:1fr auto}.brand{grid-column:1/3;grid-row:1}.back-link{grid-row:2}.ghost-button{grid-row:2}.lobby-content{grid-template-columns:1fr}.create-panel{grid-row:1}.lobby-shell{width:min(100% - 24px,680px)}}
[hidden]{display:none!important}
.auth-trash{display:inline-flex;align-items:center;justify-content:center;width:31px;height:31px;vertical-align:-7px;margin-left:8px;padding:3px;border:1px solid #d8bd64;border-radius:4px;background:#26372d;opacity:1;cursor:pointer;box-shadow:0 0 0 2px rgba(216,189,100,.08)}.auth-trash img{display:block;width:23px;height:23px;object-fit:contain}.auth-trash:hover{background:#344a3b;transform:scale(1.06);box-shadow:0 0 9px rgba(226,199,99,.65)}
.auth-panel{margin-top:24px;padding:20px 24px;border:1px solid #596b5e;background:rgba(17,29,22,.94);display:grid;grid-template-columns:minmax(280px,1fr) 220px auto;gap:18px;align-items:end}.auth-panel h2{margin:4px 0;font-size:22px}.auth-panel p{margin:4px 0;color:#aab7ad;font-size:12px}.auth-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.auth-provider{height:38px;padding:0 14px;border:1px solid #6f7d72;background:#25372c;color:#eee5ca;cursor:pointer}.auth-provider:disabled{opacity:.4}.verified-identity{padding:11px;border:1px solid #526558;color:#d9c778;background:#0d1812}.auth-locked{position:relative;filter:saturate(.45);opacity:.58}.auth-locked:after{content:'请先验证邮箱';position:absolute;inset:0;z-index:10;display:grid;place-items:start center;padding-top:80px;background:rgba(5,12,8,.42);color:#f0d477;font-weight:900;letter-spacing:.1em}.auth-locked .create-panel,.auth-locked .room-section{pointer-events:none}@media(max-width:900px){.auth-panel{grid-template-columns:1fr 1fr}.auth-panel>div:first-child,.auth-buttons{grid-column:1/3}}
.auth-panel{grid-template-columns:minmax(280px,1fr) 160px auto}
@media(max-width:900px){.auth-panel{grid-template-columns:1fr 1fr}}
