@import"https://fonts.googleapis.com/css2?family=Hanken+Grotesk:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";body,button,input,select,textarea,p,span,div,label{font-family:Plus Jakarta Sans,sans-serif}h1,h2,h3,h4,h5,h6,.headline,.font-heading{font-family:Hanken Grotesk,sans-serif}\feff:root{--background-color: #FAF8FF;--surface-color: #FFFFFF;--primary-color: #004AC6;--primary-hover-color: #003799;--text-color: #131B2E;--text-secondary-color: #5C6479;--border-color: #E2E8F0;--border-radius: 14px;--font-family: "Plus Jakarta Sans", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-family);background-color:#fff;color:var(--text-color);display:flex;justify-content:center;align-items:center;padding:1rem}#root{width:100%;height:100%;max-width:1200px;max-height:900px}.app-container{display:flex;flex-direction:row;width:100%;height:100%;background-color:var(--surface-color);border-radius:var(--border-radius);box-shadow:0 8px 32px #004ac60f;overflow:hidden;border:1px solid var(--border-color)}.controls-panel{width:350px;padding:2rem;display:flex;flex-direction:column;border-right:1px solid var(--border-color);overflow-y:auto}.controls-panel h1{font-size:1.75rem;font-weight:700;margin-bottom:2rem}.controls-form{display:flex;flex-direction:column;flex-grow:1;gap:2rem}.form-section{display:flex;flex-direction:column;gap:1.5rem}.section-header{font-size:.875rem;font-weight:600;color:var(--text-secondary-color);text-transform:uppercase;letter-spacing:.05em;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.form-group{display:flex;flex-direction:column}.label-group{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.label-group label{margin-bottom:0;font-size:.875rem;font-weight:500;color:var(--text-secondary-color)}.enhance-button{background:none;border:1px solid var(--border-color);color:var(--text-secondary-color);padding:.25rem .6rem;border-radius:1rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.enhance-button:hover:not(:disabled){background-color:var(--border-color);color:var(--text-color)}.enhance-button:disabled{opacity:.5;cursor:not-allowed}.form-group label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary-color)}.prompt-textarea,.dimension-input,.asset-select{width:100%;padding:.75rem;background-color:#fff;border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);font-family:var(--font-family);font-size:1rem;transition:border-color .2s,box-shadow .2s}.prompt-textarea:focus,.dimension-input:focus,.asset-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color)}.prompt-textarea{min-height:100px;resize:vertical}.style-presets-group{display:flex;flex-wrap:wrap;gap:.5rem}.style-button{background-color:#fff;border:1px solid var(--border-color);color:var(--text-secondary-color);padding:.5rem 1rem;border-radius:var(--border-radius);font-size:.875rem;cursor:pointer;transition:all .2s ease}.style-button:hover{border-color:var(--primary-color);color:var(--text-color)}.style-button.selected{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.image-upload-area{margin-top:.5rem}.image-upload-input{display:none}.image-upload-label{display:inline-block;width:100%;padding:.75rem;background-color:#fff;border:1px dashed var(--border-color);border-radius:var(--border-radius);color:var(--text-secondary-color);text-align:center;cursor:pointer;transition:all .2s ease}.image-upload-label:hover{border-color:var(--primary-color);color:var(--text-color)}.image-preview-container{position:relative;margin-top:.5rem;border-radius:var(--border-radius);overflow:hidden;border:1px solid var(--border-color)}.image-preview{display:block;width:100%;height:auto;max-height:150px;object-fit:cover}.remove-image-button{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background-color:#000000b3;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;line-height:1;transition:background-color .2s}.remove-image-button:hover{background-color:#000000e6}.suggest-colors-button{width:100%;padding:.5rem;background-color:#fff;border:1px solid var(--border-color);color:var(--text-secondary-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;font-size:.875rem}.suggest-colors-button:hover:not(:disabled){border-color:var(--primary-color);color:var(--text-color)}.suggest-colors-button:disabled{opacity:.5;cursor:not-allowed}.palette-suggestions-group{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.palette-row{display:flex;gap:.5rem;padding:.5rem;border:2px solid transparent;border-radius:var(--border-radius);cursor:pointer;transition:border-color .2s,background-color .2s}.palette-row:hover{background-color:#ffffff0d}.palette-row.selected{border-color:var(--primary-color)}.color-swatch{width:100%;height:40px;border-radius:4px;border:1px solid rgba(0,74,198,.06)}.brand-colors-group{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.brand-color-input-wrapper{display:flex;align-items:center;width:100%;border-radius:var(--border-radius);border:1px solid var(--border-color);transition:border-color .2s,box-shadow .2s;background-color:#fff}.brand-color-input-wrapper:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--primary-color)}.color-swatch-input{width:40px;height:38px;border-radius:var(--border-radius) 0 0 var(--border-radius);transition:background-color .2s;background-color:#f1f5f9;border-right:1px solid var(--border-color)}.brand-color-input{flex:1;height:40px;padding:.75rem;background-color:transparent;border:none;color:var(--text-color);font-family:var(--font-family);font-size:1rem}.brand-color-input:focus{outline:none}.dimensions-group{display:flex;gap:1rem}.dimension-wrapper{flex:1;display:flex;flex-direction:column}.dimension-wrapper label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary-color)}.aspect-ratio-note,.creativity-note{font-size:.75rem;color:var(--text-secondary-color);margin-top:.5rem}.generate-button{background-color:var(--primary-color);color:#fff;border:none;padding:.875rem;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;display:flex;justify-content:center;align-items:center;gap:.5rem;margin-top:auto}.generate-button:hover:not(:disabled){background-color:var(--primary-hover-color)}.generate-button:disabled{background-color:#444;cursor:not-allowed;opacity:.7}.display-panel{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;position:relative}.placeholder,.error-message{text-align:center;color:var(--text-secondary-color)}.placeholder-icon{font-size:4rem;margin-bottom:1rem}.loader-container{display:flex;flex-direction:column;align-items:center}.loader{border:4px solid rgba(255,255,255,.2);border-left-color:var(--primary-color);border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.generated-image-wrapper{display:flex;flex-direction:column;align-items:center;gap:1.5rem;width:100%;height:100%}.generated-image{max-width:100%;max-height:calc(100% - 60px);object-fit:contain;border-radius:var(--border-radius);box-shadow:0 4px 16px #004ac60f}.download-button{background-color:#333;color:var(--text-color);border:1px solid var(--border-color);padding:.75rem 1.5rem;border-radius:var(--border-radius);font-size:1rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background-color .2s}.download-button:hover{background-color:#444}.app-loading{display:flex;justify-content:center;align-items:center;height:100vh;background-color:#fff}.api-key-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#fff;display:flex;justify-content:center;align-items:center;z-index:1000}.api-key-card{background-color:var(--surface-color);padding:3rem;border-radius:var(--border-radius);border:1px solid var(--border-color);text-align:center;max-width:500px;box-shadow:0 8px 32px #0006}.api-key-card h1{margin-bottom:1.5rem;font-size:2rem}.api-key-card p{margin-bottom:2rem;color:var(--text-secondary-color);line-height:1.6}.billing-note{margin-top:1.5rem!important;font-size:.875rem}.billing-note a{color:var(--primary-color);text-decoration:none}.billing-note a:hover{text-decoration:underline}@media(max-width:768px){.app-container{flex-direction:column;height:auto;max-height:none}.controls-panel{width:100%;border-right:none;border-bottom:1px solid var(--border-color)}.display-panel{min-height:400px}}
