@import"https://fonts.googleapis.com/css2?family=Spline+Sans:wght@400;500;600;700&display=swap";:root{--bg-base: #f5f7f2;--bg-accent: #e3efe6;--card-bg: #ffffff;--text-strong: #17231e;--text-body: #30433a;--text-muted: #5c6c63;--primary: #1f7a5b;--primary-hover: #155c43;--border: #c8d6cd;--error: #b32424;--success: #0c6d3f;--focus: #0d6d89;--radius-lg: 20px;--radius-md: 12px;--shadow: 0 18px 40px rgba(24, 44, 36, .12)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Segoe UI,Noto Sans KR,Apple SD Gothic Neo,sans-serif;color:var(--text-body);background:radial-gradient(circle at top left,#ddeed8 0,transparent 38%),radial-gradient(circle at bottom right,#d2e7e4 0,transparent 42%),var(--bg-base)}.landing-shell{position:relative;width:100%;min-height:100vh;overflow:hidden;font-family:Spline Sans,Pretendard,Segoe UI,sans-serif;color:#fff}.landing-bg{position:absolute;inset:0;background:#141121;overflow:hidden}.landing-bg:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#1411212e,#1411216b 44%,#141121f0);z-index:1}.landing-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 76% 18%,rgba(183,190,236,.23) 0%,transparent 40%),radial-gradient(circle at 50% 105%,rgba(0,0,0,.86) 0%,transparent 45%);z-index:1}.landing-model{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1);filter:contrast(.96) saturate(.9);opacity:0;transition:opacity .62s ease;z-index:0;pointer-events:none}.landing-model.active{opacity:1}.landing-content{position:relative;z-index:2;width:min(100%,1180px);min-height:100vh;margin:0 auto;padding:max(22px,env(safe-area-inset-top)) clamp(20px,4vw,56px) max(26px,env(safe-area-inset-bottom));display:flex;flex-direction:column}.landing-topbar{display:flex;justify-content:space-between;align-items:center;width:100%;gap:16px}.landing-brand{display:inline-flex;align-items:center;gap:10px}.landing-brand-icon{width:38px;height:38px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:#ffffff1f;display:grid;place-items:center;font-size:1rem;box-shadow:inset 0 0 0 1px #ffffff0a}.landing-brand-text{color:#f8f9ff;letter-spacing:.08em;font-size:1.45rem;font-weight:700;transform:scale(.58);transform-origin:left center}.landing-top-login{border:0;padding:0;background:transparent;color:#f7f9ffbd;font-family:inherit;font-size:.98rem;font-weight:600;cursor:pointer;transition:color .2s ease}.landing-top-login:hover{color:#fff}.landing-top-login:focus-visible{outline:2px solid rgba(213,219,255,.9);outline-offset:2px;border-radius:4px}.landing-badge-wrap{margin-top:clamp(16px,3vh,28px);display:flex;justify-content:center}.landing-badge{border-radius:999px;border:1px solid rgba(98,88,255,.35);background:#3b19e63d;color:#f4f4ff;letter-spacing:.08em;font-size:.64rem;font-weight:700;padding:7px 14px}.landing-bottom{margin-top:auto;width:min(100%,650px);display:grid;justify-items:stretch;gap:0;margin-bottom:clamp(6px,1.6vh,24px)}.landing-copy{max-width:620px}.landing-title{margin:0;font-size:clamp(2.36rem,11.4vw,3.88rem);line-height:1.08;letter-spacing:-.02em;color:#f5f6ff}.landing-title span{background:linear-gradient(90deg,#4f2dff,#7a5cff);-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}.landing-description{margin:14px 0 0;max-width:640px;color:#e9ecf7d4;font-size:clamp(1.02rem,4.45vw,1.32rem);line-height:1.5}.landing-features{margin-top:20px;display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.landing-features::-webkit-scrollbar{display:none}.landing-feature-card{margin:0;flex:0 0 auto;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff14;color:#f3f5ffeb;min-width:136px;min-height:48px;padding:12px 14px;font-size:.86rem;font-weight:600;display:inline-flex;align-items:center;gap:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-feature-icon{color:#5f40ff;font-size:.82rem}.landing-dots{margin:18px 0 0;width:fit-content;display:flex;align-items:center;gap:9px}.landing-dot{width:9px;height:9px;border-radius:999px;background-color:#ffffff70}.landing-dot.active{width:30px;height:9px;background:linear-gradient(90deg,#2e17df,#5a39ff);box-shadow:0 0 16px #4f2dff7a}.landing-cta{margin-top:22px;width:100%;min-height:62px;border:0;border-radius:14px;background:linear-gradient(180deg,#4f2dff,#3617d6);color:#fff;font-family:inherit;font-size:clamp(1.36rem,5.4vw,1.72rem);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 14px 30px #29129770;transition:transform .2s ease,filter .2s ease}.landing-cta:hover{filter:brightness(1.07)}.landing-cta:active{transform:scale(.985)}.landing-cta:focus-visible{outline:3px solid rgba(198,214,255,.95);outline-offset:3px}.landing-cta-arrow{transform:translateY(-1px) scale(1.02)}.landing-terms{margin:16px 0 0;text-align:center;color:#edf0ff5c;font-size:.9rem}@media(min-width:980px){.landing-content{padding:max(28px,env(safe-area-inset-top)) clamp(30px,5vw,84px) max(30px,env(safe-area-inset-bottom))}.landing-model{object-fit:contain;object-position:66% bottom;transform:scale(1)}.landing-badge-wrap{margin-top:24px;justify-content:flex-start}.landing-bottom{width:clamp(430px,47vw,620px);margin-left:0;margin-right:auto;padding:clamp(18px,2.6vw,30px);border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(140deg,#080c188a 8%,#0b0e1c57,#0b0e1c1a);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 22px 48px #090c1a61}.landing-title{font-size:clamp(3.05rem,5.2vw,4.7rem);line-height:1.06}.landing-description{font-size:clamp(1.08rem,1.65vw,1.32rem);max-width:540px}.landing-dots{margin-top:20px}.landing-cta{width:min(100%,410px);min-height:64px;margin-top:20px;font-size:clamp(1.34rem,1.9vw,1.56rem)}.landing-terms{text-align:left}}@media(min-width:1280px){.landing-model{object-position:70% bottom}.landing-bottom{width:clamp(470px,43vw,640px)}}.page-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.onboarding-card{width:min(100%,720px);border-radius:var(--radius-lg);background-color:var(--card-bg);border:1px solid #d8e1dc;box-shadow:var(--shadow);padding:28px}.page-header{margin-bottom:24px}.service-label{display:inline-block;margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}h1{margin:0;color:var(--text-strong);font-size:clamp(1.45rem,2vw + .6rem,2rem);line-height:1.2}.description{margin:12px 0 0;color:var(--text-body);font-size:1rem}.privacy-note{margin:8px 0 0;color:var(--text-muted);font-size:.92rem}.profile-form{display:grid;gap:22px}.form-section{border:1px solid var(--border);border-radius:var(--radius-md);padding:16px;background:linear-gradient(180deg,#fcfdfc,#f9fbfa)}.section-title{margin:0 0 12px;color:var(--text-strong);font-size:1.05rem}.dropzone{border:2px dashed #9ab5a8;border-radius:14px;min-height:220px;display:flex;align-items:center;justify-content:center;padding:14px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;background-color:#f8fcf9}.dropzone.crop-mode{min-height:auto;align-items:stretch;cursor:default}.dropzone.dragover{border-color:var(--primary);background-color:#ebf8f1;box-shadow:0 0 0 4px #1f7a5b24}.dropzone.error-border{border-color:var(--error)}.dropzone:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.dropzone-text{margin:0;text-align:center;color:var(--text-body);font-weight:600;line-height:1.5}.dropzone-subtext{display:block;margin-top:8px;color:var(--text-muted);font-weight:500;font-size:.92rem}.preview-wrapper{width:min(100%,380px)}.preview-image{width:100%;display:block;border-radius:12px;object-fit:cover;max-height:320px}.crop-editor{width:100%;display:grid;gap:12px}.crop-canvas{display:block;width:min(100%,320px);max-width:100%;aspect-ratio:1 / 1;border-radius:12px;border:1px solid #99ada2;margin:0 auto;background-color:#e8efe9;touch-action:none;cursor:grab}.crop-canvas:active{cursor:grabbing}.crop-canvas:focus-visible{outline:3px solid rgba(13,109,137,.35);outline-offset:3px}.crop-hint{text-align:center;margin-top:2px}.zoom-control{display:grid;gap:6px}.zoom-row{display:flex;align-items:center;gap:10px}.zoom-row input[type=range]{width:100%}.zoom-value{min-width:48px;color:var(--text-muted);font-size:.88rem;font-weight:600;text-align:right}.crop-actions{display:flex;gap:10px;flex-wrap:wrap}.inline-actions{margin-top:12px;display:flex;gap:10px;flex-wrap:wrap}.input-group+.input-group{margin-top:16px}.input-label{display:inline-block;margin-bottom:8px;color:var(--text-strong);font-weight:600}.input-with-unit{display:flex;align-items:center;gap:10px}.input-with-unit input{width:100%;border:1px solid #b5c6bc;border-radius:10px;padding:12px 14px;font-size:1rem;color:var(--text-strong);background-color:#fff}.input-with-unit input:focus{outline:3px solid rgba(13,109,137,.2);border-color:var(--focus)}.input-with-unit input[aria-invalid=true]{border-color:var(--error)}.preferences-textarea{width:100%;min-height:110px;border:1px solid #b5c6bc;border-radius:10px;padding:12px 14px;font:inherit;color:var(--text-strong);resize:vertical;background-color:#fff}.preferences-textarea:focus{outline:3px solid rgba(13,109,137,.2);border-color:var(--focus)}.unit{min-width:34px;color:var(--text-muted);font-weight:600}.helper-text{margin:8px 0 0;font-size:.88rem;color:var(--text-muted)}.error-text{margin:8px 0 0;color:var(--error);font-size:.88rem;font-weight:600}.action-row{display:grid;gap:10px}.primary-btn,.secondary-btn,.ghost-btn{border-radius:10px;border:1px solid transparent;font:inherit;font-weight:600;min-height:46px;padding:0 16px;cursor:pointer}.primary-btn{width:100%;background-color:var(--primary);color:#fff;transition:background-color .2s ease}.primary-btn:hover:not(:disabled){background-color:var(--primary-hover)}.primary-btn:disabled{cursor:not-allowed;opacity:.52}.secondary-btn{background-color:#eff8f3;border-color:#b8d3c5;color:var(--text-strong)}.ghost-btn{background-color:#fff;border-color:#ccd7d0;color:#36483e}.secondary-btn:focus-visible,.ghost-btn:focus-visible,.primary-btn:focus-visible{outline:3px solid rgba(13,109,137,.35);outline-offset:2px}.secondary-btn:disabled,.ghost-btn:disabled{opacity:.5;cursor:not-allowed}.success-text{margin:-4px 0 0;border-radius:10px;background-color:#ebf8ee;border:1px solid #b7e0c2;padding:12px 14px;color:var(--success);font-size:.95rem;font-weight:600}.analysis-error{margin-top:-6px}.hair-grid-section{background:linear-gradient(180deg,#f8fbfd,#ecf4fb)}.hair-grid-image{display:block;width:100%;border-radius:12px;border:1px solid #c6d7e6}.hair-grid-labels{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hair-grid-label{margin:0;padding:8px 10px;border:1px solid #c7d8e8;border-radius:8px;background-color:#fff;color:var(--text-body);font-size:.88rem;font-weight:600}.persona-result-shell{padding:0;overflow:hidden;border-color:#25c0f440;background:linear-gradient(180deg,#081c24f5,#06141bfa);box-shadow:0 20px 48px #0000006b}.persona-report-title{margin:18px 18px 0;color:#f0f7fb}.persona-hero{position:relative;height:420px;overflow:hidden;background:radial-gradient(circle at 50% 32%,rgba(37,192,244,.2) 0%,transparent 46%),linear-gradient(180deg,#07151e3d,#06141bd9 88%)}.persona-hero-image{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:saturate(.95) contrast(.96)}.persona-hero-fallback{width:100%;height:100%;background:radial-gradient(circle at 50% 30%,rgba(56,82,95,.45),transparent 48%),linear-gradient(180deg,#08192261,#07121b)}.persona-hotspot{position:absolute;width:14px;height:14px;border-radius:50%;background:#26c1f4;box-shadow:0 0 18px #25c0f4bf}.persona-hotspot.hotspot-a{top:34%;left:50%}.persona-hotspot.hotspot-b{left:30%;bottom:28%}.persona-hero-badges{position:absolute;left:16px;right:16px;bottom:16px;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.persona-badge{border-radius:14px;border:1px solid rgba(37,192,244,.35);background:#0b1d26cc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:10px 14px}.persona-badge-label{margin:0;color:#2ec7ff;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:700}.persona-badge-value{margin:6px 0 0;color:#f2f7fb;font-size:1.12rem;font-weight:700;line-height:1.3}.persona-match-badge{display:inline-flex;align-items:center;gap:8px;color:#ecf7ff;font-weight:700;font-size:1rem}.persona-match-dot{width:9px;height:9px;border-radius:999px;background:#34d399;box-shadow:0 0 12px #34d399b3}.persona-segment{margin:16px 16px 0;padding:6px;border-radius:14px;background:#091d26b8;border:1px solid rgba(37,192,244,.24);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.persona-segment-btn{min-height:46px;border-radius:10px;border:0;background:transparent;color:#c4dce8c7;font:inherit;font-weight:700;cursor:pointer;transition:background-color .2s ease,color .2s ease}.persona-segment-btn.active{background:#2ebff0;color:#07232e}.persona-segment-btn:focus-visible{outline:3px solid rgba(46,191,240,.44);outline-offset:1px}.persona-pane{margin:18px 16px 0}.persona-pane-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap}.persona-pane-title{margin:0;color:#ecf7ff;font-size:1.9rem;line-height:1.2}.persona-pane-note{color:#2ec7ff;font-size:1rem;font-weight:700}.persona-pane-actions{display:inline-flex;align-items:center;gap:10px}.persona-pane-note-btn{border:0;padding:0;background:transparent;color:#2ec7ff;font:inherit;font-size:1rem;font-weight:700;cursor:pointer}.persona-pane-note-btn:hover{color:#7adfff}.persona-pane-note-btn:focus-visible{outline:2px solid rgba(46,199,255,.55);outline-offset:3px;border-radius:4px}.persona-carousel-controls{display:none;gap:8px}.persona-carousel-btn{width:34px;height:34px;border-radius:999px;border:1px solid rgba(37,192,244,.34);background:#0b1d26db;color:#dff5ff;font:inherit;font-size:1.28rem;line-height:1;display:inline-grid;place-items:center;cursor:pointer}.persona-carousel-btn:hover:not(:disabled){background:#122b36e6}.persona-carousel-btn:disabled{opacity:.35;cursor:not-allowed}.persona-carousel-btn:focus-visible{outline:3px solid rgba(46,191,240,.44);outline-offset:1px}.persona-horizontal-list{margin-top:14px;display:flex;gap:12px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.persona-horizontal-list::-webkit-scrollbar{display:none}.persona-horizontal-list:focus-visible{outline:3px solid rgba(46,199,255,.34);outline-offset:4px;border-radius:14px}.persona-outfit-card{flex:0 0 min(84%,320px);border-radius:16px;border:1px solid rgba(37,192,244,.2);background:#0c212bd1;padding:14px;scroll-snap-align:start}.persona-outfit-occasion{margin:0;color:#9bb4c2;font-size:.82rem}.persona-outfit-name{margin:6px 0 0;color:#f4f9fc;font-size:1.2rem}.persona-outfit-description{margin:8px 0 0;color:#c8deea;line-height:1.55}.persona-outfit-items{margin:10px 0 0;color:#7dd7ff;font-size:.88rem;line-height:1.45}.persona-shop-match{margin-top:18px;border-radius:16px;border:1px solid rgba(37,192,244,.2);background:#081c25c7;padding:14px}.persona-shop-head{display:grid;gap:6px}.persona-shop-title{margin:0;color:#eff8ff;font-size:1.16rem}.persona-shop-copy{margin:0;color:#a8ccdc;font-size:.88rem;line-height:1.52}.persona-budget-form{margin-top:12px;display:grid;gap:10px}.persona-budget-fields{display:grid;gap:6px}.persona-budget-label{color:#cfe6f3;font-size:.82rem;font-weight:700}.persona-budget-fields input{min-height:42px;border-radius:10px;border:1px solid rgba(110,161,181,.42);background:#051821bd;color:#e8f6ff;font:inherit;padding:0 12px}.persona-budget-fields input:focus{outline:3px solid rgba(46,199,255,.28);border-color:#2ec7ff}.persona-budget-actions{display:flex;gap:8px;flex-wrap:wrap}.persona-budget-actions .secondary-btn,.persona-budget-actions .ghost-btn{min-height:42px;min-width:120px}.persona-shop-loading,.persona-shop-error{margin-top:10px}.persona-shop-summary{margin:12px 0 0;color:#e4f4fd;font-size:.9rem;line-height:1.58}.persona-shop-budget-note{margin:8px 0 0;border-radius:10px;padding:10px 12px;background:#0d2733c7;border:1px solid rgba(37,192,244,.16);color:#a6d6eb;font-size:.84rem;line-height:1.5}.persona-shop-look-tabs{margin-top:12px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.persona-shop-look-tabs::-webkit-scrollbar{display:none}.persona-shop-look-tab{flex:0 0 auto;min-height:38px;border-radius:999px;border:1px solid rgba(37,192,244,.24);background:#0b212bbf;color:#b8d9e8;font:inherit;font-size:.82rem;font-weight:700;padding:0 12px;cursor:pointer}.persona-shop-look-tab.active{border-color:#2ebff094;background:#2ebff029;color:#ecfbff}.persona-shop-look-panel{margin-top:12px;border-radius:12px;border:1px solid rgba(37,192,244,.18);background:#0a202bc2;padding:12px}.persona-shop-look-panel h5{margin:0;color:#f0f8ff;font-size:1.05rem}.persona-shop-look-panel p{margin:7px 0 0;color:#b8d8e8;font-size:.84rem;line-height:1.5}.persona-shop-product-grid{margin-top:12px;display:grid;gap:8px}.persona-shop-product-card{border-radius:10px;border:1px solid rgba(91,143,164,.32);background:#081922cc;padding:10px}.persona-shop-product-slot{margin:0;color:#7ed9ff;text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.persona-shop-product-card h6{margin:5px 0 0;color:#edf8ff;font-size:.92rem;line-height:1.35}.persona-shop-product-meta,.persona-shop-product-price{margin:5px 0 0;color:#9ec4d6;font-size:.78rem}.persona-shop-product-why{margin:7px 0 0;color:#cae5f3;font-size:.8rem;line-height:1.45}.persona-shop-product-card a{margin-top:8px;display:inline-flex;align-items:center;gap:4px;color:#5fd2ff;font-size:.8rem;font-weight:700;text-decoration:none}.persona-shop-product-card a:hover{text-decoration:underline}.persona-tryon-trigger{margin-top:12px}.persona-tryon-view{margin-top:14px;border-radius:12px;border:1px solid rgba(37,192,244,.18);background:#081a23cc;padding:12px}.persona-tryon-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline}.persona-tryon-head h5{margin:0;color:#eff9ff;font-size:1rem}.persona-tryon-head span{color:#8fd9ff;font-size:.78rem;font-weight:700}.persona-tryon-image{width:100%;margin-top:10px;border-radius:10px;display:block;border:1px solid rgba(84,140,164,.34)}.persona-shop-disclaimer{margin:10px 0 0;color:#adcbd9db;font-size:.76rem;line-height:1.45}.persona-shop-disclaimer-model{margin-top:12px}.persona-shop-sources{margin-top:12px;border-radius:10px;border:1px solid rgba(37,192,244,.16);background:#091d27bd;padding:10px 12px}.persona-shop-sources summary{cursor:pointer;color:#9cd9f3;font-size:.84rem;font-weight:700}.persona-shop-sources ul{margin:8px 0 0;padding-left:18px;display:grid;gap:6px}.persona-shop-sources a{color:#cdeaff;text-decoration:underline;text-underline-offset:2px;font-size:.8rem}.persona-grid-preview{margin-top:14px}.persona-grid-image{width:100%;display:block;border-radius:14px;border:1px solid rgba(37,192,244,.22)}.persona-name-grid-block{margin-top:12px}.persona-name-grid-helper{margin:0;color:#9ccbe0;font-size:.84rem;line-height:1.45}.persona-name-grid{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.persona-name-chip{margin:0;border-radius:10px;border:1px solid rgba(37,192,244,.2);background:#0a1f29c7;color:#dff1fb;font-size:.78rem;line-height:1.4;padding:8px}.persona-name-chip span{color:#78d8ff;font-weight:700}.persona-hair-grid{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.persona-hair-card{border-radius:14px;border:1px solid rgba(37,192,244,.2);background:#0c212bd1;padding:12px}.persona-hair-card h4{margin:0;color:#f3f9fd;font-size:1rem}.persona-hair-card p{margin:8px 0 0;color:#c5dcea;line-height:1.46;font-size:.88rem}.persona-hair-card span{margin-top:8px;display:block;color:#7ed9ff;font-size:.8rem}.persona-hair-tag{margin-top:6px;display:inline-block;color:#9dcde2;font-size:.75rem}.persona-text-report{margin:20px 16px 16px;border-radius:16px;border:1px solid rgba(37,192,244,.18);background:linear-gradient(180deg,#091f2ac7,#06161fe6);padding:16px}.persona-text-head{display:grid;gap:6px}.persona-text-title{margin:0;color:#ecf7ff;font-size:1.24rem}.persona-text-intro{margin:0 0 4px;color:#9fc8da;font-size:.86rem;line-height:1.5}.report-section{background:linear-gradient(180deg,#f7fbf9,#eef7f3)}.report-block{border-radius:12px;border:1px solid rgba(37,192,244,.16);background:#0a1e29bd;padding:14px}.report-block+.report-block{margin-top:10px}.report-subtitle{margin:0 0 10px;color:#ecf8ff;font-size:1rem}.report-content{margin:0;color:#d3e9f5;line-height:1.72;white-space:pre-wrap}.report-summary-text{font-size:1rem;color:#e3f4ff}.persona-report-grid{margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.report-list{margin:0;padding-left:18px;display:grid;gap:8px}.report-list-card{padding-left:0;list-style:none;gap:10px;grid-template-columns:minmax(0,1fr)}.report-list-item{color:#d5e9f4}.report-list-item-card{border-radius:10px;border:1px solid rgba(66,122,143,.4);background:#081821bf;padding:12px}.report-item-title{margin:0;font-weight:700;color:#eff9ff}.report-item-body{margin:4px 0 0;color:#cae4f2;line-height:1.58}.report-item-note{margin:4px 0 0;color:#9dc5d8;line-height:1.5}.report-inline-summary{margin-top:10px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-shell--profiler{width:100%;align-items:flex-start;justify-content:center;padding:0;background:radial-gradient(circle at 50% 8%,rgba(37,192,244,.18),transparent 38%),radial-gradient(circle at 50% 100%,rgba(0,0,0,.52),transparent 46%),#08151d}.profile-form--dark{width:min(100%,560px);padding:max(14px,env(safe-area-inset-top)) 16px max(32px,env(safe-area-inset-bottom));display:grid;gap:18px;color:#d9edf6}.profile-form--dark .form-section{border-radius:20px;border:1px solid rgba(37,192,244,.2);background:linear-gradient(180deg,#12303cc2,#0b222cdb);box-shadow:0 14px 38px #030a1066;padding:20px}.profiler-header{margin-top:8px}.profiler-nav-row{display:grid;grid-template-columns:42px 1fr 42px;align-items:start;gap:10px}.profiler-icon-btn{width:38px;height:38px;border-radius:999px;border:1px solid rgba(152,188,203,.24);background:#ffffff14;color:#eff8ff;font-size:1.5rem;line-height:1;font-family:inherit;cursor:pointer}.profiler-icon-btn:disabled{opacity:.35;cursor:default}.profiler-icon-btn:focus-visible{outline:3px solid rgba(37,192,244,.6);outline-offset:2px}.profiler-title-wrap{text-align:center}.profiler-main-title{margin:1px 0 0;color:#f4f8fc;letter-spacing:.06em;font-size:.98rem;font-weight:700}.profiler-progress{margin:8px auto 0;width:fit-content;display:flex;gap:5px}.profiler-progress span{display:block;width:30px;height:5px;border-radius:999px;background:#25c0f43b}.profiler-progress span.active{background:#2ec7ff;box-shadow:0 0 14px #25c0f48c}.profiler-step-title{margin:22px 0 0;color:#eef4f8;font-size:clamp(2.15rem,8.3vw,3rem);letter-spacing:-.02em}.profiler-step-title span{color:#2ec7ff}.profiler-step-description{margin:10px 0 0;color:#9bc3d1f2;font-size:clamp(1.06rem,3.9vw,1.26rem);line-height:1.46;max-width:30ch}.profile-form--dark .section-title.profiler-section-title{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;color:#2ec7ff;text-transform:uppercase;font-size:1.08rem;letter-spacing:.12em}.measurement-group+.measurement-group{margin-top:26px}.measurement-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:12px}.measurement-label{color:#adc8d4;font-size:1.35rem;font-weight:500}.measurement-value{margin:0;display:inline-flex;align-items:baseline;gap:6px}.measurement-value strong{color:#f3f8fd;font-size:clamp(2.4rem,8vw,3.35rem);line-height:1;font-weight:700}.measurement-value span{color:#2ec7ff;font-size:1.55rem;font-weight:600}.measurement-range{-webkit-appearance:none;appearance:none;width:100%;margin-top:18px;height:6px;border-radius:999px;background:linear-gradient(90deg,#25c0f4f2,#2ac9ffb8 56%,#59798659 56% 100%)}.measurement-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:30px;height:30px;border-radius:50%;border:5px solid #0f2028;background:#2ec7ff;box-shadow:0 0 18px #2ec7ffa6;cursor:pointer}.measurement-range::-moz-range-thumb{width:30px;height:30px;border-radius:50%;border:5px solid #0f2028;background:#2ec7ff;box-shadow:0 0 18px #2ec7ffa6;cursor:pointer}.measurement-range:focus-visible{outline:3px solid rgba(46,199,255,.4);outline-offset:5px}.measurement-scale{margin-top:10px;display:flex;justify-content:space-between;color:#89a3aed1;font-size:.75rem;letter-spacing:.06em}.measurement-manual-row{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.measurement-manual-label{color:#bcd7e1db;font-size:.88rem;font-weight:600}.measurement-manual-input-wrap{display:inline-flex;align-items:center;gap:8px}.measurement-manual-input-wrap input{width:86px;border-radius:10px;border:1px solid rgba(117,161,178,.48);background:#06171fc2;color:#e5f4fb;font:inherit;font-weight:700;font-size:1.04rem;padding:8px 10px;text-align:right}.measurement-manual-input-wrap input:focus{outline:3px solid rgba(46,199,255,.3);border-color:#2ec7ff}.measurement-manual-input-wrap input[aria-invalid=true]{border-color:#ff8f8f}.measurement-manual-input-wrap span{color:#2ec7ff;font-size:1rem;font-weight:700}.profile-form--dark .helper-text{color:#94b7c3db;margin-top:10px}.profile-form--dark .error-text{color:#ff7d7d}.vision-dropzone{min-height:0;border-style:solid;border-color:#2ec7ff47;background:#081a22a3;padding:12px}.vision-dropzone.dragover{border-color:#2ec7ff;box-shadow:0 0 0 4px #2ec7ff2e;background:#0d2530d1}.vision-preview-frame{width:100%;position:relative;aspect-ratio:1 / 1;max-height:min(72vh,560px);margin:0 auto;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:#0d151d}.vision-preview-frame .preview-image{width:100%;height:100%;max-height:none;object-fit:contain;object-position:center center;display:block}.vision-placeholder{width:100%;min-height:320px;border-radius:14px;border:1px dashed rgba(46,199,255,.4);display:grid;place-items:center;padding:20px;background:#0a1f2894}.profile-form--dark .dropzone-text{color:#cfe5ef}.profile-form--dark .dropzone-subtext{color:#a4c3cfe0}.vision-corner{position:absolute;width:28px;height:28px;pointer-events:none;border-color:#2ec7ff}.vision-corner.corner-tl{top:10px;left:10px;border-top:3px solid;border-left:3px solid}.vision-corner.corner-tr{top:10px;right:10px;border-top:3px solid;border-right:3px solid}.vision-corner.corner-bl{bottom:10px;left:10px;border-bottom:3px solid;border-left:3px solid}.vision-corner.corner-br{bottom:10px;right:10px;border-bottom:3px solid;border-right:3px solid}.vision-scan-line{position:absolute;left:0;right:0;height:2px;background:#2ec7ff;box-shadow:0 0 14px #2ec7ffd9;animation:visionScan 3s linear infinite}@keyframes visionScan{0%{top:4%;opacity:0}10%{opacity:1}90%{opacity:1}to{top:94%;opacity:0}}.vision-analyzing-badge{margin:0;position:absolute;left:50%;bottom:20px;transform:translate(-50%);border:1px solid rgba(46,199,255,.35);border-radius:999px;background:#0c0f19bd;color:#e6f4fb;letter-spacing:.06em;font-size:.8rem;padding:8px 14px;display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#2ec7ff;box-shadow:0 0 10px #2ec7ffb3;animation:pulseDot 1.4s ease-in-out infinite}@keyframes pulseDot{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.3);opacity:1}}.vision-actions{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-form--dark .crop-editor.profiler-crop-editor{gap:14px}.profile-form--dark .crop-canvas{border-color:#2ec7ff80;background-color:#0f222c}.profile-form--dark .zoom-value{color:#b5d1dc}.profile-form--dark .input-label{color:#d3e7f1}.profile-form--dark .preferences-textarea{border-color:#7098aa7a;background-color:#0a1e26bd;color:#e8f6ff}.profile-form--dark .preferences-textarea::placeholder{color:#a6c1cbbf}.profile-form--dark .preferences-textarea:focus{border-color:#2ec7ff;outline-color:#2ec7ff47}.profile-form--dark .secondary-btn,.profile-form--dark .ghost-btn{min-height:50px;border-radius:12px}.profile-form--dark .secondary-btn{background:#fafcff14;border-color:#25c0f457;color:#d7edf8}.profile-form--dark .ghost-btn{background:#ffffff0a;border-color:#93b2be59;color:#c5d9e4}.profiler-actions{gap:12px}.profiler-primary-btn{min-height:64px;border-radius:16px;letter-spacing:.02em;background:linear-gradient(180deg,#2ec7ff,#26b5ea);color:#03131b;font-weight:800;box-shadow:0 0 34px #25c0f45c}.profiler-primary-btn:hover:not(:disabled){background:linear-gradient(180deg,#42d0ff,#29bbee)}.billing-section{padding-top:16px}.billing-helper{margin:0}.billing-btn{margin-top:10px;width:100%}.billing-error{margin-top:10px}.snapshot-section{padding-top:16px}.snapshot-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.snapshot-input-label{margin-top:14px}.snapshot-json-textarea{min-height:120px}.snapshot-apply-btn{margin-top:10px}.profile-form--dark .success-text{margin-top:0;border-color:#38c7ff75;background:#123f4ea6;color:#bbf3ff}.profile-form--dark .analysis-error{margin-top:0}.profile-form--dark .hair-grid-section,.profile-form--dark .report-section{background:linear-gradient(180deg,#11313dd1,#0b222ce6);border-color:#4586a257}.profile-form--dark .hair-grid-image{border-color:#639eb75c}.profile-form--dark .hair-grid-label{background-color:#102833e0;border-color:#639eb761;color:#dcf2ff}.profile-form--dark .report-subtitle,.profile-form--dark .report-item-title{color:#e7f6ff}.profile-form--dark .report-content,.profile-form--dark .report-list-item,.profile-form--dark .report-item-body{color:#d6eaf5}.profile-form--dark .report-item-note{color:#9ec0d0}.profile-form--dark .persona-result-shell{background:linear-gradient(180deg,#071a22fa,#061119)}@media(min-width:900px){.persona-pane-actions{gap:12px}.persona-carousel-controls{display:inline-flex}.persona-horizontal-list{padding-bottom:8px}.persona-outfit-card{flex-basis:min(66%,420px);padding:18px}.persona-budget-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.persona-budget-actions{grid-column:1 / -1}.persona-shop-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.persona-text-report{padding:18px}}@media(max-width:768px){.landing-content{padding:max(22px,env(safe-area-inset-top)) 22px max(26px,env(safe-area-inset-bottom))}.landing-title{font-size:clamp(2.34rem,11vw,3.2rem)}.landing-description{margin-top:12px}.landing-feature-card{min-width:130px}.landing-cta{min-height:60px;border-radius:14px;margin-top:18px}.profile-form--dark{padding-left:14px;padding-right:14px}.vision-actions{grid-template-columns:1fr}.measurement-label{font-size:1.2rem}.measurement-manual-row{flex-direction:column;align-items:flex-start;gap:8px}.measurement-manual-input-wrap{width:100%;justify-content:flex-end}.snapshot-action-grid{grid-template-columns:1fr}.onboarding-card{padding:22px 16px;border-radius:16px}.dropzone{min-height:188px}.inline-actions{flex-direction:column}.secondary-btn,.ghost-btn{width:100%}.crop-actions{flex-direction:column}.hair-grid-labels{grid-template-columns:repeat(2,minmax(0,1fr))}.persona-hero{height:360px}.persona-hero-badges{left:12px;right:12px;bottom:12px;gap:8px}.persona-badge{padding:9px 12px}.persona-badge-value{font-size:1rem}.persona-match-badge{font-size:.92rem}.persona-pane-title{font-size:1.5rem}.persona-pane-note,.persona-pane-note-btn{font-size:.88rem}.persona-shop-match{padding:12px}.persona-budget-actions{flex-direction:column}.persona-budget-actions .secondary-btn,.persona-budget-actions .ghost-btn{width:100%}.persona-shop-look-panel{padding:10px}.report-list-card{grid-template-columns:1fr}.persona-outfit-card{flex-basis:88%}.persona-hair-grid{grid-template-columns:1fr}.persona-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
