/* Final responsive rules, shared by public pages and administration. */
html{width:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:24px}body{min-width:0}main{width:100%}button,a,input,select,textarea{touch-action:manipulation}button,.button,.secondary{white-space:normal;overflow-wrap:anywhere}input,select,textarea{min-width:0}textarea{resize:vertical}img{height:auto}.cover img,.watch-poster,.cinema-backdrop,.hero-art,.spotlight-poster img{height:100%}.watch-poster{height:auto}.section-heading{flex-wrap:wrap}.section-heading>div{min-width:0;flex:1 1 180px}.section-heading>a{flex:0 1 auto}.controls>label{flex:1 1 160px}.controls input:not([type=checkbox]):not([type=radio]),.controls select{width:100%}.controls>button,.controls>.secondary{align-self:end}.form-grid>*{min-width:0}.table-wrap{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#516443 #15181c;scrollbar-width:thin}.table-wrap table{min-width:560px}.table-wrap th,.table-wrap td{vertical-align:top}.table-wrap td:first-child{min-width:150px;max-width:320px}.table-wrap td:last-child a{display:inline-flex;min-height:44px;align-items:center;padding:6px}.table-wrap td form{margin:3px}.admin-main>.search{width:100%}.admin-main>.search input{flex:1;width:auto;min-width:0}.login{width:min(450px,100%)}.job-actions{flex-wrap:wrap}.job-actions>*{max-width:100%}.watch-player{min-height:0;aspect-ratio:16/9}.watch-player iframe{height:100%;width:100%;object-fit:contain}.season-episode-list{scrollbar-gutter:stable}.member-item-actions button{min-height:44px;font-size:12px}.card-favorite{width:44px;height:44px;min-height:44px}.chips a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.cinema-navigation .slide-controls button{min-width:44px;min-height:44px}.cinema-navigation .slide-dots button{position:relative;height:44px;min-height:44px;background:transparent}.cinema-navigation .slide-dots button:before{content:"";position:absolute;left:0;right:0;top:20px;height:4px;border-radius:5px;background:#ffffff40}.cinema-navigation .slide-dots button[aria-pressed=true]{background:transparent}.cinema-navigation .slide-dots button[aria-pressed=true]:before{background:var(--accent)}footer{flex-wrap:wrap}footer p{min-width:0;line-height:1.7}.auth-options{flex-wrap:nowrap}.account-card{margin-inline:auto}.member-main .password-field input{width:0;flex:1 1 0%}
@media(min-width:1600px){.grid{grid-template-columns:repeat(6,minmax(0,1fr))}.member-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1100px){body.home-page>header{position:relative;min-height:0;background:#0c0e10}.home-page .cinema-caption{top:48%}body>header{gap:16px}body>header>.search{flex:1 1 230px}body>header>.search input{flex:1;width:100%;min-width:0}body>header>.member-nav{margin-left:auto}.cinema-hero{height:590px}.cinema-actions{flex-wrap:wrap}.admin-main{padding:28px 4%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){body>header{display:grid;grid-template-columns:1fr auto;padding:18px 5%;gap:14px}body>header>.brand{grid-column:1;grid-row:1}body>header>.member-nav{grid-column:2;grid-row:1;margin:0;font-size:13px;padding:12px}body>header>.search{grid-column:1/-1;grid-row:2;width:100%;margin:0}body>header>.search input{font-size:16px;min-height:46px}body>header>nav{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible;padding:0}body>header>nav a{font-size:13px;white-space:normal;text-align:center;display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 5px;background:#ffffff04;border:1px solid #ffffff12;border-radius:7px}body>header>nav a.active{color:var(--accent);border-color:#b7f34a55;background:#b7f34a0a}.admin-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);padding:14px 5%}.sidebar nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:4px 0 10px}.sidebar a{flex-shrink:0;min-height:44px;display:flex;align-items:center;font-size:13px;white-space:nowrap}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.grid,.home-grid,.member-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.season-picker-top{display:block}.season-picker-top label{min-width:0;width:100%;margin-top:18px}.season-episode-list{grid-template-columns:repeat(2,minmax(0,1fr))}.episode-arrows{flex-wrap:wrap}.account-card{max-width:530px}.member-main>header{flex-wrap:wrap}.cinema-caption h1{font-size:clamp(32px,6vw,52px)}}
@media(max-width:600px){main,.admin-main{padding-inline:4.5%}.grid,.home-grid,.member-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.cinema-hero{height:auto;min-height:510px;margin-bottom:25px}.cinema-stage{position:relative}.cinema-slide{position:relative;min-height:510px;padding:70px 6% 110px}.cinema-caption,.home-page .cinema-caption{position:relative;left:auto;top:auto;width:100%;transform:none;animation:none}.cinema-caption h1{font-size:clamp(29px,8vw,45px);line-height:1.12;letter-spacing:-.8px;margin-bottom:18px}.cinema-caption>p{font-size:14px;line-height:1.7;-webkit-line-clamp:3}.cinema-kicker{flex-wrap:wrap;font-size:11px;gap:9px}.cinema-kicker>span:last-child{font-size:9px;letter-spacing:1px}.cinema-actions{gap:10px;align-items:stretch}.cinema-actions>a,.cinema-actions>.favorite-button{font-size:12px;min-height:48px;padding:12px 16px;flex:1 1 135px}.cinema-actions .favorite-button span{font-size:11px}.cinema-navigation{bottom:24px;left:6%;width:88%;transform:none;gap:12px}.cinema-signature{display:none}.cinema-navigation .slide-dots{position:static;transform:none;gap:8px;flex-wrap:wrap}.cinema-navigation .slide-controls{flex-shrink:0}.catalog-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.catalog-counts a{padding:8px 9px;font-size:12px;line-height:1.5}.catalog-counts strong{font-size:clamp(20px,5vw,27px);display:block;overflow-wrap:anywhere}.section-heading{align-items:center;gap:12px;margin:28px 0 20px}.section-heading h2,.home-shelf h2{font-size:24px;line-height:1.2}.section-heading .eyebrow,.home-shelf .eyebrow{font-size:10px;letter-spacing:1.4px}.home-shelf .section-heading .secondary,.section-heading .secondary{font-size:12px;padding:11px 13px;min-height:44px;white-space:normal}.card h3{font-size:14px;line-height:1.5}.card p{font-size:12px}.card-favorite{top:7px;right:7px;width:44px;height:44px;min-height:44px}.cover small{font-size:9px;max-width:calc(100% - 65px)}.chips{gap:8px}.chips a{font-size:13px;padding:10px 14px}.watch-intro{align-items:flex-start;gap:14px}.watch-intro h1{font-size:clamp(22px,6vw,30px)}.watch-meta{font-size:12px}.watch-player{min-height:0;aspect-ratio:16/9}.watch-player p{font-size:14px;padding:16px}.watch-synopsis p{font-size:15px;line-height:1.8}.episode-panel{padding:20px 16px}.playing-episode{display:block}.playing-episode>span{font-size:14px;line-height:1.7}.playing-episode .button{display:flex;width:100%;white-space:normal;min-height:48px;font-size:14px;margin-top:14px;align-items:center;justify-content:center}.season-episode-list{grid-template-columns:1fr;max-height:none;overflow:visible;padding-right:0}.season-episode span{font-size:14px}.season-episode{min-height:60px}.episode-panel .muted,.episode-panel .episode-credit{font-size:12px}.season-picker-top label{font-size:14px}.episode-picker label{font-size:14px;flex:1 1 100%;width:100%}.episode-picker button{flex:1 1 100%;font-size:15px}.controls{align-items:stretch}.controls>label{flex-basis:100%;width:100%;font-size:14px}.controls>button,.controls>.secondary{flex:1 1 140px;text-align:center;font-size:14px;min-height:48px}.controls input[type=number]{width:100%}input,select,textarea{font-size:16px;min-height:48px}input[type=checkbox],input[type=radio]{min-height:0;width:20px;height:20px}.admin header{display:flex;flex-wrap:wrap}.admin-main h1{font-size:30px}.admin-main h2{font-size:24px;line-height:1.3}.admin-main .muted,.job .status{font-size:14px}.job-title .badge{font-size:13px}.admin-main .panel{padding:20px 16px}.admin-main .panel.table-wrap{padding:12px}.stat{padding:18px 14px}.stat strong{font-size:30px}.stat .muted{font-size:13px}.member-tabs{display:flex;flex-wrap:wrap}.member-tabs a,.member-tabs a:last-child{flex:1 1 140px;min-height:48px;font-size:13px;text-align:center;padding:14px 10px}.member-item-actions{display:grid;grid-template-columns:1fr}.member-item-actions button{font-size:13px}.resume-link{font-size:13px;min-height:44px;padding:13px 8px}.member-logout{grid-column:1/-1;width:100%;margin:0}.member-logout button{width:100%;font-size:14px}.member-main .empty p{font-size:14px}.account-card{padding:26px 18px}footer{align-items:flex-start;gap:14px}footer p{flex:1 1 100%;font-size:13px;margin:0}.respectful-ad{max-width:100%;overflow-x:auto}}
@media(max-width:360px){body>header{grid-template-columns:1fr;gap:12px}body>header>.member-nav{grid-column:1;grid-row:2;width:100%;text-align:center}body>header>.search{grid-row:3}body>header>nav{grid-row:4;grid-template-columns:repeat(2,minmax(0,1fr))}.cinema-slide{padding-top:45px;padding-bottom:115px}.cinema-actions>a,.cinema-actions>.favorite-button{flex-basis:100%}.cinema-navigation .slide-dots{gap:5px}.cinema-navigation .slide-controls{gap:4px}.cinema-navigation .slide-controls button{width:44px}.catalog-counts a{font-size:11px;padding-inline:7px}.stats{grid-template-columns:1fr}.auth-options a{font-size:16px}.watch-poster{width:45px}.section-heading>a{width:100%;text-align:center}}
@media(max-height:520px) and (orientation:landscape){.cinema-hero{height:auto;min-height:400px}.cinema-stage{position:relative}.cinema-slide{position:relative;min-height:400px;padding:45px 8% 95px}.cinema-caption,.home-page .cinema-caption{position:relative;left:auto;top:auto;width:100%;transform:none}.cinema-caption h1{font-size:34px}.cinema-caption>p{-webkit-line-clamp:2}.watch-player{min-height:0;aspect-ratio:16/9}}
@media(hover:none){.card .play{opacity:.85;width:40px;height:40px}.cover img{transition:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

.watch-favorite{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.completed-button{font-size:13px;min-height:44px;padding:11px 15px;line-height:1.5}.completed-button:hover{border-color:var(--accent);background:#b7f34a15}@media(max-width:520px){.watch-favorite>*{flex:1 1 180px;justify-content:center;text-align:center}.completed-button{font-size:13px}}

.watch-intro{gap:28px;align-items:flex-start;padding-block:30px}.watch-intro .watch-poster{width:112px;height:auto;aspect-ratio:2/3}.watch-intro h1{font-size:clamp(30px,3.5vw,48px);line-height:1.18;margin:12px 0 16px}.watch-kind{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border:1px solid #b7f34a55;border-radius:7px;color:var(--accent);background:#b7f34a0c;font-size:14px;font-weight:700;letter-spacing:.5px}.watch-intro .watch-meta{font-size:15px;gap:14px;margin-bottom:14px}.watch-categories{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 18px;font-size:14px}.watch-categories>span:first-child{color:#aebbad;margin-right:3px}.watch-categories a,.watch-category-text{display:inline-flex;align-items:center;min-height:38px;padding:7px 12px;border:1px solid #ffffff20;border-radius:7px;background:#ffffff05;color:#e4ece0;line-height:1.4}.watch-categories a:hover{color:var(--accent);border-color:#b7f34a77}.watch-category-empty{color:var(--muted);font-size:13px}.watch-completion{border-top:1px solid #ffffff16;padding-top:18px;margin-top:18px}.watch-completion .completed-button{font-size:15px;min-height:48px;padding:12px 18px}.watch-completion.panel{padding:20px}.watch-intro .detail-favorite span{font-size:14px}@media(max-width:800px){.watch-intro{gap:22px}.watch-intro .watch-poster{width:96px}.watch-intro h1{font-size:34px}}@media(max-width:520px){.watch-intro{gap:16px;padding-block:24px}.watch-intro .watch-poster{width:76px}.watch-intro h1{font-size:27px;line-height:1.23;margin:12px 0 14px}.watch-kind{font-size:14px;min-height:36px;padding:7px 11px}.watch-intro .watch-meta{font-size:14px;margin-bottom:12px}.watch-categories{gap:7px;font-size:14px;margin-bottom:16px}.watch-categories>span:first-child{flex-basis:100%}.watch-categories a,.watch-category-text{min-height:40px;padding:8px 10px}.watch-intro .watch-favorite>*{flex-basis:100%;font-size:14px}.watch-completion .completed-button{width:100%;font-size:14px;line-height:1.6}.watch-intro .detail-favorite span{font-size:13px}}@media(max-width:360px){.watch-intro .watch-poster{width:64px}.watch-intro{gap:13px}.watch-intro h1{font-size:24px}}

.player-guidance{font-size:14px;line-height:1.7;color:#c0cdbb;margin:0 0 14px;padding:12px 16px;border:1px solid #b7f34a33;border-radius:8px;background:#b7f34a08}@media(max-width:760px) and (orientation:portrait){.watch-player{aspect-ratio:auto;height:clamp(360px,62svh,520px);min-height:360px}.player-guidance{font-size:14px}.player-tools button{min-height:48px;font-size:14px}}@media(max-height:520px) and (orientation:landscape){.watch-player{aspect-ratio:16/9;height:auto;min-height:0}}

.movie-completion{display:flex;justify-content:flex-end;clear:both;margin:0 0 26px;padding-top:8px}.movie-completion .completed-button{min-height:48px;font-size:14px;padding:12px 18px}@media(max-width:520px){.movie-completion{display:block;margin-top:4px;padding-top:10px}.movie-completion .completed-button{width:100%;min-height:48px}.player-tools:has(+.movie-completion){margin-bottom:12px}}

.about-duplay{margin:50px 0 25px;padding:32px;border:1px solid #ffffff12;border-radius:14px;background:linear-gradient(120deg,#17201a,#121714)}.about-duplay h2{font-size:clamp(25px,3vw,34px);margin:14px 0 20px;line-height:1.25}.about-duplay p{font-size:15px;line-height:1.9;color:#b6c2b6;max-width:1100px;margin:14px 0}.about-duplay p a{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.footer-about{display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#c1ceba;padding:8px}.footer-about:hover{color:var(--accent)}@media(max-width:520px){.about-duplay{padding:24px 20px;margin-top:30px}.about-duplay p{font-size:14px;line-height:1.9}.about-duplay .eyebrow{font-size:9px;letter-spacing:1.3px}.footer-about{padding-left:0}}
