/* CineFilm iOS presentation. References: Framework7 iOS theme, segmented controls,
   tab bars and safe areas (MIT project). Original scoped CSS, no framework runtime. */
:root{--ios-bg:#f2f2f7;--ios-surface:#fff;--ios-secondary:#e9e9ef;--ios-text:#17171b;--ios-muted:#6c6c75;--ios-line:#3c3c431f;--ios-blue:#007aff;--ios-tint:#007aff12;--ios-glass:#ffffffe0;--ios-shadow:0 12px 36px #17173212;--ios-font:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color-scheme:light}
@media(prefers-color-scheme:dark){:root:not([data-ios-theme=light]){--ios-bg:#000;--ios-surface:#1c1c1e;--ios-secondary:#2c2c2e;--ios-text:#f5f5f7;--ios-muted:#a4a4ad;--ios-line:#ffffff21;--ios-blue:#0a84ff;--ios-tint:#0a84ff24;--ios-glass:#1c1c1ee0;--ios-shadow:0 12px 36px #0005;color-scheme:dark}}
:root[data-ios-theme=dark]{--ios-bg:#000;--ios-surface:#1c1c1e;--ios-secondary:#2c2c2e;--ios-text:#f5f5f7;--ios-muted:#a4a4ad;--ios-line:#ffffff21;--ios-blue:#0a84ff;--ios-tint:#0a84ff24;--ios-glass:#1c1c1ee0;--ios-shadow:0 12px 36px #0005;color-scheme:dark}
html:has(.ios-cinefilm){background:var(--ios-bg);scroll-padding-bottom:110px}
body.ios-cinefilm{--bg:var(--ios-bg);--surface:var(--ios-surface);--muted:var(--ios-muted);--white:var(--ios-text);--accent:var(--ios-blue);--pink:var(--ios-blue);background:var(--ios-bg);background-image:none;color:var(--ios-text);font-family:var(--ios-font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}
.ios-cinefilm button,.ios-cinefilm input,.ios-cinefilm select,.ios-cinefilm textarea{font-family:inherit}
.ios-cinefilm button,.ios-cinefilm a{touch-action:manipulation}
.ios-cinefilm button:focus-visible,.ios-cinefilm a:focus-visible{outline:3px solid var(--ios-blue);outline-offset:3px}
.ios-cinefilm.home-compact .shell{max-width:1040px;padding:20px 20px calc(116px + env(safe-area-inset-bottom))}
.ios-cinefilm.home-compact .hero{padding:0 0 19px;max-width:none}
.ios-cinefilm.home-compact .brand-row{min-height:44px;gap:10px;align-items:center;margin:0 0 21px}
.ios-cinefilm.home-compact .brand{width:34px;height:34px;border-radius:10px;box-shadow:0 2px 6px #0001}
.ios-cinefilm.home-compact .wordmark{font-family:var(--ios-font);color:var(--ios-text);font-size:18px;font-weight:650;letter-spacing:-.5px;text-transform:none}
.ios-cinefilm .ios-scope{font-size:11px;font-weight:600;color:var(--ios-blue);background:var(--ios-tint);padding:5px 9px;border-radius:30px;margin-left:2px;white-space:nowrap}
.ios-cinefilm .home-menu-trigger{margin-left:auto;width:44px;height:44px;border:0;border-radius:50%;background:var(--ios-surface);color:var(--ios-blue);box-shadow:0 1px 5px #00000006}
.ios-cinefilm .home-menu-trigger svg{width:23px;height:23px;stroke-width:2}
.ios-cinefilm.home-compact .ios-page-title{position:static;clip:auto;width:auto;height:auto;overflow:visible;margin:0;font-size:34px;line-height:1.16;letter-spacing:-1.1px;color:var(--ios-text);font-weight:750}
.ios-cinefilm .ios-page-copy{color:var(--ios-muted);font-size:14px;line-height:1.5;margin:7px 0 0;letter-spacing:-.2px}
.ios-cinefilm.home-compact .search-panel{margin:0;padding:0 0 21px;background:none;border:0;box-shadow:none}
.ios-cinefilm.home-compact .search-box{min-height:46px;gap:10px;padding:0 13px;background:var(--ios-secondary);border:1px solid transparent;border-radius:13px;box-shadow:none;transition:box-shadow .15s,border-color .15s}
.ios-cinefilm.home-compact .search-box:focus-within{border-color:var(--ios-blue);box-shadow:0 0 0 3px var(--ios-tint)}
.ios-cinefilm.home-compact .search-box>svg{width:20px;height:20px;color:var(--ios-muted);flex-shrink:0}
.ios-cinefilm.home-compact #search{font-size:17px;line-height:1.35;padding:12px 0;color:var(--ios-text);letter-spacing:-.3px;min-width:0}
.ios-cinefilm.home-compact #search::placeholder{color:var(--ios-muted)}
.ios-cinefilm.home-compact #clear{min-width:32px;min-height:32px;font-size:22px;color:var(--ios-muted);background:none}
.ios-cinefilm.home-compact .filter-row{display:flex;gap:2px;padding:3px;margin:14px 0 0;border-radius:12px;background:var(--ios-secondary);overflow:visible}
.ios-cinefilm.home-compact .filter-row>.chip[data-filter]{flex:1;min-width:0;padding:10px 4px;min-height:38px;border:0;border-radius:9px;background:transparent;color:var(--ios-text);font-size:13px;font-weight:550;box-shadow:none}
.ios-cinefilm.home-compact .filter-row>.chip.active{background:var(--ios-surface);color:var(--ios-text);box-shadow:0 2px 5px #00000012,0 0 0 .5px #00000006;font-weight:650}
.ios-cinefilm.home-compact .results-heading{margin:0 0 16px;align-items:center;gap:12px;min-width:0}
.ios-cinefilm.home-compact .results-heading h2{color:var(--ios-text);font-size:22px;letter-spacing:-.5px;line-height:1.2;font-weight:720}
.ios-cinefilm.home-compact #count{color:var(--ios-muted);font-size:11px;line-height:1.3;padding:6px 9px;border-radius:20px;background:var(--ios-surface);white-space:nowrap}
.ios-cinefilm.home-compact .grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px 16px}
.ios-cinefilm.home-compact .card{min-width:0;border:0;background:none;color:var(--ios-text);box-shadow:none;padding:0;text-align:left}
.ios-cinefilm.home-compact .poster{border:0;border-radius:15px;box-shadow:0 4px 12px #00000012;overflow:hidden;background:var(--ios-secondary)}
.ios-cinefilm.home-compact .poster img{border-radius:0}
.ios-cinefilm.home-compact .card:hover .poster{transform:translateY(-2px);box-shadow:0 7px 20px #0002}
.ios-cinefilm.home-compact .card-title{margin-top:9px;font:600 12px/1.4 var(--ios-font);color:var(--ios-text);letter-spacing:-.15px;-webkit-line-clamp:2}
.ios-cinefilm.home-compact .badge{background:#16161bcc;color:#fff;border:1px solid #ffffff36;border-radius:5px;box-shadow:none;font:700 8px/1.2 var(--ios-font);padding:4px 5px;letter-spacing:.2px}
.ios-cinefilm.home-compact .more-row .reset,.ios-cinefilm.home-compact .empty .reset{background:var(--ios-tint);color:var(--ios-blue);border:0;border-radius:14px;min-height:46px;padding:12px 20px;font-size:15px;font-weight:600}
.ios-cinefilm.home-compact #shown,.ios-cinefilm.home-compact footer,.ios-cinefilm .empty p{color:var(--ios-muted)}
.ios-cinefilm .empty{background:var(--ios-surface);border:1px solid var(--ios-line);border-radius:22px;padding:30px 20px}
.ios-cinefilm .empty h3{color:var(--ios-text);font-size:19px}
.ios-cinefilm.home-compact footer{border-top:1px solid var(--ios-line);padding-top:22px;font-size:12px;margin-top:28px}
.ios-cinefilm.home-compact footer a{color:var(--ios-blue)}
.ios-cinefilm .home-bottom-nav{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));width:auto;max-width:540px;margin:0 auto;padding:5px;min-height:66px;background:var(--ios-glass);border:1px solid var(--ios-line);border-radius:29px;box-shadow:var(--ios-shadow),inset 0 1px 0 #ffffff25;backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);transform:none}
.ios-cinefilm .home-bottom-nav-inner{display:flex;justify-content:space-between;gap:3px;padding:0;max-width:none;margin:0}
.ios-cinefilm .home-nav-button{flex:1;min-width:0;min-height:56px;gap:4px;padding:7px 4px;border:0;border-radius:23px;color:var(--ios-muted);background:transparent;font-size:10px;font-weight:600;letter-spacing:-.1px}
.ios-cinefilm .home-nav-button svg{width:22px;height:22px;stroke-width:1.65}
.ios-cinefilm .home-nav-button.is-active{color:var(--ios-blue);background:var(--ios-tint)}
.ios-cinefilm .home-nav-button.is-active svg{stroke-width:2}
.ios-cinefilm .home-more-dialog,.ios-cinefilm dialog.cf-library,.ios-cinefilm dialog.series-alert-dialog{background:var(--ios-surface);color:var(--ios-text);border:1px solid var(--ios-line);border-radius:27px;box-shadow:0 24px 90px #0004;width:min(480px,calc(100% - 24px));padding:26px 22px;max-height:calc(100dvh - 32px)}
.ios-cinefilm dialog::backdrop{background:#0007;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.ios-cinefilm .home-more-heading h2{font-size:25px;color:var(--ios-text);letter-spacing:-.7px}
.ios-cinefilm .home-more-close,.ios-cinefilm .close-detail{background:var(--ios-secondary);color:var(--ios-muted);border:0;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1}
.ios-cinefilm .home-more-group{border-color:var(--ios-line);padding:14px 0}
.ios-cinefilm .home-more-group>h3{color:var(--ios-muted);font-size:11px;letter-spacing:.5px;text-transform:uppercase}
.ios-cinefilm .home-more-item{min-height:48px;border:0;background:transparent;border-radius:12px;padding:10px 6px;font-size:15px;color:var(--ios-text);gap:13px}
.ios-cinefilm .home-more-item:hover{background:var(--ios-secondary)}
.ios-cinefilm .home-more-item svg{color:var(--ios-blue);width:21px;height:21px}
.ios-cinefilm .home-more-note{background:var(--ios-bg);border:0;border-radius:16px;padding:15px}
.ios-cinefilm .home-more-note strong{color:var(--ios-text);font-size:12px}.ios-cinefilm .home-more-note p{color:var(--ios-muted);font-size:11px}
.ios-cinefilm .home-sort-slot .sort-row{color:var(--ios-muted);border-color:var(--ios-line)}
.ios-cinefilm .home-sort-slot select{background:var(--ios-secondary);border:0;border-radius:10px;color:var(--ios-text);font-size:14px;min-height:40px}
.ios-cinefilm #detail.film-detail{background:var(--ios-bg);border:1px solid var(--ios-line);border-radius:28px;box-shadow:0 30px 100px #0004;scrollbar-color:var(--ios-line) transparent}
.ios-cinefilm .film-hero{background:var(--ios-secondary);height:282px}
.ios-cinefilm .film-backdrop{opacity:.22;filter:blur(32px)}
.ios-cinefilm .film-hero:after{background:linear-gradient(180deg,transparent 20%,var(--ios-bg))}
.ios-cinefilm #detail .film-cover{width:150px;height:225px;border-radius:13px;box-shadow:0 12px 30px #0003}
.ios-cinefilm #detail .film-toolbar{top:14px;margin:0 16px}
.ios-cinefilm #detail #close-detail{color:var(--ios-blue);background:var(--ios-glass);border:1px solid var(--ios-line);min-height:42px;height:42px;padding:8px 15px 8px 9px;font:550 14px/1 var(--ios-font);box-shadow:0 2px 8px #0001;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.ios-cinefilm #detail .film-favorite{width:42px;height:42px;min-width:42px;background:var(--ios-glass);color:var(--ios-text);border-color:var(--ios-line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.ios-cinefilm #detail .film-body{padding:8px 24px 28px}
.ios-cinefilm #detail #detail-title{font:750 27px/1.18 var(--ios-font);letter-spacing:-.8px;color:var(--ios-text);text-transform:none}
.ios-cinefilm #detail #detail-languages{margin:14px 0 21px;color:var(--ios-muted);font-size:12px;gap:8px}
.ios-cinefilm .film-version{background:var(--ios-surface);color:var(--ios-muted);border:1px solid var(--ios-line);border-radius:8px;padding:6px 10px}
.ios-cinefilm #detail .film-story{border-color:var(--ios-line)}
.ios-cinefilm #detail .film-story summary,.ios-cinefilm #detail #detail-synopsis,.ios-cinefilm #detail .detail-label,.ios-cinefilm #detail .edition h3{color:var(--ios-muted);font-family:var(--ios-font)}
.ios-cinefilm #detail .film-multiple .edition{background:var(--ios-surface);border:1px solid var(--ios-line);border-radius:18px;padding:16px}
.ios-cinefilm .film-price-row{margin-bottom:14px;align-items:center}
.ios-cinefilm .film-price-row strong{font:750 29px/1.1 var(--ios-font);color:var(--ios-text);letter-spacing:-.8px}
.ios-cinefilm .film-price-row>span{font-size:11px;color:var(--ios-muted)}
.ios-cinefilm #detail .film-primary,.ios-cinefilm .cf-checkout-buy,.ios-cinefilm .cf-owned{background:var(--ios-blue)!important;color:#fff!important;border:0!important;border-radius:15px;min-height:52px;padding:15px 16px;font:650 16px/1.35 var(--ios-font);box-shadow:none}
.ios-cinefilm #detail .film-primary:not(:disabled):hover,.ios-cinefilm .cf-owned:not(:disabled):hover{background:var(--ios-blue)!important;filter:brightness(1.07)}
.ios-cinefilm #detail .film-primary:disabled{opacity:.48;cursor:default}
.ios-cinefilm #detail .preview{border:0;background:var(--ios-surface);color:var(--ios-blue);border-radius:14px;padding:13px;font-size:14px;min-height:46px}
.ios-cinefilm #detail .detail-note{font:400 12px/1.5 var(--ios-font);color:var(--ios-muted);margin-top:13px}
.ios-cinefilm #detail .extras-actions{gap:4px;margin-top:19px;padding-top:14px;border-top:1px solid var(--ios-line)}
.ios-cinefilm #detail .extras-actions .reset,.ios-cinefilm #detail .extras-actions .detail-post{color:var(--ios-blue);font-size:11px;min-height:40px;padding:9px 8px}
.ios-cinefilm #detail .extras-status,.ios-cinefilm #detail .detail-post{color:var(--ios-muted)}
.ios-cinefilm #detail .extras-related{border-color:var(--ios-line);margin-top:22px;padding-top:19px}
.ios-cinefilm #detail .extras-related h3{font-size:20px;color:var(--ios-text);letter-spacing:-.4px}
.ios-cinefilm #detail .extras-related-card img{border-radius:12px}.ios-cinefilm #detail .extras-related-card strong{font:550 11px/1.45 var(--ios-font);color:var(--ios-text)}
.ios-cinefilm #detail .series-alert-detail{color:var(--ios-blue);border:0;background:var(--ios-surface);font-size:13px;min-height:44px;border-radius:13px;padding:12px 16px}
.ios-cinefilm .cf-library>h2,.ios-cinefilm .cf-library-content>h2{color:var(--ios-text);font:750 24px/1.22 var(--ios-font);letter-spacing:-.6px;margin:8px 0 16px}
.ios-cinefilm .cf-library-content p,.ios-cinefilm .cf-library-content small{color:var(--ios-muted);font:400 14px/1.55 var(--ios-font)}
.ios-cinefilm .cf-library .edition-action{display:flex;justify-content:center;align-items:center;width:100%;min-height:52px;padding:15px 16px;border-radius:15px;font-size:15px;font-weight:650;white-space:normal;word-break:normal;text-align:center;margin:10px 0 0}
.ios-cinefilm .cf-library .cf-pix-qr{display:block;width:min(226px,67vw);height:auto;max-width:100%;margin:20px auto;background:white;padding:12px;border:1px solid var(--ios-line);border-radius:19px;box-shadow:0 2px 12px #00000008}
.ios-cinefilm .cf-library .cf-pix-code{width:100%;background:var(--ios-bg);border:1px solid var(--ios-line);border-radius:13px;color:var(--ios-text);font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;padding:12px;margin:0;resize:none}
.ios-cinefilm .cf-library .close-detail{position:absolute;right:15px;top:15px;min-height:34px;padding:0}
.ios-cinefilm .cf-library .cf-library-content>h2:first-child{padding-right:32px}
.ios-cinefilm .cf-library-content>p:last-child{font-size:12px;text-align:center;margin:15px 0 4px}
.ios-cinefilm .series-alert-detail,.ios-cinefilm .series-alert-open,.ios-cinefilm .extras-toolbar .chip{color:var(--ios-blue);background:var(--ios-tint);border-color:transparent}
.ios-cinefilm .series-alert-dialog h2,.ios-cinefilm .series-alert-dialog label{color:var(--ios-text)}
.ios-cinefilm .series-alert-dialog p{color:var(--ios-muted)}
.ios-cinefilm .series-alert-dialog input{background:var(--ios-bg);color:var(--ios-text);border:1px solid var(--ios-line);border-radius:12px;font-size:16px;min-height:46px}
@media(max-width:760px){.ios-cinefilm.home-compact .grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:21px 13px}}
@media(max-width:520px){
 .ios-cinefilm.home-compact .shell{padding:15px 16px calc(110px + env(safe-area-inset-bottom))}
 .ios-cinefilm.home-compact .brand-row{margin-bottom:17px}
 .ios-cinefilm.home-compact .hero{padding-bottom:18px}
 .ios-cinefilm.home-compact .ios-page-title{font-size:32px}
 .ios-cinefilm.home-compact .grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:21px 11px}
 .ios-cinefilm.home-compact .poster{border-radius:12px}
 .ios-cinefilm.home-compact .card-title{font-size:11px;line-height:1.4}
 .ios-cinefilm.home-compact .results-heading h2{font-size:21px}
 .ios-cinefilm.home-compact #count{font-size:10px;padding:5px 8px}
 .ios-cinefilm #detail.film-detail{margin:12px 0 0;top:0;width:100%;height:calc(100dvh - 12px);max-width:none;max-height:calc(100dvh - 12px);border:0;border-radius:26px 26px 0 0}
 .ios-cinefilm .film-hero{height:255px}
 .ios-cinefilm #detail .film-cover{width:140px;height:210px}
 .ios-cinefilm #detail .film-body{padding:8px 20px calc(26px + env(safe-area-inset-bottom))}
 .ios-cinefilm #detail #detail-title{font-size:25px}
 .ios-cinefilm dialog.cf-library,.ios-cinefilm .home-more-dialog,.ios-cinefilm dialog.series-alert-dialog{top:auto;bottom:max(12px,env(safe-area-inset-bottom));margin:0 auto;padding:27px 20px 23px;border-radius:28px}
 .ios-cinefilm dialog.cf-library:before,.ios-cinefilm .home-more-dialog:before,.ios-cinefilm dialog.series-alert-dialog:before{content:'';position:absolute;left:calc(50% - 17px);top:9px;width:34px;height:4px;border-radius:4px;background:var(--ios-line)}
}
@media(max-width:350px){.ios-cinefilm.home-compact .shell{padding-left:13px;padding-right:13px}.ios-cinefilm .ios-scope{font-size:10px;padding:5px 7px}.ios-cinefilm .film-hero{height:220px}.ios-cinefilm #detail .film-cover{width:120px;height:180px}.ios-cinefilm #detail #detail-title{font-size:23px}.ios-cinefilm #detail .film-body{padding-left:17px;padding-right:17px}.ios-cinefilm .home-nav-button{font-size:9px}}
@media(min-width:900px){.ios-cinefilm .home-bottom-nav{left:12px;right:12px;transform:none;border-bottom:1px solid var(--ios-line);border-radius:29px}.ios-cinefilm.home-compact .shell{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.ios-cinefilm *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@supports not (backdrop-filter:blur(1px)){.ios-cinefilm .home-bottom-nav,.ios-cinefilm #detail #close-detail,.ios-cinefilm #detail .film-favorite{background:var(--ios-surface)}}

/* Keep native sheets compact and scrollable on smaller iPhones. */
.ios-cinefilm .home-more-dialog,.ios-cinefilm dialog.cf-library,.ios-cinefilm dialog.series-alert-dialog{scrollbar-width:thin;scrollbar-color:var(--ios-line) transparent}
.ios-cinefilm .cf-library-content{display:flex;flex-direction:column;gap:0}
.ios-cinefilm .cf-library-content>h2{margin:5px 0 13px}
.ios-cinefilm .cf-library-content>p{margin:0 0 10px}
.ios-cinefilm .cf-library-content>p+h2{font-size:30px;margin:6px 0 0}
.ios-cinefilm .cf-library .cf-pix-qr{margin:18px auto 16px}
.ios-cinefilm .cf-library-content>small{margin-top:8px;text-align:center;font-size:11px}
.ios-cinefilm.home-compact .badge.new{background:var(--ios-blue);color:#fff;border-color:transparent}

.ios-cinefilm .cf-library .edition-action:not(.cf-owned){background:var(--ios-tint);color:var(--ios-blue);border:0}
