:root{--primary:#003527;--primary-hover:#064e3b;--bg-dark:#fcf9f8;--bg-card:#f6f3f2d9;--text-main:#1c1b1b;--text-muted:#5d5f5b;--accent:#8a6d0f;--border-color:#e5e2e1;--error:#ba1a1a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Hanken Grotesk,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}.material-symbols-outlined{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;vertical-align:middle;line-height:1}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid #00352714;border-radius:20px;box-shadow:0 8px 30px #1c1b1b14}.app-container{flex-direction:column;min-height:100vh;display:flex}.navbar{z-index:100;-webkit-backdrop-filter:blur(16px);background:#fcf9f8cc;border-bottom:1px solid #1c1b1b0f;justify-content:space-between;align-items:center;height:64px;padding:0 1.25rem;display:flex;position:sticky;top:0}.nav-icon-btn{width:40px;height:40px;color:var(--primary);background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex}.nav-icon-btn:hover{background:#0035270f}.nav-brand{color:var(--primary);letter-spacing:-.01em;font-family:Bodoni Moda,serif;font-size:1.2rem;font-weight:600}.nav-avatar{background:var(--border-color);width:36px;height:36px;color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.hero-section{width:100%;height:80vh;min-height:560px;position:relative;overflow:hidden}.hero-photo{object-fit:cover;object-position:50% 10%;width:100%;height:100%;position:absolute;inset:0}.hero-overlay-panel{padding:1.75rem;animation:.8s forwards fadeInUp;position:absolute;bottom:1.25rem;left:1.25rem;right:1.25rem}@media (width>=768px){.hero-overlay-panel{width:60%;margin-bottom:3rem;margin-left:3rem;left:auto;right:auto}}.hero-title{color:var(--primary);letter-spacing:-.01em;margin-bottom:1rem;font-family:Bodoni Moda,serif;font-size:clamp(2.1rem,7vw,3rem);font-weight:600;line-height:1.15}.hero-subtitle{color:var(--text-muted);max-width:420px;margin-bottom:1.75rem;font-size:1.05rem}.hero-cta-btn{width:100%}@media (width>=768px){.hero-cta-btn{width:auto}}.btn-primary{background:var(--primary);color:#fff;border-radius:50px;padding:.9rem 1.75rem;font-weight:600;transition:background .3s,transform .3s,box-shadow .3s}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 10px 24px #0035272e}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.hero-badge{color:var(--primary);letter-spacing:.05em;text-transform:uppercase;background:#00352714;border-radius:20px;margin-bottom:1rem;padding:.4rem .9rem;font-size:.8rem;font-weight:600;display:inline-block}.how-it-works{text-align:center;padding:3.5rem 1.25rem}.section-title{color:var(--primary);margin-bottom:2rem;font-family:Bodoni Moda,serif;font-size:1.8rem;font-weight:600}.steps-grid{grid-template-columns:1fr;gap:1.25rem;max-width:1100px;margin:0 auto;display:grid}@media (width>=768px){.steps-grid{grid-template-columns:repeat(3,1fr)}}.step-card{border:1px solid var(--border-color);text-align:center;background:#f6f3f2;border-radius:20px;padding:2.25rem 1.5rem;transition:box-shadow .3s,transform .3s}.step-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #1c1b1b14}.step-icon{width:64px;height:64px;color:var(--primary);background:#fff;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.25rem;font-size:1.75rem;display:flex;box-shadow:0 2px 10px #1c1b1b14}.step-title{color:var(--text-main);margin-bottom:.5rem;font-family:Bodoni Moda,serif;font-size:1.15rem;font-weight:600}.step-desc{color:var(--text-muted);font-size:.95rem}.app-main-landing{padding-bottom:0}@media (width<=767px){.app-main-landing{padding-bottom:84px}}.bottom-nav{z-index:100;padding:.5rem .5rem calc(.75rem + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);background:#fcf9f8e6;border-top:1px solid #1c1b1b0f;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=768px){.bottom-nav{display:none}}.bottom-nav-item{color:var(--text-muted);letter-spacing:.02em;background:0 0;border-radius:12px;flex-direction:column;align-items:center;gap:.2rem;padding:.4rem .9rem;font-size:.7rem;font-weight:600;transition:color .2s,background .2s;display:flex}.bottom-nav-item:hover:not(:disabled){background:#0035270f}.bottom-nav-item.active{color:var(--primary)}.bottom-nav-item:disabled{opacity:.4;cursor:not-allowed}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.profile-section{flex-direction:column;flex:1;align-items:center;padding:3rem 5% 5rem;display:flex}.back-link{width:100%;max-width:520px;color:var(--text-muted);background:0 0;align-self:flex-start;margin:0 auto 1.5rem;padding:.5rem 0;font-size:.95rem;font-weight:600;transition:color .3s}.back-link:hover{color:var(--primary)}.profile-card{width:100%;max-width:520px;padding:2.5rem;animation:.6s forwards fadeInUp}.profile-header{text-align:center;margin-bottom:2rem}.profile-title{margin:.75rem 0;font-family:Bodoni Moda,serif;font-size:1.8rem;font-weight:600}.profile-subtitle{color:var(--text-muted);max-width:400px;margin:0 auto;font-size:.95rem}.photo-upload{cursor:pointer;background:#00352705;border:2px dashed #00352733;border-radius:16px;transition:border-color .3s,background .3s;position:relative;overflow:hidden}.photo-upload:hover{border-color:var(--primary);background:#0035270d}.photo-input{opacity:0;cursor:pointer;position:absolute;inset:0}.photo-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.photo-icon{margin-bottom:.75rem;font-size:2rem}.photo-text{margin-bottom:.25rem;font-weight:600}.photo-hint{color:var(--text-muted);font-size:.85rem}.photo-preview{object-fit:cover;width:100%;max-height:360px;display:block}.photo-change-btn{width:100%;margin-top:.75rem;padding:.6rem 1.5rem;font-size:.9rem}.measurements-grid{grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0 2.5rem;display:grid}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-field label{color:var(--text-muted);font-size:.9rem;font-weight:600}.input-with-unit{align-items:center;display:flex;position:relative}.input-with-unit input{border:1px solid var(--border-color);width:100%;color:var(--text-main);background:#00352708;border-radius:12px;padding:.85rem 3rem .85rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .3s,background .3s}.input-with-unit input::placeholder{color:#5d5f5b80}.input-with-unit input:focus{border-color:var(--primary);background:#0035270d;outline:none}.input-with-unit input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-unit input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.input-with-unit input[type=number]{appearance:textfield}.input-unit{color:var(--text-muted);pointer-events:none;font-size:.9rem;font-weight:600;position:absolute;right:1rem}.submit-btn{width:100%;padding:.9rem 1.5rem;font-size:1rem}.submit-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.form-error{color:var(--error);text-align:center;margin-bottom:1rem;font-size:.9rem}.report-content{color:var(--text-main);margin-bottom:2rem;font-size:.95rem;line-height:1.8}.report-content h1,.report-content h2,.report-content h3{color:var(--primary);margin:1.5rem 0 .75rem;font-family:Bodoni Moda,serif;font-weight:600}.report-content h1:first-child,.report-content h2:first-child,.report-content h3:first-child{margin-top:0}.report-content p{margin-bottom:1rem}.report-content strong{color:var(--accent)}.report-content ul,.report-content ol{margin:0 0 1rem 1.25rem}.report-content li{margin-bottom:.4rem}.report-content hr{border:none;border-top:1px solid var(--border-color);margin:1.5rem 0}.hairstyle-section{margin-bottom:2rem}.hairstyle-title{color:var(--primary);margin-bottom:.75rem;font-family:Bodoni Moda,serif;font-size:1.1rem;font-weight:600}.hairstyle-image{border:1px solid var(--border-color);border-radius:16px;width:100%;display:block}.submit-hint{color:var(--text-muted);text-align:center;margin-top:.75rem;font-size:.85rem}
