.photoshoots-screen{min-height:100vh;display:flex;flex-direction:column}.photoshoots-content{flex:1;padding:5rem 1rem;max-width:100%;width:100%}@media screen and (min-width:1280px){.photoshoots-content{padding:12px 2.5rem;max-width:calc(100% - 5rem);margin:0 auto}}.photoshoots-layout{display:grid;grid-template-columns:400px 1fr;gap:1.5rem}.photoshoots-controls{display:flex;flex-direction:column;gap:1rem}.batch-photoshoot-button{padding:.6rem 1.2rem;font-size:.8rem;font-weight:600;margin-bottom:.4rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-weight:500;color:#1f2933;font-size:.8rem}.form-field select{padding:.6rem;border-radius:8px;border:1px solid #d0d5dd;background-color:#ffffff;color:#1f2933;font-family:inherit;font-size:.8rem;cursor:pointer}.form-field select:focus{outline:none;border-color:#eef2ff}.form-field select:disabled{opacity:.6;cursor:not-allowed}.selected-scene-preview{margin-top:.5rem;overflow:visible;background-color:#f6f7fb;justify-content:center;padding:.5rem;min-height:120px}.product-select-button,.selected-scene-preview{border-radius:8px;border:1px solid #d0d5dd;display:flex;align-items:center}.product-select-button{padding:.6rem;background-color:#ffffff;color:#1f2933;font-family:inherit;font-size:.8rem;cursor:pointer;text-align:left;transition:all .25s ease;justify-content:space-between}.product-select-button:hover:not(:disabled){border-color:#eef2ff;background-color:rgba(37,99,235,.08)}.product-select-button:disabled{opacity:.6;cursor:not-allowed}.product-select-button:after{content:"▼";font-size:.8rem;margin-left:auto;opacity:.6}.selected-product-preview{margin-top:.5rem;border-radius:8px;overflow:visible;border:1px solid #d0d5dd;background-color:#f6f7fb;display:flex;align-items:center;justify-content:center;padding:.5rem;min-height:120px}.selected-product-preview .image-display{min-height:120px;width:100%}.selected-product-preview .image-display-img{max-width:100%;max-height:150px;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:4px}.selected-products-preview{margin-top:.5rem;display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.selected-product-preview-item{width:60px;height:60px;border-radius:6px;overflow:hidden;border:1px solid #d0d5dd;background-color:white;display:flex;align-items:center;justify-content:center}.selected-product-preview-item .image-display{width:100%;height:100%;background-color:white}.selected-product-preview-item .image-display-img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.selected-product-more{width:60px;height:60px;border-radius:6px;border:1px solid #d0d5dd;background-color:#f6f7fb;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.6);font-size:.9rem;font-weight:500}.error-message{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem}.error-dismiss-btn{background:none;border:none;color:#1f2933;font-size:1.5rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;flex-shrink:0}.error-dismiss-btn:hover{background-color:rgba(255,255,255,.1)}.error-message{padding:1rem;background-color:rgba(255,107,107,.1);border:1px solid #ff6b6b;border-radius:8px;color:#ff6b6b}.generate-button{padding:.8rem 1.6rem;font-size:.8rem;font-weight:600}.filters-toggle-btn{padding:.4rem .8rem;font-size:.8rem;background-color:transparent;color:#1f2933;border:1px solid #d0d5dd;border-radius:6px;cursor:pointer;transition:all .2s ease}.filters-toggle-btn:hover{border-color:#eef2ff;background-color:rgba(37,99,235,.08)}.filters-toggle-btn.active{border-color:#eef2ff;background-color:rgba(100,108,255,.15);color:#eef2ff}.clear-filters-btn{padding:.5rem 1rem;font-size:.9rem;background-color:transparent;color:#eef2ff;border:1px solid #eef2ff;border-radius:6px;cursor:pointer;transition:all .2s ease}.clear-filters-btn:hover{background-color:rgba(37,99,235,.08)}.results-filters{background-color:#ffffff;border:1px solid #e3e6ec;border-radius:8px;padding:1.5rem;gap:1.5rem}.filter-group,.results-filters{display:flex;flex-direction:column}.filter-group{gap:.75rem}.filter-label{font-size:.8rem;font-weight:600;color:#1f2933}.filter-checkboxes{display:flex;flex-wrap:wrap;gap:.6rem}.approval-filter-select{padding:.4rem;border-radius:6px;border:1px solid #d0d5dd;background-color:#f6f7fb;color:#1f2933;font-family:inherit;font-size:.8rem;cursor:pointer;width:100%;max-width:300px}.approval-filter-select:focus{outline:none;border-color:#eef2ff}.filter-checkbox{display:flex;align-items:center;gap:.4rem;cursor:pointer;font-size:.8rem;color:#1f2933;padding:.4rem .6rem;border-radius:6px;background-color:#f6f7fb;border:1px solid #d0d5dd;transition:all .2s ease}.filter-checkbox:hover{border-color:#eef2ff;background-color:rgba(37,99,235,.08)}.filter-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:#eef2ff}.filter-checkbox input[type=checkbox]:checked+span{color:#eef2ff;font-weight:500}.filter-checkbox:has(input[type=checkbox]:checked){border-color:#eef2ff;background-color:rgba(100,108,255,.15)}.loading-container{display:flex;justify-content:center;padding:2rem}.no-results{padding:2rem;text-align:center;color:#888;background-color:#ffffff;border-radius:8px;font-size:.8rem}.result-item{display:flex;flex-direction:column;gap:.5rem}.result-image-clickable{position:relative;transition:opacity .2s ease}.result-image-clickable:hover{opacity:.9}.result-edit-button-container{display:flex;justify-content:center;padding:.5rem 0;margin-top:.5rem}.edit-btn{padding:.4rem 1.2rem;background-color:#eef2ff;color:#1d4ed8;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.edit-btn:hover{background-color:#1d4ed8;color:white;transform:translateY(-1px);box-shadow:0 4px 12px rgba(37,99,235,.14)}.edit-btn:active{transform:translateY(0)}.result-actions{display:flex;gap:.5rem;justify-content:center;padding:.5rem 0}.approval-btn{background:none;border:2px solid #d0d5dd;border-radius:8px;padding:.4rem .6rem;font-size:1rem;cursor:pointer;transition:all .2s;background-color:#ffffff}.approval-btn:hover{border-color:#eef2ff;background-color:rgba(37,99,235,.08);transform:scale(1.1)}.approval-btn.active{border-color:#eef2ff;background-color:rgba(37,99,235,.12)}.approval-btn.thumbs-up.active{border-color:#4caf50;background-color:rgba(76,175,80,.2)}.approval-btn.thumbs-down.active{border-color:#f44336;background-color:rgba(244,67,54,.2)}.action-btn{background:none;border:2px solid #d0d5dd;border-radius:8px;padding:.4rem .6rem;font-size:1rem;cursor:pointer;transition:all .2s;background-color:#ffffff;display:flex;align-items:center;justify-content:center}.action-btn:hover{border-color:#eef2ff;background-color:rgba(37,99,235,.08);transform:scale(1.1)}.action-btn.active{border-color:#eef2ff;background-color:rgba(37,99,235,.12)}.retry-btn:hover{border-color:#eef2ff;background-color:rgba(37,99,235,.08);color:#eef2ff}.retry-btn:active{transform:scale(.98)}.result-quality-failure{font-size:.8rem;color:white;background-color:#f44336;border:1px solid #d32f2f;border-radius:8px;padding:.6rem .8rem;text-align:center;font-weight:600;margin:.4rem 0}.result-style-rule{font-size:.8rem;color:#eef2ff;text-align:center;font-weight:500;padding:.2rem .4rem;background-color:rgba(37,99,235,.08);border-radius:4px}.result-adaptation-summary,.result-prompt,.result-scoring{margin-top:.5rem}.result-adaptation-summary h4,.result-prompt h4,.result-scoring h4{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#1f2933}.prompt-text{font-size:.85rem;color:#475467;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.prompt-text,.scoring-details{margin-top:.5rem;padding:.75rem;background-color:#ffffff;border:1px solid #e3e6ec;border-radius:4px}.scoring-details{overflow-x:auto}.scoring-details pre{margin:0;font-size:.75rem;color:#475467;font-family:Courier New,monospace;white-space:pre-wrap;word-wrap:break-word}.scoring-overview{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e3e6ec}.scoring-item{margin-bottom:.5rem;font-size:.9rem}.scoring-breakdown{display:flex;flex-direction:column;gap:1rem}.score-section{padding:.75rem;background-color:#f6f7fb;border-radius:4px;border:1px solid #e3e6ec}.score-section h5{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#1f2933}.score-details{font-size:.85rem;color:#475467}.score-details p{margin:.25rem 0}.score-notes{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e3e6ec;font-style:italic}.adaptation-text{margin-top:.5rem;padding:.75rem;background-color:#ffffff;border:1px solid #e3e6ec;border-radius:4px;font-size:.85rem;color:#475467;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.result-scene{margin-top:.5rem}.result-scene h4{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#1f2933}.scene-title{margin-bottom:.5rem;padding:.5rem .75rem;background-color:#ffffff;border:1px solid #e3e6ec;border-radius:4px;font-size:.85rem;color:#475467}.scene-thumbnail{width:100%;max-width:200px;height:auto;border-radius:4px;border:1px solid #e3e6ec;-o-object-fit:cover;object-fit:cover}.result-style-rule-details{margin-top:.5rem}.result-style-rule-details h4{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#1f2933}.style-rule-title{padding:.5rem .75rem;background-color:#ffffff;border:1px solid #e3e6ec;border-radius:4px;font-size:.85rem;color:#475467}.user-prompt-textarea{padding:.75rem;border-radius:8px;border:1px solid #d0d5dd;background-color:#ffffff;color:#1f2933;font-family:inherit;font-size:1rem;resize:vertical;min-height:80px}.user-prompt-textarea:focus{outline:none;border-color:#eef2ff}.form-hint{font-size:.85rem;color:rgba(255,255,255,.6);margin-top:.25rem}.score-note{font-size:.75rem;color:rgba(255,255,255,.5);font-style:italic;margin-left:.5rem}.result-aspect-ratio,.result-generation-time{font-size:.85rem;color:#475467;text-align:center}.loading-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;width:100%;min-height:200px;background-color:#202660;border-radius:8px;border:1px solid #d0d5dd;overflow:hidden;padding:2rem}.loading-dither{position:absolute;inset:0;z-index:0;pointer-events:none}.loading-dither canvas,.loading-dither svg{width:100%;height:100%;display:block}.loading-tile .loading-spinner{position:relative;z-index:1}.loading-more-container{display:flex;justify-content:center;padding:2rem;margin-top:1rem}.no-more-results{padding:2rem;text-align:center;color:rgba(255,255,255,.5);font-size:.9rem;margin-top:1rem}@media (max-width:1024px){.photoshoots-layout{grid-template-columns:1fr}}