    .wrap { max-width:1200px; margin:0 auto; padding:14px; }
     .viewer { height:70vh; border-radius:12px; overflow:hidden; background:#222; position:relative; }
    .viewer .viewer-ui{position:absolute;inset:0;pointer-events:none;z-index:5}
    .viewer .viewer-ctl button{pointer-events:auto}
    .viewer .viewer-info{pointer-events:auto}
    .viewer .viewer-carousel{pointer-events:auto}
    .viewer .pnlm-title-box{ display:none !important; }
    .viewer-ctl { position:absolute; left:8px; bottom:8px; display:flex; gap:6px; pointer-events:auto; flex-direction: column; }
    .btn {   border:1px solid #ffffff96; color:#fff; border-radius:10px;     display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    background: rgb(0 0 0 / 25%); cursor:pointer; }
    .btn:hover { border-color:#f8f8f88f; }
    .viewer-info { position:absolute; left:8px; top:8px; max-width:48%; background:rgba(0,0,0,.55); padding:10px 12px; border-radius:10px; color: #ffffff;}
    .vi-title { font-weight:700; font-size:14px; line-height:1.1 }
    .vi-sub   { opacity:.9;  font-size:12px; margin-top:2px }
    .vi-desc  { opacity:.85; font-size:12px; margin-top:6px }
    .viewer-carousel { position:absolute; left:0; right:0; bottom:0; padding:8px; display:flex; gap:8px; overflow-x:auto; background:linear-gradient(180deg, transparent, rgba(0,0,0,.45)); }
    .card { min-width:140px; max-width:160px; flex:0 0 auto; border:1px solid rgba(255,255,255,.35); border-radius:10px; overflow:hidden; background:rgba(0,0,0,.35); color:#fff; cursor:pointer; }
    .card img { width:100%; height:84px; object-fit:cover; display:block; }
    .card div { text-align:center; font-size:12px; padding:6px }
    .pnlm-load-box p{
        color: #fff !important
    }