:root{--color-bg:#fff5f8;--color-surface:#fff;--color-primary:#a1286b;--color-primary-dark:#7e1d54;--color-text:#2b1f25;--color-muted:#7a6b73;--color-border:#ecd4de;--radius:14px;--shadow:0 10px 30px #a1286b1f;--max-width:1080px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--color-text);background:var(--color-bg);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.5}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:var(--max-width);margin:0 auto;padding:0 20px}.header{justify-content:space-between;align-items:center;padding:18px 0;display:flex}.brand{color:var(--color-primary);letter-spacing:-.01em;font-size:20px;font-weight:700}.btn{background:var(--color-primary);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:10px;padding:12px 26px;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.btn:hover{background:var(--color-primary-dark);text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--block{width:100%;display:block}.btn--lg{padding:16px 36px;font-size:16px}.btn--ghost{color:var(--color-primary);border:1px solid var(--color-primary);background:0 0}.card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.hero{text-align:center;padding:60px 0 40px}.hero h1{letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(32px,5vw,52px)}.hero p{color:var(--color-muted);max-width:640px;margin:0 auto 32px;font-size:clamp(16px,2.2vw,19px)}.steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;padding:30px 0;display:grid}.step{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.step__num{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:12px;font-weight:700;display:inline-flex}.step h3{margin:0 0 8px;font-size:18px}.step p{color:var(--color-muted);margin:0;font-size:14px}.footer{text-align:center;color:var(--color-muted);padding:40px 0;font-size:13px}.form-field{margin-bottom:16px}.form-field label{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.form-field input[type=email],.form-field input[type=file]{border:1px solid var(--color-border);width:100%;font:inherit;background:#fff;border-radius:10px;padding:12px 14px}.form-field input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #a1286b26}.form-field .hint{color:var(--color-muted);margin-top:4px;font-size:12px}.form-field .error{color:#c02020;margin-top:4px;font-size:12px}.photo-preview{grid-template-columns:1fr 1fr;gap:12px;margin-top:10px;display:grid}.photo-preview img{aspect-ratio:1;object-fit:cover;border:1px solid var(--color-border);background:#f7e8ee;border-radius:10px;width:100%}.gallery{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:24px 0;display:grid}.gallery img{aspect-ratio:4/5;object-fit:cover;background:#f7e8ee;border-radius:10px;width:100%}.status-badge{color:var(--color-primary);background:#fce7ef;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.spinner{border:2px solid #a1286b40;border-top-color:var(--color-primary);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.preview-frame{border-radius:var(--radius);box-shadow:var(--shadow);background:#f7e8ee;max-width:480px;margin:0 auto;overflow:hidden}.preview-frame img{width:100%;display:block}.price-tag{color:var(--color-primary);font-size:32px;font-weight:700}
