/* Niyara Alys fullscreen media viewer patch
   Loaded after site.css so these rules intentionally replace the old black media stage. */
body.viewer-open{overflow:hidden;overscroll-behavior:none}
.content-detail-media-v2{align-items:start}
.content-stage-media-v2{background:linear-gradient(145deg,#fff,#fff7fa)!important;min-height:0!important;display:block!important;place-items:initial!important;border:1px solid #f0dfe6;box-shadow:0 16px 46px rgba(112,52,75,.08);overflow:hidden!important}
.content-stage-media-v2 .locked-preview{position:relative;min-height:650px}
.content-media-collection{width:100%;padding:12px}
.media-gallery-v2{display:grid;gap:12px;width:100%;align-items:start}
.media-gallery-v2.media-count-1{grid-template-columns:1fr}
.media-gallery-v2.media-count-2,.media-gallery-v2.media-count-3,.media-gallery-v2.media-count-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.media-gallery-v2.media-count-5,.media-gallery-v2.media-count-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.media-tile{position:relative;min-width:0;overflow:hidden;border-radius:20px;background:#fff;border:1px solid #f0e2e8;box-shadow:0 10px 28px rgba(97,52,69,.08);isolation:isolate}
.media-tile>img,.media-tile>video{display:block!important;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain!important;background:transparent!important;margin:0!important}
.media-count-1 .media-tile>img,.media-count-1 .media-tile>video{max-height:none!important}
.media-tile>video{aspect-ratio:var(--media-ratio);background:#fff!important}
.media-tile .audio-media-card{min-height:260px;display:grid;place-items:center;align-content:center;gap:10px;padding:25px;background:linear-gradient(145deg,#fff,#fff0f5)}
.audio-media-card>span{font-size:46px;color:var(--p)}.audio-media-card>b{max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-media-card audio{width:min(440px,95%)}
.media-expand{position:absolute;right:12px;top:12px;z-index:5;border:1px solid rgba(255,255,255,.7);background:rgba(32,17,27,.66);backdrop-filter:blur(10px);color:#fff;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-size:21px;cursor:pointer;box-shadow:0 8px 22px rgba(20,10,15,.22);transition:.2s}
.media-expand:hover{transform:scale(1.06);background:var(--p)}
.media-position-badge{position:absolute;left:12px;bottom:12px;padding:5px 9px;border-radius:99px;background:rgba(255,255,255,.9);color:#3a2630;font-size:11px;font-weight:800;box-shadow:0 5px 18px rgba(0,0,0,.08)}
.media-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:4px 2px 12px}.media-carousel-head>div:first-child{display:flex;flex-direction:column}.media-carousel-head b{font-family:Georgia,serif;font-size:20px}.media-carousel-head span{font-size:11px;color:#846775}
.media-carousel-actions{display:flex;gap:7px}.media-carousel-actions button{width:42px;height:42px;border-radius:50%;border:1px solid #ead8e0;background:#fff;color:#6f3c50;font-size:26px;cursor:pointer}.media-carousel-actions button:hover{background:#fff0f5;color:var(--p)}
.media-carousel-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:2px}.media-carousel-track::-webkit-scrollbar{display:none}.media-carousel-card{flex:0 0 clamp(260px,38vw,560px);scroll-snap-align:start}.media-carousel-card>img,.media-carousel-card>video{aspect-ratio:var(--media-ratio);max-height:72vh!important;object-fit:contain!important}
.comments-v2 .comment-thread-list{margin-top:14px}.content-info .viewer-comment{padding:10px 0;border-top:1px solid #eee0e5}.content-info .viewer-comment-avatar{width:28px;height:28px;font-size:11px}.content-info .viewer-comment-body p{font-size:12px}

/* Full viewport modal */
.content-viewer{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,390px);background:#fff8fb;opacity:0;visibility:hidden;pointer-events:none;transform:scale(.995);transition:opacity .18s ease,transform .18s ease,visibility .18s;overscroll-behavior:contain}
.content-viewer.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.viewer-stage{position:relative;min-width:0;min-height:0;overflow:hidden;background:radial-gradient(circle at 50% 45%,#fff 0,#fff8fb 55%,#f9edf2 100%);display:grid;place-items:center;touch-action:none}
.viewer-topbar{position:absolute;left:16px;right:82px;top:14px;z-index:14;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none}.viewer-topbar>*{pointer-events:auto}
.viewer-title-wrap{min-width:0;display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:14px;background:rgba(255,255,255,.86);backdrop-filter:blur(14px);box-shadow:0 8px 25px rgba(85,47,61,.08)}.viewer-title-wrap b{max-width:32vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.viewer-title-wrap span{font-size:10px;color:#866877;white-space:nowrap}
.viewer-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.viewer-tools button,.viewer-tools a{border:1px solid #e9d8df;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);color:#5a3544;min-height:38px;padding:8px 12px;border-radius:99px;text-decoration:none;font-size:11px;font-weight:800;cursor:pointer;box-shadow:0 7px 18px rgba(82,45,58,.07)}.viewer-tools button:hover,.viewer-tools a:hover{background:#fff0f5;color:var(--p)}
.viewer-close{position:absolute;right:18px;top:14px;z-index:20;width:46px;height:46px;border:0;border-radius:50%;background:#25141c;color:#fff;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 10px 30px rgba(39,18,28,.24)}.viewer-close:hover{background:var(--p)}
.viewer-media-host{position:absolute;inset:72px 70px 48px 70px;display:grid;place-items:center;overflow:hidden;cursor:default}
.viewer-media-host.is-zoomed{cursor:grab}.viewer-media-host.is-dragging{cursor:grabbing}
.viewer-media-host img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:center center;will-change:transform;user-select:none;-webkit-user-drag:none;transition:transform .08s linear}
.viewer-media-host.is-dragging img{transition:none}
.viewer-media-host video{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;background:transparent;border-radius:12px;box-shadow:0 16px 50px rgba(82,49,61,.12)}
.viewer-media-host audio{width:min(620px,90%)}
.viewer-audio-full{width:min(620px,90%);padding:35px;border:1px solid #eedee5;border-radius:28px;background:#fff;box-shadow:0 20px 60px rgba(110,57,76,.12);text-align:center}.viewer-audio-full span{display:block;font-size:70px;color:var(--p);margin-bottom:18px}.viewer-audio-full b{display:block;margin-bottom:20px;overflow-wrap:anywhere}
.viewer-nav{position:absolute;top:50%;z-index:12;transform:translateY(-50%);width:48px;height:60px;border:1px solid #ead9e0;border-radius:18px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);font-size:34px;color:#704154;cursor:pointer;box-shadow:0 10px 30px rgba(68,37,49,.12)}.viewer-nav:hover{background:#fff;color:var(--p)}.viewer-prev{left:14px}.viewer-next{right:14px}.viewer-nav[hidden]{display:none}
.viewer-help{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);z-index:8;background:rgba(255,255,255,.76);backdrop-filter:blur(8px);padding:6px 10px;border-radius:99px;font-size:9px;color:#7d6170;white-space:nowrap}
.viewer-social-panel{height:100vh;overflow:auto;background:#fff;border-left:1px solid #ecdfe4;padding:22px 20px 34px;box-shadow:-12px 0 35px rgba(70,38,50,.06)}
.viewer-social-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.viewer-social-header h2{font-family:Georgia,serif;font-size:26px;line-height:1.05;margin:3px 0 0}.viewer-panel-close{display:none;width:36px;height:36px;border:0;border-radius:50%;background:#f8eaf0;font-size:23px}.viewer-caption{font-size:12px;color:#735966;margin:12px 0 16px}
.viewer-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:12px 0 18px;border-top:1px solid #f1e5ea;border-bottom:1px solid #f1e5ea}.viewer-actions button{min-width:0;border:1px solid #ecdce3;background:#fff;border-radius:16px;padding:9px 5px;color:#694452;font-size:17px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}.viewer-actions button:hover,.viewer-actions button.active{background:#fff0f5;color:var(--p);border-color:#f0b8cb}.viewer-actions button span{font-size:11px}.viewer-actions button small{font-size:8px;font-weight:800;letter-spacing:.03em}
.viewer-comments-section{padding-top:16px}.viewer-comments-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.viewer-comments-title h3{font-family:Georgia,serif;margin:0;font-size:20px}.viewer-comments-title span{font-size:9px;color:#9a7e8b}
.viewer-comment-form,.viewer-reply-form{margin:12px 0}.viewer-comment-form textarea,.viewer-reply-form textarea{width:100%;resize:vertical;border:1px solid #e8d8df;background:#fffafd;border-radius:14px;padding:10px;font:inherit;font-size:12px;outline:none}.viewer-comment-form textarea:focus,.viewer-reply-form textarea:focus{border-color:#ed8bad;box-shadow:0 0 0 3px #fff0f5}.viewer-reply-form>div{display:flex;gap:7px;align-items:center}.viewer-reply-form .reply-cancel{border:0;background:none;color:#8c7180;font-size:10px;cursor:pointer}
.viewer-comment-thread{margin-top:10px}.viewer-comment{display:flex;gap:9px;padding:12px 0;border-bottom:1px solid #f0e4e9}.viewer-comment.is-reply{padding:9px 0;border-bottom:0}.viewer-comment-avatar{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ffe2ec,#fff6f9);color:#c73869;font-weight:900;font-size:12px;border:1px solid #f2ceda}.viewer-comment-body{min-width:0;flex:1}.viewer-comment-body>b{font-size:11px}.viewer-comment-body>p{font-size:11px;line-height:1.45;margin:3px 0 5px;overflow-wrap:anywhere}.viewer-comment-meta{display:flex;align-items:center;gap:9px}.viewer-comment-meta time{font-size:8px;color:#9b7f8b}.viewer-comment-meta button{border:0;background:none;color:#c33d6b;font-size:9px;font-weight:800;cursor:pointer;padding:0}.viewer-replies{margin-left:4px;padding-left:11px;border-left:2px solid #f5dce5}.viewer-no-comments{padding:25px 12px;text-align:center;color:#9b7b89;font-size:11px}.viewer-login-comment{display:block;margin:13px 0;padding:12px;border-radius:14px;background:#fff1f5;color:#c43868;text-align:center;text-decoration:none;font-size:11px;font-weight:800}
.viewer-comment.pending-ui{opacity:.62}.viewer-comment.pending-ui:after{content:"Pending review";font-size:8px;color:#9b7f8b;align-self:center}

@media(max-width:1050px){.content-viewer{grid-template-columns:minmax(0,1fr) 330px}.viewer-topbar{right:74px}.viewer-media-host{inset:70px 58px 44px}.viewer-title-wrap b{max-width:24vw}}
@media(max-width:760px){
 .content-detail-media-v2{padding:10px!important}.content-media-collection{padding:7px}.media-gallery-v2.media-count-2,.media-gallery-v2.media-count-3,.media-gallery-v2.media-count-4,.media-gallery-v2.media-count-5,.media-gallery-v2.media-count-6{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.media-tile{border-radius:14px}.media-expand{width:36px;height:36px;right:8px;top:8px;font-size:18px}.media-carousel-card{flex-basis:min(78vw,430px)}
 .content-viewer{grid-template-columns:1fr;grid-template-rows:minmax(52vh,1fr) minmax(220px,42vh)}.viewer-stage{grid-row:1}.viewer-social-panel{grid-row:2;height:auto;border-left:0;border-top:1px solid #ecdfe4;padding:15px 14px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -12px 34px rgba(70,38,50,.07)}.viewer-social-header h2{font-size:20px}.viewer-panel-close{display:grid;place-items:center}.viewer-caption{display:none}.viewer-actions{grid-template-columns:repeat(4,1fr);padding:8px 0 12px}.viewer-media-host{inset:64px 42px 30px}.viewer-topbar{left:8px;right:58px;top:8px}.viewer-title-wrap{padding:7px 9px}.viewer-title-wrap b{max-width:36vw}.viewer-tools{gap:3px}.viewer-tools button,.viewer-tools a{min-height:34px;padding:7px 9px}.viewer-tools #viewerVideoFullscreen{max-width:92px;overflow:hidden;white-space:nowrap}.viewer-close{right:8px;top:8px;width:42px;height:42px}.viewer-nav{width:36px;height:52px;border-radius:13px;font-size:28px}.viewer-prev{left:4px}.viewer-next{right:4px}.viewer-help{display:none}.viewer-comments-section{padding-top:11px}.viewer-comment-thread{margin-top:4px}
}
@media(max-width:430px){.media-gallery-v2.media-count-2,.media-gallery-v2.media-count-3,.media-gallery-v2.media-count-4,.media-gallery-v2.media-count-5,.media-gallery-v2.media-count-6{grid-template-columns:1fr 1fr}.content-viewer{grid-template-rows:minmax(50vh,1fr) minmax(240px,44vh)}.viewer-title-wrap b{display:none}.viewer-tools #viewerZoomReset{display:none}.viewer-media-host{inset:58px 36px 24px}.viewer-social-panel{padding-left:11px;padding-right:11px}}

/* V2: the post/media card itself opens the fullscreen viewer. */
.media-tile[data-viewer-item]{cursor:zoom-in}
.media-tile[data-viewer-item]:focus-visible{outline:3px solid rgba(199,56,105,.38);outline-offset:3px}
.media-tile[data-viewer-item]>video{pointer-events:none}
.media-expand{display:none!important}
