
:root{--pink:#d63f68;--pink2:#ef5a7c;--ink:#1c1917;--muted:#77716d;--line:#ebe4df;--soft:#fbf5f2}
*{box-sizing:border-box} html,body{margin:0;background:#ece9e6;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans KR","Apple SD Gothic Neo",sans-serif;color:var(--ink)}
.app{width:min(100vw,430px);margin:auto;background:#fff;box-shadow:0 0 30px rgba(0,0,0,.1);overflow:hidden}
.screen{min-height:100vh;background:#fff}.hidden{display:none!important}



.topbar{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid #f2eeeb;background:#fff;position:sticky;top:0;z-index:10}
.brand{font-family:Georgia,serif;font-style:italic;font-size:28px;font-weight:700}.brand span{color:var(--pink)}.icon{border:0;background:transparent;font-size:24px;padding:7px}
.progress{height:5px;background:#eee;margin:14px 18px 0;border-radius:999px;overflow:hidden}.progress i{display:block;height:100%;background:var(--pink)}
.content{padding:18px}.step-label{font-size:12px;color:#777;font-weight:800;margin-bottom:14px}h1{font-size:27px;line-height:1.25;margin:0 0 7px}.muted{font-size:14px;color:var(--muted);margin:0 0 20px}
.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option{min-height:90px;border:1.5px solid var(--line);border-radius:16px;background:#fff;padding:13px;font-weight:850;text-align:left}.option.selected{border-color:var(--pink);background:#fff3f6;color:#a7234b}
.nav-row,.actions{display:flex;gap:10px;margin-top:24px}.btn{flex:1;border:0;border-radius:14px;padding:15px 14px;font-weight:900}.btn-light{background:#f4f1ee}.btn-pink{background:linear-gradient(90deg,var(--pink),var(--pink2));color:#fff}
.profile{display:flex;align-items:center;gap:10px;background:#fff0f4;padding:11px;border-radius:16px}.avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#efc8d2,#f7e8e2)}.profile small{display:block;color:#7b7170;margin-top:3px}
.tabs{display:flex;gap:7px;overflow:auto;margin:12px 0 16px}.tab{white-space:nowrap;border:1px solid #ddd;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800}.tab.on{background:var(--pink);color:#fff;border-color:var(--pink)}
.look-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-bottom:14px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.055);display:grid;grid-template-columns:44% 56%;min-height:290px}.visual{position:relative;background:#f6f1ed;min-height:290px}.visual img{width:100%;height:100%;object-fit:cover;display:block}.badge{position:absolute;left:11px;top:11px;background:#ff3e75;color:#fff;padding:6px 9px;border-radius:8px;font-size:11px;font-weight:900}
.look-body{padding:15px 13px;display:flex;flex-direction:column;justify-content:center;min-width:0}.look-body h3{margin:0 0 7px;font-size:20px;line-height:1.22;letter-spacing:-.5px}.look-body p{margin:0;color:#726b67;font-size:12.5px;line-height:1.5}.item-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:10px 0}.item-row img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:9px;border:1px solid #eee;background:#f7f2ef}.look-cta{width:100%;border:0;border-radius:11px;padding:11px 8px;background:var(--pink);color:#fff;font-weight:900;font-size:13px}
.detail-hero{display:grid;grid-template-columns:58% 42%;min-height:470px;background:#fdf1f4}.detail-model img{width:100%;height:100%;object-fit:cover;display:block}.detail-copy{padding:22px 15px;display:flex;flex-direction:column;justify-content:center;background:#fff1f5}.detail-copy .tag{font-size:12px;color:var(--pink);font-weight:900}.detail-copy h1{font-size:26px;margin:8px 0}.detail-copy p{font-size:13px;color:#6d6460;line-height:1.6}
.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.product-card{border:1px solid var(--line);border-radius:15px;overflow:hidden}.product-card img{width:100%;height:132px;object-fit:contain;background:#faf7f3;padding:14px}.product-info{padding:9px}.product-info small{color:#888}.product-info b{display:block;font-size:13px;margin:4px 0;line-height:1.35}.product-price{font-size:13px;font-weight:900}.product-view{border:0;background:transparent;padding:7px 0 0;color:var(--pink);font-weight:900}
.store-top{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #eee}.store-image{height:420px;background:#f7f2ef}.store-image img{width:100%;height:100%;object-fit:contain}.store-body{padding:18px}.store-kicker{font-size:12px;color:var(--pink);font-weight:900}.store-body h2{font-size:19px;margin:7px 0}.stars{color:#f59b00}.stars span{color:#1479ff}.price{font-size:28px;color:#dc2816;font-weight:900;margin:10px 0}.ship{color:#078bd5;font-weight:900}.arrival{color:#17a244;font-weight:900;margin:4px 0 14px}.choice-row{display:flex;gap:7px;margin:8px 0 16px}.choice{padding:9px 13px;border:1px solid #ddd;border-radius:8px;background:#fff}.choice.on{border-color:#1479ff;color:#1479ff}.buy-row{display:flex;gap:8px;margin-top:18px}.qty{width:58px;border:1px solid #ddd;background:#fff;border-radius:8px}.buy{flex:1;border:0;border-radius:8px;background:#1479ff;color:#fff;font-weight:900}.notice{font-size:11px;color:#888;line-height:1.5}
@media(max-width:360px){.visual{height:290px}.detail-hero{min-height:410px}.detail-copy h1{font-size:22px}.product-card img{height:125px}}
.match-note{font-size:12px;color:#b72c54;background:#fff2f5;display:inline-block;padding:5px 8px;border-radius:999px;margin:9px 0 2px;font-weight:800}


.match-note{display:inline-block;align-self:flex-start;background:#fff0f4;color:#d63f68;border-radius:999px;padding:6px 8px;font-size:10px;font-weight:900;margin-top:10px;line-height:1.2}
.badge{position:absolute;left:9px;top:10px;background:#ff3e75;color:#fff;padding:6px 9px;border-radius:8px;font-size:11px;font-weight:900;z-index:2}
.look-card:nth-child(2n) .visual{background:#fbf7f3}
.detail-copy .tag{font-size:12px;color:var(--pink);font-weight:900;margin-bottom:8px}
.detail-copy h1{font-size:28px;line-height:1.22;margin:0 0 16px;letter-spacing:-.7px}
.detail-copy p{font-size:13px;color:#6d6460;line-height:1.65;margin:0}
@media(max-width:390px){
  .look-card{grid-template-columns:46% 54%;min-height:275px}
  .visual{min-height:275px}
  .look-body{padding:12px 10px}
  .look-body h3{font-size:18px}
  .look-body p{font-size:11.5px}
  .match-note{font-size:9px;padding:5px 7px}
  .look-cta{font-size:12px;padding:10px 6px}
}

.product-info small{display:block;color:#8b817b;font-size:11px;margin-bottom:4px}
.product-info b{display:block;font-size:13px;line-height:1.35;margin:0 0 5px}
.product-price{font-size:13px;font-weight:900;margin-bottom:2px}
.product-view{font-size:12px}


.home-screen{min-height:100vh;background:#fffdfb}
.home-top{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #f1ebe7;background:#fff;position:relative;z-index:3}
.home-top .brand{font-size:30px}
.home-menu{border:0;background:transparent;font-size:22px;line-height:1;padding:8px;cursor:pointer}
.home-main{padding:0 14px 24px}
.hero-card{position:relative;height:600px;border-radius:0 0 24px 24px;overflow:hidden;background:#f6eee8}
.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02) 25%,rgba(255,248,244,.18) 54%,rgba(250,245,240,.88) 100%)}
.hero-copy{position:absolute;left:24px;right:24px;bottom:28px}
.hero-copy h1{font-size:34px;line-height:1.15;letter-spacing:-1.2px;margin:0 0 14px;font-weight:900}
.hero-copy h1 em{font-style:normal;color:#d63f68}
.hero-copy p{font-size:15px;line-height:1.6;color:#4f4945;margin:0 0 18px}
.hero-cta{width:100%;border:0;border-radius:999px;background:linear-gradient(90deg,#d83f69,#ef587b);color:#fff;font-size:17px;font-weight:900;padding:16px 18px;box-shadow:0 10px 24px rgba(216,63,105,.22);cursor:pointer}
.occasion-section{padding:26px 6px 8px}
.section-head{margin-bottom:14px}.section-head h2{font-size:20px;margin:0 0 5px}.section-head span{font-size:12px;color:#8a817c}
.occasion-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.occasion-card{border:1px solid #eee6e0;border-radius:16px;overflow:hidden;padding:0;background:#fff;text-align:left;box-shadow:0 4px 14px rgba(0,0,0,.035);cursor:pointer}
.occasion-card img{width:100%;height:120px;object-fit:cover;display:block}
.occasion-card>div{padding:11px 10px 4px}.occasion-card b{display:block;font-size:15px;margin-bottom:4px}.occasion-card small{display:block;color:#877d77;font-size:11px;line-height:1.35}
.occasion-card>span{display:block;text-align:right;padding:0 11px 10px;color:#d63f68;font-size:18px}
.ai-consider{margin:22px 6px 0;background:#fff8f6;border:1px solid #f2e5df;border-radius:18px;padding:15px 12px}
.ai-title{display:flex;align-items:center;gap:8px;margin-bottom:14px}.ai-title>span{display:flex;width:27px;height:27px;border-radius:50%;align-items:center;justify-content:center;background:#d83f69;color:#fff;font-size:11px;font-weight:900}.ai-title b{font-size:13px}
.ai-factors{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.ai-factors div{text-align:center}.ai-factors i{font-style:normal;display:flex;width:37px;height:37px;margin:0 auto 6px;border:1px solid #e6ddd7;border-radius:50%;align-items:center;justify-content:center;background:#fff;font-size:15px}.ai-factors span{font-size:10px;color:#675f5a}
@media(max-width:390px){
  .hero-card{height:560px}
  .hero-copy h1{font-size:31px}
  .occasion-card img{height:108px}
}

.product-price{min-height:18px}
.buy:disabled,.btn:disabled{opacity:.65;cursor:wait}
