/* XalaFlix reference layout – dark aubergine and purple 2026 */
:root{--xala-bg:#100820;--xala-deep:#0f0721;--xala-card:#7d07bc;--xala-accent:#9100dc;--xala-text:#f8f4ff}
.xala-container{max-width:1200px;margin-inline:auto;padding-inline:16px}
.xala-site-header{position:sticky;top:0;z-index:110;height:72px;background:#10071f;border-bottom:1px solid rgba(134,66,191,.18);box-shadow:0 4px 14px #34134f66;color:white}
.xala-header-inner{height:100%;max-width:1220px;margin:0 auto;padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.xala-logo{font-family:"Nunito",sans-serif;font-size:31px;font-weight:1000;letter-spacing:-.095em;line-height:1;color:#a824ea;white-space:nowrap;transform:scaleX(.91);transform-origin:left center;text-shadow:0 0 1px #a22cf4}
.xala-logo:hover{color:#c457fa}
.xala-nav{height:100%;display:flex;align-items:stretch;gap:12px;flex:1;justify-content:center}
.xala-nav-link{display:flex;align-items:center;justify-content:center;padding:0 14px;position:relative;white-space:nowrap;background:none;border:0;text-decoration:none;color:white;font-size:12px;font-weight:900;transition:color .18s}
.xala-nav-link.active,.xala-nav-link:hover{color:#b735f7}
.xala-nav-link.active:after{content:"";position:absolute;bottom:0;left:10px;right:10px;height:3px;background:#9b06ea}
.xala-genre-group{position:relative;display:flex;align-items:stretch}
.xala-genre-trigger{height:100%;gap:7px}
.xala-genre-menu{position:absolute;top:calc(100% + 8px);left:-130px;width:min(620px,92vw);max-height:70vh;overflow-y:auto;scrollbar-color:#9a20d2 #160a28;background:#1c0e30;border:1px solid #5e2a85;border-radius:13px;padding:22px;box-shadow:0 25px 60px #08010be0}
.xala-genre-menu h3{font-size:13px;color:#d49cf8;font-weight:900;margin:3px 0 12px;text-transform:uppercase}
.xala-genre-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:17px}
.xala-genre-link{font-size:12px;color:#eee7fa;padding:9px 10px;border-radius:7px;background:rgba(255,255,255,.035);text-decoration:none;overflow-wrap:anywhere}
.xala-genre-link:hover{background:#7912b4;color:white}
.xala-header-actions{display:flex;align-items:center;gap:10px}
.xala-search-button{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:white;background:#382059}
.xala-search-button svg{height:19px;width:19px}
.xala-watchlist-button{height:38px;padding:0 15px;display:flex;align-items:center;gap:9px;border-radius:5px;background:linear-gradient(100deg,#b711ec,#7600c4);font-size:12px;font-weight:900;color:#fff;white-space:nowrap}
.xala-watchlist-button:first-letter{font-size:18px}
.xala-mobile-toggle,.xala-mobile-watchlist{display:none}
.xala-home{background:#100820;min-height:75vh;padding-bottom:0}
.xala-hero{height:clamp(350px,37vw,540px);background:#100820;position:relative;overflow:hidden}
.xala-hero-inner{max-width:1200px;margin:auto;height:100%;position:relative;overflow:hidden}
.xala-hero-inner:before,.xala-hero-inner:after{content:"";position:absolute;top:0;bottom:0;width:13%;z-index:3;pointer-events:none}
.xala-hero-inner:before{left:0;background:linear-gradient(90deg,#100820,transparent)}
.xala-hero-inner:after{right:0;background:linear-gradient(270deg,#100820,transparent)}
.xala-hero-image{height:100%;width:100%;object-fit:cover;display:block;object-position:center 45%}
.xala-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,#100820 0%,rgba(16,8,32,.20) 34%,transparent 73%),linear-gradient(90deg,rgba(16,8,32,.43),transparent 70%)}
.xala-hero-copy{position:absolute;bottom:39px;left:6%;z-index:4;max-width:600px;text-shadow:0 2px 8px #0009}
.xala-hero-eyebrow{font-size:11px;font-weight:900;letter-spacing:.12em;color:#deb4ff}
.xala-hero-copy h1{font-weight:1000;font-size:clamp(28px,3.6vw,57px);line-height:1.1;max-width:570px;text-transform:uppercase;margin:6px 0 10px}
.xala-hero-copy p{font-size:13px;max-width:440px;line-height:1.55;color:#f0e8f5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-bottom:20px}
.xala-primary-button{background:#8f0bd1;padding:11px 18px;border:0;border-radius:4px;color:white;font-size:12px;font-weight:1000;transition:background .15s,transform .15s;box-shadow:0 4px 15px #10082066}
.xala-primary-button:hover{background:#a919f5;transform:translateY(-2px)}
.xala-hero-arrow{position:absolute;top:49%;transform:translateY(-50%);z-index:5;display:grid;place-items:center;border-radius:50%;height:36px;width:36px;background:#fff;color:#050505;font:30px/1 Arial,sans-serif;border:0;box-shadow:0 5px 15px #0004}
.xala-hero-arrow.prev{left:5%}.xala-hero-arrow.next{right:5%}
.xala-hero-dots{position:absolute;bottom:11px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:8px}
.xala-hero-dots button{width:11px;height:5px;border-radius:5px;border:0;background:#afa0bc7d}.xala-hero-dots button.active{width:29px;background:#9f15ea}
.xala-hero-placeholder{display:flex;align-items:center;justify-content:center;height:100%;font-weight:900;font-size:24px;color:#c094df}
.xala-rail-section{padding-top:19px;padding-bottom:13px}
.xala-rail-head{display:flex;align-items:center;justify-content:space-between;margin:0 1px 20px;gap:18px}
.xala-rail-head h2{font-size:19px;font-weight:1000;text-transform:uppercase;letter-spacing:-.025em;color:white}
.xala-see-all{font-size:14px;text-transform:none;font-weight:800;color:#bd69f3;text-decoration:none;white-space:nowrap;display:flex;align-items:center;gap:8px}
.xala-see-all span{font-size:22px;line-height:12px}.xala-see-all:hover{text-decoration:underline}
.xala-carousel-wrap{position:relative}
.xala-carousel{display:flex;gap:18px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;padding-bottom:4px;scroll-behavior:smooth}
.xala-carousel::-webkit-scrollbar{display:none}
.xala-poster-card{flex:0 0 calc((100% - 6*18px)/7);min-width:0;scroll-snap-align:start;display:block;color:white;text-decoration:none;transition:transform .2s ease;overflow:visible}
.xala-poster-card:hover{transform:translateY(-3px)}
.xala-card-image{width:100%;aspect-ratio:2/3;overflow:hidden;background:#2d184d;border-radius:5px 5px 0 0}
.xala-card-image img{width:100%;height:100%;object-fit:cover}
.xala-card-placeholder{height:100%;display:grid;place-items:center;color:#dab0ff;font-weight:900}
.xala-card-name{display:block;min-height:31px;background:#8200c3;border-radius:0 0 3px 3px;text-align:center;font-weight:900;font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:31px;padding:0 7px}
.xala-carousel-arrow{position:absolute;z-index:9;top:47%;transform:translateY(-50%);height:34px;width:34px;border-radius:50%;border:0;background:#970bd8;color:white;font:34px/1 Arial,sans-serif;display:grid;place-items:center;box-shadow:0 3px 16px #08001299}
.xala-carousel-arrow.left{left:4px}.xala-carousel-arrow.right{right:4px}
.xala-home-actions{padding:44px 0 53px}
.xala-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px}
.xala-action-tile{border-radius:17px;background:linear-gradient(105deg,#6300a3,#8303bd);min-height:82px;display:flex;align-items:center;gap:15px;padding:17px 22px;color:white;text-decoration:none;text-align:left;border:0;width:100%;transition:transform .2s,box-shadow .2s}
.xala-action-tile:hover{transform:translateY(-3px);box-shadow:0 15px 25px #0005}
.xala-action-emoji{font-size:40px;line-height:1}
.xala-action-tile strong{display:block;font-size:14px;font-weight:900;line-height:1.45}
.xala-action-tile small{display:block;margin-top:4px;color:#dfc3f1;font-size:12px;line-height:1.3}
.xala-footer{background:#1a1030 url('/images/xalaflix-world-dots.png') center 80%/auto 80% no-repeat;position:relative;min-height:235px;color:#fff;border-top:1px solid #49306455}
.xala-footer-inner{position:relative;padding-block:45px 44px}
.xala-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:25px}
.xala-footer-links a{font-size:12px;font-weight:900;color:#fff;text-decoration:none;white-space:nowrap}
.xala-footer-links a:hover{text-decoration:underline;color:#c18bfa}
.xala-footer-middle{display:flex;align-items:center;justify-content:space-between;gap:22px;font-weight:900;font-size:12px}
.xala-footer-logo{font-size:20px;white-space:nowrap;color:white;font-weight:1000;text-decoration:none}
.xala-footer-logo:hover{color:#c48df0}
.xala-footer-disclaimer{font-size:11px;font-style:italic;line-height:1.85;color:#e8dcee;max-width:850px;margin:27px 0 0}
.xala-back-to-top{position:absolute;right:2px;bottom:0;width:37px;height:37px;border-radius:50%;border:0;background:#3c3452;color:#b21cf0;font-size:29px;font-weight:1000}
@media(max-width:1000px){.xala-nav{gap:0}.xala-nav-link{padding:0 9px}.xala-logo{font-size:26px}.xala-poster-card{flex-basis:calc((100% - 4*14px)/5)}.xala-carousel{gap:14px}.xala-actions-grid{gap:20px}}
@media(max-width:750px){
 .xala-site-header{height:66px}.xala-header-inner{padding-inline:16px}.xala-logo{font-size:26px}
 .xala-mobile-toggle{display:grid;place-items:center;background:#382a43;border:1px solid #725684;color:white;border-radius:10px;width:43px;height:43px;font-size:23px}
 .xala-watchlist-button{display:none}.xala-nav{display:none;position:absolute;top:66px;left:0;right:0;background:#1a0a30;padding:12px 14px 18px;height:auto;flex-direction:column;border-bottom:1px solid #69358a;box-shadow:0 16px 25px #090315aa;max-height:80vh;overflow-y:auto;align-items:stretch}
 .xala-nav.open{display:flex}.xala-nav-link{justify-content:flex-start;min-height:44px;padding:0 13px}.xala-nav-link.active:after{left:0;bottom:7px;width:3px;right:auto;top:7px;height:auto}
 .xala-genre-group{display:block}.xala-genre-trigger{width:100%;height:44px}.xala-genre-menu{position:static;width:100%;max-height:41vh;padding:12px;margin:4px 0 10px;box-shadow:none}
 .xala-genre-list{grid-template-columns:repeat(2,minmax(0,1fr))}.xala-mobile-watchlist{display:flex}
 .xala-hero{height:380px}.xala-hero-copy{left:7%;bottom:28px;right:8%}.xala-hero-copy h1{font-size:clamp(25px,6vw,40px)}.xala-hero-copy p{display:none}
 .xala-hero-arrow.prev{left:3%}.xala-hero-arrow.next{right:3%}.xala-hero-arrow{top:42%;height:32px;width:32px;font-size:26px}
 .xala-rail-section{padding-top:16px}.xala-rail-head h2{font-size:17px}.xala-poster-card{flex-basis:calc((100% - 2*12px)/3)}.xala-carousel{gap:12px}
 .xala-card-name{font-size:10px}.xala-actions-grid{grid-template-columns:1fr;gap:14px}
 .xala-footer-inner{padding-block:32px}.xala-footer-links{gap:12px}.xala-footer-middle{align-items:flex-start;flex-direction:column}
 .xala-footer-disclaimer{font-size:10px}.xala-footer-logo{font-size:18px}.xala-back-to-top{right:20px;bottom:12px}
}
@media(max-width:430px){.xala-poster-card{flex-basis:calc((100% - 12px)/2)}.xala-rail-head h2{font-size:15px}.xala-hero{height:310px}}
@media(prefers-reduced-motion:reduce){.xala-carousel,.xala-action-tile,.xala-poster-card{scroll-behavior:auto;transition:none}}

/* XalaFlix v3 – ranked carousel, new releases, header search */
.xala-logo{display:flex;align-items:center;transform:none;text-shadow:none;max-width:230px;min-width:155px}
.xala-logo img{height:37px;width:auto;max-width:225px;object-fit:contain;object-position:left center;display:block}
.xala-chevron{display:inline-block;flex:none;margin-left:1px;transition:transform .18s ease}
.xala-chevron.up{transform:rotate(180deg)}
.xala-genre-trigger{display:flex;align-items:center;justify-content:center}
.xala-see-all{font-size:13px;font-weight:800;letter-spacing:0;gap:4px;color:#d095fb;transition:color .2s}
.xala-see-all svg{flex:none;transition:transform .2s}
.xala-see-all:hover{color:white;text-decoration:none}
.xala-see-all:hover svg{transform:translateX(3px)}
.xala-poster-card.is-ranked{position:relative;padding-left:17px;overflow:visible}
.xala-poster-card.is-ranked .xala-card-image,.xala-poster-card.is-ranked .xala-card-name{position:relative;z-index:1}
.xala-rail-rank{position:absolute;left:-5px;bottom:24px;z-index:3;color:#fff;font-size:clamp(55px,6.2vw,94px);line-height:1;font-weight:1000;letter-spacing:-.12em;-webkit-text-stroke:2px #1e0e35;text-shadow:2px 3px 8px #0d0622bf;pointer-events:none;font-family:"Nunito",sans-serif}
.xala-new-section{padding-top:29px;padding-bottom:12px}
.xala-new-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:20px 18px}
.xala-new-card{min-width:0;width:100%;display:block}
.xala-new-card .xala-card-name{line-height:1.4;min-height:36px;display:flex;align-items:center;justify-content:center;font-size:11px;white-space:normal;max-height:36px;overflow:hidden;padding:3px 8px}
.xala-search-button{border:0;cursor:pointer}
body.xala-search-open{overflow:hidden}
.xala-search-backdrop{position:fixed;inset:0;background:rgba(5,2,12,.83);backdrop-filter:blur(7px);z-index:1000;padding:clamp(40px,8vh,110px) 18px 20px;display:flex;justify-content:center;align-items:flex-start;overflow-y:auto}
.xala-search-modal{background:#1c0d30;border:1px solid #6b3295;border-radius:15px;width:min(720px,100%);padding:24px;box-shadow:0 24px 80px #000b;color:#fff}
.xala-search-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}
.xala-search-top h2{font-size:21px;font-weight:1000}
.xala-search-close{font-size:29px;line-height:1;cursor:pointer;background:transparent;color:#ddd;border:0;width:35px;height:35px;border-radius:50%}
.xala-search-close:hover{background:#ffffff15}
.xala-search-form{display:flex;gap:9px}
.xala-search-form input{flex:1;min-width:0;background:#120823;border:1px solid #714798;border-radius:9px;padding:13px 14px;outline:none;color:#fff;font-size:15px}
.xala-search-form input:focus{border-color:#b75afa;box-shadow:0 0 0 3px #8b11d644}
.xala-search-form button{color:white;background:#8700cc;border:0;border-radius:9px;padding:0 17px;font-weight:900;cursor:pointer}
.xala-search-form button:hover{background:#a41aec}
.xala-search-hint{font-size:13px;color:#c7b0d6;padding:20px 2px 0}
.xala-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px;max-height:min(60vh,470px);overflow:auto}
.xala-search-result{display:flex;align-items:center;gap:11px;background:#2b1942;border:1px solid transparent;color:#fff;text-decoration:none;border-radius:9px;padding:9px}
.xala-search-result:hover{border-color:#ac47f2;background:#381d58}
.xala-search-result img,.xala-search-no-image{width:48px;height:67px;flex:none;object-fit:cover;border-radius:5px}
.xala-search-no-image{display:grid;place-items:center;background:#180a2e}
.xala-search-result-text{min-width:0;display:flex;flex-direction:column;gap:5px}
.xala-search-result-text strong{font-size:13px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xala-search-result-text small{font-size:12px;color:#c5acd7}
@media(max-width:1000px){.xala-new-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.xala-rail-rank{font-size:74px}}
@media(max-width:750px){.xala-logo{min-width:0;max-width:180px}.xala-logo img{height:31px;max-width:180px}.xala-new-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 11px}.xala-rail-rank{font-size:67px}.xala-search-modal{padding:18px}.xala-search-top h2{font-size:17px}.xala-search-results{grid-template-columns:1fr}}
@media(max-width:420px){.xala-logo img{height:26px;max-width:140px}.xala-new-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 8px}.xala-rail-rank{font-size:58px;-webkit-text-stroke:1.6px #1e0e35}.xala-search-form button{padding:0 10px;font-size:12px}.xala-search-form input{font-size:13px}}
