/* Movies-Vibe 9 — responsive polish layered on top of the existing app. */
:root{--mv-accent:#c7a5ff;--mv-ink:#f7f3ff;--mv-panel:#141827;--mv-line:rgba(204,195,245,.12)}
html{overflow-x:clip;background:#070a12}body{overflow-x:clip;background:radial-gradient(ellipse at 88% 0%,rgba(115,72,184,.12),transparent 40%),#090c14;color:var(--mv-ink)}
*,*::before,*::after{box-sizing:border-box}a,button,input,textarea,select{outline-offset:3px}button{cursor:pointer}button:disabled{opacity:.52;cursor:progress}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #d5adff;outline-offset:3px}
.movie-cover,.art,.hero-art{overflow:hidden}.movie-card{min-width:0;overflow:hidden;contain:layout style}.movie-card:hover .art img{transform:scale(1.055)}.movie-card .art img{transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.movie-copy{min-width:0}.movie-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.brand-emblem{display:inline-flex;flex:none;align-items:center;justify-content:center;background:linear-gradient(145deg,#32235e,#171326);border:1px solid #9277d12f;border-radius:14px;overflow:hidden;box-shadow:0 8px 20px #09050f77}.brand-emblem img{display:block;object-fit:cover}
.genre-strip{display:flex;align-items:center;gap:9px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;padding-block:10px 16px;max-width:100%;min-width:0}.genre-strip::-webkit-scrollbar{display:none}
.genre-strip .chip{border:1px solid transparent;background:linear-gradient(#1c2030,#1c2030) padding-box,linear-gradient(110deg,#9d6edb50,#566ed930) border-box;color:#e9defc;white-space:nowrap;box-shadow:inset 0 1px #fff1;transition:transform .2s,background .2s,color .2s}.genre-strip .chip:hover,.genre-strip .chip.chip-active{background:linear-gradient(125deg,#ceafff,#9b83fc);color:#15101d;box-shadow:0 9px 24px #9170fb30}
.shelf-head h2,.page-heading h1{letter-spacing:-.03em}.panel,.community-card,.comment-section{background:linear-gradient(145deg,#181e30,#111624);border:1px solid var(--mv-line)!important;box-shadow:0 12px 45px #00000024}
.comment-section{overflow:hidden}.comment-form textarea,.stack-form textarea{width:100%;border:1px solid #ffffff18;background:#0b0f1a;border-radius:16px;padding:14px 16px;line-height:1.6;color:#f6f2fc;resize:vertical}
.comment-thread9{padding:9px 0;border-bottom:1px solid #ffffff0d}.comment-thread9:last-child{border-bottom:0}.comment-item{display:flex;gap:12px;padding:12px 4px;min-width:0}.comment-item .comment-content9{min-width:0;flex:1}.comment-header9{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.comment-header9 small{font-size:12px;color:#929bb2}.comment-content9 p{margin:9px 0;overflow-wrap:anywhere;line-height:1.6}.comment-actions9{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:7px}.comment-action9{border:1px solid #ffffff14;background:#1b2133;border-radius:999px;padding:6px 12px;display:inline-flex;align-items:center;gap:7px;color:#ccd1e1;font-size:12px;min-height:32px}.comment-action9:hover{color:white;background:#29324c}.comment-action9.liked{background:#402640;color:#ff9db7;border-color:#f36bb038}.comment-reply9{margin-left:44px;padding-left:14px;border-left:2px solid #a98cff55}.comment-reply9 .comment-avatar{width:33px;height:33px}
.moderation-list9{display:grid;gap:14px;margin-top:20px}.moderation-card9{padding:20px 24px}.moderation-card9 p{white-space:pre-wrap;overflow-wrap:anywhere}.moderation-card9 small{color:#acb1c5}.moderation-card9 h3{font-size:16px;margin:9px 0}.moderation-card9 button{min-height:40px}
.feed-finished9{margin:36px 0;color:#b3b9ce;text-align:center}.actors-grid8 .cast-person{background:transparent;border:0;text-align:center}.actors-grid8 .cast-avatar{background:#171e30;box-shadow:0 10px 30px #0006;overflow:hidden}.actors-grid8 .cast-avatar img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.actors-grid8 .cast-person:hover img{transform:scale(1.05)}
.search-voice{touch-action:manipulation}.search-voice:focus-visible{outline:2px solid #ceadff}
/* Keep the player chrome owned by Movies-Vibe, not a provider's iframe. */
.player-shell.cinema-fullview{overscroll-behavior:contain;touch-action:pan-y;background:#000}.player-shell.cinema-fullview .player-cinema-controls{padding:12px max(14px,env(safe-area-inset-right)) 12px max(14px,env(safe-area-inset-left));background:linear-gradient(180deg,rgba(4,3,12,.93),rgba(4,3,12,.4) 70%,transparent);min-height:76px;gap:18px}.player-cinema-controls span{display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:.01em;max-width:calc(100% - 65px)}.player-cinema-controls button{flex:none;display:grid;place-items:center;width:45px;height:45px;background:linear-gradient(140deg,#31284bde,#1e2134ed);border:1px solid #ffffff24;box-shadow:0 7px 25px #0007}.player-cinema-controls button:hover{background:#48375f}
#media-target{background:#000;height:100%;min-height:0}.player-shell .player-media iframe{background:#000;display:block;border:0;max-width:100%}.player-shell:not(.cinema-fullview) .player-cinema-controls{display:none}.gesture8{width:24px;z-index:21}.gesture8:active{background:#ffffff18}
.player-loading{pointer-events:none}.toast{overflow-wrap:anywhere}.load-wrap{text-align:center;margin:24px 0 50px}
.policy8{border:1px solid #70628e!important;background:linear-gradient(140deg,#20243b,#101420);box-shadow:0 30px 130px #000c}.policy8 h2{letter-spacing:-.035em}.policy-copy8{border-radius:12px;background:#090d1b80;padding:15px;scrollbar-color:#67588a transparent}.confirm8{background:#191d2e}
@media(max-width:900px){.comment-reply9{margin-left:25px}.moderation-card9{padding:15px 18px}}
@media(max-width:760px){.page-heading h1{font-size:clamp(27px,7vw,40px)}.genre-strip .chip{padding:9px 14px}.player-shell.expanded:not(.cinema-fullview){width:100%;aspect-ratio:1/1}.player-shell.expanded:not(.cinema-fullview) .player-media{aspect-ratio:1/1!important}.comment-section{margin-inline:0;padding:16px 13px}.comment-item{gap:9px}.comment-reply9{margin-left:17px;padding-left:10px}.player-cinema-controls span{font-size:12px;line-height:1.3}.policy8{max-height:94dvh}.policy-copy8{max-height:65dvh}.actors-grid8{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cast-person b{font-size:12px;line-height:1.35}}
@media(prefers-reduced-motion:reduce){.movie-card .art img,.actors-grid8 .cast-avatar img{transition:none}}
.delete-phrase9{display:block;width:100%;margin:10px 0 18px;padding:11px 14px;border:1px solid #ab6d9e;background:#0b101d;border-radius:11px;color:#fff}.confirm8 .btn-danger:disabled{opacity:.45;cursor:not-allowed}
