.header{padding:40px 20px 20px;background-color:#fff;text-align:center;box-shadow:0 2px 4px #0000001a}.header-title{font-size:28px;font-weight:700;color:#000;margin-bottom:12px;text-transform:uppercase;letter-spacing:3px}.header-subtitle{font-size:12px;color:#4b5563;text-transform:uppercase;letter-spacing:2px}@media (max-width: 768px){.header-title{font-size:22px;letter-spacing:2px}.header-subtitle{font-size:10px}}.credits-banner{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background-color:#fff;box-shadow:0 1px 3px #0000001a}.credits-text{font-size:16px;font-weight:600;color:#000}.buy-button{background-color:#f56400;color:#fff;padding:8px 24px;border-radius:25px;font-size:14px;font-weight:600;transition:background-color .2s}.buy-button:hover:not(:disabled){background-color:#d45500}.buy-button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.credits-banner{padding:10px 16px}.credits-text{font-size:14px}.buy-button{padding:6px 18px;font-size:13px}}.form-field{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.form-select,.form-input,.form-textarea{width:100%;padding:12px 16px;font-size:14px;border:1px solid #d1d5db;border-radius:8px;background-color:#fff;transition:border-color .2s,box-shadow .2s}.form-select:focus,.form-input:focus,.form-textarea:focus{outline:none;border-color:#f56400;box-shadow:0 0 0 3px #f564001a}.form-textarea{resize:vertical;min-height:100px;font-family:inherit}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:20px;padding-right:40px}.tags-container{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:10px 16px;border-radius:20px;border:2px solid #000;background-color:#fff;font-size:13px;font-weight:500;color:#000;cursor:pointer;transition:all .2s}.tag:hover{opacity:.8}.tag-selected{background-color:#000;color:#fff}.tag-custom{border-color:#6b7280;border-style:dashed;background-color:#f9fafb;color:#6b7280}.custom-input-container{margin-top:12px}.custom-input{width:100%;padding:12px;border:2px solid #000;border-radius:8px;font-size:14px;background-color:#fff}.custom-input:focus{outline:none;border-color:#f56400}.custom-buttons{display:flex;gap:8px;margin-top:8px}.custom-btn-cancel,.custom-btn-add{flex:1;padding:10px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s}.custom-btn-cancel{border:2px solid #000;background-color:#fff;color:#000}.custom-btn-add{border:none;background-color:#000;color:#fff}.custom-btn-cancel:hover,.custom-btn-add:hover{opacity:.8}@media (max-width: 768px){.form-label{font-size:13px}.form-select,.form-input,.form-textarea{font-size:13px;padding:10px 14px}}.photo-upload-grid{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.grid-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:24px}.grid-row:last-child{margin-bottom:0}.grid-cell{display:flex;flex-direction:column}.cell-title{font-size:16px;font-weight:600;color:#333;margin-bottom:12px;text-align:center}.upload-zone{flex:1;min-height:160px}.upload-label{display:block;height:100%;cursor:pointer;border:2px dashed #ddd;border-radius:8px;transition:all .3s ease;overflow:hidden}.upload-label:hover{border-color:#f56400;background-color:#fff8f3}.upload-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:160px}.upload-icon{font-size:48px;margin-bottom:8px}.upload-text{font-size:14px;color:#666;font-weight:500}.preview-container{position:relative;width:100%;height:100%;min-height:160px}.preview-image{width:100%;height:100%;object-fit:cover}.remove-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background-color:#0009;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.remove-btn:hover{background-color:#f00c}.grid-select{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;background-color:#fff;cursor:pointer;transition:border-color .3s ease}.grid-select:hover{border-color:#f56400}.grid-select:focus{outline:none;border-color:#f56400;box-shadow:0 0 0 3px #f564001a}.photo-slot{flex:1;min-height:140px}.photo-label{display:block;height:100%;cursor:pointer;border:2px solid #e0e0e0;border-radius:8px;transition:all .3s ease;overflow:hidden;background-color:#f9f9f9}.photo-label:hover{border-color:#f56400;background-color:#fff8f3}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:140px}.photo-icon{font-size:40px;margin-bottom:8px}.photo-text{font-size:13px;color:#888;font-weight:500}.photo-preview{position:relative;width:100%;height:100%;min-height:140px}.photo-image{width:100%;height:100%;object-fit:cover}.remove-photo-btn{position:absolute;top:6px;right:6px;width:24px;height:24px;background-color:#0009;color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.remove-photo-btn:hover{background-color:#f00c}@media (max-width: 768px){.photo-upload-grid{padding:16px}.grid-row{grid-template-columns:1fr;gap:16px;margin-bottom:16px}.cell-title{font-size:15px;margin-bottom:10px}.upload-zone,.photo-slot,.upload-placeholder,.photo-placeholder,.preview-container,.photo-preview{min-height:180px}}@media (max-width: 480px){.photo-upload-grid{padding:12px}.grid-row{gap:12px}.cell-title{font-size:14px}.grid-select{padding:10px;font-size:13px}}.section{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;overflow:hidden}.section-header{background-color:#f9fafb;padding:16px 20px}.section-title{font-size:20px;font-weight:700;color:#111827;text-transform:uppercase;letter-spacing:1px}.section-content{padding:24px 20px;background-color:#fff;border-radius:12px;margin-bottom:16px;box-shadow:0 1px 3px #0000000d}.step-header{display:flex;align-items:center;margin-bottom:20px;gap:12px}.step-number{width:32px;height:32px;background-color:#000;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.step-title{font-size:18px;font-weight:600;color:#111827;margin:0}.collapsible-section{cursor:pointer}.collapsible-header{display:flex;justify-content:space-between;align-items:center;transition:background-color .2s}.collapsible-header:hover{opacity:.8}.photo-settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.generate-button{width:100%;padding:14px 24px;background-color:#f56400;color:#fff;font-size:16px;font-weight:600;border-radius:8px;margin-top:16px;transition:background-color .2s,transform .1s}.generate-button:hover{background-color:#d45500}.generate-button:active{transform:scale(.98)}.result-container{margin-top:24px;padding:20px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.result-header h3{font-size:16px;font-weight:600;color:#111827}.copy-button{background-color:#3b82f6;color:#fff;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;transition:background-color .2s}.copy-button:hover{background-color:#2563eb}.result-text{font-size:14px;line-height:1.6;color:#374151;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.section{margin-bottom:16px;border-radius:8px}.section-header{padding:12px 16px}.section-title{font-size:18px}.section-content{padding:20px 16px}.photo-settings-grid{grid-template-columns:1fr;gap:12px}.generate-button{padding:12px 20px;font-size:15px}.result-container{padding:16px}.result-text{font-size:13px}}.app{min-height:100vh;background-color:#f5f5f5}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background-color:#fff}.loader{width:48px;height:48px;border:5px solid #f3f3f3;border-top:5px solid #F56400;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container p{font-size:16px;color:#666}.main-content{padding:24px 16px 48px}.container{max-width:900px;margin:0 auto}.intro-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:32px 24px;border-radius:12px;margin-bottom:32px;box-shadow:0 4px 12px #00000026}.intro-title{font-size:28px;font-weight:700;margin-bottom:12px;text-align:center}.intro-text{font-size:16px;line-height:1.6;text-align:center;opacity:.95}.footer-note{background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:16px 20px;margin-top:32px}.footer-note p{font-size:14px;color:#856404;line-height:1.6;margin:0}.footer-note strong{font-weight:600}@media (max-width: 768px){.main-content{padding:16px 12px 32px}.intro-section{padding:24px 20px;margin-bottom:24px}.intro-title{font-size:24px}.intro-text{font-size:15px}.footer-note{padding:14px 16px;margin-top:24px}.footer-note p{font-size:13px}}@media (max-width: 480px){.intro-title{font-size:20px}.intro-text{font-size:14px}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;color:#333}#root{min-height:100vh}.signin-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8f7f5}.signin-card{background:#fff;border-radius:12px;padding:52px 44px;max-width:400px;width:100%;text-align:center;box-shadow:0 4px 24px #00000014}.signin-logo{margin-bottom:36px}.signin-title{font-size:1.8em;font-weight:500;letter-spacing:1px;color:#1a1a1a;margin-bottom:6px}.signin-subtitle{font-size:.95em;color:#888;font-weight:300}.google-signin-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:14px 20px;background:#fff;border:1.5px solid #dadce0;border-radius:6px;font-size:.95em;font-weight:500;color:#3c4043;cursor:pointer;transition:background .2s,box-shadow .2s;margin-bottom:16px}.google-signin-btn:hover:not(:disabled){background:#f8f9fa;box-shadow:0 2px 8px #0000001a}.google-signin-btn:disabled{opacity:.6;cursor:not-allowed}.signin-error{color:#d93025;font-size:.85em;margin-bottom:12px}.signin-note{font-size:.8em;color:#aaa}button{font-family:inherit;cursor:pointer;border:none;outline:none}input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}div[style*=upload],div[class*=upload],.notification-container{border:none!important;border-top:none!important;border-bottom:none!important;background:transparent!important;box-shadow:none!important}
