/* Teacher-facing student camera wall. */
.cv-wall{position:fixed;z-index:82;right:12px;bottom:12px;width:min(390px,calc(100vw - 24px));padding:11px;border:1px solid #d5e1da;border-radius:14px;background:#f8fbf9;color:#193c35;box-shadow:0 16px 36px -28px rgba(20,55,45,.65)}
.cv-wall.is-collapsed .cv-grid,.cv-wall.is-collapsed .cv-hint{display:none}
.cv-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.cv-head>div:first-child{display:flex;align-items:baseline;gap:8px}.cv-head strong{font-size:13px}.cv-head small{font-size:10px;color:#697e74}
.cv-actions{display:flex;gap:4px}.cv-button{border:1px solid #cdded5;border-radius:7px;background:#fff;color:#2b584c;padding:4px 7px;font:inherit;font-size:10px;cursor:pointer}.cv-button:hover{background:#edf6f1;border-color:#8fb4a3}
.cv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px;max-height:min(48vh,360px);overflow:auto}
.cv-grid figure{margin:0;background:#dfeae4;border-radius:8px;overflow:hidden;position:relative;min-height:72px}
.cv-grid video{display:block;width:100%;height:100%;min-height:72px;max-height:150px;object-fit:cover}
.cv-grid figcaption{position:absolute;left:5px;bottom:4px;max-width:calc(100% - 10px);padding:1px 5px;border-radius:4px;background:#132d27aa;color:#fff;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cv-hint{margin:7px 0 0;font-size:10.5px;line-height:1.6;color:#5c7368}
.cv-empty{grid-column:1/-1;margin:6px 0;padding:12px 8px;border:1px dashed #c8dbd1;border-radius:8px;text-align:center;font-size:11px;color:#5c7368}
@media(max-width:900px){.cv-wall{top:48px;bottom:auto;right:8px;width:min(320px,calc(100vw - 16px))}}
@media(max-width:760px){.cv-wall{right:8px;bottom:8px;top:auto;width:calc(100vw - 16px);max-height:52vh;overflow:auto}.cv-grid{max-height:34vh}}
