:root{--filmdna-primary:#00d9ff;--filmdna-secondary:#ff6b6b;--filmdna-accent-shows:#9b59b6;--filmdna-background:#0f0f0f;--filmdna-text:#e0e0e0;--filmdna-text-muted:grey;--filmdna-card-bg:#1a1a2e;--filmdna-card-bg-alt:#16213e;--filmdna-border:#2a2a3e;--filmdna-input-bg:#1e1e2e;--filmdna-hover-bg:#2a2a4e;--filmdna-success:#2ecc71;--filmdna-warning:#f39c12;--filmdna-danger:#e74c3c}*{box-sizing:border-box;padding:0}*,body{margin:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.container{margin:0 auto;max-width:1400px;padding:0 20px}::-webkit-scrollbar{height:12px;width:12px}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb{background:#404040;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#505050}.movie-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.movie-count{color:var(--filmdna-text-muted);font-size:.95rem;white-space:nowrap}.filter-checkbox input[type=checkbox]{accent-color:var(--filmdna-primary)}.movie-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.movie-card{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border:1px solid var(--filmdna-border);border-radius:12px;color:inherit;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s}.movie-card:before{background:linear-gradient(90deg,var(--filmdna-primary) 0,var(--filmdna-primary) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s}.movie-card:hover:before{transform:scaleX(1)}.movie-card:hover{border-color:var(--filmdna-primary);box-shadow:0 8px 24px #00d9ff33;transform:translateY(-4px)}.movie-card-content{display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:1}.movie-card-header{gap:.5rem}.movie-card-header,.movie-title-row{align-items:flex-start;display:flex;justify-content:space-between}.movie-title-row{flex:1 1;gap:1rem}.movie-confirm-checkbox{align-items:center;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.25rem;pointer-events:auto;position:relative;z-index:10}.movie-confirm-checkbox input[type=checkbox]{accent-color:var(--filmdna-primary);cursor:pointer;height:20px;margin:0;width:20px}.movie-confirm-checkbox:hover{transform:scale(1.1);transition:transform .2s}.movie-title-english{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--filmdna-text);display:-webkit-box;flex:1 1;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis}.movie-release-year{color:var(--filmdna-primary);flex-shrink:0;font-size:.95rem;font-weight:600;white-space:nowrap}.movie-title-french{color:var(--filmdna-text-muted);font-size:.95rem;font-weight:500;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.movie-title-french.missing-french-title{color:var(--filmdna-secondary);font-style:italic;opacity:.85;padding-left:.25rem;position:relative}.movie-title-french.missing-french-title:before{animation:pulse 2s ease-in-out infinite;color:var(--filmdna-secondary);content:"⚠";font-size:1rem;font-style:normal;left:-1.2rem;position:absolute}.movie-filename{font-family:Courier New,monospace;font-size:.75rem}.movie-country,.movie-filename{color:var(--filmdna-text-muted);margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;text-shadow:0 1px 2px #000c;white-space:nowrap}.movie-country{font-size:.8rem}.movie-genres{color:var(--filmdna-text-muted);font-size:.85rem;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.spinner-small{border-top-color:var(--filmdna-primary)}.movie-selection-checkbox{align-items:center;background:#0009;border:2px solid #fff6;border-radius:50%;color:#fff9;cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:28px;justify-content:center;left:.75rem;position:absolute;top:.75rem;transition:all .2s ease;width:28px;z-index:10}.movie-selection-checkbox:hover{background:#00d9ff4d;border-color:var(--filmdna-primary);color:var(--filmdna-primary);transform:scale(1.1)}.movie-selection-checkbox.selected{background:var(--filmdna-primary);border-color:var(--filmdna-primary);color:var(--filmdna-background)}.movie-selection-checkbox.selected:hover{background:var(--filmdna-secondary);border-color:var(--filmdna-secondary);color:#fff}.movie-selection-checkbox.disabled{cursor:not-allowed;opacity:.3}.movie-selection-checkbox.disabled:hover{background:#0009;border-color:#fff6;color:#fff9;transform:none}.movie-card-selected{border-color:var(--filmdna-primary)!important;box-shadow:0 0 0 2px #00d9ff4d}.movie-card-selected:before{transform:scaleX(1)!important}.selection-bar{animation:slideUp .3s ease-out;background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border-top:2px solid var(--filmdna-primary);bottom:0;box-shadow:0 -4px 20px #0006;left:0;padding:1rem 2rem;position:fixed;right:0;z-index:1000}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.selection-bar-content{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1400px}.selection-count{color:var(--filmdna-primary);font-size:1.1rem;font-weight:600}.selection-bar-actions{display:flex;gap:.75rem}.btn-sm{font-size:.9rem;padding:.5rem 1rem}@media (max-width:768px){.movie-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.movie-list-header{align-items:stretch;flex-direction:column}.search-bar{max-width:none}.selection-bar{padding:.75rem 1rem}.selection-bar-content{flex-direction:column;gap:.5rem}.selection-count{font-size:1rem}}.imdb-modal{max-width:90vw;width:700px}.search-form{display:flex;gap:1rem;margin-bottom:1.5rem}.search-form .input{flex:1 1}.error-message{background:#ff44441a;border:1px solid var(--filmdna-secondary);border-radius:6px;color:var(--filmdna-secondary);margin-bottom:1rem;padding:1rem}.search-results{margin-top:1.5rem}.results-title{color:var(--filmdna-primary);font-size:1.2rem;font-weight:600;margin:0 0 1rem}.results-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.result-item{background:var(--filmdna-background);border:1px solid var(--filmdna-border);border-radius:6px;cursor:pointer;padding:1rem;transition:all .2s}.result-item:hover{background:var(--filmdna-card-bg);border-color:var(--filmdna-primary);transform:translateX(4px)}.result-title{color:var(--filmdna-text);font-weight:600;margin-bottom:.5rem}.result-meta{display:flex;font-size:.9rem;gap:1rem}.result-year{color:var(--filmdna-primary);font-weight:500}.result-kind{color:var(--filmdna-text-muted);text-transform:capitalize}.movie-details{margin-top:1.5rem}.details-title{color:var(--filmdna-primary);font-size:1.2rem;font-weight:600;margin:0 0 1rem}.details-content{background:var(--filmdna-background);border:1px solid var(--filmdna-border);border-radius:6px;margin-bottom:1.5rem;padding:1.5rem}.detail-row{color:var(--filmdna-text);line-height:1.6;margin-bottom:1rem}.detail-row:last-child{margin-bottom:0}.detail-row strong{color:var(--filmdna-primary);display:inline-block;min-width:100px}.details-actions{display:flex;gap:1rem;justify-content:flex-end}.multi-poster-wizard{max-height:90vh;max-width:1100px;overflow-y:auto;width:95%}.multi-poster-wizard .wizard-layout{display:flex;flex-direction:column;gap:1.5rem}.header-section{align-items:flex-end;display:flex;flex-wrap:wrap;gap:2rem}.header-section .input-label{flex:1 1;min-width:300px}.header-section .label-text{color:#e0e0e0;display:block;font-weight:500;margin-bottom:.5rem}.header-section .required{color:#ff6b6b}.header-input{font-size:1.1rem;padding:.75rem 1rem}.input-error{border-color:#ff6b6b!important}.error-text{color:#ff6b6b;display:block;font-size:.85rem;margin-top:.25rem}.language-toggle-inline,.year-range-display{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.5rem}.language-toggle-inline .language-label{color:grey;font-size:.85rem}.language-toggle.compact{display:flex;gap:.25rem}.language-toggle.compact .toggle-option{font-size:.8rem;padding:.35rem .75rem}.year-range-label{color:grey;font-size:.85rem}.year-range-value{color:#00d9ff;font-size:1.2rem;font-weight:600}.movies-section{background:#0003;border-radius:8px;padding:1rem}.movies-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.movies-section-header .section-heading{margin:0}.reorder-hint{color:#606060;font-size:.8rem;font-style:italic}.movies-list-compact,.movies-list-reorderable{display:flex;flex-direction:column;gap:.5rem}.movie-list-item{align-items:center;background:#ffffff0d;border-radius:6px;border-top:2px solid #0000;display:flex;gap:.75rem;padding:.5rem .75rem;position:relative;transition:all .2s}.movie-list-item.reorderable{cursor:grab}.movie-list-item.reorderable:hover{background:#ffffff1a}.movie-list-item.dragging{background:#00d9ff1a;border:1px dashed #00d9ff;opacity:.5}.movie-list-item.drop-target{border-top:2px solid #00d9ff;margin-top:-2px}.movie-list-item.drop-target:before{background:#00d9ff;box-shadow:0 0 8px #00d9ff99;content:"";height:2px;left:0;position:absolute;right:0;top:-2px}.movie-order-controls{align-items:center;display:flex;flex-direction:column;gap:2px}.movie-order-controls .order-btn{background:#0000;border:none;color:#606060;cursor:pointer;font-size:.6rem;line-height:1;padding:0;transition:color .2s}.movie-order-controls .order-btn:hover:not(:disabled){color:#00d9ff}.movie-order-controls .order-btn:disabled{cursor:not-allowed;opacity:.3}.drag-handle{color:#404040;font-size:1rem;letter-spacing:-2px}.movie-index{color:#00d9ff;font-size:.85rem;font-weight:600;min-width:20px;text-align:center}.movie-name{color:#e0e0e0;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.movie-list-item .movie-year{color:grey;flex-shrink:0;font-size:.9rem}.movie-remove-btn{background:#0000;border:none;color:#606060;cursor:pointer;font-size:.9rem;line-height:1;padding:.25rem;transition:color .2s}.movie-remove-btn:hover{color:#ff6b6b}.clear-all-btn{font-size:.8rem;margin-top:.75rem;padding:.4rem .8rem}.credits-section{background:#0003;border-radius:8px;padding:1rem}.credits-grid{grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.credits-column{gap:.25rem}.credits-subheading{color:#a0a0a0;font-size:.8rem;font-weight:600;margin:0}.credits-list{gap:2px;max-height:180px;overflow-y:auto;padding-right:.25rem}.credits-item{background:#ffffff0d;border:1px solid #0000;border-radius:4px;cursor:pointer;padding:4px 8px;transition:all .15s;-webkit-user-select:none;user-select:none}.credits-item:hover{background:#ffffff1a}.credits-item.selected{background:#00d9ff26;border-color:#00d9ff}.credits-item.selected:hover{background:#00d9ff40}.credits-item.disabled{cursor:not-allowed;opacity:.4}.credits-item.disabled:hover{background:#ffffff0d}.credits-name{color:#e0e0e0;font-size:.8rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quotes-section{background:#0003;border-radius:8px;padding:1rem}.quote-options{display:flex;flex-direction:column;gap:.75rem}.quote-option{align-items:center;color:#e0e0e0;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.quote-option input[type=radio]{accent-color:#00d9ff}.quote-presets{display:flex;flex-direction:column;gap:.5rem}.quote-presets .quotes-list{margin-left:1.5rem}.custom-message-wrapper{display:flex;flex-direction:column;gap:.25rem;margin-left:1.5rem}.custom-message-input{background:#ffffff0d;border:1px solid #2a2a3e;border-radius:6px;color:#e0e0e0;font-family:inherit;font-size:.9rem;min-height:80px;padding:.75rem;resize:vertical;transition:border-color .2s;width:100%}.custom-message-input:focus{border-color:#00d9ff;outline:none}.custom-message-input::placeholder{color:#606060}.char-counter{color:#606060;font-size:.75rem;text-align:right}.quotes-list{display:flex;flex-direction:column;gap:6px;max-height:150px;overflow-y:auto;padding-right:.25rem}.quote-item{background:#ffffff0d;border:1px solid #0000;border-radius:4px;cursor:pointer;padding:8px 12px;transition:all .15s;-webkit-user-select:none;user-select:none}.quote-item:hover{background:#ffffff1a}.quote-item.selected{background:#00d9ff26;border-color:#00d9ff}.quote-item.selected:hover{background:#00d9ff40}.quote-text{color:#e0e0e0;font-size:.85rem;font-style:italic;line-height:1.4}.clear-quote-btn{font-size:.75rem;margin-top:.5rem;padding:.3rem .6rem}.preview-section{background:#0003;border-radius:8px;padding:1rem}.multi-poster-wizard .preview-container{align-items:center;background:#0a0a1a;border-radius:8px;display:flex;justify-content:center;min-height:200px;overflow:hidden}.multi-poster-wizard .preview-image{display:block;height:auto;width:100%}.preview-placeholder{color:#606060;font-size:1rem}.preview-loading{align-items:center;color:grey;display:flex;flex-direction:column;gap:.75rem}.preview-error{color:#ff6b6b}.language-toggle,.toggle-option{display:flex;gap:.5rem}.toggle-option{align-items:center;background:#ffffff0d;border:1px solid #2a2a3e;border-radius:6px;color:#a0a0a0;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.toggle-option:hover{border-color:#00d9ff}.toggle-option.selected{background:#00d9ff1a;border-color:#00d9ff;color:#00d9ff}.toggle-option input{display:none}.palette-options-row .wizard-section{flex:1 1 100%}.palette-options-grid{display:flex;flex-wrap:wrap;gap:1.5rem}.palette-option{flex:1 1;min-width:150px}.palette-option label{color:#a0a0a0;font-size:.85rem}.palette-option select{background:#ffffff0d;border:1px solid #2a2a3e;color:#e0e0e0;flex:1 1;font-size:.85rem;padding:.5rem .75rem;transition:border-color .2s}.palette-option select:focus,.palette-option select:hover{border-color:#00d9ff}.palette-option select option{background:#1a1a2e;color:#e0e0e0}.wizard-options-row{display:flex;flex-wrap:wrap;gap:1.5rem}.wizard-options-row .wizard-section{flex:1 1;min-width:200px}.section-heading{color:#b0b0b0;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.color-selector{display:flex;flex-direction:column;gap:.75rem}.color-presets{display:flex;flex-wrap:wrap;gap:.5rem}.color-preset{border:2px solid #0000;border-radius:6px;cursor:pointer;height:32px;transition:all .2s;width:32px}.color-preset:hover{transform:scale(1.1)}.color-preset.selected{border-color:#00d9ff;box-shadow:0 0 8px #00d9ff66}.color-preset.color-auto{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:0 12px;text-transform:uppercase;width:auto}.color-preset.color-auto:hover{background:linear-gradient(135deg,#764ba2,#667eea)}.color-preset.color-auto:disabled{background:#444;color:#888;cursor:not-allowed}.color-preset.color-auto.loading{animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.color-custom,.color-picker-label{align-items:center;display:flex;gap:.5rem}.color-picker-label{color:#a0a0a0;font-size:.9rem}.color-picker-input{border:none;border-radius:4px;cursor:pointer;height:32px;width:32px}.color-value{color:#606060;font-family:monospace;font-size:.85rem}.frame-options,.size-options{display:flex;flex-wrap:wrap;gap:.5rem}.frame-card,.size-card{align-items:center;background:#ffffff0d;border:1px solid #2a2a3e;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;min-width:80px;padding:.75rem 1rem;transition:all .2s}.frame-card:hover,.size-card:hover{border-color:#00d9ff}.frame-card.selected,.size-card.selected{background:#00d9ff1a;border-color:#00d9ff}.frame-card input,.size-card input{display:none}.frame-label,.size-label{color:#e0e0e0;font-size:.9rem;font-weight:500}.frame-price,.size-price{color:#00d9ff;font-size:.85rem;font-weight:600}.multi-poster-footer{align-items:center;border-top:1px solid #2a2a3e;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:1rem;padding-top:1rem}.price-summary{display:flex;flex-direction:column;gap:.25rem}.price-row{color:#a0a0a0;display:flex;font-size:.9rem;gap:1rem;justify-content:space-between}.price-row.price-total{border-top:1px solid #2a2a3e;color:#e0e0e0;font-size:1.1rem;font-weight:600;margin-top:.25rem;padding-top:.5rem}.footer-actions{display:flex;gap:.75rem}.btn-buy{font-size:1rem;padding:.75rem 1.5rem}.spinner{animation:spin .8s linear infinite;border:3px solid #2a2a3e;border-top-color:#00d9ff;height:32px;width:32px}@media (max-width:768px){.multi-poster-wizard{max-height:95vh}.header-section{flex-direction:column;gap:1rem}.header-section .input-label{min-width:100%}.multi-poster-footer,.wizard-options-row{flex-direction:column}.multi-poster-footer{align-items:stretch}.footer-actions{justify-content:space-between}}.paper-type-options{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto}.paper-type-card{align-items:flex-start;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:6px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s}.paper-type-card:hover{background:#ffffff1a;border-color:#fff3}.paper-type-card.selected{background:#3b82f633;border-color:#3b82f6}.paper-type-card input[type=radio]{margin-top:.25rem}.paper-type-content{display:flex;flex-direction:column;gap:.25rem}.paper-type-name{color:#e0e0e0;font-weight:600}.paper-type-description{color:#a0a0a0;font-size:.85rem}.paper-type-price{color:#10b981;font-size:.8rem}.loading-message{color:#a0a0a0;padding:1rem;text-align:center}.info-message{color:#a0a0a0;font-size:.9rem;padding:.5rem}.size-card.disabled{cursor:not-allowed;opacity:.5}.size-area{color:#a0a0a0;font-size:.8rem}.movie-detail{margin:0 auto;max-width:1400px}.movie-detail-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.back-link,.back-link:hover{color:var(--filmdna-primary)}.movie-detail-actions{display:flex;gap:1rem}.movie-info-section{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border:1px solid var(--filmdna-border);border-radius:12px;margin-bottom:2rem;padding:2rem}.movie-info-main{align-items:baseline;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.movie-detail-title{color:var(--filmdna-text);font-size:2rem;font-weight:700;margin:0;width:100%}.movie-detail-subtitle{color:var(--filmdna-text-muted);font-size:1.4rem;font-style:italic;font-weight:500;margin:.5rem 0 0;width:100%}.movie-detail-subtitle.missing-french-title{color:var(--filmdna-secondary);opacity:.85;padding-left:2rem;position:relative}.movie-detail-subtitle.missing-french-title:before{animation:pulse 2s ease-in-out infinite;color:var(--filmdna-secondary);content:"⚠";font-size:1.3rem;font-style:normal;left:0;position:absolute}.movie-detail-filename{color:var(--filmdna-text-muted);font-family:Courier New,monospace;font-size:.85rem;margin:.75rem 0 0;width:100%}.movie-detail-year{color:var(--filmdna-primary);font-size:1.5rem;font-weight:600}.movie-metadata{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metadata-link,.metadata-link:hover{color:var(--filmdna-primary)}.metadata-filename{color:var(--filmdna-text-muted)}.metadata-input:focus{border-color:var(--filmdna-primary)}.metadata-label{cursor:default}.palette-section{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border)}.section-title{color:var(--filmdna-primary)}.palette-options{background:#1a1a2e;background:var(--filmdna-card-bg-alt,#1a1a2e);border:1px solid var(--filmdna-border);border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem}.palette-option{align-items:center;display:flex;gap:.5rem}.palette-option label{color:#888;color:var(--filmdna-text-secondary,#888);font-size:.875rem;font-weight:500;white-space:nowrap}.palette-option select{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border);border-radius:6px;color:var(--filmdna-text);cursor:pointer;font-size:.875rem;padding:.4rem .75rem;transition:border-color .2s,box-shadow .2s}.palette-option select:focus,.palette-option select:hover{border-color:var(--filmdna-primary)}.palette-option select:focus{box-shadow:0 0 0 2px #6366f133;box-shadow:0 0 0 2px rgba(var(--filmdna-primary-rgb,99,102,241),.2);outline:none}.frame-preview,.palette-image-wrapper{background:var(--filmdna-background);border:1px solid var(--filmdna-border)}.frame-position{color:var(--filmdna-primary)}.credits-section{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border);border-radius:12px;padding:2rem}.credits-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.credits-column{display:flex;flex-direction:column;gap:1rem}.credits-heading{border-bottom:1px solid var(--filmdna-border);color:var(--filmdna-primary);font-size:1.1rem;font-weight:600;margin:0;padding-bottom:.5rem}.credits-list{gap:.75rem;list-style:none;margin:0;padding:0}.credits-item,.credits-list{display:flex;flex-direction:column}.credits-item{gap:.25rem}.credits-name{color:var(--filmdna-text);font-weight:500}.credits-role{color:var(--filmdna-text-muted);font-size:.9rem}@media (max-width:768px){.movie-detail-header{align-items:stretch}.movie-detail-actions,.movie-detail-header{flex-direction:column}.movie-detail-title{font-size:1.5rem}.movie-detail-subtitle{font-size:1.1rem}.movie-detail-year{font-size:1.2rem}.credits-grid,.movie-metadata{grid-template-columns:1fr}.frame-image{max-height:400px}}.movie-checkout{padding:1rem 0}.checkout-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.checkout-title-section{display:flex;flex-direction:column;gap:.5rem}.checkout-title-section h1{color:#e0e0e0;margin:0}.checkout-subtitle{color:grey;font-size:.95rem;margin:0}.btn-back{align-self:flex-start;margin-bottom:.5rem}.checkout-actions{display:flex;gap:.75rem}.btn-create{font-size:1.1rem;padding:.75rem 1.5rem}.checkout-movies{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.checkout-movie-card{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;cursor:grab;display:flex;gap:1rem;padding:1rem;transition:all .2s ease}.checkout-movie-card:hover{border-color:#00d9ff;box-shadow:0 4px 16px #00d9ff26}.checkout-movie-card.dragging{border-color:#00d9ff;cursor:grabbing;opacity:.5;transform:scale(1.02)}.movie-order{align-items:center;display:flex;flex-shrink:0;gap:.5rem}.order-number{font-size:1.1rem}.movie-thumbnail{border-radius:6px;flex-shrink:0;height:60px;overflow:hidden;width:200px}.movie-thumbnail img{height:100%;image-rendering:pixelated;object-fit:cover;width:100%}.movie-info{flex:1 1;min-width:0}.movie-info .movie-title{color:#e0e0e0;font-size:1.1rem;font-weight:600}.movie-info .movie-title,.movie-info .movie-title-french{margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.movie-info .movie-title-french{color:#a0a0a0;font-size:.9rem}.movie-info .movie-year{color:#00d9ff;font-size:.95rem;font-weight:600;margin:0}.btn-remove{background:#ff6b6b33;border:1px solid #ff6b6b66;border-radius:50%;color:#ff6b6b;cursor:pointer;flex-shrink:0;font-size:1rem;height:36px;transition:all .2s;width:36px}.btn-remove:hover{background:#ff6b6b;color:#fff;transform:scale(1.1)}.checkout-preview-section{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;padding:1.5rem}.checkout-preview-section h3{color:#e0e0e0;margin:0 0 1rem}.preview-label{justify-content:space-between}.preview-title,.preview-year{font-size:.85rem}.preview-year{color:#00d9ff;flex-shrink:0;font-weight:600;margin-left:.5rem}.checkout-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.checkout-empty h2{color:#e0e0e0;margin:0 0 .5rem}.checkout-empty p{color:grey;margin:0 0 1.5rem}@media (max-width:768px){.checkout-header{flex-direction:column}.checkout-actions{justify-content:space-between;width:100%}.checkout-movie-card{flex-wrap:wrap}.movie-thumbnail{height:45px;width:150px}.movie-info{order:3;width:100%}.stacked-preview{height:200px}}.show-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.search-bar{flex:1 1;max-width:500px;position:relative}.search-input{padding-right:3rem}.search-icon{font-size:1.2rem;opacity:.5;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-50%)}.status-filter{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border);border-radius:8px;color:var(--filmdna-text);cursor:pointer;font-size:.9rem;outline:none;padding:.75rem 1rem;transition:border-color .2s}.status-filter:focus,.status-filter:hover{border-color:var(--filmdna-accent-shows)}.show-count{font-size:.95rem;white-space:nowrap}.filter-checkbox,.show-count{color:var(--filmdna-text-muted)}.filter-checkbox{align-items:center;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;-webkit-user-select:none;user-select:none}.filter-checkbox input[type=checkbox]{accent-color:var(--filmdna-accent-shows);cursor:pointer;height:16px;width:16px}.filter-checkbox:hover{color:var(--filmdna-text)}.show-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.show-card{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border:1px solid var(--filmdna-border);border-radius:12px;color:inherit;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s}.show-card:before{background:linear-gradient(90deg,var(--filmdna-accent-shows) 0,var(--filmdna-accent-shows) 100%);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s}.show-card:hover:before{transform:scaleX(1)}.show-card:hover{border-color:var(--filmdna-accent-shows);box-shadow:0 8px 24px #9b59b633;transform:translateY(-4px)}.show-card-content{display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:1}.show-card-header{gap:.5rem}.show-card-header,.show-title-row{align-items:flex-start;display:flex;justify-content:space-between}.show-title-row{flex:1 1;gap:1rem}.show-confirm-checkbox{align-items:center;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.25rem;pointer-events:auto;position:relative;z-index:10}.show-confirm-checkbox input[type=checkbox]{accent-color:var(--filmdna-accent-shows);cursor:pointer;height:20px;margin:0;width:20px}.show-confirm-checkbox:hover{transform:scale(1.1);transition:transform .2s}.show-title-english{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--filmdna-text);display:-webkit-box;flex:1 1;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis}.show-status-badge{border-radius:4px;flex-shrink:0;font-size:.7rem;font-weight:600;padding:.2rem .5rem;text-transform:uppercase;white-space:nowrap}.status-ongoing{background:#2ecc7133;border:1px solid #2ecc714d;color:var(--filmdna-success)}.status-ended{background:#95a5a633;border:1px solid #95a5a64d;color:#95a5a6}.status-cancelled{background:#e74c3c33;border:1px solid #e74c3c4d;color:var(--filmdna-danger)}.show-title-french{color:var(--filmdna-text-muted);font-size:.95rem;font-weight:500;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.show-meta-row{display:flex;flex-wrap:wrap;gap:1rem}.show-year{color:var(--filmdna-accent-shows);font-size:.9rem;font-weight:600}.show-episodes,.show-seasons{color:var(--filmdna-text-muted);font-size:.85rem}.show-network{font-size:.85rem}.show-country,.show-network{color:var(--filmdna-text-muted);margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;text-shadow:0 1px 2px #000c;white-space:nowrap}.show-country{font-size:.8rem}.show-genres{font-size:.85rem;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.no-results,.show-genres{color:var(--filmdna-text-muted)}.no-results{font-size:1.1rem;padding:4rem 2rem;text-align:center}.load-more-trigger{display:flex;justify-content:center;padding:2rem}.spinner-small{animation:spin .8s linear infinite;border:3px solid var(--filmdna-border);border-radius:50%;border-top-color:var(--filmdna-accent-shows);height:24px;width:24px}@media (max-width:768px){.show-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.show-list-header{align-items:stretch;flex-direction:column}.search-bar{max-width:none}.status-filter{width:100%}}.episode-grid-container{display:flex;flex-direction:column;gap:2rem}.season-group{display:flex;flex-direction:column;gap:1rem}.season-header{align-items:center;border-bottom:1px solid #2a2a3e;color:#9b59b6;display:flex;font-size:1.2rem;font-weight:600;gap:.75rem;margin:0;padding-bottom:.75rem}.season-episode-count{color:grey;font-size:.9rem;font-weight:400}.episode-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.episode-card{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;color:inherit;overflow:hidden;padding:1.5rem;position:relative;text-decoration:none;transition:all .3s}.episode-card:before{background:linear-gradient(90deg,#9b59b6,#8e44ad);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s}.episode-card:hover:before{transform:scaleX(1)}.episode-card:hover{border-color:#9b59b6;box-shadow:0 8px 24px #9b59b633;transform:translateY(-4px)}.episode-card-content{display:flex;flex-direction:column;gap:.5rem;position:relative;z-index:1}.episode-title-row{align-items:flex-start;display:flex;flex:1 1;gap:1rem;justify-content:space-between}.episode-number-badge{display:flex;flex-shrink:0;gap:.25rem}.episode-ep,.episode-season{color:#e0e0e0;font-size:.85rem;font-weight:600}.episode-season{color:#9b59b6}.episode-type-badge{font-size:.65rem;padding:.2rem .4rem}.episode-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.episode-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#e0e0e0;display:-webkit-box;flex:1 1;font-size:1.1rem;font-weight:600;line-height:1.4;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis}.episode-confirm-checkbox{align-items:center;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.25rem;position:relative;z-index:10}.episode-confirm-checkbox input[type=checkbox]{accent-color:#9b59b6;cursor:pointer;height:20px;margin:0;width:20px}.episode-confirm-checkbox:hover{transform:scale(1.1);transition:transform .2s}.episode-title-french{color:silver;font-size:.95rem;font-weight:500;margin:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.episode-meta{display:flex;flex-wrap:wrap;gap:1rem}.episode-air-date,.episode-runtime{color:#b0b0b0;font-size:.85rem}.episode-runtime{color:#9b59b6}.no-episodes{color:grey;font-size:1rem;padding:3rem 2rem;text-align:center}@media (max-width:1200px){.episode-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.episode-grid{grid-template-columns:1fr}}.show-detail{margin:0 auto;max-width:1400px}.show-detail-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.back-link,.back-link:hover{color:var(--filmdna-accent-shows)}.back-link:hover{filter:brightness(1.2)}.show-detail-actions{display:flex;gap:1rem}.show-info-section{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border:1px solid var(--filmdna-border);border-radius:12px;margin-bottom:2rem;padding:2rem}.show-info-main{margin-bottom:1.5rem}.show-detail-title{color:var(--filmdna-text);font-size:2rem;font-weight:700;margin:0}.show-detail-subtitle{color:var(--filmdna-text-muted);font-size:1.4rem;font-style:italic;font-weight:500;margin:.5rem 0 0}.show-detail-meta{align-items:center;display:flex;gap:1rem;margin-top:1rem}.show-detail-year{color:var(--filmdna-accent-shows);font-size:1.3rem;font-weight:600}.show-detail-status{border-radius:4px;font-size:.8rem;font-weight:600;padding:.3rem .75rem;text-transform:uppercase}.show-detail-status.status-ongoing{background:#2ecc7133;border:1px solid #2ecc714d;color:var(--filmdna-success)}.show-detail-status.status-ended{background:#95a5a633;border:1px solid #95a5a64d;color:#95a5a6}.show-detail-status.status-cancelled{background:#e74c3c33;border:1px solid #e74c3c4d;color:var(--filmdna-danger)}.show-synopsis{background:#0003;border-left:3px solid var(--filmdna-accent-shows);border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.show-synopsis p{color:var(--filmdna-text-muted);font-size:1rem;line-height:1.6;margin:0}.show-metadata{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metadata-label{color:var(--filmdna-text-muted)}.metadata-value{color:var(--filmdna-text)}.metadata-link,.metadata-link:hover{color:var(--filmdna-accent-shows)}.metadata-link:hover{filter:brightness(1.2)}.metadata-input{background:var(--filmdna-input-bg);border:1px solid var(--filmdna-border);color:var(--filmdna-text)}.metadata-input:focus{background:var(--filmdna-card-bg);border-color:var(--filmdna-accent-shows)}.metadata-input::placeholder{color:var(--filmdna-text-muted)}.episodes-section{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border);border-radius:12px;padding:2rem}.episodes-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.section-title{color:var(--filmdna-accent-shows);margin:0}.season-filter{background:var(--filmdna-input-bg);border:1px solid var(--filmdna-border);border-radius:8px;color:var(--filmdna-text);cursor:pointer;font-size:.9rem;outline:none;padding:.6rem 1rem;transition:border-color .2s}.season-filter:focus,.season-filter:hover{border-color:var(--filmdna-accent-shows)}.modal-overlay{padding:2rem;z-index:1000}.modal-content{padding:2rem}.modal-title{color:var(--filmdna-text)}.delete-confirm-message{color:var(--filmdna-text-muted);margin-bottom:1.5rem}.delete-confirm-message strong{color:var(--filmdna-danger)}@media (max-width:768px){.show-detail-header{align-items:stretch}.show-detail-actions,.show-detail-header{flex-direction:column}.show-detail-title{font-size:1.5rem}.show-detail-subtitle,.show-detail-year{font-size:1.1rem}.show-metadata{grid-template-columns:1fr}.episodes-header{align-items:stretch;flex-direction:column}.season-filter{width:100%}}.show-poster-wizard{display:flex;flex-direction:column;max-height:95vh;max-width:1400px;width:95vw}.show-poster-wizard .modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.show-poster-wizard .wizard-layout{display:flex;flex-direction:column;gap:1.5rem}.show-poster-wizard .header-section{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem}.show-poster-wizard .header-section .input-label{flex:2 1;min-width:250px}.show-poster-wizard .header-options{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.show-poster-wizard .checkbox-option{align-items:center;color:#b0b0b0;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.show-poster-wizard .checkbox-option input[type=checkbox]{accent-color:#00d9ff;cursor:pointer;height:18px;width:18px}.show-poster-wizard .season-range-display{align-items:center;display:flex;gap:1rem;padding:.5rem 0}.show-poster-wizard .season-range-label{color:#00d9ff;font-size:.95rem;font-weight:600}.show-poster-wizard .episode-count{color:grey;font-size:.9rem}.show-poster-wizard .episodes-section{background:#0003;border-radius:8px;padding:1rem}.show-poster-wizard .episodes-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.show-poster-wizard .reorder-hint{color:#606060;font-size:.8rem;font-style:italic}.show-poster-wizard .episodes-list-reorderable{display:flex;flex-direction:column;gap:.5rem;max-height:250px;overflow-y:auto}.show-poster-wizard .episode-list-item{align-items:center;background:#ffffff0d;border:1px solid #0000;border-radius:6px;cursor:grab;display:flex;gap:.75rem;padding:.5rem .75rem;transition:all .2s ease}.show-poster-wizard .episode-list-item:hover{background:#ffffff14;border-color:#00d9ff4d}.show-poster-wizard .episode-list-item.dragging{border-color:#00d9ff;cursor:grabbing;opacity:.5}.show-poster-wizard .episode-list-item.drop-target{background:#00d9ff1a;border-color:#00d9ff}.show-poster-wizard .episode-index{color:#606060;font-size:.8rem;min-width:24px;text-align:center}.show-poster-wizard .drag-handle{color:#404040;cursor:grab;font-size:1rem;letter-spacing:1px;-webkit-user-select:none;user-select:none}.show-poster-wizard .drag-handle:hover{color:#00d9ff}.show-poster-wizard .episode-code{color:#00d9ff;font-size:.85rem;font-weight:600;min-width:60px}.show-poster-wizard .episode-name{color:silver;flex:1 1;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.show-poster-wizard .episode-thumbnail-mini{border-radius:3px;height:24px;object-fit:cover;opacity:.8;width:80px}.show-poster-wizard .preview-section{flex:1 1}.show-poster-wizard .wizard-preview{background:#0a0a1a;border-radius:8px;max-height:500px;min-height:300px;overflow:hidden;padding:1rem}.show-poster-wizard .wizard-preview.landscape{aspect-ratio:auto}.show-poster-wizard .preview-container{align-items:center;display:flex;height:100%;justify-content:center;min-height:280px;overflow:hidden;width:100%}.show-poster-wizard .preview-error,.show-poster-wizard .preview-loading,.show-poster-wizard .preview-placeholder{color:#606060;padding:2rem;text-align:center}.show-poster-wizard .preview-loading{align-items:center;display:flex;flex-direction:column;gap:1rem}.show-poster-wizard .preview-image{border-radius:4px;display:block;height:auto;max-height:480px;object-fit:contain;width:100%}.show-poster-wizard .wizard-options-row{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.show-poster-wizard .wizard-section{padding:0}.show-poster-wizard .section-heading{color:#e0e0e0;font-size:.95rem;font-weight:600;margin:0 0 .75rem}.show-poster-wizard .color-selector{display:flex;flex-direction:column;gap:.75rem}.show-poster-wizard .color-presets{display:flex;flex-wrap:wrap;gap:.5rem}.show-poster-wizard .color-preset{border:2px solid #0000;border-radius:6px;cursor:pointer;height:32px;transition:all .2s;width:32px}.show-poster-wizard .color-preset:hover{transform:scale(1.1)}.show-poster-wizard .color-preset.selected{border-color:#00d9ff;box-shadow:0 0 8px #00d9ff66}.show-poster-wizard .color-preset.color-auto{align-items:center;background:linear-gradient(135deg,#ff6b6b,#4ecdc4,#45b7d1,#96c93d);color:#fff;display:flex;font-size:.65rem;font-weight:700;justify-content:center;width:48px}.show-poster-wizard .color-preset.color-auto.loading{opacity:.6}.show-poster-wizard .color-custom{align-items:center;display:flex;gap:.75rem}.show-poster-wizard .color-picker-label{align-items:center;color:grey;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.show-poster-wizard .color-picker-input{background:none;border:none;border-radius:4px;cursor:pointer;height:32px;width:32px}.show-poster-wizard .color-value{color:#606060;font-family:monospace;font-size:.85rem}.show-poster-wizard .frame-options,.show-poster-wizard .size-options{display:flex;flex-wrap:wrap;gap:.5rem}.show-poster-wizard .frame-card,.show-poster-wizard .size-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;min-width:80px;padding:.75rem 1rem;transition:all .2s}.show-poster-wizard .frame-card:hover,.show-poster-wizard .size-card:hover{background:#ffffff14}.show-poster-wizard .frame-card.selected,.show-poster-wizard .size-card.selected{background:#00d9ff1a;border-color:#00d9ff}.show-poster-wizard .frame-card input,.show-poster-wizard .size-card input{display:none}.show-poster-wizard .frame-label,.show-poster-wizard .size-label{color:silver;font-size:.85rem;font-weight:500}.show-poster-wizard .frame-price,.show-poster-wizard .size-price{color:#00d9ff;font-size:.9rem;font-weight:600;margin-top:.25rem}.show-poster-footer{align-items:flex-end;background:#0000004d;border-top:1px solid #ffffff1a;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.show-poster-footer .price-summary{display:flex;flex-direction:column;gap:.25rem}.show-poster-footer .price-row{color:#a0a0a0;display:flex;font-size:.9rem;gap:1.5rem;justify-content:space-between}.show-poster-footer .price-row.price-total{border-top:1px solid #ffffff1a;color:#e0e0e0;font-size:1rem;font-weight:600;margin-top:.25rem;padding-top:.25rem}.show-poster-footer .footer-actions{display:flex;gap:.75rem}.show-poster-footer .btn-buy{font-size:1rem;padding:.75rem 1.5rem}.show-poster-wizard .input-label{display:flex;flex-direction:column;gap:.5rem}.show-poster-wizard .label-text{color:silver;font-size:.9rem}.show-poster-wizard .label-text .required{color:#ff6b6b}.show-poster-wizard .input{background:#ffffff14;border:1px solid #ffffff26;border-radius:6px;color:#e0e0e0;font-size:1rem;padding:.75rem 1rem;transition:all .2s}.show-poster-wizard .input:focus{background:#ffffff1a;border-color:#00d9ff;outline:none}.show-poster-wizard .input.input-error{border-color:#ff6b6b}.show-poster-wizard .error-text{color:#ff6b6b;font-size:.8rem}.show-poster-wizard .language-toggle-inline{align-items:center;display:flex;gap:.5rem}.show-poster-wizard .language-label{color:grey;font-size:.85rem}.show-poster-wizard .language-toggle.compact{display:flex;gap:0}.show-poster-wizard .toggle-option{background:#ffffff0d;border:1px solid #ffffff26;color:grey;cursor:pointer;font-size:.85rem;padding:.4rem .75rem;transition:all .2s}.show-poster-wizard .toggle-option:first-child{border-radius:6px 0 0 6px}.show-poster-wizard .toggle-option:last-child{border-left:none;border-radius:0 6px 6px 0}.show-poster-wizard .toggle-option.selected{background:#00d9ff33;border-color:#00d9ff;color:#00d9ff}.show-poster-wizard .toggle-option input{display:none}@media (max-width:768px){.show-poster-wizard{margin:1rem;max-height:95vh}.show-poster-wizard .modal-body{padding:1rem}.show-poster-wizard .wizard-options-row{grid-template-columns:1fr}.show-poster-footer{align-items:stretch;flex-direction:column}.show-poster-footer .footer-actions{justify-content:flex-end}}.show-checkout{padding:1rem 0}.show-checkout .checkout-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.show-checkout .checkout-title-section{display:flex;flex-direction:column;gap:.5rem}.show-checkout .checkout-title-section h1{color:#e0e0e0;margin:0}.show-checkout .checkout-subtitle{color:grey;font-size:.95rem;margin:0}.show-checkout .btn-back{align-self:flex-start;margin-bottom:.5rem}.show-checkout .checkout-actions{display:flex;gap:.75rem}.show-checkout .btn-create{font-size:1.1rem;padding:.75rem 1.5rem}.checkout-episodes{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;max-height:500px;overflow-y:auto}.checkout-episode-card{align-items:center;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;cursor:grab;display:flex;gap:1rem;padding:.75rem 1rem;transition:all .2s ease}.checkout-episode-card:hover{border-color:#00d9ff;box-shadow:0 4px 16px #00d9ff26}.checkout-episode-card.dragging{border-color:#00d9ff;cursor:grabbing;opacity:.5;transform:scale(1.02)}.episode-order{flex-shrink:0;gap:.5rem}.episode-order,.order-buttons{align-items:center;display:flex}.order-buttons{flex-direction:column;gap:.25rem}.order-btn{align-items:center;background:#ffffff1a;border:none;border-radius:4px;color:grey;cursor:pointer;display:flex;font-size:.7rem;height:18px;justify-content:center;transition:all .2s;width:24px}.order-btn:hover:not(:disabled){background:#00d9ff;color:#0a0a1a}.order-btn:disabled{cursor:not-allowed;opacity:.3}.order-number{color:#00d9ff;font-size:.9rem;font-weight:700;min-width:24px;text-align:center}.drag-handle{color:#606060;cursor:grab;font-size:1.2rem;letter-spacing:2px;-webkit-user-select:none;user-select:none}.drag-handle:hover{color:#00d9ff}.episode-thumbnail{border-radius:6px;flex-shrink:0;height:45px;overflow:hidden;width:150px}.episode-thumbnail img{height:100%;image-rendering:pixelated;object-fit:cover;width:100%}.episode-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.episode-code{color:#00d9ff;font-size:.85rem;font-weight:600}.episode-info .episode-title{color:#e0e0e0;font-size:1rem;font-weight:600}.episode-info .episode-title,.episode-info .episode-title-french{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.episode-info .episode-title-french{color:#a0a0a0;font-size:.85rem}.show-checkout .checkout-preview-section{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;padding:1.5rem}.show-checkout .checkout-preview-section h3{color:#e0e0e0;margin:0 0 1rem}.stacked-preview{background:#0a0a1a;border-radius:8px;display:flex;flex-direction:column;height:300px;overflow:hidden}.preview-thumbnail{flex:1 1;min-height:0;overflow:hidden;position:relative}.preview-thumbnail img{height:100%;image-rendering:pixelated;object-fit:cover;width:100%}.preview-label{align-items:center;background:linear-gradient(#0000,#000c);bottom:0;display:flex;gap:.5rem;left:0;padding:.5rem 1rem;position:absolute;right:0}.preview-code{color:#00d9ff;flex-shrink:0;font-size:.75rem;font-weight:600}.preview-title{color:#e0e0e0;flex:1 1;font-size:.75rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.show-checkout.checkout-empty{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem}.show-checkout.checkout-empty h2{color:#e0e0e0;margin:0 0 .5rem}.show-checkout.checkout-empty p{color:grey;margin:0 0 1.5rem}.episodes-header-controls{align-items:center;display:flex;gap:16px}.checkout-btn{white-space:nowrap}.checkout-btn:disabled{cursor:not-allowed;opacity:.5}.season-checkboxes{align-items:center;background:#ffffff0d;border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:16px}.season-checkboxes-label{color:#aaa;font-size:.9rem;margin-right:8px}.season-checkbox-list{display:flex;flex-wrap:wrap;gap:12px}.season-checkbox-item{align-items:center;background:#ffffff14;border-radius:6px;cursor:pointer;display:flex;gap:6px;padding:8px 12px;transition:background .2s ease}.season-checkbox-item:hover{background:#ffffff1f}.season-checkbox-item input[type=checkbox]{accent-color:#e50914;cursor:pointer;height:18px;width:18px}.season-checkbox-item span{color:#ddd;font-size:.9rem}.season-checkbox-item.locked{cursor:not-allowed;opacity:.6}.season-checkbox-item.locked input[type=checkbox]{cursor:not-allowed}.locked-hint{color:#ff9800;font-size:.85rem;font-style:italic;margin-left:auto}@media (max-width:768px){.show-checkout .checkout-header{flex-direction:column}.show-checkout .checkout-actions{justify-content:space-between;width:100%}.checkout-episode-card{flex-wrap:wrap}.episode-thumbnail{height:36px;width:120px}.episode-info{order:3;width:100%}.stacked-preview{height:200px}}.episode-detail{margin:0 auto;max-width:1400px}.episode-detail-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.back-link{color:#9b59b6;font-weight:500;text-decoration:none;transition:color .2s}.back-link:hover{color:#8e44ad;text-decoration:underline}.episode-detail-actions{display:flex;gap:1rem}.episode-info-section{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #2a2a3e;border-radius:12px;margin-bottom:2rem;padding:2rem}.episode-info-main{margin-bottom:1.5rem}.episode-detail-title{color:#e0e0e0;font-size:2rem;font-weight:700;margin:0;width:100%}.episode-detail-subtitle{color:#b0b0b0;font-size:1.4rem;font-style:italic;font-weight:500;margin:.5rem 0 0;width:100%}.episode-detail-meta{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.episode-detail-number{color:#9b59b6;font-size:1.2rem;font-weight:600}.episode-type-badge{border-radius:4px;font-size:.75rem;font-weight:600;padding:.3rem .6rem;text-transform:uppercase}.episode-type-pilot{background:#2ecc714d;border:1px solid #2ecc7180;color:#2ecc71}.episode-type-finale{background:#e74c3c4d;border:1px solid #e74c3c80;color:#e74c3c}.episode-type-special{background:#f1c40f4d;border:1px solid #f1c40f80;color:#f1c40f}.episode-detail-secondary-meta{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:.75rem}.episode-air-date{color:#b0b0b0;font-size:1rem}.episode-network{color:#9b59b6;font-size:1rem;font-weight:500}.episode-synopsis{background:#0003;border-left:3px solid #9b59b6;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.episode-synopsis p{color:silver;font-size:1rem;line-height:1.6;margin:0}.episode-metadata{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metadata-item{display:flex;flex-direction:column;gap:.25rem}.metadata-item-fullwidth{grid-column:1/-1}.metadata-label{color:grey;font-size:.85rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.metadata-value{color:#e0e0e0}.metadata-link,.metadata-value{font-size:1.1rem;font-weight:500}.metadata-link{color:#9b59b6;text-decoration:none;transition:color .2s}.metadata-link:hover{color:#8e44ad;text-decoration:underline}.metadata-filename{color:#b0b0b0;font-family:Courier New,monospace;word-break:break-all}.metadata-input{background:#2a2a3e;border:1px solid #3a3a4e;border-radius:6px;color:#e0e0e0;font-family:inherit;font-size:1rem;padding:.6rem;transition:border-color .2s,background .2s;width:100%}.metadata-input:focus{background:#1a1a2e;border-color:#9b59b6;outline:none}.metadata-input::placeholder{color:grey}.metadata-textarea{min-height:100px;resize:vertical}.palette-section{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:12px;margin-bottom:2rem;padding:2rem}.section-title{color:#9b59b6;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.palette-container{display:flex;flex-direction:column;gap:1.5rem}.palette-image-wrapper{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:8px;cursor:crosshair;overflow:hidden;position:relative;width:100%}.palette-image{display:block;height:256px;image-rendering:pixelated;width:100%}.palette-cursor{background:#fffc;bottom:0;box-shadow:0 0 10px #ffffff80;pointer-events:none;position:absolute;top:0;width:2px}.frame-preview{background:#0a0a0a;border:1px solid #2a2a2a;border-radius:8px;overflow:hidden;position:relative}.frame-image{display:block;height:auto;max-height:600px;object-fit:contain;width:100%}.frame-position{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c;border-radius:6px;color:#9b59b6;font-size:.9rem;font-weight:500;padding:.5rem 1rem;position:absolute;right:1rem;top:1rem}@media (max-width:768px){.episode-detail-header{align-items:stretch;flex-direction:column}.episode-detail-actions{flex-direction:column}.episode-detail-title{font-size:1.5rem}.episode-detail-subtitle{font-size:1.1rem}.episode-detail-number{font-size:1rem}.episode-metadata{grid-template-columns:1fr}.frame-image{max-height:400px}}.app{background:var(--filmdna-background);color:var(--filmdna-text);display:flex;flex-direction:column;min-height:100vh}.app-header{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);box-shadow:0 4px 6px #0000004d;padding:1.5rem 0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{align-items:center;display:flex;gap:2rem;justify-content:space-between}.app-header .logo{color:inherit;display:inline-block;text-decoration:none}.app-header h1{color:var(--filmdna-primary);font-size:2rem;font-weight:700;letter-spacing:-.5px;margin-bottom:.25rem}.app-header .tagline{color:var(--filmdna-text-muted);font-size:.9rem;font-weight:400}.main-nav{display:flex;gap:.5rem}.nav-link{border:1px solid #0000;border-radius:8px;color:var(--filmdna-text-muted);font-size:1rem;font-weight:500;padding:.6rem 1.25rem;text-decoration:none;transition:all .2s}.nav-link:hover{background:#ffffff0d;color:var(--filmdna-text)}.nav-link.active{background:#00d9ff1a;border-color:#00d9ff4d;color:var(--filmdna-primary)}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:1rem}.main-nav{width:100%}.nav-link{flex:1 1;text-align:center}}.app-main{flex:1 1;padding:2rem 0}.app-footer{background:var(--filmdna-card-bg);border-top:1px solid var(--filmdna-border);color:var(--filmdna-text-muted);font-size:.9rem;padding:1.5rem 0;text-align:center}.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.spinner{animation:spin 1s linear infinite;border-top:4px solid var(--filmdna-border);border:4px solid var(--filmdna-border);border-radius:50%;border-top-color:var(--filmdna-primary);height:50px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error{background:#ff44441a;border:1px solid var(--filmdna-secondary);border-radius:8px;color:var(--filmdna-secondary);margin:1rem 0;padding:1rem}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:.95rem;font-weight:500;padding:.625rem 1.25rem;text-decoration:none;transition:all .2s}.btn-primary{background:linear-gradient(135deg,var(--filmdna-primary) 0,var(--filmdna-primary) 100%);color:#fff}.btn-primary:hover{box-shadow:0 4px 8px #00d9ff4d;filter:brightness(1.1);transform:translateY(-1px)}.btn-secondary{background:var(--filmdna-border);border:1px solid var(--filmdna-border);color:var(--filmdna-text)}.btn-secondary:hover{background:var(--filmdna-hover-bg);border-color:var(--filmdna-text-muted)}.btn-danger{background:linear-gradient(135deg,var(--filmdna-secondary) 0,#c00 100%);color:#fff}.btn-danger:hover{box-shadow:0 4px 8px #ff44444d;filter:brightness(1.1);transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.5}.input{background:var(--filmdna-input-bg);border:1px solid var(--filmdna-border);border-radius:6px;color:var(--filmdna-text);font-size:1rem;padding:.75rem;transition:all .2s;width:100%}.input:focus{border-color:var(--filmdna-primary);box-shadow:0 0 0 3px #00d9ff1a;outline:none}.input::placeholder{color:var(--filmdna-text-muted)}.modal-backdrop{align-items:center;background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal{background:var(--filmdna-card-bg);border:1px solid var(--filmdna-border);border-radius:12px;box-shadow:0 20px 60px #00000080;max-height:90vh;max-width:90vw;overflow:auto}.modal-header{align-items:center;border-bottom:1px solid var(--filmdna-border);display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:var(--filmdna-primary);font-size:1.5rem}.modal-body,.modal-footer{padding:1.5rem}.modal-footer{border-top:1px solid var(--filmdna-border);display:flex;gap:1rem;justify-content:flex-end}.close-btn{align-items:center;background:none;border:none;border-radius:4px;color:var(--filmdna-text-muted);cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;transition:all .2s;width:30px}.close-btn:hover{background:var(--filmdna-border);color:var(--filmdna-text)}.modal-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:2000}.modal-content{background:linear-gradient(135deg,var(--filmdna-card-bg) 0,var(--filmdna-card-bg-alt) 100%);border:1px solid var(--filmdna-border);border-radius:12px;box-shadow:0 20px 60px #00000080;max-width:500px;width:100%}.delete-confirm-modal{padding:2rem}.modal-title{color:var(--filmdna-secondary);font-size:1.5rem;font-weight:600;margin:0 0 1rem}.delete-confirm-message{color:var(--filmdna-text);font-size:1rem;line-height:1.6;margin:0 0 2rem}.delete-confirm-message strong{color:var(--filmdna-secondary)}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}
/*# sourceMappingURL=main.63a958c5.css.map*/