@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f7f3ee;--color-surface: #ffffff;--color-primary: #b87a5a;--color-primary-dark: #9a6040;--color-primary-light: #d4a882;--color-accent: #e8d5c4;--color-accent-light: #f2ebe3;--color-text: #2e2118;--color-text-muted: #7a6558;--color-text-light: #a89080;--color-border: #e5d8ce;--color-border-light: #ede5dc;--color-error: #b54a4a;--color-error-bg: #fdf0f0;--color-success: #6a9a70;--color-success-bg: #f0f7f0;--color-warning-bg: #fff9ed;--color-warning-text: #7a5a10;--font-heading: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;--radius: 16px;--radius-sm: 10px;--radius-xs: 6px;--shadow: 0 2px 16px rgba(46, 33, 24, .08);--shadow-md: 0 4px 24px rgba(46, 33, 24, .12)}body{font-family:var(--font-body);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}.app{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border-light);position:sticky;top:0;z-index:100}.header-inner{max-width:900px;margin:0 auto;padding:.9rem 1.25rem;display:flex;align-items:center;justify-content:space-between}.logo-link{display:flex;align-items:center;text-decoration:none;color:inherit}.header-logo{height:40px;width:auto;object-fit:contain;display:block}.header-nav{display:flex;align-items:center;gap:1.5rem}.nav-link{cursor:pointer;font-family:var(--font-body);font-weight:500;font-size:.875rem;color:var(--color-text-muted);letter-spacing:.03em;text-decoration:none;transition:color .2s;text-transform:uppercase}.nav-link:hover,.nav-link.active{color:var(--color-primary)}main{flex:1;padding:1.5rem 1rem 3rem;max-width:900px;margin:0 auto;width:100%}@media(min-width:601px){main{padding:2.5rem 2rem 4rem}}h1{font-family:var(--font-heading);font-size:clamp(2rem,5vw,2.75rem);font-weight:600;line-height:1.2;margin-bottom:.75rem;letter-spacing:-.01em}h2{font-family:var(--font-heading);font-size:clamp(1.35rem,3vw,1.65rem);font-weight:600;margin-bottom:1rem;letter-spacing:.01em}.subtitle{color:var(--color-text-muted);font-size:clamp(.9rem,2vw,1.05rem);max-width:560px;line-height:1.65}.btn-primary,.btn-secondary,.btn-book,.btn-change,.btn-link{cursor:pointer;border:none;border-radius:var(--radius-xs);font-family:var(--font-body);font-size:.875rem;font-weight:500;padding:.65rem 1.4rem;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:.4rem}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #b87a5a59}.btn-primary:disabled{background:#c8b8aa;color:#8a7a70;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-book{background:var(--color-primary);color:#fff;font-size:.9rem;padding:.7rem 1.5rem}.btn-book:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 14px #b87a5a66}.btn-change{background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-text);font-size:.8rem;padding:.35rem .8rem;border:1px solid var(--color-border-light)}.btn-link{background:transparent;color:var(--color-text-muted);text-decoration:underline;padding:.4rem;font-size:.82rem}.btn-link:hover{color:var(--color-primary)}.btn-close{background:transparent;border:none;font-size:1.2rem;cursor:pointer;color:inherit;line-height:1}.page-header{text-align:center;margin-bottom:2rem}.page-header h1{margin-bottom:.6rem}.page-header .subtitle{margin:0 auto}.steps-indicator{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:2rem}.step{display:flex;flex-direction:column;align-items:center;gap:.35rem;opacity:.35;transition:opacity .3s}.step.active{opacity:1}.step-num{width:32px;height:32px;border-radius:50%;background:var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;color:var(--color-text-muted);transition:background .3s,color .3s;font-family:var(--font-body)}.step.active .step-num{background:var(--color-primary);color:#fff}.step.done .step-num{background:var(--color-success);color:#fff}.step-label{font-size:.72rem;color:var(--color-text-muted);font-family:var(--font-body);font-weight:500;letter-spacing:.04em;text-transform:uppercase}.step-line{width:52px;height:1px;background:var(--color-border);margin:0 .5rem 1.2rem}.image-uploader{display:flex;flex-direction:column;align-items:center}.drop-zone{border:1.5px dashed var(--color-border);border-radius:var(--radius);padding:3rem 2rem;width:100%;max-width:480px;cursor:pointer;transition:all .25s ease;text-align:center;background:var(--color-surface)}.drop-zone:hover,.drop-zone.drag-over{border-color:var(--color-primary);background:#b87a5a08;box-shadow:var(--shadow)}.drop-zone.has-preview{padding:1.25rem}.drop-icon{font-size:2.75rem;margin-bottom:.6rem}.drop-text{font-size:1rem;font-weight:500;margin-bottom:.3rem;color:var(--color-text);font-family:var(--font-body)}.drop-hint{font-size:.82rem;color:var(--color-text-light)}.preview-container{display:flex;flex-direction:column;align-items:center;gap:.75rem}.preview-image{max-width:100%;max-height:280px;border-radius:var(--radius-sm);object-fit:contain}.validation-error{color:var(--color-error);font-size:.82rem;margin-top:.6rem}.hairstyle-selector{display:grid;grid-template-columns:180px 1fr;gap:2rem;align-items:start}@media(max-width:600px){.hairstyle-selector{grid-template-columns:1fr;gap:1.25rem}.preview-thumb{max-width:110px}}.preview-thumb{width:100%;border-radius:var(--radius-sm);object-fit:cover;box-shadow:var(--shadow)}.preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-bottom:1.5rem}.preset-btn{padding:.6rem .4rem;min-height:46px;border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface);cursor:pointer;font-size:.8rem;font-family:var(--font-body);text-align:center;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1.3;color:var(--color-text);font-weight:400}.preset-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#b87a5a08}.preset-btn.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:500}.custom-prompt{position:relative;margin-bottom:1rem}.custom-prompt label{display:block;font-size:.82rem;font-weight:500;color:var(--color-text-muted);margin-bottom:.4rem;letter-spacing:.02em;text-transform:uppercase;font-family:var(--font-body)}.custom-prompt textarea{width:100%;padding:.7rem .8rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.9rem;resize:vertical;outline:none;transition:border-color .2s;background:var(--color-surface);color:var(--color-text);line-height:1.5}.custom-prompt textarea::placeholder{color:var(--color-text-light)}.custom-prompt textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #b87a5a1a}.char-count{position:absolute;right:.6rem;bottom:.6rem;font-size:.68rem;color:var(--color-text-light);pointer-events:none}.prompt-preview{padding:.75rem 1rem;background:var(--color-accent-light);border-radius:var(--radius-sm);font-size:.88rem;margin-bottom:1rem;border-left:3px solid var(--color-primary-light)}.blocked-warning{display:flex;align-items:flex-start;gap:.5rem;background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid #f0e0b0;border-radius:var(--radius-sm);padding:.65rem .9rem;font-size:.83rem;margin-bottom:.75rem;line-height:1.45;text-align:left}.warning-icon{flex-shrink:0;font-size:.95rem;line-height:1.4}.action-buttons{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:.5rem}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;margin-top:1.5rem;padding:1.5rem 1rem}.loading-dots{display:flex;align-items:center;gap:7px;margin-bottom:.3rem}.loading-dots span{display:block;width:8px;height:8px;border-radius:50%;background:var(--color-primary);opacity:.35;animation:pulse-dot 1.4s ease-in-out infinite}.loading-dots span:nth-child(1){animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes pulse-dot{0%,80%,to{opacity:.35;transform:scale(.85)}40%{opacity:1;transform:scale(1.1)}}.loading-primary{font-family:var(--font-heading);font-size:1.05rem;font-weight:600;color:var(--color-primary-dark);letter-spacing:.01em}.loading-secondary{font-size:.82rem;color:var(--color-text-muted);margin-top:.1rem}.result-view{text-align:center}.demo-badge{display:inline-block;background:var(--color-success-bg);color:var(--color-success);font-size:.75rem;font-weight:600;padding:.3rem .8rem;border-radius:20px;margin-bottom:.75rem;letter-spacing:.02em}.result-prompt{color:var(--color-text-muted);font-style:italic;font-size:.95rem;margin-bottom:1.75rem}.before-after{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:2rem}@media(max-width:500px){.before-after{grid-template-columns:1fr}}.image-card{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--color-surface);box-shadow:var(--shadow-md)}.image-card img{width:100%;display:block;object-fit:cover;aspect-ratio:1}.image-label{position:absolute;top:.6rem;left:.6rem;background:#2e2118a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:.72rem;font-weight:500;padding:.2rem .6rem;border-radius:20px;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-body)}.result-image-card{border:2px solid var(--color-primary)}.result-actions{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center;align-items:center;margin-bottom:.5rem}.booking-actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;align-items:center;margin:1rem 0 1.25rem}.btn-booking{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.4rem;border-radius:var(--radius-xs);font-family:var(--font-body);font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s ease;background:var(--color-primary);color:#fff}.btn-booking:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 14px #b87a5a66}.btn-booking-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-booking-secondary:hover{border-color:var(--color-primary);color:var(--color-primary);background:#b87a5a0a;box-shadow:none}.error-banner{background:var(--color-error-bg);color:var(--color-error);border:1px solid #e8c0c0;border-radius:var(--radius-sm);padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;font-size:.875rem}.privacy-note{text-align:center;font-size:.75rem;color:var(--color-text-light);margin-top:2rem;line-height:1.5}.home-view{text-align:center;padding:3rem 2rem}.home-logo{height:64px;width:auto;object-fit:contain;margin:0 auto 1.5rem;display:block}.home-view h1{margin-bottom:.75rem;font-size:clamp(2rem,5vw,2.75rem)}.home-view p{color:var(--color-text-muted);margin-bottom:2rem;font-size:1.05rem}
