/* Nhật Phúc video collection — uses the existing dark/cyan palette. */
.np-video-section{padding:64px 0;scroll-margin-top:84px;color:var(--text-color,#d1d5db)}
.np-video-section--long{background:linear-gradient(160deg,#111b2c 0%,#0d1117 75%);border-block:1px solid #263247}
.np-video-section--short{background:#0d1117}
.np-video-container{width:min(1280px,100%);margin-inline:auto;padding-inline:24px}
.np-video-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}
.np-video-eyebrow{display:block;color:#7dd3fc;font-size:11px;letter-spacing:.18em;font-weight:700;margin-bottom:10px}
.np-video-heading h2,.np-video-heading h1{font-size:clamp(32px,4vw,48px);line-height:1.12;font-weight:800;letter-spacing:-.04em;color:#fff;margin:0 0 12px}
.np-video-heading__dot{color:#38bdf8}
.np-video-heading p{font-size:15px;color:#9ca3af;margin:0;line-height:1.6}
.np-video-all{flex-shrink:0;display:inline-flex;gap:22px;align-items:center;color:#e2e8f0;font-size:13px;font-weight:600;text-decoration:none;border:1px solid #374151;border-radius:999px;padding:10px 18px;transition:background .2s,border-color .2s}
.np-video-all span{font-size:20px;color:#7dd3fc}
.np-video-all:hover{background:#1e293b;border-color:#38bdf8}
.np-video-feature-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px 24px;align-items:start}
.np-video-card{min-width:0;overflow:hidden;border:1px solid #29364a;background:#151e2c;border-radius:16px;transition:border-color .2s,transform .2s}
.np-video-card:hover{border-color:#5c7994;transform:translateY(-3px)}
.np-video-card__link{display:block;text-decoration:none;color:inherit;height:100%}
.np-video-card__cover{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1f2937}
.np-video-card__cover::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0d111766,transparent 60%);pointer-events:none}
.np-video-card__cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.np-video-card:hover img{transform:scale(1.035)}
.np-video-card__play{position:absolute;z-index:1;left:16px;bottom:16px;width:40px;height:40px;display:grid;place-items:center;padding-left:3px;border-radius:50%;background:#ffffffed;color:#0d1117;font-size:14px;box-shadow:0 4px 18px #0004}
.np-video-card__duration{position:absolute;z-index:2;right:12px;bottom:14px;background:#090d14de;color:white;padding:3px 7px;border-radius:5px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
.np-video-card__body{padding:18px 20px}
.np-video-card__meta{display:block;font-size:10px;letter-spacing:.08em;font-weight:700;color:#91a7c0;margin-bottom:9px}
.np-video-card h3{color:#f8fafc;font-size:17px;line-height:1.45;font-weight:700;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.np-video-card__body p{margin:12px 0 0;color:#9ca3af;font-size:14px;line-height:1.7}
.np-video-card__cta{display:inline-flex;gap:24px;align-items:center;color:#7dd3fc;font-size:13px;font-weight:700;margin-top:20px}
.np-video-card--featured{grid-row:span 3}
.np-video-card--featured h3{font-size:clamp(20px,2.1vw,27px);line-height:1.3;letter-spacing:-.025em}
.np-video-card--featured .np-video-card__body{padding:24px}
.np-video-card--featured .np-video-card__play{width:54px;height:54px;background:#38bdf8;font-size:18px;bottom:20px;left:24px}
.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__link{display:grid;grid-template-columns:42% 58%;min-height:136px}
.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__cover{height:100%;aspect-ratio:auto;min-height:136px}
.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__body{align-self:center;padding:16px}
.np-video-feature-grid .np-video-card:not(.np-video-card--featured) h3{font-size:15px}
.np-shorts-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 80px)/5);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:4px 2px 20px;scrollbar-width:thin;scrollbar-color:#40546e #121a26}
.np-video-card--short{position:relative;scroll-snap-align:start;background:#151e2c}
.np-video-card--short .np-video-card__cover{aspect-ratio:9/16}
.np-video-card--short .np-video-card__cover::after{background:linear-gradient(0deg,#080d15 0%,#080d15cc 22%,transparent 65%)}
.np-video-card--short .np-video-card__body{position:absolute;bottom:0;left:0;right:0;z-index:2;padding:20px 16px;pointer-events:none}
.np-video-card--short h3{font-size:16px;line-height:1.4;color:#fff;-webkit-line-clamp:4}
.np-video-card--short .np-video-card__meta{font-size:9px;color:#a5def9;letter-spacing:.07em}
.np-video-card--short .np-video-card__play{left:50%;bottom:auto;top:38%;transform:translate(-50%,-50%);background:#ffffff28;color:white;border:1px solid #ffffff77;backdrop-filter:blur(8px);width:48px;height:48px}
.np-video-card__badge{position:absolute;z-index:1;top:14px;left:12px;border:1px solid #ffffff40;border-radius:6px;padding:4px 7px;background:#090d149c;color:white;font-size:9px;letter-spacing:.1em;font-weight:800}
.np-video-card--short .np-video-card__duration{top:14px;bottom:auto;font-size:10px}
.np-video-empty{display:flex;gap:28px;align-items:center;padding:40px;border:1px dashed #3c4b60;border-radius:20px;background:radial-gradient(ellipse at 5% 80%,#18344880,transparent 65%),#131c29;min-height:220px}
.np-video-empty__icon{flex-shrink:0;display:grid;place-items:center;width:80px;height:108px;border:1px solid #48627d;border-radius:18px;background:linear-gradient(145deg,#26465c,#142338);color:#7dd3fc;font-size:34px;transform:rotate(-7deg)}
.np-video-empty h3{font-weight:700;font-size:22px;line-height:1.3;color:#f1f5f9;margin:0 0 10px}
.np-video-empty p{max-width:570px;color:#94a3b8;font-size:14px;line-height:1.8;margin:0 0 14px}
.np-video-empty a{font-weight:600;color:#7dd3fc;font-size:13px;text-decoration:none}
.np-video-library{min-height:70vh}
.np-video-back{display:inline-block;color:#94a3b8;margin-bottom:32px;font-size:14px;text-decoration:none}
.np-video-tabs{display:flex;gap:12px;margin:0 0 32px}
.np-video-tabs a{border:1px solid #374151;border-radius:999px;padding:10px 24px;font-size:14px;text-decoration:none;color:#cbd5e1}
.np-video-tabs a[aria-current]{background:#38bdf8;color:#0d1117;border-color:#38bdf8;font-weight:700}
.np-video-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.np-video-library-grid--short{grid-template-columns:repeat(5,minmax(0,1fr))}
.np-video-pagination{display:flex;justify-content:center;gap:8px;margin-top:40px;flex-wrap:wrap}
.np-video-pagination .page-numbers{display:inline-block;padding:10px 16px;border:1px solid #374151;border-radius:8px;color:#cbd5e1;text-decoration:none}
.np-video-pagination .current{color:#111827;background:#38bdf8;border-color:#38bdf8}
.np-video-section a:focus-visible,.np-shorts-track:focus-visible{outline:3px solid #7dd3fc;outline-offset:4px}
.np-home-video-nav{display:flex;justify-content:center;gap:10px;margin:28px 0 0}
.np-home-video-nav a{display:inline-flex;align-items:center;gap:10px;font-size:13px;text-decoration:none;border:1px solid #374151;border-radius:999px;color:#cbd5e1;padding:8px 16px}
.np-home-video-nav a:hover{border-color:#38bdf8;color:#7dd3fc}
@media(min-width:1024px){.np-video-feature-grid .np-video-card--featured:only-child{max-width:800px;grid-column:1/-1}}
@media(max-width:1023px){.np-video-feature-grid{grid-template-columns:1fr 1fr}.np-video-card--featured{grid-row:auto;grid-column:1/-1;display:block}.np-video-card--featured .np-video-card__link{display:grid;grid-template-columns:1fr 1fr}.np-video-card--featured .np-video-card__cover{height:100%;aspect-ratio:auto;min-height:260px}.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__link{display:block}.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__cover{aspect-ratio:16/9;min-height:0;height:auto}.np-shorts-track{grid-auto-columns:28%}.np-video-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.np-video-library-grid--short{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:639px){.np-video-container{padding-inline:20px}.np-video-section{padding:40px 0}.np-video-heading{align-items:flex-start;gap:18px;flex-direction:column;margin-bottom:24px}.np-video-heading h2,.np-video-heading h1{font-size:36px}.np-video-heading p{font-size:14px}.np-video-all{padding:7px 14px;font-size:12px}.np-video-feature-grid{grid-template-columns:1fr;gap:14px}.np-video-card--featured{grid-column:auto}.np-video-card--featured .np-video-card__link{display:block}.np-video-card--featured .np-video-card__cover{aspect-ratio:16/9;min-height:0;height:auto}.np-video-card--featured .np-video-card__body{padding:20px}.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__link{display:grid;grid-template-columns:40% 60%;min-height:120px}.np-video-feature-grid .np-video-card:not(.np-video-card--featured) .np-video-card__cover{height:100%;aspect-ratio:auto}.np-video-feature-grid .np-video-card:not(.np-video-card--featured) h3{font-size:14px}.np-shorts-track{grid-auto-columns:64%;gap:14px}.np-video-empty{padding:26px 22px;gap:20px;align-items:flex-start;flex-direction:column}.np-video-empty__icon{width:54px;height:70px;font-size:24px}.np-video-empty h3{font-size:20px}.np-video-library-grid{grid-template-columns:1fr;gap:18px}.np-video-library-grid--short{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.np-video-library-grid--short .np-video-card__body{padding:14px 10px}.np-video-library-grid--short h3{font-size:14px}.np-video-library-grid--short .np-video-card__meta{display:none}.np-video-card__badge{font-size:8px}.np-video-library-grid--short .np-video-card__duration{right:6px;font-size:9px}}
@media(prefers-reduced-motion:reduce){.np-video-card,.np-video-card__cover img,.np-video-all{transition:none}.np-video-card:hover,.np-video-card:hover img{transform:none}.np-shorts-track{scroll-behavior:auto}}
/* Channel feed and accessible click-to-play Shorts dialog. */
.np-shorts-channel-link{display:inline-block;margin-top:22px;color:#7dd3fc;font-size:13px;text-decoration:none;font-weight:600}
.np-shorts-channel-link:hover{text-decoration:underline}
.np-shorts-dialog{box-sizing:border-box;width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:16px 20px 20px;margin:auto;border:1px solid #40546e;border-radius:18px;background:#101923;color:#e2e8f0;overflow-y:auto;box-shadow:0 24px 80px #0009}
.np-shorts-dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}
.np-shorts-dialog__close{display:block;margin:0 0 10px auto;border:1px solid #40546e;border-radius:8px;background:#1f2937;padding:7px 12px;color:#e2e8f0;font:600 12px/1.4 Inter,system-ui,sans-serif;cursor:pointer}
.np-shorts-dialog__title{font:700 16px/1.4 Inter,system-ui,sans-serif;margin:0 0 14px;color:#fff;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.np-shorts-dialog__player{position:relative;width:min(100%,calc(65dvh * 9 / 16));aspect-ratio:9/16;margin-inline:auto;background:#000;border-radius:10px;overflow:hidden}
.np-shorts-dialog__player iframe{display:block;width:100%;height:100%;border:0}
.np-shorts-dialog__youtube{display:block;margin-top:14px;text-align:center;font-size:12px;color:#7dd3fc;text-decoration:none}
.np-shorts-dialog button:focus-visible,.np-shorts-dialog a:focus-visible{outline:3px solid #7dd3fc;outline-offset:3px}
html.np-shorts-playing{overflow:hidden}
