/* Shared header, footer, mobile navigation and main width belong to /rooms/style.css. */
#redalert{min-width:0;line-height:1.55}
#redalert .game-links{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;font-size:14px;color:var(--muted)}
#redalert .game-links a{display:inline-flex;align-items:center;gap:8px;min-height:44px}
#redalert .game-links .icon{width:20px;height:20px}
#redalert .layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,390px);gap:64px;align-items:center;min-height:570px;padding:44px;border-radius:12px;background:var(--bg);overflow:hidden}
#redalert .eyebrow{color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.22em}
#redalert h1{font-size:clamp(44px,5.6vw,72px);line-height:1.02;letter-spacing:-.04em;font-weight:850;margin:20px 0 24px}
#redalert .dot{color:#e46b54}
#redalert .hero p{max-width:360px;color:#e0e3e4;font-size:20px;line-height:1.5}
#redalert .game-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;font-size:12px}
#redalert .game-meta span{padding:5px 12px;background:#111819b8;border-radius:20px}
#redalert .workspace{width:100%;min-width:0;padding:28px;background:#171d1ff5;border-radius:16px;box-shadow:0 24px 70px #0003}
#redalert h2{font-size:28px;font-weight:750;letter-spacing:-.02em;margin:0 0 22px}
#redalert label{display:block;margin:0 0 18px;font-size:13px;color:var(--muted)}
#redalert label span{display:block;margin-bottom:7px}
#redalert .fields{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px}
#redalert input{display:block;width:100%;font:inherit;font-size:16px;padding:13px 14px;min-height:48px;background:#ffffff09;color:var(--text);border:0;border-radius:7px;outline-offset:3px}
#redalert button{min-height:48px;margin:5px 0;padding:12px 18px;font:inherit;font-size:14px;font-weight:650;background:#2b3238;color:var(--text);border:0;border-radius:8px;cursor:pointer;transition:background .15s}
#redalert section>button{width:100%}
#redalert button:hover{background:#39424b}
#redalert button.primary{background:var(--accent);color:#101516}
#redalert button.quiet{background:transparent;color:#d3aba3}
#redalert button:disabled{opacity:.4;cursor:default}
#redalert .workspace>button{display:block;width:100%;margin-top:12px}
#redalert .workspace>p{margin:0 0 22px}
#redalert .workspace>.caption{margin:12px 0 0}
#redalert .secondary{height:auto;background:transparent;border:1px solid #657174}
#redalert .muted,#redalert .caption{color:var(--muted)}
#redalert .caption{font-size:13px;line-height:1.6;margin:14px 0}
#redalert .download-link{display:block;text-align:center;font-size:14px;text-decoration:underline;text-underline-offset:4px;padding:12px 0;margin-top:10px}
#redalert .inline-link{display:inline-block;margin:12px 0;color:var(--accent)}
#redalert .content-section{padding-top:48px;scroll-margin-top:24px}
#redalert .content-section h2{margin:8px 0 18px}
#redalert .section-heading{align-items:center;margin-bottom:12px}
#redalert .section-heading h2{margin-bottom:0}
#redalert .empty-state{padding:26px;margin:24px 0;background:var(--surface);border-radius:10px;color:var(--muted)}
#redalert .actions{display:flex;gap:12px;flex-wrap:wrap}
#redalert .room-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
#redalert .room-list:empty{display:none}
#redalert .room-card{display:grid;gap:8px;padding:22px;background:var(--surface);border-radius:10px}
#redalert .room-card:hover{background:#20282b}
#redalert .room-card span{color:var(--muted);font-size:14px}
#redalert .notice,#redalert [role=alert],#redalert #rooms-status{color:#edb29f;overflow-wrap:anywhere;font-size:14px;line-height:1.5;margin:12px 0}
#redalert .notice:empty,#redalert [role=alert]:empty,#redalert #rooms-status:empty{margin:0}
#redalert .room-banner{padding:32px;margin:16px 0 24px;background:var(--bg);border-radius:12px}
#redalert .room-banner h2{overflow-wrap:anywhere}
#redalert .room-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:start}
#redalert .panel{background:var(--surface);padding:28px;border-radius:12px}
#redalert h3{font-size:20px;margin:0 0 14px}
#redalert .panel>button{display:block;width:100%}
#redalert .panel label{margin-top:20px;margin-bottom:8px}
#redalert .member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px}
#redalert .member{display:grid;gap:8px;background:#20282b;padding:18px;border-radius:8px;overflow-wrap:anywhere}
#redalert .member span{font-size:13px;color:var(--muted)}
#redalert .invite-panel canvas{display:block;width:min(220px,100%);height:auto;margin:24px auto;background:#fff;border-radius:8px}
#redalert #public-code{display:block;text-align:center;letter-spacing:.08em;overflow-wrap:anywhere}
#redalert #permit{overflow-wrap:anywhere;background:#0e1214;padding:16px;border-radius:8px;margin-top:16px}
#redalert #resize{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:24px 0}
#redalert #resize label{width:100%;margin:0}
#redalert #resize input{width:110px}
#redalert #resize button{margin:0}
#redalert dialog{color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:16px;width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:28px;overflow:auto}
#redalert dialog::backdrop{background:#05090dd9}
#redalert .dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
#redalert .dialog-head h2{font-size:25px;margin:0}
#redalert .dialog-head button{font-size:12px;padding:8px;min-height:44px}
#redalert dialog label{margin:18px 0 8px}
#redalert form>button{width:100%}
#redalert .guide-intro{max-width:780px;font-size:18px;margin:0 0 8px}
#redalert .mode-links{display:flex;flex-wrap:wrap;gap:12px;height:auto;margin:24px 0}
#redalert .mode-links a{padding:12px 18px;background:var(--surface);border-radius:7px;border:0;font-size:14px;color:var(--text)}
#redalert .mode{background:var(--surface);border-radius:12px;margin:14px 0;scroll-margin-top:24px}
#redalert .mode summary{padding:24px;cursor:pointer;list-style:none;display:grid;grid-template-columns:1fr auto;gap:8px;font-size:22px;font-weight:700}
#redalert .mode summary::-webkit-details-marker{display:none}
#redalert .mode summary:after{content:'+';grid-column:2;grid-row:1/3;align-self:center;color:var(--accent);font-size:28px}
#redalert .mode[open] summary:after{content:'−'}
#redalert .mode summary small{font-size:13px;color:var(--muted);font-weight:400}
#redalert .guide-steps{margin:0;padding:0 28px 20px;list-style:none}
#redalert .guide-steps li{display:flex;gap:24px;margin:0;padding:24px 0;border-top:1px solid #2e393c;align-items:start}
#redalert .guide-steps li:before{content:none}
#redalert .ra-step{font-size:18px;color:var(--accent);min-width:26px;font-weight:700}
#redalert .guide-steps h3{font-size:20px;margin:0 0 8px}
#redalert .guide-steps p{font-size:16px;color:#c4cdd1;max-width:850px}
#redalert .faq details{border-bottom:1px solid var(--line);padding:0 0 18px;margin-top:18px}
#redalert .faq summary{cursor:pointer;padding:12px 0;font-size:18px;font-weight:600}
#redalert .faq p{padding:12px 0 4px;max-width:850px;color:var(--muted)}
#redalert .bottom-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:48px;padding:28px;background:var(--surface);border-radius:12px}
#redalert .bottom-action h2{margin:0}
#redalert .limits{margin-top:24px}
@media(max-width:1000px){#redalert .layout{gap:28px;padding:28px;grid-template-columns:minmax(0,1fr) minmax(0,350px)}#redalert .workspace{padding:24px}}
@media(max-width:760px){#redalert .layout{grid-template-columns:minmax(0,1fr);gap:28px;padding:24px 18px;min-height:0;background-position:58% center}#redalert .hero h1{font-size:clamp(40px,10vw,64px);margin:14px 0 18px}#redalert .hero p{font-size:18px;max-width:400px}#redalert .workspace{padding:22px}#redalert h2{font-size:25px}#redalert .game-links{gap:12px;font-size:12px;margin-bottom:16px;flex-wrap:wrap}#redalert .game-meta{margin-top:18px}#redalert .content-section{padding-top:32px}#redalert .room-layout,#redalert .room-list{grid-template-columns:minmax(0,1fr)}#redalert .panel{padding:22px}#redalert .mode summary{padding:20px;font-size:20px}#redalert .guide-steps{padding:0 20px 12px}#redalert .guide-steps li{gap:16px}#redalert .guide-steps h3{font-size:18px}#redalert .guide-steps p{font-size:15px}#redalert .bottom-action{display:block;padding:22px}#redalert .bottom-action button{width:100%;margin-top:20px}#redalert .actions>*{flex:1}#redalert dialog{padding:22px}#redalert .room-banner{padding:24px}#redalert .mode-links{gap:8px}#redalert .mode-links a{padding:12px;font-size:13px}}
@media(max-width:360px){#redalert .layout{padding:22px 12px}#redalert .workspace{padding:18px}#redalert .member-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#redalert button{transition:none}}
#redalert .guide-shot{margin:0;padding:0 28px 24px;max-width:900px}#redalert .guide-shot img{display:block;width:100%;height:auto;border-radius:8px}#redalert .guide-shot figcaption{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.5}@media(max-width:760px){#redalert .guide-shot{padding:0 20px 20px}}

/* Responsive image selection replaces original PNG CSS backgrounds. */
#redalert .layout,#redalert .room-banner{position:relative;isolation:isolate;overflow:hidden}
#redalert .ra-art{position:absolute;inset:0;z-index:-2;display:block}
#redalert .ra-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
#redalert .layout:before,#redalert .room-banner:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#0a0e10d9,#0a0e1059)}
#redalert .room-banner:before{background:linear-gradient(90deg,#101516ef,#10151660)}
#redalert .guide-shot picture{display:block}
@media(max-width:760px){#redalert .ra-art img{object-position:58% center}}
