/* คลิปจากโรงงาน — สไตล์ร่วม (ใช้ตัวแปร --clip-* จากแต่ละหน้า; ค่าเริ่มต้น = โทน Cpiwat) */
:root{--clip-bg:#ffffff;--clip-ink:#10233f;--clip-sub:#6d81a0;--clip-line:#dbe4f0;--clip-accent:#16a34a;--clip-accent-ink:#ffffff;--clip-th:#eaf3fc;--clip-dark:#081f44}
.clip-strip{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 12px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.clip-strip::-webkit-scrollbar{display:none}
.clip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.clip{flex:0 0 46%;max-width:190px;scroll-snap-align:start;text-decoration:none;color:var(--clip-ink);display:block}
.clip-grid .clip{flex:none;max-width:none}
.clip-th{position:relative;aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:var(--clip-th);border:1px solid var(--clip-line);box-shadow:0 6px 16px rgba(0,0,0,.08)}
.clip-th img{width:100%;height:100%;object-fit:cover;transform:scale(1.34);transition:transform .5s} /* hqdefault ของ Shorts มีแถบดำบน-ล่าง ขยายเพื่อตัดแถบ */
.clip:hover .clip-th img{transform:scale(1.4)}
.clip-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.92);color:#111;display:grid;place-items:center;font-size:16px;padding-left:3px;box-shadow:0 6px 18px rgba(0,0,0,.3)}
.clip-kind{position:absolute;left:8px;top:8px;font-size:10.5px;font-weight:700;color:#fff;background:rgba(0,0,0,.55);border-radius:99px;padding:2px 8px;backdrop-filter:blur(4px)}
.clip-cat{margin-top:8px;font-size:11.5px;font-weight:700;color:var(--clip-accent)}
.clip-title{font-size:12.5px;line-height:1.4;color:var(--clip-ink);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (min-width:640px){.clip{flex-basis:170px}}
/* ตัวเล่น */
.clip-lb{position:fixed;inset:0;background:rgba(0,0,0,.92);z-index:1000;display:none;align-items:center;justify-content:center;padding:14px}
.clip-lb.on{display:flex}
.clip-lb-box{position:relative;width:min(100%,420px);max-height:100%;display:flex;flex-direction:column;gap:10px}
.clip-frame{aspect-ratio:9/16;max-height:calc(100vh - 180px);border-radius:16px;overflow:hidden;background:#000;box-shadow:0 30px 80px rgba(0,0,0,.6);margin:0 auto;width:100%}
.clip-frame iframe{width:100%;height:100%;border:0;display:block}
.clip-x{position:absolute;top:-4px;right:-4px;z-index:2;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3);font-size:18px;cursor:pointer;backdrop-filter:blur(8px)}
.clip-lb-title{color:#fff;font-size:13.5px;line-height:1.4;text-align:center;opacity:.9}
.clip-lb-cta{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.clip-btn{flex:1 1 100%;text-align:center;text-decoration:none;font-weight:700;font-size:14px;padding:12px 14px;border-radius:999px;color:#fff}
.clip-btn.ln{background:#06C755;box-shadow:0 8px 22px rgba(6,199,85,.35)}
.clip-btn.ms{background:#0084FF;flex:1 1 45%}
.clip-btn.pk{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.4);flex:1 1 45%}
@media (min-width:640px){.clip-lb-box{width:min(100%,900px);flex-direction:row;align-items:center}.clip-frame{width:360px;flex:0 0 360px;max-height:calc(100vh - 40px)}.clip-lb-side{flex:1}.clip-lb-title{text-align:left;font-size:16px}.clip-lb-cta{justify-content:flex-start}.clip-btn{flex:1 1 100%}}
