/* Discovery is a first-class landing action, visible before opening invite codes. */
#screen .intro { display:grid; grid-template-columns:minmax(300px,420px) minmax(380px,560px); grid-template-rows:auto auto; column-gap:clamp(32px,5vw,90px); row-gap:0; justify-content:space-between; align-content:center; align-items:start; }
#screen .landing-story { grid-column:1; grid-row:1; }
#screen #lobby-panel { grid-column:1; grid-row:2; }
#screen #room-browser-slot { grid-column:2; grid-row:1 / span 2; width:100%; min-width:0; align-self:center; }
#screen #public-rooms { margin:0; padding:28px; border:1px solid #a9b8a34a; background:#091b24f2; box-shadow:0 18px 60px #02090c50; text-align:left; }
#screen #public-rooms[hidden],body.landing-room #room-browser-slot,body.showing-results #room-browser-slot { display:none; }
#screen .rooms-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
#screen .rooms-live { display:flex; align-items:center; gap:9px; color:#b4e1cd; font-size:11px; letter-spacing:.17em; font-weight:700; }
#screen .rooms-live::before { content:''; width:6px; height:6px; border-radius:50%; background:#a8d9c1; box-shadow:0 0 0 4px #a8d9c114; }
#screen #rooms-refresh { min-height:44px; padding:8px 0 8px 12px; margin:0; border:0; background:none; color:#b6c5c8; font-size:12px; }
#screen #public-rooms h2 { margin:20px 0 6px; color:#f3ead7; font:500 48px/1 'Cormorant Garamond',Georgia,serif; letter-spacing:-.025em; }
#screen .rooms-intro { margin:0 0 26px; color:#b6c5c8; font-size:14px; line-height:1.5; }
#screen #rooms-summary { padding:0 0 14px; border-bottom:1px solid #72858055; color:#d9bc83; font-size:12px; font-weight:600; letter-spacing:.02em; }
#screen #rooms-list { list-style:none; padding:0; margin:0; max-height:370px; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; }
#screen #rooms-list li { display:grid; grid-template-columns:minmax(0,1fr) auto 112px; align-items:center; gap:18px; padding:23px 0; border:0; border-bottom:1px solid #72858040; }
#screen .hunt-info { min-width:0; }
#screen .hunt-state { display:block; color:#9dc9b7; font-size:9px; font-weight:600; letter-spacing:.11em; }
#screen #rooms-list h3 { display:block; margin:6px 0 12px; color:#f3ead7; font:600 15px/1.25 Manrope,Arial,sans-serif; overflow-wrap:anywhere; }
#screen .hunt-seats { display:flex; flex-wrap:wrap; gap:4px; max-width:150px; }
#screen .hunt-seats i { flex:0 0 10px; height:5px; background:#456069; border-radius:1px; }
#screen .hunt-seats i.occupied { background:#d9bc83; }
#screen .hunt-capacity { text-align:right; white-space:nowrap; }
#screen .hunt-capacity strong { display:block; color:#f3ead7; font:600 25px/1 Manrope,Arial,sans-serif; letter-spacing:-.04em; }
#screen .hunt-capacity span { display:block; margin-top:8px; color:#b6c5c8; font-size:11px; }
#screen #rooms-list .hunt-join,#screen #rooms-create { display:flex; justify-content:space-between; align-items:center; gap:14px; min-height:60px; width:100%; padding:14px 17px; margin:0; border:1px solid #d9bc83; background:#d9bc83; color:#102027; font-size:16px; font-weight:800; letter-spacing:.04em; }
#screen #rooms-list .hunt-join b { font-size:22px; font-weight:400; }
#screen #rooms-list .hunt-join:hover:not(:disabled),#screen #rooms-create:hover:not(:disabled) { background:#efd5a7; color:#102027; border-color:#efd5a7; }
#screen #rooms-status { margin:18px 0 0; color:#a1b5bb; font-size:11px; line-height:1.6; }
#screen #rooms-feedback { margin:16px 0 0; padding:12px; color:#f6d4b2; border:1px solid #b8956b66; font-size:13px; line-height:1.5; background:#382d2555; }
#screen #rooms-empty { padding:30px 0 12px; }
#screen #rooms-empty strong { color:#f3ead7; font:500 28px/1.2 'Cormorant Garamond',Georgia,serif; }
#screen #rooms-empty p { margin:10px 0 20px; max-width:350px; color:#b6c5c8; font-size:13px; line-height:1.7; }
#screen #rooms-create { min-height:52px; font-size:14px; }
body.landing-room #screen .intro,body.showing-results #screen .intro { display:flex; }
@media(min-width:1051px) and (max-height:900px) {
 #screen .intro h1 { font-size:78px; margin-top:20px; margin-bottom:16px; }
 #screen .landing-description { margin-bottom:20px; }
 #screen #room-browser-slot { align-self:start; padding-top:55px; }
}
@media(max-width:1200px) and (min-width:1051px) {
 #screen .intro { padding-left:40px; padding-right:40px; grid-template-columns:minmax(300px,380px) minmax(360px,1fr); gap:0 32px; }
 #screen #public-rooms { padding:22px; }
 #screen #rooms-list li { grid-template-columns:minmax(0,1fr) auto 96px; gap:12px; }
}
@media(max-width:1050px) {
 #screen .intro { display:flex; flex-direction:column; align-items:stretch; padding-top:28px; gap:0; }
 #screen .landing-story { order:0; }
 #screen #room-browser-slot { order:1; align-self:stretch; max-width:620px; margin:8px 0 32px; }
 #screen #lobby-panel { order:2; width:100%; max-width:620px; }
 #screen #results-panel { order:3; }
 #screen .landing-description { display:none; }
 #screen .subtitle { margin-bottom:20px; }
 #screen .intro h1 { font-size:70px; margin-top:20px; margin-bottom:16px; }
}
@media(max-width:600px) {
 #screen .intro { padding:20px 20px 24px; }
 #screen .landing-kicker { font-size:10px; }
 #screen .intro h1 { font-size:58px; margin:16px 0; }
 #screen .subtitle { font-size:22px; }
 #screen #public-rooms { padding:18px; }
 #screen #public-rooms h2 { font-size:39px; margin-top:12px; }
 #screen .rooms-intro { font-size:12px; margin-bottom:20px; }
 #screen #rooms-list { max-height:385px; }
 #screen #rooms-list li { grid-template-columns:minmax(0,1fr) auto; gap:14px 16px; padding:20px 0; }
 #screen #rooms-list .hunt-join { grid-column:1 / -1; min-height:52px; justify-content:center; }
 #screen .hunt-capacity strong { font-size:26px; }
 #screen #rooms-status { font-size:10px; }
}
