body{background-color:#f4f7f6;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;padding:2rem}.container{background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000000d;margin:0 auto;max-width:900px;padding:2rem}.header{border-bottom:2px solid #eee;margin-bottom:2rem;padding-bottom:1rem}.error,.loading{font-size:1.2rem;padding:2rem;text-align:center}.error{background:#fff8f8;border:1px solid #e0b4b4;border-radius:8px;color:#d9534f;margin:1rem 0}.main-title{color:#1a2b48;font-size:2.2rem;text-align:center}.subtitle{color:#555;font-size:1.1rem;margin-top:-1rem}.limit-reached-box,.subtitle{margin-bottom:2rem;text-align:center}.limit-reached-box{background:#fff8f8;border:1px solid #e0b4b4;border-radius:8px;padding:1.5rem}.limit-reached-box h3{color:#d9534f;margin-top:0}.example-container{background:#f9f9f9;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.example-container h3{margin-top:0;text-align:center}.before-after-static{align-items:center;display:flex;gap:1.5rem;justify-content:center}.ba-arrow{color:#0275d8;font-size:2.5rem;font-weight:700}.ba-image{text-align:center}.ba-image img{background-color:#eee;border:1px solid #ddd;border-radius:6px;height:300px;max-width:300px;-o-object-fit:cover;object-fit:cover;width:100%}.ba-image span{color:#777;display:block;font-weight:500;margin-top:.5rem}.gallery{margin-top:3rem}.gallery h2{font-size:1.8rem;margin-bottom:1.5rem;text-align:center}.gallery-grid-ba{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.ba-card-item{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 4px #0000000d;overflow:hidden}.ba-card-images{align-items:center;display:flex;gap:.5rem;justify-content:space-around;padding:1rem}.ba-image-small{text-align:center;width:45%}.ba-image-small img{aspect-ratio:1/1;background-color:#eee;border:1px solid #eee;border-radius:4px;height:auto;-o-object-fit:cover;object-fit:cover;width:100%}.ba-image-small span{color:#777;display:block;font-size:.85rem;margin-top:.25rem}.ba-arrow-small{color:#0275d8;font-size:1.5rem}.gallery-empty{color:#888;font-style:italic;text-align:center}.generation-form{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.generation-form label{font-size:1.1rem;font-weight:500;margin-bottom:-.5rem}.file-input-hidden{display:none}.file-upload-label-box{align-items:center;background:#f7faff;border:2px dashed #0275d8;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:2.5rem 1.5rem;text-align:center;transition:background-color .2s}.file-upload-label-box:hover{background:#eef5ff}.file-upload-label-box .file-upload-icon{font-size:2.5rem;margin-bottom:.5rem}.file-upload-label-box span{color:#0275d8;font-size:1.1rem;font-weight:500}.preview-active-container{align-items:center;display:flex;gap:1.5rem}.preview-active-container .image-preview{border:2px dashed #ccc;border-radius:6px;flex-grow:1;margin-top:0;padding:1rem;text-align:center}.image-preview p{color:#555;font-weight:500;margin-top:0}.image-preview img{background:#f9f9f9;border-radius:6px;max-height:300px;-o-object-fit:contain;object-fit:contain;width:100%}.file-change-button{background:#fff;border:1px solid #0275d8;border-radius:6px;color:#0275d8;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;padding:.75rem 1.25rem;transition:background-color .2s,color .2s;white-space:nowrap}.file-change-button:hover,.generation-form button{background-color:#0275d8;color:#fff}.generation-form button{border:none;border-radius:6px;cursor:pointer;font-size:1.1rem;font-weight:600;padding:.85rem}.generation-form button:disabled{background-color:#aaa;cursor:not-allowed}@media(max-width:768px){body{padding:.5rem}.container{padding:1rem}.before-after-static{flex-direction:column;gap:.5rem}.ba-arrow{margin:.5rem 0;transform:rotate(90deg)}.ba-image img{max-width:100%}.gallery-grid-ba{gap:1rem;grid-template-columns:1fr}.ba-card-images{flex-direction:column;gap:.5rem}.ba-image-small{width:90%}.ba-arrow-small{margin:.5rem 0;transform:rotate(90deg)}.main-title{font-size:1.8rem}.subtitle{font-size:1rem}.gallery h2{font-size:1.5rem}.preview-active-container{flex-direction:column;gap:1rem}.preview-active-container .image-preview{width:100%}.file-change-button{text-align:center;width:100%}}
