.tomo-cv{max-width:1040px;margin:1.5rem auto;border:1px solid #d9e3e6;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 6px 22px rgba(5,34,45,.08);font-family:inherit}
.tomo-cv__heading{display:flex;align-items:center;gap:.65em;padding:1rem 1.3rem;color:#123d47;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:700;line-height:1.5}
.tomo-cv__live-indicator{display:inline-block;width:10px;height:10px;background:#e44b58;border-radius:50%;flex:none;box-shadow:0 0 0 4px rgba(228,75,88,.1)}
.tomo-cv__screen{position:relative;background:#07171c;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.tomo-cv__video{width:100%;height:100%;display:block;object-fit:contain;background:#07171c}
.tomo-cv__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;color:#f0f9fb;background:rgba(7,23,28,.7);font-size:clamp(.86rem,2vw,1rem);padding:1rem;pointer-events:none}
.tomo-cv__overlay[hidden]{display:none}
.tomo-cv__footer{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f7fbfc;flex-wrap:wrap}
.tomo-cv__button{appearance:none;border:0;border-radius:10px;padding:.75rem 1.2rem;background:#17617a;color:#fff;font:inherit;font-weight:700;cursor:pointer;min-width:154px}
.tomo-cv__button:hover{background:#104c61}
.tomo-cv__button:focus-visible{outline:3px solid #e6a32d;outline-offset:3px}
.tomo-cv__button:disabled{opacity:.65;cursor:wait}
.tomo-cv__status{flex:1 1 230px;color:#365866;font-size:.88rem;line-height:1.6;overflow-wrap:anywhere}
.tomo-cv-unavailable{padding:1.25rem;background:#f5f7f8;border:1px solid #d8dfe3;border-radius:8px}
@media(max-width:600px){.tomo-cv{border-radius:10px}.tomo-cv__footer{padding:.8rem}.tomo-cv__button{width:100%}}
