/* EPICSOLO Solo Room launcher grid */
.solo-slots-section{margin-top:18px;padding-top:14px;border-top:1px solid rgba(120,160,210,.18)}
.solo-slots-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
.solo-slot{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:112px;padding:16px;border:1px solid rgba(105,150,205,.35);border-radius:12px;background:linear-gradient(145deg,rgba(12,25,43,.96),rgba(7,15,29,.98));color:#eef5ff;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.solo-slot:hover{transform:translateY(-2px);border-color:rgba(90,190,255,.75);background:linear-gradient(145deg,rgba(18,38,64,.98),rgba(8,18,34,.98));box-shadow:0 8px 22px rgba(0,0,0,.24)}
.solo-slot:focus-visible{outline:2px solid #59c7ff;outline-offset:2px}
.solo-slot-number{font-size:10px;letter-spacing:.16em;color:#67c8ff;margin-bottom:8px}
.solo-slot strong{font-size:14px;line-height:1.2}
.solo-slot small{margin-top:6px;font-size:11px;color:#91a5be}
.solo-slots-hint{margin:9px 2px 0;color:#8398b2;font-size:11px}
@media (max-width:1199px){.solo-slots-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.solo-slot{min-height:100px;padding:13px}.solo-slot strong{font-size:13px}}
@media (max-width:767px){.solo-slots-section{margin-top:12px;padding-top:10px}.solo-slots-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.solo-slot{min-height:92px;padding:11px;border-radius:10px}.solo-slot-number{font-size:9px;margin-bottom:6px}.solo-slot strong{font-size:12px}.solo-slot small{font-size:10px;margin-top:4px}.solo-slots-hint{font-size:10px}}

.solo-slot-live{overflow:hidden;justify-content:flex-end;min-height:128px;padding:0 12px 12px;border-color:rgba(70,200,170,.5)}
.solo-slot-live .solo-slot-thumb{display:block;width:calc(100% + 24px);height:70px;margin:0 -12px 9px;overflow:hidden;background:#071322;border-bottom:1px solid rgba(90,180,220,.25)}
.solo-slot-live .solo-slot-thumb img{display:block;width:100%;height:100%;object-fit:cover}
.solo-slot-thumb-fallback{display:flex!important;align-items:center;justify-content:center;color:#64e0b3;font-size:11px;letter-spacing:.12em}
.solo-slot-live .solo-slot-number{margin-bottom:4px}
.solo-slot-live small{color:#66d7b0}
@media (max-width:767px){.solo-slot-live{min-height:112px;padding:0 10px 9px}.solo-slot-live .solo-slot-thumb{width:calc(100% + 20px);height:58px;margin:0 -10px 7px}.solo-slot-live strong{font-size:11px}}

/* Solo slots are part of the same Chat Rooms grid. */
.solo-inline-label{grid-column:1/-1;display:flex;align-items:center;gap:9px;margin-top:4px;padding:12px 2px 2px;border-top:1px solid rgba(120,160,210,.18);color:#eef5ff}
.solo-inline-label span{font-size:18px}.solo-inline-label strong{font-size:15px}.solo-inline-label small{color:#8398b2;font-size:11px}
.solo-slots-inline{margin-top:0}
.solo-slots-inline-hint{margin-bottom:0}
@media (max-width:767px){.solo-inline-label{gap:7px;padding-top:10px}.solo-inline-label strong{font-size:13px}.solo-inline-label small{font-size:10px}}

/* Fixed community rooms are a separate block; solo webcam rooms always follow below. */
.room-section-solo{margin-top:18px;padding-top:16px;border-top:1px solid rgba(120,160,210,.18)}
.room-section-solo .solo-inline-label{border-top:0;margin-top:0;padding-top:0}
.fixed-community-grid{margin-bottom:0}
@media (max-width:767px){.room-section-solo{margin-top:12px;padding-top:12px}}

/* Fixed webcam rooms: always separate from the three shared chatrooms and the eight solo slots. */
.fixed-webcam-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.room-card-fixed-webcam{position:relative;}
.room-card-fixed-webcam::after{content:'VASTE WEBCAM';position:absolute;top:10px;right:10px;padding:4px 7px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.08em;background:rgba(10,15,30,.82);color:#8fe8ff;border:1px solid rgba(143,232,255,.35);pointer-events:none;}
@media (max-width:900px){.fixed-webcam-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:620px){.fixed-webcam-grid{grid-template-columns:1fr;}}

/* Final room structure: 3 fixed shared rooms, then active Solo rooms with one create button. */
.room-section-solo{margin-top:22px;padding-top:18px;border-top:1px solid rgba(120,160,210,.18)}
.solo-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 14px}
.solo-create-button{min-height:44px;padding:0 18px;border-radius:10px;font-weight:800;cursor:pointer}
.solo-toolbar-note{font-size:11px;color:#8398b2}
.solo-active-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.solo-active-grid:empty{display:none}
.room-card-solo{min-width:0}
@media (max-width:1023px){.solo-active-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.solo-active-grid{grid-template-columns:1fr}.solo-toolbar{align-items:stretch}.solo-create-button{width:100%}}
