/* API controls use the cinema drawer's existing meadow palette and spacing. */
/* Current scene colors while the original Canvas prepares its first frame. */
body.scene{background:linear-gradient(180deg,#37193f 0%,#703254 30%,#de835f 73%,#12271c 100%) fixed}
.auth-dialog .dialog-close{z-index:2}
.cinema-sources{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0 0 15px;color:#b8c4b7;font-size:12px}
.cinema-sources label{display:flex;align-items:center;gap:12px}
.cinema select{max-width:100%;border:1px solid #ffffff28;border-radius:18px;background:#26392e;color:#e7eddd;padding:9px 32px 9px 14px;font:inherit;color-scheme:dark}
.cinema select option{background:#26392e;color:#e7eddd}
.cinema-source-note{color:#9eaf9c;font-size:11px}
.cinema-nav .cinema-history{border:1px solid #ffffff25}
.cinema-status{padding:12px 18px;border:1px solid #ffffff22;border-radius:14px;margin-bottom:20px;background:#ffffff08;color:#c6d3bd;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.cinema-status.is-error,.cinema-player-message.is-error,.cinema-progress-status{color:#efb9a6}
.cinema-empty strong{display:block;font-weight:500;color:#d5dfc8}
.cinema-empty p{margin:8px auto 18px;max-width:520px;overflow-wrap:anywhere}
.cinema-empty button,.cinema-pager button{border:1px solid #ffffff30;border-radius:22px;padding:9px 18px;color:#dce5ca;font-size:12px;margin:3px 5px;background:#ffffff08}
.cinema-empty button:first-of-type{background:#c8d6b9;color:#263626;border-color:transparent}
.cinema button:disabled{opacity:.45;cursor:default}
.cinema button:not(:disabled):hover{filter:brightness(1.08)}
.cinema-poster{display:block;position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(145deg,#40584c,#253b30)}
.cinema-poster-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#b7c6b278;font-size:11px;letter-spacing:2px;padding:14px}
.cinema-poster img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block}
.cinema-hero h2{overflow-wrap:anywhere;line-height:1.25}
.cinema-hero p{overflow-wrap:anywhere}
.cinema-actions{flex-wrap:wrap}
.film-name strong{overflow-wrap:anywhere;line-height:1.6}
.film-save{flex-shrink:0;min-width:30px;min-height:30px}
.film-meta,.film-history{overflow-wrap:anywhere;line-height:1.6}
.film-history{font-size:10px;color:#c6d2b6;margin-top:6px}
.film-progress{height:3px;border-radius:4px;overflow:hidden;background:#ffffff15;margin-top:9px}
.film-progress i{display:block;height:100%;background:#c9d8ad;border-radius:inherit}
.cinema-result-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #ffffff15;padding-top:20px;margin-top:10px}
.cinema-result-head:first-child{margin-top:0;padding-top:0;border:0}
.cinema-result-head h3{font-size:15px;font-weight:500;margin:0;color:#e0e8d5;overflow-wrap:anywhere}
.cinema-result-head span{font-size:11px;color:#a6b8a4;flex-shrink:0}
.cinema-result-empty{grid-column:1/-1;color:#a6b8a4;font-size:12px;margin:0;padding:12px 0 18px}
.cinema-pager{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 0 4px;font-size:12px;color:#b8c4b7}
.cinema-pagination{margin-top:24px}
.cinema-continue{margin-top:28px;border-bottom:1px solid #ffffff15;padding-bottom:24px}
.cinema-history-more{font-size:11px;color:#c9d5ba}
.cinema-continue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cinema-continue-grid .film{display:grid;grid-template-columns:58px minmax(0,1fr);column-gap:12px;align-content:start;padding:12px;border:1px solid #ffffff17;border-radius:14px;background:#ffffff05}
.cinema-continue-grid .film-art{grid-row:1/5;align-self:start;border-radius:7px}
.cinema-continue-grid .film-art:after{content:none}
.cinema-continue-grid .film-name{margin:0;align-items:flex-start}
.cinema-continue-grid .film-name strong{font-size:12px;line-height:1.7}
.cinema-continue-grid .film-save{font-size:16px;min-width:22px;min-height:24px;padding:0}
.cinema-continue-grid .film-meta{margin-top:3px;font-size:9px}
.cinema-continue-grid .film-history{font-size:9px;margin-top:4px}
.cinema-continue-grid .film-progress{grid-column:2;margin-top:6px}
.cinema-detail-top{display:flex;gap:26px;align-items:flex-start}
.cinema-detail-poster{width:142px;aspect-ratio:2/3;border-radius:10px;overflow:hidden;flex-shrink:0;border:1px solid #ffffff18}
.cinema-detail-info{min-width:0;flex:1}
.cinema-detail h3{font-size:24px;line-height:1.4;overflow-wrap:anywhere;margin:0 0 10px}
.cinema-detail-info p{margin:8px 0;overflow-wrap:anywhere}
.cinema-detail-info .cinema-detail-meta{font-size:11px;color:#a9bba3}
.cinema-synopsis{max-height:180px;overflow:auto;white-space:pre-line}
.cinema-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.cinema-detail-actions button{margin:0}
.cinema-detail-actions button:first-child{background:#d5dfbc;color:#233525;border-color:transparent}
.cinema-episodes{margin-top:24px}
.cinema-episodes h4{font-weight:500;font-size:14px;color:#d5dfc8;margin:0 0 14px}
.cinema-lines{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.cinema-detail .cinema-lines button,.cinema-detail .cinema-episode-grid button{margin:0;font-size:12px;padding:9px 14px}
.cinema-lines button.selected,.cinema-episode-grid button.selected{background:#c8d6b9;color:#263626;border-color:transparent}
.cinema-episode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:9px;max-height:380px;overflow:auto;padding:4px}
.cinema-episode-grid p{grid-column:1/-1;margin:0}
.cinema-episode-grid button{border-radius:10px;overflow-wrap:anywhere;line-height:1.5;min-height:40px}
.cinema-player{margin-top:24px;border:1px solid #ffffff20;border-radius:15px;overflow:hidden;background:#15211b;scroll-margin-top:100px}
.cinema-player-title{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:15px 18px;font-size:13px}
.cinema-player-title strong{font-weight:500;overflow-wrap:anywhere}
.cinema-player-title span{font-size:11px;color:#b8c6ad;overflow-wrap:anywhere}
.cinema-video{display:block;width:100%;max-height:68vh;aspect-ratio:16/9;background:#080d0a}
.cinema-player-message,.cinema-progress-status{font-size:12px;line-height:1.7;overflow-wrap:anywhere;padding:10px 18px 0;color:#bac9b8}
.cinema-player-message:empty,.cinema-progress-status:empty{display:none}
.cinema-progress-status{color:#efb9a6}
.cinema-player-bar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:14px 18px}
.cinema-player-bar label{display:flex;align-items:center;gap:8px;color:#b8c6ad;font-size:12px}
.cinema-player-bar select{padding:7px 24px 7px 12px;font-size:12px}
.cinema-detail .cinema-player-bar button{margin:0;font-size:12px;padding:8px 13px}
@media(max-width:1100px){.cinema-continue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cinema-sources{gap:8px}.cinema-source-note{width:100%;font-size:10px}.cinema-sources label{width:100%}.cinema-sources select{flex:1;min-width:0}.cinema-nav .cinema-list{margin-left:0}.cinema-nav .cinema-history{margin-left:4px}.cinema-empty{padding:28px 16px}.cinema-detail{padding:18px}.cinema-detail-top{gap:14px}.cinema-detail-poster{width:82px}.cinema-detail h3{font-size:20px}.cinema-detail-info p{font-size:12px}.cinema-detail-actions{gap:7px}.cinema-detail-actions button{padding:8px 12px;font-size:11px}.cinema-episode-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:7px}.cinema-player-title{padding:13px}.cinema-player-bar{padding:12px}.cinema-player-message,.cinema-progress-status{padding-left:12px;padding-right:12px}.cinema-continue-grid{gap:10px}.cinema-continue-grid .film{grid-template-columns:45px minmax(0,1fr);gap:8px;padding:9px}.cinema-continue-grid .film-save{display:none}.cinema-section-title{gap:12px}.cinema-count{text-align:right}.cinema-pager{gap:7px}.cinema-pager button{padding:8px 13px}.cinema-search input{font-size:16px}}
@media(max-width:380px){.cinema-continue-grid{grid-template-columns:minmax(0,1fr)}.cinema-continue-grid .film{grid-template-columns:45px minmax(0,1fr)}.cinema-detail-top{flex-wrap:wrap}.cinema-detail-info{min-width:150px}.cinema-hero-copy{padding:23px}.cinema-hero h2{font-size:28px;letter-spacing:2px}.cinema-actions button{padding:11px 16px}}
@media(max-width:600px){.cinema-player{scroll-margin-top:150px}}
