.kh-reels{--kh-columns:4;--kh-width:250px;--kh-gap:20px;--kh-radius:12px;--kh-accent:#b99b6b;font-family:inherit}.kh-reels h2{font:inherit;font-size:clamp(24px,3vw,42px);margin:0 0 24px}.kh-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.kh-reels .kh-filters button{font:inherit;background:transparent;color:inherit;border:1px solid currentColor;border-radius:30px;padding:8px 18px;cursor:pointer}.kh-reels .kh-filters button[aria-pressed=true]{background:var(--kh-accent);color:#111;border-color:var(--kh-accent)}.kh-list{gap:var(--kh-gap)}.kh-grid{display:grid;grid-template-columns:repeat(var(--kh-columns),minmax(0,1fr))}.kh-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 16px;overscroll-behavior-x:contain}.kh-reels .kh-card{position:relative;display:block;min-width:0;aspect-ratio:9/16;overflow:hidden;border:0;padding:0;border-radius:var(--kh-radius);background:#202020;color:#fff;text-align:left;cursor:pointer;font:inherit;isolation:isolate}.kh-rail .kh-card{flex:0 0 var(--kh-width);scroll-snap-align:start}.kh-card[hidden]{display:none!important}.kh-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .25s}.kh-card:hover img{transform:scale(1.035)}.kh-card:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85));z-index:0}.kh-play{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);border:1px solid #ffffff90;background:#0005;border-radius:50%;width:56px;height:56px;display:grid;place-items:center;z-index:1;font-size:20px}.kh-label{position:absolute;bottom:22px;left:20px;right:20px;z-index:1}.kh-label small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px}.kh-label strong{font-size:19px;line-height:1.25;display:block}.kh-reels button:focus-visible,.kh-dialog button:focus-visible,.kh-dialog a:focus-visible{outline:3px solid #d4ac62;outline-offset:3px}.kh-dialog{border:1px solid #ffffff30;padding:0;background:#111;color:#fff;max-width:min(94vw,470px);width:470px;max-height:94vh;max-height:94dvh;border-radius:16px;overflow:auto;font-family:system-ui,sans-serif}.kh-dialog::backdrop{background:rgba(0,0,0,.9)}.kh-player{position:relative;padding:12px}.kh-close{position:absolute;top:18px;right:18px;z-index:2;border:1px solid #fff7;border-radius:50%;background:#000b;color:#fff;width:38px;height:38px;font-size:26px;line-height:1;cursor:pointer}.kh-stage{display:flex;justify-content:center;background:#000;border-radius:8px;overflow:hidden}.kh-stage video{display:block;width:100%;height:65vh;height:65dvh;object-fit:contain;max-width:100%}.kh-info{padding:14px 8px 4px}.kh-info h2{font:600 19px/1.3 system-ui,sans-serif;color:#fff;margin:0 0 10px}.kh-cta{color:#e5c58e;text-decoration:underline;font-size:14px}.kh-status{font-size:13px;margin:6px 0}.kh-dialog nav{display:flex;align-items:center;justify-content:space-between;padding:10px 8px 0;gap:20px}.kh-dialog nav button{border:1px solid #ffffff50;background:transparent;color:white;padding:8px 18px;border-radius:25px;cursor:pointer}.kh-dialog button:disabled{opacity:.35;cursor:default}.kh-count{font-size:12px;color:#ccc}[hidden].kh-cta{display:none}@media(max-width:767px){.kh-reels{--kh-columns:2;--kh-width:72vw}.kh-label{left:14px;right:14px;bottom:16px}.kh-label strong{font-size:16px}}@media(prefers-reduced-motion:reduce){.kh-card img{transition:none}.kh-card:hover img{transform:none}.kh-rail{scroll-behavior:auto}}
/* 1.1 fullscreen player and reel actions */
.kh-vertical{display:flex;flex-direction:column;align-items:center;overflow-y:auto;scroll-snap-type:y mandatory;padding:4px;overscroll-behavior-y:contain}.kh-vertical .kh-card{width:min(100%,var(--kh-width));flex-shrink:0;scroll-snap-align:start}
.kh-dialog{position:fixed;inset:0;margin:0;width:100vw;max-width:100vw;height:100vh;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0;overflow:hidden;background:#000}.kh-player{position:relative;width:100%;height:100%;padding:0;overflow:hidden}.kh-stage{height:100%;width:100%;border-radius:0}.kh-stage video{width:100%;height:100%;max-height:none;object-fit:contain}.kh-dialog .kh-close,.kh-dialog .kh-close:hover,.kh-dialog .kh-close:focus{position:absolute;top:max(16px,env(safe-area-inset-top));right:20px;width:40px;height:40px;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:40px;color:#fff;text-shadow:0 1px 6px #000;z-index:5;padding:0}.kh-info{position:absolute;bottom:65px;left:0;right:0;padding:100px 90px 30px 28px;background:linear-gradient(transparent,rgba(0,0,0,.72));pointer-events:none}.kh-info h2{font-size:24px;color:white;margin:0;text-shadow:0 1px 4px #0008}.kh-status{color:#fff}.kh-actions{position:absolute;right:20px;bottom:145px;display:flex;flex-direction:column;gap:24px;z-index:4}.kh-actions button,.kh-actions a{display:grid;place-items:center;width:42px;height:42px;padding:5px;border:0;background:transparent;color:white;cursor:pointer;filter:drop-shadow(0 1px 3px #0009)}.kh-actions svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.kh-actions [hidden]{display:none!important}.kh-dialog nav{position:absolute;right:20px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;padding:0;z-index:3}.kh-dialog nav button{border:0;background:#0004;border-radius:50%;padding:10px 14px}.kh-dialog .kh-count{color:#fff}.kh-info h2[hidden]{display:none}@media(min-width:768px){.kh-info{left:max(0px,calc((100vw - 56.25dvh)/2));right:max(0px,calc((100vw - 56.25dvh)/2));padding-left:24px;padding-right:24px}}@media(max-width:767px){.kh-actions{right:12px;bottom:150px}.kh-info{padding-left:20px;bottom:65px}.kh-dialog nav{top:80px;transform:none;right:16px;gap:8px}.kh-dialog nav button{font-size:16px;padding:5px 10px}}
/* 1.2: anchored overlay, compact stack, gesture navigation */
.kh-dialog,.kh-player,.kh-stage{overscroll-behavior:none;touch-action:none}.kh-stage{position:relative;isolation:isolate}.kh-stage video,.kh-stage .kh-outgoing{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.kh-outgoing{pointer-events:none;z-index:1}.kh-player:after{content:'';position:absolute;inset:auto 0 0;height:clamp(160px,28vh,280px);background:linear-gradient(to bottom,transparent,rgba(0,0,0,.72));pointer-events:none;z-index:1}.kh-dialog .kh-info{background:none;bottom:calc(90px + env(safe-area-inset-bottom));left:0;right:0;padding:0 88px 0 24px;z-index:2}.kh-dialog .kh-info h2{line-height:1.25}.kh-dialog nav{top:auto;bottom:calc(28px + env(safe-area-inset-bottom));left:24px;right:auto;transform:none;flex-direction:row;gap:14px;padding:0;z-index:4}.kh-dialog nav button,.kh-dialog nav button:hover,.kh-dialog nav button:focus{display:grid;place-items:center;box-sizing:border-box;width:var(--kh-nav-size,42px);height:var(--kh-nav-size,42px);min-width:var(--kh-nav-size,42px);min-height:var(--kh-nav-size,42px);padding:0!important;aspect-ratio:1;border-radius:50%!important;border:1px solid #ffffff50;background:#0005;line-height:1;font-size:calc(var(--kh-nav-size,42px)*.48)}.kh-dialog .kh-actions{bottom:calc(145px + env(safe-area-inset-bottom));z-index:4}.kh-dialog .kh-actions button,.kh-dialog .kh-actions a{width:calc(var(--kh-icon-size,30px) + 18px);height:calc(var(--kh-icon-size,30px) + 18px);min-width:0;padding:8px;box-sizing:border-box;color:var(--kh-icon-color,#fff);border-radius:50%;aspect-ratio:1}.kh-dialog .kh-actions svg{width:var(--kh-icon-size,30px);height:var(--kh-icon-size,30px);stroke-width:var(--kh-icon-stroke,1.8)}.kh-dialog[data-icon-style=circle] .kh-actions button,.kh-dialog[data-icon-style=circle] .kh-actions a{background:var(--kh-icon-bg,#222);border:0}.kh-dialog[data-icon-style=outline] .kh-actions button,.kh-dialog[data-icon-style=outline] .kh-actions a{border:1px solid var(--kh-icon-color,#fff);background:transparent}.kh-reels[data-stack=yes] .kh-list{display:block;overflow:visible;max-height:none!important;padding:0}.kh-reels[data-stack=yes] .kh-card{display:none;width:min(100%,var(--kh-width,300px));margin:0 auto}.kh-reels[data-stack=yes] .kh-card[data-cover=yes]:not([hidden]){display:block}.kh-reels[data-stack=yes] .kh-card[data-cover=yes]:before{content:'View reels';position:absolute;top:16px;left:16px;z-index:2;padding:7px 12px;border-radius:20px;background:#0008;color:white;font-size:12px}@media(min-width:768px){.kh-dialog .kh-info{left:max(0px,calc((100vw - 56.25dvh)/2));right:max(0px,calc((100vw - 56.25dvh)/2));padding:0 30px}.kh-dialog nav{left:max(24px,calc((100vw - 56.25dvh)/2 + 30px))}}@media(prefers-reduced-motion:reduce){.kh-stage video{animation:none!important;transition:none!important}}

.kh-reels .kh-filters{width:100%}.kh-reels .kh-filters button{transition:color .2s,background-color .2s,border-color .2s}
