@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--terracotta:#bd533e;--bg-base:#bd533e;--bg-card:#fff;--text-primary:#000;--text-secondary:#4a4a4a;--text-muted:#767676;--text-white:#fff;--border-color:#000;--border-light:#e5e5e5;--success:#0f9d58;--error:#db4437;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--transition:0.2s ease-in-out}body,html{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-base);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bg-wrapper{display:none}.page-wrapper{position:relative;z-index:1;min-height:100vh;padding:48px 24px 80px}.container{max-width:680px;margin:0 auto}.header{text-align:center;padding:24px 0 40px;color:var(--text-white)}.brand-logo-container{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:24px}.brand-paw{width:48px;height:48px;fill:#000}.brand-name{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#000}.header-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.15);border-radius:100px;padding:6px 16px;font-size:13px;font-weight:600;color:#000;margin-bottom:20px}.header h1{font-size:clamp(32px,5vw,44px);font-weight:800;line-height:1.15;letter-spacing:-.02em;margin-bottom:16px;color:#000}.header p{font-size:15px;font-style:italic;font-weight:400;color:var(--text-white);max-width:520px;margin:0 auto;line-height:1.6}.card{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:32px;margin-bottom:24px;box-shadow:6px 6px 0 #000}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;border:2px dashed var(--border-color);border-radius:var(--radius-md);background:#fafafa;transition:var(--transition);text-align:center}.upload-zone:hover{background:#f0f0f0;border-color:var(--terracotta)}.upload-icon{font-size:32px;margin-bottom:12px}.upload-zone h3{font-size:16px;font-weight:700;margin-bottom:6px;color:var(--text-primary)}.upload-zone p{font-size:13px;color:var(--text-muted);margin-bottom:16px}.upload-btn{display:inline-flex;align-items:center;background:#fff;border:2px solid #000;padding:8px 16px;font-size:14px;font-weight:700;border-radius:var(--radius-sm);color:#000;cursor:pointer;box-shadow:2px 2px 0 #000;transition:var(--transition)}.upload-btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 #000}.file-preview{width:100%;display:flex;align-items:center;gap:16px;background:#fff;border:2px solid #000;border-radius:var(--radius-md);padding:12px 16px}.file-preview-img{width:56px;height:56px;object-fit:cover;border:2px solid #000;border-radius:var(--radius-sm)}.file-preview-info{flex:1 1;min-width:0}.file-preview-name{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-preview-size{font-size:12px;color:var(--text-muted);margin-top:2px}.remove-btn{background:#fff;border:2px solid #000;border-radius:var(--radius-sm);padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:var(--transition)}.remove-btn:hover{background:var(--error);color:#fff}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:520px){.form-grid{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1/-1}.form-group label{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary)}.form-group label .required{color:var(--error)}.form-group input{width:100%;background:#fff;border:2px solid #000;border-radius:var(--radius-sm);padding:12px 14px;font-size:14px;font-family:inherit;color:#000;outline:none;transition:var(--transition)}.form-group input:focus{border-color:var(--terracotta)}.input-hint{font-size:12px;color:var(--text-muted);margin-top:2px}.generate-btn,.send-btn{display:block;width:100%;background:#000;color:#fff;border:2px solid #000;padding:16px 24px;font-size:16px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-md);cursor:pointer;box-shadow:4px 4px 0 var(--terracotta);transition:var(--transition);margin-top:24px}.generate-btn:hover,.send-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--terracotta)}.generate-btn:disabled,.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:2px 2px 0 var(--border-light)}.progress-card{padding:24px 32px}.progress-title{font-size:18px;font-weight:800;margin-bottom:20px;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #000;padding-bottom:8px}.steps-list{display:flex;flex-direction:column;gap:16px}.step-item{display:flex;align-items:center;gap:16px;padding:8px 0;opacity:.5;transition:var(--transition)}.step-item.active{opacity:1;font-weight:700}.step-item.done{opacity:1}.step-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:2px solid #000;border-radius:50%;background:#fff;font-size:14px;font-weight:700}.step-item.done .step-icon{background:var(--success);color:#fff;border-color:var(--success)}.step-item.error-state .step-icon{background:var(--error);color:#fff;border-color:var(--error)}.step-text{flex:1 1}.step-label{font-size:15px;font-weight:700}.step-sublabel{font-size:12px;color:var(--text-muted);margin-top:2px}.spinner{width:16px;height:16px;border:2px solid rgba(0,0,0,.1);border-top-color:#000;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.phone-mockup-wrapper{display:flex;justify-content:center;margin:32px 0}.phone-mockup{position:relative;width:250px;height:500px;background:#000;border:6px solid #000;border-radius:36px;overflow:hidden;box-shadow:8px 8px 0 #000}.phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:110px;height:18px;background:#000;border-bottom-left-radius:12px;border-bottom-right-radius:12px;z-index:10}.phone-screen{width:100%;height:100%;object-fit:cover;background:#fafafa}.success-banner{text-align:center;margin-bottom:24px}.success-icon{font-size:48px;display:block;margin-bottom:12px}.success-banner h3{font-size:24px;font-weight:800;margin-bottom:12px}.success-banner p{font-size:15px;color:var(--text-secondary);line-height:1.6}.restart-btn{background:#fff;border:2px solid #000;color:#000;padding:12px 24px;font-size:14px;font-weight:700;border-radius:var(--radius-sm);cursor:pointer;box-shadow:3px 3px 0 #000;transition:var(--transition)}.restart-btn:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 #000}.error-banner{background:rgba(219,68,55,.08);border:2px solid var(--error);padding:14px 18px;border-radius:var(--radius-md);color:var(--error);font-size:14px;font-weight:700;line-height:1.5;text-align:left}.footer{text-align:center;padding:40px 0 24px;color:var(--text-white);font-size:12px;font-weight:600}